[pypy-commit] pypy newmemoryview-app-level: merge default into branch

mattip pypy.commits at gmail.com
Fri Mar 1 05:11:00 EST 2019


Author: Matti Picus <matti.picus at gmail.com>
Branch: newmemoryview-app-level
Changeset: r96196:22d553bf29f9
Date: 2019-03-01 07:32 +0200
http://bitbucket.org/pypy/pypy/changeset/22d553bf29f9/

Log:	merge default into branch

diff too long, truncating to 2000 out of 203400 lines

diff --git a/pypy/interpreter/astcompiler/test/test_compiler.py b/pypy/interpreter/astcompiler/test/test_compiler.py
--- a/pypy/interpreter/astcompiler/test/test_compiler.py
+++ b/pypy/interpreter/astcompiler/test/test_compiler.py
@@ -1204,3 +1204,17 @@
             source = 'def f(): %s' % source
             counts = self.count_instructions(source)
             assert ops.BINARY_POWER not in counts
+
+    def test_constant_tuples(self):
+        source = """def f():
+            return ((u"a", 1), 2)
+        """
+        counts = self.count_instructions(source)
+        assert ops.BUILD_TUPLE not in counts
+        # also for bytes
+        source = """def f():
+            return ((b"a", 5), 5, 7, 8)
+        """
+        counts = self.count_instructions(source)
+        assert ops.BUILD_TUPLE not in counts
+
diff --git a/pypy/module/cpyext/methodobject.py b/pypy/module/cpyext/methodobject.py
--- a/pypy/module/cpyext/methodobject.py
+++ b/pypy/module/cpyext/methodobject.py
@@ -46,15 +46,15 @@
     _dealloc(space, py_obj)
 
 def w_kwargs_from_args(space, __args__):
-    w_kwargs = None
-    if __args__.keywords:
-        # CCC: we should probably have a @jit.look_inside_iff if the
-        # keyword count is constant, as we do in Arguments.unpack
-        w_kwargs = space.newdict()
-        for i in range(len(__args__.keywords)):
-            key = __args__.keywords[i]
-            w_obj = __args__.keywords_w[i]
-            space.setitem(w_kwargs, space.newtext(key), w_obj)
+    if __args__.keywords is None:
+        return None
+    # CCC: we should probably have a @jit.look_inside_iff if the
+    # keyword count is constant, as we do in Arguments.unpack
+    w_kwargs = space.newdict()
+    for i in range(len(__args__.keywords)):
+        key = __args__.keywords[i]
+        w_obj = __args__.keywords_w[i]
+        space.setitem(w_kwargs, space.newtext(key), w_obj)
     return w_kwargs
 
 class W_PyCFunctionObject(W_Root):
diff --git a/pypy/module/cpyext/test/test_methodobject.py b/pypy/module/cpyext/test/test_methodobject.py
--- a/pypy/module/cpyext/test/test_methodobject.py
+++ b/pypy/module/cpyext/test/test_methodobject.py
@@ -108,6 +108,7 @@
         assert mod.getarg_KW(a=3, b=4) == ((), {'a': 3, 'b': 4})
         assert mod.getarg_KW(1, 2, a=3, b=4) == ((1, 2), {'a': 3, 'b': 4})
         assert mod.getarg_KW.__name__ == "getarg_KW"
+        assert mod.getarg_KW(*(), **{}) == ((), {})
 
     def test_func_attributes(self):
         mod = self.import_extension('MyModule', [
diff --git a/pypy/module/posix/test/test_posix2.py b/pypy/module/posix/test/test_posix2.py
--- a/pypy/module/posix/test/test_posix2.py
+++ b/pypy/module/posix/test/test_posix2.py
@@ -1190,6 +1190,11 @@
         os = self.posix
         with open(self.path, "w") as f:
             f.write("this is a rename test")
+        str_name = str(self.pdir) + '/test_rename.txt'
+        os.rename(self.path, str_name)
+        with open(str_name) as f:
+            assert f.read() == 'this is a rename test'
+        os.rename(str_name, self.path)
         unicode_name = str(self.udir) + u'/test\u03be.txt'
         os.rename(self.path, unicode_name)
         with open(unicode_name) as f:
diff --git a/rpython/rlib/rposix.py b/rpython/rlib/rposix.py
--- a/rpython/rlib/rposix.py
+++ b/rpython/rlib/rposix.py
@@ -1273,8 +1273,6 @@
         win32traits = make_win32_traits(traits)
         path1 = traits.as_str0(path1)
         path2 = traits.as_str0(path2)
-        assert isinstance(path1, unicode)
-        assert isinstance(path2, unicode)
         if not win32traits.MoveFileEx(path1, path2, 0):
             raise rwin32.lastSavedWindowsError()
 
@@ -1285,8 +1283,6 @@
         win32traits = make_win32_traits(traits)
         path1 = traits.as_str0(path1)
         path2 = traits.as_str0(path2)
-        assert isinstance(path1, unicode)
-        assert isinstance(path2, unicode)
         ret = win32traits.MoveFileEx(path1, path2,
                      win32traits.MOVEFILE_REPLACE_EXISTING)
         if not ret:
diff --git a/rpython/rlib/rutf8.py b/rpython/rlib/rutf8.py
--- a/rpython/rlib/rutf8.py
+++ b/rpython/rlib/rutf8.py
@@ -153,6 +153,7 @@
     """Gives the position of the previous codepoint.
     'pos' must not be zero.
     """
+    assert pos != 0
     pos -= 1
     if pos >= len(code):     # for the case where pos - 1 == len(code):
         assert pos >= 0
@@ -811,6 +812,17 @@
                    (0xF0   << 18) + (0x80   << 12) + (0x80   << 6) + 0x80     )
         assert False, "unreachable"
 
+class Utf8StringPosIterator(object):
+    def __init__(self, utf8s):
+        self.it = Utf8StringIterator(utf8s)
+
+    def __iter__(self):
+        return self
+
+    def next(self):
+        pos = self.it.get_pos()
+        return (self.it.next(), pos)
+
 
 def decode_latin_1(s):
     if len(s) == 0:
diff --git a/rpython/rlib/test/test_rsocket.py b/rpython/rlib/test/test_rsocket.py
--- a/rpython/rlib/test/test_rsocket.py
+++ b/rpython/rlib/test/test_rsocket.py
@@ -416,7 +416,7 @@
     assert isinstance(lst, list)
     found = False
     for family, socktype, protocol, canonname, addr in lst:
-        if addr.get_host() in ('104.130.43.121', '23.253.135.79'):
+        if addr.get_host() in ('104.130.43.121', '23.253.135.79', '45.55.99.72'):
             found = True
         elif family == AF_INET:
             print 'pydotorg changed to', addr.get_host()
diff --git a/rpython/rlib/test/test_rutf8.py b/rpython/rlib/test/test_rutf8.py
--- a/rpython/rlib/test/test_rutf8.py
+++ b/rpython/rlib/test/test_rutf8.py
@@ -212,3 +212,16 @@
     for c in u:
         l.append(unichr(c))
     assert list(arg) == l
+
+ at given(strategies.text())
+def test_utf8_iterator_pos(arg):
+    utf8s = arg.encode('utf8')
+    u = rutf8.Utf8StringPosIterator(utf8s)
+    l = []
+    i = 0
+    for c, pos in u:
+        l.append(unichr(c))
+        assert c == rutf8.codepoint_at_pos(utf8s, pos)
+        assert pos == i
+        i = rutf8.next_codepoint_pos(utf8s, i)
+    assert list(arg) == l
diff --git a/rpython/rlib/unicodedata/generate_unicodedb.py b/rpython/rlib/unicodedata/generate_unicodedb.py
--- a/rpython/rlib/unicodedata/generate_unicodedb.py
+++ b/rpython/rlib/unicodedata/generate_unicodedb.py
@@ -505,43 +505,36 @@
     if base_mod is None:
         triegenerator.build_compression_tree(outfile, names)
         print >> outfile, "# the following dictionary is used by modules that take this as a base"
+        print >> outfile, "# only used by generate_unicodedb, not after translation"
         print >> outfile, "_orig_names = {"
         for name, code in sorted_names_codes:
             print >> outfile, "%r: %r," % (name, code)
         print >> outfile, "}"
     else:
-        print >> outfile, '_names = {'
+        corrected_names = []
+
         for name, code in sorted_names_codes:
             try:
                 if base_mod.lookup_charcode(code) == name:
                     continue
             except KeyError:
                 pass
-            print >> outfile, '%r: %r,' % (code, name)
-        print >> outfile, '}'
+            corrected_names.append((name, code))
+        corrected_names_dict = dict(corrected_names)
+        triegenerator.build_compression_tree(outfile, corrected_names_dict)
 
-
-        print >> outfile, '_names_corrected = {'
+        removed_names = []
         for name, code in sorted(base_mod._orig_names.iteritems()):
             if name not in names:
-                print >> outfile, '%r: None,' % code
-        print >> outfile, '}'
-
-        print >> outfile, '_code_by_name = {'
-        corrected = {}
-        for name, code in sorted_names_codes:
-            try:
-                if base_mod.lookup_charcode(code) == name:
-                    continue
-            except KeyError:
-                pass
-            print >> outfile, '%r: %r,' % (name, code)
+                removed_names.append((name, code))
+        print >> outfile, '_names_corrected = {'
+        for name, code in removed_names:
+            print >> outfile, '%r: None,' % code
         print >> outfile, '}'
 
         print >> outfile, '_code_by_name_corrected = {'
-        for name, code in sorted(base_mod._orig_names.iteritems()):
-            if name not in names:
-                print >> outfile, '%r: None,' % name
+        for name, code in removed_names:
+            print >> outfile, '%r: None,' % name
         print >> outfile, '}'
 
 
@@ -657,7 +650,7 @@
         code = trie_lookup(name)
     else:
         try:
-            code = _code_by_name[name]
+            code = trie_lookup(name)
         except KeyError:
             if name not in _code_by_name_corrected:
                 code = base_mod.trie_lookup(name)
@@ -686,7 +679,7 @@
         return lookup_charcode(code)
     else:
         try:
-            return _names[code]
+            return lookup_charcode(code)
         except KeyError:
             if code not in _names_corrected:
                 return base_mod.lookup_charcode(code)
@@ -895,7 +888,7 @@
     else:
         return None
 ''' % dict(start=table.NAMED_SEQUENCES_START)
-    
+
     # aliases
     print >> outfile, '_name_aliases = ['
     for name, char in table.aliases:
diff --git a/rpython/rlib/unicodedata/triegenerator.py b/rpython/rlib/unicodedata/triegenerator.py
--- a/rpython/rlib/unicodedata/triegenerator.py
+++ b/rpython/rlib/unicodedata/triegenerator.py
@@ -76,7 +76,9 @@
     charnode = 0
     while 0 <= charnode < 0xffff: # 16bit number, 0xffff = None
         charnode *= 3
-        leftright, parentstr, codepoint = _charnodes[charnode:charnode+3]
+        leftright = _charnodes[charnode]
+        parentstr = _charnodes[charnode + 1]
+        codepoint = _charnodes[charnode + 2]
 
         if leftright < 0:
             # XXX assumes msb is sign
@@ -91,7 +93,7 @@
         else:
             parent = (parentstr & 0x7fffffff) >> %(STRIDXBITS)d
         stridx = parentstr & ((1 << %(STRIDXBITS)d) - 1)
-        
+
         strlen = ord(_stringtable[stridx])
         substring = _stringtable[stridx+1:stridx+1+strlen]
 
@@ -109,7 +111,9 @@
     prevnode = -1
     while 0 <= charnode < 0xffff: # 16bit number, 0xffff = None
         charnode *= 3
-        leftright, parentstr, codepoint = _charnodes[charnode:charnode+3]
+        leftright = _charnodes[charnode]
+        parentstr = _charnodes[charnode + 1]
+        codepoint = _charnodes[charnode + 2]
 
         if leftright < 0:
             # XXX assumes msg is sign
@@ -128,13 +132,14 @@
             stridx = parentstr & ((1<<%(STRIDXBITS)d)-1)
             strlen = ord(_stringtable[stridx])
             substring = _stringtable[stridx+1:stridx+1+strlen]
-            res.insert(0, substring)
+            res.append(substring)
 
         prevnode = charnode // 3
         charnode = parent
 
+    res.reverse()
     return ''.join(res)
-    
+
 """ % globals()
 
 def findranges(d):
@@ -165,6 +170,11 @@
     return collapsed
 
 def build_compression_tree(outfile, ucdata):
+    print >> outfile, "#" + "_" * 60
+    print >> outfile, "# output from build_compression_tree"
+    if not ucdata:
+        print >> outfile, empty_trie_functions
+        return
     print >> outfile, classdef
 
     reversedict = {}
@@ -180,7 +190,7 @@
         print >> outfile, "%r" % (chr(strlen) + string)
         stringidx[string] = stridx
         stridx += strlen + 1
-        
+
     print >> outfile, ")"
 
     assert stridx < (1<<STRIDXBITS), "Too many strings, > %d chars" % (
@@ -190,7 +200,7 @@
     nodelist = []
     maxidx = 0
     nodes = [rootnode]
-    
+
     while nodes:
         n = nodes.pop()
         nodelist.append(n)
@@ -198,28 +208,31 @@
             nodes.append(n.left)
         if n.right:
             nodes.append(n.right)
-        
+
     nodelist.sort(key=lambda x: x.index)
     newnodes = []
     map(newnodes.extend, (n.as_list(stringidx) for n in nodelist))
     print >> outfile, "_charnodes =",
     pprint.pprint(newnodes, stream=outfile)
-    
+
     function = ["def lookup_charcode(code):",
                 "    res = -1"]
     ranges = collapse_ranges(findranges(reversedict))
+    prefix = ""
     for low, high in ranges:
         if high - low <= MINLIST:
             for code in range(low, high + 1):
                 if code in reversedict:
                     function.append(
-                        "    if code == %d: res = %s" %
-                        (code, reversedict[code].index))
+                        "    %sif code == %d: res = %s" %
+                        (prefix, code, reversedict[code].index))
+                    prefix = "el"
             continue
 
         function.append(
-            "    if %d <= code <= %d: res = _charnames_%d[code-%d]" % (
-            low, high, low, low))
+            "    %sif %d <= code <= %d: res = _charnames_%d[code-%d]" % (
+            prefix, low, high, low, low))
+        prefix = "el"
 
         print >> outfile, "_charnames_%d = [" % (low,)
         for code in range(low, high + 1):
@@ -234,6 +247,8 @@
                      "",
                      ])
     print >> outfile, '\n'.join(function)
+    print >> outfile, "# end output from build_compression_tree"
+    print >> outfile, "#" + "_" * 60
     return rootnode
 
 def gen_compression_tree(stringlist, ucdata, reversedict, parent=None, parent_str="", left=False):
@@ -244,8 +259,8 @@
     for string in stringlist:
         for stop in range(1, len(string) + 1):
             codes[string[:stop]] = codes.get(string[:stop], 0) + 1
-            
-    s = [((freq), code) for (code, freq) in codes.iteritems()]            
+
+    s = [((freq), code) for (code, freq) in codes.iteritems()]
     s.sort()
     if not s:
         return None
@@ -306,3 +321,10 @@
     import sys
 
     build_compression_tree(sys.stdout, testdata)
+
+empty_trie_functions = """
+def trie_lookup(name):
+    raise KeyError
+def lookup_charcode(code):
+    raise KeyError
+"""
diff --git a/rpython/rlib/unicodedata/unicodedb_3_2_0.py b/rpython/rlib/unicodedata/unicodedb_3_2_0.py
--- a/rpython/rlib/unicodedata/unicodedb_3_2_0.py
+++ b/rpython/rlib/unicodedata/unicodedb_3_2_0.py
@@ -8,8 +8,14 @@
 import unicodedb_5_2_0 as base_mod
 version = '3.2.0'
 
-_names = {
-}
+#____________________________________________________________
+# output from build_compression_tree
+
+def trie_lookup(name):
+    raise KeyError
+def lookup_charcode(code):
+    raise KeyError
+
 _names_corrected = {
 9190: None,
 65794: None,
@@ -8370,8 +8376,6 @@
 11825: None,
 983048: None,
 }
-_code_by_name = {
-}
 _code_by_name_corrected = {
 'AC CURRENT': None,
 'AEGEAN CHECK MARK': None,
@@ -16798,7 +16802,7 @@
         code = trie_lookup(name)
     else:
         try:
-            code = _code_by_name[name]
+            code = trie_lookup(name)
         except KeyError:
             if name not in _code_by_name_corrected:
                 code = base_mod.trie_lookup(name)
@@ -16827,7 +16831,7 @@
         return lookup_charcode(code)
     else:
         try:
-            return _names[code]
+            return lookup_charcode(code)
         except KeyError:
             if code not in _names_corrected:
                 return base_mod.lookup_charcode(code)
diff --git a/rpython/rlib/unicodedata/unicodedb_5_2_0.py b/rpython/rlib/unicodedata/unicodedb_5_2_0.py
--- a/rpython/rlib/unicodedata/unicodedb_5_2_0.py
+++ b/rpython/rlib/unicodedata/unicodedb_5_2_0.py
@@ -8,12 +8,16 @@
 base_mod = None
 version = '5.2.0'
 
+#____________________________________________________________
+# output from build_compression_tree
 
 def trie_lookup(name):
     charnode = 0
     while 0 <= charnode < 0xffff: # 16bit number, 0xffff = None
         charnode *= 3
-        leftright, parentstr, codepoint = _charnodes[charnode:charnode+3]
+        leftright = _charnodes[charnode]
+        parentstr = _charnodes[charnode + 1]
+        codepoint = _charnodes[charnode + 2]
 
         if leftright < 0:
             # XXX assumes msb is sign
@@ -28,7 +32,7 @@
         else:
             parent = (parentstr & 0x7fffffff) >> 16
         stridx = parentstr & ((1 << 16) - 1)
-        
+
         strlen = ord(_stringtable[stridx])
         substring = _stringtable[stridx+1:stridx+1+strlen]
 
@@ -46,7 +50,9 @@
     prevnode = -1
     while 0 <= charnode < 0xffff: # 16bit number, 0xffff = None
         charnode *= 3
-        leftright, parentstr, codepoint = _charnodes[charnode:charnode+3]
+        leftright = _charnodes[charnode]
+        parentstr = _charnodes[charnode + 1]
+        codepoint = _charnodes[charnode + 2]
 
         if leftright < 0:
             # XXX assumes msg is sign
@@ -65,13 +71,14 @@
             stridx = parentstr & ((1<<16)-1)
             strlen = ord(_stringtable[stridx])
             substring = _stringtable[stridx+1:stridx+1+strlen]
-            res.insert(0, substring)
+            res.append(substring)
 
         prevnode = charnode // 3
         charnode = parent
 
+    res.reverse()
     return ''.join(res)
-    
+
 
 _stringtable = (
 '\x01 '
@@ -114455,149 +114462,152 @@
 def lookup_charcode(code):
     res = -1
     if 32 <= code <= 126: res = _charnames_32[code-32]
-    if 160 <= code <= 1317: res = _charnames_160[code-160]
-    if 1329 <= code <= 1479: res = _charnames_1329[code-1329]
-    if 1488 <= code <= 1524: res = _charnames_1488[code-1488]
-    if 1536 <= code <= 1969: res = _charnames_1536[code-1536]
-    if 1984 <= code <= 2110: res = _charnames_1984[code-1984]
-    if 2304 <= code <= 2510: res = _charnames_2304[code-2304]
-    if 2519 <= code <= 2641: res = _charnames_2519[code-2519]
-    if code == 2649: res = 22369
-    if code == 2650: res = 22374
-    if code == 2651: res = 22402
-    if code == 2652: res = 22383
-    if code == 2654: res = 22408
-    if 2662 <= code <= 2677: res = _charnames_2662[code-2662]
-    if 2689 <= code <= 2768: res = _charnames_2689[code-2689]
-    if 2784 <= code <= 2801: res = _charnames_2784[code-2784]
-    if 2817 <= code <= 2893: res = _charnames_2817[code-2817]
-    if 2902 <= code <= 2929: res = _charnames_2902[code-2902]
-    if 2946 <= code <= 3031: res = _charnames_2946[code-2946]
-    if 3046 <= code <= 3149: res = _charnames_3046[code-3046]
-    if 3157 <= code <= 3183: res = _charnames_3157[code-3157]
-    if 3192 <= code <= 3277: res = _charnames_3192[code-3192]
-    if code == 3285: res = 23172
-    if code == 3286: res = 23215
-    if 3294 <= code <= 3314: res = _charnames_3294[code-3294]
-    if 3330 <= code <= 3405: res = _charnames_3330[code-3330]
-    if code == 3415: res = 6443
-    if 3424 <= code <= 3551: res = _charnames_3424[code-3424]
-    if code == 3570: res = 19930
-    if code == 3571: res = 19929
-    if code == 3572: res = 19944
-    if 3585 <= code <= 3675: res = _charnames_3585[code-3585]
-    if 3713 <= code <= 3805: res = _charnames_3713[code-3713]
-    if 3840 <= code <= 4056: res = _charnames_3840[code-3840]
-    if 4096 <= code <= 4293: res = _charnames_4096[code-4096]
-    if 4304 <= code <= 5108: res = _charnames_4304[code-4304]
-    if 5120 <= code <= 5872: res = _charnames_5120[code-5120]
-    if 5888 <= code <= 5908: res = _charnames_5888[code-5888]
-    if 5920 <= code <= 5942: res = _charnames_5920[code-5920]
-    if 5952 <= code <= 5971: res = _charnames_5952[code-5952]
-    if 5984 <= code <= 6003: res = _charnames_5984[code-5984]
-    if 6016 <= code <= 6263: res = _charnames_6016[code-6016]
-    if 6272 <= code <= 6389: res = _charnames_6272[code-6272]
-    if 6400 <= code <= 6516: res = _charnames_6400[code-6400]
-    if 6528 <= code <= 6829: res = _charnames_6528[code-6528]
-    if 6912 <= code <= 7097: res = _charnames_6912[code-6912]
-    if 7168 <= code <= 7295: res = _charnames_7168[code-7168]
-    if 7376 <= code <= 7410: res = _charnames_7376[code-7376]
-    if 7424 <= code <= 7654: res = _charnames_7424[code-7424]
-    if 7677 <= code <= 8340: res = _charnames_7677[code-7677]
-    if 8352 <= code <= 8376: res = _charnames_8352[code-8352]
-    if 8400 <= code <= 8432: res = _charnames_8400[code-8400]
-    if 8448 <= code <= 9192: res = _charnames_8448[code-8448]
-    if 9216 <= code <= 9254: res = _charnames_9216[code-9216]
-    if 9280 <= code <= 9290: res = _charnames_9280[code-9280]
-    if 9312 <= code <= 11097: res = _charnames_9312[code-9312]
-    if 11264 <= code <= 11505: res = _charnames_11264[code-11264]
-    if 11513 <= code <= 11557: res = _charnames_11513[code-11513]
-    if 11568 <= code <= 11621: res = _charnames_11568[code-11568]
-    if code == 11631: res = 13355
-    if 11648 <= code <= 11670: res = _charnames_11648[code-11648]
-    if 11680 <= code <= 11825: res = _charnames_11680[code-11680]
-    if 11904 <= code <= 12019: res = _charnames_11904[code-11904]
-    if 12032 <= code <= 12245: res = _charnames_12032[code-12032]
-    if 12272 <= code <= 12727: res = _charnames_12272[code-12272]
-    if 12736 <= code <= 12771: res = _charnames_12736[code-12736]
-    if 12784 <= code <= 13311: res = _charnames_12784[code-12784]
-    if 19904 <= code <= 19967: res = _charnames_19904[code-19904]
-    if 40960 <= code <= 42182: res = _charnames_40960[code-40960]
-    if 42192 <= code <= 42539: res = _charnames_42192[code-42192]
-    if 42560 <= code <= 42611: res = _charnames_42560[code-42560]
-    if 42620 <= code <= 42647: res = _charnames_42620[code-42620]
-    if 42656 <= code <= 42743: res = _charnames_42656[code-42656]
-    if 42752 <= code <= 42892: res = _charnames_42752[code-42752]
-    if 43003 <= code <= 43127: res = _charnames_43003[code-43003]
-    if 43136 <= code <= 43204: res = _charnames_43136[code-43136]
-    if 43214 <= code <= 43347: res = _charnames_43214[code-43214]
-    if 43359 <= code <= 43487: res = _charnames_43359[code-43359]
-    if 43520 <= code <= 43574: res = _charnames_43520[code-43520]
-    if 43584 <= code <= 43714: res = _charnames_43584[code-43584]
-    if code == 43739: res = 12781
-    if code == 43740: res = 12784
-    if code == 43741: res = 12783
-    if code == 43742: res = 12785
-    if code == 43743: res = 12782
-    if 43968 <= code <= 44025: res = _charnames_43968[code-43968]
-    if 55216 <= code <= 55291: res = _charnames_55216[code-55216]
-    if 63744 <= code <= 64217: res = _charnames_63744[code-63744]
-    if 64256 <= code <= 64262: res = _charnames_64256[code-64256]
-    if 64275 <= code <= 64433: res = _charnames_64275[code-64275]
-    if 64467 <= code <= 64831: res = _charnames_64467[code-64467]
-    if 64848 <= code <= 64967: res = _charnames_64848[code-64848]
-    if 65008 <= code <= 65062: res = _charnames_65008[code-65008]
-    if 65072 <= code <= 65518: res = _charnames_65072[code-65072]
-    if 65529 <= code <= 65629: res = _charnames_65529[code-65529]
-    if 65664 <= code <= 65947: res = _charnames_65664[code-65664]
-    if 66000 <= code <= 66045: res = _charnames_66000[code-66000]
-    if 66176 <= code <= 66256: res = _charnames_66176[code-66176]
-    if 66304 <= code <= 66339: res = _charnames_66304[code-66304]
-    if 66352 <= code <= 66378: res = _charnames_66352[code-66352]
-    if 66432 <= code <= 66517: res = _charnames_66432[code-66432]
-    if 66560 <= code <= 66729: res = _charnames_66560[code-66560]
-    if 67584 <= code <= 67679: res = _charnames_67584[code-67584]
-    if 67840 <= code <= 67903: res = _charnames_67840[code-67840]
-    if 68096 <= code <= 68167: res = _charnames_68096[code-68096]
-    if 68176 <= code <= 68184: res = _charnames_68176[code-68176]
-    if 68192 <= code <= 68223: res = _charnames_68192[code-68192]
-    if 68352 <= code <= 68479: res = _charnames_68352[code-68352]
-    if 68608 <= code <= 68680: res = _charnames_68608[code-68608]
-    if 69216 <= code <= 69246: res = _charnames_69216[code-69216]
-    if 69760 <= code <= 69825: res = _charnames_69760[code-69760]
-    if 73728 <= code <= 74606: res = _charnames_73728[code-73728]
-    if 74752 <= code <= 74850: res = _charnames_74752[code-74752]
-    if code == 74864: res = 2527
-    if code == 74865: res = 2526
-    if code == 74866: res = 2525
-    if code == 74867: res = 2524
-    if 77824 <= code <= 78894: res = _charnames_77824[code-77824]
-    if 118784 <= code <= 119029: res = _charnames_118784[code-118784]
-    if 119040 <= code <= 119261: res = _charnames_119040[code-119040]
-    if 119296 <= code <= 119365: res = _charnames_119296[code-119296]
-    if 119552 <= code <= 119638: res = _charnames_119552[code-119552]
-    if 119648 <= code <= 119665: res = _charnames_119648[code-119648]
-    if 119808 <= code <= 120831: res = _charnames_119808[code-119808]
-    if 126976 <= code <= 127123: res = _charnames_126976[code-126976]
-    if 127232 <= code <= 127281: res = _charnames_127232[code-127232]
-    if 127293 <= code <= 127310: res = _charnames_127293[code-127293]
-    if code == 127319: res = 27110
-    if code == 127327: res = 27109
-    if 127353 <= code <= 127359: res = _charnames_127353[code-127353]
-    if 127370 <= code <= 127376: res = _charnames_127370[code-127370]
-    if code == 127488: res = 19008
-    if 127504 <= code <= 127537: res = _charnames_127504[code-127504]
-    if 127552 <= code <= 127560: res = _charnames_127552[code-127552]
-    if 194560 <= code <= 195101: res = _charnames_194560[code-194560]
-    if code == 917505: res = 9289
-    if 917536 <= code <= 917631: res = _charnames_917536[code-917536]
-    if 917760 <= code <= 917999: res = _charnames_917760[code-917760]
-    if 983040 <= code <= 983050: res = _charnames_983040[code-983040]
-    if 983552 <= code <= 983945: res = _charnames_983552[code-983552]
+    elif 160 <= code <= 1317: res = _charnames_160[code-160]
+    elif 1329 <= code <= 1479: res = _charnames_1329[code-1329]
+    elif 1488 <= code <= 1524: res = _charnames_1488[code-1488]
+    elif 1536 <= code <= 1969: res = _charnames_1536[code-1536]
+    elif 1984 <= code <= 2110: res = _charnames_1984[code-1984]
+    elif 2304 <= code <= 2510: res = _charnames_2304[code-2304]
+    elif 2519 <= code <= 2641: res = _charnames_2519[code-2519]
+    elif code == 2649: res = 22369
+    elif code == 2650: res = 22374
+    elif code == 2651: res = 22402
+    elif code == 2652: res = 22383
+    elif code == 2654: res = 22408
+    elif 2662 <= code <= 2677: res = _charnames_2662[code-2662]
+    elif 2689 <= code <= 2768: res = _charnames_2689[code-2689]
+    elif 2784 <= code <= 2801: res = _charnames_2784[code-2784]
+    elif 2817 <= code <= 2893: res = _charnames_2817[code-2817]
+    elif 2902 <= code <= 2929: res = _charnames_2902[code-2902]
+    elif 2946 <= code <= 3031: res = _charnames_2946[code-2946]
+    elif 3046 <= code <= 3149: res = _charnames_3046[code-3046]
+    elif 3157 <= code <= 3183: res = _charnames_3157[code-3157]
+    elif 3192 <= code <= 3277: res = _charnames_3192[code-3192]
+    elif code == 3285: res = 23172
+    elif code == 3286: res = 23215
+    elif 3294 <= code <= 3314: res = _charnames_3294[code-3294]
+    elif 3330 <= code <= 3405: res = _charnames_3330[code-3330]
+    elif code == 3415: res = 6443
+    elif 3424 <= code <= 3551: res = _charnames_3424[code-3424]
+    elif code == 3570: res = 19930
+    elif code == 3571: res = 19929
+    elif code == 3572: res = 19944
+    elif 3585 <= code <= 3675: res = _charnames_3585[code-3585]
+    elif 3713 <= code <= 3805: res = _charnames_3713[code-3713]
+    elif 3840 <= code <= 4056: res = _charnames_3840[code-3840]
+    elif 4096 <= code <= 4293: res = _charnames_4096[code-4096]
+    elif 4304 <= code <= 5108: res = _charnames_4304[code-4304]
+    elif 5120 <= code <= 5872: res = _charnames_5120[code-5120]
+    elif 5888 <= code <= 5908: res = _charnames_5888[code-5888]
+    elif 5920 <= code <= 5942: res = _charnames_5920[code-5920]
+    elif 5952 <= code <= 5971: res = _charnames_5952[code-5952]
+    elif 5984 <= code <= 6003: res = _charnames_5984[code-5984]
+    elif 6016 <= code <= 6263: res = _charnames_6016[code-6016]
+    elif 6272 <= code <= 6389: res = _charnames_6272[code-6272]
+    elif 6400 <= code <= 6516: res = _charnames_6400[code-6400]
+    elif 6528 <= code <= 6829: res = _charnames_6528[code-6528]
+    elif 6912 <= code <= 7097: res = _charnames_6912[code-6912]
+    elif 7168 <= code <= 7295: res = _charnames_7168[code-7168]
+    elif 7376 <= code <= 7410: res = _charnames_7376[code-7376]
+    elif 7424 <= code <= 7654: res = _charnames_7424[code-7424]
+    elif 7677 <= code <= 8340: res = _charnames_7677[code-7677]
+    elif 8352 <= code <= 8376: res = _charnames_8352[code-8352]
+    elif 8400 <= code <= 8432: res = _charnames_8400[code-8400]
+    elif 8448 <= code <= 9192: res = _charnames_8448[code-8448]
+    elif 9216 <= code <= 9254: res = _charnames_9216[code-9216]
+    elif 9280 <= code <= 9290: res = _charnames_9280[code-9280]
+    elif 9312 <= code <= 11097: res = _charnames_9312[code-9312]
+    elif 11264 <= code <= 11505: res = _charnames_11264[code-11264]
+    elif 11513 <= code <= 11557: res = _charnames_11513[code-11513]
+    elif 11568 <= code <= 11621: res = _charnames_11568[code-11568]
+    elif code == 11631: res = 13355
+    elif 11648 <= code <= 11670: res = _charnames_11648[code-11648]
+    elif 11680 <= code <= 11825: res = _charnames_11680[code-11680]
+    elif 11904 <= code <= 12019: res = _charnames_11904[code-11904]
+    elif 12032 <= code <= 12245: res = _charnames_12032[code-12032]
+    elif 12272 <= code <= 12727: res = _charnames_12272[code-12272]
+    elif 12736 <= code <= 12771: res = _charnames_12736[code-12736]
+    elif 12784 <= code <= 13311: res = _charnames_12784[code-12784]
+    elif 19904 <= code <= 19967: res = _charnames_19904[code-19904]
+    elif 40960 <= code <= 42182: res = _charnames_40960[code-40960]
+    elif 42192 <= code <= 42539: res = _charnames_42192[code-42192]
+    elif 42560 <= code <= 42611: res = _charnames_42560[code-42560]
+    elif 42620 <= code <= 42647: res = _charnames_42620[code-42620]
+    elif 42656 <= code <= 42743: res = _charnames_42656[code-42656]
+    elif 42752 <= code <= 42892: res = _charnames_42752[code-42752]
+    elif 43003 <= code <= 43127: res = _charnames_43003[code-43003]
+    elif 43136 <= code <= 43204: res = _charnames_43136[code-43136]
+    elif 43214 <= code <= 43347: res = _charnames_43214[code-43214]
+    elif 43359 <= code <= 43487: res = _charnames_43359[code-43359]
+    elif 43520 <= code <= 43574: res = _charnames_43520[code-43520]
+    elif 43584 <= code <= 43714: res = _charnames_43584[code-43584]
+    elif code == 43739: res = 12781
+    elif code == 43740: res = 12784
+    elif code == 43741: res = 12783
+    elif code == 43742: res = 12785
+    elif code == 43743: res = 12782
+    elif 43968 <= code <= 44025: res = _charnames_43968[code-43968]
+    elif 55216 <= code <= 55291: res = _charnames_55216[code-55216]
+    elif 63744 <= code <= 64217: res = _charnames_63744[code-63744]
+    elif 64256 <= code <= 64262: res = _charnames_64256[code-64256]
+    elif 64275 <= code <= 64433: res = _charnames_64275[code-64275]
+    elif 64467 <= code <= 64831: res = _charnames_64467[code-64467]
+    elif 64848 <= code <= 64967: res = _charnames_64848[code-64848]
+    elif 65008 <= code <= 65062: res = _charnames_65008[code-65008]
+    elif 65072 <= code <= 65518: res = _charnames_65072[code-65072]
+    elif 65529 <= code <= 65629: res = _charnames_65529[code-65529]
+    elif 65664 <= code <= 65947: res = _charnames_65664[code-65664]
+    elif 66000 <= code <= 66045: res = _charnames_66000[code-66000]
+    elif 66176 <= code <= 66256: res = _charnames_66176[code-66176]
+    elif 66304 <= code <= 66339: res = _charnames_66304[code-66304]
+    elif 66352 <= code <= 66378: res = _charnames_66352[code-66352]
+    elif 66432 <= code <= 66517: res = _charnames_66432[code-66432]
+    elif 66560 <= code <= 66729: res = _charnames_66560[code-66560]
+    elif 67584 <= code <= 67679: res = _charnames_67584[code-67584]
+    elif 67840 <= code <= 67903: res = _charnames_67840[code-67840]
+    elif 68096 <= code <= 68167: res = _charnames_68096[code-68096]
+    elif 68176 <= code <= 68184: res = _charnames_68176[code-68176]
+    elif 68192 <= code <= 68223: res = _charnames_68192[code-68192]
+    elif 68352 <= code <= 68479: res = _charnames_68352[code-68352]
+    elif 68608 <= code <= 68680: res = _charnames_68608[code-68608]
+    elif 69216 <= code <= 69246: res = _charnames_69216[code-69216]
+    elif 69760 <= code <= 69825: res = _charnames_69760[code-69760]
+    elif 73728 <= code <= 74606: res = _charnames_73728[code-73728]
+    elif 74752 <= code <= 74850: res = _charnames_74752[code-74752]
+    elif code == 74864: res = 2527
+    elif code == 74865: res = 2526
+    elif code == 74866: res = 2525
+    elif code == 74867: res = 2524
+    elif 77824 <= code <= 78894: res = _charnames_77824[code-77824]
+    elif 118784 <= code <= 119029: res = _charnames_118784[code-118784]
+    elif 119040 <= code <= 119261: res = _charnames_119040[code-119040]
+    elif 119296 <= code <= 119365: res = _charnames_119296[code-119296]
+    elif 119552 <= code <= 119638: res = _charnames_119552[code-119552]
+    elif 119648 <= code <= 119665: res = _charnames_119648[code-119648]
+    elif 119808 <= code <= 120831: res = _charnames_119808[code-119808]
+    elif 126976 <= code <= 127123: res = _charnames_126976[code-126976]
+    elif 127232 <= code <= 127281: res = _charnames_127232[code-127232]
+    elif 127293 <= code <= 127310: res = _charnames_127293[code-127293]
+    elif code == 127319: res = 27110
+    elif code == 127327: res = 27109
+    elif 127353 <= code <= 127359: res = _charnames_127353[code-127353]
+    elif 127370 <= code <= 127376: res = _charnames_127370[code-127370]
+    elif code == 127488: res = 19008
+    elif 127504 <= code <= 127537: res = _charnames_127504[code-127504]
+    elif 127552 <= code <= 127560: res = _charnames_127552[code-127552]
+    elif 194560 <= code <= 195101: res = _charnames_194560[code-194560]
+    elif code == 917505: res = 9289
+    elif 917536 <= code <= 917631: res = _charnames_917536[code-917536]
+    elif 917760 <= code <= 917999: res = _charnames_917760[code-917760]
+    elif 983040 <= code <= 983050: res = _charnames_983040[code-983040]
+    elif 983552 <= code <= 983945: res = _charnames_983552[code-983552]
     if res == -1: raise KeyError, code
     return name_of_node(res)
 
+# end output from build_compression_tree
+#____________________________________________________________
 # the following dictionary is used by modules that take this as a base
+# only used by generate_unicodedb, not after translation
 _orig_names = {
 'AC CURRENT': 9190,
 'ACCOUNT OF': 8448,
@@ -136813,7 +136823,7 @@
         code = trie_lookup(name)
     else:
         try:
-            code = _code_by_name[name]
+            code = trie_lookup(name)
         except KeyError:
             if name not in _code_by_name_corrected:
                 code = base_mod.trie_lookup(name)
@@ -136842,7 +136852,7 @@
         return lookup_charcode(code)
     else:
         try:
-            return _names[code]
+            return lookup_charcode(code)
         except KeyError:
             if code not in _names_corrected:
                 return base_mod.lookup_charcode(code)
diff --git a/rpython/rlib/unicodedata/unicodedb_6_0_0.py b/rpython/rlib/unicodedata/unicodedb_6_0_0.py
--- a/rpython/rlib/unicodedata/unicodedb_6_0_0.py
+++ b/rpython/rlib/unicodedata/unicodedb_6_0_0.py
@@ -8,4460 +8,13026 @@
 import unicodedb_5_2_0 as base_mod
 version = '6.0.0'
 
-_names = {
-128673: 'AERIAL TRAMWAY',
-9200: 'ALARM CLOCK',
-128769: 'ALCHEMICAL SYMBOL FOR AIR',
-128874: 'ALCHEMICAL SYMBOL FOR ALEMBIC',
-128822: 'ALCHEMICAL SYMBOL FOR ALKALI',
-128823: 'ALCHEMICAL SYMBOL FOR ALKALI-2',
-128837: 'ALCHEMICAL SYMBOL FOR ALUM',
-128859: 'ALCHEMICAL SYMBOL FOR AMALGAM',
-128811: 'ALCHEMICAL SYMBOL FOR ANTIMONY ORE',
-128774: 'ALCHEMICAL SYMBOL FOR AQUA REGIA',
-128775: 'ALCHEMICAL SYMBOL FOR AQUA REGIA-2',
-128776: 'ALCHEMICAL SYMBOL FOR AQUA VITAE',
-128777: 'ALCHEMICAL SYMBOL FOR AQUA VITAE-2',
-128773: 'ALCHEMICAL SYMBOL FOR AQUAFORTIS',
-128826: 'ALCHEMICAL SYMBOL FOR ARSENIC',
-128855: 'ALCHEMICAL SYMBOL FOR ASHES',
-128829: 'ALCHEMICAL SYMBOL FOR AURIPIGMENT',
-128875: 'ALCHEMICAL SYMBOL FOR BATH OF MARY',
-128876: 'ALCHEMICAL SYMBOL FOR BATH OF VAPOURS',
-128830: 'ALCHEMICAL SYMBOL FOR BISMUTH ORE',
-128783: 'ALCHEMICAL SYMBOL FOR BLACK SULFUR',
-128834: 'ALCHEMICAL SYMBOL FOR BORAX',
-128835: 'ALCHEMICAL SYMBOL FOR BORAX-2',
-128836: 'ALCHEMICAL SYMBOL FOR BORAX-3',
-128857: 'ALCHEMICAL SYMBOL FOR BRICK',
-128848: 'ALCHEMICAL SYMBOL FOR CADUCEUS',
-128844: 'ALCHEMICAL SYMBOL FOR CALX',
-128846: 'ALCHEMICAL SYMBOL FOR CAPUT MORTUUM',
-128787: 'ALCHEMICAL SYMBOL FOR CINNABAR',
-128805: 'ALCHEMICAL SYMBOL FOR COPPER ANTIMONIATE',
-128800: 'ALCHEMICAL SYMBOL FOR COPPER ORE',
-128803: 'ALCHEMICAL SYMBOL FOR CROCUS OF COPPER',
-128804: 'ALCHEMICAL SYMBOL FOR CROCUS OF COPPER-2',
-128798: 'ALCHEMICAL SYMBOL FOR CROCUS OF IRON',
-128869: 'ALCHEMICAL SYMBOL FOR CRUCIBLE',
-128870: 'ALCHEMICAL SYMBOL FOR CRUCIBLE-2',
-128871: 'ALCHEMICAL SYMBOL FOR CRUCIBLE-3',
-128872: 'ALCHEMICAL SYMBOL FOR CRUCIBLE-4',
-128873: 'ALCHEMICAL SYMBOL FOR CRUCIBLE-5',
-128880: 'ALCHEMICAL SYMBOL FOR DAY-NIGHT',
-128865: 'ALCHEMICAL SYMBOL FOR DISSOLVE',
-128866: 'ALCHEMICAL SYMBOL FOR DISSOLVE-2',
-128864: 'ALCHEMICAL SYMBOL FOR DISTILL',
-128771: 'ALCHEMICAL SYMBOL FOR EARTH',
-128770: 'ALCHEMICAL SYMBOL FOR FIRE',
-128794: 'ALCHEMICAL SYMBOL FOR GOLD',
-128841: 'ALCHEMICAL SYMBOL FOR GUM',
-128882: 'ALCHEMICAL SYMBOL FOR HALF DRAM',
-128883: 'ALCHEMICAL SYMBOL FOR HALF OUNCE',
-128854: 'ALCHEMICAL SYMBOL FOR HORSE DUNG',
-128878: 'ALCHEMICAL SYMBOL FOR HOUR',
-128796: 'ALCHEMICAL SYMBOL FOR IRON ORE',
-128797: 'ALCHEMICAL SYMBOL FOR IRON ORE-2',
-128801: 'ALCHEMICAL SYMBOL FOR IRON-COPPER ORE',
-128810: 'ALCHEMICAL SYMBOL FOR LEAD ORE',
-128851: 'ALCHEMICAL SYMBOL FOR LODESTONE',
-128824: 'ALCHEMICAL SYMBOL FOR MARCASITE',
-128784: 'ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE',
-128785: 'ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE-2',
-128786: 'ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE-3',
-128881: 'ALCHEMICAL SYMBOL FOR MONTH',
-128879: 'ALCHEMICAL SYMBOL FOR NIGHT',
-128789: 'ALCHEMICAL SYMBOL FOR NITRE',
-128838: 'ALCHEMICAL SYMBOL FOR OIL',
-128782: 'ALCHEMICAL SYMBOL FOR PHILOSOPHERS SULFUR',
-128856: 'ALCHEMICAL SYMBOL FOR POT ASHES',
-128843: 'ALCHEMICAL SYMBOL FOR POWDER',
-128858: 'ALCHEMICAL SYMBOL FOR POWDERED BRICK',
-128863: 'ALCHEMICAL SYMBOL FOR PRECIPITATE',
-128867: 'ALCHEMICAL SYMBOL FOR PURIFY',
-128868: 'ALCHEMICAL SYMBOL FOR PUTREFACTION',
-128833: 'ALCHEMICAL SYMBOL FOR QUICK LIME',
-128768: 'ALCHEMICAL SYMBOL FOR QUINTESSENCE',
-128827: 'ALCHEMICAL SYMBOL FOR REALGAR',
-128828: 'ALCHEMICAL SYMBOL FOR REALGAR-2',
-128818: 'ALCHEMICAL SYMBOL FOR REGULUS',
-128816: 'ALCHEMICAL SYMBOL FOR REGULUS OF ANTIMONY',
-128817: 'ALCHEMICAL SYMBOL FOR REGULUS OF ANTIMONY-2',
-128799: 'ALCHEMICAL SYMBOL FOR REGULUS OF IRON',
-128819: 'ALCHEMICAL SYMBOL FOR REGULUS-2',
-128820: 'ALCHEMICAL SYMBOL FOR REGULUS-3',
-128821: 'ALCHEMICAL SYMBOL FOR REGULUS-4',
-128877: 'ALCHEMICAL SYMBOL FOR RETORT',
-128792: 'ALCHEMICAL SYMBOL FOR ROCK SALT',
-128793: 'ALCHEMICAL SYMBOL FOR ROCK SALT-2',
-128825: 'ALCHEMICAL SYMBOL FOR SAL-AMMONIAC',
-128788: 'ALCHEMICAL SYMBOL FOR SALT',
-128813: 'ALCHEMICAL SYMBOL FOR SALT OF ANTIMONY',
-128806: 'ALCHEMICAL SYMBOL FOR SALT OF COPPER ANTIMONIATE',
-128847: 'ALCHEMICAL SYMBOL FOR SCEPTER OF JOVE',
-128795: 'ALCHEMICAL SYMBOL FOR SILVER',
-128852: 'ALCHEMICAL SYMBOL FOR SOAP',
-128839: 'ALCHEMICAL SYMBOL FOR SPIRIT',
-128850: 'ALCHEMICAL SYMBOL FOR STARRED TRIDENT',
-128860: 'ALCHEMICAL SYMBOL FOR STRATUM SUPER STRATUM',
-128861: 'ALCHEMICAL SYMBOL FOR STRATUM SUPER STRATUM-2',
-128812: 'ALCHEMICAL SYMBOL FOR SUBLIMATE OF ANTIMONY',
-128802: 'ALCHEMICAL SYMBOL FOR SUBLIMATE OF COPPER',
-128814: 'ALCHEMICAL SYMBOL FOR SUBLIMATE OF SALT OF ANTIMONY',
-128807: 'ALCHEMICAL SYMBOL FOR SUBLIMATE OF SALT OF COPPER',
-128862: 'ALCHEMICAL SYMBOL FOR SUBLIMATION',
-128781: 'ALCHEMICAL SYMBOL FOR SULFUR',
-128831: 'ALCHEMICAL SYMBOL FOR TARTAR',
-128832: 'ALCHEMICAL SYMBOL FOR TARTAR-2',
-128809: 'ALCHEMICAL SYMBOL FOR TIN ORE',
-128840: 'ALCHEMICAL SYMBOL FOR TINCTURE',
-128849: 'ALCHEMICAL SYMBOL FOR TRIDENT',
-128845: 'ALCHEMICAL SYMBOL FOR TUTTY',
-128853: 'ALCHEMICAL SYMBOL FOR URINE',
-128808: 'ALCHEMICAL SYMBOL FOR VERDIGRIS',
-128778: 'ALCHEMICAL SYMBOL FOR VINEGAR',
-128815: 'ALCHEMICAL SYMBOL FOR VINEGAR OF ANTIMONY',
-128779: 'ALCHEMICAL SYMBOL FOR VINEGAR-2',
-128780: 'ALCHEMICAL SYMBOL FOR VINEGAR-3',
-128790: 'ALCHEMICAL SYMBOL FOR VITRIOL',
-128791: 'ALCHEMICAL SYMBOL FOR VITRIOL-2',
-128772: 'ALCHEMICAL SYMBOL FOR WATER',
-128842: 'ALCHEMICAL SYMBOL FOR WAX',
-128126: 'ALIEN MONSTER',
-128657: 'AMBULANCE',
-127944: 'AMERICAN FOOTBALL',
-128162: 'ANGER SYMBOL',
-128544: 'ANGRY FACE',
-128028: 'ANT',
-128246: 'ANTENNA WITH BARS',
-128260: 'ANTICLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS',
-1568: 'ARABIC LETTER KASHMIRI YEH',
-64434: 'ARABIC SYMBOL DOT ABOVE',
-64435: 'ARABIC SYMBOL DOT BELOW',
-64444: 'ARABIC SYMBOL DOUBLE VERTICAL BAR BELOW',
-64442: 'ARABIC SYMBOL FOUR DOTS ABOVE',
-64443: 'ARABIC SYMBOL FOUR DOTS BELOW',
-64447: 'ARABIC SYMBOL RING',
-64448: 'ARABIC SYMBOL SMALL TAH ABOVE',
-64449: 'ARABIC SYMBOL SMALL TAH BELOW',
-64438: 'ARABIC SYMBOL THREE DOTS ABOVE',
-64439: 'ARABIC SYMBOL THREE DOTS BELOW',
-64440: 'ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS ABOVE',
-64441: 'ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS BELOW',
-64436: 'ARABIC SYMBOL TWO DOTS ABOVE',
-64437: 'ARABIC SYMBOL TWO DOTS BELOW',
-64445: 'ARABIC SYMBOL TWO DOTS VERTICALLY ABOVE',
-64446: 'ARABIC SYMBOL TWO DOTS VERTICALLY BELOW',
-1631: 'ARABIC WAVY HAMZA BELOW',
-128667: 'ARTICULATED LORRY',
-127912: 'ARTIST PALETTE',
-128562: 'ASTONISHED FACE',
-9954: 'ASTRONOMICAL SYMBOL FOR URANUS',
-128095: 'ATHLETIC SHOE',
-127814: 'AUBERGINE',
-127975: 'AUTOMATED TELLER MACHINE',
-128663: 'AUTOMOBILE',
-128118: 'BABY',
-128124: 'BABY ANGEL',
-127868: 'BABY BOTTLE',
-128036: 'BABY CHICK',
-128700: 'BABY SYMBOL',
-128281: 'BACK WITH LEFTWARDS ARROW ABOVE',
-128043: 'BACTRIAN CAMEL',
-128708: 'BAGGAGE CLAIM',
-127880: 'BALLOON',
-92217: 'BAMUM LETTER PHASE-A FIRI',
-92161: 'BAMUM LETTER PHASE-A GBIEE FON',
-92193: 'BAMUM LETTER PHASE-A GHEUAEGHEUAE',
-92188: 'BAMUM LETTER PHASE-A GHEUAERAE',
-92199: 'BAMUM LETTER PHASE-A KAFA',
-92240: 'BAMUM LETTER PHASE-A KAQ',
-92211: 'BAMUM LETTER PHASE-A KET',
-92179: 'BAMUM LETTER PHASE-A KEUKEUTNDA',
-92219: 'BAMUM LETTER PHASE-A KPOQ',
-92213: 'BAMUM LETTER PHASE-A KUOQ',
-92183: 'BAMUM LETTER PHASE-A LAPAQ',
-92184: 'BAMUM LETTER PHASE-A LET KUT',
-92216: 'BAMUM LETTER PHASE-A LOMMAE',
-92243: 'BAMUM LETTER PHASE-A LU',
-92207: 'BAMUM LETTER PHASE-A LUAEP',
-92186: 'BAMUM LETTER PHASE-A MAEKEUP',
-92238: 'BAMUM LETTER PHASE-A MAEM',
-92171: 'BAMUM LETTER PHASE-A MAEMBGBIEE',
-92203: 'BAMUM LETTER PHASE-A MAEMKPEN',
-92174: 'BAMUM LETTER PHASE-A MAEMVEUX',
-92210: 'BAMUM LETTER PHASE-A MAENYI',
-92230: 'BAMUM LETTER PHASE-A MAESI',
-92175: 'BAMUM LETTER PHASE-A MANSUAE',
-92221: 'BAMUM LETTER PHASE-A MAP PIEET',
-92232: 'BAMUM LETTER PHASE-A MBANYI',
-92246: 'BAMUM LETTER PHASE-A MBAQ',
-92197: 'BAMUM LETTER PHASE-A MEUNJOMNDEUQ',
-92196: 'BAMUM LETTER PHASE-A MGBASA',
-92190: 'BAMUM LETTER PHASE-A MON NGGEUAET',
-92214: 'BAMUM LETTER PHASE-A MOOMEUT',
-92198: 'BAMUM LETTER PHASE-A MOOMPUQ',
-92176: 'BAMUM LETTER PHASE-A MVEUAENGAM',
-92164: 'BAMUM LETTER PHASE-A NAA MFON',
-92245: 'BAMUM LETTER PHASE-A NAQ',
-92201: 'BAMUM LETTER PHASE-A NDA LEERAEWA',
-92212: 'BAMUM LETTER PHASE-A NDAANGGEUAET',
-92244: 'BAMUM LETTER PHASE-A NEN',
-92173: 'BAMUM LETTER PHASE-A NGANGU',
-92229: 'BAMUM LETTER PHASE-A NGGEN',
-92160: 'BAMUM LETTER PHASE-A NGKUE MFON',
-92182: 'BAMUM LETTER PHASE-A NGKUENZEUM',
-92204: 'BAMUM LETTER PHASE-A NIKA',
-92231: 'BAMUM LETTER PHASE-A NJAM',
-92227: 'BAMUM LETTER PHASE-A NKAARAE',
-92180: 'BAMUM LETTER PHASE-A NKINDI',
-92241: 'BAMUM LETTER PHASE-A NSHA',
-92237: 'BAMUM LETTER PHASE-A NSHIEE',
-92223: 'BAMUM LETTER PHASE-A NTAP',
-92185: 'BAMUM LETTER PHASE-A NTAP MFAA',
-92194: 'BAMUM LETTER PHASE-A NTAP NTAA',
-92178: 'BAMUM LETTER PHASE-A NTOQPEN',
-92233: 'BAMUM LETTER PHASE-A NYET',
-92239: 'BAMUM LETTER PHASE-A NYI',
-92225: 'BAMUM LETTER PHASE-A NYIT MONGKEUAEQ',
-92167: 'BAMUM LETTER PHASE-A NZA MFON',
-92191: 'BAMUM LETTER PHASE-A NZUN MEUT',
-92200: 'BAMUM LETTER PHASE-A PA LEERAEWA',
-92236: 'BAMUM LETTER PHASE-A PAAM',
-92226: 'BAMUM LETTER PHASE-A PAARAE',
-92189: 'BAMUM LETTER PHASE-A PAMSHAE',
-92187: 'BAMUM LETTER PHASE-A PASHAE',
-92202: 'BAMUM LETTER PHASE-A PET',
-92163: 'BAMUM LETTER PHASE-A PON MFON PIPAEMBA',
-92162: 'BAMUM LETTER PHASE-A PON MFON PIPAEMGBIEE',
-92170: 'BAMUM LETTER PHASE-A PON PA NJI PIPAEMBA',
-92169: 'BAMUM LETTER PHASE-A PON PA NJI PIPAEMGBIEE',
-92205: 'BAMUM LETTER PHASE-A PUP',
-92218: 'BAMUM LETTER PHASE-A ROM',
-92177: 'BAMUM LETTER PHASE-A SEUNYAM',
-92168: 'BAMUM LETTER PHASE-A SHINDA PA NJI',
-92222: 'BAMUM LETTER PHASE-A SHIRAE',
-92224: 'BAMUM LETTER PHASE-A SHOQ NSHUT YUM',
-92165: 'BAMUM LETTER PHASE-A SHUENSHUET',
-92215: 'BAMUM LETTER PHASE-A SHUM',
-92195: 'BAMUM LETTER PHASE-A SISA',
-92208: 'BAMUM LETTER PHASE-A SONJAM',
-92220: 'BAMUM LETTER PHASE-A SOQ',
-92235: 'BAMUM LETTER PHASE-A SOT',
-92181: 'BAMUM LETTER PHASE-A SUU',
-92234: 'BAMUM LETTER PHASE-A TEUAEN',
-92209: 'BAMUM LETTER PHASE-A TEUTEUWEN',
-92166: 'BAMUM LETTER PHASE-A TITA MFON',
-92172: 'BAMUM LETTER PHASE-A TU MAEMBA',
-92206: 'BAMUM LETTER PHASE-A TUAEP',
-92192: 'BAMUM LETTER PHASE-A U YUQ NAE',
-92228: 'BAMUM LETTER PHASE-A UNKNOWN',
-92242: 'BAMUM LETTER PHASE-A VEE',
-92293: 'BAMUM LETTER PHASE-B FEE',
-92291: 'BAMUM LETTER PHASE-B FEUX',
-92271: 'BAMUM LETTER PHASE-B GHEUGHEN',
-92262: 'BAMUM LETTER PHASE-B GHEUGHEUAEM',
-92256: 'BAMUM LETTER PHASE-B KAM',
-92294: 'BAMUM LETTER PHASE-B KEUAEM',
-92270: 'BAMUM LETTER PHASE-B KEUPUQ',
-92272: 'BAMUM LETTER PHASE-B KEUYEUX',
-92253: 'BAMUM LETTER PHASE-B KIEEM',
-92301: 'BAMUM LETTER PHASE-B KIQ',
-92273: 'BAMUM LETTER PHASE-B LAANAE',
-92259: 'BAMUM LETTER PHASE-B LAM NSHUT NYAM',
-92297: 'BAMUM LETTER PHASE-B LET',
-92251: 'BAMUM LETTER PHASE-B LOM NTEUM',
-92300: 'BAMUM LETTER PHASE-B MA',
-92295: 'BAMUM LETTER PHASE-B MA NJEUAENA',
-92296: 'BAMUM LETTER PHASE-B MA NJUQA',
-92252: 'BAMUM LETTER PHASE-B MBA MAELEE',
-92255: 'BAMUM LETTER PHASE-B MBAARAE',
-92286: 'BAMUM LETTER PHASE-B MBEURI',
-92268: 'BAMUM LETTER PHASE-B MBIT MBAAKET',
-92292: 'BAMUM LETTER PHASE-B MBUOQ',
-92281: 'BAMUM LETTER PHASE-B MEUQ',
-92290: 'BAMUM LETTER PHASE-B MEUT NGGEET',
-92284: 'BAMUM LETTER PHASE-B MFIYAQ',
-92267: 'BAMUM LETTER PHASE-B MFON TEUAEQ',
-92287: 'BAMUM LETTER PHASE-B MONTIEEN',
-92261: 'BAMUM LETTER PHASE-B NDU NJAA',
-92298: 'BAMUM LETTER PHASE-B NGGAAM',
-92277: 'BAMUM LETTER PHASE-B NGGEU MBU',
-92282: 'BAMUM LETTER PHASE-B NGGUOQ',
-92283: 'BAMUM LETTER PHASE-B NGGUOQ LARGE',
-92276: 'BAMUM LETTER PHASE-B NGKINDI MVOP',
-92302: 'BAMUM LETTER PHASE-B NGOM',
-92299: 'BAMUM LETTER PHASE-B NSEN',
-92247: 'BAMUM LETTER PHASE-B NSHUET',
-92260: 'BAMUM LETTER PHASE-B NTIEE SHEUOQ',
-92288: 'BAMUM LETTER PHASE-B NYAEMAE',
-92269: 'BAMUM LETTER PHASE-B NYI NTEUM',
-92274: 'BAMUM LETTER PHASE-B PARUM',
-92257: 'BAMUM LETTER PHASE-B PEESHI',
-92263: 'BAMUM LETTER PHASE-B PIT',
-92289: 'BAMUM LETTER PHASE-B PUNGAAM',
-92279: 'BAMUM LETTER PHASE-B SAKEUAE',
-92250: 'BAMUM LETTER PHASE-B SET TU',
-92265: 'BAMUM LETTER PHASE-B SHET NJAQ',
-92266: 'BAMUM LETTER PHASE-B SHEUAEQTU',
-92249: 'BAMUM LETTER PHASE-B SIEE',
-92285: 'BAMUM LETTER PHASE-B SUE',
-92280: 'BAMUM LETTER PHASE-B TAAM',
-92248: 'BAMUM LETTER PHASE-B TU MAEMGBIEE',
-92264: 'BAMUM LETTER PHASE-B TU NSIEE',
-92275: 'BAMUM LETTER PHASE-B VEUM',
-92278: 'BAMUM LETTER PHASE-B WUAET',
-92258: 'BAMUM LETTER PHASE-B YAFU LEERAEWA',
-92254: 'BAMUM LETTER PHASE-B YEURAE',
-92352: 'BAMUM LETTER PHASE-C BUNG',
-92348: 'BAMUM LETTER PHASE-C FUE',
-92312: 'BAMUM LETTER PHASE-C GBAYI',
-92320: 'BAMUM LETTER PHASE-C GHAP',
-92310: 'BAMUM LETTER PHASE-C GHARAE',
-92329: 'BAMUM LETTER PHASE-C KAA',
-92394: 'BAMUM LETTER PHASE-C KEN FATIGUE',
-92393: 'BAMUM LETTER PHASE-C KEN LAW',
-92361: 'BAMUM LETTER PHASE-C KET',
-92321: 'BAMUM LETTER PHASE-C KEUKAQ',
-92386: 'BAMUM LETTER PHASE-C KEUM',
-92384: 'BAMUM LETTER PHASE-C KEUSEUX',
-92319: 'BAMUM LETTER PHASE-C KEUSHEUAEP',
-92328: 'BAMUM LETTER PHASE-C KPARAQ',
-92373: 'BAMUM LETTER PHASE-C KUOP NKAARAE',
-92366: 'BAMUM LETTER PHASE-C KUT',
-92357: 'BAMUM LETTER PHASE-C LAM',
-92342: 'BAMUM LETTER PHASE-C LAP',
-92397: 'BAMUM LETTER PHASE-C LIQ',
-92365: 'BAMUM LETTER PHASE-C LU',
-92339: 'BAMUM LETTER PHASE-C MA KEUAERI',
-92376: 'BAMUM LETTER PHASE-C MA NSIEE',
-92382: 'BAMUM LETTER PHASE-C MAEMBA',
-92363: 'BAMUM LETTER PHASE-C MAESI',
-92318: 'BAMUM LETTER PHASE-C MBAA CABBAGE-TREE',
-92387: 'BAMUM LETTER PHASE-C MBAA PICKET',
-92383: 'BAMUM LETTER PHASE-C MBANYI',
-92311: 'BAMUM LETTER PHASE-C MBEEKEET',
-92354: 'BAMUM LETTER PHASE-C MBERAE',
-92315: 'BAMUM LETTER PHASE-C MBEUM',
-92385: 'BAMUM LETTER PHASE-C MBEUX',
-92381: 'BAMUM LETTER PHASE-C MBI',
-92343: 'BAMUM LETTER PHASE-C MBIRIEEN',
-92326: 'BAMUM LETTER PHASE-C MBIT',
-92364: 'BAMUM LETTER PHASE-C MBUAEM',
-92324: 'BAMUM LETTER PHASE-C MBUE',
-92344: 'BAMUM LETTER PHASE-C MGBASAQ',
-92390: 'BAMUM LETTER PHASE-C MIEE',
-92391: 'BAMUM LETTER PHASE-C MUAE',
-92338: 'BAMUM LETTER PHASE-C NANSANAQ',
-92396: 'BAMUM LETTER PHASE-C NAQ',
-92375: 'BAMUM LETTER PHASE-C NDAM',
-92378: 'BAMUM LETTER PHASE-C NDAP',
-92308: 'BAMUM LETTER PHASE-C NDEUAEREE',
-92349: 'BAMUM LETTER PHASE-C NDEUT',
-92331: 'BAMUM LETTER PHASE-C NDIDA',
-92317: 'BAMUM LETTER PHASE-C NDOMBU',
-92395: 'BAMUM LETTER PHASE-C NGAQ',
-92307: 'BAMUM LETTER PHASE-C NGGEN',
-92362: 'BAMUM LETTER PHASE-C NGGU',
-92336: 'BAMUM LETTER PHASE-C NGGUAEN NYAM',
-92370: 'BAMUM LETTER PHASE-C NGGUEET',
-92347: 'BAMUM LETTER PHASE-C NGGUM',
-92341: 'BAMUM LETTER PHASE-C NGGUON',
-92309: 'BAMUM LETTER PHASE-C NGKAQ',
-92303: 'BAMUM LETTER PHASE-C NGKUE MAEMBA',
-92368: 'BAMUM LETTER PHASE-C NGOM',
-92356: 'BAMUM LETTER PHASE-C NJAEM',
-92367: 'BAMUM LETTER PHASE-C NJAM',
-92360: 'BAMUM LETTER PHASE-C NJEEEE',
-92389: 'BAMUM LETTER PHASE-C NJEUX',
-92333: 'BAMUM LETTER PHASE-C NJUEQ',
-92350: 'BAMUM LETTER PHASE-C NSA',
-92325: 'BAMUM LETTER PHASE-C NSEUAEN',
-92351: 'BAMUM LETTER PHASE-C NSHAQ',
-92371: 'BAMUM LETTER PHASE-C NSOM',
-92374: 'BAMUM LETTER PHASE-C NSUN',
-92359: 'BAMUM LETTER PHASE-C NSUOT NGOM',
-92340: 'BAMUM LETTER PHASE-C NTAA',
-92372: 'BAMUM LETTER PHASE-C NTEN',
-92345: 'BAMUM LETTER PHASE-C NTEUNGBA',
-92314: 'BAMUM LETTER PHASE-C NTU MBIT',
-92313: 'BAMUM LETTER PHASE-C NYIR MKPARAQ MEUN',
-92304: 'BAMUM LETTER PHASE-C NZA',
-92323: 'BAMUM LETTER PHASE-C NZEUM',
-92399: 'BAMUM LETTER PHASE-C PEN',
-92398: 'BAMUM LETTER PHASE-C PIN',
-92316: 'BAMUM LETTER PHASE-C PIRIEEN',
-92355: 'BAMUM LETTER PHASE-C RU',
-92380: 'BAMUM LETTER PHASE-C SETFON',
-92330: 'BAMUM LETTER PHASE-C SEUX',
-92392: 'BAMUM LETTER PHASE-C SHIQ',
-92379: 'BAMUM LETTER PHASE-C SHUEQ',
-92335: 'BAMUM LETTER PHASE-C SUAET',
-92332: 'BAMUM LETTER PHASE-C TAASHAE',
-92400: 'BAMUM LETTER PHASE-C TET',
-92346: 'BAMUM LETTER PHASE-C TEUTEUX',
-92334: 'BAMUM LETTER PHASE-C TITA YUE',
-92358: 'BAMUM LETTER PHASE-C TITUAEP',
-92353: 'BAMUM LETTER PHASE-C VEUAEPEN',
-92337: 'BAMUM LETTER PHASE-C VEUX',
-92306: 'BAMUM LETTER PHASE-C WANGKUOQ',
-92369: 'BAMUM LETTER PHASE-C WUP',
-92377: 'BAMUM LETTER PHASE-C YAA',
-92327: 'BAMUM LETTER PHASE-C YEUQ',
-92322: 'BAMUM LETTER PHASE-C YU MUOMAE',
-92305: 'BAMUM LETTER PHASE-C YUM',
-92388: 'BAMUM LETTER PHASE-C YUWOQ',
-92517: 'BAMUM LETTER PHASE-D FAA',
-92436: 'BAMUM LETTER PHASE-D FEUFEUAET',
-92434: 'BAMUM LETTER PHASE-D GHAA',
-92488: 'BAMUM LETTER PHASE-D GHEUAE',
-92420: 'BAMUM LETTER PHASE-D KET',
-92415: 'BAMUM LETTER PHASE-D KEUAETMEUN',
-92454: 'BAMUM LETTER PHASE-D KEUM',
-92431: 'BAMUM LETTER PHASE-D KEUOT MBUAE',
-92460: 'BAMUM LETTER PHASE-D KEUP',
-92489: 'BAMUM LETTER PHASE-D KU',
-92474: 'BAMUM LETTER PHASE-D KUN',
-92422: 'BAMUM LETTER PHASE-D KUOM',
-92479: 'BAMUM LETTER PHASE-D KUQ',
-92449: 'BAMUM LETTER PHASE-D KWAET',
-92502: 'BAMUM LETTER PHASE-D KYEE',
-92495: 'BAMUM LETTER PHASE-D LEEEE',
-92464: 'BAMUM LETTER PHASE-D LET',
-92439: 'BAMUM LETTER PHASE-D LEUAEP',
-92484: 'BAMUM LETTER PHASE-D LEUM',
-92406: 'BAMUM LETTER PHASE-D LIEE',
-92511: 'BAMUM LETTER PHASE-D LOQ',
-92446: 'BAMUM LETTER PHASE-D LUM',
-92497: 'BAMUM LETTER PHASE-D M',
-92482: 'BAMUM LETTER PHASE-D MAENJET',
-92426: 'BAMUM LETTER PHASE-D MALEERI',
-92448: 'BAMUM LETTER PHASE-D MBAA',
-92515: 'BAMUM LETTER PHASE-D MBAA SEVEN',
-92401: 'BAMUM LETTER PHASE-D MBUO',
-92496: 'BAMUM LETTER PHASE-D MEEEE',
-92478: 'BAMUM LETTER PHASE-D MEUN',
-92427: 'BAMUM LETTER PHASE-D MEUT',
-92458: 'BAMUM LETTER PHASE-D MFEUAE',
-92424: 'BAMUM LETTER PHASE-D MFEUT',
-92466: 'BAMUM LETTER PHASE-D MFIEE',
-92445: 'BAMUM LETTER PHASE-D MFO',
-92404: 'BAMUM LETTER PHASE-D MFON',
-92442: 'BAMUM LETTER PHASE-D MGBEUN',
-92444: 'BAMUM LETTER PHASE-D MGBIEE',
-92438: 'BAMUM LETTER PHASE-D MGBOFUM',
-92441: 'BAMUM LETTER PHASE-D MONI',
-92499: 'BAMUM LETTER PHASE-D MU',
-92510: 'BAMUM LETTER PHASE-D MVOP',
-92471: 'BAMUM LETTER PHASE-D NDAM',
-92437: 'BAMUM LETTER PHASE-D NDEE',
-92425: 'BAMUM LETTER PHASE-D NDEUX',
-92440: 'BAMUM LETTER PHASE-D NDON',
-92465: 'BAMUM LETTER PHASE-D NGGAAM',
-92409: 'BAMUM LETTER PHASE-D NGGAAMAE',
-92483: 'BAMUM LETTER PHASE-D NGGAP',
-92475: 'BAMUM LETTER PHASE-D NGGEUX',
-92485: 'BAMUM LETTER PHASE-D NGGUOM',
-92467: 'BAMUM LETTER PHASE-D NGGWAEN',
-92414: 'BAMUM LETTER PHASE-D NGKAP',
-92457: 'BAMUM LETTER PHASE-D NGKEUAEQ',
-92432: 'BAMUM LETTER PHASE-D NGKEURI',
-92476: 'BAMUM LETTER PHASE-D NGKIEE',
-92412: 'BAMUM LETTER PHASE-D NGKUN',
-92435: 'BAMUM LETTER PHASE-D NGKYEE',
-92507: 'BAMUM LETTER PHASE-D NI',
-92418: 'BAMUM LETTER PHASE-D NJAP',
-92430: 'BAMUM LETTER PHASE-D NJEUAEM',
-92407: 'BAMUM LETTER PHASE-D NJEUT',
-92403: 'BAMUM LETTER PHASE-D NJI',
-92405: 'BAMUM LETTER PHASE-D NJIEE',
-92487: 'BAMUM LETTER PHASE-D NJUEQ',
-92408: 'BAMUM LETTER PHASE-D NSHEE',
-92486: 'BAMUM LETTER PHASE-D NSHUT',
-92447: 'BAMUM LETTER PHASE-D NSIEEP',
-92459: 'BAMUM LETTER PHASE-D NSIEET',
-92480: 'BAMUM LETTER PHASE-D NSUM',
-92505: 'BAMUM LETTER PHASE-D NTEE',
-92472: 'BAMUM LETTER PHASE-D NTEUM',
-92514: 'BAMUM LETTER PHASE-D NTUU',
-92503: 'BAMUM LETTER PHASE-D NU',
-92410: 'BAMUM LETTER PHASE-D NYAM',
-92450: 'BAMUM LETTER PHASE-D NYET',
-92493: 'BAMUM LETTER PHASE-D NYI',
-92463: 'BAMUM LETTER PHASE-D NYUE',
-92469: 'BAMUM LETTER PHASE-D PAP',
-92506: 'BAMUM LETTER PHASE-D PEE',
-92462: 'BAMUM LETTER PHASE-D PEUTAE',
-92461: 'BAMUM LETTER PHASE-D PIP',
-92509: 'BAMUM LETTER PHASE-D PUQ',
-92443: 'BAMUM LETTER PHASE-D PUUT',
-92455: 'BAMUM LETTER PHASE-D RAEM',
-92512: 'BAMUM LETTER PHASE-D REN MUCH',
-92490: 'BAMUM LETTER PHASE-D REN OLD',
-92494: 'BAMUM LETTER PHASE-D RII',
-92423: 'BAMUM LETTER PHASE-D SAP',
-92516: 'BAMUM LETTER PHASE-D SAQ',
-92428: 'BAMUM LETTER PHASE-D SEUAEQ',
-92413: 'BAMUM LETTER PHASE-D SHEE',
-92417: 'BAMUM LETTER PHASE-D SHEUAE',
-92501: 'BAMUM LETTER PHASE-D SHEUX',
-92500: 'BAMUM LETTER PHASE-D SHII',
-92508: 'BAMUM LETTER PHASE-D SHOQ',
-92504: 'BAMUM LETTER PHASE-D SHU',
-92452: 'BAMUM LETTER PHASE-D SOT',
-92473: 'BAMUM LETTER PHASE-D SUAE',
-92419: 'BAMUM LETTER PHASE-D SUE',
-92498: 'BAMUM LETTER PHASE-D SUU',
-92491: 'BAMUM LETTER PHASE-D TAE',
-92456: 'BAMUM LETTER PHASE-D TEEEE',
-92451: 'BAMUM LETTER PHASE-D TEUAEN',
-92481: 'BAMUM LETTER PHASE-D TEUN',
-92416: 'BAMUM LETTER PHASE-D TEUT',
-92513: 'BAMUM LETTER PHASE-D TI',
-92492: 'BAMUM LETTER PHASE-D TOQ',
-92433: 'BAMUM LETTER PHASE-D TU',
-92477: 'BAMUM LETTER PHASE-D TUOT',
-92402: 'BAMUM LETTER PHASE-D WAP',
-92411: 'BAMUM LETTER PHASE-D WUAEN',
-92421: 'BAMUM LETTER PHASE-D YAEMMAE',
-92429: 'BAMUM LETTER PHASE-D YEN',
-92468: 'BAMUM LETTER PHASE-D YUOM',
-92470: 'BAMUM LETTER PHASE-D YUOP',
-92453: 'BAMUM LETTER PHASE-D YUWOQ',
-92629: 'BAMUM LETTER PHASE-E A',
-92603: 'BAMUM LETTER PHASE-E FA',
-92673: 'BAMUM LETTER PHASE-E FAQ',
-92651: 'BAMUM LETTER PHASE-E FEE',
-92627: 'BAMUM LETTER PHASE-E FOM',
-92626: 'BAMUM LETTER PHASE-E FU CALL',
-92616: 'BAMUM LETTER PHASE-E FU I',
-92661: 'BAMUM LETTER PHASE-E FU REMEDY',
-92596: 'BAMUM LETTER PHASE-E FUE',
-92612: 'BAMUM LETTER PHASE-E FUET',
-92585: 'BAMUM LETTER PHASE-E GBET',
-92597: 'BAMUM LETTER PHASE-E GBEUX',
-92578: 'BAMUM LETTER PHASE-E GHAAMAE',
-92602: 'BAMUM LETTER PHASE-E GHET',
-92615: 'BAMUM LETTER PHASE-E GHEUAE',
-92565: 'BAMUM LETTER PHASE-E GHEUN',
-92552: 'BAMUM LETTER PHASE-E GHEUX',
-92674: 'BAMUM LETTER PHASE-E GHOM',
-92632: 'BAMUM LETTER PHASE-E I',
-92599: 'BAMUM LETTER PHASE-E KET',
-92570: 'BAMUM LETTER PHASE-E KEUAE',
-92646: 'BAMUM LETTER PHASE-E KEUX',
-92670: 'BAMUM LETTER PHASE-E KI',
-92665: 'BAMUM LETTER PHASE-E KO',
-92532: 'BAMUM LETTER PHASE-E KPEUX',
-92587: 'BAMUM LETTER PHASE-E KUET',
-92538: 'BAMUM LETTER PHASE-E KUOP',
-92620: 'BAMUM LETTER PHASE-E KUT',
-92575: 'BAMUM LETTER PHASE-E LAAM',
-92521: 'BAMUM LETTER PHASE-E LAP',
-92633: 'BAMUM LETTER PHASE-E LAQ',
-92595: 'BAMUM LETTER PHASE-E LEUAEM',
-92539: 'BAMUM LETTER PHASE-E LOM',
-92523: 'BAMUM LETTER PHASE-E LOON',
-92556: 'BAMUM LETTER PHASE-E LOOT',
-92664: 'BAMUM LETTER PHASE-E LOQ',
-92653: 'BAMUM LETTER PHASE-E LU',
-92667: 'BAMUM LETTER PHASE-E MA',
-92600: 'BAMUM LETTER PHASE-E MAE',
-92542: 'BAMUM LETTER PHASE-E MAEM',
-92555: 'BAMUM LETTER PHASE-E MAP',
-92668: 'BAMUM LETTER PHASE-E MAQ',
-92582: 'BAMUM LETTER PHASE-E MBEE',
-92520: 'BAMUM LETTER PHASE-E MBEUM',
-92666: 'BAMUM LETTER PHASE-E MEN',
-92591: 'BAMUM LETTER PHASE-E MFEUQ',
-92551: 'BAMUM LETTER PHASE-E MGBA',
-92581: 'BAMUM LETTER PHASE-E MGBEN',
-92654: 'BAMUM LETTER PHASE-E MI',
-92611: 'BAMUM LETTER PHASE-E MIEE',
-92671: 'BAMUM LETTER PHASE-E MON',
-92614: 'BAMUM LETTER PHASE-E MUAE',
-92617: 'BAMUM LETTER PHASE-E MVI',
-92662: 'BAMUM LETTER PHASE-E NA',
-92613: 'BAMUM LETTER PHASE-E NAE',
-92637: 'BAMUM LETTER PHASE-E NDAA MY HOUSE',
-92562: 'BAMUM LETTER PHASE-E NDAA SOFTNESS',
-92518: 'BAMUM LETTER PHASE-E NDAP',
-92592: 'BAMUM LETTER PHASE-E NDIAQ',
-92558: 'BAMUM LETTER PHASE-E NDIQ',
-92528: 'BAMUM LETTER PHASE-E NDUN',
-92658: 'BAMUM LETTER PHASE-E NGA',
-92579: 'BAMUM LETTER PHASE-E NGEUREUT',
-92557: 'BAMUM LETTER PHASE-E NGGEEEE',
-92607: 'BAMUM LETTER PHASE-E NGGEUAE',
-92535: 'BAMUM LETTER PHASE-E NGGEUAET',
-92563: 'BAMUM LETTER PHASE-E NGGUAESHAE NYAM',
-92624: 'BAMUM LETTER PHASE-E NGGUP',
-92550: 'BAMUM LETTER PHASE-E NGGURAE',
-92531: 'BAMUM LETTER PHASE-E NGKA',
-92601: 'BAMUM LETTER PHASE-E NGKAAMI',
-92553: 'BAMUM LETTER PHASE-E NGKEUAEM',
-92543: 'BAMUM LETTER PHASE-E NGKEUX',
-92619: 'BAMUM LETTER PHASE-E NGKUM',
-92598: 'BAMUM LETTER PHASE-E NGKUP',
-92541: 'BAMUM LETTER PHASE-E NGOP',
-92544: 'BAMUM LETTER PHASE-E NGOQ',
-92640: 'BAMUM LETTER PHASE-E NGUAE',
-92657: 'BAMUM LETTER PHASE-E NGUAET',
-92554: 'BAMUM LETTER PHASE-E NJAEMLI',
-92628: 'BAMUM LETTER PHASE-E NJEE',
-92648: 'BAMUM LETTER PHASE-E NJEE EPOCH',
-92547: 'BAMUM LETTER PHASE-E NJEUX',
-92584: 'BAMUM LETTER PHASE-E NKOM',
-92540: 'BAMUM LETTER PHASE-E NSHIEE',
-92545: 'BAMUM LETTER PHASE-E NSHUE',
-92527: 'BAMUM LETTER PHASE-E NSHUOP',
-92622: 'BAMUM LETTER PHASE-E NTAP',
-92604: 'BAMUM LETTER PHASE-E NTUM',
-92608: 'BAMUM LETTER PHASE-E NYI BETWEEN',
-92589: 'BAMUM LETTER PHASE-E NYI CLEAVER',
-92583: 'BAMUM LETTER PHASE-E NZAQ',
-92609: 'BAMUM LETTER PHASE-E NZUQ',
-92631: 'BAMUM LETTER PHASE-E O',
-92625: 'BAMUM LETTER PHASE-E PA PEOPLE',
-92634: 'BAMUM LETTER PHASE-E PA PLURAL',
-92524: 'BAMUM LETTER PHASE-E PAA',
-92536: 'BAMUM LETTER PHASE-E PAAM',
-92548: 'BAMUM LETTER PHASE-E PEEM',
-92605: 'BAMUM LETTER PHASE-E PEUT',
-92647: 'BAMUM LETTER PHASE-E PEUX',
-92663: 'BAMUM LETTER PHASE-E PI',
-92593: 'BAMUM LETTER PHASE-E PIEEQ',
-92621: 'BAMUM LETTER PHASE-E PIET',
-92568: 'BAMUM LETTER PHASE-E PO',
-92610: 'BAMUM LETTER PHASE-E POON',
-92576: 'BAMUM LETTER PHASE-E PU',
-92529: 'BAMUM LETTER PHASE-E PUAE',
-92618: 'BAMUM LETTER PHASE-E PUAQ',
-92649: 'BAMUM LETTER PHASE-E PUE',
-92561: 'BAMUM LETTER PHASE-E PUM',
-92656: 'BAMUM LETTER PHASE-E RAE',
-92526: 'BAMUM LETTER PHASE-E RAQ',
-92655: 'BAMUM LETTER PHASE-E REUX',
-92546: 'BAMUM LETTER PHASE-E RIMGBA',
-92549: 'BAMUM LETTER PHASE-E SAA',
-92534: 'BAMUM LETTER PHASE-E SEE',
-92560: 'BAMUM LETTER PHASE-E SET',
-92580: 'BAMUM LETTER PHASE-E SHEUAEQ',
-92638: 'BAMUM LETTER PHASE-E SHIQ',
-92659: 'BAMUM LETTER PHASE-E SHO',
-92660: 'BAMUM LETTER PHASE-E SHOQ',
-92525: 'BAMUM LETTER PHASE-E SOM',
-92571: 'BAMUM LETTER PHASE-E SUAEN',
-92635: 'BAMUM LETTER PHASE-E TAA',
-92577: 'BAMUM LETTER PHASE-E TAAQ',
-92559: 'BAMUM LETTER PHASE-E TAEN NTEUM',
-92530: 'BAMUM LETTER PHASE-E TAM',
-92636: 'BAMUM LETTER PHASE-E TAQ',
-92672: 'BAMUM LETTER PHASE-E TEN',
-92669: 'BAMUM LETTER PHASE-E TEU',
-92572: 'BAMUM LETTER PHASE-E TEUAEQ',
-92537: 'BAMUM LETTER PHASE-E TOO',
-92519: 'BAMUM LETTER PHASE-E TOON',
-92630: 'BAMUM LETTER PHASE-E TOQ',
-92566: 'BAMUM LETTER PHASE-E TUAE',
-92586: 'BAMUM LETTER PHASE-E TUM',
-92569: 'BAMUM LETTER PHASE-E TUMAE',
-92652: 'BAMUM LETTER PHASE-E VEE',
-92573: 'BAMUM LETTER PHASE-E VEUAE',
-92522: 'BAMUM LETTER PHASE-E VOM',
-92574: 'BAMUM LETTER PHASE-E WEUX',
-92650: 'BAMUM LETTER PHASE-E WUE',
-92533: 'BAMUM LETTER PHASE-E WUO',
-92588: 'BAMUM LETTER PHASE-E YAP',
-92567: 'BAMUM LETTER PHASE-E YEUAE',
-92623: 'BAMUM LETTER PHASE-E YEUAET',
-92606: 'BAMUM LETTER PHASE-E YEUM',
-92639: 'BAMUM LETTER PHASE-E YEUX',
-92564: 'BAMUM LETTER PHASE-E YIEE',
-92590: 'BAMUM LETTER PHASE-E YIT',
-92643: 'BAMUM LETTER PHASE-E YOQ COVER',
-92642: 'BAMUM LETTER PHASE-E YOQ SWIMMING',
-92641: 'BAMUM LETTER PHASE-E YUAEN',
-92594: 'BAMUM LETTER PHASE-E YUEQ',
-92645: 'BAMUM LETTER PHASE-E YUN',
-92644: 'BAMUM LETTER PHASE-E YUQ',
-92678: 'BAMUM LETTER PHASE-F EE',
-92715: 'BAMUM LETTER PHASE-F FOM',
-92675: 'BAMUM LETTER PHASE-F KA',
-92710: 'BAMUM LETTER PHASE-F KEN',
-92695: 'BAMUM LETTER PHASE-F KET',
-92719: 'BAMUM LETTER PHASE-F KO',
-92726: 'BAMUM LETTER PHASE-F KPA',
-92677: 'BAMUM LETTER PHASE-F KU',
-92694: 'BAMUM LETTER PHASE-F KYEE',
-92682: 'BAMUM LETTER PHASE-F LA',
-92717: 'BAMUM LETTER PHASE-F LI',
-92718: 'BAMUM LETTER PHASE-F LOQ',
-92689: 'BAMUM LETTER PHASE-F M',
-92722: 'BAMUM LETTER PHASE-F MA',
-92724: 'BAMUM LETTER PHASE-F MBAA',
-92720: 'BAMUM LETTER PHASE-F MBEN',
-92685: 'BAMUM LETTER PHASE-F MEEEE',
-92723: 'BAMUM LETTER PHASE-F MO',
-92687: 'BAMUM LETTER PHASE-F NDAA',
-92712: 'BAMUM LETTER PHASE-F NGGA',
-92711: 'BAMUM LETTER PHASE-F NGKWAEN',
-92708: 'BAMUM LETTER PHASE-F NI',
-92688: 'BAMUM LETTER PHASE-F NJAEM',
-92698: 'BAMUM LETTER PHASE-F NJUAE',
-92702: 'BAMUM LETTER PHASE-F NSHA',
-92704: 'BAMUM LETTER PHASE-F NTEE',
-92697: 'BAMUM LETTER PHASE-F NU',
-92696: 'BAMUM LETTER PHASE-F NUAE',
-92681: 'BAMUM LETTER PHASE-F NYI',
-92706: 'BAMUM LETTER PHASE-F PEE',
-92703: 'BAMUM LETTER PHASE-F PEUX',
-92714: 'BAMUM LETTER PHASE-F PUAE',
-92679: 'BAMUM LETTER PHASE-F REE',
-92721: 'BAMUM LETTER PHASE-F REN',
-92709: 'BAMUM LETTER PHASE-F REUX',
-92684: 'BAMUM LETTER PHASE-F RIEE',
-92683: 'BAMUM LETTER PHASE-F RII',
-92707: 'BAMUM LETTER PHASE-F RU',
-92727: 'BAMUM LETTER PHASE-F SAMBA',
-92693: 'BAMUM LETTER PHASE-F SEUX',
-92691: 'BAMUM LETTER PHASE-F SHII',
-92713: 'BAMUM LETTER PHASE-F SHO',
-92700: 'BAMUM LETTER PHASE-F SHU',
-92692: 'BAMUM LETTER PHASE-F SI',
-92690: 'BAMUM LETTER PHASE-F SUU',
-92686: 'BAMUM LETTER PHASE-F TAA',
-92680: 'BAMUM LETTER PHASE-F TAE',
-92725: 'BAMUM LETTER PHASE-F TET',
-92676: 'BAMUM LETTER PHASE-F U',
-92728: 'BAMUM LETTER PHASE-F VUEQ',
-92716: 'BAMUM LETTER PHASE-F WA',
-92705: 'BAMUM LETTER PHASE-F WUE',
-92701: 'BAMUM LETTER PHASE-F YA',
-92699: 'BAMUM LETTER PHASE-F YOQ',
-127820: 'BANANA',
-127974: 'BANK',
-128181: 'BANKNOTE WITH DOLLAR SIGN',
-128182: 'BANKNOTE WITH EURO SIGN',
-128183: 'BANKNOTE WITH POUND SIGN',
-128180: 'BANKNOTE WITH YEN SIGN',
-128202: 'BAR CHART',
-128136: 'BARBER POLE',
-127936: 'BASKETBALL AND HOOP',
-7153: 'BATAK CONSONANT SIGN H',
-7152: 'BATAK CONSONANT SIGN NG',
-7104: 'BATAK LETTER A',
-7109: 'BATAK LETTER BA',
-7137: 'BATAK LETTER CA',
-7121: 'BATAK LETTER DA',
-7118: 'BATAK LETTER GA',
-7106: 'BATAK LETTER HA',
-7140: 'BATAK LETTER I',
-7120: 'BATAK LETTER JA',
-7110: 'BATAK LETTER KARO BA',
-7134: 'BATAK LETTER LA',
-7124: 'BATAK LETTER MA',
-7108: 'BATAK LETTER MANDAILING HA',
-7114: 'BATAK LETTER MANDAILING NA',
-7130: 'BATAK LETTER MANDAILING SA',
-7139: 'BATAK LETTER MBA',
-7113: 'BATAK LETTER NA',
-7138: 'BATAK LETTER NDA',
-7133: 'BATAK LETTER NGA',
-7127: 'BATAK LETTER NORTHERN TA',
-7136: 'BATAK LETTER NYA',
-7111: 'BATAK LETTER PA',
-7117: 'BATAK LETTER PAKPAK WA',
-7122: 'BATAK LETTER RA',
-7128: 'BATAK LETTER SA',
-7105: 'BATAK LETTER SIMALUNGUN A',
-7119: 'BATAK LETTER SIMALUNGUN GA',
-7107: 'BATAK LETTER SIMALUNGUN HA',
-7135: 'BATAK LETTER SIMALUNGUN LA',
-7125: 'BATAK LETTER SIMALUNGUN MA',
-7112: 'BATAK LETTER SIMALUNGUN PA',
-7123: 'BATAK LETTER SIMALUNGUN RA',
-7129: 'BATAK LETTER SIMALUNGUN SA',
-7116: 'BATAK LETTER SIMALUNGUN WA',
-7132: 'BATAK LETTER SIMALUNGUN YA',
-7126: 'BATAK LETTER SOUTHERN TA',
-7141: 'BATAK LETTER U',
-7115: 'BATAK LETTER WA',
-7131: 'BATAK LETTER YA',
-7154: 'BATAK PANGOLAT',
-7155: 'BATAK PANONGONAN',
-7142: 'BATAK SIGN TOMPI',
-7166: 'BATAK SYMBOL BINDU JUDUL',
-7164: 'BATAK SYMBOL BINDU NA METEK',
-7167: 'BATAK SYMBOL BINDU PANGOLAT',
-7165: 'BATAK SYMBOL BINDU PINARBORAS',
-7143: 'BATAK VOWEL SIGN E',
-7145: 'BATAK VOWEL SIGN EE',
-7146: 'BATAK VOWEL SIGN I',
-7147: 'BATAK VOWEL SIGN KARO I',
-7149: 'BATAK VOWEL SIGN KARO O',
-7148: 'BATAK VOWEL SIGN O',
-7144: 'BATAK VOWEL SIGN PAKPAK E',
-7150: 'BATAK VOWEL SIGN U',
-7151: 'BATAK VOWEL SIGN U FOR SIMALUNGUN SA',
-128704: 'BATH',
-128705: 'BATHTUB',
-128267: 'BATTERY',
-128059: 'BEAR FACE',
-128147: 'BEATING HEART',
-127866: 'BEER MUG',
-128276: 'BELL',
-128277: 'BELL WITH CANCELLATION STROKE',
-983621: 'BENGALI LETTER KHINYA',
-127857: 'BENTO BOX',
-128690: 'BICYCLE',
-128692: 'BICYCLIST',
-128089: 'BIKINI',
-127921: 'BILLIARDS',
-128038: 'BIRD',
-127874: 'BIRTHDAY CAKE',
-9196: 'BLACK DOWN-POINTING DOUBLE TRIANGLE',
-9194: 'BLACK LEFT-POINTING DOUBLE TRIANGLE',
-9198: 'BLACK LEFT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR',
-10067: 'BLACK QUESTION MARK ORNAMENT',
-9193: 'BLACK RIGHT-POINTING DOUBLE TRIANGLE',
-9197: 'BLACK RIGHT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR',
-9199: 'BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR',
-128306: 'BLACK SQUARE BUTTON',
-9195: 'BLACK UP-POINTING DOUBLE TRIANGLE',
-127804: 'BLOSSOM',
-128033: 'BLOWFISH',
-128216: 'BLUE BOOK',
-128153: 'BLUE HEART',
-128023: 'BOAR',
-128163: 'BOMB',
-128278: 'BOOKMARK',
-128209: 'BOOKMARK TABS',
-128218: 'BOOKS',
-12728: 'BOPOMOFO LETTER GH',
-12729: 'BOPOMOFO LETTER LH',
-12730: 'BOPOMOFO LETTER ZY',
-128144: 'BOUQUET',
-127923: 'BOWLING',
-128102: 'BOY',
-69703: 'BRAHMI DANDA',
-69742: 'BRAHMI DIGIT EIGHT',
-69739: 'BRAHMI DIGIT FIVE',
-69738: 'BRAHMI DIGIT FOUR',
-69743: 'BRAHMI DIGIT NINE',
-69735: 'BRAHMI DIGIT ONE',
-69741: 'BRAHMI DIGIT SEVEN',
-69740: 'BRAHMI DIGIT SIX',
-69737: 'BRAHMI DIGIT THREE',
-69736: 'BRAHMI DIGIT TWO',
-69734: 'BRAHMI DIGIT ZERO',
-69704: 'BRAHMI DOUBLE DANDA',
-69637: 'BRAHMI LETTER A',
-69638: 'BRAHMI LETTER AA',
-69648: 'BRAHMI LETTER AI',
-69650: 'BRAHMI LETTER AU',
-69673: 'BRAHMI LETTER BA',
-69674: 'BRAHMI LETTER BHA',
-69656: 'BRAHMI LETTER CA',
-69657: 'BRAHMI LETTER CHA',
-69668: 'BRAHMI LETTER DA',
-69663: 'BRAHMI LETTER DDA',
-69664: 'BRAHMI LETTER DDHA',
-69669: 'BRAHMI LETTER DHA',
-69647: 'BRAHMI LETTER E',
-69653: 'BRAHMI LETTER GA',
-69654: 'BRAHMI LETTER GHA',
-69683: 'BRAHMI LETTER HA',
-69639: 'BRAHMI LETTER I',
-69640: 'BRAHMI LETTER II',
-69658: 'BRAHMI LETTER JA',
-69659: 'BRAHMI LETTER JHA',
-69651: 'BRAHMI LETTER KA',
-69652: 'BRAHMI LETTER KHA',
-69678: 'BRAHMI LETTER LA',
-69684: 'BRAHMI LETTER LLA',
-69675: 'BRAHMI LETTER MA',
-69670: 'BRAHMI LETTER NA',
-69655: 'BRAHMI LETTER NGA',
-69665: 'BRAHMI LETTER NNA',
-69660: 'BRAHMI LETTER NYA',
-69649: 'BRAHMI LETTER O',
-69685: 'BRAHMI LETTER OLD TAMIL LLLA',
-69687: 'BRAHMI LETTER OLD TAMIL NNNA',
-69686: 'BRAHMI LETTER OLD TAMIL RRA',
-69671: 'BRAHMI LETTER PA',
-69672: 'BRAHMI LETTER PHA',
-69677: 'BRAHMI LETTER RA',
-69682: 'BRAHMI LETTER SA',
-69680: 'BRAHMI LETTER SHA',
-69681: 'BRAHMI LETTER SSA',
-69666: 'BRAHMI LETTER TA',
-69667: 'BRAHMI LETTER THA',
-69661: 'BRAHMI LETTER TTA',
-69662: 'BRAHMI LETTER TTHA',
-69641: 'BRAHMI LETTER U',
-69642: 'BRAHMI LETTER UU',
-69679: 'BRAHMI LETTER VA',
-69645: 'BRAHMI LETTER VOCALIC L',
-69646: 'BRAHMI LETTER VOCALIC LL',
-69643: 'BRAHMI LETTER VOCALIC R',
-69644: 'BRAHMI LETTER VOCALIC RR',
-69676: 'BRAHMI LETTER YA',
-69721: 'BRAHMI NUMBER EIGHT',
-69730: 'BRAHMI NUMBER EIGHTY',
-69727: 'BRAHMI NUMBER FIFTY',
-69718: 'BRAHMI NUMBER FIVE',
-69726: 'BRAHMI NUMBER FORTY',
-69717: 'BRAHMI NUMBER FOUR',
-69722: 'BRAHMI NUMBER NINE',
-69731: 'BRAHMI NUMBER NINETY',
-69714: 'BRAHMI NUMBER ONE',
-69732: 'BRAHMI NUMBER ONE HUNDRED',
-69733: 'BRAHMI NUMBER ONE THOUSAND',
-69720: 'BRAHMI NUMBER SEVEN',
-69729: 'BRAHMI NUMBER SEVENTY',
-69719: 'BRAHMI NUMBER SIX',
-69728: 'BRAHMI NUMBER SIXTY',
-69723: 'BRAHMI NUMBER TEN',
-69725: 'BRAHMI NUMBER THIRTY',
-69716: 'BRAHMI NUMBER THREE',
-69724: 'BRAHMI NUMBER TWENTY',
-69715: 'BRAHMI NUMBER TWO',
-69708: 'BRAHMI PUNCTUATION CRESCENT BAR',
-69705: 'BRAHMI PUNCTUATION DOT',
-69706: 'BRAHMI PUNCTUATION DOUBLE DOT',
-69707: 'BRAHMI PUNCTUATION LINE',
-69709: 'BRAHMI PUNCTUATION LOTUS',
-69633: 'BRAHMI SIGN ANUSVARA',
-69632: 'BRAHMI SIGN CANDRABINDU',
-69635: 'BRAHMI SIGN JIHVAMULIYA',
-69636: 'BRAHMI SIGN UPADHMANIYA',
-69634: 'BRAHMI SIGN VISARGA',
-69702: 'BRAHMI VIRAMA',
-69688: 'BRAHMI VOWEL SIGN AA',
-69699: 'BRAHMI VOWEL SIGN AI',
-69701: 'BRAHMI VOWEL SIGN AU',
-69689: 'BRAHMI VOWEL SIGN BHATTIPROLU AA',
-69698: 'BRAHMI VOWEL SIGN E',
-69690: 'BRAHMI VOWEL SIGN I',
-69691: 'BRAHMI VOWEL SIGN II',
-69700: 'BRAHMI VOWEL SIGN O',
-69692: 'BRAHMI VOWEL SIGN U',
-69693: 'BRAHMI VOWEL SIGN UU',
-69696: 'BRAHMI VOWEL SIGN VOCALIC L',
-69697: 'BRAHMI VOWEL SIGN VOCALIC LL',
-69694: 'BRAHMI VOWEL SIGN VOCALIC R',
-69695: 'BRAHMI VOWEL SIGN VOCALIC RR',
-127838: 'BREAD',
-128112: 'BRIDE WITH VEIL',
-127753: 'BRIDGE AT NIGHT',
-128188: 'BRIEFCASE',
-128148: 'BROKEN HEART',
-128027: 'BUG',
-128652: 'BUS',
-128655: 'BUS STOP',
-128100: 'BUST IN SILHOUETTE',
-128101: 'BUSTS IN SILHOUETTE',
-127797: 'CACTUS',
-128197: 'CALENDAR',
-128247: 'CAMERA',
-127852: 'CANDY',
-128199: 'CARD INDEX',
-127904: 'CAROUSEL HORSE',
-127887: 'CARP STREAMER',
-128008: 'CAT',
-128049: 'CAT FACE',
-128569: 'CAT FACE WITH TEARS OF JOY',
-128572: 'CAT FACE WITH WRY SMILE',
-128201: 'CHART WITH DOWNWARDS TREND',
-128200: 'CHART WITH UPWARDS TREND',
-128185: 'CHART WITH UPWARDS TREND AND YEN SIGN',
-128227: 'CHEERING MEGAPHONE',
-127937: 'CHEQUERED FLAG',
-127826: 'CHERRIES',
-127800: 'CHERRY BLOSSOM',
-127792: 'CHESTNUT',
-128020: 'CHICKEN',
-128696: 'CHILDREN CROSSING',
-127851: 'CHOCOLATE BAR',
-127876: 'CHRISTMAS TREE',
-127910: 'CINEMA',
-127569: 'CIRCLED IDEOGRAPH ACCEPT',
-127568: 'CIRCLED IDEOGRAPH ADVANTAGE',
-127914: 'CIRCUS TENT',
-127750: 'CITYSCAPE AT DUSK',
-127916: 'CLAPPER BOARD',
-128079: 'CLAPPING HANDS SIGN',
-127867: 'CLINKING BEER MUGS',
-128203: 'CLIPBOARD',
-128343: 'CLOCK FACE EIGHT OCLOCK',
-128355: 'CLOCK FACE EIGHT-THIRTY',
-128346: 'CLOCK FACE ELEVEN OCLOCK',
-128358: 'CLOCK FACE ELEVEN-THIRTY',
-128340: 'CLOCK FACE FIVE OCLOCK',
-128352: 'CLOCK FACE FIVE-THIRTY',
-128339: 'CLOCK FACE FOUR OCLOCK',
-128351: 'CLOCK FACE FOUR-THIRTY',
-128344: 'CLOCK FACE NINE OCLOCK',
-128356: 'CLOCK FACE NINE-THIRTY',
-128336: 'CLOCK FACE ONE OCLOCK',
-128348: 'CLOCK FACE ONE-THIRTY',
-128342: 'CLOCK FACE SEVEN OCLOCK',
-128354: 'CLOCK FACE SEVEN-THIRTY',
-128341: 'CLOCK FACE SIX OCLOCK',
-128353: 'CLOCK FACE SIX-THIRTY',
-128345: 'CLOCK FACE TEN OCLOCK',
-128357: 'CLOCK FACE TEN-THIRTY',
-128338: 'CLOCK FACE THREE OCLOCK',
-128350: 'CLOCK FACE THREE-THIRTY',
-128347: 'CLOCK FACE TWELVE OCLOCK',
-128359: 'CLOCK FACE TWELVE-THIRTY',
-128337: 'CLOCK FACE TWO OCLOCK',
-128349: 'CLOCK FACE TWO-THIRTY',
-128259: 'CLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS',
-128257: 'CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS',
-128258: 'CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS WITH CIRCLED ONE OVERLAY',
-128213: 'CLOSED BOOK',
-128272: 'CLOSED LOCK WITH KEY',
-128234: 'CLOSED MAILBOX WITH LOWERED FLAG',
-128235: 'CLOSED MAILBOX WITH RAISED FLAG',
-127746: 'CLOSED UMBRELLA',
-127864: 'COCKTAIL GLASS',
-128165: 'COLLISION SYMBOL',
-7676: 'COMBINING DOUBLE INVERTED BREVE BELOW',
-127882: 'CONFETTI BALL',
-128534: 'CONFOUNDED FACE',
-128679: 'CONSTRUCTION SIGN',
-128119: 'CONSTRUCTION WORKER',
-127978: 'CONVENIENCE STORE',
-127834: 'COOKED RICE',
-127850: 'COOKIE',
-127859: 'COOKING',
-128145: 'COUPLE WITH HEART',
-128004: 'COW',
-128046: 'COW FACE',
-128179: 'CREDIT CARD',
-127769: 'CRESCENT MOON',
-128010: 'CROCODILE',
-10060: 'CROSS MARK',
-127884: 'CROSSED FLAGS',
-128081: 'CROWN',
-128575: 'CRYING CAT FACE',
-128546: 'CRYING FACE',
-128302: 'CRYSTAL BALL',
-10160: 'CURLY LOOP',
-128177: 'CURRENCY EXCHANGE',
-127835: 'CURRY AND RICE',
-127854: 'CUSTARD',
-128707: 'CUSTOMS',
-127744: 'CYCLONE',
-42592: 'CYRILLIC CAPITAL LETTER REVERSED TSE',
-1318: 'CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER',
-42593: 'CYRILLIC SMALL LETTER REVERSED TSE',
-1319: 'CYRILLIC SMALL LETTER SHHA WITH DESCENDER',
-128131: 'DANCER',
-127841: 'DANGO',
-128168: 'DASH SYMBOL',
-127795: 'DECIDUOUS TREE',
-128666: 'DELIVERY TRUCK',
-127980: 'DEPARTMENT STORE',
-2421: 'DEVANAGARI LETTER AW',
-2419: 'DEVANAGARI LETTER OE',
-2420: 'DEVANAGARI LETTER OOE',
-2422: 'DEVANAGARI LETTER UE',
-2423: 'DEVANAGARI LETTER UUE',
-2383: 'DEVANAGARI VOWEL SIGN AW',
-2362: 'DEVANAGARI VOWEL SIGN OE',
-2363: 'DEVANAGARI VOWEL SIGN OOE',
-2390: 'DEVANAGARI VOWEL SIGN UE',
-2391: 'DEVANAGARI VOWEL SIGN UUE',
-128160: 'DIAMOND SHAPE WITH A DOT INSIDE',
-127919: 'DIRECT HIT',
-128549: 'DISAPPOINTED BUT RELIEVED FACE',
-128542: 'DISAPPOINTED FACE',
-128565: 'DIZZY FACE',
-128171: 'DIZZY SYMBOL',
-128687: 'DO NOT LITTER SYMBOL',
-128021: 'DOG',
-128054: 'DOG FACE',
-128044: 'DOLPHIN',
-128682: 'DOOR',
-10175: 'DOUBLE CURLY LOOP',
-127849: 'DOUGHNUT',
-128315: 'DOWN-POINTING RED TRIANGLE',
-128317: 'DOWN-POINTING SMALL RED TRIANGLE',
-128009: 'DRAGON',
-128050: 'DRAGON FACE',
-128087: 'DRESS',
-128042: 'DROMEDARY CAMEL',
-128167: 'DROPLET',
-128192: 'DVD',
-128231: 'E-MAIL SYMBOL',
-128066: 'EAR',
-127805: 'EAR OF MAIZE',
-127806: 'EAR OF RICE',
-127758: 'EARTH GLOBE AMERICAS',
-127759: 'EARTH GLOBE ASIA-AUSTRALIA',
-127757: 'EARTH GLOBE EUROPE-AFRICA',
-128161: 'ELECTRIC LIGHT BULB',
-128268: 'ELECTRIC PLUG',
-128294: 'ELECTRIC TORCH',
-128024: 'ELEPHANT',
-128282: 'END WITH LEFTWARDS ARROW ABOVE',
-128233: 'ENVELOPE WITH DOWNWARDS ARROW ABOVE',
-4957: 'ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK',
-4958: 'ETHIOPIC COMBINING VOWEL LENGTH MARK',
-43816: 'ETHIOPIC SYLLABLE BBA',
-43819: 'ETHIOPIC SYLLABLE BBAA',
-43821: 'ETHIOPIC SYLLABLE BBE',
-43820: 'ETHIOPIC SYLLABLE BBEE',
-43818: 'ETHIOPIC SYLLABLE BBI',
-43822: 'ETHIOPIC SYLLABLE BBO',
-43817: 'ETHIOPIC SYLLABLE BBU',
-43808: 'ETHIOPIC SYLLABLE CCHHA',
-43811: 'ETHIOPIC SYLLABLE CCHHAA',
-43813: 'ETHIOPIC SYLLABLE CCHHE',
-43812: 'ETHIOPIC SYLLABLE CCHHEE',
-43810: 'ETHIOPIC SYLLABLE CCHHI',
-43814: 'ETHIOPIC SYLLABLE CCHHO',
-43809: 'ETHIOPIC SYLLABLE CCHHU',
-43787: 'ETHIOPIC SYLLABLE DDHAA',
-43789: 'ETHIOPIC SYLLABLE DDHE',
-43788: 'ETHIOPIC SYLLABLE DDHEE',
-43786: 'ETHIOPIC SYLLABLE DDHI',
-43790: 'ETHIOPIC SYLLABLE DDHO',
-43785: 'ETHIOPIC SYLLABLE DDHU',
-43795: 'ETHIOPIC SYLLABLE DZAA',
-43797: 'ETHIOPIC SYLLABLE DZE',
-43796: 'ETHIOPIC SYLLABLE DZEE',
-43794: 'ETHIOPIC SYLLABLE DZI',
-43798: 'ETHIOPIC SYLLABLE DZO',
-43793: 'ETHIOPIC SYLLABLE DZU',
-43779: 'ETHIOPIC SYLLABLE TTHAA',
-43781: 'ETHIOPIC SYLLABLE TTHE',
-43780: 'ETHIOPIC SYLLABLE TTHEE',
-43778: 'ETHIOPIC SYLLABLE TTHI',
-43782: 'ETHIOPIC SYLLABLE TTHO',
-43777: 'ETHIOPIC SYLLABLE TTHU',
-127984: 'EUROPEAN CASTLE',
-127972: 'EUROPEAN POST OFFICE',
-127794: 'EVERGREEN TREE',
-128125: 'EXTRATERRESTRIAL ALIEN',
-128083: 'EYEGLASSES',
-128064: 'EYES',
-128134: 'FACE MASSAGE',
-128523: 'FACE SAVOURING DELICIOUS FOOD',
-128561: 'FACE SCREAMING IN FEAR',
-128536: 'FACE THROWING A KISS',
-128531: 'FACE WITH COLD SWEAT',
-128548: 'FACE WITH LOOK OF TRIUMPH',
-128567: 'FACE WITH MEDICAL MASK',
-128581: 'FACE WITH NO GOOD GESTURE',
-128582: 'FACE WITH OK GESTURE',
-128560: 'FACE WITH OPEN MOUTH AND COLD SWEAT',
-128541: 'FACE WITH STUCK-OUT TONGUE AND TIGHTLY-CLOSED EYES',
-128540: 'FACE WITH STUCK-OUT TONGUE AND WINKING EYE',
-128514: 'FACE WITH TEARS OF JOY',
-128566: 'FACE WITHOUT MOUTH',
-127981: 'FACTORY',
-127810: 'FALLEN LEAF',
-128106: 'FAMILY',
-127877: 'FATHER CHRISTMAS',
-128224: 'FAX MACHINE',
-128552: 'FEARFUL FACE',
-127905: 'FERRIS WHEEL',
-128193: 'FILE FOLDER',
-128293: 'FIRE',
-128658: 'FIRE ENGINE',
-127879: 'FIREWORK SPARKLER',
-127878: 'FIREWORKS',
-127763: 'FIRST QUARTER MOON SYMBOL',
-127771: 'FIRST QUARTER MOON WITH FACE',
-128031: 'FISH',
-127845: 'FISH CAKE WITH SWIRL DESIGN',
-127907: 'FISHING POLE AND FISH',
-128074: 'FISTED HAND SIGN',
-128170: 'FLEXED BICEPS',
-128190: 'FLOPPY DISK',
-127924: 'FLOWER PLAYING CARDS',
-128563: 'FLUSHED FACE',
-127745: 'FOGGY',
-128099: 'FOOTPRINTS',
-127860: 'FORK AND KNIFE',
-127808: 'FOUR LEAF CLOVER',
-127839: 'FRENCH FRIES',
-127844: 'FRIED SHRIMP',
-128056: 'FROG FACE',


More information about the pypy-commit mailing list