From e50b9ae71134a23820e8f50589649e629a6143ba Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Mon, 8 Jul 2002 07:31:53 +0000 Subject: [PATCH] Update iso639-2 language coverage info, fix Georgian orthography to eliminate Mingrelian and Svan glyphs, use coverage for inclusion and OS/2 for Han exclusion, restructure fclang.c to use fclang.h from fc-lang dir --- fc-lang/Imakefile | 8 +- fc-lang/fclang.h | 2624 ++++++++++++++++++++++++++++++++++++++++ fc-lang/fclang.tmpl.c | 130 -- fc-lang/fclang.tmpl.h | 25 + fc-lang/iso639-2 | 30 +- fc-lang/ka.orth | 5 +- fc-lang/zh_mo.orth | 27 + fc-lang/zh_sg.orth | 27 + src/fcfreetype.c | 238 +--- src/fcint.h | 9 +- src/fclang.c | 2632 +---------------------------------------- 11 files changed, 2794 insertions(+), 2961 deletions(-) create mode 100644 fc-lang/fclang.h delete mode 100644 fc-lang/fclang.tmpl.c create mode 100644 fc-lang/fclang.tmpl.h create mode 100644 fc-lang/zh_mo.orth create mode 100644 fc-lang/zh_sg.orth diff --git a/fc-lang/Imakefile b/fc-lang/Imakefile index 0831991..9ae4a27 100644 --- a/fc-lang/Imakefile +++ b/fc-lang/Imakefile @@ -1,4 +1,4 @@ -XCOMM $XFree86: xc/lib/fontconfig/fc-lang/Imakefile,v 1.3 2002/07/07 19:18:51 keithp Exp $ +XCOMM $XFree86: xc/lib/fontconfig/fc-lang/Imakefile,v 1.4 2002/07/07 19:30:52 keithp Exp $ #ifdef UseInstalled /* building outside the tree, use private defines */ @@ -13,8 +13,8 @@ LOCAL_LIBRARIES=FontconfigClientLibs SRCS=fc-lang.c OBJS=fc-lang.o -TARG=fclang.c -TMPL=fclang.tmpl.c +TARG=fclang.h +TMPL=fclang.tmpl.h # # Basic ISO 639-1 two letter language names @@ -26,7 +26,7 @@ ORTH1=ab.orth ar.orth az.orth ba.orth be.orth bg.orth bn.orth bo.orth br.orth\ mk.orth ml.orth mn.orth mo.orth mt.orth nl.orth no.orth oc.orth or.orth\ pl.orth pt.orth rm.orth ro.orth ru.orth sh.orth si.orth sk.orth sl.orth\ sq.orth sr.orth sv.orth ta.orth te.orth th.orth tl.orth tr.orth uk.orth\ - vo.orth wa.orth yi.orth zh_cn.orth zh_tw.orth + vo.orth wa.orth yi.orth zh_cn.orth zh_mo.orth zh_sg.orth zh_tw.orth # # ISO 639-2 adds many more three letter language names diff --git a/fc-lang/fclang.h b/fc-lang/fclang.h new file mode 100644 index 0000000..01c199f --- /dev/null +++ b/fc-lang/fclang.h @@ -0,0 +1,2624 @@ +/* + * $XFree86: xc/lib/fontconfig/fc-lang/fclang.tmpl.h,v 1.1 2002/07/06 23:21:36 keithp Exp $ + * + * Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc. + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of Keith Packard not be used in + * advertising or publicity pertaining to distribution of the software without + * specific, written prior permission. Keith Packard makes no + * representations about the suitability of this software for any purpose. It + * is provided "as is" without express or implied warranty. + * + * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +/* total size: 662 unique leaves: 436 */ + +static const FcCharLeaf leaves[436] = { + { { /* 0 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x08000800, 0x00000000, 0x00000000, + } }, + { { /* 1 */ + 0xffff8002, 0xffffffff, 0x8002ffff, 0x00000000, + 0xc0000000, 0xf0fc33c0, 0x03000000, 0x00000000, + } }, + { { /* 2 */ + 0x88001000, 0x07fffffe, 0x0007ffff, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 3 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x10400090, 0x10400090, + } }, + { { /* 4 */ + 0xc0000000, 0x00030000, 0xc0000000, 0x00000000, + 0x00008000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 5 */ + 0x00000000, 0x00000000, 0x02000000, 0x00000000, + 0x00000000, 0x10000000, 0x00000000, 0x00000000, + } }, + { { /* 6 */ + 0xffff0100, 0xffffffff, 0x0100ffff, 0x00000000, + 0x300c0000, 0x0f00c000, 0x03000000, 0x00000300, + } }, + { { /* 7 */ + 0xffff0002, 0xffffffff, 0x0002ffff, 0x00000000, + 0x030c0000, 0x0000cc0f, 0x03000000, 0x00000300, + } }, + { { /* 8 */ + 0xffff4042, 0xffffffff, 0x4042ffff, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 9 */ + 0xffff0001, 0xffffd7ff, 0x2001d7ff, 0x00000c0c, + 0x00000000, 0x00002000, 0x00000000, 0x00000000, + } }, + { { /* 10 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xfff99fee, 0xd3c5fdff, 0xb080399f, 0x07ffffcf, + } }, + { { /* 11 */ + 0xffffffff, 0xffffffff, 0xfffffeff, 0xfffe07ff, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 12 */ + 0x00000000, 0x00000080, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000800, 0x12020404, 0x12020404, + } }, + { { /* 13 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00800000, 0x140ca381, 0x140ca381, + } }, + { { /* 14 */ + 0x00000000, 0x80000000, 0x00000001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 15 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000800, 0x0a12cf45, 0x8a12cf45, + } }, + { { /* 16 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x34482212, 0x34482212, + } }, + { { /* 17 */ + 0x0c00f000, 0x00000000, 0x03000180, 0x6000c033, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 18 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000800, 0x75592ff7, 0x75592ff7, + } }, + { { /* 19 */ + 0x00000000, 0x00000000, 0x000c0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xfc000000, + } }, + { { /* 20 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000800, 0x90400010, 0x10400010, + } }, + { { /* 21 */ + 0x00000000, 0x00000000, 0x00000000, 0x44300000, + 0xffffd7f0, 0xfffffffb, 0xfc807fff, 0x00000003, + } }, + { { /* 22 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x8fd38f81, 0x00520000, + } }, + { { /* 23 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 24 */ + 0x30000300, 0x00300030, 0x30000000, 0x00003000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 25 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x80000002, 0x140a2202, 0x140a2202, + } }, + { { /* 26 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x10600010, 0x10600010, + } }, + { { /* 27 */ + 0x00000000, 0x00000000, 0x00000000, 0x60000003, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 28 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x10020000, 0x10020000, + } }, + { { /* 29 */ + 0x00000000, 0x00000000, 0x00300000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 30 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000000, 0x10600070, 0x10600070, + } }, + { { /* 31 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x35492072, 0x35492072, + } }, + { { /* 32 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x060c3383, 0x060c3383, + } }, + { { /* 33 */ + 0x00000c00, 0x00000003, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 34 */ + 0x00000000, 0x00000000, 0x00000000, 0x10000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 35 */ + 0xc0000c0c, 0x00000000, 0x00c00003, 0x00000c03, + 0x08000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 36 */ + 0x00000000, 0x00000000, 0x00000400, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 37 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x020c1381, 0x020c1381, + } }, + { { /* 38 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x88000802, 0x140a2202, 0x140a2202, + } }, + { { /* 39 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xfffbafee, 0xf3edfdff, 0x00013bbf, 0x0000ffc1, + } }, + { { /* 40 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xffff0000, 0x000007ff, + } }, + { { /* 41 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x02041101, 0x02041101, + } }, + { { /* 42 */ + 0x000330c0, 0x00000000, 0x00000000, 0x60000003, + 0x00000000, 0x00000000, 0x00001ff0, 0x003e0000, + } }, + { { /* 43 */ + 0x00ffffff, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 44 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x14482203, 0x14482203, + } }, + { { /* 45 */ + 0x00000000, 0x00000000, 0x00030000, 0x00030000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 46 */ + 0x00000000, 0xfffe0000, 0xfc7fffff, 0xfffffffe, + 0x0000067f, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 47 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x75092a72, 0x75092272, + } }, + { { /* 48 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x060cb301, 0x060cb300, + } }, + { { /* 49 */ + 0x000000e7, 0x00000000, 0xfffffffe, 0xffffffff, + 0x780fffff, 0xfffffffe, 0xffffffff, 0x787fffff, + } }, + { { /* 50 */ + 0x43f36f8b, 0x9b462442, 0xe3e0e82c, 0x400a0004, + 0xdb365f65, 0x04497977, 0xe3f0ecd7, 0x08c56038, + } }, + { { /* 51 */ + 0x3403e602, 0x35518000, 0x7eabe0c8, 0x98698200, + 0x2942a948, 0x8060e803, 0xad93441c, 0x4568c03a, + } }, + { { /* 52 */ + 0x8656aa60, 0x02403f7a, 0x14618388, 0x21741020, + 0x07022021, 0x40bc3000, 0x4462a624, 0x0a2060a8, + } }, + { { /* 53 */ + 0x85740217, 0x9c840402, 0x14157bfb, 0x11e27f24, + 0x02efb665, 0x20ff1f75, 0x38403a70, 0x676326c3, + } }, + { { /* 54 */ + 0x20924dd9, 0x0fc946b0, 0x4850bc98, 0xa03f8638, + 0x88162388, 0x52323e09, 0xe3a422aa, 0xc72c00dd, + } }, + { { /* 55 */ + 0x26e1a166, 0x8f0a840b, 0x559e27eb, 0x89bbc241, + 0x85400014, 0x08496361, 0x8ad07f0c, 0x05cfff3e, + } }, + { { /* 56 */ + 0xa803ff1a, 0x7b407a41, 0x80024745, 0x38eb0500, + 0x0005d851, 0x710c9934, 0x01000397, 0x24046366, + } }, + { { /* 57 */ + 0x005180d0, 0x430ac000, 0x30c89071, 0x58000008, + 0xf7000e99, 0x00415f80, 0x941000b0, 0x62800018, + } }, + { { /* 58 */ + 0x09d00240, 0x01568200, 0x08015004, 0x05101d10, + 0x001084c1, 0x10504025, 0x4d8a410f, 0xa60d4009, + } }, + { { /* 59 */ + 0x914cab19, 0x098121c0, 0x0003c485, 0x80000652, + 0x00080b04, 0x0009041d, 0x905c4849, 0x16900009, + } }, + { { /* 60 */ + 0x22200c65, 0x24338412, 0x47960c03, 0x42250a04, + 0x90880028, 0x4f084900, 0xd3aa14a2, 0x3e87d830, + } }, + { { /* 61 */ + 0x1f618604, 0x41867ea4, 0x05b3c390, 0x211857a5, + 0x2a48241e, 0x4a041128, 0x161b0a40, 0x88400d60, + } }, + { { /* 62 */ + 0x9502020a, 0x10608221, 0x04000243, 0x80001444, + 0x0c040000, 0x70000000, 0x00c11a06, 0x0c00024a, + } }, + { { /* 63 */ + 0x00401a00, 0x40451404, 0xbdb30029, 0x052b0a78, + 0xbfa0bba9, 0x8379407c, 0xe81d12fc, 0xc5694bf6, + } }, + { { /* 64 */ + 0x044aeff6, 0xff022115, 0x402bed63, 0x0242d033, + 0x00131000, 0x59ca1b02, 0x020000a0, 0x2c41a703, + } }, + { { /* 65 */ + 0x8ff24880, 0x00000204, 0x10055800, 0x00489200, + 0x20011894, 0x34805004, 0x684c3200, 0x68be49ea, + } }, + { { /* 66 */ + 0x2e42184c, 0x21c9a820, 0x80b050b9, 0xff7c001e, + 0x14e0849a, 0x01e028c1, 0xac49870e, 0xdddb130f, + } }, + { { /* 67 */ + 0x89fbbe1a, 0x51a2a2e0, 0x32ca5502, 0x928b3e46, + 0x438f1dbf, 0x32186703, 0x33c03028, 0xa9230811, + } }, + { { /* 68 */ + 0x3a65c000, 0x04028fe3, 0x86252c4e, 0x00a1bf3d, + 0x8cd43a1a, 0x317c06c9, 0x950a00e0, 0x0edb018b, + } }, + { { /* 69 */ + 0x8c20e34b, 0xf0101182, 0xa7287d94, 0x40fbc9ac, + 0x06534484, 0x44445a90, 0x00013fc8, 0xf5d40048, + } }, + { { /* 70 */ + 0xec577701, 0x891dc442, 0x49286b83, 0xd2424109, + 0x59fe061d, 0x3a221800, 0x3b9fb7e4, 0xc0eaf003, + } }, + { { /* 71 */ + 0x82021386, 0xe4008980, 0x10a1b200, 0x0cc44b80, + 0x8944d309, 0x48341faf, 0x0c458259, 0x0450420a, + } }, + { { /* 72 */ + 0x10c8a040, 0x44503140, 0x01004004, 0x05408280, + 0x442c0108, 0x1a056a30, 0x051420a6, 0x645690cf, + } }, + { { /* 73 */ + 0x31000021, 0xcbf09c18, 0x63e2a120, 0x01b5104c, + 0x9a83538c, 0x3281b8b2, 0x0a84987a, 0x0c0233e7, + } }, + { { /* 74 */ + 0x9018d4cc, 0x9070a1a1, 0xe0048a1e, 0x0451c3d4, + 0x21c2439a, 0x53104844, 0x36400292, 0xf3bd0241, + } }, + { { /* 75 */ + 0xe8f0ab09, 0xa5d27dc0, 0xd24bc242, 0xd0afa43f, + 0x34a11aa0, 0x03d88247, 0x651bc452, 0xc83ad294, + } }, + { { /* 76 */ + 0x40c8001c, 0x33140e06, 0xb21b614f, 0xc0d00088, + 0xa898a02a, 0x166ba1c5, 0x85b42e50, 0x0604c08b, + } }, + { { /* 77 */ + 0x1e04f933, 0xa251056e, 0x76380400, 0x73b8ec07, + 0x18324406, 0xc8164081, 0x63097c8a, 0xaa042980, + } }, + { { /* 78 */ + 0xca9c1c24, 0x27604e0e, 0x83000990, 0x81040046, + 0x10816011, 0x0908540d, 0xcc0a000e, 0x0c000500, + } }, + { { /* 79 */ + 0xa0440430, 0x6784008b, 0x8a195288, 0x8b18865e, + 0x41602e59, 0x9cbe8c10, 0x891c6861, 0x00089800, + } }, + { { /* 80 */ + 0x089a8100, 0x41900018, 0xe4a14007, 0x640d0505, + 0x0e4d310e, 0xff0a4806, 0x2aa81632, 0x000b852e, + } }, + { { /* 81 */ + 0xca841800, 0x696c0e20, 0x16000032, 0x03905658, + 0x1a285120, 0x11248000, 0x432618e1, 0x0eaa5d52, + } }, + { { /* 82 */ + 0xae280fa0, 0x4500fa7b, 0x89406408, 0xc044c880, + 0xb1419005, 0x24c48424, 0x603a1a34, 0xc1949000, + } }, + { { /* 83 */ + 0x003a8246, 0xc106180d, 0x99100022, 0x1511e050, + 0x00824057, 0x020a041a, 0x8930004f, 0x444ad813, + } }, + { { /* 84 */ + 0xed228a02, 0x400510c0, 0x01021000, 0x31018808, + 0x02044600, 0x0708f000, 0xa2008900, 0x22020000, + } }, + { { /* 85 */ + 0x16100200, 0x10400042, 0x02605200, 0x200052f4, + 0x82308510, 0x42021100, 0x80b54308, 0x9a2070e1, + } }, + { { /* 86 */ + 0x08012040, 0xfc653500, 0xab0419c1, 0x62140286, + 0x00440087, 0x02449085, 0x0a85405c, 0x33803207, + } }, + { { /* 87 */ + 0xb8c00400, 0xc0d0ce20, 0x0080c030, 0x0d250508, + 0x00400a90, 0x080c0200, 0x40006505, 0x41026421, + } }, + { { /* 88 */ + 0x00000268, 0x847c0024, 0xde200002, 0x40498619, + 0x40000808, 0x20010084, 0x10108400, 0x01c742cd, + } }, + { { /* 89 */ + 0xd52a7038, 0x1d8f1968, 0x3e12be50, 0x81d92ef5, + 0x2412cec4, 0x732e0828, 0x4b3424ac, 0xd41d020c, + } }, + { { /* 90 */ + 0x80002a02, 0x08110097, 0x114411c4, 0x7d451786, + 0x064949d9, 0x87914000, 0xd8c4254c, 0x491444ba, + } }, + { { /* 91 */ + 0xc8001b92, 0x15800271, 0x0c000081, 0xc200096a, + 0x40024800, 0xba493021, 0x1c802080, 0x1008e2ac, + } }, + { { /* 92 */ + 0x00341004, 0x841400e1, 0x20000020, 0x10149800, + 0x04aa70c2, 0x54208688, 0x04130c62, 0x20109180, + } }, + { { /* 93 */ + 0x02064082, 0x54001c40, 0xe4e90383, 0x84802125, + 0x2000e433, 0xe60944c0, 0x81260a03, 0x080112da, + } }, + { { /* 94 */ + 0x97906901, 0xf8864001, 0x0081e24d, 0xa6510a0e, + 0x81ec011a, 0x8441c600, 0xb62cadb8, 0x8741a46f, + } }, + { { /* 95 */ + 0x4b028d54, 0x02681161, 0x2057bb60, 0x043350a0, + 0xb7b4a8c0, 0x01122402, 0x20009ad3, 0x00c82271, + } }, + { { /* 96 */ + 0x809e2081, 0xe1800c8a, 0x8151b009, 0x40281031, + 0x89a52a0e, 0x620e69b6, 0xd1444425, 0x4d548085, + } }, + { { /* 97 */ + 0x1fb12c75, 0x862dd807, 0x4841d87c, 0x226e414e, + 0x9e088200, 0xed37f80c, 0x75268c80, 0x08149313, + } }, + { { /* 98 */ + 0xc8040e32, 0x6ea6484e, 0x66702c4a, 0xba0126c0, + 0x185dd30c, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 99 */ + 0x00000000, 0x05400000, 0x81337020, 0x03a54f81, + 0x641055ec, 0x2344c318, 0x00341462, 0x1a090a43, + } }, + { { /* 100 */ + 0x13a5187b, 0xa8480102, 0xc5440440, 0xe2dd8106, + 0x2d481af0, 0x0416b626, 0x6e405058, 0x31128032, + } }, + { { /* 101 */ + 0x0c0007e4, 0x420a8208, 0x803b4840, 0x87134860, + 0x3428850d, 0xe5290319, 0x870a2345, 0x5c1825a9, + } }, + { { /* 102 */ + 0xd9c577a6, 0x03e85e00, 0xa7000081, 0x41c6cd54, + 0xa2042800, 0x2b0ab860, 0xda9e0020, 0x0e1a08ea, + } }, + { { /* 103 */ + 0x11c0427c, 0x03768908, 0x01058621, 0x18a80000, + 0xc44846a0, 0x20220d05, 0x91485422, 0x28978a01, + } }, + { { /* 104 */ + 0x00087898, 0x31221605, 0x08804240, 0x06a2fa4e, + 0x92110814, 0x9b042002, 0x06432e52, 0x90105000, + } }, + { { /* 105 */ + 0x85ba0041, 0x20203042, 0x05a04f0b, 0x40802708, + 0x1a930591, 0x0600df50, 0x3021a202, 0x4e800630, + } }, + { { /* 106 */ + 0x04c80cc4, 0x8001a004, 0xd4316000, 0x0a020880, + 0x00281c00, 0x00418e18, 0xca106ad0, 0x4b00f210, + } }, + { { /* 107 */ + 0x1506274d, 0x88900220, 0x82a85a00, 0x81504549, + 0x80002004, 0x2c088804, 0x000508d1, 0x4ac48001, + } }, + { { /* 108 */ + 0x0062e020, 0x0a42008e, 0x6a8c3055, 0xe0a5090e, + 0x42c42906, 0x80b34814, 0xb330803e, 0x731c0102, + } }, + { { /* 109 */ + 0x600d1494, 0x09400c20, 0xc040301a, 0xc094a451, + 0x05c88dca, 0xa40c96c2, 0x34040001, 0x011000c8, + } }, + { { /* 110 */ + 0xa9c9550d, 0x1c5a2428, 0x48370142, 0x100f7a4d, + 0x452a32b4, 0x9205317b, 0x5c44b894, 0x458a68d7, + } }, + { { /* 111 */ + 0x2ed15097, 0x42081943, 0x9d40d202, 0x20979840, + 0x064d5409, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 112 */ + 0x00000000, 0x84800000, 0x04215542, 0x17001c06, + 0x61107624, 0xb9ddff87, 0x5c0a659f, 0x3c00245d, + } }, + { { /* 113 */ + 0x0059adb0, 0x00000000, 0x00000000, 0x009b28d0, + 0x02000422, 0x44080108, 0xac409804, 0x90288d0a, + } }, + { { /* 114 */ + 0xe0018700, 0x00310400, 0x82211794, 0x10540019, + 0x021a2cb2, 0x40039c02, 0x88043d60, 0x7900080c, + } }, + { { /* 115 */ + 0xba3c1628, 0xcb088640, 0x90807274, 0x0000001e, + 0xd8000000, 0x9c87e188, 0x04124034, 0x2791ae64, + } }, + { { /* 116 */ + 0xe6fbe86b, 0x5366408f, 0x537feea6, 0xb5e4e32b, + 0x0002869f, 0x01228548, 0x08004402, 0x20a02116, + } }, + { { /* 117 */ + 0x02040004, 0x00052000, 0x01547e00, 0x01ac162c, + 0x10852a84, 0x05308c14, 0xb943fbc3, 0x906000ca, + } }, + { { /* 118 */ + 0x40326000, 0x80901200, 0x4c810b30, 0x40020054, + 0x1d6a0029, 0x02802000, 0x00048000, 0x150c2610, + } }, + { { /* 119 */ + 0x07018040, 0x0c24d94d, 0x18502810, 0x50205001, + 0x04d01000, 0x02017080, 0x21c30108, 0x00000132, + } }, + { { /* 120 */ + 0x07190088, 0x05600802, 0x4c0e0012, 0xf0a10405, + 0x00000002, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 121 */ + 0x00000000, 0x00000000, 0x00000000, 0x00800000, + 0x035a8e8d, 0x5a0421bd, 0x11703488, 0x00000026, + } }, + { { /* 122 */ + 0x10000000, 0x8804c502, 0xf801b815, 0x25ed147c, + 0x1bb0ed60, 0x1bd70589, 0x1a627af3, 0x0ac50d0c, + } }, + { { /* 123 */ + 0x524ae5d1, 0x63050490, 0x52440354, 0x16122b57, + 0x1101a872, 0x00182949, 0x10080948, 0x886c6000, + } }, + { { /* 124 */ + 0x058f916e, 0x39903012, 0x4930f840, 0x001b8880, + 0x00000000, 0x00428500, 0x98000058, 0x7014ea04, + } }, + { { /* 125 */ + 0x611d1628, 0x60005113, 0x00a71a24, 0x00000000, + 0x03c00000, 0x10187120, 0xa9270172, 0x89066004, + } }, + { { /* 126 */ + 0x020cc022, 0x40810900, 0x8ca0202d, 0x00000e34, + 0x00000000, 0x11012100, 0xc11a8011, 0x0892ec4c, + } }, + { { /* 127 */ + 0x85000040, 0x1806c7ac, 0x0512e03e, 0x00108000, + 0x80ce4008, 0x02106d01, 0x08568641, 0x0027011e, + } }, + { { /* 128 */ + 0x083d3750, 0x4e05e032, 0x048401c0, 0x01400081, + 0x00000000, 0x00000000, 0x00000000, 0x00591aa0, + } }, + { { /* 129 */ + 0x882443c8, 0xc8001d48, 0x72030152, 0x04049013, + 0x04008280, 0x0d148a10, 0x02088056, 0x2704a040, + } }, + { { /* 130 */ + 0x4c000000, 0x00000000, 0x00000000, 0xa3200000, + 0xa0ae1902, 0xdf002660, 0x7b15f010, 0x3ad08121, + } }, + { { /* 131 */ + 0x00284180, 0x48001003, 0x8014cc00, 0x00c414cf, + 0x30202000, 0x00000001, 0x00000000, 0x00000000, + } }, + { { /* 132 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000020, + } }, + { { /* 133 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000200, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 134 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xffffffff, 0xffff003f, 0x087fffff, + } }, + { { /* 135 */ + 0xffff0042, 0xffffffff, 0x0042ffff, 0x00000000, + 0x0c0c0000, 0x0c00000c, 0x03000000, 0x00000300, + } }, + { { /* 136 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000800, 0x0d10646e, 0x0d10646e, + } }, + { { /* 137 */ + 0x00000000, 0x01000300, 0x00000000, 0x00000300, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 138 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xffffffff, 0xffffffff, 0x1fffffff, 0x000003ff, + } }, + { { /* 139 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xfffddfec, 0xc3effdff, 0x40603ddf, 0x0000ffc3, + } }, + { { /* 140 */ + 0x00000007, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 141 */ + 0x00000000, 0xfffe0000, 0xffffffff, 0xffffffff, + 0x00007fff, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 142 */ + 0x1fffffff, 0x00000000, 0x00000000, 0x8fffffff, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 143 */ + 0x43722f8b, 0x0b042000, 0xe340e82c, 0x40c82800, + 0x49375944, 0x04407976, 0xa3f02c93, 0x08c50038, + } }, + { { /* 144 */ + 0x0003ee02, 0x35508000, 0x1e23e1c8, 0xc4498200, + 0x2942ad5a, 0x8060c000, 0xa49a461c, 0x052ac003, + } }, + { { /* 145 */ + 0xd6462a44, 0x08003dda, 0x14208388, 0x01700020, + 0x03022021, 0x40ac3000, 0x44628620, 0x8a0020a0, + } }, + { { /* 146 */ + 0x80040253, 0x14840402, 0x10047bfb, 0x11e27fa4, + 0x00a42441, 0x20c01421, 0x70003a50, 0x27430002, + } }, + { { /* 147 */ + 0x208245c9, 0x0fc14630, 0x28503c88, 0xa0248602, + 0x88062388, 0x40000e19, 0xeb6422aa, 0xcd28001c, + } }, + { { /* 148 */ + 0x02e1a120, 0x8200840b, 0x549e279b, 0xa0b38141, + 0x85080010, 0x08002061, 0x08d02f08, 0x010fbe3e, + } }, + { { /* 149 */ + 0xa803f718, 0x5b080a41, 0x00020504, 0x382a0500, + 0x00015041, 0x21081910, 0x00000313, 0x04046122, + } }, + { { /* 150 */ + 0x100140d0, 0x40228000, 0x40488050, 0x10000008, + 0x370006d1, 0x00005e80, 0x941000a0, 0x60000018, + } }, + { { /* 151 */ + 0x00900240, 0x00548000, 0x00080000, 0x00100900, + 0x00000040, 0x10105020, 0x4c022400, 0x06010001, + } }, + { { /* 152 */ + 0x814c2918, 0x08012100, 0x00036485, 0x10214452, + 0x00080904, 0x0000000d, 0x80004988, 0x16910001, + } }, + { { /* 153 */ + 0x40000765, 0x04338492, 0x45928c00, 0x52200016, + 0xd0080228, 0x4c084300, 0xc32a40a2, 0x2e009810, + } }, + { { /* 154 */ + 0x16708000, 0x40826e84, 0x04b3c390, 0x21187c85, + 0x02c8041c, 0x4a001120, 0x361b0a48, 0x89005540, + } }, + { { /* 155 */ + 0x9902000a, 0x10400221, 0x04000242, 0x00000044, + 0x0c040000, 0x00000010, 0x00001216, 0x00000242, + } }, + { { /* 156 */ + 0x00401a20, 0x00000400, 0xb5b30009, 0x15230a18, + 0x1fe89ba0, 0x8379507c, 0xc09d10fd, 0x0560dbf6, + } }, + { { /* 157 */ + 0x0242ef92, 0xdf020110, 0x08226961, 0x02029035, + 0x00030000, 0x45aa1a02, 0x02000001, 0x28518101, + } }, + { { /* 158 */ + 0x02d26080, 0x00000280, 0x00011800, 0x00009200, + 0x20000880, 0x35000405, 0x60442000, 0x609e49e6, + } }, + { { /* 159 */ + 0x2a42104c, 0xa1482820, 0x802010b1, 0x7b9c000e, + 0x14a08490, 0x41e028c1, 0x8c490704, 0x0cc8100d, + } }, + { { /* 160 */ + 0x89ba8412, 0x142202c0, 0x0ac05500, 0x92833ec4, + 0x43871ca3, 0x22a04703, 0x03c03028, 0xa0200801, + } }, + { { /* 161 */ + 0x30448000, 0x000085a3, 0x2225200e, 0x0001b73c, + 0x8c503220, 0x315d0099, 0x940200a0, 0x0e4b0003, + } }, + { { /* 162 */ + 0x8c20e342, 0xd0910080, 0xa3281d94, 0x60c1499c, + 0x07134406, 0x44445a90, 0x00000f88, 0x95c40040, + } }, + { { /* 163 */ + 0x84477581, 0xc0534402, 0x01082b83, 0x92424000, + 0x09a60611, 0x32220800, 0x1bddb384, 0xc08af000, + } }, + { { /* 164 */ + 0x00020282, 0x6c008800, 0x00219200, 0x8c844180, + 0x09441308, 0x000007a7, 0x0c418051, 0x00d06002, + } }, + { { /* 165 */ + 0x10d0a000, 0x44003004, 0x01000000, 0x07008201, + 0x440e0100, 0x08056830, 0x051464b2, 0x441410e6, + } }, + { { /* 166 */ + 0x21000011, 0xcbc09c08, 0x40c2e120, 0x41b4304c, + 0x9a8310ac, 0x328198b2, 0x00849822, 0xbc123369, + } }, + { { /* 167 */ + 0xc03bd6c0, 0x0c53a1a1, 0xea008a1e, 0x05d8cbf0, + 0x21c34390, 0x4a1c4805, 0x324002d0, 0xd79d0041, + } }, + { { /* 168 */ + 0xe8b02b09, 0x24527dc0, 0xd04bc240, 0xc8aba000, + 0x34a98a80, 0x41c98000, 0x241f8010, 0x487b9200, + } }, + { { /* 169 */ + 0x00cc0000, 0x33008406, 0x001b410f, 0x80402000, + 0xa0988022, 0x006ba186, 0x85a42a30, 0x06044181, + } }, + { { /* 170 */ + 0x00046021, 0xa0010080, 0x46b80400, 0x03a0e90f, + 0x18200000, 0x081040a0, 0x0001380a, 0xa8000500, + } }, + { { /* 171 */ + 0xc28a0404, 0x2720000a, 0x830c0910, 0x00000802, + 0x10806211, 0x0808000c, 0x0c08000c, 0x08400000, + } }, + { { /* 172 */ + 0x00441410, 0x6404000b, 0x800150c0, 0x8984047e, + 0x41400658, 0x94a4c000, 0x09dca862, 0x00001800, + } }, + { { /* 173 */ + 0x000a8100, 0x41900008, 0xe4a14007, 0x64452501, + 0x0e7d11ee, 0xfb084800, 0x08a81616, 0x0009c92e, + } }, + { { /* 174 */ + 0x4a821800, 0x6b6406a0, 0x16000002, 0x83905648, + 0x002a73a0, 0x00248000, 0x470288f9, 0x0faa4d02, + } }, + { { /* 175 */ + 0x8e800000, 0x7554b87b, 0xd9402418, 0x040cc880, + 0xb0410000, 0x04428c24, 0x001a5a34, 0xc1108000, + } }, + { { /* 176 */ + 0x00328046, 0x8106180d, 0xcd920002, 0x74016014, + 0x00916112, 0x420ac098, 0x8420040f, 0x40029a13, + } }, + { { /* 177 */ + 0xfd228a62, 0x40808188, 0x21031000, 0x31010808, + 0x07044420, 0x0388b812, 0xa3008900, 0x22020000, + } }, + { { /* 178 */ + 0x46001210, 0x00410042, 0x52415680, 0x200052f0, + 0x82148610, 0x46021004, 0x8035430a, 0xd80060e0, + } }, + { { /* 179 */ + 0x08010041, 0x6c653400, 0xab0411c1, 0x22040286, + 0x00000003, 0x00009084, 0x02814015, 0x33000202, + } }, + { { /* 180 */ + 0x38400400, 0xc0c00e20, 0x00850030, 0x0d250500, + 0x81d04ad0, 0x020c2280, 0x6240b605, 0x62802679, + } }, + { { /* 181 */ + 0x080802ea, 0x8579dd67, 0xdea0081b, 0x40008735, + 0xd1000a8c, 0xa22505aa, 0x15108440, 0x0080404d, + } }, + { { /* 182 */ + 0x8d220012, 0x058f1968, 0x3a1a9080, 0x85618464, + 0x2002ccc0, 0x732e0820, 0x0b3420a4, 0x14150004, + } }, + { { /* 183 */ + 0x82002001, 0x08000057, 0x00445004, 0x79051212, + 0x000940d0, 0x84004000, 0xd844054c, 0x5114409a, + } }, + { { /* 184 */ + 0x40000b12, 0x15800201, 0x08002001, 0xc200084a, + 0x40020800, 0x98093020, 0x18800000, 0x0008e22c, + } }, + { { /* 185 */ + 0x00040004, 0x001410e0, 0x20008020, 0x10009800, + 0x00827082, 0x1c000288, 0x00014c22, 0x08209100, + } }, + { { /* 186 */ + 0x00404002, 0x44001c00, 0x7cc10383, 0x84002121, + 0x0002e002, 0xe20a44c0, 0x81260e03, 0x080002d0, + } }, + { { /* 187 */ + 0x96902921, 0xb8c24001, 0x00806241, 0xa6510a06, + 0x812c0112, 0x0400c600, 0xa2800cb0, 0x8640a429, + } }, + { { /* 188 */ + 0x4a028000, 0x02003041, 0x0057ba40, 0x20205001, + 0x24b08880, 0x01122002, 0x000402d3, 0x00000211, + } }, + { { /* 189 */ + 0x40040080, 0xe0000c82, 0x00003008, 0x00081011, + 0x81a40208, 0x420e40a0, 0xc0400400, 0x48000081, + } }, + { { /* 190 */ + 0x0f912df5, 0x0629d807, 0x4001007c, 0x824e4546, + 0x1008c000, 0xed363005, 0x65400c80, 0x0810930b, + } }, + { { /* 191 */ + 0xe8200600, 0x6082c80a, 0x403400ca, 0x12012e02, + 0x19489004, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 192 */ + 0x00000000, 0x05400000, 0x00311000, 0x02a54c00, + 0x44105520, 0x23040310, 0x80345422, 0x12010a03, + } }, + { { /* 193 */ + 0x01a1126b, 0xa0482000, 0x45400448, 0xe08d8000, + 0x28401af0, 0x04168626, 0x4c005018, 0x21120032, + } }, + { { /* 194 */ + 0x0d0005e4, 0x42008a08, 0x00334800, 0x87030860, + 0x34008501, 0xe4280109, 0x81002045, 0x5c1825a8, + } }, + { { /* 195 */ + 0xd80435a0, 0x02e01c02, 0x020000a1, 0x4146c050, + 0xa6046800, 0xbb8af260, 0xc8b60000, 0x600200e2, + } }, + { { /* 196 */ + 0x0080023e, 0x03728900, 0x00068681, 0x08880000, + 0x41404600, 0x20000e04, 0x10481622, 0x22178a00, + } }, + { { /* 197 */ + 0x00007418, 0x21021200, 0x08800200, 0x0420984a, + 0x12110000, 0x99040002, 0x04022a55, 0x10105000, + } }, + { { /* 198 */ + 0x459a0000, 0xa000b02a, 0x0208420a, 0x00002708, + 0x08128090, 0x04018740, 0x3020e202, 0x8c800630, + } }, + { { /* 199 */ + 0x04c004c4, 0x80002000, 0xd8314000, 0x02000080, + 0x00081400, 0x00000218, 0x8a100880, 0x40002010, + } }, + { { /* 200 */ + 0x1500010d, 0x00000000, 0x80a04000, 0x01500140, + 0x80002004, 0x04080004, 0x00000010, 0x4a049001, + } }, + { { /* 201 */ + 0x80000020, 0x0842000c, 0x2a8c3041, 0xc085090e, + 0x40c42906, 0x00100800, 0xb2308006, 0x21380102, + } }, + { { /* 202 */ + 0x030d0080, 0x09400420, 0x80000012, 0x80040410, + 0x004888ca, 0x24040602, 0x00040001, 0x01100008, + } }, + { { /* 203 */ + 0xa9c8550d, 0x0c522428, 0x48310000, 0x022f624d, + 0x412830a0, 0xd205057b, 0x1844a894, 0x45c26cc2, + } }, + { { /* 204 */ + 0x2ed14017, 0x02081901, 0x1500c202, 0x20919040, + 0x044d0401, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 205 */ + 0x00000000, 0x80800000, 0x04201542, 0x06000c02, + 0x60001404, 0xb9d99f87, 0x540a059f, 0x3810245d, + } }, + { { /* 206 */ + 0x004825b0, 0x00000000, 0x00000000, 0x00990850, + 0x02000420, 0x44080108, 0x28009840, 0x0008810a, + } }, + { { /* 207 */ + 0x40018400, 0x00210400, 0x82000794, 0x00500001, + 0x00002482, 0x00001c00, 0x80043c01, 0x49000800, + } }, + { { /* 208 */ + 0xf83c0228, 0xcb0886c0, 0xa0006230, 0x00000004, + 0x18000000, 0x0007a148, 0x00124024, 0x22852c40, + } }, + { { /* 209 */ + 0xe6b3a96f, 0x5126400f, 0x723b6c86, 0xb5a4e20b, + 0x0222859f, 0x0123854c, 0x40000402, 0x20202102, + } }, + { { /* 210 */ + 0x02240004, 0x00042080, 0x00047e00, 0x01a01604, + 0x10042a80, 0x0032d800, 0x3183fa81, 0x00200488, + } }, + { { /* 211 */ + 0x40872000, 0x84100000, 0x48800221, 0x00000074, + 0x114a0029, 0x02c80000, 0x00049000, 0x11000410, + } }, + { { /* 212 */ + 0xc5010010, 0x0000c957, 0x08102d00, 0x50204000, + 0x04501000, 0x00013088, 0x40020008, 0x00400012, + } }, + { { /* 213 */ + 0x01000010, 0x01200820, 0x08060010, 0xa0000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 214 */ + 0x00000000, 0x00000000, 0x00000000, 0x00800000, + 0x011e8a09, 0x18022138, 0x10700480, 0x00000006, + } }, + { { /* 215 */ + 0x10000000, 0x88044402, 0xf8013815, 0x21e9041c, + 0x1b306c60, 0x08820588, 0x1a607af3, 0x0ac5870c, + } }, + { { /* 216 */ + 0x524a00c1, 0x22050080, 0x50420114, 0x04902206, + 0x0000a800, 0x00002901, 0x10080840, 0x88480000, + } }, + { { /* 217 */ + 0x018f156f, 0x0b012000, 0x45107040, 0x000088a0, + 0x00000000, 0x00028100, 0x98000090, 0x7010e006, + } }, + { { /* 218 */ + 0x41091608, 0x00000101, 0x00963a20, 0x00000000, + 0x22400000, 0x021a7120, 0xa2270002, 0x80022000, + } }, + { { /* 219 */ + 0x0200c102, 0x00c10800, 0x8ca02029, 0x00000624, + 0x00000000, 0x01000100, 0x01180000, 0x00004020, + } }, + { { /* 220 */ + 0x04000000, 0x10020480, 0x0410803e, 0x00008000, + 0x80024000, 0x00004800, 0x00400200, 0x00000110, + } }, + { { /* 221 */ + 0x00252000, 0x08040020, 0x00800280, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x005802a0, + } }, + { { /* 222 */ + 0x08000200, 0x08000140, 0x20020000, 0x00041003, + 0x00000000, 0x00108200, 0x00800010, 0x07040000, + } }, + { { /* 223 */ + 0x44000000, 0x00000000, 0x00000000, 0xa2200000, + 0xa08c0000, 0x48300020, 0x59126008, 0x00100100, + } }, + { { /* 224 */ + 0x00084180, 0x08000001, 0x80044c00, 0x00801482, + 0x10212000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 225 */ + 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, + 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, + } }, + { { /* 226 */ + 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, + 0xffffffff, 0x0000000f, 0x00000000, 0x00000000, + } }, + { { /* 227 */ + 0x00000fff, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 228 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000040, + } }, + { { /* 229 */ + 0x000c0003, 0x00003c00, 0x0000f000, 0x00003c00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 230 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xfef02596, 0x3bffecae, 0x33ff3f5f, 0x00000000, + } }, + { { /* 231 */ + 0x000033f0, 0x0000c000, 0x00000000, 0x600c0c03, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 232 */ + 0x000c3003, 0x18c00c0c, 0x00c03060, 0x60000c03, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 233 */ + 0xfdffb729, 0x000001ff, 0xb7290000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 234 */ + 0xfffddfec, 0xc3fffdff, 0x00803dcf, 0x0000ffc3, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 235 */ + 0x03ff07ff, 0xffffffff, 0xffffffff, 0x00ffffff, + 0xffffffff, 0x000003ff, 0x00000000, 0x00000000, + } }, + { { /* 236 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x00004004, 0x00004004, + } }, + { { /* 237 */ + 0x0000000c, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 238 */ + 0x0f000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 239 */ + 0xffff0002, 0xffffffff, 0x0002ffff, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 240 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x0e1c7707, 0x0e1c7707, + } }, + { { /* 241 */ + 0x00000c00, 0x000000c3, 0x00000000, 0x18000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 242 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x10000000, 0x00000000, 0x00000000, + } }, + { { /* 243 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x10408810, 0x10408810, + } }, + { { /* 244 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000800, 0x115c0ff7, 0x115c0ff7, + } }, + { { /* 245 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x000cab83, 0x0004ab83, + } }, + { { /* 246 */ + 0xfff99fee, 0xf3cdfdff, 0xb0c0398f, 0x0001ffc3, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 247 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x00080000, 0x00080000, + } }, + { { /* 248 */ + 0x030000f0, 0x00000000, 0x0c00001e, 0x1e000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 249 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000000, 0x1438268f, 0x1438268f, + } }, + { { /* 250 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x02045301, 0x02045301, + } }, + { { /* 251 */ + 0xffff0042, 0xffffffff, 0x0042ffff, 0x003c000c, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 252 */ + 0xfdff8f04, 0xfdff01ff, 0x8f0401ff, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 253 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xfc7fffec, 0x2ffbffff, 0xff5f847f, 0x001c0000, + } }, + { { /* 254 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x34582212, 0x34582212, + } }, + { { /* 255 */ + 0x0000f000, 0x66000000, 0x00330180, 0x60030033, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 256 */ + 0x000330c0, 0x00000000, 0x00000000, 0x60000003, + 0x00000000, 0x00000000, 0x00001b60, 0x003c0000, + } }, + { { /* 257 */ + 0x00009e2c, 0x00000000, 0x9e2c0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 258 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x00000880, 0x00000880, + } }, + { { /* 259 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x08000000, 0x3fdfffff, 0x3f5fffff, + } }, + { { /* 260 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xd63dc7ec, 0xc3bfc718, 0x00803dc7, 0x0007ff80, + } }, + { { /* 261 */ + 0xfffddfee, 0xc3effdff, 0x00603ddf, 0x0000ffc3, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 262 */ + 0xfffffffe, 0x87ffffff, 0x0fffffff, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 263 */ + 0x001fdfff, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 264 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00800000, 0x18400004, 0x18400084, + } }, + { { /* 265 */ + 0xc0000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 266 */ + 0xffff00d2, 0xffffffff, 0x00d2ffff, 0x00000000, + 0x00030000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 267 */ + 0x00000000, 0x00000000, 0x077dfffe, 0x077dfffe, + 0x00000000, 0x00000000, 0x10400010, 0x10400010, + } }, + { { /* 268 */ + 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, + 0x00000000, 0x00000000, 0x081047a4, 0x081047a4, + } }, + { { /* 269 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000280, 0x00000000, + } }, + { { /* 270 */ + 0x7f7b7f8b, 0xef553db4, 0xf35dfba8, 0x400b0243, + 0x8d3efb40, 0x8c2c7bf7, 0xe3fa6eff, 0xa8ed1d3a, + } }, + { { /* 271 */ + 0xcf83e602, 0x35558cf5, 0xffabe048, 0xd85992b9, + 0x2892ab18, 0x8020d7e9, 0xf583c438, 0x450ae74a, + } }, + { { /* 272 */ + 0x9714b000, 0x54007762, 0x1420d188, 0xc8c01020, + 0x00002121, 0x0c0413a8, 0x04408000, 0x082870c0, + } }, + { { /* 273 */ + 0x000408c0, 0x80000002, 0x14722b7b, 0x3bfb7924, + 0x1ae43327, 0x38ef9835, 0x28029ad1, 0xbf69a813, + } }, + { { /* 274 */ + 0x2fc665cf, 0xafc96b11, 0x5053340f, 0xa00486a2, + 0xe8090106, 0xc00e3f0f, 0x81450a88, 0xc6010010, + } }, + { { /* 275 */ + 0x26e1a161, 0xce00444b, 0xd4eec7aa, 0x85bbcadf, + 0xa5203a74, 0x8840436c, 0x8bd23f06, 0x3befff79, + } }, + { { /* 276 */ + 0xe8eff75a, 0x5b36fbcb, 0x1bfd0d49, 0x39ee0154, + 0x2e75d855, 0xa91abfd8, 0xf6bff3d7, 0xb40c67e0, + } }, + { { /* 277 */ + 0x081382c2, 0xd08bd49d, 0x1061065a, 0x59e074f2, + 0xb3128f9f, 0x6aaa0080, 0xb05e3230, 0x60ac9d7a, + } }, + { { /* 278 */ + 0xc900d303, 0x8a563098, 0x13907000, 0x18421f14, + 0x0008c060, 0x10808008, 0xec900400, 0xe6332817, + } }, + { { /* 279 */ + 0x90000758, 0x4e09f708, 0xfc83f485, 0x18c8af53, + 0x080c187c, 0x01146adf, 0xa734c80c, 0x2710a011, + } }, + { { /* 280 */ + 0x422228c5, 0x00210413, 0x41123010, 0x40001820, + 0xc60c022b, 0x10000300, 0x00220022, 0x02495810, + } }, + { { /* 281 */ + 0x9670a094, 0x1792eeb0, 0x05f2cb96, 0x23580025, + 0x42cc25de, 0x4a04cf38, 0x359f0c40, 0x8a001128, + } }, + { { /* 282 */ + 0x910a13fa, 0x10560229, 0x04200641, 0x84f00484, + 0x0c040000, 0x412c0400, 0x11541206, 0x00020a4b, + } }, + { { /* 283 */ + 0x00c00200, 0x00940000, 0xbfbb0001, 0x242b167c, + 0x7fa89bbb, 0xe3790c7f, 0xe00d10f4, 0x9f014132, + } }, + { { /* 284 */ + 0x35728652, 0xff1210b4, 0x4223cf27, 0x8602c06b, + 0x1fd33106, 0xa1aa3a0c, 0x02040812, 0x08012572, + } }, + { { /* 285 */ + 0x485040cc, 0x601062d0, 0x29001c80, 0x00109a00, + 0x22000004, 0x00800000, 0x68002020, 0x609ecbe6, + } }, + { { /* 286 */ + 0x3f73916e, 0x398260c0, 0x48301034, 0xbd5c0006, + 0xd6fb8cd1, 0x43e820e1, 0x084e0600, 0xc4d00500, + } }, + { { /* 287 */ + 0x89aa8d1f, 0x1602a6e1, 0x21ed0001, 0x1a8b3656, + 0x13a51fb7, 0x30a06502, 0x23c7b278, 0xe9226c93, + } }, + { { /* 288 */ + 0x3a74e47f, 0x98208fe3, 0x2625280e, 0xbf49bf9c, + 0xac543218, 0x1916b949, 0xb5220c60, 0x0659fbc1, + } }, + { { /* 289 */ + 0x8420e343, 0x800008d9, 0x20225500, 0x00a10184, + 0x20104800, 0x40801380, 0x00160d04, 0x80200040, + } }, + { { /* 290 */ + 0x8de7fd40, 0xe0985436, 0x091e7b8b, 0xd249fec8, + 0x8dee0611, 0xba221937, 0x9fdd77f4, 0xf0daf3ec, + } }, + { { /* 291 */ + 0xec424386, 0x26048d3f, 0xc021fa6c, 0x0cc2628e, + 0x0145d785, 0x559977ad, 0x4045e250, 0xa154260b, + } }, + { { /* 292 */ + 0x58199827, 0xa4103443, 0x411405f2, 0x07002280, + 0x426600b4, 0x15a17210, 0x41856025, 0x00000054, + } }, + { { /* 293 */ + 0x01040201, 0xcb70c820, 0x6a629320, 0x0095184c, + 0x9a8b1880, 0x3201aab2, 0x00c4d87a, 0x04c3f3e5, + } }, + { { /* 294 */ + 0xa238d44d, 0x5072a1a1, 0x84fc980a, 0x44d1c152, + 0x20c21094, 0x42104180, 0x3a000000, 0xd29d0240, + } }, + { { /* 295 */ + 0xa8b12f01, 0x2432bd40, 0xd04bd34d, 0xd0ada723, + 0x75a10a92, 0x01e9adac, 0x771f801a, 0xa01b9225, + } }, + { { /* 296 */ + 0x20cadfa1, 0x738c0602, 0x003b577f, 0x00d00bff, + 0x0088806a, 0x0029a1c4, 0x05242a05, 0x16234009, + } }, + { { /* 297 */ + 0x80056822, 0xa2112011, 0x64900004, 0x13824849, + 0x193023d5, 0x08922980, 0x88115402, 0xa0042001, + } }, + { { /* 298 */ + 0x81800400, 0x60228502, 0x0b010090, 0x12020022, + 0x00834011, 0x00001a01, 0x00000000, 0x00000000, + } }, + { { /* 299 */ + 0x00000000, 0x4684009f, 0x020012c8, 0x1a0004fc, + 0x0c4c2ede, 0x80b80402, 0x0afca826, 0x22288c02, + } }, + { { /* 300 */ + 0x8f7ba0e0, 0x2135c7d6, 0xf8b106c7, 0x62550713, + 0x8a19936e, 0xfb0e6efa, 0x48f91630, 0x7debcd2f, + } }, + { { /* 301 */ + 0x4e845892, 0x7a2e4ca0, 0x561eedea, 0x1190c649, + 0xe83a5324, 0x8124cfdb, 0x634218f1, 0x1a8a5853, + } }, + { { /* 302 */ + 0x24d37420, 0x0514aa3b, 0x89586018, 0xc0004800, + 0x91018268, 0x2cd684a4, 0xc4ba8886, 0x02100377, + } }, + { { /* 303 */ + 0x00388244, 0x404aae11, 0x510028c0, 0x15146044, + 0x10007310, 0x02480082, 0x40060205, 0x0000c003, + } }, + { { /* 304 */ + 0x0c020000, 0x02200008, 0x40009000, 0xd161b800, + 0x32744621, 0x3b8af800, 0x8b00050f, 0x2280bbd0, + } }, + { { /* 305 */ + 0x07690600, 0x00438040, 0x50005420, 0x250c41d0, + 0x83108410, 0x02281101, 0x00304008, 0x020040a1, + } }, + { { /* 306 */ + 0x20000040, 0xabe31500, 0xaa443180, 0xc624c2c6, + 0x8004ac13, 0x03d1b000, 0x4285611e, 0x1d9ff303, + } }, + { { /* 307 */ + 0x78e8440a, 0xc3925e26, 0x00852000, 0x4000b001, + 0x88424a90, 0x0c8dca04, 0x4203a705, 0x000422a1, + } }, + { { /* 308 */ + 0x0c018668, 0x10795564, 0xdea00002, 0x40c12000, + 0x5001488b, 0x04000380, 0x50040000, 0x80d0c05d, + } }, + { { /* 309 */ + 0x970aa010, 0x4dafbb20, 0x1e10d921, 0x83140460, + 0xa6d68848, 0x733fd83b, 0x497427bc, 0x92130ddc, + } }, + { { /* 310 */ + 0x8ba1142b, 0xd1392e75, 0x50503009, 0x69008808, + 0x024a49d4, 0x80164010, 0x89d7e564, 0x5316c020, + } }, + { { /* 311 */ + 0x86002b92, 0x15e0a345, 0x0c03008b, 0xe200196e, + 0x80067031, 0xa82916a5, 0x18802000, 0xe1487aac, + } }, + { { /* 312 */ + 0xb5d63207, 0x5f9132e8, 0x20e550a1, 0x10807c00, + 0x9d8a7280, 0x421f00aa, 0x02310e22, 0x04941100, + } }, + { { /* 313 */ + 0x40080022, 0x5c100010, 0xfcc80343, 0x0580a1a5, + 0x04008433, 0x6e080080, 0x81262a4b, 0x2901aad8, + } }, + { { /* 314 */ + 0x4490684d, 0xba880009, 0x00820040, 0x87d10000, + 0xb1e6215b, 0x80083161, 0xc2400800, 0xa600a069, + } }, + { { /* 315 */ + 0x4a328d58, 0x550a5d71, 0x2d579aa0, 0x4aa64005, + 0x30b12021, 0x01123fc6, 0x260a10c2, 0x50824462, + } }, + { { /* 316 */ + 0x80409880, 0x810004c0, 0x00002003, 0x38180000, + 0xf1a60200, 0x720e4434, 0x92e035a2, 0x09008101, + } }, + { { /* 317 */ + 0x00000400, 0x00008885, 0x00000000, 0x00804000, + 0x00000000, 0x00004040, 0x00000000, 0x00000000, + } }, + { { /* 318 */ + 0x00000000, 0x08000000, 0x00000082, 0x00000000, + 0x88000004, 0xe7efbfff, 0xffbfffff, 0xfdffefef, + } }, + { { /* 319 */ + 0xbffefbff, 0x057fffff, 0x85b30034, 0x42164706, + 0xe4105402, 0xb3058092, 0x81305422, 0x180b4263, + } }, + { { /* 320 */ + 0x13f5387b, 0xa9ea07e5, 0x05143c4c, 0x80020600, + 0xbd481ad9, 0xf496ee37, 0x7ec0705f, 0x355fbfb2, + } }, + { { /* 321 */ + 0x455fe644, 0x41469000, 0x063b1d40, 0xfe1362a1, + 0x39028505, 0x0c080548, 0x0000144f, 0x58183488, + } }, + { { /* 322 */ + 0xd8153077, 0x4bfbbd0e, 0x85008a90, 0xe61dc100, + 0xb386ed14, 0x639bff72, 0xd9befd92, 0x0a92887b, + } }, + { { /* 323 */ + 0x1cb2d3fe, 0x177ab980, 0xdc1782c9, 0x3980fffb, + 0x590c4260, 0x37df0f01, 0xb15094a3, 0x23070623, + } }, + { { /* 324 */ + 0x3102f85a, 0x310201f0, 0x1e820040, 0x056a3a0a, + 0x12805b84, 0xa7148002, 0xa04b2612, 0x90011069, + } }, + { { /* 325 */ + 0x848a1000, 0x3f801802, 0x42400708, 0x4e140110, + 0x180080b0, 0x0281c510, 0x10298202, 0x88000210, + } }, + { { /* 326 */ + 0x00420020, 0x11000280, 0x4413e000, 0xfe025804, + 0x30283c07, 0x04739798, 0xcb13ced1, 0x431f6210, + } }, + { { /* 327 */ + 0x55ac278d, 0xc892422e, 0x02885380, 0x78514039, + 0x8088292c, 0x2428b900, 0x080e0c41, 0x42004421, + } }, + { { /* 328 */ + 0x08680408, 0x12040006, 0x02903031, 0xe0855b3e, + 0x10442936, 0x10822814, 0x83344266, 0x531b013c, + } }, + { { /* 329 */ + 0x0e0d0404, 0x00510c22, 0xc0000012, 0x88000040, + 0x0000004a, 0x00000000, 0x5447dff6, 0x00088868, + } }, + { { /* 330 */ + 0x00000081, 0x40000000, 0x00000100, 0x02000000, + 0x00080600, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 331 */ + 0x00000080, 0x00000040, 0x00000000, 0x00001040, + 0x00000000, 0xf7fdefff, 0xfffeff7f, 0xfffffbff, + } }, + { { /* 332 */ + 0xbffffdff, 0x00ffffff, 0x042012c2, 0x07080c06, + 0x01101624, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 333 */ + 0xe0000000, 0xfffffffe, 0x7f79ffff, 0x00f928df, + 0x80120c32, 0xd53a0008, 0xecc2d858, 0x2fa89d18, + } }, + { { /* 334 */ + 0xe0109620, 0x2622d60c, 0x02060f97, 0x9055b240, + 0x501180a2, 0x04049800, 0x00004000, 0x00000000, + } }, + { { /* 335 */ + 0x00000000, 0x00000000, 0x00000000, 0xfffffbc0, + 0xdffbeffe, 0x62430b08, 0xfb3b41b6, 0x23896f74, + } }, + { { /* 336 */ + 0xecd7ae7f, 0x5960e047, 0x098fa096, 0xa030612c, + 0x2aaa090d, 0x4f7bd44e, 0x388bc4b2, 0x6110a9c6, + } }, + { { /* 337 */ + 0x42000014, 0x0202800c, 0x6485fe48, 0xe3f7d63e, + 0x0c073aa0, 0x0430e40c, 0x1002f680, 0x00000000, + } }, + { { /* 338 */ + 0x00000000, 0x00000000, 0x00000000, 0x00100000, + 0x00004000, 0x00004000, 0x00000100, 0x00000000, + } }, + { { /* 339 */ + 0x00000000, 0x40000000, 0x00000000, 0x00000400, + 0x00008000, 0x00000000, 0x00400400, 0x00000000, + } }, + { { /* 340 */ + 0x00000000, 0x40000000, 0x00000000, 0x00000800, + 0xfebdffe0, 0xffffffff, 0xfbe77f7f, 0xf7ffffbf, + } }, + { { /* 341 */ + 0xefffffff, 0xdff7ff7e, 0xfbdff6f7, 0x804fbffe, + 0x00000000, 0x00000000, 0x00000000, 0x7fffef00, + } }, + { { /* 342 */ + 0xb6f7ff7f, 0xb87e4406, 0x88313bf5, 0x00f41796, + 0x1391a960, 0x72490080, 0x0024f2f3, 0x42c88701, + } }, + { { /* 343 */ + 0x5048e3d3, 0x43052400, 0x4a4c0000, 0x10580227, + 0x01162820, 0x0014a809, 0x00000000, 0x00683ec0, + } }, + { { /* 344 */ + 0x00000000, 0x00000000, 0x00000000, 0xffe00000, + 0xfddbb7ff, 0x000000f7, 0xc72e4000, 0x00000180, + } }, + { { /* 345 */ + 0x00012000, 0x00004000, 0x00300000, 0xb4f7ffa8, + 0x03ffadf3, 0x00000120, 0x00000000, 0x00000000, + } }, + { { /* 346 */ + 0x00000000, 0x00000000, 0x00000000, 0xfffbf000, + 0xfdcf9df7, 0x15c301bf, 0x810a1827, 0x0a00a842, + } }, + { { /* 347 */ + 0x80088108, 0x18048008, 0x0012a3be, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 348 */ + 0x00000000, 0x00000000, 0x00000000, 0x90000000, + 0xdc3769e6, 0x3dff6bff, 0xf3f9fcf8, 0x00000004, + } }, + { { /* 349 */ + 0x80000000, 0xe7eebf6f, 0x5da2dffe, 0xc00b3fd8, + 0xa00c0984, 0x69100040, 0xb912e210, 0x5a0086a5, + } }, + { { /* 350 */ + 0x02896800, 0x6a809005, 0x00030010, 0x80000000, + 0x8e001ff9, 0x00000001, 0x00000000, 0x00000000, + } }, + { { /* 351 */ + 0x0000002f, 0x000003fe, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 352 */ + 0xc373ff8b, 0x1b0f6840, 0xf34ce9ac, 0xc0080200, + 0xca3e795c, 0x06487976, 0xf7f02fdf, 0xa8ff033a, + } }, + { { /* 353 */ + 0x233fef37, 0xfd59b004, 0xfffff3ca, 0xfff9de9f, + 0x7df7abff, 0x8eecc000, 0xffdbeebf, 0x45fad003, + } }, + { { /* 354 */ + 0xdffefae1, 0x10abbfef, 0xfcaaffeb, 0x24fdef3f, + 0x7f7678ad, 0xedfff00c, 0x2cfacff6, 0xeb6bf7f9, + } }, + { { /* 355 */ + 0x95bf1ffd, 0xbfbf6677, 0xfeb43bfb, 0x11e27bae, + 0x41bea681, 0x72c31435, 0x71917d70, 0x276b0003, + } }, + { { /* 356 */ + 0x70cf57cb, 0x0def4732, 0xfc747eda, 0xbdb4fe06, + 0x8bca3f9f, 0x58007e49, 0xebec228f, 0xddbb8a5c, + } }, + { { /* 357 */ + 0xb6e7ef60, 0xf293a40f, 0x549e37bb, 0x9bafd04b, + 0xf7d4c414, 0x0a1430b0, 0x88d02f08, 0x192fff7e, + } }, + { { /* 358 */ + 0xfb07ffda, 0x7beb7ff1, 0x0010c5ef, 0xfdff99ff, + 0x056779d7, 0xfdcbffe7, 0x4040c3ff, 0xbd8e6ff7, + } }, + { { /* 359 */ + 0x0497dffa, 0x5bfff4c0, 0xd0e7ed7b, 0xf8e0047e, + 0xb73eff9f, 0x882e7dfe, 0xbe7ffffd, 0xf6c483fe, + } }, + { { /* 360 */ + 0xb8fdf357, 0xef7dd680, 0x47885767, 0xc3dfff7d, + 0x37a9f0ff, 0x70fc7de0, 0xec9a3f6f, 0x86814cb3, + } }, + { { /* 361 */ + 0xdd5c3f9e, 0x4819f70d, 0x0007fea3, 0x38ffaf56, + 0xefb8980d, 0xb760403d, 0x9035d8ce, 0x3fff72bf, + } }, + { { /* 362 */ + 0x7a117ff7, 0xabfff7bb, 0x6fbeff00, 0xfe72a93c, + 0xf11bcfef, 0xf40adb6b, 0xef7ec3e6, 0xf6109b9c, + } }, + { { /* 363 */ + 0x16f4f048, 0x5182feb5, 0x15bbc7b1, 0xfbdf6e87, + 0x63cde43f, 0x7e7ec1ff, 0x7d5ffdeb, 0xfcfe777b, + } }, + { { /* 364 */ + 0xdbea960b, 0x53e86229, 0xfdef37df, 0xbd8136f5, + 0xfcbddc18, 0xffffd2e4, 0xffe03fd7, 0xabf87f6f, + } }, + { { /* 365 */ + 0x6ed99bae, 0xf115f5fb, 0xbdfb79a9, 0xadaf5a3c, + 0x1facdbba, 0x837971fc, 0xc35f7cf7, 0x0567dfff, + } }, + { { /* 366 */ + 0x8467ff9a, 0xdf8b1534, 0x3373f9f3, 0x5e1af7bd, + 0xa03fbf40, 0x01ebffff, 0xcfdddfc0, 0xabd37500, + } }, + { { /* 367 */ + 0xeed6f8c3, 0xb7ff43fd, 0x42275eaf, 0xf6869bac, + 0xf6bc27d7, 0x35b7f787, 0xe176aacd, 0xe29f49e7, + } }, + { { /* 368 */ + 0xaff2545c, 0x61d82b3f, 0xbbb8fc3b, 0x7b7dffcf, + 0x1ce0bf95, 0x43ff7dfd, 0xfffe5ff6, 0xc4ced3ef, + } }, + { { /* 369 */ + 0xadbc8db6, 0x11eb63dc, 0x23d0df59, 0xf3dbbeb4, + 0xdbc71fe7, 0xfae4ff63, 0x63f7b22b, 0xadbaed3b, + } }, + { { /* 370 */ + 0x7efffe01, 0x02bcfff7, 0xef3932ff, 0x8005fffc, + 0xbcf577fb, 0xfff7010d, 0xbf3afffb, 0xdfff0057, + } }, + { { /* 371 */ + 0xbd7def7b, 0xc8d4db88, 0xed7cfff3, 0x56ff5dee, + 0xac5f7e0d, 0xd57fff96, 0xc1403fee, 0xffe76ff9, + } }, + { { /* 372 */ + 0x8e77779b, 0xe45d6ebf, 0x5f1f6fcf, 0xfedfe07f, + 0x01fed7db, 0xfb7bff00, 0x1fdfffd4, 0xfffff800, + } }, + { { /* 373 */ + 0x007bfb8f, 0x7f5cbf00, 0x07f3ffff, 0x3de7eba0, + 0xfbd7f7bf, 0x6003ffbf, 0xbfedfffd, 0x027fefbb, + } }, + { { /* 374 */ + 0xddfdfe40, 0xe2f9fdff, 0xfb1f680b, 0xaffdfbe3, + 0xf7ed9fa4, 0xf80f7a7d, 0x0fd5eebe, 0xfd9fbb5d, + } }, + { { /* 375 */ + 0x3bf9f2db, 0xebccfe7f, 0x73fa876a, 0x9ffc95fc, + 0xfaf7109f, 0xbbcdddb7, 0xeccdf87e, 0x3c3ff366, + } }, + { { /* 376 */ + 0xb03ffffd, 0x067ee9f7, 0xfe0696ae, 0x5fd7d576, + 0xa3f33fd1, 0x6fb7cf07, 0x7f449fd1, 0xd3dd7b59, + } }, + { { /* 377 */ + 0xa9bdaf3b, 0xff3a7dcf, 0xf6ebfbe0, 0xffffb401, + 0xb7bf7afa, 0x0ffdc000, 0xff1fff7f, 0x95fffefc, + } }, + { { /* 378 */ + 0xb5dc0000, 0x3f3eef63, 0x001bfb7f, 0xfbf6e800, + 0xb8df9eef, 0x003fff9f, 0xf5ff7bd0, 0x3fffdfdb, + } }, + { { /* 379 */ + 0x00bffdf0, 0xbbbd8420, 0xffdedf37, 0x0ff3ff6d, + 0x5efb604c, 0xfafbfffb, 0x0219fe5e, 0xf9de79f4, + } }, + { { /* 380 */ + 0xebfaa7f7, 0xff3401eb, 0xef73ebd3, 0xc040afd7, + 0xdcff72bb, 0x2fd8f17f, 0xfe0bb8ec, 0x1f0bdda3, + } }, + { { /* 381 */ + 0x47cf8f1d, 0xffdeb12b, 0xda737fee, 0xcbc424ff, + 0xcbf2f75d, 0xb4edecfd, 0x4dddbff9, 0xfb8d99dd, + } }, + { { /* 382 */ + 0xaf7bbb7f, 0xc959ddfb, 0xfab5fc4f, 0x6d5fafe3, + 0x3f7dffff, 0xffdb7800, 0x7effb6ff, 0x022ffbaf, + } }, + { { /* 383 */ + 0xefc7ff9b, 0xffffffa5, 0xc7000007, 0xfff1f7ff, + 0x01bf7ffd, 0xfdbcdc00, 0xffffbff5, 0x3effff7f, + } }, + { { /* 384 */ + 0xbe000029, 0xff7ff9ff, 0xfd7e6efb, 0x039ecbff, + 0xfbdde300, 0xf6dfccff, 0x117fffff, 0xfbf6f800, + } }, + { { /* 385 */ + 0xd73ce7ef, 0xdfeffeef, 0xedbfc00b, 0xfdcdfedf, + 0x40fd7bf5, 0xb75fffff, 0xf930ffdf, 0xdc97fbdf, + } }, + { { /* 386 */ + 0xbff2fef3, 0xdfbf8fdf, 0xede6177f, 0x35530f7f, + 0x877e447c, 0x45bbfa12, 0x779eede0, 0xbfd98017, + } }, + { { /* 387 */ + 0xde897e55, 0x0447c16f, 0xf75d7ade, 0x290557ff, + 0xfe9586f7, 0xf32f97b3, 0x9f75cfff, 0xfb1771f7, + } }, + { { /* 388 */ + 0xee1934ee, 0xef6137cc, 0xef4c9fd6, 0xfbddd68f, + 0x6def7b73, 0xa431d7fe, 0x97d75e7f, 0xffd80f5b, + } }, + { { /* 389 */ + 0x7bce9d83, 0xdcff22ec, 0xef87763d, 0xfdeddfe7, + 0xa0fc4fff, 0xdbfc3b77, 0x7fdc3ded, 0xf5706fa9, + } }, + { { /* 390 */ + 0x2c403ffb, 0x847fff7f, 0xdeb7ec57, 0xf22fe69c, + 0xd5b50feb, 0xede7afeb, 0xfff08c2f, 0xe8f0537f, + } }, + { { /* 391 */ + 0xb5ffb99d, 0xe78fff66, 0xbe10d981, 0xe3c19c7c, + 0x27339cd1, 0xff6d0cbc, 0xefb7fcb7, 0xffffa0df, + } }, + { { /* 392 */ + 0xfe7bbf0b, 0x353fa3ff, 0x97cd13cc, 0xfb277637, + 0x7e6ccfd6, 0xed31ec50, 0xfc1c677c, 0x5fbff6fa, + } }, + { { /* 393 */ + 0xae2f0fba, 0x7ffea3ad, 0xde74fcf0, 0xf200ffef, + 0xfea2fbbf, 0xbcff3daf, 0x5fb9f694, 0x3f8ff3ad, + } }, + { { /* 394 */ + 0xa01ff26c, 0x01bfffef, 0x70057728, 0xda03ff35, + 0xc7fad2f9, 0x5c1d3fbf, 0xec33ff3a, 0xfe9cb7af, + } }, + { { /* 395 */ + 0x7a9f5236, 0xe722bffa, 0xfcff9ff7, 0xb61d2fbb, + 0x1dfded06, 0xefdf7dd7, 0xf166eb23, 0x0dc07ed9, + } }, + { { /* 396 */ + 0xdfbf3d3d, 0xba83c945, 0x9dd07dd1, 0xcf737b87, + 0xc3f59ff3, 0xc5fedf0d, 0x83020cb3, 0xaec0e879, + } }, + { { /* 397 */ + 0x6f0fc773, 0x093ffd7d, 0x0157fff1, 0x01ff62fb, + 0x3bf3fdb4, 0x43b2b013, 0xff305ed3, 0xeb9f0fff, + } }, + { { /* 398 */ + 0xf203feef, 0xfb893fef, 0x9e9937a9, 0xa72cdef9, + 0xc1f63733, 0xfe3e812e, 0xf2f75d20, 0x69d7d585, + } }, + { { /* 399 */ + 0xffffffff, 0xff6fdb07, 0xd97fc4ff, 0xbe0fefce, + 0xf05ef17b, 0xffb7f6cf, 0xef845ef7, 0x0edfd7cb, + } }, + { { /* 400 */ + 0xfcffff08, 0xffffee3f, 0xd7ff13ff, 0x7ffdaf0f, + 0x1ffabdc7, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 401 */ + 0x00000000, 0xe7400000, 0xf933bd38, 0xfeed7feb, + 0x7c767fe8, 0xffefb3f7, 0xd8b7feaf, 0xfbbfff6f, + } }, + { { /* 402 */ + 0xdbf7f8fb, 0xe2f91752, 0x754785c8, 0xe3ef9090, + 0x3f6d9ef4, 0x0536ee2e, 0x7ff3f7bc, 0x7f3fa07b, + } }, + { { /* 403 */ + 0xeb600567, 0x6601babe, 0x583ffcd8, 0x87dfcaf7, + 0xffa0bfcd, 0xfebf5bcd, 0xefa7b6fd, 0xdf9c77ef, + } }, + { { /* 404 */ + 0xf8773fb7, 0xb7fc9d27, 0xdfefcab5, 0xf1b6fb5a, + 0xef1fec39, 0x7ffbfbbf, 0xdafe000d, 0x4e7fbdfb, + } }, + { { /* 405 */ + 0x5ac033ff, 0x9ffebff5, 0x005fffbf, 0xfdf80000, + 0x6ffdffca, 0xa001cffd, 0xfbf2dfff, 0xff7fdfbf, + } }, + { { /* 406 */ + 0x080ffeda, 0xbfffba08, 0xeed77afd, 0x67f9fbeb, + 0xff93e044, 0x9f57df97, 0x08dffef7, 0xfedfdf80, + } }, + { { /* 407 */ + 0xf7feffc5, 0x6803fffb, 0x6bfa67fb, 0x5fe27fff, + 0xff73ffff, 0xe7fb87df, 0xf7a7ebfd, 0xefc7bf7e, + } }, + { { /* 408 */ + 0xdf821ef3, 0xdf7e76ff, 0xda7d79c9, 0x1e9befbe, + 0x77fb7ce0, 0xfffb87be, 0xffdb1bff, 0x4fe03f5c, + } }, + { { /* 409 */ + 0x5f0e7fff, 0xddbf77ff, 0xfffff04f, 0x0ff8ffff, + 0xfddfa3be, 0xfffdfc1c, 0xfb9e1f7d, 0xdedcbdff, + } }, + { { /* 410 */ + 0xbafb3f6f, 0xfbefdf7f, 0x2eec7d1b, 0xf2f7af8e, + 0xcfee7b0f, 0x77c61d96, 0xfff57e07, 0x7fdfd982, + } }, + { { /* 411 */ + 0xc7ff5ee6, 0x79effeee, 0xffcf9a56, 0xde5efe5f, + 0xf9e8896e, 0xe6c4f45e, 0xbe7c0001, 0xdddf3b7f, + } }, + { { /* 412 */ + 0xe9efd59d, 0xde5334ac, 0x4bf7f573, 0x9eff7b4f, + 0x476eb8fe, 0xff450dfb, 0xfbfeabfd, 0xddffe9d7, + } }, + { { /* 413 */ + 0x7fffedf7, 0x7eebddfd, 0xb7ffcfe7, 0xef91bde9, + 0xd77c5d75, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 414 */ + 0x00000000, 0xfa800000, 0xb4f1ffee, 0x2fefbf76, + 0x77bfb677, 0xfffd9fbf, 0xf6ae95bf, 0x7f3b75ff, + } }, + { { /* 415 */ + 0x0af9a7f5, 0x00000000, 0x00000000, 0x2bddfbd0, + 0x9a7ff633, 0xd6fcfdab, 0xbfebf9e6, 0xf41fdfdf, + } }, + { { /* 416 */ + 0xffffa6fd, 0xf37b4aff, 0xfef97fb7, 0x1d5cb6ff, + 0xe5ff7ff6, 0x24041f7b, 0xf99ebe05, 0xdff2dbe3, + } }, + { { /* 417 */ + 0xfdff6fef, 0xcbfcd679, 0xefffebfd, 0x0000001f, + 0x98000000, 0x8017e148, 0x00fe6a74, 0xfdf16d7f, + } }, + { { /* 418 */ + 0xfef3b87f, 0xf176e01f, 0x7b3fee96, 0xfffdeb8d, + 0xcbb3adff, 0xe17f84ef, 0xbff04daa, 0xfe3fbf3f, + } }, + { { /* 419 */ + 0xffd7ebff, 0xcf7fffdf, 0x85edfffb, 0x07bcd73f, + 0xfe0faeff, 0x76bffdaf, 0x37bbfaef, 0xa3ba7fdc, + } }, + { { /* 420 */ + 0x56f7b6ff, 0xe7df60f8, 0x4cdfff61, 0xff45b0fb, + 0x3ffa7ded, 0x18fc1fff, 0xe3afffff, 0xdf83c7d3, + } }, + { { /* 421 */ + 0xef7dfb57, 0x1378efff, 0x5ff7fec0, 0x5ee334bb, + 0xeff6f70d, 0x00bfd7fe, 0xf7f7f59d, 0xffe051de, + } }, + { { /* 422 */ + 0x037ffec9, 0xbfef5f01, 0x60a79ff1, 0xf1ffef1d, + 0x0000000f, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 423 */ + 0x00000000, 0x00000000, 0x00000000, 0x3c800000, + 0xd91ffb4d, 0xfee37b3a, 0xdc7f3fe9, 0x0000003f, + } }, + { { /* 424 */ + 0x50000000, 0xbe07f51f, 0xf91bfc1d, 0x71ffbc1e, + 0x5bbe6ff9, 0x9b1b5796, 0xfffc7fff, 0xafe7872e, + } }, + { { /* 425 */ + 0xf34febf5, 0xe725dffd, 0x5d440bdc, 0xfddd5747, + 0x7790ed3f, 0x8ac87d7f, 0xf3f9fafa, 0xef4b202a, + } }, + { { /* 426 */ + 0x79cff5ff, 0x0ba5abd3, 0xfb8ff77a, 0x001f8ebd, + 0x00000000, 0xfd4ef300, 0x88001a57, 0x7654aeac, + } }, + { { /* 427 */ + 0xcdff17ad, 0xf42fffb2, 0xdbff5baa, 0x00000002, + 0x73c00000, 0x2e3ff9ea, 0xbbfffa8e, 0xffd376bc, + } }, + { { /* 428 */ + 0x7e72eefe, 0xe7f77ebd, 0xcefdf77f, 0x00000ff5, + 0x00000000, 0xdb9ba900, 0x917fa4c7, 0x7ecef8ca, + } }, + { { /* 429 */ + 0xc7e77d7a, 0xdcaecbbd, 0x8f76fd7e, 0x7cf391d3, + 0x4c2f01e5, 0xa360ed77, 0x5ef807db, 0x21811df7, + } }, + { { /* 430 */ + 0x309c6be0, 0xfade3b3a, 0xc3f57f53, 0x07ba61cd, + 0x00000000, 0x00000000, 0x00000000, 0xbefe26e0, + } }, + { { /* 431 */ + 0xebb503f9, 0xe9cbe36d, 0xbfde9c2f, 0xabbf9f83, + 0xffd51ff7, 0xdffeb7df, 0xffeffdae, 0xeffdfb7e, + } }, + { { /* 432 */ + 0x6ebfaaff, 0x00000000, 0x00000000, 0xb6200000, + 0xbe9e7fcd, 0x58f162b3, 0xfd7bf10d, 0xbefde9f1, + } }, + { { /* 433 */ + 0x5f6dc6c3, 0x69ffff3d, 0xfbf4ffcf, 0x4ff7dcfb, + 0x11372000, 0x00000015, 0x00000000, 0x00000000, + } }, + { { /* 434 */ + 0x00003000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + } }, + { { /* 435 */ + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xffffffff, 0xffffffff, 0x001fffff, + } }, +}; + +#define L(n) ((FcCharLeaf *) &leaves[n]) + +static const FcCharLeaf *leaves_ab[2] = { + L( 0), L( 1), +}; + +static const FcChar16 numbers_ab[2] = { + 0x0000, 0x0004, +}; + +static const FcCharLeaf *leaves_ar[1] = { + L( 2), +}; + +static const FcChar16 numbers_ar[1] = { + 0x0006, +}; + +static const FcCharLeaf *leaves_az[4] = { + L( 3), L( 4), L( 5), L( 6), +}; + +static const FcChar16 numbers_az[4] = { + 0x0000, 0x0001, 0x0002, 0x0004, +}; + +static const FcCharLeaf *leaves_ba[2] = { + L( 0), L( 7), +}; + +static const FcChar16 numbers_ba[2] = { + 0x0000, 0x0004, +}; + +static const FcCharLeaf *leaves_be[2] = { + L( 0), L( 8), +}; + +static const FcChar16 numbers_be[2] = { + 0x0000, 0x0004, +}; + +static const FcCharLeaf *leaves_bg[1] = { + L( 9), +}; + +static const FcChar16 numbers_bg[1] = { + 0x0004, +}; + +static const FcCharLeaf *leaves_bn[1] = { + L( 10), +}; + +static const FcChar16 numbers_bn[1] = { + 0x0009, +}; + +static const FcCharLeaf *leaves_bo[1] = { + L( 11), +}; + +static const FcChar16 numbers_bo[1] = { + 0x000f, +}; + +static const FcCharLeaf *leaves_br[1] = { + L( 12), +}; + +static const FcChar16 numbers_br[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_ca[2] = { + L( 13), L( 14), +}; + +static const FcChar16 numbers_ca[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_co[1] = { + L( 15), +}; + +static const FcChar16 numbers_co[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_cs[2] = { + L( 16), L( 17), +}; + +static const FcChar16 numbers_cs[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_da[2] = { + L( 18), L( 19), +}; + +static const FcChar16 numbers_da[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_de[1] = { + L( 20), +}; + +static const FcChar16 numbers_de[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_el[1] = { + L( 21), +}; + +static const FcChar16 numbers_el[1] = { + 0x0003, +}; + +static const FcCharLeaf *leaves_en[1] = { + L( 22), +}; + +static const FcChar16 numbers_en[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_eo[2] = { + L( 23), L( 24), +}; + +static const FcChar16 numbers_eo[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_es[1] = { + L( 25), +}; + +static const FcChar16 numbers_es[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_et[2] = { + L( 26), L( 27), +}; + +static const FcChar16 numbers_et[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_eu[2] = { + L( 28), L( 29), +}; + +static const FcChar16 numbers_eu[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_fi[2] = { + L( 30), L( 27), +}; + +static const FcChar16 numbers_fi[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_fo[1] = { + L( 31), +}; + +static const FcChar16 numbers_fo[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_ga[5] = { + L( 32), L( 33), L( 34), L( 35), L( 36), +}; + +static const FcChar16 numbers_ga[5] = { + 0x0000, 0x0001, 0x0002, 0x001e, 0x0020, +}; + +static const FcCharLeaf *leaves_gd[1] = { + L( 37), +}; + +static const FcChar16 numbers_gd[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_gl[1] = { + L( 38), +}; + +static const FcChar16 numbers_gl[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_gu[1] = { + L( 39), +}; + +static const FcChar16 numbers_gu[1] = { + 0x000a, +}; + +static const FcCharLeaf *leaves_he[1] = { + L( 40), +}; + +static const FcChar16 numbers_he[1] = { + 0x0005, +}; + +static const FcCharLeaf *leaves_hr[3] = { + L( 41), L( 42), L( 43), +}; + +static const FcChar16 numbers_hr[3] = { + 0x0000, 0x0001, 0x0002, +}; + +static const FcCharLeaf *leaves_hu[2] = { + L( 44), L( 45), +}; + +static const FcChar16 numbers_hu[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_hy[1] = { + L( 46), +}; + +static const FcChar16 numbers_hy[1] = { + 0x0005, +}; + +static const FcCharLeaf *leaves_is[1] = { + L( 47), +}; + +static const FcChar16 numbers_is[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_it[1] = { + L( 48), +}; + +static const FcChar16 numbers_it[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_ja[84] = { + L( 49), L( 50), L( 51), L( 52), L( 53), L( 54), L( 55), L( 56), + L( 57), L( 58), L( 59), L( 60), L( 61), L( 62), L( 63), L( 64), + L( 65), L( 66), L( 67), L( 68), L( 69), L( 70), L( 71), L( 72), + L( 73), L( 74), L( 75), L( 76), L( 77), L( 78), L( 79), L( 80), + L( 81), L( 82), L( 83), L( 84), L( 85), L( 86), L( 87), L( 88), + L( 89), L( 90), L( 91), L( 92), L( 93), L( 94), L( 95), L( 96), + L( 97), L( 98), L( 99), L(100), L(101), L(102), L(103), L(104), + L(105), L(106), L(107), L(108), L(109), L(110), L(111), L(112), + L(113), L(114), L(115), L(116), L(117), L(118), L(119), L(120), + L(121), L(122), L(123), L(124), L(125), L(126), L(127), L(128), + L(129), L(130), L(131), L(132), +}; + +static const FcChar16 numbers_ja[84] = { + 0x0030, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, + 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, + 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, + 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, + 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, + 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, + 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, + 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, + 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, + 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, + 0x009d, 0x009e, 0x009f, 0x00ff, +}; + +static const FcCharLeaf *leaves_ka[2] = { + L(133), L(134), +}; + +static const FcChar16 numbers_ka[2] = { + 0x0005, 0x0010, +}; + +static const FcCharLeaf *leaves_kk[2] = { + L( 0), L(135), +}; + +static const FcChar16 numbers_kk[2] = { + 0x0000, 0x0004, +}; + +static const FcCharLeaf *leaves_kl[2] = { + L(136), L(137), +}; + +static const FcChar16 numbers_kl[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_km[1] = { + L(138), +}; + +static const FcChar16 numbers_km[1] = { + 0x0017, +}; + +static const FcCharLeaf *leaves_kn[1] = { + L(139), +}; + +static const FcChar16 numbers_kn[1] = { + 0x000c, +}; + +static const FcCharLeaf *leaves_ko[132] = { + L(140), L(141), L(142), L(143), L(144), L(145), L(146), L(147), + L(148), L(149), L(150), L(151), L(152), L(153), L(154), L(155), + L(156), L(157), L(158), L(159), L(160), L(161), L(162), L(163), + L(164), L(165), L(166), L(167), L(168), L(169), L(170), L(171), + L(172), L(173), L(174), L(175), L(176), L(177), L(178), L(179), + L(180), L(181), L(182), L(183), L(184), L(185), L(186), L(187), + L(188), L(189), L(190), L(191), L(192), L(193), L(194), L(195), + L(196), L(197), L(198), L(199), L(200), L(201), L(202), L(203), + L(204), L(205), L(206), L(207), L(208), L(209), L(210), L(211), + L(212), L(213), L(214), L(215), L(216), L(217), L(218), L(219), + L(220), L(221), L(222), L(223), L(224), L(225), L(225), L(225), + L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), + L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), + L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), + L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), + L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), + L(226), L(225), L(227), L(228), +}; + +static const FcChar16 numbers_ko[132] = { + 0x0030, 0x0031, 0x0032, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, + 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, + 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, + 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, + 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, + 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, + 0x007b, 0x007c, 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, + 0x0083, 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, + 0x008b, 0x008c, 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, + 0x0093, 0x0094, 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, + 0x009b, 0x009c, 0x009d, 0x009e, 0x009f, 0x00ac, 0x00ad, 0x00ae, + 0x00af, 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, + 0x00b7, 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, + 0x00bf, 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, + 0x00c7, 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, + 0x00cf, 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, + 0x00d7, 0x00f9, 0x00fa, 0x00ff, +}; + +static const FcCharLeaf *leaves_la[2] = { + L( 23), L(229), +}; + +static const FcChar16 numbers_la[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_lo[1] = { + L(230), +}; + +static const FcChar16 numbers_lo[1] = { + 0x000e, +}; + +static const FcCharLeaf *leaves_lt[2] = { + L( 23), L(231), +}; + +static const FcChar16 numbers_lt[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_lv[2] = { + L( 23), L(232), +}; + +static const FcChar16 numbers_lv[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_mk[1] = { + L(233), +}; + +static const FcChar16 numbers_mk[1] = { + 0x0004, +}; + +static const FcCharLeaf *leaves_ml[1] = { + L(234), +}; + +static const FcChar16 numbers_ml[1] = { + 0x000d, +}; + +static const FcCharLeaf *leaves_mn[1] = { + L(235), +}; + +static const FcChar16 numbers_mn[1] = { + 0x0018, +}; + +static const FcCharLeaf *leaves_mo[4] = { + L(236), L(237), L(238), L(239), +}; + +static const FcChar16 numbers_mo[4] = { + 0x0000, 0x0001, 0x0002, 0x0004, +}; + +static const FcCharLeaf *leaves_mt[3] = { + L(240), L(241), L(242), +}; + +static const FcChar16 numbers_mt[3] = { + 0x0000, 0x0001, 0x0002, +}; + +static const FcCharLeaf *leaves_nl[1] = { + L(243), +}; + +static const FcChar16 numbers_nl[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_no[1] = { + L(244), +}; + +static const FcChar16 numbers_no[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_oc[1] = { + L(245), +}; + +static const FcChar16 numbers_oc[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_or[1] = { + L(246), +}; + +static const FcChar16 numbers_or[1] = { + 0x000b, +}; + +static const FcCharLeaf *leaves_pl[2] = { + L(247), L(248), +}; + +static const FcChar16 numbers_pl[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_pt[1] = { + L(249), +}; + +static const FcChar16 numbers_pt[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_rm[1] = { + L(250), +}; + +static const FcChar16 numbers_rm[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_ro[3] = { + L(236), L(237), L(238), +}; + +static const FcChar16 numbers_ro[3] = { + 0x0000, 0x0001, 0x0002, +}; + +static const FcCharLeaf *leaves_ru[2] = { + L( 0), L(251), +}; + +static const FcChar16 numbers_ru[2] = { + 0x0000, 0x0004, +}; + +static const FcCharLeaf *leaves_sh[1] = { + L(252), +}; + +static const FcChar16 numbers_sh[1] = { + 0x0004, +}; + +static const FcCharLeaf *leaves_si[1] = { + L(253), +}; + +static const FcChar16 numbers_si[1] = { + 0x000d, +}; + +static const FcCharLeaf *leaves_sk[2] = { + L(254), L(255), +}; + +static const FcChar16 numbers_sk[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_sl[3] = { + L( 23), L(256), L(257), +}; + +static const FcChar16 numbers_sl[3] = { + 0x0000, 0x0001, 0x0004, +}; + +static const FcCharLeaf *leaves_sq[1] = { + L(258), +}; + +static const FcChar16 numbers_sq[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_sv[1] = { + L(259), +}; + +static const FcChar16 numbers_sv[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_ta[1] = { + L(260), +}; + +static const FcChar16 numbers_ta[1] = { + 0x000b, +}; + +static const FcCharLeaf *leaves_te[1] = { + L(261), +}; + +static const FcChar16 numbers_te[1] = { + 0x000c, +}; + +static const FcCharLeaf *leaves_th[1] = { + L(262), +}; + +static const FcChar16 numbers_th[1] = { + 0x000e, +}; + +static const FcCharLeaf *leaves_tl[1] = { + L(263), +}; + +static const FcChar16 numbers_tl[1] = { + 0x0017, +}; + +static const FcCharLeaf *leaves_tr[2] = { + L(264), L(265), +}; + +static const FcChar16 numbers_tr[2] = { + 0x0000, 0x0001, +}; + +static const FcCharLeaf *leaves_uk[2] = { + L( 0), L(266), +}; + +static const FcChar16 numbers_uk[2] = { + 0x0000, 0x0004, +}; + +static const FcCharLeaf *leaves_vo[1] = { + L(267), +}; + +static const FcChar16 numbers_vo[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_wa[1] = { + L(268), +}; + +static const FcChar16 numbers_wa[1] = { + 0x0000, +}; + +static const FcCharLeaf *leaves_zh_cn[82] = { + L(269), L(270), L(271), L(272), L(273), L(274), L(275), L(276), + L(277), L(278), L(279), L(280), L(281), L(282), L(283), L(284), + L(285), L(286), L(287), L(288), L(289), L(290), L(291), L(292), + L(293), L(294), L(295), L(296), L(297), L(298), L(299), L(300), + L(301), L(302), L(303), L(304), L(305), L(306), L(307), L(308), + L(309), L(310), L(311), L(312), L(313), L(314), L(315), L(316), + L(317), L(318), L(319), L(320), L(321), L(322), L(323), L(324), + L(325), L(326), L(327), L(328), L(329), L(330), L(331), L(332), + L(333), L(334), L(335), L(336), L(337), L(338), L(339), L(340), + L(341), L(342), L(343), L(344), L(345), L(346), L(347), L(348), + L(349), L(350), +}; + +static const FcChar16 numbers_zh_cn[82] = { + 0x0002, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, + 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, + 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, + 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, + 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, + 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, + 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, + 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, + 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, + 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, + 0x009e, 0x009f, +}; + +static const FcCharLeaf *leaves_zh_mo[84] = { + L(351), L(352), L(353), L(354), L(355), L(356), L(357), L(358), + L(359), L(360), L(361), L(362), L(363), L(364), L(365), L(366), + L(367), L(368), L(369), L(370), L(371), L(372), L(373), L(374), + L(375), L(376), L(377), L(378), L(379), L(380), L(381), L(382), + L(383), L(384), L(385), L(386), L(387), L(388), L(389), L(390), + L(391), L(392), L(393), L(394), L(395), L(396), L(397), L(398), + L(399), L(400), L(401), L(402), L(403), L(404), L(405), L(406), + L(407), L(408), L(409), L(410), L(411), L(412), L(413), L(414), + L(415), L(416), L(417), L(418), L(419), L(420), L(421), L(422), + L(423), L(424), L(425), L(426), L(427), L(428), L(429), L(430), + L(431), L(432), L(433), L(434), +}; + +static const FcChar16 numbers_zh_mo[84] = { + 0x0030, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, + 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, + 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, + 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, + 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, + 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, + 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, + 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, + 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, + 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, + 0x009d, 0x009e, 0x009f, 0x00fa, +}; + +static const FcCharLeaf *leaves_chr[1] = { + L(435), +}; + +static const FcChar16 numbers_chr[1] = { + 0x0013, +}; + +#undef L + +static const FcLangCharSet fcLangCharSets[] = { + { (FcChar8 *) "ab", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_ab, (FcChar16 *) numbers_ab } }, + { (FcChar8 *) "ar", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_ar, (FcChar16 *) numbers_ar } }, + { (FcChar8 *) "az", + { 1, FcTrue, 4, (FcCharLeaf **) leaves_az, (FcChar16 *) numbers_az } }, + { (FcChar8 *) "ba", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_ba, (FcChar16 *) numbers_ba } }, + { (FcChar8 *) "be", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_be, (FcChar16 *) numbers_be } }, + { (FcChar8 *) "bg", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_bg, (FcChar16 *) numbers_bg } }, + { (FcChar8 *) "bn", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_bn, (FcChar16 *) numbers_bn } }, + { (FcChar8 *) "bo", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_bo, (FcChar16 *) numbers_bo } }, + { (FcChar8 *) "br", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_br, (FcChar16 *) numbers_br } }, + { (FcChar8 *) "ca", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_ca, (FcChar16 *) numbers_ca } }, + { (FcChar8 *) "co", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_co, (FcChar16 *) numbers_co } }, + { (FcChar8 *) "cs", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_cs, (FcChar16 *) numbers_cs } }, + { (FcChar8 *) "da", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_da, (FcChar16 *) numbers_da } }, + { (FcChar8 *) "de", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_de, (FcChar16 *) numbers_de } }, + { (FcChar8 *) "el", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_el, (FcChar16 *) numbers_el } }, + { (FcChar8 *) "en", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_en, (FcChar16 *) numbers_en } }, + { (FcChar8 *) "eo", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_eo, (FcChar16 *) numbers_eo } }, + { (FcChar8 *) "es", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_es, (FcChar16 *) numbers_es } }, + { (FcChar8 *) "et", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_et, (FcChar16 *) numbers_et } }, + { (FcChar8 *) "eu", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_eu, (FcChar16 *) numbers_eu } }, + { (FcChar8 *) "fi", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_fi, (FcChar16 *) numbers_fi } }, + { (FcChar8 *) "fo", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_fo, (FcChar16 *) numbers_fo } }, + { (FcChar8 *) "fr", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_co, (FcChar16 *) numbers_co } }, + { (FcChar8 *) "fy", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_de, (FcChar16 *) numbers_de } }, + { (FcChar8 *) "ga", + { 1, FcTrue, 5, (FcCharLeaf **) leaves_ga, (FcChar16 *) numbers_ga } }, + { (FcChar8 *) "gd", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_gd, (FcChar16 *) numbers_gd } }, + { (FcChar8 *) "gl", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_gl, (FcChar16 *) numbers_gl } }, + { (FcChar8 *) "gu", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_gu, (FcChar16 *) numbers_gu } }, + { (FcChar8 *) "he", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_he, (FcChar16 *) numbers_he } }, + { (FcChar8 *) "hr", + { 1, FcTrue, 3, (FcCharLeaf **) leaves_hr, (FcChar16 *) numbers_hr } }, + { (FcChar8 *) "hu", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_hu, (FcChar16 *) numbers_hu } }, + { (FcChar8 *) "hy", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_hy, (FcChar16 *) numbers_hy } }, + { (FcChar8 *) "is", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_is, (FcChar16 *) numbers_is } }, + { (FcChar8 *) "it", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_it, (FcChar16 *) numbers_it } }, + { (FcChar8 *) "ja", + { 1, FcTrue, 84, (FcCharLeaf **) leaves_ja, (FcChar16 *) numbers_ja } }, + { (FcChar8 *) "ka", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_ka, (FcChar16 *) numbers_ka } }, + { (FcChar8 *) "kk", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_kk, (FcChar16 *) numbers_kk } }, + { (FcChar8 *) "kl", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_kl, (FcChar16 *) numbers_kl } }, + { (FcChar8 *) "km", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_km, (FcChar16 *) numbers_km } }, + { (FcChar8 *) "kn", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_kn, (FcChar16 *) numbers_kn } }, + { (FcChar8 *) "ko", + { 1, FcTrue, 132, (FcCharLeaf **) leaves_ko, (FcChar16 *) numbers_ko } }, + { (FcChar8 *) "la", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_la, (FcChar16 *) numbers_la } }, + { (FcChar8 *) "lo", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_lo, (FcChar16 *) numbers_lo } }, + { (FcChar8 *) "lt", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_lt, (FcChar16 *) numbers_lt } }, + { (FcChar8 *) "lv", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_lv, (FcChar16 *) numbers_lv } }, + { (FcChar8 *) "mk", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_mk, (FcChar16 *) numbers_mk } }, + { (FcChar8 *) "ml", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_ml, (FcChar16 *) numbers_ml } }, + { (FcChar8 *) "mn", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_mn, (FcChar16 *) numbers_mn } }, + { (FcChar8 *) "mo", + { 1, FcTrue, 4, (FcCharLeaf **) leaves_mo, (FcChar16 *) numbers_mo } }, + { (FcChar8 *) "mt", + { 1, FcTrue, 3, (FcCharLeaf **) leaves_mt, (FcChar16 *) numbers_mt } }, + { (FcChar8 *) "nl", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_nl, (FcChar16 *) numbers_nl } }, + { (FcChar8 *) "no", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_no, (FcChar16 *) numbers_no } }, + { (FcChar8 *) "oc", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_oc, (FcChar16 *) numbers_oc } }, + { (FcChar8 *) "or", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_or, (FcChar16 *) numbers_or } }, + { (FcChar8 *) "pl", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_pl, (FcChar16 *) numbers_pl } }, + { (FcChar8 *) "pt", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_pt, (FcChar16 *) numbers_pt } }, + { (FcChar8 *) "rm", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_rm, (FcChar16 *) numbers_rm } }, + { (FcChar8 *) "ro", + { 1, FcTrue, 3, (FcCharLeaf **) leaves_ro, (FcChar16 *) numbers_ro } }, + { (FcChar8 *) "ru", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_ru, (FcChar16 *) numbers_ru } }, + { (FcChar8 *) "sh", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_sh, (FcChar16 *) numbers_sh } }, + { (FcChar8 *) "si", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_si, (FcChar16 *) numbers_si } }, + { (FcChar8 *) "sk", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_sk, (FcChar16 *) numbers_sk } }, + { (FcChar8 *) "sl", + { 1, FcTrue, 3, (FcCharLeaf **) leaves_sl, (FcChar16 *) numbers_sl } }, + { (FcChar8 *) "sq", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_sq, (FcChar16 *) numbers_sq } }, + { (FcChar8 *) "sr", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_sh, (FcChar16 *) numbers_sh } }, + { (FcChar8 *) "sv", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_sv, (FcChar16 *) numbers_sv } }, + { (FcChar8 *) "ta", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_ta, (FcChar16 *) numbers_ta } }, + { (FcChar8 *) "te", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_te, (FcChar16 *) numbers_te } }, + { (FcChar8 *) "th", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_th, (FcChar16 *) numbers_th } }, + { (FcChar8 *) "tl", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_tl, (FcChar16 *) numbers_tl } }, + { (FcChar8 *) "tr", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_tr, (FcChar16 *) numbers_tr } }, + { (FcChar8 *) "uk", + { 1, FcTrue, 2, (FcCharLeaf **) leaves_uk, (FcChar16 *) numbers_uk } }, + { (FcChar8 *) "vo", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_vo, (FcChar16 *) numbers_vo } }, + { (FcChar8 *) "wa", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_wa, (FcChar16 *) numbers_wa } }, + { (FcChar8 *) "yi", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_he, (FcChar16 *) numbers_he } }, + { (FcChar8 *) "zh-cn", + { 1, FcTrue, 82, (FcCharLeaf **) leaves_zh_cn, (FcChar16 *) numbers_zh_cn } }, + { (FcChar8 *) "zh-mo", + { 1, FcTrue, 84, (FcCharLeaf **) leaves_zh_mo, (FcChar16 *) numbers_zh_mo } }, + { (FcChar8 *) "zh-sg", + { 1, FcTrue, 82, (FcCharLeaf **) leaves_zh_cn, (FcChar16 *) numbers_zh_cn } }, + { (FcChar8 *) "zh-tw", + { 1, FcTrue, 84, (FcCharLeaf **) leaves_zh_mo, (FcChar16 *) numbers_zh_mo } }, + { (FcChar8 *) "chr", + { 1, FcTrue, 1, (FcCharLeaf **) leaves_chr, (FcChar16 *) numbers_chr } }, +}; + diff --git a/fc-lang/fclang.tmpl.c b/fc-lang/fclang.tmpl.c deleted file mode 100644 index 9bd8430..0000000 --- a/fc-lang/fclang.tmpl.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * $XFree86$ - * - * Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc. - * - * Permission to use, copy, modify, distribute, and sell this software and its - * documentation for any purpose is hereby granted without fee, provided that - * the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of Keith Packard not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Keith Packard makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, - * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -#include "fcint.h" - -typedef struct { - FcChar8 *lang; - FcCharSet charset; -} FcLangCharSet; - -@@@ - -#define NUM_LANG_CHAR_SET (sizeof (fcLangCharSets) / sizeof (fcLangCharSets[0])) - -FcBool -FcFreeTypeSetLang (FcPattern *pattern, FcCharSet *charset) -{ - int i; - FcChar32 missing; - - for (i = 0; i < NUM_LANG_CHAR_SET; i++) - { - missing = FcCharSetSubtractCount (&fcLangCharSets[i].charset, charset); - if (FcDebug() & FC_DBG_SCANV) - printf ("%s(%d) ", fcLangCharSets[i].lang, missing); - if (!missing && !FcFreeTypeHasLang (pattern, fcLangCharSets[i].lang)) - if (!FcPatternAddString (pattern, FC_LANG, fcLangCharSets[i].lang)) - return FcFalse; - } - if (FcDebug() & FC_DBG_SCANV) - printf ("\n"); - return FcTrue; -} - - -FcLangResult -FcLangCompare (const FcChar8 *s1, const FcChar8 *s2) -{ - const FcChar8 *orig_s1 = s1; - FcChar8 c1, c2; - FcLangResult result; - /* - * Compare ISO 639 language codes - */ - for (;;) - { - c1 = *s1++; - c2 = *s2++; - if (c1 == '\0' || c1 == '-') - break; - if (c2 == '\0' || c2 == '-') - break; - c1 = FcToLower (c1); - c2 = FcToLower (c2); - if (c1 != c2) - return FcLangDifferentLang; /* mismatching lang code */ - } - if (!c1 && !c2) - return FcLangEqual; - /* - * Make x-* mismatch as if the lang part didn't match - */ - result = FcLangDifferentCountry; - if (orig_s1[0] == 'x' && (orig_s1[1] == '\0' || orig_s1[1] == '-')) - result = FcLangDifferentLang; - - if (c1 == '\0' || c2 == '\0') - return result; - /* - * Compare ISO 3166 country codes - */ - for (;;) - { - c1 = *s1++; - c2 = *s2++; - if (!c1 || !c2) - break; - c1 = FcToLower (c1); - c2 = FcToLower (c2); - if (c1 != c2) - break; - } - if (c1 == c2) - return FcLangEqual; - else - return result; -} - -const FcCharSet * -FcCharSetForLang (const FcChar8 *lang) -{ - int i; - int country = -1; - for (i = 0; i < NUM_LANG_CHAR_SET; i++) - { - switch (FcLangCompare (lang, fcLangCharSets[i].lang)) { - case FcLangEqual: - return &fcLangCharSets[i].charset; - case FcLangDifferentCountry: - if (country == -1) - country = i; - default: - break; - } - } - if (country == -1) - return 0; - return &fcLangCharSets[i].charset; -} diff --git a/fc-lang/fclang.tmpl.h b/fc-lang/fclang.tmpl.h new file mode 100644 index 0000000..a5a2d5a --- /dev/null +++ b/fc-lang/fclang.tmpl.h @@ -0,0 +1,25 @@ +/* + * $XFree86: xc/lib/fontconfig/fc-lang/fclang.tmpl.h,v 1.1 2002/07/06 23:21:36 keithp Exp $ + * + * Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc. + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of Keith Packard not be used in + * advertising or publicity pertaining to distribution of the software without + * specific, written prior permission. Keith Packard makes no + * representations about the suitability of this software for any purpose. It + * is provided "as is" without express or implied warranty. + * + * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +@@@ diff --git a/fc-lang/iso639-2 b/fc-lang/iso639-2 index 6a9ced8..b29a58e 100644 --- a/fc-lang/iso639-2 +++ b/fc-lang/iso639-2 @@ -14,7 +14,7 @@ built. afr af Afrikaans afrikaans aka Akan akan akk Akkadian akkadien - alb/sqi* sq Albanian albanais +* alb/sqi* sq Albanian albanais ale Aleut aléoute alg Algonquian languages algonquines, langues amh am Amharic amharique @@ -22,7 +22,7 @@ built. apa Apache languages apache * ara ar Arabic arabe arc Aramaic araméen - arm/hye* hy Armenian arménien +* arm/hye* hy Armenian arménien arn Araucanian araucan arp Arapaho arapaho art Artificial (Other) artificielles, autres langues @@ -42,7 +42,7 @@ built. bal Baluchi baloutchi bam Bambara bambara ban Balinese balinais - baq/eus* eu Basque basque +* baq/eus* eu Basque basque bas Basa basa bat Baltic (Other) baltiques, autres langues bej Beja bedja @@ -57,7 +57,7 @@ built. bis bi Bislama bichlamar bla Siksika blackfoot bnt Bantu (Other) bantoues, autres langues - tib/bod* bo Tibetan tibétain +* tib/bod* bo Tibetan tibétain bos bs Bosnian bosniaque bra Braj braj * bre br Breton breton @@ -73,12 +73,12 @@ built. cau Caucasian (Other) caucasiennes, autres langues ceb Cebuano cebuano cel Celtic (Other) celtiques, autres langues - cze/ces* cs Czech tchèque +* cze/ces* cs Czech tchèque cha ch Chamorro chamorro chb Chibcha chibcha che ce Chechen tchétchène chg Chagatai djaghataï - chi/zho* zh Chinese chinois +* chi/zho* zh Chinese chinois chk Chuukese chuuk chm Mari mari chn Chinook jargon chinook, jargon @@ -113,7 +113,7 @@ built. dra Dravidian (Other) dravidiennes, autres langues dua Duala douala dum Dutch, Middle (ca.1050-1350) néerlandais moyen (ca. 1050-1350) - dut/nld* nl Dutch néerlandais +* dut/nld* nl Dutch néerlandais dyu Dyula dioula dzo dz Dzongkha dzongkha efi Efik efik @@ -146,8 +146,8 @@ built. gay Gayo gayo gba Gbaya gbaya gem Germanic (Other) germaniques, autres langues - geo/kat* ka Georgian géorgien - ger/deu* de German allemand +* geo/kat* ka Georgian géorgien +* ger/deu* de German allemand gez Geez guèze gil Gilbertese kiribati * gla gd Gaelic; Scottish Gaelic gaélique; gaélique écossais @@ -161,7 +161,7 @@ built. got Gothic gothique grb Grebo grebo grc Greek, Ancient (to 1453) grec ancien (jusqu'à 1453) - gre/ell* el Greek, Modern (1453-) grec moderne (après 1453) +* gre/ell* el Greek, Modern (1453-) grec moderne (après 1453) grn gn Guarani guarani * guj gu Gujarati goudjrati gwi Gwich´in gwich´in @@ -195,7 +195,7 @@ built. ipk ik Inupiaq inupiaq ira Iranian (Other) iraniennes, autres langues iro Iroquoian languages iroquoises, langues (famille) - ice/isl* is Icelandic islandais +* ice/isl* is Icelandic islandais * ita it Italian italien jav jv Javanese javanais * jpn ja Japanese japonais @@ -271,7 +271,7 @@ built. mic Micmac micmac min Minangkabau minangkabau mis Miscellaneous languages diverses, langues - mac/mkd* mk Macedonian macédonien +* mac/mkd* mk Macedonian macédonien mkh Mon-Khmer (Other) môn-khmer, autres langues mlg mg Malagasy malgache * mlt mt Maltese maltais @@ -361,9 +361,9 @@ built. san sa Sanskrit sanskrit sas Sasak sasak sat Santali santal - scc/srp* sr Serbian serbe +* scc/srp* sr Serbian serbe sco Scots écossais - scr/hrv* hr Croatian croate +* scr/hrv* hr Croatian croate sel Selkup selkoupe sem Semitic (Other) sémitiques, autres langues sga Irish, Old (to 900) irlandais ancien (jusqu'à 900) @@ -455,7 +455,7 @@ built. was Washo washo wel/cym* cy Welsh gallois wen Sorbian languages sorabes, langues - wln wa Walloon wallon +* wln wa Walloon wallon wol wo Wolof wolof xho xh Xhosa xhosa yao Yao yao diff --git a/fc-lang/ka.orth b/fc-lang/ka.orth index c53e51c..7bf47c1 100644 --- a/fc-lang/ka.orth +++ b/fc-lang/ka.orth @@ -1,5 +1,5 @@ # -# $XFree86$ +# $XFree86: xc/lib/fontconfig/fc-lang/ka.orth,v 1.2 2002/07/06 23:59:16 keithp Exp $ # # Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc. # @@ -24,7 +24,8 @@ # Georgian (KA) 0589 # Armenian full stop (vertsaket) 10a0-10c5 -10d0-10f8 +10d0-10f6 +#10f7-10f8 # additional letters for Mingrelian and Svan 10fb #2018 # single quote #201a # single quote diff --git a/fc-lang/zh_mo.orth b/fc-lang/zh_mo.orth new file mode 100644 index 0000000..d990922 --- /dev/null +++ b/fc-lang/zh_mo.orth @@ -0,0 +1,27 @@ +# +# $XFree86$ +# +# Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc. +# +# Permission to use, copy, modify, distribute, and sell this software and its +# documentation for any purpose is hereby granted without fee, provided that +# the above copyright notice appear in all copies and that both that +# copyright notice and this permission notice appear in supporting +# documentation, and that the name of Keith Packard not be used in +# advertising or publicity pertaining to distribution of the software without +# specific, written prior permission. Keith Packard makes no +# representations about the suitability of this software for any purpose. It +# is provided "as is" without express or implied warranty. +# +# KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, +# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO +# EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +# PERFORMANCE OF THIS SOFTWARE. +# +# Chinese in Macau (ZH-MO) +# +# Just use Big5 as for ZH-TW +include zh_tw.orth diff --git a/fc-lang/zh_sg.orth b/fc-lang/zh_sg.orth new file mode 100644 index 0000000..acf86b5 --- /dev/null +++ b/fc-lang/zh_sg.orth @@ -0,0 +1,27 @@ +# +# $XFree86$ +# +# Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc. +# +# Permission to use, copy, modify, distribute, and sell this software and its +# documentation for any purpose is hereby granted without fee, provided that +# the above copyright notice appear in all copies and that both that +# copyright notice and this permission notice appear in supporting +# documentation, and that the name of Keith Packard not be used in +# advertising or publicity pertaining to distribution of the software without +# specific, written prior permission. Keith Packard makes no +# representations about the suitability of this software for any purpose. It +# is provided "as is" without express or implied warranty. +# +# KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, +# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO +# EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +# PERFORMANCE OF THIS SOFTWARE. +# +# Chinese in Singapore (ZH-SG) +# +# Just use GB2312 as for ZH-CH +include zh_cn.orth diff --git a/src/fcfreetype.c b/src/fcfreetype.c index 98c6f82..a90be33 100644 --- a/src/fcfreetype.c +++ b/src/fcfreetype.c @@ -1,5 +1,5 @@ /* - * $XFree86: xc/lib/fontconfig/src/fcfreetype.c,v 1.5 2002/06/29 20:31:02 keithp Exp $ + * $XFree86: xc/lib/fontconfig/src/fcfreetype.c,v 1.6 2002/07/06 23:47:43 keithp Exp $ * * Copyright © 2001 Keith Packard, member of The XFree86 Project, Inc. * @@ -30,198 +30,33 @@ #include #include -static const FcChar8 *fcLangLatin1[] = { - (FcChar8 *) "br", /* Breton */ - (FcChar8 *) "ca", /* Catalan */ - (FcChar8 *) "da", /* Danish */ - (FcChar8 *) "de", /* German */ - (FcChar8 *) "en", /* English */ - (FcChar8 *) "es", /* Spanish */ - (FcChar8 *) "eu", /* Basque */ - (FcChar8 *) "fi", /* Finnish */ - (FcChar8 *) "fo", /* Faroese */ - (FcChar8 *) "fr", /* French */ - (FcChar8 *) "ga", /* Irish */ - (FcChar8 *) "gd", /* Scottish */ - (FcChar8 *) "gl", /* Galician */ - (FcChar8 *) "is", /* Islandic */ - (FcChar8 *) "it", /* Italian */ - (FcChar8 *) "kl", /* Greenlandic */ - (FcChar8 *) "la", /* Latin */ - (FcChar8 *) "nl", /* Dutch */ - (FcChar8 *) "no", /* Norwegian */ - (FcChar8 *) "pt", /* Portuguese */ - (FcChar8 *) "rm", /* Rhaeto-Romanic */ - (FcChar8 *) "sq", /* Albanian */ - (FcChar8 *) "sv", /* Swedish */ - 0 -}; - -static const FcChar8 *fcLangLatin2[] = { - (FcChar8 *) "cs", /* Czech */ - (FcChar8 *) "de", /* German */ - (FcChar8 *) "en", /* English */ - (FcChar8 *) "fi", /* Finnish */ - (FcChar8 *) "hr", /* Croatian */ - (FcChar8 *) "hu", /* Hungarian */ - (FcChar8 *) "la", /* Latin */ - (FcChar8 *) "pl", /* Polish */ - (FcChar8 *) "ro", /* Romanian */ - (FcChar8 *) "sk", /* Slovak */ - (FcChar8 *) "sl", /* Slovenian */ - (FcChar8 *) "sq", /* Albanian */ - 0 -}; - -static const FcChar8 *fcLangCyrillic[] = { - (FcChar8 *) "az", /* Azerbaijani */ - (FcChar8 *) "ba", /* Bashkir */ - (FcChar8 *) "bg", /* Bulgarian */ - (FcChar8 *) "be", /* Byelorussian */ - (FcChar8 *) "kk", /* Kazakh */ - (FcChar8 *) "ky", /* Kirghiz */ - (FcChar8 *) "mk", /* Macedonian */ - (FcChar8 *) "mo", /* Moldavian */ - (FcChar8 *) "mn", /* Mongolian */ - (FcChar8 *) "ru", /* Russian */ - (FcChar8 *) "sr", /* Serbian */ - (FcChar8 *) "tg", /* Tadzhik */ - (FcChar8 *) "tt", /* Tatar */ - (FcChar8 *) "tk", /* Turkmen */ - (FcChar8 *) "uz", /* Uzbek */ - (FcChar8 *) "uk", /* Ukrainian */ - 0, -}; - -static const FcChar8 *fcLangGreek[] = { - (FcChar8 *) "el", /* Greek */ - 0 -}; - -static const FcChar8 *fcLangTurkish[] = { - (FcChar8 *) "tr", /* Turkish */ - 0 -}; - -static const FcChar8 *fcLangHebrew[] = { - (FcChar8 *) "he", /* Hebrew */ - (FcChar8 *) "yi", /* Yiddish */ - 0 -}; - -static const FcChar8 *fcLangArabic[] = { - (FcChar8 *) "ar", /* arabic */ - 0 -}; - -static const FcChar8 *fcLangWindowsBaltic[] = { - (FcChar8 *) "da", /* Danish */ - (FcChar8 *) "de", /* German */ - (FcChar8 *) "en", /* English */ - (FcChar8 *) "et", /* Estonian */ - (FcChar8 *) "fi", /* Finnish */ - (FcChar8 *) "la", /* Latin */ - (FcChar8 *) "lt", /* Lithuanian */ - (FcChar8 *) "lv", /* Latvian */ - (FcChar8 *) "no", /* Norwegian */ - (FcChar8 *) "pl", /* Polish */ - (FcChar8 *) "sl", /* Slovenian */ - (FcChar8 *) "sv", /* Swedish */ - 0 -}; - -static const FcChar8 *fcLangVietnamese[] = { - (FcChar8 *) "vi", /* Vietnamese */ - 0, -}; - -static const FcChar8 *fcLangThai[] = { - (FcChar8 *) "th", /* Thai */ - 0, -}; - -static const FcChar8 *fcLangJapanese[] = { - (FcChar8 *) "ja", /* Japanese */ - 0, -}; - -static const FcChar8 *fcLangSimplifiedChinese[] = { - (FcChar8 *) "zh-cn", /* Chinese-China */ - 0, -}; - -static const FcChar8 *fcLangKorean[] = { - (FcChar8 *) "ko", /* Korean */ - 0, -}; - -static const FcChar8 *fcLangTraditionalChinese[] = { - (FcChar8 *) "zh-tw", /* Chinese-Taiwan */ - 0, -}; - -static const FcChar8 *fcLangEnglish[] = { - (FcChar8 *) "en", /* English */ - 0, -}; - /* - * Elide some of the less useful bits + * Keep Han languages separated by eliminating languages + * that the codePageRange bits says aren't supported */ + static const struct { int bit; - const FcChar8 **lang; + const FcChar8 *lang; } FcCodePageRange[] = { - { 0, fcLangLatin1 }, - { 1, fcLangLatin2 }, - { 2, fcLangCyrillic }, - { 3, fcLangGreek }, - { 4, fcLangTurkish }, - { 5, fcLangHebrew }, - { 6, fcLangArabic }, - { 7, fcLangWindowsBaltic }, - { 8, fcLangVietnamese }, -/* 9-15 reserved for Alternate ANSI */ - { 16, fcLangThai }, - { 17, fcLangJapanese }, - { 18, fcLangSimplifiedChinese }, - { 19, fcLangKorean }, - { 20, fcLangTraditionalChinese }, - { 21, fcLangKorean }, -/* 22-28 reserved for Alternate ANSI & OEM */ -/* { 29, fcLangMacintosh }, */ -/* { 30, fcLangOem }, */ -/* { 31, fcLangSymbol },*/ -/* 32-47 reserved for OEM */ - { 48, fcLangGreek }, - { 49, fcLangCyrillic }, -/* { 50, fcLangMsdosNordic }, */ - { 51, fcLangArabic }, -/* { 52, fcLangMSDOS_CANADIAN_FRENCH }, */ - { 53, fcLangHebrew }, -/* { 54, fcLangMSDOS_ICELANDIC }, */ -/* { 55, fcLangMSDOS_PORTUGUESE }, */ - { 56, fcLangTurkish }, - { 57, fcLangCyrillic }, - { 58, fcLangLatin2 }, - { 59, fcLangWindowsBaltic }, - { 60, fcLangGreek }, - { 61, fcLangArabic }, - { 62, fcLangLatin1 }, - { 63, fcLangEnglish }, + { 17, (const FcChar8 *) "ja" }, + { 18, (const FcChar8 *) "zh-tw" }, + { 19, (const FcChar8 *) "ko" }, + { 20, (const FcChar8 *) "zh-cn" }, }; #define NUM_CODE_PAGE_RANGE (sizeof FcCodePageRange / sizeof FcCodePageRange[0]) FcBool -FcFreeTypeHasLang (FcPattern *pattern, const FcChar8 *lang) +FcFreeTypeIsExclusiveLang (const FcChar8 *lang) { - FcChar8 *old; - int i; + int i; - for (i = 0; FcPatternGetString (pattern, FC_LANG, i, &old) == FcResultMatch; i++) - if (!FcStrCmp (lang, old)) + for (i = 0; i < NUM_CODE_PAGE_RANGE; i++) + { + if (FcLangCompare (lang, FcCodePageRange[i].lang) != FcLangDifferentLang) return FcTrue; + } return FcFalse; } @@ -240,10 +75,7 @@ FcFreeTypeQuery (const FcChar8 *file, FT_Library ftLibrary; const FcChar8 *family; TT_OS2 *os2; - FcChar32 codepoints; - FcChar8 *lang; - FcBool hasLang = FcFalse; - + const FcChar8 *exclusiveLang = 0; if (FT_Init_FreeType (&ftLibrary)) return 0; @@ -335,16 +167,17 @@ FcFreeTypeQuery (const FcChar8 *file, } if (bits & (1 << bit)) { - int j; - const FcChar8 *lang; - - for (j = 0; (lang = FcCodePageRange[i].lang[j]); j++) - if (!FcFreeTypeHasLang (pat, lang)) - { - if (!FcPatternAddString (pat, FC_LANG, lang)) - goto bail1; - hasLang = FcTrue; - } + /* + * If the font advertises support for multiple + * "exclusive" languages, then include support + * for any language found to have coverage + */ + if (exclusiveLang) + { + exclusiveLang = 0; + break; + } + exclusiveLang = FcCodePageRange[i].lang; } } } @@ -356,12 +189,11 @@ FcFreeTypeQuery (const FcChar8 *file, if (!cs) goto bail1; - codepoints = FcCharSetCount (cs); /* * Skip over PCF fonts that have no encoded characters; they're * usually just Unicode fonts transcoded to some legacy encoding */ - if (codepoints == 0) + if (FcCharSetCount (cs) == 0) { if (!strcmp(FT_MODULE_CLASS(&face->driver->root)->module_name, "pcf")) goto bail2; @@ -370,18 +202,8 @@ FcFreeTypeQuery (const FcChar8 *file, if (!FcPatternAddCharSet (pat, FC_CHARSET, cs)) goto bail2; - if (!hasLang) - { - if (!FcFreeTypeSetLang (pat, cs)) - goto bail2; - - /* - * Make sure it has a lang entry - */ - if (FcPatternGetString (pat, FC_LANG, 0, &lang) != FcResultMatch) - if (!FcPatternAddString (pat, FC_LANG, (FcChar8 *) "x-unknown")) - goto bail2; - } + if (!FcFreeTypeSetLang (pat, cs, exclusiveLang)) + goto bail2; /* * Drop our reference to the charset diff --git a/src/fcint.h b/src/fcint.h index 00ee5f6..777b214 100644 --- a/src/fcint.h +++ b/src/fcint.h @@ -1,5 +1,5 @@ /* - * $XFree86: xc/lib/fontconfig/src/fcint.h,v 1.13 2002/06/03 08:31:15 keithp Exp $ + * $XFree86: xc/lib/fontconfig/src/fcint.h,v 1.16 2002/07/06 23:47:44 keithp Exp $ * * Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc. * @@ -398,6 +398,9 @@ int FcFontDebug (void); /* fcfreetype.c */ +FcBool +FcFreeTypeIsExclusiveLang (const FcChar8 *lang); + FcBool FcFreeTypeHasLang (FcPattern *pattern, const FcChar8 *lang); @@ -470,7 +473,9 @@ FcMemFree (int kind, int size); /* fclang.c */ FcBool -FcFreeTypeSetLang (FcPattern *pattern, FcCharSet *charset); +FcFreeTypeSetLang (FcPattern *pattern, + FcCharSet *charset, + const FcChar8 *exclusiveLang); FcLangResult FcLangCompare (const FcChar8 *s1, const FcChar8 *s2); diff --git a/src/fclang.c b/src/fclang.c index e3fe094..9795ec8 100644 --- a/src/fclang.c +++ b/src/fclang.c @@ -29,2620 +29,52 @@ typedef struct { FcCharSet charset; } FcLangCharSet; -/* total size: 496 unique leaves: 436 */ - -static const FcCharLeaf leaves[436] = { - { { /* 0 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x08000800, 0x00000000, 0x00000000, - } }, - { { /* 1 */ - 0xffff8002, 0xffffffff, 0x8002ffff, 0x00000000, - 0xc0000000, 0xf0fc33c0, 0x03000000, 0x00000000, - } }, - { { /* 2 */ - 0x88001000, 0x07fffffe, 0x0007ffff, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 3 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x10400090, 0x10400090, - } }, - { { /* 4 */ - 0xc0000000, 0x00030000, 0xc0000000, 0x00000000, - 0x00008000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 5 */ - 0x00000000, 0x00000000, 0x02000000, 0x00000000, - 0x00000000, 0x10000000, 0x00000000, 0x00000000, - } }, - { { /* 6 */ - 0xffff0100, 0xffffffff, 0x0100ffff, 0x00000000, - 0x300c0000, 0x0f00c000, 0x03000000, 0x00000300, - } }, - { { /* 7 */ - 0xffff0002, 0xffffffff, 0x0002ffff, 0x00000000, - 0x030c0000, 0x0000cc0f, 0x03000000, 0x00000300, - } }, - { { /* 8 */ - 0xffff4042, 0xffffffff, 0x4042ffff, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 9 */ - 0xffff0001, 0xffffd7ff, 0x2001d7ff, 0x00000c0c, - 0x00000000, 0x00002000, 0x00000000, 0x00000000, - } }, - { { /* 10 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0xfff99fee, 0xd3c5fdff, 0xb080399f, 0x07ffffcf, - } }, - { { /* 11 */ - 0xffffffff, 0xffffffff, 0xfffffeff, 0xfffe07ff, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 12 */ - 0x00000000, 0x00000080, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000800, 0x12020404, 0x12020404, - } }, - { { /* 13 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00800000, 0x140ca381, 0x140ca381, - } }, - { { /* 14 */ - 0x00000000, 0x80000000, 0x00000001, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 15 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000800, 0x0a12cf45, 0x8a12cf45, - } }, - { { /* 16 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x34482212, 0x34482212, - } }, - { { /* 17 */ - 0x0c00f000, 0x00000000, 0x03000180, 0x6000c033, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 18 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000800, 0x75592ff7, 0x75592ff7, - } }, - { { /* 19 */ - 0x00000000, 0x00000000, 0x000c0000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0xfc000000, - } }, - { { /* 20 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000800, 0x90400010, 0x10400010, - } }, - { { /* 21 */ - 0x00000000, 0x00000000, 0x00000000, 0x44300000, - 0xffffd7f0, 0xfffffffb, 0xfc807fff, 0x00000003, - } }, - { { /* 22 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x8fd38f81, 0x00520000, - } }, - { { /* 23 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 24 */ - 0x30000300, 0x00300030, 0x30000000, 0x00003000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 25 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x80000002, 0x140a2202, 0x140a2202, - } }, - { { /* 26 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x10600010, 0x10600010, - } }, - { { /* 27 */ - 0x00000000, 0x00000000, 0x00000000, 0x60000003, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 28 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x10020000, 0x10020000, - } }, - { { /* 29 */ - 0x00000000, 0x00000000, 0x00300000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 30 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000000, 0x10600070, 0x10600070, - } }, - { { /* 31 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x35492072, 0x35492072, - } }, - { { /* 32 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x060c3383, 0x060c3383, - } }, - { { /* 33 */ - 0x00000c00, 0x00000003, 0x00000000, 0x80000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 34 */ - 0x00000000, 0x00000000, 0x00000000, 0x10000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 35 */ - 0xc0000c0c, 0x00000000, 0x00c00003, 0x00000c03, - 0x08000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 36 */ - 0x00000000, 0x00000000, 0x00000400, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 37 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x020c1381, 0x020c1381, - } }, - { { /* 38 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x88000802, 0x140a2202, 0x140a2202, - } }, - { { /* 39 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0xfffbafee, 0xf3edfdff, 0x00013bbf, 0x0000ffc1, - } }, - { { /* 40 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0xffff0000, 0x000007ff, - } }, - { { /* 41 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x02041101, 0x02041101, - } }, - { { /* 42 */ - 0x000330c0, 0x00000000, 0x00000000, 0x60000003, - 0x00000000, 0x00000000, 0x00001ff0, 0x003e0000, - } }, - { { /* 43 */ - 0x00ffffff, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 44 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x14482203, 0x14482203, - } }, - { { /* 45 */ - 0x00000000, 0x00000000, 0x00030000, 0x00030000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 46 */ - 0x00000000, 0xfffe0000, 0xfc7fffff, 0xfffffffe, - 0x0000067f, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 47 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x75092a72, 0x75092272, - } }, - { { /* 48 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x060cb301, 0x060cb300, - } }, - { { /* 49 */ - 0x000000e7, 0x00000000, 0xfffffffe, 0xffffffff, - 0x780fffff, 0xfffffffe, 0xffffffff, 0x787fffff, - } }, - { { /* 50 */ - 0x43f36f8b, 0x9b462442, 0xe3e0e82c, 0x400a0004, - 0xdb365f65, 0x04497977, 0xe3f0ecd7, 0x08c56038, - } }, - { { /* 51 */ - 0x3403e602, 0x35518000, 0x7eabe0c8, 0x98698200, - 0x2942a948, 0x8060e803, 0xad93441c, 0x4568c03a, - } }, - { { /* 52 */ - 0x8656aa60, 0x02403f7a, 0x14618388, 0x21741020, - 0x07022021, 0x40bc3000, 0x4462a624, 0x0a2060a8, - } }, - { { /* 53 */ - 0x85740217, 0x9c840402, 0x14157bfb, 0x11e27f24, - 0x02efb665, 0x20ff1f75, 0x38403a70, 0x676326c3, - } }, - { { /* 54 */ - 0x20924dd9, 0x0fc946b0, 0x4850bc98, 0xa03f8638, - 0x88162388, 0x52323e09, 0xe3a422aa, 0xc72c00dd, - } }, - { { /* 55 */ - 0x26e1a166, 0x8f0a840b, 0x559e27eb, 0x89bbc241, - 0x85400014, 0x08496361, 0x8ad07f0c, 0x05cfff3e, - } }, - { { /* 56 */ - 0xa803ff1a, 0x7b407a41, 0x80024745, 0x38eb0500, - 0x0005d851, 0x710c9934, 0x01000397, 0x24046366, - } }, - { { /* 57 */ - 0x005180d0, 0x430ac000, 0x30c89071, 0x58000008, - 0xf7000e99, 0x00415f80, 0x941000b0, 0x62800018, - } }, - { { /* 58 */ - 0x09d00240, 0x01568200, 0x08015004, 0x05101d10, - 0x001084c1, 0x10504025, 0x4d8a410f, 0xa60d4009, - } }, - { { /* 59 */ - 0x914cab19, 0x098121c0, 0x0003c485, 0x80000652, - 0x00080b04, 0x0009041d, 0x905c4849, 0x16900009, - } }, - { { /* 60 */ - 0x22200c65, 0x24338412, 0x47960c03, 0x42250a04, - 0x90880028, 0x4f084900, 0xd3aa14a2, 0x3e87d830, - } }, - { { /* 61 */ - 0x1f618604, 0x41867ea4, 0x05b3c390, 0x211857a5, - 0x2a48241e, 0x4a041128, 0x161b0a40, 0x88400d60, - } }, - { { /* 62 */ - 0x9502020a, 0x10608221, 0x04000243, 0x80001444, - 0x0c040000, 0x70000000, 0x00c11a06, 0x0c00024a, - } }, - { { /* 63 */ - 0x00401a00, 0x40451404, 0xbdb30029, 0x052b0a78, - 0xbfa0bba9, 0x8379407c, 0xe81d12fc, 0xc5694bf6, - } }, - { { /* 64 */ - 0x044aeff6, 0xff022115, 0x402bed63, 0x0242d033, - 0x00131000, 0x59ca1b02, 0x020000a0, 0x2c41a703, - } }, - { { /* 65 */ - 0x8ff24880, 0x00000204, 0x10055800, 0x00489200, - 0x20011894, 0x34805004, 0x684c3200, 0x68be49ea, - } }, - { { /* 66 */ - 0x2e42184c, 0x21c9a820, 0x80b050b9, 0xff7c001e, - 0x14e0849a, 0x01e028c1, 0xac49870e, 0xdddb130f, - } }, - { { /* 67 */ - 0x89fbbe1a, 0x51a2a2e0, 0x32ca5502, 0x928b3e46, - 0x438f1dbf, 0x32186703, 0x33c03028, 0xa9230811, - } }, - { { /* 68 */ - 0x3a65c000, 0x04028fe3, 0x86252c4e, 0x00a1bf3d, - 0x8cd43a1a, 0x317c06c9, 0x950a00e0, 0x0edb018b, - } }, - { { /* 69 */ - 0x8c20e34b, 0xf0101182, 0xa7287d94, 0x40fbc9ac, - 0x06534484, 0x44445a90, 0x00013fc8, 0xf5d40048, - } }, - { { /* 70 */ - 0xec577701, 0x891dc442, 0x49286b83, 0xd2424109, - 0x59fe061d, 0x3a221800, 0x3b9fb7e4, 0xc0eaf003, - } }, - { { /* 71 */ - 0x82021386, 0xe4008980, 0x10a1b200, 0x0cc44b80, - 0x8944d309, 0x48341faf, 0x0c458259, 0x0450420a, - } }, - { { /* 72 */ - 0x10c8a040, 0x44503140, 0x01004004, 0x05408280, - 0x442c0108, 0x1a056a30, 0x051420a6, 0x645690cf, - } }, - { { /* 73 */ - 0x31000021, 0xcbf09c18, 0x63e2a120, 0x01b5104c, - 0x9a83538c, 0x3281b8b2, 0x0a84987a, 0x0c0233e7, - } }, - { { /* 74 */ - 0x9018d4cc, 0x9070a1a1, 0xe0048a1e, 0x0451c3d4, - 0x21c2439a, 0x53104844, 0x36400292, 0xf3bd0241, - } }, - { { /* 75 */ - 0xe8f0ab09, 0xa5d27dc0, 0xd24bc242, 0xd0afa43f, - 0x34a11aa0, 0x03d88247, 0x651bc452, 0xc83ad294, - } }, - { { /* 76 */ - 0x40c8001c, 0x33140e06, 0xb21b614f, 0xc0d00088, - 0xa898a02a, 0x166ba1c5, 0x85b42e50, 0x0604c08b, - } }, - { { /* 77 */ - 0x1e04f933, 0xa251056e, 0x76380400, 0x73b8ec07, - 0x18324406, 0xc8164081, 0x63097c8a, 0xaa042980, - } }, - { { /* 78 */ - 0xca9c1c24, 0x27604e0e, 0x83000990, 0x81040046, - 0x10816011, 0x0908540d, 0xcc0a000e, 0x0c000500, - } }, - { { /* 79 */ - 0xa0440430, 0x6784008b, 0x8a195288, 0x8b18865e, - 0x41602e59, 0x9cbe8c10, 0x891c6861, 0x00089800, - } }, - { { /* 80 */ - 0x089a8100, 0x41900018, 0xe4a14007, 0x640d0505, - 0x0e4d310e, 0xff0a4806, 0x2aa81632, 0x000b852e, - } }, - { { /* 81 */ - 0xca841800, 0x696c0e20, 0x16000032, 0x03905658, - 0x1a285120, 0x11248000, 0x432618e1, 0x0eaa5d52, - } }, - { { /* 82 */ - 0xae280fa0, 0x4500fa7b, 0x89406408, 0xc044c880, - 0xb1419005, 0x24c48424, 0x603a1a34, 0xc1949000, - } }, - { { /* 83 */ - 0x003a8246, 0xc106180d, 0x99100022, 0x1511e050, - 0x00824057, 0x020a041a, 0x8930004f, 0x444ad813, - } }, - { { /* 84 */ - 0xed228a02, 0x400510c0, 0x01021000, 0x31018808, - 0x02044600, 0x0708f000, 0xa2008900, 0x22020000, - } }, - { { /* 85 */ - 0x16100200, 0x10400042, 0x02605200, 0x200052f4, - 0x82308510, 0x42021100, 0x80b54308, 0x9a2070e1, - } }, - { { /* 86 */ - 0x08012040, 0xfc653500, 0xab0419c1, 0x62140286, - 0x00440087, 0x02449085, 0x0a85405c, 0x33803207, - } }, - { { /* 87 */ - 0xb8c00400, 0xc0d0ce20, 0x0080c030, 0x0d250508, - 0x00400a90, 0x080c0200, 0x40006505, 0x41026421, - } }, - { { /* 88 */ - 0x00000268, 0x847c0024, 0xde200002, 0x40498619, - 0x40000808, 0x20010084, 0x10108400, 0x01c742cd, - } }, - { { /* 89 */ - 0xd52a7038, 0x1d8f1968, 0x3e12be50, 0x81d92ef5, - 0x2412cec4, 0x732e0828, 0x4b3424ac, 0xd41d020c, - } }, - { { /* 90 */ - 0x80002a02, 0x08110097, 0x114411c4, 0x7d451786, - 0x064949d9, 0x87914000, 0xd8c4254c, 0x491444ba, - } }, - { { /* 91 */ - 0xc8001b92, 0x15800271, 0x0c000081, 0xc200096a, - 0x40024800, 0xba493021, 0x1c802080, 0x1008e2ac, - } }, - { { /* 92 */ - 0x00341004, 0x841400e1, 0x20000020, 0x10149800, - 0x04aa70c2, 0x54208688, 0x04130c62, 0x20109180, - } }, - { { /* 93 */ - 0x02064082, 0x54001c40, 0xe4e90383, 0x84802125, - 0x2000e433, 0xe60944c0, 0x81260a03, 0x080112da, - } }, - { { /* 94 */ - 0x97906901, 0xf8864001, 0x0081e24d, 0xa6510a0e, - 0x81ec011a, 0x8441c600, 0xb62cadb8, 0x8741a46f, - } }, - { { /* 95 */ - 0x4b028d54, 0x02681161, 0x2057bb60, 0x043350a0, - 0xb7b4a8c0, 0x01122402, 0x20009ad3, 0x00c82271, - } }, - { { /* 96 */ - 0x809e2081, 0xe1800c8a, 0x8151b009, 0x40281031, - 0x89a52a0e, 0x620e69b6, 0xd1444425, 0x4d548085, - } }, - { { /* 97 */ - 0x1fb12c75, 0x862dd807, 0x4841d87c, 0x226e414e, - 0x9e088200, 0xed37f80c, 0x75268c80, 0x08149313, - } }, - { { /* 98 */ - 0xc8040e32, 0x6ea6484e, 0x66702c4a, 0xba0126c0, - 0x185dd30c, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 99 */ - 0x00000000, 0x05400000, 0x81337020, 0x03a54f81, - 0x641055ec, 0x2344c318, 0x00341462, 0x1a090a43, - } }, - { { /* 100 */ - 0x13a5187b, 0xa8480102, 0xc5440440, 0xe2dd8106, - 0x2d481af0, 0x0416b626, 0x6e405058, 0x31128032, - } }, - { { /* 101 */ - 0x0c0007e4, 0x420a8208, 0x803b4840, 0x87134860, - 0x3428850d, 0xe5290319, 0x870a2345, 0x5c1825a9, - } }, - { { /* 102 */ - 0xd9c577a6, 0x03e85e00, 0xa7000081, 0x41c6cd54, - 0xa2042800, 0x2b0ab860, 0xda9e0020, 0x0e1a08ea, - } }, - { { /* 103 */ - 0x11c0427c, 0x03768908, 0x01058621, 0x18a80000, - 0xc44846a0, 0x20220d05, 0x91485422, 0x28978a01, - } }, - { { /* 104 */ - 0x00087898, 0x31221605, 0x08804240, 0x06a2fa4e, - 0x92110814, 0x9b042002, 0x06432e52, 0x90105000, - } }, - { { /* 105 */ - 0x85ba0041, 0x20203042, 0x05a04f0b, 0x40802708, - 0x1a930591, 0x0600df50, 0x3021a202, 0x4e800630, - } }, - { { /* 106 */ - 0x04c80cc4, 0x8001a004, 0xd4316000, 0x0a020880, - 0x00281c00, 0x00418e18, 0xca106ad0, 0x4b00f210, - } }, - { { /* 107 */ - 0x1506274d, 0x88900220, 0x82a85a00, 0x81504549, - 0x80002004, 0x2c088804, 0x000508d1, 0x4ac48001, - } }, - { { /* 108 */ - 0x0062e020, 0x0a42008e, 0x6a8c3055, 0xe0a5090e, - 0x42c42906, 0x80b34814, 0xb330803e, 0x731c0102, - } }, - { { /* 109 */ - 0x600d1494, 0x09400c20, 0xc040301a, 0xc094a451, - 0x05c88dca, 0xa40c96c2, 0x34040001, 0x011000c8, - } }, - { { /* 110 */ - 0xa9c9550d, 0x1c5a2428, 0x48370142, 0x100f7a4d, - 0x452a32b4, 0x9205317b, 0x5c44b894, 0x458a68d7, - } }, - { { /* 111 */ - 0x2ed15097, 0x42081943, 0x9d40d202, 0x20979840, - 0x064d5409, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 112 */ - 0x00000000, 0x84800000, 0x04215542, 0x17001c06, - 0x61107624, 0xb9ddff87, 0x5c0a659f, 0x3c00245d, - } }, - { { /* 113 */ - 0x0059adb0, 0x00000000, 0x00000000, 0x009b28d0, - 0x02000422, 0x44080108, 0xac409804, 0x90288d0a, - } }, - { { /* 114 */ - 0xe0018700, 0x00310400, 0x82211794, 0x10540019, - 0x021a2cb2, 0x40039c02, 0x88043d60, 0x7900080c, - } }, - { { /* 115 */ - 0xba3c1628, 0xcb088640, 0x90807274, 0x0000001e, - 0xd8000000, 0x9c87e188, 0x04124034, 0x2791ae64, - } }, - { { /* 116 */ - 0xe6fbe86b, 0x5366408f, 0x537feea6, 0xb5e4e32b, - 0x0002869f, 0x01228548, 0x08004402, 0x20a02116, - } }, - { { /* 117 */ - 0x02040004, 0x00052000, 0x01547e00, 0x01ac162c, - 0x10852a84, 0x05308c14, 0xb943fbc3, 0x906000ca, - } }, - { { /* 118 */ - 0x40326000, 0x80901200, 0x4c810b30, 0x40020054, - 0x1d6a0029, 0x02802000, 0x00048000, 0x150c2610, - } }, - { { /* 119 */ - 0x07018040, 0x0c24d94d, 0x18502810, 0x50205001, - 0x04d01000, 0x02017080, 0x21c30108, 0x00000132, - } }, - { { /* 120 */ - 0x07190088, 0x05600802, 0x4c0e0012, 0xf0a10405, - 0x00000002, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 121 */ - 0x00000000, 0x00000000, 0x00000000, 0x00800000, - 0x035a8e8d, 0x5a0421bd, 0x11703488, 0x00000026, - } }, - { { /* 122 */ - 0x10000000, 0x8804c502, 0xf801b815, 0x25ed147c, - 0x1bb0ed60, 0x1bd70589, 0x1a627af3, 0x0ac50d0c, - } }, - { { /* 123 */ - 0x524ae5d1, 0x63050490, 0x52440354, 0x16122b57, - 0x1101a872, 0x00182949, 0x10080948, 0x886c6000, - } }, - { { /* 124 */ - 0x058f916e, 0x39903012, 0x4930f840, 0x001b8880, - 0x00000000, 0x00428500, 0x98000058, 0x7014ea04, - } }, - { { /* 125 */ - 0x611d1628, 0x60005113, 0x00a71a24, 0x00000000, - 0x03c00000, 0x10187120, 0xa9270172, 0x89066004, - } }, - { { /* 126 */ - 0x020cc022, 0x40810900, 0x8ca0202d, 0x00000e34, - 0x00000000, 0x11012100, 0xc11a8011, 0x0892ec4c, - } }, - { { /* 127 */ - 0x85000040, 0x1806c7ac, 0x0512e03e, 0x00108000, - 0x80ce4008, 0x02106d01, 0x08568641, 0x0027011e, - } }, - { { /* 128 */ - 0x083d3750, 0x4e05e032, 0x048401c0, 0x01400081, - 0x00000000, 0x00000000, 0x00000000, 0x00591aa0, - } }, - { { /* 129 */ - 0x882443c8, 0xc8001d48, 0x72030152, 0x04049013, - 0x04008280, 0x0d148a10, 0x02088056, 0x2704a040, - } }, - { { /* 130 */ - 0x4c000000, 0x00000000, 0x00000000, 0xa3200000, - 0xa0ae1902, 0xdf002660, 0x7b15f010, 0x3ad08121, - } }, - { { /* 131 */ - 0x00284180, 0x48001003, 0x8014cc00, 0x00c414cf, - 0x30202000, 0x00000001, 0x00000000, 0x00000000, - } }, - { { /* 132 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000020, - } }, - { { /* 133 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000200, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 134 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0xffffffff, 0xffff003f, 0x09ffffff, - } }, - { { /* 135 */ - 0xffff0042, 0xffffffff, 0x0042ffff, 0x00000000, - 0x0c0c0000, 0x0c00000c, 0x03000000, 0x00000300, - } }, - { { /* 136 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000800, 0x0d10646e, 0x0d10646e, - } }, - { { /* 137 */ - 0x00000000, 0x01000300, 0x00000000, 0x00000300, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 138 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0xffffffff, 0xffffffff, 0x1fffffff, 0x000003ff, - } }, - { { /* 139 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0xfffddfec, 0xc3effdff, 0x40603ddf, 0x0000ffc3, - } }, - { { /* 140 */ - 0x00000007, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 141 */ - 0x00000000, 0xfffe0000, 0xffffffff, 0xffffffff, - 0x00007fff, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 142 */ - 0x1fffffff, 0x00000000, 0x00000000, 0x8fffffff, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 143 */ - 0x43722f8b, 0x0b042000, 0xe340e82c, 0x40c82800, - 0x49375944, 0x04407976, 0xa3f02c93, 0x08c50038, - } }, - { { /* 144 */ - 0x0003ee02, 0x35508000, 0x1e23e1c8, 0xc4498200, - 0x2942ad5a, 0x8060c000, 0xa49a461c, 0x052ac003, - } }, - { { /* 145 */ - 0xd6462a44, 0x08003dda, 0x14208388, 0x01700020, - 0x03022021, 0x40ac3000, 0x44628620, 0x8a0020a0, - } }, - { { /* 146 */ - 0x80040253, 0x14840402, 0x10047bfb, 0x11e27fa4, - 0x00a42441, 0x20c01421, 0x70003a50, 0x27430002, - } }, - { { /* 147 */ - 0x208245c9, 0x0fc14630, 0x28503c88, 0xa0248602, - 0x88062388, 0x40000e19, 0xeb6422aa, 0xcd28001c, - } }, - { { /* 148 */ - 0x02e1a120, 0x8200840b, 0x549e279b, 0xa0b38141, - 0x85080010, 0x08002061, 0x08d02f08, 0x010fbe3e, - } }, - { { /* 149 */ - 0xa803f718, 0x5b080a41, 0x00020504, 0x382a0500, - 0x00015041, 0x21081910, 0x00000313, 0x04046122, - } }, - { { /* 150 */ - 0x100140d0, 0x40228000, 0x40488050, 0x10000008, - 0x370006d1, 0x00005e80, 0x941000a0, 0x60000018, - } }, - { { /* 151 */ - 0x00900240, 0x00548000, 0x00080000, 0x00100900, - 0x00000040, 0x10105020, 0x4c022400, 0x06010001, - } }, - { { /* 152 */ - 0x814c2918, 0x08012100, 0x00036485, 0x10214452, - 0x00080904, 0x0000000d, 0x80004988, 0x16910001, - } }, - { { /* 153 */ - 0x40000765, 0x04338492, 0x45928c00, 0x52200016, - 0xd0080228, 0x4c084300, 0xc32a40a2, 0x2e009810, - } }, - { { /* 154 */ - 0x16708000, 0x40826e84, 0x04b3c390, 0x21187c85, - 0x02c8041c, 0x4a001120, 0x361b0a48, 0x89005540, - } }, - { { /* 155 */ - 0x9902000a, 0x10400221, 0x04000242, 0x00000044, - 0x0c040000, 0x00000010, 0x00001216, 0x00000242, - } }, - { { /* 156 */ - 0x00401a20, 0x00000400, 0xb5b30009, 0x15230a18, - 0x1fe89ba0, 0x8379507c, 0xc09d10fd, 0x0560dbf6, - } }, - { { /* 157 */ - 0x0242ef92, 0xdf020110, 0x08226961, 0x02029035, - 0x00030000, 0x45aa1a02, 0x02000001, 0x28518101, - } }, - { { /* 158 */ - 0x02d26080, 0x00000280, 0x00011800, 0x00009200, - 0x20000880, 0x35000405, 0x60442000, 0x609e49e6, - } }, - { { /* 159 */ - 0x2a42104c, 0xa1482820, 0x802010b1, 0x7b9c000e, - 0x14a08490, 0x41e028c1, 0x8c490704, 0x0cc8100d, - } }, - { { /* 160 */ - 0x89ba8412, 0x142202c0, 0x0ac05500, 0x92833ec4, - 0x43871ca3, 0x22a04703, 0x03c03028, 0xa0200801, - } }, - { { /* 161 */ - 0x30448000, 0x000085a3, 0x2225200e, 0x0001b73c, - 0x8c503220, 0x315d0099, 0x940200a0, 0x0e4b0003, - } }, - { { /* 162 */ - 0x8c20e342, 0xd0910080, 0xa3281d94, 0x60c1499c, - 0x07134406, 0x44445a90, 0x00000f88, 0x95c40040, - } }, - { { /* 163 */ - 0x84477581, 0xc0534402, 0x01082b83, 0x92424000, - 0x09a60611, 0x32220800, 0x1bddb384, 0xc08af000, - } }, - { { /* 164 */ - 0x00020282, 0x6c008800, 0x00219200, 0x8c844180, - 0x09441308, 0x000007a7, 0x0c418051, 0x00d06002, - } }, - { { /* 165 */ - 0x10d0a000, 0x44003004, 0x01000000, 0x07008201, - 0x440e0100, 0x08056830, 0x051464b2, 0x441410e6, - } }, - { { /* 166 */ - 0x21000011, 0xcbc09c08, 0x40c2e120, 0x41b4304c, - 0x9a8310ac, 0x328198b2, 0x00849822, 0xbc123369, - } }, - { { /* 167 */ - 0xc03bd6c0, 0x0c53a1a1, 0xea008a1e, 0x05d8cbf0, - 0x21c34390, 0x4a1c4805, 0x324002d0, 0xd79d0041, - } }, - { { /* 168 */ - 0xe8b02b09, 0x24527dc0, 0xd04bc240, 0xc8aba000, - 0x34a98a80, 0x41c98000, 0x241f8010, 0x487b9200, - } }, - { { /* 169 */ - 0x00cc0000, 0x33008406, 0x001b410f, 0x80402000, - 0xa0988022, 0x006ba186, 0x85a42a30, 0x06044181, - } }, - { { /* 170 */ - 0x00046021, 0xa0010080, 0x46b80400, 0x03a0e90f, - 0x18200000, 0x081040a0, 0x0001380a, 0xa8000500, - } }, - { { /* 171 */ - 0xc28a0404, 0x2720000a, 0x830c0910, 0x00000802, - 0x10806211, 0x0808000c, 0x0c08000c, 0x08400000, - } }, - { { /* 172 */ - 0x00441410, 0x6404000b, 0x800150c0, 0x8984047e, - 0x41400658, 0x94a4c000, 0x09dca862, 0x00001800, - } }, - { { /* 173 */ - 0x000a8100, 0x41900008, 0xe4a14007, 0x64452501, - 0x0e7d11ee, 0xfb084800, 0x08a81616, 0x0009c92e, - } }, - { { /* 174 */ - 0x4a821800, 0x6b6406a0, 0x16000002, 0x83905648, - 0x002a73a0, 0x00248000, 0x470288f9, 0x0faa4d02, - } }, - { { /* 175 */ - 0x8e800000, 0x7554b87b, 0xd9402418, 0x040cc880, - 0xb0410000, 0x04428c24, 0x001a5a34, 0xc1108000, - } }, - { { /* 176 */ - 0x00328046, 0x8106180d, 0xcd920002, 0x74016014, - 0x00916112, 0x420ac098, 0x8420040f, 0x40029a13, - } }, - { { /* 177 */ - 0xfd228a62, 0x40808188, 0x21031000, 0x31010808, - 0x07044420, 0x0388b812, 0xa3008900, 0x22020000, - } }, - { { /* 178 */ - 0x46001210, 0x00410042, 0x52415680, 0x200052f0, - 0x82148610, 0x46021004, 0x8035430a, 0xd80060e0, - } }, - { { /* 179 */ - 0x08010041, 0x6c653400, 0xab0411c1, 0x22040286, - 0x00000003, 0x00009084, 0x02814015, 0x33000202, - } }, - { { /* 180 */ - 0x38400400, 0xc0c00e20, 0x00850030, 0x0d250500, - 0x81d04ad0, 0x020c2280, 0x6240b605, 0x62802679, - } }, - { { /* 181 */ - 0x080802ea, 0x8579dd67, 0xdea0081b, 0x40008735, - 0xd1000a8c, 0xa22505aa, 0x15108440, 0x0080404d, - } }, - { { /* 182 */ - 0x8d220012, 0x058f1968, 0x3a1a9080, 0x85618464, - 0x2002ccc0, 0x732e0820, 0x0b3420a4, 0x14150004, - } }, - { { /* 183 */ - 0x82002001, 0x08000057, 0x00445004, 0x79051212, - 0x000940d0, 0x84004000, 0xd844054c, 0x5114409a, - } }, - { { /* 184 */ - 0x40000b12, 0x15800201, 0x08002001, 0xc200084a, - 0x40020800, 0x98093020, 0x18800000, 0x0008e22c, - } }, - { { /* 185 */ - 0x00040004, 0x001410e0, 0x20008020, 0x10009800, - 0x00827082, 0x1c000288, 0x00014c22, 0x08209100, - } }, - { { /* 186 */ - 0x00404002, 0x44001c00, 0x7cc10383, 0x84002121, - 0x0002e002, 0xe20a44c0, 0x81260e03, 0x080002d0, - } }, - { { /* 187 */ - 0x96902921, 0xb8c24001, 0x00806241, 0xa6510a06, - 0x812c0112, 0x0400c600, 0xa2800cb0, 0x8640a429, - } }, - { { /* 188 */ - 0x4a028000, 0x02003041, 0x0057ba40, 0x20205001, - 0x24b08880, 0x01122002, 0x000402d3, 0x00000211, - } }, - { { /* 189 */ - 0x40040080, 0xe0000c82, 0x00003008, 0x00081011, - 0x81a40208, 0x420e40a0, 0xc0400400, 0x48000081, - } }, - { { /* 190 */ - 0x0f912df5, 0x0629d807, 0x4001007c, 0x824e4546, - 0x1008c000, 0xed363005, 0x65400c80, 0x0810930b, - } }, - { { /* 191 */ - 0xe8200600, 0x6082c80a, 0x403400ca, 0x12012e02, - 0x19489004, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 192 */ - 0x00000000, 0x05400000, 0x00311000, 0x02a54c00, - 0x44105520, 0x23040310, 0x80345422, 0x12010a03, - } }, - { { /* 193 */ - 0x01a1126b, 0xa0482000, 0x45400448, 0xe08d8000, - 0x28401af0, 0x04168626, 0x4c005018, 0x21120032, - } }, - { { /* 194 */ - 0x0d0005e4, 0x42008a08, 0x00334800, 0x87030860, - 0x34008501, 0xe4280109, 0x81002045, 0x5c1825a8, - } }, - { { /* 195 */ - 0xd80435a0, 0x02e01c02, 0x020000a1, 0x4146c050, - 0xa6046800, 0xbb8af260, 0xc8b60000, 0x600200e2, - } }, - { { /* 196 */ - 0x0080023e, 0x03728900, 0x00068681, 0x08880000, - 0x41404600, 0x20000e04, 0x10481622, 0x22178a00, - } }, - { { /* 197 */ - 0x00007418, 0x21021200, 0x08800200, 0x0420984a, - 0x12110000, 0x99040002, 0x04022a55, 0x10105000, - } }, - { { /* 198 */ - 0x459a0000, 0xa000b02a, 0x0208420a, 0x00002708, - 0x08128090, 0x04018740, 0x3020e202, 0x8c800630, - } }, - { { /* 199 */ - 0x04c004c4, 0x80002000, 0xd8314000, 0x02000080, - 0x00081400, 0x00000218, 0x8a100880, 0x40002010, - } }, - { { /* 200 */ - 0x1500010d, 0x00000000, 0x80a04000, 0x01500140, - 0x80002004, 0x04080004, 0x00000010, 0x4a049001, - } }, - { { /* 201 */ - 0x80000020, 0x0842000c, 0x2a8c3041, 0xc085090e, - 0x40c42906, 0x00100800, 0xb2308006, 0x21380102, - } }, - { { /* 202 */ - 0x030d0080, 0x09400420, 0x80000012, 0x80040410, - 0x004888ca, 0x24040602, 0x00040001, 0x01100008, - } }, - { { /* 203 */ - 0xa9c8550d, 0x0c522428, 0x48310000, 0x022f624d, - 0x412830a0, 0xd205057b, 0x1844a894, 0x45c26cc2, - } }, - { { /* 204 */ - 0x2ed14017, 0x02081901, 0x1500c202, 0x20919040, - 0x044d0401, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 205 */ - 0x00000000, 0x80800000, 0x04201542, 0x06000c02, - 0x60001404, 0xb9d99f87, 0x540a059f, 0x3810245d, - } }, - { { /* 206 */ - 0x004825b0, 0x00000000, 0x00000000, 0x00990850, - 0x02000420, 0x44080108, 0x28009840, 0x0008810a, - } }, - { { /* 207 */ - 0x40018400, 0x00210400, 0x82000794, 0x00500001, - 0x00002482, 0x00001c00, 0x80043c01, 0x49000800, - } }, - { { /* 208 */ - 0xf83c0228, 0xcb0886c0, 0xa0006230, 0x00000004, - 0x18000000, 0x0007a148, 0x00124024, 0x22852c40, - } }, - { { /* 209 */ - 0xe6b3a96f, 0x5126400f, 0x723b6c86, 0xb5a4e20b, - 0x0222859f, 0x0123854c, 0x40000402, 0x20202102, - } }, - { { /* 210 */ - 0x02240004, 0x00042080, 0x00047e00, 0x01a01604, - 0x10042a80, 0x0032d800, 0x3183fa81, 0x00200488, - } }, - { { /* 211 */ - 0x40872000, 0x84100000, 0x48800221, 0x00000074, - 0x114a0029, 0x02c80000, 0x00049000, 0x11000410, - } }, - { { /* 212 */ - 0xc5010010, 0x0000c957, 0x08102d00, 0x50204000, - 0x04501000, 0x00013088, 0x40020008, 0x00400012, - } }, - { { /* 213 */ - 0x01000010, 0x01200820, 0x08060010, 0xa0000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 214 */ - 0x00000000, 0x00000000, 0x00000000, 0x00800000, - 0x011e8a09, 0x18022138, 0x10700480, 0x00000006, - } }, - { { /* 215 */ - 0x10000000, 0x88044402, 0xf8013815, 0x21e9041c, - 0x1b306c60, 0x08820588, 0x1a607af3, 0x0ac5870c, - } }, - { { /* 216 */ - 0x524a00c1, 0x22050080, 0x50420114, 0x04902206, - 0x0000a800, 0x00002901, 0x10080840, 0x88480000, - } }, - { { /* 217 */ - 0x018f156f, 0x0b012000, 0x45107040, 0x000088a0, - 0x00000000, 0x00028100, 0x98000090, 0x7010e006, - } }, - { { /* 218 */ - 0x41091608, 0x00000101, 0x00963a20, 0x00000000, - 0x22400000, 0x021a7120, 0xa2270002, 0x80022000, - } }, - { { /* 219 */ - 0x0200c102, 0x00c10800, 0x8ca02029, 0x00000624, - 0x00000000, 0x01000100, 0x01180000, 0x00004020, - } }, - { { /* 220 */ - 0x04000000, 0x10020480, 0x0410803e, 0x00008000, - 0x80024000, 0x00004800, 0x00400200, 0x00000110, - } }, - { { /* 221 */ - 0x00252000, 0x08040020, 0x00800280, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x005802a0, - } }, - { { /* 222 */ - 0x08000200, 0x08000140, 0x20020000, 0x00041003, - 0x00000000, 0x00108200, 0x00800010, 0x07040000, - } }, - { { /* 223 */ - 0x44000000, 0x00000000, 0x00000000, 0xa2200000, - 0xa08c0000, 0x48300020, 0x59126008, 0x00100100, - } }, - { { /* 224 */ - 0x00084180, 0x08000001, 0x80044c00, 0x00801482, - 0x10212000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 225 */ - 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, - 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, - } }, - { { /* 226 */ - 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, - 0xffffffff, 0x0000000f, 0x00000000, 0x00000000, - } }, - { { /* 227 */ - 0x00000fff, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 228 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000040, - } }, - { { /* 229 */ - 0x000c0003, 0x00003c00, 0x0000f000, 0x00003c00, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 230 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0xfef02596, 0x3bffecae, 0x33ff3f5f, 0x00000000, - } }, - { { /* 231 */ - 0x000033f0, 0x0000c000, 0x00000000, 0x600c0c03, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 232 */ - 0x000c3003, 0x18c00c0c, 0x00c03060, 0x60000c03, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 233 */ - 0xfdffb729, 0x000001ff, 0xb7290000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 234 */ - 0xfffddfec, 0xc3fffdff, 0x00803dcf, 0x0000ffc3, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 235 */ - 0x03ff07ff, 0xffffffff, 0xffffffff, 0x00ffffff, - 0xffffffff, 0x000003ff, 0x00000000, 0x00000000, - } }, - { { /* 236 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x00004004, 0x00004004, - } }, - { { /* 237 */ - 0x0000000c, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 238 */ - 0x0f000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 239 */ - 0xffff0002, 0xffffffff, 0x0002ffff, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 240 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x0e1c7707, 0x0e1c7707, - } }, - { { /* 241 */ - 0x00000c00, 0x000000c3, 0x00000000, 0x18000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 242 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x10000000, 0x00000000, 0x00000000, - } }, - { { /* 243 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x10408810, 0x10408810, - } }, - { { /* 244 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000800, 0x115c0ff7, 0x115c0ff7, - } }, - { { /* 245 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x000cab83, 0x0004ab83, - } }, - { { /* 246 */ - 0xfff99fee, 0xf3cdfdff, 0xb0c0398f, 0x0001ffc3, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 247 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x00080000, 0x00080000, - } }, - { { /* 248 */ - 0x030000f0, 0x00000000, 0x0c00001e, 0x1e000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 249 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000000, 0x1438268f, 0x1438268f, - } }, - { { /* 250 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x02045301, 0x02045301, - } }, - { { /* 251 */ - 0xffff0042, 0xffffffff, 0x0042ffff, 0x003c000c, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 252 */ - 0xfdff8f04, 0xfdff01ff, 0x8f0401ff, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 253 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0xfc7fffec, 0x2ffbffff, 0xff5f847f, 0x001c0000, - } }, - { { /* 254 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x34582212, 0x34582212, - } }, - { { /* 255 */ - 0x0000f000, 0x66000000, 0x00330180, 0x60030033, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 256 */ - 0x000330c0, 0x00000000, 0x00000000, 0x60000003, - 0x00000000, 0x00000000, 0x00001b60, 0x003c0000, - } }, - { { /* 257 */ - 0x00009e2c, 0x00000000, 0x9e2c0000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 258 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x00000880, 0x00000880, - } }, - { { /* 259 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x08000000, 0x3fdfffff, 0x3f5fffff, - } }, - { { /* 260 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0xd63dc7ec, 0xc3bfc718, 0x00803dc7, 0x0007ff80, - } }, - { { /* 261 */ - 0xfffddfee, 0xc3effdff, 0x00603ddf, 0x0000ffc3, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 262 */ - 0xfffffffe, 0x87ffffff, 0x0fffffff, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 263 */ - 0x001fdfff, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 264 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00800000, 0x18400004, 0x18400084, - } }, - { { /* 265 */ - 0xc0000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 266 */ - 0xffff00d2, 0xffffffff, 0x00d2ffff, 0x00000000, - 0x00030000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 267 */ - 0x00000000, 0x00000000, 0x077dfffe, 0x077dfffe, - 0x00000000, 0x00000000, 0x10400010, 0x10400010, - } }, - { { /* 268 */ - 0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe, - 0x00000000, 0x00000000, 0x081047a4, 0x081047a4, - } }, - { { /* 269 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000280, 0x00000000, - } }, - { { /* 270 */ - 0x7f7b7f8b, 0xef553db4, 0xf35dfba8, 0x400b0243, - 0x8d3efb40, 0x8c2c7bf7, 0xe3fa6eff, 0xa8ed1d3a, - } }, - { { /* 271 */ - 0xcf83e602, 0x35558cf5, 0xffabe048, 0xd85992b9, - 0x2892ab18, 0x8020d7e9, 0xf583c438, 0x450ae74a, - } }, - { { /* 272 */ - 0x9714b000, 0x54007762, 0x1420d188, 0xc8c01020, - 0x00002121, 0x0c0413a8, 0x04408000, 0x082870c0, - } }, - { { /* 273 */ - 0x000408c0, 0x80000002, 0x14722b7b, 0x3bfb7924, - 0x1ae43327, 0x38ef9835, 0x28029ad1, 0xbf69a813, - } }, - { { /* 274 */ - 0x2fc665cf, 0xafc96b11, 0x5053340f, 0xa00486a2, - 0xe8090106, 0xc00e3f0f, 0x81450a88, 0xc6010010, - } }, - { { /* 275 */ - 0x26e1a161, 0xce00444b, 0xd4eec7aa, 0x85bbcadf, - 0xa5203a74, 0x8840436c, 0x8bd23f06, 0x3befff79, - } }, - { { /* 276 */ - 0xe8eff75a, 0x5b36fbcb, 0x1bfd0d49, 0x39ee0154, - 0x2e75d855, 0xa91abfd8, 0xf6bff3d7, 0xb40c67e0, - } }, - { { /* 277 */ - 0x081382c2, 0xd08bd49d, 0x1061065a, 0x59e074f2, - 0xb3128f9f, 0x6aaa0080, 0xb05e3230, 0x60ac9d7a, - } }, - { { /* 278 */ - 0xc900d303, 0x8a563098, 0x13907000, 0x18421f14, - 0x0008c060, 0x10808008, 0xec900400, 0xe6332817, - } }, - { { /* 279 */ - 0x90000758, 0x4e09f708, 0xfc83f485, 0x18c8af53, - 0x080c187c, 0x01146adf, 0xa734c80c, 0x2710a011, - } }, - { { /* 280 */ - 0x422228c5, 0x00210413, 0x41123010, 0x40001820, - 0xc60c022b, 0x10000300, 0x00220022, 0x02495810, - } }, - { { /* 281 */ - 0x9670a094, 0x1792eeb0, 0x05f2cb96, 0x23580025, - 0x42cc25de, 0x4a04cf38, 0x359f0c40, 0x8a001128, - } }, - { { /* 282 */ - 0x910a13fa, 0x10560229, 0x04200641, 0x84f00484, - 0x0c040000, 0x412c0400, 0x11541206, 0x00020a4b, - } }, - { { /* 283 */ - 0x00c00200, 0x00940000, 0xbfbb0001, 0x242b167c, - 0x7fa89bbb, 0xe3790c7f, 0xe00d10f4, 0x9f014132, - } }, - { { /* 284 */ - 0x35728652, 0xff1210b4, 0x4223cf27, 0x8602c06b, - 0x1fd33106, 0xa1aa3a0c, 0x02040812, 0x08012572, - } }, - { { /* 285 */ - 0x485040cc, 0x601062d0, 0x29001c80, 0x00109a00, - 0x22000004, 0x00800000, 0x68002020, 0x609ecbe6, - } }, - { { /* 286 */ - 0x3f73916e, 0x398260c0, 0x48301034, 0xbd5c0006, - 0xd6fb8cd1, 0x43e820e1, 0x084e0600, 0xc4d00500, - } }, - { { /* 287 */ - 0x89aa8d1f, 0x1602a6e1, 0x21ed0001, 0x1a8b3656, - 0x13a51fb7, 0x30a06502, 0x23c7b278, 0xe9226c93, - } }, - { { /* 288 */ - 0x3a74e47f, 0x98208fe3, 0x2625280e, 0xbf49bf9c, - 0xac543218, 0x1916b949, 0xb5220c60, 0x0659fbc1, - } }, - { { /* 289 */ - 0x8420e343, 0x800008d9, 0x20225500, 0x00a10184, - 0x20104800, 0x40801380, 0x00160d04, 0x80200040, - } }, - { { /* 290 */ - 0x8de7fd40, 0xe0985436, 0x091e7b8b, 0xd249fec8, - 0x8dee0611, 0xba221937, 0x9fdd77f4, 0xf0daf3ec, - } }, - { { /* 291 */ - 0xec424386, 0x26048d3f, 0xc021fa6c, 0x0cc2628e, - 0x0145d785, 0x559977ad, 0x4045e250, 0xa154260b, - } }, - { { /* 292 */ - 0x58199827, 0xa4103443, 0x411405f2, 0x07002280, - 0x426600b4, 0x15a17210, 0x41856025, 0x00000054, - } }, - { { /* 293 */ - 0x01040201, 0xcb70c820, 0x6a629320, 0x0095184c, - 0x9a8b1880, 0x3201aab2, 0x00c4d87a, 0x04c3f3e5, - } }, - { { /* 294 */ - 0xa238d44d, 0x5072a1a1, 0x84fc980a, 0x44d1c152, - 0x20c21094, 0x42104180, 0x3a000000, 0xd29d0240, - } }, - { { /* 295 */ - 0xa8b12f01, 0x2432bd40, 0xd04bd34d, 0xd0ada723, - 0x75a10a92, 0x01e9adac, 0x771f801a, 0xa01b9225, - } }, - { { /* 296 */ - 0x20cadfa1, 0x738c0602, 0x003b577f, 0x00d00bff, - 0x0088806a, 0x0029a1c4, 0x05242a05, 0x16234009, - } }, - { { /* 297 */ - 0x80056822, 0xa2112011, 0x64900004, 0x13824849, - 0x193023d5, 0x08922980, 0x88115402, 0xa0042001, - } }, - { { /* 298 */ - 0x81800400, 0x60228502, 0x0b010090, 0x12020022, - 0x00834011, 0x00001a01, 0x00000000, 0x00000000, - } }, - { { /* 299 */ - 0x00000000, 0x4684009f, 0x020012c8, 0x1a0004fc, - 0x0c4c2ede, 0x80b80402, 0x0afca826, 0x22288c02, - } }, - { { /* 300 */ - 0x8f7ba0e0, 0x2135c7d6, 0xf8b106c7, 0x62550713, - 0x8a19936e, 0xfb0e6efa, 0x48f91630, 0x7debcd2f, - } }, - { { /* 301 */ - 0x4e845892, 0x7a2e4ca0, 0x561eedea, 0x1190c649, - 0xe83a5324, 0x8124cfdb, 0x634218f1, 0x1a8a5853, - } }, - { { /* 302 */ - 0x24d37420, 0x0514aa3b, 0x89586018, 0xc0004800, - 0x91018268, 0x2cd684a4, 0xc4ba8886, 0x02100377, - } }, - { { /* 303 */ - 0x00388244, 0x404aae11, 0x510028c0, 0x15146044, - 0x10007310, 0x02480082, 0x40060205, 0x0000c003, - } }, - { { /* 304 */ - 0x0c020000, 0x02200008, 0x40009000, 0xd161b800, - 0x32744621, 0x3b8af800, 0x8b00050f, 0x2280bbd0, - } }, - { { /* 305 */ - 0x07690600, 0x00438040, 0x50005420, 0x250c41d0, - 0x83108410, 0x02281101, 0x00304008, 0x020040a1, - } }, - { { /* 306 */ - 0x20000040, 0xabe31500, 0xaa443180, 0xc624c2c6, - 0x8004ac13, 0x03d1b000, 0x4285611e, 0x1d9ff303, - } }, - { { /* 307 */ - 0x78e8440a, 0xc3925e26, 0x00852000, 0x4000b001, - 0x88424a90, 0x0c8dca04, 0x4203a705, 0x000422a1, - } }, - { { /* 308 */ - 0x0c018668, 0x10795564, 0xdea00002, 0x40c12000, - 0x5001488b, 0x04000380, 0x50040000, 0x80d0c05d, - } }, - { { /* 309 */ - 0x970aa010, 0x4dafbb20, 0x1e10d921, 0x83140460, - 0xa6d68848, 0x733fd83b, 0x497427bc, 0x92130ddc, - } }, - { { /* 310 */ - 0x8ba1142b, 0xd1392e75, 0x50503009, 0x69008808, - 0x024a49d4, 0x80164010, 0x89d7e564, 0x5316c020, - } }, - { { /* 311 */ - 0x86002b92, 0x15e0a345, 0x0c03008b, 0xe200196e, - 0x80067031, 0xa82916a5, 0x18802000, 0xe1487aac, - } }, - { { /* 312 */ - 0xb5d63207, 0x5f9132e8, 0x20e550a1, 0x10807c00, - 0x9d8a7280, 0x421f00aa, 0x02310e22, 0x04941100, - } }, - { { /* 313 */ - 0x40080022, 0x5c100010, 0xfcc80343, 0x0580a1a5, - 0x04008433, 0x6e080080, 0x81262a4b, 0x2901aad8, - } }, - { { /* 314 */ - 0x4490684d, 0xba880009, 0x00820040, 0x87d10000, - 0xb1e6215b, 0x80083161, 0xc2400800, 0xa600a069, - } }, - { { /* 315 */ - 0x4a328d58, 0x550a5d71, 0x2d579aa0, 0x4aa64005, - 0x30b12021, 0x01123fc6, 0x260a10c2, 0x50824462, - } }, - { { /* 316 */ - 0x80409880, 0x810004c0, 0x00002003, 0x38180000, - 0xf1a60200, 0x720e4434, 0x92e035a2, 0x09008101, - } }, - { { /* 317 */ - 0x00000400, 0x00008885, 0x00000000, 0x00804000, - 0x00000000, 0x00004040, 0x00000000, 0x00000000, - } }, - { { /* 318 */ - 0x00000000, 0x08000000, 0x00000082, 0x00000000, - 0x88000004, 0xe7efbfff, 0xffbfffff, 0xfdffefef, - } }, - { { /* 319 */ - 0xbffefbff, 0x057fffff, 0x85b30034, 0x42164706, - 0xe4105402, 0xb3058092, 0x81305422, 0x180b4263, - } }, - { { /* 320 */ - 0x13f5387b, 0xa9ea07e5, 0x05143c4c, 0x80020600, - 0xbd481ad9, 0xf496ee37, 0x7ec0705f, 0x355fbfb2, - } }, - { { /* 321 */ - 0x455fe644, 0x41469000, 0x063b1d40, 0xfe1362a1, - 0x39028505, 0x0c080548, 0x0000144f, 0x58183488, - } }, - { { /* 322 */ - 0xd8153077, 0x4bfbbd0e, 0x85008a90, 0xe61dc100, - 0xb386ed14, 0x639bff72, 0xd9befd92, 0x0a92887b, - } }, - { { /* 323 */ - 0x1cb2d3fe, 0x177ab980, 0xdc1782c9, 0x3980fffb, - 0x590c4260, 0x37df0f01, 0xb15094a3, 0x23070623, - } }, - { { /* 324 */ - 0x3102f85a, 0x310201f0, 0x1e820040, 0x056a3a0a, - 0x12805b84, 0xa7148002, 0xa04b2612, 0x90011069, - } }, - { { /* 325 */ - 0x848a1000, 0x3f801802, 0x42400708, 0x4e140110, - 0x180080b0, 0x0281c510, 0x10298202, 0x88000210, - } }, - { { /* 326 */ - 0x00420020, 0x11000280, 0x4413e000, 0xfe025804, - 0x30283c07, 0x04739798, 0xcb13ced1, 0x431f6210, - } }, - { { /* 327 */ - 0x55ac278d, 0xc892422e, 0x02885380, 0x78514039, - 0x8088292c, 0x2428b900, 0x080e0c41, 0x42004421, - } }, - { { /* 328 */ - 0x08680408, 0x12040006, 0x02903031, 0xe0855b3e, - 0x10442936, 0x10822814, 0x83344266, 0x531b013c, - } }, - { { /* 329 */ - 0x0e0d0404, 0x00510c22, 0xc0000012, 0x88000040, - 0x0000004a, 0x00000000, 0x5447dff6, 0x00088868, - } }, - { { /* 330 */ - 0x00000081, 0x40000000, 0x00000100, 0x02000000, - 0x00080600, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 331 */ - 0x00000080, 0x00000040, 0x00000000, 0x00001040, - 0x00000000, 0xf7fdefff, 0xfffeff7f, 0xfffffbff, - } }, - { { /* 332 */ - 0xbffffdff, 0x00ffffff, 0x042012c2, 0x07080c06, - 0x01101624, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 333 */ - 0xe0000000, 0xfffffffe, 0x7f79ffff, 0x00f928df, - 0x80120c32, 0xd53a0008, 0xecc2d858, 0x2fa89d18, - } }, - { { /* 334 */ - 0xe0109620, 0x2622d60c, 0x02060f97, 0x9055b240, - 0x501180a2, 0x04049800, 0x00004000, 0x00000000, - } }, - { { /* 335 */ - 0x00000000, 0x00000000, 0x00000000, 0xfffffbc0, - 0xdffbeffe, 0x62430b08, 0xfb3b41b6, 0x23896f74, - } }, - { { /* 336 */ - 0xecd7ae7f, 0x5960e047, 0x098fa096, 0xa030612c, - 0x2aaa090d, 0x4f7bd44e, 0x388bc4b2, 0x6110a9c6, - } }, - { { /* 337 */ - 0x42000014, 0x0202800c, 0x6485fe48, 0xe3f7d63e, - 0x0c073aa0, 0x0430e40c, 0x1002f680, 0x00000000, - } }, - { { /* 338 */ - 0x00000000, 0x00000000, 0x00000000, 0x00100000, - 0x00004000, 0x00004000, 0x00000100, 0x00000000, - } }, - { { /* 339 */ - 0x00000000, 0x40000000, 0x00000000, 0x00000400, - 0x00008000, 0x00000000, 0x00400400, 0x00000000, - } }, - { { /* 340 */ - 0x00000000, 0x40000000, 0x00000000, 0x00000800, - 0xfebdffe0, 0xffffffff, 0xfbe77f7f, 0xf7ffffbf, - } }, - { { /* 341 */ - 0xefffffff, 0xdff7ff7e, 0xfbdff6f7, 0x804fbffe, - 0x00000000, 0x00000000, 0x00000000, 0x7fffef00, - } }, - { { /* 342 */ - 0xb6f7ff7f, 0xb87e4406, 0x88313bf5, 0x00f41796, - 0x1391a960, 0x72490080, 0x0024f2f3, 0x42c88701, - } }, - { { /* 343 */ - 0x5048e3d3, 0x43052400, 0x4a4c0000, 0x10580227, - 0x01162820, 0x0014a809, 0x00000000, 0x00683ec0, - } }, - { { /* 344 */ - 0x00000000, 0x00000000, 0x00000000, 0xffe00000, - 0xfddbb7ff, 0x000000f7, 0xc72e4000, 0x00000180, - } }, - { { /* 345 */ - 0x00012000, 0x00004000, 0x00300000, 0xb4f7ffa8, - 0x03ffadf3, 0x00000120, 0x00000000, 0x00000000, - } }, - { { /* 346 */ - 0x00000000, 0x00000000, 0x00000000, 0xfffbf000, - 0xfdcf9df7, 0x15c301bf, 0x810a1827, 0x0a00a842, - } }, - { { /* 347 */ - 0x80088108, 0x18048008, 0x0012a3be, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 348 */ - 0x00000000, 0x00000000, 0x00000000, 0x90000000, - 0xdc3769e6, 0x3dff6bff, 0xf3f9fcf8, 0x00000004, - } }, - { { /* 349 */ - 0x80000000, 0xe7eebf6f, 0x5da2dffe, 0xc00b3fd8, - 0xa00c0984, 0x69100040, 0xb912e210, 0x5a0086a5, - } }, - { { /* 350 */ - 0x02896800, 0x6a809005, 0x00030010, 0x80000000, - 0x8e001ff9, 0x00000001, 0x00000000, 0x00000000, - } }, - { { /* 351 */ - 0x0000002f, 0x000003fe, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 352 */ - 0xc373ff8b, 0x1b0f6840, 0xf34ce9ac, 0xc0080200, - 0xca3e795c, 0x06487976, 0xf7f02fdf, 0xa8ff033a, - } }, - { { /* 353 */ - 0x233fef37, 0xfd59b004, 0xfffff3ca, 0xfff9de9f, - 0x7df7abff, 0x8eecc000, 0xffdbeebf, 0x45fad003, - } }, - { { /* 354 */ - 0xdffefae1, 0x10abbfef, 0xfcaaffeb, 0x24fdef3f, - 0x7f7678ad, 0xedfff00c, 0x2cfacff6, 0xeb6bf7f9, - } }, - { { /* 355 */ - 0x95bf1ffd, 0xbfbf6677, 0xfeb43bfb, 0x11e27bae, - 0x41bea681, 0x72c31435, 0x71917d70, 0x276b0003, - } }, - { { /* 356 */ - 0x70cf57cb, 0x0def4732, 0xfc747eda, 0xbdb4fe06, - 0x8bca3f9f, 0x58007e49, 0xebec228f, 0xddbb8a5c, - } }, - { { /* 357 */ - 0xb6e7ef60, 0xf293a40f, 0x549e37bb, 0x9bafd04b, - 0xf7d4c414, 0x0a1430b0, 0x88d02f08, 0x192fff7e, - } }, - { { /* 358 */ - 0xfb07ffda, 0x7beb7ff1, 0x0010c5ef, 0xfdff99ff, - 0x056779d7, 0xfdcbffe7, 0x4040c3ff, 0xbd8e6ff7, - } }, - { { /* 359 */ - 0x0497dffa, 0x5bfff4c0, 0xd0e7ed7b, 0xf8e0047e, - 0xb73eff9f, 0x882e7dfe, 0xbe7ffffd, 0xf6c483fe, - } }, - { { /* 360 */ - 0xb8fdf357, 0xef7dd680, 0x47885767, 0xc3dfff7d, - 0x37a9f0ff, 0x70fc7de0, 0xec9a3f6f, 0x86814cb3, - } }, - { { /* 361 */ - 0xdd5c3f9e, 0x4819f70d, 0x0007fea3, 0x38ffaf56, - 0xefb8980d, 0xb760403d, 0x9035d8ce, 0x3fff72bf, - } }, - { { /* 362 */ - 0x7a117ff7, 0xabfff7bb, 0x6fbeff00, 0xfe72a93c, - 0xf11bcfef, 0xf40adb6b, 0xef7ec3e6, 0xf6109b9c, - } }, - { { /* 363 */ - 0x16f4f048, 0x5182feb5, 0x15bbc7b1, 0xfbdf6e87, - 0x63cde43f, 0x7e7ec1ff, 0x7d5ffdeb, 0xfcfe777b, - } }, - { { /* 364 */ - 0xdbea960b, 0x53e86229, 0xfdef37df, 0xbd8136f5, - 0xfcbddc18, 0xffffd2e4, 0xffe03fd7, 0xabf87f6f, - } }, - { { /* 365 */ - 0x6ed99bae, 0xf115f5fb, 0xbdfb79a9, 0xadaf5a3c, - 0x1facdbba, 0x837971fc, 0xc35f7cf7, 0x0567dfff, - } }, - { { /* 366 */ - 0x8467ff9a, 0xdf8b1534, 0x3373f9f3, 0x5e1af7bd, - 0xa03fbf40, 0x01ebffff, 0xcfdddfc0, 0xabd37500, - } }, - { { /* 367 */ - 0xeed6f8c3, 0xb7ff43fd, 0x42275eaf, 0xf6869bac, - 0xf6bc27d7, 0x35b7f787, 0xe176aacd, 0xe29f49e7, - } }, - { { /* 368 */ - 0xaff2545c, 0x61d82b3f, 0xbbb8fc3b, 0x7b7dffcf, - 0x1ce0bf95, 0x43ff7dfd, 0xfffe5ff6, 0xc4ced3ef, - } }, - { { /* 369 */ - 0xadbc8db6, 0x11eb63dc, 0x23d0df59, 0xf3dbbeb4, - 0xdbc71fe7, 0xfae4ff63, 0x63f7b22b, 0xadbaed3b, - } }, - { { /* 370 */ - 0x7efffe01, 0x02bcfff7, 0xef3932ff, 0x8005fffc, - 0xbcf577fb, 0xfff7010d, 0xbf3afffb, 0xdfff0057, - } }, - { { /* 371 */ - 0xbd7def7b, 0xc8d4db88, 0xed7cfff3, 0x56ff5dee, - 0xac5f7e0d, 0xd57fff96, 0xc1403fee, 0xffe76ff9, - } }, - { { /* 372 */ - 0x8e77779b, 0xe45d6ebf, 0x5f1f6fcf, 0xfedfe07f, - 0x01fed7db, 0xfb7bff00, 0x1fdfffd4, 0xfffff800, - } }, - { { /* 373 */ - 0x007bfb8f, 0x7f5cbf00, 0x07f3ffff, 0x3de7eba0, - 0xfbd7f7bf, 0x6003ffbf, 0xbfedfffd, 0x027fefbb, - } }, - { { /* 374 */ - 0xddfdfe40, 0xe2f9fdff, 0xfb1f680b, 0xaffdfbe3, - 0xf7ed9fa4, 0xf80f7a7d, 0x0fd5eebe, 0xfd9fbb5d, - } }, - { { /* 375 */ - 0x3bf9f2db, 0xebccfe7f, 0x73fa876a, 0x9ffc95fc, - 0xfaf7109f, 0xbbcdddb7, 0xeccdf87e, 0x3c3ff366, - } }, - { { /* 376 */ - 0xb03ffffd, 0x067ee9f7, 0xfe0696ae, 0x5fd7d576, - 0xa3f33fd1, 0x6fb7cf07, 0x7f449fd1, 0xd3dd7b59, - } }, - { { /* 377 */ - 0xa9bdaf3b, 0xff3a7dcf, 0xf6ebfbe0, 0xffffb401, - 0xb7bf7afa, 0x0ffdc000, 0xff1fff7f, 0x95fffefc, - } }, - { { /* 378 */ - 0xb5dc0000, 0x3f3eef63, 0x001bfb7f, 0xfbf6e800, - 0xb8df9eef, 0x003fff9f, 0xf5ff7bd0, 0x3fffdfdb, - } }, - { { /* 379 */ - 0x00bffdf0, 0xbbbd8420, 0xffdedf37, 0x0ff3ff6d, - 0x5efb604c, 0xfafbfffb, 0x0219fe5e, 0xf9de79f4, - } }, - { { /* 380 */ - 0xebfaa7f7, 0xff3401eb, 0xef73ebd3, 0xc040afd7, - 0xdcff72bb, 0x2fd8f17f, 0xfe0bb8ec, 0x1f0bdda3, - } }, - { { /* 381 */ - 0x47cf8f1d, 0xffdeb12b, 0xda737fee, 0xcbc424ff, - 0xcbf2f75d, 0xb4edecfd, 0x4dddbff9, 0xfb8d99dd, - } }, - { { /* 382 */ - 0xaf7bbb7f, 0xc959ddfb, 0xfab5fc4f, 0x6d5fafe3, - 0x3f7dffff, 0xffdb7800, 0x7effb6ff, 0x022ffbaf, - } }, - { { /* 383 */ - 0xefc7ff9b, 0xffffffa5, 0xc7000007, 0xfff1f7ff, - 0x01bf7ffd, 0xfdbcdc00, 0xffffbff5, 0x3effff7f, - } }, - { { /* 384 */ - 0xbe000029, 0xff7ff9ff, 0xfd7e6efb, 0x039ecbff, - 0xfbdde300, 0xf6dfccff, 0x117fffff, 0xfbf6f800, - } }, - { { /* 385 */ - 0xd73ce7ef, 0xdfeffeef, 0xedbfc00b, 0xfdcdfedf, - 0x40fd7bf5, 0xb75fffff, 0xf930ffdf, 0xdc97fbdf, - } }, - { { /* 386 */ - 0xbff2fef3, 0xdfbf8fdf, 0xede6177f, 0x35530f7f, - 0x877e447c, 0x45bbfa12, 0x779eede0, 0xbfd98017, - } }, - { { /* 387 */ - 0xde897e55, 0x0447c16f, 0xf75d7ade, 0x290557ff, - 0xfe9586f7, 0xf32f97b3, 0x9f75cfff, 0xfb1771f7, - } }, - { { /* 388 */ - 0xee1934ee, 0xef6137cc, 0xef4c9fd6, 0xfbddd68f, - 0x6def7b73, 0xa431d7fe, 0x97d75e7f, 0xffd80f5b, - } }, - { { /* 389 */ - 0x7bce9d83, 0xdcff22ec, 0xef87763d, 0xfdeddfe7, - 0xa0fc4fff, 0xdbfc3b77, 0x7fdc3ded, 0xf5706fa9, - } }, - { { /* 390 */ - 0x2c403ffb, 0x847fff7f, 0xdeb7ec57, 0xf22fe69c, - 0xd5b50feb, 0xede7afeb, 0xfff08c2f, 0xe8f0537f, - } }, - { { /* 391 */ - 0xb5ffb99d, 0xe78fff66, 0xbe10d981, 0xe3c19c7c, - 0x27339cd1, 0xff6d0cbc, 0xefb7fcb7, 0xffffa0df, - } }, - { { /* 392 */ - 0xfe7bbf0b, 0x353fa3ff, 0x97cd13cc, 0xfb277637, - 0x7e6ccfd6, 0xed31ec50, 0xfc1c677c, 0x5fbff6fa, - } }, - { { /* 393 */ - 0xae2f0fba, 0x7ffea3ad, 0xde74fcf0, 0xf200ffef, - 0xfea2fbbf, 0xbcff3daf, 0x5fb9f694, 0x3f8ff3ad, - } }, - { { /* 394 */ - 0xa01ff26c, 0x01bfffef, 0x70057728, 0xda03ff35, - 0xc7fad2f9, 0x5c1d3fbf, 0xec33ff3a, 0xfe9cb7af, - } }, - { { /* 395 */ - 0x7a9f5236, 0xe722bffa, 0xfcff9ff7, 0xb61d2fbb, - 0x1dfded06, 0xefdf7dd7, 0xf166eb23, 0x0dc07ed9, - } }, - { { /* 396 */ - 0xdfbf3d3d, 0xba83c945, 0x9dd07dd1, 0xcf737b87, - 0xc3f59ff3, 0xc5fedf0d, 0x83020cb3, 0xaec0e879, - } }, - { { /* 397 */ - 0x6f0fc773, 0x093ffd7d, 0x0157fff1, 0x01ff62fb, - 0x3bf3fdb4, 0x43b2b013, 0xff305ed3, 0xeb9f0fff, - } }, - { { /* 398 */ - 0xf203feef, 0xfb893fef, 0x9e9937a9, 0xa72cdef9, - 0xc1f63733, 0xfe3e812e, 0xf2f75d20, 0x69d7d585, - } }, - { { /* 399 */ - 0xffffffff, 0xff6fdb07, 0xd97fc4ff, 0xbe0fefce, - 0xf05ef17b, 0xffb7f6cf, 0xef845ef7, 0x0edfd7cb, - } }, - { { /* 400 */ - 0xfcffff08, 0xffffee3f, 0xd7ff13ff, 0x7ffdaf0f, - 0x1ffabdc7, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 401 */ - 0x00000000, 0xe7400000, 0xf933bd38, 0xfeed7feb, - 0x7c767fe8, 0xffefb3f7, 0xd8b7feaf, 0xfbbfff6f, - } }, - { { /* 402 */ - 0xdbf7f8fb, 0xe2f91752, 0x754785c8, 0xe3ef9090, - 0x3f6d9ef4, 0x0536ee2e, 0x7ff3f7bc, 0x7f3fa07b, - } }, - { { /* 403 */ - 0xeb600567, 0x6601babe, 0x583ffcd8, 0x87dfcaf7, - 0xffa0bfcd, 0xfebf5bcd, 0xefa7b6fd, 0xdf9c77ef, - } }, - { { /* 404 */ - 0xf8773fb7, 0xb7fc9d27, 0xdfefcab5, 0xf1b6fb5a, - 0xef1fec39, 0x7ffbfbbf, 0xdafe000d, 0x4e7fbdfb, - } }, - { { /* 405 */ - 0x5ac033ff, 0x9ffebff5, 0x005fffbf, 0xfdf80000, - 0x6ffdffca, 0xa001cffd, 0xfbf2dfff, 0xff7fdfbf, - } }, - { { /* 406 */ - 0x080ffeda, 0xbfffba08, 0xeed77afd, 0x67f9fbeb, - 0xff93e044, 0x9f57df97, 0x08dffef7, 0xfedfdf80, - } }, - { { /* 407 */ - 0xf7feffc5, 0x6803fffb, 0x6bfa67fb, 0x5fe27fff, - 0xff73ffff, 0xe7fb87df, 0xf7a7ebfd, 0xefc7bf7e, - } }, - { { /* 408 */ - 0xdf821ef3, 0xdf7e76ff, 0xda7d79c9, 0x1e9befbe, - 0x77fb7ce0, 0xfffb87be, 0xffdb1bff, 0x4fe03f5c, - } }, - { { /* 409 */ - 0x5f0e7fff, 0xddbf77ff, 0xfffff04f, 0x0ff8ffff, - 0xfddfa3be, 0xfffdfc1c, 0xfb9e1f7d, 0xdedcbdff, - } }, - { { /* 410 */ - 0xbafb3f6f, 0xfbefdf7f, 0x2eec7d1b, 0xf2f7af8e, - 0xcfee7b0f, 0x77c61d96, 0xfff57e07, 0x7fdfd982, - } }, - { { /* 411 */ - 0xc7ff5ee6, 0x79effeee, 0xffcf9a56, 0xde5efe5f, - 0xf9e8896e, 0xe6c4f45e, 0xbe7c0001, 0xdddf3b7f, - } }, - { { /* 412 */ - 0xe9efd59d, 0xde5334ac, 0x4bf7f573, 0x9eff7b4f, - 0x476eb8fe, 0xff450dfb, 0xfbfeabfd, 0xddffe9d7, - } }, - { { /* 413 */ - 0x7fffedf7, 0x7eebddfd, 0xb7ffcfe7, 0xef91bde9, - 0xd77c5d75, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 414 */ - 0x00000000, 0xfa800000, 0xb4f1ffee, 0x2fefbf76, - 0x77bfb677, 0xfffd9fbf, 0xf6ae95bf, 0x7f3b75ff, - } }, - { { /* 415 */ - 0x0af9a7f5, 0x00000000, 0x00000000, 0x2bddfbd0, - 0x9a7ff633, 0xd6fcfdab, 0xbfebf9e6, 0xf41fdfdf, - } }, - { { /* 416 */ - 0xffffa6fd, 0xf37b4aff, 0xfef97fb7, 0x1d5cb6ff, - 0xe5ff7ff6, 0x24041f7b, 0xf99ebe05, 0xdff2dbe3, - } }, - { { /* 417 */ - 0xfdff6fef, 0xcbfcd679, 0xefffebfd, 0x0000001f, - 0x98000000, 0x8017e148, 0x00fe6a74, 0xfdf16d7f, - } }, - { { /* 418 */ - 0xfef3b87f, 0xf176e01f, 0x7b3fee96, 0xfffdeb8d, - 0xcbb3adff, 0xe17f84ef, 0xbff04daa, 0xfe3fbf3f, - } }, - { { /* 419 */ - 0xffd7ebff, 0xcf7fffdf, 0x85edfffb, 0x07bcd73f, - 0xfe0faeff, 0x76bffdaf, 0x37bbfaef, 0xa3ba7fdc, - } }, - { { /* 420 */ - 0x56f7b6ff, 0xe7df60f8, 0x4cdfff61, 0xff45b0fb, - 0x3ffa7ded, 0x18fc1fff, 0xe3afffff, 0xdf83c7d3, - } }, - { { /* 421 */ - 0xef7dfb57, 0x1378efff, 0x5ff7fec0, 0x5ee334bb, - 0xeff6f70d, 0x00bfd7fe, 0xf7f7f59d, 0xffe051de, - } }, - { { /* 422 */ - 0x037ffec9, 0xbfef5f01, 0x60a79ff1, 0xf1ffef1d, - 0x0000000f, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 423 */ - 0x00000000, 0x00000000, 0x00000000, 0x3c800000, - 0xd91ffb4d, 0xfee37b3a, 0xdc7f3fe9, 0x0000003f, - } }, - { { /* 424 */ - 0x50000000, 0xbe07f51f, 0xf91bfc1d, 0x71ffbc1e, - 0x5bbe6ff9, 0x9b1b5796, 0xfffc7fff, 0xafe7872e, - } }, - { { /* 425 */ - 0xf34febf5, 0xe725dffd, 0x5d440bdc, 0xfddd5747, - 0x7790ed3f, 0x8ac87d7f, 0xf3f9fafa, 0xef4b202a, - } }, - { { /* 426 */ - 0x79cff5ff, 0x0ba5abd3, 0xfb8ff77a, 0x001f8ebd, - 0x00000000, 0xfd4ef300, 0x88001a57, 0x7654aeac, - } }, - { { /* 427 */ - 0xcdff17ad, 0xf42fffb2, 0xdbff5baa, 0x00000002, - 0x73c00000, 0x2e3ff9ea, 0xbbfffa8e, 0xffd376bc, - } }, - { { /* 428 */ - 0x7e72eefe, 0xe7f77ebd, 0xcefdf77f, 0x00000ff5, - 0x00000000, 0xdb9ba900, 0x917fa4c7, 0x7ecef8ca, - } }, - { { /* 429 */ - 0xc7e77d7a, 0xdcaecbbd, 0x8f76fd7e, 0x7cf391d3, - 0x4c2f01e5, 0xa360ed77, 0x5ef807db, 0x21811df7, - } }, - { { /* 430 */ - 0x309c6be0, 0xfade3b3a, 0xc3f57f53, 0x07ba61cd, - 0x00000000, 0x00000000, 0x00000000, 0xbefe26e0, - } }, - { { /* 431 */ - 0xebb503f9, 0xe9cbe36d, 0xbfde9c2f, 0xabbf9f83, - 0xffd51ff7, 0xdffeb7df, 0xffeffdae, 0xeffdfb7e, - } }, - { { /* 432 */ - 0x6ebfaaff, 0x00000000, 0x00000000, 0xb6200000, - 0xbe9e7fcd, 0x58f162b3, 0xfd7bf10d, 0xbefde9f1, - } }, - { { /* 433 */ - 0x5f6dc6c3, 0x69ffff3d, 0xfbf4ffcf, 0x4ff7dcfb, - 0x11372000, 0x00000015, 0x00000000, 0x00000000, - } }, - { { /* 434 */ - 0x00003000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - } }, - { { /* 435 */ - 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0xffffffff, 0xffffffff, 0x001fffff, - } }, -}; - -#define L(n) ((FcCharLeaf *) &leaves[n]) - -static const FcCharLeaf *leaves_ab[2] = { - L( 0), L( 1), -}; - -static const FcChar16 numbers_ab[2] = { - 0x0000, 0x0004, -}; - -static const FcCharLeaf *leaves_ar[1] = { - L( 2), -}; - -static const FcChar16 numbers_ar[1] = { - 0x0006, -}; - -static const FcCharLeaf *leaves_az[4] = { - L( 3), L( 4), L( 5), L( 6), -}; - -static const FcChar16 numbers_az[4] = { - 0x0000, 0x0001, 0x0002, 0x0004, -}; - -static const FcCharLeaf *leaves_ba[2] = { - L( 0), L( 7), -}; - -static const FcChar16 numbers_ba[2] = { - 0x0000, 0x0004, -}; - -static const FcCharLeaf *leaves_be[2] = { - L( 0), L( 8), -}; - -static const FcChar16 numbers_be[2] = { - 0x0000, 0x0004, -}; - -static const FcCharLeaf *leaves_bg[1] = { - L( 9), -}; - -static const FcChar16 numbers_bg[1] = { - 0x0004, -}; - -static const FcCharLeaf *leaves_bn[1] = { - L( 10), -}; - -static const FcChar16 numbers_bn[1] = { - 0x0009, -}; - -static const FcCharLeaf *leaves_bo[1] = { - L( 11), -}; - -static const FcChar16 numbers_bo[1] = { - 0x000f, -}; - -static const FcCharLeaf *leaves_br[1] = { - L( 12), -}; - -static const FcChar16 numbers_br[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_ca[2] = { - L( 13), L( 14), -}; - -static const FcChar16 numbers_ca[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_co[1] = { - L( 15), -}; - -static const FcChar16 numbers_co[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_cs[2] = { - L( 16), L( 17), -}; - -static const FcChar16 numbers_cs[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_da[2] = { - L( 18), L( 19), -}; - -static const FcChar16 numbers_da[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_de[1] = { - L( 20), -}; - -static const FcChar16 numbers_de[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_el[1] = { - L( 21), -}; - -static const FcChar16 numbers_el[1] = { - 0x0003, -}; - -static const FcCharLeaf *leaves_en[1] = { - L( 22), -}; - -static const FcChar16 numbers_en[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_eo[2] = { - L( 23), L( 24), -}; - -static const FcChar16 numbers_eo[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_es[1] = { - L( 25), -}; - -static const FcChar16 numbers_es[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_et[2] = { - L( 26), L( 27), -}; - -static const FcChar16 numbers_et[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_eu[2] = { - L( 28), L( 29), -}; - -static const FcChar16 numbers_eu[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_fi[2] = { - L( 30), L( 27), -}; - -static const FcChar16 numbers_fi[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_fo[1] = { - L( 31), -}; - -static const FcChar16 numbers_fo[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_ga[5] = { - L( 32), L( 33), L( 34), L( 35), L( 36), -}; - -static const FcChar16 numbers_ga[5] = { - 0x0000, 0x0001, 0x0002, 0x001e, 0x0020, -}; - -static const FcCharLeaf *leaves_gd[1] = { - L( 37), -}; - -static const FcChar16 numbers_gd[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_gl[1] = { - L( 38), -}; - -static const FcChar16 numbers_gl[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_gu[1] = { - L( 39), -}; - -static const FcChar16 numbers_gu[1] = { - 0x000a, -}; - -static const FcCharLeaf *leaves_he[1] = { - L( 40), -}; - -static const FcChar16 numbers_he[1] = { - 0x0005, -}; - -static const FcCharLeaf *leaves_hr[3] = { - L( 41), L( 42), L( 43), -}; - -static const FcChar16 numbers_hr[3] = { - 0x0000, 0x0001, 0x0002, -}; - -static const FcCharLeaf *leaves_hu[2] = { - L( 44), L( 45), -}; - -static const FcChar16 numbers_hu[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_hy[1] = { - L( 46), -}; - -static const FcChar16 numbers_hy[1] = { - 0x0005, -}; - -static const FcCharLeaf *leaves_is[1] = { - L( 47), -}; - -static const FcChar16 numbers_is[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_it[1] = { - L( 48), -}; - -static const FcChar16 numbers_it[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_ja[84] = { - L( 49), L( 50), L( 51), L( 52), L( 53), L( 54), L( 55), L( 56), - L( 57), L( 58), L( 59), L( 60), L( 61), L( 62), L( 63), L( 64), - L( 65), L( 66), L( 67), L( 68), L( 69), L( 70), L( 71), L( 72), - L( 73), L( 74), L( 75), L( 76), L( 77), L( 78), L( 79), L( 80), - L( 81), L( 82), L( 83), L( 84), L( 85), L( 86), L( 87), L( 88), - L( 89), L( 90), L( 91), L( 92), L( 93), L( 94), L( 95), L( 96), - L( 97), L( 98), L( 99), L(100), L(101), L(102), L(103), L(104), - L(105), L(106), L(107), L(108), L(109), L(110), L(111), L(112), - L(113), L(114), L(115), L(116), L(117), L(118), L(119), L(120), - L(121), L(122), L(123), L(124), L(125), L(126), L(127), L(128), - L(129), L(130), L(131), L(132), -}; - -static const FcChar16 numbers_ja[84] = { - 0x0030, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, - 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, - 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, - 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, - 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, - 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, - 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, - 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, - 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, - 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, - 0x009d, 0x009e, 0x009f, 0x00ff, -}; - -static const FcCharLeaf *leaves_ka[2] = { - L(133), L(134), -}; - -static const FcChar16 numbers_ka[2] = { - 0x0005, 0x0010, -}; - -static const FcCharLeaf *leaves_kk[2] = { - L( 0), L(135), -}; - -static const FcChar16 numbers_kk[2] = { - 0x0000, 0x0004, -}; - -static const FcCharLeaf *leaves_kl[2] = { - L(136), L(137), -}; - -static const FcChar16 numbers_kl[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_km[1] = { - L(138), -}; - -static const FcChar16 numbers_km[1] = { - 0x0017, -}; - -static const FcCharLeaf *leaves_kn[1] = { - L(139), -}; - -static const FcChar16 numbers_kn[1] = { - 0x000c, -}; - -static const FcCharLeaf *leaves_ko[132] = { - L(140), L(141), L(142), L(143), L(144), L(145), L(146), L(147), - L(148), L(149), L(150), L(151), L(152), L(153), L(154), L(155), - L(156), L(157), L(158), L(159), L(160), L(161), L(162), L(163), - L(164), L(165), L(166), L(167), L(168), L(169), L(170), L(171), - L(172), L(173), L(174), L(175), L(176), L(177), L(178), L(179), - L(180), L(181), L(182), L(183), L(184), L(185), L(186), L(187), - L(188), L(189), L(190), L(191), L(192), L(193), L(194), L(195), - L(196), L(197), L(198), L(199), L(200), L(201), L(202), L(203), - L(204), L(205), L(206), L(207), L(208), L(209), L(210), L(211), - L(212), L(213), L(214), L(215), L(216), L(217), L(218), L(219), - L(220), L(221), L(222), L(223), L(224), L(225), L(225), L(225), - L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), - L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), - L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), - L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), - L(225), L(225), L(225), L(225), L(225), L(225), L(225), L(225), - L(226), L(225), L(227), L(228), -}; - -static const FcChar16 numbers_ko[132] = { - 0x0030, 0x0031, 0x0032, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, - 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, - 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, - 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, - 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, - 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, - 0x007b, 0x007c, 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, - 0x0083, 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, - 0x008b, 0x008c, 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, - 0x0093, 0x0094, 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, - 0x009b, 0x009c, 0x009d, 0x009e, 0x009f, 0x00ac, 0x00ad, 0x00ae, - 0x00af, 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, - 0x00b7, 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, - 0x00bf, 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, - 0x00c7, 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, - 0x00cf, 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, - 0x00d7, 0x00f9, 0x00fa, 0x00ff, -}; - -static const FcCharLeaf *leaves_la[2] = { - L( 23), L(229), -}; - -static const FcChar16 numbers_la[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_lo[1] = { - L(230), -}; - -static const FcChar16 numbers_lo[1] = { - 0x000e, -}; - -static const FcCharLeaf *leaves_lt[2] = { - L( 23), L(231), -}; - -static const FcChar16 numbers_lt[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_lv[2] = { - L( 23), L(232), -}; - -static const FcChar16 numbers_lv[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_mk[1] = { - L(233), -}; - -static const FcChar16 numbers_mk[1] = { - 0x0004, -}; - -static const FcCharLeaf *leaves_ml[1] = { - L(234), -}; - -static const FcChar16 numbers_ml[1] = { - 0x000d, -}; - -static const FcCharLeaf *leaves_mn[1] = { - L(235), -}; - -static const FcChar16 numbers_mn[1] = { - 0x0018, -}; - -static const FcCharLeaf *leaves_mo[4] = { - L(236), L(237), L(238), L(239), -}; - -static const FcChar16 numbers_mo[4] = { - 0x0000, 0x0001, 0x0002, 0x0004, -}; - -static const FcCharLeaf *leaves_mt[3] = { - L(240), L(241), L(242), -}; - -static const FcChar16 numbers_mt[3] = { - 0x0000, 0x0001, 0x0002, -}; - -static const FcCharLeaf *leaves_nl[1] = { - L(243), -}; - -static const FcChar16 numbers_nl[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_no[1] = { - L(244), -}; - -static const FcChar16 numbers_no[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_oc[1] = { - L(245), -}; - -static const FcChar16 numbers_oc[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_or[1] = { - L(246), -}; - -static const FcChar16 numbers_or[1] = { - 0x000b, -}; - -static const FcCharLeaf *leaves_pl[2] = { - L(247), L(248), -}; - -static const FcChar16 numbers_pl[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_pt[1] = { - L(249), -}; - -static const FcChar16 numbers_pt[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_rm[1] = { - L(250), -}; - -static const FcChar16 numbers_rm[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_ro[3] = { - L(236), L(237), L(238), -}; - -static const FcChar16 numbers_ro[3] = { - 0x0000, 0x0001, 0x0002, -}; - -static const FcCharLeaf *leaves_ru[2] = { - L( 0), L(251), -}; - -static const FcChar16 numbers_ru[2] = { - 0x0000, 0x0004, -}; - -static const FcCharLeaf *leaves_sh[1] = { - L(252), -}; - -static const FcChar16 numbers_sh[1] = { - 0x0004, -}; - -static const FcCharLeaf *leaves_si[1] = { - L(253), -}; - -static const FcChar16 numbers_si[1] = { - 0x000d, -}; - -static const FcCharLeaf *leaves_sk[2] = { - L(254), L(255), -}; - -static const FcChar16 numbers_sk[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_sl[3] = { - L( 23), L(256), L(257), -}; - -static const FcChar16 numbers_sl[3] = { - 0x0000, 0x0001, 0x0004, -}; - -static const FcCharLeaf *leaves_sq[1] = { - L(258), -}; - -static const FcChar16 numbers_sq[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_sv[1] = { - L(259), -}; - -static const FcChar16 numbers_sv[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_ta[1] = { - L(260), -}; - -static const FcChar16 numbers_ta[1] = { - 0x000b, -}; - -static const FcCharLeaf *leaves_te[1] = { - L(261), -}; - -static const FcChar16 numbers_te[1] = { - 0x000c, -}; - -static const FcCharLeaf *leaves_th[1] = { - L(262), -}; - -static const FcChar16 numbers_th[1] = { - 0x000e, -}; - -static const FcCharLeaf *leaves_tl[1] = { - L(263), -}; - -static const FcChar16 numbers_tl[1] = { - 0x0017, -}; - -static const FcCharLeaf *leaves_tr[2] = { - L(264), L(265), -}; - -static const FcChar16 numbers_tr[2] = { - 0x0000, 0x0001, -}; - -static const FcCharLeaf *leaves_uk[2] = { - L( 0), L(266), -}; - -static const FcChar16 numbers_uk[2] = { - 0x0000, 0x0004, -}; - -static const FcCharLeaf *leaves_vo[1] = { - L(267), -}; - -static const FcChar16 numbers_vo[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_wa[1] = { - L(268), -}; - -static const FcChar16 numbers_wa[1] = { - 0x0000, -}; - -static const FcCharLeaf *leaves_zh_cn[82] = { - L(269), L(270), L(271), L(272), L(273), L(274), L(275), L(276), - L(277), L(278), L(279), L(280), L(281), L(282), L(283), L(284), - L(285), L(286), L(287), L(288), L(289), L(290), L(291), L(292), - L(293), L(294), L(295), L(296), L(297), L(298), L(299), L(300), - L(301), L(302), L(303), L(304), L(305), L(306), L(307), L(308), - L(309), L(310), L(311), L(312), L(313), L(314), L(315), L(316), - L(317), L(318), L(319), L(320), L(321), L(322), L(323), L(324), - L(325), L(326), L(327), L(328), L(329), L(330), L(331), L(332), - L(333), L(334), L(335), L(336), L(337), L(338), L(339), L(340), - L(341), L(342), L(343), L(344), L(345), L(346), L(347), L(348), - L(349), L(350), -}; - -static const FcChar16 numbers_zh_cn[82] = { - 0x0002, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, - 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, - 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, - 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, - 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, - 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, - 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, - 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, - 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, - 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, - 0x009e, 0x009f, -}; - -static const FcCharLeaf *leaves_zh_tw[84] = { - L(351), L(352), L(353), L(354), L(355), L(356), L(357), L(358), - L(359), L(360), L(361), L(362), L(363), L(364), L(365), L(366), - L(367), L(368), L(369), L(370), L(371), L(372), L(373), L(374), - L(375), L(376), L(377), L(378), L(379), L(380), L(381), L(382), - L(383), L(384), L(385), L(386), L(387), L(388), L(389), L(390), - L(391), L(392), L(393), L(394), L(395), L(396), L(397), L(398), - L(399), L(400), L(401), L(402), L(403), L(404), L(405), L(406), - L(407), L(408), L(409), L(410), L(411), L(412), L(413), L(414), - L(415), L(416), L(417), L(418), L(419), L(420), L(421), L(422), - L(423), L(424), L(425), L(426), L(427), L(428), L(429), L(430), - L(431), L(432), L(433), L(434), -}; - -static const FcChar16 numbers_zh_tw[84] = { - 0x0030, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, - 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, - 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, - 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, - 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, - 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, - 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, - 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, - 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, - 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, - 0x009d, 0x009e, 0x009f, 0x00fa, -}; - -static const FcCharLeaf *leaves_chr[1] = { - L(435), -}; - -static const FcChar16 numbers_chr[1] = { - 0x0013, -}; - -#undef L - -static const FcLangCharSet fcLangCharSets[] = { - { (FcChar8 *) "ab", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_ab, (FcChar16 *) numbers_ab } }, - { (FcChar8 *) "ar", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_ar, (FcChar16 *) numbers_ar } }, - { (FcChar8 *) "az", - { 1, FcTrue, 4, (FcCharLeaf **) leaves_az, (FcChar16 *) numbers_az } }, - { (FcChar8 *) "ba", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_ba, (FcChar16 *) numbers_ba } }, - { (FcChar8 *) "be", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_be, (FcChar16 *) numbers_be } }, - { (FcChar8 *) "bg", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_bg, (FcChar16 *) numbers_bg } }, - { (FcChar8 *) "bn", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_bn, (FcChar16 *) numbers_bn } }, - { (FcChar8 *) "bo", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_bo, (FcChar16 *) numbers_bo } }, - { (FcChar8 *) "br", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_br, (FcChar16 *) numbers_br } }, - { (FcChar8 *) "ca", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_ca, (FcChar16 *) numbers_ca } }, - { (FcChar8 *) "co", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_co, (FcChar16 *) numbers_co } }, - { (FcChar8 *) "cs", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_cs, (FcChar16 *) numbers_cs } }, - { (FcChar8 *) "da", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_da, (FcChar16 *) numbers_da } }, - { (FcChar8 *) "de", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_de, (FcChar16 *) numbers_de } }, - { (FcChar8 *) "el", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_el, (FcChar16 *) numbers_el } }, - { (FcChar8 *) "en", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_en, (FcChar16 *) numbers_en } }, - { (FcChar8 *) "eo", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_eo, (FcChar16 *) numbers_eo } }, - { (FcChar8 *) "es", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_es, (FcChar16 *) numbers_es } }, - { (FcChar8 *) "et", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_et, (FcChar16 *) numbers_et } }, - { (FcChar8 *) "eu", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_eu, (FcChar16 *) numbers_eu } }, - { (FcChar8 *) "fi", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_fi, (FcChar16 *) numbers_fi } }, - { (FcChar8 *) "fo", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_fo, (FcChar16 *) numbers_fo } }, - { (FcChar8 *) "fr", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_co, (FcChar16 *) numbers_co } }, - { (FcChar8 *) "fy", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_de, (FcChar16 *) numbers_de } }, - { (FcChar8 *) "ga", - { 1, FcTrue, 5, (FcCharLeaf **) leaves_ga, (FcChar16 *) numbers_ga } }, - { (FcChar8 *) "gd", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_gd, (FcChar16 *) numbers_gd } }, - { (FcChar8 *) "gl", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_gl, (FcChar16 *) numbers_gl } }, - { (FcChar8 *) "gu", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_gu, (FcChar16 *) numbers_gu } }, - { (FcChar8 *) "he", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_he, (FcChar16 *) numbers_he } }, - { (FcChar8 *) "hr", - { 1, FcTrue, 3, (FcCharLeaf **) leaves_hr, (FcChar16 *) numbers_hr } }, - { (FcChar8 *) "hu", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_hu, (FcChar16 *) numbers_hu } }, - { (FcChar8 *) "hy", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_hy, (FcChar16 *) numbers_hy } }, - { (FcChar8 *) "is", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_is, (FcChar16 *) numbers_is } }, - { (FcChar8 *) "it", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_it, (FcChar16 *) numbers_it } }, - { (FcChar8 *) "ja", - { 1, FcTrue, 84, (FcCharLeaf **) leaves_ja, (FcChar16 *) numbers_ja } }, - { (FcChar8 *) "ka", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_ka, (FcChar16 *) numbers_ka } }, - { (FcChar8 *) "kk", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_kk, (FcChar16 *) numbers_kk } }, - { (FcChar8 *) "kl", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_kl, (FcChar16 *) numbers_kl } }, - { (FcChar8 *) "km", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_km, (FcChar16 *) numbers_km } }, - { (FcChar8 *) "kn", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_kn, (FcChar16 *) numbers_kn } }, - { (FcChar8 *) "ko", - { 1, FcTrue, 132, (FcCharLeaf **) leaves_ko, (FcChar16 *) numbers_ko } }, - { (FcChar8 *) "la", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_la, (FcChar16 *) numbers_la } }, - { (FcChar8 *) "lo", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_lo, (FcChar16 *) numbers_lo } }, - { (FcChar8 *) "lt", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_lt, (FcChar16 *) numbers_lt } }, - { (FcChar8 *) "lv", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_lv, (FcChar16 *) numbers_lv } }, - { (FcChar8 *) "mk", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_mk, (FcChar16 *) numbers_mk } }, - { (FcChar8 *) "ml", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_ml, (FcChar16 *) numbers_ml } }, - { (FcChar8 *) "mn", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_mn, (FcChar16 *) numbers_mn } }, - { (FcChar8 *) "mo", - { 1, FcTrue, 4, (FcCharLeaf **) leaves_mo, (FcChar16 *) numbers_mo } }, - { (FcChar8 *) "mt", - { 1, FcTrue, 3, (FcCharLeaf **) leaves_mt, (FcChar16 *) numbers_mt } }, - { (FcChar8 *) "nl", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_nl, (FcChar16 *) numbers_nl } }, - { (FcChar8 *) "no", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_no, (FcChar16 *) numbers_no } }, - { (FcChar8 *) "oc", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_oc, (FcChar16 *) numbers_oc } }, - { (FcChar8 *) "or", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_or, (FcChar16 *) numbers_or } }, - { (FcChar8 *) "pl", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_pl, (FcChar16 *) numbers_pl } }, - { (FcChar8 *) "pt", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_pt, (FcChar16 *) numbers_pt } }, - { (FcChar8 *) "rm", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_rm, (FcChar16 *) numbers_rm } }, - { (FcChar8 *) "ro", - { 1, FcTrue, 3, (FcCharLeaf **) leaves_ro, (FcChar16 *) numbers_ro } }, - { (FcChar8 *) "ru", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_ru, (FcChar16 *) numbers_ru } }, - { (FcChar8 *) "sh", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_sh, (FcChar16 *) numbers_sh } }, - { (FcChar8 *) "si", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_si, (FcChar16 *) numbers_si } }, - { (FcChar8 *) "sk", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_sk, (FcChar16 *) numbers_sk } }, - { (FcChar8 *) "sl", - { 1, FcTrue, 3, (FcCharLeaf **) leaves_sl, (FcChar16 *) numbers_sl } }, - { (FcChar8 *) "sq", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_sq, (FcChar16 *) numbers_sq } }, - { (FcChar8 *) "sr", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_sh, (FcChar16 *) numbers_sh } }, - { (FcChar8 *) "sv", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_sv, (FcChar16 *) numbers_sv } }, - { (FcChar8 *) "ta", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_ta, (FcChar16 *) numbers_ta } }, - { (FcChar8 *) "te", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_te, (FcChar16 *) numbers_te } }, - { (FcChar8 *) "th", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_th, (FcChar16 *) numbers_th } }, - { (FcChar8 *) "tl", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_tl, (FcChar16 *) numbers_tl } }, - { (FcChar8 *) "tr", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_tr, (FcChar16 *) numbers_tr } }, - { (FcChar8 *) "uk", - { 1, FcTrue, 2, (FcCharLeaf **) leaves_uk, (FcChar16 *) numbers_uk } }, - { (FcChar8 *) "vo", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_vo, (FcChar16 *) numbers_vo } }, - { (FcChar8 *) "wa", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_wa, (FcChar16 *) numbers_wa } }, - { (FcChar8 *) "yi", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_he, (FcChar16 *) numbers_he } }, - { (FcChar8 *) "zh-cn", - { 1, FcTrue, 82, (FcCharLeaf **) leaves_zh_cn, (FcChar16 *) numbers_zh_cn } }, - { (FcChar8 *) "zh-tw", - { 1, FcTrue, 84, (FcCharLeaf **) leaves_zh_tw, (FcChar16 *) numbers_zh_tw } }, - { (FcChar8 *) "chr", - { 1, FcTrue, 1, (FcCharLeaf **) leaves_chr, (FcChar16 *) numbers_chr } }, -}; - +#include "../fc-lang/fclang.h" #define NUM_LANG_CHAR_SET (sizeof (fcLangCharSets) / sizeof (fcLangCharSets[0])) FcBool -FcFreeTypeSetLang (FcPattern *pattern, FcCharSet *charset) +FcFreeTypeSetLang (FcPattern *pattern, + FcCharSet *charset, + const FcChar8 *exclusiveLang) { - int i; - FcChar32 missing; + int i; + FcChar32 missing; + FcBool hasLang = FcFalse; + const FcCharSet *exclusiveCharset = 0; + if (exclusiveLang) + exclusiveCharset = FcCharSetForLang (exclusiveLang); for (i = 0; i < NUM_LANG_CHAR_SET; i++) { + /* + * Check for Han charsets to make fonts + * which advertise support for a single language + * not support other Han languages + */ + if (exclusiveCharset && + FcFreeTypeIsExclusiveLang (fcLangCharSets[i].lang) && + fcLangCharSets[i].charset.leaves != exclusiveCharset->leaves) + { + continue; + } missing = FcCharSetSubtractCount (&fcLangCharSets[i].charset, charset); if (FcDebug() & FC_DBG_SCANV) printf ("%s(%d) ", fcLangCharSets[i].lang, missing); - if (!missing && !FcFreeTypeHasLang (pattern, fcLangCharSets[i].lang)) + if (!missing) + { if (!FcPatternAddString (pattern, FC_LANG, fcLangCharSets[i].lang)) return FcFalse; + hasLang = FcTrue; + } } + /* + * Make sure it has a lang entry + */ + if (!hasLang) + if (!FcPatternAddString (pattern, FC_LANG, (FcChar8 *) "x-unknown")) + return FcFalse; + if (FcDebug() & FC_DBG_SCANV) printf ("\n"); return FcTrue; -- 2.39.5