gdi32: Merge in Uniscribe functionality.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Nikolay Sivov 2020-11-09 13:04:04 +03:00 committed by Alexandre Julliard
parent d202e02f79
commit b9178da586
21 changed files with 114 additions and 495 deletions

View File

@ -249,7 +249,7 @@ F: dlls/gphoto2.ds/
Uniscribe
M: Aric Stewart <aric@codeweavers.com>
F: dlls/usp10/
F: dlls/gdi32/uniscribe/
URL Moniker
M: Jacek Caban <jacek@codeweavers.com>

View File

@ -4,7 +4,7 @@ IMPORTLIB = gdi32
IMPORTS = advapi32
EXTRAINCL = $(FREETYPE_CFLAGS) $(FONTCONFIG_CFLAGS)
EXTRALIBS = $(CARBON_LIBS) $(APPKIT_LIBS)
DELAYIMPORTS = usp10 setupapi
DELAYIMPORTS = setupapi
EXTRADLLFLAGS = -mno-cygwin
@ -22,7 +22,6 @@ C_SRCS = \
dibdrv/objects.c \
dibdrv/opengl.c \
dibdrv/primitives.c \
direction.c \
driver.c \
enhmetafile.c \
enhmfdrv/bitblt.c \
@ -49,6 +48,18 @@ C_SRCS = \
pen.c \
printdrv.c \
region.c \
uniscribe/bidi.c \
uniscribe/bracket.c \
uniscribe/breaking.c \
uniscribe/direction.c \
uniscribe/indic.c \
uniscribe/indicsyllable.c \
uniscribe/linebreak.c \
uniscribe/mirror.c \
uniscribe/opentype.c \
uniscribe/shape.c \
uniscribe/shaping.c \
uniscribe/usp10.c \
vertical.c \
vulkan.c

View File

@ -427,6 +427,44 @@
@ stdcall SaveDC(long)
@ stdcall ScaleViewportExtEx(long long long long long ptr)
@ stdcall ScaleWindowExtEx(long long long long long ptr)
@ stdcall ScriptApplyDigitSubstitution(ptr ptr ptr)
@ stdcall ScriptApplyLogicalWidth(ptr long long ptr ptr ptr ptr ptr ptr)
@ stdcall ScriptBreak(ptr long ptr ptr)
@ stdcall ScriptCacheGetHeight(ptr ptr ptr)
@ stdcall ScriptCPtoX(long long long long ptr ptr ptr ptr ptr)
@ stdcall ScriptFreeCache(ptr)
@ stdcall ScriptGetCMap(ptr ptr ptr long long ptr)
@ stdcall ScriptGetFontAlternateGlyphs(long ptr ptr long long long long long ptr ptr)
@ stdcall ScriptGetFontFeatureTags(long ptr ptr long long long ptr ptr)
@ stdcall ScriptGetFontLanguageTags(long ptr ptr long long ptr ptr)
@ stdcall ScriptGetFontProperties(long ptr ptr)
@ stdcall ScriptGetFontScriptTags(long ptr ptr long ptr ptr)
@ stdcall ScriptGetGlyphABCWidth(ptr ptr long ptr)
@ stdcall ScriptGetLogicalWidths(ptr long long ptr ptr ptr ptr)
@ stdcall ScriptGetProperties(ptr ptr)
@ stdcall ScriptIsComplex(wstr long long)
@ stdcall ScriptItemize(wstr long long ptr ptr ptr ptr)
@ stdcall ScriptItemizeOpenType(wstr long long ptr ptr ptr ptr ptr)
@ stdcall ScriptJustify(ptr ptr long long long ptr)
@ stdcall ScriptLayout(long ptr ptr ptr)
@ stdcall ScriptPlace(ptr ptr ptr long ptr ptr ptr ptr ptr)
@ stdcall ScriptPlaceOpenType(ptr ptr ptr long long ptr ptr long wstr ptr ptr long ptr ptr long ptr ptr ptr)
@ stdcall ScriptRecordDigitSubstitution(long ptr)
@ stdcall ScriptShape(ptr ptr ptr long long ptr ptr ptr ptr ptr)
@ stdcall ScriptShapeOpenType(ptr ptr ptr long long ptr ptr long wstr long long ptr ptr ptr ptr ptr)
@ stdcall ScriptStringAnalyse(ptr ptr long long long long long ptr ptr ptr ptr ptr ptr)
@ stdcall ScriptStringCPtoX(ptr long long ptr)
@ stdcall ScriptStringFree(ptr)
@ stdcall ScriptStringGetLogicalWidths(ptr ptr)
@ stdcall ScriptStringGetOrder(ptr ptr)
@ stdcall ScriptStringOut(ptr long long long ptr long long long)
@ stdcall ScriptStringValidate(ptr)
@ stdcall ScriptStringXtoCP(ptr long ptr ptr)
@ stdcall ScriptString_pLogAttr(ptr)
@ stdcall ScriptString_pSize(ptr)
@ stdcall ScriptString_pcOutChars(ptr)
@ stdcall ScriptTextOut(ptr ptr long long long ptr ptr ptr long ptr long ptr ptr ptr)
@ stdcall ScriptXtoCP(long long long ptr ptr ptr ptr ptr ptr)
@ stub SelectBrushLocal
@ stdcall SelectClipPath(long long)
@ stdcall SelectClipRgn(long long)

View File

@ -2194,6 +2194,18 @@ static inline BOOL does_glyph_start_cluster(const SCRIPT_VISATTR *pva, const WOR
return FALSE;
}
static DWORD get_sys_color(INT index)
{
static DWORD (WINAPI *pGetSysColor)(INT index);
if (!pGetSysColor)
{
HMODULE user = GetModuleHandleW( L"user32.dll" );
if (user) pGetSysColor = (void *)GetProcAddress( user, "GetSysColor" );
}
return pGetSysColor(index);
}
static HRESULT SS_ItemOut( SCRIPT_STRING_ANALYSIS ssa,
int iX,
@ -2227,17 +2239,18 @@ static HRESULT SS_ItemOut( SCRIPT_STRING_ANALYSIS ssa,
(cEnd >= 0 && analysis->pItem[iItem].iCharPos >= cEnd))
return S_OK;
CopyRect(&crc,prc);
if (prc)
memcpy(&crc, prc, sizeof(crc));
if (fSelected)
{
BkMode = GetBkMode(analysis->hdc);
SetBkMode( analysis->hdc, OPAQUE);
BkColor = GetBkColor(analysis->hdc);
SetBkColor(analysis->hdc, GetSysColor(COLOR_HIGHLIGHT));
SetBkColor(analysis->hdc, get_sys_color(COLOR_HIGHLIGHT));
if (!fDisabled)
{
TextColor = GetTextColor(analysis->hdc);
SetTextColor(analysis->hdc, GetSysColor(COLOR_HIGHLIGHTTEXT));
SetTextColor(analysis->hdc, get_sys_color(COLOR_HIGHLIGHTTEXT));
}
}
if (analysis->glyphs[iItem].fallbackFont)
@ -3449,7 +3462,7 @@ HRESULT WINAPI ScriptPlaceOpenType( HDC hdc, SCRIPT_CACHE *psc, SCRIPT_ANALYSIS
else
{
INT width;
if (!GetCharWidthW(hdc, pwGlyphs[i], pwGlyphs[i], &width)) return S_FALSE;
if (!GetCharWidth32W(hdc, pwGlyphs[i], pwGlyphs[i], &width)) return S_FALSE;
abc.abcB = width;
abc.abcA = abc.abcC = 0;
}

View File

@ -1,19 +1,2 @@
MODULE = usp10.dll
IMPORTLIB = usp10
IMPORTS = advapi32 user32 gdi32
EXTRADLLFLAGS = -mno-cygwin
C_SRCS = \
bidi.c \
bracket.c \
breaking.c \
direction.c \
indic.c \
indicsyllable.c \
linebreak.c \
mirror.c \
opentype.c \
shape.c \
shaping.c \
usp10.c

View File

@ -1,426 +0,0 @@
/* Unicode BiDi direction table */
/* Automatically generated; DO NOT EDIT!! */
#include "windef.h"
const unsigned short DECLSPEC_HIDDEN bidi_direction_table[3313] =
{
/* level 1 offsets */
0x0100, 0x0110, 0x0115, 0x0125, 0x0135, 0x013e, 0x014e, 0x015e,
0x016e, 0x017e, 0x018e, 0x019e, 0x01ae, 0x01be, 0x01cc, 0x01db,
0x01e9, 0x0110, 0x0110, 0x01f4, 0x0204, 0x0110, 0x020c, 0x021b,
0x022b, 0x0239, 0x0249, 0x0259, 0x0269, 0x0279, 0x0110, 0x0289,
0x0299, 0x02a9, 0x02b8, 0x02c5, 0x02d3, 0x02e2, 0x02e8, 0x02e2,
0x0110, 0x02e2, 0x02e2, 0x02f3, 0x0303, 0x0313, 0x0323, 0x0333,
0x0343, 0x0353, 0x0362, 0x036f, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x037f, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x038f, 0x0110, 0x039f, 0x03af,
0x03bf, 0x03cf, 0x03de, 0x03ee, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110,
0x0110, 0x0110, 0x0110, 0x03fd, 0x040b, 0x0418, 0x0428, 0x0438,
/* level 2 offsets */
0x0448, 0x0456, 0x0466, 0x0476, 0x0485, 0x048a, 0x0485, 0x049a,
0x04a9, 0x04af, 0x04bf, 0x04cf, 0x04df, 0x04e8, 0x04df, 0x04e8,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04f0, 0x04fe, 0x04fe, 0x050e, 0x051d, 0x052d, 0x052d, 0x052d,
0x052d, 0x052d, 0x052d, 0x052d, 0x053d, 0x054c, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04e9, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x0559, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x0563, 0x0573,
0x052d, 0x0575, 0x0583, 0x0593, 0x0598, 0x05a7, 0x05b7, 0x05c7,
0x05d5, 0x05d5, 0x05da, 0x052d, 0x05ea, 0x05fa, 0x05d5, 0x05d5,
0x05d5, 0x05d5, 0x05d5, 0x0604, 0x0613, 0x0623, 0x062d, 0x05f9,
0x05d5, 0x052d, 0x063d, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5,
0x064a, 0x0659, 0x0593, 0x0593, 0x0669, 0x0675, 0x0593, 0x0683,
0x068f, 0x0594, 0x0593, 0x069f, 0x06af, 0x04df, 0x04df, 0x04df,
0x05d5, 0x06bf, 0x06c7, 0x06d4, 0x06e2, 0x052d, 0x06ef, 0x04df,
0x04df, 0x06f5, 0x0704, 0x055b, 0x0712, 0x04df, 0x0721, 0x04df,
0x04df, 0x0716, 0x0730, 0x04df, 0x0712, 0x073e, 0x074d, 0x04df,
0x04df, 0x0716, 0x075c, 0x0721, 0x04df, 0x0768, 0x074d, 0x04df,
0x04df, 0x0716, 0x0777, 0x04df, 0x0712, 0x0786, 0x0721, 0x04df,
0x04df, 0x0796, 0x0730, 0x07a6, 0x0712, 0x04df, 0x0720, 0x04df,
0x04df, 0x04df, 0x0715, 0x04df, 0x04df, 0x07b3, 0x07c3, 0x04df,
0x04df, 0x0723, 0x07d3, 0x07a6, 0x0712, 0x07e1, 0x0721, 0x04df,
0x04df, 0x0716, 0x0751, 0x04df, 0x0712, 0x04df, 0x07f1, 0x04df,
0x04df, 0x0752, 0x0730, 0x04df, 0x0712, 0x04df, 0x0721, 0x04df,
0x04df, 0x04df, 0x0718, 0x07ff, 0x04df, 0x04df, 0x04df, 0x080e,
0x081e, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x082d,
0x0788, 0x04df, 0x04df, 0x04df, 0x083a, 0x04df, 0x0845, 0x04df,
0x04df, 0x04df, 0x0854, 0x085e, 0x086b, 0x052d, 0x0530, 0x071c,
0x04df, 0x04df, 0x04df, 0x0724, 0x087a, 0x04df, 0x0755, 0x0888,
0x0897, 0x08a5, 0x08b3, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x0724, 0x04df, 0x04df, 0x04df, 0x08c3, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x0485, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x08d3, 0x08d8, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x08e6, 0x04df, 0x08e6, 0x04df,
0x0712, 0x04df, 0x0712, 0x04df, 0x04df, 0x04df, 0x08f2, 0x0809,
0x08fc, 0x04df, 0x08c3, 0x090c, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x07a6, 0x04df, 0x0719, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x091c, 0x092a, 0x093a, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x0487, 0x051d,
0x051d, 0x04df, 0x0943, 0x04df, 0x04df, 0x04df, 0x094f, 0x095d,
0x096a, 0x04df, 0x04df, 0x04df, 0x052d, 0x0888, 0x04df, 0x04df,
0x04df, 0x06ee, 0x04df, 0x04df, 0x097a, 0x0720, 0x04df, 0x0987,
0x06ee, 0x07f1, 0x04df, 0x0997, 0x04df, 0x04df, 0x04df, 0x09a5,
0x07f1, 0x04df, 0x04df, 0x0725, 0x09b4, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x09c4, 0x09d3,
0x09dc, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x052d, 0x052d, 0x052d,
0x09ca, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x09e6, 0x0498, 0x0488, 0x0488,
0x08d6, 0x09f6, 0x051d, 0x0a06, 0x0a16, 0x0a22, 0x0a27, 0x0a37,
0x0a47, 0x0a57, 0x04df, 0x0a67, 0x0a67, 0x04df, 0x052d, 0x052d,
0x0888, 0x0a77, 0x0a83, 0x0a91, 0x0aa0, 0x0ab0, 0x051d, 0x04df,
0x04df, 0x0abe, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x051d, 0x0ace, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x0ad8, 0x04df, 0x04df, 0x04df, 0x048a, 0x051d, 0x0517, 0x051d,
0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x0ad7, 0x04df, 0x0503,
0x04df, 0x051d, 0x051d, 0x0ae8, 0x0af0, 0x04df, 0x04df, 0x04df,
0x04df, 0x0ade, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x051d, 0x051d, 0x0b00, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x051d, 0x051d, 0x0b0d, 0x051d, 0x0516, 0x051d, 0x051d, 0x051d,
0x051d, 0x051d, 0x051d, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x0b1d, 0x0b2c, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x0889, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x052d, 0x052d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x0483, 0x04df, 0x04df, 0x051d, 0x0b35, 0x051d, 0x051d, 0x051d,
0x051d, 0x051d, 0x0482, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d, 0x051d,
0x0ad8, 0x04df, 0x0502, 0x0b45, 0x051d, 0x0b54, 0x0b64, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x0b74, 0x0485, 0x04df, 0x04df,
0x04df, 0x04df, 0x04e4, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x051d,
0x051d, 0x0482, 0x04df, 0x08d6, 0x04df, 0x04df, 0x04df, 0x051d,
0x04df, 0x0b81, 0x04df, 0x04df, 0x04df, 0x051c, 0x0489, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x0b90, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x0487, 0x04df, 0x0486, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x051d, 0x051d, 0x051d, 0x051d, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df,
0x051d, 0x051d, 0x051d, 0x0ad7, 0x04df, 0x04df, 0x04df, 0x0488,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x0889, 0x0ba0, 0x04df,
0x0723, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x07f1, 0x051d,
0x051d, 0x0484, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04e7,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x0bb0,
0x04df, 0x0bbc, 0x0bc9, 0x04df, 0x04df, 0x04df, 0x0ab6, 0x04df,
0x04df, 0x04df, 0x04df, 0x0bd5, 0x04df, 0x052d, 0x06f0, 0x04df,
0x04df, 0x0bdf, 0x04df, 0x06d0, 0x07f1, 0x04df, 0x04df, 0x06ef,
0x04df, 0x04df, 0x0bed, 0x04df, 0x04df, 0x071d, 0x04df, 0x04df,
0x0bfb, 0x0882, 0x0c0a, 0x04df, 0x04df, 0x0716, 0x04df, 0x04df,
0x04df, 0x0c1a, 0x0721, 0x04df, 0x0751, 0x071c, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x0aa0, 0x04df, 0x04df, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x0c2a, 0x04df, 0x0c38, 0x0c47,
0x0c51, 0x0c61, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5,
0x05d5, 0x0c71, 0x0c7e, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5,
0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5,
0x05d5, 0x05d5, 0x05d5, 0x0c81, 0x04df, 0x05d5, 0x05d5, 0x05d5,
0x05d5, 0x0c7f, 0x05d5, 0x05d5, 0x06c7, 0x04df, 0x04df, 0x0c91,
0x052d, 0x08c3, 0x052d, 0x051d, 0x051d, 0x0ca1, 0x0cb1, 0x06bf,
0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x05d5, 0x0cc1,
0x0cd1, 0x0476, 0x0485, 0x048a, 0x0485, 0x048a, 0x0ad8, 0x04df,
0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x04df, 0x0ce1, 0x048c,
/* values */
0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a,
0x000a, 0x000b, 0x000d, 0x000b, 0x000c, 0x000d, 0x000a, 0x000a,
0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a,
0x000a, 0x000a, 0x000d, 0x000d, 0x000d, 0x000b, 0x000c, 0x0000,
0x0000, 0x0009, 0x0009, 0x0009, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0008, 0x0007, 0x0008, 0x0007, 0x0007, 0x0004, 0x0004,
0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
0x0007, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000,
0x0000, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000d, 0x000a,
0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a,
0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x0007,
0x0000, 0x0009, 0x0009, 0x0009, 0x0009, 0x0000, 0x0000, 0x0000,
0x0000, 0x0001, 0x0000, 0x0000, 0x000a, 0x0000, 0x0000, 0x0009,
0x0009, 0x0004, 0x0004, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000,
0x0004, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001,
0x0001, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001,
0x0000, 0x0000, 0x0001, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0001, 0x0001,
0x0000, 0x0000, 0x0009, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0002, 0x0006, 0x0006, 0x0002, 0x0006,
0x0006, 0x0002, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002,
0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002,
0x0002, 0x0002, 0x0002, 0x0001, 0x0001, 0x0001, 0x0001, 0x0002,
0x0002, 0x0002, 0x0002, 0x0002, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0003,
0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0000, 0x0000, 0x0005,
0x0009, 0x0009, 0x0005, 0x0007, 0x0005, 0x0000, 0x0000, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0005, 0x0005, 0x0001, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
0x0003, 0x0003, 0x0003, 0x0003, 0x0009, 0x0003, 0x0003, 0x0005,
0x0005, 0x0005, 0x0006, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0003, 0x0000, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0005, 0x0005, 0x0006, 0x0006, 0x0000, 0x0006, 0x0006, 0x0006,
0x0006, 0x0005, 0x0005, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0001, 0x0005, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0001, 0x0001, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0005, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002,
0x0002, 0x0002, 0x0002, 0x0002, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0002, 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002,
0x0001, 0x0001, 0x0006, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002,
0x0002, 0x0006, 0x0006, 0x0006, 0x0006, 0x0002, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0002, 0x0006, 0x0006, 0x0006, 0x0002,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0002,
0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002,
0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0002, 0x0001, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0001, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0003, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006,
0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001,
0x0001, 0x0006, 0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001,
0x0009, 0x0009, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0009, 0x0001, 0x0001, 0x0006, 0x0001, 0x0006, 0x0006,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0006,
0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0006,
0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0009,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0009, 0x0000, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0006,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0006, 0x0006,
0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006,
0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0009, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0001,
0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0006, 0x0001, 0x0006, 0x0001, 0x0006, 0x0000,
0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0006,
0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006,
0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0006, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x000c, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001,
0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006,
0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0009,
0x0001, 0x0006, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0006,
0x0006, 0x0006, 0x000a, 0x0001, 0x0006, 0x0006, 0x0006, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0000, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0006, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0006,
0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001,
0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001,
0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0006,
0x0006, 0x0001, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0006, 0x0006, 0x0001,
0x0001, 0x0001, 0x0006, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006,
0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0001,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001,
0x0006, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000, 0x000c, 0x000c,
0x000c, 0x000c, 0x000c, 0x000c, 0x000c, 0x000c, 0x000c, 0x000c,
0x000c, 0x000a, 0x000a, 0x000a, 0x0001, 0x0002, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000c, 0x000d,
0x0011, 0x000f, 0x0012, 0x0010, 0x000e, 0x0007, 0x0009, 0x0009,
0x0009, 0x0009, 0x0009, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0007, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000c, 0x000a,
0x000a, 0x000a, 0x000a, 0x000a, 0x0001, 0x0013, 0x0014, 0x0015,
0x0016, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x000a, 0x0004,
0x0001, 0x0001, 0x0001, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
0x0004, 0x0008, 0x0008, 0x0000, 0x0000, 0x0000, 0x0001, 0x0004,
0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
0x0004, 0x0008, 0x0008, 0x0000, 0x0000, 0x0000, 0x0001, 0x0009,
0x0009, 0x0009, 0x0009, 0x0009, 0x0009, 0x0009, 0x0009, 0x0009,
0x0009, 0x0009, 0x0009, 0x0009, 0x0009, 0x0009, 0x0009, 0x0000,
0x0000, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0000,
0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000,
0x0001, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0000, 0x0001,
0x0000, 0x0001, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0009,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000,
0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000,
0x0008, 0x0009, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
0x0004, 0x0004, 0x0004, 0x0004, 0x0001, 0x0001, 0x0001, 0x0001,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000,
0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000c, 0x0000, 0x0000,
0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006,
0x0006, 0x0006, 0x0001, 0x0001, 0x0000, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0000,
0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0000,
0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0006, 0x0006, 0x0006, 0x0000, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0000, 0x0000,
0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001,
0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0006, 0x0006, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000,
0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0009, 0x0009, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001,
0x0006, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006, 0x0001,
0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0006, 0x0006, 0x0006,
0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006, 0x0001,
0x0001, 0x0001, 0x0006, 0x0001, 0x0006, 0x0006, 0x0006, 0x0001,
0x0001, 0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0006, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006,
0x0001, 0x0001, 0x0006, 0x0001, 0x0001, 0x0001, 0x0001, 0x0006,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0002, 0x0006, 0x0002,
0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002,
0x0008, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002,
0x0001, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0001, 0x0002,
0x0001, 0x0002, 0x0002, 0x0001, 0x0002, 0x0002, 0x0001, 0x0002,
0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002, 0x0002,
0x0002, 0x0005, 0x0005, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001, 0x0001,
0x0001, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0000,
0x0000, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0000, 0x0001,
0x0001, 0x0007, 0x0000, 0x0007, 0x0001, 0x0000, 0x0007, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0009, 0x0000, 0x0000, 0x0008, 0x0008, 0x0000, 0x0000, 0x0000,
0x0001, 0x0000, 0x0009, 0x0009, 0x0000, 0x0001, 0x0001, 0x0001,
0x0001, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0001, 0x0001,
0x000a, 0x0001, 0x0000, 0x0000, 0x0009, 0x0009, 0x0009, 0x0000,
0x0000, 0x0000, 0x0000, 0x0000, 0x0008, 0x0007, 0x0008, 0x0007,
0x0007, 0x0009, 0x0009, 0x0000, 0x0000, 0x0000, 0x0009, 0x0009,
0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
0x0001
};

View File

@ -1,44 +1,44 @@
@ stub LpkPresent
@ stdcall ScriptApplyDigitSubstitution(ptr ptr ptr)
@ stdcall ScriptApplyLogicalWidth(ptr long long ptr ptr ptr ptr ptr ptr)
@ stdcall ScriptBreak(ptr long ptr ptr)
@ stdcall ScriptCPtoX(long long long long ptr ptr ptr ptr ptr)
@ stdcall ScriptCacheGetHeight(ptr ptr ptr)
@ stdcall ScriptFreeCache(ptr)
@ stdcall ScriptGetCMap(ptr ptr ptr long long ptr)
@ stdcall ScriptGetFontAlternateGlyphs(long ptr ptr long long long long long ptr ptr)
@ stdcall ScriptGetFontFeatureTags(long ptr ptr long long long ptr ptr)
@ stdcall ScriptGetFontLanguageTags(long ptr ptr long long ptr ptr)
@ stdcall ScriptGetFontProperties(long ptr ptr)
@ stdcall ScriptGetFontScriptTags(long ptr ptr long ptr ptr)
@ stdcall ScriptGetGlyphABCWidth(ptr ptr long ptr)
@ stdcall ScriptGetLogicalWidths(ptr long long ptr ptr ptr ptr)
@ stdcall ScriptGetProperties(ptr ptr)
@ stdcall ScriptIsComplex(wstr long long)
@ stdcall ScriptItemize(wstr long long ptr ptr ptr ptr)
@ stdcall ScriptItemizeOpenType(wstr long long ptr ptr ptr ptr ptr)
@ stdcall ScriptJustify(ptr ptr long long long ptr)
@ stdcall ScriptLayout(long ptr ptr ptr)
@ stdcall ScriptPlace(ptr ptr ptr long ptr ptr ptr ptr ptr)
@ stdcall ScriptPlaceOpenType(ptr ptr ptr long long ptr ptr long wstr ptr ptr long ptr ptr long ptr ptr ptr)
@ stdcall ScriptApplyDigitSubstitution(ptr ptr ptr) gdi32.ScriptApplyDigitSubstitution
@ stdcall ScriptApplyLogicalWidth(ptr long long ptr ptr ptr ptr ptr ptr) gdi32.ScriptApplyLogicalWidth
@ stdcall ScriptBreak(ptr long ptr ptr) gdi32.ScriptBreak
@ stdcall ScriptCPtoX(long long long long ptr ptr ptr ptr ptr) gdi32.ScriptCPtoX
@ stdcall ScriptCacheGetHeight(ptr ptr ptr) gdi32.ScriptCacheGetHeight
@ stdcall ScriptFreeCache(ptr) gdi32.ScriptFreeCache
@ stdcall ScriptGetCMap(ptr ptr ptr long long ptr) gdi32.ScriptGetCMap
@ stdcall ScriptGetFontAlternateGlyphs(long ptr ptr long long long long long ptr ptr) gdi32.ScriptGetFontAlternateGlyphs
@ stdcall ScriptGetFontFeatureTags(long ptr ptr long long long ptr ptr) gdi32.ScriptGetFontFeatureTags
@ stdcall ScriptGetFontLanguageTags(long ptr ptr long long ptr ptr) gdi32.ScriptGetFontLanguageTags
@ stdcall ScriptGetFontProperties(long ptr ptr) gdi32.ScriptGetFontProperties
@ stdcall ScriptGetFontScriptTags(long ptr ptr long ptr ptr) gdi32.ScriptGetFontScriptTags
@ stdcall ScriptGetGlyphABCWidth(ptr ptr long ptr) gdi32.ScriptGetGlyphABCWidth
@ stdcall ScriptGetLogicalWidths(ptr long long ptr ptr ptr ptr) gdi32.ScriptGetLogicalWidths
@ stdcall ScriptGetProperties(ptr ptr) gdi32.ScriptGetProperties
@ stdcall ScriptIsComplex(wstr long long) gdi32.ScriptIsComplex
@ stdcall ScriptItemize(wstr long long ptr ptr ptr ptr) gdi32.ScriptItemize
@ stdcall ScriptItemizeOpenType(wstr long long ptr ptr ptr ptr ptr) gdi32.ScriptItemizeOpenType
@ stdcall ScriptJustify(ptr ptr long long long ptr) gdi32.ScriptJustify
@ stdcall ScriptLayout(long ptr ptr ptr) gdi32.ScriptLayout
@ stdcall ScriptPlace(ptr ptr ptr long ptr ptr ptr ptr ptr) gdi32.ScriptPlace
@ stdcall ScriptPlaceOpenType(ptr ptr ptr long long ptr ptr long wstr ptr ptr long ptr ptr long ptr ptr ptr) gdi32.ScriptPlaceOpenType
@ stub ScriptPositionSingleGlyph
@ stdcall ScriptRecordDigitSubstitution(long ptr)
@ stdcall ScriptShape(ptr ptr ptr long long ptr ptr ptr ptr ptr)
@ stdcall ScriptShapeOpenType(ptr ptr ptr long long ptr ptr long wstr long long ptr ptr ptr ptr ptr)
@ stdcall ScriptStringAnalyse(ptr ptr long long long long long ptr ptr ptr ptr ptr ptr)
@ stdcall ScriptStringCPtoX(ptr long long ptr)
@ stdcall ScriptStringFree(ptr)
@ stdcall ScriptStringGetLogicalWidths(ptr ptr)
@ stdcall ScriptStringGetOrder(ptr ptr)
@ stdcall ScriptStringOut(ptr long long long ptr long long long)
@ stdcall ScriptStringValidate(ptr)
@ stdcall ScriptStringXtoCP(ptr long ptr ptr)
@ stdcall ScriptString_pLogAttr(ptr)
@ stdcall ScriptString_pSize(ptr)
@ stdcall ScriptString_pcOutChars(ptr)
@ stdcall ScriptRecordDigitSubstitution(long ptr) gdi32.ScriptRecordDigitSubstitution
@ stdcall ScriptShape(ptr ptr ptr long long ptr ptr ptr ptr ptr) gdi32.ScriptShape
@ stdcall ScriptShapeOpenType(ptr ptr ptr long long ptr ptr long wstr long long ptr ptr ptr ptr ptr) gdi32.ScriptShapeOpenType
@ stdcall ScriptStringAnalyse(ptr ptr long long long long long ptr ptr ptr ptr ptr ptr) gdi32.ScriptStringAnalyse
@ stdcall ScriptStringCPtoX(ptr long long ptr) gdi32.ScriptStringCPtoX
@ stdcall ScriptStringFree(ptr) gdi32.ScriptStringFree
@ stdcall ScriptStringGetLogicalWidths(ptr ptr) gdi32.ScriptStringGetLogicalWidths
@ stdcall ScriptStringGetOrder(ptr ptr) gdi32.ScriptStringGetOrder
@ stdcall ScriptStringOut(ptr long long long ptr long long long) gdi32.ScriptStringOut
@ stdcall ScriptStringValidate(ptr) gdi32.ScriptStringValidate
@ stdcall ScriptStringXtoCP(ptr long ptr ptr) gdi32.ScriptStringXtoCP
@ stdcall ScriptString_pLogAttr(ptr) gdi32.ScriptString_pLogAttr
@ stdcall ScriptString_pSize(ptr) gdi32.ScriptString_pSize
@ stdcall ScriptString_pcOutChars(ptr) gdi32.ScriptString_pcOutChars
@ stub ScriptSubstituteSingleGlyph
@ stdcall ScriptTextOut(ptr ptr long long long ptr ptr ptr long ptr long ptr ptr ptr)
@ stdcall ScriptXtoCP(long long long ptr ptr ptr ptr ptr ptr)
@ stdcall ScriptTextOut(ptr ptr long long long ptr ptr ptr long ptr long ptr ptr ptr) gdi32.ScriptTextOut
@ stdcall ScriptXtoCP(long long long ptr ptr ptr ptr ptr ptr) gdi32.ScriptXtoCP
@ stub UspAllocCache
@ stub UspAllocTemp
@ stub UspFreeMem

View File

@ -463,6 +463,7 @@ my @dll_groups =
"ext-ms-win-rtcore-gdi-devcaps-l1-1-0",
"ext-ms-win-rtcore-gdi-object-l1-1-0",
"ext-ms-win-rtcore-gdi-rgn-l1-1-0",
"usp10"
],
[
"combase",

View File

@ -2787,19 +2787,18 @@ load_data();
dump_case_mappings( "libs/port/casemap.c" );
dump_sortkeys( "dlls/kernelbase/collation.c" );
dump_ctype_tables( "libs/port/wctype.c" );
dump_bidi_dir_table( "dlls/gdi32/direction.c" );
dump_bidi_dir_table( "dlls/usp10/direction.c" );
dump_bidi_dir_table( "dlls/gdi32/uniscribe/direction.c" );
dump_bidi_dir_table( "dlls/dwrite/direction.c" );
dump_digit_folding( "dlls/kernelbase/digitmap.c" );
dump_mirroring( "dlls/usp10/mirror.c" );
dump_mirroring( "dlls/gdi32/uniscribe/mirror.c" );
dump_mirroring( "dlls/dwrite/mirror.c" );
dump_bracket( "dlls/usp10/bracket.c" );
dump_bracket( "dlls/gdi32/uniscribe/bracket.c" );
dump_bracket( "dlls/dwrite/bracket.c" );
dump_shaping( "dlls/usp10/shaping.c" );
dump_linebreak( "dlls/usp10/linebreak.c" );
dump_shaping( "dlls/gdi32/uniscribe/shaping.c" );
dump_linebreak( "dlls/gdi32/uniscribe/linebreak.c" );
dump_linebreak( "dlls/dwrite/linebreak.c" );
dump_scripts( "dlls/dwrite/scripts" );
dump_indic( "dlls/usp10/indicsyllable.c" );
dump_indic( "dlls/gdi32/uniscribe/indicsyllable.c" );
dump_vertical( "dlls/gdi32/vertical.c" );
dump_vertical( "dlls/wineps.drv/vertical.c" );
dump_intl_nls("nls/l_intl.nls");