jerska-htmlentities 4.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d55843d427e5352f88be479394233d7fd896b741
4
+ data.tar.gz: dbef74b6647665eada4347662be72409d665c288
5
+ SHA512:
6
+ metadata.gz: cba0b5dc5f76050a9d6bedd3bbb9c193fe748549df85c74ecf2b7bfaa0a57f69f0945940ff4167ea9d9d75eedb155b5098fce04dc1f4ee8388efbea99c8a0dc8
7
+ data.tar.gz: e7f79595d95bdd163ab702e1f979f4194337ca25506bfa88819eb8372268b2da0aa20dab8522789242a36ce36940f1f3b8225aa14746441f4c8dd7c00cac260b
data/COPYING.txt ADDED
@@ -0,0 +1,21 @@
1
+ == Licence (MIT)
2
+
3
+ Copyright (c) 2005-2013 Paul Battley
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/History.txt ADDED
@@ -0,0 +1,89 @@
1
+ == 4.3.3 (2014-12-25)
2
+ * Remove duplicate hash entry that causes warnings in Ruby 2.2.0.
3
+
4
+ == 4.3.2 (2014-05-31)
5
+ * Ruby 1.8 is no longer supported
6
+
7
+ == 4.3.1 (2011-11-30)
8
+ * Fix bug when working with Rails 3/Ruby 1.8.7
9
+ * Make character encoding behaviour consistent in Ruby 1.9.2/1.9.3
10
+
11
+ == 4.3.0 (2011-03-29)
12
+ * Use Ruby 1.9's encoding support where available.
13
+ * Deprecated HTMLEntities.encode_entities/decode_entities interface is now
14
+ removed.
15
+
16
+ == 4.2.4 (2011-01-30)
17
+ * Fix issue where double-escaped entities were not correctly escaped. Bug
18
+ reported by Christian Kruse.
19
+
20
+ == 4.2.3 (2011-01-07)
21
+ * Additional entities from Junya Ishihara.
22
+ * Performance improvements.
23
+
24
+ == 4.2.1 (2010-04-05)
25
+ * Fixed error on Ruby 1.8.x when $KCODE was not set to "UTF8". Thanks to
26
+ Benoit Larroque for the bug report.
27
+
28
+ == 4.2.0 (2009-08-24)
29
+ * Added benchmarking code and improved performance.
30
+
31
+ == 4.1.0 (2009-08-15)
32
+ * Now works with Ruby 1.9.1 and JRuby.
33
+ * Reverted lazy loading of entity mappings as this is not thread-safe.
34
+ * Finally removed the deprecated String#encode_entities and #decode_entities
35
+ methods.
36
+
37
+ == 4.0.1 (2008-06-03)
38
+ * Added :expanded charset -- the ~1000 SGML entities from
39
+ ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MISC/SGML.TXT (extra code by
40
+ Philip (flip) Kromer <flip@infochimps.org>, entity info from John Cowan
41
+ <cowan@ccil.org> #)
42
+
43
+ == 4.0.0 (2007-03-15)
44
+ * New instantiation-based interface (but legacy interface is preserved for
45
+ compatibility.
46
+ * Handles HTML4 as well as XHTML1 (the former lacks the &apos; entity).
47
+ * Encodes basic entities numerically when :basic isn't specified and :decimal
48
+ or :hexadecimal is.
49
+ * Performs a maximum of two gsub passes instead of three when encoding, which
50
+ should be more efficient on long strings.
51
+
52
+ == 3.1.0 (2007-01-19)
53
+ * Now understands all the entities referred to in the XHTML 1.0 DTD (253
54
+ entities compared with 131 in version 3.0.1).
55
+ * Calls to_s on parameters to play nicely with Rails 1.2.1.
56
+ * Entity mapping data is now lazily loaded.
57
+
58
+ == 3.0.1 (2005-04-08)
59
+ * Improved documentation.
60
+
61
+ == 3.0.0 (2005-04-08)
62
+ * Changed licence to MIT due to confusion with previous 'Fair' licence (my
63
+ intention was to be liberal, not obscure).
64
+ * Moved basic functionality out of String class; for previous behaviour,
65
+ require 'htmlentities/string'.
66
+ * Changed version numbering scheme.
67
+ * Now available as a Gem.
68
+
69
+ == 2.2 (2005-11-07)
70
+ * Important bug fixes -- thanks to Moonwolf.
71
+ * Decoding hexadecimal entities now accepts 'f' as a hex digit. (D'oh!)
72
+ * Decimal decoding edge cases addressed.
73
+ * Test cases added.
74
+
75
+ == 2.1 (2005-10-31)
76
+ * Removed some unnecessary code in basic entity encoding.
77
+ * Improved handling of encoding: commands are now automatically sorted, so the
78
+ user doesn't have to worry about their order.
79
+ * Now using setup.rb.
80
+ * Tests moved to separate file.
81
+
82
+ == 2.0 (2005-08-23)
83
+ * Added encoding to entities.
84
+ * Decoding interface unchanged.
85
+ * Fixed a bug with handling high codepoints.
86
+
87
+ == 1.0 (2005-08-03)
88
+ * Initial release.
89
+ * Decoding only.
@@ -0,0 +1,75 @@
1
+ # encoding: UTF-8
2
+ require 'htmlentities/flavors'
3
+ require 'htmlentities/encoder'
4
+ require 'htmlentities/decoder'
5
+ require 'htmlentities/version'
6
+
7
+ #
8
+ # HTML entity encoding and decoding for Ruby
9
+ #
10
+ class HTMLEntities
11
+ UnknownFlavor = Class.new(RuntimeError)
12
+
13
+ #
14
+ # Create a new HTMLEntities coder for the specified flavor.
15
+ # Available flavors are 'html4', 'expanded' and 'xhtml1' (the default).
16
+ #
17
+ # The only difference in functionality between html4 and xhtml1 is in the
18
+ # handling of the apos (apostrophe) named entity, which is not defined in
19
+ # HTML4.
20
+ #
21
+ # 'expanded' includes a large number of additional SGML entities drawn from
22
+ # ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MISC/SGML.TXT
23
+ # it "maps SGML character entities from various public sets (namely, ISOamsa,
24
+ # ISOamsb, ISOamsc, ISOamsn, ISOamso, ISOamsr, ISObox, ISOcyr1, ISOcyr2,
25
+ # ISOdia, ISOgrk1, ISOgrk2, ISOgrk3, ISOgrk4, ISOlat1, ISOlat2, ISOnum,
26
+ # ISOpub, ISOtech, HTMLspecial, HTMLsymbol) to corresponding Unicode
27
+ # characters." (sgml.txt).
28
+ #
29
+ # 'expanded' is a strict superset of the XHTML entities: every xhtml named
30
+ # entity encodes and decodes the same under :expanded as under :xhtml1
31
+ #
32
+ def initialize(flavor='xhtml1')
33
+ @flavor = flavor.to_s.downcase
34
+ raise UnknownFlavor, "Unknown flavor #{flavor}" unless FLAVORS.include?(@flavor)
35
+ end
36
+
37
+ #
38
+ # Decode entities in a string into their UTF-8
39
+ # equivalents. The string should already be in UTF-8 encoding.
40
+ #
41
+ # Unknown named entities will not be converted
42
+ #
43
+ def decode(source, options = {})
44
+ (@decoder ||= Decoder.new(@flavor)).decode(source, options)
45
+ end
46
+
47
+ #
48
+ # Encode codepoints into their corresponding entities. Various operations
49
+ # are possible, and may be specified in order:
50
+ #
51
+ # :basic :: Convert the five XML entities ('"<>&)
52
+ # :named :: Convert non-ASCII characters to their named HTML 4.01 equivalent
53
+ # :decimal :: Convert non-ASCII characters to decimal entities (e.g. &#1234;)
54
+ # :hexadecimal :: Convert non-ASCII characters to hexadecimal entities (e.g. # &#x12ab;)
55
+ #
56
+ # You can specify the commands in any order, but they will be executed in
57
+ # the order listed above to ensure that entity ampersands are not
58
+ # clobbered and that named entities are replaced before numeric ones.
59
+ #
60
+ # If no instructions are specified, :basic will be used.
61
+ #
62
+ # Examples:
63
+ # encode(str) - XML-safe
64
+ # encode(str, :basic, :decimal) - XML-safe and 7-bit clean
65
+ # encode(str, :basic, :named, :decimal) - 7-bit clean, with all
66
+ # non-ASCII characters replaced with their named entity where possible, and
67
+ # decimal equivalents otherwise.
68
+ #
69
+ # Note: It is the program's responsibility to ensure that the source
70
+ # contains valid UTF-8 before calling this method.
71
+ #
72
+ def encode(source, *instructions)
73
+ Encoder.new(@flavor, instructions).encode(source)
74
+ end
75
+ end
@@ -0,0 +1,56 @@
1
+ class HTMLEntities
2
+ class Decoder #:nodoc:
3
+ def initialize(flavor)
4
+ @flavor = flavor
5
+ @map = HTMLEntities::MAPPINGS[@flavor]
6
+ @entity_regexp = entity_regexp
7
+ end
8
+
9
+ def decode(source, options = {})
10
+ excluded = options[:exclude] ||= []
11
+ if excluded.count
12
+ prepare(source).gsub(@entity_regexp){
13
+ if $1 && codepoint = @map[$1]
14
+ res = [codepoint].pack('U')
15
+ excluded.include?(res) ? $& : res
16
+ elsif $2
17
+ res = [$2.to_i(10)].pack('U')
18
+ excluded.include?(res) ? $& : res
19
+ elsif $3
20
+ res = [$3.to_i(16)].pack('U')
21
+ excluded.include?(res) ? $& : res
22
+ else
23
+ $&
24
+ end
25
+ }
26
+ else
27
+ prepare(source).gsub(@entity_regexp){
28
+ if $1 && codepoint = @map[$1]
29
+ [codepoint].pack('U')
30
+ elsif $2
31
+ [$2.to_i(10)].pack('U')
32
+ elsif $3
33
+ [$3.to_i(16)].pack('U')
34
+ else
35
+ $&
36
+ end
37
+ }
38
+ end
39
+ end
40
+
41
+ private
42
+ def prepare(string) #:nodoc:
43
+ string.to_s.encode(Encoding::UTF_8)
44
+ end
45
+
46
+ def entity_regexp
47
+ key_lengths = @map.keys.map{ |k| k.length }
48
+ if @flavor == 'expanded'
49
+ entity_name_pattern = '(?:b\.)?[a-z][a-z0-9]'
50
+ else
51
+ entity_name_pattern = '[a-z][a-z0-9]'
52
+ end
53
+ /&(?:(#{entity_name_pattern}{#{key_lengths.min - 1},#{key_lengths.max - 1}})|#([0-9]{1,7})|#x([0-9a-f]{1,6}));/i
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,123 @@
1
+ class HTMLEntities
2
+ InstructionError = Class.new(RuntimeError)
3
+
4
+ class Encoder #:nodoc:
5
+ INSTRUCTIONS = [:basic, :named, :decimal, :hexadecimal]
6
+
7
+ def initialize(flavor, instructions)
8
+ @flavor = flavor
9
+ instructions = [:basic] if instructions.empty?
10
+ validate_instructions instructions
11
+ build_basic_entity_encoder instructions
12
+ build_extended_entity_encoder instructions
13
+ end
14
+
15
+ def encode(source)
16
+ minimize_encoding(
17
+ replace_extended(
18
+ replace_basic(
19
+ prepare(source))))
20
+ end
21
+
22
+ private
23
+
24
+ def prepare(string)
25
+ string.to_s.encode(Encoding::UTF_8)
26
+ end
27
+
28
+ def minimize_encoding(string)
29
+ if string.encoding != Encoding::ASCII && contains_only_ascii?(string)
30
+ string.encode(Encoding::ASCII)
31
+ else
32
+ string
33
+ end
34
+ end
35
+
36
+ def contains_only_ascii?(string)
37
+ string.match(/\A[\x01-\x7F]*\z/)
38
+ end
39
+
40
+ def basic_entity_regexp
41
+ @basic_entity_regexp ||= @flavor.match(/^html/) ? /[<>"&]/ : /[<>'"&]/
42
+ end
43
+
44
+ def extended_entity_regexp
45
+ @extended_entity_regexp ||= (
46
+ pattern = '[^\u{20}-\u{7E}]'
47
+ pattern << "|'" if @flavor == 'html4'
48
+ Regexp.new(pattern)
49
+ )
50
+ end
51
+
52
+ def replace_basic(string)
53
+ string.gsub(basic_entity_regexp){ |match| encode_basic(match) }
54
+ end
55
+
56
+ def replace_extended(string)
57
+ string.gsub(extended_entity_regexp){ |match| encode_extended(match) }
58
+ end
59
+
60
+ def validate_instructions(instructions)
61
+ unknown_instructions = instructions - INSTRUCTIONS
62
+ if unknown_instructions.any?
63
+ raise InstructionError,
64
+ "unknown encode_entities command(s): #{unknown_instructions.inspect}"
65
+ end
66
+
67
+ if instructions.include?(:decimal) && instructions.include?(:hexadecimal)
68
+ raise InstructionError,
69
+ "hexadecimal and decimal encoding are mutually exclusive"
70
+ end
71
+ end
72
+
73
+ def build_basic_entity_encoder(instructions)
74
+ if instructions.include?(:basic) || instructions.include?(:named)
75
+ method = :encode_named
76
+ elsif instructions.include?(:decimal)
77
+ method = :encode_decimal
78
+ elsif instructions.include?(:hexadecimal)
79
+ method = :encode_hexadecimal
80
+ end
81
+ instance_eval <<-END
82
+ def encode_basic(char)
83
+ #{method}(char)
84
+ end
85
+ END
86
+ end
87
+
88
+ def build_extended_entity_encoder(instructions)
89
+ operations = [:named, :decimal, :hexadecimal] & instructions
90
+ instance_eval <<-END
91
+ def encode_extended(char)
92
+ #{operations.map{ |encoder| %{
93
+ encoded = encode_#{encoder}(char)
94
+ return encoded if encoded
95
+ }}.join("\n")}
96
+ char
97
+ end
98
+ END
99
+ end
100
+
101
+ def encode_named(char)
102
+ cp = char.unpack('U')[0]
103
+ (e = reverse_map[cp]) && "&#{e};"
104
+ end
105
+
106
+ def encode_decimal(char)
107
+ "&##{char.unpack('U')[0]};"
108
+ end
109
+
110
+ def encode_hexadecimal(char)
111
+ "&#x#{char.unpack('U')[0].to_s(16)};"
112
+ end
113
+
114
+ def reverse_map
115
+ @reverse_map ||= (
116
+ skips = HTMLEntities::SKIP_DUP_ENCODINGS[@flavor]
117
+ map = HTMLEntities::MAPPINGS[@flavor]
118
+ uniqmap = skips ? map.reject{|ent,hx| skips.include? ent} : map
119
+ uniqmap.invert
120
+ )
121
+ end
122
+ end
123
+ end
@@ -0,0 +1,9 @@
1
+ class HTMLEntities
2
+ FLAVORS = %w[html4 xhtml1 expanded]
3
+ MAPPINGS = {} unless defined? MAPPINGS
4
+ SKIP_DUP_ENCODINGS = {} unless defined? SKIP_DUP_ENCODINGS
5
+ end
6
+
7
+ HTMLEntities::FLAVORS.each do |flavor|
8
+ require "htmlentities/mappings/#{flavor}"
9
+ end
@@ -0,0 +1,1074 @@
1
+ # encoding: UTF-8
2
+ class HTMLEntities
3
+ #
4
+ # This table added by Philip (flip) Kromer <flip@infochimps.org>
5
+ # using the mapping by John Cowan <cowan@ccil.org> (25 July 1997) at
6
+ # ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MISC/SGML.TXT
7
+ #
8
+ # The following table maps SGML character entities from various
9
+ # public sets (namely, ISOamsa, ISOamsb, ISOamsc, ISOamsn, ISOamso,
10
+ # ISOamsr, ISObox, ISOcyr1, ISOcyr2, ISOdia, ISOgrk1, ISOgrk2,
11
+ # ISOgrk3, ISOgrk4, ISOlat1, ISOlat2, ISOnum, ISOpub, ISOtech,
12
+ # HTMLspecial, HTMLsymbol) to corresponding Unicode characters.
13
+ #
14
+ # The table has five tab-separated fields:
15
+ # :bare => SGML character entity name
16
+ # :hex => Unicode 2.0 character code
17
+ # :entity => SGML character entity
18
+ # :type => SGML public entity set
19
+ # :udesc => Unicode 2.0 character name (UPPER CASE)
20
+ #
21
+ # Entries which don't have Unicode equivalents have "0x????" for
22
+ # :hex and a lower case :udesc (from the public entity set DTD).
23
+ #
24
+ # For reasons I (flip) don't understand, the source file mapped
25
+ # &apos; to 0x02BC rather than its XML definition of 0x027. I've
26
+ # added a line specifying 0x027; the 'original' is commented out.
27
+ # http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references
28
+ #
29
+ # The mapping is not reversible, because many distinctions are
30
+ # unified away in Unicode, particularly between mathematical
31
+ # symbols. To make it reversible, one symbol was arbitrarily chosen
32
+ # to encode from hex using these rules:
33
+ #
34
+ # * if it's also an XHTML 1.0 entity, use its XHTML reverse mapping.
35
+ # * otherwise, just use the first entity encountered,
36
+ # * avoiding the &b.foo; type entities
37
+ #
38
+ # The table is sorted case-blind by SGML character entity name.
39
+ #
40
+ # The contents of this table are drawn from various sources, and are
41
+ # in the public domain.
42
+ #
43
+ MAPPINGS['expanded'] = {
44
+ 'Aacgr' => 0x0386, # Ά GREEK CAPITAL LETTER ALPHA WITH TONOS
45
+ 'aacgr' => 0x03ac, # ά GREEK SMALL LETTER ALPHA WITH TONOS
46
+ 'Aacute' => 0x00c1, # Á xhtml LATIN CAPITAL LETTER A WITH ACUTE
47
+ 'aacute' => 0x00e1, # á xhtml LATIN SMALL LETTER A WITH ACUTE
48
+ 'Abreve' => 0x0102, # Ă LATIN CAPITAL LETTER A WITH BREVE
49
+ 'abreve' => 0x0103, # ă LATIN SMALL LETTER A WITH BREVE
50
+ 'acaron' => 0x01ce, # ǎ LATIN SMALL LETTER A WITH CARON
51
+ 'Acirc' => 0x00c2, # Â xhtml LATIN CAPITAL LETTER A WITH CIRCUMFLEX
52
+ 'acirc' => 0x00e2, # â xhtml LATIN SMALL LETTER A WITH CIRCUMFLEX
53
+ 'acute' => 0x00b4, # ´ xhtml ACUTE ACCENT
54
+ 'Acy' => 0x0410, # А CYRILLIC CAPITAL LETTER A
55
+ 'acy' => 0x0430, # а CYRILLIC SMALL LETTER A
56
+ 'AElig' => 0x00c6, # Æ xhtml LATIN CAPITAL LETTER AE
57
+ 'aelig' => 0x00e6, # æ xhtml LATIN SMALL LETTER AE
58
+ 'Agr' => 0x0391, # Α dup skip GREEK CAPITAL LETTER ALPHA
59
+ 'agr' => 0x03b1, # α dup skip GREEK SMALL LETTER ALPHA
60
+ 'Agrave' => 0x00c0, # À xhtml LATIN CAPITAL LETTER A WITH GRAVE
61
+ 'agrave' => 0x00e0, # à xhtml LATIN SMALL LETTER A WITH GRAVE
62
+ 'alefsym' => 0x2135, # ℵ dup xhtml ALEF SYMBOL
63
+ 'aleph' => 0x2135, # ℵ dup skip ALEF SYMBOL
64
+ 'Alpha' => 0x0391, # Α dup xhtml GREEK CAPITAL LETTER ALPHA
65
+ 'alpha' => 0x03b1, # α dup xhtml GREEK SMALL LETTER ALPHA
66
+ 'Amacr' => 0x0100, # Ā LATIN CAPITAL LETTER A WITH MACRON
67
+ 'amacr' => 0x0101, # ā LATIN SMALL LETTER A WITH MACRON
68
+ 'amalg' => 0x2210, # ∐ dup N-ARY COPRODUCT
69
+ 'amp' => 0x0026, # & xhtml AMPERSAND
70
+ 'and' => 0x2227, # ∧ xhtml LOGICAL AND
71
+ 'ang' => 0x2220, # ∠ xhtml ANGLE
72
+ 'ang90' => 0x221f, # ∟ RIGHT ANGLE
73
+ 'angmsd' => 0x2221, # ∡ MEASURED ANGLE
74
+ 'angsph' => 0x2222, # ∢ SPHERICAL ANGLE
75
+ 'angst' => 0x212b, # Å ANGSTROM SIGN
76
+ 'Aogon' => 0x0104, # Ą LATIN CAPITAL LETTER A WITH OGONEK
77
+ 'aogon' => 0x0105, # ą LATIN SMALL LETTER A WITH OGONEK
78
+ 'ap' => 0x2248, # ≈ dup skip ALMOST EQUAL TO
79
+ 'ape' => 0x224a, # ≊ ALMOST EQUAL OR EQUAL TO
80
+ 'apolhook' => 0x0105, # ą LATIN SMALL LETTER A WITH OGONEK
81
+ 'apos' => 0x0027, # ' xhtml MODIFIER LETTER APOSTROPHE
82
+ 'Aring' => 0x00c5, # Å xhtml LATIN CAPITAL LETTER A WITH RING ABOVE
83
+ 'aring' => 0x00e5, # å xhtml LATIN SMALL LETTER A WITH RING ABOVE
84
+ 'ast' => 0x002a, # * ASTERISK
85
+ 'asymp' => 0x2248, # ≈ dup xhtml ALMOST EQUAL TO
86
+ 'Atilde' => 0x00c3, # Ã xhtml LATIN CAPITAL LETTER A WITH TILDE
87
+ 'atilde' => 0x00e3, # ã xhtml LATIN SMALL LETTER A WITH TILDE
88
+ 'Auml' => 0x00c4, # Ä xhtml LATIN CAPITAL LETTER A WITH DIAERESIS
89
+ 'auml' => 0x00e4, # ä xhtml LATIN SMALL LETTER A WITH DIAERESIS
90
+ 'b.alpha' => 0x03b1, # α dup skip GREEK SMALL LETTER ALPHA
91
+ 'b.beta' => 0x03b2, # β dup skip GREEK SMALL LETTER BETA
92
+ 'b.chi' => 0x03c7, # χ dup skip GREEK SMALL LETTER CHI
93
+ 'b.Delta' => 0x0394, # Δ dup skip GREEK CAPITAL LETTER DELTA
94
+ 'b.delta' => 0x03b4, # δ dup skip GREEK SMALL LETTER DELTA
95
+ 'b.epsi' => 0x03b5, # ε dup skip GREEK SMALL LETTER EPSILON
96
+ 'b.epsis' => 0x03b5, # ε dup skip GREEK SMALL LETTER EPSILON
97
+ 'b.epsiv' => 0x03b5, # ε dup skip GREEK SMALL LETTER EPSILON
98
+ 'b.eta' => 0x03b7, # η dup skip GREEK SMALL LETTER ETA
99
+ 'b.Gamma' => 0x0393, # Γ dup skip GREEK CAPITAL LETTER GAMMA
100
+ 'b.gamma' => 0x03b3, # γ dup skip GREEK SMALL LETTER GAMMA
101
+ 'b.gammad' => 0x03dc, # Ϝ dup skip GREEK LETTER DIGAMMA
102
+ 'b.iota' => 0x03b9, # ι dup skip GREEK SMALL LETTER IOTA
103
+ 'b.kappa' => 0x03ba, # κ dup skip GREEK SMALL LETTER KAPPA
104
+ 'b.kappav' => 0x03f0, # ϰ dup skip GREEK KAPPA SYMBOL
105
+ 'b.Lambda' => 0x039b, # Λ dup skip GREEK CAPITAL LETTER LAMDA
106
+ 'b.lambda' => 0x03bb, # λ dup skip GREEK SMALL LETTER LAMDA
107
+ 'b.mu' => 0x03bc, # μ dup skip GREEK SMALL LETTER MU
108
+ 'b.nu' => 0x03bd, # ν dup skip GREEK SMALL LETTER NU
109
+ 'b.Omega' => 0x03a9, # Ω dup skip GREEK CAPITAL LETTER OMEGA
110
+ 'b.omega' => 0x03ce, # ώ dup skip GREEK SMALL LETTER OMEGA WITH TONOS
111
+ 'b.Phi' => 0x03a6, # Φ dup skip GREEK CAPITAL LETTER PHI
112
+ 'b.phis' => 0x03c6, # φ dup skip GREEK SMALL LETTER PHI
113
+ 'b.phiv' => 0x03d5, # ϕ dup skip GREEK PHI SYMBOL
114
+ 'b.Pi' => 0x03a0, # Π dup skip GREEK CAPITAL LETTER PI
115
+ 'b.pi' => 0x03c0, # π dup skip GREEK SMALL LETTER PI
116
+ 'b.piv' => 0x03d6, # ϖ dup skip GREEK PI SYMBOL
117
+ 'b.Psi' => 0x03a8, # Ψ dup skip GREEK CAPITAL LETTER PSI
118
+ 'b.psi' => 0x03c8, # ψ dup skip GREEK SMALL LETTER PSI
119
+ 'b.rho' => 0x03c1, # ρ dup skip GREEK SMALL LETTER RHO
120
+ 'b.rhov' => 0x03f1, # ϱ dup skip GREEK RHO SYMBOL
121
+ 'b.Sigma' => 0x03a3, # Σ dup skip GREEK CAPITAL LETTER SIGMA
122
+ 'b.sigma' => 0x03c3, # σ dup skip GREEK SMALL LETTER SIGMA
123
+ 'b.sigmav' => 0x03c2, # ς dup skip GREEK SMALL LETTER FINAL SIGMA
124
+ 'b.tau' => 0x03c4, # τ dup skip GREEK SMALL LETTER TAU
125
+ 'b.Theta' => 0x0398, # Θ dup skip GREEK CAPITAL LETTER THETA
126
+ 'b.thetas' => 0x03b8, # θ dup skip GREEK SMALL LETTER THETA
127
+ 'b.thetav' => 0x03d1, # ϑ dup skip GREEK THETA SYMBOL
128
+ 'b.Upsi' => 0x03a5, # Υ dup skip GREEK CAPITAL LETTER UPSILON
129
+ 'b.upsi' => 0x03c5, # υ dup skip GREEK SMALL LETTER UPSILON
130
+ 'b.Xi' => 0x039e, # Ξ dup skip GREEK CAPITAL LETTER XI
131
+ 'b.xi' => 0x03be, # ξ dup skip GREEK SMALL LETTER XI
132
+ 'b.zeta' => 0x03b6, # ζ dup skip GREEK SMALL LETTER ZETA
133
+ 'barwed' => 0x22bc, # ⊼ NAND
134
+ 'Barwed' => 0x2306, # ⌆ PERSPECTIVE
135
+ 'bcong' => 0x224c, # ≌ ALL EQUAL TO
136
+ 'Bcy' => 0x0411, # Б CYRILLIC CAPITAL LETTER BE
137
+ 'bcy' => 0x0431, # б CYRILLIC SMALL LETTER BE
138
+ 'bdquo' => 0x201e, # „ dup xhtml DOUBLE LOW-9 QUOTATION MARK
139
+ 'becaus' => 0x2235, # ∵ BECAUSE
140
+ 'bepsi' => 0x220d, # ∍ SMALL CONTAINS AS MEMBER
141
+ 'bernou' => 0x212c, # ℬ SCRIPT CAPITAL B
142
+ 'Beta' => 0x0392, # Β dup xhtml GREEK CAPITAL LETTER BETA
143
+ 'beta' => 0x03b2, # β dup xhtml GREEK SMALL LETTER BETA
144
+ 'beth' => 0x2136, # ℶ BET SYMBOL
145
+ 'Bgr' => 0x0392, # Β dup skip GREEK CAPITAL LETTER BETA
146
+ 'bgr' => 0x03b2, # β dup skip GREEK SMALL LETTER BETA
147
+ 'blank' => 0x2423, # ␣ OPEN BOX
148
+ 'blk12' => 0x2592, # ▒ MEDIUM SHADE
149
+ 'blk14' => 0x2591, # ░ LIGHT SHADE
150
+ 'blk34' => 0x2593, # ▓ DARK SHADE
151
+ 'block' => 0x2588, # █ FULL BLOCK
152
+ 'bottom' => 0x22a5, # ⊥ dup skip UP TACK
153
+ 'bowtie' => 0x22c8, # ⋈ BOWTIE
154
+ 'boxdl' => 0x2510, # ┐ BOX DRAWINGS LIGHT DOWN AND LEFT
155
+ 'boxdL' => 0x2555, # ╕ BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
156
+ 'boxDl' => 0x2556, # ╖ BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
157
+ 'boxDL' => 0x2557, # ╗ BOX DRAWINGS DOUBLE DOWN AND LEFT
158
+ 'boxdr' => 0x250c, # ┌ BOX DRAWINGS LIGHT DOWN AND RIGHT
159
+ 'boxdR' => 0x2552, # ╒ BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
160
+ 'boxDr' => 0x2553, # ╓ BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
161
+ 'boxDR' => 0x2554, # ╔ BOX DRAWINGS DOUBLE DOWN AND RIGHT
162
+ 'boxh' => 0x2500, # ─ BOX DRAWINGS LIGHT HORIZONTAL
163
+ 'boxH' => 0x2550, # ═ BOX DRAWINGS DOUBLE HORIZONTAL
164
+ 'boxhd' => 0x252c, # ┬ BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
165
+ 'boxHd' => 0x2564, # ╤ BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
166
+ 'boxhD' => 0x2565, # ╥ BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
167
+ 'boxHD' => 0x2566, # ╦ BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
168
+ 'boxhu' => 0x2534, # ┴ BOX DRAWINGS LIGHT UP AND HORIZONTAL
169
+ 'boxHu' => 0x2567, # ╧ BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
170
+ 'boxhU' => 0x2568, # ╨ BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
171
+ 'boxHU' => 0x2569, # ╩ BOX DRAWINGS DOUBLE UP AND HORIZONTAL
172
+ 'boxul' => 0x2518, # ┘ BOX DRAWINGS LIGHT UP AND LEFT
173
+ 'boxuL' => 0x255b, # ╛ BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
174
+ 'boxUl' => 0x255c, # ╜ BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
175
+ 'boxUL' => 0x255d, # ╝ BOX DRAWINGS DOUBLE UP AND LEFT
176
+ 'boxur' => 0x2514, # └ BOX DRAWINGS LIGHT UP AND RIGHT
177
+ 'boxuR' => 0x2558, # ╘ BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
178
+ 'boxUr' => 0x2559, # ╙ BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
179
+ 'boxUR' => 0x255a, # ╚ BOX DRAWINGS DOUBLE UP AND RIGHT
180
+ 'boxv' => 0x2502, # │ BOX DRAWINGS LIGHT VERTICAL
181
+ 'boxV' => 0x2551, # ║ BOX DRAWINGS DOUBLE VERTICAL
182
+ 'boxvh' => 0x253c, # ┼ BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
183
+ 'boxvH' => 0x256a, # ╪ BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
184
+ 'boxVh' => 0x256b, # ╫ BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
185
+ 'boxVH' => 0x256c, # ╬ BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
186
+ 'boxvl' => 0x2524, # ┤ BOX DRAWINGS LIGHT VERTICAL AND LEFT
187
+ 'boxvL' => 0x2561, # ╡ BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
188
+ 'boxVl' => 0x2562, # ╢ BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
189
+ 'boxVL' => 0x2563, # ╣ BOX DRAWINGS DOUBLE VERTICAL AND LEFT
190
+ 'boxvr' => 0x251c, # ├ BOX DRAWINGS LIGHT VERTICAL AND RIGHT
191
+ 'boxvR' => 0x255e, # ╞ BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
192
+ 'boxVr' => 0x255f, # ╟ BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
193
+ 'boxVR' => 0x2560, # ╠ BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
194
+ 'bprime' => 0x2035, # ‵ REVERSED PRIME
195
+ 'breve' => 0x02d8, # ˘ BREVE
196
+ 'brvbar' => 0x00a6, # ¦ xhtml BROKEN BAR
197
+ 'bsim' => 0x223d, # ∽ REVERSED TILDE
198
+ 'bsime' => 0x22cd, # ⋍ REVERSED TILDE EQUALS
199
+ 'bsol' => 0x005c, # \ dup REVERSE SOLIDUS
200
+ 'bull' => 0x2022, # • xhtml BULLET
201
+ 'bump' => 0x224e, # ≎ GEOMETRICALLY EQUIVALENT TO
202
+ 'bumpe' => 0x224f, # ≏ DIFFERENCE BETWEEN
203
+ 'Cacute' => 0x0106, # Ć LATIN CAPITAL LETTER C WITH ACUTE
204
+ 'cacute' => 0x0107, # ć LATIN SMALL LETTER C WITH ACUTE
205
+ 'cap' => 0x2229, # ∩ xhtml INTERSECTION
206
+ 'Cap' => 0x22d2, # ⋒ DOUBLE INTERSECTION
207
+ 'caret' => 0x2041, # ⁁ CARET INSERTION POINT
208
+ 'caron' => 0x02c7, # ˇ CARON
209
+ 'Ccaron' => 0x010c, # Č LATIN CAPITAL LETTER C WITH CARON
210
+ 'ccaron' => 0x010d, # č LATIN SMALL LETTER C WITH CARON
211
+ 'Ccedil' => 0x00c7, # Ç xhtml LATIN CAPITAL LETTER C WITH CEDILLA
212
+ 'ccedil' => 0x00e7, # ç xhtml LATIN SMALL LETTER C WITH CEDILLA
213
+ 'Ccirc' => 0x0108, # Ĉ LATIN CAPITAL LETTER C WITH CIRCUMFLEX
214
+ 'ccirc' => 0x0109, # ĉ LATIN SMALL LETTER C WITH CIRCUMFLEX
215
+ 'Cdot' => 0x010a, # Ċ LATIN CAPITAL LETTER C WITH DOT ABOVE
216
+ 'cdot' => 0x010b, # ċ LATIN SMALL LETTER C WITH DOT ABOVE
217
+ 'cedil' => 0x00b8, # ¸ xhtml CEDILLA
218
+ 'cent' => 0x00a2, # ¢ xhtml CENT SIGN
219
+ 'CHcy' => 0x0427, # Ч CYRILLIC CAPITAL LETTER CHE
220
+ 'chcy' => 0x0447, # ч CYRILLIC SMALL LETTER CHE
221
+ 'check' => 0x2713, # ✓ CHECK MARK
222
+ 'Chi' => 0x03a7, # Χ dup xhtml GREEK CAPITAL LETTER CHI
223
+ 'chi' => 0x03c7, # χ dup xhtml GREEK SMALL LETTER CHI
224
+ 'cir' => 0x25cb, # ○ dup WHITE CIRCLE
225
+ 'circ' => 0x02c6, # ˆ xhtml MODIFIER LETTER CIRCUMFLEX ACCENT
226
+ 'cire' => 0x2257, # ≗ RING EQUAL TO
227
+ 'clubs' => 0x2663, # ♣ xhtml BLACK CLUB SUIT
228
+ 'Codot' => 0x010a, # Ċ LATIN CAPITAL LETTER C WITH DOT ABOVE
229
+ 'colon' => 0x003a, # : COLON
230
+ 'colone' => 0x2254, # ≔ COLON EQUALS
231
+ 'comma' => 0x002c, # , COMMA
232
+ 'commat' => 0x0040, # @ COMMERCIAL AT
233
+ 'comp' => 0x2201, # ∁ COMPLEMENT
234
+ 'compfn' => 0x2218, # ∘ RING OPERATOR
235
+ 'cong' => 0x2245, # ≅ xhtml APPROXIMATELY EQUAL TO
236
+ 'conint' => 0x222e, # ∮ CONTOUR INTEGRAL
237
+ 'coprod' => 0x2210, # ∐ dup skip N-ARY COPRODUCT
238
+ 'copy' => 0x00a9, # © xhtml COPYRIGHT SIGN
239
+ 'copysr' => 0x2117, # ℗ SOUND RECORDING COPYRIGHT
240
+ 'crarr' => 0x21b5, # ↵ xhtml DOWNWARDS ARROW WITH CORNER LEFTWARDS
241
+ 'cross' => 0x2717, # ✗ BALLOT X
242
+ 'cuepr' => 0x22de, # ⋞ EQUAL TO OR PRECEDES
243
+ 'cuesc' => 0x22df, # ⋟ EQUAL TO OR SUCCEEDS
244
+ 'cularr' => 0x21b6, # ↶ ANTICLOCKWISE TOP SEMICIRCLE ARROW
245
+ 'cup' => 0x222a, # ∪ xhtml UNION
246
+ 'Cup' => 0x22d3, # ⋓ DOUBLE UNION
247
+ 'cupre' => 0x227c, # ≼ dup PRECEDES OR EQUAL TO
248
+ 'curarr' => 0x21b7, # ↷ CLOCKWISE TOP SEMICIRCLE ARROW
249
+ 'curren' => 0x00a4, # ¤ xhtml CURRENCY SIGN
250
+ 'cuvee' => 0x22ce, # ⋎ CURLY LOGICAL OR
251
+ 'cuwed' => 0x22cf, # ⋏ CURLY LOGICAL AND
252
+ 'dagger' => 0x2020, # † xhtml DAGGER
253
+ 'Dagger' => 0x2021, # ‡ xhtml DOUBLE DAGGER
254
+ 'daleth' => 0x2138, # ℸ DALET SYMBOL
255
+ 'darr' => 0x2193, # ↓ xhtml DOWNWARDS ARROW
256
+ 'dArr' => 0x21d3, # ⇓ xhtml DOWNWARDS DOUBLE ARROW
257
+ 'darr2' => 0x21ca, # ⇊ DOWNWARDS PAIRED ARROWS
258
+ 'dash' => 0x2010, # ‐ HYPHEN
259
+ 'dashv' => 0x22a3, # ⊣ LEFT TACK
260
+ 'dblac' => 0x02dd, # ˝ DOUBLE ACUTE ACCENT
261
+ 'Dcaron' => 0x010e, # Ď LATIN CAPITAL LETTER D WITH CARON
262
+ 'dcaron' => 0x010f, # ď LATIN SMALL LETTER D WITH CARON
263
+ 'dcross' => 0x0111, # đ LATIN SMALL LETTER D WITH STROKE
264
+ 'Dcy' => 0x0414, # Д CYRILLIC CAPITAL LETTER DE
265
+ 'dcy' => 0x0434, # д CYRILLIC SMALL LETTER DE
266
+ 'deg' => 0x00b0, # ° xhtml DEGREE SIGN
267
+ 'Delta' => 0x0394, # Δ dup xhtml GREEK CAPITAL LETTER DELTA
268
+ 'delta' => 0x03b4, # δ dup xhtml GREEK SMALL LETTER DELTA
269
+ 'Dgr' => 0x0394, # Δ dup skip GREEK CAPITAL LETTER DELTA
270
+ 'dgr' => 0x03b4, # δ dup skip GREEK SMALL LETTER DELTA
271
+ 'dharl' => 0x21c3, # ⇃ DOWNWARDS HARPOON WITH BARB LEFTWARDS
272
+ 'dharr' => 0x21c2, # ⇂ DOWNWARDS HARPOON WITH BARB RIGHTWARDS
273
+ 'diam' => 0x22c4, # ⋄ DIAMOND OPERATOR
274
+ 'diams' => 0x2666, # ♦ xhtml BLACK DIAMOND SUIT
275
+ 'die' => 0x00a8, # ¨ dup skip DIAERESIS
276
+ 'divide' => 0x00f7, # ÷ xhtml DIVISION SIGN
277
+ 'divonx' => 0x22c7, # ⋇ DIVISION TIMES
278
+ 'DJcy' => 0x0402, # Ђ CYRILLIC CAPITAL LETTER DJE
279
+ 'djcy' => 0x0452, # ђ CYRILLIC SMALL LETTER DJE
280
+ 'dlarr' => 0x2199, # ↙ SOUTH WEST ARROW
281
+ 'dlcorn' => 0x231e, # ⌞ BOTTOM LEFT CORNER
282
+ 'dlcrop' => 0x230d, # ⌍ BOTTOM LEFT CROP
283
+ 'dollar' => 0x0024, # $ DOLLAR SIGN
284
+ 'Dot' => 0x00a8, # ¨ dup skip DIAERESIS
285
+ 'dot' => 0x02d9, # ˙ DOT ABOVE
286
+ 'DotDot' => 0x20dc, # ⃜ COMBINING FOUR DOTS ABOVE
287
+ 'drarr' => 0x2198, # ↘ SOUTH EAST ARROW
288
+ 'drcorn' => 0x231f, # ⌟ BOTTOM RIGHT CORNER
289
+ 'drcrop' => 0x230c, # ⌌ BOTTOM RIGHT CROP
290
+ 'DScy' => 0x0405, # Ѕ CYRILLIC CAPITAL LETTER DZE
291
+ 'dscy' => 0x0455, # ѕ CYRILLIC SMALL LETTER DZE
292
+ 'Dstrok' => 0x0110, # Đ LATIN CAPITAL LETTER D WITH STROKE
293
+ 'dstrok' => 0x0111, # đ LATIN SMALL LETTER D WITH STROKE
294
+ 'dsubdot' => 0x1e0d, # ḍ LATIN SMALL LETTER D WITH DOT BELOW
295
+ 'dtri' => 0x25bf, # ▿ WHITE DOWN-POINTING SMALL TRIANGLE
296
+ 'dtrif' => 0x25be, # ▾ BLACK DOWN-POINTING SMALL TRIANGLE
297
+ 'DZcy' => 0x040f, # Џ CYRILLIC CAPITAL LETTER DZHE
298
+ 'dzcy' => 0x045f, # џ CYRILLIC SMALL LETTER DZHE
299
+ 'Eacgr' => 0x0388, # Έ GREEK CAPITAL LETTER EPSILON WITH TONOS
300
+ 'eacgr' => 0x03ad, # έ GREEK SMALL LETTER EPSILON WITH TONOS
301
+ 'Eacute' => 0x00c9, # É xhtml LATIN CAPITAL LETTER E WITH ACUTE
302
+ 'eacute' => 0x00e9, # é xhtml LATIN SMALL LETTER E WITH ACUTE
303
+ 'Ecaron' => 0x011a, # Ě LATIN CAPITAL LETTER E WITH CARON
304
+ 'ecaron' => 0x011b, # ě LATIN SMALL LETTER E WITH CARON
305
+ 'ecir' => 0x2256, # ≖ RING IN EQUAL TO
306
+ 'Ecirc' => 0x00ca, # Ê xhtml LATIN CAPITAL LETTER E WITH CIRCUMFLEX
307
+ 'ecirc' => 0x00ea, # ê xhtml LATIN SMALL LETTER E WITH CIRCUMFLEX
308
+ 'ecolon' => 0x2255, # ≕ EQUALS COLON
309
+ 'Ecy' => 0x042d, # Э CYRILLIC CAPITAL LETTER E
310
+ 'ecy' => 0x044d, # э CYRILLIC SMALL LETTER E
311
+ 'Edot' => 0x0116, # Ė LATIN CAPITAL LETTER E WITH DOT ABOVE
312
+ 'edot' => 0x0117, # ė LATIN SMALL LETTER E WITH DOT ABOVE
313
+ 'eDot' => 0x2251, # ≑ GEOMETRICALLY EQUAL TO
314
+ 'EEacgr' => 0x0389, # Ή GREEK CAPITAL LETTER ETA WITH TONOS
315
+ 'eeacgr' => 0x03ae, # ή GREEK SMALL LETTER ETA WITH TONOS
316
+ 'EEgr' => 0x0397, # Η dup skip GREEK CAPITAL LETTER ETA
317
+ 'eegr' => 0x03b7, # η dup skip GREEK SMALL LETTER ETA
318
+ 'efDot' => 0x2252, # ≒ APPROXIMATELY EQUAL TO OR THE IMAGE OF
319
+ 'Egr' => 0x0395, # Ε dup skip GREEK CAPITAL LETTER EPSILON
320
+ 'egr' => 0x03b5, # ε dup skip GREEK SMALL LETTER EPSILON
321
+ 'Egrave' => 0x00c8, # È xhtml LATIN CAPITAL LETTER E WITH GRAVE
322
+ 'egrave' => 0x00e8, # è xhtml LATIN SMALL LETTER E WITH GRAVE
323
+ 'egs' => 0x22dd, # ⋝ EQUAL TO OR GREATER-THAN
324
+ 'ell' => 0x2113, # ℓ SCRIPT SMALL L
325
+ 'els' => 0x22dc, # ⋜ EQUAL TO OR LESS-THAN
326
+ 'Emacr' => 0x0112, # Ē LATIN CAPITAL LETTER E WITH MACRON
327
+ 'emacr' => 0x0113, # ē LATIN SMALL LETTER E WITH MACRON
328
+ 'empty' => 0x2205, # ∅ xhtml EMPTY SET
329
+ 'emsp' => 0x2003, #   xhtml EM SPACE
330
+ 'emsp13' => 0x2004, #   THREE-PER-EM SPACE
331
+ 'emsp14' => 0x2005, #   FOUR-PER-EM SPACE
332
+ 'ENG' => 0x014a, # Ŋ LATIN CAPITAL LETTER ENG
333
+ 'eng' => 0x014b, # ŋ LATIN SMALL LETTER ENG
334
+ 'ensp' => 0x2002, #   xhtml EN SPACE
335
+ 'Eogon' => 0x0118, # Ę LATIN CAPITAL LETTER E WITH OGONEK
336
+ 'eogon' => 0x0119, # ę LATIN SMALL LETTER E WITH OGONEK
337
+ 'epolhook' => 0x0119, # ę LATIN SMALL LETTER E WITH OGONEK
338
+ 'epsi' => 0x03b5, # ε dup skip GREEK SMALL LETTER EPSILON
339
+ 'Epsilon' => 0x0395, # Ε dup xhtml GREEK CAPITAL LETTER EPSILON
340
+ 'epsilon' => 0x03b5, # ε dup xhtml GREEK SMALL LETTER EPSILON
341
+ 'epsis' => 0x220a, # ∊ SMALL ELEMENT OF
342
+ 'equals' => 0x003d, # = EQUALS SIGN
343
+ 'equiv' => 0x2261, # ≡ xhtml IDENTICAL TO
344
+ 'erDot' => 0x2253, # ≓ IMAGE OF OR APPROXIMATELY EQUAL TO
345
+ 'esdot' => 0x2250, # ≐ APPROACHES THE LIMIT
346
+ 'Eta' => 0x0397, # Η dup xhtml GREEK CAPITAL LETTER ETA
347
+ 'eta' => 0x03b7, # η dup xhtml GREEK SMALL LETTER ETA
348
+ 'ETH' => 0x00d0, # Ð xhtml LATIN CAPITAL LETTER ETH
349
+ 'eth' => 0x00f0, # ð xhtml LATIN SMALL LETTER ETH
350
+ 'Euml' => 0x00cb, # Ë xhtml LATIN CAPITAL LETTER E WITH DIAERESIS
351
+ 'euml' => 0x00eb, # ë xhtml LATIN SMALL LETTER E WITH DIAERESIS
352
+ 'excl' => 0x0021, # ! EXCLAMATION MARK
353
+ 'exist' => 0x2203, # ∃ xhtml THERE EXISTS
354
+ 'Fcy' => 0x0424, # Ф CYRILLIC CAPITAL LETTER EF
355
+ 'fcy' => 0x0444, # ф CYRILLIC SMALL LETTER EF
356
+ 'female' => 0x2640, # ♀ FEMALE SIGN
357
+ 'ffilig' => 0xfb03, # ffi LATIN SMALL LIGATURE FFI
358
+ 'fflig' => 0xfb00, # ff LATIN SMALL LIGATURE FF
359
+ 'ffllig' => 0xfb04, # ffl LATIN SMALL LIGATURE FFL
360
+ 'filig' => 0xfb01, # fi LATIN SMALL LIGATURE FI
361
+ 'flat' => 0x266d, # ♭ MUSIC FLAT SIGN
362
+ 'fllig' => 0xfb02, # fl LATIN SMALL LIGATURE FL
363
+ 'fnof' => 0x0192, # ƒ xhtml LATIN SMALL LETTER F WITH HOOK
364
+ 'forall' => 0x2200, # ∀ xhtml FOR ALL
365
+ 'fork' => 0x22d4, # ⋔ PITCHFORK
366
+ 'frac12' => 0x00bd, # ½ dup xhtml VULGAR FRACTION ONE HALF
367
+ 'frac13' => 0x2153, # ⅓ VULGAR FRACTION ONE THIRD
368
+ 'frac14' => 0x00bc, # ¼ xhtml VULGAR FRACTION ONE QUARTER
369
+ 'frac15' => 0x2155, # ⅕ VULGAR FRACTION ONE FIFTH
370
+ 'frac16' => 0x2159, # ⅙ VULGAR FRACTION ONE SIXTH
371
+ 'frac18' => 0x215b, # ⅛ VULGAR FRACTION ONE EIGHTH
372
+ 'frac23' => 0x2154, # ⅔ VULGAR FRACTION TWO THIRDS
373
+ 'frac25' => 0x2156, # ⅖ VULGAR FRACTION TWO FIFTHS
374
+ 'frac34' => 0x00be, # ¾ xhtml VULGAR FRACTION THREE QUARTERS
375
+ 'frac35' => 0x2157, # ⅗ VULGAR FRACTION THREE FIFTHS
376
+ 'frac38' => 0x215c, # ⅜ VULGAR FRACTION THREE EIGHTHS
377
+ 'frac45' => 0x2158, # ⅘ VULGAR FRACTION FOUR FIFTHS
378
+ 'frac56' => 0x215a, # ⅚ VULGAR FRACTION FIVE SIXTHS
379
+ 'frac58' => 0x215d, # ⅝ VULGAR FRACTION FIVE EIGHTHS
380
+ 'frac78' => 0x215e, # ⅞ VULGAR FRACTION SEVEN EIGHTHS
381
+ 'frasl' => 0x2044, # ⁄ xhtml FRACTION SLASH
382
+ 'frown' => 0x2322, # ⌢ dup FROWN
383
+ 'gacute' => 0x01f5, # ǵ LATIN SMALL LETTER G WITH ACUTE
384
+ 'Gamma' => 0x0393, # Γ dup xhtml GREEK CAPITAL LETTER GAMMA
385
+ 'gamma' => 0x03b3, # γ dup xhtml GREEK SMALL LETTER GAMMA
386
+ 'gammad' => 0x03dc, # Ϝ dup GREEK LETTER DIGAMMA
387
+ 'Gbreve' => 0x011e, # Ğ LATIN CAPITAL LETTER G WITH BREVE
388
+ 'gbreve' => 0x011f, # ğ LATIN SMALL LETTER G WITH BREVE
389
+ 'Gcedil' => 0x0122, # Ģ LATIN CAPITAL LETTER G WITH CEDILLA
390
+ 'gcedil' => 0x0123, # ģ LATIN SMALL LETTER G WITH CEDILLA
391
+ 'Gcirc' => 0x011c, # Ĝ LATIN CAPITAL LETTER G WITH CIRCUMFLEX
392
+ 'gcirc' => 0x011d, # ĝ LATIN SMALL LETTER G WITH CIRCUMFLEX
393
+ 'Gcy' => 0x0413, # Г CYRILLIC CAPITAL LETTER GHE
394
+ 'gcy' => 0x0433, # г CYRILLIC SMALL LETTER GHE
395
+ 'Gdot' => 0x0120, # Ġ LATIN CAPITAL LETTER G WITH DOT ABOVE
396
+ 'gdot' => 0x0121, # ġ LATIN SMALL LETTER G WITH DOT ABOVE
397
+ 'ge' => 0x2265, # ≥ dup xhtml GREATER-THAN OR EQUAL TO
398
+ 'gE' => 0x2267, # ≧ GREATER-THAN OVER EQUAL TO
399
+ 'gel' => 0x22db, # ⋛ GREATER-THAN EQUAL TO OR LESS-THAN
400
+ 'ges' => 0x2265, # ≥ dup skip GREATER-THAN OR EQUAL TO
401
+ 'Gg' => 0x22d9, # ⋙ VERY MUCH GREATER-THAN
402
+ 'Ggr' => 0x0393, # Γ dup skip GREEK CAPITAL LETTER GAMMA
403
+ 'ggr' => 0x03b3, # γ dup skip GREEK SMALL LETTER GAMMA
404
+ 'gimel' => 0x2137, # ℷ GIMEL SYMBOL
405
+ 'GJcy' => 0x0403, # Ѓ CYRILLIC CAPITAL LETTER GJE
406
+ 'gjcy' => 0x0453, # ѓ CYRILLIC SMALL LETTER GJE
407
+ 'gl' => 0x2277, # ≷ GREATER-THAN OR LESS-THAN
408
+ 'gnE' => 0x2269, # ≩ dup GREATER-THAN BUT NOT EQUAL TO
409
+ 'gne' => 0x2269, # ≩ dup skip GREATER-THAN BUT NOT EQUAL TO
410
+ 'gnsim' => 0x22e7, # ⋧ GREATER-THAN BUT NOT EQUIVALENT TO
411
+ 'godot' => 0x0121, # ġ LATIN SMALL LETTER G WITH DOT ABOVE
412
+ 'grave' => 0x0060, # ` GRAVE ACCENT
413
+ 'gsdot' => 0x22d7, # ⋗ GREATER-THAN WITH DOT
414
+ 'gsim' => 0x2273, # ≳ GREATER-THAN OR EQUIVALENT TO
415
+ 'gt' => 0x003e, # > xhtml GREATER-THAN SIGN
416
+ 'Gt' => 0x226b, # ≫ MUCH GREATER-THAN
417
+ 'gvnE' => 0x2269, # ≩ dup skip GREATER-THAN BUT NOT EQUAL TO
418
+ 'hairsp' => 0x200a, #   HAIR SPACE
419
+ 'half' => 0x00bd, # ½ dup skip VULGAR FRACTION ONE HALF
420
+ 'hamilt' => 0x210b, # ℋ SCRIPT CAPITAL H
421
+ 'HARDcy' => 0x042a, # Ъ CYRILLIC CAPITAL LETTER HARD SIGN
422
+ 'hardcy' => 0x044a, # ъ CYRILLIC SMALL LETTER HARD SIGN
423
+ 'harr' => 0x2194, # ↔ dup xhtml LEFT RIGHT ARROW
424
+ 'hArr' => 0x21d4, # ⇔ dup xhtml LEFT RIGHT DOUBLE ARROW
425
+ 'harrw' => 0x21ad, # ↭ LEFT RIGHT WAVE ARROW
426
+ 'Hcirc' => 0x0124, # Ĥ LATIN CAPITAL LETTER H WITH CIRCUMFLEX
427
+ 'hcirc' => 0x0125, # ĥ LATIN SMALL LETTER H WITH CIRCUMFLEX
428
+ 'hearts' => 0x2665, # ♥ xhtml BLACK HEART SUIT
429
+ 'hellip' => 0x2026, # … dup xhtml HORIZONTAL ELLIPSIS
430
+ 'horbar' => 0x2015, # ― HORIZONTAL BAR
431
+ 'Hstrok' => 0x0126, # Ħ LATIN CAPITAL LETTER H WITH STROKE
432
+ 'hstrok' => 0x0127, # ħ LATIN SMALL LETTER H WITH STROKE
433
+ 'Hsubdot' => 0x1e25, # Ḥ LATIN CAPITAL LETTER H WITH DOT BELOW
434
+ 'hsubdot' => 0x1e25, # ḥ LATIN SMALL LETTER H WITH DOT BELOW
435
+ 'hybull' => 0x2043, # ⁃ HYPHEN BULLET
436
+ 'hyphen' => 0x002d, # - HYPHEN-MINUS
437
+ 'Iacgr' => 0x038a, # Ί GREEK CAPITAL LETTER IOTA WITH TONOS
438
+ 'iacgr' => 0x03af, # ί GREEK SMALL LETTER IOTA WITH TONOS
439
+ 'Iacute' => 0x00cd, # Í xhtml LATIN CAPITAL LETTER I WITH ACUTE
440
+ 'iacute' => 0x00ed, # í xhtml LATIN SMALL LETTER I WITH ACUTE
441
+ 'Icirc' => 0x00ce, # Î xhtml LATIN CAPITAL LETTER I WITH CIRCUMFLEX
442
+ 'icirc' => 0x00ee, # î xhtml LATIN SMALL LETTER I WITH CIRCUMFLEX
443
+ 'Icy' => 0x0418, # И CYRILLIC CAPITAL LETTER I
444
+ 'icy' => 0x0438, # и CYRILLIC SMALL LETTER I
445
+ 'idiagr' => 0x0390, # ΐ GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
446
+ 'Idigr' => 0x03aa, # Ϊ GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
447
+ 'idigr' => 0x03ca, # ϊ GREEK SMALL LETTER IOTA WITH DIALYTIKA
448
+ 'Idot' => 0x0130, # İ LATIN CAPITAL LETTER I WITH DOT ABOVE
449
+ 'idotless' => 0x0131, # ı LATIN SMALL LETTER DOTLESS I
450
+ 'IEcy' => 0x0415, # Е CYRILLIC CAPITAL LETTER IE
451
+ 'iecy' => 0x0435, # е CYRILLIC SMALL LETTER IE
452
+ 'iexcl' => 0x00a1, # ¡ xhtml INVERTED EXCLAMATION MARK
453
+ 'iff' => 0x21d4, # ⇔ dup skip LEFT RIGHT DOUBLE ARROW
454
+ 'Igr' => 0x0399, # Ι dup skip GREEK CAPITAL LETTER IOTA
455
+ 'igr' => 0x03b9, # ι dup skip GREEK SMALL LETTER IOTA
456
+ 'Igrave' => 0x00cc, # Ì xhtml LATIN CAPITAL LETTER I WITH GRAVE
457
+ 'igrave' => 0x00ec, # ì xhtml LATIN SMALL LETTER I WITH GRAVE
458
+ 'IJlig' => 0x0132, # IJ LATIN CAPITAL LIGATURE IJ
459
+ 'ijlig' => 0x0133, # ij LATIN SMALL LIGATURE IJ
460
+ 'Imacr' => 0x012a, # Ī LATIN CAPITAL LETTER I WITH MACRON
461
+ 'imacr' => 0x012b, # ī LATIN SMALL LETTER I WITH MACRON
462
+ 'image' => 0x2111, # ℑ xhtml BLACK-LETTER CAPITAL I
463
+ 'incare' => 0x2105, # ℅ CARE OF
464
+ 'infin' => 0x221e, # ∞ xhtml INFINITY
465
+ 'inodot' => 0x0131, # ı dup LATIN SMALL LETTER DOTLESS I
466
+ 'int' => 0x222b, # ∫ xhtml INTEGRAL
467
+ 'intcal' => 0x22ba, # ⊺ INTERCALATE
468
+ 'IOcy' => 0x0401, # Ё CYRILLIC CAPITAL LETTER IO
469
+ 'iocy' => 0x0451, # ё CYRILLIC SMALL LETTER IO
470
+ 'Iodot' => 0x0130, # İ LATIN CAPITAL LETTER I WITH DOT ABOVE
471
+ 'Iogon' => 0x012e, # Į LATIN CAPITAL LETTER I WITH OGONEK
472
+ 'iogon' => 0x012f, # į LATIN SMALL LETTER I WITH OGONEK
473
+ 'Iota' => 0x0399, # Ι dup xhtml GREEK CAPITAL LETTER IOTA
474
+ 'iota' => 0x03b9, # ι dup xhtml GREEK SMALL LETTER IOTA
475
+ 'iquest' => 0x00bf, # ¿ xhtml INVERTED QUESTION MARK
476
+ 'isin' => 0x2208, # ∈ xhtml ELEMENT OF
477
+ 'Itilde' => 0x0128, # Ĩ LATIN CAPITAL LETTER I WITH TILDE
478
+ 'itilde' => 0x0129, # ĩ LATIN SMALL LETTER I WITH TILDE
479
+ 'Iukcy' => 0x0406, # І CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
480
+ 'iukcy' => 0x0456, # і CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
481
+ 'Iuml' => 0x00cf, # Ï xhtml LATIN CAPITAL LETTER I WITH DIAERESIS
482
+ 'iuml' => 0x00ef, # ï xhtml LATIN SMALL LETTER I WITH DIAERESIS
483
+ 'Jcirc' => 0x0134, # Ĵ LATIN CAPITAL LETTER J WITH CIRCUMFLEX
484
+ 'jcirc' => 0x0135, # ĵ LATIN SMALL LETTER J WITH CIRCUMFLEX
485
+ 'Jcy' => 0x0419, # Й CYRILLIC CAPITAL LETTER SHORT I
486
+ 'jcy' => 0x0439, # й CYRILLIC SMALL LETTER SHORT I
487
+ 'Jsercy' => 0x0408, # Ј CYRILLIC CAPITAL LETTER JE
488
+ 'jsercy' => 0x0458, # ј CYRILLIC SMALL LETTER JE
489
+ 'Jukcy' => 0x0404, # Є CYRILLIC CAPITAL LETTER UKRAINIAN IE
490
+ 'jukcy' => 0x0454, # є CYRILLIC SMALL LETTER UKRAINIAN IE
491
+ 'Kappa' => 0x039a, # Κ dup xhtml GREEK CAPITAL LETTER KAPPA
492
+ 'kappa' => 0x03ba, # κ dup xhtml GREEK SMALL LETTER KAPPA
493
+ 'kappav' => 0x03f0, # ϰ dup GREEK KAPPA SYMBOL
494
+ 'Kcedil' => 0x0136, # Ķ LATIN CAPITAL LETTER K WITH CEDILLA
495
+ 'kcedil' => 0x0137, # ķ LATIN SMALL LETTER K WITH CEDILLA
496
+ 'Kcy' => 0x041a, # К CYRILLIC CAPITAL LETTER KA
497
+ 'kcy' => 0x043a, # к CYRILLIC SMALL LETTER KA
498
+ 'Kgr' => 0x039a, # Κ dup skip GREEK CAPITAL LETTER KAPPA
499
+ 'kgr' => 0x03ba, # κ dup skip GREEK SMALL LETTER KAPPA
500
+ 'kgreen' => 0x0138, # ĸ LATIN SMALL LETTER KRA
501
+ 'KHcy' => 0x0425, # Х CYRILLIC CAPITAL LETTER HA
502
+ 'khcy' => 0x0445, # х CYRILLIC SMALL LETTER HA
503
+ 'KHgr' => 0x03a7, # Χ dup skip GREEK CAPITAL LETTER CHI
504
+ 'khgr' => 0x03c7, # χ dup skip GREEK SMALL LETTER CHI
505
+ 'KJcy' => 0x040c, # Ќ CYRILLIC CAPITAL LETTER KJE
506
+ 'kjcy' => 0x045c, # ќ CYRILLIC SMALL LETTER KJE
507
+ 'ksubdot' => 0x1e33, # ḳ LATIN SMALL LETTER K WITH DOT BELOW
508
+ 'lAarr' => 0x21da, # ⇚ LEFTWARDS TRIPLE ARROW
509
+ 'Lacute' => 0x0139, # Ĺ LATIN CAPITAL LETTER L WITH ACUTE
510
+ 'lacute' => 0x013a, # ĺ LATIN SMALL LETTER L WITH ACUTE
511
+ 'lagran' => 0x2112, # ℒ SCRIPT CAPITAL L
512
+ 'Lambda' => 0x039b, # Λ dup xhtml GREEK CAPITAL LETTER LAMDA
513
+ 'lambda' => 0x03bb, # λ dup xhtml GREEK SMALL LETTER LAMDA
514
+ 'lang' => 0x2329, # 〈 xhtml LEFT-POINTING ANGLE BRACKET
515
+ 'laquo' => 0x00ab, # « xhtml LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
516
+ 'larr' => 0x2190, # ← xhtml LEFTWARDS ARROW
517
+ 'Larr' => 0x219e, # ↞ LEFTWARDS TWO HEADED ARROW
518
+ 'lArr' => 0x21d0, # ⇐ dup xhtml LEFTWARDS DOUBLE ARROW
519
+ 'larr2' => 0x21c7, # ⇇ LEFTWARDS PAIRED ARROWS
520
+ 'larrhk' => 0x21a9, # ↩ LEFTWARDS ARROW WITH HOOK
521
+ 'larrlp' => 0x21ab, # ↫ LEFTWARDS ARROW WITH LOOP
522
+ 'larrtl' => 0x21a2, # ↢ LEFTWARDS ARROW WITH TAIL
523
+ 'Lcaron' => 0x013d, # Ľ LATIN CAPITAL LETTER L WITH CARON
524
+ 'lcaron' => 0x013e, # ľ LATIN SMALL LETTER L WITH CARON
525
+ 'Lcedil' => 0x013b, # Ļ LATIN CAPITAL LETTER L WITH CEDILLA
526
+ 'lcedil' => 0x013c, # ļ LATIN SMALL LETTER L WITH CEDILLA
527
+ 'lceil' => 0x2308, # ⌈ xhtml LEFT CEILING
528
+ 'lcub' => 0x007b, # { LEFT CURLY BRACKET
529
+ 'Lcy' => 0x041b, # Л CYRILLIC CAPITAL LETTER EL
530
+ 'lcy' => 0x043b, # л CYRILLIC SMALL LETTER EL
531
+ 'ldot' => 0x22d6, # ⋖ LESS-THAN WITH DOT
532
+ 'ldquo' => 0x201c, # “ dup xhtml LEFT DOUBLE QUOTATION MARK
533
+ 'ldquor' => 0x201e, # „ dup skip DOUBLE LOW-9 QUOTATION MARK
534
+ 'le' => 0x2264, # ≤ dup xhtml LESS-THAN OR EQUAL TO
535
+ 'lE' => 0x2266, # ≦ LESS-THAN OVER EQUAL TO
536
+ 'leg' => 0x22da, # ⋚ LESS-THAN EQUAL TO OR GREATER-THAN
537
+ 'les' => 0x2264, # ≤ dup skip LESS-THAN OR EQUAL TO
538
+ 'lfloor' => 0x230a, # ⌊ xhtml LEFT FLOOR
539
+ 'lg' => 0x2276, # ≶ LESS-THAN OR GREATER-THAN
540
+ 'Lgr' => 0x039b, # Λ dup skip GREEK CAPITAL LETTER LAMDA
541
+ 'lgr' => 0x03bb, # λ dup skip GREEK SMALL LETTER LAMDA
542
+ 'lhard' => 0x21bd, # ↽ LEFTWARDS HARPOON WITH BARB DOWNWARDS
543
+ 'lharu' => 0x21bc, # ↼ LEFTWARDS HARPOON WITH BARB UPWARDS
544
+ 'lhblk' => 0x2584, # ▄ LOWER HALF BLOCK
545
+ 'LJcy' => 0x0409, # Љ CYRILLIC CAPITAL LETTER LJE
546
+ 'ljcy' => 0x0459, # љ CYRILLIC SMALL LETTER LJE
547
+ 'Ll' => 0x22d8, # ⋘ VERY MUCH LESS-THAN
548
+ 'Lmidot' => 0x013f, # Ŀ LATIN CAPITAL LETTER L WITH MIDDLE DOT
549
+ 'lmidot' => 0x0140, # ŀ LATIN SMALL LETTER L WITH MIDDLE DOT
550
+ 'lnE' => 0x2268, # ≨ dup LESS-THAN BUT NOT EQUAL TO
551
+ 'lne' => 0x2268, # ≨ dup skip LESS-THAN BUT NOT EQUAL TO
552
+ 'lnsim' => 0x22e6, # ⋦ LESS-THAN BUT NOT EQUIVALENT TO
553
+ 'lowast' => 0x2217, # ∗ xhtml ASTERISK OPERATOR
554
+ 'lowbar' => 0x005f, # _ LOW LINE
555
+ 'loz' => 0x25ca, # ◊ xhtml LOZENGE
556
+ 'lozf' => 0x2726, # ✦ BLACK FOUR POINTED STAR
557
+ 'lpar' => 0x0028, # ( LEFT PARENTHESIS
558
+ 'lrarr2' => 0x21c6, # ⇆ LEFTWARDS ARROW OVER RIGHTWARDS ARROW
559
+ 'lrhar2' => 0x21cb, # ⇋ LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
560
+ 'lrm' => 0x200e, # ‎ xhtml LEFT-TO-RIGHT MARK
561
+ 'lsaquo' => 0x2039, # ‹ xhtml SINGLE LEFT-POINTING ANGLE QUOTATION MARK
562
+ 'lsh' => 0x21b0, # ↰ UPWARDS ARROW WITH TIP LEFTWARDS
563
+ 'lsim' => 0x2272, # ≲ LESS-THAN OR EQUIVALENT TO
564
+ 'Lslash' => 0x0141, # Ł LATIN CAPITAL LETTER L WITH STROKE
565
+ 'lslash' => 0x0142, # ł LATIN SMALL LETTER L WITH STROKE
566
+ 'lsqb' => 0x005b, # [ LEFT SQUARE BRACKET
567
+ 'lsquo' => 0x2018, # ‘ dup xhtml LEFT SINGLE QUOTATION MARK
568
+ 'lsquor' => 0x201a, # ‚ dup skip SINGLE LOW-9 QUOTATION MARK
569
+ 'Lstrok' => 0x0141, # Ł LATIN CAPITAL LETTER L WITH STROKE
570
+ 'lstrok' => 0x0142, # ł LATIN SMALL LETTER L WITH STROKE
571
+ 'lt' => 0x003c, # < xhtml LESS-THAN SIGN
572
+ 'Lt' => 0x226a, # ≪ MUCH LESS-THAN
573
+ 'lthree' => 0x22cb, # ⋋ LEFT SEMIDIRECT PRODUCT
574
+ 'ltimes' => 0x22c9, # ⋉ LEFT NORMAL FACTOR SEMIDIRECT PRODUCT
575
+ 'ltri' => 0x25c3, # ◃ WHITE LEFT-POINTING SMALL TRIANGLE
576
+ 'ltrie' => 0x22b4, # ⊴ NORMAL SUBGROUP OF OR EQUAL TO
577
+ 'ltrif' => 0x25c2, # ◂ BLACK LEFT-POINTING SMALL TRIANGLE
578
+ 'lvnE' => 0x2268, # ≨ dup skip LESS-THAN BUT NOT EQUAL TO
579
+ 'macr' => 0x00af, # ¯ xhtml MACRON
580
+ 'male' => 0x2642, # ♂ MALE SIGN
581
+ 'malt' => 0x2720, # ✠ MALTESE CROSS
582
+ 'map' => 0x21a6, # ↦ RIGHTWARDS ARROW FROM BAR
583
+ 'marker' => 0x25ae, # ▮ BLACK VERTICAL RECTANGLE
584
+ 'Mcy' => 0x041c, # М CYRILLIC CAPITAL LETTER EM
585
+ 'mcy' => 0x043c, # м CYRILLIC SMALL LETTER EM
586
+ 'mdash' => 0x2014, # — xhtml EM DASH
587
+ 'Mgr' => 0x039c, # Μ dup skip GREEK CAPITAL LETTER MU
588
+ 'mgr' => 0x03bc, # μ dup skip GREEK SMALL LETTER MU
589
+ 'micro' => 0x00b5, # µ xhtml MICRO SIGN
590
+ 'mid' => 0x2223, # ∣ DIVIDES
591
+ 'middot' => 0x00b7, # · xhtml MIDDLE DOT
592
+ 'minus' => 0x2212, # − xhtml MINUS SIGN
593
+ 'minusb' => 0x229f, # ⊟ SQUARED MINUS
594
+ 'mldr' => 0x2026, # … dup skip HORIZONTAL ELLIPSIS
595
+ 'mnplus' => 0x2213, # ∓ MINUS-OR-PLUS SIGN
596
+ 'models' => 0x22a7, # ⊧ MODELS
597
+ 'msubdot' => 0x1e43, # ṃ LATIN SMALL LETTER M WITH DOT BELOW
598
+ 'Mu' => 0x039c, # Μ dup xhtml GREEK CAPITAL LETTER MU
599
+ 'mu' => 0x03bc, # μ dup xhtml GREEK SMALL LETTER MU
600
+ 'mumap' => 0x22b8, # ⊸ MULTIMAP
601
+ 'nabla' => 0x2207, # ∇ xhtml NABLA
602
+ 'Nacute' => 0x0143, # Ń LATIN CAPITAL LETTER N WITH ACUTE
603
+ 'nacute' => 0x0144, # ń LATIN SMALL LETTER N WITH ACUTE
604
+ 'nap' => 0x2249, # ≉ NOT ALMOST EQUAL TO
605
+ 'napos' => 0x0149, # ʼn LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
606
+ 'natur' => 0x266e, # ♮ MUSIC NATURAL SIGN
607
+ 'nbsp' => 0x00a0, #   xhtml NO-BREAK SPACE
608
+ 'Ncaron' => 0x0147, # Ň LATIN CAPITAL LETTER N WITH CARON
609
+ 'ncaron' => 0x0148, # ň LATIN SMALL LETTER N WITH CARON
610
+ 'Ncedil' => 0x0145, # Ņ LATIN CAPITAL LETTER N WITH CEDILLA
611
+ 'ncedil' => 0x0146, # ņ LATIN SMALL LETTER N WITH CEDILLA
612
+ 'ncong' => 0x2247, # ≇ NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
613
+ 'Ncy' => 0x041d, # Н CYRILLIC CAPITAL LETTER EN
614
+ 'ncy' => 0x043d, # н CYRILLIC SMALL LETTER EN
615
+ 'ndash' => 0x2013, # – xhtml EN DASH
616
+ 'ne' => 0x2260, # ≠ xhtml NOT EQUAL TO
617
+ 'nearr' => 0x2197, # ↗ NORTH EAST ARROW
618
+ 'nequiv' => 0x2262, # ≢ NOT IDENTICAL TO
619
+ 'nexist' => 0x2204, # ∄ THERE DOES NOT EXIST
620
+ 'nge' => 0x2271, # ≱ dup NEITHER GREATER-THAN NOR EQUAL TO
621
+ 'nges' => 0x2271, # ≱ dup skip NEITHER GREATER-THAN NOR EQUAL TO
622
+ 'Ngr' => 0x039d, # Ν dup skip GREEK CAPITAL LETTER NU
623
+ 'ngr' => 0x03bd, # ν dup skip GREEK SMALL LETTER NU
624
+ 'ngt' => 0x226f, # ≯ NOT GREATER-THAN
625
+ 'nharr' => 0x21ae, # ↮ LEFT RIGHT ARROW WITH STROKE
626
+ 'nhArr' => 0x21ce, # ⇎ LEFT RIGHT DOUBLE ARROW WITH STROKE
627
+ 'ni' => 0x220b, # ∋ xhtml CONTAINS AS MEMBER
628
+ 'NJcy' => 0x040a, # Њ CYRILLIC CAPITAL LETTER NJE
629
+ 'njcy' => 0x045a, # њ CYRILLIC SMALL LETTER NJE
630
+ 'nlarr' => 0x219a, # ↚ LEFTWARDS ARROW WITH STROKE
631
+ 'nlArr' => 0x21cd, # ⇍ LEFTWARDS DOUBLE ARROW WITH STROKE
632
+ 'nldr' => 0x2025, # ‥ TWO DOT LEADER
633
+ 'nle' => 0x2270, # ≰ dup NEITHER LESS-THAN NOR EQUAL TO
634
+ 'nles' => 0x2270, # ≰ dup skip NEITHER LESS-THAN NOR EQUAL TO
635
+ 'nlt' => 0x226e, # ≮ NOT LESS-THAN
636
+ 'nltri' => 0x22ea, # ⋪ NOT NORMAL SUBGROUP OF
637
+ 'nltrie' => 0x22ec, # ⋬ NOT NORMAL SUBGROUP OF OR EQUAL TO
638
+ 'nmid' => 0x2224, # ∤ DOES NOT DIVIDE
639
+ 'nodot' => 0x1e45, # ṅ LATIN SMALL LETTER N WITH DOT ABOVE
640
+ 'not' => 0x00ac, # ¬ xhtml NOT SIGN
641
+ 'notin' => 0x2209, # ∉ xhtml NOT AN ELEMENT OF
642
+ 'npar' => 0x2226, # ∦ dup NOT PARALLEL TO
643
+ 'npr' => 0x2280, # ⊀ DOES NOT PRECEDE
644
+ 'npre' => 0x22e0, # ⋠ DOES NOT PRECEDE OR EQUAL
645
+ 'nrarr' => 0x219b, # ↛ RIGHTWARDS ARROW WITH STROKE
646
+ 'nrArr' => 0x21cf, # ⇏ RIGHTWARDS DOUBLE ARROW WITH STROKE
647
+ 'nrtri' => 0x22eb, # ⋫ DOES NOT CONTAIN AS NORMAL SUBGROUP
648
+ 'nrtrie' => 0x22ed, # ⋭ DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
649
+ 'nsc' => 0x2281, # ⊁ DOES NOT SUCCEED
650
+ 'nsce' => 0x22e1, # ⋡ DOES NOT SUCCEED OR EQUAL
651
+ 'nsim' => 0x2241, # ≁ NOT TILDE
652
+ 'nsime' => 0x2244, # ≄ NOT ASYMPTOTICALLY EQUAL TO
653
+ 'nspar' => 0x2226, # ∦ dup skip NOT PARALLEL TO
654
+ 'nsub' => 0x2284, # ⊄ xhtml NOT A SUBSET OF
655
+ 'nsubdot' => 0x1e47, # ṇ LATIN SMALL LETTER N WITH DOT BELOW
656
+ 'nsubE' => 0x2288, # ⊈ dup NEITHER A SUBSET OF NOR EQUAL TO
657
+ 'nsube' => 0x2288, # ⊈ dup skip NEITHER A SUBSET OF NOR EQUAL TO
658
+ 'nsup' => 0x2285, # ⊅ NOT A SUPERSET OF
659
+ 'nsupE' => 0x2289, # ⊉ dup NEITHER A SUPERSET OF NOR EQUAL TO
660
+ 'nsupe' => 0x2289, # ⊉ dup skip NEITHER A SUPERSET OF NOR EQUAL TO
661
+ 'Ntilde' => 0x00d1, # Ñ xhtml LATIN CAPITAL LETTER N WITH TILDE
662
+ 'ntilde' => 0x00f1, # ñ xhtml LATIN SMALL LETTER N WITH TILDE
663
+ 'Nu' => 0x039d, # Ν dup xhtml GREEK CAPITAL LETTER NU
664
+ 'nu' => 0x03bd, # ν dup xhtml GREEK SMALL LETTER NU
665
+ 'num' => 0x0023, # # NUMBER SIGN
666
+ 'numero' => 0x2116, # № NUMERO SIGN
667
+ 'numsp' => 0x2007, #   FIGURE SPACE
668
+ 'nvdash' => 0x22ac, # ⊬ DOES NOT PROVE
669
+ 'nvDash' => 0x22ad, # ⊭ NOT TRUE
670
+ 'nVdash' => 0x22ae, # ⊮ DOES NOT FORCE
671
+ 'nVDash' => 0x22af, # ⊯ NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
672
+ 'nwarr' => 0x2196, # ↖ NORTH WEST ARROW
673
+ 'Oacgr' => 0x038c, # Ό GREEK CAPITAL LETTER OMICRON WITH TONOS
674
+ 'oacgr' => 0x03cc, # ό GREEK SMALL LETTER OMICRON WITH TONOS
675
+ 'Oacute' => 0x00d3, # Ó xhtml LATIN CAPITAL LETTER O WITH ACUTE
676
+ 'oacute' => 0x00f3, # ó xhtml LATIN SMALL LETTER O WITH ACUTE
677
+ 'oast' => 0x229b, # ⊛ CIRCLED ASTERISK OPERATOR
678
+ 'ocir' => 0x229a, # ⊚ CIRCLED RING OPERATOR
679
+ 'Ocirc' => 0x00d4, # Ô xhtml LATIN CAPITAL LETTER O WITH CIRCUMFLEX
680
+ 'ocirc' => 0x00f4, # ô xhtml LATIN SMALL LETTER O WITH CIRCUMFLEX
681
+ 'Ocy' => 0x041e, # О CYRILLIC CAPITAL LETTER O
682
+ 'ocy' => 0x043e, # о CYRILLIC SMALL LETTER O
683
+ 'odash' => 0x229d, # ⊝ CIRCLED DASH
684
+ 'Odblac' => 0x0150, # Ő LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
685
+ 'odblac' => 0x0151, # ő LATIN SMALL LETTER O WITH DOUBLE ACUTE
686
+ 'odot' => 0x2299, # ⊙ CIRCLED DOT OPERATOR
687
+ 'OElig' => 0x0152, # Œ xhtml LATIN CAPITAL LIGATURE OE
688
+ 'oelig' => 0x0153, # œ xhtml LATIN SMALL LIGATURE OE
689
+ 'ogon' => 0x02db, # ˛ OGONEK
690
+ 'Ogr' => 0x039f, # Ο dup skip GREEK CAPITAL LETTER OMICRON
691
+ 'ogr' => 0x03bf, # ο dup skip GREEK SMALL LETTER OMICRON
692
+ 'Ograve' => 0x00d2, # Ò xhtml LATIN CAPITAL LETTER O WITH GRAVE
693
+ 'ograve' => 0x00f2, # ò xhtml LATIN SMALL LETTER O WITH GRAVE
694
+ 'OHacgr' => 0x038f, # Ώ GREEK CAPITAL LETTER OMEGA WITH TONOS
695
+ 'ohacgr' => 0x03ce, # ώ dup GREEK SMALL LETTER OMEGA WITH TONOS
696
+ 'OHgr' => 0x03a9, # Ω dup skip GREEK CAPITAL LETTER OMEGA
697
+ 'ohgr' => 0x03c9, # ω dup skip GREEK SMALL LETTER OMEGA
698
+ 'ohm' => 0x2126, # Ω OHM SIGN
699
+ 'olarr' => 0x21ba, # ↺ ANTICLOCKWISE OPEN CIRCLE ARROW
700
+ 'oline' => 0x203e, # ‾ xhtml OVERLINE
701
+ 'Omacr' => 0x014c, # Ō LATIN CAPITAL LETTER O WITH MACRON
702
+ 'omacr' => 0x014d, # ō LATIN SMALL LETTER O WITH MACRON
703
+ 'Omega' => 0x03a9, # Ω dup xhtml GREEK CAPITAL LETTER OMEGA
704
+ 'omega' => 0x03c9, # ω dup xhtml GREEK SMALL LETTER OMEGA
705
+ 'Omicron' => 0x039f, # Ο dup xhtml GREEK CAPITAL LETTER OMICRON
706
+ 'omicron' => 0x03bf, # ο dup xhtml GREEK SMALL LETTER OMICRON
707
+ 'ominus' => 0x2296, # ⊖ CIRCLED MINUS
708
+ 'oplus' => 0x2295, # ⊕ xhtml CIRCLED PLUS
709
+ 'or' => 0x2228, # ∨ xhtml LOGICAL OR
710
+ 'orarr' => 0x21bb, # ↻ CLOCKWISE OPEN CIRCLE ARROW
711
+ 'order' => 0x2134, # ℴ SCRIPT SMALL O
712
+ 'ordf' => 0x00aa, # ª xhtml FEMININE ORDINAL INDICATOR
713
+ 'ordm' => 0x00ba, # º xhtml MASCULINE ORDINAL INDICATOR
714
+ 'oS' => 0x24c8, # Ⓢ CIRCLED LATIN CAPITAL LETTER S
715
+ 'Oslash' => 0x00d8, # Ø xhtml LATIN CAPITAL LETTER O WITH STROKE
716
+ 'oslash' => 0x00f8, # ø xhtml LATIN SMALL LETTER O WITH STROKE
717
+ 'osol' => 0x2298, # ⊘ CIRCLED DIVISION SLASH
718
+ 'Otilde' => 0x00d5, # Õ xhtml LATIN CAPITAL LETTER O WITH TILDE
719
+ 'otilde' => 0x00f5, # õ xhtml LATIN SMALL LETTER O WITH TILDE
720
+ 'otimes' => 0x2297, # ⊗ xhtml CIRCLED TIMES
721
+ 'Ouml' => 0x00d6, # Ö xhtml LATIN CAPITAL LETTER O WITH DIAERESIS
722
+ 'ouml' => 0x00f6, # ö xhtml LATIN SMALL LETTER O WITH DIAERESIS
723
+ 'par' => 0x2225, # ∥ dup PARALLEL TO
724
+ 'para' => 0x00b6, # ¶ xhtml PILCROW SIGN
725
+ 'part' => 0x2202, # ∂ xhtml PARTIAL DIFFERENTIAL
726
+ 'Pcy' => 0x041f, # П CYRILLIC CAPITAL LETTER PE
727
+ 'pcy' => 0x043f, # п CYRILLIC SMALL LETTER PE
728
+ 'percnt' => 0x0025, # % PERCENT SIGN
729
+ 'period' => 0x002e, # . FULL STOP
730
+ 'permil' => 0x2030, # ‰ xhtml PER MILLE SIGN
731
+ 'perp' => 0x22a5, # ⊥ dup xhtml UP TACK
732
+ 'Pgr' => 0x03a0, # Π dup skip GREEK CAPITAL LETTER PI
733
+ 'pgr' => 0x03c0, # π dup skip GREEK SMALL LETTER PI
734
+ 'PHgr' => 0x03a6, # Φ dup skip GREEK CAPITAL LETTER PHI
735
+ 'phgr' => 0x03c6, # φ dup skip GREEK SMALL LETTER PHI
736
+ 'Phi' => 0x03a6, # Φ dup xhtml GREEK CAPITAL LETTER PHI
737
+ 'phi' => 0x03c6, # φ dup xhtml GREEK SMALL LETTER PHI
738
+ 'phis' => 0x03c6, # φ dup skip GREEK SMALL LETTER PHI
739
+ 'phiv' => 0x03d5, # ϕ dup GREEK PHI SYMBOL
740
+ 'phmmat' => 0x2133, # ℳ SCRIPT CAPITAL M
741
+ 'phone' => 0x260e, # ☎ BLACK TELEPHONE
742
+ 'Pi' => 0x03a0, # Π dup xhtml GREEK CAPITAL LETTER PI
743
+ 'pi' => 0x03c0, # π dup xhtml GREEK SMALL LETTER PI
744
+ 'piv' => 0x03d6, # ϖ dup xhtml GREEK PI SYMBOL
745
+ 'planck' => 0x210f, # ℏ PLANCK CONSTANT OVER TWO PI
746
+ 'plus' => 0x002b, # + PLUS SIGN
747
+ 'plusb' => 0x229e, # ⊞ SQUARED PLUS
748
+ 'plusdo' => 0x2214, # ∔ DOT PLUS
749
+ 'plusmn' => 0x00b1, # ± xhtml PLUS-MINUS SIGN
750
+ 'pound' => 0x00a3, # £ xhtml POUND SIGN
751
+ 'pr' => 0x227a, # ≺ PRECEDES
752
+ 'pre' => 0x227c, # ≼ dup skip PRECEDES OR EQUAL TO
753
+ 'prime' => 0x2032, # ′ dup xhtml PRIME
754
+ 'Prime' => 0x2033, # ″ xhtml DOUBLE PRIME
755
+ 'prnsim' => 0x22e8, # ⋨ PRECEDES BUT NOT EQUIVALENT TO
756
+ 'prod' => 0x220f, # ∏ xhtml N-ARY PRODUCT
757
+ 'prop' => 0x221d, # ∝ dup xhtml PROPORTIONAL TO
758
+ 'prsim' => 0x227e, # ≾ PRECEDES OR EQUIVALENT TO
759
+ 'PSgr' => 0x03a8, # Ψ dup skip GREEK CAPITAL LETTER PSI
760
+ 'psgr' => 0x03c8, # ψ dup skip GREEK SMALL LETTER PSI
761
+ 'Psi' => 0x03a8, # Ψ dup xhtml GREEK CAPITAL LETTER PSI
762
+ 'psi' => 0x03c8, # ψ dup xhtml GREEK SMALL LETTER PSI
763
+ 'puncsp' => 0x2008, #   PUNCTUATION SPACE
764
+ 'quest' => 0x003f, # ? QUESTION MARK
765
+ 'quot' => 0x0022, # " xhtml QUOTATION MARK
766
+ 'rAarr' => 0x21db, # ⇛ RIGHTWARDS TRIPLE ARROW
767
+ 'Racute' => 0x0154, # Ŕ LATIN CAPITAL LETTER R WITH ACUTE
768
+ 'racute' => 0x0155, # ŕ LATIN SMALL LETTER R WITH ACUTE
769
+ 'radic' => 0x221a, # √ xhtml SQUARE ROOT
770
+ 'rang' => 0x232a, # 〉 xhtml RIGHT-POINTING ANGLE BRACKET
771
+ 'raquo' => 0x00bb, # » xhtml RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
772
+ 'rarr' => 0x2192, # → xhtml RIGHTWARDS ARROW
773
+ 'Rarr' => 0x21a0, # ↠ RIGHTWARDS TWO HEADED ARROW
774
+ 'rArr' => 0x21d2, # ⇒ dup xhtml RIGHTWARDS DOUBLE ARROW
775
+ 'rarr2' => 0x21c9, # ⇉ RIGHTWARDS PAIRED ARROWS
776
+ 'rarrhk' => 0x21aa, # ↪ RIGHTWARDS ARROW WITH HOOK
777
+ 'rarrlp' => 0x21ac, # ↬ RIGHTWARDS ARROW WITH LOOP
778
+ 'rarrtl' => 0x21a3, # ↣ RIGHTWARDS ARROW WITH TAIL
779
+ 'rarrw' => 0x219d, # ↝ RIGHTWARDS WAVE ARROW
780
+ 'Rcaron' => 0x0158, # Ř LATIN CAPITAL LETTER R WITH CARON
781
+ 'rcaron' => 0x0159, # ř LATIN SMALL LETTER R WITH CARON
782
+ 'Rcedil' => 0x0156, # Ŗ LATIN CAPITAL LETTER R WITH CEDILLA
783
+ 'rcedil' => 0x0157, # ŗ LATIN SMALL LETTER R WITH CEDILLA
784
+ 'rceil' => 0x2309, # ⌉ xhtml RIGHT CEILING
785
+ 'rcub' => 0x007d, # } RIGHT CURLY BRACKET
786
+ 'Rcy' => 0x0420, # Р CYRILLIC CAPITAL LETTER ER
787
+ 'rcy' => 0x0440, # р CYRILLIC SMALL LETTER ER
788
+ 'rdquo' => 0x201d, # ” xhtml RIGHT DOUBLE QUOTATION MARK
789
+ 'rdquor' => 0x201c, # “ dup skip LEFT DOUBLE QUOTATION MARK
790
+ 'real' => 0x211c, # ℜ xhtml BLACK-LETTER CAPITAL R
791
+ 'rect' => 0x25ad, # ▭ WHITE RECTANGLE
792
+ 'reg' => 0x00ae, # ® xhtml REGISTERED SIGN
793
+ 'rfloor' => 0x230b, # ⌋ xhtml RIGHT FLOOR
794
+ 'Rgr' => 0x03a1, # Ρ dup skip GREEK CAPITAL LETTER RHO
795
+ 'rgr' => 0x03c1, # ρ dup skip GREEK SMALL LETTER RHO
796
+ 'rhard' => 0x21c1, # ⇁ RIGHTWARDS HARPOON WITH BARB DOWNWARDS
797
+ 'rharu' => 0x21c0, # ⇀ RIGHTWARDS HARPOON WITH BARB UPWARDS
798
+ 'Rho' => 0x03a1, # Ρ dup xhtml GREEK CAPITAL LETTER RHO
799
+ 'rho' => 0x03c1, # ρ dup xhtml GREEK SMALL LETTER RHO
800
+ 'rhov' => 0x03f1, # ϱ dup GREEK RHO SYMBOL
801
+ 'ring' => 0x02da, # ˚ RING ABOVE
802
+ 'rlarr2' => 0x21c4, # ⇄ RIGHTWARDS ARROW OVER LEFTWARDS ARROW
803
+ 'rlhar2' => 0x21cc, # ⇌ RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
804
+ 'rlm' => 0x200f, # ‏ xhtml RIGHT-TO-LEFT MARK
805
+ 'rpar' => 0x0029, # ) RIGHT PARENTHESIS
806
+ 'rsaquo' => 0x203a, # › xhtml SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
807
+ 'rsh' => 0x21b1, # ↱ UPWARDS ARROW WITH TIP RIGHTWARDS
808
+ 'rsqb' => 0x005d, # ] RIGHT SQUARE BRACKET
809
+ 'rsquo' => 0x2019, # ’ xhtml RIGHT SINGLE QUOTATION MARK
810
+ 'rsquor' => 0x2018, # ‘ dup skip LEFT SINGLE QUOTATION MARK
811
+ 'Rsubdot' => 0x1e5a, # Ṛ LATIN CAPITAL LETTER R WITH DOT BELOW
812
+ 'rsubdot' => 0x1e5b, # ṛ LATIN SMALL LETTER R WITH DOT BELOW
813
+ 'rthree' => 0x22cc, # ⋌ RIGHT SEMIDIRECT PRODUCT
814
+ 'rtimes' => 0x22ca, # ⋊ RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT
815
+ 'rtri' => 0x25b9, # ▹ WHITE RIGHT-POINTING SMALL TRIANGLE
816
+ 'rtrie' => 0x22b5, # ⊵ CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
817
+ 'rtrif' => 0x25b8, # ▸ BLACK RIGHT-POINTING SMALL TRIANGLE
818
+ 'rx' => 0x211e, # ℞ PRESCRIPTION TAKE
819
+ 'Sacute' => 0x015a, # Ś LATIN CAPITAL LETTER S WITH ACUTE
820
+ 'sacute' => 0x015b, # ś LATIN SMALL LETTER S WITH ACUTE
821
+ 'samalg' => 0x2210, # ∐ dup skip N-ARY COPRODUCT
822
+ 'sbquo' => 0x201a, # ‚ dup xhtml SINGLE LOW-9 QUOTATION MARK
823
+ 'sbsol' => 0x005c, # \ dup skip REVERSE SOLIDUS
824
+ 'sc' => 0x227b, # ≻ SUCCEEDS
825
+ 'Scaron' => 0x0160, # Š xhtml LATIN CAPITAL LETTER S WITH CARON
826
+ 'scaron' => 0x0161, # š xhtml LATIN SMALL LETTER S WITH CARON
827
+ 'sccue' => 0x227d, # ≽ dup SUCCEEDS OR EQUAL TO
828
+ 'sce' => 0x227d, # ≽ dup skip SUCCEEDS OR EQUAL TO
829
+ 'Scedil' => 0x015e, # Ş LATIN CAPITAL LETTER S WITH CEDILLA
830
+ 'scedil' => 0x015f, # ş LATIN SMALL LETTER S WITH CEDILLA
831
+ 'Scirc' => 0x015c, # Ŝ LATIN CAPITAL LETTER S WITH CIRCUMFLEX
832
+ 'scirc' => 0x015d, # ŝ LATIN SMALL LETTER S WITH CIRCUMFLEX
833
+ 'scnsim' => 0x22e9, # ⋩ SUCCEEDS BUT NOT EQUIVALENT TO
834
+ 'scsim' => 0x227f, # ≿ SUCCEEDS OR EQUIVALENT TO
835
+ 'Scy' => 0x0421, # С CYRILLIC CAPITAL LETTER ES
836
+ 'scy' => 0x0441, # с CYRILLIC SMALL LETTER ES
837
+ 'sdot' => 0x22c5, # ⋅ xhtml DOT OPERATOR
838
+ 'sdotb' => 0x22a1, # ⊡ SQUARED DOT OPERATOR
839
+ 'sect' => 0x00a7, # § xhtml SECTION SIGN
840
+ 'semi' => 0x003b, # ; SEMICOLON
841
+ 'setmn' => 0x2216, # ∖ dup SET MINUS
842
+ 'sext' => 0x2736, # ✶ SIX POINTED BLACK STAR
843
+ 'sfgr' => 0x03c2, # ς dup skip GREEK SMALL LETTER FINAL SIGMA
844
+ 'sfrown' => 0x2322, # ⌢ dup skip FROWN
845
+ 'Sgr' => 0x03a3, # Σ dup skip GREEK CAPITAL LETTER SIGMA
846
+ 'sgr' => 0x03c3, # σ dup skip GREEK SMALL LETTER SIGMA
847
+ 'sharp' => 0x266f, # ♯ MUSIC SHARP SIGN
848
+ 'SHCHcy' => 0x0429, # Щ CYRILLIC CAPITAL LETTER SHCHA
849
+ 'shchcy' => 0x0449, # щ CYRILLIC SMALL LETTER SHCHA
850
+ 'SHcy' => 0x0428, # Ш CYRILLIC CAPITAL LETTER SHA
851
+ 'shcy' => 0x0448, # ш CYRILLIC SMALL LETTER SHA
852
+ 'shy' => 0x00ad, # ­ xhtml SOFT HYPHEN
853
+ 'Sigma' => 0x03a3, # Σ dup xhtml GREEK CAPITAL LETTER SIGMA
854
+ 'sigma' => 0x03c3, # σ dup xhtml GREEK SMALL LETTER SIGMA
855
+ 'sigmaf' => 0x03c2, # ς dup xhtml GREEK SMALL LETTER FINAL SIGMA
856
+ 'sigmav' => 0x03c2, # ς dup skip GREEK SMALL LETTER FINAL SIGMA
857
+ 'sim' => 0x223c, # ∼ dup xhtml TILDE OPERATOR
858
+ 'sime' => 0x2243, # ≃ ASYMPTOTICALLY EQUAL TO
859
+ 'smile' => 0x2323, # ⌣ dup SMILE
860
+ 'SOFTcy' => 0x042c, # Ь CYRILLIC CAPITAL LETTER SOFT SIGN
861
+ 'softcy' => 0x044c, # ь CYRILLIC SMALL LETTER SOFT SIGN
862
+ 'sol' => 0x002f, # / SOLIDUS
863
+ 'spades' => 0x2660, # ♠ xhtml BLACK SPADE SUIT
864
+ 'spar' => 0x2225, # ∥ dup skip PARALLEL TO
865
+ 'sqcap' => 0x2293, # ⊓ SQUARE CAP
866
+ 'sqcup' => 0x2294, # ⊔ SQUARE CUP
867
+ 'sqsub' => 0x228f, # ⊏ SQUARE IMAGE OF
868
+ 'sqsube' => 0x2291, # ⊑ SQUARE IMAGE OF OR EQUAL TO
869
+ 'sqsup' => 0x2290, # ⊐ SQUARE ORIGINAL OF
870
+ 'sqsupe' => 0x2292, # ⊒ SQUARE ORIGINAL OF OR EQUAL TO
871
+ 'squ' => 0x25a1, # □ dup WHITE SQUARE
872
+ 'square' => 0x25a1, # □ dup skip WHITE SQUARE
873
+ 'squf' => 0x25aa, # ▪ BLACK SMALL SQUARE
874
+ 'ssetmn' => 0x2216, # ∖ dup skip SET MINUS
875
+ 'ssmile' => 0x2323, # ⌣ dup skip SMILE
876
+ 'sstarf' => 0x22c6, # ⋆ STAR OPERATOR
877
+ 'ssubdot' => 0x1e63, # ṣ LATIN SMALL LETTER S WITH DOT BELOW
878
+ 'star' => 0x2606, # ☆ WHITE STAR
879
+ 'starf' => 0x2605, # ★ BLACK STAR
880
+ 'sub' => 0x2282, # ⊂ xhtml SUBSET OF
881
+ 'Sub' => 0x22d0, # ⋐ DOUBLE SUBSET
882
+ 'subE' => 0x2286, # ⊆ dup skip SUBSET OF OR EQUAL TO
883
+ 'sube' => 0x2286, # ⊆ dup xhtml SUBSET OF OR EQUAL TO
884
+ 'subnE' => 0x228a, # ⊊ dup SUBSET OF WITH NOT EQUAL TO
885
+ 'subne' => 0x228a, # ⊊ dup skip SUBSET OF WITH NOT EQUAL TO
886
+ 'sum' => 0x2211, # ∑ xhtml N-ARY SUMMATION
887
+ 'sung' => 0x266a, # ♪ EIGHTH NOTE
888
+ 'sup' => 0x2283, # ⊃ xhtml SUPERSET OF
889
+ 'Sup' => 0x22d1, # ⋑ DOUBLE SUPERSET
890
+ 'sup1' => 0x00b9, # ¹ xhtml SUPERSCRIPT ONE
891
+ 'sup2' => 0x00b2, # ² xhtml SUPERSCRIPT TWO
892
+ 'sup3' => 0x00b3, # ³ xhtml SUPERSCRIPT THREE
893
+ 'supE' => 0x2287, # ⊇ dup skip SUPERSET OF OR EQUAL TO
894
+ 'supe' => 0x2287, # ⊇ dup xhtml SUPERSET OF OR EQUAL TO
895
+ 'supnE' => 0x228b, # ⊋ dup SUPERSET OF WITH NOT EQUAL TO
896
+ 'supne' => 0x228b, # ⊋ dup skip SUPERSET OF WITH NOT EQUAL TO
897
+ 'szlig' => 0x00df, # ß xhtml LATIN SMALL LETTER SHARP S
898
+ 'target' => 0x2316, # ⌖ POSITION INDICATOR
899
+ 'Tau' => 0x03a4, # Τ dup xhtml GREEK CAPITAL LETTER TAU
900
+ 'tau' => 0x03c4, # τ dup xhtml GREEK SMALL LETTER TAU
901
+ 'Tcaron' => 0x0164, # Ť LATIN CAPITAL LETTER T WITH CARON
902
+ 'tcaron' => 0x0165, # ť LATIN SMALL LETTER T WITH CARON
903
+ 'Tcedil' => 0x0162, # Ţ LATIN CAPITAL LETTER T WITH CEDILLA
904
+ 'tcedil' => 0x0163, # ţ LATIN SMALL LETTER T WITH CEDILLA
905
+ 'Tcy' => 0x0422, # Т CYRILLIC CAPITAL LETTER TE
906
+ 'tcy' => 0x0442, # т CYRILLIC SMALL LETTER TE
907
+ 'tdot' => 0x20db, # ⃛ COMBINING THREE DOTS ABOVE
908
+ 'telrec' => 0x2315, # ⌕ TELEPHONE RECORDER
909
+ 'Tgr' => 0x03a4, # Τ dup skip GREEK CAPITAL LETTER TAU
910
+ 'tgr' => 0x03c4, # τ dup skip GREEK SMALL LETTER TAU
911
+ 'there4' => 0x2234, # ∴ xhtml THEREFORE
912
+ 'Theta' => 0x0398, # Θ dup xhtml GREEK CAPITAL LETTER THETA
913
+ 'theta' => 0x03b8, # θ dup xhtml GREEK SMALL LETTER THETA
914
+ 'thetas' => 0x03b8, # θ dup skip GREEK SMALL LETTER THETA
915
+ 'thetasym' => 0x03d1, # ϑ dup xhtml GREEK THETA SYMBOL
916
+ 'thetav' => 0x03d1, # ϑ dup skip GREEK THETA SYMBOL
917
+ 'THgr' => 0x0398, # Θ dup skip GREEK CAPITAL LETTER THETA
918
+ 'thgr' => 0x03b8, # θ dup skip GREEK SMALL LETTER THETA
919
+ 'thinsp' => 0x2009, #   xhtml THIN SPACE
920
+ 'thkap' => 0x2248, # ≈ dup skip ALMOST EQUAL TO
921
+ 'thksim' => 0x223c, # ∼ dup skip TILDE OPERATOR
922
+ 'THORN' => 0x00de, # Þ xhtml LATIN CAPITAL LETTER THORN
923
+ 'thorn' => 0x00fe, # þ xhtml LATIN SMALL LETTER THORN
924
+ 'tilde' => 0x02dc, # ˜ xhtml SMALL TILDE
925
+ 'times' => 0x00d7, # × xhtml MULTIPLICATION SIGN
926
+ 'timesb' => 0x22a0, # ⊠ SQUARED TIMES
927
+ 'top' => 0x22a4, # ⊤ DOWN TACK
928
+ 'tprime' => 0x2034, # ‴ TRIPLE PRIME
929
+ 'trade' => 0x2122, # ™ xhtml TRADE MARK SIGN
930
+ 'trie' => 0x225c, # ≜ DELTA EQUAL TO
931
+ 'TScy' => 0x0426, # Ц CYRILLIC CAPITAL LETTER TSE
932
+ 'tscy' => 0x0446, # ц CYRILLIC SMALL LETTER TSE
933
+ 'TSHcy' => 0x040b, # Ћ CYRILLIC CAPITAL LETTER TSHE
934
+ 'tshcy' => 0x045b, # ћ CYRILLIC SMALL LETTER TSHE
935
+ 'Tstrok' => 0x0166, # Ŧ LATIN CAPITAL LETTER T WITH STROKE
936
+ 'tstrok' => 0x0167, # ŧ LATIN SMALL LETTER T WITH STROKE
937
+ 'tsubdot' => 0x1e6d, # ṭ LATIN SMALL LETTER T WITH DOT BELOW
938
+ 'twixt' => 0x226c, # ≬ BETWEEN
939
+ 'Uacgr' => 0x038e, # Ύ GREEK CAPITAL LETTER UPSILON WITH TONOS
940
+ 'uacgr' => 0x03cd, # ύ GREEK SMALL LETTER UPSILON WITH TONOS
941
+ 'Uacute' => 0x00da, # Ú xhtml LATIN CAPITAL LETTER U WITH ACUTE
942
+ 'uacute' => 0x00fa, # ú xhtml LATIN SMALL LETTER U WITH ACUTE
943
+ 'uarr' => 0x2191, # ↑ xhtml UPWARDS ARROW
944
+ 'uArr' => 0x21d1, # ⇑ xhtml UPWARDS DOUBLE ARROW
945
+ 'uarr2' => 0x21c8, # ⇈ UPWARDS PAIRED ARROWS
946
+ 'Ubrcy' => 0x040e, # Ў CYRILLIC CAPITAL LETTER SHORT U
947
+ 'ubrcy' => 0x045e, # ў CYRILLIC SMALL LETTER SHORT U
948
+ 'Ubreve' => 0x016c, # Ŭ LATIN CAPITAL LETTER U WITH BREVE
949
+ 'ubreve' => 0x016d, # ŭ LATIN SMALL LETTER U WITH BREVE
950
+ 'Ucirc' => 0x00db, # Û xhtml LATIN CAPITAL LETTER U WITH CIRCUMFLEX
951
+ 'ucirc' => 0x00fb, # û xhtml LATIN SMALL LETTER U WITH CIRCUMFLEX
952
+ 'Ucy' => 0x0423, # У CYRILLIC CAPITAL LETTER U
953
+ 'ucy' => 0x0443, # у CYRILLIC SMALL LETTER U
954
+ 'Udblac' => 0x0170, # Ű LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
955
+ 'udblac' => 0x0171, # ű LATIN SMALL LETTER U WITH DOUBLE ACUTE
956
+ 'udiagr' => 0x03b0, # ΰ GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
957
+ 'Udigr' => 0x03ab, # Ϋ GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
958
+ 'udigr' => 0x03cb, # ϋ GREEK SMALL LETTER UPSILON WITH DIALYTIKA
959
+ 'Ugr' => 0x03a5, # Υ dup skip GREEK CAPITAL LETTER UPSILON
960
+ 'ugr' => 0x03c5, # υ dup skip GREEK SMALL LETTER UPSILON
961
+ 'Ugrave' => 0x00d9, # Ù xhtml LATIN CAPITAL LETTER U WITH GRAVE
962
+ 'ugrave' => 0x00f9, # ù xhtml LATIN SMALL LETTER U WITH GRAVE
963
+ 'uharl' => 0x21bf, # ↿ UPWARDS HARPOON WITH BARB LEFTWARDS
964
+ 'uharr' => 0x21be, # ↾ UPWARDS HARPOON WITH BARB RIGHTWARDS
965
+ 'uhblk' => 0x2580, # ▀ UPPER HALF BLOCK
966
+ 'ulcorn' => 0x231c, # ⌜ TOP LEFT CORNER
967
+ 'ulcrop' => 0x230f, # ⌏ TOP LEFT CROP
968
+ 'Umacr' => 0x016a, # Ū LATIN CAPITAL LETTER U WITH MACRON
969
+ 'umacr' => 0x016b, # ū LATIN SMALL LETTER U WITH MACRON
970
+ 'uml' => 0x00a8, # ¨ dup xhtml DIAERESIS
971
+ 'Uogon' => 0x0172, # Ų LATIN CAPITAL LETTER U WITH OGONEK
972
+ 'uogon' => 0x0173, # ų LATIN SMALL LETTER U WITH OGONEK
973
+ 'uplus' => 0x228e, # ⊎ MULTISET UNION
974
+ 'Upsi' => 0x03a5, # Υ dup skip GREEK CAPITAL LETTER UPSILON
975
+ 'upsi' => 0x03c5, # υ dup skip GREEK SMALL LETTER UPSILON
976
+ 'upsih' => 0x03d2, # ϒ xhtml GREEK UPSILON WITH HOOK SYMBOL
977
+ 'Upsilon' => 0x03a5, # Υ dup xhtml GREEK CAPITAL LETTER UPSILON
978
+ 'upsilon' => 0x03c5, # υ dup xhtml GREEK SMALL LETTER UPSILON
979
+ 'urcorn' => 0x231d, # ⌝ TOP RIGHT CORNER
980
+ 'urcrop' => 0x230e, # ⌎ TOP RIGHT CROP
981
+ 'Uring' => 0x016e, # Ů LATIN CAPITAL LETTER U WITH RING ABOVE
982
+ 'uring' => 0x016f, # ů LATIN SMALL LETTER U WITH RING ABOVE
983
+ 'Utilde' => 0x0168, # Ũ LATIN CAPITAL LETTER U WITH TILDE
984
+ 'utilde' => 0x0169, # ũ LATIN SMALL LETTER U WITH TILDE
985
+ 'utri' => 0x25b5, # ▵ WHITE UP-POINTING SMALL TRIANGLE
986
+ 'utrif' => 0x25b4, # ▴ BLACK UP-POINTING SMALL TRIANGLE
987
+ 'Uuml' => 0x00dc, # Ü xhtml LATIN CAPITAL LETTER U WITH DIAERESIS
988
+ 'uuml' => 0x00fc, # ü xhtml LATIN SMALL LETTER U WITH DIAERESIS
989
+ 'varr' => 0x2195, # ↕ UP DOWN ARROW
990
+ 'vArr' => 0x21d5, # ⇕ UP DOWN DOUBLE ARROW
991
+ 'Vcy' => 0x0412, # В CYRILLIC CAPITAL LETTER VE
992
+ 'vcy' => 0x0432, # в CYRILLIC SMALL LETTER VE
993
+ 'vdash' => 0x22a2, # ⊢ RIGHT TACK
994
+ 'vDash' => 0x22a8, # ⊨ TRUE
995
+ 'Vdash' => 0x22a9, # ⊩ FORCES
996
+ 'veebar' => 0x22bb, # ⊻ XOR
997
+ 'vellip' => 0x22ee, # ⋮ VERTICAL ELLIPSIS
998
+ 'verbar' => 0x007c, # | VERTICAL LINE
999
+ 'Verbar' => 0x2016, # ‖ DOUBLE VERTICAL LINE
1000
+ 'vltri' => 0x22b2, # ⊲ NORMAL SUBGROUP OF
1001
+ 'vprime' => 0x2032, # ′ dup skip PRIME
1002
+ 'vprop' => 0x221d, # ∝ dup skip PROPORTIONAL TO
1003
+ 'vrtri' => 0x22b3, # ⊳ CONTAINS AS NORMAL SUBGROUP
1004
+ 'vsubnE' => 0x228a, # ⊊ dup skip SUBSET OF WITH NOT EQUAL TO
1005
+ 'vsubne' => 0x228a, # ⊊ dup skip SUBSET OF WITH NOT EQUAL TO
1006
+ 'vsupnE' => 0x228b, # ⊋ dup skip SUPERSET OF WITH NOT EQUAL TO
1007
+ 'vsupne' => 0x228b, # ⊋ dup skip SUPERSET OF WITH NOT EQUAL TO
1008
+ 'Vvdash' => 0x22aa, # ⊪ TRIPLE VERTICAL BAR RIGHT TURNSTILE
1009
+ 'Wcirc' => 0x0174, # Ŵ LATIN CAPITAL LETTER W WITH CIRCUMFLEX
1010
+ 'wcirc' => 0x0175, # ŵ LATIN SMALL LETTER W WITH CIRCUMFLEX
1011
+ 'wedgeq' => 0x2259, # ≙ ESTIMATES
1012
+ 'weierp' => 0x2118, # ℘ xhtml SCRIPT CAPITAL P
1013
+ 'wreath' => 0x2240, # ≀ WREATH PRODUCT
1014
+ 'xcirc' => 0x25cb, # ○ dup skip WHITE CIRCLE
1015
+ 'xdtri' => 0x25bd, # ▽ WHITE DOWN-POINTING TRIANGLE
1016
+ 'Xgr' => 0x039e, # Ξ dup skip GREEK CAPITAL LETTER XI
1017
+ 'xgr' => 0x03be, # ξ dup skip GREEK SMALL LETTER XI
1018
+ 'xhArr' => 0x2194, # ↔ dup skip LEFT RIGHT ARROW
1019
+ 'xharr' => 0x2194, # ↔ dup skip LEFT RIGHT ARROW
1020
+ 'Xi' => 0x039e, # Ξ dup xhtml GREEK CAPITAL LETTER XI
1021
+ 'xi' => 0x03be, # ξ dup xhtml GREEK SMALL LETTER XI
1022
+ 'xlArr' => 0x21d0, # ⇐ dup skip LEFTWARDS DOUBLE ARROW
1023
+ 'xrArr' => 0x21d2, # ⇒ dup skip RIGHTWARDS DOUBLE ARROW
1024
+ 'xutri' => 0x25b3, # △ WHITE UP-POINTING TRIANGLE
1025
+ 'Yacute' => 0x00dd, # Ý xhtml LATIN CAPITAL LETTER Y WITH ACUTE
1026
+ 'yacute' => 0x00fd, # ý xhtml LATIN SMALL LETTER Y WITH ACUTE
1027
+ 'YAcy' => 0x042f, # Я CYRILLIC CAPITAL LETTER YA
1028
+ 'yacy' => 0x044f, # я CYRILLIC SMALL LETTER YA
1029
+ 'Ycirc' => 0x0176, # Ŷ LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
1030
+ 'ycirc' => 0x0177, # ŷ LATIN SMALL LETTER Y WITH CIRCUMFLEX
1031
+ 'Ycy' => 0x042b, # Ы CYRILLIC CAPITAL LETTER YERU
1032
+ 'ycy' => 0x044b, # ы CYRILLIC SMALL LETTER YERU
1033
+ 'yen' => 0x00a5, # ¥ xhtml YEN SIGN
1034
+ 'YIcy' => 0x0407, # Ї CYRILLIC CAPITAL LETTER YI
1035
+ 'yicy' => 0x0457, # ї CYRILLIC SMALL LETTER YI
1036
+ 'YUcy' => 0x042e, # Ю CYRILLIC CAPITAL LETTER YU
1037
+ 'yucy' => 0x044e, # ю CYRILLIC SMALL LETTER YU
1038
+ 'yuml' => 0x00ff, # ÿ xhtml LATIN SMALL LETTER Y WITH DIAERESIS
1039
+ 'Yuml' => 0x0178, # Ÿ xhtml LATIN CAPITAL LETTER Y WITH DIAERESIS
1040
+ 'Zacute' => 0x0179, # Ź LATIN CAPITAL LETTER Z WITH ACUTE
1041
+ 'zacute' => 0x017a, # ź LATIN SMALL LETTER Z WITH ACUTE
1042
+ 'Zcaron' => 0x017d, # Ž LATIN CAPITAL LETTER Z WITH CARON
1043
+ 'zcaron' => 0x017e, # ž LATIN SMALL LETTER Z WITH CARON
1044
+ 'Zcy' => 0x0417, # З CYRILLIC CAPITAL LETTER ZE
1045
+ 'zcy' => 0x0437, # з CYRILLIC SMALL LETTER ZE
1046
+ 'Zdot' => 0x017b, # Ż LATIN CAPITAL LETTER Z WITH DOT ABOVE
1047
+ 'zdot' => 0x017c, # ż LATIN SMALL LETTER Z WITH DOT ABOVE
1048
+ 'Zeta' => 0x0396, # Ζ dup xhtml GREEK CAPITAL LETTER ZETA
1049
+ 'zeta' => 0x03b6, # ζ dup xhtml GREEK SMALL LETTER ZETA
1050
+ 'Zgr' => 0x0396, # Ζ dup skip GREEK CAPITAL LETTER ZETA
1051
+ 'zgr' => 0x03b6, # ζ dup skip GREEK SMALL LETTER ZETA
1052
+ 'ZHcy' => 0x0416, # Ж CYRILLIC CAPITAL LETTER ZHE
1053
+ 'zhcy' => 0x0436, # ж CYRILLIC SMALL LETTER ZHE
1054
+ 'Zodot' => 0x017b, # Ż LATIN CAPITAL LETTER Z WITH DOT ABOVE
1055
+ 'zodot' => 0x017c, # ż LATIN SMALL LETTER Z WITH DOT ABOVE
1056
+ 'Zsubdot' => 0x1e92, # Ẓ LATIN CAPITAL LETTER Z WITH DOT BELOW
1057
+ 'zsubdot' => 0x1e93, # ẓ LATIN SMALL LETTER Z WITH DOT BELOW
1058
+ 'zwj' => 0x200d, # ‍ xhtml ZERO WIDTH JOINER
1059
+ 'zwnj' => 0x200c, # ‌ xhtml ZERO WIDTH NON-JOINER
1060
+ 'euro' => 0x20ac, # € xhtml EURO SIGN
1061
+ }
1062
+ SKIP_DUP_ENCODINGS['expanded'] = %w[
1063
+ ap thkap rsquor aleph lsquor square rdquor ldquor b.kappav b.rhov mldr xlArr die Dot xrArr iff
1064
+ les ges vprime lne lvnE gne gvnE nles nges half xcirc pre sce Agr Bgr subE b.Gamma Ggr supE
1065
+ b.Delta Dgr nsube nsupe Egr Zgr subne vsubnE vsubne EEgr supne vsupnE vsupne b.Theta THgr Igr
1066
+ Kgr b.Lambda Lgr Mgr Ngr b.Xi Xgr Ogr b.Pi Pgr sfrown Rgr ssmile b.Sigma Sgr Tgr b.Upsi Ugr
1067
+ Upsi b.Phi PHgr KHgr b.Psi PSgr b.Omega OHgr coprod samalg sbsol ssetmn agr b.alpha bottom
1068
+ b.beta bgr b.gamma ggr b.delta dgr b.epsi b.epsis b.epsiv egr epsi b.zeta zgr vprop b.eta eegr
1069
+ b.thetas thetas thgr b.iota igr b.kappa kgr b.lambda lgr xhArr xharr b.mu mgr b.nu ngr b.xi
1070
+ xgr spar ogr nspar b.pi pgr b.rho rgr b.sigmav sfgr sigmav b.sigma sgr b.tau tgr b.upsi ugr
1071
+ upsi b.phis phgr phis b.chi khgr b.psi psgr ohgr b.omega b.thetav thetav b.phiv thksim b.piv
1072
+ b.gammad
1073
+ ]
1074
+ end