gut Entities.pm
Matt S Trout [Sat, 9 Apr 2016 16:57:52 +0000 (16:57 +0000)]
lib/DOM/Tiny/Entities.pm

index 0d442f5..a5b9c06 100644 (file)
@@ -3,94 +3,26 @@ package DOM::Tiny::Entities;
 use strict;
 use warnings;
 use Exporter 'import';
+use Mojo::DOM58::Entities qw(html_escape html_unescape);
 
 our $VERSION = '0.004';
 
 our @EXPORT_OK = qw(html_escape html_unescape);
 
-# To generate a new HTML entity table run this command
-# perl examples/entities.pl
-my %ENTITIES;
-for my $line (split "\n", join('', <DATA>)) {
-  next unless $line =~ /^(\S+)\s+U\+(\S+)(?:\s+U\+(\S+))?/;
-  $ENTITIES{$1} = defined $3 ? (chr(hex $2) . chr(hex $3)) : chr(hex $2);
-}
-
-# Characters that should be escaped in HTML/XML
-my %ESCAPE = (
-  '&'  => '&amp;',
-  '<'  => '&lt;',
-  '>'  => '&gt;',
-  '"'  => '&quot;',
-  '\'' => '&#39;'
-);
-
-sub html_escape {
-  my $str = shift;
-  $str =~ s/([&<>"'])/$ESCAPE{$1}/ge;
-  return $str;
-}
-
-sub html_unescape {
-  my $str = shift;
-  $str =~ s/&(?:\#((?:[0-9]{1,7}|x[0-9a-fA-F]{1,6}));|(\w+;))/_decode($1, $2)/ge;
-  return $str;
-}
-
-sub _decode {
-  my ($point, $name) = @_;
-  
-  # Code point
-  return chr($point !~ /^x/ ? $point : hex $point) unless defined $name;
-  
-  # Named character reference
-  return exists $ENTITIES{$name} ? $ENTITIES{$name} : "&$name";
-}
-
 1;
 
 =encoding utf8
 
 =head1 NAME
 
-DOM::Tiny::Entities - Escape or unescape HTML entities in strings
-
-=head1 SYNOPSIS
-
-  use DOM::Tiny::Entities qw(html_escape html_unescape);
-  
-  my $str = 'foo &amp; bar';
-  $str = html_unescape $str; # "foo & bar"
-  $str = html_escape $str; # "foo &amp; bar"
-
-=head1 DESCRIPTION
-
-L<DOM::Tiny::Entities> contains functions for escaping and unescaping HTML
-entities for L<DOM::Tiny>, based on functions from L<Mojo::Util>. All functions
-are exported on demand.
+DOM::Tiny::Entities - This is an empty re-exporter, you wanted Mojo::DOM58::Entities
 
-=head1 FUNCTIONS
+=head1 IT'S DEAD, JIM.
 
-=head2 html_escape
+Development continues under the name L<Mojo::DOM58::Entities>.
 
- my $escaped = html_escape $str;
-
-Escape unsafe characters C<&>, C<< < >>, C<< > >>, C<">, and C<'> in string.
-
- html_escape '<div>'; # "&lt;div&gt;"
-
-=head2 html_unescape
-
- my $str = html_unescape $escaped;
-
-Unescape all HTML entities in string, according to the
-L<HTML Living Standard|https://html.spec.whatwg.org/#named-character-references-table>.
-
- html_unescape '&lt;div&gt'; # "<div>"
-
-=head1 BUGS
-
-Report any issues on the public bugtracker.
+This is an empty re-exporter therefor to avoid defecating on existing users
+from a great height, but you should still update your code.
 
 =head1 AUTHOR
 
@@ -109,2130 +41,3 @@ This is free software, licensed under:
 L<HTML::Entities>
 
 =cut
-
-__DATA__
-Aacute; U+000C1
-aacute; U+000E1
-Abreve; U+00102
-abreve; U+00103
-ac; U+0223E
-acd; U+0223F
-acE; U+0223E U+00333
-Acirc; U+000C2
-acirc; U+000E2
-acute; U+000B4
-Acy; U+00410
-acy; U+00430
-AElig; U+000C6
-aelig; U+000E6
-af; U+02061
-Afr; U+1D504
-afr; U+1D51E
-Agrave; U+000C0
-agrave; U+000E0
-alefsym; U+02135
-aleph; U+02135
-Alpha; U+00391
-alpha; U+003B1
-Amacr; U+00100
-amacr; U+00101
-amalg; U+02A3F
-AMP; U+00026
-amp; U+00026
-And; U+02A53
-and; U+02227
-andand; U+02A55
-andd; U+02A5C
-andslope; U+02A58
-andv; U+02A5A
-ang; U+02220
-ange; U+029A4
-angle; U+02220
-angmsd; U+02221
-angmsdaa; U+029A8
-angmsdab; U+029A9
-angmsdac; U+029AA
-angmsdad; U+029AB
-angmsdae; U+029AC
-angmsdaf; U+029AD
-angmsdag; U+029AE
-angmsdah; U+029AF
-angrt; U+0221F
-angrtvb; U+022BE
-angrtvbd; U+0299D
-angsph; U+02222
-angst; U+000C5
-angzarr; U+0237C
-Aogon; U+00104
-aogon; U+00105
-Aopf; U+1D538
-aopf; U+1D552
-ap; U+02248
-apacir; U+02A6F
-apE; U+02A70
-ape; U+0224A
-apid; U+0224B
-apos; U+00027
-ApplyFunction; U+02061
-approx; U+02248
-approxeq; U+0224A
-Aring; U+000C5
-aring; U+000E5
-Ascr; U+1D49C
-ascr; U+1D4B6
-Assign; U+02254
-ast; U+0002A
-asymp; U+02248
-asympeq; U+0224D
-Atilde; U+000C3
-atilde; U+000E3
-Auml; U+000C4
-auml; U+000E4
-awconint; U+02233
-awint; U+02A11
-backcong; U+0224C
-backepsilon; U+003F6
-backprime; U+02035
-backsim; U+0223D
-backsimeq; U+022CD
-Backslash; U+02216
-Barv; U+02AE7
-barvee; U+022BD
-Barwed; U+02306
-barwed; U+02305
-barwedge; U+02305
-bbrk; U+023B5
-bbrktbrk; U+023B6
-bcong; U+0224C
-Bcy; U+00411
-bcy; U+00431
-bdquo; U+0201E
-becaus; U+02235
-Because; U+02235
-because; U+02235
-bemptyv; U+029B0
-bepsi; U+003F6
-bernou; U+0212C
-Bernoullis; U+0212C
-Beta; U+00392
-beta; U+003B2
-beth; U+02136
-between; U+0226C
-Bfr; U+1D505
-bfr; U+1D51F
-bigcap; U+022C2
-bigcirc; U+025EF
-bigcup; U+022C3
-bigodot; U+02A00
-bigoplus; U+02A01
-bigotimes; U+02A02
-bigsqcup; U+02A06
-bigstar; U+02605
-bigtriangledown; U+025BD
-bigtriangleup; U+025B3
-biguplus; U+02A04
-bigvee; U+022C1
-bigwedge; U+022C0
-bkarow; U+0290D
-blacklozenge; U+029EB
-blacksquare; U+025AA
-blacktriangle; U+025B4
-blacktriangledown; U+025BE
-blacktriangleleft; U+025C2
-blacktriangleright; U+025B8
-blank; U+02423
-blk12; U+02592
-blk14; U+02591
-blk34; U+02593
-block; U+02588
-bne; U+0003D U+020E5
-bnequiv; U+02261 U+020E5
-bNot; U+02AED
-bnot; U+02310
-Bopf; U+1D539
-bopf; U+1D553
-bot; U+022A5
-bottom; U+022A5
-bowtie; U+022C8
-boxbox; U+029C9
-boxDL; U+02557
-boxDl; U+02556
-boxdL; U+02555
-boxdl; U+02510
-boxDR; U+02554
-boxDr; U+02553
-boxdR; U+02552
-boxdr; U+0250C
-boxH; U+02550
-boxh; U+02500
-boxHD; U+02566
-boxHd; U+02564
-boxhD; U+02565
-boxhd; U+0252C
-boxHU; U+02569
-boxHu; U+02567
-boxhU; U+02568
-boxhu; U+02534
-boxminus; U+0229F
-boxplus; U+0229E
-boxtimes; U+022A0
-boxUL; U+0255D
-boxUl; U+0255C
-boxuL; U+0255B
-boxul; U+02518
-boxUR; U+0255A
-boxUr; U+02559
-boxuR; U+02558
-boxur; U+02514
-boxV; U+02551
-boxv; U+02502
-boxVH; U+0256C
-boxVh; U+0256B
-boxvH; U+0256A
-boxvh; U+0253C
-boxVL; U+02563
-boxVl; U+02562
-boxvL; U+02561
-boxvl; U+02524
-boxVR; U+02560
-boxVr; U+0255F
-boxvR; U+0255E
-boxvr; U+0251C
-bprime; U+02035
-Breve; U+002D8
-breve; U+002D8
-brvbar; U+000A6
-Bscr; U+0212C
-bscr; U+1D4B7
-bsemi; U+0204F
-bsim; U+0223D
-bsime; U+022CD
-bsol; U+0005C
-bsolb; U+029C5
-bsolhsub; U+027C8
-bull; U+02022
-bullet; U+02022
-bump; U+0224E
-bumpE; U+02AAE
-bumpe; U+0224F
-Bumpeq; U+0224E
-bumpeq; U+0224F
-Cacute; U+00106
-cacute; U+00107
-Cap; U+022D2
-cap; U+02229
-capand; U+02A44
-capbrcup; U+02A49
-capcap; U+02A4B
-capcup; U+02A47
-capdot; U+02A40
-CapitalDifferentialD; U+02145
-caps; U+02229 U+0FE00
-caret; U+02041
-caron; U+002C7
-Cayleys; U+0212D
-ccaps; U+02A4D
-Ccaron; U+0010C
-ccaron; U+0010D
-Ccedil; U+000C7
-ccedil; U+000E7
-Ccirc; U+00108
-ccirc; U+00109
-Cconint; U+02230
-ccups; U+02A4C
-ccupssm; U+02A50
-Cdot; U+0010A
-cdot; U+0010B
-cedil; U+000B8
-Cedilla; U+000B8
-cemptyv; U+029B2
-cent; U+000A2
-CenterDot; U+000B7
-centerdot; U+000B7
-Cfr; U+0212D
-cfr; U+1D520
-CHcy; U+00427
-chcy; U+00447
-check; U+02713
-checkmark; U+02713
-Chi; U+003A7
-chi; U+003C7
-cir; U+025CB
-circ; U+002C6
-circeq; U+02257
-circlearrowleft; U+021BA
-circlearrowright; U+021BB
-circledast; U+0229B
-circledcirc; U+0229A
-circleddash; U+0229D
-CircleDot; U+02299
-circledR; U+000AE
-circledS; U+024C8
-CircleMinus; U+02296
-CirclePlus; U+02295
-CircleTimes; U+02297
-cirE; U+029C3
-cire; U+02257
-cirfnint; U+02A10
-cirmid; U+02AEF
-cirscir; U+029C2
-ClockwiseContourIntegral; U+02232
-CloseCurlyDoubleQuote; U+0201D
-CloseCurlyQuote; U+02019
-clubs; U+02663
-clubsuit; U+02663
-Colon; U+02237
-colon; U+0003A
-Colone; U+02A74
-colone; U+02254
-coloneq; U+02254
-comma; U+0002C
-commat; U+00040
-comp; U+02201
-compfn; U+02218
-complement; U+02201
-complexes; U+02102
-cong; U+02245
-congdot; U+02A6D
-Congruent; U+02261
-Conint; U+0222F
-conint; U+0222E
-ContourIntegral; U+0222E
-Copf; U+02102
-copf; U+1D554
-coprod; U+02210
-Coproduct; U+02210
-COPY; U+000A9
-copy; U+000A9
-copysr; U+02117
-CounterClockwiseContourIntegral; U+02233
-crarr; U+021B5
-Cross; U+02A2F
-cross; U+02717
-Cscr; U+1D49E
-cscr; U+1D4B8
-csub; U+02ACF
-csube; U+02AD1
-csup; U+02AD0
-csupe; U+02AD2
-ctdot; U+022EF
-cudarrl; U+02938
-cudarrr; U+02935
-cuepr; U+022DE
-cuesc; U+022DF
-cularr; U+021B6
-cularrp; U+0293D
-Cup; U+022D3
-cup; U+0222A
-cupbrcap; U+02A48
-CupCap; U+0224D
-cupcap; U+02A46
-cupcup; U+02A4A
-cupdot; U+0228D
-cupor; U+02A45
-cups; U+0222A U+0FE00
-curarr; U+021B7
-curarrm; U+0293C
-curlyeqprec; U+022DE
-curlyeqsucc; U+022DF
-curlyvee; U+022CE
-curlywedge; U+022CF
-curren; U+000A4
-curvearrowleft; U+021B6
-curvearrowright; U+021B7
-cuvee; U+022CE
-cuwed; U+022CF
-cwconint; U+02232
-cwint; U+02231
-cylcty; U+0232D
-Dagger; U+02021
-dagger; U+02020
-daleth; U+02138
-Darr; U+021A1
-dArr; U+021D3
-darr; U+02193
-dash; U+02010
-Dashv; U+02AE4
-dashv; U+022A3
-dbkarow; U+0290F
-dblac; U+002DD
-Dcaron; U+0010E
-dcaron; U+0010F
-Dcy; U+00414
-dcy; U+00434
-DD; U+02145
-dd; U+02146
-ddagger; U+02021
-ddarr; U+021CA
-DDotrahd; U+02911
-ddotseq; U+02A77
-deg; U+000B0
-Del; U+02207
-Delta; U+00394
-delta; U+003B4
-demptyv; U+029B1
-dfisht; U+0297F
-Dfr; U+1D507
-dfr; U+1D521
-dHar; U+02965
-dharl; U+021C3
-dharr; U+021C2
-DiacriticalAcute; U+000B4
-DiacriticalDot; U+002D9
-DiacriticalDoubleAcute; U+002DD
-DiacriticalGrave; U+00060
-DiacriticalTilde; U+002DC
-diam; U+022C4
-Diamond; U+022C4
-diamond; U+022C4
-diamondsuit; U+02666
-diams; U+02666
-die; U+000A8
-DifferentialD; U+02146
-digamma; U+003DD
-disin; U+022F2
-div; U+000F7
-divide; U+000F7
-divideontimes; U+022C7
-divonx; U+022C7
-DJcy; U+00402
-djcy; U+00452
-dlcorn; U+0231E
-dlcrop; U+0230D
-dollar; U+00024
-Dopf; U+1D53B
-dopf; U+1D555
-Dot; U+000A8
-dot; U+002D9
-DotDot; U+020DC
-doteq; U+02250
-doteqdot; U+02251
-DotEqual; U+02250
-dotminus; U+02238
-dotplus; U+02214
-dotsquare; U+022A1
-doublebarwedge; U+02306
-DoubleContourIntegral; U+0222F
-DoubleDot; U+000A8
-DoubleDownArrow; U+021D3
-DoubleLeftArrow; U+021D0
-DoubleLeftRightArrow; U+021D4
-DoubleLeftTee; U+02AE4
-DoubleLongLeftArrow; U+027F8
-DoubleLongLeftRightArrow; U+027FA
-DoubleLongRightArrow; U+027F9
-DoubleRightArrow; U+021D2
-DoubleRightTee; U+022A8
-DoubleUpArrow; U+021D1
-DoubleUpDownArrow; U+021D5
-DoubleVerticalBar; U+02225
-DownArrow; U+02193
-Downarrow; U+021D3
-downarrow; U+02193
-DownArrowBar; U+02913
-DownArrowUpArrow; U+021F5
-DownBreve; U+00311
-downdownarrows; U+021CA
-downharpoonleft; U+021C3
-downharpoonright; U+021C2
-DownLeftRightVector; U+02950
-DownLeftTeeVector; U+0295E
-DownLeftVector; U+021BD
-DownLeftVectorBar; U+02956
-DownRightTeeVector; U+0295F
-DownRightVector; U+021C1
-DownRightVectorBar; U+02957
-DownTee; U+022A4
-DownTeeArrow; U+021A7
-drbkarow; U+02910
-drcorn; U+0231F
-drcrop; U+0230C
-Dscr; U+1D49F
-dscr; U+1D4B9
-DScy; U+00405
-dscy; U+00455
-dsol; U+029F6
-Dstrok; U+00110
-dstrok; U+00111
-dtdot; U+022F1
-dtri; U+025BF
-dtrif; U+025BE
-duarr; U+021F5
-duhar; U+0296F
-dwangle; U+029A6
-DZcy; U+0040F
-dzcy; U+0045F
-dzigrarr; U+027FF
-Eacute; U+000C9
-eacute; U+000E9
-easter; U+02A6E
-Ecaron; U+0011A
-ecaron; U+0011B
-ecir; U+02256
-Ecirc; U+000CA
-ecirc; U+000EA
-ecolon; U+02255
-Ecy; U+0042D
-ecy; U+0044D
-eDDot; U+02A77
-Edot; U+00116
-eDot; U+02251
-edot; U+00117
-ee; U+02147
-efDot; U+02252
-Efr; U+1D508
-efr; U+1D522
-eg; U+02A9A
-Egrave; U+000C8
-egrave; U+000E8
-egs; U+02A96
-egsdot; U+02A98
-el; U+02A99
-Element; U+02208
-elinters; U+023E7
-ell; U+02113
-els; U+02A95
-elsdot; U+02A97
-Emacr; U+00112
-emacr; U+00113
-empty; U+02205
-emptyset; U+02205
-EmptySmallSquare; U+025FB
-emptyv; U+02205
-EmptyVerySmallSquare; U+025AB
-emsp; U+02003
-emsp13; U+02004
-emsp14; U+02005
-ENG; U+0014A
-eng; U+0014B
-ensp; U+02002
-Eogon; U+00118
-eogon; U+00119
-Eopf; U+1D53C
-eopf; U+1D556
-epar; U+022D5
-eparsl; U+029E3
-eplus; U+02A71
-epsi; U+003B5
-Epsilon; U+00395
-epsilon; U+003B5
-epsiv; U+003F5
-eqcirc; U+02256
-eqcolon; U+02255
-eqsim; U+02242
-eqslantgtr; U+02A96
-eqslantless; U+02A95
-Equal; U+02A75
-equals; U+0003D
-EqualTilde; U+02242
-equest; U+0225F
-Equilibrium; U+021CC
-equiv; U+02261
-equivDD; U+02A78
-eqvparsl; U+029E5
-erarr; U+02971
-erDot; U+02253
-Escr; U+02130
-escr; U+0212F
-esdot; U+02250
-Esim; U+02A73
-esim; U+02242
-Eta; U+00397
-eta; U+003B7
-ETH; U+000D0
-eth; U+000F0
-Euml; U+000CB
-euml; U+000EB
-euro; U+020AC
-excl; U+00021
-exist; U+02203
-Exists; U+02203
-expectation; U+02130
-ExponentialE; U+02147
-exponentiale; U+02147
-fallingdotseq; U+02252
-Fcy; U+00424
-fcy; U+00444
-female; U+02640
-ffilig; U+0FB03
-fflig; U+0FB00
-ffllig; U+0FB04
-Ffr; U+1D509
-ffr; U+1D523
-filig; U+0FB01
-FilledSmallSquare; U+025FC
-FilledVerySmallSquare; U+025AA
-fjlig; U+00066 U+0006A
-flat; U+0266D
-fllig; U+0FB02
-fltns; U+025B1
-fnof; U+00192
-Fopf; U+1D53D
-fopf; U+1D557
-ForAll; U+02200
-forall; U+02200
-fork; U+022D4
-forkv; U+02AD9
-Fouriertrf; U+02131
-fpartint; U+02A0D
-frac12; U+000BD
-frac13; U+02153
-frac14; U+000BC
-frac15; U+02155
-frac16; U+02159
-frac18; U+0215B
-frac23; U+02154
-frac25; U+02156
-frac34; U+000BE
-frac35; U+02157
-frac38; U+0215C
-frac45; U+02158
-frac56; U+0215A
-frac58; U+0215D
-frac78; U+0215E
-frasl; U+02044
-frown; U+02322
-Fscr; U+02131
-fscr; U+1D4BB
-gacute; U+001F5
-Gamma; U+00393
-gamma; U+003B3
-Gammad; U+003DC
-gammad; U+003DD
-gap; U+02A86
-Gbreve; U+0011E
-gbreve; U+0011F
-Gcedil; U+00122
-Gcirc; U+0011C
-gcirc; U+0011D
-Gcy; U+00413
-gcy; U+00433
-Gdot; U+00120
-gdot; U+00121
-gE; U+02267
-ge; U+02265
-gEl; U+02A8C
-gel; U+022DB
-geq; U+02265
-geqq; U+02267
-geqslant; U+02A7E
-ges; U+02A7E
-gescc; U+02AA9
-gesdot; U+02A80
-gesdoto; U+02A82
-gesdotol; U+02A84
-gesl; U+022DB U+0FE00
-gesles; U+02A94
-Gfr; U+1D50A
-gfr; U+1D524
-Gg; U+022D9
-gg; U+0226B
-ggg; U+022D9
-gimel; U+02137
-GJcy; U+00403
-gjcy; U+00453
-gl; U+02277
-gla; U+02AA5
-glE; U+02A92
-glj; U+02AA4
-gnap; U+02A8A
-gnapprox; U+02A8A
-gnE; U+02269
-gne; U+02A88
-gneq; U+02A88
-gneqq; U+02269
-gnsim; U+022E7
-Gopf; U+1D53E
-gopf; U+1D558
-grave; U+00060
-GreaterEqual; U+02265
-GreaterEqualLess; U+022DB
-GreaterFullEqual; U+02267
-GreaterGreater; U+02AA2
-GreaterLess; U+02277
-GreaterSlantEqual; U+02A7E
-GreaterTilde; U+02273
-Gscr; U+1D4A2
-gscr; U+0210A
-gsim; U+02273
-gsime; U+02A8E
-gsiml; U+02A90
-GT; U+0003E
-Gt; U+0226B
-gt; U+0003E
-gtcc; U+02AA7
-gtcir; U+02A7A
-gtdot; U+022D7
-gtlPar; U+02995
-gtquest; U+02A7C
-gtrapprox; U+02A86
-gtrarr; U+02978
-gtrdot; U+022D7
-gtreqless; U+022DB
-gtreqqless; U+02A8C
-gtrless; U+02277
-gtrsim; U+02273
-gvertneqq; U+02269 U+0FE00
-gvnE; U+02269 U+0FE00
-Hacek; U+002C7
-hairsp; U+0200A
-half; U+000BD
-hamilt; U+0210B
-HARDcy; U+0042A
-hardcy; U+0044A
-hArr; U+021D4
-harr; U+02194
-harrcir; U+02948
-harrw; U+021AD
-Hat; U+0005E
-hbar; U+0210F
-Hcirc; U+00124
-hcirc; U+00125
-hearts; U+02665
-heartsuit; U+02665
-hellip; U+02026
-hercon; U+022B9
-Hfr; U+0210C
-hfr; U+1D525
-HilbertSpace; U+0210B
-hksearow; U+02925
-hkswarow; U+02926
-hoarr; U+021FF
-homtht; U+0223B
-hookleftarrow; U+021A9
-hookrightarrow; U+021AA
-Hopf; U+0210D
-hopf; U+1D559
-horbar; U+02015
-HorizontalLine; U+02500
-Hscr; U+0210B
-hscr; U+1D4BD
-hslash; U+0210F
-Hstrok; U+00126
-hstrok; U+00127
-HumpDownHump; U+0224E
-HumpEqual; U+0224F
-hybull; U+02043
-hyphen; U+02010
-Iacute; U+000CD
-iacute; U+000ED
-ic; U+02063
-Icirc; U+000CE
-icirc; U+000EE
-Icy; U+00418
-icy; U+00438
-Idot; U+00130
-IEcy; U+00415
-iecy; U+00435
-iexcl; U+000A1
-iff; U+021D4
-Ifr; U+02111
-ifr; U+1D526
-Igrave; U+000CC
-igrave; U+000EC
-ii; U+02148
-iiiint; U+02A0C
-iiint; U+0222D
-iinfin; U+029DC
-iiota; U+02129
-IJlig; U+00132
-ijlig; U+00133
-Im; U+02111
-Imacr; U+0012A
-imacr; U+0012B
-image; U+02111
-ImaginaryI; U+02148
-imagline; U+02110
-imagpart; U+02111
-imath; U+00131
-imof; U+022B7
-imped; U+001B5
-Implies; U+021D2
-in; U+02208
-incare; U+02105
-infin; U+0221E
-infintie; U+029DD
-inodot; U+00131
-Int; U+0222C
-int; U+0222B
-intcal; U+022BA
-integers; U+02124
-Integral; U+0222B
-intercal; U+022BA
-Intersection; U+022C2
-intlarhk; U+02A17
-intprod; U+02A3C
-InvisibleComma; U+02063
-InvisibleTimes; U+02062
-IOcy; U+00401
-iocy; U+00451
-Iogon; U+0012E
-iogon; U+0012F
-Iopf; U+1D540
-iopf; U+1D55A
-Iota; U+00399
-iota; U+003B9
-iprod; U+02A3C
-iquest; U+000BF
-Iscr; U+02110
-iscr; U+1D4BE
-isin; U+02208
-isindot; U+022F5
-isinE; U+022F9
-isins; U+022F4
-isinsv; U+022F3
-isinv; U+02208
-it; U+02062
-Itilde; U+00128
-itilde; U+00129
-Iukcy; U+00406
-iukcy; U+00456
-Iuml; U+000CF
-iuml; U+000EF
-Jcirc; U+00134
-jcirc; U+00135
-Jcy; U+00419
-jcy; U+00439
-Jfr; U+1D50D
-jfr; U+1D527
-jmath; U+00237
-Jopf; U+1D541
-jopf; U+1D55B
-Jscr; U+1D4A5
-jscr; U+1D4BF
-Jsercy; U+00408
-jsercy; U+00458
-Jukcy; U+00404
-jukcy; U+00454
-Kappa; U+0039A
-kappa; U+003BA
-kappav; U+003F0
-Kcedil; U+00136
-kcedil; U+00137
-Kcy; U+0041A
-kcy; U+0043A
-Kfr; U+1D50E
-kfr; U+1D528
-kgreen; U+00138
-KHcy; U+00425
-khcy; U+00445
-KJcy; U+0040C
-kjcy; U+0045C
-Kopf; U+1D542
-kopf; U+1D55C
-Kscr; U+1D4A6
-kscr; U+1D4C0
-lAarr; U+021DA
-Lacute; U+00139
-lacute; U+0013A
-laemptyv; U+029B4
-lagran; U+02112
-Lambda; U+0039B
-lambda; U+003BB
-Lang; U+027EA
-lang; U+027E8
-langd; U+02991
-langle; U+027E8
-lap; U+02A85
-Laplacetrf; U+02112
-laquo; U+000AB
-Larr; U+0219E
-lArr; U+021D0
-larr; U+02190
-larrb; U+021E4
-larrbfs; U+0291F
-larrfs; U+0291D
-larrhk; U+021A9
-larrlp; U+021AB
-larrpl; U+02939
-larrsim; U+02973
-larrtl; U+021A2
-lat; U+02AAB
-lAtail; U+0291B
-latail; U+02919
-late; U+02AAD
-lates; U+02AAD U+0FE00
-lBarr; U+0290E
-lbarr; U+0290C
-lbbrk; U+02772
-lbrace; U+0007B
-lbrack; U+0005B
-lbrke; U+0298B
-lbrksld; U+0298F
-lbrkslu; U+0298D
-Lcaron; U+0013D
-lcaron; U+0013E
-Lcedil; U+0013B
-lcedil; U+0013C
-lceil; U+02308
-lcub; U+0007B
-Lcy; U+0041B
-lcy; U+0043B
-ldca; U+02936
-ldquo; U+0201C
-ldquor; U+0201E
-ldrdhar; U+02967
-ldrushar; U+0294B
-ldsh; U+021B2
-lE; U+02266
-le; U+02264
-LeftAngleBracket; U+027E8
-LeftArrow; U+02190
-Leftarrow; U+021D0
-leftarrow; U+02190
-LeftArrowBar; U+021E4
-LeftArrowRightArrow; U+021C6
-leftarrowtail; U+021A2
-LeftCeiling; U+02308
-LeftDoubleBracket; U+027E6
-LeftDownTeeVector; U+02961
-LeftDownVector; U+021C3
-LeftDownVectorBar; U+02959
-LeftFloor; U+0230A
-leftharpoondown; U+021BD
-leftharpoonup; U+021BC
-leftleftarrows; U+021C7
-LeftRightArrow; U+02194
-Leftrightarrow; U+021D4
-leftrightarrow; U+02194
-leftrightarrows; U+021C6
-leftrightharpoons; U+021CB
-leftrightsquigarrow; U+021AD
-LeftRightVector; U+0294E
-LeftTee; U+022A3
-LeftTeeArrow; U+021A4
-LeftTeeVector; U+0295A
-leftthreetimes; U+022CB
-LeftTriangle; U+022B2
-LeftTriangleBar; U+029CF
-LeftTriangleEqual; U+022B4
-LeftUpDownVector; U+02951
-LeftUpTeeVector; U+02960
-LeftUpVector; U+021BF
-LeftUpVectorBar; U+02958
-LeftVector; U+021BC
-LeftVectorBar; U+02952
-lEg; U+02A8B
-leg; U+022DA
-leq; U+02264
-leqq; U+02266
-leqslant; U+02A7D
-les; U+02A7D
-lescc; U+02AA8
-lesdot; U+02A7F
-lesdoto; U+02A81
-lesdotor; U+02A83
-lesg; U+022DA U+0FE00
-lesges; U+02A93
-lessapprox; U+02A85
-lessdot; U+022D6
-lesseqgtr; U+022DA
-lesseqqgtr; U+02A8B
-LessEqualGreater; U+022DA
-LessFullEqual; U+02266
-LessGreater; U+02276
-lessgtr; U+02276
-LessLess; U+02AA1
-lesssim; U+02272
-LessSlantEqual; U+02A7D
-LessTilde; U+02272
-lfisht; U+0297C
-lfloor; U+0230A
-Lfr; U+1D50F
-lfr; U+1D529
-lg; U+02276
-lgE; U+02A91
-lHar; U+02962
-lhard; U+021BD
-lharu; U+021BC
-lharul; U+0296A
-lhblk; U+02584
-LJcy; U+00409
-ljcy; U+00459
-Ll; U+022D8
-ll; U+0226A
-llarr; U+021C7
-llcorner; U+0231E
-Lleftarrow; U+021DA
-llhard; U+0296B
-lltri; U+025FA
-Lmidot; U+0013F
-lmidot; U+00140
-lmoust; U+023B0
-lmoustache; U+023B0
-lnap; U+02A89
-lnapprox; U+02A89
-lnE; U+02268
-lne; U+02A87
-lneq; U+02A87
-lneqq; U+02268
-lnsim; U+022E6
-loang; U+027EC
-loarr; U+021FD
-lobrk; U+027E6
-LongLeftArrow; U+027F5
-Longleftarrow; U+027F8
-longleftarrow; U+027F5
-LongLeftRightArrow; U+027F7
-Longleftrightarrow; U+027FA
-longleftrightarrow; U+027F7
-longmapsto; U+027FC
-LongRightArrow; U+027F6
-Longrightarrow; U+027F9
-longrightarrow; U+027F6
-looparrowleft; U+021AB
-looparrowright; U+021AC
-lopar; U+02985
-Lopf; U+1D543
-lopf; U+1D55D
-loplus; U+02A2D
-lotimes; U+02A34
-lowast; U+02217
-lowbar; U+0005F
-LowerLeftArrow; U+02199
-LowerRightArrow; U+02198
-loz; U+025CA
-lozenge; U+025CA
-lozf; U+029EB
-lpar; U+00028
-lparlt; U+02993
-lrarr; U+021C6
-lrcorner; U+0231F
-lrhar; U+021CB
-lrhard; U+0296D
-lrm; U+0200E
-lrtri; U+022BF
-lsaquo; U+02039
-Lscr; U+02112
-lscr; U+1D4C1
-Lsh; U+021B0
-lsh; U+021B0
-lsim; U+02272
-lsime; U+02A8D
-lsimg; U+02A8F
-lsqb; U+0005B
-lsquo; U+02018
-lsquor; U+0201A
-Lstrok; U+00141
-lstrok; U+00142
-LT; U+0003C
-Lt; U+0226A
-lt; U+0003C
-ltcc; U+02AA6
-ltcir; U+02A79
-ltdot; U+022D6
-lthree; U+022CB
-ltimes; U+022C9
-ltlarr; U+02976
-ltquest; U+02A7B
-ltri; U+025C3
-ltrie; U+022B4
-ltrif; U+025C2
-ltrPar; U+02996
-lurdshar; U+0294A
-luruhar; U+02966
-lvertneqq; U+02268 U+0FE00
-lvnE; U+02268 U+0FE00
-macr; U+000AF
-male; U+02642
-malt; U+02720
-maltese; U+02720
-Map; U+02905
-map; U+021A6
-mapsto; U+021A6
-mapstodown; U+021A7
-mapstoleft; U+021A4
-mapstoup; U+021A5
-marker; U+025AE
-mcomma; U+02A29
-Mcy; U+0041C
-mcy; U+0043C
-mdash; U+02014
-mDDot; U+0223A
-measuredangle; U+02221
-MediumSpace; U+0205F
-Mellintrf; U+02133
-Mfr; U+1D510
-mfr; U+1D52A
-mho; U+02127
-micro; U+000B5
-mid; U+02223
-midast; U+0002A
-midcir; U+02AF0
-middot; U+000B7
-minus; U+02212
-minusb; U+0229F
-minusd; U+02238
-minusdu; U+02A2A
-MinusPlus; U+02213
-mlcp; U+02ADB
-mldr; U+02026
-mnplus; U+02213
-models; U+022A7
-Mopf; U+1D544
-mopf; U+1D55E
-mp; U+02213
-Mscr; U+02133
-mscr; U+1D4C2
-mstpos; U+0223E
-Mu; U+0039C
-mu; U+003BC
-multimap; U+022B8
-mumap; U+022B8
-nabla; U+02207
-Nacute; U+00143
-nacute; U+00144
-nang; U+02220 U+020D2
-nap; U+02249
-napE; U+02A70 U+00338
-napid; U+0224B U+00338
-napos; U+00149
-napprox; U+02249
-natur; U+0266E
-natural; U+0266E
-naturals; U+02115
-nbsp; U+000A0
-nbump; U+0224E U+00338
-nbumpe; U+0224F U+00338
-ncap; U+02A43
-Ncaron; U+00147
-ncaron; U+00148
-Ncedil; U+00145
-ncedil; U+00146
-ncong; U+02247
-ncongdot; U+02A6D U+00338
-ncup; U+02A42
-Ncy; U+0041D
-ncy; U+0043D
-ndash; U+02013
-ne; U+02260
-nearhk; U+02924
-neArr; U+021D7
-nearr; U+02197
-nearrow; U+02197
-nedot; U+02250 U+00338
-NegativeMediumSpace; U+0200B
-NegativeThickSpace; U+0200B
-NegativeThinSpace; U+0200B
-NegativeVeryThinSpace; U+0200B
-nequiv; U+02262
-nesear; U+02928
-nesim; U+02242 U+00338
-NestedGreaterGreater; U+0226B
-NestedLessLess; U+0226A
-NewLine; U+0000A
-nexist; U+02204
-nexists; U+02204
-Nfr; U+1D511
-nfr; U+1D52B
-ngE; U+02267 U+00338
-nge; U+02271
-ngeq; U+02271
-ngeqq; U+02267 U+00338
-ngeqslant; U+02A7E U+00338
-nges; U+02A7E U+00338
-nGg; U+022D9 U+00338
-ngsim; U+02275
-nGt; U+0226B U+020D2
-ngt; U+0226F
-ngtr; U+0226F
-nGtv; U+0226B U+00338
-nhArr; U+021CE
-nharr; U+021AE
-nhpar; U+02AF2
-ni; U+0220B
-nis; U+022FC
-nisd; U+022FA
-niv; U+0220B
-NJcy; U+0040A
-njcy; U+0045A
-nlArr; U+021CD
-nlarr; U+0219A
-nldr; U+02025
-nlE; U+02266 U+00338
-nle; U+02270
-nLeftarrow; U+021CD
-nleftarrow; U+0219A
-nLeftrightarrow; U+021CE
-nleftrightarrow; U+021AE
-nleq; U+02270
-nleqq; U+02266 U+00338
-nleqslant; U+02A7D U+00338
-nles; U+02A7D U+00338
-nless; U+0226E
-nLl; U+022D8 U+00338
-nlsim; U+02274
-nLt; U+0226A U+020D2
-nlt; U+0226E
-nltri; U+022EA
-nltrie; U+022EC
-nLtv; U+0226A U+00338
-nmid; U+02224
-NoBreak; U+02060
-NonBreakingSpace; U+000A0
-Nopf; U+02115
-nopf; U+1D55F
-Not; U+02AEC
-not; U+000AC
-NotCongruent; U+02262
-NotCupCap; U+0226D
-NotDoubleVerticalBar; U+02226
-NotElement; U+02209
-NotEqual; U+02260
-NotEqualTilde; U+02242 U+00338
-NotExists; U+02204
-NotGreater; U+0226F
-NotGreaterEqual; U+02271
-NotGreaterFullEqual; U+02267 U+00338
-NotGreaterGreater; U+0226B U+00338
-NotGreaterLess; U+02279
-NotGreaterSlantEqual; U+02A7E U+00338
-NotGreaterTilde; U+02275
-NotHumpDownHump; U+0224E U+00338
-NotHumpEqual; U+0224F U+00338
-notin; U+02209
-notindot; U+022F5 U+00338
-notinE; U+022F9 U+00338
-notinva; U+02209
-notinvb; U+022F7
-notinvc; U+022F6
-NotLeftTriangle; U+022EA
-NotLeftTriangleBar; U+029CF U+00338
-NotLeftTriangleEqual; U+022EC
-NotLess; U+0226E
-NotLessEqual; U+02270
-NotLessGreater; U+02278
-NotLessLess; U+0226A U+00338
-NotLessSlantEqual; U+02A7D U+00338
-NotLessTilde; U+02274
-NotNestedGreaterGreater; U+02AA2 U+00338
-NotNestedLessLess; U+02AA1 U+00338
-notni; U+0220C
-notniva; U+0220C
-notnivb; U+022FE
-notnivc; U+022FD
-NotPrecedes; U+02280
-NotPrecedesEqual; U+02AAF U+00338
-NotPrecedesSlantEqual; U+022E0
-NotReverseElement; U+0220C
-NotRightTriangle; U+022EB
-NotRightTriangleBar; U+029D0 U+00338
-NotRightTriangleEqual; U+022ED
-NotSquareSubset; U+0228F U+00338
-NotSquareSubsetEqual; U+022E2
-NotSquareSuperset; U+02290 U+00338
-NotSquareSupersetEqual; U+022E3
-NotSubset; U+02282 U+020D2
-NotSubsetEqual; U+02288
-NotSucceeds; U+02281
-NotSucceedsEqual; U+02AB0 U+00338
-NotSucceedsSlantEqual; U+022E1
-NotSucceedsTilde; U+0227F U+00338
-NotSuperset; U+02283 U+020D2
-NotSupersetEqual; U+02289
-NotTilde; U+02241
-NotTildeEqual; U+02244
-NotTildeFullEqual; U+02247
-NotTildeTilde; U+02249
-NotVerticalBar; U+02224
-npar; U+02226
-nparallel; U+02226
-nparsl; U+02AFD U+020E5
-npart; U+02202 U+00338
-npolint; U+02A14
-npr; U+02280
-nprcue; U+022E0
-npre; U+02AAF U+00338
-nprec; U+02280
-npreceq; U+02AAF U+00338
-nrArr; U+021CF
-nrarr; U+0219B
-nrarrc; U+02933 U+00338
-nrarrw; U+0219D U+00338
-nRightarrow; U+021CF
-nrightarrow; U+0219B
-nrtri; U+022EB
-nrtrie; U+022ED
-nsc; U+02281
-nsccue; U+022E1
-nsce; U+02AB0 U+00338
-Nscr; U+1D4A9
-nscr; U+1D4C3
-nshortmid; U+02224
-nshortparallel; U+02226
-nsim; U+02241
-nsime; U+02244
-nsimeq; U+02244
-nsmid; U+02224
-nspar; U+02226
-nsqsube; U+022E2
-nsqsupe; U+022E3
-nsub; U+02284
-nsubE; U+02AC5 U+00338
-nsube; U+02288
-nsubset; U+02282 U+020D2
-nsubseteq; U+02288
-nsubseteqq; U+02AC5 U+00338
-nsucc; U+02281
-nsucceq; U+02AB0 U+00338
-nsup; U+02285
-nsupE; U+02AC6 U+00338
-nsupe; U+02289
-nsupset; U+02283 U+020D2
-nsupseteq; U+02289
-nsupseteqq; U+02AC6 U+00338
-ntgl; U+02279
-Ntilde; U+000D1
-ntilde; U+000F1
-ntlg; U+02278
-ntriangleleft; U+022EA
-ntrianglelefteq; U+022EC
-ntriangleright; U+022EB
-ntrianglerighteq; U+022ED
-Nu; U+0039D
-nu; U+003BD
-num; U+00023
-numero; U+02116
-numsp; U+02007
-nvap; U+0224D U+020D2
-nVDash; U+022AF
-nVdash; U+022AE
-nvDash; U+022AD
-nvdash; U+022AC
-nvge; U+02265 U+020D2
-nvgt; U+0003E U+020D2
-nvHarr; U+02904
-nvinfin; U+029DE
-nvlArr; U+02902
-nvle; U+02264 U+020D2
-nvlt; U+0003C U+020D2
-nvltrie; U+022B4 U+020D2
-nvrArr; U+02903
-nvrtrie; U+022B5 U+020D2
-nvsim; U+0223C U+020D2
-nwarhk; U+02923
-nwArr; U+021D6
-nwarr; U+02196
-nwarrow; U+02196
-nwnear; U+02927
-Oacute; U+000D3
-oacute; U+000F3
-oast; U+0229B
-ocir; U+0229A
-Ocirc; U+000D4
-ocirc; U+000F4
-Ocy; U+0041E
-ocy; U+0043E
-odash; U+0229D
-Odblac; U+00150
-odblac; U+00151
-odiv; U+02A38
-odot; U+02299
-odsold; U+029BC
-OElig; U+00152
-oelig; U+00153
-ofcir; U+029BF
-Ofr; U+1D512
-ofr; U+1D52C
-ogon; U+002DB
-Ograve; U+000D2
-ograve; U+000F2
-ogt; U+029C1
-ohbar; U+029B5
-ohm; U+003A9
-oint; U+0222E
-olarr; U+021BA
-olcir; U+029BE
-olcross; U+029BB
-oline; U+0203E
-olt; U+029C0
-Omacr; U+0014C
-omacr; U+0014D
-Omega; U+003A9
-omega; U+003C9
-Omicron; U+0039F
-omicron; U+003BF
-omid; U+029B6
-ominus; U+02296
-Oopf; U+1D546
-oopf; U+1D560
-opar; U+029B7
-OpenCurlyDoubleQuote; U+0201C
-OpenCurlyQuote; U+02018
-operp; U+029B9
-oplus; U+02295
-Or; U+02A54
-or; U+02228
-orarr; U+021BB
-ord; U+02A5D
-order; U+02134
-orderof; U+02134
-ordf; U+000AA
-ordm; U+000BA
-origof; U+022B6
-oror; U+02A56
-orslope; U+02A57
-orv; U+02A5B
-oS; U+024C8
-Oscr; U+1D4AA
-oscr; U+02134
-Oslash; U+000D8
-oslash; U+000F8
-osol; U+02298
-Otilde; U+000D5
-otilde; U+000F5
-Otimes; U+02A37
-otimes; U+02297
-otimesas; U+02A36
-Ouml; U+000D6
-ouml; U+000F6
-ovbar; U+0233D
-OverBar; U+0203E
-OverBrace; U+023DE
-OverBracket; U+023B4
-OverParenthesis; U+023DC
-par; U+02225
-para; U+000B6
-parallel; U+02225
-parsim; U+02AF3
-parsl; U+02AFD
-part; U+02202
-PartialD; U+02202
-Pcy; U+0041F
-pcy; U+0043F
-percnt; U+00025
-period; U+0002E
-permil; U+02030
-perp; U+022A5
-pertenk; U+02031
-Pfr; U+1D513
-pfr; U+1D52D
-Phi; U+003A6
-phi; U+003C6
-phiv; U+003D5
-phmmat; U+02133
-phone; U+0260E
-Pi; U+003A0
-pi; U+003C0
-pitchfork; U+022D4
-piv; U+003D6
-planck; U+0210F
-planckh; U+0210E
-plankv; U+0210F
-plus; U+0002B
-plusacir; U+02A23
-plusb; U+0229E
-pluscir; U+02A22
-plusdo; U+02214
-plusdu; U+02A25
-pluse; U+02A72
-PlusMinus; U+000B1
-plusmn; U+000B1
-plussim; U+02A26
-plustwo; U+02A27
-pm; U+000B1
-Poincareplane; U+0210C
-pointint; U+02A15
-Popf; U+02119
-popf; U+1D561
-pound; U+000A3
-Pr; U+02ABB
-pr; U+0227A
-prap; U+02AB7
-prcue; U+0227C
-prE; U+02AB3
-pre; U+02AAF
-prec; U+0227A
-precapprox; U+02AB7
-preccurlyeq; U+0227C
-Precedes; U+0227A
-PrecedesEqual; U+02AAF
-PrecedesSlantEqual; U+0227C
-PrecedesTilde; U+0227E
-preceq; U+02AAF
-precnapprox; U+02AB9
-precneqq; U+02AB5
-precnsim; U+022E8
-precsim; U+0227E
-Prime; U+02033
-prime; U+02032
-primes; U+02119
-prnap; U+02AB9
-prnE; U+02AB5
-prnsim; U+022E8
-prod; U+0220F
-Product; U+0220F
-profalar; U+0232E
-profline; U+02312
-profsurf; U+02313
-prop; U+0221D
-Proportion; U+02237
-Proportional; U+0221D
-propto; U+0221D
-prsim; U+0227E
-prurel; U+022B0
-Pscr; U+1D4AB
-pscr; U+1D4C5
-Psi; U+003A8
-psi; U+003C8
-puncsp; U+02008
-Qfr; U+1D514
-qfr; U+1D52E
-qint; U+02A0C
-Qopf; U+0211A
-qopf; U+1D562
-qprime; U+02057
-Qscr; U+1D4AC
-qscr; U+1D4C6
-quaternions; U+0210D
-quatint; U+02A16
-quest; U+0003F
-questeq; U+0225F
-QUOT; U+00022
-quot; U+00022
-rAarr; U+021DB
-race; U+0223D U+00331
-Racute; U+00154
-racute; U+00155
-radic; U+0221A
-raemptyv; U+029B3
-Rang; U+027EB
-rang; U+027E9
-rangd; U+02992
-range; U+029A5
-rangle; U+027E9
-raquo; U+000BB
-Rarr; U+021A0
-rArr; U+021D2
-rarr; U+02192
-rarrap; U+02975
-rarrb; U+021E5
-rarrbfs; U+02920
-rarrc; U+02933
-rarrfs; U+0291E
-rarrhk; U+021AA
-rarrlp; U+021AC
-rarrpl; U+02945
-rarrsim; U+02974
-Rarrtl; U+02916
-rarrtl; U+021A3
-rarrw; U+0219D
-rAtail; U+0291C
-ratail; U+0291A
-ratio; U+02236
-rationals; U+0211A
-RBarr; U+02910
-rBarr; U+0290F
-rbarr; U+0290D
-rbbrk; U+02773
-rbrace; U+0007D
-rbrack; U+0005D
-rbrke; U+0298C
-rbrksld; U+0298E
-rbrkslu; U+02990
-Rcaron; U+00158
-rcaron; U+00159
-Rcedil; U+00156
-rcedil; U+00157
-rceil; U+02309
-rcub; U+0007D
-Rcy; U+00420
-rcy; U+00440
-rdca; U+02937
-rdldhar; U+02969
-rdquo; U+0201D
-rdquor; U+0201D
-rdsh; U+021B3
-Re; U+0211C
-real; U+0211C
-realine; U+0211B
-realpart; U+0211C
-reals; U+0211D
-rect; U+025AD
-REG; U+000AE
-reg; U+000AE
-ReverseElement; U+0220B
-ReverseEquilibrium; U+021CB
-ReverseUpEquilibrium; U+0296F
-rfisht; U+0297D
-rfloor; U+0230B
-Rfr; U+0211C
-rfr; U+1D52F
-rHar; U+02964
-rhard; U+021C1
-rharu; U+021C0
-rharul; U+0296C
-Rho; U+003A1
-rho; U+003C1
-rhov; U+003F1
-RightAngleBracket; U+027E9
-RightArrow; U+02192
-Rightarrow; U+021D2
-rightarrow; U+02192
-RightArrowBar; U+021E5
-RightArrowLeftArrow; U+021C4
-rightarrowtail; U+021A3
-RightCeiling; U+02309
-RightDoubleBracket; U+027E7
-RightDownTeeVector; U+0295D
-RightDownVector; U+021C2
-RightDownVectorBar; U+02955
-RightFloor; U+0230B
-rightharpoondown; U+021C1
-rightharpoonup; U+021C0
-rightleftarrows; U+021C4
-rightleftharpoons; U+021CC
-rightrightarrows; U+021C9
-rightsquigarrow; U+0219D
-RightTee; U+022A2
-RightTeeArrow; U+021A6
-RightTeeVector; U+0295B
-rightthreetimes; U+022CC
-RightTriangle; U+022B3
-RightTriangleBar; U+029D0
-RightTriangleEqual; U+022B5
-RightUpDownVector; U+0294F
-RightUpTeeVector; U+0295C
-RightUpVector; U+021BE
-RightUpVectorBar; U+02954
-RightVector; U+021C0
-RightVectorBar; U+02953
-ring; U+002DA
-risingdotseq; U+02253
-rlarr; U+021C4
-rlhar; U+021CC
-rlm; U+0200F
-rmoust; U+023B1
-rmoustache; U+023B1
-rnmid; U+02AEE
-roang; U+027ED
-roarr; U+021FE
-robrk; U+027E7
-ropar; U+02986
-Ropf; U+0211D
-ropf; U+1D563
-roplus; U+02A2E
-rotimes; U+02A35
-RoundImplies; U+02970
-rpar; U+00029
-rpargt; U+02994
-rppolint; U+02A12
-rrarr; U+021C9
-Rrightarrow; U+021DB
-rsaquo; U+0203A
-Rscr; U+0211B
-rscr; U+1D4C7
-Rsh; U+021B1
-rsh; U+021B1
-rsqb; U+0005D
-rsquo; U+02019
-rsquor; U+02019
-rthree; U+022CC
-rtimes; U+022CA
-rtri; U+025B9
-rtrie; U+022B5
-rtrif; U+025B8
-rtriltri; U+029CE
-RuleDelayed; U+029F4
-ruluhar; U+02968
-rx; U+0211E
-Sacute; U+0015A
-sacute; U+0015B
-sbquo; U+0201A
-Sc; U+02ABC
-sc; U+0227B
-scap; U+02AB8
-Scaron; U+00160
-scaron; U+00161
-sccue; U+0227D
-scE; U+02AB4
-sce; U+02AB0
-Scedil; U+0015E
-scedil; U+0015F
-Scirc; U+0015C
-scirc; U+0015D
-scnap; U+02ABA
-scnE; U+02AB6
-scnsim; U+022E9
-scpolint; U+02A13
-scsim; U+0227F
-Scy; U+00421
-scy; U+00441
-sdot; U+022C5
-sdotb; U+022A1
-sdote; U+02A66
-searhk; U+02925
-seArr; U+021D8
-searr; U+02198
-searrow; U+02198
-sect; U+000A7
-semi; U+0003B
-seswar; U+02929
-setminus; U+02216
-setmn; U+02216
-sext; U+02736
-Sfr; U+1D516
-sfr; U+1D530
-sfrown; U+02322
-sharp; U+0266F
-SHCHcy; U+00429
-shchcy; U+00449
-SHcy; U+00428
-shcy; U+00448
-ShortDownArrow; U+02193
-ShortLeftArrow; U+02190
-shortmid; U+02223
-shortparallel; U+02225
-ShortRightArrow; U+02192
-ShortUpArrow; U+02191
-shy; U+000AD
-Sigma; U+003A3
-sigma; U+003C3
-sigmaf; U+003C2
-sigmav; U+003C2
-sim; U+0223C
-simdot; U+02A6A
-sime; U+02243
-simeq; U+02243
-simg; U+02A9E
-simgE; U+02AA0
-siml; U+02A9D
-simlE; U+02A9F
-simne; U+02246
-simplus; U+02A24
-simrarr; U+02972
-slarr; U+02190
-SmallCircle; U+02218
-smallsetminus; U+02216
-smashp; U+02A33
-smeparsl; U+029E4
-smid; U+02223
-smile; U+02323
-smt; U+02AAA
-smte; U+02AAC
-smtes; U+02AAC U+0FE00
-SOFTcy; U+0042C
-softcy; U+0044C
-sol; U+0002F
-solb; U+029C4
-solbar; U+0233F
-Sopf; U+1D54A
-sopf; U+1D564
-spades; U+02660
-spadesuit; U+02660
-spar; U+02225
-sqcap; U+02293
-sqcaps; U+02293 U+0FE00
-sqcup; U+02294
-sqcups; U+02294 U+0FE00
-Sqrt; U+0221A
-sqsub; U+0228F
-sqsube; U+02291
-sqsubset; U+0228F
-sqsubseteq; U+02291
-sqsup; U+02290
-sqsupe; U+02292
-sqsupset; U+02290
-sqsupseteq; U+02292
-squ; U+025A1
-Square; U+025A1
-square; U+025A1
-SquareIntersection; U+02293
-SquareSubset; U+0228F
-SquareSubsetEqual; U+02291
-SquareSuperset; U+02290
-SquareSupersetEqual; U+02292
-SquareUnion; U+02294
-squarf; U+025AA
-squf; U+025AA
-srarr; U+02192
-Sscr; U+1D4AE
-sscr; U+1D4C8
-ssetmn; U+02216
-ssmile; U+02323
-sstarf; U+022C6
-Star; U+022C6
-star; U+02606
-starf; U+02605
-straightepsilon; U+003F5
-straightphi; U+003D5
-strns; U+000AF
-Sub; U+022D0
-sub; U+02282
-subdot; U+02ABD
-subE; U+02AC5
-sube; U+02286
-subedot; U+02AC3
-submult; U+02AC1
-subnE; U+02ACB
-subne; U+0228A
-subplus; U+02ABF
-subrarr; U+02979
-Subset; U+022D0
-subset; U+02282
-subseteq; U+02286
-subseteqq; U+02AC5
-SubsetEqual; U+02286
-subsetneq; U+0228A
-subsetneqq; U+02ACB
-subsim; U+02AC7
-subsub; U+02AD5
-subsup; U+02AD3
-succ; U+0227B
-succapprox; U+02AB8
-succcurlyeq; U+0227D
-Succeeds; U+0227B
-SucceedsEqual; U+02AB0
-SucceedsSlantEqual; U+0227D
-SucceedsTilde; U+0227F
-succeq; U+02AB0
-succnapprox; U+02ABA
-succneqq; U+02AB6
-succnsim; U+022E9
-succsim; U+0227F
-SuchThat; U+0220B
-Sum; U+02211
-sum; U+02211
-sung; U+0266A
-Sup; U+022D1
-sup; U+02283
-sup1; U+000B9
-sup2; U+000B2
-sup3; U+000B3
-supdot; U+02ABE
-supdsub; U+02AD8
-supE; U+02AC6
-supe; U+02287
-supedot; U+02AC4
-Superset; U+02283
-SupersetEqual; U+02287
-suphsol; U+027C9
-suphsub; U+02AD7
-suplarr; U+0297B
-supmult; U+02AC2
-supnE; U+02ACC
-supne; U+0228B
-supplus; U+02AC0
-Supset; U+022D1
-supset; U+02283
-supseteq; U+02287
-supseteqq; U+02AC6
-supsetneq; U+0228B
-supsetneqq; U+02ACC
-supsim; U+02AC8
-supsub; U+02AD4
-supsup; U+02AD6
-swarhk; U+02926
-swArr; U+021D9
-swarr; U+02199
-swarrow; U+02199
-swnwar; U+0292A
-szlig; U+000DF
-Tab; U+00009
-target; U+02316
-Tau; U+003A4
-tau; U+003C4
-tbrk; U+023B4
-Tcaron; U+00164
-tcaron; U+00165
-Tcedil; U+00162
-tcedil; U+00163
-Tcy; U+00422
-tcy; U+00442
-tdot; U+020DB
-telrec; U+02315
-Tfr; U+1D517
-tfr; U+1D531
-there4; U+02234
-Therefore; U+02234
-therefore; U+02234
-Theta; U+00398
-theta; U+003B8
-thetasym; U+003D1
-thetav; U+003D1
-thickapprox; U+02248
-thicksim; U+0223C
-ThickSpace; U+0205F U+0200A
-thinsp; U+02009
-ThinSpace; U+02009
-thkap; U+02248
-thksim; U+0223C
-THORN; U+000DE
-thorn; U+000FE
-Tilde; U+0223C
-tilde; U+002DC
-TildeEqual; U+02243
-TildeFullEqual; U+02245
-TildeTilde; U+02248
-times; U+000D7
-timesb; U+022A0
-timesbar; U+02A31
-timesd; U+02A30
-tint; U+0222D
-toea; U+02928
-top; U+022A4
-topbot; U+02336
-topcir; U+02AF1
-Topf; U+1D54B
-topf; U+1D565
-topfork; U+02ADA
-tosa; U+02929
-tprime; U+02034
-TRADE; U+02122
-trade; U+02122
-triangle; U+025B5
-triangledown; U+025BF
-triangleleft; U+025C3
-trianglelefteq; U+022B4
-triangleq; U+0225C
-triangleright; U+025B9
-trianglerighteq; U+022B5
-tridot; U+025EC
-trie; U+0225C
-triminus; U+02A3A
-TripleDot; U+020DB
-triplus; U+02A39
-trisb; U+029CD
-tritime; U+02A3B
-trpezium; U+023E2
-Tscr; U+1D4AF
-tscr; U+1D4C9
-TScy; U+00426
-tscy; U+00446
-TSHcy; U+0040B
-tshcy; U+0045B
-Tstrok; U+00166
-tstrok; U+00167
-twixt; U+0226C
-twoheadleftarrow; U+0219E
-twoheadrightarrow; U+021A0
-Uacute; U+000DA
-uacute; U+000FA
-Uarr; U+0219F
-uArr; U+021D1
-uarr; U+02191
-Uarrocir; U+02949
-Ubrcy; U+0040E
-ubrcy; U+0045E
-Ubreve; U+0016C
-ubreve; U+0016D
-Ucirc; U+000DB
-ucirc; U+000FB
-Ucy; U+00423
-ucy; U+00443
-udarr; U+021C5
-Udblac; U+00170
-udblac; U+00171
-udhar; U+0296E
-ufisht; U+0297E
-Ufr; U+1D518
-ufr; U+1D532
-Ugrave; U+000D9
-ugrave; U+000F9
-uHar; U+02963
-uharl; U+021BF
-uharr; U+021BE
-uhblk; U+02580
-ulcorn; U+0231C
-ulcorner; U+0231C
-ulcrop; U+0230F
-ultri; U+025F8
-Umacr; U+0016A
-umacr; U+0016B
-uml; U+000A8
-UnderBar; U+0005F
-UnderBrace; U+023DF
-UnderBracket; U+023B5
-UnderParenthesis; U+023DD
-Union; U+022C3
-UnionPlus; U+0228E
-Uogon; U+00172
-uogon; U+00173
-Uopf; U+1D54C
-uopf; U+1D566
-UpArrow; U+02191
-Uparrow; U+021D1
-uparrow; U+02191
-UpArrowBar; U+02912
-UpArrowDownArrow; U+021C5
-UpDownArrow; U+02195
-Updownarrow; U+021D5
-updownarrow; U+02195
-UpEquilibrium; U+0296E
-upharpoonleft; U+021BF
-upharpoonright; U+021BE
-uplus; U+0228E
-UpperLeftArrow; U+02196
-UpperRightArrow; U+02197
-Upsi; U+003D2
-upsi; U+003C5
-upsih; U+003D2
-Upsilon; U+003A5
-upsilon; U+003C5
-UpTee; U+022A5
-UpTeeArrow; U+021A5
-upuparrows; U+021C8
-urcorn; U+0231D
-urcorner; U+0231D
-urcrop; U+0230E
-Uring; U+0016E
-uring; U+0016F
-urtri; U+025F9
-Uscr; U+1D4B0
-uscr; U+1D4CA
-utdot; U+022F0
-Utilde; U+00168
-utilde; U+00169
-utri; U+025B5
-utrif; U+025B4
-uuarr; U+021C8
-Uuml; U+000DC
-uuml; U+000FC
-uwangle; U+029A7
-vangrt; U+0299C
-varepsilon; U+003F5
-varkappa; U+003F0
-varnothing; U+02205
-varphi; U+003D5
-varpi; U+003D6
-varpropto; U+0221D
-vArr; U+021D5
-varr; U+02195
-varrho; U+003F1
-varsigma; U+003C2
-varsubsetneq; U+0228A U+0FE00
-varsubsetneqq; U+02ACB U+0FE00
-varsupsetneq; U+0228B U+0FE00
-varsupsetneqq; U+02ACC U+0FE00
-vartheta; U+003D1
-vartriangleleft; U+022B2
-vartriangleright; U+022B3
-Vbar; U+02AEB
-vBar; U+02AE8
-vBarv; U+02AE9
-Vcy; U+00412
-vcy; U+00432
-VDash; U+022AB
-Vdash; U+022A9
-vDash; U+022A8
-vdash; U+022A2
-Vdashl; U+02AE6
-Vee; U+022C1
-vee; U+02228
-veebar; U+022BB
-veeeq; U+0225A
-vellip; U+022EE
-Verbar; U+02016
-verbar; U+0007C
-Vert; U+02016
-vert; U+0007C
-VerticalBar; U+02223
-VerticalLine; U+0007C
-VerticalSeparator; U+02758
-VerticalTilde; U+02240
-VeryThinSpace; U+0200A
-Vfr; U+1D519
-vfr; U+1D533
-vltri; U+022B2
-vnsub; U+02282 U+020D2
-vnsup; U+02283 U+020D2
-Vopf; U+1D54D
-vopf; U+1D567
-vprop; U+0221D
-vrtri; U+022B3
-Vscr; U+1D4B1
-vscr; U+1D4CB
-vsubnE; U+02ACB U+0FE00
-vsubne; U+0228A U+0FE00
-vsupnE; U+02ACC U+0FE00
-vsupne; U+0228B U+0FE00
-Vvdash; U+022AA
-vzigzag; U+0299A
-Wcirc; U+00174
-wcirc; U+00175
-wedbar; U+02A5F
-Wedge; U+022C0
-wedge; U+02227
-wedgeq; U+02259
-weierp; U+02118
-Wfr; U+1D51A
-wfr; U+1D534
-Wopf; U+1D54E
-wopf; U+1D568
-wp; U+02118
-wr; U+02240
-wreath; U+02240
-Wscr; U+1D4B2
-wscr; U+1D4CC
-xcap; U+022C2
-xcirc; U+025EF
-xcup; U+022C3
-xdtri; U+025BD
-Xfr; U+1D51B
-xfr; U+1D535
-xhArr; U+027FA
-xharr; U+027F7
-Xi; U+0039E
-xi; U+003BE
-xlArr; U+027F8
-xlarr; U+027F5
-xmap; U+027FC
-xnis; U+022FB
-xodot; U+02A00
-Xopf; U+1D54F
-xopf; U+1D569
-xoplus; U+02A01
-xotime; U+02A02
-xrArr; U+027F9
-xrarr; U+027F6
-Xscr; U+1D4B3
-xscr; U+1D4CD
-xsqcup; U+02A06
-xuplus; U+02A04
-xutri; U+025B3
-xvee; U+022C1
-xwedge; U+022C0
-Yacute; U+000DD
-yacute; U+000FD
-YAcy; U+0042F
-yacy; U+0044F
-Ycirc; U+00176
-ycirc; U+00177
-Ycy; U+0042B
-ycy; U+0044B
-yen; U+000A5
-Yfr; U+1D51C
-yfr; U+1D536
-YIcy; U+00407
-yicy; U+00457
-Yopf; U+1D550
-yopf; U+1D56A
-Yscr; U+1D4B4
-yscr; U+1D4CE
-YUcy; U+0042E
-yucy; U+0044E
-Yuml; U+00178
-yuml; U+000FF
-Zacute; U+00179
-zacute; U+0017A
-Zcaron; U+0017D
-zcaron; U+0017E
-Zcy; U+00417
-zcy; U+00437
-Zdot; U+0017B
-zdot; U+0017C
-zeetrf; U+02128
-ZeroWidthSpace; U+0200B
-Zeta; U+00396
-zeta; U+003B6
-Zfr; U+02128
-zfr; U+1D537
-ZHcy; U+00416
-zhcy; U+00436
-zigrarr; U+021DD
-Zopf; U+02124
-zopf; U+1D56B
-Zscr; U+1D4B5
-zscr; U+1D4CF
-zwj; U+0200D
-zwnj; U+0200C