Back to index

lightning-sunbird  0.9+nobinonly
cattable.h
Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
00002 /* ***** BEGIN LICENSE BLOCK *****
00003  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
00004  *
00005  * The contents of this file are subject to the Mozilla Public License Version
00006  * 1.1 (the "License"); you may not use this file except in compliance with
00007  * the License. You may obtain a copy of the License at
00008  * http://www.mozilla.org/MPL/
00009  *
00010  * Software distributed under the License is distributed on an "AS IS" basis,
00011  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
00012  * for the specific language governing rights and limitations under the
00013  * License.
00014  *
00015  * The Original Code is mozilla.org code.
00016  *
00017  * The Initial Developer of the Original Code is
00018  * Netscape Communications Corporation.
00019  * Portions created by the Initial Developer are Copyright (C) 1999
00020  * the Initial Developer. All Rights Reserved.
00021  *
00022  * Contributor(s):
00023  *
00024  * Alternatively, the contents of this file may be used under the terms of
00025  * either the GNU General Public License Version 2 or later (the "GPL"), or
00026  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
00027  * in which case the provisions of the GPL or the LGPL are applicable instead
00028  * of those above. If you wish to allow use of your version of this file only
00029  * under the terms of either the GPL or the LGPL, and not to allow others to
00030  * use your version of this file under the terms of the MPL, indicate your
00031  * decision by deleting the provisions above and replace them with the notice
00032  * and other provisions required by the GPL or the LGPL. If you do not delete
00033  * the provisions above, a recipient may use your version of this file under
00034  * the terms of any one of the MPL, the GPL or the LGPL.
00035  *
00036  * ***** END LICENSE BLOCK ***** */
00037 /* 
00038     DO NOT EDIT THIS DOCUMENT !!! THIS DOCUMENT IS GENERATED BY
00039     mozilla/intl/unicharutil/tools/gencattable.pl
00040  */
00041 #include "nscore.h" 
00042 
00043 static const PRUint8 gGenCatIdx1[256] = {
00044       0,  // U+000000 - U+000007 : 0x44444444
00045       0,  // U+000008 - U+00000F : 0x44444444
00046       0,  // U+000010 - U+000017 : 0x44444444
00047       0,  // U+000018 - U+00001F : 0x44444444
00048       1,  // U+000020 - U+000027 : 0x66676663
00049       2,  // U+000028 - U+00002F : 0x66667666
00050       3,  // U+000030 - U+000037 : 0x22222222
00051       4,  // U+000038 - U+00003F : 0x67776622
00052       5,  // U+000040 - U+000047 : 0x55555556
00053       6,  // U+000048 - U+00004F : 0x55555555
00054       6,  // U+000050 - U+000057 : 0x55555555
00055       7,  // U+000058 - U+00005F : 0x67666555
00056       8,  // U+000060 - U+000067 : 0x55555557
00057       6,  // U+000068 - U+00006F : 0x55555555
00058       6,  // U+000070 - U+000077 : 0x55555555
00059       9,  // U+000078 - U+00007F : 0x47676555
00060       0,  // U+000080 - U+000087 : 0x44444444
00061       0,  // U+000088 - U+00008F : 0x44444444
00062       0,  // U+000090 - U+000097 : 0x44444444
00063       0,  // U+000098 - U+00009F : 0x44444444
00064      10,  // U+0000A0 - U+0000A7 : 0x77777763
00065      11,  // U+0000A8 - U+0000AF : 0x77476577
00066      12,  // U+0000B0 - U+0000B7 : 0x67572277
00067      13,  // U+0000B8 - U+0000BF : 0x62226527
00068       6,  // U+0000C0 - U+0000C7 : 0x55555555
00069       6,  // U+0000C8 - U+0000CF : 0x55555555
00070      14,  // U+0000D0 - U+0000D7 : 0x75555555
00071       6,  // U+0000D8 - U+0000DF : 0x55555555
00072       6,  // U+0000E0 - U+0000E7 : 0x55555555
00073       6,  // U+0000E8 - U+0000EF : 0x55555555
00074      14,  // U+0000F0 - U+0000F7 : 0x75555555
00075       6,  // U+0000F8 - U+0000FF : 0x55555555
00076       6,  // U+000100 - U+000107 : 0x55555555
00077       6,  // U+000108 - U+00010F : 0x55555555
00078       6,  // U+000110 - U+000117 : 0x55555555
00079       6,  // U+000118 - U+00011F : 0x55555555
00080       6,  // U+000120 - U+000127 : 0x55555555
00081       6,  // U+000128 - U+00012F : 0x55555555
00082       6,  // U+000130 - U+000137 : 0x55555555
00083       6,  // U+000138 - U+00013F : 0x55555555
00084       6,  // U+000140 - U+000147 : 0x55555555
00085       6,  // U+000148 - U+00014F : 0x55555555
00086       6,  // U+000150 - U+000157 : 0x55555555
00087       6,  // U+000158 - U+00015F : 0x55555555
00088       6,  // U+000160 - U+000167 : 0x55555555
00089       6,  // U+000168 - U+00016F : 0x55555555
00090       6,  // U+000170 - U+000177 : 0x55555555
00091       6,  // U+000178 - U+00017F : 0x55555555
00092       6,  // U+000180 - U+000187 : 0x55555555
00093       6,  // U+000188 - U+00018F : 0x55555555
00094       6,  // U+000190 - U+000197 : 0x55555555
00095       6,  // U+000198 - U+00019F : 0x55555555
00096       6,  // U+0001A0 - U+0001A7 : 0x55555555
00097       6,  // U+0001A8 - U+0001AF : 0x55555555
00098       6,  // U+0001B0 - U+0001B7 : 0x55555555
00099       6,  // U+0001B8 - U+0001BF : 0x55555555
00100       6,  // U+0001C0 - U+0001C7 : 0x55555555
00101       6,  // U+0001C8 - U+0001CF : 0x55555555
00102       6,  // U+0001D0 - U+0001D7 : 0x55555555
00103       6,  // U+0001D8 - U+0001DF : 0x55555555
00104       6,  // U+0001E0 - U+0001E7 : 0x55555555
00105       6,  // U+0001E8 - U+0001EF : 0x55555555
00106       6,  // U+0001F0 - U+0001F7 : 0x55555555
00107       6,  // U+0001F8 - U+0001FF : 0x55555555
00108       6,  // U+000200 - U+000207 : 0x55555555
00109       6,  // U+000208 - U+00020F : 0x55555555
00110       6,  // U+000210 - U+000217 : 0x55555555
00111       6,  // U+000218 - U+00021F : 0x55555555
00112       6,  // U+000220 - U+000227 : 0x55555555
00113       6,  // U+000228 - U+00022F : 0x55555555
00114       6,  // U+000230 - U+000237 : 0x55555555
00115       6,  // U+000238 - U+00023F : 0x55555555
00116       6,  // U+000240 - U+000247 : 0x55555555
00117       6,  // U+000248 - U+00024F : 0x55555555
00118       6,  // U+000250 - U+000257 : 0x55555555
00119       6,  // U+000258 - U+00025F : 0x55555555
00120       6,  // U+000260 - U+000267 : 0x55555555
00121       6,  // U+000268 - U+00026F : 0x55555555
00122       6,  // U+000270 - U+000277 : 0x55555555
00123       6,  // U+000278 - U+00027F : 0x55555555
00124       6,  // U+000280 - U+000287 : 0x55555555
00125       6,  // U+000288 - U+00028F : 0x55555555
00126       6,  // U+000290 - U+000297 : 0x55555555
00127       6,  // U+000298 - U+00029F : 0x55555555
00128       6,  // U+0002A0 - U+0002A7 : 0x55555555
00129       6,  // U+0002A8 - U+0002AF : 0x55555555
00130       6,  // U+0002B0 - U+0002B7 : 0x55555555
00131       6,  // U+0002B8 - U+0002BF : 0x55555555
00132      15,  // U+0002C0 - U+0002C7 : 0x55777755
00133       6,  // U+0002C8 - U+0002CF : 0x55555555
00134      16,  // U+0002D0 - U+0002D7 : 0x77777755
00135      17,  // U+0002D8 - U+0002DF : 0x77777777
00136      18,  // U+0002E0 - U+0002E7 : 0x77755555
00137      19,  // U+0002E8 - U+0002EF : 0x75777777
00138      17,  // U+0002F0 - U+0002F7 : 0x77777777
00139      17,  // U+0002F8 - U+0002FF : 0x77777777
00140      20,  // U+000300 - U+000307 : 0x11111111
00141      20,  // U+000308 - U+00030F : 0x11111111
00142      20,  // U+000310 - U+000317 : 0x11111111
00143      20,  // U+000318 - U+00031F : 0x11111111
00144      20,  // U+000320 - U+000327 : 0x11111111
00145      20,  // U+000328 - U+00032F : 0x11111111
00146      20,  // U+000330 - U+000337 : 0x11111111
00147      20,  // U+000338 - U+00033F : 0x11111111
00148      20,  // U+000340 - U+000347 : 0x11111111
00149      20,  // U+000348 - U+00034F : 0x11111111
00150      20,  // U+000350 - U+000357 : 0x11111111
00151      20,  // U+000358 - U+00035F : 0x11111111
00152      20,  // U+000360 - U+000367 : 0x11111111
00153      20,  // U+000368 - U+00036F : 0x11111111
00154      21,  // U+000370 - U+000377 : 0x00770000
00155      22,  // U+000378 - U+00037F : 0x06555500
00156      23,  // U+000380 - U+000387 : 0x65770000
00157      24,  // U+000388 - U+00038F : 0x55050555
00158       6,  // U+000390 - U+000397 : 0x55555555
00159       6,  // U+000398 - U+00039F : 0x55555555
00160      25,  // U+0003A0 - U+0003A7 : 0x55555055
00161       6,  // U+0003A8 - U+0003AF : 0x55555555
00162       6,  // U+0003B0 - U+0003B7 : 0x55555555
00163       6,  // U+0003B8 - U+0003BF : 0x55555555
00164       6,  // U+0003C0 - U+0003C7 : 0x55555555
00165      26,  // U+0003C8 - U+0003CF : 0x05555555
00166       6,  // U+0003D0 - U+0003D7 : 0x55555555
00167       6,  // U+0003D8 - U+0003DF : 0x55555555
00168       6,  // U+0003E0 - U+0003E7 : 0x55555555
00169       6,  // U+0003E8 - U+0003EF : 0x55555555
00170      27,  // U+0003F0 - U+0003F7 : 0x57555555
00171       6,  // U+0003F8 - U+0003FF : 0x55555555
00172       6,  // U+000400 - U+000407 : 0x55555555
00173       6,  // U+000408 - U+00040F : 0x55555555
00174       6,  // U+000410 - U+000417 : 0x55555555
00175       6,  // U+000418 - U+00041F : 0x55555555
00176       6,  // U+000420 - U+000427 : 0x55555555
00177       6,  // U+000428 - U+00042F : 0x55555555
00178       6,  // U+000430 - U+000437 : 0x55555555
00179       6,  // U+000438 - U+00043F : 0x55555555
00180       6,  // U+000440 - U+000447 : 0x55555555
00181       6,  // U+000448 - U+00044F : 0x55555555
00182       6,  // U+000450 - U+000457 : 0x55555555
00183       6,  // U+000458 - U+00045F : 0x55555555
00184       6,  // U+000460 - U+000467 : 0x55555555
00185       6,  // U+000468 - U+00046F : 0x55555555
00186       6,  // U+000470 - U+000477 : 0x55555555
00187       6,  // U+000478 - U+00047F : 0x55555555
00188      28,  // U+000480 - U+000487 : 0x01111755
00189      29,  // U+000488 - U+00048F : 0x55555511
00190       6,  // U+000490 - U+000497 : 0x55555555
00191       6,  // U+000498 - U+00049F : 0x55555555
00192       6,  // U+0004A0 - U+0004A7 : 0x55555555
00193       6,  // U+0004A8 - U+0004AF : 0x55555555
00194       6,  // U+0004B0 - U+0004B7 : 0x55555555
00195       6,  // U+0004B8 - U+0004BF : 0x55555555
00196       6,  // U+0004C0 - U+0004C7 : 0x55555555
00197       6,  // U+0004C8 - U+0004CF : 0x55555555
00198       6,  // U+0004D0 - U+0004D7 : 0x55555555
00199       6,  // U+0004D8 - U+0004DF : 0x55555555
00200       6,  // U+0004E0 - U+0004E7 : 0x55555555
00201       6,  // U+0004E8 - U+0004EF : 0x55555555
00202       6,  // U+0004F0 - U+0004F7 : 0x55555555
00203       6,  // U+0004F8 - U+0004FF : 0x55555555
00204       6,  // U+000500 - U+000507 : 0x55555555
00205       6,  // U+000508 - U+00050F : 0x55555555
00206      30,  // U+000510 - U+000517 : 0x00005555
00207      31,  // U+000518 - U+00051F : 0x00000000
00208      31,  // U+000520 - U+000527 : 0x00000000
00209      31,  // U+000528 - U+00052F : 0x00000000
00210      32,  // U+000530 - U+000537 : 0x55555550
00211       6,  // U+000538 - U+00053F : 0x55555555
00212       6,  // U+000540 - U+000547 : 0x55555555
00213       6,  // U+000548 - U+00054F : 0x55555555
00214      26,  // U+000550 - U+000557 : 0x05555555
00215      33,  // U+000558 - U+00055F : 0x66666650
00216      32,  // U+000560 - U+000567 : 0x55555550
00217       6,  // U+000568 - U+00056F : 0x55555555
00218       6,  // U+000570 - U+000577 : 0x55555555
00219       6,  // U+000578 - U+00057F : 0x55555555
00220       6,  // U+000580 - U+000587 : 0x55555555
00221      34,  // U+000588 - U+00058F : 0x00000660
00222      35,  // U+000590 - U+000597 : 0x11111110
00223      20,  // U+000598 - U+00059F : 0x11111111
00224      20,  // U+0005A0 - U+0005A7 : 0x11111111
00225      20,  // U+0005A8 - U+0005AF : 0x11111111
00226      20,  // U+0005B0 - U+0005B7 : 0x11111111
00227      36,  // U+0005B8 - U+0005BF : 0x16111111
00228      37,  // U+0005C0 - U+0005C7 : 0x16116116
00229      31,  // U+0005C8 - U+0005CF : 0x00000000
00230       6,  // U+0005D0 - U+0005D7 : 0x55555555
00231       6,  // U+0005D8 - U+0005DF : 0x55555555
00232       6,  // U+0005E0 - U+0005E7 : 0x55555555
00233      38,  // U+0005E8 - U+0005EF : 0x00000555
00234      39,  // U+0005F0 - U+0005F7 : 0x00066555
00235      31,  // U+0005F8 - U+0005FF : 0x00000000
00236      40,  // U+000600 - U+000607 : 0x00004444
00237      41,  // U+000608 - U+00060F : 0x77667000
00238      42,  // U+000610 - U+000617 : 0x00111111
00239      43,  // U+000618 - U+00061F : 0x66006000
00240      32,  // U+000620 - U+000627 : 0x55555550
00241       6,  // U+000628 - U+00062F : 0x55555555
00242       6,  // U+000630 - U+000637 : 0x55555555
00243      38,  // U+000638 - U+00063F : 0x00000555
00244       6,  // U+000640 - U+000647 : 0x55555555
00245      44,  // U+000648 - U+00064F : 0x11111555
00246      20,  // U+000650 - U+000657 : 0x11111111
00247      45,  // U+000658 - U+00065F : 0x01111111
00248       3,  // U+000660 - U+000667 : 0x22222222
00249      46,  // U+000668 - U+00066F : 0x55666622
00250      47,  // U+000670 - U+000677 : 0x55555551
00251       6,  // U+000678 - U+00067F : 0x55555555
00252       6,  // U+000680 - U+000687 : 0x55555555
00253       6,  // U+000688 - U+00068F : 0x55555555
00254       6,  // U+000690 - U+000697 : 0x55555555
00255       6,  // U+000698 - U+00069F : 0x55555555
00256       6,  // U+0006A0 - U+0006A7 : 0x55555555
00257       6,  // U+0006A8 - U+0006AF : 0x55555555
00258       6,  // U+0006B0 - U+0006B7 : 0x55555555
00259       6,  // U+0006B8 - U+0006BF : 0x55555555
00260       6,  // U+0006C0 - U+0006C7 : 0x55555555
00261       6,  // U+0006C8 - U+0006CF : 0x55555555
00262      48,  // U+0006D0 - U+0006D7 : 0x11565555
00263      49,  // U+0006D8 - U+0006DF : 0x11411111
00264      50,  // U+0006E0 - U+0006E7 : 0x15511111
00265      51,  // U+0006E8 - U+0006EF : 0x55111171
00266       3,  // U+0006F0 - U+0006F7 : 0x22222222
00267      52,  // U+0006F8 - U+0006FF : 0x57755522
00268      53,  // U+000700 - U+000707 : 0x66666666
00269      54,  // U+000708 - U+00070F : 0x40666666
00270      55,  // U+000710 - U+000717 : 0x55555515
00271       6,  // U+000718 - U+00071F : 0x55555555
00272       6,  // U+000720 - U+000727 : 0x55555555
00273       6,  // U+000728 - U+00072F : 0x55555555
00274      20,  // U+000730 - U+000737 : 0x11111111
00275      20,  // U+000738 - U+00073F : 0x11111111
00276      20,  // U+000740 - U+000747 : 0x11111111
00277      56,  // U+000748 - U+00074F : 0x55500111
00278       6,  // U+000750 - U+000757 : 0x55555555
00279       6,  // U+000758 - U+00075F : 0x55555555
00280       6,  // U+000760 - U+000767 : 0x55555555
00281      57,  // U+000768 - U+00076F : 0x00555555
00282      31,  // U+000770 - U+000777 : 0x00000000
00283      31,  // U+000778 - U+00077F : 0x00000000
00284       6,  // U+000780 - U+000787 : 0x55555555
00285       6,  // U+000788 - U+00078F : 0x55555555
00286       6,  // U+000790 - U+000797 : 0x55555555
00287       6,  // U+000798 - U+00079F : 0x55555555
00288      58,  // U+0007A0 - U+0007A7 : 0x11555555
00289      20,  // U+0007A8 - U+0007AF : 0x11111111
00290      59,  // U+0007B0 - U+0007B7 : 0x00000051
00291      31,  // U+0007B8 - U+0007BF : 0x00000000
00292       3,  // U+0007C0 - U+0007C7 : 0x22222222
00293      60,  // U+0007C8 - U+0007CF : 0x55555522
00294       6,  // U+0007D0 - U+0007D7 : 0x55555555
00295       6,  // U+0007D8 - U+0007DF : 0x55555555
00296       6,  // U+0007E0 - U+0007E7 : 0x55555555
00297      44,  // U+0007E8 - U+0007EF : 0x11111555
00298      61,  // U+0007F0 - U+0007F7 : 0x67551111
00299      62,  // U+0007F8 - U+0007FF : 0x00000566
00300 };
00301 
00302 static const PRUint8 gGenCatIdx2[592] = {
00303      63,  // U+000900 - U+000907 : 0x55551110
00304       6,  // U+000908 - U+00090F : 0x55555555
00305       6,  // U+000910 - U+000917 : 0x55555555
00306       6,  // U+000918 - U+00091F : 0x55555555
00307       6,  // U+000920 - U+000927 : 0x55555555
00308       6,  // U+000928 - U+00092F : 0x55555555
00309       6,  // U+000930 - U+000937 : 0x55555555
00310      64,  // U+000938 - U+00093F : 0x11510055
00311      20,  // U+000940 - U+000947 : 0x11111111
00312      42,  // U+000948 - U+00094F : 0x00111111
00313      65,  // U+000950 - U+000957 : 0x00011115
00314       6,  // U+000958 - U+00095F : 0x55555555
00315      66,  // U+000960 - U+000967 : 0x22661155
00316       3,  // U+000968 - U+00096F : 0x22222222
00317      67,  // U+000970 - U+000977 : 0x00000006
00318      68,  // U+000978 - U+00097F : 0x55555000
00319      69,  // U+000980 - U+000987 : 0x55501110
00320      70,  // U+000988 - U+00098F : 0x50055555
00321      71,  // U+000990 - U+000997 : 0x55555005
00322       6,  // U+000998 - U+00099F : 0x55555555
00323       6,  // U+0009A0 - U+0009A7 : 0x55555555
00324      72,  // U+0009A8 - U+0009AF : 0x55555505
00325      73,  // U+0009B0 - U+0009B7 : 0x55000505
00326      64,  // U+0009B8 - U+0009BF : 0x11510055
00327      74,  // U+0009C0 - U+0009C7 : 0x10011111
00328      75,  // U+0009C8 - U+0009CF : 0x05111001
00329      76,  // U+0009D0 - U+0009D7 : 0x10000000
00330      77,  // U+0009D8 - U+0009DF : 0x50550000
00331      78,  // U+0009E0 - U+0009E7 : 0x22001155
00332       3,  // U+0009E8 - U+0009EF : 0x22222222
00333      79,  // U+0009F0 - U+0009F7 : 0x22227755
00334      80,  // U+0009F8 - U+0009FF : 0x00000722
00335      69,  // U+000A00 - U+000A07 : 0x55501110
00336      81,  // U+000A08 - U+000A0F : 0x50000555
00337      71,  // U+000A10 - U+000A17 : 0x55555005
00338       6,  // U+000A18 - U+000A1F : 0x55555555
00339       6,  // U+000A20 - U+000A27 : 0x55555555
00340      72,  // U+000A28 - U+000A2F : 0x55555505
00341      82,  // U+000A30 - U+000A37 : 0x05505505
00342      83,  // U+000A38 - U+000A3F : 0x11010055
00343      84,  // U+000A40 - U+000A47 : 0x10000111
00344      85,  // U+000A48 - U+000A4F : 0x00111001
00345      31,  // U+000A50 - U+000A57 : 0x00000000
00346      86,  // U+000A58 - U+000A5F : 0x05055550
00347      87,  // U+000A60 - U+000A67 : 0x22000000
00348       3,  // U+000A68 - U+000A6F : 0x22222222
00349      88,  // U+000A70 - U+000A77 : 0x00055511
00350      31,  // U+000A78 - U+000A7F : 0x00000000
00351      69,  // U+000A80 - U+000A87 : 0x55501110
00352      89,  // U+000A88 - U+000A8F : 0x50555555
00353      25,  // U+000A90 - U+000A97 : 0x55555055
00354       6,  // U+000A98 - U+000A9F : 0x55555555
00355       6,  // U+000AA0 - U+000AA7 : 0x55555555
00356      72,  // U+000AA8 - U+000AAF : 0x55555505
00357      90,  // U+000AB0 - U+000AB7 : 0x55505505
00358      64,  // U+000AB8 - U+000ABF : 0x11510055
00359      91,  // U+000AC0 - U+000AC7 : 0x10111111
00360      92,  // U+000AC8 - U+000ACF : 0x00111011
00361      93,  // U+000AD0 - U+000AD7 : 0x00000005
00362      31,  // U+000AD8 - U+000ADF : 0x00000000
00363      78,  // U+000AE0 - U+000AE7 : 0x22001155
00364       3,  // U+000AE8 - U+000AEF : 0x22222222
00365      94,  // U+000AF0 - U+000AF7 : 0x00000070
00366      31,  // U+000AF8 - U+000AFF : 0x00000000
00367      69,  // U+000B00 - U+000B07 : 0x55501110
00368      70,  // U+000B08 - U+000B0F : 0x50055555
00369      71,  // U+000B10 - U+000B17 : 0x55555005
00370       6,  // U+000B18 - U+000B1F : 0x55555555
00371       6,  // U+000B20 - U+000B27 : 0x55555555
00372      72,  // U+000B28 - U+000B2F : 0x55555505
00373      90,  // U+000B30 - U+000B37 : 0x55505505
00374      64,  // U+000B38 - U+000B3F : 0x11510055
00375      95,  // U+000B40 - U+000B47 : 0x10001111
00376      85,  // U+000B48 - U+000B4F : 0x00111001
00377      96,  // U+000B50 - U+000B57 : 0x11000000
00378      77,  // U+000B58 - U+000B5F : 0x50550000
00379      97,  // U+000B60 - U+000B67 : 0x22000055
00380       3,  // U+000B68 - U+000B6F : 0x22222222
00381      98,  // U+000B70 - U+000B77 : 0x00000057
00382      31,  // U+000B78 - U+000B7F : 0x00000000
00383      99,  // U+000B80 - U+000B87 : 0x55505100
00384     100,  // U+000B88 - U+000B8F : 0x55000555
00385     101,  // U+000B90 - U+000B97 : 0x00555505
00386     102,  // U+000B98 - U+000B9F : 0x55050550
00387     103,  // U+000BA0 - U+000BA7 : 0x00055000
00388     100,  // U+000BA8 - U+000BAF : 0x55000555
00389       6,  // U+000BB0 - U+000BB7 : 0x55555555
00390     104,  // U+000BB8 - U+000BBF : 0x11000055
00391     105,  // U+000BC0 - U+000BC7 : 0x11000111
00392     106,  // U+000BC8 - U+000BCF : 0x00111101
00393      76,  // U+000BD0 - U+000BD7 : 0x10000000
00394      31,  // U+000BD8 - U+000BDF : 0x00000000
00395      87,  // U+000BE0 - U+000BE7 : 0x22000000
00396       3,  // U+000BE8 - U+000BEF : 0x22222222
00397     107,  // U+000BF0 - U+000BF7 : 0x77777222
00398     108,  // U+000BF8 - U+000BFF : 0x00000777
00399      69,  // U+000C00 - U+000C07 : 0x55501110
00400     109,  // U+000C08 - U+000C0F : 0x55055555
00401      72,  // U+000C10 - U+000C17 : 0x55555505
00402       6,  // U+000C18 - U+000C1F : 0x55555555
00403       6,  // U+000C20 - U+000C27 : 0x55555555
00404      72,  // U+000C28 - U+000C2F : 0x55555505
00405     110,  // U+000C30 - U+000C37 : 0x55505555
00406     104,  // U+000C38 - U+000C3F : 0x11000055
00407     111,  // U+000C40 - U+000C47 : 0x11011111
00408     106,  // U+000C48 - U+000C4F : 0x00111101
00409     112,  // U+000C50 - U+000C57 : 0x01100000
00410      31,  // U+000C58 - U+000C5F : 0x00000000
00411      97,  // U+000C60 - U+000C67 : 0x22000055
00412       3,  // U+000C68 - U+000C6F : 0x22222222
00413      31,  // U+000C70 - U+000C77 : 0x00000000
00414      31,  // U+000C78 - U+000C7F : 0x00000000
00415     113,  // U+000C80 - U+000C87 : 0x55501100
00416     109,  // U+000C88 - U+000C8F : 0x55055555
00417      72,  // U+000C90 - U+000C97 : 0x55555505
00418       6,  // U+000C98 - U+000C9F : 0x55555555
00419       6,  // U+000CA0 - U+000CA7 : 0x55555555
00420      72,  // U+000CA8 - U+000CAF : 0x55555505
00421     110,  // U+000CB0 - U+000CB7 : 0x55505555
00422      64,  // U+000CB8 - U+000CBF : 0x11510055
00423     111,  // U+000CC0 - U+000CC7 : 0x11011111
00424     106,  // U+000CC8 - U+000CCF : 0x00111101
00425     112,  // U+000CD0 - U+000CD7 : 0x01100000
00426     114,  // U+000CD8 - U+000CDF : 0x05000000
00427      78,  // U+000CE0 - U+000CE7 : 0x22001155
00428       3,  // U+000CE8 - U+000CEF : 0x22222222
00429     115,  // U+000CF0 - U+000CF7 : 0x00000770
00430      31,  // U+000CF8 - U+000CFF : 0x00000000
00431     113,  // U+000D00 - U+000D07 : 0x55501100
00432     109,  // U+000D08 - U+000D0F : 0x55055555
00433      72,  // U+000D10 - U+000D17 : 0x55555505
00434       6,  // U+000D18 - U+000D1F : 0x55555555
00435       6,  // U+000D20 - U+000D27 : 0x55555555
00436      72,  // U+000D28 - U+000D2F : 0x55555505
00437       6,  // U+000D30 - U+000D37 : 0x55555555
00438     104,  // U+000D38 - U+000D3F : 0x11000055
00439     116,  // U+000D40 - U+000D47 : 0x11001111
00440     106,  // U+000D48 - U+000D4F : 0x00111101
00441      76,  // U+000D50 - U+000D57 : 0x10000000
00442      31,  // U+000D58 - U+000D5F : 0x00000000
00443      97,  // U+000D60 - U+000D67 : 0x22000055
00444       3,  // U+000D68 - U+000D6F : 0x22222222
00445      31,  // U+000D70 - U+000D77 : 0x00000000
00446      31,  // U+000D78 - U+000D7F : 0x00000000
00447     113,  // U+000D80 - U+000D87 : 0x55501100
00448       6,  // U+000D88 - U+000D8F : 0x55555555
00449      26,  // U+000D90 - U+000D97 : 0x05555555
00450     117,  // U+000D98 - U+000D9F : 0x55555500
00451       6,  // U+000DA0 - U+000DA7 : 0x55555555
00452       6,  // U+000DA8 - U+000DAF : 0x55555555
00453      25,  // U+000DB0 - U+000DB7 : 0x55555055
00454     118,  // U+000DB8 - U+000DBF : 0x00505555
00455      26,  // U+000DC0 - U+000DC7 : 0x05555555
00456     119,  // U+000DC8 - U+000DCF : 0x10000100
00457     120,  // U+000DD0 - U+000DD7 : 0x01011111
00458      20,  // U+000DD8 - U+000DDF : 0x11111111
00459      31,  // U+000DE0 - U+000DE7 : 0x00000000
00460      31,  // U+000DE8 - U+000DEF : 0x00000000
00461     121,  // U+000DF0 - U+000DF7 : 0x00061100
00462      31,  // U+000DF8 - U+000DFF : 0x00000000
00463      32,  // U+000E00 - U+000E07 : 0x55555550
00464       6,  // U+000E08 - U+000E0F : 0x55555555
00465       6,  // U+000E10 - U+000E17 : 0x55555555
00466       6,  // U+000E18 - U+000E1F : 0x55555555
00467       6,  // U+000E20 - U+000E27 : 0x55555555
00468       6,  // U+000E28 - U+000E2F : 0x55555555
00469     122,  // U+000E30 - U+000E37 : 0x11115515
00470     123,  // U+000E38 - U+000E3F : 0x70000111
00471     124,  // U+000E40 - U+000E47 : 0x15555555
00472     125,  // U+000E48 - U+000E4F : 0x61111111
00473       3,  // U+000E50 - U+000E57 : 0x22222222
00474     126,  // U+000E58 - U+000E5F : 0x00006622
00475      31,  // U+000E60 - U+000E67 : 0x00000000
00476      31,  // U+000E68 - U+000E6F : 0x00000000
00477      31,  // U+000E70 - U+000E77 : 0x00000000
00478      31,  // U+000E78 - U+000E7F : 0x00000000
00479     127,  // U+000E80 - U+000E87 : 0x50050550
00480     128,  // U+000E88 - U+000E8F : 0x00500505
00481     129,  // U+000E90 - U+000E97 : 0x55550000
00482      32,  // U+000E98 - U+000E9F : 0x55555550
00483     130,  // U+000EA0 - U+000EA7 : 0x50505550
00484     131,  // U+000EA8 - U+000EAF : 0x55505500
00485     122,  // U+000EB0 - U+000EB7 : 0x11115515
00486     132,  // U+000EB8 - U+000EBF : 0x00511011
00487     133,  // U+000EC0 - U+000EC7 : 0x05055555
00488      42,  // U+000EC8 - U+000ECF : 0x00111111
00489       3,  // U+000ED0 - U+000ED7 : 0x22222222
00490     134,  // U+000ED8 - U+000EDF : 0x00550022
00491      31,  // U+000EE0 - U+000EE7 : 0x00000000
00492      31,  // U+000EE8 - U+000EEF : 0x00000000
00493      31,  // U+000EF0 - U+000EF7 : 0x00000000
00494      31,  // U+000EF8 - U+000EFF : 0x00000000
00495     135,  // U+000F00 - U+000F07 : 0x66667775
00496      53,  // U+000F08 - U+000F0F : 0x66666666
00497     136,  // U+000F10 - U+000F17 : 0x77777666
00498     137,  // U+000F18 - U+000F1F : 0x77777711
00499       3,  // U+000F20 - U+000F27 : 0x22222222
00500       3,  // U+000F28 - U+000F2F : 0x22222222
00501     138,  // U+000F30 - U+000F37 : 0x17172222
00502     139,  // U+000F38 - U+000F3F : 0x11666617
00503       6,  // U+000F40 - U+000F47 : 0x55555555
00504      32,  // U+000F48 - U+000F4F : 0x55555550
00505       6,  // U+000F50 - U+000F57 : 0x55555555
00506       6,  // U+000F58 - U+000F5F : 0x55555555
00507       6,  // U+000F60 - U+000F67 : 0x55555555
00508      38,  // U+000F68 - U+000F6F : 0x00000555
00509      35,  // U+000F70 - U+000F77 : 0x11111110
00510      20,  // U+000F78 - U+000F7F : 0x11111111
00511     140,  // U+000F80 - U+000F87 : 0x11611111
00512      30,  // U+000F88 - U+000F8F : 0x00005555
00513      20,  // U+000F90 - U+000F97 : 0x11111111
00514      35,  // U+000F98 - U+000F9F : 0x11111110
00515      20,  // U+000FA0 - U+000FA7 : 0x11111111
00516      20,  // U+000FA8 - U+000FAF : 0x11111111
00517      20,  // U+000FB0 - U+000FB7 : 0x11111111
00518     141,  // U+000FB8 - U+000FBF : 0x77011111
00519     142,  // U+000FC0 - U+000FC7 : 0x71777777
00520     143,  // U+000FC8 - U+000FCF : 0x70077777
00521     144,  // U+000FD0 - U+000FD7 : 0x00000066
00522      31,  // U+000FD8 - U+000FDF : 0x00000000
00523      31,  // U+000FE0 - U+000FE7 : 0x00000000
00524      31,  // U+000FE8 - U+000FEF : 0x00000000
00525      31,  // U+000FF0 - U+000FF7 : 0x00000000
00526      31,  // U+000FF8 - U+000FFF : 0x00000000
00527       6,  // U+001000 - U+001007 : 0x55555555
00528       6,  // U+001008 - U+00100F : 0x55555555
00529       6,  // U+001010 - U+001017 : 0x55555555
00530       6,  // U+001018 - U+00101F : 0x55555555
00531      25,  // U+001020 - U+001027 : 0x55555055
00532     145,  // U+001028 - U+00102F : 0x11110550
00533     105,  // U+001030 - U+001037 : 0x11000111
00534     146,  // U+001038 - U+00103F : 0x00000011
00535       3,  // U+001040 - U+001047 : 0x22222222
00536     147,  // U+001048 - U+00104F : 0x66666622
00537      58,  // U+001050 - U+001057 : 0x11555555
00538     146,  // U+001058 - U+00105F : 0x00000011
00539      31,  // U+001060 - U+001067 : 0x00000000
00540      31,  // U+001068 - U+00106F : 0x00000000
00541      31,  // U+001070 - U+001077 : 0x00000000
00542      31,  // U+001078 - U+00107F : 0x00000000
00543      31,  // U+001080 - U+001087 : 0x00000000
00544      31,  // U+001088 - U+00108F : 0x00000000
00545      31,  // U+001090 - U+001097 : 0x00000000
00546      31,  // U+001098 - U+00109F : 0x00000000
00547       6,  // U+0010A0 - U+0010A7 : 0x55555555
00548       6,  // U+0010A8 - U+0010AF : 0x55555555
00549       6,  // U+0010B0 - U+0010B7 : 0x55555555
00550       6,  // U+0010B8 - U+0010BF : 0x55555555
00551      57,  // U+0010C0 - U+0010C7 : 0x00555555
00552      31,  // U+0010C8 - U+0010CF : 0x00000000
00553       6,  // U+0010D0 - U+0010D7 : 0x55555555
00554       6,  // U+0010D8 - U+0010DF : 0x55555555
00555       6,  // U+0010E0 - U+0010E7 : 0x55555555
00556       6,  // U+0010E8 - U+0010EF : 0x55555555
00557       6,  // U+0010F0 - U+0010F7 : 0x55555555
00558     148,  // U+0010F8 - U+0010FF : 0x00056555
00559       6,  // U+001100 - U+001107 : 0x55555555
00560       6,  // U+001108 - U+00110F : 0x55555555
00561       6,  // U+001110 - U+001117 : 0x55555555
00562       6,  // U+001118 - U+00111F : 0x55555555
00563       6,  // U+001120 - U+001127 : 0x55555555
00564       6,  // U+001128 - U+00112F : 0x55555555
00565       6,  // U+001130 - U+001137 : 0x55555555
00566       6,  // U+001138 - U+00113F : 0x55555555
00567       6,  // U+001140 - U+001147 : 0x55555555
00568       6,  // U+001148 - U+00114F : 0x55555555
00569       6,  // U+001150 - U+001157 : 0x55555555
00570     149,  // U+001158 - U+00115F : 0x50000055
00571       6,  // U+001160 - U+001167 : 0x55555555
00572       6,  // U+001168 - U+00116F : 0x55555555
00573       6,  // U+001170 - U+001177 : 0x55555555
00574       6,  // U+001178 - U+00117F : 0x55555555
00575       6,  // U+001180 - U+001187 : 0x55555555
00576       6,  // U+001188 - U+00118F : 0x55555555
00577       6,  // U+001190 - U+001197 : 0x55555555
00578       6,  // U+001198 - U+00119F : 0x55555555
00579      38,  // U+0011A0 - U+0011A7 : 0x00000555
00580       6,  // U+0011A8 - U+0011AF : 0x55555555
00581       6,  // U+0011B0 - U+0011B7 : 0x55555555
00582       6,  // U+0011B8 - U+0011BF : 0x55555555
00583       6,  // U+0011C0 - U+0011C7 : 0x55555555
00584       6,  // U+0011C8 - U+0011CF : 0x55555555
00585       6,  // U+0011D0 - U+0011D7 : 0x55555555
00586       6,  // U+0011D8 - U+0011DF : 0x55555555
00587       6,  // U+0011E0 - U+0011E7 : 0x55555555
00588       6,  // U+0011E8 - U+0011EF : 0x55555555
00589       6,  // U+0011F0 - U+0011F7 : 0x55555555
00590     150,  // U+0011F8 - U+0011FF : 0x00000055
00591       6,  // U+001200 - U+001207 : 0x55555555
00592       6,  // U+001208 - U+00120F : 0x55555555
00593       6,  // U+001210 - U+001217 : 0x55555555
00594       6,  // U+001218 - U+00121F : 0x55555555
00595       6,  // U+001220 - U+001227 : 0x55555555
00596       6,  // U+001228 - U+00122F : 0x55555555
00597       6,  // U+001230 - U+001237 : 0x55555555
00598       6,  // U+001238 - U+00123F : 0x55555555
00599       6,  // U+001240 - U+001247 : 0x55555555
00600     101,  // U+001248 - U+00124F : 0x00555505
00601      26,  // U+001250 - U+001257 : 0x05555555
00602     101,  // U+001258 - U+00125F : 0x00555505
00603       6,  // U+001260 - U+001267 : 0x55555555
00604       6,  // U+001268 - U+00126F : 0x55555555
00605       6,  // U+001270 - U+001277 : 0x55555555
00606       6,  // U+001278 - U+00127F : 0x55555555
00607       6,  // U+001280 - U+001287 : 0x55555555
00608     101,  // U+001288 - U+00128F : 0x00555505
00609       6,  // U+001290 - U+001297 : 0x55555555
00610       6,  // U+001298 - U+00129F : 0x55555555
00611       6,  // U+0012A0 - U+0012A7 : 0x55555555
00612       6,  // U+0012A8 - U+0012AF : 0x55555555
00613     101,  // U+0012B0 - U+0012B7 : 0x00555505
00614      26,  // U+0012B8 - U+0012BF : 0x05555555
00615     101,  // U+0012C0 - U+0012C7 : 0x00555505
00616       6,  // U+0012C8 - U+0012CF : 0x55555555
00617      26,  // U+0012D0 - U+0012D7 : 0x05555555
00618       6,  // U+0012D8 - U+0012DF : 0x55555555
00619       6,  // U+0012E0 - U+0012E7 : 0x55555555
00620       6,  // U+0012E8 - U+0012EF : 0x55555555
00621       6,  // U+0012F0 - U+0012F7 : 0x55555555
00622       6,  // U+0012F8 - U+0012FF : 0x55555555
00623       6,  // U+001300 - U+001307 : 0x55555555
00624       6,  // U+001308 - U+00130F : 0x55555555
00625     101,  // U+001310 - U+001317 : 0x00555505
00626       6,  // U+001318 - U+00131F : 0x55555555
00627       6,  // U+001320 - U+001327 : 0x55555555
00628       6,  // U+001328 - U+00132F : 0x55555555
00629       6,  // U+001330 - U+001337 : 0x55555555
00630       6,  // U+001338 - U+00133F : 0x55555555
00631       6,  // U+001340 - U+001347 : 0x55555555
00632       6,  // U+001348 - U+00134F : 0x55555555
00633       6,  // U+001350 - U+001357 : 0x55555555
00634     151,  // U+001358 - U+00135F : 0x10000555
00635     152,  // U+001360 - U+001367 : 0x66666667
00636     153,  // U+001368 - U+00136F : 0x22222226
00637       3,  // U+001370 - U+001377 : 0x22222222
00638     154,  // U+001378 - U+00137F : 0x00022222
00639       6,  // U+001380 - U+001387 : 0x55555555
00640       6,  // U+001388 - U+00138F : 0x55555555
00641      17,  // U+001390 - U+001397 : 0x77777777
00642     155,  // U+001398 - U+00139F : 0x00000077
00643       6,  // U+0013A0 - U+0013A7 : 0x55555555
00644       6,  // U+0013A8 - U+0013AF : 0x55555555
00645       6,  // U+0013B0 - U+0013B7 : 0x55555555
00646       6,  // U+0013B8 - U+0013BF : 0x55555555
00647       6,  // U+0013C0 - U+0013C7 : 0x55555555
00648       6,  // U+0013C8 - U+0013CF : 0x55555555
00649       6,  // U+0013D0 - U+0013D7 : 0x55555555
00650       6,  // U+0013D8 - U+0013DF : 0x55555555
00651       6,  // U+0013E0 - U+0013E7 : 0x55555555
00652       6,  // U+0013E8 - U+0013EF : 0x55555555
00653     156,  // U+0013F0 - U+0013F7 : 0x00055555
00654      31,  // U+0013F8 - U+0013FF : 0x00000000
00655      32,  // U+001400 - U+001407 : 0x55555550
00656       6,  // U+001408 - U+00140F : 0x55555555
00657       6,  // U+001410 - U+001417 : 0x55555555
00658       6,  // U+001418 - U+00141F : 0x55555555
00659       6,  // U+001420 - U+001427 : 0x55555555
00660       6,  // U+001428 - U+00142F : 0x55555555
00661       6,  // U+001430 - U+001437 : 0x55555555
00662       6,  // U+001438 - U+00143F : 0x55555555
00663       6,  // U+001440 - U+001447 : 0x55555555
00664       6,  // U+001448 - U+00144F : 0x55555555
00665       6,  // U+001450 - U+001457 : 0x55555555
00666       6,  // U+001458 - U+00145F : 0x55555555
00667       6,  // U+001460 - U+001467 : 0x55555555
00668       6,  // U+001468 - U+00146F : 0x55555555
00669       6,  // U+001470 - U+001477 : 0x55555555
00670       6,  // U+001478 - U+00147F : 0x55555555
00671       6,  // U+001480 - U+001487 : 0x55555555
00672       6,  // U+001488 - U+00148F : 0x55555555
00673       6,  // U+001490 - U+001497 : 0x55555555
00674       6,  // U+001498 - U+00149F : 0x55555555
00675       6,  // U+0014A0 - U+0014A7 : 0x55555555
00676       6,  // U+0014A8 - U+0014AF : 0x55555555
00677       6,  // U+0014B0 - U+0014B7 : 0x55555555
00678       6,  // U+0014B8 - U+0014BF : 0x55555555
00679       6,  // U+0014C0 - U+0014C7 : 0x55555555
00680       6,  // U+0014C8 - U+0014CF : 0x55555555
00681       6,  // U+0014D0 - U+0014D7 : 0x55555555
00682       6,  // U+0014D8 - U+0014DF : 0x55555555
00683       6,  // U+0014E0 - U+0014E7 : 0x55555555
00684       6,  // U+0014E8 - U+0014EF : 0x55555555
00685       6,  // U+0014F0 - U+0014F7 : 0x55555555
00686       6,  // U+0014F8 - U+0014FF : 0x55555555
00687       6,  // U+001500 - U+001507 : 0x55555555
00688       6,  // U+001508 - U+00150F : 0x55555555
00689       6,  // U+001510 - U+001517 : 0x55555555
00690       6,  // U+001518 - U+00151F : 0x55555555
00691       6,  // U+001520 - U+001527 : 0x55555555
00692       6,  // U+001528 - U+00152F : 0x55555555
00693       6,  // U+001530 - U+001537 : 0x55555555
00694       6,  // U+001538 - U+00153F : 0x55555555
00695       6,  // U+001540 - U+001547 : 0x55555555
00696       6,  // U+001548 - U+00154F : 0x55555555
00697       6,  // U+001550 - U+001557 : 0x55555555
00698       6,  // U+001558 - U+00155F : 0x55555555
00699       6,  // U+001560 - U+001567 : 0x55555555
00700       6,  // U+001568 - U+00156F : 0x55555555
00701       6,  // U+001570 - U+001577 : 0x55555555
00702       6,  // U+001578 - U+00157F : 0x55555555
00703       6,  // U+001580 - U+001587 : 0x55555555
00704       6,  // U+001588 - U+00158F : 0x55555555
00705       6,  // U+001590 - U+001597 : 0x55555555
00706       6,  // U+001598 - U+00159F : 0x55555555
00707       6,  // U+0015A0 - U+0015A7 : 0x55555555
00708       6,  // U+0015A8 - U+0015AF : 0x55555555
00709       6,  // U+0015B0 - U+0015B7 : 0x55555555
00710       6,  // U+0015B8 - U+0015BF : 0x55555555
00711       6,  // U+0015C0 - U+0015C7 : 0x55555555
00712       6,  // U+0015C8 - U+0015CF : 0x55555555
00713       6,  // U+0015D0 - U+0015D7 : 0x55555555
00714       6,  // U+0015D8 - U+0015DF : 0x55555555
00715       6,  // U+0015E0 - U+0015E7 : 0x55555555
00716       6,  // U+0015E8 - U+0015EF : 0x55555555
00717       6,  // U+0015F0 - U+0015F7 : 0x55555555
00718       6,  // U+0015F8 - U+0015FF : 0x55555555
00719       6,  // U+001600 - U+001607 : 0x55555555
00720       6,  // U+001608 - U+00160F : 0x55555555
00721       6,  // U+001610 - U+001617 : 0x55555555
00722       6,  // U+001618 - U+00161F : 0x55555555
00723       6,  // U+001620 - U+001627 : 0x55555555
00724       6,  // U+001628 - U+00162F : 0x55555555
00725       6,  // U+001630 - U+001637 : 0x55555555
00726       6,  // U+001638 - U+00163F : 0x55555555
00727       6,  // U+001640 - U+001647 : 0x55555555
00728       6,  // U+001648 - U+00164F : 0x55555555
00729       6,  // U+001650 - U+001657 : 0x55555555
00730       6,  // U+001658 - U+00165F : 0x55555555
00731       6,  // U+001660 - U+001667 : 0x55555555
00732     157,  // U+001668 - U+00166F : 0x56655555
00733      26,  // U+001670 - U+001677 : 0x05555555
00734      31,  // U+001678 - U+00167F : 0x00000000
00735     158,  // U+001680 - U+001687 : 0x55555553
00736       6,  // U+001688 - U+00168F : 0x55555555
00737       6,  // U+001690 - U+001697 : 0x55555555
00738      39,  // U+001698 - U+00169F : 0x00066555
00739       6,  // U+0016A0 - U+0016A7 : 0x55555555
00740       6,  // U+0016A8 - U+0016AF : 0x55555555
00741       6,  // U+0016B0 - U+0016B7 : 0x55555555
00742       6,  // U+0016B8 - U+0016BF : 0x55555555
00743       6,  // U+0016C0 - U+0016C7 : 0x55555555
00744       6,  // U+0016C8 - U+0016CF : 0x55555555
00745       6,  // U+0016D0 - U+0016D7 : 0x55555555
00746       6,  // U+0016D8 - U+0016DF : 0x55555555
00747       6,  // U+0016E0 - U+0016E7 : 0x55555555
00748     159,  // U+0016E8 - U+0016EF : 0x22666555
00749     160,  // U+0016F0 - U+0016F7 : 0x00000002
00750      31,  // U+0016F8 - U+0016FF : 0x00000000
00751       6,  // U+001700 - U+001707 : 0x55555555
00752     109,  // U+001708 - U+00170F : 0x55055555
00753     161,  // U+001710 - U+001717 : 0x00011155
00754      31,  // U+001718 - U+00171F : 0x00000000
00755       6,  // U+001720 - U+001727 : 0x55555555
00756       6,  // U+001728 - U+00172F : 0x55555555
00757     162,  // U+001730 - U+001737 : 0x06611155
00758      31,  // U+001738 - U+00173F : 0x00000000
00759       6,  // U+001740 - U+001747 : 0x55555555
00760       6,  // U+001748 - U+00174F : 0x55555555
00761     163,  // U+001750 - U+001757 : 0x00001155
00762      31,  // U+001758 - U+00175F : 0x00000000
00763       6,  // U+001760 - U+001767 : 0x55555555
00764     109,  // U+001768 - U+00176F : 0x55055555
00765     164,  // U+001770 - U+001777 : 0x00001105
00766      31,  // U+001778 - U+00177F : 0x00000000
00767       6,  // U+001780 - U+001787 : 0x55555555
00768       6,  // U+001788 - U+00178F : 0x55555555
00769       6,  // U+001790 - U+001797 : 0x55555555
00770       6,  // U+001798 - U+00179F : 0x55555555
00771       6,  // U+0017A0 - U+0017A7 : 0x55555555
00772       6,  // U+0017A8 - U+0017AF : 0x55555555
00773     165,  // U+0017B0 - U+0017B7 : 0x11445555
00774      20,  // U+0017B8 - U+0017BF : 0x11111111
00775      20,  // U+0017C0 - U+0017C7 : 0x11111111
00776      20,  // U+0017C8 - U+0017CF : 0x11111111
00777     166,  // U+0017D0 - U+0017D7 : 0x56661111
00778     167,  // U+0017D8 - U+0017DF : 0x00157666
00779       3,  // U+0017E0 - U+0017E7 : 0x22222222
00780     168,  // U+0017E8 - U+0017EF : 0x00000022
00781       3,  // U+0017F0 - U+0017F7 : 0x22222222
00782     168,  // U+0017F8 - U+0017FF : 0x00000022
00783      53,  // U+001800 - U+001807 : 0x66666666
00784     169,  // U+001808 - U+00180F : 0x03111666
00785       3,  // U+001810 - U+001817 : 0x22222222
00786     168,  // U+001818 - U+00181F : 0x00000022
00787       6,  // U+001820 - U+001827 : 0x55555555
00788       6,  // U+001828 - U+00182F : 0x55555555
00789       6,  // U+001830 - U+001837 : 0x55555555
00790       6,  // U+001838 - U+00183F : 0x55555555
00791       6,  // U+001840 - U+001847 : 0x55555555
00792       6,  // U+001848 - U+00184F : 0x55555555
00793       6,  // U+001850 - U+001857 : 0x55555555
00794       6,  // U+001858 - U+00185F : 0x55555555
00795       6,  // U+001860 - U+001867 : 0x55555555
00796       6,  // U+001868 - U+00186F : 0x55555555
00797       6,  // U+001870 - U+001877 : 0x55555555
00798      31,  // U+001878 - U+00187F : 0x00000000
00799       6,  // U+001880 - U+001887 : 0x55555555
00800       6,  // U+001888 - U+00188F : 0x55555555
00801       6,  // U+001890 - U+001897 : 0x55555555
00802       6,  // U+001898 - U+00189F : 0x55555555
00803       6,  // U+0018A0 - U+0018A7 : 0x55555555
00804     170,  // U+0018A8 - U+0018AF : 0x00000015
00805      31,  // U+0018B0 - U+0018B7 : 0x00000000
00806      31,  // U+0018B8 - U+0018BF : 0x00000000
00807      31,  // U+0018C0 - U+0018C7 : 0x00000000
00808      31,  // U+0018C8 - U+0018CF : 0x00000000
00809      31,  // U+0018D0 - U+0018D7 : 0x00000000
00810      31,  // U+0018D8 - U+0018DF : 0x00000000
00811      31,  // U+0018E0 - U+0018E7 : 0x00000000
00812      31,  // U+0018E8 - U+0018EF : 0x00000000
00813      31,  // U+0018F0 - U+0018F7 : 0x00000000
00814      31,  // U+0018F8 - U+0018FF : 0x00000000
00815       6,  // U+001900 - U+001907 : 0x55555555
00816       6,  // U+001908 - U+00190F : 0x55555555
00817       6,  // U+001910 - U+001917 : 0x55555555
00818     156,  // U+001918 - U+00191F : 0x00055555
00819      20,  // U+001920 - U+001927 : 0x11111111
00820     171,  // U+001928 - U+00192F : 0x00001111
00821      20,  // U+001930 - U+001937 : 0x11111111
00822     171,  // U+001938 - U+00193F : 0x00001111
00823     172,  // U+001940 - U+001947 : 0x22660007
00824       3,  // U+001948 - U+00194F : 0x22222222
00825       6,  // U+001950 - U+001957 : 0x55555555
00826       6,  // U+001958 - U+00195F : 0x55555555
00827       6,  // U+001960 - U+001967 : 0x55555555
00828      57,  // U+001968 - U+00196F : 0x00555555
00829     156,  // U+001970 - U+001977 : 0x00055555
00830      31,  // U+001978 - U+00197F : 0x00000000
00831       6,  // U+001980 - U+001987 : 0x55555555
00832       6,  // U+001988 - U+00198F : 0x55555555
00833       6,  // U+001990 - U+001997 : 0x55555555
00834       6,  // U+001998 - U+00199F : 0x55555555
00835       6,  // U+0019A0 - U+0019A7 : 0x55555555
00836     150,  // U+0019A8 - U+0019AF : 0x00000055
00837      20,  // U+0019B0 - U+0019B7 : 0x11111111
00838      20,  // U+0019B8 - U+0019BF : 0x11111111
00839      47,  // U+0019C0 - U+0019C7 : 0x55555551
00840     146,  // U+0019C8 - U+0019CF : 0x00000011
00841       3,  // U+0019D0 - U+0019D7 : 0x22222222
00842     173,  // U+0019D8 - U+0019DF : 0x66000022
00843      17,  // U+0019E0 - U+0019E7 : 0x77777777
00844      17,  // U+0019E8 - U+0019EF : 0x77777777
00845      17,  // U+0019F0 - U+0019F7 : 0x77777777
00846      17,  // U+0019F8 - U+0019FF : 0x77777777
00847       6,  // U+001A00 - U+001A07 : 0x55555555
00848       6,  // U+001A08 - U+001A0F : 0x55555555
00849     124,  // U+001A10 - U+001A17 : 0x15555555
00850     174,  // U+001A18 - U+001A1F : 0x66001111
00851      31,  // U+001A20 - U+001A27 : 0x00000000
00852      31,  // U+001A28 - U+001A2F : 0x00000000
00853      31,  // U+001A30 - U+001A37 : 0x00000000
00854      31,  // U+001A38 - U+001A3F : 0x00000000
00855      31,  // U+001A40 - U+001A47 : 0x00000000
00856      31,  // U+001A48 - U+001A4F : 0x00000000
00857      31,  // U+001A50 - U+001A57 : 0x00000000
00858      31,  // U+001A58 - U+001A5F : 0x00000000
00859      31,  // U+001A60 - U+001A67 : 0x00000000
00860      31,  // U+001A68 - U+001A6F : 0x00000000
00861      31,  // U+001A70 - U+001A77 : 0x00000000
00862      31,  // U+001A78 - U+001A7F : 0x00000000
00863      31,  // U+001A80 - U+001A87 : 0x00000000
00864      31,  // U+001A88 - U+001A8F : 0x00000000
00865      31,  // U+001A90 - U+001A97 : 0x00000000
00866      31,  // U+001A98 - U+001A9F : 0x00000000
00867      31,  // U+001AA0 - U+001AA7 : 0x00000000
00868      31,  // U+001AA8 - U+001AAF : 0x00000000
00869      31,  // U+001AB0 - U+001AB7 : 0x00000000
00870      31,  // U+001AB8 - U+001ABF : 0x00000000
00871      31,  // U+001AC0 - U+001AC7 : 0x00000000
00872      31,  // U+001AC8 - U+001ACF : 0x00000000
00873      31,  // U+001AD0 - U+001AD7 : 0x00000000
00874      31,  // U+001AD8 - U+001ADF : 0x00000000
00875      31,  // U+001AE0 - U+001AE7 : 0x00000000
00876      31,  // U+001AE8 - U+001AEF : 0x00000000
00877      31,  // U+001AF0 - U+001AF7 : 0x00000000
00878      31,  // U+001AF8 - U+001AFF : 0x00000000
00879     175,  // U+001B00 - U+001B07 : 0x55511111
00880       6,  // U+001B08 - U+001B0F : 0x55555555
00881       6,  // U+001B10 - U+001B17 : 0x55555555
00882       6,  // U+001B18 - U+001B1F : 0x55555555
00883       6,  // U+001B20 - U+001B27 : 0x55555555
00884       6,  // U+001B28 - U+001B2F : 0x55555555
00885     176,  // U+001B30 - U+001B37 : 0x11115555
00886      20,  // U+001B38 - U+001B3F : 0x11111111
00887     175,  // U+001B40 - U+001B47 : 0x55511111
00888      30,  // U+001B48 - U+001B4F : 0x00005555
00889       3,  // U+001B50 - U+001B57 : 0x22222222
00890     147,  // U+001B58 - U+001B5F : 0x66666622
00891     177,  // U+001B60 - U+001B67 : 0x77777776
00892     178,  // U+001B68 - U+001B6F : 0x11111777
00893     179,  // U+001B70 - U+001B77 : 0x77771111
00894     180,  // U+001B78 - U+001B7F : 0x00077777
00895 };
00896 
00897 static const PRUint8 gGenCatIdx3[736] = {
00898       0,  // U+001D00 - U+001D07 : 0x55555555
00899       0,  // U+001D08 - U+001D0F : 0x55555555
00900       0,  // U+001D10 - U+001D17 : 0x55555555
00901       0,  // U+001D18 - U+001D1F : 0x55555555
00902       0,  // U+001D20 - U+001D27 : 0x55555555
00903       0,  // U+001D28 - U+001D2F : 0x55555555
00904       0,  // U+001D30 - U+001D37 : 0x55555555
00905       0,  // U+001D38 - U+001D3F : 0x55555555
00906       0,  // U+001D40 - U+001D47 : 0x55555555
00907       0,  // U+001D48 - U+001D4F : 0x55555555
00908       0,  // U+001D50 - U+001D57 : 0x55555555
00909       0,  // U+001D58 - U+001D5F : 0x55555555
00910       0,  // U+001D60 - U+001D67 : 0x55555555
00911       0,  // U+001D68 - U+001D6F : 0x55555555
00912       0,  // U+001D70 - U+001D77 : 0x55555555
00913       0,  // U+001D78 - U+001D7F : 0x55555555
00914       0,  // U+001D80 - U+001D87 : 0x55555555
00915       0,  // U+001D88 - U+001D8F : 0x55555555
00916       0,  // U+001D90 - U+001D97 : 0x55555555
00917       0,  // U+001D98 - U+001D9F : 0x55555555
00918       0,  // U+001DA0 - U+001DA7 : 0x55555555
00919       0,  // U+001DA8 - U+001DAF : 0x55555555
00920       0,  // U+001DB0 - U+001DB7 : 0x55555555
00921       0,  // U+001DB8 - U+001DBF : 0x55555555
00922       1,  // U+001DC0 - U+001DC7 : 0x11111111
00923       2,  // U+001DC8 - U+001DCF : 0x00000111
00924       3,  // U+001DD0 - U+001DD7 : 0x00000000
00925       3,  // U+001DD8 - U+001DDF : 0x00000000
00926       3,  // U+001DE0 - U+001DE7 : 0x00000000
00927       3,  // U+001DE8 - U+001DEF : 0x00000000
00928       3,  // U+001DF0 - U+001DF7 : 0x00000000
00929       4,  // U+001DF8 - U+001DFF : 0x11000000
00930       0,  // U+001E00 - U+001E07 : 0x55555555
00931       0,  // U+001E08 - U+001E0F : 0x55555555
00932       0,  // U+001E10 - U+001E17 : 0x55555555
00933       0,  // U+001E18 - U+001E1F : 0x55555555
00934       0,  // U+001E20 - U+001E27 : 0x55555555
00935       0,  // U+001E28 - U+001E2F : 0x55555555
00936       0,  // U+001E30 - U+001E37 : 0x55555555
00937       0,  // U+001E38 - U+001E3F : 0x55555555
00938       0,  // U+001E40 - U+001E47 : 0x55555555
00939       0,  // U+001E48 - U+001E4F : 0x55555555
00940       0,  // U+001E50 - U+001E57 : 0x55555555
00941       0,  // U+001E58 - U+001E5F : 0x55555555
00942       0,  // U+001E60 - U+001E67 : 0x55555555
00943       0,  // U+001E68 - U+001E6F : 0x55555555
00944       0,  // U+001E70 - U+001E77 : 0x55555555
00945       0,  // U+001E78 - U+001E7F : 0x55555555
00946       0,  // U+001E80 - U+001E87 : 0x55555555
00947       0,  // U+001E88 - U+001E8F : 0x55555555
00948       0,  // U+001E90 - U+001E97 : 0x55555555
00949       5,  // U+001E98 - U+001E9F : 0x00005555
00950       0,  // U+001EA0 - U+001EA7 : 0x55555555
00951       0,  // U+001EA8 - U+001EAF : 0x55555555
00952       0,  // U+001EB0 - U+001EB7 : 0x55555555
00953       0,  // U+001EB8 - U+001EBF : 0x55555555
00954       0,  // U+001EC0 - U+001EC7 : 0x55555555
00955       0,  // U+001EC8 - U+001ECF : 0x55555555
00956       0,  // U+001ED0 - U+001ED7 : 0x55555555
00957       0,  // U+001ED8 - U+001EDF : 0x55555555
00958       0,  // U+001EE0 - U+001EE7 : 0x55555555
00959       0,  // U+001EE8 - U+001EEF : 0x55555555
00960       0,  // U+001EF0 - U+001EF7 : 0x55555555
00961       6,  // U+001EF8 - U+001EFF : 0x00000055
00962       0,  // U+001F00 - U+001F07 : 0x55555555
00963       0,  // U+001F08 - U+001F0F : 0x55555555
00964       7,  // U+001F10 - U+001F17 : 0x00555555
00965       7,  // U+001F18 - U+001F1F : 0x00555555
00966       0,  // U+001F20 - U+001F27 : 0x55555555
00967       0,  // U+001F28 - U+001F2F : 0x55555555
00968       0,  // U+001F30 - U+001F37 : 0x55555555
00969       0,  // U+001F38 - U+001F3F : 0x55555555
00970       7,  // U+001F40 - U+001F47 : 0x00555555
00971       7,  // U+001F48 - U+001F4F : 0x00555555
00972       0,  // U+001F50 - U+001F57 : 0x55555555
00973       8,  // U+001F58 - U+001F5F : 0x50505050
00974       0,  // U+001F60 - U+001F67 : 0x55555555
00975       0,  // U+001F68 - U+001F6F : 0x55555555
00976       0,  // U+001F70 - U+001F77 : 0x55555555
00977       7,  // U+001F78 - U+001F7F : 0x00555555
00978       0,  // U+001F80 - U+001F87 : 0x55555555
00979       0,  // U+001F88 - U+001F8F : 0x55555555
00980       0,  // U+001F90 - U+001F97 : 0x55555555
00981       0,  // U+001F98 - U+001F9F : 0x55555555
00982       0,  // U+001FA0 - U+001FA7 : 0x55555555
00983       0,  // U+001FA8 - U+001FAF : 0x55555555
00984       9,  // U+001FB0 - U+001FB7 : 0x55055555
00985      10,  // U+001FB8 - U+001FBF : 0x75755555
00986      11,  // U+001FC0 - U+001FC7 : 0x55055577
00987      12,  // U+001FC8 - U+001FCF : 0x77755555
00988      13,  // U+001FD0 - U+001FD7 : 0x55005555
00989      14,  // U+001FD8 - U+001FDF : 0x77705555
00990       0,  // U+001FE0 - U+001FE7 : 0x55555555
00991      12,  // U+001FE8 - U+001FEF : 0x77755555
00992      15,  // U+001FF0 - U+001FF7 : 0x55055500
00993      16,  // U+001FF8 - U+001FFF : 0x07755555
00994      17,  // U+002000 - U+002007 : 0x33333333
00995      18,  // U+002008 - U+00200F : 0x44444333
00996      19,  // U+002010 - U+002017 : 0x66666666
00997      19,  // U+002018 - U+00201F : 0x66666666
00998      19,  // U+002020 - U+002027 : 0x66666666
00999      20,  // U+002028 - U+00202F : 0x34444433
01000      19,  // U+002030 - U+002037 : 0x66666666
01001      19,  // U+002038 - U+00203F : 0x66666666
01002      21,  // U+002040 - U+002047 : 0x66676666
01003      19,  // U+002048 - U+00204F : 0x66666666
01004      22,  // U+002050 - U+002057 : 0x66666766
01005      23,  // U+002058 - U+00205F : 0x36666666
01006      24,  // U+002060 - U+002067 : 0x00004444
01007      25,  // U+002068 - U+00206F : 0x44444400
01008      26,  // U+002070 - U+002077 : 0x22220052
01009      27,  // U+002078 - U+00207F : 0x56677722
01010      28,  // U+002080 - U+002087 : 0x22222222
01011      29,  // U+002088 - U+00208F : 0x06677722
01012      30,  // U+002090 - U+002097 : 0x00055555
01013       3,  // U+002098 - U+00209F : 0x00000000
01014      31,  // U+0020A0 - U+0020A7 : 0x77777777
01015      31,  // U+0020A8 - U+0020AF : 0x77777777
01016      32,  // U+0020B0 - U+0020B7 : 0x00777777
01017       3,  // U+0020B8 - U+0020BF : 0x00000000
01018       3,  // U+0020C0 - U+0020C7 : 0x00000000
01019       3,  // U+0020C8 - U+0020CF : 0x00000000
01020       1,  // U+0020D0 - U+0020D7 : 0x11111111
01021       1,  // U+0020D8 - U+0020DF : 0x11111111
01022       1,  // U+0020E0 - U+0020E7 : 0x11111111
01023       1,  // U+0020E8 - U+0020EF : 0x11111111
01024       3,  // U+0020F0 - U+0020F7 : 0x00000000
01025       3,  // U+0020F8 - U+0020FF : 0x00000000
01026      33,  // U+002100 - U+002107 : 0x57777577
01027      34,  // U+002108 - U+00210F : 0x55555577
01028      35,  // U+002110 - U+002117 : 0x77575555
01029      36,  // U+002118 - U+00211F : 0x77555557
01030      37,  // U+002120 - U+002127 : 0x75757777
01031      38,  // U+002128 - U+00212F : 0x57555575
01032       0,  // U+002130 - U+002137 : 0x55555555
01033      39,  // U+002138 - U+00213F : 0x55557755
01034      40,  // U+002140 - U+002147 : 0x55577777
01035      41,  // U+002148 - U+00214F : 0x05777755
01036      42,  // U+002150 - U+002157 : 0x22222000
01037      28,  // U+002158 - U+00215F : 0x22222222
01038      28,  // U+002160 - U+002167 : 0x22222222
01039      28,  // U+002168 - U+00216F : 0x22222222
01040      28,  // U+002170 - U+002177 : 0x22222222
01041      28,  // U+002178 - U+00217F : 0x22222222
01042      43,  // U+002180 - U+002187 : 0x00055222
01043       3,  // U+002188 - U+00218F : 0x00000000
01044      31,  // U+002190 - U+002197 : 0x77777777
01045      31,  // U+002198 - U+00219F : 0x77777777
01046      31,  // U+0021A0 - U+0021A7 : 0x77777777
01047      31,  // U+0021A8 - U+0021AF : 0x77777777
01048      31,  // U+0021B0 - U+0021B7 : 0x77777777
01049      31,  // U+0021B8 - U+0021BF : 0x77777777
01050      31,  // U+0021C0 - U+0021C7 : 0x77777777
01051      31,  // U+0021C8 - U+0021CF : 0x77777777
01052      31,  // U+0021D0 - U+0021D7 : 0x77777777
01053      31,  // U+0021D8 - U+0021DF : 0x77777777
01054      31,  // U+0021E0 - U+0021E7 : 0x77777777
01055      31,  // U+0021E8 - U+0021EF : 0x77777777
01056      31,  // U+0021F0 - U+0021F7 : 0x77777777
01057      31,  // U+0021F8 - U+0021FF : 0x77777777
01058      31,  // U+002200 - U+002207 : 0x77777777
01059      31,  // U+002208 - U+00220F : 0x77777777
01060      31,  // U+002210 - U+002217 : 0x77777777
01061      31,  // U+002218 - U+00221F : 0x77777777
01062      31,  // U+002220 - U+002227 : 0x77777777
01063      31,  // U+002228 - U+00222F : 0x77777777
01064      31,  // U+002230 - U+002237 : 0x77777777
01065      31,  // U+002238 - U+00223F : 0x77777777
01066      31,  // U+002240 - U+002247 : 0x77777777
01067      31,  // U+002248 - U+00224F : 0x77777777
01068      31,  // U+002250 - U+002257 : 0x77777777
01069      31,  // U+002258 - U+00225F : 0x77777777
01070      31,  // U+002260 - U+002267 : 0x77777777
01071      31,  // U+002268 - U+00226F : 0x77777777
01072      31,  // U+002270 - U+002277 : 0x77777777
01073      31,  // U+002278 - U+00227F : 0x77777777
01074      31,  // U+002280 - U+002287 : 0x77777777
01075      31,  // U+002288 - U+00228F : 0x77777777
01076      31,  // U+002290 - U+002297 : 0x77777777
01077      31,  // U+002298 - U+00229F : 0x77777777
01078      31,  // U+0022A0 - U+0022A7 : 0x77777777
01079      31,  // U+0022A8 - U+0022AF : 0x77777777
01080      31,  // U+0022B0 - U+0022B7 : 0x77777777
01081      31,  // U+0022B8 - U+0022BF : 0x77777777
01082      31,  // U+0022C0 - U+0022C7 : 0x77777777
01083      31,  // U+0022C8 - U+0022CF : 0x77777777
01084      31,  // U+0022D0 - U+0022D7 : 0x77777777
01085      31,  // U+0022D8 - U+0022DF : 0x77777777
01086      31,  // U+0022E0 - U+0022E7 : 0x77777777
01087      31,  // U+0022E8 - U+0022EF : 0x77777777
01088      31,  // U+0022F0 - U+0022F7 : 0x77777777
01089      31,  // U+0022F8 - U+0022FF : 0x77777777
01090      31,  // U+002300 - U+002307 : 0x77777777
01091      31,  // U+002308 - U+00230F : 0x77777777
01092      31,  // U+002310 - U+002317 : 0x77777777
01093      31,  // U+002318 - U+00231F : 0x77777777
01094      31,  // U+002320 - U+002327 : 0x77777777
01095      44,  // U+002328 - U+00232F : 0x77777667
01096      31,  // U+002330 - U+002337 : 0x77777777
01097      31,  // U+002338 - U+00233F : 0x77777777
01098      31,  // U+002340 - U+002347 : 0x77777777
01099      31,  // U+002348 - U+00234F : 0x77777777
01100      31,  // U+002350 - U+002357 : 0x77777777
01101      31,  // U+002358 - U+00235F : 0x77777777
01102      31,  // U+002360 - U+002367 : 0x77777777
01103      31,  // U+002368 - U+00236F : 0x77777777
01104      31,  // U+002370 - U+002377 : 0x77777777
01105      31,  // U+002378 - U+00237F : 0x77777777
01106      31,  // U+002380 - U+002387 : 0x77777777
01107      31,  // U+002388 - U+00238F : 0x77777777
01108      31,  // U+002390 - U+002397 : 0x77777777
01109      31,  // U+002398 - U+00239F : 0x77777777
01110      31,  // U+0023A0 - U+0023A7 : 0x77777777
01111      31,  // U+0023A8 - U+0023AF : 0x77777777
01112      31,  // U+0023B0 - U+0023B7 : 0x77777777
01113      31,  // U+0023B8 - U+0023BF : 0x77777777
01114      31,  // U+0023C0 - U+0023C7 : 0x77777777
01115      31,  // U+0023C8 - U+0023CF : 0x77777777
01116      31,  // U+0023D0 - U+0023D7 : 0x77777777
01117      31,  // U+0023D8 - U+0023DF : 0x77777777
01118      31,  // U+0023E0 - U+0023E7 : 0x77777777
01119       3,  // U+0023E8 - U+0023EF : 0x00000000
01120       3,  // U+0023F0 - U+0023F7 : 0x00000000
01121       3,  // U+0023F8 - U+0023FF : 0x00000000
01122      31,  // U+002400 - U+002407 : 0x77777777
01123      31,  // U+002408 - U+00240F : 0x77777777
01124      31,  // U+002410 - U+002417 : 0x77777777
01125      31,  // U+002418 - U+00241F : 0x77777777
01126      45,  // U+002420 - U+002427 : 0x07777777
01127       3,  // U+002428 - U+00242F : 0x00000000
01128       3,  // U+002430 - U+002437 : 0x00000000
01129       3,  // U+002438 - U+00243F : 0x00000000
01130      31,  // U+002440 - U+002447 : 0x77777777
01131      46,  // U+002448 - U+00244F : 0x00000777
01132       3,  // U+002450 - U+002457 : 0x00000000
01133       3,  // U+002458 - U+00245F : 0x00000000
01134      28,  // U+002460 - U+002467 : 0x22222222
01135      28,  // U+002468 - U+00246F : 0x22222222
01136      28,  // U+002470 - U+002477 : 0x22222222
01137      28,  // U+002478 - U+00247F : 0x22222222
01138      28,  // U+002480 - U+002487 : 0x22222222
01139      28,  // U+002488 - U+00248F : 0x22222222
01140      28,  // U+002490 - U+002497 : 0x22222222
01141      47,  // U+002498 - U+00249F : 0x77772222
01142      31,  // U+0024A0 - U+0024A7 : 0x77777777
01143      31,  // U+0024A8 - U+0024AF : 0x77777777
01144      31,  // U+0024B0 - U+0024B7 : 0x77777777
01145      31,  // U+0024B8 - U+0024BF : 0x77777777
01146      31,  // U+0024C0 - U+0024C7 : 0x77777777
01147      31,  // U+0024C8 - U+0024CF : 0x77777777
01148      31,  // U+0024D0 - U+0024D7 : 0x77777777
01149      31,  // U+0024D8 - U+0024DF : 0x77777777
01150      31,  // U+0024E0 - U+0024E7 : 0x77777777
01151      48,  // U+0024E8 - U+0024EF : 0x22222277
01152      28,  // U+0024F0 - U+0024F7 : 0x22222222
01153      28,  // U+0024F8 - U+0024FF : 0x22222222
01154      31,  // U+002500 - U+002507 : 0x77777777
01155      31,  // U+002508 - U+00250F : 0x77777777
01156      31,  // U+002510 - U+002517 : 0x77777777
01157      31,  // U+002518 - U+00251F : 0x77777777
01158      31,  // U+002520 - U+002527 : 0x77777777
01159      31,  // U+002528 - U+00252F : 0x77777777
01160      31,  // U+002530 - U+002537 : 0x77777777
01161      31,  // U+002538 - U+00253F : 0x77777777
01162      31,  // U+002540 - U+002547 : 0x77777777
01163      31,  // U+002548 - U+00254F : 0x77777777
01164      31,  // U+002550 - U+002557 : 0x77777777
01165      31,  // U+002558 - U+00255F : 0x77777777
01166      31,  // U+002560 - U+002567 : 0x77777777
01167      31,  // U+002568 - U+00256F : 0x77777777
01168      31,  // U+002570 - U+002577 : 0x77777777
01169      31,  // U+002578 - U+00257F : 0x77777777
01170      31,  // U+002580 - U+002587 : 0x77777777
01171      31,  // U+002588 - U+00258F : 0x77777777
01172      31,  // U+002590 - U+002597 : 0x77777777
01173      31,  // U+002598 - U+00259F : 0x77777777
01174      31,  // U+0025A0 - U+0025A7 : 0x77777777
01175      31,  // U+0025A8 - U+0025AF : 0x77777777
01176      31,  // U+0025B0 - U+0025B7 : 0x77777777
01177      31,  // U+0025B8 - U+0025BF : 0x77777777
01178      31,  // U+0025C0 - U+0025C7 : 0x77777777
01179      31,  // U+0025C8 - U+0025CF : 0x77777777
01180      31,  // U+0025D0 - U+0025D7 : 0x77777777
01181      31,  // U+0025D8 - U+0025DF : 0x77777777
01182      31,  // U+0025E0 - U+0025E7 : 0x77777777
01183      31,  // U+0025E8 - U+0025EF : 0x77777777
01184      31,  // U+0025F0 - U+0025F7 : 0x77777777
01185      31,  // U+0025F8 - U+0025FF : 0x77777777
01186      31,  // U+002600 - U+002607 : 0x77777777
01187      31,  // U+002608 - U+00260F : 0x77777777
01188      31,  // U+002610 - U+002617 : 0x77777777
01189      31,  // U+002618 - U+00261F : 0x77777777
01190      31,  // U+002620 - U+002627 : 0x77777777
01191      31,  // U+002628 - U+00262F : 0x77777777
01192      31,  // U+002630 - U+002637 : 0x77777777
01193      31,  // U+002638 - U+00263F : 0x77777777
01194      31,  // U+002640 - U+002647 : 0x77777777
01195      31,  // U+002648 - U+00264F : 0x77777777
01196      31,  // U+002650 - U+002657 : 0x77777777
01197      31,  // U+002658 - U+00265F : 0x77777777
01198      31,  // U+002660 - U+002667 : 0x77777777
01199      31,  // U+002668 - U+00266F : 0x77777777
01200      31,  // U+002670 - U+002677 : 0x77777777
01201      31,  // U+002678 - U+00267F : 0x77777777
01202      31,  // U+002680 - U+002687 : 0x77777777
01203      31,  // U+002688 - U+00268F : 0x77777777
01204      31,  // U+002690 - U+002697 : 0x77777777
01205      49,  // U+002698 - U+00269F : 0x00077777
01206      31,  // U+0026A0 - U+0026A7 : 0x77777777
01207      31,  // U+0026A8 - U+0026AF : 0x77777777
01208      46,  // U+0026B0 - U+0026B7 : 0x00000777
01209       3,  // U+0026B8 - U+0026BF : 0x00000000
01210       3,  // U+0026C0 - U+0026C7 : 0x00000000
01211       3,  // U+0026C8 - U+0026CF : 0x00000000
01212       3,  // U+0026D0 - U+0026D7 : 0x00000000
01213       3,  // U+0026D8 - U+0026DF : 0x00000000
01214       3,  // U+0026E0 - U+0026E7 : 0x00000000
01215       3,  // U+0026E8 - U+0026EF : 0x00000000
01216       3,  // U+0026F0 - U+0026F7 : 0x00000000
01217       3,  // U+0026F8 - U+0026FF : 0x00000000
01218      50,  // U+002700 - U+002707 : 0x77077770
01219      51,  // U+002708 - U+00270F : 0x77770077
01220      31,  // U+002710 - U+002717 : 0x77777777
01221      31,  // U+002718 - U+00271F : 0x77777777
01222      31,  // U+002720 - U+002727 : 0x77777777
01223      52,  // U+002728 - U+00272F : 0x77777770
01224      31,  // U+002730 - U+002737 : 0x77777777
01225      31,  // U+002738 - U+00273F : 0x77777777
01226      31,  // U+002740 - U+002747 : 0x77777777
01227      53,  // U+002748 - U+00274F : 0x70707777
01228      54,  // U+002750 - U+002757 : 0x07000777
01229      45,  // U+002758 - U+00275F : 0x07777777
01230      52,  // U+002760 - U+002767 : 0x77777770
01231      19,  // U+002768 - U+00276F : 0x66666666
01232      55,  // U+002770 - U+002777 : 0x22666666
01233      28,  // U+002778 - U+00277F : 0x22222222
01234      28,  // U+002780 - U+002787 : 0x22222222
01235      28,  // U+002788 - U+00278F : 0x22222222
01236      56,  // U+002790 - U+002797 : 0x00072222
01237      31,  // U+002798 - U+00279F : 0x77777777
01238      31,  // U+0027A0 - U+0027A7 : 0x77777777
01239      31,  // U+0027A8 - U+0027AF : 0x77777777
01240      52,  // U+0027B0 - U+0027B7 : 0x77777770
01241      45,  // U+0027B8 - U+0027BF : 0x07777777
01242      57,  // U+0027C0 - U+0027C7 : 0x76677777
01243      46,  // U+0027C8 - U+0027CF : 0x00000777
01244      31,  // U+0027D0 - U+0027D7 : 0x77777777
01245      31,  // U+0027D8 - U+0027DF : 0x77777777
01246      58,  // U+0027E0 - U+0027E7 : 0x66777777
01247      59,  // U+0027E8 - U+0027EF : 0x00006666
01248      31,  // U+0027F0 - U+0027F7 : 0x77777777
01249      31,  // U+0027F8 - U+0027FF : 0x77777777
01250      31,  // U+002800 - U+002807 : 0x77777777
01251      31,  // U+002808 - U+00280F : 0x77777777
01252      31,  // U+002810 - U+002817 : 0x77777777
01253      31,  // U+002818 - U+00281F : 0x77777777
01254      31,  // U+002820 - U+002827 : 0x77777777
01255      31,  // U+002828 - U+00282F : 0x77777777
01256      31,  // U+002830 - U+002837 : 0x77777777
01257      31,  // U+002838 - U+00283F : 0x77777777
01258      31,  // U+002840 - U+002847 : 0x77777777
01259      31,  // U+002848 - U+00284F : 0x77777777
01260      31,  // U+002850 - U+002857 : 0x77777777
01261      31,  // U+002858 - U+00285F : 0x77777777
01262      31,  // U+002860 - U+002867 : 0x77777777
01263      31,  // U+002868 - U+00286F : 0x77777777
01264      31,  // U+002870 - U+002877 : 0x77777777
01265      31,  // U+002878 - U+00287F : 0x77777777
01266      31,  // U+002880 - U+002887 : 0x77777777
01267      31,  // U+002888 - U+00288F : 0x77777777
01268      31,  // U+002890 - U+002897 : 0x77777777
01269      31,  // U+002898 - U+00289F : 0x77777777
01270      31,  // U+0028A0 - U+0028A7 : 0x77777777
01271      31,  // U+0028A8 - U+0028AF : 0x77777777
01272      31,  // U+0028B0 - U+0028B7 : 0x77777777
01273      31,  // U+0028B8 - U+0028BF : 0x77777777
01274      31,  // U+0028C0 - U+0028C7 : 0x77777777
01275      31,  // U+0028C8 - U+0028CF : 0x77777777
01276      31,  // U+0028D0 - U+0028D7 : 0x77777777
01277      31,  // U+0028D8 - U+0028DF : 0x77777777
01278      31,  // U+0028E0 - U+0028E7 : 0x77777777
01279      31,  // U+0028E8 - U+0028EF : 0x77777777
01280      31,  // U+0028F0 - U+0028F7 : 0x77777777
01281      31,  // U+0028F8 - U+0028FF : 0x77777777
01282      31,  // U+002900 - U+002907 : 0x77777777
01283      31,  // U+002908 - U+00290F : 0x77777777
01284      31,  // U+002910 - U+002917 : 0x77777777
01285      31,  // U+002918 - U+00291F : 0x77777777
01286      31,  // U+002920 - U+002927 : 0x77777777
01287      31,  // U+002928 - U+00292F : 0x77777777
01288      31,  // U+002930 - U+002937 : 0x77777777
01289      31,  // U+002938 - U+00293F : 0x77777777
01290      31,  // U+002940 - U+002947 : 0x77777777
01291      31,  // U+002948 - U+00294F : 0x77777777
01292      31,  // U+002950 - U+002957 : 0x77777777
01293      31,  // U+002958 - U+00295F : 0x77777777
01294      31,  // U+002960 - U+002967 : 0x77777777
01295      31,  // U+002968 - U+00296F : 0x77777777
01296      31,  // U+002970 - U+002977 : 0x77777777
01297      31,  // U+002978 - U+00297F : 0x77777777
01298      60,  // U+002980 - U+002987 : 0x66666777
01299      19,  // U+002988 - U+00298F : 0x66666666
01300      19,  // U+002990 - U+002997 : 0x66666666
01301      61,  // U+002998 - U+00299F : 0x77777776
01302      31,  // U+0029A0 - U+0029A7 : 0x77777777
01303      31,  // U+0029A8 - U+0029AF : 0x77777777
01304      31,  // U+0029B0 - U+0029B7 : 0x77777777
01305      31,  // U+0029B8 - U+0029BF : 0x77777777
01306      31,  // U+0029C0 - U+0029C7 : 0x77777777
01307      31,  // U+0029C8 - U+0029CF : 0x77777777
01308      31,  // U+0029D0 - U+0029D7 : 0x77777777
01309      62,  // U+0029D8 - U+0029DF : 0x77776666
01310      31,  // U+0029E0 - U+0029E7 : 0x77777777
01311      31,  // U+0029E8 - U+0029EF : 0x77777777
01312      31,  // U+0029F0 - U+0029F7 : 0x77777777
01313      63,  // U+0029F8 - U+0029FF : 0x77667777
01314      31,  // U+002A00 - U+002A07 : 0x77777777
01315      31,  // U+002A08 - U+002A0F : 0x77777777
01316      31,  // U+002A10 - U+002A17 : 0x77777777
01317      31,  // U+002A18 - U+002A1F : 0x77777777
01318      31,  // U+002A20 - U+002A27 : 0x77777777
01319      31,  // U+002A28 - U+002A2F : 0x77777777
01320      31,  // U+002A30 - U+002A37 : 0x77777777
01321      31,  // U+002A38 - U+002A3F : 0x77777777
01322      31,  // U+002A40 - U+002A47 : 0x77777777
01323      31,  // U+002A48 - U+002A4F : 0x77777777
01324      31,  // U+002A50 - U+002A57 : 0x77777777
01325      31,  // U+002A58 - U+002A5F : 0x77777777
01326      31,  // U+002A60 - U+002A67 : 0x77777777
01327      31,  // U+002A68 - U+002A6F : 0x77777777
01328      31,  // U+002A70 - U+002A77 : 0x77777777
01329      31,  // U+002A78 - U+002A7F : 0x77777777
01330      31,  // U+002A80 - U+002A87 : 0x77777777
01331      31,  // U+002A88 - U+002A8F : 0x77777777
01332      31,  // U+002A90 - U+002A97 : 0x77777777
01333      31,  // U+002A98 - U+002A9F : 0x77777777
01334      31,  // U+002AA0 - U+002AA7 : 0x77777777
01335      31,  // U+002AA8 - U+002AAF : 0x77777777
01336      31,  // U+002AB0 - U+002AB7 : 0x77777777
01337      31,  // U+002AB8 - U+002ABF : 0x77777777
01338      31,  // U+002AC0 - U+002AC7 : 0x77777777
01339      31,  // U+002AC8 - U+002ACF : 0x77777777
01340      31,  // U+002AD0 - U+002AD7 : 0x77777777
01341      31,  // U+002AD8 - U+002ADF : 0x77777777
01342      31,  // U+002AE0 - U+002AE7 : 0x77777777
01343      31,  // U+002AE8 - U+002AEF : 0x77777777
01344      31,  // U+002AF0 - U+002AF7 : 0x77777777
01345      31,  // U+002AF8 - U+002AFF : 0x77777777
01346      31,  // U+002B00 - U+002B07 : 0x77777777
01347      31,  // U+002B08 - U+002B0F : 0x77777777
01348      31,  // U+002B10 - U+002B17 : 0x77777777
01349      46,  // U+002B18 - U+002B1F : 0x00000777
01350      64,  // U+002B20 - U+002B27 : 0x00007777
01351       3,  // U+002B28 - U+002B2F : 0x00000000
01352       3,  // U+002B30 - U+002B37 : 0x00000000
01353       3,  // U+002B38 - U+002B3F : 0x00000000
01354       3,  // U+002B40 - U+002B47 : 0x00000000
01355       3,  // U+002B48 - U+002B4F : 0x00000000
01356       3,  // U+002B50 - U+002B57 : 0x00000000
01357       3,  // U+002B58 - U+002B5F : 0x00000000
01358       3,  // U+002B60 - U+002B67 : 0x00000000
01359       3,  // U+002B68 - U+002B6F : 0x00000000
01360       3,  // U+002B70 - U+002B77 : 0x00000000
01361       3,  // U+002B78 - U+002B7F : 0x00000000
01362       3,  // U+002B80 - U+002B87 : 0x00000000
01363       3,  // U+002B88 - U+002B8F : 0x00000000
01364       3,  // U+002B90 - U+002B97 : 0x00000000
01365       3,  // U+002B98 - U+002B9F : 0x00000000
01366       3,  // U+002BA0 - U+002BA7 : 0x00000000
01367       3,  // U+002BA8 - U+002BAF : 0x00000000
01368       3,  // U+002BB0 - U+002BB7 : 0x00000000
01369       3,  // U+002BB8 - U+002BBF : 0x00000000
01370       3,  // U+002BC0 - U+002BC7 : 0x00000000
01371       3,  // U+002BC8 - U+002BCF : 0x00000000
01372       3,  // U+002BD0 - U+002BD7 : 0x00000000
01373       3,  // U+002BD8 - U+002BDF : 0x00000000
01374       3,  // U+002BE0 - U+002BE7 : 0x00000000
01375       3,  // U+002BE8 - U+002BEF : 0x00000000
01376       3,  // U+002BF0 - U+002BF7 : 0x00000000
01377       3,  // U+002BF8 - U+002BFF : 0x00000000
01378       0,  // U+002C00 - U+002C07 : 0x55555555
01379       0,  // U+002C08 - U+002C0F : 0x55555555
01380       0,  // U+002C10 - U+002C17 : 0x55555555
01381       0,  // U+002C18 - U+002C1F : 0x55555555
01382       0,  // U+002C20 - U+002C27 : 0x55555555
01383      65,  // U+002C28 - U+002C2F : 0x05555555
01384       0,  // U+002C30 - U+002C37 : 0x55555555
01385       0,  // U+002C38 - U+002C3F : 0x55555555
01386       0,  // U+002C40 - U+002C47 : 0x55555555
01387       0,  // U+002C48 - U+002C4F : 0x55555555
01388       0,  // U+002C50 - U+002C57 : 0x55555555
01389      65,  // U+002C58 - U+002C5F : 0x05555555
01390       0,  // U+002C60 - U+002C67 : 0x55555555
01391      30,  // U+002C68 - U+002C6F : 0x00055555
01392      66,  // U+002C70 - U+002C77 : 0x55550000
01393       3,  // U+002C78 - U+002C7F : 0x00000000
01394       0,  // U+002C80 - U+002C87 : 0x55555555
01395       0,  // U+002C88 - U+002C8F : 0x55555555
01396       0,  // U+002C90 - U+002C97 : 0x55555555
01397       0,  // U+002C98 - U+002C9F : 0x55555555
01398       0,  // U+002CA0 - U+002CA7 : 0x55555555
01399       0,  // U+002CA8 - U+002CAF : 0x55555555
01400       0,  // U+002CB0 - U+002CB7 : 0x55555555
01401       0,  // U+002CB8 - U+002CBF : 0x55555555
01402       0,  // U+002CC0 - U+002CC7 : 0x55555555
01403       0,  // U+002CC8 - U+002CCF : 0x55555555
01404       0,  // U+002CD0 - U+002CD7 : 0x55555555
01405       0,  // U+002CD8 - U+002CDF : 0x55555555
01406      12,  // U+002CE0 - U+002CE7 : 0x77755555
01407      46,  // U+002CE8 - U+002CEF : 0x00000777
01408       3,  // U+002CF0 - U+002CF7 : 0x00000000
01409      67,  // U+002CF8 - U+002CFF : 0x66266660
01410       0,  // U+002D00 - U+002D07 : 0x55555555
01411       0,  // U+002D08 - U+002D0F : 0x55555555
01412       0,  // U+002D10 - U+002D17 : 0x55555555
01413       0,  // U+002D18 - U+002D1F : 0x55555555
01414       7,  // U+002D20 - U+002D27 : 0x00555555
01415       3,  // U+002D28 - U+002D2F : 0x00000000
01416       0,  // U+002D30 - U+002D37 : 0x55555555
01417       0,  // U+002D38 - U+002D3F : 0x55555555
01418       0,  // U+002D40 - U+002D47 : 0x55555555
01419       0,  // U+002D48 - U+002D4F : 0x55555555
01420       0,  // U+002D50 - U+002D57 : 0x55555555
01421       0,  // U+002D58 - U+002D5F : 0x55555555
01422       7,  // U+002D60 - U+002D67 : 0x00555555
01423      68,  // U+002D68 - U+002D6F : 0x50000000
01424       3,  // U+002D70 - U+002D77 : 0x00000000
01425       3,  // U+002D78 - U+002D7F : 0x00000000
01426       0,  // U+002D80 - U+002D87 : 0x55555555
01427       0,  // U+002D88 - U+002D8F : 0x55555555
01428      65,  // U+002D90 - U+002D97 : 0x05555555
01429       3,  // U+002D98 - U+002D9F : 0x00000000
01430      65,  // U+002DA0 - U+002DA7 : 0x05555555
01431      65,  // U+002DA8 - U+002DAF : 0x05555555
01432      65,  // U+002DB0 - U+002DB7 : 0x05555555
01433      65,  // U+002DB8 - U+002DBF : 0x05555555
01434      65,  // U+002DC0 - U+002DC7 : 0x05555555
01435      65,  // U+002DC8 - U+002DCF : 0x05555555
01436      65,  // U+002DD0 - U+002DD7 : 0x05555555
01437      65,  // U+002DD8 - U+002DDF : 0x05555555
01438       3,  // U+002DE0 - U+002DE7 : 0x00000000
01439       3,  // U+002DE8 - U+002DEF : 0x00000000
01440       3,  // U+002DF0 - U+002DF7 : 0x00000000
01441       3,  // U+002DF8 - U+002DFF : 0x00000000
01442      19,  // U+002E00 - U+002E07 : 0x66666666
01443      19,  // U+002E08 - U+002E0F : 0x66666666
01444      19,  // U+002E10 - U+002E17 : 0x66666666
01445      69,  // U+002E18 - U+002E1F : 0x00660000
01446       3,  // U+002E20 - U+002E27 : 0x00000000
01447       3,  // U+002E28 - U+002E2F : 0x00000000
01448       3,  // U+002E30 - U+002E37 : 0x00000000
01449       3,  // U+002E38 - U+002E3F : 0x00000000
01450       3,  // U+002E40 - U+002E47 : 0x00000000
01451       3,  // U+002E48 - U+002E4F : 0x00000000
01452       3,  // U+002E50 - U+002E57 : 0x00000000
01453       3,  // U+002E58 - U+002E5F : 0x00000000
01454       3,  // U+002E60 - U+002E67 : 0x00000000
01455       3,  // U+002E68 - U+002E6F : 0x00000000
01456       3,  // U+002E70 - U+002E77 : 0x00000000
01457       3,  // U+002E78 - U+002E7F : 0x00000000
01458      31,  // U+002E80 - U+002E87 : 0x77777777
01459      31,  // U+002E88 - U+002E8F : 0x77777777
01460      31,  // U+002E90 - U+002E97 : 0x77777777
01461      70,  // U+002E98 - U+002E9F : 0x77777077
01462      31,  // U+002EA0 - U+002EA7 : 0x77777777
01463      31,  // U+002EA8 - U+002EAF : 0x77777777
01464      31,  // U+002EB0 - U+002EB7 : 0x77777777
01465      31,  // U+002EB8 - U+002EBF : 0x77777777
01466      31,  // U+002EC0 - U+002EC7 : 0x77777777
01467      31,  // U+002EC8 - U+002ECF : 0x77777777
01468      31,  // U+002ED0 - U+002ED7 : 0x77777777
01469      31,  // U+002ED8 - U+002EDF : 0x77777777
01470      31,  // U+002EE0 - U+002EE7 : 0x77777777
01471      31,  // U+002EE8 - U+002EEF : 0x77777777
01472      64,  // U+002EF0 - U+002EF7 : 0x00007777
01473       3,  // U+002EF8 - U+002EFF : 0x00000000
01474      31,  // U+002F00 - U+002F07 : 0x77777777
01475      31,  // U+002F08 - U+002F0F : 0x77777777
01476      31,  // U+002F10 - U+002F17 : 0x77777777
01477      31,  // U+002F18 - U+002F1F : 0x77777777
01478      31,  // U+002F20 - U+002F27 : 0x77777777
01479      31,  // U+002F28 - U+002F2F : 0x77777777
01480      31,  // U+002F30 - U+002F37 : 0x77777777
01481      31,  // U+002F38 - U+002F3F : 0x77777777
01482      31,  // U+002F40 - U+002F47 : 0x77777777
01483      31,  // U+002F48 - U+002F4F : 0x77777777
01484      31,  // U+002F50 - U+002F57 : 0x77777777
01485      31,  // U+002F58 - U+002F5F : 0x77777777
01486      31,  // U+002F60 - U+002F67 : 0x77777777
01487      31,  // U+002F68 - U+002F6F : 0x77777777
01488      31,  // U+002F70 - U+002F77 : 0x77777777
01489      31,  // U+002F78 - U+002F7F : 0x77777777
01490      31,  // U+002F80 - U+002F87 : 0x77777777
01491      31,  // U+002F88 - U+002F8F : 0x77777777
01492      31,  // U+002F90 - U+002F97 : 0x77777777
01493      31,  // U+002F98 - U+002F9F : 0x77777777
01494      31,  // U+002FA0 - U+002FA7 : 0x77777777
01495      31,  // U+002FA8 - U+002FAF : 0x77777777
01496      31,  // U+002FB0 - U+002FB7 : 0x77777777
01497      31,  // U+002FB8 - U+002FBF : 0x77777777
01498      31,  // U+002FC0 - U+002FC7 : 0x77777777
01499      31,  // U+002FC8 - U+002FCF : 0x77777777
01500      32,  // U+002FD0 - U+002FD7 : 0x00777777
01501       3,  // U+002FD8 - U+002FDF : 0x00000000
01502       3,  // U+002FE0 - U+002FE7 : 0x00000000
01503       3,  // U+002FE8 - U+002FEF : 0x00000000
01504      31,  // U+002FF0 - U+002FF7 : 0x77777777
01505      64,  // U+002FF8 - U+002FFF : 0x00007777
01506      71,  // U+003000 - U+003007 : 0x25576663
01507      19,  // U+003008 - U+00300F : 0x66666666
01508      72,  // U+003010 - U+003017 : 0x66667766
01509      19,  // U+003018 - U+00301F : 0x66666666
01510      73,  // U+003020 - U+003027 : 0x22222227
01511      74,  // U+003028 - U+00302F : 0x11111122
01512      75,  // U+003030 - U+003037 : 0x77555556
01513      76,  // U+003038 - U+00303F : 0x77655222
01514      77,  // U+003040 - U+003047 : 0x55555550
01515       0,  // U+003048 - U+00304F : 0x55555555
01516       0,  // U+003050 - U+003057 : 0x55555555
01517       0,  // U+003058 - U+00305F : 0x55555555
01518       0,  // U+003060 - U+003067 : 0x55555555
01519       0,  // U+003068 - U+00306F : 0x55555555
01520       0,  // U+003070 - U+003077 : 0x55555555
01521       0,  // U+003078 - U+00307F : 0x55555555
01522       0,  // U+003080 - U+003087 : 0x55555555
01523       0,  // U+003088 - U+00308F : 0x55555555
01524      65,  // U+003090 - U+003097 : 0x05555555
01525      78,  // U+003098 - U+00309F : 0x55577110
01526      79,  // U+0030A0 - U+0030A7 : 0x55555556
01527       0,  // U+0030A8 - U+0030AF : 0x55555555
01528       0,  // U+0030B0 - U+0030B7 : 0x55555555
01529       0,  // U+0030B8 - U+0030BF : 0x55555555
01530       0,  // U+0030C0 - U+0030C7 : 0x55555555
01531       0,  // U+0030C8 - U+0030CF : 0x55555555
01532       0,  // U+0030D0 - U+0030D7 : 0x55555555
01533       0,  // U+0030D8 - U+0030DF : 0x55555555
01534       0,  // U+0030E0 - U+0030E7 : 0x55555555
01535       0,  // U+0030E8 - U+0030EF : 0x55555555
01536       0,  // U+0030F0 - U+0030F7 : 0x55555555
01537      80,  // U+0030F8 - U+0030FF : 0x55556555
01538      81,  // U+003100 - U+003107 : 0x55500000
01539       0,  // U+003108 - U+00310F : 0x55555555
01540       0,  // U+003110 - U+003117 : 0x55555555
01541       0,  // U+003118 - U+00311F : 0x55555555
01542       0,  // U+003120 - U+003127 : 0x55555555
01543      30,  // U+003128 - U+00312F : 0x00055555
01544      77,  // U+003130 - U+003137 : 0x55555550
01545       0,  // U+003138 - U+00313F : 0x55555555
01546       0,  // U+003140 - U+003147 : 0x55555555
01547       0,  // U+003148 - U+00314F : 0x55555555
01548       0,  // U+003150 - U+003157 : 0x55555555
01549       0,  // U+003158 - U+00315F : 0x55555555
01550       0,  // U+003160 - U+003167 : 0x55555555
01551       0,  // U+003168 - U+00316F : 0x55555555
01552       0,  // U+003170 - U+003177 : 0x55555555
01553       0,  // U+003178 - U+00317F : 0x55555555
01554       0,  // U+003180 - U+003187 : 0x55555555
01555      65,  // U+003188 - U+00318F : 0x05555555
01556      82,  // U+003190 - U+003197 : 0x77222277
01557      31,  // U+003198 - U+00319F : 0x77777777
01558       0,  // U+0031A0 - U+0031A7 : 0x55555555
01559       0,  // U+0031A8 - U+0031AF : 0x55555555
01560       0,  // U+0031B0 - U+0031B7 : 0x55555555
01561       3,  // U+0031B8 - U+0031BF : 0x00000000
01562      31,  // U+0031C0 - U+0031C7 : 0x77777777
01563      31,  // U+0031C8 - U+0031CF : 0x77777777
01564       3,  // U+0031D0 - U+0031D7 : 0x00000000
01565       3,  // U+0031D8 - U+0031DF : 0x00000000
01566       3,  // U+0031E0 - U+0031E7 : 0x00000000
01567       3,  // U+0031E8 - U+0031EF : 0x00000000
01568       0,  // U+0031F0 - U+0031F7 : 0x55555555
01569       0,  // U+0031F8 - U+0031FF : 0x55555555
01570      31,  // U+003200 - U+003207 : 0x77777777
01571      31,  // U+003208 - U+00320F : 0x77777777
01572      31,  // U+003210 - U+003217 : 0x77777777
01573      45,  // U+003218 - U+00321F : 0x07777777
01574      28,  // U+003220 - U+003227 : 0x22222222
01575      83,  // U+003228 - U+00322F : 0x77777722
01576      31,  // U+003230 - U+003237 : 0x77777777
01577      31,  // U+003238 - U+00323F : 0x77777777
01578      64,  // U+003240 - U+003247 : 0x00007777
01579       3,  // U+003248 - U+00324F : 0x00000000
01580      73,  // U+003250 - U+003257 : 0x22222227
01581      28,  // U+003258 - U+00325F : 0x22222222
01582      31,  // U+003260 - U+003267 : 0x77777777
01583      31,  // U+003268 - U+00326F : 0x77777777
01584      31,  // U+003270 - U+003277 : 0x77777777
01585      31,  // U+003278 - U+00327F : 0x77777777
01586      28,  // U+003280 - U+003287 : 0x22222222
01587      83,  // U+003288 - U+00328F : 0x77777722
01588      31,  // U+003290 - U+003297 : 0x77777777
01589      31,  // U+003298 - U+00329F : 0x77777777
01590      31,  // U+0032A0 - U+0032A7 : 0x77777777
01591      31,  // U+0032A8 - U+0032AF : 0x77777777
01592      73,  // U+0032B0 - U+0032B7 : 0x22222227
01593      28,  // U+0032B8 - U+0032BF : 0x22222222
01594      31,  // U+0032C0 - U+0032C7 : 0x77777777
01595      31,  // U+0032C8 - U+0032CF : 0x77777777
01596      31,  // U+0032D0 - U+0032D7 : 0x77777777
01597      31,  // U+0032D8 - U+0032DF : 0x77777777
01598      31,  // U+0032E0 - U+0032E7 : 0x77777777
01599      31,  // U+0032E8 - U+0032EF : 0x77777777
01600      31,  // U+0032F0 - U+0032F7 : 0x77777777
01601      45,  // U+0032F8 - U+0032FF : 0x07777777
01602      31,  // U+003300 - U+003307 : 0x77777777
01603      31,  // U+003308 - U+00330F : 0x77777777
01604      31,  // U+003310 - U+003317 : 0x77777777
01605      31,  // U+003318 - U+00331F : 0x77777777
01606      31,  // U+003320 - U+003327 : 0x77777777
01607      31,  // U+003328 - U+00332F : 0x77777777
01608      31,  // U+003330 - U+003337 : 0x77777777
01609      31,  // U+003338 - U+00333F : 0x77777777
01610      31,  // U+003340 - U+003347 : 0x77777777
01611      31,  // U+003348 - U+00334F : 0x77777777
01612      31,  // U+003350 - U+003357 : 0x77777777
01613      31,  // U+003358 - U+00335F : 0x77777777
01614      31,  // U+003360 - U+003367 : 0x77777777
01615      31,  // U+003368 - U+00336F : 0x77777777
01616      31,  // U+003370 - U+003377 : 0x77777777
01617      31,  // U+003378 - U+00337F : 0x77777777
01618      31,  // U+003380 - U+003387 : 0x77777777
01619      31,  // U+003388 - U+00338F : 0x77777777
01620      31,  // U+003390 - U+003397 : 0x77777777
01621      31,  // U+003398 - U+00339F : 0x77777777
01622      31,  // U+0033A0 - U+0033A7 : 0x77777777
01623      31,  // U+0033A8 - U+0033AF : 0x77777777
01624      31,  // U+0033B0 - U+0033B7 : 0x77777777
01625      31,  // U+0033B8 - U+0033BF : 0x77777777
01626      31,  // U+0033C0 - U+0033C7 : 0x77777777
01627      31,  // U+0033C8 - U+0033CF : 0x77777777
01628      31,  // U+0033D0 - U+0033D7 : 0x77777777
01629      31,  // U+0033D8 - U+0033DF : 0x77777777
01630      31,  // U+0033E0 - U+0033E7 : 0x77777777
01631      31,  // U+0033E8 - U+0033EF : 0x77777777
01632      31,  // U+0033F0 - U+0033F7 : 0x77777777
01633      31,  // U+0033F8 - U+0033FF : 0x77777777
01634 };
01635 
01636 static const PRUint8 gGenCatIdx4[8] = {
01637      31,  // U+004DC0 - U+004DC7 : 0x77777777
01638      31,  // U+004DC8 - U+004DCF : 0x77777777
01639      31,  // U+004DD0 - U+004DD7 : 0x77777777
01640      31,  // U+004DD8 - U+004DDF : 0x77777777
01641      31,  // U+004DE0 - U+004DE7 : 0x77777777
01642      31,  // U+004DE8 - U+004DEF : 0x77777777
01643      31,  // U+004DF0 - U+004DF7 : 0x77777777
01644      31,  // U+004DF8 - U+004DFF : 0x77777777
01645 };
01646 
01647 static const PRUint8 gGenCatIdx5[272] = {
01648       0,  // U+00A000 - U+00A007 : 0x55555555
01649       0,  // U+00A008 - U+00A00F : 0x55555555
01650       0,  // U+00A010 - U+00A017 : 0x55555555
01651       0,  // U+00A018 - U+00A01F : 0x55555555
01652       0,  // U+00A020 - U+00A027 : 0x55555555
01653       0,  // U+00A028 - U+00A02F : 0x55555555
01654       0,  // U+00A030 - U+00A037 : 0x55555555
01655       0,  // U+00A038 - U+00A03F : 0x55555555
01656       0,  // U+00A040 - U+00A047 : 0x55555555
01657       0,  // U+00A048 - U+00A04F : 0x55555555
01658       0,  // U+00A050 - U+00A057 : 0x55555555
01659       0,  // U+00A058 - U+00A05F : 0x55555555
01660       0,  // U+00A060 - U+00A067 : 0x55555555
01661       0,  // U+00A068 - U+00A06F : 0x55555555
01662       0,  // U+00A070 - U+00A077 : 0x55555555
01663       0,  // U+00A078 - U+00A07F : 0x55555555
01664       0,  // U+00A080 - U+00A087 : 0x55555555
01665       0,  // U+00A088 - U+00A08F : 0x55555555
01666       0,  // U+00A090 - U+00A097 : 0x55555555
01667       0,  // U+00A098 - U+00A09F : 0x55555555
01668       0,  // U+00A0A0 - U+00A0A7 : 0x55555555
01669       0,  // U+00A0A8 - U+00A0AF : 0x55555555
01670       0,  // U+00A0B0 - U+00A0B7 : 0x55555555
01671       0,  // U+00A0B8 - U+00A0BF : 0x55555555
01672       0,  // U+00A0C0 - U+00A0C7 : 0x55555555
01673       0,  // U+00A0C8 - U+00A0CF : 0x55555555
01674       0,  // U+00A0D0 - U+00A0D7 : 0x55555555
01675       0,  // U+00A0D8 - U+00A0DF : 0x55555555
01676       0,  // U+00A0E0 - U+00A0E7 : 0x55555555
01677       0,  // U+00A0E8 - U+00A0EF : 0x55555555
01678       0,  // U+00A0F0 - U+00A0F7 : 0x55555555
01679       0,  // U+00A0F8 - U+00A0FF : 0x55555555
01680       0,  // U+00A100 - U+00A107 : 0x55555555
01681       0,  // U+00A108 - U+00A10F : 0x55555555
01682       0,  // U+00A110 - U+00A117 : 0x55555555
01683       0,  // U+00A118 - U+00A11F : 0x55555555
01684       0,  // U+00A120 - U+00A127 : 0x55555555
01685       0,  // U+00A128 - U+00A12F : 0x55555555
01686       0,  // U+00A130 - U+00A137 : 0x55555555
01687       0,  // U+00A138 - U+00A13F : 0x55555555
01688       0,  // U+00A140 - U+00A147 : 0x55555555
01689       0,  // U+00A148 - U+00A14F : 0x55555555
01690       0,  // U+00A150 - U+00A157 : 0x55555555
01691       0,  // U+00A158 - U+00A15F : 0x55555555
01692       0,  // U+00A160 - U+00A167 : 0x55555555
01693       0,  // U+00A168 - U+00A16F : 0x55555555
01694       0,  // U+00A170 - U+00A177 : 0x55555555
01695       0,  // U+00A178 - U+00A17F : 0x55555555
01696       0,  // U+00A180 - U+00A187 : 0x55555555
01697       0,  // U+00A188 - U+00A18F : 0x55555555
01698       0,  // U+00A190 - U+00A197 : 0x55555555
01699       0,  // U+00A198 - U+00A19F : 0x55555555
01700       0,  // U+00A1A0 - U+00A1A7 : 0x55555555
01701       0,  // U+00A1A8 - U+00A1AF : 0x55555555
01702       0,  // U+00A1B0 - U+00A1B7 : 0x55555555
01703       0,  // U+00A1B8 - U+00A1BF : 0x55555555
01704       0,  // U+00A1C0 - U+00A1C7 : 0x55555555
01705       0,  // U+00A1C8 - U+00A1CF : 0x55555555
01706       0,  // U+00A1D0 - U+00A1D7 : 0x55555555
01707       0,  // U+00A1D8 - U+00A1DF : 0x55555555
01708       0,  // U+00A1E0 - U+00A1E7 : 0x55555555
01709       0,  // U+00A1E8 - U+00A1EF : 0x55555555
01710       0,  // U+00A1F0 - U+00A1F7 : 0x55555555
01711       0,  // U+00A1F8 - U+00A1FF : 0x55555555
01712       0,  // U+00A200 - U+00A207 : 0x55555555
01713       0,  // U+00A208 - U+00A20F : 0x55555555
01714       0,  // U+00A210 - U+00A217 : 0x55555555
01715       0,  // U+00A218 - U+00A21F : 0x55555555
01716       0,  // U+00A220 - U+00A227 : 0x55555555
01717       0,  // U+00A228 - U+00A22F : 0x55555555
01718       0,  // U+00A230 - U+00A237 : 0x55555555
01719       0,  // U+00A238 - U+00A23F : 0x55555555
01720       0,  // U+00A240 - U+00A247 : 0x55555555
01721       0,  // U+00A248 - U+00A24F : 0x55555555
01722       0,  // U+00A250 - U+00A257 : 0x55555555
01723       0,  // U+00A258 - U+00A25F : 0x55555555
01724       0,  // U+00A260 - U+00A267 : 0x55555555
01725       0,  // U+00A268 - U+00A26F : 0x55555555
01726       0,  // U+00A270 - U+00A277 : 0x55555555
01727       0,  // U+00A278 - U+00A27F : 0x55555555
01728       0,  // U+00A280 - U+00A287 : 0x55555555
01729       0,  // U+00A288 - U+00A28F : 0x55555555
01730       0,  // U+00A290 - U+00A297 : 0x55555555
01731       0,  // U+00A298 - U+00A29F : 0x55555555
01732       0,  // U+00A2A0 - U+00A2A7 : 0x55555555
01733       0,  // U+00A2A8 - U+00A2AF : 0x55555555
01734       0,  // U+00A2B0 - U+00A2B7 : 0x55555555
01735       0,  // U+00A2B8 - U+00A2BF : 0x55555555
01736       0,  // U+00A2C0 - U+00A2C7 : 0x55555555
01737       0,  // U+00A2C8 - U+00A2CF : 0x55555555
01738       0,  // U+00A2D0 - U+00A2D7 : 0x55555555
01739       0,  // U+00A2D8 - U+00A2DF : 0x55555555
01740       0,  // U+00A2E0 - U+00A2E7 : 0x55555555
01741       0,  // U+00A2E8 - U+00A2EF : 0x55555555
01742       0,  // U+00A2F0 - U+00A2F7 : 0x55555555
01743       0,  // U+00A2F8 - U+00A2FF : 0x55555555
01744       0,  // U+00A300 - U+00A307 : 0x55555555
01745       0,  // U+00A308 - U+00A30F : 0x55555555
01746       0,  // U+00A310 - U+00A317 : 0x55555555
01747       0,  // U+00A318 - U+00A31F : 0x55555555
01748       0,  // U+00A320 - U+00A327 : 0x55555555
01749       0,  // U+00A328 - U+00A32F : 0x55555555
01750       0,  // U+00A330 - U+00A337 : 0x55555555
01751       0,  // U+00A338 - U+00A33F : 0x55555555
01752       0,  // U+00A340 - U+00A347 : 0x55555555
01753       0,  // U+00A348 - U+00A34F : 0x55555555
01754       0,  // U+00A350 - U+00A357 : 0x55555555
01755       0,  // U+00A358 - U+00A35F : 0x55555555
01756       0,  // U+00A360 - U+00A367 : 0x55555555
01757       0,  // U+00A368 - U+00A36F : 0x55555555
01758       0,  // U+00A370 - U+00A377 : 0x55555555
01759       0,  // U+00A378 - U+00A37F : 0x55555555
01760       0,  // U+00A380 - U+00A387 : 0x55555555
01761       0,  // U+00A388 - U+00A38F : 0x55555555
01762       0,  // U+00A390 - U+00A397 : 0x55555555
01763       0,  // U+00A398 - U+00A39F : 0x55555555
01764       0,  // U+00A3A0 - U+00A3A7 : 0x55555555
01765       0,  // U+00A3A8 - U+00A3AF : 0x55555555
01766       0,  // U+00A3B0 - U+00A3B7 : 0x55555555
01767       0,  // U+00A3B8 - U+00A3BF : 0x55555555
01768       0,  // U+00A3C0 - U+00A3C7 : 0x55555555
01769       0,  // U+00A3C8 - U+00A3CF : 0x55555555
01770       0,  // U+00A3D0 - U+00A3D7 : 0x55555555
01771       0,  // U+00A3D8 - U+00A3DF : 0x55555555
01772       0,  // U+00A3E0 - U+00A3E7 : 0x55555555
01773       0,  // U+00A3E8 - U+00A3EF : 0x55555555
01774       0,  // U+00A3F0 - U+00A3F7 : 0x55555555
01775       0,  // U+00A3F8 - U+00A3FF : 0x55555555
01776       0,  // U+00A400 - U+00A407 : 0x55555555
01777       0,  // U+00A408 - U+00A40F : 0x55555555
01778       0,  // U+00A410 - U+00A417 : 0x55555555
01779       0,  // U+00A418 - U+00A41F : 0x55555555
01780       0,  // U+00A420 - U+00A427 : 0x55555555
01781       0,  // U+00A428 - U+00A42F : 0x55555555
01782       0,  // U+00A430 - U+00A437 : 0x55555555
01783       0,  // U+00A438 - U+00A43F : 0x55555555
01784       0,  // U+00A440 - U+00A447 : 0x55555555
01785       0,  // U+00A448 - U+00A44F : 0x55555555
01786       0,  // U+00A450 - U+00A457 : 0x55555555
01787       0,  // U+00A458 - U+00A45F : 0x55555555
01788       0,  // U+00A460 - U+00A467 : 0x55555555
01789       0,  // U+00A468 - U+00A46F : 0x55555555
01790       0,  // U+00A470 - U+00A477 : 0x55555555
01791       0,  // U+00A478 - U+00A47F : 0x55555555
01792       0,  // U+00A480 - U+00A487 : 0x55555555
01793      30,  // U+00A488 - U+00A48F : 0x00055555
01794      31,  // U+00A490 - U+00A497 : 0x77777777
01795      31,  // U+00A498 - U+00A49F : 0x77777777
01796      31,  // U+00A4A0 - U+00A4A7 : 0x77777777
01797      31,  // U+00A4A8 - U+00A4AF : 0x77777777
01798      31,  // U+00A4B0 - U+00A4B7 : 0x77777777
01799      31,  // U+00A4B8 - U+00A4BF : 0x77777777
01800      45,  // U+00A4C0 - U+00A4C7 : 0x07777777
01801       3,  // U+00A4C8 - U+00A4CF : 0x00000000
01802       3,  // U+00A4D0 - U+00A4D7 : 0x00000000
01803       3,  // U+00A4D8 - U+00A4DF : 0x00000000
01804       3,  // U+00A4E0 - U+00A4E7 : 0x00000000
01805       3,  // U+00A4E8 - U+00A4EF : 0x00000000
01806       3,  // U+00A4F0 - U+00A4F7 : 0x00000000
01807       3,  // U+00A4F8 - U+00A4FF : 0x00000000
01808       3,  // U+00A500 - U+00A507 : 0x00000000
01809       3,  // U+00A508 - U+00A50F : 0x00000000
01810       3,  // U+00A510 - U+00A517 : 0x00000000
01811       3,  // U+00A518 - U+00A51F : 0x00000000
01812       3,  // U+00A520 - U+00A527 : 0x00000000
01813       3,  // U+00A528 - U+00A52F : 0x00000000
01814       3,  // U+00A530 - U+00A537 : 0x00000000
01815       3,  // U+00A538 - U+00A53F : 0x00000000
01816       3,  // U+00A540 - U+00A547 : 0x00000000
01817       3,  // U+00A548 - U+00A54F : 0x00000000
01818       3,  // U+00A550 - U+00A557 : 0x00000000
01819       3,  // U+00A558 - U+00A55F : 0x00000000
01820       3,  // U+00A560 - U+00A567 : 0x00000000
01821       3,  // U+00A568 - U+00A56F : 0x00000000
01822       3,  // U+00A570 - U+00A577 : 0x00000000
01823       3,  // U+00A578 - U+00A57F : 0x00000000
01824       3,  // U+00A580 - U+00A587 : 0x00000000
01825       3,  // U+00A588 - U+00A58F : 0x00000000
01826       3,  // U+00A590 - U+00A597 : 0x00000000
01827       3,  // U+00A598 - U+00A59F : 0x00000000
01828       3,  // U+00A5A0 - U+00A5A7 : 0x00000000
01829       3,  // U+00A5A8 - U+00A5AF : 0x00000000
01830       3,  // U+00A5B0 - U+00A5B7 : 0x00000000
01831       3,  // U+00A5B8 - U+00A5BF : 0x00000000
01832       3,  // U+00A5C0 - U+00A5C7 : 0x00000000
01833       3,  // U+00A5C8 - U+00A5CF : 0x00000000
01834       3,  // U+00A5D0 - U+00A5D7 : 0x00000000
01835       3,  // U+00A5D8 - U+00A5DF : 0x00000000
01836       3,  // U+00A5E0 - U+00A5E7 : 0x00000000
01837       3,  // U+00A5E8 - U+00A5EF : 0x00000000
01838       3,  // U+00A5F0 - U+00A5F7 : 0x00000000
01839       3,  // U+00A5F8 - U+00A5FF : 0x00000000
01840       3,  // U+00A600 - U+00A607 : 0x00000000
01841       3,  // U+00A608 - U+00A60F : 0x00000000
01842       3,  // U+00A610 - U+00A617 : 0x00000000
01843       3,  // U+00A618 - U+00A61F : 0x00000000
01844       3,  // U+00A620 - U+00A627 : 0x00000000
01845       3,  // U+00A628 - U+00A62F : 0x00000000
01846       3,  // U+00A630 - U+00A637 : 0x00000000
01847       3,  // U+00A638 - U+00A63F : 0x00000000
01848       3,  // U+00A640 - U+00A647 : 0x00000000
01849       3,  // U+00A648 - U+00A64F : 0x00000000
01850       3,  // U+00A650 - U+00A657 : 0x00000000
01851       3,  // U+00A658 - U+00A65F : 0x00000000
01852       3,  // U+00A660 - U+00A667 : 0x00000000
01853       3,  // U+00A668 - U+00A66F : 0x00000000
01854       3,  // U+00A670 - U+00A677 : 0x00000000
01855       3,  // U+00A678 - U+00A67F : 0x00000000
01856       3,  // U+00A680 - U+00A687 : 0x00000000
01857       3,  // U+00A688 - U+00A68F : 0x00000000
01858       3,  // U+00A690 - U+00A697 : 0x00000000
01859       3,  // U+00A698 - U+00A69F : 0x00000000
01860       3,  // U+00A6A0 - U+00A6A7 : 0x00000000
01861       3,  // U+00A6A8 - U+00A6AF : 0x00000000
01862       3,  // U+00A6B0 - U+00A6B7 : 0x00000000
01863       3,  // U+00A6B8 - U+00A6BF : 0x00000000
01864       3,  // U+00A6C0 - U+00A6C7 : 0x00000000
01865       3,  // U+00A6C8 - U+00A6CF : 0x00000000
01866       3,  // U+00A6D0 - U+00A6D7 : 0x00000000
01867       3,  // U+00A6D8 - U+00A6DF : 0x00000000
01868       3,  // U+00A6E0 - U+00A6E7 : 0x00000000
01869       3,  // U+00A6E8 - U+00A6EF : 0x00000000
01870       3,  // U+00A6F0 - U+00A6F7 : 0x00000000
01871       3,  // U+00A6F8 - U+00A6FF : 0x00000000
01872      31,  // U+00A700 - U+00A707 : 0x77777777
01873      31,  // U+00A708 - U+00A70F : 0x77777777
01874      84,  // U+00A710 - U+00A717 : 0x57777777
01875      85,  // U+00A718 - U+00A71F : 0x00000555
01876      86,  // U+00A720 - U+00A727 : 0x00000077
01877       3,  // U+00A728 - U+00A72F : 0x00000000
01878       3,  // U+00A730 - U+00A737 : 0x00000000
01879       3,  // U+00A738 - U+00A73F : 0x00000000
01880       3,  // U+00A740 - U+00A747 : 0x00000000
01881       3,  // U+00A748 - U+00A74F : 0x00000000
01882       3,  // U+00A750 - U+00A757 : 0x00000000
01883       3,  // U+00A758 - U+00A75F : 0x00000000
01884       3,  // U+00A760 - U+00A767 : 0x00000000
01885       3,  // U+00A768 - U+00A76F : 0x00000000
01886       3,  // U+00A770 - U+00A777 : 0x00000000
01887       3,  // U+00A778 - U+00A77F : 0x00000000
01888       3,  // U+00A780 - U+00A787 : 0x00000000
01889       3,  // U+00A788 - U+00A78F : 0x00000000
01890       3,  // U+00A790 - U+00A797 : 0x00000000
01891       3,  // U+00A798 - U+00A79F : 0x00000000
01892       3,  // U+00A7A0 - U+00A7A7 : 0x00000000
01893       3,  // U+00A7A8 - U+00A7AF : 0x00000000
01894       3,  // U+00A7B0 - U+00A7B7 : 0x00000000
01895       3,  // U+00A7B8 - U+00A7BF : 0x00000000
01896       3,  // U+00A7C0 - U+00A7C7 : 0x00000000
01897       3,  // U+00A7C8 - U+00A7CF : 0x00000000
01898       3,  // U+00A7D0 - U+00A7D7 : 0x00000000
01899       3,  // U+00A7D8 - U+00A7DF : 0x00000000
01900       3,  // U+00A7E0 - U+00A7E7 : 0x00000000
01901       3,  // U+00A7E8 - U+00A7EF : 0x00000000
01902       3,  // U+00A7F0 - U+00A7F7 : 0x00000000
01903       3,  // U+00A7F8 - U+00A7FF : 0x00000000
01904      87,  // U+00A800 - U+00A807 : 0x51555155
01905      88,  // U+00A808 - U+00A80F : 0x55551555
01906       0,  // U+00A810 - U+00A817 : 0x55555555
01907       0,  // U+00A818 - U+00A81F : 0x55555555
01908      89,  // U+00A820 - U+00A827 : 0x11111555
01909      64,  // U+00A828 - U+00A82F : 0x00007777
01910       3,  // U+00A830 - U+00A837 : 0x00000000
01911       3,  // U+00A838 - U+00A83F : 0x00000000
01912       0,  // U+00A840 - U+00A847 : 0x55555555
01913       0,  // U+00A848 - U+00A84F : 0x55555555
01914       0,  // U+00A850 - U+00A857 : 0x55555555
01915       0,  // U+00A858 - U+00A85F : 0x55555555
01916       0,  // U+00A860 - U+00A867 : 0x55555555
01917       0,  // U+00A868 - U+00A86F : 0x55555555
01918      90,  // U+00A870 - U+00A877 : 0x66665555
01919       3,  // U+00A878 - U+00A87F : 0x00000000
01920 };
01921 
01922 static const PRUint8 gGenCatIdx6[160] = {
01923      65,  // U+00FB00 - U+00FB07 : 0x05555555
01924       3,  // U+00FB08 - U+00FB0F : 0x00000000
01925      91,  // U+00FB10 - U+00FB17 : 0x55555000
01926      92,  // U+00FB18 - U+00FB1F : 0x51500000
01927       0,  // U+00FB20 - U+00FB27 : 0x55555555
01928      93,  // U+00FB28 - U+00FB2F : 0x55555575
01929      65,  // U+00FB30 - U+00FB37 : 0x05555555
01930      94,  // U+00FB38 - U+00FB3F : 0x05055555
01931      95,  // U+00FB40 - U+00FB47 : 0x55055055
01932       0,  // U+00FB48 - U+00FB4F : 0x55555555
01933       0,  // U+00FB50 - U+00FB57 : 0x55555555
01934       0,  // U+00FB58 - U+00FB5F : 0x55555555
01935       0,  // U+00FB60 - U+00FB67 : 0x55555555
01936       0,  // U+00FB68 - U+00FB6F : 0x55555555
01937       0,  // U+00FB70 - U+00FB77 : 0x55555555
01938       0,  // U+00FB78 - U+00FB7F : 0x55555555
01939       0,  // U+00FB80 - U+00FB87 : 0x55555555
01940       0,  // U+00FB88 - U+00FB8F : 0x55555555
01941       0,  // U+00FB90 - U+00FB97 : 0x55555555
01942       0,  // U+00FB98 - U+00FB9F : 0x55555555
01943       0,  // U+00FBA0 - U+00FBA7 : 0x55555555
01944       0,  // U+00FBA8 - U+00FBAF : 0x55555555
01945       6,  // U+00FBB0 - U+00FBB7 : 0x00000055
01946       3,  // U+00FBB8 - U+00FBBF : 0x00000000
01947       3,  // U+00FBC0 - U+00FBC7 : 0x00000000
01948       3,  // U+00FBC8 - U+00FBCF : 0x00000000
01949      91,  // U+00FBD0 - U+00FBD7 : 0x55555000
01950       0,  // U+00FBD8 - U+00FBDF : 0x55555555
01951       0,  // U+00FBE0 - U+00FBE7 : 0x55555555
01952       0,  // U+00FBE8 - U+00FBEF : 0x55555555
01953       0,  // U+00FBF0 - U+00FBF7 : 0x55555555
01954       0,  // U+00FBF8 - U+00FBFF : 0x55555555
01955       0,  // U+00FC00 - U+00FC07 : 0x55555555
01956       0,  // U+00FC08 - U+00FC0F : 0x55555555
01957       0,  // U+00FC10 - U+00FC17 : 0x55555555
01958       0,  // U+00FC18 - U+00FC1F : 0x55555555
01959       0,  // U+00FC20 - U+00FC27 : 0x55555555
01960       0,  // U+00FC28 - U+00FC2F : 0x55555555
01961       0,  // U+00FC30 - U+00FC37 : 0x55555555
01962       0,  // U+00FC38 - U+00FC3F : 0x55555555
01963       0,  // U+00FC40 - U+00FC47 : 0x55555555
01964       0,  // U+00FC48 - U+00FC4F : 0x55555555
01965       0,  // U+00FC50 - U+00FC57 : 0x55555555
01966       0,  // U+00FC58 - U+00FC5F : 0x55555555
01967       0,  // U+00FC60 - U+00FC67 : 0x55555555
01968       0,  // U+00FC68 - U+00FC6F : 0x55555555
01969       0,  // U+00FC70 - U+00FC77 : 0x55555555
01970       0,  // U+00FC78 - U+00FC7F : 0x55555555
01971       0,  // U+00FC80 - U+00FC87 : 0x55555555
01972       0,  // U+00FC88 - U+00FC8F : 0x55555555
01973       0,  // U+00FC90 - U+00FC97 : 0x55555555
01974       0,  // U+00FC98 - U+00FC9F : 0x55555555
01975       0,  // U+00FCA0 - U+00FCA7 : 0x55555555
01976       0,  // U+00FCA8 - U+00FCAF : 0x55555555
01977       0,  // U+00FCB0 - U+00FCB7 : 0x55555555
01978       0,  // U+00FCB8 - U+00FCBF : 0x55555555
01979       0,  // U+00FCC0 - U+00FCC7 : 0x55555555
01980       0,  // U+00FCC8 - U+00FCCF : 0x55555555
01981       0,  // U+00FCD0 - U+00FCD7 : 0x55555555
01982       0,  // U+00FCD8 - U+00FCDF : 0x55555555
01983       0,  // U+00FCE0 - U+00FCE7 : 0x55555555
01984       0,  // U+00FCE8 - U+00FCEF : 0x55555555
01985       0,  // U+00FCF0 - U+00FCF7 : 0x55555555
01986       0,  // U+00FCF8 - U+00FCFF : 0x55555555
01987       0,  // U+00FD00 - U+00FD07 : 0x55555555
01988       0,  // U+00FD08 - U+00FD0F : 0x55555555
01989       0,  // U+00FD10 - U+00FD17 : 0x55555555
01990       0,  // U+00FD18 - U+00FD1F : 0x55555555
01991       0,  // U+00FD20 - U+00FD27 : 0x55555555
01992       0,  // U+00FD28 - U+00FD2F : 0x55555555
01993       0,  // U+00FD30 - U+00FD37 : 0x55555555
01994      96,  // U+00FD38 - U+00FD3F : 0x66555555
01995       3,  // U+00FD40 - U+00FD47 : 0x00000000
01996       3,  // U+00FD48 - U+00FD4F : 0x00000000
01997       0,  // U+00FD50 - U+00FD57 : 0x55555555
01998       0,  // U+00FD58 - U+00FD5F : 0x55555555
01999       0,  // U+00FD60 - U+00FD67 : 0x55555555
02000       0,  // U+00FD68 - U+00FD6F : 0x55555555
02001       0,  // U+00FD70 - U+00FD77 : 0x55555555
02002       0,  // U+00FD78 - U+00FD7F : 0x55555555
02003       0,  // U+00FD80 - U+00FD87 : 0x55555555
02004       0,  // U+00FD88 - U+00FD8F : 0x55555555
02005      97,  // U+00FD90 - U+00FD97 : 0x55555500
02006       0,  // U+00FD98 - U+00FD9F : 0x55555555
02007       0,  // U+00FDA0 - U+00FDA7 : 0x55555555
02008       0,  // U+00FDA8 - U+00FDAF : 0x55555555
02009       0,  // U+00FDB0 - U+00FDB7 : 0x55555555
02010       0,  // U+00FDB8 - U+00FDBF : 0x55555555
02011       0,  // U+00FDC0 - U+00FDC7 : 0x55555555
02012       3,  // U+00FDC8 - U+00FDCF : 0x00000000
02013       3,  // U+00FDD0 - U+00FDD7 : 0x00000000
02014       3,  // U+00FDD8 - U+00FDDF : 0x00000000
02015       3,  // U+00FDE0 - U+00FDE7 : 0x00000000
02016       3,  // U+00FDE8 - U+00FDEF : 0x00000000
02017       0,  // U+00FDF0 - U+00FDF7 : 0x55555555
02018      98,  // U+00FDF8 - U+00FDFF : 0x00775555
02019       1,  // U+00FE00 - U+00FE07 : 0x11111111
02020       1,  // U+00FE08 - U+00FE0F : 0x11111111
02021      19,  // U+00FE10 - U+00FE17 : 0x66666666
02022      99,  // U+00FE18 - U+00FE1F : 0x00000066
02023     100,  // U+00FE20 - U+00FE27 : 0x00001111
02024       3,  // U+00FE28 - U+00FE2F : 0x00000000
02025      19,  // U+00FE30 - U+00FE37 : 0x66666666
02026      19,  // U+00FE38 - U+00FE3F : 0x66666666
02027      19,  // U+00FE40 - U+00FE47 : 0x66666666
02028      19,  // U+00FE48 - U+00FE4F : 0x66666666
02029     101,  // U+00FE50 - U+00FE57 : 0x66660666
02030      19,  // U+00FE58 - U+00FE5F : 0x66666666
02031     102,  // U+00FE60 - U+00FE67 : 0x07776766
02032     103,  // U+00FE68 - U+00FE6F : 0x00006676
02033       9,  // U+00FE70 - U+00FE77 : 0x55055555
02034       0,  // U+00FE78 - U+00FE7F : 0x55555555
02035       0,  // U+00FE80 - U+00FE87 : 0x55555555
02036       0,  // U+00FE88 - U+00FE8F : 0x55555555
02037       0,  // U+00FE90 - U+00FE97 : 0x55555555
02038       0,  // U+00FE98 - U+00FE9F : 0x55555555
02039       0,  // U+00FEA0 - U+00FEA7 : 0x55555555
02040       0,  // U+00FEA8 - U+00FEAF : 0x55555555
02041       0,  // U+00FEB0 - U+00FEB7 : 0x55555555
02042       0,  // U+00FEB8 - U+00FEBF : 0x55555555
02043       0,  // U+00FEC0 - U+00FEC7 : 0x55555555
02044       0,  // U+00FEC8 - U+00FECF : 0x55555555
02045       0,  // U+00FED0 - U+00FED7 : 0x55555555
02046       0,  // U+00FED8 - U+00FEDF : 0x55555555
02047       0,  // U+00FEE0 - U+00FEE7 : 0x55555555
02048       0,  // U+00FEE8 - U+00FEEF : 0x55555555
02049       0,  // U+00FEF0 - U+00FEF7 : 0x55555555
02050     104,  // U+00FEF8 - U+00FEFF : 0x40055555
02051     105,  // U+00FF00 - U+00FF07 : 0x66676660
02052     106,  // U+00FF08 - U+00FF0F : 0x66667666
02053      28,  // U+00FF10 - U+00FF17 : 0x22222222
02054     107,  // U+00FF18 - U+00FF1F : 0x67776622
02055      79,  // U+00FF20 - U+00FF27 : 0x55555556
02056       0,  // U+00FF28 - U+00FF2F : 0x55555555
02057       0,  // U+00FF30 - U+00FF37 : 0x55555555
02058     108,  // U+00FF38 - U+00FF3F : 0x67666555
02059     109,  // U+00FF40 - U+00FF47 : 0x55555557
02060       0,  // U+00FF48 - U+00FF4F : 0x55555555
02061       0,  // U+00FF50 - U+00FF57 : 0x55555555
02062     110,  // U+00FF58 - U+00FF5F : 0x67676555
02063     111,  // U+00FF60 - U+00FF67 : 0x55666666
02064       0,  // U+00FF68 - U+00FF6F : 0x55555555
02065       0,  // U+00FF70 - U+00FF77 : 0x55555555
02066       0,  // U+00FF78 - U+00FF7F : 0x55555555
02067       0,  // U+00FF80 - U+00FF87 : 0x55555555
02068       0,  // U+00FF88 - U+00FF8F : 0x55555555
02069       0,  // U+00FF90 - U+00FF97 : 0x55555555
02070       0,  // U+00FF98 - U+00FF9F : 0x55555555
02071       0,  // U+00FFA0 - U+00FFA7 : 0x55555555
02072       0,  // U+00FFA8 - U+00FFAF : 0x55555555
02073       0,  // U+00FFB0 - U+00FFB7 : 0x55555555
02074      65,  // U+00FFB8 - U+00FFBF : 0x05555555
02075      97,  // U+00FFC0 - U+00FFC7 : 0x55555500
02076      97,  // U+00FFC8 - U+00FFCF : 0x55555500
02077      97,  // U+00FFD0 - U+00FFD7 : 0x55555500
02078     112,  // U+00FFD8 - U+00FFDF : 0x00055500
02079      45,  // U+00FFE0 - U+00FFE7 : 0x07777777
02080      45,  // U+00FFE8 - U+00FFEF : 0x07777777
02081       3,  // U+00FFF0 - U+00FFF7 : 0x00000000
02082     113,  // U+00FFF8 - U+00FFFF : 0x00774440
02083 };
02084 
02085 static const PRUint8 gGenCatIdx7[150] = {
02086       0,  // U+010000 - U+010007 : 0x55555555
02087     114,  // U+010008 - U+01000F : 0x55505555
02088       0,  // U+010010 - U+010017 : 0x55555555
02089       0,  // U+010018 - U+01001F : 0x55555555
02090      65,  // U+010020 - U+010027 : 0x05555555
02091       0,  // U+010028 - U+01002F : 0x55555555
02092       0,  // U+010030 - U+010037 : 0x55555555
02093     115,  // U+010038 - U+01003F : 0x50550555
02094       0,  // U+010040 - U+010047 : 0x55555555
02095       7,  // U+010048 - U+01004F : 0x00555555
02096       0,  // U+010050 - U+010057 : 0x55555555
02097       7,  // U+010058 - U+01005F : 0x00555555
02098       3,  // U+010060 - U+010067 : 0x00000000
02099       3,  // U+010068 - U+01006F : 0x00000000
02100       3,  // U+010070 - U+010077 : 0x00000000
02101       3,  // U+010078 - U+01007F : 0x00000000
02102       0,  // U+010080 - U+010087 : 0x55555555
02103       0,  // U+010088 - U+01008F : 0x55555555
02104       0,  // U+010090 - U+010097 : 0x55555555
02105       0,  // U+010098 - U+01009F : 0x55555555
02106       0,  // U+0100A0 - U+0100A7 : 0x55555555
02107       0,  // U+0100A8 - U+0100AF : 0x55555555
02108       0,  // U+0100B0 - U+0100B7 : 0x55555555
02109       0,  // U+0100B8 - U+0100BF : 0x55555555
02110       0,  // U+0100C0 - U+0100C7 : 0x55555555
02111       0,  // U+0100C8 - U+0100CF : 0x55555555
02112       0,  // U+0100D0 - U+0100D7 : 0x55555555
02113       0,  // U+0100D8 - U+0100DF : 0x55555555
02114       0,  // U+0100E0 - U+0100E7 : 0x55555555
02115       0,  // U+0100E8 - U+0100EF : 0x55555555
02116       0,  // U+0100F0 - U+0100F7 : 0x55555555
02117      85,  // U+0100F8 - U+0100FF : 0x00000555
02118     116,  // U+010100 - U+010107 : 0x20000766
02119      28,  // U+010108 - U+01010F : 0x22222222
02120      28,  // U+010110 - U+010117 : 0x22222222
02121      28,  // U+010118 - U+01011F : 0x22222222
02122      28,  // U+010120 - U+010127 : 0x22222222
02123      28,  // U+010128 - U+01012F : 0x22222222
02124     117,  // U+010130 - U+010137 : 0x70002222
02125      31,  // U+010138 - U+01013F : 0x77777777
02126      28,  // U+010140 - U+010147 : 0x22222222
02127      28,  // U+010148 - U+01014F : 0x22222222
02128      28,  // U+010150 - U+010157 : 0x22222222
02129      28,  // U+010158 - U+01015F : 0x22222222
02130      28,  // U+010160 - U+010167 : 0x22222222
02131      28,  // U+010168 - U+01016F : 0x22222222
02132      28,  // U+010170 - U+010177 : 0x22222222
02133     118,  // U+010178 - U+01017F : 0x77777772
02134      31,  // U+010180 - U+010187 : 0x77777777
02135     119,  // U+010188 - U+01018F : 0x00000277
02136       3,  // U+010190 - U+010197 : 0x00000000
02137       3,  // U+010198 - U+01019F : 0x00000000
02138       3,  // U+0101A0 - U+0101A7 : 0x00000000
02139       3,  // U+0101A8 - U+0101AF : 0x00000000
02140       3,  // U+0101B0 - U+0101B7 : 0x00000000
02141       3,  // U+0101B8 - U+0101BF : 0x00000000
02142       3,  // U+0101C0 - U+0101C7 : 0x00000000
02143       3,  // U+0101C8 - U+0101CF : 0x00000000
02144       3,  // U+0101D0 - U+0101D7 : 0x00000000
02145       3,  // U+0101D8 - U+0101DF : 0x00000000
02146       3,  // U+0101E0 - U+0101E7 : 0x00000000
02147       3,  // U+0101E8 - U+0101EF : 0x00000000
02148       3,  // U+0101F0 - U+0101F7 : 0x00000000
02149       3,  // U+0101F8 - U+0101FF : 0x00000000
02150       3,  // U+010200 - U+010207 : 0x00000000
02151       3,  // U+010208 - U+01020F : 0x00000000
02152       3,  // U+010210 - U+010217 : 0x00000000
02153       3,  // U+010218 - U+01021F : 0x00000000
02154       3,  // U+010220 - U+010227 : 0x00000000
02155       3,  // U+010228 - U+01022F : 0x00000000
02156       3,  // U+010230 - U+010237 : 0x00000000
02157       3,  // U+010238 - U+01023F : 0x00000000
02158       3,  // U+010240 - U+010247 : 0x00000000
02159       3,  // U+010248 - U+01024F : 0x00000000
02160       3,  // U+010250 - U+010257 : 0x00000000
02161       3,  // U+010258 - U+01025F : 0x00000000
02162       3,  // U+010260 - U+010267 : 0x00000000
02163       3,  // U+010268 - U+01026F : 0x00000000
02164       3,  // U+010270 - U+010277 : 0x00000000
02165       3,  // U+010278 - U+01027F : 0x00000000
02166       3,  // U+010280 - U+010287 : 0x00000000
02167       3,  // U+010288 - U+01028F : 0x00000000
02168       3,  // U+010290 - U+010297 : 0x00000000
02169       3,  // U+010298 - U+01029F : 0x00000000
02170       3,  // U+0102A0 - U+0102A7 : 0x00000000
02171       3,  // U+0102A8 - U+0102AF : 0x00000000
02172       3,  // U+0102B0 - U+0102B7 : 0x00000000
02173       3,  // U+0102B8 - U+0102BF : 0x00000000
02174       3,  // U+0102C0 - U+0102C7 : 0x00000000
02175       3,  // U+0102C8 - U+0102CF : 0x00000000
02176       3,  // U+0102D0 - U+0102D7 : 0x00000000
02177       3,  // U+0102D8 - U+0102DF : 0x00000000
02178       3,  // U+0102E0 - U+0102E7 : 0x00000000
02179       3,  // U+0102E8 - U+0102EF : 0x00000000
02180       3,  // U+0102F0 - U+0102F7 : 0x00000000
02181       3,  // U+0102F8 - U+0102FF : 0x00000000
02182       0,  // U+010300 - U+010307 : 0x55555555
02183       0,  // U+010308 - U+01030F : 0x55555555
02184       0,  // U+010310 - U+010317 : 0x55555555
02185      65,  // U+010318 - U+01031F : 0x05555555
02186     120,  // U+010320 - U+010327 : 0x00002222
02187       3,  // U+010328 - U+01032F : 0x00000000
02188       0,  // U+010330 - U+010337 : 0x55555555
02189       0,  // U+010338 - U+01033F : 0x55555555
02190     121,  // U+010340 - U+010347 : 0x55555525
02191     122,  // U+010348 - U+01034F : 0x00000255
02192       3,  // U+010350 - U+010357 : 0x00000000
02193       3,  // U+010358 - U+01035F : 0x00000000
02194       3,  // U+010360 - U+010367 : 0x00000000
02195       3,  // U+010368 - U+01036F : 0x00000000
02196       3,  // U+010370 - U+010377 : 0x00000000
02197       3,  // U+010378 - U+01037F : 0x00000000
02198       0,  // U+010380 - U+010387 : 0x55555555
02199       0,  // U+010388 - U+01038F : 0x55555555
02200       0,  // U+010390 - U+010397 : 0x55555555
02201     123,  // U+010398 - U+01039F : 0x60555555
02202       0,  // U+0103A0 - U+0103A7 : 0x55555555
02203       0,  // U+0103A8 - U+0103AF : 0x55555555
02204       0,  // U+0103B0 - U+0103B7 : 0x55555555
02205       0,  // U+0103B8 - U+0103BF : 0x55555555
02206       5,  // U+0103C0 - U+0103C7 : 0x00005555
02207       0,  // U+0103C8 - U+0103CF : 0x55555555
02208     124,  // U+0103D0 - U+0103D7 : 0x00222226
02209       3,  // U+0103D8 - U+0103DF : 0x00000000
02210       3,  // U+0103E0 - U+0103E7 : 0x00000000
02211       3,  // U+0103E8 - U+0103EF : 0x00000000
02212       3,  // U+0103F0 - U+0103F7 : 0x00000000
02213       3,  // U+0103F8 - U+0103FF : 0x00000000
02214       0,  // U+010400 - U+010407 : 0x55555555
02215       0,  // U+010408 - U+01040F : 0x55555555
02216       0,  // U+010410 - U+010417 : 0x55555555
02217       0,  // U+010418 - U+01041F : 0x55555555
02218       0,  // U+010420 - U+010427 : 0x55555555
02219       0,  // U+010428 - U+01042F : 0x55555555
02220       0,  // U+010430 - U+010437 : 0x55555555
02221       0,  // U+010438 - U+01043F : 0x55555555
02222       0,  // U+010440 - U+010447 : 0x55555555
02223       0,  // U+010448 - U+01044F : 0x55555555
02224       0,  // U+010450 - U+010457 : 0x55555555
02225       0,  // U+010458 - U+01045F : 0x55555555
02226       0,  // U+010460 - U+010467 : 0x55555555
02227       0,  // U+010468 - U+01046F : 0x55555555
02228       0,  // U+010470 - U+010477 : 0x55555555
02229       0,  // U+010478 - U+01047F : 0x55555555
02230       0,  // U+010480 - U+010487 : 0x55555555
02231       0,  // U+010488 - U+01048F : 0x55555555
02232       0,  // U+010490 - U+010497 : 0x55555555
02233       7,  // U+010498 - U+01049F : 0x00555555
02234      28,  // U+0104A0 - U+0104A7 : 0x22222222
02235     125,  // U+0104A8 - U+0104AF : 0x00000022
02236 };
02237 
02238 static const PRUint8 gGenCatIdx8[8] = {
02239       7,  // U+010800 - U+010807 : 0x00555555
02240     126,  // U+010808 - U+01080F : 0x55555505
02241       0,  // U+010810 - U+010817 : 0x55555555
02242       0,  // U+010818 - U+01081F : 0x55555555
02243       0,  // U+010820 - U+010827 : 0x55555555
02244       0,  // U+010828 - U+01082F : 0x55555555
02245     127,  // U+010830 - U+010837 : 0x50555555
02246     128,  // U+010838 - U+01083F : 0x50050005
02247 };
02248 
02249 static const PRUint8 gGenCatIdx9[4] = {
02250       0,  // U+010900 - U+010907 : 0x55555555
02251       0,  // U+010908 - U+01090F : 0x55555555
02252     129,  // U+010910 - U+010917 : 0x22555555
02253     130,  // U+010918 - U+01091F : 0x60000022
02254 };
02255 
02256 static const PRUint8 gGenCatIdx10[12] = {
02257     131,  // U+010A00 - U+010A07 : 0x01101115
02258     132,  // U+010A08 - U+010A0F : 0x11110000
02259     114,  // U+010A10 - U+010A17 : 0x55505555
02260      77,  // U+010A18 - U+010A1F : 0x55555550
02261       0,  // U+010A20 - U+010A27 : 0x55555555
02262       0,  // U+010A28 - U+010A2F : 0x55555555
02263       5,  // U+010A30 - U+010A37 : 0x00005555
02264     133,  // U+010A38 - U+010A3F : 0x10000111
02265      28,  // U+010A40 - U+010A47 : 0x22222222
02266       3,  // U+010A48 - U+010A4F : 0x00000000
02267      19,  // U+010A50 - U+010A57 : 0x66666666
02268     134,  // U+010A58 - U+010A5F : 0x00000006
02269 };
02270 
02271 static const PRUint8 gGenCatIdx11[144] = {
02272       0,  // U+012000 - U+012007 : 0x55555555
02273       0,  // U+012008 - U+01200F : 0x55555555
02274       0,  // U+012010 - U+012017 : 0x55555555
02275       0,  // U+012018 - U+01201F : 0x55555555
02276       0,  // U+012020 - U+012027 : 0x55555555
02277       0,  // U+012028 - U+01202F : 0x55555555
02278       0,  // U+012030 - U+012037 : 0x55555555
02279       0,  // U+012038 - U+01203F : 0x55555555
02280       0,  // U+012040 - U+012047 : 0x55555555
02281       0,  // U+012048 - U+01204F : 0x55555555
02282       0,  // U+012050 - U+012057 : 0x55555555
02283       0,  // U+012058 - U+01205F : 0x55555555
02284       0,  // U+012060 - U+012067 : 0x55555555
02285       0,  // U+012068 - U+01206F : 0x55555555
02286       0,  // U+012070 - U+012077 : 0x55555555
02287       0,  // U+012078 - U+01207F : 0x55555555
02288       0,  // U+012080 - U+012087 : 0x55555555
02289       0,  // U+012088 - U+01208F : 0x55555555
02290       0,  // U+012090 - U+012097 : 0x55555555
02291       0,  // U+012098 - U+01209F : 0x55555555
02292       0,  // U+0120A0 - U+0120A7 : 0x55555555
02293       0,  // U+0120A8 - U+0120AF : 0x55555555
02294       0,  // U+0120B0 - U+0120B7 : 0x55555555
02295       0,  // U+0120B8 - U+0120BF : 0x55555555
02296       0,  // U+0120C0 - U+0120C7 : 0x55555555
02297       0,  // U+0120C8 - U+0120CF : 0x55555555
02298       0,  // U+0120D0 - U+0120D7 : 0x55555555
02299       0,  // U+0120D8 - U+0120DF : 0x55555555
02300       0,  // U+0120E0 - U+0120E7 : 0x55555555
02301       0,  // U+0120E8 - U+0120EF : 0x55555555
02302       0,  // U+0120F0 - U+0120F7 : 0x55555555
02303       0,  // U+0120F8 - U+0120FF : 0x55555555
02304       0,  // U+012100 - U+012107 : 0x55555555
02305       0,  // U+012108 - U+01210F : 0x55555555
02306       0,  // U+012110 - U+012117 : 0x55555555
02307       0,  // U+012118 - U+01211F : 0x55555555
02308       0,  // U+012120 - U+012127 : 0x55555555
02309       0,  // U+012128 - U+01212F : 0x55555555
02310       0,  // U+012130 - U+012137 : 0x55555555
02311       0,  // U+012138 - U+01213F : 0x55555555
02312       0,  // U+012140 - U+012147 : 0x55555555
02313       0,  // U+012148 - U+01214F : 0x55555555
02314       0,  // U+012150 - U+012157 : 0x55555555
02315       0,  // U+012158 - U+01215F : 0x55555555
02316       0,  // U+012160 - U+012167 : 0x55555555
02317       0,  // U+012168 - U+01216F : 0x55555555
02318       0,  // U+012170 - U+012177 : 0x55555555
02319       0,  // U+012178 - U+01217F : 0x55555555
02320       0,  // U+012180 - U+012187 : 0x55555555
02321       0,  // U+012188 - U+01218F : 0x55555555
02322       0,  // U+012190 - U+012197 : 0x55555555
02323       0,  // U+012198 - U+01219F : 0x55555555
02324       0,  // U+0121A0 - U+0121A7 : 0x55555555
02325       0,  // U+0121A8 - U+0121AF : 0x55555555
02326       0,  // U+0121B0 - U+0121B7 : 0x55555555
02327       0,  // U+0121B8 - U+0121BF : 0x55555555
02328       0,  // U+0121C0 - U+0121C7 : 0x55555555
02329       0,  // U+0121C8 - U+0121CF : 0x55555555
02330       0,  // U+0121D0 - U+0121D7 : 0x55555555
02331       0,  // U+0121D8 - U+0121DF : 0x55555555
02332       0,  // U+0121E0 - U+0121E7 : 0x55555555
02333       0,  // U+0121E8 - U+0121EF : 0x55555555
02334       0,  // U+0121F0 - U+0121F7 : 0x55555555
02335       0,  // U+0121F8 - U+0121FF : 0x55555555
02336       0,  // U+012200 - U+012207 : 0x55555555
02337       0,  // U+012208 - U+01220F : 0x55555555
02338       0,  // U+012210 - U+012217 : 0x55555555
02339       0,  // U+012218 - U+01221F : 0x55555555
02340       0,  // U+012220 - U+012227 : 0x55555555
02341       0,  // U+012228 - U+01222F : 0x55555555
02342       0,  // U+012230 - U+012237 : 0x55555555
02343       0,  // U+012238 - U+01223F : 0x55555555
02344       0,  // U+012240 - U+012247 : 0x55555555
02345       0,  // U+012248 - U+01224F : 0x55555555
02346       0,  // U+012250 - U+012257 : 0x55555555
02347       0,  // U+012258 - U+01225F : 0x55555555
02348       0,  // U+012260 - U+012267 : 0x55555555
02349       0,  // U+012268 - U+01226F : 0x55555555
02350       0,  // U+012270 - U+012277 : 0x55555555
02351       0,  // U+012278 - U+01227F : 0x55555555
02352       0,  // U+012280 - U+012287 : 0x55555555
02353       0,  // U+012288 - U+01228F : 0x55555555
02354       0,  // U+012290 - U+012297 : 0x55555555
02355       0,  // U+012298 - U+01229F : 0x55555555
02356       0,  // U+0122A0 - U+0122A7 : 0x55555555
02357       0,  // U+0122A8 - U+0122AF : 0x55555555
02358       0,  // U+0122B0 - U+0122B7 : 0x55555555
02359       0,  // U+0122B8 - U+0122BF : 0x55555555
02360       0,  // U+0122C0 - U+0122C7 : 0x55555555
02361       0,  // U+0122C8 - U+0122CF : 0x55555555
02362       0,  // U+0122D0 - U+0122D7 : 0x55555555
02363       0,  // U+0122D8 - U+0122DF : 0x55555555
02364       0,  // U+0122E0 - U+0122E7 : 0x55555555
02365       0,  // U+0122E8 - U+0122EF : 0x55555555
02366       0,  // U+0122F0 - U+0122F7 : 0x55555555
02367       0,  // U+0122F8 - U+0122FF : 0x55555555
02368       0,  // U+012300 - U+012307 : 0x55555555
02369       0,  // U+012308 - U+01230F : 0x55555555
02370       0,  // U+012310 - U+012317 : 0x55555555
02371       0,  // U+012318 - U+01231F : 0x55555555
02372       0,  // U+012320 - U+012327 : 0x55555555
02373       0,  // U+012328 - U+01232F : 0x55555555
02374       0,  // U+012330 - U+012337 : 0x55555555
02375       0,  // U+012338 - U+01233F : 0x55555555
02376       0,  // U+012340 - U+012347 : 0x55555555
02377       0,  // U+012348 - U+01234F : 0x55555555
02378       0,  // U+012350 - U+012357 : 0x55555555
02379       0,  // U+012358 - U+01235F : 0x55555555
02380       0,  // U+012360 - U+012367 : 0x55555555
02381      65,  // U+012368 - U+01236F : 0x05555555
02382       3,  // U+012370 - U+012377 : 0x00000000
02383       3,  // U+012378 - U+01237F : 0x00000000
02384       3,  // U+012380 - U+012387 : 0x00000000
02385       3,  // U+012388 - U+01238F : 0x00000000
02386       3,  // U+012390 - U+012397 : 0x00000000
02387       3,  // U+012398 - U+01239F : 0x00000000
02388       3,  // U+0123A0 - U+0123A7 : 0x00000000
02389       3,  // U+0123A8 - U+0123AF : 0x00000000
02390       3,  // U+0123B0 - U+0123B7 : 0x00000000
02391       3,  // U+0123B8 - U+0123BF : 0x00000000
02392       3,  // U+0123C0 - U+0123C7 : 0x00000000
02393       3,  // U+0123C8 - U+0123CF : 0x00000000
02394       3,  // U+0123D0 - U+0123D7 : 0x00000000
02395       3,  // U+0123D8 - U+0123DF : 0x00000000
02396       3,  // U+0123E0 - U+0123E7 : 0x00000000
02397       3,  // U+0123E8 - U+0123EF : 0x00000000
02398       3,  // U+0123F0 - U+0123F7 : 0x00000000
02399       3,  // U+0123F8 - U+0123FF : 0x00000000
02400      28,  // U+012400 - U+012407 : 0x22222222
02401      28,  // U+012408 - U+01240F : 0x22222222
02402      28,  // U+012410 - U+012417 : 0x22222222
02403      28,  // U+012418 - U+01241F : 0x22222222
02404      28,  // U+012420 - U+012427 : 0x22222222
02405      28,  // U+012428 - U+01242F : 0x22222222
02406      28,  // U+012430 - U+012437 : 0x22222222
02407      28,  // U+012438 - U+01243F : 0x22222222
02408      28,  // U+012440 - U+012447 : 0x22222222
02409      28,  // U+012448 - U+01244F : 0x22222222
02410      28,  // U+012450 - U+012457 : 0x22222222
02411      28,  // U+012458 - U+01245F : 0x22222222
02412     135,  // U+012460 - U+012467 : 0x00000222
02413       3,  // U+012468 - U+01246F : 0x00000000
02414      59,  // U+012470 - U+012477 : 0x00006666
02415       3,  // U+012478 - U+01247F : 0x00000000
02416 };
02417 
02418 static const PRUint8 gGenCatIdx12[256] = {
02419      31,  // U+01D000 - U+01D007 : 0x77777777
02420      31,  // U+01D008 - U+01D00F : 0x77777777
02421      31,  // U+01D010 - U+01D017 : 0x77777777
02422      31,  // U+01D018 - U+01D01F : 0x77777777
02423      31,  // U+01D020 - U+01D027 : 0x77777777
02424      31,  // U+01D028 - U+01D02F : 0x77777777
02425      31,  // U+01D030 - U+01D037 : 0x77777777
02426      31,  // U+01D038 - U+01D03F : 0x77777777
02427      31,  // U+01D040 - U+01D047 : 0x77777777
02428      31,  // U+01D048 - U+01D04F : 0x77777777
02429      31,  // U+01D050 - U+01D057 : 0x77777777
02430      31,  // U+01D058 - U+01D05F : 0x77777777
02431      31,  // U+01D060 - U+01D067 : 0x77777777
02432      31,  // U+01D068 - U+01D06F : 0x77777777
02433      31,  // U+01D070 - U+01D077 : 0x77777777
02434      31,  // U+01D078 - U+01D07F : 0x77777777
02435      31,  // U+01D080 - U+01D087 : 0x77777777
02436      31,  // U+01D088 - U+01D08F : 0x77777777
02437      31,  // U+01D090 - U+01D097 : 0x77777777
02438      31,  // U+01D098 - U+01D09F : 0x77777777
02439      31,  // U+01D0A0 - U+01D0A7 : 0x77777777
02440      31,  // U+01D0A8 - U+01D0AF : 0x77777777
02441      31,  // U+01D0B0 - U+01D0B7 : 0x77777777
02442      31,  // U+01D0B8 - U+01D0BF : 0x77777777
02443      31,  // U+01D0C0 - U+01D0C7 : 0x77777777
02444      31,  // U+01D0C8 - U+01D0CF : 0x77777777
02445      31,  // U+01D0D0 - U+01D0D7 : 0x77777777
02446      31,  // U+01D0D8 - U+01D0DF : 0x77777777
02447      31,  // U+01D0E0 - U+01D0E7 : 0x77777777
02448      31,  // U+01D0E8 - U+01D0EF : 0x77777777
02449      32,  // U+01D0F0 - U+01D0F7 : 0x00777777
02450       3,  // U+01D0F8 - U+01D0FF : 0x00000000
02451      31,  // U+01D100 - U+01D107 : 0x77777777
02452      31,  // U+01D108 - U+01D10F : 0x77777777
02453      31,  // U+01D110 - U+01D117 : 0x77777777
02454      31,  // U+01D118 - U+01D11F : 0x77777777
02455      45,  // U+01D120 - U+01D127 : 0x07777777
02456     136,  // U+01D128 - U+01D12F : 0x77777700
02457      31,  // U+01D130 - U+01D137 : 0x77777777
02458      31,  // U+01D138 - U+01D13F : 0x77777777
02459      31,  // U+01D140 - U+01D147 : 0x77777777
02460      31,  // U+01D148 - U+01D14F : 0x77777777
02461      31,  // U+01D150 - U+01D157 : 0x77777777
02462      31,  // U+01D158 - U+01D15F : 0x77777777
02463     137,  // U+01D160 - U+01D167 : 0x11177777
02464     138,  // U+01D168 - U+01D16F : 0x11177711
02465     139,  // U+01D170 - U+01D177 : 0x44444111
02466     140,  // U+01D178 - U+01D17F : 0x11111444
02467     141,  // U+01D180 - U+01D187 : 0x11177111
02468     142,  // U+01D188 - U+01D18F : 0x77771111
02469      31,  // U+01D190 - U+01D197 : 0x77777777
02470      31,  // U+01D198 - U+01D19F : 0x77777777
02471      31,  // U+01D1A0 - U+01D1A7 : 0x77777777
02472     143,  // U+01D1A8 - U+01D1AF : 0x77111177
02473      31,  // U+01D1B0 - U+01D1B7 : 0x77777777
02474      31,  // U+01D1B8 - U+01D1BF : 0x77777777
02475      31,  // U+01D1C0 - U+01D1C7 : 0x77777777
02476      31,  // U+01D1C8 - U+01D1CF : 0x77777777
02477      31,  // U+01D1D0 - U+01D1D7 : 0x77777777
02478      32,  // U+01D1D8 - U+01D1DF : 0x00777777
02479       3,  // U+01D1E0 - U+01D1E7 : 0x00000000
02480       3,  // U+01D1E8 - U+01D1EF : 0x00000000
02481       3,  // U+01D1F0 - U+01D1F7 : 0x00000000
02482       3,  // U+01D1F8 - U+01D1FF : 0x00000000
02483      31,  // U+01D200 - U+01D207 : 0x77777777
02484      31,  // U+01D208 - U+01D20F : 0x77777777
02485      31,  // U+01D210 - U+01D217 : 0x77777777
02486      31,  // U+01D218 - U+01D21F : 0x77777777
02487      31,  // U+01D220 - U+01D227 : 0x77777777
02488      31,  // U+01D228 - U+01D22F : 0x77777777
02489      31,  // U+01D230 - U+01D237 : 0x77777777
02490      31,  // U+01D238 - U+01D23F : 0x77777777
02491     144,  // U+01D240 - U+01D247 : 0x00711177
02492       3,  // U+01D248 - U+01D24F : 0x00000000
02493       3,  // U+01D250 - U+01D257 : 0x00000000
02494       3,  // U+01D258 - U+01D25F : 0x00000000
02495       3,  // U+01D260 - U+01D267 : 0x00000000
02496       3,  // U+01D268 - U+01D26F : 0x00000000
02497       3,  // U+01D270 - U+01D277 : 0x00000000
02498       3,  // U+01D278 - U+01D27F : 0x00000000
02499       3,  // U+01D280 - U+01D287 : 0x00000000
02500       3,  // U+01D288 - U+01D28F : 0x00000000
02501       3,  // U+01D290 - U+01D297 : 0x00000000
02502       3,  // U+01D298 - U+01D29F : 0x00000000
02503       3,  // U+01D2A0 - U+01D2A7 : 0x00000000
02504       3,  // U+01D2A8 - U+01D2AF : 0x00000000
02505       3,  // U+01D2B0 - U+01D2B7 : 0x00000000
02506       3,  // U+01D2B8 - U+01D2BF : 0x00000000
02507       3,  // U+01D2C0 - U+01D2C7 : 0x00000000
02508       3,  // U+01D2C8 - U+01D2CF : 0x00000000
02509       3,  // U+01D2D0 - U+01D2D7 : 0x00000000
02510       3,  // U+01D2D8 - U+01D2DF : 0x00000000
02511       3,  // U+01D2E0 - U+01D2E7 : 0x00000000
02512       3,  // U+01D2E8 - U+01D2EF : 0x00000000
02513       3,  // U+01D2F0 - U+01D2F7 : 0x00000000
02514       3,  // U+01D2F8 - U+01D2FF : 0x00000000
02515      31,  // U+01D300 - U+01D307 : 0x77777777
02516      31,  // U+01D308 - U+01D30F : 0x77777777
02517      31,  // U+01D310 - U+01D317 : 0x77777777
02518      31,  // U+01D318 - U+01D31F : 0x77777777
02519      31,  // U+01D320 - U+01D327 : 0x77777777
02520      31,  // U+01D328 - U+01D32F : 0x77777777
02521      31,  // U+01D330 - U+01D337 : 0x77777777
02522      31,  // U+01D338 - U+01D33F : 0x77777777
02523      31,  // U+01D340 - U+01D347 : 0x77777777
02524      31,  // U+01D348 - U+01D34F : 0x77777777
02525      45,  // U+01D350 - U+01D357 : 0x07777777
02526       3,  // U+01D358 - U+01D35F : 0x00000000
02527      28,  // U+01D360 - U+01D367 : 0x22222222
02528      28,  // U+01D368 - U+01D36F : 0x22222222
02529     125,  // U+01D370 - U+01D377 : 0x00000022
02530       3,  // U+01D378 - U+01D37F : 0x00000000
02531       3,  // U+01D380 - U+01D387 : 0x00000000
02532       3,  // U+01D388 - U+01D38F : 0x00000000
02533       3,  // U+01D390 - U+01D397 : 0x00000000
02534       3,  // U+01D398 - U+01D39F : 0x00000000
02535       3,  // U+01D3A0 - U+01D3A7 : 0x00000000
02536       3,  // U+01D3A8 - U+01D3AF : 0x00000000
02537       3,  // U+01D3B0 - U+01D3B7 : 0x00000000
02538       3,  // U+01D3B8 - U+01D3BF : 0x00000000
02539       3,  // U+01D3C0 - U+01D3C7 : 0x00000000
02540       3,  // U+01D3C8 - U+01D3CF : 0x00000000
02541       3,  // U+01D3D0 - U+01D3D7 : 0x00000000
02542       3,  // U+01D3D8 - U+01D3DF : 0x00000000
02543       3,  // U+01D3E0 - U+01D3E7 : 0x00000000
02544       3,  // U+01D3E8 - U+01D3EF : 0x00000000
02545       3,  // U+01D3F0 - U+01D3F7 : 0x00000000
02546       3,  // U+01D3F8 - U+01D3FF : 0x00000000
02547       0,  // U+01D400 - U+01D407 : 0x55555555
02548       0,  // U+01D408 - U+01D40F : 0x55555555
02549       0,  // U+01D410 - U+01D417 : 0x55555555
02550       0,  // U+01D418 - U+01D41F : 0x55555555
02551       0,  // U+01D420 - U+01D427 : 0x55555555
02552       0,  // U+01D428 - U+01D42F : 0x55555555
02553       0,  // U+01D430 - U+01D437 : 0x55555555
02554       0,  // U+01D438 - U+01D43F : 0x55555555
02555       0,  // U+01D440 - U+01D447 : 0x55555555
02556       0,  // U+01D448 - U+01D44F : 0x55555555
02557       9,  // U+01D450 - U+01D457 : 0x55055555
02558       0,  // U+01D458 - U+01D45F : 0x55555555
02559       0,  // U+01D460 - U+01D467 : 0x55555555
02560       0,  // U+01D468 - U+01D46F : 0x55555555
02561       0,  // U+01D470 - U+01D477 : 0x55555555
02562       0,  // U+01D478 - U+01D47F : 0x55555555
02563       0,  // U+01D480 - U+01D487 : 0x55555555
02564       0,  // U+01D488 - U+01D48F : 0x55555555
02565       0,  // U+01D490 - U+01D497 : 0x55555555
02566       9,  // U+01D498 - U+01D49F : 0x55055555
02567     145,  // U+01D4A0 - U+01D4A7 : 0x05500500
02568     146,  // U+01D4A8 - U+01D4AF : 0x55055550
02569       0,  // U+01D4B0 - U+01D4B7 : 0x55555555
02570     147,  // U+01D4B8 - U+01D4BF : 0x55505055
02571     114,  // U+01D4C0 - U+01D4C7 : 0x55505555
02572       0,  // U+01D4C8 - U+01D4CF : 0x55555555
02573       0,  // U+01D4D0 - U+01D4D7 : 0x55555555
02574       0,  // U+01D4D8 - U+01D4DF : 0x55555555
02575       0,  // U+01D4E0 - U+01D4E7 : 0x55555555
02576       0,  // U+01D4E8 - U+01D4EF : 0x55555555
02577       0,  // U+01D4F0 - U+01D4F7 : 0x55555555
02578       0,  // U+01D4F8 - U+01D4FF : 0x55555555
02579     127,  // U+01D500 - U+01D507 : 0x50555555
02580     148,  // U+01D508 - U+01D50F : 0x55500555
02581       9,  // U+01D510 - U+01D517 : 0x55055555
02582       9,  // U+01D518 - U+01D51F : 0x55055555
02583       0,  // U+01D520 - U+01D527 : 0x55555555
02584       0,  // U+01D528 - U+01D52F : 0x55555555
02585       0,  // U+01D530 - U+01D537 : 0x55555555
02586     149,  // U+01D538 - U+01D53F : 0x05555055
02587      94,  // U+01D540 - U+01D547 : 0x05055555
02588      97,  // U+01D548 - U+01D54F : 0x55555500
02589     126,  // U+01D550 - U+01D557 : 0x55555505
02590       0,  // U+01D558 - U+01D55F : 0x55555555
02591       0,  // U+01D560 - U+01D567 : 0x55555555
02592       0,  // U+01D568 - U+01D56F : 0x55555555
02593       0,  // U+01D570 - U+01D577 : 0x55555555
02594       0,  // U+01D578 - U+01D57F : 0x55555555
02595       0,  // U+01D580 - U+01D587 : 0x55555555
02596       0,  // U+01D588 - U+01D58F : 0x55555555
02597       0,  // U+01D590 - U+01D597 : 0x55555555
02598       0,  // U+01D598 - U+01D59F : 0x55555555
02599       0,  // U+01D5A0 - U+01D5A7 : 0x55555555
02600       0,  // U+01D5A8 - U+01D5AF : 0x55555555
02601       0,  // U+01D5B0 - U+01D5B7 : 0x55555555
02602       0,  // U+01D5B8 - U+01D5BF : 0x55555555
02603       0,  // U+01D5C0 - U+01D5C7 : 0x55555555
02604       0,  // U+01D5C8 - U+01D5CF : 0x55555555
02605       0,  // U+01D5D0 - U+01D5D7 : 0x55555555
02606       0,  // U+01D5D8 - U+01D5DF : 0x55555555
02607       0,  // U+01D5E0 - U+01D5E7 : 0x55555555
02608       0,  // U+01D5E8 - U+01D5EF : 0x55555555
02609       0,  // U+01D5F0 - U+01D5F7 : 0x55555555
02610       0,  // U+01D5F8 - U+01D5FF : 0x55555555
02611       0,  // U+01D600 - U+01D607 : 0x55555555
02612       0,  // U+01D608 - U+01D60F : 0x55555555
02613       0,  // U+01D610 - U+01D617 : 0x55555555
02614       0,  // U+01D618 - U+01D61F : 0x55555555
02615       0,  // U+01D620 - U+01D627 : 0x55555555
02616       0,  // U+01D628 - U+01D62F : 0x55555555
02617       0,  // U+01D630 - U+01D637 : 0x55555555
02618       0,  // U+01D638 - U+01D63F : 0x55555555
02619       0,  // U+01D640 - U+01D647 : 0x55555555
02620       0,  // U+01D648 - U+01D64F : 0x55555555
02621       0,  // U+01D650 - U+01D657 : 0x55555555
02622       0,  // U+01D658 - U+01D65F : 0x55555555
02623       0,  // U+01D660 - U+01D667 : 0x55555555
02624       0,  // U+01D668 - U+01D66F : 0x55555555
02625       0,  // U+01D670 - U+01D677 : 0x55555555
02626       0,  // U+01D678 - U+01D67F : 0x55555555
02627       0,  // U+01D680 - U+01D687 : 0x55555555
02628       0,  // U+01D688 - U+01D68F : 0x55555555
02629       0,  // U+01D690 - U+01D697 : 0x55555555
02630       0,  // U+01D698 - U+01D69F : 0x55555555
02631       7,  // U+01D6A0 - U+01D6A7 : 0x00555555
02632       0,  // U+01D6A8 - U+01D6AF : 0x55555555
02633       0,  // U+01D6B0 - U+01D6B7 : 0x55555555
02634       0,  // U+01D6B8 - U+01D6BF : 0x55555555
02635      93,  // U+01D6C0 - U+01D6C7 : 0x55555575
02636       0,  // U+01D6C8 - U+01D6CF : 0x55555555
02637       0,  // U+01D6D0 - U+01D6D7 : 0x55555555
02638     150,  // U+01D6D8 - U+01D6DF : 0x55557555
02639       0,  // U+01D6E0 - U+01D6E7 : 0x55555555
02640       0,  // U+01D6E8 - U+01D6EF : 0x55555555
02641       0,  // U+01D6F0 - U+01D6F7 : 0x55555555
02642     150,  // U+01D6F8 - U+01D6FF : 0x55557555
02643       0,  // U+01D700 - U+01D707 : 0x55555555
02644       0,  // U+01D708 - U+01D70F : 0x55555555
02645     151,  // U+01D710 - U+01D717 : 0x55755555
02646       0,  // U+01D718 - U+01D71F : 0x55555555
02647       0,  // U+01D720 - U+01D727 : 0x55555555
02648       0,  // U+01D728 - U+01D72F : 0x55555555
02649     151,  // U+01D730 - U+01D737 : 0x55755555
02650       0,  // U+01D738 - U+01D73F : 0x55555555
02651       0,  // U+01D740 - U+01D747 : 0x55555555
02652     152,  // U+01D748 - U+01D74F : 0x75555555
02653       0,  // U+01D750 - U+01D757 : 0x55555555
02654       0,  // U+01D758 - U+01D75F : 0x55555555
02655       0,  // U+01D760 - U+01D767 : 0x55555555
02656     152,  // U+01D768 - U+01D76F : 0x75555555
02657       0,  // U+01D770 - U+01D777 : 0x55555555
02658       0,  // U+01D778 - U+01D77F : 0x55555555
02659       0,  // U+01D780 - U+01D787 : 0x55555555
02660      93,  // U+01D788 - U+01D78F : 0x55555575
02661       0,  // U+01D790 - U+01D797 : 0x55555555
02662       0,  // U+01D798 - U+01D79F : 0x55555555
02663       0,  // U+01D7A0 - U+01D7A7 : 0x55555555
02664      93,  // U+01D7A8 - U+01D7AF : 0x55555575
02665       0,  // U+01D7B0 - U+01D7B7 : 0x55555555
02666       0,  // U+01D7B8 - U+01D7BF : 0x55555555
02667     150,  // U+01D7C0 - U+01D7C7 : 0x55557555
02668     153,  // U+01D7C8 - U+01D7CF : 0x22005555
02669      28,  // U+01D7D0 - U+01D7D7 : 0x22222222
02670      28,  // U+01D7D8 - U+01D7DF : 0x22222222
02671      28,  // U+01D7E0 - U+01D7E7 : 0x22222222
02672      28,  // U+01D7E8 - U+01D7EF : 0x22222222
02673      28,  // U+01D7F0 - U+01D7F7 : 0x22222222
02674      28,  // U+01D7F8 - U+01D7FF : 0x22222222
02675 };
02676 
02677 static const PRUint32 gGenCatPatPl0[] = {
02678     0x44444444,  // 0 
02679     0x66676663,  // 1 
02680     0x66667666,  // 2 
02681     0x22222222,  // 3 
02682     0x67776622,  // 4 
02683     0x55555556,  // 5 
02684     0x55555555,  // 6 
02685     0x67666555,  // 7 
02686     0x55555557,  // 8 
02687     0x47676555,  // 9 
02688     0x77777763,  // 10 
02689     0x77476577,  // 11 
02690     0x67572277,  // 12 
02691     0x62226527,  // 13 
02692     0x75555555,  // 14 
02693     0x55777755,  // 15 
02694     0x77777755,  // 16 
02695     0x77777777,  // 17 
02696     0x77755555,  // 18 
02697     0x75777777,  // 19 
02698     0x11111111,  // 20 
02699     0x00770000,  // 21 
02700     0x06555500,  // 22 
02701     0x65770000,  // 23 
02702     0x55050555,  // 24 
02703     0x55555055,  // 25 
02704     0x05555555,  // 26 
02705     0x57555555,  // 27 
02706     0x01111755,  // 28 
02707     0x55555511,  // 29 
02708     0x00005555,  // 30 
02709     0x00000000,  // 31 
02710     0x55555550,  // 32 
02711     0x66666650,  // 33 
02712     0x00000660,  // 34 
02713     0x11111110,  // 35 
02714     0x16111111,  // 36 
02715     0x16116116,  // 37 
02716     0x00000555,  // 38 
02717     0x00066555,  // 39 
02718     0x00004444,  // 40 
02719     0x77667000,  // 41 
02720     0x00111111,  // 42 
02721     0x66006000,  // 43 
02722     0x11111555,  // 44 
02723     0x01111111,  // 45 
02724     0x55666622,  // 46 
02725     0x55555551,  // 47 
02726     0x11565555,  // 48 
02727     0x11411111,  // 49 
02728     0x15511111,  // 50 
02729     0x55111171,  // 51 
02730     0x57755522,  // 52 
02731     0x66666666,  // 53 
02732     0x40666666,  // 54 
02733     0x55555515,  // 55 
02734     0x55500111,  // 56 
02735     0x00555555,  // 57 
02736     0x11555555,  // 58 
02737     0x00000051,  // 59 
02738     0x55555522,  // 60 
02739     0x67551111,  // 61 
02740     0x00000566,  // 62 
02741     0x55551110,  // 63 
02742     0x11510055,  // 64 
02743     0x00011115,  // 65 
02744     0x22661155,  // 66 
02745     0x00000006,  // 67 
02746     0x55555000,  // 68 
02747     0x55501110,  // 69 
02748     0x50055555,  // 70 
02749     0x55555005,  // 71 
02750     0x55555505,  // 72 
02751     0x55000505,  // 73 
02752     0x10011111,  // 74 
02753     0x05111001,  // 75 
02754     0x10000000,  // 76 
02755     0x50550000,  // 77 
02756     0x22001155,  // 78 
02757     0x22227755,  // 79 
02758     0x00000722,  // 80 
02759     0x50000555,  // 81 
02760     0x05505505,  // 82 
02761     0x11010055,  // 83 
02762     0x10000111,  // 84 
02763     0x00111001,  // 85 
02764     0x05055550,  // 86 
02765     0x22000000,  // 87 
02766     0x00055511,  // 88 
02767     0x50555555,  // 89 
02768     0x55505505,  // 90 
02769     0x10111111,  // 91 
02770     0x00111011,  // 92 
02771     0x00000005,  // 93 
02772     0x00000070,  // 94 
02773     0x10001111,  // 95 
02774     0x11000000,  // 96 
02775     0x22000055,  // 97 
02776     0x00000057,  // 98 
02777     0x55505100,  // 99 
02778     0x55000555,  // 100 
02779     0x00555505,  // 101 
02780     0x55050550,  // 102 
02781     0x00055000,  // 103 
02782     0x11000055,  // 104 
02783     0x11000111,  // 105 
02784     0x00111101,  // 106 
02785     0x77777222,  // 107 
02786     0x00000777,  // 108 
02787     0x55055555,  // 109 
02788     0x55505555,  // 110 
02789     0x11011111,  // 111 
02790     0x01100000,  // 112 
02791     0x55501100,  // 113 
02792     0x05000000,  // 114 
02793     0x00000770,  // 115 
02794     0x11001111,  // 116 
02795     0x55555500,  // 117 
02796     0x00505555,  // 118 
02797     0x10000100,  // 119 
02798     0x01011111,  // 120 
02799     0x00061100,  // 121 
02800     0x11115515,  // 122 
02801     0x70000111,  // 123 
02802     0x15555555,  // 124 
02803     0x61111111,  // 125 
02804     0x00006622,  // 126 
02805     0x50050550,  // 127 
02806     0x00500505,  // 128 
02807     0x55550000,  // 129 
02808     0x50505550,  // 130 
02809     0x55505500,  // 131 
02810     0x00511011,  // 132 
02811     0x05055555,  // 133 
02812     0x00550022,  // 134 
02813     0x66667775,  // 135 
02814     0x77777666,  // 136 
02815     0x77777711,  // 137 
02816     0x17172222,  // 138 
02817     0x11666617,  // 139 
02818     0x11611111,  // 140 
02819     0x77011111,  // 141 
02820     0x71777777,  // 142 
02821     0x70077777,  // 143 
02822     0x00000066,  // 144 
02823     0x11110550,  // 145 
02824     0x00000011,  // 146 
02825     0x66666622,  // 147 
02826     0x00056555,  // 148 
02827     0x50000055,  // 149 
02828     0x00000055,  // 150 
02829     0x10000555,  // 151 
02830     0x66666667,  // 152 
02831     0x22222226,  // 153 
02832     0x00022222,  // 154 
02833     0x00000077,  // 155 
02834     0x00055555,  // 156 
02835     0x56655555,  // 157 
02836     0x55555553,  // 158 
02837     0x22666555,  // 159 
02838     0x00000002,  // 160 
02839     0x00011155,  // 161 
02840     0x06611155,  // 162 
02841     0x00001155,  // 163 
02842     0x00001105,  // 164 
02843     0x11445555,  // 165 
02844     0x56661111,  // 166 
02845     0x00157666,  // 167 
02846     0x00000022,  // 168 
02847     0x03111666,  // 169 
02848     0x00000015,  // 170 
02849     0x00001111,  // 171 
02850     0x22660007,  // 172 
02851     0x66000022,  // 173 
02852     0x66001111,  // 174 
02853     0x55511111,  // 175 
02854     0x11115555,  // 176 
02855     0x77777776,  // 177 
02856     0x11111777,  // 178 
02857     0x77771111,  // 179 
02858     0x00077777,  // 180 
02859 }; 
02860 
02861 static const PRUint32 gGenCatPatPl1[] = {
02862     0x55555555,  // 0 
02863     0x11111111,  // 1 
02864     0x00000111,  // 2 
02865     0x00000000,  // 3 
02866     0x11000000,  // 4 
02867     0x00005555,  // 5 
02868     0x00000055,  // 6 
02869     0x00555555,  // 7 
02870     0x50505050,  // 8 
02871     0x55055555,  // 9 
02872     0x75755555,  // 10 
02873     0x55055577,  // 11 
02874     0x77755555,  // 12 
02875     0x55005555,  // 13 
02876     0x77705555,  // 14 
02877     0x55055500,  // 15 
02878     0x07755555,  // 16 
02879     0x33333333,  // 17 
02880     0x44444333,  // 18 
02881     0x66666666,  // 19 
02882     0x34444433,  // 20 
02883     0x66676666,  // 21 
02884     0x66666766,  // 22 
02885     0x36666666,  // 23 
02886     0x00004444,  // 24 
02887     0x44444400,  // 25 
02888     0x22220052,  // 26 
02889     0x56677722,  // 27 
02890     0x22222222,  // 28 
02891     0x06677722,  // 29 
02892     0x00055555,  // 30 
02893     0x77777777,  // 31 
02894     0x00777777,  // 32 
02895     0x57777577,  // 33 
02896     0x55555577,  // 34 
02897     0x77575555,  // 35 
02898     0x77555557,  // 36 
02899     0x75757777,  // 37 
02900     0x57555575,  // 38 
02901     0x55557755,  // 39 
02902     0x55577777,  // 40 
02903     0x05777755,  // 41 
02904     0x22222000,  // 42 
02905     0x00055222,  // 43 
02906     0x77777667,  // 44 
02907     0x07777777,  // 45 
02908     0x00000777,  // 46 
02909     0x77772222,  // 47 
02910     0x22222277,  // 48 
02911     0x00077777,  // 49 
02912     0x77077770,  // 50 
02913     0x77770077,  // 51 
02914     0x77777770,  // 52 
02915     0x70707777,  // 53 
02916     0x07000777,  // 54 
02917     0x22666666,  // 55 
02918     0x00072222,  // 56 
02919     0x76677777,  // 57 
02920     0x66777777,  // 58 
02921     0x00006666,  // 59 
02922     0x66666777,  // 60 
02923     0x77777776,  // 61 
02924     0x77776666,  // 62 
02925     0x77667777,  // 63 
02926     0x00007777,  // 64 
02927     0x05555555,  // 65 
02928     0x55550000,  // 66 
02929     0x66266660,  // 67 
02930     0x50000000,  // 68 
02931     0x00660000,  // 69 
02932     0x77777077,  // 70 
02933     0x25576663,  // 71 
02934     0x66667766,  // 72 
02935     0x22222227,  // 73 
02936     0x11111122,  // 74 
02937     0x77555556,  // 75 
02938     0x77655222,  // 76 
02939     0x55555550,  // 77 
02940     0x55577110,  // 78 
02941     0x55555556,  // 79 
02942     0x55556555,  // 80 
02943     0x55500000,  // 81 
02944     0x77222277,  // 82 
02945     0x77777722,  // 83 
02946     0x57777777,  // 84 
02947     0x00000555,  // 85 
02948     0x00000077,  // 86 
02949     0x51555155,  // 87 
02950     0x55551555,  // 88 
02951     0x11111555,  // 89 
02952     0x66665555,  // 90 
02953     0x55555000,  // 91 
02954     0x51500000,  // 92 
02955     0x55555575,  // 93 
02956     0x05055555,  // 94 
02957     0x55055055,  // 95 
02958     0x66555555,  // 96 
02959     0x55555500,  // 97 
02960     0x00775555,  // 98 
02961     0x00000066,  // 99 
02962     0x00001111,  // 100 
02963     0x66660666,  // 101 
02964     0x07776766,  // 102 
02965     0x00006676,  // 103 
02966     0x40055555,  // 104 
02967     0x66676660,  // 105 
02968     0x66667666,  // 106 
02969     0x67776622,  // 107 
02970     0x67666555,  // 108 
02971     0x55555557,  // 109 
02972     0x67676555,  // 110 
02973     0x55666666,  // 111 
02974     0x00055500,  // 112 
02975     0x00774440,  // 113 
02976     0x55505555,  // 114 
02977     0x50550555,  // 115 
02978     0x20000766,  // 116 
02979     0x70002222,  // 117 
02980     0x77777772,  // 118 
02981     0x00000277,  // 119 
02982     0x00002222,  // 120 
02983     0x55555525,  // 121 
02984     0x00000255,  // 122 
02985     0x60555555,  // 123 
02986     0x00222226,  // 124 
02987     0x00000022,  // 125 
02988     0x55555505,  // 126 
02989     0x50555555,  // 127 
02990     0x50050005,  // 128 
02991     0x22555555,  // 129 
02992     0x60000022,  // 130 
02993     0x01101115,  // 131 
02994     0x11110000,  // 132 
02995     0x10000111,  // 133 
02996     0x00000006,  // 134 
02997     0x00000222,  // 135 
02998     0x77777700,  // 136 
02999     0x11177777,  // 137 
03000     0x11177711,  // 138 
03001     0x44444111,  // 139 
03002     0x11111444,  // 140 
03003     0x11177111,  // 141 
03004     0x77771111,  // 142 
03005     0x77111177,  // 143 
03006     0x00711177,  // 144 
03007     0x05500500,  // 145 
03008     0x55055550,  // 146 
03009     0x55505055,  // 147 
03010     0x55500555,  // 148 
03011     0x05555055,  // 149 
03012     0x55557555,  // 150 
03013     0x55755555,  // 151 
03014     0x75555555,  // 152 
03015     0x22005555,  // 153 
03016 }; 
03017 
03018 static PRUint8 GetCat(PRUint32 u)
03019 {
03020     PRUint32 pat;
03021     //
03022     //  Handle block which use index table mapping    
03023     //
03024     // Handle U+000000 to U+0007FF
03025     if(0x000000 <= u && u <= 0x0007FF) {
03026         pat = gGenCatPatPl0[gGenCatIdx1 [( u - 0x000000 ) / 8]];
03027         return (pat  >> ((u % 8) * 4)) & 0x0F;
03028     }
03029 
03030     // Handle U+000900 to U+001B7F
03031     if(0x000900 <= u && u <= 0x001B7F) {
03032         pat = gGenCatPatPl0[gGenCatIdx2 [( u - 0x000900 ) / 8]];
03033         return (pat  >> ((u % 8) * 4)) & 0x0F;
03034     }
03035 
03036     // Handle U+001D00 to U+0033FF
03037     if(0x001D00 <= u && u <= 0x0033FF) {
03038         pat = gGenCatPatPl1[gGenCatIdx3 [( u - 0x001D00 ) / 8]];
03039         return (pat  >> ((u % 8) * 4)) & 0x0F;
03040     }
03041 
03042     // Handle U+004DC0 to U+004DFF
03043     if(0x004DC0 <= u && u <= 0x004DFF) {
03044         pat = gGenCatPatPl1[gGenCatIdx4 [( u - 0x004DC0 ) / 8]];
03045         return (pat  >> ((u % 8) * 4)) & 0x0F;
03046     }
03047 
03048     // Handle U+00A000 to U+00A87F
03049     if(0x00A000 <= u && u <= 0x00A87F) {
03050         pat = gGenCatPatPl1[gGenCatIdx5 [( u - 0x00A000 ) / 8]];
03051         return (pat  >> ((u % 8) * 4)) & 0x0F;
03052     }
03053 
03054     // Handle U+00FB00 to U+00FFFF
03055     if(0x00FB00 <= u && u <= 0x00FFFF) {
03056         pat = gGenCatPatPl1[gGenCatIdx6 [( u - 0x00FB00 ) / 8]];
03057         return (pat  >> ((u % 8) * 4)) & 0x0F;
03058     }
03059 
03060     // Handle U+010000 to U+0104AF
03061     if(0x010000 <= u && u <= 0x0104AF) {
03062         pat = gGenCatPatPl1[gGenCatIdx7 [( u - 0x010000 ) / 8]];
03063         return (pat  >> ((u % 8) * 4)) & 0x0F;
03064     }
03065 
03066     // Handle U+010800 to U+01083F
03067     if(0x010800 <= u && u <= 0x01083F) {
03068         pat = gGenCatPatPl1[gGenCatIdx8 [( u - 0x010800 ) / 8]];
03069         return (pat  >> ((u % 8) * 4)) & 0x0F;
03070     }
03071 
03072     // Handle U+010900 to U+01091F
03073     if(0x010900 <= u && u <= 0x01091F) {
03074         pat = gGenCatPatPl1[gGenCatIdx9 [( u - 0x010900 ) / 8]];
03075         return (pat  >> ((u % 8) * 4)) & 0x0F;
03076     }
03077 
03078     // Handle U+010A00 to U+010A5F
03079     if(0x010A00 <= u && u <= 0x010A5F) {
03080         pat = gGenCatPatPl1[gGenCatIdx10 [( u - 0x010A00 ) / 8]];
03081         return (pat  >> ((u % 8) * 4)) & 0x0F;
03082     }
03083 
03084     // Handle U+012000 to U+01247F
03085     if(0x012000 <= u && u <= 0x01247F) {
03086         pat = gGenCatPatPl1[gGenCatIdx11 [( u - 0x012000 ) / 8]];
03087         return (pat  >> ((u % 8) * 4)) & 0x0F;
03088     }
03089 
03090     // Handle U+01D000 to U+01D7FF
03091     if(0x01D000 <= u && u <= 0x01D7FF) {
03092         pat = gGenCatPatPl1[gGenCatIdx12 [( u - 0x01D000 ) / 8]];
03093         return (pat  >> ((u % 8) * 4)) & 0x0F;
03094     }
03095 
03096     //
03097     //  Handle blocks which share the same category 
03098     //
03099     // Handle CJK Ideograph Extension A block 
03100     if(0x3400 <= u && u <= 0x4DB5) 
03101         return 5; 
03102 
03103     // Handle CJK Ideograph block 
03104     if(0x4E00 <= u && u <= 0x9FBB) 
03105         return 5; 
03106 
03107     // Handle Hangul Syllable block 
03108     if(0xAC00 <= u && u <= 0xD7A3) 
03109         return 5; 
03110 
03111     // Handle Non Private Use High Surrogate block 
03112     if(0xD800 <= u && u <= 0xDB7F) 
03113         return 4; 
03114 
03115     // Handle Private Use High Surrogate block 
03116     if(0xDB80 <= u && u <= 0xDBFF) 
03117         return 4; 
03118 
03119     // Handle Low Surrogate block 
03120     if(0xDC00 <= u && u <= 0xDFFF) 
03121         return 4; 
03122 
03123     // Handle Private Use block 
03124     if(0xE000 <= u && u <= 0xF8FF) 
03125         return 4; 
03126 
03127     // Handle CJK Compatibility #1 block 
03128     if(0xF900 <= u && u <= 0xFA2D) 
03129         return 5; 
03130 
03131     // Handle CJK Compatibility #2 block 
03132     if(0xFA30 <= u && u <= 0xFA6A) 
03133         return 5; 
03134 
03135     // Handle CJK Compatibility #3 block 
03136     if(0xFA70 <= u && u <= 0xFAD9) 
03137         return 5; 
03138 
03139     // Handle CJK Ideograph Extension B block 
03140     if(0x20000 <= u && u <= 0x2A6D6) 
03141         return 5; 
03142 
03143     // Handle CJK Compatibility #4 block 
03144     if(0x2F800 <= u && u <= 0x2FA1D) 
03145         return 5; 
03146 
03147     // Handle Plane 15 Private Use block 
03148     if(0xF0000 <= u && u <= 0xFFFFD) 
03149         return 4; 
03150 
03151     // Handle Plane 16 Private Use block 
03152     if(0x100000 <= u && u <= 0x10FFFD) 
03153         return 4; 
03154 
03155     return 0; // UNDEFINE 
03156 }
03157 // total data size = 3938