ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

xmlunicode.c
Go to the documentation of this file.
00001 /*
00002  * xmlunicode.c: this module implements the Unicode character APIs
00003  *
00004  * This file is automatically generated from the
00005  * UCS description files of the Unicode Character Database
00006  * http://www.unicode.org/Public/4.0-Update1/UCD-4.0.1.html
00007  * using the genUnicode.py Python script.
00008  *
00009  * Generation date: Mon Mar 27 11:09:52 2006
00010  * Sources: Blocks-4.0.1.txt UnicodeData-4.0.1.txt
00011  * Daniel Veillard <veillard@redhat.com>
00012  */
00013 
00014 #define IN_LIBXML
00015 #include "libxml.h"
00016 
00017 #ifdef LIBXML_UNICODE_ENABLED
00018 
00019 #include <string.h>
00020 #include <libxml/xmlversion.h>
00021 #include <libxml/xmlunicode.h>
00022 #include <libxml/chvalid.h>
00023 
00024 typedef int (xmlIntFunc)(int);  /* just to keep one's mind untwisted */
00025 
00026 typedef struct {
00027     const char *rangename;
00028     xmlIntFunc *func;
00029 } xmlUnicodeRange;
00030 
00031 typedef struct {
00032     xmlUnicodeRange *table;
00033     int         numentries;
00034 } xmlUnicodeNameTable;
00035 
00036 
00037 static xmlIntFunc *xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname);
00038 
00039 static xmlUnicodeRange xmlUnicodeBlocks[] = {
00040   {"AegeanNumbers", xmlUCSIsAegeanNumbers},
00041   {"AlphabeticPresentationForms", xmlUCSIsAlphabeticPresentationForms},
00042   {"Arabic", xmlUCSIsArabic},
00043   {"ArabicPresentationForms-A", xmlUCSIsArabicPresentationFormsA},
00044   {"ArabicPresentationForms-B", xmlUCSIsArabicPresentationFormsB},
00045   {"Armenian", xmlUCSIsArmenian},
00046   {"Arrows", xmlUCSIsArrows},
00047   {"BasicLatin", xmlUCSIsBasicLatin},
00048   {"Bengali", xmlUCSIsBengali},
00049   {"BlockElements", xmlUCSIsBlockElements},
00050   {"Bopomofo", xmlUCSIsBopomofo},
00051   {"BopomofoExtended", xmlUCSIsBopomofoExtended},
00052   {"BoxDrawing", xmlUCSIsBoxDrawing},
00053   {"BraillePatterns", xmlUCSIsBraillePatterns},
00054   {"Buhid", xmlUCSIsBuhid},
00055   {"ByzantineMusicalSymbols", xmlUCSIsByzantineMusicalSymbols},
00056   {"CJKCompatibility", xmlUCSIsCJKCompatibility},
00057   {"CJKCompatibilityForms", xmlUCSIsCJKCompatibilityForms},
00058   {"CJKCompatibilityIdeographs", xmlUCSIsCJKCompatibilityIdeographs},
00059   {"CJKCompatibilityIdeographsSupplement", xmlUCSIsCJKCompatibilityIdeographsSupplement},
00060   {"CJKRadicalsSupplement", xmlUCSIsCJKRadicalsSupplement},
00061   {"CJKSymbolsandPunctuation", xmlUCSIsCJKSymbolsandPunctuation},
00062   {"CJKUnifiedIdeographs", xmlUCSIsCJKUnifiedIdeographs},
00063   {"CJKUnifiedIdeographsExtensionA", xmlUCSIsCJKUnifiedIdeographsExtensionA},
00064   {"CJKUnifiedIdeographsExtensionB", xmlUCSIsCJKUnifiedIdeographsExtensionB},
00065   {"Cherokee", xmlUCSIsCherokee},
00066   {"CombiningDiacriticalMarks", xmlUCSIsCombiningDiacriticalMarks},
00067   {"CombiningDiacriticalMarksforSymbols", xmlUCSIsCombiningDiacriticalMarksforSymbols},
00068   {"CombiningHalfMarks", xmlUCSIsCombiningHalfMarks},
00069   {"CombiningMarksforSymbols", xmlUCSIsCombiningMarksforSymbols},
00070   {"ControlPictures", xmlUCSIsControlPictures},
00071   {"CurrencySymbols", xmlUCSIsCurrencySymbols},
00072   {"CypriotSyllabary", xmlUCSIsCypriotSyllabary},
00073   {"Cyrillic", xmlUCSIsCyrillic},
00074   {"CyrillicSupplement", xmlUCSIsCyrillicSupplement},
00075   {"Deseret", xmlUCSIsDeseret},
00076   {"Devanagari", xmlUCSIsDevanagari},
00077   {"Dingbats", xmlUCSIsDingbats},
00078   {"EnclosedAlphanumerics", xmlUCSIsEnclosedAlphanumerics},
00079   {"EnclosedCJKLettersandMonths", xmlUCSIsEnclosedCJKLettersandMonths},
00080   {"Ethiopic", xmlUCSIsEthiopic},
00081   {"GeneralPunctuation", xmlUCSIsGeneralPunctuation},
00082   {"GeometricShapes", xmlUCSIsGeometricShapes},
00083   {"Georgian", xmlUCSIsGeorgian},
00084   {"Gothic", xmlUCSIsGothic},
00085   {"Greek", xmlUCSIsGreek},
00086   {"GreekExtended", xmlUCSIsGreekExtended},
00087   {"GreekandCoptic", xmlUCSIsGreekandCoptic},
00088   {"Gujarati", xmlUCSIsGujarati},
00089   {"Gurmukhi", xmlUCSIsGurmukhi},
00090   {"HalfwidthandFullwidthForms", xmlUCSIsHalfwidthandFullwidthForms},
00091   {"HangulCompatibilityJamo", xmlUCSIsHangulCompatibilityJamo},
00092   {"HangulJamo", xmlUCSIsHangulJamo},
00093   {"HangulSyllables", xmlUCSIsHangulSyllables},
00094   {"Hanunoo", xmlUCSIsHanunoo},
00095   {"Hebrew", xmlUCSIsHebrew},
00096   {"HighPrivateUseSurrogates", xmlUCSIsHighPrivateUseSurrogates},
00097   {"HighSurrogates", xmlUCSIsHighSurrogates},
00098   {"Hiragana", xmlUCSIsHiragana},
00099   {"IPAExtensions", xmlUCSIsIPAExtensions},
00100   {"IdeographicDescriptionCharacters", xmlUCSIsIdeographicDescriptionCharacters},
00101   {"Kanbun", xmlUCSIsKanbun},
00102   {"KangxiRadicals", xmlUCSIsKangxiRadicals},
00103   {"Kannada", xmlUCSIsKannada},
00104   {"Katakana", xmlUCSIsKatakana},
00105   {"KatakanaPhoneticExtensions", xmlUCSIsKatakanaPhoneticExtensions},
00106   {"Khmer", xmlUCSIsKhmer},
00107   {"KhmerSymbols", xmlUCSIsKhmerSymbols},
00108   {"Lao", xmlUCSIsLao},
00109   {"Latin-1Supplement", xmlUCSIsLatin1Supplement},
00110   {"LatinExtended-A", xmlUCSIsLatinExtendedA},
00111   {"LatinExtended-B", xmlUCSIsLatinExtendedB},
00112   {"LatinExtendedAdditional", xmlUCSIsLatinExtendedAdditional},
00113   {"LetterlikeSymbols", xmlUCSIsLetterlikeSymbols},
00114   {"Limbu", xmlUCSIsLimbu},
00115   {"LinearBIdeograms", xmlUCSIsLinearBIdeograms},
00116   {"LinearBSyllabary", xmlUCSIsLinearBSyllabary},
00117   {"LowSurrogates", xmlUCSIsLowSurrogates},
00118   {"Malayalam", xmlUCSIsMalayalam},
00119   {"MathematicalAlphanumericSymbols", xmlUCSIsMathematicalAlphanumericSymbols},
00120   {"MathematicalOperators", xmlUCSIsMathematicalOperators},
00121   {"MiscellaneousMathematicalSymbols-A", xmlUCSIsMiscellaneousMathematicalSymbolsA},
00122   {"MiscellaneousMathematicalSymbols-B", xmlUCSIsMiscellaneousMathematicalSymbolsB},
00123   {"MiscellaneousSymbols", xmlUCSIsMiscellaneousSymbols},
00124   {"MiscellaneousSymbolsandArrows", xmlUCSIsMiscellaneousSymbolsandArrows},
00125   {"MiscellaneousTechnical", xmlUCSIsMiscellaneousTechnical},
00126   {"Mongolian", xmlUCSIsMongolian},
00127   {"MusicalSymbols", xmlUCSIsMusicalSymbols},
00128   {"Myanmar", xmlUCSIsMyanmar},
00129   {"NumberForms", xmlUCSIsNumberForms},
00130   {"Ogham", xmlUCSIsOgham},
00131   {"OldItalic", xmlUCSIsOldItalic},
00132   {"OpticalCharacterRecognition", xmlUCSIsOpticalCharacterRecognition},
00133   {"Oriya", xmlUCSIsOriya},
00134   {"Osmanya", xmlUCSIsOsmanya},
00135   {"PhoneticExtensions", xmlUCSIsPhoneticExtensions},
00136   {"PrivateUse", xmlUCSIsPrivateUse},
00137   {"PrivateUseArea", xmlUCSIsPrivateUseArea},
00138   {"Runic", xmlUCSIsRunic},
00139   {"Shavian", xmlUCSIsShavian},
00140   {"Sinhala", xmlUCSIsSinhala},
00141   {"SmallFormVariants", xmlUCSIsSmallFormVariants},
00142   {"SpacingModifierLetters", xmlUCSIsSpacingModifierLetters},
00143   {"Specials", xmlUCSIsSpecials},
00144   {"SuperscriptsandSubscripts", xmlUCSIsSuperscriptsandSubscripts},
00145   {"SupplementalArrows-A", xmlUCSIsSupplementalArrowsA},
00146   {"SupplementalArrows-B", xmlUCSIsSupplementalArrowsB},
00147   {"SupplementalMathematicalOperators", xmlUCSIsSupplementalMathematicalOperators},
00148   {"SupplementaryPrivateUseArea-A", xmlUCSIsSupplementaryPrivateUseAreaA},
00149   {"SupplementaryPrivateUseArea-B", xmlUCSIsSupplementaryPrivateUseAreaB},
00150   {"Syriac", xmlUCSIsSyriac},
00151   {"Tagalog", xmlUCSIsTagalog},
00152   {"Tagbanwa", xmlUCSIsTagbanwa},
00153   {"Tags", xmlUCSIsTags},
00154   {"TaiLe", xmlUCSIsTaiLe},
00155   {"TaiXuanJingSymbols", xmlUCSIsTaiXuanJingSymbols},
00156   {"Tamil", xmlUCSIsTamil},
00157   {"Telugu", xmlUCSIsTelugu},
00158   {"Thaana", xmlUCSIsThaana},
00159   {"Thai", xmlUCSIsThai},
00160   {"Tibetan", xmlUCSIsTibetan},
00161   {"Ugaritic", xmlUCSIsUgaritic},
00162   {"UnifiedCanadianAboriginalSyllabics", xmlUCSIsUnifiedCanadianAboriginalSyllabics},
00163   {"VariationSelectors", xmlUCSIsVariationSelectors},
00164   {"VariationSelectorsSupplement", xmlUCSIsVariationSelectorsSupplement},
00165   {"YiRadicals", xmlUCSIsYiRadicals},
00166   {"YiSyllables", xmlUCSIsYiSyllables},
00167   {"YijingHexagramSymbols", xmlUCSIsYijingHexagramSymbols}};
00168 
00169 static xmlUnicodeRange xmlUnicodeCats[] = {
00170   {"C", xmlUCSIsCatC},
00171   {"Cc", xmlUCSIsCatCc},
00172   {"Cf", xmlUCSIsCatCf},
00173   {"Co", xmlUCSIsCatCo},
00174   {"Cs", xmlUCSIsCatCs},
00175   {"L", xmlUCSIsCatL},
00176   {"Ll", xmlUCSIsCatLl},
00177   {"Lm", xmlUCSIsCatLm},
00178   {"Lo", xmlUCSIsCatLo},
00179   {"Lt", xmlUCSIsCatLt},
00180   {"Lu", xmlUCSIsCatLu},
00181   {"M", xmlUCSIsCatM},
00182   {"Mc", xmlUCSIsCatMc},
00183   {"Me", xmlUCSIsCatMe},
00184   {"Mn", xmlUCSIsCatMn},
00185   {"N", xmlUCSIsCatN},
00186   {"Nd", xmlUCSIsCatNd},
00187   {"Nl", xmlUCSIsCatNl},
00188   {"No", xmlUCSIsCatNo},
00189   {"P", xmlUCSIsCatP},
00190   {"Pc", xmlUCSIsCatPc},
00191   {"Pd", xmlUCSIsCatPd},
00192   {"Pe", xmlUCSIsCatPe},
00193   {"Pf", xmlUCSIsCatPf},
00194   {"Pi", xmlUCSIsCatPi},
00195   {"Po", xmlUCSIsCatPo},
00196   {"Ps", xmlUCSIsCatPs},
00197   {"S", xmlUCSIsCatS},
00198   {"Sc", xmlUCSIsCatSc},
00199   {"Sk", xmlUCSIsCatSk},
00200   {"Sm", xmlUCSIsCatSm},
00201   {"So", xmlUCSIsCatSo},
00202   {"Z", xmlUCSIsCatZ},
00203   {"Zl", xmlUCSIsCatZl},
00204   {"Zp", xmlUCSIsCatZp},
00205   {"Zs", xmlUCSIsCatZs}};
00206 
00207 static const xmlChSRange xmlCS[] = {{0x0, 0x1f}, {0x7f, 0x9f}, 
00208     {0xad, 0xad}, {0x600, 0x603}, {0x6dd, 0x6dd}, {0x70f, 0x70f}, 
00209     {0x17b4, 0x17b5}, {0x200b, 0x200f}, {0x202a, 0x202e}, {0x2060, 0x2063}, 
00210     {0x206a, 0x206f}, {0xd800, 0xd800}, {0xdb7f, 0xdb80}, {0xdbff, 0xdc00}, 
00211     {0xdfff, 0xe000}, {0xf8ff, 0xf8ff}, {0xfeff, 0xfeff}, {0xfff9, 0xfffb} };
00212 static const xmlChLRange xmlCL[] = {{0x1d173, 0x1d17a}, {0xe0001, 0xe0001}, 
00213     {0xe0020, 0xe007f}, {0xf0000, 0xf0000}, {0xffffd, 0xffffd}, 
00214     {0x100000, 0x100000}, {0x10fffd, 0x10fffd} };
00215 static xmlChRangeGroup xmlCG = {18,7,xmlCS,xmlCL};
00216 
00217 static const xmlChSRange xmlCfS[] = {{0xad, 0xad}, {0x600, 0x603}, 
00218     {0x6dd, 0x6dd}, {0x70f, 0x70f}, {0x17b4, 0x17b5}, {0x200b, 0x200f}, 
00219     {0x202a, 0x202e}, {0x2060, 0x2063}, {0x206a, 0x206f}, {0xfeff, 0xfeff}, 
00220     {0xfff9, 0xfffb} };
00221 static const xmlChLRange xmlCfL[] = {{0x1d173, 0x1d17a}, {0xe0001, 0xe0001}, 
00222     {0xe0020, 0xe007f} };
00223 static xmlChRangeGroup xmlCfG = {11,3,xmlCfS,xmlCfL};
00224 
00225 static const xmlChSRange xmlLS[] = {{0x41, 0x5a}, {0x61, 0x7a}, 
00226     {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, 
00227     {0xf8, 0x236}, {0x250, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, 
00228     {0x2ee, 0x2ee}, {0x37a, 0x37a}, {0x386, 0x386}, {0x388, 0x38a}, 
00229     {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3ce}, {0x3d0, 0x3f5}, 
00230     {0x3f7, 0x3fb}, {0x400, 0x481}, {0x48a, 0x4ce}, {0x4d0, 0x4f5}, 
00231     {0x4f8, 0x4f9}, {0x500, 0x50f}, {0x531, 0x556}, {0x559, 0x559}, 
00232     {0x561, 0x587}, {0x5d0, 0x5ea}, {0x5f0, 0x5f2}, {0x621, 0x63a}, 
00233     {0x640, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, 
00234     {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, 
00235     {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x74f}, {0x780, 0x7a5}, 
00236     {0x7b1, 0x7b1}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, 
00237     {0x958, 0x961}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, 
00238     {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, 
00239     {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0xa05, 0xa0a}, 
00240     {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, 
00241     {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, 
00242     {0xa72, 0xa74}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, 
00243     {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, 
00244     {0xad0, 0xad0}, {0xae0, 0xae1}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, 
00245     {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, 
00246     {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, 
00247     {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, 
00248     {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, 
00249     {0xba8, 0xbaa}, {0xbae, 0xbb5}, {0xbb7, 0xbb9}, {0xc05, 0xc0c}, 
00250     {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc33}, {0xc35, 0xc39}, 
00251     {0xc60, 0xc61}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, 
00252     {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcde, 0xcde}, 
00253     {0xce0, 0xce1}, {0xd05, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd28}, 
00254     {0xd2a, 0xd39}, {0xd60, 0xd61}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, 
00255     {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, 
00256     {0xe32, 0xe33}, {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, 
00257     {0xe87, 0xe88}, {0xe8a, 0xe8a}, {0xe8d, 0xe8d}, {0xe94, 0xe97}, 
00258     {0xe99, 0xe9f}, {0xea1, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xea7}, 
00259     {0xeaa, 0xeab}, {0xead, 0xeb0}, {0xeb2, 0xeb3}, {0xebd, 0xebd}, 
00260     {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedd}, {0xf00, 0xf00}, 
00261     {0xf40, 0xf47}, {0xf49, 0xf6a}, {0xf88, 0xf8b}, {0x1000, 0x1021}, 
00262     {0x1023, 0x1027}, {0x1029, 0x102a}, {0x1050, 0x1055}, {0x10a0, 0x10c5}, 
00263     {0x10d0, 0x10f8}, {0x1100, 0x1159}, {0x115f, 0x11a2}, {0x11a8, 0x11f9}, 
00264     {0x1200, 0x1206}, {0x1208, 0x1246}, {0x1248, 0x1248}, {0x124a, 0x124d}, 
00265     {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1286}, 
00266     {0x1288, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12ae}, {0x12b0, 0x12b0}, 
00267     {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, 
00268     {0x12c8, 0x12ce}, {0x12d0, 0x12d6}, {0x12d8, 0x12ee}, {0x12f0, 0x130e}, 
00269     {0x1310, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x131e}, {0x1320, 0x1346}, 
00270     {0x1348, 0x135a}, {0x13a0, 0x13f4}, {0x1401, 0x166c}, {0x166f, 0x1676}, 
00271     {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x1700, 0x170c}, {0x170e, 0x1711}, 
00272     {0x1720, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, 
00273     {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1877}, 
00274     {0x1880, 0x18a8}, {0x1900, 0x191c}, {0x1950, 0x196d}, {0x1970, 0x1974}, 
00275     {0x1d00, 0x1d6b}, {0x1e00, 0x1e9b}, {0x1ea0, 0x1ef9}, {0x1f00, 0x1f15}, 
00276     {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, 
00277     {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, 
00278     {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, 
00279     {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, 
00280     {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, 
00281     {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, 
00282     {0x2119, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, 
00283     {0x212a, 0x212d}, {0x212f, 0x2131}, {0x2133, 0x2139}, {0x213d, 0x213f}, 
00284     {0x2145, 0x2149}, {0x3005, 0x3006}, {0x3031, 0x3035}, {0x303b, 0x303c}, 
00285     {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, 
00286     {0x3105, 0x312c}, {0x3131, 0x318e}, {0x31a0, 0x31b7}, {0x31f0, 0x31ff}, 
00287     {0x3400, 0x3400}, {0x4db5, 0x4db5}, {0x4e00, 0x4e00}, {0x9fa5, 0x9fa5}, 
00288     {0xa000, 0xa48c}, {0xac00, 0xac00}, {0xd7a3, 0xd7a3}, {0xf900, 0xfa2d}, 
00289     {0xfa30, 0xfa6a}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, 
00290     {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, 
00291     {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, 
00292     {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, {0xfe70, 0xfe74}, 
00293     {0xfe76, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, 
00294     {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc} };
00295 static const xmlChLRange xmlLL[] = {{0x10000, 0x1000b}, {0x1000d, 0x10026}, 
00296     {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, 
00297     {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10300, 0x1031e}, 
00298     {0x10330, 0x10349}, {0x10380, 0x1039d}, {0x10400, 0x1049d}, 
00299     {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, 
00300     {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x1083f}, 
00301     {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, 
00302     {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, 
00303     {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, 
00304     {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, 
00305     {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, 
00306     {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, 
00307     {0x1d552, 0x1d6a3}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, 
00308     {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, 
00309     {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, 
00310     {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9}, 
00311     {0x20000, 0x20000}, {0x2a6d6, 0x2a6d6}, {0x2f800, 0x2fa1d} };
00312 static xmlChRangeGroup xmlLG = {279,50,xmlLS,xmlLL};
00313 
00314 static const xmlChSRange xmlLlS[] = {{0x61, 0x7a}, {0xaa, 0xaa}, 
00315     {0xb5, 0xb5}, {0xba, 0xba}, {0xdf, 0xf6}, {0xf8, 0xff}, {0x101, 0x101}, 
00316     {0x103, 0x103}, {0x105, 0x105}, {0x107, 0x107}, {0x109, 0x109}, 
00317     {0x10b, 0x10b}, {0x10d, 0x10d}, {0x10f, 0x10f}, {0x111, 0x111}, 
00318     {0x113, 0x113}, {0x115, 0x115}, {0x117, 0x117}, {0x119, 0x119}, 
00319     {0x11b, 0x11b}, {0x11d, 0x11d}, {0x11f, 0x11f}, {0x121, 0x121}, 
00320     {0x123, 0x123}, {0x125, 0x125}, {0x127, 0x127}, {0x129, 0x129}, 
00321     {0x12b, 0x12b}, {0x12d, 0x12d}, {0x12f, 0x12f}, {0x131, 0x131}, 
00322     {0x133, 0x133}, {0x135, 0x135}, {0x137, 0x138}, {0x13a, 0x13a}, 
00323     {0x13c, 0x13c}, {0x13e, 0x13e}, {0x140, 0x140}, {0x142, 0x142}, 
00324     {0x144, 0x144}, {0x146, 0x146}, {0x148, 0x149}, {0x14b, 0x14b}, 
00325     {0x14d, 0x14d}, {0x14f, 0x14f}, {0x151, 0x151}, {0x153, 0x153}, 
00326     {0x155, 0x155}, {0x157, 0x157}, {0x159, 0x159}, {0x15b, 0x15b}, 
00327     {0x15d, 0x15d}, {0x15f, 0x15f}, {0x161, 0x161}, {0x163, 0x163}, 
00328     {0x165, 0x165}, {0x167, 0x167}, {0x169, 0x169}, {0x16b, 0x16b}, 
00329     {0x16d, 0x16d}, {0x16f, 0x16f}, {0x171, 0x171}, {0x173, 0x173}, 
00330     {0x175, 0x175}, {0x177, 0x177}, {0x17a, 0x17a}, {0x17c, 0x17c}, 
00331     {0x17e, 0x180}, {0x183, 0x183}, {0x185, 0x185}, {0x188, 0x188}, 
00332     {0x18c, 0x18d}, {0x192, 0x192}, {0x195, 0x195}, {0x199, 0x19b}, 
00333     {0x19e, 0x19e}, {0x1a1, 0x1a1}, {0x1a3, 0x1a3}, {0x1a5, 0x1a5}, 
00334     {0x1a8, 0x1a8}, {0x1aa, 0x1ab}, {0x1ad, 0x1ad}, {0x1b0, 0x1b0}, 
00335     {0x1b4, 0x1b4}, {0x1b6, 0x1b6}, {0x1b9, 0x1ba}, {0x1bd, 0x1bf}, 
00336     {0x1c6, 0x1c6}, {0x1c9, 0x1c9}, {0x1cc, 0x1cc}, {0x1ce, 0x1ce}, 
00337     {0x1d0, 0x1d0}, {0x1d2, 0x1d2}, {0x1d4, 0x1d4}, {0x1d6, 0x1d6}, 
00338     {0x1d8, 0x1d8}, {0x1da, 0x1da}, {0x1dc, 0x1dd}, {0x1df, 0x1df}, 
00339     {0x1e1, 0x1e1}, {0x1e3, 0x1e3}, {0x1e5, 0x1e5}, {0x1e7, 0x1e7}, 
00340     {0x1e9, 0x1e9}, {0x1eb, 0x1eb}, {0x1ed, 0x1ed}, {0x1ef, 0x1f0}, 
00341     {0x1f3, 0x1f3}, {0x1f5, 0x1f5}, {0x1f9, 0x1f9}, {0x1fb, 0x1fb}, 
00342     {0x1fd, 0x1fd}, {0x1ff, 0x1ff}, {0x201, 0x201}, {0x203, 0x203}, 
00343     {0x205, 0x205}, {0x207, 0x207}, {0x209, 0x209}, {0x20b, 0x20b}, 
00344     {0x20d, 0x20d}, {0x20f, 0x20f}, {0x211, 0x211}, {0x213, 0x213}, 
00345     {0x215, 0x215}, {0x217, 0x217}, {0x219, 0x219}, {0x21b, 0x21b}, 
00346     {0x21d, 0x21d}, {0x21f, 0x21f}, {0x221, 0x221}, {0x223, 0x223}, 
00347     {0x225, 0x225}, {0x227, 0x227}, {0x229, 0x229}, {0x22b, 0x22b}, 
00348     {0x22d, 0x22d}, {0x22f, 0x22f}, {0x231, 0x231}, {0x233, 0x236}, 
00349     {0x250, 0x2af}, {0x390, 0x390}, {0x3ac, 0x3ce}, {0x3d0, 0x3d1}, 
00350     {0x3d5, 0x3d7}, {0x3d9, 0x3d9}, {0x3db, 0x3db}, {0x3dd, 0x3dd}, 
00351     {0x3df, 0x3df}, {0x3e1, 0x3e1}, {0x3e3, 0x3e3}, {0x3e5, 0x3e5}, 
00352     {0x3e7, 0x3e7}, {0x3e9, 0x3e9}, {0x3eb, 0x3eb}, {0x3ed, 0x3ed}, 
00353     {0x3ef, 0x3f3}, {0x3f5, 0x3f5}, {0x3f8, 0x3f8}, {0x3fb, 0x3fb}, 
00354     {0x430, 0x45f}, {0x461, 0x461}, {0x463, 0x463}, {0x465, 0x465}, 
00355     {0x467, 0x467}, {0x469, 0x469}, {0x46b, 0x46b}, {0x46d, 0x46d}, 
00356     {0x46f, 0x46f}, {0x471, 0x471}, {0x473, 0x473}, {0x475, 0x475}, 
00357     {0x477, 0x477}, {0x479, 0x479}, {0x47b, 0x47b}, {0x47d, 0x47d}, 
00358     {0x47f, 0x47f}, {0x481, 0x481}, {0x48b, 0x48b}, {0x48d, 0x48d}, 
00359     {0x48f, 0x48f}, {0x491, 0x491}, {0x493, 0x493}, {0x495, 0x495}, 
00360     {0x497, 0x497}, {0x499, 0x499}, {0x49b, 0x49b}, {0x49d, 0x49d}, 
00361     {0x49f, 0x49f}, {0x4a1, 0x4a1}, {0x4a3, 0x4a3}, {0x4a5, 0x4a5}, 
00362     {0x4a7, 0x4a7}, {0x4a9, 0x4a9}, {0x4ab, 0x4ab}, {0x4ad, 0x4ad}, 
00363     {0x4af, 0x4af}, {0x4b1, 0x4b1}, {0x4b3, 0x4b3}, {0x4b5, 0x4b5}, 
00364     {0x4b7, 0x4b7}, {0x4b9, 0x4b9}, {0x4bb, 0x4bb}, {0x4bd, 0x4bd}, 
00365     {0x4bf, 0x4bf}, {0x4c2, 0x4c2}, {0x4c4, 0x4c4}, {0x4c6, 0x4c6}, 
00366     {0x4c8, 0x4c8}, {0x4ca, 0x4ca}, {0x4cc, 0x4cc}, {0x4ce, 0x4ce}, 
00367     {0x4d1, 0x4d1}, {0x4d3, 0x4d3}, {0x4d5, 0x4d5}, {0x4d7, 0x4d7}, 
00368     {0x4d9, 0x4d9}, {0x4db, 0x4db}, {0x4dd, 0x4dd}, {0x4df, 0x4df}, 
00369     {0x4e1, 0x4e1}, {0x4e3, 0x4e3}, {0x4e5, 0x4e5}, {0x4e7, 0x4e7}, 
00370     {0x4e9, 0x4e9}, {0x4eb, 0x4eb}, {0x4ed, 0x4ed}, {0x4ef, 0x4ef}, 
00371     {0x4f1, 0x4f1}, {0x4f3, 0x4f3}, {0x4f5, 0x4f5}, {0x4f9, 0x4f9}, 
00372     {0x501, 0x501}, {0x503, 0x503}, {0x505, 0x505}, {0x507, 0x507}, 
00373     {0x509, 0x509}, {0x50b, 0x50b}, {0x50d, 0x50d}, {0x50f, 0x50f}, 
00374     {0x561, 0x587}, {0x1d00, 0x1d2b}, {0x1d62, 0x1d6b}, {0x1e01, 0x1e01}, 
00375     {0x1e03, 0x1e03}, {0x1e05, 0x1e05}, {0x1e07, 0x1e07}, {0x1e09, 0x1e09}, 
00376     {0x1e0b, 0x1e0b}, {0x1e0d, 0x1e0d}, {0x1e0f, 0x1e0f}, {0x1e11, 0x1e11}, 
00377     {0x1e13, 0x1e13}, {0x1e15, 0x1e15}, {0x1e17, 0x1e17}, {0x1e19, 0x1e19}, 
00378     {0x1e1b, 0x1e1b}, {0x1e1d, 0x1e1d}, {0x1e1f, 0x1e1f}, {0x1e21, 0x1e21}, 
00379     {0x1e23, 0x1e23}, {0x1e25, 0x1e25}, {0x1e27, 0x1e27}, {0x1e29, 0x1e29}, 
00380     {0x1e2b, 0x1e2b}, {0x1e2d, 0x1e2d}, {0x1e2f, 0x1e2f}, {0x1e31, 0x1e31}, 
00381     {0x1e33, 0x1e33}, {0x1e35, 0x1e35}, {0x1e37, 0x1e37}, {0x1e39, 0x1e39}, 
00382     {0x1e3b, 0x1e3b}, {0x1e3d, 0x1e3d}, {0x1e3f, 0x1e3f}, {0x1e41, 0x1e41}, 
00383     {0x1e43, 0x1e43}, {0x1e45, 0x1e45}, {0x1e47, 0x1e47}, {0x1e49, 0x1e49}, 
00384     {0x1e4b, 0x1e4b}, {0x1e4d, 0x1e4d}, {0x1e4f, 0x1e4f}, {0x1e51, 0x1e51}, 
00385     {0x1e53, 0x1e53}, {0x1e55, 0x1e55}, {0x1e57, 0x1e57}, {0x1e59, 0x1e59}, 
00386     {0x1e5b, 0x1e5b}, {0x1e5d, 0x1e5d}, {0x1e5f, 0x1e5f}, {0x1e61, 0x1e61}, 
00387     {0x1e63, 0x1e63}, {0x1e65, 0x1e65}, {0x1e67, 0x1e67}, {0x1e69, 0x1e69}, 
00388     {0x1e6b, 0x1e6b}, {0x1e6d, 0x1e6d}, {0x1e6f, 0x1e6f}, {0x1e71, 0x1e71}, 
00389     {0x1e73, 0x1e73}, {0x1e75, 0x1e75}, {0x1e77, 0x1e77}, {0x1e79, 0x1e79}, 
00390     {0x1e7b, 0x1e7b}, {0x1e7d, 0x1e7d}, {0x1e7f, 0x1e7f}, {0x1e81, 0x1e81}, 
00391     {0x1e83, 0x1e83}, {0x1e85, 0x1e85}, {0x1e87, 0x1e87}, {0x1e89, 0x1e89}, 
00392     {0x1e8b, 0x1e8b}, {0x1e8d, 0x1e8d}, {0x1e8f, 0x1e8f}, {0x1e91, 0x1e91}, 
00393     {0x1e93, 0x1e93}, {0x1e95, 0x1e9b}, {0x1ea1, 0x1ea1}, {0x1ea3, 0x1ea3}, 
00394     {0x1ea5, 0x1ea5}, {0x1ea7, 0x1ea7}, {0x1ea9, 0x1ea9}, {0x1eab, 0x1eab}, 
00395     {0x1ead, 0x1ead}, {0x1eaf, 0x1eaf}, {0x1eb1, 0x1eb1}, {0x1eb3, 0x1eb3}, 
00396     {0x1eb5, 0x1eb5}, {0x1eb7, 0x1eb7}, {0x1eb9, 0x1eb9}, {0x1ebb, 0x1ebb}, 
00397     {0x1ebd, 0x1ebd}, {0x1ebf, 0x1ebf}, {0x1ec1, 0x1ec1}, {0x1ec3, 0x1ec3}, 
00398     {0x1ec5, 0x1ec5}, {0x1ec7, 0x1ec7}, {0x1ec9, 0x1ec9}, {0x1ecb, 0x1ecb}, 
00399     {0x1ecd, 0x1ecd}, {0x1ecf, 0x1ecf}, {0x1ed1, 0x1ed1}, {0x1ed3, 0x1ed3}, 
00400     {0x1ed5, 0x1ed5}, {0x1ed7, 0x1ed7}, {0x1ed9, 0x1ed9}, {0x1edb, 0x1edb}, 
00401     {0x1edd, 0x1edd}, {0x1edf, 0x1edf}, {0x1ee1, 0x1ee1}, {0x1ee3, 0x1ee3}, 
00402     {0x1ee5, 0x1ee5}, {0x1ee7, 0x1ee7}, {0x1ee9, 0x1ee9}, {0x1eeb, 0x1eeb}, 
00403     {0x1eed, 0x1eed}, {0x1eef, 0x1eef}, {0x1ef1, 0x1ef1}, {0x1ef3, 0x1ef3}, 
00404     {0x1ef5, 0x1ef5}, {0x1ef7, 0x1ef7}, {0x1ef9, 0x1ef9}, {0x1f00, 0x1f07}, 
00405     {0x1f10, 0x1f15}, {0x1f20, 0x1f27}, {0x1f30, 0x1f37}, {0x1f40, 0x1f45}, 
00406     {0x1f50, 0x1f57}, {0x1f60, 0x1f67}, {0x1f70, 0x1f7d}, {0x1f80, 0x1f87}, 
00407     {0x1f90, 0x1f97}, {0x1fa0, 0x1fa7}, {0x1fb0, 0x1fb4}, {0x1fb6, 0x1fb7}, 
00408     {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fc7}, {0x1fd0, 0x1fd3}, 
00409     {0x1fd6, 0x1fd7}, {0x1fe0, 0x1fe7}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ff7}, 
00410     {0x2071, 0x2071}, {0x207f, 0x207f}, {0x210a, 0x210a}, {0x210e, 0x210f}, 
00411     {0x2113, 0x2113}, {0x212f, 0x212f}, {0x2134, 0x2134}, {0x2139, 0x2139}, 
00412     {0x213d, 0x213d}, {0x2146, 0x2149}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, 
00413     {0xff41, 0xff5a} };
00414 static const xmlChLRange xmlLlL[] = {{0x10428, 0x1044f}, {0x1d41a, 0x1d433}, 
00415     {0x1d44e, 0x1d454}, {0x1d456, 0x1d467}, {0x1d482, 0x1d49b}, 
00416     {0x1d4b6, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, 
00417     {0x1d4c5, 0x1d4cf}, {0x1d4ea, 0x1d503}, {0x1d51e, 0x1d537}, 
00418     {0x1d552, 0x1d56b}, {0x1d586, 0x1d59f}, {0x1d5ba, 0x1d5d3}, 
00419     {0x1d5ee, 0x1d607}, {0x1d622, 0x1d63b}, {0x1d656, 0x1d66f}, 
00420     {0x1d68a, 0x1d6a3}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6e1}, 
00421     {0x1d6fc, 0x1d714}, {0x1d716, 0x1d71b}, {0x1d736, 0x1d74e}, 
00422     {0x1d750, 0x1d755}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d78f}, 
00423     {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9} };
00424 static xmlChRangeGroup xmlLlG = {396,28,xmlLlS,xmlLlL};
00425 
00426 static const xmlChSRange xmlLmS[] = {{0x2b0, 0x2c1}, {0x2c6, 0x2d1}, 
00427     {0x2e0, 0x2e4}, {0x2ee, 0x2ee}, {0x37a, 0x37a}, {0x559, 0x559}, 
00428     {0x640, 0x640}, {0x6e5, 0x6e6}, {0xe46, 0xe46}, {0xec6, 0xec6}, 
00429     {0x17d7, 0x17d7}, {0x1843, 0x1843}, {0x1d2c, 0x1d61}, {0x3005, 0x3005}, 
00430     {0x3031, 0x3035}, {0x303b, 0x303b}, {0x309d, 0x309e}, {0x30fc, 0x30fe}, 
00431     {0xff70, 0xff70}, {0xff9e, 0xff9f} };
00432 static xmlChRangeGroup xmlLmG = {20,0,xmlLmS,NULL};
00433 
00434 static const xmlChSRange xmlLoS[] = {{0x1bb, 0x1bb}, {0x1c0, 0x1c3}, 
00435     {0x5d0, 0x5ea}, {0x5f0, 0x5f2}, {0x621, 0x63a}, {0x641, 0x64a}, 
00436     {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, {0x6ee, 0x6ef}, 
00437     {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, 
00438     {0x74d, 0x74f}, {0x780, 0x7a5}, {0x7b1, 0x7b1}, {0x904, 0x939}, 
00439     {0x93d, 0x93d}, {0x950, 0x950}, {0x958, 0x961}, {0x985, 0x98c}, 
00440     {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, 
00441     {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, 
00442     {0x9f0, 0x9f1}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, 
00443     {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, 
00444     {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, {0xa85, 0xa8d}, 
00445     {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, 
00446     {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, {0xae0, 0xae1}, 
00447     {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, 
00448     {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, 
00449     {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, 
00450     {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, 
00451     {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb5}, 
00452     {0xbb7, 0xbb9}, {0xc05, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, 
00453     {0xc2a, 0xc33}, {0xc35, 0xc39}, {0xc60, 0xc61}, {0xc85, 0xc8c}, 
00454     {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, 
00455     {0xcbd, 0xcbd}, {0xcde, 0xcde}, {0xce0, 0xce1}, {0xd05, 0xd0c}, 
00456     {0xd0e, 0xd10}, {0xd12, 0xd28}, {0xd2a, 0xd39}, {0xd60, 0xd61}, 
00457     {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, 
00458     {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe33}, {0xe40, 0xe45}, 
00459     {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe87, 0xe88}, {0xe8a, 0xe8a}, 
00460     {0xe8d, 0xe8d}, {0xe94, 0xe97}, {0xe99, 0xe9f}, {0xea1, 0xea3}, 
00461     {0xea5, 0xea5}, {0xea7, 0xea7}, {0xeaa, 0xeab}, {0xead, 0xeb0}, 
00462     {0xeb2, 0xeb3}, {0xebd, 0xebd}, {0xec0, 0xec4}, {0xedc, 0xedd}, 
00463     {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6a}, {0xf88, 0xf8b}, 
00464     {0x1000, 0x1021}, {0x1023, 0x1027}, {0x1029, 0x102a}, {0x1050, 0x1055}, 
00465     {0x10d0, 0x10f8}, {0x1100, 0x1159}, {0x115f, 0x11a2}, {0x11a8, 0x11f9}, 
00466     {0x1200, 0x1206}, {0x1208, 0x1246}, {0x1248, 0x1248}, {0x124a, 0x124d}, 
00467     {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1286}, 
00468     {0x1288, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12ae}, {0x12b0, 0x12b0}, 
00469     {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, 
00470     {0x12c8, 0x12ce}, {0x12d0, 0x12d6}, {0x12d8, 0x12ee}, {0x12f0, 0x130e}, 
00471     {0x1310, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x131e}, {0x1320, 0x1346}, 
00472     {0x1348, 0x135a}, {0x13a0, 0x13f4}, {0x1401, 0x166c}, {0x166f, 0x1676}, 
00473     {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x1700, 0x170c}, {0x170e, 0x1711}, 
00474     {0x1720, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, 
00475     {0x1780, 0x17b3}, {0x17dc, 0x17dc}, {0x1820, 0x1842}, {0x1844, 0x1877}, 
00476     {0x1880, 0x18a8}, {0x1900, 0x191c}, {0x1950, 0x196d}, {0x1970, 0x1974}, 
00477     {0x2135, 0x2138}, {0x3006, 0x3006}, {0x303c, 0x303c}, {0x3041, 0x3096}, 
00478     {0x309f, 0x309f}, {0x30a1, 0x30fa}, {0x30ff, 0x30ff}, {0x3105, 0x312c}, 
00479     {0x3131, 0x318e}, {0x31a0, 0x31b7}, {0x31f0, 0x31ff}, {0x3400, 0x3400}, 
00480     {0x4db5, 0x4db5}, {0x4e00, 0x4e00}, {0x9fa5, 0x9fa5}, {0xa000, 0xa48c}, 
00481     {0xac00, 0xac00}, {0xd7a3, 0xd7a3}, {0xf900, 0xfa2d}, {0xfa30, 0xfa6a}, 
00482     {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, 
00483     {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, 
00484     {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, 
00485     {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff66, 0xff6f}, {0xff71, 0xff9d}, 
00486     {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, 
00487     {0xffda, 0xffdc} };
00488 static const xmlChLRange xmlLoL[] = {{0x10000, 0x1000b}, {0x1000d, 0x10026}, 
00489     {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, 
00490     {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10300, 0x1031e}, 
00491     {0x10330, 0x10349}, {0x10380, 0x1039d}, {0x10450, 0x1049d}, 
00492     {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, 
00493     {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x1083f}, 
00494     {0x20000, 0x20000}, {0x2a6d6, 0x2a6d6}, {0x2f800, 0x2fa1d} };
00495 static xmlChRangeGroup xmlLoG = {211,20,xmlLoS,xmlLoL};
00496 
00497 static const xmlChSRange xmlLtS[] = {{0x1c5, 0x1c5}, {0x1c8, 0x1c8}, 
00498     {0x1cb, 0x1cb}, {0x1f2, 0x1f2}, {0x1f88, 0x1f8f}, {0x1f98, 0x1f9f}, 
00499     {0x1fa8, 0x1faf}, {0x1fbc, 0x1fbc}, {0x1fcc, 0x1fcc}, {0x1ffc, 0x1ffc} };
00500 static xmlChRangeGroup xmlLtG = {10,0,xmlLtS,NULL};
00501 
00502 static const xmlChSRange xmlLuS[] = {{0x41, 0x5a}, {0xc0, 0xd6}, 
00503     {0xd8, 0xde}, {0x100, 0x100}, {0x102, 0x102}, {0x104, 0x104}, 
00504     {0x106, 0x106}, {0x108, 0x108}, {0x10a, 0x10a}, {0x10c, 0x10c}, 
00505     {0x10e, 0x10e}, {0x110, 0x110}, {0x112, 0x112}, {0x114, 0x114}, 
00506     {0x116, 0x116}, {0x118, 0x118}, {0x11a, 0x11a}, {0x11c, 0x11c}, 
00507     {0x11e, 0x11e}, {0x120, 0x120}, {0x122, 0x122}, {0x124, 0x124}, 
00508     {0x126, 0x126}, {0x128, 0x128}, {0x12a, 0x12a}, {0x12c, 0x12c}, 
00509     {0x12e, 0x12e}, {0x130, 0x130}, {0x132, 0x132}, {0x134, 0x134}, 
00510     {0x136, 0x136}, {0x139, 0x139}, {0x13b, 0x13b}, {0x13d, 0x13d}, 
00511     {0x13f, 0x13f}, {0x141, 0x141}, {0x143, 0x143}, {0x145, 0x145}, 
00512     {0x147, 0x147}, {0x14a, 0x14a}, {0x14c, 0x14c}, {0x14e, 0x14e}, 
00513     {0x150, 0x150}, {0x152, 0x152}, {0x154, 0x154}, {0x156, 0x156}, 
00514     {0x158, 0x158}, {0x15a, 0x15a}, {0x15c, 0x15c}, {0x15e, 0x15e}, 
00515     {0x160, 0x160}, {0x162, 0x162}, {0x164, 0x164}, {0x166, 0x166}, 
00516     {0x168, 0x168}, {0x16a, 0x16a}, {0x16c, 0x16c}, {0x16e, 0x16e}, 
00517     {0x170, 0x170}, {0x172, 0x172}, {0x174, 0x174}, {0x176, 0x176}, 
00518     {0x178, 0x179}, {0x17b, 0x17b}, {0x17d, 0x17d}, {0x181, 0x182}, 
00519     {0x184, 0x184}, {0x186, 0x187}, {0x189, 0x18b}, {0x18e, 0x191}, 
00520     {0x193, 0x194}, {0x196, 0x198}, {0x19c, 0x19d}, {0x19f, 0x1a0}, 
00521     {0x1a2, 0x1a2}, {0x1a4, 0x1a4}, {0x1a6, 0x1a7}, {0x1a9, 0x1a9}, 
00522     {0x1ac, 0x1ac}, {0x1ae, 0x1af}, {0x1b1, 0x1b3}, {0x1b5, 0x1b5}, 
00523     {0x1b7, 0x1b8}, {0x1bc, 0x1bc}, {0x1c4, 0x1c4}, {0x1c7, 0x1c7}, 
00524     {0x1ca, 0x1ca}, {0x1cd, 0x1cd}, {0x1cf, 0x1cf}, {0x1d1, 0x1d1}, 
00525     {0x1d3, 0x1d3}, {0x1d5, 0x1d5}, {0x1d7, 0x1d7}, {0x1d9, 0x1d9}, 
00526     {0x1db, 0x1db}, {0x1de, 0x1de}, {0x1e0, 0x1e0}, {0x1e2, 0x1e2}, 
00527     {0x1e4, 0x1e4}, {0x1e6, 0x1e6}, {0x1e8, 0x1e8}, {0x1ea, 0x1ea}, 
00528     {0x1ec, 0x1ec}, {0x1ee, 0x1ee}, {0x1f1, 0x1f1}, {0x1f4, 0x1f4}, 
00529     {0x1f6, 0x1f8}, {0x1fa, 0x1fa}, {0x1fc, 0x1fc}, {0x1fe, 0x1fe}, 
00530     {0x200, 0x200}, {0x202, 0x202}, {0x204, 0x204}, {0x206, 0x206}, 
00531     {0x208, 0x208}, {0x20a, 0x20a}, {0x20c, 0x20c}, {0x20e, 0x20e}, 
00532     {0x210, 0x210}, {0x212, 0x212}, {0x214, 0x214}, {0x216, 0x216}, 
00533     {0x218, 0x218}, {0x21a, 0x21a}, {0x21c, 0x21c}, {0x21e, 0x21e}, 
00534     {0x220, 0x220}, {0x222, 0x222}, {0x224, 0x224}, {0x226, 0x226}, 
00535     {0x228, 0x228}, {0x22a, 0x22a}, {0x22c, 0x22c}, {0x22e, 0x22e}, 
00536     {0x230, 0x230}, {0x232, 0x232}, {0x386, 0x386}, {0x388, 0x38a}, 
00537     {0x38c, 0x38c}, {0x38e, 0x38f}, {0x391, 0x3a1}, {0x3a3, 0x3ab}, 
00538     {0x3d2, 0x3d4}, {0x3d8, 0x3d8}, {0x3da, 0x3da}, {0x3dc, 0x3dc}, 
00539     {0x3de, 0x3de}, {0x3e0, 0x3e0}, {0x3e2, 0x3e2}, {0x3e4, 0x3e4}, 
00540     {0x3e6, 0x3e6}, {0x3e8, 0x3e8}, {0x3ea, 0x3ea}, {0x3ec, 0x3ec}, 
00541     {0x3ee, 0x3ee}, {0x3f4, 0x3f4}, {0x3f7, 0x3f7}, {0x3f9, 0x3fa}, 
00542     {0x400, 0x42f}, {0x460, 0x460}, {0x462, 0x462}, {0x464, 0x464}, 
00543     {0x466, 0x466}, {0x468, 0x468}, {0x46a, 0x46a}, {0x46c, 0x46c}, 
00544     {0x46e, 0x46e}, {0x470, 0x470}, {0x472, 0x472}, {0x474, 0x474}, 
00545     {0x476, 0x476}, {0x478, 0x478}, {0x47a, 0x47a}, {0x47c, 0x47c}, 
00546     {0x47e, 0x47e}, {0x480, 0x480}, {0x48a, 0x48a}, {0x48c, 0x48c}, 
00547     {0x48e, 0x48e}, {0x490, 0x490}, {0x492, 0x492}, {0x494, 0x494}, 
00548     {0x496, 0x496}, {0x498, 0x498}, {0x49a, 0x49a}, {0x49c, 0x49c}, 
00549     {0x49e, 0x49e}, {0x4a0, 0x4a0}, {0x4a2, 0x4a2}, {0x4a4, 0x4a4}, 
00550     {0x4a6, 0x4a6}, {0x4a8, 0x4a8}, {0x4aa, 0x4aa}, {0x4ac, 0x4ac}, 
00551     {0x4ae, 0x4ae}, {0x4b0, 0x4b0}, {0x4b2, 0x4b2}, {0x4b4, 0x4b4}, 
00552     {0x4b6, 0x4b6}, {0x4b8, 0x4b8}, {0x4ba, 0x4ba}, {0x4bc, 0x4bc}, 
00553     {0x4be, 0x4be}, {0x4c0, 0x4c1}, {0x4c3, 0x4c3}, {0x4c5, 0x4c5}, 
00554     {0x4c7, 0x4c7}, {0x4c9, 0x4c9}, {0x4cb, 0x4cb}, {0x4cd, 0x4cd}, 
00555     {0x4d0, 0x4d0}, {0x4d2, 0x4d2}, {0x4d4, 0x4d4}, {0x4d6, 0x4d6}, 
00556     {0x4d8, 0x4d8}, {0x4da, 0x4da}, {0x4dc, 0x4dc}, {0x4de, 0x4de}, 
00557     {0x4e0, 0x4e0}, {0x4e2, 0x4e2}, {0x4e4, 0x4e4}, {0x4e6, 0x4e6}, 
00558     {0x4e8, 0x4e8}, {0x4ea, 0x4ea}, {0x4ec, 0x4ec}, {0x4ee, 0x4ee}, 
00559     {0x4f0, 0x4f0}, {0x4f2, 0x4f2}, {0x4f4, 0x4f4}, {0x4f8, 0x4f8}, 
00560     {0x500, 0x500}, {0x502, 0x502}, {0x504, 0x504}, {0x506, 0x506}, 
00561     {0x508, 0x508}, {0x50a, 0x50a}, {0x50c, 0x50c}, {0x50e, 0x50e}, 
00562     {0x531, 0x556}, {0x10a0, 0x10c5}, {0x1e00, 0x1e00}, {0x1e02, 0x1e02}, 
00563     {0x1e04, 0x1e04}, {0x1e06, 0x1e06}, {0x1e08, 0x1e08}, {0x1e0a, 0x1e0a}, 
00564     {0x1e0c, 0x1e0c}, {0x1e0e, 0x1e0e}, {0x1e10, 0x1e10}, {0x1e12, 0x1e12}, 
00565     {0x1e14, 0x1e14}, {0x1e16, 0x1e16}, {0x1e18, 0x1e18}, {0x1e1a, 0x1e1a}, 
00566     {0x1e1c, 0x1e1c}, {0x1e1e, 0x1e1e}, {0x1e20, 0x1e20}, {0x1e22, 0x1e22}, 
00567     {0x1e24, 0x1e24}, {0x1e26, 0x1e26}, {0x1e28, 0x1e28}, {0x1e2a, 0x1e2a}, 
00568     {0x1e2c, 0x1e2c}, {0x1e2e, 0x1e2e}, {0x1e30, 0x1e30}, {0x1e32, 0x1e32}, 
00569     {0x1e34, 0x1e34}, {0x1e36, 0x1e36}, {0x1e38, 0x1e38}, {0x1e3a, 0x1e3a}, 
00570     {0x1e3c, 0x1e3c}, {0x1e3e, 0x1e3e}, {0x1e40, 0x1e40}, {0x1e42, 0x1e42}, 
00571     {0x1e44, 0x1e44}, {0x1e46, 0x1e46}, {0x1e48, 0x1e48}, {0x1e4a, 0x1e4a}, 
00572     {0x1e4c, 0x1e4c}, {0x1e4e, 0x1e4e}, {0x1e50, 0x1e50}, {0x1e52, 0x1e52}, 
00573     {0x1e54, 0x1e54}, {0x1e56, 0x1e56}, {0x1e58, 0x1e58}, {0x1e5a, 0x1e5a}, 
00574     {0x1e5c, 0x1e5c}, {0x1e5e, 0x1e5e}, {0x1e60, 0x1e60}, {0x1e62, 0x1e62}, 
00575     {0x1e64, 0x1e64}, {0x1e66, 0x1e66}, {0x1e68, 0x1e68}, {0x1e6a, 0x1e6a}, 
00576     {0x1e6c, 0x1e6c}, {0x1e6e, 0x1e6e}, {0x1e70, 0x1e70}, {0x1e72, 0x1e72}, 
00577     {0x1e74, 0x1e74}, {0x1e76, 0x1e76}, {0x1e78, 0x1e78}, {0x1e7a, 0x1e7a}, 
00578     {0x1e7c, 0x1e7c}, {0x1e7e, 0x1e7e}, {0x1e80, 0x1e80}, {0x1e82, 0x1e82}, 
00579     {0x1e84, 0x1e84}, {0x1e86, 0x1e86}, {0x1e88, 0x1e88}, {0x1e8a, 0x1e8a}, 
00580     {0x1e8c, 0x1e8c}, {0x1e8e, 0x1e8e}, {0x1e90, 0x1e90}, {0x1e92, 0x1e92}, 
00581     {0x1e94, 0x1e94}, {0x1ea0, 0x1ea0}, {0x1ea2, 0x1ea2}, {0x1ea4, 0x1ea4}, 
00582     {0x1ea6, 0x1ea6}, {0x1ea8, 0x1ea8}, {0x1eaa, 0x1eaa}, {0x1eac, 0x1eac}, 
00583     {0x1eae, 0x1eae}, {0x1eb0, 0x1eb0}, {0x1eb2, 0x1eb2}, {0x1eb4, 0x1eb4}, 
00584     {0x1eb6, 0x1eb6}, {0x1eb8, 0x1eb8}, {0x1eba, 0x1eba}, {0x1ebc, 0x1ebc}, 
00585     {0x1ebe, 0x1ebe}, {0x1ec0, 0x1ec0}, {0x1ec2, 0x1ec2}, {0x1ec4, 0x1ec4}, 
00586     {0x1ec6, 0x1ec6}, {0x1ec8, 0x1ec8}, {0x1eca, 0x1eca}, {0x1ecc, 0x1ecc}, 
00587     {0x1ece, 0x1ece}, {0x1ed0, 0x1ed0}, {0x1ed2, 0x1ed2}, {0x1ed4, 0x1ed4}, 
00588     {0x1ed6, 0x1ed6}, {0x1ed8, 0x1ed8}, {0x1eda, 0x1eda}, {0x1edc, 0x1edc}, 
00589     {0x1ede, 0x1ede}, {0x1ee0, 0x1ee0}, {0x1ee2, 0x1ee2}, {0x1ee4, 0x1ee4}, 
00590     {0x1ee6, 0x1ee6}, {0x1ee8, 0x1ee8}, {0x1eea, 0x1eea}, {0x1eec, 0x1eec}, 
00591     {0x1eee, 0x1eee}, {0x1ef0, 0x1ef0}, {0x1ef2, 0x1ef2}, {0x1ef4, 0x1ef4}, 
00592     {0x1ef6, 0x1ef6}, {0x1ef8, 0x1ef8}, {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d}, 
00593     {0x1f28, 0x1f2f}, {0x1f38, 0x1f3f}, {0x1f48, 0x1f4d}, {0x1f59, 0x1f59}, 
00594     {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f5f}, {0x1f68, 0x1f6f}, 
00595     {0x1fb8, 0x1fbb}, {0x1fc8, 0x1fcb}, {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec}, 
00596     {0x1ff8, 0x1ffb}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210b, 0x210d}, 
00597     {0x2110, 0x2112}, {0x2115, 0x2115}, {0x2119, 0x211d}, {0x2124, 0x2124}, 
00598     {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x212d}, {0x2130, 0x2131}, 
00599     {0x2133, 0x2133}, {0x213e, 0x213f}, {0x2145, 0x2145}, {0xff21, 0xff3a} };
00600 static const xmlChLRange xmlLuL[] = {{0x10400, 0x10427}, {0x1d400, 0x1d419}, 
00601     {0x1d434, 0x1d44d}, {0x1d468, 0x1d481}, {0x1d49c, 0x1d49c}, 
00602     {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, 
00603     {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b5}, {0x1d4d0, 0x1d4e9}, 
00604     {0x1d504, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, 
00605     {0x1d516, 0x1d51c}, {0x1d538, 0x1d539}, {0x1d53b, 0x1d53e}, 
00606     {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, 
00607     {0x1d56c, 0x1d585}, {0x1d5a0, 0x1d5b9}, {0x1d5d4, 0x1d5ed}, 
00608     {0x1d608, 0x1d621}, {0x1d63c, 0x1d655}, {0x1d670, 0x1d689}, 
00609     {0x1d6a8, 0x1d6c0}, {0x1d6e2, 0x1d6fa}, {0x1d71c, 0x1d734}, 
00610     {0x1d756, 0x1d76e}, {0x1d790, 0x1d7a8} };
00611 static xmlChRangeGroup xmlLuG = {390,31,xmlLuS,xmlLuL};
00612 
00613 static const xmlChSRange xmlMS[] = {{0x300, 0x357}, {0x35d, 0x36f}, 
00614     {0x483, 0x486}, {0x488, 0x489}, {0x591, 0x5a1}, {0x5a3, 0x5b9}, 
00615     {0x5bb, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, {0x5c4, 0x5c4}, 
00616     {0x610, 0x615}, {0x64b, 0x658}, {0x670, 0x670}, {0x6d6, 0x6dc}, 
00617     {0x6de, 0x6e4}, {0x6e7, 0x6e8}, {0x6ea, 0x6ed}, {0x711, 0x711}, 
00618     {0x730, 0x74a}, {0x7a6, 0x7b0}, {0x901, 0x903}, {0x93c, 0x93c}, 
00619     {0x93e, 0x94d}, {0x951, 0x954}, {0x962, 0x963}, {0x981, 0x983}, 
00620     {0x9bc, 0x9bc}, {0x9be, 0x9c4}, {0x9c7, 0x9c8}, {0x9cb, 0x9cd}, 
00621     {0x9d7, 0x9d7}, {0x9e2, 0x9e3}, {0xa01, 0xa03}, {0xa3c, 0xa3c}, 
00622     {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa70, 0xa71}, 
00623     {0xa81, 0xa83}, {0xabc, 0xabc}, {0xabe, 0xac5}, {0xac7, 0xac9}, 
00624     {0xacb, 0xacd}, {0xae2, 0xae3}, {0xb01, 0xb03}, {0xb3c, 0xb3c}, 
00625     {0xb3e, 0xb43}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, {0xb56, 0xb57}, 
00626     {0xb82, 0xb82}, {0xbbe, 0xbc2}, {0xbc6, 0xbc8}, {0xbca, 0xbcd}, 
00627     {0xbd7, 0xbd7}, {0xc01, 0xc03}, {0xc3e, 0xc44}, {0xc46, 0xc48}, 
00628     {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc82, 0xc83}, {0xcbc, 0xcbc}, 
00629     {0xcbe, 0xcc4}, {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, 
00630     {0xd02, 0xd03}, {0xd3e, 0xd43}, {0xd46, 0xd48}, {0xd4a, 0xd4d}, 
00631     {0xd57, 0xd57}, {0xd82, 0xd83}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, 
00632     {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xdf2, 0xdf3}, {0xe31, 0xe31}, 
00633     {0xe34, 0xe3a}, {0xe47, 0xe4e}, {0xeb1, 0xeb1}, {0xeb4, 0xeb9}, 
00634     {0xebb, 0xebc}, {0xec8, 0xecd}, {0xf18, 0xf19}, {0xf35, 0xf35}, 
00635     {0xf37, 0xf37}, {0xf39, 0xf39}, {0xf3e, 0xf3f}, {0xf71, 0xf84}, 
00636     {0xf86, 0xf87}, {0xf90, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, 
00637     {0x102c, 0x1032}, {0x1036, 0x1039}, {0x1056, 0x1059}, {0x1712, 0x1714}, 
00638     {0x1732, 0x1734}, {0x1752, 0x1753}, {0x1772, 0x1773}, {0x17b6, 0x17d3}, 
00639     {0x17dd, 0x17dd}, {0x180b, 0x180d}, {0x18a9, 0x18a9}, {0x1920, 0x192b}, 
00640     {0x1930, 0x193b}, {0x20d0, 0x20ea}, {0x302a, 0x302f}, {0x3099, 0x309a}, 
00641     {0xfb1e, 0xfb1e}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe23} };
00642 static const xmlChLRange xmlML[] = {{0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, 
00643     {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, 
00644     {0xe0100, 0xe01ef} };
00645 static xmlChRangeGroup xmlMG = {113,6,xmlMS,xmlML};
00646 
00647 static const xmlChSRange xmlMcS[] = {{0x903, 0x903}, {0x93e, 0x940}, 
00648     {0x949, 0x94c}, {0x982, 0x983}, {0x9be, 0x9c0}, {0x9c7, 0x9c8}, 
00649     {0x9cb, 0x9cc}, {0x9d7, 0x9d7}, {0xa03, 0xa03}, {0xa3e, 0xa40}, 
00650     {0xa83, 0xa83}, {0xabe, 0xac0}, {0xac9, 0xac9}, {0xacb, 0xacc}, 
00651     {0xb02, 0xb03}, {0xb3e, 0xb3e}, {0xb40, 0xb40}, {0xb47, 0xb48}, 
00652     {0xb4b, 0xb4c}, {0xb57, 0xb57}, {0xbbe, 0xbbf}, {0xbc1, 0xbc2}, 
00653     {0xbc6, 0xbc8}, {0xbca, 0xbcc}, {0xbd7, 0xbd7}, {0xc01, 0xc03}, 
00654     {0xc41, 0xc44}, {0xc82, 0xc83}, {0xcbe, 0xcbe}, {0xcc0, 0xcc4}, 
00655     {0xcc7, 0xcc8}, {0xcca, 0xccb}, {0xcd5, 0xcd6}, {0xd02, 0xd03}, 
00656     {0xd3e, 0xd40}, {0xd46, 0xd48}, {0xd4a, 0xd4c}, {0xd57, 0xd57}, 
00657     {0xd82, 0xd83}, {0xdcf, 0xdd1}, {0xdd8, 0xddf}, {0xdf2, 0xdf3}, 
00658     {0xf3e, 0xf3f}, {0xf7f, 0xf7f}, {0x102c, 0x102c}, {0x1031, 0x1031}, 
00659     {0x1038, 0x1038}, {0x1056, 0x1057}, {0x17b6, 0x17b6}, {0x17be, 0x17c5}, 
00660     {0x17c7, 0x17c8}, {0x1923, 0x1926}, {0x1929, 0x192b}, {0x1930, 0x1931}, 
00661     {0x1933, 0x1938} };
00662 static const xmlChLRange xmlMcL[] = {{0x1d165, 0x1d166}, {0x1d16d, 0x1d172} };
00663 static xmlChRangeGroup xmlMcG = {55,2,xmlMcS,xmlMcL};
00664 
00665 static const xmlChSRange xmlMnS[] = {{0x300, 0x357}, {0x35d, 0x36f}, 
00666     {0x483, 0x486}, {0x591, 0x5a1}, {0x5a3, 0x5b9}, {0x5bb, 0x5bd}, 
00667     {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, {0x5c4, 0x5c4}, {0x610, 0x615}, 
00668     {0x64b, 0x658}, {0x670, 0x670}, {0x6d6, 0x6dc}, {0x6df, 0x6e4}, 
00669     {0x6e7, 0x6e8}, {0x6ea, 0x6ed}, {0x711, 0x711}, {0x730, 0x74a}, 
00670     {0x7a6, 0x7b0}, {0x901, 0x902}, {0x93c, 0x93c}, {0x941, 0x948}, 
00671     {0x94d, 0x94d}, {0x951, 0x954}, {0x962, 0x963}, {0x981, 0x981}, 
00672     {0x9bc, 0x9bc}, {0x9c1, 0x9c4}, {0x9cd, 0x9cd}, {0x9e2, 0x9e3}, 
00673     {0xa01, 0xa02}, {0xa3c, 0xa3c}, {0xa41, 0xa42}, {0xa47, 0xa48}, 
00674     {0xa4b, 0xa4d}, {0xa70, 0xa71}, {0xa81, 0xa82}, {0xabc, 0xabc}, 
00675     {0xac1, 0xac5}, {0xac7, 0xac8}, {0xacd, 0xacd}, {0xae2, 0xae3}, 
00676     {0xb01, 0xb01}, {0xb3c, 0xb3c}, {0xb3f, 0xb3f}, {0xb41, 0xb43}, 
00677     {0xb4d, 0xb4d}, {0xb56, 0xb56}, {0xb82, 0xb82}, {0xbc0, 0xbc0}, 
00678     {0xbcd, 0xbcd}, {0xc3e, 0xc40}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, 
00679     {0xc55, 0xc56}, {0xcbc, 0xcbc}, {0xcbf, 0xcbf}, {0xcc6, 0xcc6}, 
00680     {0xccc, 0xccd}, {0xd41, 0xd43}, {0xd4d, 0xd4d}, {0xdca, 0xdca}, 
00681     {0xdd2, 0xdd4}, {0xdd6, 0xdd6}, {0xe31, 0xe31}, {0xe34, 0xe3a}, 
00682     {0xe47, 0xe4e}, {0xeb1, 0xeb1}, {0xeb4, 0xeb9}, {0xebb, 0xebc}, 
00683     {0xec8, 0xecd}, {0xf18, 0xf19}, {0xf35, 0xf35}, {0xf37, 0xf37}, 
00684     {0xf39, 0xf39}, {0xf71, 0xf7e}, {0xf80, 0xf84}, {0xf86, 0xf87}, 
00685     {0xf90, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x102d, 0x1030}, 
00686     {0x1032, 0x1032}, {0x1036, 0x1037}, {0x1039, 0x1039}, {0x1058, 0x1059}, 
00687     {0x1712, 0x1714}, {0x1732, 0x1734}, {0x1752, 0x1753}, {0x1772, 0x1773}, 
00688     {0x17b7, 0x17bd}, {0x17c6, 0x17c6}, {0x17c9, 0x17d3}, {0x17dd, 0x17dd}, 
00689     {0x180b, 0x180d}, {0x18a9, 0x18a9}, {0x1920, 0x1922}, {0x1927, 0x1928}, 
00690     {0x1932, 0x1932}, {0x1939, 0x193b}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, 
00691     {0x20e5, 0x20ea}, {0x302a, 0x302f}, {0x3099, 0x309a}, {0xfb1e, 0xfb1e}, 
00692     {0xfe00, 0xfe0f}, {0xfe20, 0xfe23} };
00693 static const xmlChLRange xmlMnL[] = {{0x1d167, 0x1d169}, {0x1d17b, 0x1d182}, 
00694     {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0xe0100, 0xe01ef} };
00695 static xmlChRangeGroup xmlMnG = {108,5,xmlMnS,xmlMnL};
00696 
00697 static const xmlChSRange xmlNS[] = {{0x30, 0x39}, {0xb2, 0xb3}, 
00698     {0xb9, 0xb9}, {0xbc, 0xbe}, {0x660, 0x669}, {0x6f0, 0x6f9}, 
00699     {0x966, 0x96f}, {0x9e6, 0x9ef}, {0x9f4, 0x9f9}, {0xa66, 0xa6f}, 
00700     {0xae6, 0xaef}, {0xb66, 0xb6f}, {0xbe7, 0xbf2}, {0xc66, 0xc6f}, 
00701     {0xce6, 0xcef}, {0xd66, 0xd6f}, {0xe50, 0xe59}, {0xed0, 0xed9}, 
00702     {0xf20, 0xf33}, {0x1040, 0x1049}, {0x1369, 0x137c}, {0x16ee, 0x16f0}, 
00703     {0x17e0, 0x17e9}, {0x17f0, 0x17f9}, {0x1810, 0x1819}, {0x1946, 0x194f}, 
00704     {0x2070, 0x2070}, {0x2074, 0x2079}, {0x2080, 0x2089}, {0x2153, 0x2183}, 
00705     {0x2460, 0x249b}, {0x24ea, 0x24ff}, {0x2776, 0x2793}, {0x3007, 0x3007}, 
00706     {0x3021, 0x3029}, {0x3038, 0x303a}, {0x3192, 0x3195}, {0x3220, 0x3229}, 
00707     {0x3251, 0x325f}, {0x3280, 0x3289}, {0x32b1, 0x32bf}, {0xff10, 0xff19} };
00708 static const xmlChLRange xmlNL[] = {{0x10107, 0x10133}, {0x10320, 0x10323}, 
00709     {0x1034a, 0x1034a}, {0x104a0, 0x104a9}, {0x1d7ce, 0x1d7ff} };
00710 static xmlChRangeGroup xmlNG = {42,5,xmlNS,xmlNL};
00711 
00712 static const xmlChSRange xmlNdS[] = {{0x30, 0x39}, {0x660, 0x669}, 
00713     {0x6f0, 0x6f9}, {0x966, 0x96f}, {0x9e6, 0x9ef}, {0xa66, 0xa6f}, 
00714     {0xae6, 0xaef}, {0xb66, 0xb6f}, {0xbe7, 0xbef}, {0xc66, 0xc6f}, 
00715     {0xce6, 0xcef}, {0xd66, 0xd6f}, {0xe50, 0xe59}, {0xed0, 0xed9}, 
00716     {0xf20, 0xf29}, {0x1040, 0x1049}, {0x1369, 0x1371}, {0x17e0, 0x17e9}, 
00717     {0x1810, 0x1819}, {0x1946, 0x194f}, {0xff10, 0xff19} };
00718 static const xmlChLRange xmlNdL[] = {{0x104a0, 0x104a9}, {0x1d7ce, 0x1d7ff} };
00719 static xmlChRangeGroup xmlNdG = {21,2,xmlNdS,xmlNdL};
00720 
00721 static const xmlChSRange xmlNoS[] = {{0xb2, 0xb3}, {0xb9, 0xb9}, 
00722     {0xbc, 0xbe}, {0x9f4, 0x9f9}, {0xbf0, 0xbf2}, {0xf2a, 0xf33}, 
00723     {0x1372, 0x137c}, {0x17f0, 0x17f9}, {0x2070, 0x2070}, {0x2074, 0x2079}, 
00724     {0x2080, 0x2089}, {0x2153, 0x215f}, {0x2460, 0x249b}, {0x24ea, 0x24ff}, 
00725     {0x2776, 0x2793}, {0x3192, 0x3195}, {0x3220, 0x3229}, {0x3251, 0x325f}, 
00726     {0x3280, 0x3289}, {0x32b1, 0x32bf} };
00727 static const xmlChLRange xmlNoL[] = {{0x10107, 0x10133}, {0x10320, 0x10323} };
00728 static xmlChRangeGroup xmlNoG = {20,2,xmlNoS,xmlNoL};
00729 
00730 static const xmlChSRange xmlPS[] = {{0x21, 0x23}, {0x25, 0x2a}, 
00731     {0x2c, 0x2f}, {0x3a, 0x3b}, {0x3f, 0x40}, {0x5b, 0x5d}, {0x5f, 0x5f}, 
00732     {0x7b, 0x7b}, {0x7d, 0x7d}, {0xa1, 0xa1}, {0xab, 0xab}, {0xb7, 0xb7}, 
00733     {0xbb, 0xbb}, {0xbf, 0xbf}, {0x37e, 0x37e}, {0x387, 0x387}, 
00734     {0x55a, 0x55f}, {0x589, 0x58a}, {0x5be, 0x5be}, {0x5c0, 0x5c0}, 
00735     {0x5c3, 0x5c3}, {0x5f3, 0x5f4}, {0x60c, 0x60d}, {0x61b, 0x61b}, 
00736     {0x61f, 0x61f}, {0x66a, 0x66d}, {0x6d4, 0x6d4}, {0x700, 0x70d}, 
00737     {0x964, 0x965}, {0x970, 0x970}, {0xdf4, 0xdf4}, {0xe4f, 0xe4f}, 
00738     {0xe5a, 0xe5b}, {0xf04, 0xf12}, {0xf3a, 0xf3d}, {0xf85, 0xf85}, 
00739     {0x104a, 0x104f}, {0x10fb, 0x10fb}, {0x1361, 0x1368}, {0x166d, 0x166e}, 
00740     {0x169b, 0x169c}, {0x16eb, 0x16ed}, {0x1735, 0x1736}, {0x17d4, 0x17d6}, 
00741     {0x17d8, 0x17da}, {0x1800, 0x180a}, {0x1944, 0x1945}, {0x2010, 0x2027}, 
00742     {0x2030, 0x2043}, {0x2045, 0x2051}, {0x2053, 0x2054}, {0x2057, 0x2057}, 
00743     {0x207d, 0x207e}, {0x208d, 0x208e}, {0x2329, 0x232a}, {0x23b4, 0x23b6}, 
00744     {0x2768, 0x2775}, {0x27e6, 0x27eb}, {0x2983, 0x2998}, {0x29d8, 0x29db}, 
00745     {0x29fc, 0x29fd}, {0x3001, 0x3003}, {0x3008, 0x3011}, {0x3014, 0x301f}, 
00746     {0x3030, 0x3030}, {0x303d, 0x303d}, {0x30a0, 0x30a0}, {0x30fb, 0x30fb}, 
00747     {0xfd3e, 0xfd3f}, {0xfe30, 0xfe52}, {0xfe54, 0xfe61}, {0xfe63, 0xfe63}, 
00748     {0xfe68, 0xfe68}, {0xfe6a, 0xfe6b}, {0xff01, 0xff03}, {0xff05, 0xff0a}, 
00749     {0xff0c, 0xff0f}, {0xff1a, 0xff1b}, {0xff1f, 0xff20}, {0xff3b, 0xff3d}, 
00750     {0xff3f, 0xff3f}, {0xff5b, 0xff5b}, {0xff5d, 0xff5d}, {0xff5f, 0xff65} };
00751 static const xmlChLRange xmlPL[] = {{0x10100, 0x10101}, {0x1039f, 0x1039f} };
00752 static xmlChRangeGroup xmlPG = {84,2,xmlPS,xmlPL};
00753 
00754 static const xmlChSRange xmlPdS[] = {{0x2d, 0x2d}, {0x58a, 0x58a}, 
00755     {0x1806, 0x1806}, {0x2010, 0x2015}, {0x301c, 0x301c}, {0x3030, 0x3030}, 
00756     {0x30a0, 0x30a0}, {0xfe31, 0xfe32}, {0xfe58, 0xfe58}, {0xfe63, 0xfe63}, 
00757     {0xff0d, 0xff0d} };
00758 static xmlChRangeGroup xmlPdG = {11,0,xmlPdS,NULL};
00759 
00760 static const xmlChSRange xmlPeS[] = {{0x29, 0x29}, {0x5d, 0x5d}, 
00761     {0x7d, 0x7d}, {0xf3b, 0xf3b}, {0xf3d, 0xf3d}, {0x169c, 0x169c}, 
00762     {0x2046, 0x2046}, {0x207e, 0x207e}, {0x208e, 0x208e}, {0x232a, 0x232a}, 
00763     {0x23b5, 0x23b5}, {0x2769, 0x2769}, {0x276b, 0x276b}, {0x276d, 0x276d}, 
00764     {0x276f, 0x276f}, {0x2771, 0x2771}, {0x2773, 0x2773}, {0x2775, 0x2775}, 
00765     {0x27e7, 0x27e7}, {0x27e9, 0x27e9}, {0x27eb, 0x27eb}, {0x2984, 0x2984}, 
00766     {0x2986, 0x2986}, {0x2988, 0x2988}, {0x298a, 0x298a}, {0x298c, 0x298c}, 
00767     {0x298e, 0x298e}, {0x2990, 0x2990}, {0x2992, 0x2992}, {0x2994, 0x2994}, 
00768     {0x2996, 0x2996}, {0x2998, 0x2998}, {0x29d9, 0x29d9}, {0x29db, 0x29db}, 
00769     {0x29fd, 0x29fd}, {0x3009, 0x3009}, {0x300b, 0x300b}, {0x300d, 0x300d}, 
00770     {0x300f, 0x300f}, {0x3011, 0x3011}, {0x3015, 0x3015}, {0x3017, 0x3017}, 
00771     {0x3019, 0x3019}, {0x301b, 0x301b}, {0x301e, 0x301f}, {0xfd3f, 0xfd3f}, 
00772     {0xfe36, 0xfe36}, {0xfe38, 0xfe38}, {0xfe3a, 0xfe3a}, {0xfe3c, 0xfe3c}, 
00773     {0xfe3e, 0xfe3e}, {0xfe40, 0xfe40}, {0xfe42, 0xfe42}, {0xfe44, 0xfe44}, 
00774     {0xfe48, 0xfe48}, {0xfe5a, 0xfe5a}, {0xfe5c, 0xfe5c}, {0xfe5e, 0xfe5e}, 
00775     {0xff09, 0xff09}, {0xff3d, 0xff3d}, {0xff5d, 0xff5d}, {0xff60, 0xff60}, 
00776     {0xff63, 0xff63} };
00777 static xmlChRangeGroup xmlPeG = {63,0,xmlPeS,NULL};
00778 
00779 static const xmlChSRange xmlPoS[] = {{0x21, 0x23}, {0x25, 0x27}, 
00780     {0x2a, 0x2a}, {0x2c, 0x2c}, {0x2e, 0x2f}, {0x3a, 0x3b}, {0x3f, 0x40}, 
00781     {0x5c, 0x5c}, {0xa1, 0xa1}, {0xb7, 0xb7}, {0xbf, 0xbf}, {0x37e, 0x37e}, 
00782     {0x387, 0x387}, {0x55a, 0x55f}, {0x589, 0x589}, {0x5be, 0x5be}, 
00783     {0x5c0, 0x5c0}, {0x5c3, 0x5c3}, {0x5f3, 0x5f4}, {0x60c, 0x60d}, 
00784     {0x61b, 0x61b}, {0x61f, 0x61f}, {0x66a, 0x66d}, {0x6d4, 0x6d4}, 
00785     {0x700, 0x70d}, {0x964, 0x965}, {0x970, 0x970}, {0xdf4, 0xdf4}, 
00786     {0xe4f, 0xe4f}, {0xe5a, 0xe5b}, {0xf04, 0xf12}, {0xf85, 0xf85}, 
00787     {0x104a, 0x104f}, {0x10fb, 0x10fb}, {0x1361, 0x1368}, {0x166d, 0x166e}, 
00788     {0x16eb, 0x16ed}, {0x1735, 0x1736}, {0x17d4, 0x17d6}, {0x17d8, 0x17da}, 
00789     {0x1800, 0x1805}, {0x1807, 0x180a}, {0x1944, 0x1945}, {0x2016, 0x2017}, 
00790     {0x2020, 0x2027}, {0x2030, 0x2038}, {0x203b, 0x203e}, {0x2041, 0x2043}, 
00791     {0x2047, 0x2051}, {0x2053, 0x2053}, {0x2057, 0x2057}, {0x23b6, 0x23b6}, 
00792     {0x3001, 0x3003}, {0x303d, 0x303d}, {0xfe30, 0xfe30}, {0xfe45, 0xfe46}, 
00793     {0xfe49, 0xfe4c}, {0xfe50, 0xfe52}, {0xfe54, 0xfe57}, {0xfe5f, 0xfe61}, 
00794     {0xfe68, 0xfe68}, {0xfe6a, 0xfe6b}, {0xff01, 0xff03}, {0xff05, 0xff07}, 
00795     {0xff0a, 0xff0a}, {0xff0c, 0xff0c}, {0xff0e, 0xff0f}, {0xff1a, 0xff1b}, 
00796     {0xff1f, 0xff20}, {0xff3c, 0xff3c}, {0xff61, 0xff61}, {0xff64, 0xff64} };
00797 static const xmlChLRange xmlPoL[] = {{0x10100, 0x10101}, {0x1039f, 0x1039f} };
00798 static xmlChRangeGroup xmlPoG = {72,2,xmlPoS,xmlPoL};
00799 
00800 static const xmlChSRange xmlPsS[] = {{0x28, 0x28}, {0x5b, 0x5b}, 
00801     {0x7b, 0x7b}, {0xf3a, 0xf3a}, {0xf3c, 0xf3c}, {0x169b, 0x169b}, 
00802     {0x201a, 0x201a}, {0x201e, 0x201e}, {0x2045, 0x2045}, {0x207d, 0x207d}, 
00803     {0x208d, 0x208d}, {0x2329, 0x2329}, {0x23b4, 0x23b4}, {0x2768, 0x2768}, 
00804     {0x276a, 0x276a}, {0x276c, 0x276c}, {0x276e, 0x276e}, {0x2770, 0x2770}, 
00805     {0x2772, 0x2772}, {0x2774, 0x2774}, {0x27e6, 0x27e6}, {0x27e8, 0x27e8}, 
00806     {0x27ea, 0x27ea}, {0x2983, 0x2983}, {0x2985, 0x2985}, {0x2987, 0x2987}, 
00807     {0x2989, 0x2989}, {0x298b, 0x298b}, {0x298d, 0x298d}, {0x298f, 0x298f}, 
00808     {0x2991, 0x2991}, {0x2993, 0x2993}, {0x2995, 0x2995}, {0x2997, 0x2997}, 
00809     {0x29d8, 0x29d8}, {0x29da, 0x29da}, {0x29fc, 0x29fc}, {0x3008, 0x3008}, 
00810     {0x300a, 0x300a}, {0x300c, 0x300c}, {0x300e, 0x300e}, {0x3010, 0x3010}, 
00811     {0x3014, 0x3014}, {0x3016, 0x3016}, {0x3018, 0x3018}, {0x301a, 0x301a}, 
00812     {0x301d, 0x301d}, {0xfd3e, 0xfd3e}, {0xfe35, 0xfe35}, {0xfe37, 0xfe37}, 
00813     {0xfe39, 0xfe39}, {0xfe3b, 0xfe3b}, {0xfe3d, 0xfe3d}, {0xfe3f, 0xfe3f}, 
00814     {0xfe41, 0xfe41}, {0xfe43, 0xfe43}, {0xfe47, 0xfe47}, {0xfe59, 0xfe59}, 
00815     {0xfe5b, 0xfe5b}, {0xfe5d, 0xfe5d}, {0xff08, 0xff08}, {0xff3b, 0xff3b}, 
00816     {0xff5b, 0xff5b}, {0xff5f, 0xff5f}, {0xff62, 0xff62} };
00817 static xmlChRangeGroup xmlPsG = {65,0,xmlPsS,NULL};
00818 
00819 static const xmlChSRange xmlSS[] = {{0x24, 0x24}, {0x2b, 0x2b}, 
00820     {0x3c, 0x3e}, {0x5e, 0x5e}, {0x60, 0x60}, {0x7c, 0x7c}, {0x7e, 0x7e}, 
00821     {0xa2, 0xa9}, {0xac, 0xac}, {0xae, 0xb1}, {0xb4, 0xb4}, {0xb6, 0xb6}, 
00822     {0xb8, 0xb8}, {0xd7, 0xd7}, {0xf7, 0xf7}, {0x2c2, 0x2c5}, 
00823     {0x2d2, 0x2df}, {0x2e5, 0x2ed}, {0x2ef, 0x2ff}, {0x374, 0x375}, 
00824     {0x384, 0x385}, {0x3f6, 0x3f6}, {0x482, 0x482}, {0x60e, 0x60f}, 
00825     {0x6e9, 0x6e9}, {0x6fd, 0x6fe}, {0x9f2, 0x9f3}, {0x9fa, 0x9fa}, 
00826     {0xaf1, 0xaf1}, {0xb70, 0xb70}, {0xbf3, 0xbfa}, {0xe3f, 0xe3f}, 
00827     {0xf01, 0xf03}, {0xf13, 0xf17}, {0xf1a, 0xf1f}, {0xf34, 0xf34}, 
00828     {0xf36, 0xf36}, {0xf38, 0xf38}, {0xfbe, 0xfc5}, {0xfc7, 0xfcc}, 
00829     {0xfcf, 0xfcf}, {0x17db, 0x17db}, {0x1940, 0x1940}, {0x19e0, 0x19ff}, 
00830     {0x1fbd, 0x1fbd}, {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, {0x1fdd, 0x1fdf}, 
00831     {0x1fed, 0x1fef}, {0x1ffd, 0x1ffe}, {0x2044, 0x2044}, {0x2052, 0x2052}, 
00832     {0x207a, 0x207c}, {0x208a, 0x208c}, {0x20a0, 0x20b1}, {0x2100, 0x2101}, 
00833     {0x2103, 0x2106}, {0x2108, 0x2109}, {0x2114, 0x2114}, {0x2116, 0x2118}, 
00834     {0x211e, 0x2123}, {0x2125, 0x2125}, {0x2127, 0x2127}, {0x2129, 0x2129}, 
00835     {0x212e, 0x212e}, {0x2132, 0x2132}, {0x213a, 0x213b}, {0x2140, 0x2144}, 
00836     {0x214a, 0x214b}, {0x2190, 0x2328}, {0x232b, 0x23b3}, {0x23b7, 0x23d0}, 
00837     {0x2400, 0x2426}, {0x2440, 0x244a}, {0x249c, 0x24e9}, {0x2500, 0x2617}, 
00838     {0x2619, 0x267d}, {0x2680, 0x2691}, {0x26a0, 0x26a1}, {0x2701, 0x2704}, 
00839     {0x2706, 0x2709}, {0x270c, 0x2727}, {0x2729, 0x274b}, {0x274d, 0x274d}, 
00840     {0x274f, 0x2752}, {0x2756, 0x2756}, {0x2758, 0x275e}, {0x2761, 0x2767}, 
00841     {0x2794, 0x2794}, {0x2798, 0x27af}, {0x27b1, 0x27be}, {0x27d0, 0x27e5}, 
00842     {0x27f0, 0x2982}, {0x2999, 0x29d7}, {0x29dc, 0x29fb}, {0x29fe, 0x2b0d}, 
00843     {0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, {0x2ff0, 0x2ffb}, 
00844     {0x3004, 0x3004}, {0x3012, 0x3013}, {0x3020, 0x3020}, {0x3036, 0x3037}, 
00845     {0x303e, 0x303f}, {0x309b, 0x309c}, {0x3190, 0x3191}, {0x3196, 0x319f}, 
00846     {0x3200, 0x321e}, {0x322a, 0x3243}, {0x3250, 0x3250}, {0x3260, 0x327d}, 
00847     {0x327f, 0x327f}, {0x328a, 0x32b0}, {0x32c0, 0x32fe}, {0x3300, 0x33ff}, 
00848     {0x4dc0, 0x4dff}, {0xa490, 0xa4c6}, {0xfb29, 0xfb29}, {0xfdfc, 0xfdfd}, 
00849     {0xfe62, 0xfe62}, {0xfe64, 0xfe66}, {0xfe69, 0xfe69}, {0xff04, 0xff04}, 
00850     {0xff0b, 0xff0b}, {0xff1c, 0xff1e}, {0xff3e, 0xff3e}, {0xff40, 0xff40}, 
00851     {0xff5c, 0xff5c}, {0xff5e, 0xff5e}, {0xffe0, 0xffe6}, {0xffe8, 0xffee}, 
00852     {0xfffc, 0xfffd} };
00853 static const xmlChLRange xmlSL[] = {{0x10102, 0x10102}, {0x10137, 0x1013f}, 
00854     {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d12a, 0x1d164}, 
00855     {0x1d16a, 0x1d16c}, {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9}, 
00856     {0x1d1ae, 0x1d1dd}, {0x1d300, 0x1d356}, {0x1d6c1, 0x1d6c1}, 
00857     {0x1d6db, 0x1d6db}, {0x1d6fb, 0x1d6fb}, {0x1d715, 0x1d715}, 
00858     {0x1d735, 0x1d735}, {0x1d74f, 0x1d74f}, {0x1d76f, 0x1d76f}, 
00859     {0x1d789, 0x1d789}, {0x1d7a9, 0x1d7a9}, {0x1d7c3, 0x1d7c3} };
00860 static xmlChRangeGroup xmlSG = {133,20,xmlSS,xmlSL};
00861 
00862 static const xmlChSRange xmlScS[] = {{0x24, 0x24}, {0xa2, 0xa5}, 
00863     {0x9f2, 0x9f3}, {0xaf1, 0xaf1}, {0xbf9, 0xbf9}, {0xe3f, 0xe3f}, 
00864     {0x17db, 0x17db}, {0x20a0, 0x20b1}, {0xfdfc, 0xfdfc}, {0xfe69, 0xfe69}, 
00865     {0xff04, 0xff04}, {0xffe0, 0xffe1}, {0xffe5, 0xffe6} };
00866 static xmlChRangeGroup xmlScG = {13,0,xmlScS,NULL};
00867 
00868 static const xmlChSRange xmlSkS[] = {{0x5e, 0x5e}, {0x60, 0x60}, 
00869     {0xa8, 0xa8}, {0xaf, 0xaf}, {0xb4, 0xb4}, {0xb8, 0xb8}, {0x2c2, 0x2c5}, 
00870     {0x2d2, 0x2df}, {0x2e5, 0x2ed}, {0x2ef, 0x2ff}, {0x374, 0x375}, 
00871     {0x384, 0x385}, {0x1fbd, 0x1fbd}, {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, 
00872     {0x1fdd, 0x1fdf}, {0x1fed, 0x1fef}, {0x1ffd, 0x1ffe}, {0x309b, 0x309c}, 
00873     {0xff3e, 0xff3e}, {0xff40, 0xff40}, {0xffe3, 0xffe3} };
00874 static xmlChRangeGroup xmlSkG = {22,0,xmlSkS,NULL};
00875 
00876 static const xmlChSRange xmlSmS[] = {{0x2b, 0x2b}, {0x3c, 0x3e}, 
00877     {0x7c, 0x7c}, {0x7e, 0x7e}, {0xac, 0xac}, {0xb1, 0xb1}, {0xd7, 0xd7}, 
00878     {0xf7, 0xf7}, {0x3f6, 0x3f6}, {0x2044, 0x2044}, {0x2052, 0x2052}, 
00879     {0x207a, 0x207c}, {0x208a, 0x208c}, {0x2140, 0x2144}, {0x214b, 0x214b}, 
00880     {0x2190, 0x2194}, {0x219a, 0x219b}, {0x21a0, 0x21a0}, {0x21a3, 0x21a3}, 
00881     {0x21a6, 0x21a6}, {0x21ae, 0x21ae}, {0x21ce, 0x21cf}, {0x21d2, 0x21d2}, 
00882     {0x21d4, 0x21d4}, {0x21f4, 0x22ff}, {0x2308, 0x230b}, {0x2320, 0x2321}, 
00883     {0x237c, 0x237c}, {0x239b, 0x23b3}, {0x25b7, 0x25b7}, {0x25c1, 0x25c1}, 
00884     {0x25f8, 0x25ff}, {0x266f, 0x266f}, {0x27d0, 0x27e5}, {0x27f0, 0x27ff}, 
00885     {0x2900, 0x2982}, {0x2999, 0x29d7}, {0x29dc, 0x29fb}, {0x29fe, 0x2aff}, 
00886     {0xfb29, 0xfb29}, {0xfe62, 0xfe62}, {0xfe64, 0xfe66}, {0xff0b, 0xff0b}, 
00887     {0xff1c, 0xff1e}, {0xff5c, 0xff5c}, {0xff5e, 0xff5e}, {0xffe2, 0xffe2}, 
00888     {0xffe9, 0xffec} };
00889 static const xmlChLRange xmlSmL[] = {{0x1d6c1, 0x1d6c1}, {0x1d6db, 0x1d6db}, 
00890     {0x1d6fb, 0x1d6fb}, {0x1d715, 0x1d715}, {0x1d735, 0x1d735}, 
00891     {0x1d74f, 0x1d74f}, {0x1d76f, 0x1d76f}, {0x1d789, 0x1d789}, 
00892     {0x1d7a9, 0x1d7a9}, {0x1d7c3, 0x1d7c3} };
00893 static xmlChRangeGroup xmlSmG = {48,10,xmlSmS,xmlSmL};
00894 
00895 static const xmlChSRange xmlSoS[] = {{0xa6, 0xa7}, {0xa9, 0xa9}, 
00896     {0xae, 0xae}, {0xb0, 0xb0}, {0xb6, 0xb6}, {0x482, 0x482}, 
00897     {0x60e, 0x60f}, {0x6e9, 0x6e9}, {0x6fd, 0x6fe}, {0x9fa, 0x9fa}, 
00898     {0xb70, 0xb70}, {0xbf3, 0xbf8}, {0xbfa, 0xbfa}, {0xf01, 0xf03}, 
00899     {0xf13, 0xf17}, {0xf1a, 0xf1f}, {0xf34, 0xf34}, {0xf36, 0xf36}, 
00900     {0xf38, 0xf38}, {0xfbe, 0xfc5}, {0xfc7, 0xfcc}, {0xfcf, 0xfcf}, 
00901     {0x1940, 0x1940}, {0x19e0, 0x19ff}, {0x2100, 0x2101}, {0x2103, 0x2106}, 
00902     {0x2108, 0x2109}, {0x2114, 0x2114}, {0x2116, 0x2118}, {0x211e, 0x2123}, 
00903     {0x2125, 0x2125}, {0x2127, 0x2127}, {0x2129, 0x2129}, {0x212e, 0x212e}, 
00904     {0x2132, 0x2132}, {0x213a, 0x213b}, {0x214a, 0x214a}, {0x2195, 0x2199}, 
00905     {0x219c, 0x219f}, {0x21a1, 0x21a2}, {0x21a4, 0x21a5}, {0x21a7, 0x21ad}, 
00906     {0x21af, 0x21cd}, {0x21d0, 0x21d1}, {0x21d3, 0x21d3}, {0x21d5, 0x21f3}, 
00907     {0x2300, 0x2307}, {0x230c, 0x231f}, {0x2322, 0x2328}, {0x232b, 0x237b}, 
00908     {0x237d, 0x239a}, {0x23b7, 0x23d0}, {0x2400, 0x2426}, {0x2440, 0x244a}, 
00909     {0x249c, 0x24e9}, {0x2500, 0x25b6}, {0x25b8, 0x25c0}, {0x25c2, 0x25f7}, 
00910     {0x2600, 0x2617}, {0x2619, 0x266e}, {0x2670, 0x267d}, {0x2680, 0x2691}, 
00911     {0x26a0, 0x26a1}, {0x2701, 0x2704}, {0x2706, 0x2709}, {0x270c, 0x2727}, 
00912     {0x2729, 0x274b}, {0x274d, 0x274d}, {0x274f, 0x2752}, {0x2756, 0x2756}, 
00913     {0x2758, 0x275e}, {0x2761, 0x2767}, {0x2794, 0x2794}, {0x2798, 0x27af}, 
00914     {0x27b1, 0x27be}, {0x2800, 0x28ff}, {0x2b00, 0x2b0d}, {0x2e80, 0x2e99}, 
00915     {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, {0x2ff0, 0x2ffb}, {0x3004, 0x3004}, 
00916     {0x3012, 0x3013}, {0x3020, 0x3020}, {0x3036, 0x3037}, {0x303e, 0x303f}, 
00917     {0x3190, 0x3191}, {0x3196, 0x319f}, {0x3200, 0x321e}, {0x322a, 0x3243}, 
00918     {0x3250, 0x3250}, {0x3260, 0x327d}, {0x327f, 0x327f}, {0x328a, 0x32b0}, 
00919     {0x32c0, 0x32fe}, {0x3300, 0x33ff}, {0x4dc0, 0x4dff}, {0xa490, 0xa4c6}, 
00920     {0xfdfd, 0xfdfd}, {0xffe4, 0xffe4}, {0xffe8, 0xffe8}, {0xffed, 0xffee}, 
00921     {0xfffc, 0xfffd} };
00922 static const xmlChLRange xmlSoL[] = {{0x10102, 0x10102}, {0x10137, 0x1013f}, 
00923     {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d12a, 0x1d164}, 
00924     {0x1d16a, 0x1d16c}, {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9}, 
00925     {0x1d1ae, 0x1d1dd}, {0x1d300, 0x1d356} };
00926 static xmlChRangeGroup xmlSoG = {103,10,xmlSoS,xmlSoL};
00927 
00928 static const xmlChSRange xmlZS[] = {{0x20, 0x20}, {0xa0, 0xa0}, 
00929     {0x1680, 0x1680}, {0x180e, 0x180e}, {0x2000, 0x200a}, {0x2028, 0x2029}, 
00930     {0x202f, 0x202f}, {0x205f, 0x205f}, {0x3000, 0x3000} };
00931 static xmlChRangeGroup xmlZG = {9,0,xmlZS,NULL};
00932 
00933 static xmlUnicodeNameTable xmlUnicodeBlockTbl = {xmlUnicodeBlocks, 128};
00934 static xmlUnicodeNameTable xmlUnicodeCatTbl = {xmlUnicodeCats, 36};
00935 
00945 static xmlIntFunc
00946 *xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname) {
00947     int low, high, mid, cmp;
00948     xmlUnicodeRange *sptr;
00949 
00950     if ((tptr == NULL) || (tname == NULL)) return(NULL);
00951 
00952     low = 0;
00953     high = tptr->numentries - 1;
00954     sptr = tptr->table;
00955     while (low <= high) {
00956     mid = (low + high) / 2;
00957     if ((cmp=strcmp(tname, sptr[mid].rangename)) == 0)
00958         return (sptr[mid].func);
00959     if (cmp < 0)
00960         high = mid - 1;
00961     else
00962         low = mid + 1;
00963     }
00964     return (NULL);    
00965 }
00966 
00975 int
00976 xmlUCSIsAegeanNumbers(int code) {
00977     return(((code >= 0x10100) && (code <= 0x1013F)));
00978 }
00979 
00988 int
00989 xmlUCSIsAlphabeticPresentationForms(int code) {
00990     return(((code >= 0xFB00) && (code <= 0xFB4F)));
00991 }
00992 
01001 int
01002 xmlUCSIsArabic(int code) {
01003     return(((code >= 0x0600) && (code <= 0x06FF)));
01004 }
01005 
01014 int
01015 xmlUCSIsArabicPresentationFormsA(int code) {
01016     return(((code >= 0xFB50) && (code <= 0xFDFF)));
01017 }
01018 
01027 int
01028 xmlUCSIsArabicPresentationFormsB(int code) {
01029     return(((code >= 0xFE70) && (code <= 0xFEFF)));
01030 }
01031 
01040 int
01041 xmlUCSIsArmenian(int code) {
01042     return(((code >= 0x0530) && (code <= 0x058F)));
01043 }
01044 
01053 int
01054 xmlUCSIsArrows(int code) {
01055     return(((code >= 0x2190) && (code <= 0x21FF)));
01056 }
01057 
01066 int
01067 xmlUCSIsBasicLatin(int code) {
01068     return(((code >= 0x0000) && (code <= 0x007F)));
01069 }
01070 
01079 int
01080 xmlUCSIsBengali(int code) {
01081     return(((code >= 0x0980) && (code <= 0x09FF)));
01082 }
01083 
01092 int
01093 xmlUCSIsBlockElements(int code) {
01094     return(((code >= 0x2580) && (code <= 0x259F)));
01095 }
01096 
01105 int
01106 xmlUCSIsBopomofo(int code) {
01107     return(((code >= 0x3100) && (code <= 0x312F)));
01108 }
01109 
01118 int
01119 xmlUCSIsBopomofoExtended(int code) {
01120     return(((code >= 0x31A0) && (code <= 0x31BF)));
01121 }
01122 
01131 int
01132 xmlUCSIsBoxDrawing(int code) {
01133     return(((code >= 0x2500) && (code <= 0x257F)));
01134 }
01135 
01144 int
01145 xmlUCSIsBraillePatterns(int code) {
01146     return(((code >= 0x2800) && (code <= 0x28FF)));
01147 }
01148 
01157 int
01158 xmlUCSIsBuhid(int code) {
01159     return(((code >= 0x1740) && (code <= 0x175F)));
01160 }
01161 
01170 int
01171 xmlUCSIsByzantineMusicalSymbols(int code) {
01172     return(((code >= 0x1D000) && (code <= 0x1D0FF)));
01173 }
01174 
01183 int
01184 xmlUCSIsCJKCompatibility(int code) {
01185     return(((code >= 0x3300) && (code <= 0x33FF)));
01186 }
01187 
01196 int
01197 xmlUCSIsCJKCompatibilityForms(int code) {
01198     return(((code >= 0xFE30) && (code <= 0xFE4F)));
01199 }
01200 
01209 int
01210 xmlUCSIsCJKCompatibilityIdeographs(int code) {
01211     return(((code >= 0xF900) && (code <= 0xFAFF)));
01212 }
01213 
01222 int
01223 xmlUCSIsCJKCompatibilityIdeographsSupplement(int code) {
01224     return(((code >= 0x2F800) && (code <= 0x2FA1F)));
01225 }
01226 
01235 int
01236 xmlUCSIsCJKRadicalsSupplement(int code) {
01237     return(((code >= 0x2E80) && (code <= 0x2EFF)));
01238 }
01239 
01248 int
01249 xmlUCSIsCJKSymbolsandPunctuation(int code) {
01250     return(((code >= 0x3000) && (code <= 0x303F)));
01251 }
01252 
01261 int
01262 xmlUCSIsCJKUnifiedIdeographs(int code) {
01263     return(((code >= 0x4E00) && (code <= 0x9FFF)));
01264 }
01265 
01274 int
01275 xmlUCSIsCJKUnifiedIdeographsExtensionA(int code) {
01276     return(((code >= 0x3400) && (code <= 0x4DBF)));
01277 }
01278 
01287 int
01288 xmlUCSIsCJKUnifiedIdeographsExtensionB(int code) {
01289     return(((code >= 0x20000) && (code <= 0x2A6DF)));
01290 }
01291 
01300 int
01301 xmlUCSIsCherokee(int code) {
01302     return(((code >= 0x13A0) && (code <= 0x13FF)));
01303 }
01304 
01313 int
01314 xmlUCSIsCombiningDiacriticalMarks(int code) {
01315     return(((code >= 0x0300) && (code <= 0x036F)));
01316 }
01317 
01326 int
01327 xmlUCSIsCombiningDiacriticalMarksforSymbols(int code) {
01328     return(((code >= 0x20D0) && (code <= 0x20FF)));
01329 }
01330 
01339 int
01340 xmlUCSIsCombiningHalfMarks(int code) {
01341     return(((code >= 0xFE20) && (code <= 0xFE2F)));
01342 }
01343 
01352 int
01353 xmlUCSIsCombiningMarksforSymbols(int code) {
01354     return(((code >= 0x20D0) && (code <= 0x20FF)));
01355 }
01356 
01365 int
01366 xmlUCSIsControlPictures(int code) {
01367     return(((code >= 0x2400) && (code <= 0x243F)));
01368 }
01369 
01378 int
01379 xmlUCSIsCurrencySymbols(int code) {
01380     return(((code >= 0x20A0) && (code <= 0x20CF)));
01381 }
01382 
01391 int
01392 xmlUCSIsCypriotSyllabary(int code) {
01393     return(((code >= 0x10800) && (code <= 0x1083F)));
01394 }
01395 
01404 int
01405 xmlUCSIsCyrillic(int code) {
01406     return(((code >= 0x0400) && (code <= 0x04FF)));
01407 }
01408 
01417 int
01418 xmlUCSIsCyrillicSupplement(int code) {
01419     return(((code >= 0x0500) && (code <= 0x052F)));
01420 }
01421 
01430 int
01431 xmlUCSIsDeseret(int code) {
01432     return(((code >= 0x10400) && (code <= 0x1044F)));
01433 }
01434 
01443 int
01444 xmlUCSIsDevanagari(int code) {
01445     return(((code >= 0x0900) && (code <= 0x097F)));
01446 }
01447 
01456 int
01457 xmlUCSIsDingbats(int code) {
01458     return(((code >= 0x2700) && (code <= 0x27BF)));
01459 }
01460 
01469 int
01470 xmlUCSIsEnclosedAlphanumerics(int code) {
01471     return(((code >= 0x2460) && (code <= 0x24FF)));
01472 }
01473 
01482 int
01483 xmlUCSIsEnclosedCJKLettersandMonths(int code) {
01484     return(((code >= 0x3200) && (code <= 0x32FF)));
01485 }
01486 
01495 int
01496 xmlUCSIsEthiopic(int code) {
01497     return(((code >= 0x1200) && (code <= 0x137F)));
01498 }
01499 
01508 int
01509 xmlUCSIsGeneralPunctuation(int code) {
01510     return(((code >= 0x2000) && (code <= 0x206F)));
01511 }
01512 
01521 int
01522 xmlUCSIsGeometricShapes(int code) {
01523     return(((code >= 0x25A0) && (code <= 0x25FF)));
01524 }
01525 
01534 int
01535 xmlUCSIsGeorgian(int code) {
01536     return(((code >= 0x10A0) && (code <= 0x10FF)));
01537 }
01538 
01547 int
01548 xmlUCSIsGothic(int code) {
01549     return(((code >= 0x10330) && (code <= 0x1034F)));
01550 }
01551 
01560 int
01561 xmlUCSIsGreek(int code) {
01562     return(((code >= 0x0370) && (code <= 0x03FF)));
01563 }
01564 
01573 int
01574 xmlUCSIsGreekExtended(int code) {
01575     return(((code >= 0x1F00) && (code <= 0x1FFF)));
01576 }
01577 
01586 int
01587 xmlUCSIsGreekandCoptic(int code) {
01588     return(((code >= 0x0370) && (code <= 0x03FF)));
01589 }
01590 
01599 int
01600 xmlUCSIsGujarati(int code) {
01601     return(((code >= 0x0A80) && (code <= 0x0AFF)));
01602 }
01603 
01612 int
01613 xmlUCSIsGurmukhi(int code) {
01614     return(((code >= 0x0A00) && (code <= 0x0A7F)));
01615 }
01616 
01625 int
01626 xmlUCSIsHalfwidthandFullwidthForms(int code) {
01627     return(((code >= 0xFF00) && (code <= 0xFFEF)));
01628 }
01629 
01638 int
01639 xmlUCSIsHangulCompatibilityJamo(int code) {
01640     return(((code >= 0x3130) && (code <= 0x318F)));
01641 }
01642 
01651 int
01652 xmlUCSIsHangulJamo(int code) {
01653     return(((code >= 0x1100) && (code <= 0x11FF)));
01654 }
01655 
01664 int
01665 xmlUCSIsHangulSyllables(int code) {
01666     return(((code >= 0xAC00) && (code <= 0xD7AF)));
01667 }
01668 
01677 int
01678 xmlUCSIsHanunoo(int code) {
01679     return(((code >= 0x1720) && (code <= 0x173F)));
01680 }
01681 
01690 int
01691 xmlUCSIsHebrew(int code) {
01692     return(((code >= 0x0590) && (code <= 0x05FF)));
01693 }
01694 
01703 int
01704 xmlUCSIsHighPrivateUseSurrogates(int code) {
01705     return(((code >= 0xDB80) && (code <= 0xDBFF)));
01706 }
01707 
01716 int
01717 xmlUCSIsHighSurrogates(int code) {
01718     return(((code >= 0xD800) && (code <= 0xDB7F)));
01719 }
01720 
01729 int
01730 xmlUCSIsHiragana(int code) {
01731     return(((code >= 0x3040) && (code <= 0x309F)));
01732 }
01733 
01742 int
01743 xmlUCSIsIPAExtensions(int code) {
01744     return(((code >= 0x0250) && (code <= 0x02AF)));
01745 }
01746 
01755 int
01756 xmlUCSIsIdeographicDescriptionCharacters(int code) {
01757     return(((code >= 0x2FF0) && (code <= 0x2FFF)));
01758 }
01759 
01768 int
01769 xmlUCSIsKanbun(int code) {
01770     return(((code >= 0x3190) && (code <= 0x319F)));
01771 }
01772 
01781 int
01782 xmlUCSIsKangxiRadicals(int code) {
01783     return(((code >= 0x2F00) && (code <= 0x2FDF)));
01784 }
01785 
01794 int
01795 xmlUCSIsKannada(int code) {
01796     return(((code >= 0x0C80) && (code <= 0x0CFF)));
01797 }
01798 
01807 int
01808 xmlUCSIsKatakana(int code) {
01809     return(((code >= 0x30A0) && (code <= 0x30FF)));
01810 }
01811 
01820 int
01821 xmlUCSIsKatakanaPhoneticExtensions(int code) {
01822     return(((code >= 0x31F0) && (code <= 0x31FF)));
01823 }
01824 
01833 int
01834 xmlUCSIsKhmer(int code) {
01835     return(((code >= 0x1780) && (code <= 0x17FF)));
01836 }
01837 
01846 int
01847 xmlUCSIsKhmerSymbols(int code) {
01848     return(((code >= 0x19E0) && (code <= 0x19FF)));
01849 }
01850 
01859 int
01860 xmlUCSIsLao(int code) {
01861     return(((code >= 0x0E80) && (code <= 0x0EFF)));
01862 }
01863 
01872 int
01873 xmlUCSIsLatin1Supplement(int code) {
01874     return(((code >= 0x0080) && (code <= 0x00FF)));
01875 }
01876 
01885 int
01886 xmlUCSIsLatinExtendedA(int code) {
01887     return(((code >= 0x0100) && (code <= 0x017F)));
01888 }
01889 
01898 int
01899 xmlUCSIsLatinExtendedB(int code) {
01900     return(((code >= 0x0180) && (code <= 0x024F)));
01901 }
01902 
01911 int
01912 xmlUCSIsLatinExtendedAdditional(int code) {
01913     return(((code >= 0x1E00) && (code <= 0x1EFF)));
01914 }
01915 
01924 int
01925 xmlUCSIsLetterlikeSymbols(int code) {
01926     return(((code >= 0x2100) && (code <= 0x214F)));
01927 }
01928 
01937 int
01938 xmlUCSIsLimbu(int code) {
01939     return(((code >= 0x1900) && (code <= 0x194F)));
01940 }
01941 
01950 int
01951 xmlUCSIsLinearBIdeograms(int code) {
01952     return(((code >= 0x10080) && (code <= 0x100FF)));
01953 }
01954 
01963 int
01964 xmlUCSIsLinearBSyllabary(int code) {
01965     return(((code >= 0x10000) && (code <= 0x1007F)));
01966 }
01967 
01976 int
01977 xmlUCSIsLowSurrogates(int code) {
01978     return(((code >= 0xDC00) && (code <= 0xDFFF)));
01979 }
01980 
01989 int
01990 xmlUCSIsMalayalam(int code) {
01991     return(((code >= 0x0D00) && (code <= 0x0D7F)));
01992 }
01993 
02002 int
02003 xmlUCSIsMathematicalAlphanumericSymbols(int code) {
02004     return(((code >= 0x1D400) && (code <= 0x1D7FF)));
02005 }
02006 
02015 int
02016 xmlUCSIsMathematicalOperators(int code) {
02017     return(((code >= 0x2200) && (code <= 0x22FF)));
02018 }
02019 
02028 int
02029 xmlUCSIsMiscellaneousMathematicalSymbolsA(int code) {
02030     return(((code >= 0x27C0) && (code <= 0x27EF)));
02031 }
02032 
02041 int
02042 xmlUCSIsMiscellaneousMathematicalSymbolsB(int code) {
02043     return(((code >= 0x2980) && (code <= 0x29FF)));
02044 }
02045 
02054 int
02055 xmlUCSIsMiscellaneousSymbols(int code) {
02056     return(((code >= 0x2600) && (code <= 0x26FF)));
02057 }
02058 
02067 int
02068 xmlUCSIsMiscellaneousSymbolsandArrows(int code) {
02069     return(((code >= 0x2B00) && (code <= 0x2BFF)));
02070 }
02071 
02080 int
02081 xmlUCSIsMiscellaneousTechnical(int code) {
02082     return(((code >= 0x2300) && (code <= 0x23FF)));
02083 }
02084 
02093 int
02094 xmlUCSIsMongolian(int code) {
02095     return(((code >= 0x1800) && (code <= 0x18AF)));
02096 }
02097 
02106 int
02107 xmlUCSIsMusicalSymbols(int code) {
02108     return(((code >= 0x1D100) && (code <= 0x1D1FF)));
02109 }
02110 
02119 int
02120 xmlUCSIsMyanmar(int code) {
02121     return(((code >= 0x1000) && (code <= 0x109F)));
02122 }
02123 
02132 int
02133 xmlUCSIsNumberForms(int code) {
02134     return(((code >= 0x2150) && (code <= 0x218F)));
02135 }
02136 
02145 int
02146 xmlUCSIsOgham(int code) {
02147     return(((code >= 0x1680) && (code <= 0x169F)));
02148 }
02149 
02158 int
02159 xmlUCSIsOldItalic(int code) {
02160     return(((code >= 0x10300) && (code <= 0x1032F)));
02161 }
02162 
02171 int
02172 xmlUCSIsOpticalCharacterRecognition(int code) {
02173     return(((code >= 0x2440) && (code <= 0x245F)));
02174 }
02175 
02184 int
02185 xmlUCSIsOriya(int code) {
02186     return(((code >= 0x0B00) && (code <= 0x0B7F)));
02187 }
02188 
02197 int
02198 xmlUCSIsOsmanya(int code) {
02199     return(((code >= 0x10480) && (code <= 0x104AF)));
02200 }
02201 
02210 int
02211 xmlUCSIsPhoneticExtensions(int code) {
02212     return(((code >= 0x1D00) && (code <= 0x1D7F)));
02213 }
02214 
02223 int
02224 xmlUCSIsPrivateUse(int code) {
02225     return(((code >= 0xE000) && (code <= 0xF8FF)) ||
02226            ((code >= 0xF0000) && (code <= 0xFFFFF)) ||
02227            ((code >= 0x100000) && (code <= 0x10FFFF)));
02228 }
02229 
02238 int
02239 xmlUCSIsPrivateUseArea(int code) {
02240     return(((code >= 0xE000) && (code <= 0xF8FF)));
02241 }
02242 
02251 int
02252 xmlUCSIsRunic(int code) {
02253     return(((code >= 0x16A0) && (code <= 0x16FF)));
02254 }
02255 
02264 int
02265 xmlUCSIsShavian(int code) {
02266     return(((code >= 0x10450) && (code <= 0x1047F)));
02267 }
02268 
02277 int
02278 xmlUCSIsSinhala(int code) {
02279     return(((code >= 0x0D80) && (code <= 0x0DFF)));
02280 }
02281 
02290 int
02291 xmlUCSIsSmallFormVariants(int code) {
02292     return(((code >= 0xFE50) && (code <= 0xFE6F)));
02293 }
02294 
02303 int
02304 xmlUCSIsSpacingModifierLetters(int code) {
02305     return(((code >= 0x02B0) && (code <= 0x02FF)));
02306 }
02307 
02316 int
02317 xmlUCSIsSpecials(int code) {
02318     return(((code >= 0xFFF0) && (code <= 0xFFFF)));
02319 }
02320 
02329 int
02330 xmlUCSIsSuperscriptsandSubscripts(int code) {
02331     return(((code >= 0x2070) && (code <= 0x209F)));
02332 }
02333 
02342 int
02343 xmlUCSIsSupplementalArrowsA(int code) {
02344     return(((code >= 0x27F0) && (code <= 0x27FF)));
02345 }
02346 
02355 int
02356 xmlUCSIsSupplementalArrowsB(int code) {
02357     return(((code >= 0x2900) && (code <= 0x297F)));
02358 }
02359 
02368 int
02369 xmlUCSIsSupplementalMathematicalOperators(int code) {
02370     return(((code >= 0x2A00) && (code <= 0x2AFF)));
02371 }
02372 
02381 int
02382 xmlUCSIsSupplementaryPrivateUseAreaA(int code) {
02383     return(((code >= 0xF0000) && (code <= 0xFFFFF)));
02384 }
02385 
02394 int
02395 xmlUCSIsSupplementaryPrivateUseAreaB(int code) {
02396     return(((code >= 0x100000) && (code <= 0x10FFFF)));
02397 }
02398 
02407 int
02408 xmlUCSIsSyriac(int code) {
02409     return(((code >= 0x0700) && (code <= 0x074F)));
02410 }
02411 
02420 int
02421 xmlUCSIsTagalog(int code) {
02422     return(((code >= 0x1700) && (code <= 0x171F)));
02423 }
02424 
02433 int
02434 xmlUCSIsTagbanwa(int code) {
02435     return(((code >= 0x1760) && (code <= 0x177F)));
02436 }
02437 
02446 int
02447 xmlUCSIsTags(int code) {
02448     return(((code >= 0xE0000) && (code <= 0xE007F)));
02449 }
02450 
02459 int
02460 xmlUCSIsTaiLe(int code) {
02461     return(((code >= 0x1950) && (code <= 0x197F)));
02462 }
02463 
02472 int
02473 xmlUCSIsTaiXuanJingSymbols(int code) {
02474     return(((code >= 0x1D300) && (code <= 0x1D35F)));
02475 }
02476 
02485 int
02486 xmlUCSIsTamil(int code) {
02487     return(((code >= 0x0B80) && (code <= 0x0BFF)));
02488 }
02489 
02498 int
02499 xmlUCSIsTelugu(int code) {
02500     return(((code >= 0x0C00) && (code <= 0x0C7F)));
02501 }
02502 
02511 int
02512 xmlUCSIsThaana(int code) {
02513     return(((code >= 0x0780) && (code <= 0x07BF)));
02514 }
02515 
02524 int
02525 xmlUCSIsThai(int code) {
02526     return(((code >= 0x0E00) && (code <= 0x0E7F)));
02527 }
02528 
02537 int
02538 xmlUCSIsTibetan(int code) {
02539     return(((code >= 0x0F00) && (code <= 0x0FFF)));
02540 }
02541 
02550 int
02551 xmlUCSIsUgaritic(int code) {
02552     return(((code >= 0x10380) && (code <= 0x1039F)));
02553 }
02554 
02563 int
02564 xmlUCSIsUnifiedCanadianAboriginalSyllabics(int code) {
02565     return(((code >= 0x1400) && (code <= 0x167F)));
02566 }
02567 
02576 int
02577 xmlUCSIsVariationSelectors(int code) {
02578     return(((code >= 0xFE00) && (code <= 0xFE0F)));
02579 }
02580 
02589 int
02590 xmlUCSIsVariationSelectorsSupplement(int code) {
02591     return(((code >= 0xE0100) && (code <= 0xE01EF)));
02592 }
02593 
02602 int
02603 xmlUCSIsYiRadicals(int code) {
02604     return(((code >= 0xA490) && (code <= 0xA4CF)));
02605 }
02606 
02615 int
02616 xmlUCSIsYiSyllables(int code) {
02617     return(((code >= 0xA000) && (code <= 0xA48F)));
02618 }
02619 
02628 int
02629 xmlUCSIsYijingHexagramSymbols(int code) {
02630     return(((code >= 0x4DC0) && (code <= 0x4DFF)));
02631 }
02632 
02642 int
02643 xmlUCSIsBlock(int code, const char *block) {
02644     xmlIntFunc *func;
02645 
02646     func = xmlUnicodeLookup(&xmlUnicodeBlockTbl, block);
02647     if (func == NULL)
02648     return (-1);
02649     return (func(code));
02650 }
02651 
02660 int
02661 xmlUCSIsCatC(int code) {
02662     return(xmlCharInRange((unsigned int)code, &xmlCG));
02663 }
02664 
02673 int
02674 xmlUCSIsCatCc(int code) {
02675     return(((code >= 0x0) && (code <= 0x1f)) ||
02676            ((code >= 0x7f) && (code <= 0x9f)));
02677 }
02678 
02687 int
02688 xmlUCSIsCatCf(int code) {
02689     return(xmlCharInRange((unsigned int)code, &xmlCfG));
02690 }
02691 
02700 int
02701 xmlUCSIsCatCo(int code) {
02702     return((code == 0xe000) ||
02703            (code == 0xf8ff) ||
02704            (code == 0xf0000) ||
02705            (code == 0xffffd) ||
02706            (code == 0x100000) ||
02707            (code == 0x10fffd));
02708 }
02709 
02718 int
02719 xmlUCSIsCatCs(int code) {
02720     return((code == 0xd800) ||
02721            ((code >= 0xdb7f) && (code <= 0xdb80)) ||
02722            ((code >= 0xdbff) && (code <= 0xdc00)) ||
02723            (code == 0xdfff));
02724 }
02725 
02734 int
02735 xmlUCSIsCatL(int code) {
02736     return(xmlCharInRange((unsigned int)code, &xmlLG));
02737 }
02738 
02747 int
02748 xmlUCSIsCatLl(int code) {
02749     return(xmlCharInRange((unsigned int)code, &xmlLlG));
02750 }
02751 
02760 int
02761 xmlUCSIsCatLm(int code) {
02762     return(xmlCharInRange((unsigned int)code, &xmlLmG));
02763 }
02764 
02773 int
02774 xmlUCSIsCatLo(int code) {
02775     return(xmlCharInRange((unsigned int)code, &xmlLoG));
02776 }
02777 
02786 int
02787 xmlUCSIsCatLt(int code) {
02788     return(xmlCharInRange((unsigned int)code, &xmlLtG));
02789 }
02790 
02799 int
02800 xmlUCSIsCatLu(int code) {
02801     return(xmlCharInRange((unsigned int)code, &xmlLuG));
02802 }
02803 
02812 int
02813 xmlUCSIsCatM(int code) {
02814     return(xmlCharInRange((unsigned int)code, &xmlMG));
02815 }
02816 
02825 int
02826 xmlUCSIsCatMc(int code) {
02827     return(xmlCharInRange((unsigned int)code, &xmlMcG));
02828 }
02829 
02838 int
02839 xmlUCSIsCatMe(int code) {
02840     return(((code >= 0x488) && (code <= 0x489)) ||
02841            (code == 0x6de) ||
02842            ((code >= 0x20dd) && (code <= 0x20e0)) ||
02843            ((code >= 0x20e2) && (code <= 0x20e4)));
02844 }
02845 
02854 int
02855 xmlUCSIsCatMn(int code) {
02856     return(xmlCharInRange((unsigned int)code, &xmlMnG));
02857 }
02858 
02867 int
02868 xmlUCSIsCatN(int code) {
02869     return(xmlCharInRange((unsigned int)code, &xmlNG));
02870 }
02871 
02880 int
02881 xmlUCSIsCatNd(int code) {
02882     return(xmlCharInRange((unsigned int)code, &xmlNdG));
02883 }
02884 
02893 int
02894 xmlUCSIsCatNl(int code) {
02895     return(((code >= 0x16ee) && (code <= 0x16f0)) ||
02896            ((code >= 0x2160) && (code <= 0x2183)) ||
02897            (code == 0x3007) ||
02898            ((code >= 0x3021) && (code <= 0x3029)) ||
02899            ((code >= 0x3038) && (code <= 0x303a)) ||
02900            (code == 0x1034a));
02901 }
02902 
02911 int
02912 xmlUCSIsCatNo(int code) {
02913     return(xmlCharInRange((unsigned int)code, &xmlNoG));
02914 }
02915 
02924 int
02925 xmlUCSIsCatP(int code) {
02926     return(xmlCharInRange((unsigned int)code, &xmlPG));
02927 }
02928 
02937 int
02938 xmlUCSIsCatPc(int code) {
02939     return((code == 0x5f) ||
02940            ((code >= 0x203f) && (code <= 0x2040)) ||
02941            (code == 0x2054) ||
02942            (code == 0x30fb) ||
02943            ((code >= 0xfe33) && (code <= 0xfe34)) ||
02944            ((code >= 0xfe4d) && (code <= 0xfe4f)) ||
02945            (code == 0xff3f) ||
02946            (code == 0xff65));
02947 }
02948 
02957 int
02958 xmlUCSIsCatPd(int code) {
02959     return(xmlCharInRange((unsigned int)code, &xmlPdG));
02960 }
02961 
02970 int
02971 xmlUCSIsCatPe(int code) {
02972     return(xmlCharInRange((unsigned int)code, &xmlPeG));
02973 }
02974 
02983 int
02984 xmlUCSIsCatPf(int code) {
02985     return((code == 0xbb) ||
02986            (code == 0x2019) ||
02987            (code == 0x201d) ||
02988            (code == 0x203a));
02989 }
02990 
02999 int
03000 xmlUCSIsCatPi(int code) {
03001     return((code == 0xab) ||
03002            (code == 0x2018) ||
03003            ((code >= 0x201b) && (code <= 0x201c)) ||
03004            (code == 0x201f) ||
03005            (code == 0x2039));
03006 }
03007 
03016 int
03017 xmlUCSIsCatPo(int code) {
03018     return(xmlCharInRange((unsigned int)code, &xmlPoG));
03019 }
03020 
03029 int
03030 xmlUCSIsCatPs(int code) {
03031     return(xmlCharInRange((unsigned int)code, &xmlPsG));
03032 }
03033 
03042 int
03043 xmlUCSIsCatS(int code) {
03044     return(xmlCharInRange((unsigned int)code, &xmlSG));
03045 }
03046 
03055 int
03056 xmlUCSIsCatSc(int code) {
03057     return(xmlCharInRange((unsigned int)code, &xmlScG));
03058 }
03059 
03068 int
03069 xmlUCSIsCatSk(int code) {
03070     return(xmlCharInRange((unsigned int)code, &xmlSkG));
03071 }
03072 
03081 int
03082 xmlUCSIsCatSm(int code) {
03083     return(xmlCharInRange((unsigned int)code, &xmlSmG));
03084 }
03085 
03094 int
03095 xmlUCSIsCatSo(int code) {
03096     return(xmlCharInRange((unsigned int)code, &xmlSoG));
03097 }
03098 
03107 int
03108 xmlUCSIsCatZ(int code) {
03109     return(xmlCharInRange((unsigned int)code, &xmlZG));
03110 }
03111 
03120 int
03121 xmlUCSIsCatZl(int code) {
03122     return((code == 0x2028));
03123 }
03124 
03133 int
03134 xmlUCSIsCatZp(int code) {
03135     return((code == 0x2029));
03136 }
03137 
03146 int
03147 xmlUCSIsCatZs(int code) {
03148     return((code == 0x20) ||
03149            (code == 0xa0) ||
03150            (code == 0x1680) ||
03151            (code == 0x180e) ||
03152            ((code >= 0x2000) && (code <= 0x200a)) ||
03153            (code == 0x202f) ||
03154            (code == 0x205f) ||
03155            (code == 0x3000));
03156 }
03157 
03167 int
03168 xmlUCSIsCat(int code, const char *cat) {
03169     xmlIntFunc *func;
03170 
03171     func = xmlUnicodeLookup(&xmlUnicodeCatTbl, cat);
03172     if (func == NULL)
03173     return (-1);
03174     return (func(code));
03175 }
03176 
03177 #define bottom_xmlunicode
03178 #include "elfgcchack.h"
03179 #endif /* LIBXML_UNICODE_ENABLED */

Generated on Mon May 28 2012 04:34:51 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.