blob: d8940144903c2d297409a82d84ca0116518c86aa [file] [log] [blame]
/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
/*
*******************************************************************************
* Copyright (C) 2003, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
package sun.font;
public final class ScriptRunData {
private ScriptRunData() {}
private static final int CHAR_START = 0;
private static final int CHAR_LIMIT = 0x110000;
private static int cache = 0;
public static final int getScript(int cp) {
// optimize for runs of characters in the same script
if (cp >= data[cache] && cp < data[cache+2]) {
return data[cache+1];
}
if (cp >= CHAR_START & cp < CHAR_LIMIT) {
int probe = dataPower;
int index = 0;
if (cp >= data[dataExtra]) {
index = dataExtra;
}
while (probe > 2) {
probe >>= 1;
if (cp >= data[index + probe]) {
index += probe;
}
}
cache = index;
return data[index+1];
}
throw new IllegalArgumentException(Integer.toString(cp));
}
private static final int[] data = {
0x000000, 0x00,
0x000041, 0x19, // 'latn' latin
0x00005B, 0x00,
0x000061, 0x19, // 'latn' latin
0x00007B, 0x00,
0x0000AA, 0x19, // 'latn' latin
0x0000AB, 0x00,
0x0000B5, 0x0E, // 'grek' greek
0x0000B6, 0x00,
0x0000BA, 0x19, // 'latn' latin
0x0000BB, 0x00,
0x0000C0, 0x19, // 'latn' latin
0x0000D7, 0x00,
0x0000D8, 0x19, // 'latn' latin
0x0000F7, 0x00,
0x0000F8, 0x19, // 'latn' latin
0x000221, 0x00,
0x000222, 0x19, // 'latn' latin
0x000234, 0x00,
0x000250, 0x19, // 'latn' latin
0x0002AE, 0x00,
0x0002B0, 0x19, // 'latn' latin
0x0002B9, 0x00,
0x0002E0, 0x19, // 'latn' latin
0x0002E5, 0x00,
0x000300, 0x01, // 'qaai' inherited
0x000350, 0x00,
0x000360, 0x01, // 'qaai' inherited
0x000370, 0x00,
0x00037A, 0x0E, // 'grek' greek
0x00037B, 0x00,
0x000386, 0x0E, // 'grek' greek
0x000387, 0x00,
0x000388, 0x0E, // 'grek' greek
0x00038B, 0x00,
0x00038C, 0x0E, // 'grek' greek
0x00038D, 0x00,
0x00038E, 0x0E, // 'grek' greek
0x0003A2, 0x00,
0x0003A3, 0x0E, // 'grek' greek
0x0003CF, 0x00,
0x0003D0, 0x0E, // 'grek' greek
0x0003F6, 0x00,
0x000400, 0x08, // 'cyrl' cyrillic
0x000482, 0x00,
0x000483, 0x08, // 'cyrl' cyrillic
0x000487, 0x00,
0x000488, 0x01, // 'qaai' inherited
0x00048A, 0x08, // 'cyrl' cyrillic
0x0004CF, 0x00,
0x0004D0, 0x08, // 'cyrl' cyrillic
0x0004F6, 0x00,
0x0004F8, 0x08, // 'cyrl' cyrillic
0x0004FA, 0x00,
0x000500, 0x08, // 'cyrl' cyrillic
0x000510, 0x00,
0x000531, 0x03, // 'armn' armenian
0x000557, 0x00,
0x000559, 0x03, // 'armn' armenian
0x00055A, 0x00,
0x000561, 0x03, // 'armn' armenian
0x000588, 0x00,
0x000591, 0x01, // 'qaai' inherited
0x0005A2, 0x00,
0x0005A3, 0x01, // 'qaai' inherited
0x0005BA, 0x00,
0x0005BB, 0x01, // 'qaai' inherited
0x0005BE, 0x00,
0x0005BF, 0x01, // 'qaai' inherited
0x0005C0, 0x00,
0x0005C1, 0x01, // 'qaai' inherited
0x0005C3, 0x00,
0x0005C4, 0x01, // 'qaai' inherited
0x0005C5, 0x00,
0x0005D0, 0x13, // 'hebr' hebrew
0x0005EB, 0x00,
0x0005F0, 0x13, // 'hebr' hebrew
0x0005F3, 0x00,
0x000621, 0x02, // 'arab' arabic
0x00063B, 0x00,
0x000641, 0x02, // 'arab' arabic
0x00064B, 0x01, // 'qaai' inherited
0x000656, 0x00,
0x00066E, 0x02, // 'arab' arabic
0x000670, 0x01, // 'qaai' inherited
0x000671, 0x02, // 'arab' arabic
0x0006D4, 0x00,
0x0006D5, 0x02, // 'arab' arabic
0x0006D6, 0x01, // 'qaai' inherited
0x0006E5, 0x02, // 'arab' arabic
0x0006E7, 0x01, // 'qaai' inherited
0x0006E9, 0x00,
0x0006EA, 0x01, // 'qaai' inherited
0x0006EE, 0x00,
0x0006FA, 0x02, // 'arab' arabic
0x0006FD, 0x00,
0x000710, 0x22, // 'syrc' syriac
0x00072D, 0x00,
0x000730, 0x22, // 'syrc' syriac
0x00074B, 0x00,
0x000780, 0x25, // 'thaa' thaana
0x0007B2, 0x00,
0x000901, 0x0A, // 'deva' devanagari
0x000904, 0x00,
0x000905, 0x0A, // 'deva' devanagari
0x00093A, 0x00,
0x00093C, 0x0A, // 'deva' devanagari
0x00094E, 0x00,
0x000950, 0x0A, // 'deva' devanagari
0x000955, 0x00,
0x000958, 0x0A, // 'deva' devanagari
0x000964, 0x00,
0x000966, 0x0A, // 'deva' devanagari
0x000970, 0x00,
0x000981, 0x04, // 'beng' bengali
0x000984, 0x00,
0x000985, 0x04, // 'beng' bengali
0x00098D, 0x00,
0x00098F, 0x04, // 'beng' bengali
0x000991, 0x00,
0x000993, 0x04, // 'beng' bengali
0x0009A9, 0x00,
0x0009AA, 0x04, // 'beng' bengali
0x0009B1, 0x00,
0x0009B2, 0x04, // 'beng' bengali
0x0009B3, 0x00,
0x0009B6, 0x04, // 'beng' bengali
0x0009BA, 0x00,
0x0009BC, 0x04, // 'beng' bengali
0x0009BD, 0x00,
0x0009BE, 0x04, // 'beng' bengali
0x0009C5, 0x00,
0x0009C7, 0x04, // 'beng' bengali
0x0009C9, 0x00,
0x0009CB, 0x04, // 'beng' bengali
0x0009CE, 0x00,
0x0009D7, 0x04, // 'beng' bengali
0x0009D8, 0x00,
0x0009DC, 0x04, // 'beng' bengali
0x0009DE, 0x00,
0x0009DF, 0x04, // 'beng' bengali
0x0009E4, 0x00,
0x0009E6, 0x04, // 'beng' bengali
0x0009F2, 0x00,
0x000A02, 0x10, // 'guru' gurmukhi
0x000A03, 0x00,
0x000A05, 0x10, // 'guru' gurmukhi
0x000A0B, 0x00,
0x000A0F, 0x10, // 'guru' gurmukhi
0x000A11, 0x00,
0x000A13, 0x10, // 'guru' gurmukhi
0x000A29, 0x00,
0x000A2A, 0x10, // 'guru' gurmukhi
0x000A31, 0x00,
0x000A32, 0x10, // 'guru' gurmukhi
0x000A34, 0x00,
0x000A35, 0x10, // 'guru' gurmukhi
0x000A37, 0x00,
0x000A38, 0x10, // 'guru' gurmukhi
0x000A3A, 0x00,
0x000A3C, 0x10, // 'guru' gurmukhi
0x000A3D, 0x00,
0x000A3E, 0x10, // 'guru' gurmukhi
0x000A43, 0x00,
0x000A47, 0x10, // 'guru' gurmukhi
0x000A49, 0x00,
0x000A4B, 0x10, // 'guru' gurmukhi
0x000A4E, 0x00,
0x000A59, 0x10, // 'guru' gurmukhi
0x000A5D, 0x00,
0x000A5E, 0x10, // 'guru' gurmukhi
0x000A5F, 0x00,
0x000A66, 0x10, // 'guru' gurmukhi
0x000A75, 0x00,
0x000A81, 0x0F, // 'gujr' gujarati
0x000A84, 0x00,
0x000A85, 0x0F, // 'gujr' gujarati
0x000A8C, 0x00,
0x000A8D, 0x0F, // 'gujr' gujarati
0x000A8E, 0x00,
0x000A8F, 0x0F, // 'gujr' gujarati
0x000A92, 0x00,
0x000A93, 0x0F, // 'gujr' gujarati
0x000AA9, 0x00,
0x000AAA, 0x0F, // 'gujr' gujarati
0x000AB1, 0x00,
0x000AB2, 0x0F, // 'gujr' gujarati
0x000AB4, 0x00,
0x000AB5, 0x0F, // 'gujr' gujarati
0x000ABA, 0x00,
0x000ABC, 0x0F, // 'gujr' gujarati
0x000AC6, 0x00,
0x000AC7, 0x0F, // 'gujr' gujarati
0x000ACA, 0x00,
0x000ACB, 0x0F, // 'gujr' gujarati
0x000ACE, 0x00,
0x000AD0, 0x0F, // 'gujr' gujarati
0x000AD1, 0x00,
0x000AE0, 0x0F, // 'gujr' gujarati
0x000AE1, 0x00,
0x000AE6, 0x0F, // 'gujr' gujarati
0x000AF0, 0x00,
0x000B01, 0x1F, // 'orya' oriya
0x000B04, 0x00,
0x000B05, 0x1F, // 'orya' oriya
0x000B0D, 0x00,
0x000B0F, 0x1F, // 'orya' oriya
0x000B11, 0x00,
0x000B13, 0x1F, // 'orya' oriya
0x000B29, 0x00,
0x000B2A, 0x1F, // 'orya' oriya
0x000B31, 0x00,
0x000B32, 0x1F, // 'orya' oriya
0x000B34, 0x00,
0x000B36, 0x1F, // 'orya' oriya
0x000B3A, 0x00,
0x000B3C, 0x1F, // 'orya' oriya
0x000B44, 0x00,
0x000B47, 0x1F, // 'orya' oriya
0x000B49, 0x00,
0x000B4B, 0x1F, // 'orya' oriya
0x000B4E, 0x00,
0x000B56, 0x1F, // 'orya' oriya
0x000B58, 0x00,
0x000B5C, 0x1F, // 'orya' oriya
0x000B5E, 0x00,
0x000B5F, 0x1F, // 'orya' oriya
0x000B62, 0x00,
0x000B66, 0x1F, // 'orya' oriya
0x000B70, 0x00,
0x000B82, 0x23, // 'taml' tamil
0x000B84, 0x00,
0x000B85, 0x23, // 'taml' tamil
0x000B8B, 0x00,
0x000B8E, 0x23, // 'taml' tamil
0x000B91, 0x00,
0x000B92, 0x23, // 'taml' tamil
0x000B96, 0x00,
0x000B99, 0x23, // 'taml' tamil
0x000B9B, 0x00,
0x000B9C, 0x23, // 'taml' tamil
0x000B9D, 0x00,
0x000B9E, 0x23, // 'taml' tamil
0x000BA0, 0x00,
0x000BA3, 0x23, // 'taml' tamil
0x000BA5, 0x00,
0x000BA8, 0x23, // 'taml' tamil
0x000BAB, 0x00,
0x000BAE, 0x23, // 'taml' tamil
0x000BB6, 0x00,
0x000BB7, 0x23, // 'taml' tamil
0x000BBA, 0x00,
0x000BBE, 0x23, // 'taml' tamil
0x000BC3, 0x00,
0x000BC6, 0x23, // 'taml' tamil
0x000BC9, 0x00,
0x000BCA, 0x23, // 'taml' tamil
0x000BCE, 0x00,
0x000BD7, 0x23, // 'taml' tamil
0x000BD8, 0x00,
0x000BE7, 0x23, // 'taml' tamil
0x000BF3, 0x00,
0x000C01, 0x24, // 'telu' telugu
0x000C04, 0x00,
0x000C05, 0x24, // 'telu' telugu
0x000C0D, 0x00,
0x000C0E, 0x24, // 'telu' telugu
0x000C11, 0x00,
0x000C12, 0x24, // 'telu' telugu
0x000C29, 0x00,
0x000C2A, 0x24, // 'telu' telugu
0x000C34, 0x00,
0x000C35, 0x24, // 'telu' telugu
0x000C3A, 0x00,
0x000C3E, 0x24, // 'telu' telugu
0x000C45, 0x00,
0x000C46, 0x24, // 'telu' telugu
0x000C49, 0x00,
0x000C4A, 0x24, // 'telu' telugu
0x000C4E, 0x00,
0x000C55, 0x24, // 'telu' telugu
0x000C57, 0x00,
0x000C60, 0x24, // 'telu' telugu
0x000C62, 0x00,
0x000C66, 0x24, // 'telu' telugu
0x000C70, 0x00,
0x000C82, 0x15, // 'knda' kannada
0x000C84, 0x00,
0x000C85, 0x15, // 'knda' kannada
0x000C8D, 0x00,
0x000C8E, 0x15, // 'knda' kannada
0x000C91, 0x00,
0x000C92, 0x15, // 'knda' kannada
0x000CA9, 0x00,
0x000CAA, 0x15, // 'knda' kannada
0x000CB4, 0x00,
0x000CB5, 0x15, // 'knda' kannada
0x000CBA, 0x00,
0x000CBE, 0x15, // 'knda' kannada
0x000CC5, 0x00,
0x000CC6, 0x15, // 'knda' kannada
0x000CC9, 0x00,
0x000CCA, 0x15, // 'knda' kannada
0x000CCE, 0x00,
0x000CD5, 0x15, // 'knda' kannada
0x000CD7, 0x00,
0x000CDE, 0x15, // 'knda' kannada
0x000CDF, 0x00,
0x000CE0, 0x15, // 'knda' kannada
0x000CE2, 0x00,
0x000CE6, 0x15, // 'knda' kannada
0x000CF0, 0x00,
0x000D02, 0x1A, // 'mlym' malayalam
0x000D04, 0x00,
0x000D05, 0x1A, // 'mlym' malayalam
0x000D0D, 0x00,
0x000D0E, 0x1A, // 'mlym' malayalam
0x000D11, 0x00,
0x000D12, 0x1A, // 'mlym' malayalam
0x000D29, 0x00,
0x000D2A, 0x1A, // 'mlym' malayalam
0x000D3A, 0x00,
0x000D3E, 0x1A, // 'mlym' malayalam
0x000D44, 0x00,
0x000D46, 0x1A, // 'mlym' malayalam
0x000D49, 0x00,
0x000D4A, 0x1A, // 'mlym' malayalam
0x000D4E, 0x00,
0x000D57, 0x1A, // 'mlym' malayalam
0x000D58, 0x00,
0x000D60, 0x1A, // 'mlym' malayalam
0x000D62, 0x00,
0x000D66, 0x1A, // 'mlym' malayalam
0x000D70, 0x00,
0x000D82, 0x21, // 'sinh' sinhala
0x000D84, 0x00,
0x000D85, 0x21, // 'sinh' sinhala
0x000D97, 0x00,
0x000D9A, 0x21, // 'sinh' sinhala
0x000DB2, 0x00,
0x000DB3, 0x21, // 'sinh' sinhala
0x000DBC, 0x00,
0x000DBD, 0x21, // 'sinh' sinhala
0x000DBE, 0x00,
0x000DC0, 0x21, // 'sinh' sinhala
0x000DC7, 0x00,
0x000DCA, 0x21, // 'sinh' sinhala
0x000DCB, 0x00,
0x000DCF, 0x21, // 'sinh' sinhala
0x000DD5, 0x00,
0x000DD6, 0x21, // 'sinh' sinhala
0x000DD7, 0x00,
0x000DD8, 0x21, // 'sinh' sinhala
0x000DE0, 0x00,
0x000DF2, 0x21, // 'sinh' sinhala
0x000DF4, 0x00,
0x000E01, 0x26, // 'thai' thai
0x000E3B, 0x00,
0x000E40, 0x26, // 'thai' thai
0x000E4F, 0x00,
0x000E50, 0x26, // 'thai' thai
0x000E5A, 0x00,
0x000E81, 0x18, // 'laoo' lao
0x000E83, 0x00,
0x000E84, 0x18, // 'laoo' lao
0x000E85, 0x00,
0x000E87, 0x18, // 'laoo' lao
0x000E89, 0x00,
0x000E8A, 0x18, // 'laoo' lao
0x000E8B, 0x00,
0x000E8D, 0x18, // 'laoo' lao
0x000E8E, 0x00,
0x000E94, 0x18, // 'laoo' lao
0x000E98, 0x00,
0x000E99, 0x18, // 'laoo' lao
0x000EA0, 0x00,
0x000EA1, 0x18, // 'laoo' lao
0x000EA4, 0x00,
0x000EA5, 0x18, // 'laoo' lao
0x000EA6, 0x00,
0x000EA7, 0x18, // 'laoo' lao
0x000EA8, 0x00,
0x000EAA, 0x18, // 'laoo' lao
0x000EAC, 0x00,
0x000EAD, 0x18, // 'laoo' lao
0x000EBA, 0x00,
0x000EBB, 0x18, // 'laoo' lao
0x000EBE, 0x00,
0x000EC0, 0x18, // 'laoo' lao
0x000EC5, 0x00,
0x000EC6, 0x18, // 'laoo' lao
0x000EC7, 0x00,
0x000EC8, 0x18, // 'laoo' lao
0x000ECE, 0x00,
0x000ED0, 0x18, // 'laoo' lao
0x000EDA, 0x00,
0x000EDC, 0x18, // 'laoo' lao
0x000EDE, 0x00,
0x000F00, 0x27, // 'tibt' tibetan
0x000F01, 0x00,
0x000F18, 0x27, // 'tibt' tibetan
0x000F1A, 0x00,
0x000F20, 0x27, // 'tibt' tibetan
0x000F34, 0x00,
0x000F35, 0x27, // 'tibt' tibetan
0x000F36, 0x00,
0x000F37, 0x27, // 'tibt' tibetan
0x000F38, 0x00,
0x000F39, 0x27, // 'tibt' tibetan
0x000F3A, 0x00,
0x000F40, 0x27, // 'tibt' tibetan
0x000F48, 0x00,
0x000F49, 0x27, // 'tibt' tibetan
0x000F6B, 0x00,
0x000F71, 0x27, // 'tibt' tibetan
0x000F85, 0x00,
0x000F86, 0x27, // 'tibt' tibetan
0x000F8C, 0x00,
0x000F90, 0x27, // 'tibt' tibetan
0x000F98, 0x00,
0x000F99, 0x27, // 'tibt' tibetan
0x000FBD, 0x00,
0x000FC6, 0x27, // 'tibt' tibetan
0x000FC7, 0x00,
0x001000, 0x1C, // 'mymr' myanmar
0x001022, 0x00,
0x001023, 0x1C, // 'mymr' myanmar
0x001028, 0x00,
0x001029, 0x1C, // 'mymr' myanmar
0x00102B, 0x00,
0x00102C, 0x1C, // 'mymr' myanmar
0x001033, 0x00,
0x001036, 0x1C, // 'mymr' myanmar
0x00103A, 0x00,
0x001040, 0x1C, // 'mymr' myanmar
0x00104A, 0x00,
0x001050, 0x1C, // 'mymr' myanmar
0x00105A, 0x00,
0x0010A0, 0x0C, // 'geor' georgian
0x0010C6, 0x00,
0x0010D0, 0x0C, // 'geor' georgian
0x0010F9, 0x00,
0x001100, 0x12, // 'hang' hangul
0x00115A, 0x00,
0x00115F, 0x12, // 'hang' hangul
0x0011A3, 0x00,
0x0011A8, 0x12, // 'hang' hangul
0x0011FA, 0x00,
0x001200, 0x0B, // 'ethi' ethiopic
0x001207, 0x00,
0x001208, 0x0B, // 'ethi' ethiopic
0x001247, 0x00,
0x001248, 0x0B, // 'ethi' ethiopic
0x001249, 0x00,
0x00124A, 0x0B, // 'ethi' ethiopic
0x00124E, 0x00,
0x001250, 0x0B, // 'ethi' ethiopic
0x001257, 0x00,
0x001258, 0x0B, // 'ethi' ethiopic
0x001259, 0x00,
0x00125A, 0x0B, // 'ethi' ethiopic
0x00125E, 0x00,
0x001260, 0x0B, // 'ethi' ethiopic
0x001287, 0x00,
0x001288, 0x0B, // 'ethi' ethiopic
0x001289, 0x00,
0x00128A, 0x0B, // 'ethi' ethiopic
0x00128E, 0x00,
0x001290, 0x0B, // 'ethi' ethiopic
0x0012AF, 0x00,
0x0012B0, 0x0B, // 'ethi' ethiopic
0x0012B1, 0x00,
0x0012B2, 0x0B, // 'ethi' ethiopic
0x0012B6, 0x00,
0x0012B8, 0x0B, // 'ethi' ethiopic
0x0012BF, 0x00,
0x0012C0, 0x0B, // 'ethi' ethiopic
0x0012C1, 0x00,
0x0012C2, 0x0B, // 'ethi' ethiopic
0x0012C6, 0x00,
0x0012C8, 0x0B, // 'ethi' ethiopic
0x0012CF, 0x00,
0x0012D0, 0x0B, // 'ethi' ethiopic
0x0012D7, 0x00,
0x0012D8, 0x0B, // 'ethi' ethiopic
0x0012EF, 0x00,
0x0012F0, 0x0B, // 'ethi' ethiopic
0x00130F, 0x00,
0x001310, 0x0B, // 'ethi' ethiopic
0x001311, 0x00,
0x001312, 0x0B, // 'ethi' ethiopic
0x001316, 0x00,
0x001318, 0x0B, // 'ethi' ethiopic
0x00131F, 0x00,
0x001320, 0x0B, // 'ethi' ethiopic
0x001347, 0x00,
0x001348, 0x0B, // 'ethi' ethiopic
0x00135B, 0x00,
0x001369, 0x0B, // 'ethi' ethiopic
0x00137D, 0x00,
0x0013A0, 0x06, // 'cher' cherokee
0x0013F5, 0x00,
0x001401, 0x28, // 'cans' canadian_aboriginal
0x00166D, 0x00,
0x00166F, 0x28, // 'cans' canadian_aboriginal
0x001677, 0x00,
0x001681, 0x1D, // 'ogam' ogham
0x00169B, 0x00,
0x0016A0, 0x20, // 'runr' runic
0x0016EB, 0x00,
0x0016EE, 0x20, // 'runr' runic
0x0016F1, 0x00,
0x001700, 0x2A, // 'tglg' tagalog
0x00170D, 0x00,
0x00170E, 0x2A, // 'tglg' tagalog
0x001715, 0x00,
0x001720, 0x2B, // 'hano' hanunoo
0x001735, 0x00,
0x001740, 0x2C, // 'buhd' buhid
0x001754, 0x00,
0x001760, 0x2D, // 'tagb' tagbanwa
0x00176D, 0x00,
0x00176E, 0x2D, // 'tagb' tagbanwa
0x001771, 0x00,
0x001772, 0x2D, // 'tagb' tagbanwa
0x001774, 0x00,
0x001780, 0x17, // 'khmr' khmer
0x0017D4, 0x00,
0x0017E0, 0x17, // 'khmr' khmer
0x0017EA, 0x00,
0x00180B, 0x01, // 'qaai' inherited
0x00180E, 0x00,
0x001810, 0x1B, // 'mong' mongolian
0x00181A, 0x00,
0x001820, 0x1B, // 'mong' mongolian
0x001878, 0x00,
0x001880, 0x1B, // 'mong' mongolian
0x0018AA, 0x00,
0x001E00, 0x19, // 'latn' latin
0x001E9C, 0x00,
0x001EA0, 0x19, // 'latn' latin
0x001EFA, 0x00,
0x001F00, 0x0E, // 'grek' greek
0x001F16, 0x00,
0x001F18, 0x0E, // 'grek' greek
0x001F1E, 0x00,
0x001F20, 0x0E, // 'grek' greek
0x001F46, 0x00,
0x001F48, 0x0E, // 'grek' greek
0x001F4E, 0x00,
0x001F50, 0x0E, // 'grek' greek
0x001F58, 0x00,
0x001F59, 0x0E, // 'grek' greek
0x001F5A, 0x00,
0x001F5B, 0x0E, // 'grek' greek
0x001F5C, 0x00,
0x001F5D, 0x0E, // 'grek' greek
0x001F5E, 0x00,
0x001F5F, 0x0E, // 'grek' greek
0x001F7E, 0x00,
0x001F80, 0x0E, // 'grek' greek
0x001FB5, 0x00,
0x001FB6, 0x0E, // 'grek' greek
0x001FBD, 0x00,
0x001FBE, 0x0E, // 'grek' greek
0x001FBF, 0x00,
0x001FC2, 0x0E, // 'grek' greek
0x001FC5, 0x00,
0x001FC6, 0x0E, // 'grek' greek
0x001FCD, 0x00,
0x001FD0, 0x0E, // 'grek' greek
0x001FD4, 0x00,
0x001FD6, 0x0E, // 'grek' greek
0x001FDC, 0x00,
0x001FE0, 0x0E, // 'grek' greek
0x001FED, 0x00,
0x001FF2, 0x0E, // 'grek' greek
0x001FF5, 0x00,
0x001FF6, 0x0E, // 'grek' greek
0x001FFD, 0x00,
0x002071, 0x19, // 'latn' latin
0x002072, 0x00,
0x00207F, 0x19, // 'latn' latin
0x002080, 0x00,
0x0020D0, 0x01, // 'qaai' inherited
0x0020EB, 0x00,
0x002126, 0x0E, // 'grek' greek
0x002127, 0x00,
0x00212A, 0x19, // 'latn' latin
0x00212C, 0x00,
0x002E80, 0x11, // 'hani' han
0x002E9A, 0x00,
0x002E9B, 0x11, // 'hani' han
0x002EF4, 0x00,
0x002F00, 0x11, // 'hani' han
0x002FD6, 0x00,
0x003005, 0x11, // 'hani' han
0x003006, 0x00,
0x003007, 0x11, // 'hani' han
0x003008, 0x00,
0x003021, 0x11, // 'hani' han
0x00302A, 0x01, // 'qaai' inherited
0x003030, 0x00,
0x003038, 0x11, // 'hani' han
0x00303C, 0x00,
0x003041, 0x14, // 'hira' hiragana
0x003097, 0x00,
0x003099, 0x01, // 'qaai' inherited
0x00309B, 0x00,
0x00309D, 0x14, // 'hira' hiragana
0x0030A0, 0x00,
0x0030A1, 0x16, // 'kana' katakana
0x0030FB, 0x00,
0x0030FD, 0x16, // 'kana' katakana
0x003100, 0x00,
0x003105, 0x05, // 'bopo' bopomofo
0x00312D, 0x00,
0x003131, 0x12, // 'hang' hangul
0x00318F, 0x00,
0x0031A0, 0x05, // 'bopo' bopomofo
0x0031B8, 0x00,
0x0031F0, 0x16, // 'kana' katakana
0x003200, 0x00,
0x003400, 0x11, // 'hani' han
0x004DB6, 0x00,
0x004E00, 0x11, // 'hani' han
0x009FA6, 0x00,
0x00A000, 0x29, // 'yiii' yi
0x00A48D, 0x00,
0x00A490, 0x29, // 'yiii' yi
0x00A4A2, 0x00,
0x00A4A4, 0x29, // 'yiii' yi
0x00A4B4, 0x00,
0x00A4B5, 0x29, // 'yiii' yi
0x00A4C1, 0x00,
0x00A4C2, 0x29, // 'yiii' yi
0x00A4C5, 0x00,
0x00A4C6, 0x29, // 'yiii' yi
0x00A4C7, 0x00,
0x00AC00, 0x12, // 'hang' hangul
0x00D7A4, 0x00,
0x00F900, 0x11, // 'hani' han
0x00FA2E, 0x00,
0x00FA30, 0x11, // 'hani' han
0x00FA6B, 0x00,
0x00FB00, 0x19, // 'latn' latin
0x00FB07, 0x00,
0x00FB13, 0x03, // 'armn' armenian
0x00FB18, 0x00,
0x00FB1D, 0x13, // 'hebr' hebrew
0x00FB1E, 0x01, // 'qaai' inherited
0x00FB1F, 0x13, // 'hebr' hebrew
0x00FB29, 0x00,
0x00FB2A, 0x13, // 'hebr' hebrew
0x00FB37, 0x00,
0x00FB38, 0x13, // 'hebr' hebrew
0x00FB3D, 0x00,
0x00FB3E, 0x13, // 'hebr' hebrew
0x00FB3F, 0x00,
0x00FB40, 0x13, // 'hebr' hebrew
0x00FB42, 0x00,
0x00FB43, 0x13, // 'hebr' hebrew
0x00FB45, 0x00,
0x00FB46, 0x13, // 'hebr' hebrew
0x00FB50, 0x02, // 'arab' arabic
0x00FBB2, 0x00,
0x00FBD3, 0x02, // 'arab' arabic
0x00FD3E, 0x00,
0x00FD50, 0x02, // 'arab' arabic
0x00FD90, 0x00,
0x00FD92, 0x02, // 'arab' arabic
0x00FDC8, 0x00,
0x00FDF0, 0x02, // 'arab' arabic
0x00FDFC, 0x00,
0x00FE00, 0x01, // 'qaai' inherited
0x00FE10, 0x00,
0x00FE20, 0x01, // 'qaai' inherited
0x00FE24, 0x00,
0x00FE70, 0x02, // 'arab' arabic
0x00FE75, 0x00,
0x00FE76, 0x02, // 'arab' arabic
0x00FEFD, 0x00,
0x00FF21, 0x19, // 'latn' latin
0x00FF3B, 0x00,
0x00FF41, 0x19, // 'latn' latin
0x00FF5B, 0x00,
0x00FF66, 0x16, // 'kana' katakana
0x00FF70, 0x00,
0x00FF71, 0x16, // 'kana' katakana
0x00FF9E, 0x00,
0x00FFA0, 0x12, // 'hang' hangul
0x00FFBF, 0x00,
0x00FFC2, 0x12, // 'hang' hangul
0x00FFC8, 0x00,
0x00FFCA, 0x12, // 'hang' hangul
0x00FFD0, 0x00,
0x00FFD2, 0x12, // 'hang' hangul
0x00FFD8, 0x00,
0x00FFDA, 0x12, // 'hang' hangul
0x00FFDD, 0x00,
0x010300, 0x1E, // 'ital' old_italic
0x01031F, 0x00,
0x010330, 0x0D, // 'goth' gothic
0x01034B, 0x00,
0x010400, 0x09, // 'dsrt' deseret
0x010426, 0x00,
0x010428, 0x09, // 'dsrt' deseret
0x01044E, 0x00,
0x01D167, 0x01, // 'qaai' inherited
0x01D16A, 0x00,
0x01D17B, 0x01, // 'qaai' inherited
0x01D183, 0x00,
0x01D185, 0x01, // 'qaai' inherited
0x01D18C, 0x00,
0x01D1AA, 0x01, // 'qaai' inherited
0x01D1AE, 0x00,
0x020000, 0x11, // 'hani' han
0x02A6D7, 0x00,
0x02F800, 0x11, // 'hani' han
0x02FA1E, 0x00,
0x110000, -1, // (NO NAME)
};
private static final int dataPower = 1 << 10;
private static final int dataExtra = data.length - dataPower;
}