Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 1.1 Source Code Directory
JDK 1.1 source code directory contains Java source code for JDK 1.1 core classes: "C:\fyicenter\jdk-1.1.8\src".
Here is the list of Java classes of the JDK 1.1 source code:
✍: FYIcenter
⏎ java/text/DecompositionIterator.java
/* * @(#)DecompositionIterator.java 1.19 01/12/10 * * (C) Copyright Taligent, Inc. 1996 - All Rights Reserved * (C) Copyright IBM Corp. 1996 - All Rights Reserved * * Portions copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved. * * The original version of this source code and documentation is copyrighted * and owned by Taligent, Inc., a wholly-owned subsidiary of IBM. These * materials are provided under terms of a License Agreement between Taligent * and Sun. This technology is protected by multiple US and International * patents. This notice and attribution to Taligent may not be removed. * Taligent is a registered trademark of Taligent, Inc. * * Permission to use, copy, modify, and distribute this software * and its documentation for NON-COMMERCIAL purposes and without * fee is hereby granted provided that this copyright notice * appears in all copies. Please refer to the file "copyright.html" * for further important copyright and licensing information. * * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. * */ package java.text; /** * Contains statics for decomposing strings. * Eventually ought to be in either Char or String. This class is only * for internal use for now. * <p> * Unicode defines a set of non-spacing marks that can be combined with * base characters to form a single "conceptual" character. Often these * combinations have pre-composed equivalents elsewhere in Unicode. For * operations such as locale-sensitive text comparison, it is necessary to * be able to decompose a Unicode character into an equivalent string. * The composition operation is also necessary. It is proposed that at * least the decompose function be added as a static method on String, or * StringBuffer or Character. * @see Collator * @see RuleBasedCollator * @version 1.19 12/10/01 * @author Mark Davis, Helena Shih */ class DecompositionIterator { /** * Null order which indicates the end of string is reached by the * cursor. */ public final static char NULLORDER = 0xffff; /** * Create a decomposed string iterator. */ public DecompositionIterator(String source, int start, int end, int mode) { str = source; getBeginIndex = start; getEndIndex = end; sIndex = start; decmpMode = mode; decmpLimit = (mode == Collator.CANONICAL_DECOMPOSITION) ? maximumCanonical : SHORT_MAX_VALUE; parsedStr = null; // lazy assignment pIndex = 0; backedUp = false; } public DecompositionIterator(String source, int mode) { this(source, 0, source.length(), mode); } /** * Set the decomposition mode. * @param mode the new decomposition mode. * @see Collator * @see RuleBasedCollator */ public void setDecomposition(int mode) { decmpMode = mode; } /** * Sets the string to the new source string. * @param source the new source string */ public void setText(String source) { str = source; parsedStr.setLength(0); sIndex = 0; pIndex = 0; getBeginIndex = 0; getEndIndex = source.length(); } /** * Get the next character. */ public char next() { char ch; int index = 0; // index into contents table byte type; // canonicalization type char result; if (backedUp) { // Immediately after a call to previous(), just return the char it saved result = prevChar; backedUp = false; } else if (decmpMode == Collator.NO_DECOMPOSITION) { // If we're not really doing decomposition, just return the current char result = sIndex < getEndIndex ? str.charAt(sIndex++) : NULLORDER; } else if (decomposing) { // push out previously decomposed characters result = parsedStr.charAt(pIndex++); if (pIndex >= parsedStr.length()) { decomposing = false; } } else if (sIndex >= getEndIndex) { // Past the end of the string result = NULLORDER; } else { // We have to fetch the next character from the string and then // try to decompose it ch = str.charAt(sIndex++); // First, retrieve this character's index. This is an index into // the "contents" array, which contains a sequence of characters // terminated by kSTerminator for each decomposing character. // All of the sequences are packed into the one big "contents" array // in order to save space. index = startOffsets.elementAt(ch); // The "canonicals" array stores the canonical ordering for each combining // character in Unicode. These orderings are used to sort the diacritical // marks after a base character into a canonical order. If a given Unicode // character is *not* a combining character, its entry is BASE if (index >= decmpLimit && // no decomposition canonicals.elementAt(ch) == BASE) { // no canonicalization result = ch; } else { // We have to decompose, canonicalize or both. // Do so to the shortest possible substring. // // The length of the parsed string is unbounded, since // the input string could have an arbitrary number // of adjacent non-BASE characters. In practice, // howev+er, a base character will be followed very // few non-base characters. For example, a base // character may be followed by diacritical marks. // These are limited in number, most frequently one, // rarely more than two. Therefore the default // StringBuffer size is adequate for all normal // sequences but will expand as needed for // pathological input. // // Refer to the following sections of The Unicode // Standard, Version 2.0 // // Section 2.5 Combining Characters , // Section 3.6 Decomposition // Section 3.9 Canonical Ordering Behavior // Section 4.2 Combining Classes // Section 5.9 Normalization // Section 5.15 Sorting and Searching // if (parsedStr == null) { parsedStr = new StringBuffer(); } else { parsedStr.setLength(0); } if (index < decmpLimit) { // Decompose /* decompose */ while((ch = contents.charAt(index++)) != '\u0000') { parsedStr.append(ch); } } else { // Combining character parsedStr.append(ch); } // Any other combining chacters that immediately follow the decomposed // character must be included in the buffer too, because they're // conceptually part of the same logical character. while (sIndex < getEndIndex && canonicals.elementAt(ch = str.charAt(sIndex)) != BASE) { parsedStr.append(ch); sIndex++; } if (parsedStr.length() > 1) { // If there is more than one combining character in the buffer, // put them into the canonical order. fixCanonical(parsedStr); pIndex = 1; decomposing = true; } else { decomposing = false; } result = parsedStr.charAt(0); } } prevChar = result; // for previous() return result; } /** * Gets the previous character in the string. * @return the previous character */ public char previous() { // TODO: right now, this only handles a single-character backup. // That's all that is used by CollationElementIterator at the moment, // but when we expose this class in the API or add a previous method // to CollationElementIterator, we'll need to flesh this method out. backedUp = true; return prevChar; } /** * Resets the cursor to the beginning of the string. */ public void reset() { sIndex = getBeginIndex; pIndex = 0; decomposing = false; // LAURA backedUp = false; // LAURA } // ============================================================ // package private (These need to be made public for searching) // ============================================================ /** * Sets the offset of the currently processed character in the source string. * @param newOffset the new offset */ final void setOffset(int newOffset) { if (getBeginIndex <= newOffset && newOffset < getEndIndex) { sIndex = newOffset; pIndex = 0; decomposing = false; backedUp = false; } else { throw new IndexOutOfBoundsException( "DecompositionIterator new offset out of bounds."); } } /** * Get the current offset of the character in the processed source string. * @return The offset of the accessed character */ final int getOffset() { return sIndex; } /** * Get the decomposition mode. * @return The decomposition mode. * @see Collator * @see RuleBasedCollator */ public int getDecomposition() { return decmpMode; } // ------------------------------------------------------------- // private // ------------------------------------------------------------- /** * Decomposes a character into a string * If the source can't be decomposed, return "". * @param source the character to be decomposed with * @param mode the decomposition mode * @return the decomposed string * @see java.text.Collator * @see java.text.Collator#getDecomposition * @see java.text.Collator#setDecomposition */ static String decompose(char source, int mode) { if (mode == Collator.NO_DECOMPOSITION) { // Extract the substring from the source directly if the // decomposition mode is NO_DECOMPOSITION. StringBuffer tmp = new StringBuffer(); tmp.append(source); return tmp.toString(); } int limit = (mode == Collator.CANONICAL_DECOMPOSITION) ? maximumCanonical : SHORT_MAX_VALUE; int index = startOffsets.elementAt(source); if (index >= limit) return ""; StringBuffer result = new StringBuffer(); while (true) { char ch = contents.charAt(index++); if (ch == '\u0000') break; result.append(ch); } fixCanonical(result); return result.toString(); } /** * Decomposes a StringBuffer in place * @param source the string to be decomposed * @param mode the decomposition mode * @see java.text.Collator * @see java.text.Collator#getDecomposition * @see java.text.Collator#setDecomposition */ static void decompose(StringBuffer source, int mode) { int start = 0; int end = source.length(); if (mode == Collator.NO_DECOMPOSITION) { String temp = source.toString().substring(start, end); source.setLength(0); source.append(temp); } int limit = (mode == Collator.CANONICAL_DECOMPOSITION) ? maximumCanonical : SHORT_MAX_VALUE; StringBuffer result = new StringBuffer(); for (int i = start; i < end; ++i) { char ch = source.charAt(i); int index = startOffsets.elementAt(ch); if (index >= limit) result.append(ch); else while (true) { ch = contents.charAt(index++); if (ch == '\u0000') break; result.append(ch); } } source.setLength(0); source.append(result.toString()); } /** * Decomposes string into string * If the source can't be decomposed, return "". * @param source the string to be decomposed with * @param mode the decomposition mode * @return the decomposed string * @see java.text.Collator * @see java.text.Collator#getDecomposition * @see java.text.Collator#setDecomposition */ static String decompose(String source, int mode) { int start = 0; int end = source.length(); if (mode == Collator.NO_DECOMPOSITION) { return source.substring(start, end); } int limit = (mode == Collator.CANONICAL_DECOMPOSITION) ? maximumCanonical : SHORT_MAX_VALUE; StringBuffer result = new StringBuffer(); for (int i = start; i < end; ++i) { char ch = source.charAt(i); int index = startOffsets.elementAt(ch); if (index >= limit) result.append(ch); else while (true) { ch = contents.charAt(index++); if (ch == '\u0000') break; result.append(ch); } } return result.toString(); } /** * Use to allocate array for using decompose in a tight loop. * @return the maximum decomposition result characters for output */ static int getMaximumDecomposition() { return maximumDecomposition; } /** * Fixes the sorting sequence of non-spacing characters according to * their combining class. The algorithm is listed on p.3-11 in the * Unicode Standard 2.0. The table of combining classes is on p.4-2 * in the Unicode Standard 2.0. * @param result the string to fix. */ private static void fixCanonical(StringBuffer result) { int i = result.length() - 1; byte lastType; byte currentType = canonicals.elementAt(result.charAt(i)); for (--i; i >= 0; --i) { lastType = currentType; currentType = canonicals.elementAt(result.charAt(i)); // a swap is presumed to be rare (and a double-swap very rare), // so don't worry about efficiency here. if (currentType > lastType && lastType != BASE) { // swap characters char temp = result.charAt(i); result.setCharAt(i, result.charAt(i+1)); result.setCharAt(i+1, temp); // if not at end, backup (one further, to compensate for for-loop) if (i < result.length() - 2) i += 2; // reset type, since we swapped. currentType = canonicals.elementAt(result.charAt(i)); } } } //----------------------------------------------------------- // privates //----------------------------------------------------------- //should be in Short class private static final short SHORT_MAX_VALUE = 32767; private static final char STERMINATOR = (char)0x0000; // BEGIN RUN-LENGTH ENCODED ARRAYS [LIU] // These arrays are encoded as String objects since statically initialized // arrays cost 6 instructions per element in the class file. The arrays are // decoded using methods in Utility. private static final short kOffsetIndex[] = Utility.RLEStringToShortArray( "\000\u0200\000a\u00E1\u0161\u01E1\u0231\u02A1\u031D\u039C\u0414\u048E"+ "\u0507\uA5A5\006\u048E\u055E\u05BE\u061E\u048E\u067D\u06E9\u0736\u077F"+ "\u07CB\u048E\u0818\u0865\u08C3\u0942\u048E\u048E\u09C1\u0A41\uA5A5\030"+ "\u048E\u0AC1\u0B41\u0BC1\u0C41\u0CC1\u0D41\u0DBF\u048E\u0E3F\u0EBF\u0F2D"+ "\u048E\u0F58\u0FCC\uA5A5\026\u048E\u104C\u10CA\u1149\u11C9\u1249\u12C9"+ "\u1349\u13C9\uA5A5\u018E\u048E\u1449\u14C9\uA5A5\004\u048E\u1549\u15C9"+ "\u1648\u16C8" ); private static final short kOffsetValues[] = Utility.RLEStringToShortArray( "\000\u1748\uA5A5^\u7FFF\u0C80\u0C83\u0C86\uA5A5 \u7FFF\u0C89\uA5A5\007"+ "\u7FFF\u0C8B\u7FFF\u0C8E\uA5A5\004\u7FFF\u0C90\u7FFF\u7FFF\u0C93\u0C95"+ "\u0C97\u0C9A\u7FFF\u7FFF\u0C9C\u0C9F\u0CA1\u7FFF\u0CA3\u0CA7\u0CAB\u7FFF"+ "\000\003\006\011\014\017\u7FFF\022\025\030\033\036!$'*\u7FFF-0369<\u7FFF"+ "\u7FFF?BEHK\u7FFF\u7FFFNQTWZ]\u7FFF`cfilorux\u7FFF{~\u0081\u0084\u0087"+ "\u008A\u7FFF\u7FFF\u008D\u0090\u0093\u0096\u0099\u7FFF\u009C\u009F\u00A2"+ "\u00A5\u00A8\u00AB\u00AE\u00B1\u00B4\u00B7\u00BA\u00BD\u00C0\u00C3\u00C6"+ "\u00C9\u00CC\u7FFF\u7FFF\u00CF\u00D2\u00D5\u00D8\u00DB\u00DE\u00E1\u00E4"+ "\u00E7\u00EA\u00ED\u00F0\u00F3\u00F6\u00F9\u00FC\u00FF\u0102\u0105\u0108"+ "\u7FFF\u7FFF\u010B\u010E\u0111\u0114\u0117\u011A\u011D\u0120\u0123\u7FFF"+ "\u0CAF\u0CB2\u0126\u0129\u012C\u012F\u7FFF\u0132\u0135\u0138\u013B\u013E"+ "\u0141\u0CB5\u0CB8\u7FFF\u7FFF\u0144\u0147\u014A\u014D\u0150\u0153\u0CBB"+ "\u7FFF\u7FFF\u0156\u0159\u015C\u015F\u0162\u0165\u7FFF\u7FFF\u0168\u016B"+ "\u016E\u0171\u0174\u0177\u017A\u017D\u0180\u0183\u0186\u0189\u018C\u018F"+ "\u0192\u0195\u0198\u019B\u7FFF\u7FFF\u019E\u01A1\u01A4\u01A7\u01AA\u01AD"+ "\u01B0\u01B3\u01B6\u01B9\u01BC\u01BF\u01C2\u01C5\u01C8\u01CB\u01CE\u01D1"+ "\u01D4\u01D7\u01DA\u01DD\u01E0\u0CBE\uA5A5 \u7FFF\u01E3\u01E6\uA5A5\015"+ "\u7FFF\u01E9\u01EC\uA5A5\023\u7FFF\u0CC0\u0CC4\u0CC8\u0CCC\u0CCF\u0CD2"+ "\u0CD5\u0CD8\u0CDB\u01EF\u01F2\u01F5\u01F8\u01FB\u01FE\u0201\u0204\u0207"+ "\u020B\u020F\u0213\u0217\u021B\u021F\u0223\u7FFF\u0227\u022B\u022F\u0233"+ "\u0237\u023A\u7FFF\u7FFF\u023D\u0240\u0243\u0246\u0249\u024C\u024F\u0253"+ "\u0257\u025A\u025D\u0CDE\u0CE1\u0CE4\u0260\u0263\uA5A5\004\u7FFF\u0266"+ "\u026A\u026E\u0271\u0274\u0277\u027A\u027D\u0280\u0283\u0286\u0289\u028C"+ "\u028F\u0292\u0295\u0298\u029B\u029E\u02A1\u02A4\u02A7\u02AA\u02AD\u02B0"+ "\u02B3\u02B6\u02B9\u02BC\u02BF\uA5A5h\u7FFF\u0CE7\u0CE9\u0CEB\u0CED\u0CEF"+ "\u0CF1\u0CF3\u0CF5\u0CF7\uA5A5\037\u7FFF\u0CF9\u0CFC\u0CFF\u0D02\u0D05"+ "\u0D08\u7FFF\u7FFF\u0D0B\u0D0D\u0D0F\u0D11\u0D13\uA5A5\033\u7FFF\u02C2"+ "\uA5A53\u7FFF\u02C5\uA5A5/\u7FFF\u02C8\uA5A5\005\u7FFF\u0D15\uA5A5\005"+ "\u7FFF\u0D18\u0D1B\u02CD\u02D0\u02D2\u02D5\u02D8\u7FFF\u02DB\u7FFF\u02DE"+ "\u02E1\u02E4\uA5A5\031\u7FFF\u02E8\u02EB\u02EE\u02F1\u02F4\u02F7\u02FA"+ "\uA5A5\031\u7FFF\u02FE\u0301\u0304\u0307\u030A\uA5A5\004\u7FFF\u030D\u0310"+ "\uA5A5+\u7FFF\u0313\u7FFF\u0316\u7FFF\u7FFF\u7FFF\u0319\uA5A5\004\u7FFF"+ "\u031C\u7FFF\u031F\uA5A5\012\u7FFF\u0322\uA5A5\037\u7FFF\u0325\uA5A5\027"+ "\u7FFF\u0328\u7FFF\u032B\u7FFF\u7FFF\u7FFF\u032E\uA5A5\004\u7FFF\u0331"+ "\u7FFF\u0334\uA5A5\027\u7FFF\u0337\u033A\uA5A5A\u7FFF\u033D\u0340\uA5A5"+ "\015\u7FFF\u0343\u0346\u0349\u034C\u034F\u0351\u0353\u0356\u0359\u035B"+ "\u035D\u0360\u0363\u0366\u0369\u036C\u036F\u0371\u0373\u0376\u0379\u037C"+ "\u037F\u0382\u0385\u0387\u0389\u038C\u7FFF\u7FFF\u038F\u0392\u0395\u0398"+ "\u039B\u039E\u03A1\u03A4\u7FFF\u7FFF\u03A7\u03AA\uA5A5\u0080\u7FFF\u0D1F"+ "\uA5A5x\u7FFF\u03AD\uA5A5\007\u7FFF\u03B0\u7FFF\u7FFF\u03B3\uA5A5#\u7FFF"+ "\u03B6\u03B9\u03BC\u03BF\u03C2\u03C5\u03C8\u03CB\uA5A50\u7FFF\u03CE\uA5A5"+ "\032\u7FFF\u03D1\u03D4\uA5A5\017\u7FFF\u03D7\u03DA\u7FFF\u03DD\uA5A5Y"+ "\u7FFF\u03E0\u03E3\u03E6\u03E9\u7FFF\u03EC\uA5A5H\u7FFF\u03EF\u7FFF\u7FFF"+ "\u03F2\u03F5\uA5A5\017\u7FFF\u03F8\u03FB\u7FFF\u03FE\uA5A5 \u7FFF\u0401"+ "\uA5A55\u7FFF\u0404\u0407\u040A\uA5A5H\u7FFF\u040D\uA5A5@\u7FFF\u0410"+ "\uA5A5\006\u7FFF\u0413\u0416\u7FFF\u0419\u041C\uA5A5J\u7FFF\u0420\u0423"+ "\u0426\uA5A53\u7FFF\u0429\uA5A5L\u7FFF\u042C\uA5A5(\u7FFF\u0D22\u0D25"+ "\uA5A5C\u7FFF\u042F\uA5A5\011\u7FFF\u0432\uA5A5\004\u7FFF\u0435\uA5A5"+ "\004\u7FFF\u0438\uA5A5\004\u7FFF\u043B\uA5A5\014\u7FFF\u043E\uA5A5\011"+ "\u7FFF\u0441\u7FFF\u0444\u0447\u044A\u044E\u0451\uA5A5\006\u7FFF\u0455"+ "\uA5A5\021\u7FFF\u0458\uA5A5\011\u7FFF\u045B\uA5A5\004\u7FFF\u045E\uA5A5"+ "\004\u7FFF\u0461\uA5A5\004\u7FFF\u0464\uA5A5\014\u7FFF\u0467\uA5A5F\u7FFF"+ "\u0D28\u7FFF\u7FFF\u0D2B\u7FFF\u7FFF\u7FFF\u0D2E\u7FFF\u0D31\u7FFF\u7FFF"+ "\u0D34\uA5A5\005\u7FFF\u0D37\u0D3A\u0D3D\u0D40\u0D43\u0D46\u0D49\u0D4C"+ "\u0D4F\u0D52\u0D55\u0D58\u0D5B\u0D5E\u0D61\u0D64\u0D68\u0D6C\u0D70\u0D74"+ "\u0D78\u0D7B\u0D7E\u0D81\u0D84\u0D87\u0D8B\u0D8E\u0D91\u0D94\u0D97\u0D9A"+ "\u0D9D\u0DA1\u0DA5\u0DA8\u0DAB\u0DAE\u0DB1\u0DB4\u0DB7\u7FFF\u0DBA\u7FFF"+ "\u0DBD\u7FFF\u0DC0\u0DC3\u0DC6\u0DC9\u0DCC\u0DCF\u0DD2\u0DD5\u0DD8\u0DDB"+ "\u0DDE\u7FFF\u0DE1\u7FFF\u0DE4\u7FFF\u0DE7\u0DEA\u0DED\u7FFF\u7FFF\u0DF0"+ "\u0DF3\u0DF6\uA5A5\011\u7FFF\u0DF9\u7FFF\u0DFC\u7FFF\u0DFF\u7FFF\u0E02"+ "\u7FFF\u0E05\u0E08\u0E0C\u7FFF\u7FFF\u0E0F\u0E12\u0E16\u7FFF\u7FFF\u0E19"+ "\u7FFF\u0E1C\u0E1F\u0E22\u0E25\u0E28\u0E2B\u0E2E\u0E31\u0E34\u0E37\u0E3A"+ "\u0E3E\u0E42\u0E45\u0E48\u0E4B\u0E4F\u0E52\u0E55\u0E58\u0E5B\u0E5F\u0E63"+ "\u0E67\u0E6A\u0E6D\u0E70\u0E74\u0E77\u0E7B\u0E7E\u0E81\u0E84\u0E87\u0E8B"+ "\u0E8E\u0E91\u0E94\u0E97\u0E9A\u7FFF\u0E9D\u0EA0\u0EA3\u0EA6\uA5A5\006"+ "\u7FFF\u0EA9\u0EAC\u7FFF\u0EAF\u0EB2\u7FFF\u7FFF\u0EB5\u0EB8\u0EBB\u0EBE"+ "\u0EC1\u0EC4\u0EC7\u7FFF\u7FFF\u0ECA\u7FFF\u0ECD\uA5A5\007\u7FFF\u0ED0"+ "\u0ED3\u0ED7\u0EDA\u0EDD\u0EE0\u0EE3\u0EE6\u0EE9\u0EEC\u0EF0\u0EF3\u0EF6"+ "\u0EFA\u0EFD\u0F01\u0F05\u0F09\u0F0D\u0F11\u0F15\u0F18\u0F1B\u0F1E\u0F21"+ "\u0F24\u0F27\u0F2A\u0F2E\u0F31\u0F34\u0F37\u0F3A\u0F3D\u0F40\u0F43\u0F46"+ "\u0F49\u0F4C\u0F4F\u7FFF\u0F52\u0F55\u0F59\u0F5C\u7FFF\u0F5F\u0F62\u0F65"+ "\u0F68\u0F6B\u0F6E\u0F71\u0F74\uA5A5\007\u7FFF\u046A\u046D\u0470\u0473"+ "\u0476\u0479\u047C\u047F\u0482\u0486\u048A\u048D\u0490\u0493\u0496\u0499"+ "\u049C\u049F\u04A2\u04A5\u04A8\u04AC\u04B0\u04B4\u04B8\u04BB\u04BE\u04C1"+ "\u04C4\u04C8\u04CC\u04CF\u04D2\u04D5\u04D8\u04DB\u04DE\u04E1\u04E4\u04E7"+ "\u04EA\u04ED\u04F0\u04F3\u04F6\u04F9\u04FC\u0500\u0504\u0507\u050A\u050D"+ "\u0510\u0513\u0516\u0519\u051C\u0520\u0524\u0527\u052A\u052D\u0530\u0533"+ "\u0536\u0539\u053C\u053F\u0542\u0545\u0548\u054B\u054E\u0551\u0554\u0557"+ "\u055A\u055E\u0562\u0566\u056A\u056E\u0572\u0576\u057A\u057D\u0580\u0583"+ "\u0586\u0589\u058C\u058F\u0592\u0596\u059A\u059D\u05A0\u05A3\u05A6\u05A9"+ "\u05AC\u05B0\u05B4\u05B8\u05BC\u05C0\u05C4\u05C7\u05CA\u05CD\u05D0\u05D3"+ "\u05D6\u05D9\u05DC\u05DF\u05E2\u05E5\u05E8\u05EB\u05EE\u05F2\u05F6\u05FA"+ "\u05FE\u0601\u0604\u0607\u060A\u060D\u0610\u0613\u0616\u0619\u061C\u061F"+ "\u0622\u0625\u0628\u062B\u062E\u0631\u0634\u0637\u063A\u063D\u0640\u0643"+ "\u0646\u0649\u064C\u064F\u0652\u0655\u7FFF\u0F77\uA5A5\004\u7FFF\u065B"+ "\u065E\u0661\u0664\u0667\u066B\u066F\u0673\u0677\u067B\u067F\u0683\u0687"+ "\u068B\u068F\u0693\u0697\u069B\u069F\u06A3\u06A7\u06AB\u06AF\u06B3\u06B7"+ "\u06BA\u06BD\u06C0\u06C3\u06C6\u06C9\u06CD\u06D1\u06D5\u06D9\u06DD\u06E1"+ "\u06E5\u06E9\u06ED\u06F1\u06F4\u06F7\u06FA\u06FD\u0700\u0703\u0706\u0709"+ "\u070D\u0711\u0715\u0719\u071D\u0721\u0725\u0729\u072D\u0731\u0735\u0739"+ "\u073D\u0741\u0745\u0749\u074D\u0751\u0755\u0759\u075C\u075F\u0762\u0765"+ "\u0769\u076D\u0771\u0775\u0779\u077D\u0781\u0785\u0789\u078D\u0790\u0793"+ "\u0796\u0799\u079C\u079F\u07A2\uA5A5\006\u7FFF\u07A5\u07A8\u07AB\u07AF"+ "\u07B3\u07B7\u07BB\u07BF\u07C3\u07C6\u07C9\u07CD\u07D1\u07D5\u07D9\u07DD"+ "\u07E1\u07E4\u07E7\u07EB\u07EF\u07F3\u7FFF\u7FFF\u07F7\u07FA\u07FD\u0801"+ "\u0805\u0809\u7FFF\u7FFF\u080D\u0810\u0813\u0817\u081B\u081F\u0823\u0827"+ "\u082B\u082E\u0831\u0835\u0839\u083D\u0841\u0845\u0849\u084C\u084F\u0853"+ "\u0857\u085B\u085F\u0863\u0867\u086A\u086D\u0871\u0875\u0879\u087D\u0881"+ "\u0885\u0888\u088B\u088F\u0893\u0897\u7FFF\u7FFF\u089B\u089E\u08A1\u08A5"+ "\u08A9\u08AD\u7FFF\u7FFF\u08B1\u08B4\u08B7\u08BB\u08BF\u08C3\u08C7\u08CB"+ "\u7FFF\u08CF\u7FFF\u08D2\u7FFF\u08D6\u7FFF\u08DA\u08DE\u08E1\u08E4\u08E8"+ "\u08EC\u08F0\u08F4\u08F8\u08FC\u08FF\u0902\u0906\u090A\u090E\u0912\u0916"+ "\u091A\u091D\u0920\u0923\u0926\u0929\u092C\u092F\u0932\u0935\u0938\u093B"+ "\u093E\u0941\u7FFF\u7FFF\u0944\u0948\u094C\u0951\u0956\u095B\u0960\u0965"+ "\u096A\u096E\u0972\u0977\u097C\u0981\u0986\u098B\u0990\u0994\u0998\u099D"+ "\u09A2\u09A7\u09AC\u09B1\u09B6\u09BA\u09BE\u09C3\u09C8\u09CD\u09D2\u09D7"+ "\u09DC\u09E0\u09E4\u09E9\u09EE\u09F3\u09F8\u09FD\u0A02\u0A06\u0A0A\u0A0F"+ "\u0A14\u0A19\u0A1E\u0A23\u0A28\u0A2B\u0A2E\u0A32\u0A35\u7FFF\u0A39\u0A3C"+ "\u0A40\u0A43\u0A46\u0A49\u0A4C\u0F7A\u0A4F\u0F7D\u0F80\u0F83\u0A54\u0A58"+ "\u0A5B\u7FFF\u0A5F\u0A62\u0A66\u0A69\u0A6C\u0A6F\u0A72\u0F87\u0F8B\u0F8F"+ "\u0A7E\u0A81\u0A84\u0A88\u7FFF\u7FFF\u0A8C\u0A8F\u0A93\u0A96\u0A99\u0A9C"+ "\u7FFF\u0F93\u0F97\u0F9B\u0AA8\u0AAB\u0AAE\u0AB2\u0AB6\u0AB9\u0ABC\u0ABF"+ "\u0AC3\u0AC6\u0AC9\u0ACC\u0ACF\u0F9F\u0FA3\u0FA7\u7FFF\u7FFF\u0AD8\u0ADC"+ "\u0ADF\u7FFF\u0AE3\u0AE6\u0AEA\u0AED\u0AF0\u0AF3\u0AF6\u0FAA\u0FAD\u7FFF"+ "\u0FB0\u0FB2\u0FB4\u0FB6\u0FB8\u0FBA\u0FBC\u0FBE\u0FC0\u0FC2\u0FC4\uA5A5"+ "\006\u7FFF\u0FC6\uA5A5\005\u7FFF\u0FC8\uA5A5\014\u7FFF\u0FCB\u0FCD\u0FD0"+ "\uA5A5\014\u7FFF\u0FD4\u0FD7\u7FFF\u0FDB\u0FDE\uA5A5\004\u7FFF\u0FE2\u7FFF"+ "\u0FE5\uA5A51\u7FFF\u0FE8\u7FFF\u7FFF\u7FFF\u0FEA\u0FEC\u0FEE\u0FF0\u0FF2"+ "\u0FF4\u0FF6\u0FF8\u0FFA\u0FFC\u0FFE\u1000\u1002\u1004\u1006\u1008\u100A"+ "\u100C\u100E\u1010\u1012\u1014\u1016\u1018\u101A\u101C\u101E\uA5A5\024"+ "\u7FFF\u1DA2\uA5A5\004\u7FFF\u1020\uA5A5W\u7FFF\u1023\u1025\u7FFF\u7FFF"+ "\u7FFF\u1028\u7FFF\u102A\u102D\u102F\u1031\u1033\u1035\u1037\u1039\u103B"+ "\u103D\u103F\u7FFF\u1041\u1043\u7FFF\u1046\u1048\u104A\u104C\u104E\u1050"+ "\u7FFF\u7FFF\u1052\u1055\u1059\u7FFF\u105C\u7FFF\u0AFF\u7FFF\u105E\u7FFF"+ "\u0B01\u0B03\u1060\u1062\u7FFF\u1064\u1066\u1068\u7FFF\u106A\u106C\u106E"+ "\u1070\u1072\u1074\uA5A5\032\u7FFF\u1076\u107A\u107E\u1082\u1086\u108A"+ "\u108E\u1092\u1096\u109A\u109E\u10A2\u10A6\u10A9\u10AB\u10AE\u10B2\u10B5"+ "\u10B7\u10BA\u10BE\u10C3\u10C6\u10C8\u10CB\u10CF\u10D1\u10D3\u10D5\u10D7"+ "\u10D9\u10DC\u10E0\u10E3\u10E5\u10E8\u10EC\u10F1\u10F4\u10F6\u10F9\u10FD"+ "\u10FF\u1101\u1103\uA5A5\004\u7FFF\u0B06\uA5A5\004\u7FFF\u0B09\u7FFF\u7FFF"+ "\u0B0C\uA5A5\027\u7FFF\u0B0F\u7FFF\u0B12\uA5A5\005\u7FFF\u1105\u1108\u7FFF"+ "\u110C\u110F\uA5A5\023\u7FFF\u0B15\u7FFF\u7FFF\u0B18\u7FFF\u0B1B\uA5A5"+ "\030\u7FFF\u0B1E\uA5A5\012\u7FFF\u0B21\u7FFF\u7FFF\u0B24\u0B27\u7FFF\u7FFF"+ "\u0B2A\u0B2D\u7FFF\u7FFF\u0B30\u0B33\uA5A5\006\u7FFF\u0B36\u0B39\u7FFF"+ "\u7FFF\u0B3C\u0B3F\u7FFF\u7FFF\u0B42\u0B45\uA5A5\042\u7FFF\u0B48\u0B4B"+ "\u0B4E\u0B51\uA5A50\u7FFF\u0B54\u0B57\u0B5A\u0B5D\uA5A5\006\u7FFF\u0B60"+ "\u0B63\u0B66\u0B69\uA5A5)\u7FFF\u0B6C\u0B6E\uA5A5`\u7FFF\u1113\u1115\u1117"+ "\u1119\u111B\u111D\u111F\u1121\u1123\u1125\u1127\u112A\u112D\u1130\u1133"+ "\u1136\u1139\u113C\u113F\u1142\uA5A56\u7FFF\u1145\u1147\u1149\u114B\u114D"+ "\u114F\u1151\u1153\u1155\u1157\u1159\u115B\u115D\u115F\u1161\u1163\u1165"+ "\u1167\u1169\u116B\u116D\u116F\u1171\u1173\u1175\u1177\u1179\u117B\u117D"+ "\u117F\u1181\u1183\u1185\u1187\u1189\u118B\u118D\u118F\u1191\u1193\u1195"+ "\u1197\u1199\u119B\u119D\u119F\u11A1\u11A3\u11A5\u11A7\u11A9\u11AB\u11AD"+ "\uA5A5\025\u7FFF\u11AF\uA5A55\u7FFF\u11B1\uA5A5\025\u7FFF\u0B70\u7FFF"+ "\u0B73\u7FFF\u0B76\u7FFF\u0B79\u7FFF\u0B7C\u7FFF\u0B7F\u7FFF\u0B82\u7FFF"+ "\u0B85\u7FFF\u0B88\u7FFF\u0B8B\u7FFF\u0B8E\u7FFF\u0B91\u7FFF\u7FFF\u0B94"+ "\u7FFF\u0B97\u7FFF\u0B9A\uA5A5\006\u7FFF\u0B9D\u0BA0\u7FFF\u0BA3\u0BA6"+ "\u7FFF\u0BA9\u0BAC\u7FFF\u0BAF\u0BB2\u7FFF\u0BB5\u0BB8\uA5A5\024\u7FFF"+ "\u0BBB\uA5A5\006\u7FFF\u11B3\u11B6\u7FFF\u0BBE\uA5A5\015\u7FFF\u0BC1\u7FFF"+ "\u0BC4\u7FFF\u0BC7\u7FFF\u0BCA\u7FFF\u0BCD\u7FFF\u0BD0\u7FFF\u0BD3\u7FFF"+ "\u0BD6\u7FFF\u0BD9\u7FFF\u0BDC\u7FFF\u0BDF\u7FFF\u0BE2\u7FFF\u7FFF\u0BE5"+ "\u7FFF\u0BE8\u7FFF\u0BEB\uA5A5\006\u7FFF\u0BEE\u0BF1\u7FFF\u0BF4\u0BF7"+ "\u7FFF\u0BFA\u0BFD\u7FFF\u0C00\u0C03\u7FFF\u0C06\u0C09\uA5A5\026\u7FFF"+ "\u0C0C\u7FFF\u7FFF\u0C0F\u0C12\u0C15\u0C18\u7FFF\u7FFF\u7FFF\u0C1B\uA5A5"+ "1\u7FFF\u11B9\u11BB\u11BE\u11C1\u11C3\u11C6\u11C9\u11CB\u11CE\u11D0\u11D3"+ "\u11D6\u11D9\u11DC\u11DF\u11E2\u11E5\u11E7\u11E9\u11EC\u11EF\u11F1\u11F4"+ "\u11F6\u11F8\u11FB\u11FD\u11FF\u1201\u1203\u1205\u1207\u120A\u120C\u120F"+ "\u1211\u1214\u1216\u1219\u121B\u121E\u1222\u1225\u1227\u1229\u122C\u1230"+ "\u1233\u1235\u1237\u123A\u123C\u123E\u1241\u1244\u1247\u124A\u124E\u1251"+ "\u1255\u1258\u125B\u125E\u1261\u1264\u1267\u126A\u126D\u1271\u1275\u1278"+ "\u127B\u127E\u1282\u1285\u1288\u128B\u128E\u1291\u1293\u1296\u1298\u129B"+ "\u129E\u12A1\u12A4\u12A6\u12A9\u12AD\u12B0\u12B3\u12B7\u12BA\u12BC\u7FFF"+ "\u7FFF\u7FFF\u12BF\u12C1\u12C3\u12C5\u12C7\u12C9\u12CB\u12CD\u12CF\u12D1"+ "\u12D3\u12D5\u12D7\u12D9\uA5A5`\u7FFF\u12DB\u12DF\u12E3\u12E7\u12EB\u12EF"+ "\u12F3\u12F7\u12FB\u12FF\u1303\u1307\u130B\u130F\u1313\u1318\u131D\u1322"+ "\u1327\u132C\u1331\u1336\u133B\u1340\u1345\u134A\u134F\u1354\u1359\u7FFF"+ "\u7FFF\u7FFF\u135E\u1362\u1366\u136A\u136E\u1372\u1376\u137A\u137E\u1382"+ "\u1386\u138A\u138E\u1392\u1396\u139A\u139E\u13A2\u13A6\u13AA\u13AE\u13B2"+ "\u13B6\u13BA\u13BE\u13C2\u13C6\u13CA\u13CE\u13D2\u13D6\u13DA\u13DE\u13E2"+ "\u13E6\u13EA\uA5A5\034\u7FFF\u13EE\u13F0\u13F2\u13F4\u13F6\u13F8\u13FA"+ "\u13FC\u13FE\u1400\u1402\u1404\u1406\u1408\u140A\u140D\u1410\u1413\u1416"+ "\u1419\u141C\u141F\u1422\u1425\u1428\u142B\u142E\u1431\uA5A5\004\u7FFF"+ "\u1434\u1436\u1438\u143A\u143C\u143E\u1440\u1442\u1444\u1446\u1448\u144A"+ "\u144C\u144E\u1450\u1452\u1454\u1456\u1458\u145A\u145C\u145E\u1460\u1462"+ "\u1464\u1466\u1468\u146A\u146C\u146E\u1470\u1472\u1474\u1476\u1478\u147A"+ "\u147C\u147E\u1480\u1482\u1484\u1486\u1488\u148A\u148C\u148E\u1490\u1492"+ "\u1494\uA5A5\017\u7FFF\u1496\u1499\u149C\u149F\u14A2\u14A5\u14A8\u14AB"+ "\u14AE\u14B1\u14B5\u14B9\uA5A5\004\u7FFF\u14BD\u14BF\u14C1\u14C3\u14C5"+ "\u14C7\u14C9\u14CB\u14CD\u14CF\u14D1\u14D3\u14D5\u14D7\u14D9\u14DB\u14DD"+ "\u14DF\u14E1\u14E3\u14E5\u14E7\u14E9\u14EB\u14ED\u14EF\u14F1\u14F3\u14F5"+ "\u14F7\u14F9\u14FB\u14FD\u14FF\u1501\u1503\u1505\u1507\u1509\u150B\u150D"+ "\u150F\u1511\u1513\u1515\u1517\u1519\u7FFF\u151B\u1521\u1526\u152C\u1530"+ "\u1536\u153A\u153E\u1545\u154A\u154E\u1552\u1556\u155B\u1560\u1565\u156A"+ "\u156F\u1574\u1579\u1580\u1583\u158A\u1591\u1597\u159C\u15A3\u15AA\u15AF"+ "\u15B3\u15B7\u15BC\u15C1\u15C7\u15CD\u15D1\u15D5\u15DA\u15DE\u15E2\u15E5"+ "\u15E8\u15EC\u15F0\u15F7\u15FC\u1602\u1609\u160E\u1612\u1616\u161D\u1622"+ "\u1629\u162D\u1633\u1637\u163C\u1640\u1645\u164B\u1650\u1656\u165B\u165E"+ "\u1664\u1668\u166C\u1671\u1675\u1679\u167D\u1683\u1688\u168B\u1692\u1696"+ "\u169C\u16A1\u16A6\u16AA\u16AE\u16B3\u16B6\u16BB\u16C1\u16C4\u16CB\u16CF"+ "\u16D2\u16D5\u16D8\u16DB\u16DE\u16E1\u16E4\u16E7\u16EA\u16ED\u16F1\u16F5"+ "\u16F9\u16FD\u1701\u1705\u1709\u170D\u1711\u1715\u1719\u171D\u1721\u1725"+ "\u1729\u172D\u1730\u1733\u1737\u173A\uA5A5\004\u7FFF\u173D\u1740\u1743"+ "\u1746\u1749\u174E\u1751\u1754\u1757\u175A\u175D\u1760\u1763\u1766\u176A"+ "\u176F\u1772\u1775\u1778\u177B\u177E\u1781\u1784\u1788\u178C\u1790\u1794"+ "\u1797\u179A\u179D\u17A0\u17A3\u17A6\u17A9\u17AC\u17AF\u17B2\u17B6\u17BA"+ "\u17BD\u17C1\u17C5\u17C9\u17CC\u17D0\u17D4\u17D9\u17DC\u17E0\u17E4\u17E8"+ "\u17EC\u17F2\u17F9\u17FC\u17FF\u1802\u1805\u1808\u180B\u180E\u1811\u1814"+ "\u1817\u181A\u181D\u1820\u1823\u1826\u1829\u182C\u182F\u1834\u1837\u183A"+ "\u183D\u1842\u1846\u1849\u184C\u184F\u1852\u1855\u1858\u185B\u185E\u1861"+ "\u1864\u1868\u186B\u186E\u1872\u1876\u1879\u187E\u1882\u1885\u1888\u188B"+ "\u7FFF\u7FFF\u188E\u1891\u1894\u1897\u189A\u189D\u18A0\u18A3\u18A6\u18A9"+ "\u18AD\u18B1\u18B5\u18B9\u18BD\u18C1\u18C5\u18C9\u18CD\u18D1\u18D5\u18D9"+ "\u18DD\u18E1\u18E5\u18E9\u18ED\u18F1\u18F5\u18F9\u18FD\u7FFF\u1901\u1904"+ "\u1907\u190A\u190E\u1912\u1915\uA5A5\014\u7FFF\u1918\u191B\u191E\u1921"+ "\u1924\uA5A5\007\u7FFF\u1927\u192A\u192C\u192E\u1930\u1932\u1934\u1936"+ "\u1938\u193A\u193C\u0C1E\u0C21\u0C24\u0C28\u0C2C\u0C2F\u0C32\u0C35\u0C38"+ "\u0C3B\u0C3E\u0C41\u0C44\u7FFF\u0C47\u0C4A\u0C4D\u0C50\u0C53\u7FFF\u0C56"+ "\u7FFF\u0C59\u0C5C\u7FFF\u0C5F\u0C62\u7FFF\u0C65\u0C68\u0C6B\u0C6E\u0C71"+ "\u0C74\u0C77\u0C7A\u0C7D\u193E\u1941\u1943\u1945\u1947\u1949\u194B\u194D"+ "\u194F\u1951\u1953\u1955\u1957\u1959\u195B\u195D\u195F\u1961\u1963\u1965"+ "\u1967\u1969\u196B\u196D\u196F\u1971\u1973\u1975\u1977\u1979\u197B\u197D"+ "\u197F\u1981\u1983\u1985\u1987\u1989\u198B\u198D\u198F\u1991\u1993\u1995"+ "\u1997\u1999\u199B\u199D\u199F\u19A1\u19A3\u19A5\u19A7\u19A9\u19AB\u19AD"+ "\u19AF\u19B1\u19B3\u19B5\u19B7\u19B9\u19BB\u19BD\u19BF\u19C1\u19C3\u19C5"+ "\u19C7\u19C9\u19CB\u19CD\u19CF\u19D1\u19D3\u19D5\u19D7\u19D9\u19DB\u19DD"+ "\u19DF\u19E1\u19E3\u19E5\u19E7\u19E9\u19EB\u19ED\u19EF\u19F1\u19F3\u19F5"+ "\u19F7\u19F9\u19FB\u19FD\u19FF\u1A01\u1A03\uA5A5!\u7FFF\u1A05\u1A07\u1A09"+ "\u1A0B\u1A0D\u1A0F\u1A11\u1A13\u1A15\u1A17\u1A19\u1A1B\u1A1D\u1A1F\u1A21"+ "\u1A23\u1A25\u1A27\u1A29\u1A2B\u1A2D\uA5A5\024\u7FFF\u1A2F\u1A31\u1A33"+ "\u1A35\uA5A50\u7FFF\u1A37\u1A3A\u1A3C\u1A3E\u1A41\u1A44\u1A46\u1A48\u1A4A"+ "\u1A4C\u1A4E\u1A50\u1A52\u1A54\u1A56\u1A58\u1A5A\u1A5C\u1A5E\u1A60\u1A62"+ "\uA5A5\004\u7FFF\u1A64\u1A67\u1A6A\u1A6D\u1A70\u1A73\u1A76\u1A79\u1A7B"+ "\u1A7D\u7FFF\u1A7F\u1A81\u1A83\u1A85\u1A87\u1A89\u1A8B\u1A8D\u1A8F\u1A91"+ "\u1A93\u1A95\u1A97\u1A99\u1A9B\u1A9D\u1A9F\u1AA1\u1AA3\u7FFF\u1AA5\u1AA7"+ "\u1AA9\u1AAB\uA5A5\004\u7FFF\u1AAD\u1AB0\u1AB3\u7FFF\u1AB6\u7FFF\u1AB9"+ "\u1ABC\u1ABF\u1AC2\u1AC5\u1AC8\u1ACB\u1ACE\u1AD1\u1AD4\u1AD7\u1AD9\u1ADB"+ "\u1ADD\u1ADF\u1AE1\u1AE3\u1AE5\u1AE7\u1AE9\u1AEB\u1AED\u1AEF\u1AF1\u1AF3"+ "\u1AF5\u1AF7\u1AF9\u1AFB\u1AFD\u1AFF\u1B01\u1B03\u1B05\u1B07\u1B09\u1B0B"+ "\u1B0D\u1B0F\u1B11\u1B13\u1B15\u1B17\u1B19\u1B1B\u1B1D\u1B1F\u1B21\u1B23"+ "\u1B25\u1B27\u1B29\u1B2B\u1B2D\u1B2F\u1B31\u1B33\u1B35\u1B37\u1B39\u1B3B"+ "\u1B3D\u1B3F\u1B41\u1B43\u1B45\u1B47\u1B49\u1B4B\u1B4D\u1B4F\u1B51\u1B53"+ "\u1B55\u1B57\u1B59\u1B5B\u1B5D\u1B5F\u1B61\u1B63\u1B65\u1B67\u1B69\u1B6B"+ "\u1B6D\u1B6F\u1B71\u1B73\u1B75\u1B77\u1B79\u1B7B\u1B7D\u1B7F\u1B81\u1B83"+ "\u1B85\u1B87\u1B89\u1B8B\u1B8D\u1B8F\u1B91\u1B93\u1B95\u1B97\u1B99\u1B9B"+ "\u1B9D\u1B9F\u1BA1\u1BA3\u1BA5\u1BA7\u1BA9\u1BAB\u1BAD\u1BAF\u1BB1\u1BB3"+ "\u1BB5\u1BB7\u1BB9\u1BBB\u1BBD\u1BBF\uA5A5\013\u7FFF\u1BC1\u1BC3\u1BC5"+ "\u1BC7\u1BC9\u1BCB\u1BCD\u1BCF\u1BD1\u1BD3\u1BD5\u1BD7\u1BD9\u1BDB\u1BDD"+ "\u1BDF\u1BE1\u1BE3\u1BE5\u1BE7\u1BE9\u1BEB\u1BED\u1BEF\u1BF1\u1BF3\u1BF5"+ "\u1BF7\u1BF9\u1BFB\u1BFD\u1BFF\u1C01\u1C03\u1C05\u1C07\u1C09\u1C0B\u1C0D"+ "\u1C0F\u1C11\u1C13\u1C15\u1C17\u1C19\u1C1B\u1C1D\u1C1F\u1C21\u1C23\u1C25"+ "\u1C27\u1C29\u1C2B\u1C2D\u1C2F\u1C31\u1C33\u1C35\u1C37\u1C39\u1C3B\u1C3E"+ "\u1C41\u1C44\u1C46\u1C48\u1C4A\u1C4C\u1C4E\u1C50\u1C52\u1C54\u1C56\u1C58"+ "\u1C5A\u1C5C\u1C5E\u1C60\u1C62\u1C64\u1C66\u1C68\u1C6A\u1C6C\u1C6E\u1C70"+ "\u1C72\u1C74\u1C76\u1C78\u1C7A\u1C7C\u1C7E\u7FFF\u7FFF\u1C80\u1C82\u1C84"+ "\u1C86\u1C88\u1C8A\u1C8C\u1C8E\u1C90\u1C92\u1C94\u1C96\u1C98\u1C9A\u1C9C"+ "\u1C9E\u1CA0\u1CA2\u1CA4\u1CA6\u1CA8\u1CAA\u1CAC\u1CAE\u1CB0\u1CB2\u1CB4"+ "\u1CB6\u1CB8\u1CBA\u1CBC\u1CBE\u1CC0\u1CC2\u1CC4\u1CC6\u1CC8\u1CCA\u1CCC"+ "\u1CCE\u1CD0\u1CD2\u1CD4\u1CD6\u1CD8\u1CDA\u1CDC\u1CDE\u1CE0\u1CE2\u1CE4"+ "\u1CE6\u1CE8\u1CEA\u1CEC\u1CEE\u1CF0\u1CF2\u1CF4\u1CF6\u1CF8\u1CFA\u1CFD"+ "\u1D00\u1D02\u1D04\u1D07\u1D0A\u1D0C\u1D0F\u1D12\u1D14\u1D17\u1D19\u1D1C"+ "\u1D1F\u1D22\u1D25\u1D28\u1D2B\u1D2E\u1D30\u1D32\u1D35\u1D38\u1D3A\u1D3D"+ "\u1D3F\u1D41\u1D44\u1D46\u1D48\u1D4A\u1D4C\u7FFF\u7FFF\u7FFF\u1D4E\u1D50"+ "\u1D53\u1D55\u1D58\u1D5A\u7FFF\u7FFF\u1D5D\u1D5F\u1D62\u1D64\u1D67\u1D6B"+ "\u7FFF\u7FFF\u1D6E\u1D70\u1D72\u1D75\u1D79\u1D7C\u7FFF\u7FFF\u1D7E\u1D80"+ "\u1D83\u7FFF\u7FFF\u7FFF\u1D85\u1D87\u1D89\u1D8B\u1D8E\u1D90\u1D92\u7FFF"+ "\u1D94\u1D96\u1D98\u1D9A\u1D9C\u1D9E\u1DA0\uA5A5\021\u7FFF" ); private static final short kCanonicalIndex[] = Utility.RLEStringToShortArray( "\000\u0200\uA5A5\006\000\u0080\000\000\u00FD\000\u016C\u01B1\u0222\uA5A5"+ "\004\000\u02A1\u0320\u039E\u041D\u049C\u04F3\u0541\u0598\u05E6\000\u0635"+ "\u0684\u06EC\u076C\uA5A5!\000\u07A6\uA5A5\036\000\u0808\u086F\uA5A5\u0194"+ "\000\u08D1\uA5A5\005\000\u0931\000\000\000" ); private static final byte kCanonicalValues[] = Utility.RLEStringToByteArray( "\000\u09B1\uA580\u80A5\u1566\u68A5\u045C\u6858\uA505\u5C4A\u4AA5\u045C"+ "\u4A4A\uA50B\u5CA5\u0581\uA504\u5CA5\u0866\u5CA5\u1A80\u6A6A\uA51E\u80A5"+ "\u0466\uA579\u805C\uA504\u665C\u6666\u665E\u5CA5\u0666\u80A5\u055C\u6666"+ "\u5C66\u665E\u6666\u8A8B\u8C8D\u8E8F\u9091\u9293\u8094\u9596\u8097\u8098"+ "\u9980\u66A5\u4B80\u9B9C\u9D9E\u9FA0\uA1A2\uA51D\u80A3\uA556\u80A5\u0766"+ "\u8080\uA504\u665C\u6680\u8066\u6680\u5C66\u665C\uA512\u80A5\uA5A4\uA539"+ "\u8087\uA504\u80A6\uA7A8\uA9AA\uABAC\uADA5\u0480\u8980\u8080\uAEAF\u6666"+ "\uA50D\u80B0\uB1A5\u1C80\uB2A5\u3A80\u87A5\u0480\uB3B4\uB5B6\uA508\u8089"+ "\uA514\u80B7\uB8A5\u1C80\uB9A5\u3980\u87A5\u0480\uBABB\uA504\u80BC\uBD80"+ "\u80BE\uBF89\uA522\u80C0\uC1A5\u0E80\uC3C2\uA539\u8087\uA504\u80C4\uC5C6"+ "\uC7C8\u80C9\uCAA5\u0480\u89A5\u3280\uCBA5\u3A80\u8780\u80CC\u80CD\uCECF"+ "\uA509\u8089\uA508\u8066\uA540\u80D0\uA50C\u8089\uA53E\u80D1\uD2D3\uA505"+ "\u80D4\uD5D6\u80D7\uD8D9\u89A5\u0780\uDADB\uA53F\u80DC\uA506\u80DD\uA505"+ "\u80DE\u89A5\u4180\uDFE0\uE1A5\u0980\u89A5\u3280\uE280\u80E3\uE4E5\uE6E7"+ "\uE8E9\uA50C\u80EA\uEBEC\uEDEE\uEFF0\u00A5\u3180\uF180\u80F2\uF3F4\uF5F6"+ "\uF780\uF8F9\uA50B\u80FA\uFBFC\uFDFE\uFFA5\u3280\u5C5C\uA51B\u8066\u8066"+ "\u8058\uA504\u805C\u5CA5\u3180\u0102\u0304\u0506\u0708\u090A\u0B0C\u0D0E"+ "\u800F\u1066\u6689\u80A5\u0666\uA504\u80A5\u0686\u8086\u80A5\u1586\u8080"+ "\u80A5\u0786\u8086\uA550\u8066\u6681\u81A5\u0466\u8181\u8166\u66A5\u0480"+ "\u81A5\u2A80\u5A64\u685E\u6060\uA550\u8088\u88A5\u6580\u9AA5\u6180\uA504"+ "\u66A5\u5C80" ); // END RUN-LENGTH ENCODED ARRAYS [LIU] // START OF GENERATED CODE private static String contents = "\u0041\u0300\u0000\u0041\u0301\u0000\u0041\u0302\u0000\u0041" + "\u0303\u0000\u0041\u0308\u0000\u0041\u030a\u0000\u0043\u0327" + "\u0000\u0045\u0300\u0000\u0045\u0301\u0000\u0045\u0302\u0000" + "\u0045\u0308\u0000\u0049\u0300\u0000\u0049\u0301\u0000\u0049" + "\u0302\u0000\u0049\u0308\u0000\u004e\u0303\u0000\u004f\u0300" + "\u0000\u004f\u0301\u0000\u004f\u0302\u0000\u004f\u0303\u0000" + "\u004f\u0308\u0000\u0055\u0300\u0000\u0055\u0301\u0000\u0055" + "\u0302\u0000\u0055\u0308\u0000\u0059\u0301\u0000\u0061\u0300" + "\u0000\u0061\u0301\u0000\u0061\u0302\u0000\u0061\u0303\u0000" + "\u0061\u0308\u0000\u0061\u030a\u0000\u0063\u0327\u0000\u0065" + "\u0300\u0000\u0065\u0301\u0000\u0065\u0302\u0000\u0065\u0308" + "\u0000\u0069\u0300\u0000\u0069\u0301\u0000\u0069\u0302\u0000" + "\u0069\u0308\u0000\u006e\u0303\u0000\u006f\u0300\u0000\u006f" + "\u0301\u0000\u006f\u0302\u0000\u006f\u0303\u0000\u006f\u0308" + "\u0000\u0075\u0300\u0000\u0075\u0301\u0000\u0075\u0302\u0000" + "\u0075\u0308\u0000\u0079\u0301\u0000\u0079\u0308\u0000\u0041" + "\u0304\u0000\u0061\u0304\u0000\u0041\u0306\u0000\u0061\u0306" + "\u0000\u0041\u0328\u0000\u0061\u0328\u0000\u0043\u0301\u0000" + "\u0063\u0301\u0000\u0043\u0302\u0000\u0063\u0302\u0000\u0043" + "\u0307\u0000\u0063\u0307\u0000\u0043\u030c\u0000\u0063\u030c" + "\u0000\u0044\u030c\u0000\u0064\u030c\u0000\u0045\u0304\u0000" + "\u0065\u0304\u0000\u0045\u0306\u0000\u0065\u0306\u0000\u0045" + "\u0307\u0000\u0065\u0307\u0000\u0045\u0328\u0000\u0065\u0328" + "\u0000\u0045\u030c\u0000\u0065\u030c\u0000\u0047\u0302\u0000" + "\u0067\u0302\u0000\u0047\u0306\u0000\u0067\u0306\u0000\u0047" + "\u0307\u0000\u0067\u0307\u0000\u0047\u0327\u0000\u0067\u0327" + "\u0000\u0048\u0302\u0000\u0068\u0302\u0000\u0049\u0303\u0000" + "\u0069\u0303\u0000\u0049\u0304\u0000\u0069\u0304\u0000\u0049" + "\u0306\u0000\u0069\u0306\u0000\u0049\u0328\u0000\u0069\u0328" + "\u0000\u0049\u0307\u0000\u004a\u0302\u0000\u006a\u0302\u0000" + "\u004b\u0327\u0000\u006b\u0327\u0000\u004c\u0301\u0000\u006c" + "\u0301\u0000\u004c\u0327\u0000\u006c\u0327\u0000\u004c\u030c" + "\u0000\u006c\u030c\u0000\u004e\u0301\u0000\u006e\u0301\u0000" + "\u004e\u0327\u0000\u006e\u0327\u0000\u004e\u030c\u0000\u006e" + "\u030c\u0000\u004f\u0304\u0000\u006f\u0304\u0000\u004f\u0306" + "\u0000\u006f\u0306\u0000\u004f\u030b\u0000\u006f\u030b\u0000" + "\u0052\u0301\u0000\u0072\u0301\u0000\u0052\u0327\u0000\u0072" + "\u0327\u0000\u0052\u030c\u0000\u0072\u030c\u0000\u0053\u0301" + "\u0000\u0073\u0301\u0000\u0053\u0302\u0000\u0073\u0302\u0000" + "\u0053\u0327\u0000\u0073\u0327\u0000\u0053\u030c\u0000\u0073" + "\u030c\u0000\u0054\u0327\u0000\u0074\u0327\u0000\u0054\u030c" + "\u0000\u0074\u030c\u0000\u0055\u0303\u0000\u0075\u0303\u0000" + "\u0055\u0304\u0000\u0075\u0304\u0000\u0055\u0306\u0000\u0075" + "\u0306\u0000\u0055\u030a\u0000\u0075\u030a\u0000\u0055\u030b" + "\u0000\u0075\u030b\u0000\u0055\u0328\u0000\u0075\u0328\u0000" + "\u0057\u0302\u0000\u0077\u0302\u0000\u0059\u0302\u0000\u0079" + "\u0302\u0000\u0059\u0308\u0000\u005a\u0301\u0000\u007a\u0301" + "\u0000\u005a\u0307\u0000\u007a\u0307\u0000\u005a\u030c\u0000" + "\u007a\u030c\u0000\u004f\u031b\u0000\u006f\u031b\u0000\u0055" + "\u031b\u0000\u0075\u031b\u0000\u0041\u030c\u0000\u0061\u030c" + "\u0000\u0049\u030c\u0000\u0069\u030c\u0000\u004f\u030c\u0000" + "\u006f\u030c\u0000\u0055\u030c\u0000\u0075\u030c\u0000\u0055" + "\u0308\u0304\u0000\u0075\u0308\u0304\u0000\u0055\u0308\u0301" + "\u0000\u0075\u0308\u0301\u0000\u0055\u0308\u030c\u0000\u0075" + "\u0308\u030c\u0000\u0055\u0308\u0300\u0000\u0075\u0308\u0300" + "\u0000\u0041\u0308\u0304\u0000\u0061\u0308\u0304\u0000\u0041" + "\u0307\u0304\u0000\u0061\u0307\u0304\u0000\u00c6\u0304\u0000" + "\u00e6\u0304\u0000\u0047\u030c\u0000\u0067\u030c\u0000\u004b" + "\u030c\u0000\u006b\u030c\u0000\u004f\u0328\u0000\u006f\u0328" + "\u0000\u004f\u0328\u0304\u0000\u006f\u0328\u0304\u0000\u01b7" + "\u030c\u0000\u0292\u030c\u0000\u006a\u030c\u0000\u0047\u0301" + "\u0000\u0067\u0301\u0000\u0041\u030a\u0301\u0000\u0061\u030a" + "\u0301\u0000\u00c6\u0301\u0000\u00e6\u0301\u0000\u00d8\u0301" + "\u0000\u00f8\u0301\u0000\u0041\u030f\u0000\u0061\u030f\u0000" + "\u0041\u0311\u0000\u0061\u0311\u0000\u0045\u030f\u0000\u0065" + "\u030f\u0000\u0045\u0311\u0000\u0065\u0311\u0000\u0049\u030f" + "\u0000\u0069\u030f\u0000\u0049\u0311\u0000\u0069\u0311\u0000" + "\u004f\u030f\u0000\u006f\u030f\u0000\u004f\u0311\u0000\u006f" + "\u0311\u0000\u0052\u030f\u0000\u0072\u030f\u0000\u0052\u0311" + "\u0000\u0072\u0311\u0000\u0055\u030f\u0000\u0075\u030f\u0000" + "\u0055\u0311\u0000\u0075\u0311\u0000\u0306\u0307\u0000\u0308" + "\u030d\u0000\u02b9\u0000\u00a8\u030d\u0000\u0391\u030d\u0000" + "\u00b7\u0000\u0395\u030d\u0000\u0397\u030d\u0000\u0399\u030d" + "\u0000\u039f\u030d\u0000\u03a5\u030d\u0000\u03a9\u030d\u0000" + "\u03b9\u0308\u030d\u0000\u0399\u0308\u0000\u03a5\u0308\u0000" + "\u03b1\u030d\u0000\u03b5\u030d\u0000\u03b7\u030d\u0000\u03b9" + "\u030d\u0000\u03c5\u0308\u030d\u0000\u03b9\u0308\u0000\u03c5" + "\u0308\u0000\u03bf\u030d\u0000\u03c5\u030d\u0000\u03c9\u030d" + "\u0000\u03d2\u030d\u0000\u03d2\u0308\u0000\u0415\u0308\u0000" + "\u0413\u0301\u0000\u0406\u0308\u0000\u041a\u0301\u0000\u0423" + "\u0306\u0000\u0418\u0306\u0000\u0438\u0306\u0000\u0435\u0308" + "\u0000\u0433\u0301\u0000\u0456\u0308\u0000\u043a\u0301\u0000" + "\u0443\u0306\u0000\u0474\u030f\u0000\u0475\u030f\u0000\u0416" + "\u0306\u0000\u0436\u0306\u0000\u0410\u0306\u0000\u0430\u0306" + "\u0000\u0410\u0308\u0000\u0430\u0308\u0000\u00c6\u0000\u00e6" + "\u0000\u0415\u0306\u0000\u0435\u0306\u0000\u018f\u0000\u0259" + "\u0000\u018f\u0308\u0000\u0259\u0308\u0000\u0416\u0308\u0000" + "\u0436\u0308\u0000\u0417\u0308\u0000\u0437\u0308\u0000\u01b7" + "\u0000\u0292\u0000\u0418\u0304\u0000\u0438\u0304\u0000\u0418" + "\u0308\u0000\u0438\u0308\u0000\u041e\u0308\u0000\u043e\u0308" + "\u0000\u019f\u0000\u0275\u0000\u019f\u0308\u0000\u0275\u0308" + "\u0000\u0423\u0304\u0000\u0443\u0304\u0000\u0423\u0308\u0000" + "\u0443\u0308\u0000\u0423\u030b\u0000\u0443\u030b\u0000\u0427" + "\u0308\u0000\u0447\u0308\u0000\u042b\u0308\u0000\u044b\u0308" + "\u0000\u0928\u093c\u0000\u0930\u093c\u0000\u0933\u093c\u0000" + "\u0915\u093c\u0000\u0916\u093c\u0000\u0917\u093c\u0000\u091c" + "\u093c\u0000\u0921\u093c\u0000\u0922\u093c\u0000\u092b\u093c" + "\u0000\u092f\u093c\u0000\u09ac\u09bc\u0000\u09c7\u09be\u0000" + "\u09c7\u09d7\u0000\u09a1\u09bc\u0000\u09a2\u09bc\u0000\u09af" + "\u09bc\u0000\u0a16\u0a3c\u0000\u0a17\u0a3c\u0000\u0a1c\u0a3c" + "\u0000\u0a21\u0a3c\u0000\u0a2b\u0a3c\u0000\u0b47\u0b56\u0000" + "\u0b47\u0b3e\u0000\u0b47\u0b57\u0000\u0b21\u0b3c\u0000\u0b22" + "\u0b3c\u0000\u0b2f\u0b3c\u0000\u0b92\u0bd7\u0000\u0bc6\u0bbe" + "\u0000\u0bc7\u0bbe\u0000\u0bc6\u0bd7\u0000\u0c46\u0c56\u0000" + "\u0cbf\u0cd5\u0000\u0cc6\u0cd5\u0000\u0cc6\u0cd6\u0000\u0cc6" + "\u0cc2\u0000\u0cc6\u0cc2\u0cd5\u0000\u0d46\u0d3e\u0000\u0d47" + "\u0d3e\u0000\u0d46\u0d57\u0000\u0e4d\u0e32\u0000\u0ecd\u0eb2" + "\u0000\u0f42\u0fb7\u0000\u0f4c\u0fb7\u0000\u0f51\u0fb7\u0000" + "\u0f56\u0fb7\u0000\u0f5b\u0fb7\u0000\u0f40\u0fb5\u0000\u0f71" + "\u0f72\u0000\u0f74\u0f71\u0000\u0fb2\u0f80\u0000\u0fb2\u0f80" + "\u0f71\u0000\u0fb3\u0f80\u0000\u0fb3\u0f80\u0f71\u0000\u0f80" + "\u0f71\u0000\u0f92\u0fb7\u0000\u0f9c\u0fb7\u0000\u0fa1\u0fb7" + "\u0000\u0fa6\u0fb7\u0000\u0fab\u0fb7\u0000\u0f90\u0fb5\u0000" + "\u0041\u0325\u0000\u0061\u0325\u0000\u0042\u0307\u0000\u0062" + "\u0307\u0000\u0042\u0323\u0000\u0062\u0323\u0000\u0042\u0331" + "\u0000\u0062\u0331\u0000\u0043\u0327\u0301\u0000\u0063\u0327" + "\u0301\u0000\u0044\u0307\u0000\u0064\u0307\u0000\u0044\u0323" + "\u0000\u0064\u0323\u0000\u0044\u0331\u0000\u0064\u0331\u0000" + "\u0044\u0327\u0000\u0064\u0327\u0000\u0044\u032d\u0000\u0064" + "\u032d\u0000\u0045\u0304\u0300\u0000\u0065\u0304\u0300\u0000" + "\u0045\u0304\u0301\u0000\u0065\u0304\u0301\u0000\u0045\u032d" + "\u0000\u0065\u032d\u0000\u0045\u0330\u0000\u0065\u0330\u0000" + "\u0045\u0306\u0327\u0000\u0065\u0306\u0327\u0000\u0046\u0307" + "\u0000\u0066\u0307\u0000\u0047\u0304\u0000\u0067\u0304\u0000" + "\u0048\u0307\u0000\u0068\u0307\u0000\u0048\u0323\u0000\u0068" + "\u0323\u0000\u0048\u0308\u0000\u0068\u0308\u0000\u0048\u0327" + "\u0000\u0068\u0327\u0000\u0048\u032e\u0000\u0068\u032e\u0000" + "\u0049\u0330\u0000\u0069\u0330\u0000\u0049\u0308\u0301\u0000" + "\u0069\u0308\u0301\u0000\u004b\u0301\u0000\u006b\u0301\u0000" + "\u004b\u0323\u0000\u006b\u0323\u0000\u004b\u0331\u0000\u006b" + "\u0331\u0000\u004c\u0323\u0000\u006c\u0323\u0000\u004c\u0323" + "\u0304\u0000\u006c\u0323\u0304\u0000\u004c\u0331\u0000\u006c" + "\u0331\u0000\u004c\u032d\u0000\u006c\u032d\u0000\u004d\u0301" + "\u0000\u006d\u0301\u0000\u004d\u0307\u0000\u006d\u0307\u0000" + "\u004d\u0323\u0000\u006d\u0323\u0000\u004e\u0307\u0000\u006e" + "\u0307\u0000\u004e\u0323\u0000\u006e\u0323\u0000\u004e\u0331" + "\u0000\u006e\u0331\u0000\u004e\u032d\u0000\u006e\u032d\u0000" + "\u004f\u0303\u0301\u0000\u006f\u0303\u0301\u0000\u004f\u0303" + "\u0308\u0000\u006f\u0303\u0308\u0000\u004f\u0304\u0300\u0000" + "\u006f\u0304\u0300\u0000\u004f\u0304\u0301\u0000\u006f\u0304" + "\u0301\u0000\u0050\u0301\u0000\u0070\u0301\u0000\u0050\u0307" + "\u0000\u0070\u0307\u0000\u0052\u0307\u0000\u0072\u0307\u0000" + "\u0052\u0323\u0000\u0072\u0323\u0000\u0052\u0323\u0304\u0000" + "\u0072\u0323\u0304\u0000\u0052\u0331\u0000\u0072\u0331\u0000" + "\u0053\u0307\u0000\u0073\u0307\u0000\u0053\u0323\u0000\u0073" + "\u0323\u0000\u0053\u0301\u0307\u0000\u0073\u0301\u0307\u0000" + "\u0053\u030c\u0307\u0000\u0073\u030c\u0307\u0000\u0053\u0323" + "\u0307\u0000\u0073\u0323\u0307\u0000\u0054\u0307\u0000\u0074" + "\u0307\u0000\u0054\u0323\u0000\u0074\u0323\u0000\u0054\u0331" + "\u0000\u0074\u0331\u0000\u0054\u032d\u0000\u0074\u032d\u0000" + "\u0055\u0324\u0000\u0075\u0324\u0000\u0055\u0330\u0000\u0075" + "\u0330\u0000\u0055\u032d\u0000\u0075\u032d\u0000\u0055\u0303" + "\u0301\u0000\u0075\u0303\u0301\u0000\u0055\u0304\u0308\u0000" + "\u0075\u0304\u0308\u0000\u0056\u0303\u0000\u0076\u0303\u0000" + "\u0056\u0323\u0000\u0076\u0323\u0000\u0057\u0300\u0000\u0077" + "\u0300\u0000\u0057\u0301\u0000\u0077\u0301\u0000\u0057\u0308" + "\u0000\u0077\u0308\u0000\u0057\u0307\u0000\u0077\u0307\u0000" + "\u0057\u0323\u0000\u0077\u0323\u0000\u0058\u0307\u0000\u0078" + "\u0307\u0000\u0058\u0308\u0000\u0078\u0308\u0000\u0059\u0307" + "\u0000\u0079\u0307\u0000\u005a\u0302\u0000\u007a\u0302\u0000" + "\u005a\u0323\u0000\u007a\u0323\u0000\u005a\u0331\u0000\u007a" + "\u0331\u0000\u0068\u0331\u0000\u0074\u0308\u0000\u0077\u030a" + "\u0000\u0079\u030a\u0000\u017f\u0307\u0000\u0041\u0323\u0000" + "\u0061\u0323\u0000\u0041\u0309\u0000\u0061\u0309\u0000\u0041" + "\u0302\u0301\u0000\u0061\u0302\u0301\u0000\u0041\u0302\u0300" + "\u0000\u0061\u0302\u0300\u0000\u0041\u0302\u0309\u0000\u0061" + "\u0302\u0309\u0000\u0041\u0302\u0303\u0000\u0061\u0302\u0303" + "\u0000\u0041\u0302\u0323\u0000\u0061\u0302\u0323\u0000\u0041" + "\u0306\u0301\u0000\u0061\u0306\u0301\u0000\u0041\u0306\u0300" + "\u0000\u0061\u0306\u0300\u0000\u0041\u0306\u0309\u0000\u0061" + "\u0306\u0309\u0000\u0041\u0306\u0303\u0000\u0061\u0306\u0303" + "\u0000\u0041\u0306\u0323\u0000\u0061\u0306\u0323\u0000\u0045" + "\u0323\u0000\u0065\u0323\u0000\u0045\u0309\u0000\u0065\u0309" + "\u0000\u0045\u0303\u0000\u0065\u0303\u0000\u0045\u0302\u0301" + "\u0000\u0065\u0302\u0301\u0000\u0045\u0302\u0300\u0000\u0065" + "\u0302\u0300\u0000\u0045\u0302\u0309\u0000\u0065\u0302\u0309" + "\u0000\u0045\u0302\u0303\u0000\u0065\u0302\u0303\u0000\u0045" + "\u0302\u0323\u0000\u0065\u0302\u0323\u0000\u0049\u0309\u0000" + "\u0069\u0309\u0000\u0049\u0323\u0000\u0069\u0323\u0000\u004f" + "\u0323\u0000\u006f\u0323\u0000\u004f\u0309\u0000\u006f\u0309" + "\u0000\u004f\u0302\u0301\u0000\u006f\u0302\u0301\u0000\u004f" + "\u0302\u0300\u0000\u006f\u0302\u0300\u0000\u004f\u0302\u0309" + "\u0000\u006f\u0302\u0309\u0000\u004f\u0302\u0303\u0000\u006f" + "\u0302\u0303\u0000\u004f\u0302\u0323\u0000\u006f\u0302\u0323" + "\u0000\u004f\u031b\u0301\u0000\u006f\u031b\u0301\u0000\u004f" + "\u031b\u0300\u0000\u006f\u031b\u0300\u0000\u004f\u031b\u0309" + "\u0000\u006f\u031b\u0309\u0000\u004f\u031b\u0303\u0000\u006f" + "\u031b\u0303\u0000\u004f\u031b\u0323\u0000\u006f\u031b\u0323" + "\u0000\u0055\u0323\u0000\u0075\u0323\u0000\u0055\u0309\u0000" + "\u0075\u0309\u0000\u0055\u031b\u0301\u0000\u0075\u031b\u0301" + "\u0000\u0055\u031b\u0300\u0000\u0075\u031b\u0300\u0000\u0055" + "\u031b\u0309\u0000\u0075\u031b\u0309\u0000\u0055\u031b\u0303" + "\u0000\u0075\u031b\u0303\u0000\u0055\u031b\u0323\u0000\u0075" + "\u031b\u0323\u0000\u0059\u0300\u0000\u0079\u0300\u0000\u0059" + "\u0323\u0000\u0079\u0323\u0000\u0059\u0309\u0000\u0079\u0309" + "\u0000\u0059\u0303\u0000\u0079\u0303\u0000\u03b1\u0313\u0000" + "\u03b1\u0314\u0000\u03b1\u0313\u0300\u0000\u03b1\u0314\u0300" + "\u0000\u03b1\u0313\u0301\u0000\u03b1\u0314\u0301\u0000\u03b1" + "\u0313\u0342\u0000\u03b1\u0314\u0342\u0000\u0391\u0313\u0000" + "\u0391\u0314\u0000\u0391\u0313\u0300\u0000\u0391\u0314\u0300" + "\u0000\u0391\u0313\u0301\u0000\u0391\u0314\u0301\u0000\u0391" + "\u0313\u0342\u0000\u0391\u0314\u0342\u0000\u03b5\u0313\u0000" + "\u03b5\u0314\u0000\u03b5\u0313\u0300\u0000\u03b5\u0314\u0300" + "\u0000\u03b5\u0313\u0301\u0000\u03b5\u0314\u0301\u0000\u0395" + "\u0313\u0000\u0395\u0314\u0000\u0395\u0313\u0300\u0000\u0395" + "\u0314\u0300\u0000\u0395\u0313\u0301\u0000\u0395\u0314\u0301" + "\u0000\u03b7\u0313\u0000\u03b7\u0314\u0000\u03b7\u0313\u0300" + "\u0000\u03b7\u0314\u0300\u0000\u03b7\u0313\u0301\u0000\u03b7" + "\u0314\u0301\u0000\u03b7\u0313\u0342\u0000\u03b7\u0314\u0342" + "\u0000\u0397\u0313\u0000\u0397\u0314\u0000\u0397\u0313\u0300" + "\u0000\u0397\u0314\u0300\u0000\u0397\u0313\u0301\u0000\u0397" + "\u0314\u0301\u0000\u0397\u0313\u0342\u0000\u0397\u0314\u0342" + "\u0000\u03b9\u0313\u0000\u03b9\u0314\u0000\u03b9\u0313\u0300" + "\u0000\u03b9\u0314\u0300\u0000\u03b9\u0313\u0301\u0000\u03b9" + "\u0314\u0301\u0000\u03b9\u0313\u0342\u0000\u03b9\u0314\u0342" + "\u0000\u0399\u0313\u0000\u0399\u0314\u0000\u0399\u0313\u0300" + "\u0000\u0399\u0314\u0300\u0000\u0399\u0313\u0301\u0000\u0399" + "\u0314\u0301\u0000\u0399\u0313\u0342\u0000\u0399\u0314\u0342" + "\u0000\u03bf\u0313\u0000\u03bf\u0314\u0000\u03bf\u0313\u0300" + "\u0000\u03bf\u0314\u0300\u0000\u03bf\u0313\u0301\u0000\u03bf" + "\u0314\u0301\u0000\u039f\u0313\u0000\u039f\u0314\u0000\u039f" + "\u0313\u0300\u0000\u039f\u0314\u0300\u0000\u039f\u0313\u0301" + "\u0000\u039f\u0314\u0301\u0000\u03c5\u0313\u0000\u03c5\u0314" + "\u0000\u03c5\u0313\u0300\u0000\u03c5\u0314\u0300\u0000\u03c5" + "\u0313\u0301\u0000\u03c5\u0314\u0301\u0000\u03c5\u0313\u0342" + "\u0000\u03c5\u0314\u0342\u0000\u03a5\u0314\u0000\u03a5\u0314" + "\u0300\u0000\u03a5\u0314\u0301\u0000\u03a5\u0314\u0342\u0000" + "\u03c9\u0313\u0000\u03c9\u0314\u0000\u03c9\u0313\u0300\u0000" + "\u03c9\u0314\u0300\u0000\u03c9\u0313\u0301\u0000\u03c9\u0314" + "\u0301\u0000\u03c9\u0313\u0342\u0000\u03c9\u0314\u0342\u0000" + "\u03a9\u0313\u0000\u03a9\u0314\u0000\u03a9\u0313\u0300\u0000" + "\u03a9\u0314\u0300\u0000\u03a9\u0313\u0301\u0000\u03a9\u0314" + "\u0301\u0000\u03a9\u0313\u0342\u0000\u03a9\u0314\u0342\u0000" + "\u03b1\u0300\u0000\u03b1\u0301\u0000\u03b5\u0300\u0000\u03b5" + "\u0301\u0000\u03b7\u0300\u0000\u03b7\u0301\u0000\u03b9\u0300" + "\u0000\u03b9\u0301\u0000\u03bf\u0300\u0000\u03bf\u0301\u0000" + "\u03c5\u0300\u0000\u03c5\u0301\u0000\u03c9\u0300\u0000\u03c9" + "\u0301\u0000\u03b1\u0313\u0345\u0000\u03b1\u0314\u0345\u0000" + "\u03b1\u0300\u0313\u0345\u0000\u03b1\u0300\u0314\u0345\u0000" + "\u03b1\u0301\u0313\u0345\u0000\u03b1\u0301\u0314\u0345\u0000" + "\u03b1\u0342\u0313\u0345\u0000\u03b1\u0342\u0314\u0345\u0000" + "\u0391\u0313\u0345\u0000\u0391\u0314\u0345\u0000\u0391\u0300" + "\u0313\u0345\u0000\u0391\u0300\u0314\u0345\u0000\u0391\u0301" + "\u0313\u0345\u0000\u0391\u0301\u0314\u0345\u0000\u0391\u0342" + "\u0313\u0345\u0000\u0391\u0342\u0314\u0345\u0000\u03b7\u0313" + "\u0345\u0000\u03b7\u0314\u0345\u0000\u03b7\u0300\u0313\u0345" + "\u0000\u03b7\u0300\u0314\u0345\u0000\u03b7\u0301\u0313\u0345" + "\u0000\u03b7\u0301\u0314\u0345\u0000\u03b7\u0342\u0313\u0345" + "\u0000\u03b7\u0342\u0314\u0345\u0000\u0397\u0313\u0345\u0000" + "\u0397\u0314\u0345\u0000\u0397\u0300\u0313\u0345\u0000\u0397" + "\u0300\u0314\u0345\u0000\u0397\u0301\u0313\u0345\u0000\u0397" + "\u0301\u0314\u0345\u0000\u0397\u0342\u0313\u0345\u0000\u0397" + "\u0342\u0314\u0345\u0000\u03c9\u0313\u0345\u0000\u03c9\u0314" + "\u0345\u0000\u03c9\u0300\u0313\u0345\u0000\u03c9\u0300\u0314" + "\u0345\u0000\u03c9\u0301\u0313\u0345\u0000\u03c9\u0301\u0314" + "\u0345\u0000\u03c9\u0342\u0313\u0345\u0000\u03c9\u0342\u0314" + "\u0345\u0000\u03a9\u0313\u0345\u0000\u03a9\u0314\u0345\u0000" + "\u03a9\u0300\u0313\u0345\u0000\u03a9\u0300\u0314\u0345\u0000" + "\u03a9\u0301\u0313\u0345\u0000\u03a9\u0301\u0314\u0345\u0000" + "\u03a9\u0342\u0313\u0345\u0000\u03a9\u0342\u0314\u0345\u0000" + "\u03b1\u0306\u0000\u03b1\u0304\u0000\u03b1\u0300\u0345\u0000" + "\u03b1\u0345\u0000\u03b1\u0301\u0345\u0000\u03b1\u0342\u0000" + "\u03b1\u0342\u0345\u0000\u0391\u0306\u0000\u0391\u0304\u0000" + "\u0391\u0300\u0000\u0391\u0301\u0000\u0391\u0345\u0000\u0399" + "\u0000\u00a8\u0342\u0000\u03b7\u0300\u0345\u0000\u03b7\u0345" + "\u0000\u03b7\u0301\u0345\u0000\u03b7\u0342\u0000\u03b7\u0342" + "\u0345\u0000\u0395\u0300\u0000\u0395\u0301\u0000\u0397\u0300" + "\u0000\u0397\u0301\u0000\u0397\u0345\u0000\u1fbf\u0300\u0000" + "\u1fbf\u0301\u0000\u1fbf\u0342\u0000\u03b9\u0306\u0000\u03b9" + "\u0304\u0000\u03b9\u0308\u0300\u0000\u03b9\u0308\u0301\u0000" + "\u03b9\u0342\u0000\u03b9\u0308\u0342\u0000\u0399\u0306\u0000" + "\u0399\u0304\u0000\u0399\u0300\u0000\u0399\u0301\u0000\u1ffe" + "\u0300\u0000\u1ffe\u0301\u0000\u1ffe\u0342\u0000\u03c5\u0306" + "\u0000\u03c5\u0304\u0000\u03c5\u0308\u0300\u0000\u03c5\u0308" + "\u0301\u0000\u03c1\u0313\u0000\u03c1\u0314\u0000\u03c5\u0342" + "\u0000\u03c5\u0308\u0342\u0000\u03a5\u0306\u0000\u03a5\u0304" + "\u0000\u03a5\u0300\u0000\u03a5\u0301\u0000\u03a1\u0314\u0000" + "\u00a8\u0300\u0000\u00a8\u0301\u0000\u03c9\u0300\u0345\u0000" + "\u03c9\u0345\u0000\u03bf\u0301\u0345\u0000\u03c9\u0342\u0000" + "\u03c9\u0342\u0345\u0000\u039f\u0300\u0000\u039f\u0301\u0000" + "\u03a9\u0300\u0000\u03a9\u0301\u0000\u03a9\u0345\u0000\u00b4" + "\u0000\u2002\u0000\u2003\u0000\u03a9\u0000\u004b\u0000\u0041" + "\u030a\u0000\u2203\u0338\u0000\u2208\u0338\u0000\u220b\u0338" + "\u0000\u2223\u0338\u0000\u2225\u0338\u0000\u2243\u0338\u0000" + "\u2245\u0338\u0000\u2248\u0338\u0000\u2261\u0338\u0000\u224d" + "\u0338\u0000\u2264\u0338\u0000\u2265\u0338\u0000\u2272\u0338" + "\u0000\u2273\u0338\u0000\u2276\u0338\u0000\u2277\u0338\u0000" + "\u227a\u0338\u0000\u227b\u0338\u0000\u2282\u0338\u0000\u2283" + "\u0338\u0000\u2286\u0338\u0000\u2287\u0338\u0000\u22a2\u0338" + "\u0000\u22a8\u0338\u0000\u22a9\u0338\u0000\u22ab\u0338\u0000" + "\u227c\u0338\u0000\u227d\u0338\u0000\u2291\u0338\u0000\u2292" + "\u0338\u0000\u22b2\u0338\u0000\u22b3\u0338\u0000\u22b4\u0338" + "\u0000\u22b5\u0338\u0000\u3008\u0000\u3009\u0000\u304b\u3099" + "\u0000\u304d\u3099\u0000\u304f\u3099\u0000\u3051\u3099\u0000" + "\u3053\u3099\u0000\u3055\u3099\u0000\u3057\u3099\u0000\u3059" + "\u3099\u0000\u305b\u3099\u0000\u305d\u3099\u0000\u305f\u3099" + "\u0000\u3061\u3099\u0000\u3064\u3099\u0000\u3066\u3099\u0000" + "\u3068\u3099\u0000\u306f\u3099\u0000\u306f\u309a\u0000\u3072" + "\u3099\u0000\u3072\u309a\u0000\u3075\u3099\u0000\u3075\u309a" + "\u0000\u3078\u3099\u0000\u3078\u309a\u0000\u307b\u3099\u0000" + "\u307b\u309a\u0000\u3046\u3099\u0000\u309d\u3099\u0000\u30ab" + "\u3099\u0000\u30ad\u3099\u0000\u30af\u3099\u0000\u30b1\u3099" + "\u0000\u30b3\u3099\u0000\u30b5\u3099\u0000\u30b7\u3099\u0000" + "\u30b9\u3099\u0000\u30bb\u3099\u0000\u30bd\u3099\u0000\u30bf" + "\u3099\u0000\u30c1\u3099\u0000\u30c4\u3099\u0000\u30c6\u3099" + "\u0000\u30c8\u3099\u0000\u30cf\u3099\u0000\u30cf\u309a\u0000" + "\u30d2\u3099\u0000\u30d2\u309a\u0000\u30d5\u3099\u0000\u30d5" + "\u309a\u0000\u30d8\u3099\u0000\u30d8\u309a\u0000\u30db\u3099" + "\u0000\u30db\u309a\u0000\u30a6\u3099\u0000\u30ef\u3099\u0000" + "\u30f0\u3099\u0000\u30f1\u3099\u0000\u30f2\u3099\u0000\u30fd" + "\u3099\u0000\u05e9\u05c1\u0000\u05e9\u05c2\u0000\u05e9\u05bc" + "\u05c1\u0000\u05e9\u05bc\u05c2\u0000\u05d0\u05b7\u0000\u05d0" + "\u05b8\u0000\u05d0\u05bc\u0000\u05d1\u05bc\u0000\u05d2\u05bc" + "\u0000\u05d3\u05bc\u0000\u05d4\u05bc\u0000\u05d5\u05bc\u0000" + "\u05d6\u05bc\u0000\u05d8\u05bc\u0000\u05d9\u05bc\u0000\u05da" + "\u05bc\u0000\u05db\u05bc\u0000\u05dc\u05bc\u0000\u05de\u05bc" + "\u0000\u05e0\u05bc\u0000\u05e1\u05bc\u0000\u05e3\u05bc\u0000" + "\u05e4\u05bc\u0000\u05e6\u05bc\u0000\u05e7\u05bc\u0000\u05e8" + "\u05bc\u0000\u05e9\u05bc\u0000\u05ea\u05bc\u0000\u05d5\u05b9" + "\u0000\u05d1\u05bf\u0000\u05db\u05bf\u0000\u05e4\u05bf\u0000" + "\u0020\u0302\u0000\u0020\u0332\u0000\u0020\u0300\u0000\u0020" + "\u0000\u0020\u0308\u0000\u0061\u0000\u0020\u0304\u0000\u0032" + "\u0000\u0033\u0000\u0020\u0301\u0000\u03bc\u0000\u0020\u0327" + "\u0000\u0031\u0000\u006f\u0000\u0031\u2044\u0034\u0000\u0031" + "\u2044\u0032\u0000\u0033\u2044\u0034\u0000\u0049\u004a\u0000" + "\u0069\u006a\u0000\u004c\u00b7\u0000\u006c\u00b7\u0000\u02bc" + "\u006e\u0000\u0073\u0000\u0044\u005a\u030c\u0000\u0044\u007a" + "\u030c\u0000\u0064\u007a\u030c\u0000\u004c\u004a\u0000\u004c" + "\u006a\u0000\u006c\u006a\u0000\u004e\u004a\u0000\u004e\u006a" + "\u0000\u006e\u006a\u0000\u0044\u005a\u0000\u0044\u007a\u0000" + "\u0064\u007a\u0000\u0068\u0000\u0266\u0000\u006a\u0000\u0072" + "\u0000\u0279\u0000\u027b\u0000\u0281\u0000\u0077\u0000\u0079" + "\u0000\u0020\u0306\u0000\u0020\u0307\u0000\u0020\u030a\u0000" + "\u0020\u0328\u0000\u0020\u0303\u0000\u0020\u030b\u0000\u0263" + "\u0000\u006c\u0000\u0073\u0000\u0078\u0000\u0295\u0000\u0020" + "\u0345\u0000\u0020\u030d\u0000\u0020\u0308\u030d\u0000\u0565" + "\u0582\u0000\u0eab\u0e99\u0000\u0eab\u0ea1\u0000\u1100\u1100" + "\u0000\u1103\u1103\u0000\u1107\u1107\u0000\u1109\u1109\u0000" + "\u110c\u110c\u0000\u1102\u1100\u0000\u1102\u1102\u0000\u1102" + "\u1103\u0000\u1102\u1107\u0000\u1103\u1100\u0000\u1105\u1102" + "\u0000\u1105\u1105\u0000\u1105\u1112\u0000\u1105\u110b\u0000" + "\u1106\u1107\u0000\u1106\u110b\u0000\u1107\u1100\u0000\u1107" + "\u1102\u0000\u1107\u1103\u0000\u1107\u1109\u0000\u1107\u1109" + "\u1100\u0000\u1107\u1109\u1103\u0000\u1107\u1109\u1107\u0000" + "\u1107\u1109\u1109\u0000\u1107\u1109\u110c\u0000\u1107\u110c" + "\u0000\u1107\u110e\u0000\u1107\u1110\u0000\u1107\u1111\u0000" + "\u1107\u110b\u0000\u1107\u1107\u110b\u0000\u1109\u1100\u0000" + "\u1109\u1102\u0000\u1109\u1103\u0000\u1109\u1105\u0000\u1109" + "\u1106\u0000\u1109\u1107\u0000\u1109\u1107\u1100\u0000\u1109" + "\u1109\u1109\u0000\u1109\u110b\u0000\u1109\u110c\u0000\u1109" + "\u110e\u0000\u1109\u110f\u0000\u1109\u1110\u0000\u1109\u1111" + "\u0000\u1109\u1112\u0000\u113c\u113c\u0000\u113e\u113e\u0000" + "\u110b\u1100\u0000\u110b\u1103\u0000\u110b\u1106\u0000\u110b" + "\u1107\u0000\u110b\u1109\u0000\u110b\u1140\u0000\u110b\u110b" + "\u0000\u110b\u110c\u0000\u110b\u110e\u0000\u110b\u1110\u0000" + "\u110b\u1111\u0000\u110c\u110b\u0000\u114e\u114e\u0000\u1150" + "\u1150\u0000\u110e\u110f\u0000\u110e\u1112\u0000\u1111\u1107" + "\u0000\u1111\u110b\u0000\u1112\u1112\u0000\u1161\u1175\u0000" + "\u1163\u1175\u0000\u1165\u1175\u0000\u1167\u1175\u0000\u1169" + "\u1161\u0000\u1169\u1161\u1175\u0000\u1169\u1175\u0000\u116e" + "\u1165\u0000\u116e\u1165\u1175\u0000\u116e\u1175\u0000\u1173" + "\u1175\u0000\u1161\u1169\u0000\u1161\u116e\u0000\u1163\u1169" + "\u0000\u1163\u116d\u0000\u1165\u1169\u0000\u1165\u116e\u0000" + "\u1165\u1173\u0000\u1167\u1169\u0000\u1167\u116e\u0000\u1169" + "\u1165\u0000\u1169\u1165\u1175\u0000\u1169\u1167\u1175\u0000" + "\u1169\u1169\u0000\u1169\u116e\u0000\u116d\u1163\u0000\u116d" + "\u1163\u1175\u0000\u116d\u1167\u0000\u116d\u1169\u0000\u116d" + "\u1175\u0000\u116e\u1161\u0000\u116e\u1161\u1175\u0000\u116e" + "\u1165\u1173\u0000\u116e\u1167\u1175\u0000\u116e\u116e\u0000" + "\u1172\u1161\u0000\u1172\u1165\u0000\u1172\u1165\u1175\u0000" + "\u1172\u1167\u0000\u1172\u1167\u1175\u0000\u1172\u116e\u0000" + "\u1172\u1175\u0000\u1173\u116e\u0000\u1173\u1173\u0000\u1173" + "\u1175\u116e\u0000\u1175\u1161\u0000\u1175\u1163\u0000\u1175" + "\u1169\u0000\u1175\u116e\u0000\u1175\u1173\u0000\u1175\u119e" + "\u0000\u119e\u1165\u0000\u119e\u116e\u0000\u119e\u1175\u0000" + "\u119e\u119e\u0000\u11a8\u11a8\u0000\u11a8\u11ba\u0000\u11ab" + "\u11bd\u0000\u11ab\u11c2\u0000\u11af\u11a8\u0000\u11af\u11b7" + "\u0000\u11af\u11b8\u0000\u11af\u11ba\u0000\u11af\u11c0\u0000" + "\u11af\u11c1\u0000\u11af\u11c2\u0000\u11b8\u11ba\u0000\u11ba" + "\u11ba\u0000\u11a8\u11af\u0000\u11a8\u11ba\u11a8\u0000\u11ab" + "\u11a8\u0000\u11ab\u11ae\u0000\u11ab\u11ba\u0000\u11ab\u11eb" + "\u0000\u11ab\u11c0\u0000\u11ae\u11a8\u0000\u11ae\u11af\u0000" + "\u11af\u11a8\u11ba\u0000\u11af\u11ab\u0000\u11af\u11ae\u0000" + "\u11af\u11ae\u11c2\u0000\u11af\u11af\u0000\u11af\u11b7\u11a8" + "\u0000\u11af\u11b7\u11ba\u0000\u11af\u11b8\u11ba\u0000\u11af" + "\u11b8\u11c2\u0000\u11af\u11b8\u11bc\u0000\u11af\u11ba\u11ba" + "\u0000\u11af\u11eb\u0000\u11af\u11bf\u0000\u11af\u11f9\u0000" + "\u11b7\u11a8\u0000\u11b7\u11af\u0000\u11b7\u11b8\u0000\u11b7" + "\u11ba\u0000\u11b7\u11ba\u11ba\u0000\u11b7\u11eb\u0000\u11b7" + "\u11be\u0000\u11b7\u11c2\u0000\u11b7\u11bc\u0000\u11b8\u11af" + "\u0000\u11b8\u11c1\u0000\u11b8\u11c2\u0000\u11b8\u11bc\u0000" + "\u11ba\u11a8\u0000\u11ba\u11ae\u0000\u11ba\u11af\u0000\u11ba" + "\u11b8\u0000\u11bc\u11a8\u0000\u11bc\u11a8\u11a8\u0000\u11bc" + "\u11bc\u0000\u11bc\u11bf\u0000\u11f0\u11ba\u0000\u11f0\u11eb" + "\u0000\u11c1\u11b8\u0000\u11c1\u11bc\u0000\u11c2\u11ab\u0000" + "\u11c2\u11af\u0000\u11c2\u11b7\u0000\u11c2\u11b8\u0000\u0073" + "\u0307\u0000\u0020\u0313\u0000\u0020\u0313\u0000\u0020\u0342" + "\u0000\u0020\u0308\u0342\u0000\u0020\u0313\u0300\u0000\u0020" + "\u0313\u0301\u0000\u0020\u0313\u0342\u0000\u0020\u0314\u0300" + "\u0000\u0020\u0314\u0301\u0000\u0020\u0314\u0342\u0000\u0020" + "\u0308\u0300\u0000\u0020\u0308\u0301\u0000\u0020\u0300\u0000" + "\u0020\u0301\u0000\u0020\u0314\u0000\u0020\u0000\u0020\u0000" + "\u0020\u0000\u0020\u0000\u0020\u0000\u0020\u0000\u0020\u0000" + "\u0020\u0000\u0020\u0000\u0020\u0000\u0020\u0000\u2010\u0000" + "\u0020\u0333\u0000\u002e\u0000\u002e\u002e\u0000\u002e\u002e" + "\u002e\u0000\u2032\u2032\u0000\u2032\u2032\u2032\u0000\u2035" + "\u2035\u0000\u2035\u2035\u2035\u0000\u0021\u0021\u0000\u0020" + "\u0305\u0000\u0030\u0000\u0034\u0000\u0035\u0000\u0036\u0000" + "\u0037\u0000\u0038\u0000\u0039\u0000\u002b\u0000\u2212\u0000" + "\u003d\u0000\u0028\u0000\u0029\u0000\u006e\u0000\u0030\u0000" + "\u0031\u0000\u0032\u0000\u0033\u0000\u0034\u0000\u0035\u0000" + "\u0036\u0000\u0037\u0000\u0038\u0000\u0039\u0000\u002b\u0000" + "\u2212\u0000\u003d\u0000\u0028\u0000\u0029\u0000\u0052\u0073" + "\u0000\u0043\u0000\u00b0\u0043\u0000\u0190\u0000\u00b0\u0046" + "\u0000\u0067\u0000\u0048\u0000\u0048\u0000\u0048\u0000\u0068" + "\u0000\u0127\u0000\u0049\u0000\u0049\u0000\u004c\u0000\u006c" + "\u0000\u004e\u0000\u004e\u006f\u0000\u0050\u0000\u0050\u0000" + "\u0051\u0000\u0052\u0000\u0052\u0000\u0052\u0000\u0053\u004d" + "\u0000\u0054\u0045\u004c\u0000\u0054\u004d\u0000\u005a\u0000" + "\u005a\u0000\u0042\u0000\u0043\u0000\u0065\u0000\u0045\u0000" + "\u0046\u0000\u004d\u0000\u006f\u0000\u05d0\u0000\u05d1\u0000" + "\u05d2\u0000\u05d3\u0000\u0031\u2044\u0033\u0000\u0032\u2044" + "\u0033\u0000\u0031\u2044\u0035\u0000\u0032\u2044\u0035\u0000" + "\u0033\u2044\u0035\u0000\u0034\u2044\u0035\u0000\u0031\u2044" + "\u0036\u0000\u0035\u2044\u0036\u0000\u0031\u2044\u0038\u0000" + "\u0033\u2044\u0038\u0000\u0035\u2044\u0038\u0000\u0037\u2044" + "\u0038\u0000\u0031\u2044\u0000\u0049\u0000\u0049\u0049\u0000" + "\u0049\u0049\u0049\u0000\u0049\u0056\u0000\u0056\u0000\u0056" + "\u0049\u0000\u0056\u0049\u0049\u0000\u0056\u0049\u0049\u0049" + "\u0000\u0049\u0058\u0000\u0058\u0000\u0058\u0049\u0000\u0058" + "\u0049\u0049\u0000\u004c\u0000\u0043\u0000\u0044\u0000\u004d" + "\u0000\u0069\u0000\u0069\u0069\u0000\u0069\u0069\u0069\u0000" + "\u0069\u0076\u0000\u0076\u0000\u0076\u0069\u0000\u0076\u0069" + "\u0069\u0000\u0076\u0069\u0069\u0069\u0000\u0069\u0078\u0000" + "\u0078\u0000\u0078\u0069\u0000\u0078\u0069\u0069\u0000\u006c" + "\u0000\u0063\u0000\u0064\u0000\u006d\u0000\u222b\u222b\u0000" + "\u222b\u222b\u222b\u0000\u222e\u222e\u0000\u222e\u222e\u222e" + "\u0000\u0031\u0000\u0032\u0000\u0033\u0000\u0034\u0000\u0035" + "\u0000\u0036\u0000\u0037\u0000\u0038\u0000\u0039\u0000\u0031" + "\u0000\u0031\u0030\u0000\u0031\u0032\u0000\u0031\u0033\u0000" + "\u0031\u0034\u0000\u0031\u0035\u0000\u0031\u0036\u0000\u0031" + "\u0037\u0000\u0031\u0038\u0000\u0031\u0039\u0000\u0032\u0030" + "\u0000\u0041\u0000\u0042\u0000\u0043\u0000\u0044\u0000\u0045" + "\u0000\u0046\u0000\u0047\u0000\u0048\u0000\u0049\u0000\u004a" + "\u0000\u004b\u0000\u004c\u0000\u004d\u0000\u004e\u0000\u004f" + "\u0000\u0050\u0000\u0051\u0000\u0052\u0000\u0053\u0000\u0054" + "\u0000\u0055\u0000\u0056\u0000\u0057\u0000\u0058\u0000\u0059" + "\u0000\u005a\u0000\u0061\u0000\u0062\u0000\u0063\u0000\u0064" + "\u0000\u0065\u0000\u0066\u0000\u0067\u0000\u0068\u0000\u0069" + "\u0000\u006a\u0000\u006b\u0000\u006c\u0000\u006d\u0000\u006e" + "\u0000\u006f\u0000\u0070\u0000\u0071\u0000\u0072\u0000\u0073" + "\u0000\u0074\u0000\u0075\u0000\u0076\u0000\u0077\u0000\u0078" + "\u0000\u0079\u0000\u007a\u0000\u0030\u0000\u0020\u0000\u3012" + "\u0000\u0020\u3099\u0000\u0020\u309a\u0000\u1100\u0000\u1100" + "\u1100\u0000\u11a8\u11ba\u0000\u1102\u0000\u11ab\u11bd\u0000" + "\u11ab\u11c2\u0000\u1103\u0000\u1103\u1103\u0000\u1105\u0000" + "\u11af\u11a8\u0000\u11af\u11b7\u0000\u11af\u11b8\u0000\u11af" + "\u11ba\u0000\u11af\u11c0\u0000\u11af\u11c1\u0000\u1105\u1112" + "\u0000\u1106\u0000\u1107\u0000\u1107\u1107\u0000\u1107\u1109" + "\u0000\u1109\u0000\u1109\u1109\u0000\u110b\u0000\u110c\u0000" + "\u110c\u110c\u0000\u110e\u0000\u110f\u0000\u1110\u0000\u1111" + "\u0000\u1112\u0000\u1161\u0000\u1161\u1175\u0000\u1163\u0000" + "\u1163\u1175\u0000\u1165\u0000\u1165\u1175\u0000\u1167\u0000" + "\u1167\u1175\u0000\u1169\u0000\u1169\u1161\u0000\u1169\u1175" + "\u1161\u0000\u1169\u1175\u0000\u116d\u0000\u116e\u0000\u116e" + "\u1165\u0000\u116e\u1175\u1165\u0000\u116e\u1175\u0000\u1172" + "\u0000\u1173\u0000\u1173\u1175\u0000\u1175\u0000\u1160\u0000" + "\u1102\u1102\u0000\u1102\u1103\u0000\u11ab\u11ba\u0000\u11ab" + "\u11eb\u0000\u11af\u11ba\u11a8\u0000\u11af\u11ae\u0000\u11af" + "\u11ba\u11b8\u0000\u11af\u11eb\u0000\u11af\u11f9\u0000\u1106" + "\u1107\u0000\u11b7\u11ba\u0000\u11b7\u11eb\u0000\u1106\u110b" + "\u0000\u1107\u1100\u0000\u1107\u1103\u0000\u1107\u1100\u1109" + "\u0000\u1107\u1103\u1109\u0000\u1107\u110c\u0000\u1107\u1110" + "\u0000\u1107\u110b\u0000\u1107\u110b\u1107\u0000\u1109\u1100" + "\u0000\u1109\u1102\u0000\u1109\u1103\u0000\u1109\u1107\u0000" + "\u1109\u110c\u0000\u1140\u0000\u110b\u110b\u0000\u114c\u0000" + "\u11f0\u11ba\u0000\u11f0\u11eb\u0000\u1111\u110b\u0000\u1112" + "\u1112\u0000\u1159\u0000\u116d\u1163\u0000\u116d\u1175\u1163" + "\u0000\u116d\u1175\u0000\u1172\u1167\u0000\u1172\u1175\u1167" + "\u0000\u1172\u1175\u0000\u119e\u0000\u119e\u1175\u0000\u4e00" + "\u0000\u4e8c\u0000\u4e09\u0000\u56db\u0000\u4e0a\u0000\u4e2d" + "\u0000\u4e0b\u0000\u7532\u0000\u4e59\u0000\u4e19\u0000\u4e01" + "\u0000\u5929\u0000\u5730\u0000\u4eba\u0000\u0028\u1100\u0029" + "\u0000\u0028\u1102\u0029\u0000\u0028\u1103\u0029\u0000\u0028" + "\u1105\u0029\u0000\u0028\u1106\u0029\u0000\u0028\u1107\u0029" + "\u0000\u0028\u1109\u0029\u0000\u0028\u110b\u0029\u0000\u0028" + "\u110c\u0029\u0000\u0028\u110e\u0029\u0000\u0028\u110f\u0029" + "\u0000\u0028\u1110\u0029\u0000\u0028\u1111\u0029\u0000\u0028" + "\u1112\u0029\u0000\u0028\u1100\u1161\u0029\u0000\u0028\u1102" + "\u1161\u0029\u0000\u0028\u1103\u1161\u0029\u0000\u0028\u1105" + "\u1161\u0029\u0000\u0028\u1106\u1161\u0029\u0000\u0028\u1107" + "\u1161\u0029\u0000\u0028\u1109\u1161\u0029\u0000\u0028\u110b" + "\u1161\u0029\u0000\u0028\u110c\u1161\u0029\u0000\u0028\u110e" + "\u1161\u0029\u0000\u0028\u110f\u1161\u0029\u0000\u0028\u1110" + "\u1161\u0029\u0000\u0028\u1111\u1161\u0029\u0000\u0028\u1112" + "\u1161\u0029\u0000\u0028\u110c\u116e\u0029\u0000\u0028\u4e00" + "\u0029\u0000\u0028\u4e8c\u0029\u0000\u0028\u4e09\u0029\u0000" + "\u0028\u56db\u0029\u0000\u0028\u4e94\u0029\u0000\u0028\u516d" + "\u0029\u0000\u0028\u4e03\u0029\u0000\u0028\u516b\u0029\u0000" + "\u0028\u4e5d\u0029\u0000\u0028\u5341\u0029\u0000\u0028\u6708" + "\u0029\u0000\u0028\u706b\u0029\u0000\u0028\u6c34\u0029\u0000" + "\u0028\u6728\u0029\u0000\u0028\u91d1\u0029\u0000\u0028\u571f" + "\u0029\u0000\u0028\u65e5\u0029\u0000\u0028\u682a\u0029\u0000" + "\u0028\u6709\u0029\u0000\u0028\u793e\u0029\u0000\u0028\u540d" + "\u0029\u0000\u0028\u7279\u0029\u0000\u0028\u8ca1\u0029\u0000" + "\u0028\u795d\u0029\u0000\u0028\u52b4\u0029\u0000\u0028\u4ee3" + "\u0029\u0000\u0028\u547c\u0029\u0000\u0028\u5b66\u0029\u0000" + "\u0028\u76e3\u0029\u0000\u0028\u4f01\u0029\u0000\u0028\u8cc7" + "\u0029\u0000\u0028\u5354\u0029\u0000\u0028\u796d\u0029\u0000" + "\u0028\u4f11\u0029\u0000\u0028\u81ea\u0029\u0000\u0028\u81f3" + "\u0029\u0000\u1100\u0000\u1102\u0000\u1103\u0000\u1105\u0000" + "\u1106\u0000\u1107\u0000\u1109\u0000\u110b\u0000\u110c\u0000" + "\u110e\u0000\u110f\u0000\u1110\u0000\u1111\u0000\u1112\u0000" + "\u1100\u1161\u0000\u1102\u1161\u0000\u1103\u1161\u0000\u1105" + "\u1161\u0000\u1106\u1161\u0000\u1107\u1161\u0000\u1109\u1161" + "\u0000\u110b\u1161\u0000\u110c\u1161\u0000\u110e\u1161\u0000" + "\u110f\u1161\u0000\u1110\u1161\u0000\u1111\u1161\u0000\u1112" + "\u1161\u0000\u4e00\u0000\u4e8c\u0000\u4e09\u0000\u56db\u0000" + "\u4e94\u0000\u516d\u0000\u4e03\u0000\u516b\u0000\u4e5d\u0000" + "\u5341\u0000\u6708\u0000\u706b\u0000\u6c34\u0000\u6728\u0000" + "\u91d1\u0000\u571f\u0000\u65e5\u0000\u682a\u0000\u6709\u0000" + "\u793e\u0000\u540d\u0000\u7279\u0000\u8ca1\u0000\u795d\u0000" + "\u52b4\u0000\u79d8\u0000\u7537\u0000\u5973\u0000\u9069\u0000" + "\u512a\u0000\u5370\u0000\u6ce8\u0000\u9805\u0000\u4f11\u0000" + "\u5199\u0000\u6b63\u0000\u4e0a\u0000\u4e2d\u0000\u4e0b\u0000" + "\u5de6\u0000\u53f3\u0000\u533b\u0000\u5b97\u0000\u5b66\u0000" + "\u76e3\u0000\u4f01\u0000\u8cc7\u0000\u5354\u0000\u591c\u0000" + "\u0031\u6708\u0000\u0032\u6708\u0000\u0033\u6708\u0000\u0034" + "\u6708\u0000\u0035\u6708\u0000\u0036\u6708\u0000\u0037\u6708" + "\u0000\u0038\u6708\u0000\u0039\u6708\u0000\u0031\u0030\u6708" + "\u0000\u0031\u0031\u6708\u0000\u0031\u0032\u6708\u0000\u30a2" + "\u0000\u30a4\u0000\u30a6\u0000\u30a8\u0000\u30aa\u0000\u30ab" + "\u0000\u30ad\u0000\u30af\u0000\u30b1\u0000\u30b3\u0000\u30b5" + "\u0000\u30b7\u0000\u30b9\u0000\u30bb\u0000\u30bd\u0000\u30bf" + "\u0000\u30c1\u0000\u30c4\u0000\u30c6\u0000\u30c8\u0000\u30ca" + "\u0000\u30cb\u0000\u30cc\u0000\u30cd\u0000\u30ce\u0000\u30cf" + "\u0000\u30d2\u0000\u30d5\u0000\u30d8\u0000\u30db\u0000\u30de" + "\u0000\u30df\u0000\u30e0\u0000\u30e1\u0000\u30e2\u0000\u30e4" + "\u0000\u30e6\u0000\u30e8\u0000\u30e9\u0000\u30ea\u0000\u30eb" + "\u0000\u30ec\u0000\u30ed\u0000\u30ef\u0000\u30f0\u0000\u30f1" + "\u0000\u30f2\u0000\u30a2\u30cf\u309a\u30fc\u30c8\u0000\u30a2" + "\u30eb\u30d5\u30a1\u0000\u30a2\u30f3\u30d8\u309a\u30a2\u0000" + "\u30a2\u30fc\u30eb\u0000\u30a4\u30cb\u30f3\u30af\u3099\u0000" + "\u30a4\u30f3\u30c1\u0000\u30a6\u30a9\u30f3\u0000\u30a8\u30b9" + "\u30af\u30fc\u30c8\u3099\u0000\u30a8\u30fc\u30ab\u30fc\u0000" + "\u30aa\u30f3\u30b9\u0000\u30aa\u30fc\u30e0\u0000\u30ab\u30a4" + "\u30ea\u0000\u30ab\u30e9\u30c3\u30c8\u0000\u30ab\u30ed\u30ea" + "\u30fc\u0000\u30ab\u3099\u30ed\u30f3\u0000\u30ab\u3099\u30f3" + "\u30de\u0000\u30ad\u3099\u30ab\u3099\u0000\u30ad\u3099\u30cb" + "\u30fc\u0000\u30ad\u30e5\u30ea\u30fc\u0000\u30ad\u3099\u30eb" + "\u30bf\u3099\u30fc\u0000\u30ad\u30ed\u0000\u30ad\u30ed\u30af" + "\u3099\u30e9\u30e0\u0000\u30ad\u30ed\u30e1\u30fc\u30c8\u30eb" + "\u0000\u30ad\u30ed\u30ef\u30c3\u30c8\u0000\u30af\u3099\u30e9" + "\u30e0\u0000\u30af\u3099\u30e9\u30e0\u30c8\u30f3\u0000\u30af" + "\u30eb\u30bb\u3099\u30a4\u30ed\u0000\u30af\u30ed\u30fc\u30cd" + "\u0000\u30b1\u30fc\u30b9\u0000\u30b3\u30eb\u30ca\u0000\u30b3" + "\u30fc\u30db\u309a\u0000\u30b5\u30a4\u30af\u30eb\u0000\u30b5" + "\u30f3\u30c1\u30fc\u30e0\u0000\u30b7\u30ea\u30f3\u30af\u3099" + "\u0000\u30bb\u30f3\u30c1\u0000\u30bb\u30f3\u30c8\u0000\u30bf" + "\u3099\u30fc\u30b9\u0000\u30c6\u3099\u30b7\u0000\u30c8\u3099" + "\u30eb\u0000\u30c8\u30f3\u0000\u30ca\u30ce\u0000\u30ce\u30c3" + "\u30c8\u0000\u30cf\u30a4\u30c4\u0000\u30cf\u309a\u30fc\u30bb" + "\u30f3\u30c8\u0000\u30cf\u309a\u30fc\u30c4\u0000\u30cf\u3099" + "\u30fc\u30ec\u30eb\u0000\u30d2\u309a\u30a2\u30b9\u30c8\u30eb" + "\u0000\u30d2\u309a\u30af\u30eb\u0000\u30d2\u309a\u30b3\u0000" + "\u30d2\u3099\u30eb\u0000\u30d5\u30a1\u30e9\u30c3\u30c8\u3099" + "\u0000\u30d5\u30a3\u30fc\u30c8\u0000\u30d5\u3099\u30c3\u30b7" + "\u30a7\u30eb\u0000\u30d5\u30e9\u30f3\u0000\u30d8\u30af\u30bf" + "\u30fc\u30eb\u0000\u30d8\u309a\u30bd\u0000\u30d8\u309a\u30cb" + "\u30d2\u0000\u30d8\u30eb\u30c4\u0000\u30d8\u309a\u30f3\u30b9" + "\u0000\u30d8\u309a\u30fc\u30b7\u3099\u0000\u30d8\u3099\u30fc" + "\u30bf\u0000\u30db\u309a\u30a4\u30f3\u30c8\u0000\u30db\u3099" + "\u30eb\u30c8\u0000\u30db\u30f3\u0000\u30db\u309a\u30f3\u30c8" + "\u3099\u0000\u30db\u30fc\u30eb\u0000\u30db\u30fc\u30f3\u0000" + "\u30de\u30a4\u30af\u30ed\u0000\u30de\u30a4\u30eb\u0000\u30de" + "\u30c3\u30cf\u0000\u30de\u30eb\u30af\u0000\u30de\u30f3\u30b7" + "\u30e7\u30f3\u0000\u30df\u30af\u30ed\u30f3\u0000\u30df\u30ea" + "\u0000\u30df\u30ea\u30cf\u3099\u30fc\u30eb\u0000\u30e1\u30ab" + "\u3099\u0000\u30e1\u30ab\u3099\u30c8\u30f3\u0000\u30e1\u30fc" + "\u30c8\u30eb\u0000\u30e4\u30fc\u30c8\u3099\u0000\u30e4\u30fc" + "\u30eb\u0000\u30e6\u30a2\u30f3\u0000\u30ea\u30c3\u30c8\u30eb" + "\u0000\u30ea\u30e9\u0000\u30eb\u30d2\u309a\u30fc\u0000\u30eb" + "\u30fc\u30d5\u3099\u30eb\u0000\u30ec\u30e0\u0000\u30ec\u30f3" + "\u30c8\u30b1\u3099\u30f3\u0000\u30ef\u30c3\u30c8\u0000\u0030" + "\u70b9\u0000\u0031\u70b9\u0000\u0032\u70b9\u0000\u0033\u70b9" + "\u0000\u0034\u70b9\u0000\u0035\u70b9\u0000\u0036\u70b9\u0000" + "\u0037\u70b9\u0000\u0038\u70b9\u0000\u0039\u70b9\u0000\u0031" + "\u0030\u70b9\u0000\u0031\u0031\u70b9\u0000\u0031\u0032\u70b9" + "\u0000\u0031\u0033\u70b9\u0000\u0031\u0034\u70b9\u0000\u0031" + "\u0035\u70b9\u0000\u0031\u0036\u70b9\u0000\u0031\u0037\u70b9" + "\u0000\u0031\u0038\u70b9\u0000\u0031\u0039\u70b9\u0000\u0032" + "\u0030\u70b9\u0000\u0032\u0031\u70b9\u0000\u0032\u0032\u70b9" + "\u0000\u0032\u0033\u70b9\u0000\u0032\u0034\u70b9\u0000\u0068" + "\u0050\u0061\u0000\u0064\u0061\u0000\u0041\u0055\u0000\u0062" + "\u0061\u0072\u0000\u006f\u0056\u0000\u0070\u0063\u0000\u5e73" + "\u6210\u0000\u662d\u548c\u0000\u5927\u6b63\u0000\u660e\u6cbb" + "\u0000\u682a\u5f0f\u4f1a\u793e\u0000\u0070\u0041\u0000\u006e" + "\u0041\u0000\u03bc\u0041\u0000\u006d\u0041\u0000\u006b\u0041" + "\u0000\u004b\u0042\u0000\u004d\u0042\u0000\u0047\u0042\u0000" + "\u0063\u0061\u006c\u0000\u006b\u0063\u0061\u006c\u0000\u0070" + "\u0046\u0000\u006e\u0046\u0000\u03bc\u0046\u0000\u03bc\u0067" + "\u0000\u006d\u0067\u0000\u006b\u0067\u0000\u0048\u007a\u0000" + "\u006b\u0048\u007a\u0000\u004d\u0048\u007a\u0000\u0047\u0048" + "\u007a\u0000\u0054\u0048\u007a\u0000\u03bc\u006c\u0000\u006d" + "\u006c\u0000\u0064\u006c\u0000\u006b\u006c\u0000\u0066\u006d" + "\u0000\u006e\u006d\u0000\u03bc\u006d\u0000\u006d\u006d\u0000" + "\u0063\u006d\u0000\u006b\u006d\u0000\u006d\u006d\u0032\u0000" + "\u0063\u006d\u0032\u0000\u006d\u0032\u0000\u006b\u006d\u0032" + "\u0000\u006d\u006d\u0033\u0000\u0063\u006d\u0033\u0000\u006d" + "\u0033\u0000\u006b\u006d\u0033\u0000\u006d\u2215\u0073\u0000" + "\u006d\u2215\u0073\u0032\u0000\u0050\u0061\u0000\u006b\u0050" + "\u0061\u0000\u004d\u0050\u0061\u0000\u0047\u0050\u0061\u0000" + "\u0072\u0061\u0064\u0000\u0072\u0061\u0064\u2215\u0073\u0000" + "\u0072\u0061\u0064\u2215\u0073\u0032\u0000\u0070\u0073\u0000" + "\u006e\u0073\u0000\u03bc\u0073\u0000\u006d\u0073\u0000\u0070" + "\u0056\u0000\u006e\u0056\u0000\u03bc\u0056\u0000\u006d\u0056" + "\u0000\u006b\u0056\u0000\u004d\u0056\u0000\u0070\u0057\u0000" + "\u006e\u0057\u0000\u03bc\u0057\u0000\u006d\u0057\u0000\u006b" + "\u0057\u0000\u004d\u0057\u0000\u006b\u03a9\u0000\u004d\u03a9" + "\u0000\u0061\u002e\u006d\u002e\u0000\u0042\u0071\u0000\u0063" + "\u0063\u0000\u0063\u0064\u0000\u0043\u2215\u006b\u0067\u0000" + "\u0043\u006f\u002e\u0000\u0064\u0042\u0000\u0047\u0079\u0000" + "\u0068\u0061\u0000\u0048\u0050\u0000\u0069\u006e\u0000\u004b" + "\u004b\u0000\u004b\u004d\u0000\u006b\u0074\u0000\u006c\u006d" + "\u0000\u006c\u006e\u0000\u006c\u006f\u0067\u0000\u006c\u0078" + "\u0000\u006d\u0062\u0000\u006d\u0069\u006c\u0000\u006d\u006f" + "\u006c\u0000\u0050\u0048\u0000\u0070\u002e\u006d\u002e\u0000" + "\u0050\u0050\u004d\u0000\u0050\u0052\u0000\u0073\u0072\u0000" + "\u0053\u0076\u0000\u0057\u0062\u0000\u0031\u65e5\u0000\u0032" + "\u65e5\u0000\u0033\u65e5\u0000\u0034\u65e5\u0000\u0035\u65e5" + "\u0000\u0036\u65e5\u0000\u0037\u65e5\u0000\u0038\u65e5\u0000" + "\u0039\u65e5\u0000\u0031\u0030\u65e5\u0000\u0031\u0031\u65e5" + "\u0000\u0031\u0032\u65e5\u0000\u0031\u0033\u65e5\u0000\u0031" + "\u0034\u65e5\u0000\u0031\u0035\u65e5\u0000\u0031\u0036\u65e5" + "\u0000\u0031\u0037\u65e5\u0000\u0031\u0038\u65e5\u0000\u0031" + "\u0039\u65e5\u0000\u0032\u0030\u65e5\u0000\u0032\u0031\u65e5" + "\u0000\u0032\u0032\u65e5\u0000\u0032\u0033\u65e5\u0000\u0032" + "\u0034\u65e5\u0000\u0032\u0035\u65e5\u0000\u0032\u0036\u65e5" + "\u0000\u0032\u0037\u65e5\u0000\u0032\u0038\u65e5\u0000\u0032" + "\u0039\u65e5\u0000\u0033\u0030\u65e5\u0000\u0033\u0031\u65e5" + "\u0000\u0066\u0066\u0000\u0066\u0069\u0000\u0066\u006c\u0000" + "\u0066\u0066\u0069\u0000\u0066\u0066\u006c\u0000\u0073\u0074" + "\u0000\u0073\u0074\u0000\u0574\u0576\u0000\u0574\u0565\u0000" + "\u0574\u056b\u0000\u057e\u0576\u0000\u0574\u056d\u0000\u05f2" + "\u05b7\u0000\u05e2\u0000\u05d0\u0000\u05d3\u0000\u05d4\u0000" + "\u05db\u0000\u05dc\u0000\u05dd\u0000\u05e8\u0000\u05ea\u0000" + "\u002b\u0000\u05d0\u05dc\u0000\u0671\u0000\u0671\u0000\u067b" + "\u0000\u067b\u0000\u067b\u0000\u067b\u0000\u067e\u0000\u067e" + "\u0000\u067e\u0000\u067e\u0000\u0680\u0000\u0680\u0000\u0680" + "\u0000\u0680\u0000\u067a\u0000\u067a\u0000\u067a\u0000\u067a" + "\u0000\u067f\u0000\u067f\u0000\u067f\u0000\u067f\u0000\u0679" + "\u0000\u0679\u0000\u0679\u0000\u0679\u0000\u06a4\u0000\u06a4" + "\u0000\u06a4\u0000\u06a4\u0000\u06a6\u0000\u06a6\u0000\u06a6" + "\u0000\u06a6\u0000\u0684\u0000\u0684\u0000\u0684\u0000\u0684" + "\u0000\u0683\u0000\u0683\u0000\u0683\u0000\u0683\u0000\u0686" + "\u0000\u0686\u0000\u0686\u0000\u0686\u0000\u0687\u0000\u0687" + "\u0000\u0687\u0000\u0687\u0000\u068d\u0000\u068d\u0000\u068c" + "\u0000\u068c\u0000\u068e\u0000\u068e\u0000\u0688\u0000\u0688" + "\u0000\u0698\u0000\u0698\u0000\u0691\u0000\u0691\u0000\u06a9" + "\u0000\u06a9\u0000\u06a9\u0000\u06a9\u0000\u06af\u0000\u06af" + "\u0000\u06af\u0000\u06af\u0000\u06b3\u0000\u06b3\u0000\u06b3" + "\u0000\u06b3\u0000\u06b1\u0000\u06b1\u0000\u06b1\u0000\u06b1" + "\u0000\u06ba\u0000\u06ba\u0000\u06bb\u0000\u06bb\u0000\u06bb" + "\u0000\u06bb\u0000\u06c0\u0000\u06c0\u0000\u06c1\u0000\u06c1" + "\u0000\u06c1\u0000\u06c1\u0000\u06be\u0000\u06be\u0000\u06be" + "\u0000\u06be\u0000\u06d2\u0000\u06d2\u0000\u06d3\u0000\u06d3" + "\u0000\u06ad\u0000\u06ad\u0000\u06ad\u0000\u06ad\u0000\u06c7" + "\u0000\u06c7\u0000\u06c6\u0000\u06c6\u0000\u06c8\u0000\u06c8" + "\u0000\u0677\u0000\u06cb\u0000\u06cb\u0000\u06c5\u0000\u06c5" + "\u0000\u06c9\u0000\u06c9\u0000\u06d0\u0000\u06d0\u0000\u06d0" + "\u0000\u06d0\u0000\u06cc\u0000\u06cc\u0000\u06cc\u0000\u06cc" + "\u0000\u002e\u002e\u0000\u2014\u0000\u2013\u0000\u0020\u0332" + "\u0000\u0020\u0332\u0000\u0028\u0000\u0029\u0000\u007b\u0000" + "\u007d\u0000\u3014\u0000\u3015\u0000\u3010\u0000\u3011\u0000" + "\u300a\u0000\u300b\u0000\u3008\u0000\u3009\u0000\u300c\u0000" + "\u300d\u0000\u300e\u0000\u300f\u0000\u0020\u0305\u0000\u0020" + "\u0305\u0000\u0020\u0305\u0000\u0020\u0305\u0000\u0020\u0332" + "\u0000\u0020\u0332\u0000\u0020\u0332\u0000\u002c\u0000\u3001" + "\u0000\u002e\u0000\u003b\u0000\u003a\u0000\u003f\u0000\u0021" + "\u0000\u2014\u0000\u0028\u0000\u0029\u0000\u007b\u0000\u007d" + "\u0000\u3014\u0000\u3015\u0000\u0023\u0000\u0026\u0000\u002a" + "\u0000\u002b\u0000\u002d\u0000\u003c\u0000\u003e\u0000\u003d" + "\u0000\\\u0000\u0024\u0000\u0025\u0000\u0040\u0000\u0020" + "\u064b\u0000\u0640\u064b\u0000\u0020\u064c\u0000\u0020\u064d" + "\u0000\u0020\u064e\u0000\u0640\u064e\u0000\u0020\u064f\u0000" + "\u0640\u064f\u0000\u0020\u0650\u0000\u0640\u0650\u0000\u0020" + "\u0651\u0000\u0640\u0651\u0000\u0020\u0652\u0000\u0640\u0652" + "\u0000\u0621\u0000\u0622\u0000\u0622\u0000\u0623\u0000\u0623" + "\u0000\u0624\u0000\u0624\u0000\u0625\u0000\u0625\u0000\u0626" + "\u0000\u0626\u0000\u0626\u0000\u0626\u0000\u0627\u0000\u0627" + "\u0000\u0628\u0000\u0628\u0000\u0628\u0000\u0628\u0000\u0629" + "\u0000\u0629\u0000\u062a\u0000\u062a\u0000\u062a\u0000\u062a" + "\u0000\u062b\u0000\u062b\u0000\u062b\u0000\u062b\u0000\u062c" + "\u0000\u062c\u0000\u062c\u0000\u062c\u0000\u062d\u0000\u062d" + "\u0000\u062d\u0000\u062d\u0000\u062e\u0000\u062e\u0000\u062e" + "\u0000\u062e\u0000\u062f\u0000\u062f\u0000\u0630\u0000\u0630" + "\u0000\u0631\u0000\u0631\u0000\u0632\u0000\u0632\u0000\u0633" + "\u0000\u0633\u0000\u0633\u0000\u0633\u0000\u0634\u0000\u0634" + "\u0000\u0634\u0000\u0634\u0000\u0635\u0000\u0635\u0000\u0635" + "\u0000\u0635\u0000\u0636\u0000\u0636\u0000\u0636\u0000\u0636" + "\u0000\u0637\u0000\u0637\u0000\u0637\u0000\u0637\u0000\u0638" + "\u0000\u0638\u0000\u0638\u0000\u0638\u0000\u0639\u0000\u0639" + "\u0000\u0639\u0000\u0639\u0000\u063a\u0000\u063a\u0000\u063a" + "\u0000\u063a\u0000\u0641\u0000\u0641\u0000\u0641\u0000\u0641" + "\u0000\u0642\u0000\u0642\u0000\u0642\u0000\u0642\u0000\u0643" + "\u0000\u0643\u0000\u0643\u0000\u0643\u0000\u0644\u0000\u0644" + "\u0000\u0644\u0000\u0644\u0000\u0645\u0000\u0645\u0000\u0645" + "\u0000\u0645\u0000\u0646\u0000\u0646\u0000\u0646\u0000\u0646" + "\u0000\u0647\u0000\u0647\u0000\u0647\u0000\u0647\u0000\u0648" + "\u0000\u0648\u0000\u0649\u0000\u0649\u0000\u064a\u0000\u064a" + "\u0000\u064a\u0000\u064a\u0000\u0021\u0000\"\u0000\u0023" + "\u0000\u0024\u0000\u0025\u0000\u0026\u0000\u0027\u0000\u0028" + "\u0000\u0029\u0000\u002a\u0000\u002b\u0000\u002c\u0000\u002d" + "\u0000\u002e\u0000\u002f\u0000\u0030\u0000\u0031\u0000\u0032" + "\u0000\u0033\u0000\u0034\u0000\u0035\u0000\u0036\u0000\u0037" + "\u0000\u0038\u0000\u0039\u0000\u003a\u0000\u003b\u0000\u003c" + "\u0000\u003d\u0000\u003e\u0000\u003f\u0000\u0040\u0000\u0041" + "\u0000\u0042\u0000\u0043\u0000\u0044\u0000\u0045\u0000\u0046" + "\u0000\u0047\u0000\u0048\u0000\u0049\u0000\u004a\u0000\u004b" + "\u0000\u004c\u0000\u004d\u0000\u004e\u0000\u004f\u0000\u0050" + "\u0000\u0051\u0000\u0052\u0000\u0053\u0000\u0054\u0000\u0055" + "\u0000\u0056\u0000\u0057\u0000\u0058\u0000\u0059\u0000\u005a" + "\u0000\u005b\u0000\\\u0000\u005d\u0000\u0020\u0302\u0000" + "\u0020\u0332\u0000\u0020\u0300\u0000\u0061\u0000\u0062\u0000" + "\u0063\u0000\u0064\u0000\u0065\u0000\u0066\u0000\u0067\u0000" + "\u0068\u0000\u0069\u0000\u006a\u0000\u006b\u0000\u006c\u0000" + "\u006d\u0000\u006e\u0000\u006f\u0000\u0070\u0000\u0071\u0000" + "\u0072\u0000\u0073\u0000\u0074\u0000\u0075\u0000\u0076\u0000" + "\u0077\u0000\u0078\u0000\u0079\u0000\u007a\u0000\u007b\u0000" + "\u007c\u0000\u007d\u0000\u007e\u0000\u3002\u0000\u300c\u0000" + "\u300d\u0000\u3001\u0000\u30fb\u0000\u30f2\u0000\u30a1\u0000" + "\u30a3\u0000\u30a5\u0000\u30a7\u0000\u30a9\u0000\u30e3\u0000" + "\u30e5\u0000\u30e7\u0000\u30c3\u0000\u30fc\u0000\u30a2\u0000" + "\u30a4\u0000\u30a6\u0000\u30a8\u0000\u30aa\u0000\u30ab\u0000" + "\u30ad\u0000\u30af\u0000\u30b1\u0000\u30b3\u0000\u30b5\u0000" + "\u30b7\u0000\u30b9\u0000\u30bb\u0000\u30bd\u0000\u30bf\u0000" + "\u30c1\u0000\u30c4\u0000\u30c6\u0000\u30c8\u0000\u30ca\u0000" + "\u30cb\u0000\u30cc\u0000\u30cd\u0000\u30ce\u0000\u30cf\u0000" + "\u30d2\u0000\u30d5\u0000\u30d8\u0000\u30db\u0000\u30de\u0000" + "\u30df\u0000\u30e0\u0000\u30e1\u0000\u30e2\u0000\u30e4\u0000" + "\u30e6\u0000\u30e8\u0000\u30e9\u0000\u30ea\u0000\u30eb\u0000" + "\u30ec\u0000\u30ed\u0000\u30ef\u0000\u30f3\u0000\u0020\u3099" + "\u0000\u0020\u309a\u0000\u1160\u0000\u1100\u0000\u1100\u1100" + "\u0000\u11a8\u11ba\u0000\u1102\u0000\u11ab\u11bd\u0000\u11ab" + "\u11c2\u0000\u1103\u0000\u1103\u1103\u0000\u1105\u0000\u11af" + "\u11a8\u0000\u11af\u11b7\u0000\u11af\u11b8\u0000\u11af\u11ba" + "\u0000\u11af\u11c0\u0000\u11af\u11c1\u0000\u1105\u1112\u0000" + "\u1106\u0000\u1107\u0000\u1107\u1107\u0000\u1107\u1109\u0000" + "\u1109\u0000\u1109\u1109\u0000\u110b\u0000\u110c\u0000\u110c" + "\u110c\u0000\u110e\u0000\u110f\u0000\u1110\u0000\u1111\u0000" + "\u1112\u0000\u1161\u0000\u1161\u1175\u0000\u1163\u0000\u1163" + "\u1175\u0000\u1165\u0000\u1165\u1175\u0000\u1167\u0000\u1167" + "\u1175\u0000\u1169\u0000\u1169\u1161\u0000\u1169\u1161\u1175" + "\u0000\u1169\u1175\u0000\u116d\u0000\u116e\u0000\u116e\u1165" + "\u0000\u116e\u1165\u1175\u0000\u116e\u1175\u0000\u1172\u0000" + "\u1173\u0000\u1173\u1175\u0000\u1175\u0000\u00a2\u0000\u00a3" + "\u0000\u00ac\u0000\u0020\u0304\u0000\u00a6\u0000\u00a5\u0000" + "\u20a9\u0000\u2502\u0000\u2190\u0000\u2191\u0000\u2192\u0000" + "\u2193\u0000\u25a0\u0000\u25cb\u0000\u0046\u0072\u0000"; private static int maximumDecomposition = 7589; private static int maximumCanonical = 3200; // END OF GENERATED CODE /* Instance variables */ /* The source string being decomposed */ private String str = null; /* Index of first character to be decomposed */ private int getBeginIndex = 0; /* Index after last character to be decomposed */ private int getEndIndex = 0; /* One of the java.text.Collator decomposition mode values */ private int decmpMode = 0; /* Decompose only for indices into the contents table that are less * than this value. */ private int decmpLimit; /* index of current character in source string */ private int sIndex = 0; /* a decomposed and canonicalized piece of the the source string */ private StringBuffer parsedStr = null; /* index into parsedStr */ private int pIndex = 0; /* true if previous() called more recently than next() */ private boolean backedUp = false; /* true if we are decomposing the current input character */ private boolean decomposing = false; private char prevChar = NULLORDER; private static final CompactShortArray startOffsets = new CompactShortArray(kOffsetIndex, kOffsetValues); // old canonical class // used since canonical values are 0..255 static final byte BASE = (byte)-128; static final CompactByteArray canonicals = new CompactByteArray(kCanonicalIndex, kCanonicalValues); }
⏎ java/text/DecompositionIterator.java
Or download all of them as a single archive file:
File name: jdk-1.1.8-src.zip File size: 1574187 bytes Release date: 2018-11-16 Download
⇒ Backup JDK 1.1 Installation Directory
2018-11-17, 150754👍, 0💬
Popular Posts:
Apache Commons Lang 3 is the 3rd version of Apache Commons Lang, which provides a host of helper uti...
How to read XML document from socket connections with the socket\DelayedInput.java provided in the A...
JAX-WS is an API for building web services and clients. It is the next generation Web Services API r...
What Is XMLBeans xbean.jar 2.6.0? XMLBeans xbean.jar 2.6.0 is the JAR file for Apache XMLBeans 2.6.0...
commons-lang-2.6.jar is the JAR file for Apache Commons Lang 2.6, which provides a host of helper ut...