/* Compiler implementation of the D programming language
* Copyright (C) 1999-2019 by The D Language Foundation, All Rights Reserved
* written by Walter Bright
* http://www.digitalmars.com
* Distributed under the Boost Software License, Version 1.0.
* http://www.boost.org/LICENSE_1_0.txt
* https://github.com/D-Programming-Language/dmd/blob/master/src/entity.c
*/
#include "root/dsystem.h"
#include "root/port.h"
/*********************************************
* Convert from named entity to its encoding.
* For reference:
* http://www.htmlhelp.com/reference/html40/entities/
* http://www.w3.org/2003/entities/2007/w3centities-f.ent
*/
struct NameId
{
const char *name;
unsigned value;
};
static NameId namesA[]={
{"Aacgr", 0x00386}, // GREEK CAPITAL LETTER ALPHA WITH TONOS
{"aacgr", 0x003AC}, // GREEK SMALL LETTER ALPHA WITH TONOS
{"Aacute", 0x000C1}, // LATIN CAPITAL LETTER A WITH ACUTE
{"aacute", 0x000E1}, // LATIN SMALL LETTER A WITH ACUTE
{"Abreve", 0x00102}, // LATIN CAPITAL LETTER A WITH BREVE
{"abreve", 0x00103}, // LATIN SMALL LETTER A WITH BREVE
{"ac", 0x0223E}, // INVERTED LAZY S
{"acd", 0x0223F}, // SINE WAVE
// {"acE", 0x0223E;0x00333}, // INVERTED LAZY S with double underline
{"Acirc", 0x000C2}, // LATIN CAPITAL LETTER A WITH CIRCUMFLEX
{"acirc", 0x000E2}, // LATIN SMALL LETTER A WITH CIRCUMFLEX
{"acute", 0x000B4}, // ACUTE ACCENT
{"Acy", 0x00410}, // CYRILLIC CAPITAL LETTER A
{"acy", 0x00430}, // CYRILLIC SMALL LETTER A
{"AElig", 0x000C6}, // LATIN CAPITAL LETTER AE
{"aelig", 0x000E6}, // LATIN SMALL LETTER AE
{"af", 0x02061}, // FUNCTION APPLICATION
{"Afr", 0x1D504}, // MATHEMATICAL FRAKTUR CAPITAL A
{"afr", 0x1D51E}, // MATHEMATICAL FRAKTUR SMALL A
{"Agr", 0x00391}, // GREEK CAPITAL LETTER ALPHA
{"agr", 0x003B1}, // GREEK SMALL LETTER ALPHA
{"Agrave", 0x000C0}, // LATIN CAPITAL LETTER A WITH GRAVE
{"agrave", 0x000E0}, // LATIN SMALL LETTER A WITH GRAVE
{"alefsym", 0x02135}, // ALEF SYMBOL
{"aleph", 0x02135}, // ALEF SYMBOL
{"Alpha", 0x00391}, // GREEK CAPITAL LETTER ALPHA
{"alpha", 0x003B1}, // GREEK SMALL LETTER ALPHA
{"Amacr", 0x00100}, // LATIN CAPITAL LETTER A WITH MACRON
{"amacr", 0x00101}, // LATIN SMALL LETTER A WITH MACRON
{"amalg", 0x02A3F}, // AMALGAMATION OR COPRODUCT
{"amp", 0x00026}, // AMPERSAND
{"AMP", 0x00026}, // AMPERSAND
{"and", 0x02227}, // LOGICAL AND
{"And", 0x02A53}, // DOUBLE LOGICAL AND
{"andand", 0x02A55}, // TWO INTERSECTING LOGICAL AND
{"andd", 0x02A5C}, // LOGICAL AND WITH HORIZONTAL DASH
{"andslope", 0x02A58}, // SLOPING LARGE AND
{"andv", 0x02A5A}, // LOGICAL AND WITH MIDDLE STEM
{"ang", 0x02220}, // ANGLE
{"ange", 0x029A4}, // ANGLE WITH UNDERBAR
{"angle", 0x02220}, // ANGLE
{"angmsd", 0x02221}, // MEASURED ANGLE
{"angmsdaa", 0x029A8}, // MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND RIGHT
{"angmsdab", 0x029A9}, // MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND LEFT
{"angmsdac", 0x029AA}, // MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND RIGHT
{"angmsdad", 0x029AB}, // MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND LEFT
{"angmsdae", 0x029AC}, // MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND UP
{"angmsdaf", 0x029AD}, // MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND UP
{"angmsdag", 0x029AE}, // MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND DOWN
{"angmsdah", 0x029AF}, // MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND DOWN
{"angrt", 0x0221F}, // RIGHT ANGLE
{"angrtvb", 0x022BE}, // RIGHT ANGLE WITH ARC
{"angrtvbd", 0x0299D}, // MEASURED RIGHT ANGLE WITH DOT
{"angsph", 0x02222}, // SPHERICAL ANGLE
{"angst", 0x000C5}, // LATIN CAPITAL LETTER A WITH RING ABOVE
{"angzarr", 0x0237C}, // RIGHT ANGLE WITH DOWNWARDS ZIGZAG ARROW
{"Aogon", 0x00104}, // LATIN CAPITAL LETTER A WITH OGONEK
{"aogon", 0x00105}, // LATIN SMALL LETTER A WITH OGONEK
{"Aopf", 0x1D538}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL A
{"aopf", 0x1D552}, // MATHEMATICAL DOUBLE-STRUCK SMALL A
{"ap", 0x02248}, // ALMOST EQUAL TO
{"apacir", 0x02A6F}, // ALMOST EQUAL TO WITH CIRCUMFLEX ACCENT
{"ape", 0x0224A}, // ALMOST EQUAL OR EQUAL TO
{"apE", 0x02A70}, // APPROXIMATELY EQUAL OR EQUAL TO
{"apid", 0x0224B}, // TRIPLE TILDE
{"apos", 0x00027}, // APOSTROPHE
{"ApplyFunction", 0x02061}, // FUNCTION APPLICATION
{"approx", 0x02248}, // ALMOST EQUAL TO
{"approxeq", 0x0224A}, // ALMOST EQUAL OR EQUAL TO
{"Aring", 0x000C5}, // LATIN CAPITAL LETTER A WITH RING ABOVE
{"aring", 0x000E5}, // LATIN SMALL LETTER A WITH RING ABOVE
{"Ascr", 0x1D49C}, // MATHEMATICAL SCRIPT CAPITAL A
{"ascr", 0x1D4B6}, // MATHEMATICAL SCRIPT SMALL A
{"Assign", 0x02254}, // COLON EQUALS
{"ast", 0x0002A}, // ASTERISK
{"asymp", 0x02248}, // ALMOST EQUAL TO
{"asympeq", 0x0224D}, // EQUIVALENT TO
{"Atilde", 0x000C3}, // LATIN CAPITAL LETTER A WITH TILDE
{"atilde", 0x000E3}, // LATIN SMALL LETTER A WITH TILDE
{"Auml", 0x000C4}, // LATIN CAPITAL LETTER A WITH DIAERESIS
{"auml", 0x000E4}, // LATIN SMALL LETTER A WITH DIAERESIS
{"awconint", 0x02233}, // ANTICLOCKWISE CONTOUR INTEGRAL
{"awint", 0x02A11}, // ANTICLOCKWISE INTEGRATION
{NULL, 0}
};
static NameId namesB[]={
{"backcong", 0x0224C}, // ALL EQUAL TO
{"backepsilon", 0x003F6}, // GREEK REVERSED LUNATE EPSILON SYMBOL
{"backprime", 0x02035}, // REVERSED PRIME
{"backsim", 0x0223D}, // REVERSED TILDE
{"backsimeq", 0x022CD}, // REVERSED TILDE EQUALS
{"Backslash", 0x02216}, // SET MINUS
// "b.alpha", 0x1D6C2}, // MATHEMATICAL BOLD SMALL ALPHA
{"Barv", 0x02AE7}, // SHORT DOWN TACK WITH OVERBAR
{"barvee", 0x022BD}, // NOR
{"barwed", 0x02305}, // PROJECTIVE
{"Barwed", 0x02306}, // PERSPECTIVE
{"barwedge", 0x02305}, // PROJECTIVE
// "b.beta", 0x1D6C3}, // MATHEMATICAL BOLD SMALL BETA
{"bbrk", 0x023B5}, // BOTTOM SQUARE BRACKET
{"bbrktbrk", 0x023B6}, // BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET
// "b.chi", 0x1D6D8}, // MATHEMATICAL BOLD SMALL CHI
{"bcong", 0x0224C}, // ALL EQUAL TO
{"Bcy", 0x00411}, // CYRILLIC CAPITAL LETTER BE
{"bcy", 0x00431}, // CYRILLIC SMALL LETTER BE
// "b.Delta", 0x1D6AB}, // MATHEMATICAL BOLD CAPITAL DELTA
// "b.delta", 0x1D6C5}, // MATHEMATICAL BOLD SMALL DELTA
{"bdquo", 0x0201E}, // DOUBLE LOW-9 QUOTATION MARK
{"becaus", 0x02235}, // BECAUSE
{"because", 0x02235}, // BECAUSE
{"Because", 0x02235}, // BECAUSE
{"bemptyv", 0x029B0}, // REVERSED EMPTY SET
{"bepsi", 0x003F6}, // GREEK REVERSED LUNATE EPSILON SYMBOL
// "b.epsi", 0x1D6C6}, // MATHEMATICAL BOLD SMALL EPSILON
// "b.epsiv", 0x1D6DC}, // MATHEMATICAL BOLD EPSILON SYMBOL
{"bernou", 0x0212C}, // SCRIPT CAPITAL B
{"Bernoullis", 0x0212C}, // SCRIPT CAPITAL B
{"Beta", 0x00392}, // GREEK CAPITAL LETTER BETA
{"beta", 0x003B2}, // GREEK SMALL LETTER BETA
// "b.eta", 0x1D6C8}, // MATHEMATICAL BOLD SMALL ETA
{"beth", 0x02136}, // BET SYMBOL
{"between", 0x0226C}, // BETWEEN
{"Bfr", 0x1D505}, // MATHEMATICAL FRAKTUR CAPITAL B
{"bfr", 0x1D51F}, // MATHEMATICAL FRAKTUR SMALL B
// "b.Gamma", 0x1D6AA}, // MATHEMATICAL BOLD CAPITAL GAMMA
// "b.gamma", 0x1D6C4}, // MATHEMATICAL BOLD SMALL GAMMA
// "b.Gammad", 0x1D7CA}, // MATHEMATICAL BOLD CAPITAL DIGAMMA
// "b.gammad", 0x1D7CB}, // MATHEMATICAL BOLD SMALL DIGAMMA
{"Bgr", 0x00392}, // GREEK CAPITAL LETTER BETA
{"bgr", 0x003B2}, // GREEK SMALL LETTER BETA
{"bigcap", 0x022C2}, // N-ARY INTERSECTION
{"bigcirc", 0x025EF}, // LARGE CIRCLE
{"bigcup", 0x022C3}, // N-ARY UNION
{"bigodot", 0x02A00}, // N-ARY CIRCLED DOT OPERATOR
{"bigoplus", 0x02A01}, // N-ARY CIRCLED PLUS OPERATOR
{"bigotimes", 0x02A02}, // N-ARY CIRCLED TIMES OPERATOR
{"bigsqcup", 0x02A06}, // N-ARY SQUARE UNION OPERATOR
{"bigstar", 0x02605}, // BLACK STAR
{"bigtriangledown", 0x025BD}, // WHITE DOWN-POINTING TRIANGLE
{"bigtriangleup", 0x025B3}, // WHITE UP-POINTING TRIANGLE
{"biguplus", 0x02A04}, // N-ARY UNION OPERATOR WITH PLUS
{"bigvee", 0x022C1}, // N-ARY LOGICAL OR
{"bigwedge", 0x022C0}, // N-ARY LOGICAL AND
// "b.iota", 0x1D6CA}, // MATHEMATICAL BOLD SMALL IOTA
// "b.kappa", 0x1D6CB}, // MATHEMATICAL BOLD SMALL KAPPA
// "b.kappav", 0x1D6DE}, // MATHEMATICAL BOLD KAPPA SYMBOL
{"bkarow", 0x0290D}, // RIGHTWARDS DOUBLE DASH ARROW
{"blacklozenge", 0x029EB}, // BLACK LOZENGE
{"blacksquare", 0x025AA}, // BLACK SMALL SQUARE
{"blacktriangle", 0x025B4}, // BLACK UP-POINTING SMALL TRIANGLE
{"blacktriangledown", 0x025BE}, // BLACK DOWN-POINTING SMALL TRIANGLE
{"blacktriangleleft", 0x025C2}, // BLACK LEFT-POINTING SMALL TRIANGLE
{"blacktriangleright", 0x025B8}, // BLACK RIGHT-POINTING SMALL TRIANGLE
// "b.Lambda", 0x1D6B2}, // MATHEMATICAL BOLD CAPITAL LAMDA
// "b.lambda", 0x1D6CC}, // MATHEMATICAL BOLD SMALL LAMDA
{"blank", 0x02423}, // OPEN BOX
{"blk12", 0x02592}, // MEDIUM SHADE
{"blk14", 0x02591}, // LIGHT SHADE
{"blk34", 0x02593}, // DARK SHADE
{"block", 0x02588}, // FULL BLOCK
// "b.mu", 0x1D6CD}, // MATHEMATICAL BOLD SMALL MU
// "bne", 0x0003D;0x020E5}, // EQUALS SIGN with reverse slash
// "bnequiv", 0x02261;0x020E5}, // IDENTICAL TO with reverse slash
{"bnot", 0x02310}, // REVERSED NOT SIGN
{"bNot", 0x02AED}, // REVERSED DOUBLE STROKE NOT SIGN
// "b.nu", 0x1D6CE}, // MATHEMATICAL BOLD SMALL NU
// "b.Omega", 0x1D6C0}, // MATHEMATICAL BOLD CAPITAL OMEGA
// "b.omega", 0x1D6DA}, // MATHEMATICAL BOLD SMALL OMEGA
{"Bopf", 0x1D539}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL B
{"bopf", 0x1D553}, // MATHEMATICAL DOUBLE-STRUCK SMALL B
{"bot", 0x022A5}, // UP TACK
{"bottom", 0x022A5}, // UP TACK
{"bowtie", 0x022C8}, // BOWTIE
{"boxbox", 0x029C9}, // TWO JOINED SQUARES
{"boxdl", 0x02510}, // BOX DRAWINGS LIGHT DOWN AND LEFT
{"boxdL", 0x02555}, // BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
{"boxDl", 0x02556}, // BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
{"boxDL", 0x02557}, // BOX DRAWINGS DOUBLE DOWN AND LEFT
{"boxdr", 0x0250C}, // BOX DRAWINGS LIGHT DOWN AND RIGHT
{"boxdR", 0x02552}, // BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
{"boxDr", 0x02553}, // BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
{"boxDR", 0x02554}, // BOX DRAWINGS DOUBLE DOWN AND RIGHT
{"boxh", 0x02500}, // BOX DRAWINGS LIGHT HORIZONTAL
{"boxH", 0x02550}, // BOX DRAWINGS DOUBLE HORIZONTAL
{"boxhd", 0x0252C}, // BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
{"boxHd", 0x02564}, // BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
{"boxhD", 0x02565}, // BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
{"boxHD", 0x02566}, // BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
{"boxhu", 0x02534}, // BOX DRAWINGS LIGHT UP AND HORIZONTAL
{"boxHu", 0x02567}, // BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
{"boxhU", 0x02568}, // BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
{"boxHU", 0x02569}, // BOX DRAWINGS DOUBLE UP AND HORIZONTAL
{"boxminus", 0x0229F}, // SQUARED MINUS
{"boxplus", 0x0229E}, // SQUARED PLUS
{"boxtimes", 0x022A0}, // SQUARED TIMES
{"boxul", 0x02518}, // BOX DRAWINGS LIGHT UP AND LEFT
{"boxuL", 0x0255B}, // BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
{"boxUl", 0x0255C}, // BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
{"boxUL", 0x0255D}, // BOX DRAWINGS DOUBLE UP AND LEFT
{"boxur", 0x02514}, // BOX DRAWINGS LIGHT UP AND RIGHT
{"boxuR", 0x02558}, // BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
{"boxUr", 0x02559}, // BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
{"boxUR", 0x0255A}, // BOX DRAWINGS DOUBLE UP AND RIGHT
{"boxv", 0x02502}, // BOX DRAWINGS LIGHT VERTICAL
{"boxV", 0x02551}, // BOX DRAWINGS DOUBLE VERTICAL
{"boxvh", 0x0253C}, // BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
{"boxvH", 0x0256A}, // BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
{"boxVh", 0x0256B}, // BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
{"boxVH", 0x0256C}, // BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
{"boxvl", 0x02524}, // BOX DRAWINGS LIGHT VERTICAL AND LEFT
{"boxvL", 0x02561}, // BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
{"boxVl", 0x02562}, // BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
{"boxVL", 0x02563}, // BOX DRAWINGS DOUBLE VERTICAL AND LEFT
{"boxvr", 0x0251C}, // BOX DRAWINGS LIGHT VERTICAL AND RIGHT
{"boxvR", 0x0255E}, // BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
{"boxVr", 0x0255F}, // BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
{"boxVR", 0x02560}, // BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
// "b.Phi", 0x1D6BD}, // MATHEMATICAL BOLD CAPITAL PHI
// "b.phi", 0x1D6D7}, // MATHEMATICAL BOLD SMALL PHI
// "b.phiv", 0x1D6DF}, // MATHEMATICAL BOLD PHI SYMBOL
// "b.Pi", 0x1D6B7}, // MATHEMATICAL BOLD CAPITAL PI
// "b.pi", 0x1D6D1}, // MATHEMATICAL BOLD SMALL PI
// "b.piv", 0x1D6E1}, // MATHEMATICAL BOLD PI SYMBOL
{"bprime", 0x02035}, // REVERSED PRIME
// "b.Psi", 0x1D6BF}, // MATHEMATICAL BOLD CAPITAL PSI
// "b.psi", 0x1D6D9}, // MATHEMATICAL BOLD SMALL PSI
{"breve", 0x002D8}, // BREVE
{"Breve", 0x002D8}, // BREVE
// "b.rho", 0x1D6D2}, // MATHEMATICAL BOLD SMALL RHO
// "b.rhov", 0x1D6E0}, // MATHEMATICAL BOLD RHO SYMBOL
{"brvbar", 0x000A6}, // BROKEN BAR
{"Bscr", 0x0212C}, // SCRIPT CAPITAL B
{"bscr", 0x1D4B7}, // MATHEMATICAL SCRIPT SMALL B
{"bsemi", 0x0204F}, // REVERSED SEMICOLON
// "b.Sigma", 0x1D6BA}, // MATHEMATICAL BOLD CAPITAL SIGMA
// "b.sigma", 0x1D6D4}, // MATHEMATICAL BOLD SMALL SIGMA
// "b.sigmav", 0x1D6D3}, // MATHEMATICAL BOLD SMALL FINAL SIGMA
{"bsim", 0x0223D}, // REVERSED TILDE
{"bsime", 0x022CD}, // REVERSED TILDE EQUALS
{"bsol", 0x0005C}, // REVERSE SOLIDUS
{"bsolb", 0x029C5}, // SQUARED FALLING DIAGONAL SLASH
{"bsolhsub", 0x027C8}, // REVERSE SOLIDUS PRECEDING SUBSET
// "b.tau", 0x1D6D5}, // MATHEMATICAL BOLD SMALL TAU
// "b.Theta", 0x1D6AF}, // MATHEMATICAL BOLD CAPITAL THETA
// "b.thetas", 0x1D6C9}, // MATHEMATICAL BOLD SMALL THETA
// "b.thetav", 0x1D6DD}, // MATHEMATICAL BOLD THETA SYMBOL
{"bull", 0x02022}, // BULLET
{"bullet", 0x02022}, // BULLET
{"bump", 0x0224E}, // GEOMETRICALLY EQUIVALENT TO
{"bumpe", 0x0224F}, // DIFFERENCE BETWEEN
{"bumpE", 0x02AAE}, // EQUALS SIGN WITH BUMPY ABOVE
{"Bumpeq", 0x0224E}, // GEOMETRICALLY EQUIVALENT TO
{"bumpeq", 0x0224F}, // DIFFERENCE BETWEEN
// "b.Upsi", 0x1D6BC}, // MATHEMATICAL BOLD CAPITAL UPSILON
// "b.upsi", 0x1D6D6}, // MATHEMATICAL BOLD SMALL UPSILON
// "b.Xi", 0x1D6B5}, // MATHEMATICAL BOLD CAPITAL XI
// "b.xi", 0x1D6CF}, // MATHEMATICAL BOLD SMALL XI
// "b.zeta", 0x1D6C7}, // MATHEMATICAL BOLD SMALL ZETA
{NULL, 0}
};
static NameId namesC[]={
{"Cacute", 0x00106}, // LATIN CAPITAL LETTER C WITH ACUTE
{"cacute", 0x00107}, // LATIN SMALL LETTER C WITH ACUTE
{"cap", 0x02229}, // INTERSECTION
{"Cap", 0x022D2}, // DOUBLE INTERSECTION
{"capand", 0x02A44}, // INTERSECTION WITH LOGICAL AND
{"capbrcup", 0x02A49}, // INTERSECTION ABOVE BAR ABOVE UNION
{"capcap", 0x02A4B}, // INTERSECTION BESIDE AND JOINED WITH INTERSECTION
{"capcup", 0x02A47}, // INTERSECTION ABOVE UNION
{"capdot", 0x02A40}, // INTERSECTION WITH DOT
{"CapitalDifferentialD", 0x02145}, // DOUBLE-STRUCK ITALIC CAPITAL D
// "caps", 0x02229;0x0FE00}, // INTERSECTION with serifs
{"caret", 0x02041}, // CARET INSERTION POINT
{"caron", 0x002C7}, // CARON
{"Cayleys", 0x0212D}, // BLACK-LETTER CAPITAL C
{"ccaps", 0x02A4D}, // CLOSED INTERSECTION WITH SERIFS
{"Ccaron", 0x0010C}, // LATIN CAPITAL LETTER C WITH CARON
{"ccaron", 0x0010D}, // LATIN SMALL LETTER C WITH CARON
{"Ccedil", 0x000C7}, // LATIN CAPITAL LETTER C WITH CEDILLA
{"ccedil", 0x000E7}, // LATIN SMALL LETTER C WITH CEDILLA
{"Ccirc", 0x00108}, // LATIN CAPITAL LETTER C WITH CIRCUMFLEX
{"ccirc", 0x00109}, // LATIN SMALL LETTER C WITH CIRCUMFLEX
{"Cconint", 0x02230}, // VOLUME INTEGRAL
{"ccups", 0x02A4C}, // CLOSED UNION WITH SERIFS
{"ccupssm", 0x02A50}, // CLOSED UNION WITH SERIFS AND SMASH PRODUCT
{"Cdot", 0x0010A}, // LATIN CAPITAL LETTER C WITH DOT ABOVE
{"cdot", 0x0010B}, // LATIN SMALL LETTER C WITH DOT ABOVE
{"cedil", 0x000B8}, // CEDILLA
{"Cedilla", 0x000B8}, // CEDILLA
{"cemptyv", 0x029B2}, // EMPTY SET WITH SMALL CIRCLE ABOVE
{"cent", 0x000A2}, // CENT SIGN
{"centerdot", 0x000B7}, // MIDDLE DOT
{"CenterDot", 0x000B7}, // MIDDLE DOT
{"Cfr", 0x0212D}, // BLACK-LETTER CAPITAL C
{"cfr", 0x1D520}, // MATHEMATICAL FRAKTUR SMALL C
{"CHcy", 0x00427}, // CYRILLIC CAPITAL LETTER CHE
{"chcy", 0x00447}, // CYRILLIC SMALL LETTER CHE
{"check", 0x02713}, // CHECK MARK
{"checkmark", 0x02713}, // CHECK MARK
{"Chi", 0x003A7}, // GREEK CAPITAL LETTER CHI
{"chi", 0x003C7}, // GREEK SMALL LETTER CHI
{"cir", 0x025CB}, // WHITE CIRCLE
{"circ", 0x002C6}, // MODIFIER LETTER CIRCUMFLEX ACCENT
{"circeq", 0x02257}, // RING EQUAL TO
{"circlearrowleft", 0x021BA}, // ANTICLOCKWISE OPEN CIRCLE ARROW
{"circlearrowright", 0x021BB}, // CLOCKWISE OPEN CIRCLE ARROW
{"circledast", 0x0229B}, // CIRCLED ASTERISK OPERATOR
{"circledcirc", 0x0229A}, // CIRCLED RING OPERATOR
{"circleddash", 0x0229D}, // CIRCLED DASH
{"CircleDot", 0x02299}, // CIRCLED DOT OPERATOR
{"circledR", 0x000AE}, // REGISTERED SIGN
{"circledS", 0x024C8}, // CIRCLED LATIN CAPITAL LETTER S
{"CircleMinus", 0x02296}, // CIRCLED MINUS
{"CirclePlus", 0x02295}, // CIRCLED PLUS
{"CircleTimes", 0x02297}, // CIRCLED TIMES
{"cire", 0x02257}, // RING EQUAL TO
{"cirE", 0x029C3}, // CIRCLE WITH TWO HORIZONTAL STROKES TO THE RIGHT
{"cirfnint", 0x02A10}, // CIRCULATION FUNCTION
{"cirmid", 0x02AEF}, // VERTICAL LINE WITH CIRCLE ABOVE
{"cirscir", 0x029C2}, // CIRCLE WITH SMALL CIRCLE TO THE RIGHT
{"ClockwiseContourIntegral", 0x02232}, // CLOCKWISE CONTOUR INTEGRAL
{"CloseCurlyDoubleQuote", 0x0201D}, // RIGHT DOUBLE QUOTATION MARK
{"CloseCurlyQuote", 0x02019}, // RIGHT SINGLE QUOTATION MARK
{"clubs", 0x02663}, // BLACK CLUB SUIT
{"clubsuit", 0x02663}, // BLACK CLUB SUIT
{"colon", 0x0003A}, // COLON
{"Colon", 0x02237}, // PROPORTION
{"colone", 0x02254}, // COLON EQUALS
{"Colone", 0x02A74}, // DOUBLE COLON EQUAL
{"coloneq", 0x02254}, // COLON EQUALS
{"comma", 0x0002C}, // COMMA
{"commat", 0x00040}, // COMMERCIAL AT
{"comp", 0x02201}, // COMPLEMENT
{"compfn", 0x02218}, // RING OPERATOR
{"complement", 0x02201}, // COMPLEMENT
{"complexes", 0x02102}, // DOUBLE-STRUCK CAPITAL C
{"cong", 0x02245}, // APPROXIMATELY EQUAL TO
{"congdot", 0x02A6D}, // CONGRUENT WITH DOT ABOVE
{"Congruent", 0x02261}, // IDENTICAL TO
{"conint", 0x0222E}, // CONTOUR INTEGRAL
{"Conint", 0x0222F}, // SURFACE INTEGRAL
{"ContourIntegral", 0x0222E}, // CONTOUR INTEGRAL
{"Copf", 0x02102}, // DOUBLE-STRUCK CAPITAL C
{"copf", 0x1D554}, // MATHEMATICAL DOUBLE-STRUCK SMALL C
{"coprod", 0x02210}, // N-ARY COPRODUCT
{"Coproduct", 0x02210}, // N-ARY COPRODUCT
{"copy", 0x000A9}, // COPYRIGHT SIGN
{"COPY", 0x000A9}, // COPYRIGHT SIGN
{"copysr", 0x02117}, // SOUND RECORDING COPYRIGHT
{"CounterClockwiseContourIntegral", 0x02233}, // ANTICLOCKWISE CONTOUR INTEGRAL
{"crarr", 0x021B5}, // DOWNWARDS ARROW WITH CORNER LEFTWARDS
{"cross", 0x02717}, // BALLOT X
{"Cross", 0x02A2F}, // VECTOR OR CROSS PRODUCT
{"Cscr", 0x1D49E}, // MATHEMATICAL SCRIPT CAPITAL C
{"cscr", 0x1D4B8}, // MATHEMATICAL SCRIPT SMALL C
{"csub", 0x02ACF}, // CLOSED SUBSET
{"csube", 0x02AD1}, // CLOSED SUBSET OR EQUAL TO
{"csup", 0x02AD0}, // CLOSED SUPERSET
{"csupe", 0x02AD2}, // CLOSED SUPERSET OR EQUAL TO
{"ctdot", 0x022EF}, // MIDLINE HORIZONTAL ELLIPSIS
{"cudarrl", 0x02938}, // RIGHT-SIDE ARC CLOCKWISE ARROW
{"cudarrr", 0x02935}, // ARROW POINTING RIGHTWARDS THEN CURVING DOWNWARDS
{"cuepr", 0x022DE}, // EQUAL TO OR PRECEDES
{"cuesc", 0x022DF}, // EQUAL TO OR SUCCEEDS
{"cularr", 0x021B6}, // ANTICLOCKWISE TOP SEMICIRCLE ARROW
{"cularrp", 0x0293D}, // TOP ARC ANTICLOCKWISE ARROW WITH PLUS
{"cup", 0x0222A}, // UNION
{"Cup", 0x022D3}, // DOUBLE UNION
{"cupbrcap", 0x02A48}, // UNION ABOVE BAR ABOVE INTERSECTION
{"CupCap", 0x0224D}, // EQUIVALENT TO
{"cupcap", 0x02A46}, // UNION ABOVE INTERSECTION
{"cupcup", 0x02A4A}, // UNION BESIDE AND JOINED WITH UNION
{"cupdot", 0x0228D}, // MULTISET MULTIPLICATION
{"cupor", 0x02A45}, // UNION WITH LOGICAL OR
// "cups", 0x0222A;0x0FE00}, // UNION with serifs
{"curarr", 0x021B7}, // CLOCKWISE TOP SEMICIRCLE ARROW
{"curarrm", 0x0293C}, // TOP ARC CLOCKWISE ARROW WITH MINUS
{"curlyeqprec", 0x022DE}, // EQUAL TO OR PRECEDES
{"curlyeqsucc", 0x022DF}, // EQUAL TO OR SUCCEEDS
{"curlyvee", 0x022CE}, // CURLY LOGICAL OR
{"curlywedge", 0x022CF}, // CURLY LOGICAL AND
{"curren", 0x000A4}, // CURRENCY SIGN
{"curvearrowleft", 0x021B6}, // ANTICLOCKWISE TOP SEMICIRCLE ARROW
{"curvearrowright", 0x021B7}, // CLOCKWISE TOP SEMICIRCLE ARROW
{"cuvee", 0x022CE}, // CURLY LOGICAL OR
{"cuwed", 0x022CF}, // CURLY LOGICAL AND
{"cwconint", 0x02232}, // CLOCKWISE CONTOUR INTEGRAL
{"cwint", 0x02231}, // CLOCKWISE INTEGRAL
{"cylcty", 0x0232D}, // CYLINDRICITY
{NULL, 0}
};
static NameId namesD[]={
{"dagger", 0x02020}, // DAGGER
{"Dagger", 0x02021}, // DOUBLE DAGGER
{"daleth", 0x02138}, // DALET SYMBOL
{"darr", 0x02193}, // DOWNWARDS ARROW
{"Darr", 0x021A1}, // DOWNWARDS TWO HEADED ARROW
{"dArr", 0x021D3}, // DOWNWARDS DOUBLE ARROW
{"dash", 0x02010}, // HYPHEN
{"dashv", 0x022A3}, // LEFT TACK
{"Dashv", 0x02AE4}, // VERTICAL BAR DOUBLE LEFT TURNSTILE
{"dbkarow", 0x0290F}, // RIGHTWARDS TRIPLE DASH ARROW
{"dblac", 0x002DD}, // DOUBLE ACUTE ACCENT
{"Dcaron", 0x0010E}, // LATIN CAPITAL LETTER D WITH CARON
{"dcaron", 0x0010F}, // LATIN SMALL LETTER D WITH CARON
{"Dcy", 0x00414}, // CYRILLIC CAPITAL LETTER DE
{"dcy", 0x00434}, // CYRILLIC SMALL LETTER DE
{"DD", 0x02145}, // DOUBLE-STRUCK ITALIC CAPITAL D
{"dd", 0x02146}, // DOUBLE-STRUCK ITALIC SMALL D
{"ddagger", 0x02021}, // DOUBLE DAGGER
{"ddarr", 0x021CA}, // DOWNWARDS PAIRED ARROWS
{"DDotrahd", 0x02911}, // RIGHTWARDS ARROW WITH DOTTED STEM
{"ddotseq", 0x02A77}, // EQUALS SIGN WITH TWO DOTS ABOVE AND TWO DOTS BELOW
{"deg", 0x000B0}, // DEGREE SIGN
{"Del", 0x02207}, // NABLA
{"Delta", 0x00394}, // GREEK CAPITAL LETTER DELTA
{"delta", 0x003B4}, // GREEK SMALL LETTER DELTA
{"demptyv", 0x029B1}, // EMPTY SET WITH OVERBAR
{"dfisht", 0x0297F}, // DOWN FISH TAIL
{"Dfr", 0x1D507}, // MATHEMATICAL FRAKTUR CAPITAL D
{"dfr", 0x1D521}, // MATHEMATICAL FRAKTUR SMALL D
{"Dgr", 0x00394}, // GREEK CAPITAL LETTER DELTA
{"dgr", 0x003B4}, // GREEK SMALL LETTER DELTA
{"dHar", 0x02965}, // DOWNWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT
{"dharl", 0x021C3}, // DOWNWARDS HARPOON WITH BARB LEFTWARDS
{"dharr", 0x021C2}, // DOWNWARDS HARPOON WITH BARB RIGHTWARDS
{"DiacriticalAcute", 0x000B4}, // ACUTE ACCENT
{"DiacriticalDot", 0x002D9}, // DOT ABOVE
{"DiacriticalDoubleAcute", 0x002DD}, // DOUBLE ACUTE ACCENT
{"DiacriticalGrave", 0x00060}, // GRAVE ACCENT
{"DiacriticalTilde", 0x002DC}, // SMALL TILDE
{"diam", 0x022C4}, // DIAMOND OPERATOR
{"diamond", 0x022C4}, // DIAMOND OPERATOR
{"Diamond", 0x022C4}, // DIAMOND OPERATOR
{"diamondsuit", 0x02666}, // BLACK DIAMOND SUIT
{"diams", 0x02666}, // BLACK DIAMOND SUIT
{"die", 0x000A8}, // DIAERESIS
{"DifferentialD", 0x02146}, // DOUBLE-STRUCK ITALIC SMALL D
{"digamma", 0x003DD}, // GREEK SMALL LETTER DIGAMMA
{"disin", 0x022F2}, // ELEMENT OF WITH LONG HORIZONTAL STROKE
{"div", 0x000F7}, // DIVISION SIGN
{"divide", 0x000F7}, // DIVISION SIGN
{"divideontimes", 0x022C7}, // DIVISION TIMES
{"divonx", 0x022C7}, // DIVISION TIMES
{"DJcy", 0x00402}, // CYRILLIC CAPITAL LETTER DJE
{"djcy", 0x00452}, // CYRILLIC SMALL LETTER DJE
{"dlcorn", 0x0231E}, // BOTTOM LEFT CORNER
{"dlcrop", 0x0230D}, // BOTTOM LEFT CROP
{"dollar", 0x00024}, // DOLLAR SIGN
{"Dopf", 0x1D53B}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL D
{"dopf", 0x1D555}, // MATHEMATICAL DOUBLE-STRUCK SMALL D
{"Dot", 0x000A8}, // DIAERESIS
{"dot", 0x002D9}, // DOT ABOVE
{"DotDot", 0x020DC}, // COMBINING FOUR DOTS ABOVE
{"doteq", 0x02250}, // APPROACHES THE LIMIT
{"doteqdot", 0x02251}, // GEOMETRICALLY EQUAL TO
{"DotEqual", 0x02250}, // APPROACHES THE LIMIT
{"dotminus", 0x02238}, // DOT MINUS
{"dotplus", 0x02214}, // DOT PLUS
{"dotsquare", 0x022A1}, // SQUARED DOT OPERATOR
{"doublebarwedge", 0x02306}, // PERSPECTIVE
{"DoubleContourIntegral", 0x0222F}, // SURFACE INTEGRAL
{"DoubleDot", 0x000A8}, // DIAERESIS
{"DoubleDownArrow", 0x021D3}, // DOWNWARDS DOUBLE ARROW
{"DoubleLeftArrow", 0x021D0}, // LEFTWARDS DOUBLE ARROW
{"DoubleLeftRightArrow", 0x021D4}, // LEFT RIGHT DOUBLE ARROW
{"DoubleLeftTee", 0x02AE4}, // VERTICAL BAR DOUBLE LEFT TURNSTILE
{"DoubleLongLeftArrow", 0x027F8}, // LONG LEFTWARDS DOUBLE ARROW
{"DoubleLongLeftRightArrow", 0x027FA}, // LONG LEFT RIGHT DOUBLE ARROW
{"DoubleLongRightArrow", 0x027F9}, // LONG RIGHTWARDS DOUBLE ARROW
{"DoubleRightArrow", 0x021D2}, // RIGHTWARDS DOUBLE ARROW
{"DoubleRightTee", 0x022A8}, // TRUE
{"DoubleUpArrow", 0x021D1}, // UPWARDS DOUBLE ARROW
{"DoubleUpDownArrow", 0x021D5}, // UP DOWN DOUBLE ARROW
{"DoubleVerticalBar", 0x02225}, // PARALLEL TO
{"downarrow", 0x02193}, // DOWNWARDS ARROW
{"DownArrow", 0x02193}, // DOWNWARDS ARROW
{"Downarrow", 0x021D3}, // DOWNWARDS DOUBLE ARROW
{"DownArrowBar", 0x02913}, // DOWNWARDS ARROW TO BAR
{"DownArrowUpArrow", 0x021F5}, // DOWNWARDS ARROW LEFTWARDS OF UPWARDS ARROW
{"DownBreve", 0x00311}, // COMBINING INVERTED BREVE
{"downdownarrows", 0x021CA}, // DOWNWARDS PAIRED ARROWS
{"downharpoonleft", 0x021C3}, // DOWNWARDS HARPOON WITH BARB LEFTWARDS
{"downharpoonright", 0x021C2}, // DOWNWARDS HARPOON WITH BARB RIGHTWARDS
{"DownLeftRightVector", 0x02950}, // LEFT BARB DOWN RIGHT BARB DOWN HARPOON
{"DownLeftTeeVector", 0x0295E}, // LEFTWARDS HARPOON WITH BARB DOWN FROM BAR
{"DownLeftVector", 0x021BD}, // LEFTWARDS HARPOON WITH BARB DOWNWARDS
{"DownLeftVectorBar", 0x02956}, // LEFTWARDS HARPOON WITH BARB DOWN TO BAR
{"DownRightTeeVector", 0x0295F}, // RIGHTWARDS HARPOON WITH BARB DOWN FROM BAR
{"DownRightVector", 0x021C1}, // RIGHTWARDS HARPOON WITH BARB DOWNWARDS
{"DownRightVectorBar", 0x02957}, // RIGHTWARDS HARPOON WITH BARB DOWN TO BAR
{"DownTee", 0x022A4}, // DOWN TACK
{"DownTeeArrow", 0x021A7}, // DOWNWARDS ARROW FROM BAR
{"drbkarow", 0x02910}, // RIGHTWARDS TWO-HEADED TRIPLE DASH ARROW
{"drcorn", 0x0231F}, // BOTTOM RIGHT CORNER
{"drcrop", 0x0230C}, // BOTTOM RIGHT CROP
{"Dscr", 0x1D49F}, // MATHEMATICAL SCRIPT CAPITAL D
{"dscr", 0x1D4B9}, // MATHEMATICAL SCRIPT SMALL D
{"DScy", 0x00405}, // CYRILLIC CAPITAL LETTER DZE
{"dscy", 0x00455}, // CYRILLIC SMALL LETTER DZE
{"dsol", 0x029F6}, // SOLIDUS WITH OVERBAR
{"Dstrok", 0x00110}, // LATIN CAPITAL LETTER D WITH STROKE
{"dstrok", 0x00111}, // LATIN SMALL LETTER D WITH STROKE
{"dtdot", 0x022F1}, // DOWN RIGHT DIAGONAL ELLIPSIS
{"dtri", 0x025BF}, // WHITE DOWN-POINTING SMALL TRIANGLE
{"dtrif", 0x025BE}, // BLACK DOWN-POINTING SMALL TRIANGLE
{"duarr", 0x021F5}, // DOWNWARDS ARROW LEFTWARDS OF UPWARDS ARROW
{"duhar", 0x0296F}, // DOWNWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT
{"dwangle", 0x029A6}, // OBLIQUE ANGLE OPENING UP
{"DZcy", 0x0040F}, // CYRILLIC CAPITAL LETTER DZHE
{"dzcy", 0x0045F}, // CYRILLIC SMALL LETTER DZHE
{"dzigrarr", 0x027FF}, // LONG RIGHTWARDS SQUIGGLE ARROW
{NULL, 0}
};
static NameId namesE[]={
{"Eacgr", 0x00388}, // GREEK CAPITAL LETTER EPSILON WITH TONOS
{"eacgr", 0x003AD}, // GREEK SMALL LETTER EPSILON WITH TONOS
{"Eacute", 0x000C9}, // LATIN CAPITAL LETTER E WITH ACUTE
{"eacute", 0x000E9}, // LATIN SMALL LETTER E WITH ACUTE
{"easter", 0x02A6E}, // EQUALS WITH ASTERISK
{"Ecaron", 0x0011A}, // LATIN CAPITAL LETTER E WITH CARON
{"ecaron", 0x0011B}, // LATIN SMALL LETTER E WITH CARON
{"ecir", 0x02256}, // RING IN EQUAL TO
{"Ecirc", 0x000CA}, // LATIN CAPITAL LETTER E WITH CIRCUMFLEX
{"ecirc", 0x000EA}, // LATIN SMALL LETTER E WITH CIRCUMFLEX
{"ecolon", 0x02255}, // EQUALS COLON
{"Ecy", 0x0042D}, // CYRILLIC CAPITAL LETTER E
{"ecy", 0x0044D}, // CYRILLIC SMALL LETTER E
{"eDDot", 0x02A77}, // EQUALS SIGN WITH TWO DOTS ABOVE AND TWO DOTS BELOW
{"Edot", 0x00116}, // LATIN CAPITAL LETTER E WITH DOT ABOVE
{"edot", 0x00117}, // LATIN SMALL LETTER E WITH DOT ABOVE
{"eDot", 0x02251}, // GEOMETRICALLY EQUAL TO
{"ee", 0x02147}, // DOUBLE-STRUCK ITALIC SMALL E
{"EEacgr", 0x00389}, // GREEK CAPITAL LETTER ETA WITH TONOS
{"eeacgr", 0x003AE}, // GREEK SMALL LETTER ETA WITH TONOS
{"EEgr", 0x00397}, // GREEK CAPITAL LETTER ETA
{"eegr", 0x003B7}, // GREEK SMALL LETTER ETA
{"efDot", 0x02252}, // APPROXIMATELY EQUAL TO OR THE IMAGE OF
{"Efr", 0x1D508}, // MATHEMATICAL FRAKTUR CAPITAL E
{"efr", 0x1D522}, // MATHEMATICAL FRAKTUR SMALL E
{"eg", 0x02A9A}, // DOUBLE-LINE EQUAL TO OR GREATER-THAN
{"Egr", 0x00395}, // GREEK CAPITAL LETTER EPSILON
{"egr", 0x003B5}, // GREEK SMALL LETTER EPSILON
{"Egrave", 0x000C8}, // LATIN CAPITAL LETTER E WITH GRAVE
{"egrave", 0x000E8}, // LATIN SMALL LETTER E WITH GRAVE
{"egs", 0x02A96}, // SLANTED EQUAL TO OR GREATER-THAN
{"egsdot", 0x02A98}, // SLANTED EQUAL TO OR GREATER-THAN WITH DOT INSIDE
{"el", 0x02A99}, // DOUBLE-LINE EQUAL TO OR LESS-THAN
{"Element", 0x02208}, // ELEMENT OF
{"elinters", 0x023E7}, // ELECTRICAL INTERSECTION
{"ell", 0x02113}, // SCRIPT SMALL L
{"els", 0x02A95}, // SLANTED EQUAL TO OR LESS-THAN
{"elsdot", 0x02A97}, // SLANTED EQUAL TO OR LESS-THAN WITH DOT INSIDE
{"Emacr", 0x00112}, // LATIN CAPITAL LETTER E WITH MACRON
{"emacr", 0x00113}, // LATIN SMALL LETTER E WITH MACRON
{"empty", 0x02205}, // EMPTY SET
{"emptyset", 0x02205}, // EMPTY SET
{"EmptySmallSquare", 0x025FB}, // WHITE MEDIUM SQUARE
{"emptyv", 0x02205}, // EMPTY SET
{"EmptyVerySmallSquare", 0x025AB}, // WHITE SMALL SQUARE
{"emsp", 0x02003}, // EM SPACE
{"emsp13", 0x02004}, // THREE-PER-EM SPACE
{"emsp14", 0x02005}, // FOUR-PER-EM SPACE
{"ENG", 0x0014A}, // LATIN CAPITAL LETTER ENG
{"eng", 0x0014B}, // LATIN SMALL LETTER ENG
{"ensp", 0x02002}, // EN SPACE
{"Eogon", 0x00118}, // LATIN CAPITAL LETTER E WITH OGONEK
{"eogon", 0x00119}, // LATIN SMALL LETTER E WITH OGONEK
{"Eopf", 0x1D53C}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL E
{"eopf", 0x1D556}, // MATHEMATICAL DOUBLE-STRUCK SMALL E
{"epar", 0x022D5}, // EQUAL AND PARALLEL TO
{"eparsl", 0x029E3}, // EQUALS SIGN AND SLANTED PARALLEL
{"eplus", 0x02A71}, // EQUALS SIGN ABOVE PLUS SIGN
{"epsi", 0x003B5}, // GREEK SMALL LETTER EPSILON
{"Epsilon", 0x00395}, // GREEK CAPITAL LETTER EPSILON
{"epsilon", 0x003B5}, // GREEK SMALL LETTER EPSILON
{"epsiv", 0x003F5}, // GREEK LUNATE EPSILON SYMBOL
{"eqcirc", 0x02256}, // RING IN EQUAL TO
{"eqcolon", 0x02255}, // EQUALS COLON
{"eqsim", 0x02242}, // MINUS TILDE
{"eqslantgtr", 0x02A96}, // SLANTED EQUAL TO OR GREATER-THAN
{"eqslantless", 0x02A95}, // SLANTED EQUAL TO OR LESS-THAN
{"Equal", 0x02A75}, // TWO CONSECUTIVE EQUALS SIGNS
{"equals", 0x0003D}, // EQUALS SIGN
{"EqualTilde", 0x02242}, // MINUS TILDE
{"equest", 0x0225F}, // QUESTIONED EQUAL TO
{"Equilibrium", 0x021CC}, // RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
{"equiv", 0x02261}, // IDENTICAL TO
{"equivDD", 0x02A78}, // EQUIVALENT WITH FOUR DOTS ABOVE
{"eqvparsl", 0x029E5}, // IDENTICAL TO AND SLANTED PARALLEL
{"erarr", 0x02971}, // EQUALS SIGN ABOVE RIGHTWARDS ARROW
{"erDot", 0x02253}, // IMAGE OF OR APPROXIMATELY EQUAL TO
{"escr", 0x0212F}, // SCRIPT SMALL E
{"Escr", 0x02130}, // SCRIPT CAPITAL E
{"esdot", 0x02250}, // APPROACHES THE LIMIT
{"esim", 0x02242}, // MINUS TILDE
{"Esim", 0x02A73}, // EQUALS SIGN ABOVE TILDE OPERATOR
{"Eta", 0x00397}, // GREEK CAPITAL LETTER ETA
{"eta", 0x003B7}, // GREEK SMALL LETTER ETA
{"ETH", 0x000D0}, // LATIN CAPITAL LETTER ETH
{"eth", 0x000F0}, // LATIN SMALL LETTER ETH
{"Euml", 0x000CB}, // LATIN CAPITAL LETTER E WITH DIAERESIS
{"euml", 0x000EB}, // LATIN SMALL LETTER E WITH DIAERESIS
{"euro", 0x020AC}, // EURO SIGN
{"excl", 0x00021}, // EXCLAMATION MARK
{"exist", 0x02203}, // THERE EXISTS
{"Exists", 0x02203}, // THERE EXISTS
{"expectation", 0x02130}, // SCRIPT CAPITAL E
{"exponentiale", 0x02147}, // DOUBLE-STRUCK ITALIC SMALL E
{"ExponentialE", 0x02147}, // DOUBLE-STRUCK ITALIC SMALL E
{NULL, 0}
};
static NameId namesF[]={
{"fallingdotseq", 0x02252}, // APPROXIMATELY EQUAL TO OR THE IMAGE OF
{"Fcy", 0x00424}, // CYRILLIC CAPITAL LETTER EF
{"fcy", 0x00444}, // CYRILLIC SMALL LETTER EF
{"female", 0x02640}, // FEMALE SIGN
{"ffilig", 0x0FB03}, // LATIN SMALL LIGATURE FFI
{"fflig", 0x0FB00}, // LATIN SMALL LIGATURE FF
{"ffllig", 0x0FB04}, // LATIN SMALL LIGATURE FFL
{"Ffr", 0x1D509}, // MATHEMATICAL FRAKTUR CAPITAL F
{"ffr", 0x1D523}, // MATHEMATICAL FRAKTUR SMALL F
{"filig", 0x0FB01}, // LATIN SMALL LIGATURE FI
{"FilledSmallSquare", 0x025FC}, // BLACK MEDIUM SQUARE
{"FilledVerySmallSquare", 0x025AA}, // BLACK SMALL SQUARE
// "fjlig", 0x00066;0x0006A}, // fj ligature
{"flat", 0x0266D}, // MUSIC FLAT SIGN
{"fllig", 0x0FB02}, // LATIN SMALL LIGATURE FL
{"fltns", 0x025B1}, // WHITE PARALLELOGRAM
{"fnof", 0x00192}, // LATIN SMALL LETTER F WITH HOOK
{"Fopf", 0x1D53D}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL F
{"fopf", 0x1D557}, // MATHEMATICAL DOUBLE-STRUCK SMALL F
{"forall", 0x02200}, // FOR ALL
{"ForAll", 0x02200}, // FOR ALL
{"fork", 0x022D4}, // PITCHFORK
{"forkv", 0x02AD9}, // ELEMENT OF OPENING DOWNWARDS
{"Fouriertrf", 0x02131}, // SCRIPT CAPITAL F
{"fpartint", 0x02A0D}, // FINITE PART INTEGRAL
{"frac12", 0x000BD}, // VULGAR FRACTION ONE HALF
{"frac13", 0x02153}, // VULGAR FRACTION ONE THIRD
{"frac14", 0x000BC}, // VULGAR FRACTION ONE QUARTER
{"frac15", 0x02155}, // VULGAR FRACTION ONE FIFTH
{"frac16", 0x02159}, // VULGAR FRACTION ONE SIXTH
{"frac18", 0x0215B}, // VULGAR FRACTION ONE EIGHTH
{"frac23", 0x02154}, // VULGAR FRACTION TWO THIRDS
{"frac25", 0x02156}, // VULGAR FRACTION TWO FIFTHS
{"frac34", 0x000BE}, // VULGAR FRACTION THREE QUARTERS
{"frac35", 0x02157}, // VULGAR FRACTION THREE FIFTHS
{"frac38", 0x0215C}, // VULGAR FRACTION THREE EIGHTHS
{"frac45", 0x02158}, // VULGAR FRACTION FOUR FIFTHS
{"frac56", 0x0215A}, // VULGAR FRACTION FIVE SIXTHS
{"frac58", 0x0215D}, // VULGAR FRACTION FIVE EIGHTHS
{"frac78", 0x0215E}, // VULGAR FRACTION SEVEN EIGHTHS
{"frasl", 0x02044}, // FRACTION SLASH
{"frown", 0x02322}, // FROWN
{"Fscr", 0x02131}, // SCRIPT CAPITAL F
{"fscr", 0x1D4BB}, // MATHEMATICAL SCRIPT SMALL F
{NULL, 0}
};
static NameId namesG[]={
{"gacute", 0x001F5}, // LATIN SMALL LETTER G WITH ACUTE
{"Gamma", 0x00393}, // GREEK CAPITAL LETTER GAMMA
{"gamma", 0x003B3}, // GREEK SMALL LETTER GAMMA
{"Gammad", 0x003DC}, // GREEK LETTER DIGAMMA
{"gammad", 0x003DD}, // GREEK SMALL LETTER DIGAMMA
{"gap", 0x02A86}, // GREATER-THAN OR APPROXIMATE
{"Gbreve", 0x0011E}, // LATIN CAPITAL LETTER G WITH BREVE
{"gbreve", 0x0011F}, // LATIN SMALL LETTER G WITH BREVE
{"Gcedil", 0x00122}, // LATIN CAPITAL LETTER G WITH CEDILLA
{"Gcirc", 0x0011C}, // LATIN CAPITAL LETTER G WITH CIRCUMFLEX
{"gcirc", 0x0011D}, // LATIN SMALL LETTER G WITH CIRCUMFLEX
{"Gcy", 0x00413}, // CYRILLIC CAPITAL LETTER GHE
{"gcy", 0x00433}, // CYRILLIC SMALL LETTER GHE
{"Gdot", 0x00120}, // LATIN CAPITAL LETTER G WITH DOT ABOVE
{"gdot", 0x00121}, // LATIN SMALL LETTER G WITH DOT ABOVE
{"ge", 0x02265}, // GREATER-THAN OR EQUAL TO
{"gE", 0x02267}, // GREATER-THAN OVER EQUAL TO
{"gel", 0x022DB}, // GREATER-THAN EQUAL TO OR LESS-THAN
{"gEl", 0x02A8C}, // GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN
{"geq", 0x02265}, // GREATER-THAN OR EQUAL TO
{"geqq", 0x02267}, // GREATER-THAN OVER EQUAL TO
{"geqslant", 0x02A7E}, // GREATER-THAN OR SLANTED EQUAL TO
{"ges", 0x02A7E}, // GREATER-THAN OR SLANTED EQUAL TO
{"gescc", 0x02AA9}, // GREATER-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL
{"gesdot", 0x02A80}, // GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE
{"gesdoto", 0x02A82}, // GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE
{"gesdotol", 0x02A84}, // GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT
// "gesl", 0x022DB;0x0FE00}, // GREATER-THAN slanted EQUAL TO OR LESS-THAN
{"gesles", 0x02A94}, // GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL
{"Gfr", 0x1D50A}, // MATHEMATICAL FRAKTUR CAPITAL G
{"gfr", 0x1D524}, // MATHEMATICAL FRAKTUR SMALL G
{"gg", 0x0226B}, // MUCH GREATER-THAN
{"Gg", 0x022D9}, // VERY MUCH GREATER-THAN
{"ggg", 0x022D9}, // VERY MUCH GREATER-THAN
{"Ggr", 0x00393}, // GREEK CAPITAL LETTER GAMMA
{"ggr", 0x003B3}, // GREEK SMALL LETTER GAMMA
{"gimel", 0x02137}, // GIMEL SYMBOL
{"GJcy", 0x00403}, // CYRILLIC CAPITAL LETTER GJE
{"gjcy", 0x00453}, // CYRILLIC SMALL LETTER GJE
{"gl", 0x02277}, // GREATER-THAN OR LESS-THAN
{"gla", 0x02AA5}, // GREATER-THAN BESIDE LESS-THAN
{"glE", 0x02A92}, // GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE EQUAL
{"glj", 0x02AA4}, // GREATER-THAN OVERLAPPING LESS-THAN
{"gnap", 0x02A8A}, // GREATER-THAN AND NOT APPROXIMATE
{"gnapprox", 0x02A8A}, // GREATER-THAN AND NOT APPROXIMATE
{"gnE", 0x02269}, // GREATER-THAN BUT NOT EQUAL TO
{"gne", 0x02A88}, // GREATER-THAN AND SINGLE-LINE NOT EQUAL TO
{"gneq", 0x02A88}, // GREATER-THAN AND SINGLE-LINE NOT EQUAL TO
{"gneqq", 0x02269}, // GREATER-THAN BUT NOT EQUAL TO
{"gnsim", 0x022E7}, // GREATER-THAN BUT NOT EQUIVALENT TO
{"Gopf", 0x1D53E}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL G
{"gopf", 0x1D558}, // MATHEMATICAL DOUBLE-STRUCK SMALL G
{"grave", 0x00060}, // GRAVE ACCENT
{"GreaterEqual", 0x02265}, // GREATER-THAN OR EQUAL TO
{"GreaterEqualLess", 0x022DB}, // GREATER-THAN EQUAL TO OR LESS-THAN
{"GreaterFullEqual", 0x02267}, // GREATER-THAN OVER EQUAL TO
{"GreaterGreater", 0x02AA2}, // DOUBLE NESTED GREATER-THAN
{"GreaterLess", 0x02277}, // GREATER-THAN OR LESS-THAN
{"GreaterSlantEqual", 0x02A7E}, // GREATER-THAN OR SLANTED EQUAL TO
{"GreaterTilde", 0x02273}, // GREATER-THAN OR EQUIVALENT TO
{"gscr", 0x0210A}, // SCRIPT SMALL G
{"Gscr", 0x1D4A2}, // MATHEMATICAL SCRIPT CAPITAL G
{"gsim", 0x02273}, // GREATER-THAN OR EQUIVALENT TO
{"gsime", 0x02A8E}, // GREATER-THAN ABOVE SIMILAR OR EQUAL
{"gsiml", 0x02A90}, // GREATER-THAN ABOVE SIMILAR ABOVE LESS-THAN
{"gt", 0x0003E}, // GREATER-THAN SIGN
{"GT", 0x0003E}, // GREATER-THAN SIGN
{"Gt", 0x0226B}, // MUCH GREATER-THAN
{"gtcc", 0x02AA7}, // GREATER-THAN CLOSED BY CURVE
{"gtcir", 0x02A7A}, // GREATER-THAN WITH CIRCLE INSIDE
{"gtdot", 0x022D7}, // GREATER-THAN WITH DOT
{"gtlPar", 0x02995}, // DOUBLE LEFT ARC GREATER-THAN BRACKET
{"gtquest", 0x02A7C}, // GREATER-THAN WITH QUESTION MARK ABOVE
{"gtrapprox", 0x02A86}, // GREATER-THAN OR APPROXIMATE
{"gtrarr", 0x02978}, // GREATER-THAN ABOVE RIGHTWARDS ARROW
{"gtrdot", 0x022D7}, // GREATER-THAN WITH DOT
{"gtreqless", 0x022DB}, // GREATER-THAN EQUAL TO OR LESS-THAN
{"gtreqqless", 0x02A8C}, // GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN
{"gtrless", 0x02277}, // GREATER-THAN OR LESS-THAN
{"gtrsim", 0x02273}, // GREATER-THAN OR EQUIVALENT TO
// "gvertneqq", 0x02269;0x0FE00}, // GREATER-THAN BUT NOT EQUAL TO - with vertical stroke
// "gvnE", 0x02269;0x0FE00}, // GREATER-THAN BUT NOT EQUAL TO - with vertical stroke
{NULL, 0}
};
static NameId namesH[]={
{"Hacek", 0x002C7}, // CARON
{"hairsp", 0x0200A}, // HAIR SPACE
{"half", 0x000BD}, // VULGAR FRACTION ONE HALF
{"hamilt", 0x0210B}, // SCRIPT CAPITAL H
{"HARDcy", 0x0042A}, // CYRILLIC CAPITAL LETTER HARD SIGN
{"hardcy", 0x0044A}, // CYRILLIC SMALL LETTER HARD SIGN
{"harr", 0x02194}, // LEFT RIGHT ARROW
{"hArr", 0x021D4}, // LEFT RIGHT DOUBLE ARROW
{"harrcir", 0x02948}, // LEFT RIGHT ARROW THROUGH SMALL CIRCLE
{"harrw", 0x021AD}, // LEFT RIGHT WAVE ARROW
{"Hat", 0x0005E}, // CIRCUMFLEX ACCENT
{"hbar", 0x0210F}, // PLANCK CONSTANT OVER TWO PI
{"Hcirc", 0x00124}, // LATIN CAPITAL LETTER H WITH CIRCUMFLEX
{"hcirc", 0x00125}, // LATIN SMALL LETTER H WITH CIRCUMFLEX
{"hearts", 0x02665}, // BLACK HEART SUIT
{"heartsuit", 0x02665}, // BLACK HEART SUIT
{"hellip", 0x02026}, // HORIZONTAL ELLIPSIS
{"hercon", 0x022B9}, // HERMITIAN CONJUGATE MATRIX
{"Hfr", 0x0210C}, // BLACK-LETTER CAPITAL H
{"hfr", 0x1D525}, // MATHEMATICAL FRAKTUR SMALL H
{"HilbertSpace", 0x0210B}, // SCRIPT CAPITAL H
{"hksearow", 0x02925}, // SOUTH EAST ARROW WITH HOOK
{"hkswarow", 0x02926}, // SOUTH WEST ARROW WITH HOOK
{"hoarr", 0x021FF}, // LEFT RIGHT OPEN-HEADED ARROW
{"homtht", 0x0223B}, // HOMOTHETIC
{"hookleftarrow", 0x021A9}, // LEFTWARDS ARROW WITH HOOK
{"hookrightarrow", 0x021AA}, // RIGHTWARDS ARROW WITH HOOK
{"Hopf", 0x0210D}, // DOUBLE-STRUCK CAPITAL H
{"hopf", 0x1D559}, // MATHEMATICAL DOUBLE-STRUCK SMALL H
{"horbar", 0x02015}, // HORIZONTAL BAR
{"HorizontalLine", 0x02500}, // BOX DRAWINGS LIGHT HORIZONTAL
{"Hscr", 0x0210B}, // SCRIPT CAPITAL H
{"hscr", 0x1D4BD}, // MATHEMATICAL SCRIPT SMALL H
{"hslash", 0x0210F}, // PLANCK CONSTANT OVER TWO PI
{"Hstrok", 0x00126}, // LATIN CAPITAL LETTER H WITH STROKE
{"hstrok", 0x00127}, // LATIN SMALL LETTER H WITH STROKE
{"HumpDownHump", 0x0224E}, // GEOMETRICALLY EQUIVALENT TO
{"HumpEqual", 0x0224F}, // DIFFERENCE BETWEEN
{"hybull", 0x02043}, // HYPHEN BULLET
{"hyphen", 0x02010}, // HYPHEN
{NULL, 0}
};
static NameId namesI[]={
{"Iacgr", 0x0038A}, // GREEK CAPITAL LETTER IOTA WITH TONOS
{"iacgr", 0x003AF}, // GREEK SMALL LETTER IOTA WITH TONOS
{"Iacute", 0x000CD}, // LATIN CAPITAL LETTER I WITH ACUTE
{"iacute", 0x000ED}, // LATIN SMALL LETTER I WITH ACUTE
{"ic", 0x02063}, // INVISIBLE SEPARATOR
{"Icirc", 0x000CE}, // LATIN CAPITAL LETTER I WITH CIRCUMFLEX
{"icirc", 0x000EE}, // LATIN SMALL LETTER I WITH CIRCUMFLEX
{"Icy", 0x00418}, // CYRILLIC CAPITAL LETTER I
{"icy", 0x00438}, // CYRILLIC SMALL LETTER I
{"idiagr", 0x00390}, // GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
{"Idigr", 0x003AA}, // GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
{"idigr", 0x003CA}, // GREEK SMALL LETTER IOTA WITH DIALYTIKA
{"Idot", 0x00130}, // LATIN CAPITAL LETTER I WITH DOT ABOVE
{"IEcy", 0x00415}, // CYRILLIC CAPITAL LETTER IE
{"iecy", 0x00435}, // CYRILLIC SMALL LETTER IE
{"iexcl", 0x000A1}, // INVERTED EXCLAMATION MARK
{"iff", 0x021D4}, // LEFT RIGHT DOUBLE ARROW
{"Ifr", 0x02111}, // BLACK-LETTER CAPITAL I
{"ifr", 0x1D526}, // MATHEMATICAL FRAKTUR SMALL I
{"Igr", 0x00399}, // GREEK CAPITAL LETTER IOTA
{"igr", 0x003B9}, // GREEK SMALL LETTER IOTA
{"Igrave", 0x000CC}, // LATIN CAPITAL LETTER I WITH GRAVE
{"igrave", 0x000EC}, // LATIN SMALL LETTER I WITH GRAVE
{"ii", 0x02148}, // DOUBLE-STRUCK ITALIC SMALL I
{"iiiint", 0x02A0C}, // QUADRUPLE INTEGRAL OPERATOR
{"iiint", 0x0222D}, // TRIPLE INTEGRAL
{"iinfin", 0x029DC}, // INCOMPLETE INFINITY
{"iiota", 0x02129}, // TURNED GREEK SMALL LETTER IOTA
{"IJlig", 0x00132}, // LATIN CAPITAL LIGATURE IJ
{"ijlig", 0x00133}, // LATIN SMALL LIGATURE IJ
{"Im", 0x02111}, // BLACK-LETTER CAPITAL I
{"Imacr", 0x0012A}, // LATIN CAPITAL LETTER I WITH MACRON
{"imacr", 0x0012B}, // LATIN SMALL LETTER I WITH MACRON
{"image", 0x02111}, // BLACK-LETTER CAPITAL I
{"ImaginaryI", 0x02148}, // DOUBLE-STRUCK ITALIC SMALL I
{"imagline", 0x02110}, // SCRIPT CAPITAL I
{"imagpart", 0x02111}, // BLACK-LETTER CAPITAL I
{"imath", 0x00131}, // LATIN SMALL LETTER DOTLESS I
{"imof", 0x022B7}, // IMAGE OF
{"imped", 0x001B5}, // LATIN CAPITAL LETTER Z WITH STROKE
{"Implies", 0x021D2}, // RIGHTWARDS DOUBLE ARROW
{"in", 0x02208}, // ELEMENT OF
{"incare", 0x02105}, // CARE OF
{"infin", 0x0221E}, // INFINITY
{"infintie", 0x029DD}, // TIE OVER INFINITY
{"inodot", 0x00131}, // LATIN SMALL LETTER DOTLESS I
{"int", 0x0222B}, // INTEGRAL
{"Int", 0x0222C}, // DOUBLE INTEGRAL
{"intcal", 0x022BA}, // INTERCALATE
{"integers", 0x02124}, // DOUBLE-STRUCK CAPITAL Z
{"Integral", 0x0222B}, // INTEGRAL
{"intercal", 0x022BA}, // INTERCALATE
{"Intersection", 0x022C2}, // N-ARY INTERSECTION
{"intlarhk", 0x02A17}, // INTEGRAL WITH LEFTWARDS ARROW WITH HOOK
{"intprod", 0x02A3C}, // INTERIOR PRODUCT
{"InvisibleComma", 0x02063}, // INVISIBLE SEPARATOR
{"InvisibleTimes", 0x02062}, // INVISIBLE TIMES
{"IOcy", 0x00401}, // CYRILLIC CAPITAL LETTER IO
{"iocy", 0x00451}, // CYRILLIC SMALL LETTER IO
{"Iogon", 0x0012E}, // LATIN CAPITAL LETTER I WITH OGONEK
{"iogon", 0x0012F}, // LATIN SMALL LETTER I WITH OGONEK
{"Iopf", 0x1D540}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL I
{"iopf", 0x1D55A}, // MATHEMATICAL DOUBLE-STRUCK SMALL I
{"Iota", 0x00399}, // GREEK CAPITAL LETTER IOTA
{"iota", 0x003B9}, // GREEK SMALL LETTER IOTA
{"iprod", 0x02A3C}, // INTERIOR PRODUCT
{"iquest", 0x000BF}, // INVERTED QUESTION MARK
{"Iscr", 0x02110}, // SCRIPT CAPITAL I
{"iscr", 0x1D4BE}, // MATHEMATICAL SCRIPT SMALL I
{"isin", 0x02208}, // ELEMENT OF
{"isindot", 0x022F5}, // ELEMENT OF WITH DOT ABOVE
{"isinE", 0x022F9}, // ELEMENT OF WITH TWO HORIZONTAL STROKES
{"isins", 0x022F4}, // SMALL ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE
{"isinsv", 0x022F3}, // ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE
{"isinv", 0x02208}, // ELEMENT OF
{"it", 0x02062}, // INVISIBLE TIMES
{"Itilde", 0x00128}, // LATIN CAPITAL LETTER I WITH TILDE
{"itilde", 0x00129}, // LATIN SMALL LETTER I WITH TILDE
{"Iukcy", 0x00406}, // CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
{"iukcy", 0x00456}, // CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
{"Iuml", 0x000CF}, // LATIN CAPITAL LETTER I WITH DIAERESIS
{"iuml", 0x000EF}, // LATIN SMALL LETTER I WITH DIAERESIS
{NULL, 0}
};
static NameId namesJ[]={
{"Jcirc", 0x00134}, // LATIN CAPITAL LETTER J WITH CIRCUMFLEX
{"jcirc", 0x00135}, // LATIN SMALL LETTER J WITH CIRCUMFLEX
{"Jcy", 0x00419}, // CYRILLIC CAPITAL LETTER SHORT I
{"jcy", 0x00439}, // CYRILLIC SMALL LETTER SHORT I
{"Jfr", 0x1D50D}, // MATHEMATICAL FRAKTUR CAPITAL J
{"jfr", 0x1D527}, // MATHEMATICAL FRAKTUR SMALL J
{"jmath", 0x00237}, // LATIN SMALL LETTER DOTLESS J
{"Jopf", 0x1D541}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL J
{"jopf", 0x1D55B}, // MATHEMATICAL DOUBLE-STRUCK SMALL J
{"Jscr", 0x1D4A5}, // MATHEMATICAL SCRIPT CAPITAL J
{"jscr", 0x1D4BF}, // MATHEMATICAL SCRIPT SMALL J
{"Jsercy", 0x00408}, // CYRILLIC CAPITAL LETTER JE
{"jsercy", 0x00458}, // CYRILLIC SMALL LETTER JE
{"Jukcy", 0x00404}, // CYRILLIC CAPITAL LETTER UKRAINIAN IE
{"jukcy", 0x00454}, // CYRILLIC SMALL LETTER UKRAINIAN IE
{NULL, 0}
};
static NameId namesK[]={
{"Kappa", 0x0039A}, // GREEK CAPITAL LETTER KAPPA
{"kappa", 0x003BA}, // GREEK SMALL LETTER KAPPA
{"kappav", 0x003F0}, // GREEK KAPPA SYMBOL
{"Kcedil", 0x00136}, // LATIN CAPITAL LETTER K WITH CEDILLA
{"kcedil", 0x00137}, // LATIN SMALL LETTER K WITH CEDILLA
{"Kcy", 0x0041A}, // CYRILLIC CAPITAL LETTER KA
{"kcy", 0x0043A}, // CYRILLIC SMALL LETTER KA
{"Kfr", 0x1D50E}, // MATHEMATICAL FRAKTUR CAPITAL K
{"kfr", 0x1D528}, // MATHEMATICAL FRAKTUR SMALL K
{"Kgr", 0x0039A}, // GREEK CAPITAL LETTER KAPPA
{"kgr", 0x003BA}, // GREEK SMALL LETTER KAPPA
{"kgreen", 0x00138}, // LATIN SMALL LETTER KRA
{"KHcy", 0x00425}, // CYRILLIC CAPITAL LETTER HA
{"khcy", 0x00445}, // CYRILLIC SMALL LETTER HA
{"KHgr", 0x003A7}, // GREEK CAPITAL LETTER CHI
{"khgr", 0x003C7}, // GREEK SMALL LETTER CHI
{"KJcy", 0x0040C}, // CYRILLIC CAPITAL LETTER KJE
{"kjcy", 0x0045C}, // CYRILLIC SMALL LETTER KJE
{"Kopf", 0x1D542}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL K
{"kopf", 0x1D55C}, // MATHEMATICAL DOUBLE-STRUCK SMALL K
{"Kscr", 0x1D4A6}, // MATHEMATICAL SCRIPT CAPITAL K
{"kscr", 0x1D4C0}, // MATHEMATICAL SCRIPT SMALL K
{NULL, 0}
};
static NameId namesL[]={
{"lAarr", 0x021DA}, // LEFTWARDS TRIPLE ARROW
{"Lacute", 0x00139}, // LATIN CAPITAL LETTER L WITH ACUTE
{"lacute", 0x0013A}, // LATIN SMALL LETTER L WITH ACUTE
{"laemptyv", 0x029B4}, // EMPTY SET WITH LEFT ARROW ABOVE
{"lagran", 0x02112}, // SCRIPT CAPITAL L
{"Lambda", 0x0039B}, // GREEK CAPITAL LETTER LAMDA
{"lambda", 0x003BB}, // GREEK SMALL LETTER LAMDA
{"lang", 0x027E8}, // MATHEMATICAL LEFT ANGLE BRACKET
{"Lang", 0x027EA}, // MATHEMATICAL LEFT DOUBLE ANGLE BRACKET
{"langd", 0x02991}, // LEFT ANGLE BRACKET WITH DOT
{"langle", 0x027E8}, // MATHEMATICAL LEFT ANGLE BRACKET
{"lap", 0x02A85}, // LESS-THAN OR APPROXIMATE
{"Laplacetrf", 0x02112}, // SCRIPT CAPITAL L
{"laquo", 0x000AB}, // LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
{"larr", 0x02190}, // LEFTWARDS ARROW
{"Larr", 0x0219E}, // LEFTWARDS TWO HEADED ARROW
{"lArr", 0x021D0}, // LEFTWARDS DOUBLE ARROW
{"larrb", 0x021E4}, // LEFTWARDS ARROW TO BAR
{"larrbfs", 0x0291F}, // LEFTWARDS ARROW FROM BAR TO BLACK DIAMOND
{"larrfs", 0x0291D}, // LEFTWARDS ARROW TO BLACK DIAMOND
{"larrhk", 0x021A9}, // LEFTWARDS ARROW WITH HOOK
{"larrlp", 0x021AB}, // LEFTWARDS ARROW WITH LOOP
{"larrpl", 0x02939}, // LEFT-SIDE ARC ANTICLOCKWISE ARROW
{"larrsim", 0x02973}, // LEFTWARDS ARROW ABOVE TILDE OPERATOR
{"larrtl", 0x021A2}, // LEFTWARDS ARROW WITH TAIL
{"lat", 0x02AAB}, // LARGER THAN
{"latail", 0x02919}, // LEFTWARDS ARROW-TAIL
{"lAtail", 0x0291B}, // LEFTWARDS DOUBLE ARROW-TAIL
{"late", 0x02AAD}, // LARGER THAN OR EQUAL TO
// "lates", 0x02AAD;0x0FE00}, // LARGER THAN OR slanted EQUAL
{"lbarr", 0x0290C}, // LEFTWARDS DOUBLE DASH ARROW
{"lBarr", 0x0290E}, // LEFTWARDS TRIPLE DASH ARROW
{"lbbrk", 0x02772}, // LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT
{"lbrace", 0x0007B}, // LEFT CURLY BRACKET
{"lbrack", 0x0005B}, // LEFT SQUARE BRACKET
{"lbrke", 0x0298B}, // LEFT SQUARE BRACKET WITH UNDERBAR
{"lbrksld", 0x0298F}, // LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER
{"lbrkslu", 0x0298D}, // LEFT SQUARE BRACKET WITH TICK IN TOP CORNER
{"Lcaron", 0x0013D}, // LATIN CAPITAL LETTER L WITH CARON
{"lcaron", 0x0013E}, // LATIN SMALL LETTER L WITH CARON
{"Lcedil", 0x0013B}, // LATIN CAPITAL LETTER L WITH CEDILLA
{"lcedil", 0x0013C}, // LATIN SMALL LETTER L WITH CEDILLA
{"lceil", 0x02308}, // LEFT CEILING
{"lcub", 0x0007B}, // LEFT CURLY BRACKET
{"Lcy", 0x0041B}, // CYRILLIC CAPITAL LETTER EL
{"lcy", 0x0043B}, // CYRILLIC SMALL LETTER EL
{"ldca", 0x02936}, // ARROW POINTING DOWNWARDS THEN CURVING LEFTWARDS
{"ldquo", 0x0201C}, // LEFT DOUBLE QUOTATION MARK
{"ldquor", 0x0201E}, // DOUBLE LOW-9 QUOTATION MARK
{"ldrdhar", 0x02967}, // LEFTWARDS HARPOON WITH BARB DOWN ABOVE RIGHTWARDS HARPOON WITH BARB DOWN
{"ldrushar", 0x0294B}, // LEFT BARB DOWN RIGHT BARB UP HARPOON
{"ldsh", 0x021B2}, // DOWNWARDS ARROW WITH TIP LEFTWARDS
{"le", 0x02264}, // LESS-THAN OR EQUAL TO
{"lE", 0x02266}, // LESS-THAN OVER EQUAL TO
{"LeftAngleBracket", 0x027E8}, // MATHEMATICAL LEFT ANGLE BRACKET
{"leftarrow", 0x02190}, // LEFTWARDS ARROW
{"LeftArrow", 0x02190}, // LEFTWARDS ARROW
{"Leftarrow", 0x021D0}, // LEFTWARDS DOUBLE ARROW
{"LeftArrowBar", 0x021E4}, // LEFTWARDS ARROW TO BAR
{"LeftArrowRightArrow", 0x021C6}, // LEFTWARDS ARROW OVER RIGHTWARDS ARROW
{"leftarrowtail", 0x021A2}, // LEFTWARDS ARROW WITH TAIL
{"LeftCeiling", 0x02308}, // LEFT CEILING
{"LeftDoubleBracket", 0x027E6}, // MATHEMATICAL LEFT WHITE SQUARE BRACKET
{"LeftDownTeeVector", 0x02961}, // DOWNWARDS HARPOON WITH BARB LEFT FROM BAR
{"LeftDownVector", 0x021C3}, // DOWNWARDS HARPOON WITH BARB LEFTWARDS
{"LeftDownVectorBar", 0x02959}, // DOWNWARDS HARPOON WITH BARB LEFT TO BAR
{"LeftFloor", 0x0230A}, // LEFT FLOOR
{"leftharpoondown", 0x021BD}, // LEFTWARDS HARPOON WITH BARB DOWNWARDS
{"leftharpoonup", 0x021BC}, // LEFTWARDS HARPOON WITH BARB UPWARDS
{"leftleftarrows", 0x021C7}, // LEFTWARDS PAIRED ARROWS
{"leftrightarrow", 0x02194}, // LEFT RIGHT ARROW
{"LeftRightArrow", 0x02194}, // LEFT RIGHT ARROW
{"Leftrightarrow", 0x021D4}, // LEFT RIGHT DOUBLE ARROW
{"leftrightarrows", 0x021C6}, // LEFTWARDS ARROW OVER RIGHTWARDS ARROW
{"leftrightharpoons", 0x021CB}, // LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
{"leftrightsquigarrow", 0x021AD}, // LEFT RIGHT WAVE ARROW
{"LeftRightVector", 0x0294E}, // LEFT BARB UP RIGHT BARB UP HARPOON
{"LeftTee", 0x022A3}, // LEFT TACK
{"LeftTeeArrow", 0x021A4}, // LEFTWARDS ARROW FROM BAR
{"LeftTeeVector", 0x0295A}, // LEFTWARDS HARPOON WITH BARB UP FROM BAR
{"leftthreetimes", 0x022CB}, // LEFT SEMIDIRECT PRODUCT
{"LeftTriangle", 0x022B2}, // NORMAL SUBGROUP OF
{"LeftTriangleBar", 0x029CF}, // LEFT TRIANGLE BESIDE VERTICAL BAR
{"LeftTriangleEqual", 0x022B4}, // NORMAL SUBGROUP OF OR EQUAL TO
{"LeftUpDownVector", 0x02951}, // UP BARB LEFT DOWN BARB LEFT HARPOON
{"LeftUpTeeVector", 0x02960}, // UPWARDS HARPOON WITH BARB LEFT FROM BAR
{"LeftUpVector", 0x021BF}, // UPWARDS HARPOON WITH BARB LEFTWARDS
{"LeftUpVectorBar", 0x02958}, // UPWARDS HARPOON WITH BARB LEFT TO BAR
{"LeftVector", 0x021BC}, // LEFTWARDS HARPOON WITH BARB UPWARDS
{"LeftVectorBar", 0x02952}, // LEFTWARDS HARPOON WITH BARB UP TO BAR
{"leg", 0x022DA}, // LESS-THAN EQUAL TO OR GREATER-THAN
{"lEg", 0x02A8B}, // LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN
{"leq", 0x02264}, // LESS-THAN OR EQUAL TO
{"leqq", 0x02266}, // LESS-THAN OVER EQUAL TO
{"leqslant", 0x02A7D}, // LESS-THAN OR SLANTED EQUAL TO
{"les", 0x02A7D}, // LESS-THAN OR SLANTED EQUAL TO
{"lescc", 0x02AA8}, // LESS-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL
{"lesdot", 0x02A7F}, // LESS-THAN OR SLANTED EQUAL TO WITH DOT INSIDE
{"lesdoto", 0x02A81}, // LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE
{"lesdotor", 0x02A83}, // LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT
// "lesg", 0x022DA;0x0FE00}, // LESS-THAN slanted EQUAL TO OR GREATER-THAN
{"lesges", 0x02A93}, // LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL
{"lessapprox", 0x02A85}, // LESS-THAN OR APPROXIMATE
{"lessdot", 0x022D6}, // LESS-THAN WITH DOT
{"lesseqgtr", 0x022DA}, // LESS-THAN EQUAL TO OR GREATER-THAN
{"lesseqqgtr", 0x02A8B}, // LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN
{"LessEqualGreater", 0x022DA}, // LESS-THAN EQUAL TO OR GREATER-THAN
{"LessFullEqual", 0x02266}, // LESS-THAN OVER EQUAL TO
{"LessGreater", 0x02276}, // LESS-THAN OR GREATER-THAN
{"lessgtr", 0x02276}, // LESS-THAN OR GREATER-THAN
{"LessLess", 0x02AA1}, // DOUBLE NESTED LESS-THAN
{"lesssim", 0x02272}, // LESS-THAN OR EQUIVALENT TO
{"LessSlantEqual", 0x02A7D}, // LESS-THAN OR SLANTED EQUAL TO
{"LessTilde", 0x02272}, // LESS-THAN OR EQUIVALENT TO
{"lfisht", 0x0297C}, // LEFT FISH TAIL
{"lfloor", 0x0230A}, // LEFT FLOOR
{"Lfr", 0x1D50F}, // MATHEMATICAL FRAKTUR CAPITAL L
{"lfr", 0x1D529}, // MATHEMATICAL FRAKTUR SMALL L
{"lg", 0x02276}, // LESS-THAN OR GREATER-THAN
{"lgE", 0x02A91}, // LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE EQUAL
{"Lgr", 0x0039B}, // GREEK CAPITAL LETTER LAMDA
{"lgr", 0x003BB}, // GREEK SMALL LETTER LAMDA
{"lHar", 0x02962}, // LEFTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB DOWN
{"lhard", 0x021BD}, // LEFTWARDS HARPOON WITH BARB DOWNWARDS
{"lharu", 0x021BC}, // LEFTWARDS HARPOON WITH BARB UPWARDS
{"lharul", 0x0296A}, // LEFTWARDS HARPOON WITH BARB UP ABOVE LONG DASH
{"lhblk", 0x02584}, // LOWER HALF BLOCK
{"LJcy", 0x00409}, // CYRILLIC CAPITAL LETTER LJE
{"ljcy", 0x00459}, // CYRILLIC SMALL LETTER LJE
{"ll", 0x0226A}, // MUCH LESS-THAN
{"Ll", 0x022D8}, // VERY MUCH LESS-THAN
{"llarr", 0x021C7}, // LEFTWARDS PAIRED ARROWS
{"llcorner", 0x0231E}, // BOTTOM LEFT CORNER
{"Lleftarrow", 0x021DA}, // LEFTWARDS TRIPLE ARROW
{"llhard", 0x0296B}, // LEFTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH
{"lltri", 0x025FA}, // LOWER LEFT TRIANGLE
{"Lmidot", 0x0013F}, // LATIN CAPITAL LETTER L WITH MIDDLE DOT
{"lmidot", 0x00140}, // LATIN SMALL LETTER L WITH MIDDLE DOT
{"lmoust", 0x023B0}, // UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION
{"lmoustache", 0x023B0}, // UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION
{"lnap", 0x02A89}, // LESS-THAN AND NOT APPROXIMATE
{"lnapprox", 0x02A89}, // LESS-THAN AND NOT APPROXIMATE
{"lnE", 0x02268}, // LESS-THAN BUT NOT EQUAL TO
{"lne", 0x02A87}, // LESS-THAN AND SINGLE-LINE NOT EQUAL TO
{"lneq", 0x02A87}, // LESS-THAN AND SINGLE-LINE NOT EQUAL TO
{"lneqq", 0x02268}, // LESS-THAN BUT NOT EQUAL TO
{"lnsim", 0x022E6}, // LESS-THAN BUT NOT EQUIVALENT TO
{"loang", 0x027EC}, // MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET
{"loarr", 0x021FD}, // LEFTWARDS OPEN-HEADED ARROW
{"lobrk", 0x027E6}, // MATHEMATICAL LEFT WHITE SQUARE BRACKET
{"longleftarrow", 0x027F5}, // LONG LEFTWARDS ARROW
{"LongLeftArrow", 0x027F5}, // LONG LEFTWARDS ARROW
{"Longleftarrow", 0x027F8}, // LONG LEFTWARDS DOUBLE ARROW
{"longleftrightarrow", 0x027F7}, // LONG LEFT RIGHT ARROW
{"LongLeftRightArrow", 0x027F7}, // LONG LEFT RIGHT ARROW
{"Longleftrightarrow", 0x027FA}, // LONG LEFT RIGHT DOUBLE ARROW
{"longmapsto", 0x027FC}, // LONG RIGHTWARDS ARROW FROM BAR
{"longrightarrow", 0x027F6}, // LONG RIGHTWARDS ARROW
{"LongRightArrow", 0x027F6}, // LONG RIGHTWARDS ARROW
{"Longrightarrow", 0x027F9}, // LONG RIGHTWARDS DOUBLE ARROW
{"looparrowleft", 0x021AB}, // LEFTWARDS ARROW WITH LOOP
{"looparrowright", 0x021AC}, // RIGHTWARDS ARROW WITH LOOP
{"lopar", 0x02985}, // LEFT WHITE PARENTHESIS
{"Lopf", 0x1D543}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL L
{"lopf", 0x1D55D}, // MATHEMATICAL DOUBLE-STRUCK SMALL L
{"loplus", 0x02A2D}, // PLUS SIGN IN LEFT HALF CIRCLE
{"lotimes", 0x02A34}, // MULTIPLICATION SIGN IN LEFT HALF CIRCLE
{"lowast", 0x02217}, // ASTERISK OPERATOR
{"lowbar", 0x0005F}, // LOW LINE
{"LowerLeftArrow", 0x02199}, // SOUTH WEST ARROW
{"LowerRightArrow", 0x02198}, // SOUTH EAST ARROW
{"loz", 0x025CA}, // LOZENGE
{"lozenge", 0x025CA}, // LOZENGE
{"lozf", 0x029EB}, // BLACK LOZENGE
{"lpar", 0x00028}, // LEFT PARENTHESIS
{"lparlt", 0x02993}, // LEFT ARC LESS-THAN BRACKET
{"lrarr", 0x021C6}, // LEFTWARDS ARROW OVER RIGHTWARDS ARROW
{"lrcorner", 0x0231F}, // BOTTOM RIGHT CORNER
{"lrhar", 0x021CB}, // LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
{"lrhard", 0x0296D}, // RIGHTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH
{"lrm", 0x0200E}, // LEFT-TO-RIGHT MARK
{"lrtri", 0x022BF}, // RIGHT TRIANGLE
{"lsaquo", 0x02039}, // SINGLE LEFT-POINTING ANGLE QUOTATION MARK
{"Lscr", 0x02112}, // SCRIPT CAPITAL L
{"lscr", 0x1D4C1}, // MATHEMATICAL SCRIPT SMALL L
{"lsh", 0x021B0}, // UPWARDS ARROW WITH TIP LEFTWARDS
{"Lsh", 0x021B0}, // UPWARDS ARROW WITH TIP LEFTWARDS
{"lsim", 0x02272}, // LESS-THAN OR EQUIVALENT TO
{"lsime", 0x02A8D}, // LESS-THAN ABOVE SIMILAR OR EQUAL
{"lsimg", 0x02A8F}, // LESS-THAN ABOVE SIMILAR ABOVE GREATER-THAN
{"lsqb", 0x0005B}, // LEFT SQUARE BRACKET
{"lsquo", 0x02018}, // LEFT SINGLE QUOTATION MARK
{"lsquor", 0x0201A}, // SINGLE LOW-9 QUOTATION MARK
{"Lstrok", 0x00141}, // LATIN CAPITAL LETTER L WITH STROKE
{"lstrok", 0x00142}, // LATIN SMALL LETTER L WITH STROKE
{"lt", 0x0003C}, // LESS-THAN SIGN
{"LT", 0x0003C}, // LESS-THAN SIGN
{"Lt", 0x0226A}, // MUCH LESS-THAN
{"ltcc", 0x02AA6}, // LESS-THAN CLOSED BY CURVE
{"ltcir", 0x02A79}, // LESS-THAN WITH CIRCLE INSIDE
{"ltdot", 0x022D6}, // LESS-THAN WITH DOT
{"lthree", 0x022CB}, // LEFT SEMIDIRECT PRODUCT
{"ltimes", 0x022C9}, // LEFT NORMAL FACTOR SEMIDIRECT PRODUCT
{"ltlarr", 0x02976}, // LESS-THAN ABOVE LEFTWARDS ARROW
{"ltquest", 0x02A7B}, // LESS-THAN WITH QUESTION MARK ABOVE
{"ltri", 0x025C3}, // WHITE LEFT-POINTING SMALL TRIANGLE
{"ltrie", 0x022B4}, // NORMAL SUBGROUP OF OR EQUAL TO
{"ltrif", 0x025C2}, // BLACK LEFT-POINTING SMALL TRIANGLE
{"ltrPar", 0x02996}, // DOUBLE RIGHT ARC LESS-THAN BRACKET
{"lurdshar", 0x0294A}, // LEFT BARB UP RIGHT BARB DOWN HARPOON
{"luruhar", 0x02966}, // LEFTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB UP
// "lvertneqq", 0x02268;0x0FE00}, // LESS-THAN BUT NOT EQUAL TO - with vertical stroke
// "lvnE", 0x02268;0x0FE00}, // LESS-THAN BUT NOT EQUAL TO - with vertical stroke
{NULL, 0}
};
static NameId namesM[]={
{"macr", 0x000AF}, // MACRON
{"male", 0x02642}, // MALE SIGN
{"malt", 0x02720}, // MALTESE CROSS
{"maltese", 0x02720}, // MALTESE CROSS
{"map", 0x021A6}, // RIGHTWARDS ARROW FROM BAR
{"Map", 0x02905}, // RIGHTWARDS TWO-HEADED ARROW FROM BAR
{"mapsto", 0x021A6}, // RIGHTWARDS ARROW FROM BAR
{"mapstodown", 0x021A7}, // DOWNWARDS ARROW FROM BAR
{"mapstoleft", 0x021A4}, // LEFTWARDS ARROW FROM BAR
{"mapstoup", 0x021A5}, // UPWARDS ARROW FROM BAR
{"marker", 0x025AE}, // BLACK VERTICAL RECTANGLE
{"mcomma", 0x02A29}, // MINUS SIGN WITH COMMA ABOVE
{"Mcy", 0x0041C}, // CYRILLIC CAPITAL LETTER EM
{"mcy", 0x0043C}, // CYRILLIC SMALL LETTER EM
{"mdash", 0x02014}, // EM DASH
{"mDDot", 0x0223A}, // GEOMETRIC PROPORTION
{"measuredangle", 0x02221}, // MEASURED ANGLE
{"MediumSpace", 0x0205F}, // MEDIUM MATHEMATICAL SPACE
{"Mellintrf", 0x02133}, // SCRIPT CAPITAL M
{"Mfr", 0x1D510}, // MATHEMATICAL FRAKTUR CAPITAL M
{"mfr", 0x1D52A}, // MATHEMATICAL FRAKTUR SMALL M
{"Mgr", 0x0039C}, // GREEK CAPITAL LETTER MU
{"mgr", 0x003BC}, // GREEK SMALL LETTER MU
{"mho", 0x02127}, // INVERTED OHM SIGN
{"micro", 0x000B5}, // MICRO SIGN
{"mid", 0x02223}, // DIVIDES
{"midast", 0x0002A}, // ASTERISK
{"midcir", 0x02AF0}, // VERTICAL LINE WITH CIRCLE BELOW
{"middot", 0x000B7}, // MIDDLE DOT
{"minus", 0x02212}, // MINUS SIGN
{"minusb", 0x0229F}, // SQUARED MINUS
{"minusd", 0x02238}, // DOT MINUS
{"minusdu", 0x02A2A}, // MINUS SIGN WITH DOT BELOW
{"MinusPlus", 0x02213}, // MINUS-OR-PLUS SIGN
{"mlcp", 0x02ADB}, // TRANSVERSAL INTERSECTION
{"mldr", 0x02026}, // HORIZONTAL ELLIPSIS
{"mnplus", 0x02213}, // MINUS-OR-PLUS SIGN
{"models", 0x022A7}, // MODELS
{"Mopf", 0x1D544}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL M
{"mopf", 0x1D55E}, // MATHEMATICAL DOUBLE-STRUCK SMALL M
{"mp", 0x02213}, // MINUS-OR-PLUS SIGN
{"Mscr", 0x02133}, // SCRIPT CAPITAL M
{"mscr", 0x1D4C2}, // MATHEMATICAL SCRIPT SMALL M
{"mstpos", 0x0223E}, // INVERTED LAZY S
{"Mu", 0x0039C}, // GREEK CAPITAL LETTER MU
{"mu", 0x003BC}, // GREEK SMALL LETTER MU
{"multimap", 0x022B8}, // MULTIMAP
{"mumap", 0x022B8}, // MULTIMAP
{NULL, 0}
};
static NameId namesN[]={
{"nabla", 0x02207}, // NABLA
{"Nacute", 0x00143}, // LATIN CAPITAL LETTER N WITH ACUTE
{"nacute", 0x00144}, // LATIN SMALL LETTER N WITH ACUTE
// "nang", 0x02220;0x020D2}, // ANGLE with vertical line
{"nap", 0x02249}, // NOT ALMOST EQUAL TO
// "napE", 0x02A70;0x00338}, // APPROXIMATELY EQUAL OR EQUAL TO with slash
// "napid", 0x0224B;0x00338}, // TRIPLE TILDE with slash
{"napos", 0x00149}, // LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
{"napprox", 0x02249}, // NOT ALMOST EQUAL TO
{"natur", 0x0266E}, // MUSIC NATURAL SIGN
{"natural", 0x0266E}, // MUSIC NATURAL SIGN
{"naturals", 0x02115}, // DOUBLE-STRUCK CAPITAL N
{"nbsp", 0x000A0}, // NO-BREAK SPACE
// "nbump", 0x0224E;0x00338}, // GEOMETRICALLY EQUIVALENT TO with slash
// "nbumpe", 0x0224F;0x00338}, // DIFFERENCE BETWEEN with slash
{"ncap", 0x02A43}, // INTERSECTION WITH OVERBAR
{"Ncaron", 0x00147}, // LATIN CAPITAL LETTER N WITH CARON
{"ncaron", 0x00148}, // LATIN SMALL LETTER N WITH CARON
{"Ncedil", 0x00145}, // LATIN CAPITAL LETTER N WITH CEDILLA
{"ncedil", 0x00146}, // LATIN SMALL LETTER N WITH CEDILLA
{"ncong", 0x02247}, // NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
// "ncongdot", 0x02A6D;0x00338}, // CONGRUENT WITH DOT ABOVE with slash
{"ncup", 0x02A42}, // UNION WITH OVERBAR
{"Ncy", 0x0041D}, // CYRILLIC CAPITAL LETTER EN
{"ncy", 0x0043D}, // CYRILLIC SMALL LETTER EN
{"ndash", 0x02013}, // EN DASH
{"ne", 0x02260}, // NOT EQUAL TO
{"nearhk", 0x02924}, // NORTH EAST ARROW WITH HOOK
{"nearr", 0x02197}, // NORTH EAST ARROW
{"neArr", 0x021D7}, // NORTH EAST DOUBLE ARROW
{"nearrow", 0x02197}, // NORTH EAST ARROW
// "nedot", 0x02250;0x00338}, // APPROACHES THE LIMIT with slash
{"NegativeMediumSpace", 0x0200B}, // ZERO WIDTH SPACE
{"NegativeThickSpace", 0x0200B}, // ZERO WIDTH SPACE
{"NegativeThinSpace", 0x0200B}, // ZERO WIDTH SPACE
{"NegativeVeryThinSpace", 0x0200B}, // ZERO WIDTH SPACE
{"nequiv", 0x02262}, // NOT IDENTICAL TO
{"nesear", 0x02928}, // NORTH EAST ARROW AND SOUTH EAST ARROW
// "nesim", 0x02242;0x00338}, // MINUS TILDE with slash
{"NestedGreaterGreater", 0x0226B}, // MUCH GREATER-THAN
{"NestedLessLess", 0x0226A}, // MUCH LESS-THAN
{"NewLine", 0x0000A}, // LINE FEED (LF)
{"nexist", 0x02204}, // THERE DOES NOT EXIST
{"nexists", 0x02204}, // THERE DOES NOT EXIST
{"Nfr", 0x1D511}, // MATHEMATICAL FRAKTUR CAPITAL N
{"nfr", 0x1D52B}, // MATHEMATICAL FRAKTUR SMALL N
// "ngE", 0x02267;0x00338}, // GREATER-THAN OVER EQUAL TO with slash
{"nge", 0x02271}, // NEITHER GREATER-THAN NOR EQUAL TO
{"ngeq", 0x02271}, // NEITHER GREATER-THAN NOR EQUAL TO
// "ngeqq", 0x02267;0x00338}, // GREATER-THAN OVER EQUAL TO with slash
// "ngeqslant", 0x02A7E;0x00338}, // GREATER-THAN OR SLANTED EQUAL TO with slash
// "nges", 0x02A7E;0x00338}, // GREATER-THAN OR SLANTED EQUAL TO with slash
// "nGg", 0x022D9;0x00338}, // VERY MUCH GREATER-THAN with slash
{"Ngr", 0x0039D}, // GREEK CAPITAL LETTER NU
{"ngr", 0x003BD}, // GREEK SMALL LETTER NU
{"ngsim", 0x02275}, // NEITHER GREATER-THAN NOR EQUIVALENT TO
// "nGt", 0x0226B;0x020D2}, // MUCH GREATER THAN with vertical line
{"ngt", 0x0226F}, // NOT GREATER-THAN
{"ngtr", 0x0226F}, // NOT GREATER-THAN
// "nGtv", 0x0226B;0x00338}, // MUCH GREATER THAN with slash
{"nharr", 0x021AE}, // LEFT RIGHT ARROW WITH STROKE
{"nhArr", 0x021CE}, // LEFT RIGHT DOUBLE ARROW WITH STROKE
{"nhpar", 0x02AF2}, // PARALLEL WITH HORIZONTAL STROKE
{"ni", 0x0220B}, // CONTAINS AS MEMBER
{"nis", 0x022FC}, // SMALL CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE
{"nisd", 0x022FA}, // CONTAINS WITH LONG HORIZONTAL STROKE
{"niv", 0x0220B}, // CONTAINS AS MEMBER
{"NJcy", 0x0040A}, // CYRILLIC CAPITAL LETTER NJE
{"njcy", 0x0045A}, // CYRILLIC SMALL LETTER NJE
{"nlarr", 0x0219A}, // LEFTWARDS ARROW WITH STROKE
{"nlArr", 0x021CD}, // LEFTWARDS DOUBLE ARROW WITH STROKE
{"nldr", 0x02025}, // TWO DOT LEADER
// "nlE", 0x02266;0x00338}, // LESS-THAN OVER EQUAL TO with slash
{"nle", 0x02270}, // NEITHER LESS-THAN NOR EQUAL TO
{"nleftarrow", 0x0219A}, // LEFTWARDS ARROW WITH STROKE
{"nLeftarrow", 0x021CD}, // LEFTWARDS DOUBLE ARROW WITH STROKE
{"nleftrightarrow", 0x021AE}, // LEFT RIGHT ARROW WITH STROKE
{"nLeftrightarrow", 0x021CE}, // LEFT RIGHT DOUBLE ARROW WITH STROKE
{"nleq", 0x02270}, // NEITHER LESS-THAN NOR EQUAL TO
// "nleqq", 0x02266;0x00338}, // LESS-THAN OVER EQUAL TO with slash
// "nleqslant", 0x02A7D;0x00338}, // LESS-THAN OR SLANTED EQUAL TO with slash
// "nles", 0x02A7D;0x00338}, // LESS-THAN OR SLANTED EQUAL TO with slash
{"nless", 0x0226E}, // NOT LESS-THAN
// "nLl", 0x022D8;0x00338}, // VERY MUCH LESS-THAN with slash
{"nlsim", 0x02274}, // NEITHER LESS-THAN NOR EQUIVALENT TO
// "nLt", 0x0226A;0x020D2}, // MUCH LESS THAN with vertical line
{"nlt", 0x0226E}, // NOT LESS-THAN
{"nltri", 0x022EA}, // NOT NORMAL SUBGROUP OF
{"nltrie", 0x022EC}, // NOT NORMAL SUBGROUP OF OR EQUAL TO
// "nLtv", 0x0226A;0x00338}, // MUCH LESS THAN with slash
{"nmid", 0x02224}, // DOES NOT DIVIDE
{"NoBreak", 0x02060}, // WORD JOINER
{"NonBreakingSpace", 0x000A0}, // NO-BREAK SPACE
{"Nopf", 0x02115}, // DOUBLE-STRUCK CAPITAL N
{"nopf", 0x1D55F}, // MATHEMATICAL DOUBLE-STRUCK SMALL N
{"not", 0x000AC}, // NOT SIGN
{"Not", 0x02AEC}, // DOUBLE STROKE NOT SIGN
{"NotCongruent", 0x02262}, // NOT IDENTICAL TO
{"NotCupCap", 0x0226D}, // NOT EQUIVALENT TO
{"NotDoubleVerticalBar", 0x02226}, // NOT PARALLEL TO
{"NotElement", 0x02209}, // NOT AN ELEMENT OF
{"NotEqual", 0x02260}, // NOT EQUAL TO
// "NotEqualTilde", 0x02242;0x00338}, // MINUS TILDE with slash
{"NotExists", 0x02204}, // THERE DOES NOT EXIST
{"NotGreater", 0x0226F}, // NOT GREATER-THAN
{"NotGreaterEqual", 0x02271}, // NEITHER GREATER-THAN NOR EQUAL TO
// "NotGreaterFullEqual", 0x02267;0x00338}, // GREATER-THAN OVER EQUAL TO with slash
// "NotGreaterGreater", 0x0226B;0x00338}, // MUCH GREATER THAN with slash
{"NotGreaterLess", 0x02279}, // NEITHER GREATER-THAN NOR LESS-THAN
// "NotGreaterSlantEqual", 0x02A7E;0x00338}, // GREATER-THAN OR SLANTED EQUAL TO with slash
{"NotGreaterTilde", 0x02275}, // NEITHER GREATER-THAN NOR EQUIVALENT TO
// "NotHumpDownHump", 0x0224E;0x00338}, // GEOMETRICALLY EQUIVALENT TO with slash
// "NotHumpEqual", 0x0224F;0x00338}, // DIFFERENCE BETWEEN with slash
{"notin", 0x02209}, // NOT AN ELEMENT OF
// "notindot", 0x022F5;0x00338}, // ELEMENT OF WITH DOT ABOVE with slash
// "notinE", 0x022F9;0x00338}, // ELEMENT OF WITH TWO HORIZONTAL STROKES with slash
{"notinva", 0x02209}, // NOT AN ELEMENT OF
{"notinvb", 0x022F7}, // SMALL ELEMENT OF WITH OVERBAR
{"notinvc", 0x022F6}, // ELEMENT OF WITH OVERBAR
{"NotLeftTriangle", 0x022EA}, // NOT NORMAL SUBGROUP OF
// "NotLeftTriangleBar", 0x029CF;0x00338}, // LEFT TRIANGLE BESIDE VERTICAL BAR with slash
{"NotLeftTriangleEqual", 0x022EC}, // NOT NORMAL SUBGROUP OF OR EQUAL TO
{"NotLess", 0x0226E}, // NOT LESS-THAN
{"NotLessEqual", 0x02270}, // NEITHER LESS-THAN NOR EQUAL TO
{"NotLessGreater", 0x02278}, // NEITHER LESS-THAN NOR GREATER-THAN
// "NotLessLess", 0x0226A;0x00338}, // MUCH LESS THAN with slash
// "NotLessSlantEqual", 0x02A7D;0x00338}, // LESS-THAN OR SLANTED EQUAL TO with slash
{"NotLessTilde", 0x02274}, // NEITHER LESS-THAN NOR EQUIVALENT TO
// "NotNestedGreaterGreater", 0x02AA2;0x00338}, // DOUBLE NESTED GREATER-THAN with slash
// "NotNestedLessLess", 0x02AA1;0x00338}, // DOUBLE NESTED LESS-THAN with slash
{"notni", 0x0220C}, // DOES NOT CONTAIN AS MEMBER
{"notniva", 0x0220C}, // DOES NOT CONTAIN AS MEMBER
{"notnivb", 0x022FE}, // SMALL CONTAINS WITH OVERBAR
{"notnivc", 0x022FD}, // CONTAINS WITH OVERBAR
{"NotPrecedes", 0x02280}, // DOES NOT PRECEDE
// "NotPrecedesEqual", 0x02AAF;0x00338}, // PRECEDES ABOVE SINGLE-LINE EQUALS SIGN with slash
{"NotPrecedesSlantEqual", 0x022E0}, // DOES NOT PRECEDE OR EQUAL
{"NotReverseElement", 0x0220C}, // DOES NOT CONTAIN AS MEMBER
{"NotRightTriangle", 0x022EB}, // DOES NOT CONTAIN AS NORMAL SUBGROUP
// "NotRightTriangleBar", 0x029D0;0x00338}, // VERTICAL BAR BESIDE RIGHT TRIANGLE with slash
{"NotRightTriangleEqual", 0x022ED}, // DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
// "NotSquareSubset", 0x0228F;0x00338}, // SQUARE IMAGE OF with slash
{"NotSquareSubsetEqual", 0x022E2}, // NOT SQUARE IMAGE OF OR EQUAL TO
// "NotSquareSuperset", 0x02290;0x00338}, // SQUARE ORIGINAL OF with slash
{"NotSquareSupersetEqual", 0x022E3}, // NOT SQUARE ORIGINAL OF OR EQUAL TO
// "NotSubset", 0x02282;0x020D2}, // SUBSET OF with vertical line
{"NotSubsetEqual", 0x02288}, // NEITHER A SUBSET OF NOR EQUAL TO
{"NotSucceeds", 0x02281}, // DOES NOT SUCCEED
// "NotSucceedsEqual", 0x02AB0;0x00338}, // SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN with slash
{"NotSucceedsSlantEqual", 0x022E1}, // DOES NOT SUCCEED OR EQUAL
// "NotSucceedsTilde", 0x0227F;0x00338}, // SUCCEEDS OR EQUIVALENT TO with slash
// "NotSuperset", 0x02283;0x020D2}, // SUPERSET OF with vertical line
{"NotSupersetEqual", 0x02289}, // NEITHER A SUPERSET OF NOR EQUAL TO
{"NotTilde", 0x02241}, // NOT TILDE
{"NotTildeEqual", 0x02244}, // NOT ASYMPTOTICALLY EQUAL TO
{"NotTildeFullEqual", 0x02247}, // NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
{"NotTildeTilde", 0x02249}, // NOT ALMOST EQUAL TO
{"NotVerticalBar", 0x02224}, // DOES NOT DIVIDE
{"npar", 0x02226}, // NOT PARALLEL TO
{"nparallel", 0x02226}, // NOT PARALLEL TO
// "nparsl", 0x02AFD;0x020E5}, // DOUBLE SOLIDUS OPERATOR with reverse slash
// "npart", 0x02202;0x00338}, // PARTIAL DIFFERENTIAL with slash
{"npolint", 0x02A14}, // LINE INTEGRATION NOT INCLUDING THE POLE
{"npr", 0x02280}, // DOES NOT PRECEDE
{"nprcue", 0x022E0}, // DOES NOT PRECEDE OR EQUAL
// "npre", 0x02AAF;0x00338}, // PRECEDES ABOVE SINGLE-LINE EQUALS SIGN with slash
{"nprec", 0x02280}, // DOES NOT PRECEDE
// "npreceq", 0x02AAF;0x00338}, // PRECEDES ABOVE SINGLE-LINE EQUALS SIGN with slash
{"nrarr", 0x0219B}, // RIGHTWARDS ARROW WITH STROKE
{"nrArr", 0x021CF}, // RIGHTWARDS DOUBLE ARROW WITH STROKE
// "nrarrc", 0x02933;0x00338}, // WAVE ARROW POINTING DIRECTLY RIGHT with slash
// "nrarrw", 0x0219D;0x00338}, // RIGHTWARDS WAVE ARROW with slash
{"nrightarrow", 0x0219B}, // RIGHTWARDS ARROW WITH STROKE
{"nRightarrow", 0x021CF}, // RIGHTWARDS DOUBLE ARROW WITH STROKE
{"nrtri", 0x022EB}, // DOES NOT CONTAIN AS NORMAL SUBGROUP
{"nrtrie", 0x022ED}, // DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
{"nsc", 0x02281}, // DOES NOT SUCCEED
{"nsccue", 0x022E1}, // DOES NOT SUCCEED OR EQUAL
// "nsce", 0x02AB0;0x00338}, // SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN with slash
{"Nscr", 0x1D4A9}, // MATHEMATICAL SCRIPT CAPITAL N
{"nscr", 0x1D4C3}, // MATHEMATICAL SCRIPT SMALL N
{"nshortmid", 0x02224}, // DOES NOT DIVIDE
{"nshortparallel", 0x02226}, // NOT PARALLEL TO
{"nsim", 0x02241}, // NOT TILDE
{"nsime", 0x02244}, // NOT ASYMPTOTICALLY EQUAL TO
{"nsimeq", 0x02244}, // NOT ASYMPTOTICALLY EQUAL TO
{"nsmid", 0x02224}, // DOES NOT DIVIDE
{"nspar", 0x02226}, // NOT PARALLEL TO
{"nsqsube", 0x022E2}, // NOT SQUARE IMAGE OF OR EQUAL TO
{"nsqsupe", 0x022E3}, // NOT SQUARE ORIGINAL OF OR EQUAL TO
{"nsub", 0x02284}, // NOT A SUBSET OF
{"nsube", 0x02288}, // NEITHER A SUBSET OF NOR EQUAL TO
// "nsubE", 0x02AC5;0x00338}, // SUBSET OF ABOVE EQUALS SIGN with slash
// "nsubset", 0x02282;0x020D2}, // SUBSET OF with vertical line
{"nsubseteq", 0x02288}, // NEITHER A SUBSET OF NOR EQUAL TO
// "nsubseteqq", 0x02AC5;0x00338}, // SUBSET OF ABOVE EQUALS SIGN with slash
{"nsucc", 0x02281}, // DOES NOT SUCCEED
// "nsucceq", 0x02AB0;0x00338}, // SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN with slash
{"nsup", 0x02285}, // NOT A SUPERSET OF
{"nsupe", 0x02289}, // NEITHER A SUPERSET OF NOR EQUAL TO
// "nsupE", 0x02AC6;0x00338}, // SUPERSET OF ABOVE EQUALS SIGN with slash
// "nsupset", 0x02283;0x020D2}, // SUPERSET OF with vertical line
{"nsupseteq", 0x02289}, // NEITHER A SUPERSET OF NOR EQUAL TO
// "nsupseteqq", 0x02AC6;0x00338}, // SUPERSET OF ABOVE EQUALS SIGN with slash
{"ntgl", 0x02279}, // NEITHER GREATER-THAN NOR LESS-THAN
{"Ntilde", 0x000D1}, // LATIN CAPITAL LETTER N WITH TILDE
{"ntilde", 0x000F1}, // LATIN SMALL LETTER N WITH TILDE
{"ntlg", 0x02278}, // NEITHER LESS-THAN NOR GREATER-THAN
{"ntriangleleft", 0x022EA}, // NOT NORMAL SUBGROUP OF
{"ntrianglelefteq", 0x022EC}, // NOT NORMAL SUBGROUP OF OR EQUAL TO
{"ntriangleright", 0x022EB}, // DOES NOT CONTAIN AS NORMAL SUBGROUP
{"ntrianglerighteq", 0x022ED}, // DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
{"Nu", 0x0039D}, // GREEK CAPITAL LETTER NU
{"nu", 0x003BD}, // GREEK SMALL LETTER NU
{"num", 0x00023}, // NUMBER SIGN
{"numero", 0x02116}, // NUMERO SIGN
{"numsp", 0x02007}, // FIGURE SPACE
// "nvap", 0x0224D;0x020D2}, // EQUIVALENT TO with vertical line
{"nvdash", 0x022AC}, // DOES NOT PROVE
{"nvDash", 0x022AD}, // NOT TRUE
{"nVdash", 0x022AE}, // DOES NOT FORCE
{"nVDash", 0x022AF}, // NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
// "nvge", 0x02265;0x020D2}, // GREATER-THAN OR EQUAL TO with vertical line
// "nvgt", 0x0003E;0x020D2}, // GREATER-THAN SIGN with vertical line
{"nvHarr", 0x02904}, // LEFT RIGHT DOUBLE ARROW WITH VERTICAL STROKE
{"nvinfin", 0x029DE}, // INFINITY NEGATED WITH VERTICAL BAR
{"nvlArr", 0x02902}, // LEFTWARDS DOUBLE ARROW WITH VERTICAL STROKE
// "nvle", 0x02264;0x020D2}, // LESS-THAN OR EQUAL TO with vertical line
// "nvlt", 0x0003C;0x020D2}, // LESS-THAN SIGN with vertical line
// "nvltrie", 0x022B4;0x020D2}, // NORMAL SUBGROUP OF OR EQUAL TO with vertical line
{"nvrArr", 0x02903}, // RIGHTWARDS DOUBLE ARROW WITH VERTICAL STROKE
// "nvrtrie", 0x022B5;0x020D2}, // CONTAINS AS NORMAL SUBGROUP OR EQUAL TO with vertical line
// "nvsim", 0x0223C;0x020D2}, // TILDE OPERATOR with vertical line
{"nwarhk", 0x02923}, // NORTH WEST ARROW WITH HOOK
{"nwarr", 0x02196}, // NORTH WEST ARROW
{"nwArr", 0x021D6}, // NORTH WEST DOUBLE ARROW
{"nwarrow", 0x02196}, // NORTH WEST ARROW
{"nwnear", 0x02927}, // NORTH WEST ARROW AND NORTH EAST ARROW
{NULL, 0}
};
static NameId namesO[]={
{"Oacgr", 0x0038C}, // GREEK CAPITAL LETTER OMICRON WITH TONOS
{"oacgr", 0x003CC}, // GREEK SMALL LETTER OMICRON WITH TONOS
{"Oacute", 0x000D3}, // LATIN CAPITAL LETTER O WITH ACUTE
{"oacute", 0x000F3}, // LATIN SMALL LETTER O WITH ACUTE
{"oast", 0x0229B}, // CIRCLED ASTERISK OPERATOR
{"ocir", 0x0229A}, // CIRCLED RING OPERATOR
{"Ocirc", 0x000D4}, // LATIN CAPITAL LETTER O WITH CIRCUMFLEX
{"ocirc", 0x000F4}, // LATIN SMALL LETTER O WITH CIRCUMFLEX
{"Ocy", 0x0041E}, // CYRILLIC CAPITAL LETTER O
{"ocy", 0x0043E}, // CYRILLIC SMALL LETTER O
{"odash", 0x0229D}, // CIRCLED DASH
{"Odblac", 0x00150}, // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
{"odblac", 0x00151}, // LATIN SMALL LETTER O WITH DOUBLE ACUTE
{"odiv", 0x02A38}, // CIRCLED DIVISION SIGN
{"odot", 0x02299}, // CIRCLED DOT OPERATOR
{"odsold", 0x029BC}, // CIRCLED ANTICLOCKWISE-ROTATED DIVISION SIGN
{"OElig", 0x00152}, // LATIN CAPITAL LIGATURE OE
{"oelig", 0x00153}, // LATIN SMALL LIGATURE OE
{"ofcir", 0x029BF}, // CIRCLED BULLET
{"Ofr", 0x1D512}, // MATHEMATICAL FRAKTUR CAPITAL O
{"ofr", 0x1D52C}, // MATHEMATICAL FRAKTUR SMALL O
{"ogon", 0x002DB}, // OGONEK
{"Ogr", 0x0039F}, // GREEK CAPITAL LETTER OMICRON
{"ogr", 0x003BF}, // GREEK SMALL LETTER OMICRON
{"Ograve", 0x000D2}, // LATIN CAPITAL LETTER O WITH GRAVE
{"ograve", 0x000F2}, // LATIN SMALL LETTER O WITH GRAVE
{"ogt", 0x029C1}, // CIRCLED GREATER-THAN
{"OHacgr", 0x0038F}, // GREEK CAPITAL LETTER OMEGA WITH TONOS
{"ohacgr", 0x003CE}, // GREEK SMALL LETTER OMEGA WITH TONOS
{"ohbar", 0x029B5}, // CIRCLE WITH HORIZONTAL BAR
{"OHgr", 0x003A9}, // GREEK CAPITAL LETTER OMEGA
{"ohgr", 0x003C9}, // GREEK SMALL LETTER OMEGA
{"ohm", 0x003A9}, // GREEK CAPITAL LETTER OMEGA
{"oint", 0x0222E}, // CONTOUR INTEGRAL
{"olarr", 0x021BA}, // ANTICLOCKWISE OPEN CIRCLE ARROW
{"olcir", 0x029BE}, // CIRCLED WHITE BULLET
{"olcross", 0x029BB}, // CIRCLE WITH SUPERIMPOSED X
{"oline", 0x0203E}, // OVERLINE
{"olt", 0x029C0}, // CIRCLED LESS-THAN
{"Omacr", 0x0014C}, // LATIN CAPITAL LETTER O WITH MACRON
{"omacr", 0x0014D}, // LATIN SMALL LETTER O WITH MACRON
{"Omega", 0x003A9}, // GREEK CAPITAL LETTER OMEGA
{"omega", 0x003C9}, // GREEK SMALL LETTER OMEGA
{"Omicron", 0x0039F}, // GREEK CAPITAL LETTER OMICRON
{"omicron", 0x003BF}, // GREEK SMALL LETTER OMICRON
{"omid", 0x029B6}, // CIRCLED VERTICAL BAR
{"ominus", 0x02296}, // CIRCLED MINUS
{"Oopf", 0x1D546}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL O
{"oopf", 0x1D560}, // MATHEMATICAL DOUBLE-STRUCK SMALL O
{"opar", 0x029B7}, // CIRCLED PARALLEL
{"OpenCurlyDoubleQuote", 0x0201C}, // LEFT DOUBLE QUOTATION MARK
{"OpenCurlyQuote", 0x02018}, // LEFT SINGLE QUOTATION MARK
{"operp", 0x029B9}, // CIRCLED PERPENDICULAR
{"oplus", 0x02295}, // CIRCLED PLUS
{"or", 0x02228}, // LOGICAL OR
{"Or", 0x02A54}, // DOUBLE LOGICAL OR
{"orarr", 0x021BB}, // CLOCKWISE OPEN CIRCLE ARROW
{"ord", 0x02A5D}, // LOGICAL OR WITH HORIZONTAL DASH
{"order", 0x02134}, // SCRIPT SMALL O
{"orderof", 0x02134}, // SCRIPT SMALL O
{"ordf", 0x000AA}, // FEMININE ORDINAL INDICATOR
{"ordm", 0x000BA}, // MASCULINE ORDINAL INDICATOR
{"origof", 0x022B6}, // ORIGINAL OF
{"oror", 0x02A56}, // TWO INTERSECTING LOGICAL OR
{"orslope", 0x02A57}, // SLOPING LARGE OR
{"orv", 0x02A5B}, // LOGICAL OR WITH MIDDLE STEM
{"oS", 0x024C8}, // CIRCLED LATIN CAPITAL LETTER S
{"oscr", 0x02134}, // SCRIPT SMALL O
{"Oscr", 0x1D4AA}, // MATHEMATICAL SCRIPT CAPITAL O
{"Oslash", 0x000D8}, // LATIN CAPITAL LETTER O WITH STROKE
{"oslash", 0x000F8}, // LATIN SMALL LETTER O WITH STROKE
{"osol", 0x02298}, // CIRCLED DIVISION SLASH
{"Otilde", 0x000D5}, // LATIN CAPITAL LETTER O WITH TILDE
{"otilde", 0x000F5}, // LATIN SMALL LETTER O WITH TILDE
{"otimes", 0x02297}, // CIRCLED TIMES
{"Otimes", 0x02A37}, // MULTIPLICATION SIGN IN DOUBLE CIRCLE
{"otimesas", 0x02A36}, // CIRCLED MULTIPLICATION SIGN WITH CIRCUMFLEX ACCENT
{"Ouml", 0x000D6}, // LATIN CAPITAL LETTER O WITH DIAERESIS
{"ouml", 0x000F6}, // LATIN SMALL LETTER O WITH DIAERESIS
{"ovbar", 0x0233D}, // APL FUNCTIONAL SYMBOL CIRCLE STILE
{"OverBar", 0x0203E}, // OVERLINE
{"OverBrace", 0x023DE}, // TOP CURLY BRACKET
{"OverBracket", 0x023B4}, // TOP SQUARE BRACKET
{"OverParenthesis", 0x023DC}, // TOP PARENTHESIS
{NULL, 0}
};
static NameId namesP[]={
{"par", 0x02225}, // PARALLEL TO
{"para", 0x000B6}, // PILCROW SIGN
{"parallel", 0x02225}, // PARALLEL TO
{"parsim", 0x02AF3}, // PARALLEL WITH TILDE OPERATOR
{"parsl", 0x02AFD}, // DOUBLE SOLIDUS OPERATOR
{"part", 0x02202}, // PARTIAL DIFFERENTIAL
{"PartialD", 0x02202}, // PARTIAL DIFFERENTIAL
{"Pcy", 0x0041F}, // CYRILLIC CAPITAL LETTER PE
{"pcy", 0x0043F}, // CYRILLIC SMALL LETTER PE
{"percnt", 0x00025}, // PERCENT SIGN
{"period", 0x0002E}, // FULL STOP
{"permil", 0x02030}, // PER MILLE SIGN
{"perp", 0x022A5}, // UP TACK
{"pertenk", 0x02031}, // PER TEN THOUSAND SIGN
{"Pfr", 0x1D513}, // MATHEMATICAL FRAKTUR CAPITAL P
{"pfr", 0x1D52D}, // MATHEMATICAL FRAKTUR SMALL P
{"Pgr", 0x003A0}, // GREEK CAPITAL LETTER PI
{"pgr", 0x003C0}, // GREEK SMALL LETTER PI
{"PHgr", 0x003A6}, // GREEK CAPITAL LETTER PHI
{"phgr", 0x003C6}, // GREEK SMALL LETTER PHI
{"Phi", 0x003A6}, // GREEK CAPITAL LETTER PHI
{"phi", 0x003C6}, // GREEK SMALL LETTER PHI
{"phiv", 0x003D5}, // GREEK PHI SYMBOL
{"phmmat", 0x02133}, // SCRIPT CAPITAL M
{"phone", 0x0260E}, // BLACK TELEPHONE
{"Pi", 0x003A0}, // GREEK CAPITAL LETTER PI
{"pi", 0x003C0}, // GREEK SMALL LETTER PI
{"pitchfork", 0x022D4}, // PITCHFORK
{"piv", 0x003D6}, // GREEK PI SYMBOL
{"planck", 0x0210F}, // PLANCK CONSTANT OVER TWO PI
{"planckh", 0x0210E}, // PLANCK CONSTANT
{"plankv", 0x0210F}, // PLANCK CONSTANT OVER TWO PI
{"plus", 0x0002B}, // PLUS SIGN
{"plusacir", 0x02A23}, // PLUS SIGN WITH CIRCUMFLEX ACCENT ABOVE
{"plusb", 0x0229E}, // SQUARED PLUS
{"pluscir", 0x02A22}, // PLUS SIGN WITH SMALL CIRCLE ABOVE
{"plusdo", 0x02214}, // DOT PLUS
{"plusdu", 0x02A25}, // PLUS SIGN WITH DOT BELOW
{"pluse", 0x02A72}, // PLUS SIGN ABOVE EQUALS SIGN
{"PlusMinus", 0x000B1}, // PLUS-MINUS SIGN
{"plusmn", 0x000B1}, // PLUS-MINUS SIGN
{"plussim", 0x02A26}, // PLUS SIGN WITH TILDE BELOW
{"plustwo", 0x02A27}, // PLUS SIGN WITH SUBSCRIPT TWO
{"pm", 0x000B1}, // PLUS-MINUS SIGN
{"Poincareplane", 0x0210C}, // BLACK-LETTER CAPITAL H
{"pointint", 0x02A15}, // INTEGRAL AROUND A POINT OPERATOR
{"Popf", 0x02119}, // DOUBLE-STRUCK CAPITAL P
{"popf", 0x1D561}, // MATHEMATICAL DOUBLE-STRUCK SMALL P
{"pound", 0x000A3}, // POUND SIGN
{"pr", 0x0227A}, // PRECEDES
{"Pr", 0x02ABB}, // DOUBLE PRECEDES
{"prap", 0x02AB7}, // PRECEDES ABOVE ALMOST EQUAL TO
{"prcue", 0x0227C}, // PRECEDES OR EQUAL TO
{"pre", 0x02AAF}, // PRECEDES ABOVE SINGLE-LINE EQUALS SIGN
{"prE", 0x02AB3}, // PRECEDES ABOVE EQUALS SIGN
{"prec", 0x0227A}, // PRECEDES
{"precapprox", 0x02AB7}, // PRECEDES ABOVE ALMOST EQUAL TO
{"preccurlyeq", 0x0227C}, // PRECEDES OR EQUAL TO
{"Precedes", 0x0227A}, // PRECEDES
{"PrecedesEqual", 0x02AAF}, // PRECEDES ABOVE SINGLE-LINE EQUALS SIGN
{"PrecedesSlantEqual", 0x0227C}, // PRECEDES OR EQUAL TO
{"PrecedesTilde", 0x0227E}, // PRECEDES OR EQUIVALENT TO
{"preceq", 0x02AAF}, // PRECEDES ABOVE SINGLE-LINE EQUALS SIGN
{"precnapprox", 0x02AB9}, // PRECEDES ABOVE NOT ALMOST EQUAL TO
{"precneqq", 0x02AB5}, // PRECEDES ABOVE NOT EQUAL TO
{"precnsim", 0x022E8}, // PRECEDES BUT NOT EQUIVALENT TO
{"precsim", 0x0227E}, // PRECEDES OR EQUIVALENT TO
{"prime", 0x02032}, // PRIME
{"Prime", 0x02033}, // DOUBLE PRIME
{"primes", 0x02119}, // DOUBLE-STRUCK CAPITAL P
{"prnap", 0x02AB9}, // PRECEDES ABOVE NOT ALMOST EQUAL TO
{"prnE", 0x02AB5}, // PRECEDES ABOVE NOT EQUAL TO
{"prnsim", 0x022E8}, // PRECEDES BUT NOT EQUIVALENT TO
{"prod", 0x0220F}, // N-ARY PRODUCT
{"Product", 0x0220F}, // N-ARY PRODUCT
{"profalar", 0x0232E}, // ALL AROUND-PROFILE
{"profline", 0x02312}, // ARC
{"profsurf", 0x02313}, // SEGMENT
{"prop", 0x0221D}, // PROPORTIONAL TO
{"Proportion", 0x02237}, // PROPORTION
{"Proportional", 0x0221D}, // PROPORTIONAL TO
{"propto", 0x0221D}, // PROPORTIONAL TO
{"prsim", 0x0227E}, // PRECEDES OR EQUIVALENT TO
{"prurel", 0x022B0}, // PRECEDES UNDER RELATION
{"Pscr", 0x1D4AB}, // MATHEMATICAL SCRIPT CAPITAL P
{"pscr", 0x1D4C5}, // MATHEMATICAL SCRIPT SMALL P
{"PSgr", 0x003A8}, // GREEK CAPITAL LETTER PSI
{"psgr", 0x003C8}, // GREEK SMALL LETTER PSI
{"Psi", 0x003A8}, // GREEK CAPITAL LETTER PSI
{"psi", 0x003C8}, // GREEK SMALL LETTER PSI
{"puncsp", 0x02008}, // PUNCTUATION SPACE
{NULL, 0}
};
static NameId namesQ[]={
{"Qfr", 0x1D514}, // MATHEMATICAL FRAKTUR CAPITAL Q
{"qfr", 0x1D52E}, // MATHEMATICAL FRAKTUR SMALL Q
{"qint", 0x02A0C}, // QUADRUPLE INTEGRAL OPERATOR
{"Qopf", 0x0211A}, // DOUBLE-STRUCK CAPITAL Q
{"qopf", 0x1D562}, // MATHEMATICAL DOUBLE-STRUCK SMALL Q
{"qprime", 0x02057}, // QUADRUPLE PRIME
{"Qscr", 0x1D4AC}, // MATHEMATICAL SCRIPT CAPITAL Q
{"qscr", 0x1D4C6}, // MATHEMATICAL SCRIPT SMALL Q
{"quaternions", 0x0210D}, // DOUBLE-STRUCK CAPITAL H
{"quatint", 0x02A16}, // QUATERNION INTEGRAL OPERATOR
{"quest", 0x0003F}, // QUESTION MARK
{"questeq", 0x0225F}, // QUESTIONED EQUAL TO
{"quot", 0x00022}, // QUOTATION MARK
{"QUOT", 0x00022}, // QUOTATION MARK
{NULL, 0}
};
static NameId namesR[]={
{"rAarr", 0x021DB}, // RIGHTWARDS TRIPLE ARROW
// "race", 0x0223D;0x00331}, // REVERSED TILDE with underline
{"Racute", 0x00154}, // LATIN CAPITAL LETTER R WITH ACUTE
{"racute", 0x00155}, // LATIN SMALL LETTER R WITH ACUTE
{"radic", 0x0221A}, // SQUARE ROOT
{"raemptyv", 0x029B3}, // EMPTY SET WITH RIGHT ARROW ABOVE
{"rang", 0x027E9}, // MATHEMATICAL RIGHT ANGLE BRACKET
{"Rang", 0x027EB}, // MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET
{"rangd", 0x02992}, // RIGHT ANGLE BRACKET WITH DOT
{"range", 0x029A5}, // REVERSED ANGLE WITH UNDERBAR
{"rangle", 0x027E9}, // MATHEMATICAL RIGHT ANGLE BRACKET
{"raquo", 0x000BB}, // RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
{"rarr", 0x02192}, // RIGHTWARDS ARROW
{"Rarr", 0x021A0}, // RIGHTWARDS TWO HEADED ARROW
{"rArr", 0x021D2}, // RIGHTWARDS DOUBLE ARROW
{"rarrap", 0x02975}, // RIGHTWARDS ARROW ABOVE ALMOST EQUAL TO
{"rarrb", 0x021E5}, // RIGHTWARDS ARROW TO BAR
{"rarrbfs", 0x02920}, // RIGHTWARDS ARROW FROM BAR TO BLACK DIAMOND
{"rarrc", 0x02933}, // WAVE ARROW POINTING DIRECTLY RIGHT
{"rarrfs", 0x0291E}, // RIGHTWARDS ARROW TO BLACK DIAMOND
{"rarrhk", 0x021AA}, // RIGHTWARDS ARROW WITH HOOK
{"rarrlp", 0x021AC}, // RIGHTWARDS ARROW WITH LOOP
{"rarrpl", 0x02945}, // RIGHTWARDS ARROW WITH PLUS BELOW
{"rarrsim", 0x02974}, // RIGHTWARDS ARROW ABOVE TILDE OPERATOR
{"rarrtl", 0x021A3}, // RIGHTWARDS ARROW WITH TAIL
{"Rarrtl", 0x02916}, // RIGHTWARDS TWO-HEADED ARROW WITH TAIL
{"rarrw", 0x0219D}, // RIGHTWARDS WAVE ARROW
{"ratail", 0x0291A}, // RIGHTWARDS ARROW-TAIL
{"rAtail", 0x0291C}, // RIGHTWARDS DOUBLE ARROW-TAIL
{"ratio", 0x02236}, // RATIO
{"rationals", 0x0211A}, // DOUBLE-STRUCK CAPITAL Q
{"rbarr", 0x0290D}, // RIGHTWARDS DOUBLE DASH ARROW
{"rBarr", 0x0290F}, // RIGHTWARDS TRIPLE DASH ARROW
{"RBarr", 0x02910}, // RIGHTWARDS TWO-HEADED TRIPLE DASH ARROW
{"rbbrk", 0x02773}, // LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT
{"rbrace", 0x0007D}, // RIGHT CURLY BRACKET
{"rbrack", 0x0005D}, // RIGHT SQUARE BRACKET
{"rbrke", 0x0298C}, // RIGHT SQUARE BRACKET WITH UNDERBAR
{"rbrksld", 0x0298E}, // RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER
{"rbrkslu", 0x02990}, // RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER
{"Rcaron", 0x00158}, // LATIN CAPITAL LETTER R WITH CARON
{"rcaron", 0x00159}, // LATIN SMALL LETTER R WITH CARON
{"Rcedil", 0x00156}, // LATIN CAPITAL LETTER R WITH CEDILLA
{"rcedil", 0x00157}, // LATIN SMALL LETTER R WITH CEDILLA
{"rceil", 0x02309}, // RIGHT CEILING
{"rcub", 0x0007D}, // RIGHT CURLY BRACKET
{"Rcy", 0x00420}, // CYRILLIC CAPITAL LETTER ER
{"rcy", 0x00440}, // CYRILLIC SMALL LETTER ER
{"rdca", 0x02937}, // ARROW POINTING DOWNWARDS THEN CURVING RIGHTWARDS
{"rdldhar", 0x02969}, // RIGHTWARDS HARPOON WITH BARB DOWN ABOVE LEFTWARDS HARPOON WITH BARB DOWN
{"rdquo", 0x0201D}, // RIGHT DOUBLE QUOTATION MARK
{"rdquor", 0x0201D}, // RIGHT DOUBLE QUOTATION MARK
{"rdsh", 0x021B3}, // DOWNWARDS ARROW WITH TIP RIGHTWARDS
{"Re", 0x0211C}, // BLACK-LETTER CAPITAL R
{"real", 0x0211C}, // BLACK-LETTER CAPITAL R
{"realine", 0x0211B}, // SCRIPT CAPITAL R
{"realpart", 0x0211C}, // BLACK-LETTER CAPITAL R
{"reals", 0x0211D}, // DOUBLE-STRUCK CAPITAL R
{"rect", 0x025AD}, // WHITE RECTANGLE
{"reg", 0x000AE}, // REGISTERED SIGN
{"REG", 0x000AE}, // REGISTERED SIGN
{"ReverseElement", 0x0220B}, // CONTAINS AS MEMBER
{"ReverseEquilibrium", 0x021CB}, // LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
{"ReverseUpEquilibrium", 0x0296F}, // DOWNWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT
{"rfisht", 0x0297D}, // RIGHT FISH TAIL
{"rfloor", 0x0230B}, // RIGHT FLOOR
{"Rfr", 0x0211C}, // BLACK-LETTER CAPITAL R
{"rfr", 0x1D52F}, // MATHEMATICAL FRAKTUR SMALL R
{"Rgr", 0x003A1}, // GREEK CAPITAL LETTER RHO
{"rgr", 0x003C1}, // GREEK SMALL LETTER RHO
{"rHar", 0x02964}, // RIGHTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB DOWN
{"rhard", 0x021C1}, // RIGHTWARDS HARPOON WITH BARB DOWNWARDS
{"rharu", 0x021C0}, // RIGHTWARDS HARPOON WITH BARB UPWARDS
{"rharul", 0x0296C}, // RIGHTWARDS HARPOON WITH BARB UP ABOVE LONG DASH
{"Rho", 0x003A1}, // GREEK CAPITAL LETTER RHO
{"rho", 0x003C1}, // GREEK SMALL LETTER RHO
{"rhov", 0x003F1}, // GREEK RHO SYMBOL
{"RightAngleBracket", 0x027E9}, // MATHEMATICAL RIGHT ANGLE BRACKET
{"rightarrow", 0x02192}, // RIGHTWARDS ARROW
{"RightArrow", 0x02192}, // RIGHTWARDS ARROW
{"Rightarrow", 0x021D2}, // RIGHTWARDS DOUBLE ARROW
{"RightArrowBar", 0x021E5}, // RIGHTWARDS ARROW TO BAR
{"RightArrowLeftArrow", 0x021C4}, // RIGHTWARDS ARROW OVER LEFTWARDS ARROW
{"rightarrowtail", 0x021A3}, // RIGHTWARDS ARROW WITH TAIL
{"RightCeiling", 0x02309}, // RIGHT CEILING
{"RightDoubleBracket", 0x027E7}, // MATHEMATICAL RIGHT WHITE SQUARE BRACKET
{"RightDownTeeVector", 0x0295D}, // DOWNWARDS HARPOON WITH BARB RIGHT FROM BAR
{"RightDownVector", 0x021C2}, // DOWNWARDS HARPOON WITH BARB RIGHTWARDS
{"RightDownVectorBar", 0x02955}, // DOWNWARDS HARPOON WITH BARB RIGHT TO BAR
{"RightFloor", 0x0230B}, // RIGHT FLOOR
{"rightharpoondown", 0x021C1}, // RIGHTWARDS HARPOON WITH BARB DOWNWARDS
{"rightharpoonup", 0x021C0}, // RIGHTWARDS HARPOON WITH BARB UPWARDS
{"rightleftarrows", 0x021C4}, // RIGHTWARDS ARROW OVER LEFTWARDS ARROW
{"rightleftharpoons", 0x021CC}, // RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
{"rightrightarrows", 0x021C9}, // RIGHTWARDS PAIRED ARROWS
{"rightsquigarrow", 0x0219D}, // RIGHTWARDS WAVE ARROW
{"RightTee", 0x022A2}, // RIGHT TACK
{"RightTeeArrow", 0x021A6}, // RIGHTWARDS ARROW FROM BAR
{"RightTeeVector", 0x0295B}, // RIGHTWARDS HARPOON WITH BARB UP FROM BAR
{"rightthreetimes", 0x022CC}, // RIGHT SEMIDIRECT PRODUCT
{"RightTriangle", 0x022B3}, // CONTAINS AS NORMAL SUBGROUP
{"RightTriangleBar", 0x029D0}, // VERTICAL BAR BESIDE RIGHT TRIANGLE
{"RightTriangleEqual", 0x022B5}, // CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
{"RightUpDownVector", 0x0294F}, // UP BARB RIGHT DOWN BARB RIGHT HARPOON
{"RightUpTeeVector", 0x0295C}, // UPWARDS HARPOON WITH BARB RIGHT FROM BAR
{"RightUpVector", 0x021BE}, // UPWARDS HARPOON WITH BARB RIGHTWARDS
{"RightUpVectorBar", 0x02954}, // UPWARDS HARPOON WITH BARB RIGHT TO BAR
{"RightVector", 0x021C0}, // RIGHTWARDS HARPOON WITH BARB UPWARDS
{"RightVectorBar", 0x02953}, // RIGHTWARDS HARPOON WITH BARB UP TO BAR
{"ring", 0x002DA}, // RING ABOVE
{"risingdotseq", 0x02253}, // IMAGE OF OR APPROXIMATELY EQUAL TO
{"rlarr", 0x021C4}, // RIGHTWARDS ARROW OVER LEFTWARDS ARROW
{"rlhar", 0x021CC}, // RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
{"rlm", 0x0200F}, // RIGHT-TO-LEFT MARK
{"rmoust", 0x023B1}, // UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION
{"rmoustache", 0x023B1}, // UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION
{"rnmid", 0x02AEE}, // DOES NOT DIVIDE WITH REVERSED NEGATION SLASH
{"roang", 0x027ED}, // MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET
{"roarr", 0x021FE}, // RIGHTWARDS OPEN-HEADED ARROW
{"robrk", 0x027E7}, // MATHEMATICAL RIGHT WHITE SQUARE BRACKET
{"ropar", 0x02986}, // RIGHT WHITE PARENTHESIS
{"Ropf", 0x0211D}, // DOUBLE-STRUCK CAPITAL R
{"ropf", 0x1D563}, // MATHEMATICAL DOUBLE-STRUCK SMALL R
{"roplus", 0x02A2E}, // PLUS SIGN IN RIGHT HALF CIRCLE
{"rotimes", 0x02A35}, // MULTIPLICATION SIGN IN RIGHT HALF CIRCLE
{"RoundImplies", 0x02970}, // RIGHT DOUBLE ARROW WITH ROUNDED HEAD
{"rpar", 0x00029}, // RIGHT PARENTHESIS
{"rpargt", 0x02994}, // RIGHT ARC GREATER-THAN BRACKET
{"rppolint", 0x02A12}, // LINE INTEGRATION WITH RECTANGULAR PATH AROUND POLE
{"rrarr", 0x021C9}, // RIGHTWARDS PAIRED ARROWS
{"Rrightarrow", 0x021DB}, // RIGHTWARDS TRIPLE ARROW
{"rsaquo", 0x0203A}, // SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
{"Rscr", 0x0211B}, // SCRIPT CAPITAL R
{"rscr", 0x1D4C7}, // MATHEMATICAL SCRIPT SMALL R
{"rsh", 0x021B1}, // UPWARDS ARROW WITH TIP RIGHTWARDS
{"Rsh", 0x021B1}, // UPWARDS ARROW WITH TIP RIGHTWARDS
{"rsqb", 0x0005D}, // RIGHT SQUARE BRACKET
{"rsquo", 0x02019}, // RIGHT SINGLE QUOTATION MARK
{"rsquor", 0x02019}, // RIGHT SINGLE QUOTATION MARK
{"rthree", 0x022CC}, // RIGHT SEMIDIRECT PRODUCT
{"rtimes", 0x022CA}, // RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT
{"rtri", 0x025B9}, // WHITE RIGHT-POINTING SMALL TRIANGLE
{"rtrie", 0x022B5}, // CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
{"rtrif", 0x025B8}, // BLACK RIGHT-POINTING SMALL TRIANGLE
{"rtriltri", 0x029CE}, // RIGHT TRIANGLE ABOVE LEFT TRIANGLE
{"RuleDelayed", 0x029F4}, // RULE-DELAYED
{"ruluhar", 0x02968}, // RIGHTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB UP
{"rx", 0x0211E}, // PRESCRIPTION TAKE
{NULL, 0}
};
static NameId namesS[]={
{"Sacute", 0x0015A}, // LATIN CAPITAL LETTER S WITH ACUTE
{"sacute", 0x0015B}, // LATIN SMALL LETTER S WITH ACUTE
{"sbquo", 0x0201A}, // SINGLE LOW-9 QUOTATION MARK
{"sc", 0x0227B}, // SUCCEEDS
{"Sc", 0x02ABC}, // DOUBLE SUCCEEDS
{"scap", 0x02AB8}, // SUCCEEDS ABOVE ALMOST EQUAL TO
{"Scaron", 0x00160}, // LATIN CAPITAL LETTER S WITH CARON
{"scaron", 0x00161}, // LATIN SMALL LETTER S WITH CARON
{"sccue", 0x0227D}, // SUCCEEDS OR EQUAL TO
{"sce", 0x02AB0}, // SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN
{"scE", 0x02AB4}, // SUCCEEDS ABOVE EQUALS SIGN
{"Scedil", 0x0015E}, // LATIN CAPITAL LETTER S WITH CEDILLA
{"scedil", 0x0015F}, // LATIN SMALL LETTER S WITH CEDILLA
{"Scirc", 0x0015C}, // LATIN CAPITAL LETTER S WITH CIRCUMFLEX
{"scirc", 0x0015D}, // LATIN SMALL LETTER S WITH CIRCUMFLEX
{"scnap", 0x02ABA}, // SUCCEEDS ABOVE NOT ALMOST EQUAL TO
{"scnE", 0x02AB6}, // SUCCEEDS ABOVE NOT EQUAL TO
{"scnsim", 0x022E9}, // SUCCEEDS BUT NOT EQUIVALENT TO
{"scpolint", 0x02A13}, // LINE INTEGRATION WITH SEMICIRCULAR PATH AROUND POLE
{"scsim", 0x0227F}, // SUCCEEDS OR EQUIVALENT TO
{"Scy", 0x00421}, // CYRILLIC CAPITAL LETTER ES
{"scy", 0x00441}, // CYRILLIC SMALL LETTER ES
{"sdot", 0x022C5}, // DOT OPERATOR
{"sdotb", 0x022A1}, // SQUARED DOT OPERATOR
{"sdote", 0x02A66}, // EQUALS SIGN WITH DOT BELOW
{"searhk", 0x02925}, // SOUTH EAST ARROW WITH HOOK
{"searr", 0x02198}, // SOUTH EAST ARROW
{"seArr", 0x021D8}, // SOUTH EAST DOUBLE ARROW
{"searrow", 0x02198}, // SOUTH EAST ARROW
{"sect", 0x000A7}, // SECTION SIGN
{"semi", 0x0003B}, // SEMICOLON
{"seswar", 0x02929}, // SOUTH EAST ARROW AND SOUTH WEST ARROW
{"setminus", 0x02216}, // SET MINUS
{"setmn", 0x02216}, // SET MINUS
{"sext", 0x02736}, // SIX POINTED BLACK STAR
{"sfgr", 0x003C2}, // GREEK SMALL LETTER FINAL SIGMA
{"Sfr", 0x1D516}, // MATHEMATICAL FRAKTUR CAPITAL S
{"sfr", 0x1D530}, // MATHEMATICAL FRAKTUR SMALL S
{"sfrown", 0x02322}, // FROWN
{"Sgr", 0x003A3}, // GREEK CAPITAL LETTER SIGMA
{"sgr", 0x003C3}, // GREEK SMALL LETTER SIGMA
{"sharp", 0x0266F}, // MUSIC SHARP SIGN
{"SHCHcy", 0x00429}, // CYRILLIC CAPITAL LETTER SHCHA
{"shchcy", 0x00449}, // CYRILLIC SMALL LETTER SHCHA
{"SHcy", 0x00428}, // CYRILLIC CAPITAL LETTER SHA
{"shcy", 0x00448}, // CYRILLIC SMALL LETTER SHA
{"ShortDownArrow", 0x02193}, // DOWNWARDS ARROW
{"ShortLeftArrow", 0x02190}, // LEFTWARDS ARROW
{"shortmid", 0x02223}, // DIVIDES
{"shortparallel", 0x02225}, // PARALLEL TO
{"ShortRightArrow", 0x02192}, // RIGHTWARDS ARROW
{"ShortUpArrow", 0x02191}, // UPWARDS ARROW
{"shy", 0x000AD}, // SOFT HYPHEN
{"Sigma", 0x003A3}, // GREEK CAPITAL LETTER SIGMA
{"sigma", 0x003C3}, // GREEK SMALL LETTER SIGMA
{"sigmaf", 0x003C2}, // GREEK SMALL LETTER FINAL SIGMA
{"sigmav", 0x003C2}, // GREEK SMALL LETTER FINAL SIGMA
{"sim", 0x0223C}, // TILDE OPERATOR
{"simdot", 0x02A6A}, // TILDE OPERATOR WITH DOT ABOVE
{"sime", 0x02243}, // ASYMPTOTICALLY EQUAL TO
{"simeq", 0x02243}, // ASYMPTOTICALLY EQUAL TO
{"simg", 0x02A9E}, // SIMILAR OR GREATER-THAN
{"simgE", 0x02AA0}, // SIMILAR ABOVE GREATER-THAN ABOVE EQUALS SIGN
{"siml", 0x02A9D}, // SIMILAR OR LESS-THAN
{"simlE", 0x02A9F}, // SIMILAR ABOVE LESS-THAN ABOVE EQUALS SIGN
{"simne", 0x02246}, // APPROXIMATELY BUT NOT ACTUALLY EQUAL TO
{"simplus", 0x02A24}, // PLUS SIGN WITH TILDE ABOVE
{"simrarr", 0x02972}, // TILDE OPERATOR ABOVE RIGHTWARDS ARROW
{"slarr", 0x02190}, // LEFTWARDS ARROW
{"SmallCircle", 0x02218}, // RING OPERATOR
{"smallsetminus", 0x02216}, // SET MINUS
{"smashp", 0x02A33}, // SMASH PRODUCT
{"smeparsl", 0x029E4}, // EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE
{"smid", 0x02223}, // DIVIDES
{"smile", 0x02323}, // SMILE
{"smt", 0x02AAA}, // SMALLER THAN
{"smte", 0x02AAC}, // SMALLER THAN OR EQUAL TO
// "smtes", 0x02AAC;0x0FE00}, // SMALLER THAN OR slanted EQUAL
{"SOFTcy", 0x0042C}, // CYRILLIC CAPITAL LETTER SOFT SIGN
{"softcy", 0x0044C}, // CYRILLIC SMALL LETTER SOFT SIGN
{"sol", 0x0002F}, // SOLIDUS
{"solb", 0x029C4}, // SQUARED RISING DIAGONAL SLASH
{"solbar", 0x0233F}, // APL FUNCTIONAL SYMBOL SLASH BAR
{"Sopf", 0x1D54A}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL S
{"sopf", 0x1D564}, // MATHEMATICAL DOUBLE-STRUCK SMALL S
{"spades", 0x02660}, // BLACK SPADE SUIT
{"spadesuit", 0x02660}, // BLACK SPADE SUIT
{"spar", 0x02225}, // PARALLEL TO
{"sqcap", 0x02293}, // SQUARE CAP
// "sqcaps", 0x02293;0x0FE00}, // SQUARE CAP with serifs
{"sqcup", 0x02294}, // SQUARE CUP
// "sqcups", 0x02294;0x0FE00}, // SQUARE CUP with serifs
{"Sqrt", 0x0221A}, // SQUARE ROOT
{"sqsub", 0x0228F}, // SQUARE IMAGE OF
{"sqsube", 0x02291}, // SQUARE IMAGE OF OR EQUAL TO
{"sqsubset", 0x0228F}, // SQUARE IMAGE OF
{"sqsubseteq", 0x02291}, // SQUARE IMAGE OF OR EQUAL TO
{"sqsup", 0x02290}, // SQUARE ORIGINAL OF
{"sqsupe", 0x02292}, // SQUARE ORIGINAL OF OR EQUAL TO
{"sqsupset", 0x02290}, // SQUARE ORIGINAL OF
{"sqsupseteq", 0x02292}, // SQUARE ORIGINAL OF OR EQUAL TO
{"squ", 0x025A1}, // WHITE SQUARE
{"square", 0x025A1}, // WHITE SQUARE
{"Square", 0x025A1}, // WHITE SQUARE
{"SquareIntersection", 0x02293}, // SQUARE CAP
{"SquareSubset", 0x0228F}, // SQUARE IMAGE OF
{"SquareSubsetEqual", 0x02291}, // SQUARE IMAGE OF OR EQUAL TO
{"SquareSuperset", 0x02290}, // SQUARE ORIGINAL OF
{"SquareSupersetEqual", 0x02292}, // SQUARE ORIGINAL OF OR EQUAL TO
{"SquareUnion", 0x02294}, // SQUARE CUP
{"squarf", 0x025AA}, // BLACK SMALL SQUARE
{"squf", 0x025AA}, // BLACK SMALL SQUARE
{"srarr", 0x02192}, // RIGHTWARDS ARROW
{"Sscr", 0x1D4AE}, // MATHEMATICAL SCRIPT CAPITAL S
{"sscr", 0x1D4C8}, // MATHEMATICAL SCRIPT SMALL S
{"ssetmn", 0x02216}, // SET MINUS
{"ssmile", 0x02323}, // SMILE
{"sstarf", 0x022C6}, // STAR OPERATOR
{"Star", 0x022C6}, // STAR OPERATOR
{"star", 0x02606}, // WHITE STAR
{"starf", 0x02605}, // BLACK STAR
{"straightepsilon", 0x003F5}, // GREEK LUNATE EPSILON SYMBOL
{"straightphi", 0x003D5}, // GREEK PHI SYMBOL
{"strns", 0x000AF}, // MACRON
{"sub", 0x02282}, // SUBSET OF
{"Sub", 0x022D0}, // DOUBLE SUBSET
{"subdot", 0x02ABD}, // SUBSET WITH DOT
{"sube", 0x02286}, // SUBSET OF OR EQUAL TO
{"subE", 0x02AC5}, // SUBSET OF ABOVE EQUALS SIGN
{"subedot", 0x02AC3}, // SUBSET OF OR EQUAL TO WITH DOT ABOVE
{"submult", 0x02AC1}, // SUBSET WITH MULTIPLICATION SIGN BELOW
{"subne", 0x0228A}, // SUBSET OF WITH NOT EQUAL TO
{"subnE", 0x02ACB}, // SUBSET OF ABOVE NOT EQUAL TO
{"subplus", 0x02ABF}, // SUBSET WITH PLUS SIGN BELOW
{"subrarr", 0x02979}, // SUBSET ABOVE RIGHTWARDS ARROW
{"subset", 0x02282}, // SUBSET OF
{"Subset", 0x022D0}, // DOUBLE SUBSET
{"subseteq", 0x02286}, // SUBSET OF OR EQUAL TO
{"subseteqq", 0x02AC5}, // SUBSET OF ABOVE EQUALS SIGN
{"SubsetEqual", 0x02286}, // SUBSET OF OR EQUAL TO
{"subsetneq", 0x0228A}, // SUBSET OF WITH NOT EQUAL TO
{"subsetneqq", 0x02ACB}, // SUBSET OF ABOVE NOT EQUAL TO
{"subsim", 0x02AC7}, // SUBSET OF ABOVE TILDE OPERATOR
{"subsub", 0x02AD5}, // SUBSET ABOVE SUBSET
{"subsup", 0x02AD3}, // SUBSET ABOVE SUPERSET
{"succ", 0x0227B}, // SUCCEEDS
{"succapprox", 0x02AB8}, // SUCCEEDS ABOVE ALMOST EQUAL TO
{"succcurlyeq", 0x0227D}, // SUCCEEDS OR EQUAL TO
{"Succeeds", 0x0227B}, // SUCCEEDS
{"SucceedsEqual", 0x02AB0}, // SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN
{"SucceedsSlantEqual", 0x0227D}, // SUCCEEDS OR EQUAL TO
{"SucceedsTilde", 0x0227F}, // SUCCEEDS OR EQUIVALENT TO
{"succeq", 0x02AB0}, // SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN
{"succnapprox", 0x02ABA}, // SUCCEEDS ABOVE NOT ALMOST EQUAL TO
{"succneqq", 0x02AB6}, // SUCCEEDS ABOVE NOT EQUAL TO
{"succnsim", 0x022E9}, // SUCCEEDS BUT NOT EQUIVALENT TO
{"succsim", 0x0227F}, // SUCCEEDS OR EQUIVALENT TO
{"SuchThat", 0x0220B}, // CONTAINS AS MEMBER
{"sum", 0x02211}, // N-ARY SUMMATION
{"Sum", 0x02211}, // N-ARY SUMMATION
{"sung", 0x0266A}, // EIGHTH NOTE
{"sup", 0x02283}, // SUPERSET OF
{"Sup", 0x022D1}, // DOUBLE SUPERSET
{"sup1", 0x000B9}, // SUPERSCRIPT ONE
{"sup2", 0x000B2}, // SUPERSCRIPT TWO
{"sup3", 0x000B3}, // SUPERSCRIPT THREE
{"supdot", 0x02ABE}, // SUPERSET WITH DOT
{"supdsub", 0x02AD8}, // SUPERSET BESIDE AND JOINED BY DASH WITH SUBSET
{"supe", 0x02287}, // SUPERSET OF OR EQUAL TO
{"supE", 0x02AC6}, // SUPERSET OF ABOVE EQUALS SIGN
{"supedot", 0x02AC4}, // SUPERSET OF OR EQUAL TO WITH DOT ABOVE
{"Superset", 0x02283}, // SUPERSET OF
{"SupersetEqual", 0x02287}, // SUPERSET OF OR EQUAL TO
{"suphsol", 0x027C9}, // SUPERSET PRECEDING SOLIDUS
{"suphsub", 0x02AD7}, // SUPERSET BESIDE SUBSET
{"suplarr", 0x0297B}, // SUPERSET ABOVE LEFTWARDS ARROW
{"supmult", 0x02AC2}, // SUPERSET WITH MULTIPLICATION SIGN BELOW
{"supne", 0x0228B}, // SUPERSET OF WITH NOT EQUAL TO
{"supnE", 0x02ACC}, // SUPERSET OF ABOVE NOT EQUAL TO
{"supplus", 0x02AC0}, // SUPERSET WITH PLUS SIGN BELOW
{"supset", 0x02283}, // SUPERSET OF
{"Supset", 0x022D1}, // DOUBLE SUPERSET
{"supseteq", 0x02287}, // SUPERSET OF OR EQUAL TO
{"supseteqq", 0x02AC6}, // SUPERSET OF ABOVE EQUALS SIGN
{"supsetneq", 0x0228B}, // SUPERSET OF WITH NOT EQUAL TO
{"supsetneqq", 0x02ACC}, // SUPERSET OF ABOVE NOT EQUAL TO
{"supsim", 0x02AC8}, // SUPERSET OF ABOVE TILDE OPERATOR
{"supsub", 0x02AD4}, // SUPERSET ABOVE SUBSET
{"supsup", 0x02AD6}, // SUPERSET ABOVE SUPERSET
{"swarhk", 0x02926}, // SOUTH WEST ARROW WITH HOOK
{"swarr", 0x02199}, // SOUTH WEST ARROW
{"swArr", 0x021D9}, // SOUTH WEST DOUBLE ARROW
{"swarrow", 0x02199}, // SOUTH WEST ARROW
{"swnwar", 0x0292A}, // SOUTH WEST ARROW AND NORTH WEST ARROW
{"szlig", 0x000DF}, // LATIN SMALL LETTER SHARP S
{NULL, 0}
};
static NameId namesT[]={
{"Tab", 0x00009}, // CHARACTER TABULATION
{"target", 0x02316}, // POSITION INDICATOR
{"Tau", 0x003A4}, // GREEK CAPITAL LETTER TAU
{"tau", 0x003C4}, // GREEK SMALL LETTER TAU
{"tbrk", 0x023B4}, // TOP SQUARE BRACKET
{"Tcaron", 0x00164}, // LATIN CAPITAL LETTER T WITH CARON
{"tcaron", 0x00165}, // LATIN SMALL LETTER T WITH CARON
{"Tcedil", 0x00162}, // LATIN CAPITAL LETTER T WITH CEDILLA
{"tcedil", 0x00163}, // LATIN SMALL LETTER T WITH CEDILLA
{"Tcy", 0x00422}, // CYRILLIC CAPITAL LETTER TE
{"tcy", 0x00442}, // CYRILLIC SMALL LETTER TE
{"tdot", 0x020DB}, // COMBINING THREE DOTS ABOVE
{"telrec", 0x02315}, // TELEPHONE RECORDER
{"Tfr", 0x1D517}, // MATHEMATICAL FRAKTUR CAPITAL T
{"tfr", 0x1D531}, // MATHEMATICAL FRAKTUR SMALL T
{"Tgr", 0x003A4}, // GREEK CAPITAL LETTER TAU
{"tgr", 0x003C4}, // GREEK SMALL LETTER TAU
{"there4", 0x02234}, // THEREFORE
{"therefore", 0x02234}, // THEREFORE
{"Therefore", 0x02234}, // THEREFORE
{"Theta", 0x00398}, // GREEK CAPITAL LETTER THETA
{"theta", 0x003B8}, // GREEK SMALL LETTER THETA
{"thetasym", 0x003D1}, // GREEK THETA SYMBOL
{"thetav", 0x003D1}, // GREEK THETA SYMBOL
{"THgr", 0x00398}, // GREEK CAPITAL LETTER THETA
{"thgr", 0x003B8}, // GREEK SMALL LETTER THETA
{"thickapprox", 0x02248}, // ALMOST EQUAL TO
{"thicksim", 0x0223C}, // TILDE OPERATOR
// "ThickSpace", 0x0205F;0x0200A}, // space of width 5/18 em
{"thinsp", 0x02009}, // THIN SPACE
{"ThinSpace", 0x02009}, // THIN SPACE
{"thkap", 0x02248}, // ALMOST EQUAL TO
{"thksim", 0x0223C}, // TILDE OPERATOR
{"THORN", 0x000DE}, // LATIN CAPITAL LETTER THORN
{"thorn", 0x000FE}, // LATIN SMALL LETTER THORN
{"tilde", 0x002DC}, // SMALL TILDE
{"Tilde", 0x0223C}, // TILDE OPERATOR
{"TildeEqual", 0x02243}, // ASYMPTOTICALLY EQUAL TO
{"TildeFullEqual", 0x02245}, // APPROXIMATELY EQUAL TO
{"TildeTilde", 0x02248}, // ALMOST EQUAL TO
{"times", 0x000D7}, // MULTIPLICATION SIGN
{"timesb", 0x022A0}, // SQUARED TIMES
{"timesbar", 0x02A31}, // MULTIPLICATION SIGN WITH UNDERBAR
{"timesd", 0x02A30}, // MULTIPLICATION SIGN WITH DOT ABOVE
{"tint", 0x0222D}, // TRIPLE INTEGRAL
{"toea", 0x02928}, // NORTH EAST ARROW AND SOUTH EAST ARROW
{"top", 0x022A4}, // DOWN TACK
{"topbot", 0x02336}, // APL FUNCTIONAL SYMBOL I-BEAM
{"topcir", 0x02AF1}, // DOWN TACK WITH CIRCLE BELOW
{"Topf", 0x1D54B}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL T
{"topf", 0x1D565}, // MATHEMATICAL DOUBLE-STRUCK SMALL T
{"topfork", 0x02ADA}, // PITCHFORK WITH TEE TOP
{"tosa", 0x02929}, // SOUTH EAST ARROW AND SOUTH WEST ARROW
{"tprime", 0x02034}, // TRIPLE PRIME
{"trade", 0x02122}, // TRADE MARK SIGN
{"TRADE", 0x02122}, // TRADE MARK SIGN
{"triangle", 0x025B5}, // WHITE UP-POINTING SMALL TRIANGLE
{"triangledown", 0x025BF}, // WHITE DOWN-POINTING SMALL TRIANGLE
{"triangleleft", 0x025C3}, // WHITE LEFT-POINTING SMALL TRIANGLE
{"trianglelefteq", 0x022B4}, // NORMAL SUBGROUP OF OR EQUAL TO
{"triangleq", 0x0225C}, // DELTA EQUAL TO
{"triangleright", 0x025B9}, // WHITE RIGHT-POINTING SMALL TRIANGLE
{"trianglerighteq", 0x022B5}, // CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
{"tridot", 0x025EC}, // WHITE UP-POINTING TRIANGLE WITH DOT
{"trie", 0x0225C}, // DELTA EQUAL TO
{"triminus", 0x02A3A}, // MINUS SIGN IN TRIANGLE
{"TripleDot", 0x020DB}, // COMBINING THREE DOTS ABOVE
{"triplus", 0x02A39}, // PLUS SIGN IN TRIANGLE
{"trisb", 0x029CD}, // TRIANGLE WITH SERIFS AT BOTTOM
{"tritime", 0x02A3B}, // MULTIPLICATION SIGN IN TRIANGLE
{"trpezium", 0x023E2}, // WHITE TRAPEZIUM
{"Tscr", 0x1D4AF}, // MATHEMATICAL SCRIPT CAPITAL T
{"tscr", 0x1D4C9}, // MATHEMATICAL SCRIPT SMALL T
{"TScy", 0x00426}, // CYRILLIC CAPITAL LETTER TSE
{"tscy", 0x00446}, // CYRILLIC SMALL LETTER TSE
{"TSHcy", 0x0040B}, // CYRILLIC CAPITAL LETTER TSHE
{"tshcy", 0x0045B}, // CYRILLIC SMALL LETTER TSHE
{"Tstrok", 0x00166}, // LATIN CAPITAL LETTER T WITH STROKE
{"tstrok", 0x00167}, // LATIN SMALL LETTER T WITH STROKE
{"twixt", 0x0226C}, // BETWEEN
{"twoheadleftarrow", 0x0219E}, // LEFTWARDS TWO HEADED ARROW
{"twoheadrightarrow", 0x021A0}, // RIGHTWARDS TWO HEADED ARROW
{NULL, 0}
};
static NameId namesU[]={
{"Uacgr", 0x0038E}, // GREEK CAPITAL LETTER UPSILON WITH TONOS
{"uacgr", 0x003CD}, // GREEK SMALL LETTER UPSILON WITH TONOS
{"Uacute", 0x000DA}, // LATIN CAPITAL LETTER U WITH ACUTE
{"uacute", 0x000FA}, // LATIN SMALL LETTER U WITH ACUTE
{"uarr", 0x02191}, // UPWARDS ARROW
{"Uarr", 0x0219F}, // UPWARDS TWO HEADED ARROW
{"uArr", 0x021D1}, // UPWARDS DOUBLE ARROW
{"Uarrocir", 0x02949}, // UPWARDS TWO-HEADED ARROW FROM SMALL CIRCLE
{"Ubrcy", 0x0040E}, // CYRILLIC CAPITAL LETTER SHORT U
{"ubrcy", 0x0045E}, // CYRILLIC SMALL LETTER SHORT U
{"Ubreve", 0x0016C}, // LATIN CAPITAL LETTER U WITH BREVE
{"ubreve", 0x0016D}, // LATIN SMALL LETTER U WITH BREVE
{"Ucirc", 0x000DB}, // LATIN CAPITAL LETTER U WITH CIRCUMFLEX
{"ucirc", 0x000FB}, // LATIN SMALL LETTER U WITH CIRCUMFLEX
{"Ucy", 0x00423}, // CYRILLIC CAPITAL LETTER U
{"ucy", 0x00443}, // CYRILLIC SMALL LETTER U
{"udarr", 0x021C5}, // UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW
{"Udblac", 0x00170}, // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
{"udblac", 0x00171}, // LATIN SMALL LETTER U WITH DOUBLE ACUTE
{"udhar", 0x0296E}, // UPWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT
{"udiagr", 0x003B0}, // GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
{"Udigr", 0x003AB}, // GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
{"udigr", 0x003CB}, // GREEK SMALL LETTER UPSILON WITH DIALYTIKA
{"ufisht", 0x0297E}, // UP FISH TAIL
{"Ufr", 0x1D518}, // MATHEMATICAL FRAKTUR CAPITAL U
{"ufr", 0x1D532}, // MATHEMATICAL FRAKTUR SMALL U
{"Ugr", 0x003A5}, // GREEK CAPITAL LETTER UPSILON
{"ugr", 0x003C5}, // GREEK SMALL LETTER UPSILON
{"Ugrave", 0x000D9}, // LATIN CAPITAL LETTER U WITH GRAVE
{"ugrave", 0x000F9}, // LATIN SMALL LETTER U WITH GRAVE
{"uHar", 0x02963}, // UPWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT
{"uharl", 0x021BF}, // UPWARDS HARPOON WITH BARB LEFTWARDS
{"uharr", 0x021BE}, // UPWARDS HARPOON WITH BARB RIGHTWARDS
{"uhblk", 0x02580}, // UPPER HALF BLOCK
{"ulcorn", 0x0231C}, // TOP LEFT CORNER
{"ulcorner", 0x0231C}, // TOP LEFT CORNER
{"ulcrop", 0x0230F}, // TOP LEFT CROP
{"ultri", 0x025F8}, // UPPER LEFT TRIANGLE
{"Umacr", 0x0016A}, // LATIN CAPITAL LETTER U WITH MACRON
{"umacr", 0x0016B}, // LATIN SMALL LETTER U WITH MACRON
{"uml", 0x000A8}, // DIAERESIS
{"UnderBar", 0x0005F}, // LOW LINE
{"UnderBrace", 0x023DF}, // BOTTOM CURLY BRACKET
{"UnderBracket", 0x023B5}, // BOTTOM SQUARE BRACKET
{"UnderParenthesis", 0x023DD}, // BOTTOM PARENTHESIS
{"Union", 0x022C3}, // N-ARY UNION
{"UnionPlus", 0x0228E}, // MULTISET UNION
{"Uogon", 0x00172}, // LATIN CAPITAL LETTER U WITH OGONEK
{"uogon", 0x00173}, // LATIN SMALL LETTER U WITH OGONEK
{"Uopf", 0x1D54C}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL U
{"uopf", 0x1D566}, // MATHEMATICAL DOUBLE-STRUCK SMALL U
{"uparrow", 0x02191}, // UPWARDS ARROW
{"UpArrow", 0x02191}, // UPWARDS ARROW
{"Uparrow", 0x021D1}, // UPWARDS DOUBLE ARROW
{"UpArrowBar", 0x02912}, // UPWARDS ARROW TO BAR
{"UpArrowDownArrow", 0x021C5}, // UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW
{"updownarrow", 0x02195}, // UP DOWN ARROW
{"UpDownArrow", 0x02195}, // UP DOWN ARROW
{"Updownarrow", 0x021D5}, // UP DOWN DOUBLE ARROW
{"UpEquilibrium", 0x0296E}, // UPWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT
{"upharpoonleft", 0x021BF}, // UPWARDS HARPOON WITH BARB LEFTWARDS
{"upharpoonright", 0x021BE}, // UPWARDS HARPOON WITH BARB RIGHTWARDS
{"uplus", 0x0228E}, // MULTISET UNION
{"UpperLeftArrow", 0x02196}, // NORTH WEST ARROW
{"UpperRightArrow", 0x02197}, // NORTH EAST ARROW
{"upsi", 0x003C5}, // GREEK SMALL LETTER UPSILON
{"Upsi", 0x003D2}, // GREEK UPSILON WITH HOOK SYMBOL
{"upsih", 0x003D2}, // GREEK UPSILON WITH HOOK SYMBOL
{"Upsilon", 0x003A5}, // GREEK CAPITAL LETTER UPSILON
{"upsilon", 0x003C5}, // GREEK SMALL LETTER UPSILON
{"UpTee", 0x022A5}, // UP TACK
{"UpTeeArrow", 0x021A5}, // UPWARDS ARROW FROM BAR
{"upuparrows", 0x021C8}, // UPWARDS PAIRED ARROWS
{"urcorn", 0x0231D}, // TOP RIGHT CORNER
{"urcorner", 0x0231D}, // TOP RIGHT CORNER
{"urcrop", 0x0230E}, // TOP RIGHT CROP
{"Uring", 0x0016E}, // LATIN CAPITAL LETTER U WITH RING ABOVE
{"uring", 0x0016F}, // LATIN SMALL LETTER U WITH RING ABOVE
{"urtri", 0x025F9}, // UPPER RIGHT TRIANGLE
{"Uscr", 0x1D4B0}, // MATHEMATICAL SCRIPT CAPITAL U
{"uscr", 0x1D4CA}, // MATHEMATICAL SCRIPT SMALL U
{"utdot", 0x022F0}, // UP RIGHT DIAGONAL ELLIPSIS
{"Utilde", 0x00168}, // LATIN CAPITAL LETTER U WITH TILDE
{"utilde", 0x00169}, // LATIN SMALL LETTER U WITH TILDE
{"utri", 0x025B5}, // WHITE UP-POINTING SMALL TRIANGLE
{"utrif", 0x025B4}, // BLACK UP-POINTING SMALL TRIANGLE
{"uuarr", 0x021C8}, // UPWARDS PAIRED ARROWS
{"Uuml", 0x000DC}, // LATIN CAPITAL LETTER U WITH DIAERESIS
{"uuml", 0x000FC}, // LATIN SMALL LETTER U WITH DIAERESIS
{"uwangle", 0x029A7}, // OBLIQUE ANGLE OPENING DOWN
{NULL, 0}
};
static NameId namesV[]={
{"vangrt", 0x0299C}, // RIGHT ANGLE VARIANT WITH SQUARE
{"varepsilon", 0x003F5}, // GREEK LUNATE EPSILON SYMBOL
{"varkappa", 0x003F0}, // GREEK KAPPA SYMBOL
{"varnothing", 0x02205}, // EMPTY SET
{"varphi", 0x003D5}, // GREEK PHI SYMBOL
{"varpi", 0x003D6}, // GREEK PI SYMBOL
{"varpropto", 0x0221D}, // PROPORTIONAL TO
{"varr", 0x02195}, // UP DOWN ARROW
{"vArr", 0x021D5}, // UP DOWN DOUBLE ARROW
{"varrho", 0x003F1}, // GREEK RHO SYMBOL
{"varsigma", 0x003C2}, // GREEK SMALL LETTER FINAL SIGMA
// "varsubsetneq", 0x0228A;0x0FE00}, // SUBSET OF WITH NOT EQUAL TO - variant with stroke through bottom members
// "varsubsetneqq", 0x02ACB;0x0FE00}, // SUBSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members
// "varsupsetneq", 0x0228B;0x0FE00}, // SUPERSET OF WITH NOT EQUAL TO - variant with stroke through bottom members
// "varsupsetneqq", 0x02ACC;0x0FE00}, // SUPERSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members
{"vartheta", 0x003D1}, // GREEK THETA SYMBOL
{"vartriangleleft", 0x022B2}, // NORMAL SUBGROUP OF
{"vartriangleright", 0x022B3}, // CONTAINS AS NORMAL SUBGROUP
{"vBar", 0x02AE8}, // SHORT UP TACK WITH UNDERBAR
{"Vbar", 0x02AEB}, // DOUBLE UP TACK
{"vBarv", 0x02AE9}, // SHORT UP TACK ABOVE SHORT DOWN TACK
{"Vcy", 0x00412}, // CYRILLIC CAPITAL LETTER VE
{"vcy", 0x00432}, // CYRILLIC SMALL LETTER VE
{"vdash", 0x022A2}, // RIGHT TACK
{"vDash", 0x022A8}, // TRUE
{"Vdash", 0x022A9}, // FORCES
{"VDash", 0x022AB}, // DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
{"Vdashl", 0x02AE6}, // LONG DASH FROM LEFT MEMBER OF DOUBLE VERTICAL
{"vee", 0x02228}, // LOGICAL OR
{"Vee", 0x022C1}, // N-ARY LOGICAL OR
{"veebar", 0x022BB}, // XOR
{"veeeq", 0x0225A}, // EQUIANGULAR TO
{"vellip", 0x022EE}, // VERTICAL ELLIPSIS
{"verbar", 0x0007C}, // VERTICAL LINE
{"Verbar", 0x02016}, // DOUBLE VERTICAL LINE
{"vert", 0x0007C}, // VERTICAL LINE
{"Vert", 0x02016}, // DOUBLE VERTICAL LINE
{"VerticalBar", 0x02223}, // DIVIDES
{"VerticalLine", 0x0007C}, // VERTICAL LINE
{"VerticalSeparator", 0x02758}, // LIGHT VERTICAL BAR
{"VerticalTilde", 0x02240}, // WREATH PRODUCT
{"VeryThinSpace", 0x0200A}, // HAIR SPACE
{"Vfr", 0x1D519}, // MATHEMATICAL FRAKTUR CAPITAL V
{"vfr", 0x1D533}, // MATHEMATICAL FRAKTUR SMALL V
{"vltri", 0x022B2}, // NORMAL SUBGROUP OF
// "vnsub", 0x02282;0x020D2}, // SUBSET OF with vertical line
// "vnsup", 0x02283;0x020D2}, // SUPERSET OF with vertical line
{"Vopf", 0x1D54D}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL V
{"vopf", 0x1D567}, // MATHEMATICAL DOUBLE-STRUCK SMALL V
{"vprop", 0x0221D}, // PROPORTIONAL TO
{"vrtri", 0x022B3}, // CONTAINS AS NORMAL SUBGROUP
{"Vscr", 0x1D4B1}, // MATHEMATICAL SCRIPT CAPITAL V
{"vscr", 0x1D4CB}, // MATHEMATICAL SCRIPT SMALL V
// "vsubne", 0x0228A;0x0FE00}, // SUBSET OF WITH NOT EQUAL TO - variant with stroke through bottom members
// "vsubnE", 0x02ACB;0x0FE00}, // SUBSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members
// "vsupne", 0x0228B;0x0FE00}, // SUPERSET OF WITH NOT EQUAL TO - variant with stroke through bottom members
// "vsupnE", 0x02ACC;0x0FE00}, // SUPERSET OF ABOVE NOT EQUAL TO - variant with stroke through bottom members
{"Vvdash", 0x022AA}, // TRIPLE VERTICAL BAR RIGHT TURNSTILE
{"vzigzag", 0x0299A}, // VERTICAL ZIGZAG LINE
{NULL, 0}
};
static NameId namesW[]={
{"Wcirc", 0x00174}, // LATIN CAPITAL LETTER W WITH CIRCUMFLEX
{"wcirc", 0x00175}, // LATIN SMALL LETTER W WITH CIRCUMFLEX
{"wedbar", 0x02A5F}, // LOGICAL AND WITH UNDERBAR
{"wedge", 0x02227}, // LOGICAL AND
{"Wedge", 0x022C0}, // N-ARY LOGICAL AND
{"wedgeq", 0x02259}, // ESTIMATES
{"weierp", 0x02118}, // SCRIPT CAPITAL P
{"Wfr", 0x1D51A}, // MATHEMATICAL FRAKTUR CAPITAL W
{"wfr", 0x1D534}, // MATHEMATICAL FRAKTUR SMALL W
{"Wopf", 0x1D54E}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL W
{"wopf", 0x1D568}, // MATHEMATICAL DOUBLE-STRUCK SMALL W
{"wp", 0x02118}, // SCRIPT CAPITAL P
{"wr", 0x02240}, // WREATH PRODUCT
{"wreath", 0x02240}, // WREATH PRODUCT
{"Wscr", 0x1D4B2}, // MATHEMATICAL SCRIPT CAPITAL W
{"wscr", 0x1D4CC}, // MATHEMATICAL SCRIPT SMALL W
{NULL, 0}
};
static NameId namesX[]={
{"xcap", 0x022C2}, // N-ARY INTERSECTION
{"xcirc", 0x025EF}, // LARGE CIRCLE
{"xcup", 0x022C3}, // N-ARY UNION
{"xdtri", 0x025BD}, // WHITE DOWN-POINTING TRIANGLE
{"Xfr", 0x1D51B}, // MATHEMATICAL FRAKTUR CAPITAL X
{"xfr", 0x1D535}, // MATHEMATICAL FRAKTUR SMALL X
{"Xgr", 0x0039E}, // GREEK CAPITAL LETTER XI
{"xgr", 0x003BE}, // GREEK SMALL LETTER XI
{"xharr", 0x027F7}, // LONG LEFT RIGHT ARROW
{"xhArr", 0x027FA}, // LONG LEFT RIGHT DOUBLE ARROW
{"Xi", 0x0039E}, // GREEK CAPITAL LETTER XI
{"xi", 0x003BE}, // GREEK SMALL LETTER XI
{"xlarr", 0x027F5}, // LONG LEFTWARDS ARROW
{"xlArr", 0x027F8}, // LONG LEFTWARDS DOUBLE ARROW
{"xmap", 0x027FC}, // LONG RIGHTWARDS ARROW FROM BAR
{"xnis", 0x022FB}, // CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE
{"xodot", 0x02A00}, // N-ARY CIRCLED DOT OPERATOR
{"Xopf", 0x1D54F}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL X
{"xopf", 0x1D569}, // MATHEMATICAL DOUBLE-STRUCK SMALL X
{"xoplus", 0x02A01}, // N-ARY CIRCLED PLUS OPERATOR
{"xotime", 0x02A02}, // N-ARY CIRCLED TIMES OPERATOR
{"xrarr", 0x027F6}, // LONG RIGHTWARDS ARROW
{"xrArr", 0x027F9}, // LONG RIGHTWARDS DOUBLE ARROW
{"Xscr", 0x1D4B3}, // MATHEMATICAL SCRIPT CAPITAL X
{"xscr", 0x1D4CD}, // MATHEMATICAL SCRIPT SMALL X
{"xsqcup", 0x02A06}, // N-ARY SQUARE UNION OPERATOR
{"xuplus", 0x02A04}, // N-ARY UNION OPERATOR WITH PLUS
{"xutri", 0x025B3}, // WHITE UP-POINTING TRIANGLE
{"xvee", 0x022C1}, // N-ARY LOGICAL OR
{"xwedge", 0x022C0}, // N-ARY LOGICAL AND
{NULL, 0}
};
static NameId namesY[]={
{"Yacute", 0x000DD}, // LATIN CAPITAL LETTER Y WITH ACUTE
{"yacute", 0x000FD}, // LATIN SMALL LETTER Y WITH ACUTE
{"YAcy", 0x0042F}, // CYRILLIC CAPITAL LETTER YA
{"yacy", 0x0044F}, // CYRILLIC SMALL LETTER YA
{"Ycirc", 0x00176}, // LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
{"ycirc", 0x00177}, // LATIN SMALL LETTER Y WITH CIRCUMFLEX
{"Ycy", 0x0042B}, // CYRILLIC CAPITAL LETTER YERU
{"ycy", 0x0044B}, // CYRILLIC SMALL LETTER YERU
{"yen", 0x000A5}, // YEN SIGN
{"Yfr", 0x1D51C}, // MATHEMATICAL FRAKTUR CAPITAL Y
{"yfr", 0x1D536}, // MATHEMATICAL FRAKTUR SMALL Y
{"YIcy", 0x00407}, // CYRILLIC CAPITAL LETTER YI
{"yicy", 0x00457}, // CYRILLIC SMALL LETTER YI
{"Yopf", 0x1D550}, // MATHEMATICAL DOUBLE-STRUCK CAPITAL Y
{"yopf", 0x1D56A}, // MATHEMATICAL DOUBLE-STRUCK SMALL Y
{"Yscr", 0x1D4B4}, // MATHEMATICAL SCRIPT CAPITAL Y
{"yscr", 0x1D4CE}, // MATHEMATICAL SCRIPT SMALL Y
{"YUcy", 0x0042E}, // CYRILLIC CAPITAL LETTER YU
{"yucy", 0x0044E}, // CYRILLIC SMALL LETTER YU
{"yuml", 0x000FF}, // LATIN SMALL LETTER Y WITH DIAERESIS
{"Yuml", 0x00178}, // LATIN CAPITAL LETTER Y WITH DIAERESIS
{NULL, 0}
};
static NameId namesZ[]={
{"Zacute", 0x00179}, // LATIN CAPITAL LETTER Z WITH ACUTE
{"zacute", 0x0017A}, // LATIN SMALL LETTER Z WITH ACUTE
{"Zcaron", 0x0017D}, // LATIN CAPITAL LETTER Z WITH CARON
{"zcaron", 0x0017E}, // LATIN SMALL LETTER Z WITH CARON
{"Zcy", 0x00417}, // CYRILLIC CAPITAL LETTER ZE
{"zcy", 0x00437}, // CYRILLIC SMALL LETTER ZE
{"Zdot", 0x0017B}, // LATIN CAPITAL LETTER Z WITH DOT ABOVE
{"zdot", 0x0017C}, // LATIN SMALL LETTER Z WITH DOT ABOVE
{"zeetrf", 0x02128}, // BLACK-LETTER CAPITAL Z
{"ZeroWidthSpace", 0x0200B}, // ZERO WIDTH SPACE
{"Zeta", 0x00396}, // GREEK CAPITAL LETTER ZETA
{"zeta", 0x003B6}, // GREEK SMALL LETTER ZETA
{"Zfr", 0x02128}, // BLACK-LETTER CAPITAL Z
{"zfr", 0x1D537}, // MATHEMATICAL FRAKTUR SMALL Z
{"Zgr", 0x00396}, // GREEK CAPITAL LETTER ZETA
{"zgr", 0x003B6}, // GREEK SMALL LETTER ZETA
{"ZHcy", 0x00416}, // CYRILLIC CAPITAL LETTER ZHE
{"zhcy", 0x00436}, // CYRILLIC SMALL LETTER ZHE
{"zigrarr", 0x021DD}, // RIGHTWARDS SQUIGGLE ARROW
{"Zopf", 0x02124}, // DOUBLE-STRUCK CAPITAL Z
{"zopf", 0x1D56B}, // MATHEMATICAL DOUBLE-STRUCK SMALL Z
{"Zscr", 0x1D4B5}, // MATHEMATICAL SCRIPT CAPITAL Z
{"zscr", 0x1D4CF}, // MATHEMATICAL SCRIPT SMALL Z
{"zwj", 0x0200D}, // ZERO WIDTH JOINER
{"zwnj", 0x0200C}, // ZERO WIDTH NON-JOINER
{NULL, 0}
};
// @todo@ order namesTable and names? by frequency
static NameId* namesTable[] = {
namesA, namesB, namesC, namesD, namesE, namesF, namesG, namesH, namesI,
namesJ, namesK, namesL, namesM, namesN, namesO, namesP, namesQ, namesR,
namesS, namesT, namesU, namesV, namesW, namesX, namesY, namesZ, NULL
};
int HtmlNamedEntity(const utf8_t *p, size_t length)
{
int tableIndex = tolower(*p) - 'a';
if (tableIndex >= 0 && tableIndex < 26)
{
NameId* names = namesTable[tableIndex];
for (size_t i = 0; names[i].name; i++)
{
if (strncmp(names[i].name, (const char *)p, length) == 0)
return names[i].value;
}
}
return -1;
}