package org.jsoup.nodes;
import java.nio.charset.CharsetEncoder;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* HTML entities, and escape routines.
* Source: <a href="http://www.w3.org/TR/html5/named-character-references.html#named-character-references">W3C HTML
* named character references</a>.
*/
public class Entities {
public enum EscapeMode {
/** Restricted entities suitable for XHTML output: lt, gt, amp, apos, and quot only. */
xhtml(xhtmlByVal),
/** Default HTML output entities. */
base(baseByVal),
/** Complete HTML entities. */
extended(fullByVal);
private Map<Character, String> map;
EscapeMode(Map<Character, String> map) {
this.map = map;
}
public Map<Character, String> getMap() {
return map;
}
}
private static final Map<String, Character> full;
private static final Map<Character, String> xhtmlByVal;
private static final Map<Character, String> baseByVal;
private static final Map<Character, String> fullByVal;
private static final Pattern unescapePattern = Pattern.compile("&(#(x|X)?([0-9a-fA-F]+)|[a-zA-Z]+\\d*);?");
private static final Pattern strictUnescapePattern = Pattern.compile("&(#(x|X)?([0-9a-fA-F]+)|[a-zA-Z]+\\d*);");
private Entities() {}
/**
* Check if the input is a known named entity
* @param name the possible entity name (e.g. "lt" or "amp"
* @return true if a known named entity
*/
public static boolean isNamedEntity(String name) {
return full.containsKey(name);
}
/**
* Get the Character value of the named entity
* @param name named entity (e.g. "lt" or "amp")
* @return the Character value of the named entity (e.g. '<' or '&')
*/
public static Character getCharacterByName(String name) {
return full.get(name);
}
static String escape(String string, Document.OutputSettings out) {
return escape(string, out.encoder(), out.escapeMode());
}
static String escape(String string, CharsetEncoder encoder, EscapeMode escapeMode) {
StringBuilder accum = new StringBuilder(string.length() * 2);
Map<Character, String> map = escapeMode.getMap();
for (int pos = 0; pos < string.length(); pos++) {
Character c = string.charAt(pos);
if (map.containsKey(c))
accum.append('&').append(map.get(c)).append(';');
else if (encoder.canEncode(c))
accum.append(c.charValue());
else
accum.append("&#").append((int) c).append(';');
}
return accum.toString();
}
static String unescape(String string) {
return unescape(string, false);
}
/**
* Unescape the input string.
* @param string
* @param strict if "strict" (that is, requires trailing ';' char, otherwise that's optional)
* @return
*/
static String unescape(String string, boolean strict) {
// todo: change this method to use Tokeniser.consumeCharacterReference
if (!string.contains("&"))
return string;
Matcher m = strict? strictUnescapePattern.matcher(string) : unescapePattern.matcher(string); // &(#(x|X)?([0-9a-fA-F]+)|[a-zA-Z]\\d*);?
StringBuffer accum = new StringBuffer(string.length()); // pity matcher can't use stringbuilder, avoid syncs
// todo: replace m.appendReplacement with own impl, so StringBuilder and quoteReplacement not required
while (m.find()) {
int charval = -1;
String num = m.group(3);
if (num != null) {
try {
int base = m.group(2) != null ? 16 : 10; // 2 is hex indicator
charval = Integer.valueOf(num, base);
} catch (NumberFormatException e) {
} // skip
} else {
String name = m.group(1);
if (full.containsKey(name))
charval = full.get(name);
}
if (charval != -1 || charval > 0xFFFF) { // out of range
String c = Character.toString((char) charval);
m.appendReplacement(accum, Matcher.quoteReplacement(c));
} else {
m.appendReplacement(accum, Matcher.quoteReplacement(m.group(0))); // replace with original string
}
}
m.appendTail(accum);
return accum.toString();
}
// xhtml has restricted entities
private static final Object[][] xhtmlArray = {
{"quot", 0x00022},
{"amp", 0x00026},
{"apos", 0x00027},
{"lt", 0x0003C},
{"gt", 0x0003E}
};
// most common, base entities can be unescaped without trailing ;
// e.g. &
private static final Object[][] baseArray = {
{"AElig", 0x000C6},
{"AMP", 0x00026},
{"Aacute", 0x000C1},
{"Acirc", 0x000C2},
{"Agrave", 0x000C0},
{"Aring", 0x000C5},
{"Atilde", 0x000C3},
{"Auml", 0x000C4},
{"COPY", 0x000A9},
{"Ccedil", 0x000C7},
{"ETH", 0x000D0},
{"Eacute", 0x000C9},
{"Ecirc", 0x000CA},
{"Egrave", 0x000C8},
{"Euml", 0x000CB},
{"GT", 0x0003E},
{"Iacute", 0x000CD},
{"Icirc", 0x000CE},
{"Igrave", 0x000CC},
{"Iuml", 0x000CF},
{"LT", 0x0003C},
{"Ntilde", 0x000D1},
{"Oacute", 0x000D3},
{"Ocirc", 0x000D4},
{"Ograve", 0x000D2},
{"Oslash", 0x000D8},
{"Otilde", 0x000D5},
{"Ouml", 0x000D6},
{"QUOT", 0x00022},
{"REG", 0x000AE},
{"THORN", 0x000DE},
{"Uacute", 0x000DA},
{"Ucirc", 0x000DB},
{"Ugrave", 0x000D9},
{"Uuml", 0x000DC},
{"Yacute", 0x000DD},
{"aacute", 0x000E1},
{"acirc", 0x000E2},
{"acute", 0x000B4},
{"aelig", 0x000E6},
{"agrave", 0x000E0},
{"amp", 0x00026},
{"aring", 0x000E5},
{"atilde", 0x000E3},
{"auml", 0x000E4},
{"brvbar", 0x000A6},
{"ccedil", 0x000E7},
{"cedil", 0x000B8},
{"cent", 0x000A2},
{"copy", 0x000A9},
{"curren", 0x000A4},
{"deg", 0x000B0},
{"divide", 0x000F7},
{"eacute", 0x000E9},
{"ecirc", 0x000EA},
{"egrave", 0x000E8},
{"eth", 0x000F0},
{"euml", 0x000EB},
{"frac12", 0x000BD},
{"frac14", 0x000BC},
{"frac34", 0x000BE},
{"gt", 0x0003E},
{"iacute", 0x000ED},
{"icirc", 0x000EE},
{"iexcl", 0x000A1},
{"igrave", 0x000EC},
{"iquest", 0x000BF},
{"iuml", 0x000EF},
{"laquo", 0x000AB},
{"lt", 0x0003C},
{"macr", 0x000AF},
{"micro", 0x000B5},
{"middot", 0x000B7},
{"nbsp", 0x000A0},
{"not", 0x000AC},
{"ntilde", 0x000F1},
{"oacute", 0x000F3},
{"ocirc", 0x000F4},
{"ograve", 0x000F2},
{"ordf", 0x000AA},
{"ordm", 0x000BA},
{"oslash", 0x000F8},
{"otilde", 0x000F5},
{"ouml", 0x000F6},
{"para", 0x000B6},
{"plusmn", 0x000B1},
{"pound", 0x000A3},
{"quot", 0x00022},
{"raquo", 0x000BB},
{"reg", 0x000AE},
{"sect", 0x000A7},
{"shy", 0x000AD},
{"sup1", 0x000B9},
{"sup2", 0x000B2},
{"sup3", 0x000B3},
{"szlig", 0x000DF},
{"thorn", 0x000FE},
{"times", 0x000D7},
{"uacute", 0x000FA},
{"ucirc", 0x000FB},
{"ugrave", 0x000F9},
{"uml", 0x000A8},
{"uuml", 0x000FC},
{"yacute", 0x000FD},
{"yen", 0x000A5},
{"yuml", 0x000FF}
};
// in most situations, will be better to use UTF8 and use the character directly, or use the numerical escape.
// are people really likely to remember "∳"? good grief.
private static final Object[][] fullArray = {
{"AElig", 0x000C6},
{"AMP", 0x00026},
{"Aacute", 0x000C1},
{"Abreve", 0x00102},
{"Acirc", 0x000C2},
{"Acy", 0x00410},
{"Afr", 0x1D504},
{"Agrave", 0x000C0},
{"Alpha", 0x00391},
{"Amacr", 0x00100},
{"And", 0x02A53},
{"Aogon", 0x00104},
{"Aopf", 0x1D538},
{"ApplyFunction", 0x02061},
{"Aring", 0x000C5},
{"Ascr", 0x1D49C},
{"Assign", 0x02254},
{"Atilde", 0x000C3},
{"Auml", 0x000C4},
{"Backslash", 0x02216},
{"Barv", 0x02AE7},
{"Barwed", 0x02306},
{"Bcy", 0x00411},
{"Because", 0x02235},
{"Bernoullis", 0x0212C},
{"Beta", 0x00392},
{"Bfr", 0x1D505},
{"Bopf", 0x1D539},
{"Breve", 0x002D8},
{"Bscr", 0x0212C},
{"Bumpeq", 0x0224E},
{"CHcy", 0x00427},
{"COPY", 0x000A9},
{"Cacute", 0x00106},
{"Cap", 0x022D2},
{"CapitalDifferentialD", 0x02145},
{"Cayleys", 0x0212D},
{"Ccaron", 0x0010C},
{"Ccedil", 0x000C7},
{"Ccirc", 0x00108},
{"Cconint", 0x02230},
{"Cdot", 0x0010A},
{"Cedilla", 0x000B8},
{"CenterDot", 0x000B7},
{"Cfr", 0x0212D},
{"Chi", 0x003A7},
{"CircleDot", 0x02299},
{"CircleMinus", 0x02296},
{"CirclePlus", 0x02295},
{"CircleTimes", 0x02297},
{"ClockwiseContourIntegral", 0x02232},
{"CloseCurlyDoubleQuote", 0x0201D},
{"CloseCurlyQuote", 0x02019},
{"Colon", 0x02237},
{"Colone", 0x02A74},
{"Congruent", 0x02261},
{"Conint", 0x0222F},
{"ContourIntegral", 0x0222E},
{"Copf", 0x02102},
{"Coproduct", 0x02210},
{"CounterClockwiseContourIntegral", 0x02233},
{"Cross", 0x02A2F},
{"Cscr", 0x1D49E},
{"Cup", 0x022D3},
{"CupCap", 0x0224D},
{"DD", 0x02145},
{"DDotrahd", 0x02911},
{"DJcy", 0x00402},
{"DScy", 0x00405},
{"DZcy", 0x0040F},
{"Dagger", 0x02021},
{"Darr", 0x021A1},
{"Dashv", 0x02AE4},
{"Dcaron", 0x0010E},
{"Dcy", 0x00414},
{"Del", 0x02207},
{"Delta", 0x00394},
{"Dfr", 0x1D507},
{"DiacriticalAcute", 0x000B4},
{"DiacriticalDot", 0x002D9},
{"DiacriticalDoubleAcute", 0x002DD},
{"DiacriticalGrave", 0x00060},
{"DiacriticalTilde", 0x002DC},
{"Diamond", 0x022C4},
{"DifferentialD", 0x02146},
{"Dopf", 0x1D53B},
{"Dot", 0x000A8},
{"DotDot", 0x020DC},
{"DotEqual", 0x02250},
{"DoubleContourIntegral", 0x0222F},
{"DoubleDot", 0x000A8},
{"DoubleDownArrow", 0x021D3},
{"DoubleLeftArrow", 0x021D0},
{"DoubleLeftRightArrow", 0x021D4},
{"DoubleLeftTee", 0x02AE4},
{"DoubleLongLeftArrow", 0x027F8},
{"DoubleLongLeftRightArrow", 0x027FA},
{"DoubleLongRightArrow", 0x027F9},
{"DoubleRightArrow", 0x021D2},
{"DoubleRightTee", 0x022A8},
{"DoubleUpArrow", 0x021D1},
{"DoubleUpDownArrow", 0x021D5},
{"DoubleVerticalBar", 0x02225},
{"DownArrow", 0x02193},
{"DownArrowBar", 0x02913},
{"DownArrowUpArrow", 0x021F5},
{"DownBreve", 0x00311},
{"DownLeftRightVector", 0x02950},
{"DownLeftTeeVector", 0x0295E},
{"DownLeftVector", 0x021BD},
{"DownLeftVectorBar", 0x02956},
{"DownRightTeeVector", 0x0295F},
{"DownRightVector", 0x021C1},
{"DownRightVectorBar", 0x02957},
{"DownTee", 0x022A4},
{"DownTeeArrow", 0x021A7},
{"Downarrow", 0x021D3},
{"Dscr", 0x1D49F},
{"Dstrok", 0x00110},
{"ENG", 0x0014A},
{"ETH", 0x000D0},
{"Eacute", 0x000C9},
{"Ecaron", 0x0011A},
{"Ecirc", 0x000CA},
{"Ecy", 0x0042D},
{"Edot", 0x00116},
{"Efr", 0x1D508},
{"Egrave", 0x000C8},
{"Element", 0x02208},
{"Emacr", 0x00112},
{"EmptySmallSquare", 0x025FB},
{"EmptyVerySmallSquare", 0x025AB},
{"Eogon", 0x00118},
{"Eopf", 0x1D53C},
{"Epsilon", 0x00395},
{"Equal", 0x02A75},
{"EqualTilde", 0x02242},
{"Equilibrium", 0x021CC},
{"Escr", 0x02130},
{"Esim", 0x02A73},
{"Eta", 0x00397},
{"Euml", 0x000CB},
{"Exists", 0x02203},
{"ExponentialE", 0x02147},
{"Fcy", 0x00424},
{"Ffr", 0x1D509},
{"FilledSmallSquare", 0x025FC},
{"FilledVerySmallSquare", 0x025AA},
{"Fopf", 0x1D53D},
{"ForAll", 0x02200},
{"Fouriertrf", 0x02131},
{"Fscr", 0x02131},
{"GJcy", 0x00403},
{"GT", 0x0003E},
{"Gamma", 0x00393},
{"Gammad", 0x003DC},
{"Gbreve", 0x0011E},
{"Gcedil", 0x00122},
{"Gcirc", 0x0011C},
{"Gcy", 0x00413},
{"Gdot", 0x00120},
{"Gfr", 0x1D50A},
{"Gg", 0x022D9},
{"Gopf", 0x1D53E},
{"GreaterEqual", 0x02265},
{"GreaterEqualLess", 0x022DB},
{"GreaterFullEqual", 0x02267},
{"GreaterGreater", 0x02AA2},
{"GreaterLess", 0x02277},
{"GreaterSlantEqual", 0x02A7E},
{"GreaterTilde", 0x02273},
{"Gscr", 0x1D4A2},
{"Gt", 0x0226B},
{"HARDcy", 0x0042A},
{"Hacek", 0x002C7},
{"Hat", 0x0005E},
{"Hcirc", 0x00124},
{"Hfr", 0x0210C},
{"HilbertSpace", 0x0210B},
{"Hopf", 0x0210D},
{"HorizontalLine", 0x02500},
{"Hscr", 0x0210B},
{"Hstrok", 0x00126},
{"HumpDownHump", 0x0224E},
{"HumpEqual", 0x0224F},
{"IEcy", 0x00415},
{"IJlig", 0x00132},
{"IOcy", 0x00401},
{"Iacute", 0x000CD},
{"Icirc", 0x000CE},
{"Icy", 0x00418},
{"Idot", 0x00130},
{"Ifr", 0x02111},
{"Igrave", 0x000CC},
{"Im", 0x02111},
{"Imacr", 0x0012A},
{"ImaginaryI", 0x02148},
{"Implies", 0x021D2},
{"Int", 0x0222C},
{"Integral", 0x0222B},
{"Intersection", 0x022C2},
{"InvisibleComma", 0x02063},
{"InvisibleTimes", 0x02062},
{"Iogon", 0x0012E},
{"Iopf", 0x1D540},
{"Iota", 0x00399},
{"Iscr", 0x02110},
{"Itilde", 0x00128},
{"Iukcy", 0x00406},
{"Iuml", 0x000CF},
{"Jcirc", 0x00134},
{"Jcy", 0x00419},
{"Jfr", 0x1D50D},
{"Jopf", 0x1D541},
{"Jscr", 0x1D4A5},
{"Jsercy", 0x00408},
{"Jukcy", 0x00404},
{"KHcy", 0x00425},
{"KJcy", 0x0040C},
{"Kappa", 0x0039A},
{"Kcedil", 0x00136},
{"Kcy", 0x0041A},
{"Kfr", 0x1D50E},
{"Kopf", 0x1D542},
{"Kscr", 0x1D4A6},
{"LJcy", 0x00409},
{"LT", 0x0003C},
{"Lacute", 0x00139},
{"Lambda", 0x0039B},
{"Lang", 0x027EA},
{"Laplacetrf", 0x02112},
{"Larr", 0x0219E},
{"Lcaron", 0x0013D},
{"Lcedil", 0x0013B},
{"Lcy", 0x0041B},
{"LeftAngleBracket", 0x027E8},
{"LeftArrow", 0x02190},
{"LeftArrowBar", 0x021E4},
{"LeftArrowRightArrow", 0x021C6},
{"LeftCeiling", 0x02308},
{"LeftDoubleBracket", 0x027E6},
{"LeftDownTeeVector", 0x02961},
{"LeftDownVector", 0x021C3},
{"LeftDownVectorBar", 0x02959},
{"LeftFloor", 0x0230A},
{"LeftRightArrow", 0x02194},
{"LeftRightVector", 0x0294E},
{"LeftTee", 0x022A3},
{"LeftTeeArrow", 0x021A4},
{"LeftTeeVector", 0x0295A},
{"LeftTriangle", 0x022B2},
{"LeftTriangleBar", 0x029CF},
{"LeftTriangleEqual", 0x022B4},
{"LeftUpDownVector", 0x02951},
{"LeftUpTeeVector", 0x02960},
{"LeftUpVector", 0x021BF},
{"LeftUpVectorBar", 0x02958},
{"LeftVector", 0x021BC},
{"LeftVectorBar", 0x02952},
{"Leftarrow", 0x021D0},
{"Leftrightarrow", 0x021D4},
{"LessEqualGreater", 0x022DA},
{"LessFullEqual", 0x02266},
{"LessGreater", 0x02276},
{"LessLess", 0x02AA1},
{"LessSlantEqual", 0x02A7D},
{"LessTilde", 0x02272},
{"Lfr", 0x1D50F},
{"Ll", 0x022D8},
{"Lleftarrow", 0x021DA},
{"Lmidot", 0x0013F},
{"LongLeftArrow", 0x027F5},
{"LongLeftRightArrow", 0x027F7},
{"LongRightArrow", 0x027F6},
{"Longleftarrow", 0x027F8},
{"Longleftrightarrow", 0x027FA},
{"Longrightarrow", 0x027F9},
{"Lopf", 0x1D543},
{"LowerLeftArrow", 0x02199},
{"LowerRightArrow", 0x02198},
{"Lscr", 0x02112},
{"Lsh", 0x021B0},
{"Lstrok", 0x00141},
{"Lt", 0x0226A},
{"Map", 0x02905},
{"Mcy", 0x0041C},
{"MediumSpace", 0x0205F},
{"Mellintrf", 0x02133},
{"Mfr", 0x1D510},
{"MinusPlus", 0x02213},
{"Mopf", 0x1D544},
{"Mscr", 0x02133},
{"Mu", 0x0039C},
{"NJcy", 0x0040A},
{"Nacute", 0x00143},
{"Ncaron", 0x00147},
{"Ncedil", 0x00145},
{"Ncy", 0x0041D},
{"NegativeMediumSpace", 0x0200B},
{"NegativeThickSpace", 0x0200B},
{"NegativeThinSpace", 0x0200B},
{"NegativeVeryThinSpace", 0x0200B},
{"NestedGreaterGreater", 0x0226B},
{"NestedLessLess", 0x0226A},
{"NewLine", 0x0000A},
{"Nfr", 0x1D511},
{"NoBreak", 0x02060},
{"NonBreakingSpace", 0x000A0},
{"Nopf", 0x02115},
{"Not", 0x02AEC},
{"NotCongruent", 0x02262},
{"NotCupCap", 0x0226D},
{"NotDoubleVerticalBar", 0x02226},
{"NotElement", 0x02209},
{"NotEqual", 0x02260},
{"NotExists", 0x02204},
{"NotGreater", 0x0226F},
{"NotGreaterEqual", 0x02271},
{"NotGreaterLess", 0x02279},
{"NotGreaterTilde", 0x02275},
{"NotLeftTriangle", 0x022EA},
{"NotLeftTriangleEqual", 0x022EC},
{"NotLess", 0x0226E},
{"NotLessEqual", 0x02270},
{"NotLessGreater", 0x02278},
{"NotLessTilde", 0x02274},
{"NotPrecedes", 0x02280},
{"NotPrecedesSlantEqual", 0x022E0},
{"NotReverseElement", 0x0220C},
{"NotRightTriangle", 0x022EB},
{"NotRightTriangleEqual", 0x022ED},
{"NotSquareSubsetEqual", 0x022E2},
{"NotSquareSupersetEqual", 0x022E3},
{"NotSubsetEqual", 0x02288},
{"NotSucceeds", 0x02281},
{"NotSucceedsSlantEqual", 0x022E1},
{"NotSupersetEqual", 0x02289},
{"NotTilde", 0x02241},
{"NotTildeEqual", 0x02244},
{"NotTildeFullEqual", 0x02247},
{"NotTildeTilde", 0x02249},
{"NotVerticalBar", 0x02224},
{"Nscr", 0x1D4A9},
{"Ntilde", 0x000D1},
{"Nu", 0x0039D},
{"OElig", 0x00152},
{"Oacute", 0x000D3},
{"Ocirc", 0x000D4},
{"Ocy", 0x0041E},
{"Odblac", 0x00150},
{"Ofr", 0x1D512},
{"Ograve", 0x000D2},
{"Omacr", 0x0014C},
{"Omega", 0x003A9},
{"Omicron", 0x0039F},
{"Oopf", 0x1D546},
{"OpenCurlyDoubleQuote", 0x0201C},
{"OpenCurlyQuote", 0x02018},
{"Or", 0x02A54},
{"Oscr", 0x1D4AA},
{"Oslash", 0x000D8},
{"Otilde", 0x000D5},
{"Otimes", 0x02A37},
{"Ouml", 0x000D6},
{"OverBar", 0x0203E},
{"OverBrace", 0x023DE},
{"OverBracket", 0x023B4},
{"OverParenthesis", 0x023DC},
{"PartialD", 0x02202},
{"Pcy", 0x0041F},
{"Pfr", 0x1D513},
{"Phi", 0x003A6},
{"Pi", 0x003A0},
{"PlusMinus", 0x000B1},
{"Poincareplane", 0x0210C},
{"Popf", 0x02119},
{"Pr", 0x02ABB},
{"Precedes", 0x0227A},
{"PrecedesEqual", 0x02AAF},
{"PrecedesSlantEqual", 0x0227C},
{"PrecedesTilde", 0x0227E},
{"Prime", 0x02033},
{"Product", 0x0220F},
{"Proportion", 0x02237},
{"Proportional", 0x0221D},
{"Pscr", 0x1D4AB},
{"Psi", 0x003A8},
{"QUOT", 0x00022},
{"Qfr", 0x1D514},
{"Qopf", 0x0211A},
{"Qscr", 0x1D4AC},
{"RBarr", 0x02910},
{"REG", 0x000AE},
{"Racute", 0x00154},
{"Rang", 0x027EB},
{"Rarr", 0x021A0},
{"Rarrtl", 0x02916},
{"Rcaron", 0x00158},
{"Rcedil", 0x00156},
{"Rcy", 0x00420},
{"Re", 0x0211C},
{"ReverseElement", 0x0220B},
{"ReverseEquilibrium", 0x021CB},
{"ReverseUpEquilibrium", 0x0296F},
{"Rfr", 0x0211C},
{"Rho", 0x003A1},
{"RightAngleBracket", 0x027E9},
{"RightArrow", 0x02192},
{"RightArrowBar", 0x021E5},
{"RightArrowLeftArrow", 0x021C4},
{"RightCeiling", 0x02309},
{"RightDoubleBracket", 0x027E7},
{"RightDownTeeVector", 0x0295D},
{"RightDownVector", 0x021C2},
{"RightDownVectorBar", 0x02955},
{"RightFloor", 0x0230B},
{"RightTee", 0x022A2},
{"RightTeeArrow", 0x021A6},
{"RightTeeVector", 0x0295B},
{"RightTriangle", 0x022B3},
{"RightTriangleBar", 0x029D0},
{"RightTriangleEqual", 0x022B5},
{"RightUpDownVector", 0x0294F},
{"RightUpTeeVector", 0x0295C},
{"RightUpVector", 0x021BE},
{"RightUpVectorBar", 0x02954},
{"RightVector", 0x021C0},
{"RightVectorBar", 0x02953},
{"Rightarrow", 0x021D2},
{"Ropf", 0x0211D},
{"RoundImplies", 0x02970},
{"Rrightarrow", 0x021DB},
{"Rscr", 0x0211B},
{"Rsh", 0x021B1},
{"RuleDelayed", 0x029F4},
{"SHCHcy", 0x00429},
{"SHcy", 0x00428},
{"SOFTcy", 0x0042C},
{"Sacute", 0x0015A},
{"Sc", 0x02ABC},
{"Scaron", 0x00160},
{"Scedil", 0x0015E},
{"Scirc", 0x0015C},
{"Scy", 0x00421},
{"Sfr", 0x1D516},
{"ShortDownArrow", 0x02193},
{"ShortLeftArrow", 0x02190},
{"ShortRightArrow", 0x02192},
{"ShortUpArrow", 0x02191},
{"Sigma", 0x003A3},
{"SmallCircle", 0x02218},
{"Sopf", 0x1D54A},
{"Sqrt", 0x0221A},
{"Square", 0x025A1},
{"SquareIntersection", 0x02293},
{"SquareSubset", 0x0228F},
{"SquareSubsetEqual", 0x02291},
{"SquareSuperset", 0x02290},
{"SquareSupersetEqual", 0x02292},
{"SquareUnion", 0x02294},
{"Sscr", 0x1D4AE},
{"Star", 0x022C6},
{"Sub", 0x022D0},
{"Subset", 0x022D0},
{"SubsetEqual", 0x02286},
{"Succeeds", 0x0227B},
{"SucceedsEqual", 0x02AB0},
{"SucceedsSlantEqual", 0x0227D},
{"SucceedsTilde", 0x0227F},
{"SuchThat", 0x0220B},
{"Sum", 0x02211},
{"Sup", 0x022D1},
{"Superset", 0x02283},
{"SupersetEqual", 0x02287},
{"Supset", 0x022D1},
{"THORN", 0x000DE},
{"TRADE", 0x02122},
{"TSHcy", 0x0040B},
{"TScy", 0x00426},
{"Tab", 0x00009},
{"Tau", 0x003A4},
{"Tcaron", 0x00164},
{"Tcedil", 0x00162},
{"Tcy", 0x00422},
{"Tfr", 0x1D517},
{"Therefore", 0x02234},
{"Theta", 0x00398},
{"ThinSpace", 0x02009},
{"Tilde", 0x0223C},
{"TildeEqual", 0x02243},
{"TildeFullEqual", 0x02245},
{"TildeTilde", 0x02248},
{"Topf", 0x1D54B},
{"TripleDot", 0x020DB},
{"Tscr", 0x1D4AF},
{"Tstrok", 0x00166},
{"Uacute", 0x000DA},
{"Uarr", 0x0219F},
{"Uarrocir", 0x02949},
{"Ubrcy", 0x0040E},
{"Ubreve", 0x0016C},
{"Ucirc", 0x000DB},
{"Ucy", 0x00423},
{"Udblac", 0x00170},
{"Ufr", 0x1D518},
{"Ugrave", 0x000D9},
{"Umacr", 0x0016A},
{"UnderBar", 0x0005F},
{"UnderBrace", 0x023DF},
{"UnderBracket", 0x023B5},
{"UnderParenthesis", 0x023DD},
{"Union", 0x022C3},
{"UnionPlus", 0x0228E},
{"Uogon", 0x00172},
{"Uopf", 0x1D54C},
{"UpArrow", 0x02191},
{"UpArrowBar", 0x02912},
{"UpArrowDownArrow", 0x021C5},
{"UpDownArrow", 0x02195},
{"UpEquilibrium", 0x0296E},
{"UpTee", 0x022A5},
{"UpTeeArrow", 0x021A5},
{"Uparrow", 0x021D1},
{"Updownarrow", 0x021D5},
{"UpperLeftArrow", 0x02196},
{"UpperRightArrow", 0x02197},
{"Upsi", 0x003D2},
{"Upsilon", 0x003A5},
{"Uring", 0x0016E},
{"Uscr", 0x1D4B0},
{"Utilde", 0x00168},
{"Uuml", 0x000DC},
{"VDash", 0x022AB},
{"Vbar", 0x02AEB},
{"Vcy", 0x00412},
{"Vdash", 0x022A9},
{"Vdashl", 0x02AE6},
{"Vee", 0x022C1},
{"Verbar", 0x02016},
{"Vert", 0x02016},
{"VerticalBar", 0x02223},
{"VerticalLine", 0x0007C},
{"VerticalSeparator", 0x02758},
{"VerticalTilde", 0x02240},
{"VeryThinSpace", 0x0200A},
{"Vfr", 0x1D519},
{"Vopf", 0x1D54D},
{"Vscr", 0x1D4B1},
{"Vvdash", 0x022AA},
{"Wcirc", 0x00174},
{"Wedge", 0x022C0},
{"Wfr", 0x1D51A},
{"Wopf", 0x1D54E},
{"Wscr", 0x1D4B2},
{"Xfr", 0x1D51B},
{"Xi", 0x0039E},
{"Xopf", 0x1D54F},
{"Xscr", 0x1D4B3},
{"YAcy", 0x0042F},
{"YIcy", 0x00407},
{"YUcy", 0x0042E},
{"Yacute", 0x000DD},
{"Ycirc", 0x00176},
{"Ycy", 0x0042B},
{"Yfr", 0x1D51C},
{"Yopf", 0x1D550},
{"Yscr", 0x1D4B4},
{"Yuml", 0x00178},
{"ZHcy", 0x00416},
{"Zacute", 0x00179},
{"Zcaron", 0x0017D},
{"Zcy", 0x00417},
{"Zdot", 0x0017B},
{"ZeroWidthSpace", 0x0200B},
{"Zeta", 0x00396},
{"Zfr", 0x02128},
{"Zopf", 0x02124},
{"Zscr", 0x1D4B5},
{"aacute", 0x000E1},
{"abreve", 0x00103},
{"ac", 0x0223E},
{"acd", 0x0223F},
{"acirc", 0x000E2},
{"acute", 0x000B4},
{"acy", 0x00430},
{"aelig", 0x000E6},
{"af", 0x02061},
{"afr", 0x1D51E},
{"agrave", 0x000E0},
{"alefsym", 0x02135},
{"aleph", 0x02135},
{"alpha", 0x003B1},
{"amacr", 0x00101},
{"amalg", 0x02A3F},
{"amp", 0x00026},
{"and", 0x02227},
{"andand", 0x02A55},
{"andd", 0x02A5C},
{"andslope", 0x02A58},
{"andv", 0x02A5A},
{"ang", 0x02220},
{"ange", 0x029A4},
{"angle", 0x02220},
{"angmsd", 0x02221},
{"angmsdaa", 0x029A8},
{"angmsdab", 0x029A9},
{"angmsdac", 0x029AA},
{"angmsdad", 0x029AB},
{"angmsdae", 0x029AC},
{"angmsdaf", 0x029AD},
{"angmsdag", 0x029AE},
{"angmsdah", 0x029AF},
{"angrt", 0x0221F},
{"angrtvb", 0x022BE},
{"angrtvbd", 0x0299D},
{"angsph", 0x02222},
{"angst", 0x000C5},
{"angzarr", 0x0237C},
{"aogon", 0x00105},
{"aopf", 0x1D552},
{"ap", 0x02248},
{"apE", 0x02A70},
{"apacir", 0x02A6F},
{"ape", 0x0224A},
{"apid", 0x0224B},
{"apos", 0x00027},
{"approx", 0x02248},
{"approxeq", 0x0224A},
{"aring", 0x000E5},
{"ascr", 0x1D4B6},
{"ast", 0x0002A},
{"asymp", 0x02248},
{"asympeq", 0x0224D},
{"atilde", 0x000E3},
{"auml", 0x000E4},
{"awconint", 0x02233},
{"awint", 0x02A11},
{"bNot", 0x02AED},
{"backcong", 0x0224C},
{"backepsilon", 0x003F6},
{"backprime", 0x02035},
{"backsim", 0x0223D},
{"backsimeq", 0x022CD},
{"barvee", 0x022BD},
{"barwed", 0x02305},
{"barwedge", 0x02305},
{"bbrk", 0x023B5},
{"bbrktbrk", 0x023B6},
{"bcong", 0x0224C},
{"bcy", 0x00431},
{"bdquo", 0x0201E},
{"becaus", 0x02235},
{"because", 0x02235},
{"bemptyv", 0x029B0},
{"bepsi", 0x003F6},
{"bernou", 0x0212C},
{"beta", 0x003B2},
{"beth", 0x02136},
{"between", 0x0226C},
{"bfr", 0x1D51F},
{"bigcap", 0x022C2},
{"bigcirc", 0x025EF},
{"bigcup", 0x022C3},
{"bigodot", 0x02A00},
{"bigoplus", 0x02A01},
{"bigotimes", 0x02A02},
{"bigsqcup", 0x02A06},
{"bigstar", 0x02605},
{"bigtriangledown", 0x025BD},
{"bigtriangleup", 0x025B3},
{"biguplus", 0x02A04},
{"bigvee", 0x022C1},
{"bigwedge", 0x022C0},
{"bkarow", 0x0290D},
{"blacklozenge", 0x029EB},
{"blacksquare", 0x025AA},
{"blacktriangle", 0x025B4},
{"blacktriangledown", 0x025BE},
{"blacktriangleleft", 0x025C2},
{"blacktriangleright", 0x025B8},
{"blank", 0x02423},
{"blk12", 0x02592},
{"blk14", 0x02591},
{"blk34", 0x02593},
{"block", 0x02588},
{"bnot", 0x02310},
{"bopf", 0x1D553},
{"bot", 0x022A5},
{"bottom", 0x022A5},
{"bowtie", 0x022C8},
{"boxDL", 0x02557},
{"boxDR", 0x02554},
{"boxDl", 0x02556},
{"boxDr", 0x02553},
{"boxH", 0x02550},
{"boxHD", 0x02566},
{"boxHU", 0x02569},
{"boxHd", 0x02564},
{"boxHu", 0x02567},
{"boxUL", 0x0255D},
{"boxUR", 0x0255A},
{"boxUl", 0x0255C},
{"boxUr", 0x02559},
{"boxV", 0x02551},
{"boxVH", 0x0256C},
{"boxVL", 0x02563},
{"boxVR", 0x02560},
{"boxVh", 0x0256B},
{"boxVl", 0x02562},
{"boxVr", 0x0255F},
{"boxbox", 0x029C9},
{"boxdL", 0x02555},
{"boxdR", 0x02552},
{"boxdl", 0x02510},
{"boxdr", 0x0250C},
{"boxh", 0x02500},
{"boxhD", 0x02565},
{"boxhU", 0x02568},
{"boxhd", 0x0252C},
{"boxhu", 0x02534},
{"boxminus", 0x0229F},
{"boxplus", 0x0229E},
{"boxtimes", 0x022A0},
{"boxuL", 0x0255B},
{"boxuR", 0x02558},
{"boxul", 0x02518},
{"boxur", 0x02514},
{"boxv", 0x02502},
{"boxvH", 0x0256A},
{"boxvL", 0x02561},
{"boxvR", 0x0255E},
{"boxvh", 0x0253C},
{"boxvl", 0x02524},
{"boxvr", 0x0251C},
{"bprime", 0x02035},
{"breve", 0x002D8},
{"brvbar", 0x000A6},
{"bscr", 0x1D4B7},
{"bsemi", 0x0204F},
{"bsim", 0x0223D},
{"bsime", 0x022CD},
{"bsol", 0x0005C},
{"bsolb", 0x029C5},
{"bsolhsub", 0x027C8},
{"bull", 0x02022},
{"bullet", 0x02022},
{"bump", 0x0224E},
{"bumpE", 0x02AAE},
{"bumpe", 0x0224F},
{"bumpeq", 0x0224F},
{"cacute", 0x00107},
{"cap", 0x02229},
{"capand", 0x02A44},
{"capbrcup", 0x02A49},
{"capcap", 0x02A4B},
{"capcup", 0x02A47},
{"capdot", 0x02A40},
{"caret", 0x02041},
{"caron", 0x002C7},
{"ccaps", 0x02A4D},
{"ccaron", 0x0010D},
{"ccedil", 0x000E7},
{"ccirc", 0x00109},
{"ccups", 0x02A4C},
{"ccupssm", 0x02A50},
{"cdot", 0x0010B},
{"cedil", 0x000B8},
{"cemptyv", 0x029B2},
{"cent", 0x000A2},
{"centerdot", 0x000B7},
{"cfr", 0x1D520},
{"chcy", 0x00447},
{"check", 0x02713},
{"checkmark", 0x02713},
{"chi", 0x003C7},
{"cir", 0x025CB},
{"cirE", 0x029C3},
{"circ", 0x002C6},
{"circeq", 0x02257},
{"circlearrowleft", 0x021BA},
{"circlearrowright", 0x021BB},
{"circledR", 0x000AE},
{"circledS", 0x024C8},
{"circledast", 0x0229B},
{"circledcirc", 0x0229A},
{"circleddash", 0x0229D},
{"cire", 0x02257},
{"cirfnint", 0x02A10},
{"cirmid", 0x02AEF},
{"cirscir", 0x029C2},
{"clubs", 0x02663},
{"clubsuit", 0x02663},
{"colon", 0x0003A},
{"colone", 0x02254},
{"coloneq", 0x02254},
{"comma", 0x0002C},
{"commat", 0x00040},
{"comp", 0x02201},
{"compfn", 0x02218},
{"complement", 0x02201},
{"complexes", 0x02102},
{"cong", 0x02245},
{"congdot", 0x02A6D},
{"conint", 0x0222E},
{"copf", 0x1D554},
{"coprod", 0x02210},
{"copy", 0x000A9},
{"copysr", 0x02117},
{"crarr", 0x021B5},
{"cross", 0x02717},
{"cscr", 0x1D4B8},
{"csub", 0x02ACF},
{"csube", 0x02AD1},
{"csup", 0x02AD0},
{"csupe", 0x02AD2},
{"ctdot", 0x022EF},
{"cudarrl", 0x02938},
{"cudarrr", 0x02935},
{"cuepr", 0x022DE},
{"cuesc", 0x022DF},
{"cularr", 0x021B6},
{"cularrp", 0x0293D},
{"cup", 0x0222A},
{"cupbrcap", 0x02A48},
{"cupcap", 0x02A46},
{"cupcup", 0x02A4A},
{"cupdot", 0x0228D},
{"cupor", 0x02A45},
{"curarr", 0x021B7},
{"curarrm", 0x0293C},
{"curlyeqprec", 0x022DE},
{"curlyeqsucc", 0x022DF},
{"curlyvee", 0x022CE},
{"curlywedge", 0x022CF},
{"curren", 0x000A4},
{"curvearrowleft", 0x021B6},
{"curvearrowright", 0x021B7},
{"cuvee", 0x022CE},
{"cuwed", 0x022CF},
{"cwconint", 0x02232},
{"cwint", 0x02231},
{"cylcty", 0x0232D},
{"dArr", 0x021D3},
{"dHar", 0x02965},
{"dagger", 0x02020},
{"daleth", 0x02138},
{"darr", 0x02193},
{"dash", 0x02010},
{"dashv", 0x022A3},
{"dbkarow", 0x0290F},
{"dblac", 0x002DD},
{"dcaron", 0x0010F},
{"dcy", 0x00434},
{"dd", 0x02146},
{"ddagger", 0x02021},
{"ddarr", 0x021CA},
{"ddotseq", 0x02A77},
{"deg", 0x000B0},
{"delta", 0x003B4},
{"demptyv", 0x029B1},
{"dfisht", 0x0297F},
{"dfr", 0x1D521},
{"dharl", 0x021C3},
{"dharr", 0x021C2},
{"diam", 0x022C4},
{"diamond", 0x022C4},
{"diamondsuit", 0x02666},
{"diams", 0x02666},
{"die", 0x000A8},
{"digamma", 0x003DD},
{"disin", 0x022F2},
{"div", 0x000F7},
{"divide", 0x000F7},
{"divideontimes", 0x022C7},
{"divonx", 0x022C7},
{"djcy", 0x00452},
{"dlcorn", 0x0231E},
{"dlcrop", 0x0230D},
{"dollar", 0x00024},
{"dopf", 0x1D555},
{"dot", 0x002D9},
{"doteq", 0x02250},
{"doteqdot", 0x02251},
{"dotminus", 0x02238},
{"dotplus", 0x02214},
{"dotsquare", 0x022A1},
{"doublebarwedge", 0x02306},
{"downarrow", 0x02193},
{"downdownarrows", 0x021CA},
{"downharpoonleft", 0x021C3},
{"downharpoonright", 0x021C2},
{"drbkarow", 0x02910},
{"drcorn", 0x0231F},
{"drcrop", 0x0230C},
{"dscr", 0x1D4B9},
{"dscy", 0x00455},
{"dsol", 0x029F6},
{"dstrok", 0x00111},
{"dtdot", 0x022F1},
{"dtri", 0x025BF},
{"dtrif", 0x025BE},
{"duarr", 0x021F5},
{"duhar", 0x0296F},
{"dwangle", 0x029A6},
{"dzcy", 0x0045F},
{"dzigrarr", 0x027FF},
{"eDDot", 0x02A77},
{"eDot", 0x02251},
{"eacute", 0x000E9},
{"easter", 0x02A6E},
{"ecaron", 0x0011B},
{"ecir", 0x02256},
{"ecirc", 0x000EA},
{"ecolon", 0x02255},
{"ecy", 0x0044D},
{"edot", 0x00117},
{"ee", 0x02147},
{"efDot", 0x02252},
{"efr", 0x1D522},
{"eg", 0x02A9A},
{"egrave", 0x000E8},
{"egs", 0x02A96},
{"egsdot", 0x02A98},
{"el", 0x02A99},
{"elinters", 0x023E7},
{"ell", 0x02113},
{"els", 0x02A95},
{"elsdot", 0x02A97},
{"emacr", 0x00113},
{"empty", 0x02205},
{"emptyset", 0x02205},
{"emptyv", 0x02205},
{"emsp13", 0x02004},
{"emsp14", 0x02005},
{"emsp", 0x02003},
{"eng", 0x0014B},
{"ensp", 0x02002},
{"eogon", 0x00119},
{"eopf", 0x1D556},
{"epar", 0x022D5},
{"eparsl", 0x029E3},
{"eplus", 0x02A71},
{"epsi", 0x003B5},
{"epsilon", 0x003B5},
{"epsiv", 0x003F5},
{"eqcirc", 0x02256},
{"eqcolon", 0x02255},
{"eqsim", 0x02242},
{"eqslantgtr", 0x02A96},
{"eqslantless", 0x02A95},
{"equals", 0x0003D},
{"equest", 0x0225F},
{"equiv", 0x02261},
{"equivDD", 0x02A78},
{"eqvparsl", 0x029E5},
{"erDot", 0x02253},
{"erarr", 0x02971},
{"escr", 0x0212F},
{"esdot", 0x02250},
{"esim", 0x02242},
{"eta", 0x003B7},
{"eth", 0x000F0},
{"euml", 0x000EB},
{"euro", 0x020AC},
{"excl", 0x00021},
{"exist", 0x02203},
{"expectation", 0x02130},
{"exponentiale", 0x02147},
{"fallingdotseq", 0x02252},
{"fcy", 0x00444},
{"female", 0x02640},
{"ffilig", 0x0FB03},
{"fflig", 0x0FB00},
{"ffllig", 0x0FB04},
{"ffr", 0x1D523},
{"filig", 0x0FB01},
{"flat", 0x0266D},
{"fllig", 0x0FB02},
{"fltns", 0x025B1},
{"fnof", 0x00192},
{"fopf", 0x1D557},
{"forall", 0x02200},
{"fork", 0x022D4},
{"forkv", 0x02AD9},
{"fpartint", 0x02A0D},
{"frac12", 0x000BD},
{"frac13", 0x02153},
{"frac14", 0x000BC},
{"frac15", 0x02155},
{"frac16", 0x02159},
{"frac18", 0x0215B},
{"frac23", 0x02154},
{"frac25", 0x02156},
{"frac34", 0x000BE},
{"frac35", 0x02157},
{"frac38", 0x0215C},
{"frac45", 0x02158},
{"frac56", 0x0215A},
{"frac58", 0x0215D},
{"frac78", 0x0215E},
{"frasl", 0x02044},
{"frown", 0x02322},
{"fscr", 0x1D4BB},
{"gE", 0x02267},
{"gEl", 0x02A8C},
{"gacute", 0x001F5},
{"gamma", 0x003B3},
{"gammad", 0x003DD},
{"gap", 0x02A86},
{"gbreve", 0x0011F},
{"gcirc", 0x0011D},
{"gcy", 0x00433},
{"gdot", 0x00121},
{"ge", 0x02265},
{"gel", 0x022DB},
{"geq", 0x02265},
{"geqq", 0x02267},
{"geqslant", 0x02A7E},
{"ges", 0x02A7E},
{"gescc", 0x02AA9},
{"gesdot", 0x02A80},
{"gesdoto", 0x02A82},
{"gesdotol", 0x02A84},
{"gesles", 0x02A94},
{"gfr", 0x1D524},
{"gg", 0x0226B},
{"ggg", 0x022D9},
{"gimel", 0x02137},
{"gjcy", 0x00453},
{"gl", 0x02277},
{"glE", 0x02A92},
{"gla", 0x02AA5},
{"glj", 0x02AA4},
{"gnE", 0x02269},
{"gnap", 0x02A8A},
{"gnapprox", 0x02A8A},
{"gne", 0x02A88},
{"gneq", 0x02A88},
{"gneqq", 0x02269},
{"gnsim", 0x022E7},
{"gopf", 0x1D558},
{"grave", 0x00060},
{"gscr", 0x0210A},
{"gsim", 0x02273},
{"gsime", 0x02A8E},
{"gsiml", 0x02A90},
{"gt", 0x0003E},
{"gtcc", 0x02AA7},
{"gtcir", 0x02A7A},
{"gtdot", 0x022D7},
{"gtlPar", 0x02995},
{"gtquest", 0x02A7C},
{"gtrapprox", 0x02A86},
{"gtrarr", 0x02978},
{"gtrdot", 0x022D7},
{"gtreqless", 0x022DB},
{"gtreqqless", 0x02A8C},
{"gtrless", 0x02277},
{"gtrsim", 0x02273},
{"hArr", 0x021D4},
{"hairsp", 0x0200A},
{"half", 0x000BD},
{"hamilt", 0x0210B},
{"hardcy", 0x0044A},
{"harr", 0x02194},
{"harrcir", 0x02948},
{"harrw", 0x021AD},
{"hbar", 0x0210F},
{"hcirc", 0x00125},
{"hearts", 0x02665},
{"heartsuit", 0x02665},
{"hellip", 0x02026},
{"hercon", 0x022B9},
{"hfr", 0x1D525},
{"hksearow", 0x02925},
{"hkswarow", 0x02926},
{"hoarr", 0x021FF},
{"homtht", 0x0223B},
{"hookleftarrow", 0x021A9},
{"hookrightarrow", 0x021AA},
{"hopf", 0x1D559},
{"horbar", 0x02015},
{"hscr", 0x1D4BD},
{"hslash", 0x0210F},
{"hstrok", 0x00127},
{"hybull", 0x02043},
{"hyphen", 0x02010},
{"iacute", 0x000ED},
{"ic", 0x02063},
{"icirc", 0x000EE},
{"icy", 0x00438},
{"iecy", 0x00435},
{"iexcl", 0x000A1},
{"iff", 0x021D4},
{"ifr", 0x1D526},
{"igrave", 0x000EC},
{"ii", 0x02148},
{"iiiint", 0x02A0C},
{"iiint", 0x0222D},
{"iinfin", 0x029DC},
{"iiota", 0x02129},
{"ijlig", 0x00133},
{"imacr", 0x0012B},
{"image", 0x02111},
{"imagline", 0x02110},
{"imagpart", 0x02111},
{"imath", 0x00131},
{"imof", 0x022B7},
{"imped", 0x001B5},
{"in", 0x02208},
{"incare", 0x02105},
{"infin", 0x0221E},
{"infintie", 0x029DD},
{"inodot", 0x00131},
{"int", 0x0222B},
{"intcal", 0x022BA},
{"integers", 0x02124},
{"intercal", 0x022BA},
{"intlarhk", 0x02A17},
{"intprod", 0x02A3C},
{"iocy", 0x00451},
{"iogon", 0x0012F},
{"iopf", 0x1D55A},
{"iota", 0x003B9},
{"iprod", 0x02A3C},
{"iquest", 0x000BF},
{"iscr", 0x1D4BE},
{"isin", 0x02208},
{"isinE", 0x022F9},
{"isindot", 0x022F5},
{"isins", 0x022F4},
{"isinsv", 0x022F3},
{"isinv", 0x02208},
{"it", 0x02062},
{"itilde", 0x00129},
{"iukcy", 0x00456},
{"iuml", 0x000EF},
{"jcirc", 0x00135},
{"jcy", 0x00439},
{"jfr", 0x1D527},
{"jmath", 0x00237},
{"jopf", 0x1D55B},
{"jscr", 0x1D4BF},
{"jsercy", 0x00458},
{"jukcy", 0x00454},
{"kappa", 0x003BA},
{"kappav", 0x003F0},
{"kcedil", 0x00137},
{"kcy", 0x0043A},
{"kfr", 0x1D528},
{"kgreen", 0x00138},
{"khcy", 0x00445},
{"kjcy", 0x0045C},
{"kopf", 0x1D55C},
{"kscr", 0x1D4C0},
{"lAarr", 0x021DA},
{"lArr", 0x021D0},
{"lAtail", 0x0291B},
{"lBarr", 0x0290E},
{"lE", 0x02266},
{"lEg", 0x02A8B},
{"lHar", 0x02962},
{"lacute", 0x0013A},
{"laemptyv", 0x029B4},
{"lagran", 0x02112},
{"lambda", 0x003BB},
{"lang", 0x027E8},
{"langd", 0x02991},
{"langle", 0x027E8},
{"lap", 0x02A85},
{"laquo", 0x000AB},
{"larr", 0x02190},
{"larrb", 0x021E4},
{"larrbfs", 0x0291F},
{"larrfs", 0x0291D},
{"larrhk", 0x021A9},
{"larrlp", 0x021AB},
{"larrpl", 0x02939},
{"larrsim", 0x02973},
{"larrtl", 0x021A2},
{"lat", 0x02AAB},
{"latail", 0x02919},
{"late", 0x02AAD},
{"lbarr", 0x0290C},
{"lbbrk", 0x02772},
{"lbrace", 0x0007B},
{"lbrack", 0x0005B},
{"lbrke", 0x0298B},
{"lbrksld", 0x0298F},
{"lbrkslu", 0x0298D},
{"lcaron", 0x0013E},
{"lcedil", 0x0013C},
{"lceil", 0x02308},
{"lcub", 0x0007B},
{"lcy", 0x0043B},
{"ldca", 0x02936},
{"ldquo", 0x0201C},
{"ldquor", 0x0201E},
{"ldrdhar", 0x02967},
{"ldrushar", 0x0294B},
{"ldsh", 0x021B2},
{"le", 0x02264},
{"leftarrow", 0x02190},
{"leftarrowtail", 0x021A2},
{"leftharpoondown", 0x021BD},
{"leftharpoonup", 0x021BC},
{"leftleftarrows", 0x021C7},
{"leftrightarrow", 0x02194},
{"leftrightarrows", 0x021C6},
{"leftrightharpoons", 0x021CB},
{"leftrightsquigarrow", 0x021AD},
{"leftthreetimes", 0x022CB},
{"leg", 0x022DA},
{"leq", 0x02264},
{"leqq", 0x02266},
{"leqslant", 0x02A7D},
{"les", 0x02A7D},
{"lescc", 0x02AA8},
{"lesdot", 0x02A7F},
{"lesdoto", 0x02A81},
{"lesdotor", 0x02A83},
{"lesges", 0x02A93},
{"lessapprox", 0x02A85},
{"lessdot", 0x022D6},
{"lesseqgtr", 0x022DA},
{"lesseqqgtr", 0x02A8B},
{"lessgtr", 0x02276},
{"lesssim", 0x02272},
{"lfisht", 0x0297C},
{"lfloor", 0x0230A},
{"lfr", 0x1D529},
{"lg", 0x02276},
{"lgE", 0x02A91},
{"lhard", 0x021BD},
{"lharu", 0x021BC},
{"lharul", 0x0296A},
{"lhblk", 0x02584},
{"ljcy", 0x00459},
{"ll", 0x0226A},
{"llarr", 0x021C7},
{"llcorner", 0x0231E},
{"llhard", 0x0296B},
{"lltri", 0x025FA},
{"lmidot", 0x00140},
{"lmoust", 0x023B0},
{"lmoustache", 0x023B0},
{"lnE", 0x02268},
{"lnap", 0x02A89},
{"lnapprox", 0x02A89},
{"lne", 0x02A87},
{"lneq", 0x02A87},
{"lneqq", 0x02268},
{"lnsim", 0x022E6},
{"loang", 0x027EC},
{"loarr", 0x021FD},
{"lobrk", 0x027E6},
{"longleftarrow", 0x027F5},
{"longleftrightarrow", 0x027F7},
{"longmapsto", 0x027FC},
{"longrightarrow", 0x027F6},
{"looparrowleft", 0x021AB},
{"looparrowright", 0x021AC},
{"lopar", 0x02985},
{"lopf", 0x1D55D},
{"loplus", 0x02A2D},
{"lotimes", 0x02A34},
{"lowast", 0x02217},
{"lowbar", 0x0005F},
{"loz", 0x025CA},
{"lozenge", 0x025CA},
{"lozf", 0x029EB},
{"lpar", 0x00028},
{"lparlt", 0x02993},
{"lrarr", 0x021C6},
{"lrcorner", 0x0231F},
{"lrhar", 0x021CB},
{"lrhard", 0x0296D},
{"lrm", 0x0200E},
{"lrtri", 0x022BF},
{"lsaquo", 0x02039},
{"lscr", 0x1D4C1},
{"lsh", 0x021B0},
{"lsim", 0x02272},
{"lsime", 0x02A8D},
{"lsimg", 0x02A8F},
{"lsqb", 0x0005B},
{"lsquo", 0x02018},
{"lsquor", 0x0201A},
{"lstrok", 0x00142},
{"lt", 0x0003C},
{"ltcc", 0x02AA6},
{"ltcir", 0x02A79},
{"ltdot", 0x022D6},
{"lthree", 0x022CB},
{"ltimes", 0x022C9},
{"ltlarr", 0x02976},
{"ltquest", 0x02A7B},
{"ltrPar", 0x02996},
{"ltri", 0x025C3},
{"ltrie", 0x022B4},
{"ltrif", 0x025C2},
{"lurdshar", 0x0294A},
{"luruhar", 0x02966},
{"mDDot", 0x0223A},
{"macr", 0x000AF},
{"male", 0x02642},
{"malt", 0x02720},
{"maltese", 0x02720},
{"map", 0x021A6},
{"mapsto", 0x021A6},
{"mapstodown", 0x021A7},
{"mapstoleft", 0x021A4},
{"mapstoup", 0x021A5},
{"marker", 0x025AE},
{"mcomma", 0x02A29},
{"mcy", 0x0043C},
{"mdash", 0x02014},
{"measuredangle", 0x02221},
{"mfr", 0x1D52A},
{"mho", 0x02127},
{"micro", 0x000B5},
{"mid", 0x02223},
{"midast", 0x0002A},
{"midcir", 0x02AF0},
{"middot", 0x000B7},
{"minus", 0x02212},
{"minusb", 0x0229F},
{"minusd", 0x02238},
{"minusdu", 0x02A2A},
{"mlcp", 0x02ADB},
{"mldr", 0x02026},
{"mnplus", 0x02213},
{"models", 0x022A7},
{"mopf", 0x1D55E},
{"mp", 0x02213},
{"mscr", 0x1D4C2},
{"mstpos", 0x0223E},
{"mu", 0x003BC},
{"multimap", 0x022B8},
{"mumap", 0x022B8},
{"nLeftarrow", 0x021CD},
{"nLeftrightarrow", 0x021CE},
{"nRightarrow", 0x021CF},
{"nVDash", 0x022AF},
{"nVdash", 0x022AE},
{"nabla", 0x02207},
{"nacute", 0x00144},
{"nap", 0x02249},
{"napos", 0x00149},
{"napprox", 0x02249},
{"natur", 0x0266E},
{"natural", 0x0266E},
{"naturals", 0x02115},
{"nbsp", 0x000A0},
{"ncap", 0x02A43},
{"ncaron", 0x00148},
{"ncedil", 0x00146},
{"ncong", 0x02247},
{"ncup", 0x02A42},
{"ncy", 0x0043D},
{"ndash", 0x02013},
{"ne", 0x02260},
{"neArr", 0x021D7},
{"nearhk", 0x02924},
{"nearr", 0x02197},
{"nearrow", 0x02197},
{"nequiv", 0x02262},
{"nesear", 0x02928},
{"nexist", 0x02204},
{"nexists", 0x02204},
{"nfr", 0x1D52B},
{"nge", 0x02271},
{"ngeq", 0x02271},
{"ngsim", 0x02275},
{"ngt", 0x0226F},
{"ngtr", 0x0226F},
{"nhArr", 0x021CE},
{"nharr", 0x021AE},
{"nhpar", 0x02AF2},
{"ni", 0x0220B},
{"nis", 0x022FC},
{"nisd", 0x022FA},
{"niv", 0x0220B},
{"njcy", 0x0045A},
{"nlArr", 0x021CD},
{"nlarr", 0x0219A},
{"nldr", 0x02025},
{"nle", 0x02270},
{"nleftarrow", 0x0219A},
{"nleftrightarrow", 0x021AE},
{"nleq", 0x02270},
{"nless", 0x0226E},
{"nlsim", 0x02274},
{"nlt", 0x0226E},
{"nltri", 0x022EA},
{"nltrie", 0x022EC},
{"nmid", 0x02224},
{"nopf", 0x1D55F},
{"not", 0x000AC},
{"notin", 0x02209},
{"notinva", 0x02209},
{"notinvb", 0x022F7},
{"notinvc", 0x022F6},
{"notni", 0x0220C},
{"notniva", 0x0220C},
{"notnivb", 0x022FE},
{"notnivc", 0x022FD},
{"npar", 0x02226},
{"nparallel", 0x02226},
{"npolint", 0x02A14},
{"npr", 0x02280},
{"nprcue", 0x022E0},
{"nprec", 0x02280},
{"nrArr", 0x021CF},
{"nrarr", 0x0219B},
{"nrightarrow", 0x0219B},
{"nrtri", 0x022EB},
{"nrtrie", 0x022ED},
{"nsc", 0x02281},
{"nsccue", 0x022E1},
{"nscr", 0x1D4C3},
{"nshortmid", 0x02224},
{"nshortparallel", 0x02226},
{"nsim", 0x02241},
{"nsime", 0x02244},
{"nsimeq", 0x02244},
{"nsmid", 0x02224},
{"nspar", 0x02226},
{"nsqsube", 0x022E2},
{"nsqsupe", 0x022E3},
{"nsub", 0x02284},
{"nsube", 0x02288},
{"nsubseteq", 0x02288},
{"nsucc", 0x02281},
{"nsup", 0x02285},
{"nsupe", 0x02289},
{"nsupseteq", 0x02289},
{"ntgl", 0x02279},
{"ntilde", 0x000F1},
{"ntlg", 0x02278},
{"ntriangleleft", 0x022EA},
{"ntrianglelefteq", 0x022EC},
{"ntriangleright", 0x022EB},
{"ntrianglerighteq", 0x022ED},
{"nu", 0x003BD},
{"num", 0x00023},
{"numero", 0x02116},
{"numsp", 0x02007},
{"nvDash", 0x022AD},
{"nvHarr", 0x02904},
{"nvdash", 0x022AC},
{"nvinfin", 0x029DE},
{"nvlArr", 0x02902},
{"nvrArr", 0x02903},
{"nwArr", 0x021D6},
{"nwarhk", 0x02923},
{"nwarr", 0x02196},
{"nwarrow", 0x02196},
{"nwnear", 0x02927},
{"oS", 0x024C8},
{"oacute", 0x000F3},
{"oast", 0x0229B},
{"ocir", 0x0229A},
{"ocirc", 0x000F4},
{"ocy", 0x0043E},
{"odash", 0x0229D},
{"odblac", 0x00151},
{"odiv", 0x02A38},
{"odot", 0x02299},
{"odsold", 0x029BC},
{"oelig", 0x00153},
{"ofcir", 0x029BF},
{"ofr", 0x1D52C},
{"ogon", 0x002DB},
{"ograve", 0x000F2},
{"ogt", 0x029C1},
{"ohbar", 0x029B5},
{"ohm", 0x003A9},
{"oint", 0x0222E},
{"olarr", 0x021BA},
{"olcir", 0x029BE},
{"olcross", 0x029BB},
{"oline", 0x0203E},
{"olt", 0x029C0},
{"omacr", 0x0014D},
{"omega", 0x003C9},
{"omicron", 0x003BF},
{"omid", 0x029B6},
{"ominus", 0x02296},
{"oopf", 0x1D560},
{"opar", 0x029B7},
{"operp", 0x029B9},
{"oplus", 0x02295},
{"or", 0x02228},
{"orarr", 0x021BB},
{"ord", 0x02A5D},
{"order", 0x02134},
{"orderof", 0x02134},
{"ordf", 0x000AA},
{"ordm", 0x000BA},
{"origof", 0x022B6},
{"oror", 0x02A56},
{"orslope", 0x02A57},
{"orv", 0x02A5B},
{"oscr", 0x02134},
{"oslash", 0x000F8},
{"osol", 0x02298},
{"otilde", 0x000F5},
{"otimes", 0x02297},
{"otimesas", 0x02A36},
{"ouml", 0x000F6},
{"ovbar", 0x0233D},
{"par", 0x02225},
{"para", 0x000B6},
{"parallel", 0x02225},
{"parsim", 0x02AF3},
{"parsl", 0x02AFD},
{"part", 0x02202},
{"pcy", 0x0043F},
{"percnt", 0x00025},
{"period", 0x0002E},
{"permil", 0x02030},
{"perp", 0x022A5},
{"pertenk", 0x02031},
{"pfr", 0x1D52D},
{"phi", 0x003C6},
{"phiv", 0x003D5},
{"phmmat", 0x02133},
{"phone", 0x0260E},
{"pi", 0x003C0},
{"pitchfork", 0x022D4},
{"piv", 0x003D6},
{"planck", 0x0210F},
{"planckh", 0x0210E},
{"plankv", 0x0210F},
{"plus", 0x0002B},
{"plusacir", 0x02A23},
{"plusb", 0x0229E},
{"pluscir", 0x02A22},
{"plusdo", 0x02214},
{"plusdu", 0x02A25},
{"pluse", 0x02A72},
{"plusmn", 0x000B1},
{"plussim", 0x02A26},
{"plustwo", 0x02A27},
{"pm", 0x000B1},
{"pointint", 0x02A15},
{"popf", 0x1D561},
{"pound", 0x000A3},
{"pr", 0x0227A},
{"prE", 0x02AB3},
{"prap", 0x02AB7},
{"prcue", 0x0227C},
{"pre", 0x02AAF},
{"prec", 0x0227A},
{"precapprox", 0x02AB7},
{"preccurlyeq", 0x0227C},
{"preceq", 0x02AAF},
{"precnapprox", 0x02AB9},
{"precneqq", 0x02AB5},
{"precnsim", 0x022E8},
{"precsim", 0x0227E},
{"prime", 0x02032},
{"primes", 0x02119},
{"prnE", 0x02AB5},
{"prnap", 0x02AB9},
{"prnsim", 0x022E8},
{"prod", 0x0220F},
{"profalar", 0x0232E},
{"profline", 0x02312},
{"profsurf", 0x02313},
{"prop", 0x0221D},
{"propto", 0x0221D},
{"prsim", 0x0227E},
{"prurel", 0x022B0},
{"pscr", 0x1D4C5},
{"psi", 0x003C8},
{"puncsp", 0x02008},
{"qfr", 0x1D52E},
{"qint", 0x02A0C},
{"qopf", 0x1D562},
{"qprime", 0x02057},
{"qscr", 0x1D4C6},
{"quaternions", 0x0210D},
{"quatint", 0x02A16},
{"quest", 0x0003F},
{"questeq", 0x0225F},
{"quot", 0x00022},
{"rAarr", 0x021DB},
{"rArr", 0x021D2},
{"rAtail", 0x0291C},
{"rBarr", 0x0290F},
{"rHar", 0x02964},
{"racute", 0x00155},
{"radic", 0x0221A},
{"raemptyv", 0x029B3},
{"rang", 0x027E9},
{"rangd", 0x02992},
{"range", 0x029A5},
{"rangle", 0x027E9},
{"raquo", 0x000BB},
{"rarr", 0x02192},
{"rarrap", 0x02975},
{"rarrb", 0x021E5},
{"rarrbfs", 0x02920},
{"rarrc", 0x02933},
{"rarrfs", 0x0291E},
{"rarrhk", 0x021AA},
{"rarrlp", 0x021AC},
{"rarrpl", 0x02945},
{"rarrsim", 0x02974},
{"rarrtl", 0x021A3},
{"rarrw", 0x0219D},
{"ratail", 0x0291A},
{"ratio", 0x02236},
{"rationals", 0x0211A},
{"rbarr", 0x0290D},
{"rbbrk", 0x02773},
{"rbrace", 0x0007D},
{"rbrack", 0x0005D},
{"rbrke", 0x0298C},
{"rbrksld", 0x0298E},
{"rbrkslu", 0x02990},
{"rcaron", 0x00159},
{"rcedil", 0x00157},
{"rceil", 0x02309},
{"rcub", 0x0007D},
{"rcy", 0x00440},
{"rdca", 0x02937},
{"rdldhar", 0x02969},
{"rdquo", 0x0201D},
{"rdquor", 0x0201D},
{"rdsh", 0x021B3},
{"real", 0x0211C},
{"realine", 0x0211B},
{"realpart", 0x0211C},
{"reals", 0x0211D},
{"rect", 0x025AD},
{"reg", 0x000AE},
{"rfisht", 0x0297D},
{"rfloor", 0x0230B},
{"rfr", 0x1D52F},
{"rhard", 0x021C1},
{"rharu", 0x021C0},
{"rharul", 0x0296C},
{"rho", 0x003C1},
{"rhov", 0x003F1},
{"rightarrow", 0x02192},
{"rightarrowtail", 0x021A3},
{"rightharpoondown", 0x021C1},
{"rightharpoonup", 0x021C0},
{"rightleftarrows", 0x021C4},
{"rightleftharpoons", 0x021CC},
{"rightrightarrows", 0x021C9},
{"rightsquigarrow", 0x0219D},
{"rightthreetimes", 0x022CC},
{"ring", 0x002DA},
{"risingdotseq", 0x02253},
{"rlarr", 0x021C4},
{"rlhar", 0x021CC},
{"rlm", 0x0200F},
{"rmoust", 0x023B1},
{"rmoustache", 0x023B1},
{"rnmid", 0x02AEE},
{"roang", 0x027ED},
{"roarr", 0x021FE},
{"robrk", 0x027E7},
{"ropar", 0x02986},
{"ropf", 0x1D563},
{"roplus", 0x02A2E},
{"rotimes", 0x02A35},
{"rpar", 0x00029},
{"rpargt", 0x02994},
{"rppolint", 0x02A12},
{"rrarr", 0x021C9},
{"rsaquo", 0x0203A},
{"rscr", 0x1D4C7},
{"rsh", 0x021B1},
{"rsqb", 0x0005D},
{"rsquo", 0x02019},
{"rsquor", 0x02019},
{"rthree", 0x022CC},
{"rtimes", 0x022CA},
{"rtri", 0x025B9},
{"rtrie", 0x022B5},
{"rtrif", 0x025B8},
{"rtriltri", 0x029CE},
{"ruluhar", 0x02968},
{"rx", 0x0211E},
{"sacute", 0x0015B},
{"sbquo", 0x0201A},
{"sc", 0x0227B},
{"scE", 0x02AB4},
{"scap", 0x02AB8},
{"scaron", 0x00161},
{"sccue", 0x0227D},
{"sce", 0x02AB0},
{"scedil", 0x0015F},
{"scirc", 0x0015D},
{"scnE", 0x02AB6},
{"scnap", 0x02ABA},
{"scnsim", 0x022E9},
{"scpolint", 0x02A13},
{"scsim", 0x0227F},
{"scy", 0x00441},
{"sdot", 0x022C5},
{"sdotb", 0x022A1},
{"sdote", 0x02A66},
{"seArr", 0x021D8},
{"searhk", 0x02925},
{"searr", 0x02198},
{"searrow", 0x02198},
{"sect", 0x000A7},
{"semi", 0x0003B},
{"seswar", 0x02929},
{"setminus", 0x02216},
{"setmn", 0x02216},
{"sext", 0x02736},
{"sfr", 0x1D530},
{"sfrown", 0x02322},
{"sharp", 0x0266F},
{"shchcy", 0x00449},
{"shcy", 0x00448},
{"shortmid", 0x02223},
{"shortparallel", 0x02225},
{"shy", 0x000AD},
{"sigma", 0x003C3},
{"sigmaf", 0x003C2},
{"sigmav", 0x003C2},
{"sim", 0x0223C},
{"simdot", 0x02A6A},
{"sime", 0x02243},
{"simeq", 0x02243},
{"simg", 0x02A9E},
{"simgE", 0x02AA0},
{"siml", 0x02A9D},
{"simlE", 0x02A9F},
{"simne", 0x02246},
{"simplus", 0x02A24},
{"simrarr", 0x02972},
{"slarr", 0x02190},
{"smallsetminus", 0x02216},
{"smashp", 0x02A33},
{"smeparsl", 0x029E4},
{"smid", 0x02223},
{"smile", 0x02323},
{"smt", 0x02AAA},
{"smte", 0x02AAC},
{"softcy", 0x0044C},
{"sol", 0x0002F},
{"solb", 0x029C4},
{"solbar", 0x0233F},
{"sopf", 0x1D564},
{"spades", 0x02660},
{"spadesuit", 0x02660},
{"spar", 0x02225},
{"sqcap", 0x02293},
{"sqcup", 0x02294},
{"sqsub", 0x0228F},
{"sqsube", 0x02291},
{"sqsubset", 0x0228F},
{"sqsubseteq", 0x02291},
{"sqsup", 0x02290},
{"sqsupe", 0x02292},
{"sqsupset", 0x02290},
{"sqsupseteq", 0x02292},
{"squ", 0x025A1},
{"square", 0x025A1},
{"squarf", 0x025AA},
{"squf", 0x025AA},
{"srarr", 0x02192},
{"sscr", 0x1D4C8},
{"ssetmn", 0x02216},
{"ssmile", 0x02323},
{"sstarf", 0x022C6},
{"star", 0x02606},
{"starf", 0x02605},
{"straightepsilon", 0x003F5},
{"straightphi", 0x003D5},
{"strns", 0x000AF},
{"sub", 0x02282},
{"subE", 0x02AC5},
{"subdot", 0x02ABD},
{"sube", 0x02286},
{"subedot", 0x02AC3},
{"submult", 0x02AC1},
{"subnE", 0x02ACB},
{"subne", 0x0228A},
{"subplus", 0x02ABF},
{"subrarr", 0x02979},
{"subset", 0x02282},
{"subseteq", 0x02286},
{"subseteqq", 0x02AC5},
{"subsetneq", 0x0228A},
{"subsetneqq", 0x02ACB},
{"subsim", 0x02AC7},
{"subsub", 0x02AD5},
{"subsup", 0x02AD3},
{"succ", 0x0227B},
{"succapprox", 0x02AB8},
{"succcurlyeq", 0x0227D},
{"succeq", 0x02AB0},
{"succnapprox", 0x02ABA},
{"succneqq", 0x02AB6},
{"succnsim", 0x022E9},
{"succsim", 0x0227F},
{"sum", 0x02211},
{"sung", 0x0266A},
{"sup1", 0x000B9},
{"sup2", 0x000B2},
{"sup3", 0x000B3},
{"sup", 0x02283},
{"supE", 0x02AC6},
{"supdot", 0x02ABE},
{"supdsub", 0x02AD8},
{"supe", 0x02287},
{"supedot", 0x02AC4},
{"suphsol", 0x027C9},
{"suphsub", 0x02AD7},
{"suplarr", 0x0297B},
{"supmult", 0x02AC2},
{"supnE", 0x02ACC},
{"supne", 0x0228B},
{"supplus", 0x02AC0},
{"supset", 0x02283},
{"supseteq", 0x02287},
{"supseteqq", 0x02AC6},
{"supsetneq", 0x0228B},
{"supsetneqq", 0x02ACC},
{"supsim", 0x02AC8},
{"supsub", 0x02AD4},
{"supsup", 0x02AD6},
{"swArr", 0x021D9},
{"swarhk", 0x02926},
{"swarr", 0x02199},
{"swarrow", 0x02199},
{"swnwar", 0x0292A},
{"szlig", 0x000DF},
{"target", 0x02316},
{"tau", 0x003C4},
{"tbrk", 0x023B4},
{"tcaron", 0x00165},
{"tcedil", 0x00163},
{"tcy", 0x00442},
{"tdot", 0x020DB},
{"telrec", 0x02315},
{"tfr", 0x1D531},
{"there4", 0x02234},
{"therefore", 0x02234},
{"theta", 0x003B8},
{"thetasym", 0x003D1},
{"thetav", 0x003D1},
{"thickapprox", 0x02248},
{"thicksim", 0x0223C},
{"thinsp", 0x02009},
{"thkap", 0x02248},
{"thksim", 0x0223C},
{"thorn", 0x000FE},
{"tilde", 0x002DC},
{"times", 0x000D7},
{"timesb", 0x022A0},
{"timesbar", 0x02A31},
{"timesd", 0x02A30},
{"tint", 0x0222D},
{"toea", 0x02928},
{"top", 0x022A4},
{"topbot", 0x02336},
{"topcir", 0x02AF1},
{"topf", 0x1D565},
{"topfork", 0x02ADA},
{"tosa", 0x02929},
{"tprime", 0x02034},
{"trade", 0x02122},
{"triangle", 0x025B5},
{"triangledown", 0x025BF},
{"triangleleft", 0x025C3},
{"trianglelefteq", 0x022B4},
{"triangleq", 0x0225C},
{"triangleright", 0x025B9},
{"trianglerighteq", 0x022B5},
{"tridot", 0x025EC},
{"trie", 0x0225C},
{"triminus", 0x02A3A},
{"triplus", 0x02A39},
{"trisb", 0x029CD},
{"tritime", 0x02A3B},
{"trpezium", 0x023E2},
{"tscr", 0x1D4C9},
{"tscy", 0x00446},
{"tshcy", 0x0045B},
{"tstrok", 0x00167},
{"twixt", 0x0226C},
{"twoheadleftarrow", 0x0219E},
{"twoheadrightarrow", 0x021A0},
{"uArr", 0x021D1},
{"uHar", 0x02963},
{"uacute", 0x000FA},
{"uarr", 0x02191},
{"ubrcy", 0x0045E},
{"ubreve", 0x0016D},
{"ucirc", 0x000FB},
{"ucy", 0x00443},
{"udarr", 0x021C5},
{"udblac", 0x00171},
{"udhar", 0x0296E},
{"ufisht", 0x0297E},
{"ufr", 0x1D532},
{"ugrave", 0x000F9},
{"uharl", 0x021BF},
{"uharr", 0x021BE},
{"uhblk", 0x02580},
{"ulcorn", 0x0231C},
{"ulcorner", 0x0231C},
{"ulcrop", 0x0230F},
{"ultri", 0x025F8},
{"umacr", 0x0016B},
{"uml", 0x000A8},
{"uogon", 0x00173},
{"uopf", 0x1D566},
{"uparrow", 0x02191},
{"updownarrow", 0x02195},
{"upharpoonleft", 0x021BF},
{"upharpoonright", 0x021BE},
{"uplus", 0x0228E},
{"upsi", 0x003C5},
{"upsih", 0x003D2},
{"upsilon", 0x003C5},
{"upuparrows", 0x021C8},
{"urcorn", 0x0231D},
{"urcorner", 0x0231D},
{"urcrop", 0x0230E},
{"uring", 0x0016F},
{"urtri", 0x025F9},
{"uscr", 0x1D4CA},
{"utdot", 0x022F0},
{"utilde", 0x00169},
{"utri", 0x025B5},
{"utrif", 0x025B4},
{"uuarr", 0x021C8},
{"uuml", 0x000FC},
{"uwangle", 0x029A7},
{"vArr", 0x021D5},
{"vBar", 0x02AE8},
{"vBarv", 0x02AE9},
{"vDash", 0x022A8},
{"vangrt", 0x0299C},
{"varepsilon", 0x003F5},
{"varkappa", 0x003F0},
{"varnothing", 0x02205},
{"varphi", 0x003D5},
{"varpi", 0x003D6},
{"varpropto", 0x0221D},
{"varr", 0x02195},
{"varrho", 0x003F1},
{"varsigma", 0x003C2},
{"vartheta", 0x003D1},
{"vartriangleleft", 0x022B2},
{"vartriangleright", 0x022B3},
{"vcy", 0x00432},
{"vdash", 0x022A2},
{"vee", 0x02228},
{"veebar", 0x022BB},
{"veeeq", 0x0225A},
{"vellip", 0x022EE},
{"verbar", 0x0007C},
{"vert", 0x0007C},
{"vfr", 0x1D533},
{"vltri", 0x022B2},
{"vopf", 0x1D567},
{"vprop", 0x0221D},
{"vrtri", 0x022B3},
{"vscr", 0x1D4CB},
{"vzigzag", 0x0299A},
{"wcirc", 0x00175},
{"wedbar", 0x02A5F},
{"wedge", 0x02227},
{"wedgeq", 0x02259},
{"weierp", 0x02118},
{"wfr", 0x1D534},
{"wopf", 0x1D568},
{"wp", 0x02118},
{"wr", 0x02240},
{"wreath", 0x02240},
{"wscr", 0x1D4CC},
{"xcap", 0x022C2},
{"xcirc", 0x025EF},
{"xcup", 0x022C3},
{"xdtri", 0x025BD},
{"xfr", 0x1D535},
{"xhArr", 0x027FA},
{"xharr", 0x027F7},
{"xi", 0x003BE},
{"xlArr", 0x027F8},
{"xlarr", 0x027F5},
{"xmap", 0x027FC},
{"xnis", 0x022FB},
{"xodot", 0x02A00},
{"xopf", 0x1D569},
{"xoplus", 0x02A01},
{"xotime", 0x02A02},
{"xrArr", 0x027F9},
{"xrarr", 0x027F6},
{"xscr", 0x1D4CD},
{"xsqcup", 0x02A06},
{"xuplus", 0x02A04},
{"xutri", 0x025B3},
{"xvee", 0x022C1},
{"xwedge", 0x022C0},
{"yacute", 0x000FD},
{"yacy", 0x0044F},
{"ycirc", 0x00177},
{"ycy", 0x0044B},
{"yen", 0x000A5},
{"yfr", 0x1D536},
{"yicy", 0x00457},
{"yopf", 0x1D56A},
{"yscr", 0x1D4CE},
{"yucy", 0x0044E},
{"yuml", 0x000FF},
{"zacute", 0x0017A},
{"zcaron", 0x0017E},
{"zcy", 0x00437},
{"zdot", 0x0017C},
{"zeetrf", 0x02128},
{"zeta", 0x003B6},
{"zfr", 0x1D537},
{"zhcy", 0x00436},
{"zigrarr", 0x021DD},
{"zopf", 0x1D56B},
{"zscr", 0x1D4CF},
{"zwj", 0x0200D},
{"zwnj", 0x0200C}
};
static {
full = new HashMap<String, Character>(fullArray.length);
xhtmlByVal = new HashMap<Character, String>(xhtmlArray.length);
baseByVal = new HashMap<Character, String>(baseArray.length);
fullByVal = new HashMap<Character, String>(fullArray.length);
for (Object[] entity : xhtmlArray) {
Character c = Character.valueOf((char) ((Integer) entity[1]).intValue());
xhtmlByVal.put(c, ((String) entity[0]));
}
for (Object[] entity : baseArray) {
Character c = Character.valueOf((char) ((Integer) entity[1]).intValue());
baseByVal.put(c, ((String) entity[0]));
}
for (Object[] entity : fullArray) {
Character c = Character.valueOf((char) ((Integer) entity[1]).intValue());
full.put((String) entity[0], c);
fullByVal.put(c, ((String) entity[0]));
}
}
}
|