summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changes552
-rwxr-xr-xConfigure86
-rw-r--r--INSTALL18
-rw-r--r--MANIFEST35
-rw-r--r--Porting/Glossary2
-rw-r--r--Porting/config.sh32
-rw-r--r--Porting/config_H35
-rw-r--r--config_h.SH21
-rw-r--r--configure.com60
-rw-r--r--doio.c2
-rw-r--r--dump.c46
-rw-r--r--embed.h44
-rwxr-xr-xembed.pl18
-rw-r--r--embedvar.h12
-rw-r--r--epoc/config.h162
-rw-r--r--ext/B/B.pm5
-rw-r--r--ext/B/B.xs16
-rw-r--r--ext/B/B/Bblock.pm1
-rw-r--r--ext/B/B/Debug.pm1
-rw-r--r--ext/B/B/Terse.pm1
-rw-r--r--ext/B/Makefile.PL3
-rw-r--r--ext/B/defsubs_h.PL (renamed from ext/B/defsubs.h.PL)1
-rw-r--r--ext/B/typemap10
-rw-r--r--ext/DB_File/Changes7
-rw-r--r--ext/DB_File/DB_File.pm46
-rw-r--r--ext/DB_File/DB_File.xs438
-rw-r--r--ext/DB_File/Makefile.PL8
-rw-r--r--ext/DB_File/dbinfo21
-rw-r--r--ext/DB_File/typemap9
-rw-r--r--ext/DB_File/version.c70
-rw-r--r--ext/Devel/DProf/DProf.xs4
-rw-r--r--ext/DynaLoader/DynaLoader_pm.PL2
-rw-r--r--ext/DynaLoader/dl_aix.xs4
-rw-r--r--ext/DynaLoader/dl_beos.xs4
-rw-r--r--ext/DynaLoader/dl_cygwin.xs4
-rw-r--r--ext/DynaLoader/dl_dld.xs4
-rw-r--r--ext/DynaLoader/dl_dlopen.xs4
-rw-r--r--ext/DynaLoader/dl_hpux.xs4
-rw-r--r--ext/DynaLoader/dl_mpeix.xs4
-rw-r--r--ext/DynaLoader/dl_next.xs4
-rw-r--r--ext/DynaLoader/dl_rhapsody.xs4
-rw-r--r--ext/DynaLoader/dl_vmesa.xs4
-rw-r--r--ext/DynaLoader/dl_vms.xs4
-rw-r--r--ext/ODBM_File/ODBM_File.xs2
-rw-r--r--ext/Opcode/Safe.pm2
-rw-r--r--ext/POSIX/POSIX.xs4
-rw-r--r--hints/irix_6.sh1
-rw-r--r--hints/unicos.sh2
-rw-r--r--intrpvar.h2
-rwxr-xr-xjpl/JNI/Closer.java9
-rw-r--r--jpl/JNI/JNI.pm49
-rw-r--r--jpl/JNI/JNI.xs1191
-rw-r--r--jpl/JNI/JNIConfig13
-rw-r--r--jpl/JNI/JNIConfig.Win3221
-rw-r--r--jpl/JNI/JNIConfig.kaffe26
-rw-r--r--jpl/JNI/JNIConfig.noembed25
-rw-r--r--jpl/JNI/JNIConfig.standard13
-rw-r--r--jpl/JNI/Makefile.PL193
-rw-r--r--jpl/JNI/test.pl40
-rw-r--r--jpl/JNI/typemap30
-rw-r--r--jpl/JNI/typemap.gcc386
-rw-r--r--jpl/JNI/typemap.win32386
-rw-r--r--jpl/JPL/Makefile.PL42
-rw-r--r--jpl/PerlInterpreter/Makefile.PL8
-rw-r--r--jpl/PerlInterpreter/PerlInterpreter.c45
-rw-r--r--jpl/PerlInterpreter/PerlInterpreter.h2
-rw-r--r--jpl/README163
-rw-r--r--jpl/SETVARS.PL11
-rw-r--r--jpl/Sample/Makefile.PL12
-rwxr-xr-xjpl/install-jpl20
-rw-r--r--lib/Benchmark.pm36
-rw-r--r--lib/Exporter/Heavy.pm2
-rw-r--r--lib/ExtUtils/MM_Unix.pm28
-rw-r--r--lib/ExtUtils/MM_VMS.pm210
-rw-r--r--lib/ExtUtils/MakeMaker.pm2
-rw-r--r--lib/ExtUtils/typemap12
-rw-r--r--lib/File/Spec/Functions.pm6
-rw-r--r--lib/File/Spec/VMS.pm22
-rw-r--r--lib/Pod/Functions.pm2
-rw-r--r--lib/Time/Local.pm3
-rw-r--r--lib/byte.pm33
-rw-r--r--lib/byte_heavy.pl8
-rw-r--r--lib/perl5db.pl12
-rw-r--r--lib/unicode/ArabLink.pl16
-rw-r--r--lib/unicode/ArabLnkGrp.pl87
-rw-r--r--lib/unicode/ArabShap.txt170
-rw-r--r--lib/unicode/Bidirectional.pl16
-rw-r--r--lib/unicode/Block.pl27
-rw-r--r--[-rwxr-xr-x]lib/unicode/Blocks.txt (renamed from lib/unicode/blocks.txt)28
-rw-r--r--lib/unicode/Category.pl51
-rw-r--r--lib/unicode/CombiningClass.pl2
-rw-r--r--lib/unicode/CompExcl.txt143
-rw-r--r--lib/unicode/Decomposition.pl7
-rw-r--r--lib/unicode/EAWidth.txt10636
-rw-r--r--lib/unicode/In/ArabicPresentationForms-B.pl2
-rw-r--r--lib/unicode/In/Specials.pl2
-rw-r--r--lib/unicode/In/Tibetan.pl2
-rw-r--r--[-rwxr-xr-x]lib/unicode/Index.txt (renamed from lib/unicode/index2.txt)1723
-rw-r--r--lib/unicode/Is/Alnum.pl5
-rw-r--r--lib/unicode/Is/Alpha.pl5
-rw-r--r--lib/unicode/Is/BidiCS.pl1
-rw-r--r--lib/unicode/Is/BidiL.pl6
-rw-r--r--lib/unicode/Is/BidiON.pl8
-rw-r--r--lib/unicode/Is/BidiWS.pl1
-rw-r--r--lib/unicode/Is/DCcompat.pl3
-rw-r--r--lib/unicode/Is/DecoCanon.pl2
-rw-r--r--lib/unicode/Is/DecoCompat.pl3
-rw-r--r--lib/unicode/Is/L.pl5
-rw-r--r--lib/unicode/Is/Ll.pl7
-rw-r--r--lib/unicode/Is/Lo.pl9
-rw-r--r--lib/unicode/Is/Lower.pl7
-rw-r--r--lib/unicode/Is/Lu.pl2
-rw-r--r--lib/unicode/Is/Pd.pl1
-rw-r--r--lib/unicode/Is/Po.pl3
-rw-r--r--lib/unicode/Is/S.pl5
-rw-r--r--lib/unicode/Is/Sm.pl9
-rw-r--r--lib/unicode/Is/So.pl20
-rw-r--r--lib/unicode/Is/Upper.pl2
-rw-r--r--lib/unicode/Is/Word.pl5
-rw-r--r--[-rwxr-xr-x]lib/unicode/Jamo-2.txt (renamed from lib/unicode/jamo2.txt)2
-rw-r--r--lib/unicode/JamoShort.pl2
-rw-r--r--lib/unicode/LineBrk.txt10643
-rw-r--r--[-rwxr-xr-x]lib/unicode/Names.txt (renamed from lib/unicode/names2.txt)13643
-rw-r--r--lib/unicode/Props.txt3640
-rw-r--r--lib/unicode/ReadMe.txt28
-rw-r--r--lib/unicode/SpecCase.txt219
-rw-r--r--lib/unicode/UnicodeData-Latest.txt150
-rwxr-xr-xlib/unicode/arabshp.txt134
-rwxr-xr-xlib/unicode/mktables.PL6
-rwxr-xr-xlib/unicode/props2.txt51
-rwxr-xr-xlib/unicode/readme.txt301
-rw-r--r--malloc.c34
-rw-r--r--objXSUB.h48
-rw-r--r--opcode.h154
-rwxr-xr-xopcode.pl175
-rw-r--r--perl.c5
-rw-r--r--perl.h36
-rw-r--r--perlapi.c78
-rw-r--r--pod/perldata.pod27
-rw-r--r--pod/perldelta.pod64
-rw-r--r--pod/perldiag.pod34
-rw-r--r--pod/perlfunc.pod7
-rw-r--r--pod/perlguts.pod12
-rw-r--r--pod/perlhist.pod22
-rw-r--r--pod/perllexwarn.pod4
-rw-r--r--pod/perlsyn.pod2
-rw-r--r--pp.c4
-rw-r--r--pp_ctl.c10
-rw-r--r--pp_hot.c18
-rw-r--r--pp_sys.c7
-rw-r--r--proto.h14
-rw-r--r--regexec.c189
-rw-r--r--sv.c91
-rw-r--r--sv.h91
-rwxr-xr-xt/io/dup.t15
-rwxr-xr-xt/io/open.t7
-rwxr-xr-xt/lib/bigfltpm.t (renamed from t/lib/bigfloatpm.t)0
-rwxr-xr-xt/lib/db-btree.t6
-rw-r--r--t/lib/syslfs.t45
-rwxr-xr-xt/op/arith.t15
-rwxr-xr-xt/op/groups.t4
-rw-r--r--t/op/lfs.t38
-rwxr-xr-xt/op/misc.t2
-rwxr-xr-xt/op/pat.t24
-rwxr-xr-xt/op/sprintf.t4
-rwxr-xr-xt/pragma/locale.t6
-rw-r--r--t/pragma/warn/op32
-rw-r--r--t/pragma/warn/pp_hot29
-rw-r--r--t/pragma/warn/sv46
-rw-r--r--thrdvar.h4
-rw-r--r--toke.c8
-rw-r--r--utf8.h1
-rw-r--r--vms/descrip_mms.template269
-rw-r--r--vms/gen_shrfls.pl49
-rw-r--r--vms/perly_c.vms6
-rw-r--r--vms/subconfigure.com6
-rw-r--r--vms/vms.c8
-rw-r--r--vms/vmsish.h4
-rw-r--r--win32/config_sh.PL9
179 files changed, 40975 insertions, 7514 deletions
diff --git a/Changes b/Changes
index 6fd3e3c455..264c56b7d3 100644
--- a/Changes
+++ b/Changes
@@ -79,6 +79,558 @@ Version 5.005_62 Development release working toward 5.006
----------------
____________________________________________________________________________
+[ 4188] By: jhi on 1999/09/17 21:30:08
+ Log: Pick up the typo fix.
+ Branch: cfgperl
+ !> t/io/open.t
+____________________________________________________________________________
+[ 4187] By: gsar on 1999/09/17 21:13:55
+ Log: fix typo
+ Branch: perl
+ ! t/io/open.t
+____________________________________________________________________________
+[ 4186] By: gsar on 1999/09/17 20:57:29
+ Log: integrate cfgperl change
+ Branch: perl
+ !> vms/subconfigure.com
+____________________________________________________________________________
+[ 4185] By: jhi on 1999/09/17 20:46:41
+ Log: Re-apply applicable parts of #3993, #3994, and #3995.
+ Branch: cfgperl
+ ! vms/subconfigure.com
+____________________________________________________________________________
+[ 4184] By: gsar on 1999/09/17 20:26:02
+ Log: integrate cfgperl contents into mainline
+ Branch: perl
+ +> lib/unicode/ArabShap.txt lib/unicode/Blocks.txt
+ +> lib/unicode/CompExcl.txt lib/unicode/EAWidth.txt
+ +> lib/unicode/Index.txt lib/unicode/Jamo-2.txt
+ +> lib/unicode/LineBrk.txt lib/unicode/Names.txt
+ +> lib/unicode/Props.txt lib/unicode/ReadMe.txt
+ +> lib/unicode/SpecCase.txt
+ - lib/unicode/arabshp.txt lib/unicode/blocks.txt
+ - lib/unicode/index2.txt lib/unicode/jamo2.txt
+ - lib/unicode/names2.txt lib/unicode/props2.txt
+ - lib/unicode/readme.txt
+ !> (integrate 73 files)
+____________________________________________________________________________
+[ 4183] By: jhi on 1999/09/17 20:25:51
+ Log: Integrate with Sarathy.
+ Branch: cfgperl
+ !> configure.com ext/ByteLoader/byterun.h
+ !> ext/DynaLoader/DynaLoader_pm.PL lib/ExtUtils/MM_VMS.pm
+ !> lib/File/Spec/VMS.pm pod/perlhist.pod t/io/open.t
+ !> vms/descrip_mms.template vms/gen_shrfls.pl vms/perly_c.vms
+ !> vms/perly_h.vms vms/subconfigure.com vms/vms.c vms/vmsish.h
+____________________________________________________________________________
+[ 4182] By: gsar on 1999/09/17 20:16:28
+ Log: integrate vmsperl contents into mainline (where VMS files conflicted,
+ vmsperl contents have prevailed)
+ Branch: perl
+ !> configure.com ext/ByteLoader/byterun.h
+ !> ext/DynaLoader/DynaLoader_pm.PL lib/ExtUtils/MM_VMS.pm
+ !> lib/File/Spec/VMS.pm t/io/open.t vms/descrip_mms.template
+ !> vms/gen_shrfls.pl vms/perly_c.vms vms/perly_h.vms
+ !> vms/subconfigure.com vms/vms.c vms/vmsish.h
+____________________________________________________________________________
+[ 4181] By: jhi on 1999/09/17 20:12:37
+ Log: From: Michael G Schwern <schwern@pobox.com>
+ To: perl5-porters@perl.org
+ Subject: [PATCH 5.005_60 lib/Exporter/Heavy.pm] export_to_level()
+ Date: Thu, 19 Aug 1999 21:30:01 -0400
+ Message-ID: <19990819213001.A22512@athens.aocn.com>
+ Branch: cfgperl
+ ! lib/Exporter/Heavy.pm
+____________________________________________________________________________
+[ 4180] By: gsar on 1999/09/17 20:11:00
+ Log: perlhist additions
+ Branch: perl
+ ! pod/perlhist.pod
+____________________________________________________________________________
+[ 4179] By: jhi on 1999/09/17 20:08:00
+ Log: The change #4176 should've undone only the test, not the code patch.
+ Branch: cfgperl
+ ! doio.c
+____________________________________________________________________________
+[ 4178] By: jhi on 1999/09/17 20:06:08
+ Log: From: Ian Phillipps <ian@dial.pipex.com>
+ To: Hans GINZEL <hgin2088@mail.kolej.mff.cuni.cz>, perl5-porters@perl.org
+ Subject: [PATCH 5.005_59] Re: [ID 19990820.007] Small typo in perlsyn.pod
+ Date: Sat, 21 Aug 1999 12:36:12 +0100
+ Message-ID: <19990821123612.A9955@homer.diplex.co.uk>
+ Branch: cfgperl
+ ! pod/perlsyn.pod
+____________________________________________________________________________
+[ 4177] By: jhi on 1999/09/17 20:00:19
+ Log: More descriptive names for operators.
+
+ From: Michael G Schwern <schwern@pobox.com>
+ To: Ilya Zakharevich <ilya@math.ohio-state.edu>
+ Cc: perl5-porters@perl.org
+ Subject: Re: [ID 19990817.009] [BUG 5.005_60 & 5.005_03] == reported as eq in
+ Date: Tue, 17 Aug 1999 18:35:45 -0400
+ Message-ID: <19990817183545.A23073@toldyouso.com>
+
+ From: Michael G Schwern <schwern@pobox.com>
+ To: perl5-porters@perl.org
+ Subject: [PATCH 5.005_60 opcode.pl and friends] Improved opcode descriptions
+ Date: Wed, 18 Aug 1999 03:53:38 -0400
+ Message-ID: <19990818035337.A31505@athens.aocn.com>
+ Branch: cfgperl
+ ! opcode.h opcode.pl pp.sym pp_proto.h sv.c t/op/misc.t
+ ! t/pragma/warn/op t/pragma/warn/sv
+____________________________________________________________________________
+[ 4176] By: jhi on 1999/09/17 18:19:18
+ Log: Take away the infamous io/dup.t #7.
+ It seems there simply is no way to portably
+ "flush" an input file handle.
+ Branch: cfgperl
+ ! doio.c t/io/dup.t
+____________________________________________________________________________
+[ 4175] By: jhi on 1999/09/17 14:45:08
+ Log: From: Barrie Slaymaker <barries@slaysys.com>
+ To: perl5-porters@perl.org
+ Subject: [PATCH 5.005_61] Benchmark: screwed patch format, try this instead
+ Date: Fri, 17 Sep 1999 11:16:48 -0400
+ Message-Id: <199909171516.LAA30887@jester.slaysys.com>
+ Branch: cfgperl
+ ! lib/Benchmark.pm
+____________________________________________________________________________
+[ 4174] By: jhi on 1999/09/17 14:07:16
+ Log: UNICOS does support large files but doesn't support sparse files
+ so we cannot easily test for large file support.
+ Branch: cfgperl
+ ! t/lib/syslfs.t t/op/lfs.t
+____________________________________________________________________________
+[ 4173] By: jhi on 1999/09/17 14:03:44
+ Log: UNICOS has sloppy division/modulo for floating point numbers.
+ Branch: cfgperl
+ ! t/op/arith.t
+____________________________________________________________________________
+[ 4172] By: jhi on 1999/09/17 13:47:49
+ Log: Portable blocksize (replaces #4171).
+ Branch: cfgperl
+ ! t/lib/syslfs.t t/op/lfs.t
+____________________________________________________________________________
+[ 4171] By: jhi on 1999/09/17 13:08:54
+ Log: (replaced by #4172)
+ Branch: cfgperl
+ ! t/lib/syslfs.t t/op/lfs.t
+____________________________________________________________________________
+[ 4170] By: jhi on 1999/09/17 12:59:11
+ Log: Detypo #4169.
+ Branch: cfgperl
+ ! t/lib/syslfs.t t/op/lfs.t
+____________________________________________________________________________
+[ 4169] By: jhi on 1999/09/17 12:16:34
+ Log: Diagnose possible quota limits.
+ Branch: cfgperl
+ ! t/lib/syslfs.t t/op/lfs.t
+____________________________________________________________________________
+[ 4168] By: jhi on 1999/09/17 12:10:43
+ Log: UNICOS doesn't have getpgid(). Or, at least 9.0.1ai
+ doesn't have one that wouldn't cause SIGSYS. UNICOS
+ does have getpgrp(void) so Perl getpgrp() is happy.
+ Branch: cfgperl
+ ! hints/unicos.sh
+____________________________________________________________________________
+[ 4167] By: jhi on 1999/09/17 11:49:30
+ Log: Filesystem quotas may stop you from using large files.
+ Branch: cfgperl
+ ! pod/perldelta.pod t/lib/syslfs.t t/op/lfs.t
+____________________________________________________________________________
+[ 4166] By: jhi on 1999/09/17 11:36:01
+ Log: Too strict pattern for parsing group lists.
+ Branch: cfgperl
+ ! t/op/groups.t
+____________________________________________________________________________
+[ 4165] By: jhi on 1999/09/17 09:06:18
+ Log: Configure maintenance. It's sigaction.sa_flags
+ and the Glossary regen'ed.
+ Branch: cfgperl
+ ! Configure Porting/Glossary Porting/config.sh Porting/config_H
+ ! config_h.SH
+ Branch: metaconfig
+ ! U/compline/d_sigaction.U
+____________________________________________________________________________
+[ 4164] By: jhi on 1999/09/15 06:57:51
+ Log: Integrate with Sarathy.
+ Branch: cfgperl
+ +> jpl/JNI/Closer.java jpl/JNI/JNIConfig jpl/JNI/JNIConfig.Win32
+ +> jpl/JNI/JNIConfig.kaffe jpl/JNI/JNIConfig.noembed
+ +> jpl/JNI/JNIConfig.standard jpl/JNI/typemap.gcc
+ +> jpl/JNI/typemap.win32 jpl/SETVARS.PL
+ !> Changes MANIFEST embed.h embed.pl jpl/JNI/JNI.pm
+ !> jpl/JNI/JNI.xs jpl/JNI/Makefile.PL jpl/JNI/test.pl
+ !> jpl/JNI/typemap jpl/JPL/Makefile.PL
+ !> jpl/PerlInterpreter/Makefile.PL
+ !> jpl/PerlInterpreter/PerlInterpreter.c
+ !> jpl/PerlInterpreter/PerlInterpreter.h jpl/README
+ !> jpl/Sample/Makefile.PL jpl/install-jpl
+ !> lib/File/Spec/Functions.pm pod/perlhist.pod regexec.c
+ !> t/op/pat.t
+____________________________________________________________________________
+[ 4163] By: gsar on 1999/09/15 05:17:27
+ Log: add :ALL export tag (from Chris Nandor <pudge@pobox.com>)
+ Branch: perl
+ ! lib/File/Spec/Functions.pm
+____________________________________________________________________________
+[ 4162] By: gsar on 1999/09/15 05:09:14
+ Log: addendum to change#4136 (from Robin Barker <rmb1@cise.npl.co.uk>)
+ Branch: perl
+ ! Changes embed.h embed.pl
+____________________________________________________________________________
+[ 4161] By: gsar on 1999/09/15 04:08:25
+ Log: missing perlhist dates from Jeff Okamoto
+ Branch: perl
+ ! pod/perlhist.pod
+____________________________________________________________________________
+[ 4160] By: gsar on 1999/09/15 03:13:08
+ Log: jpl tweak
+ Branch: perl
+ ! MANIFEST jpl/JNI/Makefile.PL
+____________________________________________________________________________
+[ 4159] By: gsar on 1999/09/15 02:57:08
+ Log: update to JPL snapshot v09141999, with minor tweaks (from Brian
+ Jepson <bjepson@home.com>)
+ Branch: perl
+ + jpl/JNI/Closer.java jpl/JNI/JNIConfig jpl/JNI/JNIConfig.Win32
+ + jpl/JNI/JNIConfig.kaffe jpl/JNI/JNIConfig.noembed
+ + jpl/JNI/JNIConfig.standard jpl/JNI/typemap.gcc
+ + jpl/JNI/typemap.win32 jpl/SETVARS.PL
+ ! jpl/JNI/JNI.pm jpl/JNI/JNI.xs jpl/JNI/Makefile.PL
+ ! jpl/JNI/test.pl jpl/JNI/typemap jpl/JPL/Makefile.PL
+ ! jpl/PerlInterpreter/Makefile.PL
+ ! jpl/PerlInterpreter/PerlInterpreter.c
+ ! jpl/PerlInterpreter/PerlInterpreter.h jpl/README
+ ! jpl/Sample/Makefile.PL jpl/install-jpl
+____________________________________________________________________________
+[ 4158] By: gsar on 1999/09/15 01:27:14
+ Log: From: Ilya Zakharevich <ilya@math.ohio-state.edu>
+ Date: Tue, 14 Sep 1999 21:26:15 EDT
+ Message-Id: <199909150126.VAA24720@monk.mps.ohio-state.edu>
+ Subject: [PATCH 5.005_58+] Re: [ID 19990914.001] Perl_re_intuit_start() hangs in a loop
+ Branch: perl
+ ! regexec.c t/op/pat.t
+____________________________________________________________________________
+[ 4157] By: jhi on 1999/09/14 21:18:09
+ Log: config.h will define USE_64_BITS if need be.
+ Branch: cfgperl
+ ! hints/irix_6.sh
+____________________________________________________________________________
+[ 4156] By: jhi on 1999/09/14 20:30:00
+ Log: Change #4149 necessitates also a small code change.
+ Branch: cfgperl
+ ! ext/B/defsubs_h.PL
+____________________________________________________________________________
+[ 4155] By: jhi on 1999/09/14 20:15:53
+ Log: Update EPOC libdir names.
+ Branch: cfgperl
+ ! epoc/config.h
+____________________________________________________________________________
+[ 4154] By: jhi on 1999/09/14 20:13:41
+ Log: Obsolete epoc/config.h caused #4153 to re-introduce already
+ deceased HAS.*DBM.*64 mumblings.
+ Branch: cfgperl
+ ! Configure config_h.SH epoc/config.h
+____________________________________________________________________________
+[ 4153] By: jhi on 1999/09/14 20:04:53
+ Log: Configure nits.
+ Branch: cfgperl
+ ! Configure config_h.SH
+ Branch: metaconfig
+ ! U/compline/d_sigaction.U U/threads/i_pthread.U
+____________________________________________________________________________
+[ 4152] By: jhi on 1999/09/14 19:30:22
+ Log: Integrate with Sarathy.
+ Branch: cfgperl
+ +> ext/B/defsubs_h.PL t/lib/bigfltpm.t
+ - ext/B/defsubs.h.PL t/lib/bigfloatpm.t
+ !> INSTALL MANIFEST ext/B/Makefile.PL pod/perldiag.pod
+ !> win32/config_sh.PL
+____________________________________________________________________________
+[ 4151] By: jhi on 1999/09/14 10:25:01
+ Log: Update Unicode database and recompute the tables.
+ Rename the .txt files to be more Unicode 3.0-like.
+ Unihan-3.0.txt not included because it is 16 MB.
+ syllables.txt is manually maintained.
+ See ReadMe.txt for description of the .txt files.
+ (not all of them are used yet)
+ Branch: cfgperl
+ + lib/unicode/ArabShap.txt lib/unicode/Blocks.txt
+ + lib/unicode/CompExcl.txt lib/unicode/EAWidth.txt
+ + lib/unicode/Index.txt lib/unicode/Jamo-2.txt
+ + lib/unicode/LineBrk.txt lib/unicode/Names.txt
+ + lib/unicode/Props.txt lib/unicode/ReadMe.txt
+ + lib/unicode/SpecCase.txt
+ - lib/unicode/arabshp.txt lib/unicode/blocks.txt
+ - lib/unicode/index2.txt lib/unicode/jamo2.txt
+ - lib/unicode/names2.txt lib/unicode/props2.txt
+ - lib/unicode/readme.txt
+ ! MANIFEST lib/unicode/ArabLink.pl lib/unicode/ArabLnkGrp.pl
+ ! lib/unicode/Bidirectional.pl lib/unicode/Block.pl
+ ! lib/unicode/Category.pl lib/unicode/CombiningClass.pl
+ ! lib/unicode/Decomposition.pl
+ ! lib/unicode/In/ArabicPresentationForms-B.pl
+ ! lib/unicode/In/Specials.pl lib/unicode/In/Tibetan.pl
+ ! lib/unicode/Is/Alnum.pl lib/unicode/Is/Alpha.pl
+ ! lib/unicode/Is/BidiCS.pl lib/unicode/Is/BidiL.pl
+ ! lib/unicode/Is/BidiON.pl lib/unicode/Is/BidiWS.pl
+ ! lib/unicode/Is/DCcompat.pl lib/unicode/Is/DecoCanon.pl
+ ! lib/unicode/Is/DecoCompat.pl lib/unicode/Is/L.pl
+ ! lib/unicode/Is/Ll.pl lib/unicode/Is/Lo.pl
+ ! lib/unicode/Is/Lower.pl lib/unicode/Is/Lu.pl
+ ! lib/unicode/Is/Pd.pl lib/unicode/Is/Po.pl lib/unicode/Is/S.pl
+ ! lib/unicode/Is/Sm.pl lib/unicode/Is/So.pl
+ ! lib/unicode/Is/Upper.pl lib/unicode/Is/Word.pl
+ ! lib/unicode/JamoShort.pl lib/unicode/UnicodeData-Latest.txt
+ ! lib/unicode/mktables.PL
+____________________________________________________________________________
+[ 4150] By: gsar on 1999/09/14 09:31:57
+ Log: INSTALL tweak
+ Branch: perl
+ ! INSTALL
+____________________________________________________________________________
+[ 4149] By: gsar on 1999/09/14 09:00:45
+ Log: change some filenames to be 8.3-friendly
+ Branch: perl
+ +> ext/B/defsubs_h.PL t/lib/bigfltpm.t
+ - ext/B/defsubs.h.PL t/lib/bigfloatpm.t
+ ! MANIFEST ext/B/Makefile.PL pod/perldiag.pod
+____________________________________________________________________________
+[ 4148] By: gsar on 1999/09/14 08:35:00
+ Log: win32 config tweak (suggested by Greg Chapman <glc@well.com>)
+ Branch: perl
+ ! win32/config_sh.PL
+____________________________________________________________________________
+[ 4147] By: jhi on 1999/09/14 08:07:49
+ Log: Not that UVSIZE normally differs that much from IVSIZE...
+ Branch: cfgperl
+ ! perl.h
+____________________________________________________________________________
+[ 4146] By: jhi on 1999/09/14 08:04:40
+ Log: Integrate with Sarathy.
+ Branch: cfgperl
+ !> Changes ext/DB_File/DB_File.xs
+____________________________________________________________________________
+[ 4145] By: jhi on 1999/09/14 07:10:02
+ Log: I_PTHREAD was PTHREADEAD.
+ Branch: cfgperl
+ ! Configure config_h.SH
+ Branch: metaconfig
+ ! U/threads/i_pthread.U
+____________________________________________________________________________
+[ 4144] By: gsar on 1999/09/14 06:46:47
+ Log: change#4113 was missing DB_File.xs changes
+ Branch: perl
+ ! ext/DB_File/DB_File.xs
+____________________________________________________________________________
+[ 4143] By: jhi on 1999/09/13 20:16:20
+ Log: Small doc and whitespace edits.
+ Branch: cfgperl
+ ! ext/DynaLoader/dl_aix.xs ext/DynaLoader/dl_beos.xs
+ ! ext/DynaLoader/dl_cygwin.xs ext/DynaLoader/dl_dld.xs
+ ! ext/DynaLoader/dl_hpux.xs ext/DynaLoader/dl_mpeix.xs
+ ! ext/DynaLoader/dl_next.xs ext/DynaLoader/dl_rhapsody.xs
+ ! ext/DynaLoader/dl_vmesa.xs ext/DynaLoader/dl_vms.xs
+ ! pod/perldelta.pod
+____________________________________________________________________________
+[ 4142] By: gsar on 1999/09/13 19:32:31
+ Log: integrate cfgperl contents into mainline, update Changes
+ Branch: perl
+ +> ext/DB_File/version.c
+ ! Changes
+ !> (integrate 44 files)
+____________________________________________________________________________
+[ 4141] By: jhi on 1999/09/13 16:16:56
+ Log: Scan for <pthread.h> always.
+ Branch: cfgperl
+ ! Configure config_h.SH perl.h
+ Branch: metaconfig
+ ! U/threads/i_pthread.U
+____________________________________________________________________________
+[ 4140] By: jhi on 1999/09/13 16:00:08
+ Log: Integrate with Sarathy.
+ Branch: cfgperl
+ !> (integrate 27 files)
+____________________________________________________________________________
+[ 4139] By: jhi on 1999/09/13 15:35:18
+ Log: Add -A option to Configure to diddle with variables
+ after the hints file has been applied.
+ Branch: cfgperl
+ ! Configure config_h.SH
+ Branch: metaconfig
+ ! U/modified/Oldconfig.U U/modified/Options.U
+____________________________________________________________________________
+[ 4138] By: jhi on 1999/09/13 13:42:56
+ Log: Change #4136 edited DynaLoader.xs which is kind of fruitless.
+ Branch: cfgperl
+ ! ext/DynaLoader/dl_aix.xs ext/DynaLoader/dl_beos.xs
+ ! ext/DynaLoader/dl_cygwin.xs ext/DynaLoader/dl_dld.xs
+ ! ext/DynaLoader/dl_hpux.xs ext/DynaLoader/dl_mpeix.xs
+ ! ext/DynaLoader/dl_next.xs ext/DynaLoader/dl_rhapsody.xs
+ ! ext/DynaLoader/dl_vmesa.xs ext/DynaLoader/dl_vms.xs
+____________________________________________________________________________
+[ 4137] By: jhi on 1999/09/13 13:25:31
+ Log: Applying change #4136 manually introduced patch residue.
+ Branch: cfgperl
+ ! perl.h
+____________________________________________________________________________
+[ 4136] By: jhi on 1999/09/13 13:23:04
+ Log: Replace change #4100 with
+ From: Robin Barker <rmb1@cise.npl.co.uk>
+ To: gsar@activestate.com
+ Cc: perl5-porters@perl.org
+ Subject: Re: [ID 19990907.004] [PATCH perl5.005_61] compiler warnings with -Duse64bits
+ Date: Mon, 13 Sep 1999 14:15:11 +0100 (BST)
+ Message-Id: <199909131315.OAA24012@tempest.npl.co.uk>
+ Branch: cfgperl
+ ! doio.c dump.c ext/B/B.xs ext/B/typemap
+ ! ext/ByteLoader/bytecode.h ext/Devel/DProf/DProf.xs
+ ! ext/DynaLoader/dl_dlopen.xs ext/ODBM_File/ODBM_File.xs
+ ! ext/POSIX/POSIX.xs lib/ExtUtils/typemap malloc.c perl.h pp.c
+ ! pp_ctl.c pp_hot.c pp_sys.c sv.c
+____________________________________________________________________________
+[ 4135] By: jhi on 1999/09/13 10:22:31
+ Log: From: Ilya Zakharevich <ilya@math.ohio-state.edu>
+ To: perl5-porters@perl.org (Mailing list Perl5)
+ Subject: [PATCH 5.005_61] MakeMaker supports uninstalled Perls
+ Date: Sat, 11 Sep 1999 05:31:03 -0400 (EDT)
+ Message-Id: <199909110931.FAA11036@monk.mps.ohio-state.edu>
+
+ From: andreas.koenig@anima.de (Andreas J. Koenig)
+ To: Ilya Zakharevich <ilya@math.ohio-state.edu>
+ Cc: perl5-porters@perl.org (Mailing list Perl5)
+ Subject: Re: [PATCH 5.005_61] MakeMaker supports uninstalled Perls
+ Date: 11 Sep 1999 15:36:26 +0200
+ Message-ID: <sfc906dr2n9.fsf@hohenstaufen.in-berlin.de>
+ Branch: cfgperl
+ ! lib/ExtUtils/MM_Unix.pm lib/ExtUtils/MakeMaker.pm
+____________________________________________________________________________
+[ 4134] By: jhi on 1999/09/13 10:20:14
+ Log: From: Tom Phoenix <rootbeer@redcat.com>
+ To: Perl Porters Mailing List <perl5-porters@perl.org>
+ Subject: [DOCPATCH] Server errors and perldiag
+ Date: Fri, 10 Sep 1999 16:45:02 -0700 (PDT)
+ Message-ID: <Pine.GSO.4.10.9909101639490.16999-100000@user2.teleport.com>
+ Branch: cfgperl
+ ! pod/perldiag.pod
+____________________________________________________________________________
+[ 4133] By: gsar on 1999/09/13 03:25:43
+ Log: avoid assertion failure on C<@a'>
+ Branch: perl
+ ! toke.c
+____________________________________________________________________________
+[ 4132] By: gsar on 1999/09/13 03:03:57
+ Log: add -DPERL_Y2KWARN build option that will generate additional
+ warnings on "19$yy" etc (reworked a patch suggested by
+ Ulrich Pfeifer <upf@de.uu.net>)
+ Branch: perl
+ ! pod/perldelta.pod pod/perldiag.pod pod/perllexwarn.pod
+ ! pp_hot.c sv.c t/pragma/warn/pp_hot t/pragma/warn/sv
+____________________________________________________________________________
+[ 4131] By: gsar on 1999/09/12 22:06:25
+ Log: fix DATA leaks; reword documentation about the DATA filehandle
+ Branch: perl
+ ! ext/Opcode/Safe.pm lib/Pod/Functions.pm pod/perldata.pod
+____________________________________________________________________________
+[ 4130] By: gsar on 1999/09/12 20:08:56
+ Log: make sprintf("%g",...) threadsafe; only taint its result iff the
+ formatted result looks nonstandard
+ Branch: perl
+ ! embed.pl embedvar.h intrpvar.h objXSUB.h perl.c perlapi.c
+ ! pod/perlfunc.pod pod/perlguts.pod proto.h sv.c
+ ! t/pragma/locale.t thrdvar.h
+____________________________________________________________________________
+[ 4129] By: gsar on 1999/09/12 17:04:11
+ Log: From: Doug MacEachern <dougm@cp.net>
+ Date: Sun, 25 Jul 1999 15:49:00 -0700 (PDT)
+ Message-ID: <Pine.LNX.4.10.9907251538380.373-100000@mojo.eng.cp.net>
+ Subject: [PATCH 5.005_57] B::clearsym
+ Branch: perl
+ ! ext/B/B.pm ext/B/B/Bblock.pm ext/B/B/Debug.pm ext/B/B/Terse.pm
+____________________________________________________________________________
+[ 4128] By: gsar on 1999/09/12 16:59:12
+ Log: better debugger help output (from Ilya Zakharevich)
+ Branch: perl
+ ! lib/perl5db.pl
+____________________________________________________________________________
+[ 4127] By: jhi on 1999/09/11 20:50:37
+ Log: Integrate with Sarathy.
+ Branch: cfgperl
+ +> pod/perlcompile.pod t/lib/gol-basic.t t/lib/gol-compat.t
+ +> t/lib/gol-linkage.t
+ !> (integrate 43 files)
+____________________________________________________________________________
+[ 4126] By: nick on 1999/09/10 20:44:22
+ Log: Get resolve -at mainline
+ Branch: utfperl
+ +> (branch 297 files)
+ - README.cygwin32 XSlock.h bytecode.h byterun.c byterun.h
+ - cygwin32/cw32imp.h cygwin32/gcc2 cygwin32/ld2 cygwin32/perlgcc
+ - cygwin32/perlld ext/B/byteperl.c ext/DynaLoader/dl_cygwin32.xs
+ - hints/cygwin32.sh interp.sym myconfig objpp.h perl_exp.SH
+ - t/pragma/warn-1global t/pragma/warning.t thread.sym
+ - win32/GenCAPI.pl win32/TEST win32/autosplit.pl
+ - win32/bin/network.pl win32/bin/webget.pl win32/bin/www.pl
+ - win32/genxsdef.pl win32/makedef.pl win32/makemain.pl
+ - win32/makeperldef.pl win32/perlhost.h
+ !> (integrate 847 files)
+____________________________________________________________________________
+[ 4125] By: gsar on 1999/09/10 19:22:14
+ Log: s/dXS_TARGET/dXSTARG/ in change#4044 (to match dARGS vs dXSARGS
+ etc.)
+ Branch: perl
+ ! XSUB.h pp.h
+____________________________________________________________________________
+[ 4124] By: gsar on 1999/09/10 19:14:35
+ Log: rewrote substantive parts of patch
+ From: Ilya Zakharevich <ilya@math.ohio-state.edu>
+ Date: Fri, 27 Aug 1999 19:02:18 -0400
+ Message-ID: <19990827190218.A19561@monk.mps.ohio-state.edu>
+ Subject: [PATCH 5.005_58] REx documentation
+ Branch: perl
+ ! pod/perlre.pod
+____________________________________________________________________________
+[ 4123] By: gsar on 1999/09/10 18:21:53
+ Log: note about AVf_*
+ Branch: perl
+ ! av.h
+____________________________________________________________________________
+[ 4122] By: gsar on 1999/09/10 17:55:42
+ Log: allow 'text' in L<text|A::B/"C"> (from Martin Lichtin
+ <lichtin@bivio.com>)
+ Branch: perl
+ ! lib/Pod/Html.pm
+____________________________________________________________________________
+[ 4121] By: gsar on 1999/09/10 17:49:35
+ Log: dos-djgpp update (from Laszlo Molnar <laszlo.molnar@eth.ericsson.se>)
+ Branch: perl
+ ! AUTHORS Changes README.dos djgpp/config.over
+ ! djgpp/configure.bat djgpp/djgpp.c djgpp/djgppsed.sh dosish.h
+ ! lib/ExtUtils/MM_Unix.pm pod/pod2usage.PL pod/podchecker.PL
+ ! pod/podselect.PL sv.h t/io/openpid.t util.c
+____________________________________________________________________________
+[ 4120] By: gsar on 1999/09/10 12:25:01
+ Log: add perlcompile.pod (edited content from Nathan Torkington
+ <gnat@frii.com> and others)
+ Branch: perl
+ + pod/perlcompile.pod
+ ! MANIFEST pod/Makefile pod/buildtoc pod/perl.pod pod/roffitall
+____________________________________________________________________________
+[ 4119] By: gsar on 1999/09/10 11:05:13
+ Log: avoid leaking static local_patches unless patchlevel.h is
+ explicitly included
+ Branch: perl
+ ! patchlevel.h perl.c
+____________________________________________________________________________
+[ 4118] By: gsar on 1999/09/10 10:44:54
+ Log: upgrade to Getopt::Long v2.20 (from Johan Vromans
+ <jvromans@squirrel.nl>)
+ Branch: perl
+ + t/lib/gol-basic.t t/lib/gol-compat.t t/lib/gol-linkage.t
+ ! Changes MANIFEST lib/Getopt/Long.pm
+____________________________________________________________________________
[ 4117] By: jhi on 1999/09/09 18:24:30
Log: Remove ill-designed %B introduced by change #4111.
Branch: cfgperl
diff --git a/Configure b/Configure
index 4b55fa6d0b..0d497fd05b 100755
--- a/Configure
+++ b/Configure
@@ -20,7 +20,7 @@
# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
#
-# Generated on Mon Aug 30 22:33:03 EET DST 1999 [metaconfig 3.0 PL70]
+# Generated on Fri Sep 17 12:06:13 EET DST 1999 [metaconfig 3.0 PL70]
# (with additional metaconfig patches by perlbug@perl.com)
cat >/tmp/c1$$ <<EOF
@@ -1101,7 +1101,7 @@ done
: produce awk script to parse command line options
cat >options.awk <<'EOF'
BEGIN {
- optstr = "dD:eEf:hKOrsSU:V"; # getopt-style specification
+ optstr = "A:dD:eEf:hKOrsSU:V"; # getopt-style specification
len = length(optstr);
for (i = 1; i <= len; i++) {
@@ -1161,7 +1161,7 @@ silent=''
extractsh=''
override=''
knowitall=''
-rm -f optdef.sh
+rm -f optdef.sh posthint.sh
cat >optdef.sh <<EOS
$startsh
EOS
@@ -1215,6 +1215,57 @@ while test $# -gt 0; do
esac
shift
;;
+ -A)
+ shift
+ xxx=''
+ yyy="$1"
+ case "$yyy" in
+ *:*) xxx=`echo $yyy|sed 's!:.*!!'`
+ yyy=`echo $yyy|sed 's!^[^:]*:!!'`
+ ;;
+ esac
+ case "$xxx" in
+ '') xxx=define ;;
+ esac
+ zzz=''
+ uuu='undef'
+ case "$yyy" in
+ *=*) zzz=`echo $yyy|sed 's!^[^=]*=!!'`
+ yyy=`echo $yyy|sed 's!=.*!!'`
+ case "$yyy:$zzz" in
+ undef:) uuu='' ;;
+ esac
+ ;;
+ esac
+ case "$xxx" in
+ append)
+ echo "$yyy=\"\${$yyy}$zzz\"" >> posthint.sh
+ ;;
+ clear)
+ echo "$yyy=''" >> posthint.sh
+ ;;
+ define)
+ case "$zzz" in
+ '') zzz=define ;;
+ esac
+ echo "$yyy='$zzz'" >> posthint.sh
+ ;;
+ eval)
+ echo "eval \"$yyy=$zzz\"" >> posthint.sh
+ ;;
+ prepend)
+ echo "$yyy=\"$zzz\${$yyy}\"" >> posthint.sh
+ ;;
+ undef)
+ case "$zzz" in
+ '') zzz="$uuu" ;;
+ esac
+ echo "$yyy=$zzz" >> posthint.sh
+ ;;
+ *) echo "$me: unknown -A command '$xxx', ignoring -A $1" >&2
+ ;;
+ esac
+ ;;
-V) echo "$me generated by metaconfig 3.0 PL70." >&2
exit 0;;
--) break;;
@@ -1227,7 +1278,7 @@ case "$error" in
true)
cat >&2 <<EOM
Usage: $me [-dehrsEKOSV] [-f config.sh] [-D symbol] [-D symbol=value]
- [-U symbol] [-U symbol=]
+ [-U symbol] [-U symbol=] [-A command:symbol...]
-d : use defaults for all answers.
-e : go on without questioning past the production of config.sh.
-f : specify an alternate default configuration file.
@@ -1244,6 +1295,16 @@ Usage: $me [-dehrsEKOSV] [-f config.sh] [-D symbol] [-D symbol=value]
-U : undefine symbol:
-U symbol symbol gets the value 'undef'
-U symbol= symbol gets completely empty
+ -A : manipulate symbol after the platform specific hints have been applied:
+ -A append:symbol=value append value to symbol
+ -A define:symbol=value define symbol to have value
+ -A symbol=value define symbol to have value
+ -A clear:symbol define symbol to be ''
+ -A define:symbol define symbol to be 'define'
+ -A eval:symbol=value define symbol to be eval of value
+ -A prepend:symbol=value prepend value to symbol
+ -A undef:symbol define symbol to be 'undef'
+ -A undef:symbol= define symbol to be ''
-V : print version number and exit (with a zero status).
EOM
exit 1
@@ -1269,6 +1330,9 @@ esac
: run the defines and the undefines, if any, but leave the file out there...
touch optdef.sh
. ./optdef.sh
+: create the posthint manipulation script and leave the file out there...
+touch posthint.sh
+. ./posthint.sh
: set package name
package=perl5
@@ -2496,6 +2560,9 @@ none) osvers='' ;;
*) osvers="$ans" ;;
esac
+
+. ./posthint.sh
+
: who configured the system
cf_time=`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1`
cf_by=`(logname) 2>/dev/null`
@@ -9160,12 +9227,9 @@ set nice d_nice
eval $inlibc
: see if POSIX threads are available
-if test "X$usethreads" = "X$define"; then
- set pthread.h i_pthread
- eval $inhdr
-else
- i_pthread="$undef"
-fi
+set pthread.h i_pthread
+eval $inhdr
+
@@ -10121,6 +10185,8 @@ if set sigaction val -f d_sigaction; eval $csym; $val; then
int main()
{
struct sigaction act, oact;
+ act.sa_flags = 0;
+ oact.sa_handler = 0;
}
EOP
set try
diff --git a/INSTALL b/INSTALL
index 4647002b13..c90f6b34e8 100644
--- a/INSTALL
+++ b/INSTALL
@@ -766,12 +766,22 @@ or you can answer 'n' at the appropriate interactive Configure prompt.
=item -DPERL_POLLUTE_MALLOC
+NOTE: This flag is enabled automatically on some platforms if you
+asked for binary compatibility with version 5.005, or if you just
+run Configure to accept all the defaults on those platforms. You
+can refuse the automatic binary compatibility flags wholesale by
+running:
+
+ sh Configure -Ubincompat5005
+
+or by answering 'n' at the appropriate prompt.
+
Perl's malloc family of functions are called Perl_malloc(),
-Perl_realloc(), Perl_calloc() and Perl_mfree(). The names do not clash
-with the system versions of these functions.
+Perl_realloc(), Perl_calloc() and Perl_mfree(). When this flag is
+not enabled, the names do not clash with the system versions of
+these functions.
-If you add -DPERL_POLLUTE_MALLOC to your ccflags variable in
-config.sh, then Perl's malloc family of functions will have the same
+If enabled, Perl's malloc family of functions will have the same
names as the system versions. This may be sometimes required when you
have libraries that like to free() data that may have been allocated
by Perl_malloc() and vice versa.
diff --git a/MANIFEST b/MANIFEST
index 53eebabd31..06135b876e 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -184,7 +184,7 @@ ext/B/O.pm Compiler front-end module (-MO=...)
ext/B/README Compiler backend README
ext/B/TESTS Compiler backend test data
ext/B/Todo Compiler backend Todo list
-ext/B/defsubs.h.PL Generator for constant subroutines
+ext/B/defsubs_h.PL Generator for constant subroutines
ext/B/ramblings/cc.notes Compiler ramblings: notes on CC backend
ext/B/ramblings/curcop.runtime Compiler ramblings: notes on curcop use
ext/B/ramblings/flip-flop Compiler ramblings: notes on flip-flop
@@ -207,6 +207,7 @@ ext/DB_File/Makefile.PL Berkeley DB extension makefile writer
ext/DB_File/dbinfo Berkeley DB database version checker
ext/DB_File/hints/dynixptx.pl Hint for DB_File for named architecture
ext/DB_File/typemap Berkeley DB extension interface types
+ext/DB_File/version.c Berkeley DB extension interface version check
ext/Data/Dumper/Changes Data pretty printer, changelog
ext/Data/Dumper/Dumper.pm Data pretty printer, module
ext/Data/Dumper/Dumper.xs Data pretty printer, externals
@@ -489,11 +490,19 @@ installperl Perl script to do "make install" dirty work
intrpvar.h Variables held in each interpreter instance
iperlsys.h Perl's interface to the system
jpl/JNI/Changes Java Native Interface changes
+jpl/JNI/Closer.java Java Native Interface example
jpl/JNI/JNI.pm Java Native Interface module
-jpl/JNI/JNI.xs Java Native Interface external subroutines
+jpl/JNI/JNI.pm Java Native Interface module
+jpl/JNI/JNIConfig Java Native Interface config
+jpl/JNI/JNIConfig.Win32 Java Native Interface config
+jpl/JNI/JNIConfig.kaffe Java Native Interface config
+jpl/JNI/JNIConfig.noembed Java Native Interface config
+jpl/JNI/JNIConfig.standard Java Native Interface config
jpl/JNI/Makefile.PL Java Native Interface makefile generator
jpl/JNI/test.pl Java Native Interface tests
jpl/JNI/typemap Java/Perl interface typemap
+jpl/JNI/typemap.gcc Java/Perl interface typemap
+jpl/JNI/typemap.win32 Java/Perl interface typemap
jpl/JPL/AutoLoader.pm Java/Perl compiler module
jpl/JPL/Class.pm Java/Perl compiler module
jpl/JPL/Compile.pm Java/Perl compiler module
@@ -507,6 +516,7 @@ jpl/PerlInterpreter/PerlInterpreter.c Perl interpreter abstraction
jpl/PerlInterpreter/PerlInterpreter.h Perl interpreter abstraction
jpl/PerlInterpreter/PerlInterpreter.java Perl interpreter abstraction
jpl/README JPL instructions
+jpl/SETVARS.PL JPL setup
jpl/Sample/Makefile.PL JPL sample makefile generator
jpl/Sample/Sample.jpl JPL sample
jpl/Test/Makefile.PL JPL tests makefile generator
@@ -862,15 +872,20 @@ lib/unicode/To/Lower.pl Unicode character database
lib/unicode/To/Title.pl Unicode character database
lib/unicode/To/Upper.pl Unicode character database
lib/unicode/UnicodeData-Latest.txt Unicode character database
-lib/unicode/arabshp.txt Unicode character database
-lib/unicode/blocks.txt Unicode character database
-lib/unicode/index2.txt Unicode character database
-lib/unicode/jamo2.txt Unicode character database
+lib/unicode/ArabShap.txt Unicode character database
+lib/unicode/Blocks.txt Unicode character database
+lib/unicode/CompExcl.txt Unicode character database
+lib/unicode/EAWidth.txt Unicode character database
+lib/unicode/Index.txt Unicode character database
+lib/unicode/Jamo-2.txt Unicode character database
+lib/unicode/LineBrk.txt Unicode character database
lib/unicode/mktables.PL Unicode character database generator
-lib/unicode/names2.txt Unicode character database
-lib/unicode/props2.txt Unicode character database
-lib/unicode/readme.txt Unicode character database info
+lib/unicode/Names.txt Unicode character database
+lib/unicode/Props.txt Unicode character database
+lib/unicode/ReadMe.txt Unicode character database info
+lib/unicode/SpecCase.txt Unicode character database
lib/unicode/syllables.txt Unicode character database
+lib/unicode/Unicode.html Unicode character database
lib/utf8.pm Pragma to control Unicode support
lib/utf8_heavy.pl Support routines for utf8 pragma
lib/validate.pl Perl library supporting wholesale file mode validation
@@ -1123,7 +1138,7 @@ t/lib/attrs.t See if attrs works with C<sub : attrs>
t/lib/autoloader.t See if AutoLoader works
t/lib/basename.t See if File::Basename works
t/lib/bigfloat.t See if bigfloat.pl works
-t/lib/bigfloatpm.t See if BigFloat.pm works
+t/lib/bigfltpm.t See if BigFloat.pm works
t/lib/bigint.t See if bigint.pl works
t/lib/bigintpm.t See if BigInt.pm works
t/lib/cgi-form.t See if CGI.pm works
diff --git a/Porting/Glossary b/Porting/Glossary
index 2f4f23d50f..30c75b656c 100644
--- a/Porting/Glossary
+++ b/Porting/Glossary
@@ -1851,7 +1851,7 @@ i_poll (i_poll.U):
whether a C program should include <poll.h>.
i_pthread (i_pthread.U):
- This variable conditionally defines the I_PTHREADEAD symbol,
+ This variable conditionally defines the I_PTHREAD symbol,
and indicates whether a C program should include <pthread.h>.
i_pwd (i_pwd.U):
diff --git a/Porting/config.sh b/Porting/config.sh
index b0ab9f23a4..d0d5b2a669 100644
--- a/Porting/config.sh
+++ b/Porting/config.sh
@@ -8,7 +8,7 @@
# Package name : perl5
# Source directory : .
-# Configuration time: Mon Aug 16 22:37:31 EET DST 1999
+# Configuration time: Fri Sep 17 12:08:19 EET DST 1999
# Configured by : jhi
# Target system : osf1 alpha.hut.fi v4.0 878 alpha
@@ -30,10 +30,10 @@ afs='false'
alignbytes='8'
ansi2knr=''
aphostname=''
-apiversion='5.00560'
+apiversion='5.00561'
ar='ar'
-archlib='/opt/perl/lib/5.00560/alpha-dec_osf-thread'
-archlibexp='/opt/perl/lib/5.00560/alpha-dec_osf-thread'
+archlib='/opt/perl/lib/5.00561/alpha-dec_osf-thread'
+archlibexp='/opt/perl/lib/5.00561/alpha-dec_osf-thread'
archname64=''
archname='alpha-dec_osf-thread'
archobjs=''
@@ -51,12 +51,12 @@ castflags='0'
cat='cat'
cc='cc'
cccdlflags=' '
-ccdlflags=' -Wl,-rpath,/opt/perl/lib/5.00560/alpha-dec_osf-thread/CORE'
+ccdlflags=' -Wl,-rpath,/opt/perl/lib/5.00561/alpha-dec_osf-thread/CORE'
ccflags='-pthread -std -DLANGUAGE_C'
ccsymbols='__LANGUAGE_C__=1 _LONGLONG=1 LANGUAGE_C=1 SYSTYPE_BSD=1'
cf_by='jhi'
cf_email='yourname@yourhost.yourplace.com'
-cf_time='Mon Aug 16 22:37:31 EET DST 1999'
+cf_time='Fri Sep 17 12:08:19 EET DST 1999'
chgrp=''
chmod=''
chown=''
@@ -470,15 +470,15 @@ i_vfork='undef'
ignore_versioned_solibs=''
incpath=''
inews=''
-installarchlib='/opt/perl/lib/5.00560/alpha-dec_osf-thread'
+installarchlib='/opt/perl/lib/5.00561/alpha-dec_osf-thread'
installbin='/opt/perl/bin'
installman1dir='/opt/perl/man/man1'
installman3dir='/opt/perl/man/man3'
installprefix='/opt/perl'
installprefixexp='/opt/perl'
-installprivlib='/opt/perl/lib/5.00560'
+installprivlib='/opt/perl/lib/5.00561'
installscript='/opt/perl/bin'
-installsitearch='/opt/perl/lib/site_perl/5.00560/alpha-dec_osf-thread'
+installsitearch='/opt/perl/lib/site_perl/5.00561/alpha-dec_osf-thread'
installsitelib='/opt/perl/lib/site_perl'
installstyle='lib'
installusrbinperl='define'
@@ -573,8 +573,8 @@ pmake=''
pr=''
prefix='/opt/perl'
prefixexp='/opt/perl'
-privlib='/opt/perl/lib/5.00560'
-privlibexp='/opt/perl/lib/5.00560'
+privlib='/opt/perl/lib/5.00561'
+privlibexp='/opt/perl/lib/5.00561'
prototype='define'
ptrsize='8'
randbits='48'
@@ -618,8 +618,8 @@ sig_name_init='"ZERO", "HUP", "INT", "QUIT", "ILL", "TRAP", "ABRT", "EMT", "FPE"
sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 6 6 16 20 23 23 23 29 48 '
sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 6, 6, 16, 20, 23, 23, 23, 29, 48, 0'
signal_t='void'
-sitearch='/opt/perl/lib/site_perl/5.00560/alpha-dec_osf-thread'
-sitearchexp='/opt/perl/lib/site_perl/5.00560/alpha-dec_osf-thread'
+sitearch='/opt/perl/lib/site_perl/5.00561/alpha-dec_osf-thread'
+sitearchexp='/opt/perl/lib/site_perl/5.00561/alpha-dec_osf-thread'
sitelib='/opt/perl/lib/site_perl'
sitelibexp='/opt/perl/lib/site_perl'
siteprefix='/opt/perl'
@@ -649,7 +649,7 @@ stdio_ptr='((fp)->_ptr)'
stdio_stream_array='_iob'
strings='/usr/include/string.h'
submit=''
-subversion='60'
+subversion='61'
sysman='/usr/man/man1'
tail=''
tar=''
@@ -686,7 +686,7 @@ vendorlib=''
vendorlibexp=''
vendorprefix=''
vendorprefixexp=''
-version='5.00560'
+version='5.00561'
vi=''
voidflags='15'
xlibpth='/usr/lib/386 /lib/386'
@@ -708,7 +708,7 @@ config_arg9='-Dmyhostname=yourhost'
config_arg10='-dE'
PERL_REVISION=5
PERL_VERSION=5
-PERL_SUBVERSION=60
+PERL_SUBVERSION=61
CONFIGDOTSH=true
# Variables propagated from previous config.sh file.
pp_sys_cflags='ccflags="$ccflags -DNO_EFF_ONLY_OK"'
diff --git a/Porting/config_H b/Porting/config_H
index 4aca318a66..bdf4aee8bd 100644
--- a/Porting/config_H
+++ b/Porting/config_H
@@ -17,7 +17,7 @@
/*
* Package name : perl5
* Source directory : .
- * Configuration time: Mon Aug 16 22:37:31 EET DST 1999
+ * Configuration time: Fri Sep 17 12:08:19 EET DST 1999
* Configured by : jhi
* Target system : osf1 alpha.hut.fi v4.0 878 alpha
*/
@@ -1423,8 +1423,8 @@
* This symbol contains the ~name expanded version of ARCHLIB, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define ARCHLIB "/opt/perl/lib/5.00560/alpha-dec_osf-thread" /**/
-#define ARCHLIB_EXP "/opt/perl/lib/5.00560/alpha-dec_osf-thread" /**/
+#define ARCHLIB "/opt/perl/lib/5.00561/alpha-dec_osf-thread" /**/
+#define ARCHLIB_EXP "/opt/perl/lib/5.00561/alpha-dec_osf-thread" /**/
/* BIN:
* This symbol holds the path of the bin directory where the package will
@@ -1453,8 +1453,8 @@
* This symbol contains the ~name expanded version of PRIVLIB, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define PRIVLIB "/opt/perl/lib/5.00560" /**/
-#define PRIVLIB_EXP "/opt/perl/lib/5.00560" /**/
+#define PRIVLIB "/opt/perl/lib/5.00561" /**/
+#define PRIVLIB_EXP "/opt/perl/lib/5.00561" /**/
/* SITEARCH:
* This symbol contains the name of the private library for this package.
@@ -1469,8 +1469,8 @@
* This symbol contains the ~name expanded version of SITEARCH, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define SITEARCH "/opt/perl/lib/site_perl/5.00560/alpha-dec_osf-thread" /**/
-#define SITEARCH_EXP "/opt/perl/lib/site_perl/5.00560/alpha-dec_osf-thread" /**/
+#define SITEARCH "/opt/perl/lib/site_perl/5.00561/alpha-dec_osf-thread" /**/
+#define SITEARCH_EXP "/opt/perl/lib/site_perl/5.00561/alpha-dec_osf-thread" /**/
/* SITELIB:
* This symbol contains the name of the private library for this package.
@@ -1542,9 +1542,14 @@
* available directly to the user. Note that it may well be different from
* the preprocessor used to compile the C program.
*/
+/* CPPLAST:
+ * This symbol is intended to be used along with CPPRUN in the same manner
+ * symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
+ */
#define CPPSTDIN "cppstdin"
#define CPPMINUS ""
#define CPPRUN "/usr/bin/cpp"
+#define CPPLAST ""
/* HAS_ACCESS:
* This manifest constant lets the C program know that the access()
@@ -1641,6 +1646,11 @@
* so that it is safe even if used by a process with super-user
* privileges.
*/
+/* HAS_PHOSTNAME:
+ * This symbol, if defined, indicates that the C program may use the
+ * contents of PHOSTNAME as a command to feed to the popen() routine
+ * to derive the host name.
+ */
#define HAS_GETHOSTNAME /**/
#define HAS_UNAME /**/
#undef HAS_PHOSTNAME
@@ -2056,7 +2066,12 @@
* This symbol, if defined, indicates that <sys/uio.h> exists and
* should be included.
*/
+/* HAS_STRUCT_IOVEC:
+ * This symbol, if defined, indicates that the struct iovec
+ * to do scatter writes/gather reads is supported.
+ */
#define I_SYSUIO /**/
+#define HAS_STRUCT_IOVEC /**/
/* Free_t:
* This variable contains the return type of free(). It is usually
@@ -2583,6 +2598,12 @@
*/
/*#define I_MACH_CTHREADS / **/
+/* I_PTHREAD:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <pthread.h>.
+ */
+#define I_PTHREAD /**/
+
/* USE_THREADS:
* This symbol, if defined, indicates that Perl should
* be built to use threads.
diff --git a/config_h.SH b/config_h.SH
index e38e455b85..2f8a835259 100644
--- a/config_h.SH
+++ b/config_h.SH
@@ -1556,9 +1556,14 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
* available directly to the user. Note that it may well be different from
* the preprocessor used to compile the C program.
*/
+/* CPPLAST:
+ * This symbol is intended to be used along with CPPRUN in the same manner
+ * symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
+ */
#define CPPSTDIN "$cppstdin"
#define CPPMINUS "$cppminus"
#define CPPRUN "$cpprun"
+#define CPPLAST "$cpplast"
/* HAS_ACCESS:
* This manifest constant lets the C program know that the access()
@@ -1655,6 +1660,11 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
* so that it is safe even if used by a process with super-user
* privileges.
*/
+/* HAS_PHOSTNAME:
+ * This symbol, if defined, indicates that the C program may use the
+ * contents of PHOSTNAME as a command to feed to the popen() routine
+ * to derive the host name.
+ */
#$d_gethname HAS_GETHOSTNAME /**/
#$d_uname HAS_UNAME /**/
#$d_phostname HAS_PHOSTNAME
@@ -2070,7 +2080,12 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
* This symbol, if defined, indicates that <sys/uio.h> exists and
* should be included.
*/
+/* HAS_STRUCT_IOVEC:
+ * This symbol, if defined, indicates that the struct iovec
+ * to do scatter writes/gather reads is supported.
+ */
#$i_sysuio I_SYSUIO /**/
+#$d_iovec_s HAS_STRUCT_IOVEC /**/
/* Free_t:
* This variable contains the return type of free(). It is usually
@@ -2597,6 +2612,12 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-
*/
#$i_machcthr I_MACH_CTHREADS /**/
+/* I_PTHREAD:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <pthread.h>.
+ */
+#$i_pthread I_PTHREAD /**/
+
/* USE_THREADS:
* This symbol, if defined, indicates that Perl should
* be built to use threads.
diff --git a/configure.com b/configure.com
index 0f869834fb..96e86335a7 100644
--- a/configure.com
+++ b/configure.com
@@ -113,6 +113,7 @@ $!
$!: set up default values
$ fastread=""
$ reuseval="false"
+$ maniskip = "false"
$ config_sh=""
$ alldone=""
$ error=""
@@ -187,6 +188,13 @@ $ gotopt = "t"
$ P'i' = P'i' - "h"
$ gotshortopt = "t"
$ ENDIF
+$ IF (F$EXTRACT(0,1,P'i') .EQS. "m")
+$ THEN
+$ maniskip = "true"
+$ gotopt = "t"
+$ P'i' = P'i' - "m"
+$ gotshortopt = "t"
+$ ENDIF
$ IF (F$EXTRACT(0,1,P'i') .EQS. "r")
$ THEN
$ reuseval = "true"
@@ -290,13 +298,14 @@ $!
$ IF (error)
$ THEN
$ me = F$PARSE(me,,,"DIRECTORY")+ F$PARSE(me,,,"NAME")
-$ echo "Usage: @''me' [-dehrEKOSV] [-fconfig.sh] [-Dsymbol] [-Dsymbol=value]"
-$ echo " [-Usymbol] [-Usymbol=]"
+$ echo "Usage: @''me' [-dehmrEKOSV] [-fconfig.sh] [-Dsymbol] [-Dsymbol=value]"
+$ echo " [-Usymbol] [-Usymbol=]"
$ TYPE SYS$INPUT
"-d" : use defaults for all answers.
"-e" : go on without questioning past the production of config.sh. *
"-f" : specify an alternate default configuration file.
"-h" : print this help message and exit (with an error status).
+ "-m" : skip the MANIFEST check to see that all files are present
"-r" : reuse C symbols value if possible (skips costly nm extraction).*
"-s" : silent mode, only echoes questions and essential information.
-"D" : define symbol to have some value: *
@@ -420,8 +429,11 @@ $!
$ OPEN/WRITE MISSING MISSING.
$!change to "FALSE" if you wish to skip the manifest search
$!(which after all is rather slow in DCL :-)
-$ IF ("TRUE")
+$ IF (maniskip)
$ THEN
+$ echo "Skipping MANIFEST check as requested"
+$ ELSE
+$!
$ OPEN/READ CONFIG 'manifestfound'
$Read_loop_manifest:
$ READ/END_OF_FILE = Done_manifest CONFIG line
@@ -1729,6 +1741,48 @@ $ ELSE
$ use_64bit="N"
$ ENDIF
$ ENDIF
+$!
+$! Ask if they want to build with 64-bit support
+$ if (Archname.eqs."VMS_AXP").and.("''f$extract(1,3, f$getsyi(""version""))'".ges."7.1")
+$ THEN
+$ echo "This version of perl has experimental support for building wtih
+$ echo "64 bit integers and 128 bit floating point variables. This gives
+$ echo "a much larger range for perl's mathematical operations. (Note that
+$ echo "does *not* enable 64-bit fileops at the moment, as Dec C doesn't
+$ echo "do that yet)"
+$ echo ""
+$ dflt = use_64bit
+$ rp = "Build with 64 bits? [''dflt'] "
+$ GOSUB myread
+$ if ans.eqs."" then ans = dflt
+$ if (f$extract(0, 1, "''ans'").eqs."Y").or.(f$extract(0, 1, "''ans'").eqs."y")
+$ THEN
+$ use_64bit="Y"
+$ ELSE
+$ use_64bit="N"
+$ ENDIF
+$ ENDIF
+$!
+$! Ask if they want to build with 64-bit support
+$ if (Archname.eqs."VMS_AXP").and.("''f$extract(1,3, f$getsyi(""version""))'".ges."7.1")
+$ THEN
+$ echo "This version of perl has experimental support for building wtih
+$ echo "64 bit integers and 128 bit floating point variables. This gives
+$ echo "a much larger range for perl's mathematical operations. (Note that
+$ echo "does *not* enable 64-bit fileops at the moment, as Dec C doesn't
+$ echo "do that yet)"
+$ echo ""
+$ dflt = use_64bit
+$ rp = "Build with 64 bits? [''dflt'] "
+$ GOSUB myread
+$ if ans.eqs."" then ans = dflt
+$ if (f$extract(0, 1, "''ans'").eqs."Y").or.(f$extract(0, 1, "''ans'").eqs."y")
+$ THEN
+$ use_64bit="Y"
+$ ELSE
+$ use_64bit="N"
+$ ENDIF
+$ ENDIF
$! Ask about threads, if appropriate
$ if (Using_Dec_C.eqs."Yes")
$ THEN
diff --git a/doio.c b/doio.c
index 50870b21fa..0b1cdd1ec4 100644
--- a/doio.c
+++ b/doio.c
@@ -1696,7 +1696,7 @@ Perl_do_ipcctl(pTHX_ I32 optype, SV **mark, SV **sp)
else
{
IV i = SvIV(astr);
- a = (char *)PTR_CAST i; /* ouch */
+ a = INT2PTR(char *,i); /* ouch */
}
SETERRNO(0,0);
switch (optype)
diff --git a/dump.c b/dump.c
index 182834e983..7f1dba499c 100644
--- a/dump.c
+++ b/dump.c
@@ -768,7 +768,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
#ifdef IV_IS_QUAD
Perl_sv_setpvf(aTHX_ d,
"(0x%" PERL_PRIx64") at 0x%" PERL_PRIx64 "\n%*s REFCNT = %" PERL_PRId64 "\n%*s FLAGS = (",
- (UV)PTR_CAST SvANY(sv), (UV)PTR_CAST sv,
+ PTR2UV(SvANY(sv)), PTR2UV(sv),
PL_dumpindent*level, "", (IV)SvREFCNT(sv),
PL_dumpindent*level, "");
#else
@@ -933,7 +933,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
}
if (SvROK(sv)) {
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " RV = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST SvRV(sv));
+ Perl_dump_indent(aTHX_ level, file, " RV = 0x%" PERL_PRIx64 "\n", PTR2IV(SvRV(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " RV = 0x%lx\n", (long)SvRV(sv));
#endif
@@ -946,7 +946,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
if (type <= SVt_PVLV) {
if (SvPVX(sv)) {
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file," PV = 0x%" PERL_PRIx64 " ", (IV)PTR_CAST SvPVX(sv));
+ Perl_dump_indent(aTHX_ level, file," PV = 0x%" PERL_PRIx64 " ", PTR2IV(SvPVX(sv)));
#else
Perl_dump_indent(aTHX_ level, file," PV = 0x%lx ", (long)SvPVX(sv));
#endif
@@ -976,7 +976,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
#ifdef IV_IS_QUAD
Perl_dump_indent(aTHX_ level, file, " TARGOFF = %" PERL_PRId64 "\n", (IV)LvTARGOFF(sv));
Perl_dump_indent(aTHX_ level, file, " TARGLEN = %" PERL_PRId64 "\n", (IV)LvTARGLEN(sv));
- Perl_dump_indent(aTHX_ level, file, " TARG = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST LvTARG(sv));
+ Perl_dump_indent(aTHX_ level, file, " TARG = 0x%" PERL_PRIx64 "\n", PTR2IV(LvTARG(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " TARGOFF = %ld\n", (long)LvTARGOFF(sv));
Perl_dump_indent(aTHX_ level, file, " TARGLEN = %ld\n", (long)LvTARGLEN(sv));
@@ -987,14 +987,14 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
break;
case SVt_PVAV:
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " ARRAY = 0x%" PERL_PRIx64 , (IV)PTR_CAST AvARRAY(sv));
+ Perl_dump_indent(aTHX_ level, file, " ARRAY = 0x%" PERL_PRIx64 , PTR2IV(AvARRAY(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " ARRAY = 0x%lx", (long)AvARRAY(sv));
#endif
if (AvARRAY(sv) != AvALLOC(sv)) {
PerlIO_printf(file, " (offset=%d)\n", (AvARRAY(sv) - AvALLOC(sv)));
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " ALLOC = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST AvALLOC(sv));
+ Perl_dump_indent(aTHX_ level, file, " ALLOC = 0x%" PERL_PRIx64 "\n", PTR2IV(AvALLOC(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " ALLOC = 0x%lx\n", (long)AvALLOC(sv));
#endif
@@ -1004,7 +1004,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
#ifdef IV_IS_QUAD
Perl_dump_indent(aTHX_ level, file, " FILL = %" PERL_PRId64 "\n", (IV)AvFILLp(sv));
Perl_dump_indent(aTHX_ level, file, " MAX = %" PERL_PRId64 "\n", (IV)AvMAX(sv));
- Perl_dump_indent(aTHX_ level, file, " ARYLEN = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST AvARYLEN(sv));
+ Perl_dump_indent(aTHX_ level, file, " ARYLEN = 0x%" PERL_PRIx64 "\n", PTR2IV(AvARYLEN(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " FILL = %ld\n", (long)AvFILLp(sv));
Perl_dump_indent(aTHX_ level, file, " MAX = %ld\n", (long)AvMAX(sv));
@@ -1033,7 +1033,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
break;
case SVt_PVHV:
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " ARRAY = 0x%" PERL_PRIx64,(IV)PTR_CAST HvARRAY(sv));
+ Perl_dump_indent(aTHX_ level, file, " ARRAY = 0x%" PERL_PRIx64,PTR2IV(HvARRAY(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " ARRAY = 0x%lx",(long)HvARRAY(sv));
#endif
@@ -1086,7 +1086,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
Perl_dump_indent(aTHX_ level, file, " FILL = %" PERL_PRId64 "\n", (IV)HvFILL(sv));
Perl_dump_indent(aTHX_ level, file, " MAX = %" PERL_PRId64 "\n", (IV)HvMAX(sv));
Perl_dump_indent(aTHX_ level, file, " RITER = %" PERL_PRId64 "\n", (IV)HvRITER(sv));
- Perl_dump_indent(aTHX_ level, file, " EITER = 0x%" PERL_PRIx64 "\n",(IV)PTR_CAST HvEITER(sv));
+ Perl_dump_indent(aTHX_ level, file, " EITER = 0x%" PERL_PRIx64 "\n",PTR2IV(HvEITER(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " KEYS = %ld\n", (long)HvKEYS(sv));
Perl_dump_indent(aTHX_ level, file, " FILL = %ld\n", (long)HvFILL(sv));
@@ -1096,7 +1096,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
#endif
if (HvPMROOT(sv))
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " PMROOT = 0x%" PERL_PRIx64 "\n",(IV)PTR_CAST HvPMROOT(sv));
+ Perl_dump_indent(aTHX_ level, file, " PMROOT = 0x%" PERL_PRIx64 "\n",PTR2IV(HvPMROOT(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " PMROOT = 0x%lx\n",(long)HvPMROOT(sv));
#endif
@@ -1143,7 +1143,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
if (CvROOT(sv) && dumpops)
do_op_dump(level+1, file, CvROOT(sv));
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " XSUB = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST CvXSUB(sv));
+ Perl_dump_indent(aTHX_ level, file, " XSUB = 0x%" PERL_PRIx64 "\n", PTR2IV(CvXSUB(sv)));
Perl_dump_indent(aTHX_ level, file, " XSUBANY = %" PERL_PRId64 "\n", (IV)CvXSUBANY(sv).any_i32);
#else
Perl_dump_indent(aTHX_ level, file, " XSUB = 0x%lx\n", (long)CvXSUB(sv));
@@ -1177,7 +1177,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
Perl_dump_indent(aTHX_ level, file, " LINES = %ld\n", (long)FmLINES(sv));
#endif
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " PADLIST = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST CvPADLIST(sv));
+ Perl_dump_indent(aTHX_ level, file, " PADLIST = 0x%" PERL_PRIx64 "\n", PTR2IV(CvPADLIST(sv)));
#else
Perl_dump_indent(aTHX_ level, file, " PADLIST = 0x%lx\n", (long)CvPADLIST(sv));
#endif
@@ -1217,7 +1217,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
CV *outside = CvOUTSIDE(sv);
#ifdef IV_IS_QUAD
Perl_dump_indent(aTHX_ level, file, " OUTSIDE = 0x%" PERL_PRIx64 " (%s)\n",
- (IV)PTR_CAST outside,
+ PTR2IV(outside),
(!outside ? "null"
: CvANON(outside) ? "ANON"
: (outside == PL_main_cv) ? "MAIN"
@@ -1245,14 +1245,14 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
#endif
do_hv_dump (level, file, " GvSTASH", GvSTASH(sv));
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " GP = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST GvGP(sv));
- Perl_dump_indent(aTHX_ level, file, " SV = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST GvSV(sv));
+ Perl_dump_indent(aTHX_ level, file, " GP = 0x%" PERL_PRIx64 "\n", PTR2IV(GvGP(sv)));
+ Perl_dump_indent(aTHX_ level, file, " SV = 0x%" PERL_PRIx64 "\n", PTR2IV(GvSV(sv)));
Perl_dump_indent(aTHX_ level, file, " REFCNT = %" PERL_PRId64 "\n", (IV)GvREFCNT(sv));
- Perl_dump_indent(aTHX_ level, file, " IO = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST GvIOp(sv));
- Perl_dump_indent(aTHX_ level, file, " FORM = 0x%" PERL_PRIx64 " \n", (IV)PTR_CAST GvFORM(sv));
- Perl_dump_indent(aTHX_ level, file, " AV = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST GvAV(sv));
- Perl_dump_indent(aTHX_ level, file, " HV = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST GvHV(sv));
- Perl_dump_indent(aTHX_ level, file, " CV = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST GvCV(sv));
+ Perl_dump_indent(aTHX_ level, file, " IO = 0x%" PERL_PRIx64 "\n", PTR2IV(GvIOp(sv)));
+ Perl_dump_indent(aTHX_ level, file, " FORM = 0x%" PERL_PRIx64 " \n", PTR2IV(GvFORM(sv)));
+ Perl_dump_indent(aTHX_ level, file, " AV = 0x%" PERL_PRIx64 "\n", PTR2IV(GvAV(sv)));
+ Perl_dump_indent(aTHX_ level, file, " HV = 0x%" PERL_PRIx64 "\n", PTR2IV(GvHV(sv)));
+ Perl_dump_indent(aTHX_ level, file, " CV = 0x%" PERL_PRIx64 "\n", PTR2IV(GvCV(sv)));
Perl_dump_indent(aTHX_ level, file, " CVGEN = 0x%" PERL_PRIx64 "\n", (IV)GvCVGEN(sv));
Perl_dump_indent(aTHX_ level, file, " LASTEXPR = %" PERL_PRId64 "\n", (IV)GvLASTEXPR(sv));
Perl_dump_indent(aTHX_ level, file, " LINE = %" PERL_PRId64 "\n", (IV)GvLINE(sv));
@@ -1275,9 +1275,9 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
break;
case SVt_PVIO:
#ifdef IV_IS_QUAD
- Perl_dump_indent(aTHX_ level, file, " IFP = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST IoIFP(sv));
- Perl_dump_indent(aTHX_ level, file, " OFP = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST IoOFP(sv));
- Perl_dump_indent(aTHX_ level, file, " DIRP = 0x%" PERL_PRIx64 "\n", (IV)PTR_CAST IoDIRP(sv));
+ Perl_dump_indent(aTHX_ level, file, " IFP = 0x%" PERL_PRIx64 "\n", PTR2IV(IoIFP(sv)));
+ Perl_dump_indent(aTHX_ level, file, " OFP = 0x%" PERL_PRIx64 "\n", PTR2IV(IoOFP(sv)));
+ Perl_dump_indent(aTHX_ level, file, " DIRP = 0x%" PERL_PRIx64 "\n", PTR2IV(IoDIRP(sv)));
Perl_dump_indent(aTHX_ level, file, " LINES = %" PERL_PRId64 "\n", (IV)IoLINES(sv));
Perl_dump_indent(aTHX_ level, file, " PAGE = %" PERL_PRId64 "\n", (IV)IoPAGE(sv));
Perl_dump_indent(aTHX_ level, file, " PAGE_LEN = %" PERL_PRId64 "\n", (IV)IoPAGE_LEN(sv));
diff --git a/embed.h b/embed.h
index ab68e0ec4b..393ba3efdf 100644
--- a/embed.h
+++ b/embed.h
@@ -590,11 +590,15 @@
#define sv_2mortal Perl_sv_2mortal
#define sv_2nv Perl_sv_2nv
#define sv_2pv Perl_sv_2pv
+#define sv_2pvutf8 Perl_sv_2pvutf8
+#define sv_2pvbyte Perl_sv_2pvbyte
#define sv_2uv Perl_sv_2uv
#define sv_iv Perl_sv_iv
#define sv_uv Perl_sv_uv
#define sv_nv Perl_sv_nv
#define sv_pvn Perl_sv_pvn
+#define sv_pvutf8n Perl_sv_pvutf8n
+#define sv_pvbyten Perl_sv_pvbyten
#define sv_true Perl_sv_true
#define sv_add_arena Perl_sv_add_arena
#define sv_backoff Perl_sv_backoff
@@ -636,6 +640,8 @@
#define sv_pos_u2b Perl_sv_pos_u2b
#define sv_pos_b2u Perl_sv_pos_b2u
#define sv_pvn_force Perl_sv_pvn_force
+#define sv_pvutf8n_force Perl_sv_pvutf8n_force
+#define sv_pvbyten_force Perl_sv_pvbyten_force
#define sv_reftype Perl_sv_reftype
#define sv_replace Perl_sv_replace
#define sv_report_used Perl_sv_report_used
@@ -750,7 +756,11 @@
#define vdefault_protect Perl_vdefault_protect
#define reginitcolors Perl_reginitcolors
#define sv_2pv_nolen Perl_sv_2pv_nolen
+#define sv_2pvutf8_nolen Perl_sv_2pvutf8_nolen
+#define sv_2pvbyte_nolen Perl_sv_2pvbyte_nolen
#define sv_pv Perl_sv_pv
+#define sv_pvutf8 Perl_sv_pvutf8
+#define sv_pvbyte Perl_sv_pvbyte
#define sv_force_normal Perl_sv_force_normal
#define tmps_grow Perl_tmps_grow
#define sv_rvweaken Perl_sv_rvweaken
@@ -1924,11 +1934,15 @@
#define sv_2mortal(a) Perl_sv_2mortal(aTHX_ a)
#define sv_2nv(a) Perl_sv_2nv(aTHX_ a)
#define sv_2pv(a,b) Perl_sv_2pv(aTHX_ a,b)
+#define sv_2pvutf8(a,b) Perl_sv_2pvutf8(aTHX_ a,b)
+#define sv_2pvbyte(a,b) Perl_sv_2pvbyte(aTHX_ a,b)
#define sv_2uv(a) Perl_sv_2uv(aTHX_ a)
#define sv_iv(a) Perl_sv_iv(aTHX_ a)
#define sv_uv(a) Perl_sv_uv(aTHX_ a)
#define sv_nv(a) Perl_sv_nv(aTHX_ a)
#define sv_pvn(a,b) Perl_sv_pvn(aTHX_ a,b)
+#define sv_pvutf8n(a,b) Perl_sv_pvutf8n(aTHX_ a,b)
+#define sv_pvbyten(a,b) Perl_sv_pvbyten(aTHX_ a,b)
#define sv_true(a) Perl_sv_true(aTHX_ a)
#define sv_add_arena(a,b,c) Perl_sv_add_arena(aTHX_ a,b,c)
#define sv_backoff(a) Perl_sv_backoff(aTHX_ a)
@@ -1969,6 +1983,8 @@
#define sv_pos_u2b(a,b,c) Perl_sv_pos_u2b(aTHX_ a,b,c)
#define sv_pos_b2u(a,b) Perl_sv_pos_b2u(aTHX_ a,b)
#define sv_pvn_force(a,b) Perl_sv_pvn_force(aTHX_ a,b)
+#define sv_pvutf8n_force(a,b) Perl_sv_pvutf8n_force(aTHX_ a,b)
+#define sv_pvbyten_force(a,b) Perl_sv_pvbyten_force(aTHX_ a,b)
#define sv_reftype(a,b) Perl_sv_reftype(aTHX_ a,b)
#define sv_replace(a,b) Perl_sv_replace(aTHX_ a,b)
#define sv_report_used() Perl_sv_report_used(aTHX)
@@ -2076,7 +2092,11 @@
#define vdefault_protect(a,b,c) Perl_vdefault_protect(aTHX_ a,b,c)
#define reginitcolors() Perl_reginitcolors(aTHX)
#define sv_2pv_nolen(a) Perl_sv_2pv_nolen(aTHX_ a)
+#define sv_2pvutf8_nolen(a) Perl_sv_2pvutf8_nolen(aTHX_ a)
+#define sv_2pvbyte_nolen(a) Perl_sv_2pvbyte_nolen(aTHX_ a)
#define sv_pv(a) Perl_sv_pv(aTHX_ a)
+#define sv_pvutf8(a) Perl_sv_pvutf8(aTHX_ a)
+#define sv_pvbyte(a) Perl_sv_pvbyte(aTHX_ a)
#define sv_force_normal(a) Perl_sv_force_normal(aTHX_ a)
#define tmps_grow(a) Perl_tmps_grow(aTHX_ a)
#define sv_rvweaken(a) Perl_sv_rvweaken(aTHX_ a)
@@ -3775,6 +3795,10 @@
#define sv_2nv Perl_sv_2nv
#define Perl_sv_2pv CPerlObj::Perl_sv_2pv
#define sv_2pv Perl_sv_2pv
+#define Perl_sv_2pvutf8 CPerlObj::Perl_sv_2pvutf8
+#define sv_2pvutf8 Perl_sv_2pvutf8
+#define Perl_sv_2pvbyte CPerlObj::Perl_sv_2pvbyte
+#define sv_2pvbyte Perl_sv_2pvbyte
#define Perl_sv_2uv CPerlObj::Perl_sv_2uv
#define sv_2uv Perl_sv_2uv
#define Perl_sv_iv CPerlObj::Perl_sv_iv
@@ -3785,6 +3809,10 @@
#define sv_nv Perl_sv_nv
#define Perl_sv_pvn CPerlObj::Perl_sv_pvn
#define sv_pvn Perl_sv_pvn
+#define Perl_sv_pvutf8n CPerlObj::Perl_sv_pvutf8n
+#define sv_pvutf8n Perl_sv_pvutf8n
+#define Perl_sv_pvbyten CPerlObj::Perl_sv_pvbyten
+#define sv_pvbyten Perl_sv_pvbyten
#define Perl_sv_true CPerlObj::Perl_sv_true
#define sv_true Perl_sv_true
#define Perl_sv_add_arena CPerlObj::Perl_sv_add_arena
@@ -3865,6 +3893,10 @@
#define sv_pos_b2u Perl_sv_pos_b2u
#define Perl_sv_pvn_force CPerlObj::Perl_sv_pvn_force
#define sv_pvn_force Perl_sv_pvn_force
+#define Perl_sv_pvutf8n_force CPerlObj::Perl_sv_pvutf8n_force
+#define sv_pvutf8n_force Perl_sv_pvutf8n_force
+#define Perl_sv_pvbyten_force CPerlObj::Perl_sv_pvbyten_force
+#define sv_pvbyten_force Perl_sv_pvbyten_force
#define Perl_sv_reftype CPerlObj::Perl_sv_reftype
#define sv_reftype Perl_sv_reftype
#define Perl_sv_replace CPerlObj::Perl_sv_replace
@@ -4088,8 +4120,16 @@
#define reginitcolors Perl_reginitcolors
#define Perl_sv_2pv_nolen CPerlObj::Perl_sv_2pv_nolen
#define sv_2pv_nolen Perl_sv_2pv_nolen
+#define Perl_sv_2pvutf8_nolen CPerlObj::Perl_sv_2pvutf8_nolen
+#define sv_2pvutf8_nolen Perl_sv_2pvutf8_nolen
+#define Perl_sv_2pvbyte_nolen CPerlObj::Perl_sv_2pvbyte_nolen
+#define sv_2pvbyte_nolen Perl_sv_2pvbyte_nolen
#define Perl_sv_pv CPerlObj::Perl_sv_pv
#define sv_pv Perl_sv_pv
+#define Perl_sv_pvutf8 CPerlObj::Perl_sv_pvutf8
+#define sv_pvutf8 Perl_sv_pvutf8
+#define Perl_sv_pvbyte CPerlObj::Perl_sv_pvbyte
+#define sv_pvbyte Perl_sv_pvbyte
#define Perl_sv_force_normal CPerlObj::Perl_sv_force_normal
#define sv_force_normal Perl_sv_force_normal
#define Perl_tmps_grow CPerlObj::Perl_tmps_grow
@@ -5325,8 +5365,8 @@
*/
#if !defined(PERL_CORE)
-# define sv_setptrobj(rv,ptr,name) sv_setref_iv(rv,name,(IV)ptr)
-# define sv_setptrref(rv,ptr) sv_setref_iv(rv,Nullch,(IV)ptr)
+# define sv_setptrobj(rv,ptr,name) sv_setref_iv(rv,name,PTR2IV(ptr))
+# define sv_setptrref(rv,ptr) sv_setref_iv(rv,Nullch,PTR2IV(ptr))
#endif
#if !defined(PERL_CORE) && !defined(PERL_NOCOMPAT) && !defined(PERL_BINCOMPAT_5005)
diff --git a/embed.pl b/embed.pl
index 5f0711f493..21042c1137 100755
--- a/embed.pl
+++ b/embed.pl
@@ -452,8 +452,8 @@ print EM <<'END';
*/
#if !defined(PERL_CORE)
-# define sv_setptrobj(rv,ptr,name) sv_setref_iv(rv,name,(IV)ptr)
-# define sv_setptrref(rv,ptr) sv_setref_iv(rv,Nullch,(IV)ptr)
+# define sv_setptrobj(rv,ptr,name) sv_setref_iv(rv,name,PTR2IV(ptr))
+# define sv_setptrref(rv,ptr) sv_setref_iv(rv,Nullch,PTR2IV(ptr))
#endif
#if !defined(PERL_CORE) && !defined(PERL_NOCOMPAT) && !defined(PERL_BINCOMPAT_5005)
@@ -1578,11 +1578,15 @@ p |IV |sv_2iv |SV* sv
p |SV* |sv_2mortal |SV* sv
p |NV |sv_2nv |SV* sv
p |char* |sv_2pv |SV* sv|STRLEN* lp
+p |char* |sv_2pvutf8 |SV* sv|STRLEN* lp
+p |char* |sv_2pvbyte |SV* sv|STRLEN* lp
p |UV |sv_2uv |SV* sv
p |IV |sv_iv |SV* sv
p |UV |sv_uv |SV* sv
p |NV |sv_nv |SV* sv
p |char* |sv_pvn |SV *sv|STRLEN *len
+p |char* |sv_pvutf8n |SV *sv|STRLEN *len
+p |char* |sv_pvbyten |SV *sv|STRLEN *len
p |I32 |sv_true |SV *sv
p |void |sv_add_arena |char* ptr|U32 size|U32 flags
p |int |sv_backoff |SV* sv
@@ -1626,6 +1630,8 @@ p |char* |sv_peek |SV* sv
p |void |sv_pos_u2b |SV* sv|I32* offsetp|I32* lenp
p |void |sv_pos_b2u |SV* sv|I32* offsetp
p |char* |sv_pvn_force |SV* sv|STRLEN* lp
+p |char* |sv_pvutf8n_force|SV* sv|STRLEN* lp
+p |char* |sv_pvbyten_force|SV* sv|STRLEN* lp
p |char* |sv_reftype |SV* sv|int ob
p |void |sv_replace |SV* sv|SV* nsv
p |void |sv_report_used
@@ -1653,10 +1659,10 @@ p |bool |sv_upgrade |SV* sv|U32 mt
p |void |sv_usepvn |SV* sv|char* ptr|STRLEN len
p |void |sv_vcatpvfn |SV* sv|const char* pat|STRLEN patlen \
|va_list* args|SV** svargs|I32 svmax \
- |bool *used_locale
+ |bool *maybe_tainted
p |void |sv_vsetpvfn |SV* sv|const char* pat|STRLEN patlen \
|va_list* args|SV** svargs|I32 svmax \
- |bool *used_locale
+ |bool *maybe_tainted
p |SV* |swash_init |char* pkg|char* name|SV* listsv \
|I32 minbits|I32 none
p |UV |swash_fetch |SV *sv|U8 *ptr
@@ -1754,7 +1760,11 @@ p |void* |default_protect|int *excpt|protect_body_t body|...
p |void* |vdefault_protect|int *excpt|protect_body_t body|va_list *args
p |void |reginitcolors
p |char* |sv_2pv_nolen |SV* sv
+p |char* |sv_2pvutf8_nolen|SV* sv
+p |char* |sv_2pvbyte_nolen|SV* sv
p |char* |sv_pv |SV *sv
+p |char* |sv_pvutf8 |SV *sv
+p |char* |sv_pvbyte |SV *sv
p |void |sv_force_normal|SV *sv
p |void |tmps_grow |I32 n
p |SV* |sv_rvweaken |SV *sv
diff --git a/embedvar.h b/embedvar.h
index 3e83de1d22..65a31f1ec7 100644
--- a/embedvar.h
+++ b/embedvar.h
@@ -49,6 +49,8 @@
#define PL_delaymagic (vTHX->Tdelaymagic)
#define PL_dirty (vTHX->Tdirty)
#define PL_dumpindent (vTHX->Tdumpindent)
+#define PL_efloatbuf (vTHX->Tefloatbuf)
+#define PL_efloatsize (vTHX->Tefloatsize)
#define PL_extralen (vTHX->Textralen)
#define PL_firstgv (vTHX->Tfirstgv)
#define PL_formtarget (vTHX->Tformtarget)
@@ -229,8 +231,6 @@
#define PL_doswitches (PERL_GET_INTERP->Idoswitches)
#define PL_dowarn (PERL_GET_INTERP->Idowarn)
#define PL_e_script (PERL_GET_INTERP->Ie_script)
-#define PL_efloatbuf (PERL_GET_INTERP->Iefloatbuf)
-#define PL_efloatsize (PERL_GET_INTERP->Iefloatsize)
#define PL_egid (PERL_GET_INTERP->Iegid)
#define PL_endav (PERL_GET_INTERP->Iendav)
#define PL_envgv (PERL_GET_INTERP->Ienvgv)
@@ -500,8 +500,6 @@
#define PL_doswitches (vTHX->Idoswitches)
#define PL_dowarn (vTHX->Idowarn)
#define PL_e_script (vTHX->Ie_script)
-#define PL_efloatbuf (vTHX->Iefloatbuf)
-#define PL_efloatsize (vTHX->Iefloatsize)
#define PL_egid (vTHX->Iegid)
#define PL_endav (vTHX->Iendav)
#define PL_envgv (vTHX->Ienvgv)
@@ -773,8 +771,6 @@
#define PL_Idoswitches PL_doswitches
#define PL_Idowarn PL_dowarn
#define PL_Ie_script PL_e_script
-#define PL_Iefloatbuf PL_efloatbuf
-#define PL_Iefloatsize PL_efloatsize
#define PL_Iegid PL_egid
#define PL_Iendav PL_endav
#define PL_Ienvgv PL_envgv
@@ -1002,6 +998,8 @@
#define PL_delaymagic (aTHX->Tdelaymagic)
#define PL_dirty (aTHX->Tdirty)
#define PL_dumpindent (aTHX->Tdumpindent)
+#define PL_efloatbuf (aTHX->Tefloatbuf)
+#define PL_efloatsize (aTHX->Tefloatsize)
#define PL_extralen (aTHX->Textralen)
#define PL_firstgv (aTHX->Tfirstgv)
#define PL_formtarget (aTHX->Tformtarget)
@@ -1136,6 +1134,8 @@
#define PL_Tdelaymagic PL_delaymagic
#define PL_Tdirty PL_dirty
#define PL_Tdumpindent PL_dumpindent
+#define PL_Tefloatbuf PL_efloatbuf
+#define PL_Tefloatsize PL_efloatsize
#define PL_Textralen PL_extralen
#define PL_Tfirstgv PL_firstgv
#define PL_Tformtarget PL_formtarget
diff --git a/epoc/config.h b/epoc/config.h
index 3f9808a282..0ff42e21be 100644
--- a/epoc/config.h
+++ b/epoc/config.h
@@ -2074,8 +2074,8 @@
* This symbol contains the ~name expanded version of ARCHLIB, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define ARCHLIB "/perl/lib/5.00560/epoc" /**/
-#define ARCHLIB_EXP "/perl/lib/5.00560/epoc" /**/
+#define ARCHLIB "/perl/lib/5.00562/epoc" /**/
+#define ARCHLIB_EXP "/perl/lib/5.00562/epoc" /**/
/* DLSYM_NEEDS_UNDERSCORE:
* This symbol, if defined, indicates that we need to prepend an
@@ -2168,42 +2168,6 @@
*/
/*#define HAS_WRITEV /**/
-/* HAS_DBMINIT64:
- * This symbol, if defined, indicates that the dbminit64 routine is
- * available to open dbm files larger than 2 gigabytes.
- */
-/* HAS_DBMCLOSE64:
- * This symbol, if defined, indicates that the dbmclose64 routine is
- * available to close dbm files larger than 2 gigabytes.
- */
-/* HAS_FETCH64:
- * This symbol, if defined, indicates that the fetch64 routine is
- * available to fetch from dbm files larger than 2 gigabytes.
- */
-/* HAS_STORE64:
- * This symbol, if defined, indicates that the store64 routine is
- * available to store to dbm files larger than 2 gigabytes.
- */
-/* HAS_DELETE64:
- * This symbol, if defined, indicates that the delete64 routine is
- * available to delete from dbm files larger than 2 gigabytes.
- */
-/* HAS_FIRSTKEY64:
- * This symbol, if defined, indicates that the firstkey64 routine is
- * available to firstkey in dbm files larger than 2 gigabytes.
- */
-/* HAS_NEXTKEY64:
- * This symbol, if defined, indicates that the nextkey64 routine is
- * available to nextkey in dbm files larger than 2 gigabytes.
- */
-/*#define HAS_DBMINIT64 / **/
-/*#define HAS_DBMCLOSE64 / **/
-/*#define HAS_FETCH64 / **/
-/*#define HAS_STORE64 / **/
-/*#define HAS_DELETE64 / **/
-/*#define HAS_FIRSTKEY64 / **/
-/*#define HAS_NEXTKEY64 / **/
-
/* USE_DYNAMIC_LOADING:
* This symbol, if defined, indicates that dynamic loading of
* some sort is available.
@@ -2291,70 +2255,6 @@
*/
/*#define INSTALL_USR_BIN_PERL /**/
-/* HAS_FSTAT64:
- * This symbol, if defined, indicates that the fstat64 routine is
- * available to stat files (fds) larger than 2 gigabytes.
- */
-/* HAS_FTRUNCATE64:
- * This symbol, if defined, indicates that the ftruncate64 routine is
- * available to tell files larger than 2 gigabytes.
- */
-/* HAS_LSEEK64:
- * This symbol, if defined, indicates that the lseek64 routine is
- * available to seek files larger than 2 gigabytes.
- */
-/* HAS_LSTAT64:
- * This symbol, if defined, indicates that the lstat64 routine is
- * available to stat files (symlinks) larger than 2 gigabytes.
- */
-/* HAS_OPEN64:
- * This symbol, if defined, indicates that the open64 routine is
- * available to open files larger than 2 gigabytes.
- */
-/* HAS_OPENDIR64:
- * This symbol, if defined, indicates that the opendir64 routine is
- * available to opendir files larger than 2 gigabytes.
- */
-/* HAS_READDIR64:
- * This symbol, if defined, indicates that the readdir64 routine is
- * available to readdir files larger than 2 gigabytes.
- */
-/* HAS_SEEKDIR64:
- * This symbol, if defined, indicates that the seekdir64 routine is
- * available to seekdir files larger than 2 gigabytes.
- */
-/* HAS_STAT64:
- * This symbol, if defined, indicates that the stat64 routine is
- * available to stat files larger than 2 gigabytes.
- */
-/* HAS_TELLDIR64:
- * This symbol, if defined, indicates that the telldir64 routine is
- * available to telldir files larger than 2 gigabytes.
- */
-/* HAS_TRUNCATE64:
- * This symbol, if defined, indicates that the truncate64 routine is
- * available to truncate files larger than 2 gigabytes.
- */
-/* HAS_OFF64_T:
- * This symbol will be defined if the C compiler supports off64_t.
- */
-/* HAS_STRUCT_DIRENT64:
- * This symbol will be defined if the C compiler supports struct dirent64.
- */
-/*#define HAS_FSTAT64 / **/
-/*#define HAS_FTRUNCATE64 / **/
-/*#define HAS_LSEEK64 / **/
-/*#define HAS_LSTAT64 / **/
-/*#define HAS_OPEN64 / **/
-/*#define HAS_OPENDIR64 / **/
-/*#define HAS_READDIR64 / **/
-/*#define HAS_SEEKDIR64 / **/
-/*#define HAS_STAT64 / **/
-/*#define HAS_TELLDIR64 / **/
-/*#define HAS_TRUNCATE64 / **/
-/*#define HAS_OFF64_T / **/
-/*#define HAS_STRUCT_DIRENT64 / **/
-
/* PRIVLIB:
* This symbol contains the name of the private library for this package.
* The library is private in the sense that it needn't be in anyone's
@@ -2365,8 +2265,8 @@
* This symbol contains the ~name expanded version of PRIVLIB, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define PRIVLIB "/perl/lib/5.00560" /**/
-#define PRIVLIB_EXP "/perl/lib/5.00560" /**/
+#define PRIVLIB "/perl/lib/5.00562" /**/
+#define PRIVLIB_EXP "/perl/lib/5.00562" /**/
/* SELECT_MIN_BITS:
* This symbol holds the minimum number of bits operated by select.
@@ -2390,8 +2290,8 @@
* This symbol contains the ~name expanded version of SITEARCH, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define SITEARCH "/perl/lib/site_perl/5.00556/epoc" /**/
-#define SITEARCH_EXP "/perl/lib/site_perl/5.00560/epoc" /**/
+#define SITEARCH "/perl/lib/site_perl/5.00562/epoc" /**/
+#define SITEARCH_EXP "/perl/lib/site_perl/5.00562/epoc" /**/
/* SITELIB:
* This symbol contains the name of the private library for this package.
@@ -2406,8 +2306,8 @@
* This symbol contains the ~name expanded version of SITELIB, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define SITELIB "/perl/lib/site_perl/5.00560" /**/
-#define SITELIB_EXP "/perl/lib/site_perl/5.00560" /**/
+#define SITELIB "/perl/lib/site_perl/5.00562" /**/
+#define SITELIB_EXP "/perl/lib/site_perl/5.00562" /**/
/* STARTPERL:
* This variable contains the string to put in front of a perl
@@ -2416,52 +2316,6 @@
*/
#define STARTPERL "#!/opt/perl/bin/perl" /**/
-/* HAS_FGETPOS64:
- * This symbol, if defined, indicates that the fgetpos64 routine is
- * available to getpos files larger than 2 gigabytes.
- */
-/* HAS_FOPEN64:
- * This symbol, if defined, indicates that the fopen64 routine is
- * available to open files larger than 2 gigabytes.
- */
-/* HAS_FREOPEN64:
- * This symbol, if defined, indicates that the freopen64 routine is
- * available to reopen files larger than 2 gigabytes.
- */
-/* HAS_FSEEK64:
- * This symbol, if defined, indicates that the fseek64 routine is
- * available to seek files larger than 2 gigabytes.
- */
-/* HAS_FSEEKO64:
- * This symbol, if defined, indicates that the fseeko64 routine is
- * available to seek files larger than 2 gigabytes.
- */
-/* HAS_FSETPOS64:
- * This symbol, if defined, indicates that the fsetpos64 routine is
- * available to setpos files larger than 2 gigabytes.
- */
-/* HAS_FTELL64:
- * This symbol, if defined, indicates that the ftell64 routine is
- * available to tell files larger than 2 gigabytes.
- */
-/* HAS_FTELLO64:
- * This symbol, if defined, indicates that the ftello64 routine is
- * available to tell files larger than 2 gigabytes.
- */
-/* HAS_TMPFILE64:
- * This symbol, if defined, indicates that the tmpfile64 routine is
- * available to tmpfile files larger than 2 gigabytes.
- */
-/*#define HAS_FGETPOS64 / **/
-/*#define HAS_FOPEN64 / **/
-/*#define HAS_FREOPEN64 / **/
-/*#define HAS_FSEEK64 / **/
-/*#define HAS_FSEEKO64 / **/
-/*#define HAS_FSETPOS64 / **/
-/*#define HAS_FTELL64 / **/
-/*#define HAS_FTELLO64 / **/
-/*#define HAS_TMPFILE64 / **/
-
/* HAS_STDIO_STREAM_ARRAY:
* This symbol, if defined, tells that there is an array
* holding the stdio streams.
diff --git a/ext/B/B.pm b/ext/B/B.pm
index e4730cd9c9..2187e59a72 100644
--- a/ext/B/B.pm
+++ b/ext/B/B.pm
@@ -107,6 +107,11 @@ sub timing_info {
}
my %symtable;
+
+sub clearsym {
+ %symtable = ();
+}
+
sub savesym {
my ($obj, $value) = @_;
# warn(sprintf("savesym: sym_%x => %s\n", $$obj, $value)); # debug
diff --git a/ext/B/B.xs b/ext/B/B.xs
index ad3d00842d..2d6145da66 100644
--- a/ext/B/B.xs
+++ b/ext/B/B.xs
@@ -202,7 +202,7 @@ make_sv_object(pTHX_ SV *arg, SV *sv)
}
if (!type) {
type = svclassnames[SvTYPE(sv)];
- iv = (IV)PTR_CAST sv;
+ iv = PTR2IV(sv);
}
sv_setiv(newSVrv(arg, type), iv);
return arg;
@@ -211,7 +211,7 @@ make_sv_object(pTHX_ SV *arg, SV *sv)
static SV *
make_mg_object(pTHX_ SV *arg, MAGIC *mg)
{
- sv_setiv(newSVrv(arg, "B::MAGIC"), (IV)PTR_CAST mg);
+ sv_setiv(newSVrv(arg, "B::MAGIC"), PTR2IV(mg));
return arg;
}
@@ -317,7 +317,7 @@ walkoptree(pTHX_ SV *opsv, char *method)
if (!SvROK(opsv))
croak("opsv is not a reference");
opsv = sv_mortalcopy(opsv);
- o = (OP*)PTR_CAST SvIV((SV*)SvRV(opsv));
+ o = INT2PTR(OP*,SvIV((SV*)SvRV(opsv)));
if (walkoptree_debug) {
PUSHMARK(sp);
XPUSHs(opsv);
@@ -332,7 +332,7 @@ walkoptree(pTHX_ SV *opsv, char *method)
OP *kid;
for (kid = ((UNOP*)o)->op_first; kid; kid = kid->op_sibling) {
/* Use the same opsv. Rely on methods not to mess it up. */
- sv_setiv(newSVrv(opsv, cc_opclassname(aTHX_ kid)), (IV)PTR_CAST kid);
+ sv_setiv(newSVrv(opsv, cc_opclassname(aTHX_ kid)), PTR2IV(kid));
walkoptree(aTHX_ opsv, method);
}
}
@@ -437,7 +437,7 @@ walkoptree_debug(...)
OUTPUT:
RETVAL
-#define address(sv) (IV)PTR_CAST sv
+#define address(sv) PTR2IV(sv)
IV
address(sv)
@@ -647,10 +647,10 @@ PMOP_pmreplroot(o)
if (o->op_type == OP_PUSHRE) {
sv_setiv(newSVrv(ST(0), root ?
svclassnames[SvTYPE((SV*)root)] : "B::SV"),
- (IV)PTR_CAST root);
+ PTR2IV(root));
}
else {
- sv_setiv(newSVrv(ST(0), cc_opclassname(aTHX_ root)), (IV)PTR_CAST root);
+ sv_setiv(newSVrv(ST(0), cc_opclassname(aTHX_ root)), PTR2IV(root));
}
B::OP
@@ -1153,7 +1153,7 @@ void
CvXSUB(cv)
B::CV cv
CODE:
- ST(0) = sv_2mortal(newSViv((IV)PTR_CAST CvXSUB(cv)));
+ ST(0) = sv_2mortal(newSViv(PTR2IV(CvXSUB(cv))));
void
diff --git a/ext/B/B/Bblock.pm b/ext/B/B/Bblock.pm
index d2ef78f616..b914bc661b 100644
--- a/ext/B/B/Bblock.pm
+++ b/ext/B/B/Bblock.pm
@@ -129,6 +129,7 @@ sub B::PMOP::mark_if_leader {
sub compile {
my @options = @_;
+ B::clearsym();
if (@options) {
return sub {
my $objname;
diff --git a/ext/B/B/Debug.pm b/ext/B/B/Debug.pm
index 75636265e6..89100689a8 100644
--- a/ext/B/B/Debug.pm
+++ b/ext/B/B/Debug.pm
@@ -247,6 +247,7 @@ sub B::SPECIAL::debug {
sub compile {
my $order = shift;
+ B::clearsym();
if ($order eq "exec") {
return sub { walkoptree_exec(main_start, "debug") }
} else {
diff --git a/ext/B/B/Terse.pm b/ext/B/B/Terse.pm
index 93757f34ce..35bf9b8d0d 100644
--- a/ext/B/B/Terse.pm
+++ b/ext/B/B/Terse.pm
@@ -17,6 +17,7 @@ sub terse {
sub compile {
my $order = shift;
my @options = @_;
+ B::clearsym();
if (@options) {
return sub {
my $objname;
diff --git a/ext/B/Makefile.PL b/ext/B/Makefile.PL
index 9af85c9a62..dcff65a50b 100644
--- a/ext/B/Makefile.PL
+++ b/ext/B/Makefile.PL
@@ -16,7 +16,8 @@ if ($^O eq 'MSWin32') {
WriteMakefile(
NAME => "B",
VERSION => "a5",
- MAN3PODS => {},
+ PL_FILES => { 'defsubs_h.PL' => 'defsubs.h' },
+ MAN3PODS => {},
clean => {
FILES => "perl$e *$o B.c defsubs.h *~"
}
diff --git a/ext/B/defsubs.h.PL b/ext/B/defsubs_h.PL
index 2129c8c5bb..8dfa3a5fe2 100644
--- a/ext/B/defsubs.h.PL
+++ b/ext/B/defsubs_h.PL
@@ -4,6 +4,7 @@
#!perl
my ($out) = __FILE__ =~ /(^.*)\.PL/;
if ($^O eq 'VMS') { ($out) = __FILE__ =~ /^(.+)_PL$/i; }
+$out =~ s/_h$/.h/;
open(OUT,">$out") || die "Cannot open $file:$!";
print "Extracting $out . . .\n";
foreach my $const (qw(AVf_REAL
diff --git a/ext/B/typemap b/ext/B/typemap
index 5f6af0f2dc..febadf8d62 100644
--- a/ext/B/typemap
+++ b/ext/B/typemap
@@ -35,7 +35,7 @@ INPUT
T_OP_OBJ
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
- $var = ($type)PTR_CAST tmp;
+ $var = INT2PTR($type,tmp);
}
else
croak(\"$var is not a reference\")
@@ -43,7 +43,7 @@ T_OP_OBJ
T_SV_OBJ
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
- $var = ($type)PTR_CAST tmp;
+ $var = INT2PTR($type,tmp);
}
else
croak(\"$var is not a reference\")
@@ -51,18 +51,18 @@ T_SV_OBJ
T_MG_OBJ
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
- $var = ($type)PTR_CAST tmp;
+ $var = INT2PTR($type,tmp);
}
else
croak(\"$var is not a reference\")
OUTPUT
T_OP_OBJ
- sv_setiv(newSVrv($arg, cc_opclassname(aTHX_ (OP*)$var)), (IV)PTR_CAST $var);
+ sv_setiv(newSVrv($arg, cc_opclassname(aTHX_ (OP*)$var)), PTR2IV($var));
T_SV_OBJ
make_sv_object(aTHX_ ($arg), (SV*)($var));
T_MG_OBJ
- sv_setiv(newSVrv($arg, "B::MAGIC"), (IV)PTR_CAST $var);
+ sv_setiv(newSVrv($arg, "B::MAGIC"), PTR2IV($var));
diff --git a/ext/DB_File/Changes b/ext/DB_File/Changes
index 6d374bf1f1..8f364564a5 100644
--- a/ext/DB_File/Changes
+++ b/ext/DB_File/Changes
@@ -272,3 +272,10 @@
* Added a BOOT check to test for equivalent versions of db.h &
libdb.a/so.
+1.71 7th September 1999
+
+ * Fixed a bug that prevented 1.70 from compiling under win32
+
+ * Updated to support Berkeley DB 3.x
+
+ * Updated dbinfo for Berkeley DB 3.x file formats.
diff --git a/ext/DB_File/DB_File.pm b/ext/DB_File/DB_File.pm
index e20a5621e7..44bdad61f6 100644
--- a/ext/DB_File/DB_File.pm
+++ b/ext/DB_File/DB_File.pm
@@ -1,8 +1,8 @@
# DB_File.pm -- Perl 5 interface to Berkeley DB
#
# written by Paul Marquess (Paul.Marquess@btinternet.com)
-# last modified 4th August 1999
-# version 1.70
+# last modified 4th September 1999
+# version 1.71
#
# Copyright (c) 1995-1999 Paul Marquess. All rights reserved.
# This program is free software; you can redistribute it and/or
@@ -145,7 +145,7 @@ use vars qw($VERSION @ISA @EXPORT $AUTOLOAD $DB_BTREE $DB_HASH $DB_RECNO $db_ver
use Carp;
-$VERSION = "1.70" ;
+$VERSION = "1.71" ;
#typedef enum { DB_BTREE, DB_HASH, DB_RECNO } DBTYPE;
$DB_BTREE = new DB_File::BTREEINFO ;
@@ -421,10 +421,10 @@ DB_File - Perl5 access to Berkeley DB version 1.x
B<DB_File> is a module which allows Perl programs to make use of the
facilities provided by Berkeley DB version 1.x (if you have a newer
-version of DB, see L<Using DB_File with Berkeley DB version 2>). It is
-assumed that you have a copy of the Berkeley DB manual pages at hand
-when reading this documentation. The interface defined here mirrors the
-Berkeley DB interface closely.
+version of DB, see L<Using DB_File with Berkeley DB version 2 or 3>).
+It is assumed that you have a copy of the Berkeley DB manual pages at
+hand when reading this documentation. The interface defined here
+mirrors the Berkeley DB interface closely.
Berkeley DB is a C library which provides a consistent interface to a
number of database formats. B<DB_File> provides an interface to all
@@ -465,32 +465,33 @@ number.
=back
-=head2 Using DB_File with Berkeley DB version 2
+=head2 Using DB_File with Berkeley DB version 2 or 3
Although B<DB_File> is intended to be used with Berkeley DB version 1,
-it can also be used with version 2. In this case the interface is
+it can also be used with version 2.or 3 In this case the interface is
limited to the functionality provided by Berkeley DB 1.x. Anywhere the
-version 2 interface differs, B<DB_File> arranges for it to work like
-version 1. This feature allows B<DB_File> scripts that were built with
-version 1 to be migrated to version 2 without any changes.
+version 2 or 3 interface differs, B<DB_File> arranges for it to work
+like version 1. This feature allows B<DB_File> scripts that were built
+with version 1 to be migrated to version 2 or 3 without any changes.
If you want to make use of the new features available in Berkeley DB
-2.x, use the Perl module B<BerkeleyDB> instead.
+2.x or 3.x, use the Perl module B<BerkeleyDB> instead.
At the time of writing this document the B<BerkeleyDB> module is still
alpha quality (the version number is < 1.0), and so unsuitable for use
in any serious development work. Once its version number is >= 1.0, it
is considered stable enough for real work.
-B<Note:> The database file format has changed in Berkeley DB version 2.
-If you cannot recreate your databases, you must dump any existing
-databases with the C<db_dump185> utility that comes with Berkeley DB.
-Once you have rebuilt DB_File to use Berkeley DB version 2, your
+B<Note:> The database file format has changed in both Berkeley DB
+version 2 and 3. If you cannot recreate your databases, you must dump
+any existing databases with the C<db_dump185> utility that comes with
+Berkeley DB.
+Once you have rebuilt DB_File to use Berkeley DB version 2 or 3, your
databases can be recreated using C<db_load>. Refer to the Berkeley DB
documentation for further details.
-Please read L<"COPYRIGHT"> before using version 2.x of Berkeley DB with
-DB_File.
+Please read L<"COPYRIGHT"> before using version 2.x or 3.x of Berkeley
+DB with DB_File.
=head2 Interface to Berkeley DB
@@ -1940,11 +1941,12 @@ date, so the most recent version can always be found on CPAN (see
L<perlmod/CPAN> for details), in the directory
F<modules/by-module/DB_File>.
-This version of B<DB_File> will work with either version 1.x or 2.x of
-Berkeley DB, but is limited to the functionality provided by version 1.
+This version of B<DB_File> will work with either version 1.x, 2.x or
+3.x of Berkeley DB, but is limited to the functionality provided by
+version 1.
The official web site for Berkeley DB is F<http://www.sleepycat.com>.
-Both versions 1 and 2 of Berkeley DB are available there.
+All versions of Berkeley DB are available there.
Alternatively, Berkeley DB version 1 is available at your nearest CPAN
archive in F<src/misc/db.1.85.tar.gz>.
diff --git a/ext/DB_File/DB_File.xs b/ext/DB_File/DB_File.xs
index 2ee1e61f0f..ccb9b757fe 100644
--- a/ext/DB_File/DB_File.xs
+++ b/ext/DB_File/DB_File.xs
@@ -3,8 +3,8 @@
DB_File.xs -- Perl 5 interface to Berkeley DB
written by Paul Marquess <Paul.Marquess@btinternet.com>
- last modified 4th August 1999
- version 1.70
+ last modified 7th September 1999
+ version 1.71
All comments/suggestions/problems are welcome
@@ -78,6 +78,9 @@
GV_ADD|GV_ADDMULT -- bug spotted by Nick Ing-Simmons.
Added a BOOT check to test for equivalent versions of db.h &
libdb.a/so.
+ 1.71 - Support for Berkeley DB version 3.
+ Support for Berkeley DB 2/3's backward compatability mode.
+ Rewrote push
*/
@@ -116,7 +119,12 @@
#ifdef op
# undef op
#endif
-#include <db.h>
+
+#ifdef COMPAT185
+# include <db_185.h>
+#else
+# include <db.h>
+#endif
#ifndef pTHX
# define pTHX
@@ -134,10 +142,21 @@
/* #define TRACE */
#define DBM_FILTERING
+#ifdef TRACE
+# define Trace(x) printf x
+#else
+# define Trace(x)
+#endif
+
+#define DBT_clear(x) Zero(&x, 1, DBT) ;
#ifdef DB_VERSION_MAJOR
+#if DB_VERSION_MAJOR == 2
+# define BERKELEY_DB_1_OR_2
+#endif
+
/* map version 2 features & constants onto their version 1 equivalent */
#ifdef DB_Prefix_t
@@ -152,7 +171,11 @@
/* DBTYPE stays the same */
/* HASHINFO, RECNOINFO and BTREEINFO map to DB_INFO */
-typedef DB_INFO INFO ;
+#if DB_VERSION_MAJOR == 2
+ typedef DB_INFO INFO ;
+#else /* DB_VERSION_MAJOR > 2 */
+# define DB_FIXEDLEN (0x8000)
+#endif /* DB_VERSION_MAJOR == 2 */
/* version 2 has db_recno_t in place of recno_t */
typedef db_recno_t recno_t;
@@ -166,15 +189,18 @@ typedef db_recno_t recno_t;
#define R_NEXT DB_NEXT
#define R_NOOVERWRITE DB_NOOVERWRITE
#define R_PREV DB_PREV
+
#if DB_VERSION_MAJOR == 2 && DB_VERSION_MINOR < 5
-#define R_SETCURSOR 0x800000
+# define R_SETCURSOR 0x800000
#else
-#define R_SETCURSOR (-100)
+# define R_SETCURSOR (-100)
#endif
+
#define R_RECNOSYNC 0
#define R_FIXEDLEN DB_FIXEDLEN
#define R_DUP DB_DUP
+
#define db_HA_hash h_hash
#define db_HA_ffactor h_ffactor
#define db_HA_nelem h_nelem
@@ -209,13 +235,15 @@ typedef db_recno_t recno_t;
#define DB_flags(x, v) x |= v
#if DB_VERSION_MAJOR == 2 && DB_VERSION_MINOR < 5
-#define flagSet(flags, bitmask) ((flags) & (bitmask))
+# define flagSet(flags, bitmask) ((flags) & (bitmask))
#else
-#define flagSet(flags, bitmask) (((flags) & DB_OPFLAGS_MASK) == (bitmask))
+# define flagSet(flags, bitmask) (((flags) & DB_OPFLAGS_MASK) == (bitmask))
#endif
#else /* db version 1.x */
+#define BERKELEY_DB_1_OR_2
+
typedef union INFO {
HASHINFO hash ;
RECNOINFO recno ;
@@ -224,17 +252,17 @@ typedef union INFO {
#ifdef mDB_Prefix_t
-#ifdef DB_Prefix_t
-#undef DB_Prefix_t
-#endif
-#define DB_Prefix_t mDB_Prefix_t
+# ifdef DB_Prefix_t
+# undef DB_Prefix_t
+# endif
+# define DB_Prefix_t mDB_Prefix_t
#endif
#ifdef mDB_Hash_t
-#ifdef DB_Hash_t
-#undef DB_Hash_t
-#endif
-#define DB_Hash_t mDB_Hash_t
+# ifdef DB_Hash_t
+# undef DB_Hash_t
+# endif
+# define DB_Hash_t mDB_Hash_t
#endif
#define db_HA_hash hash.hash
@@ -281,20 +309,20 @@ typedef union INFO {
#ifdef DB_VERSION_MAJOR
#define db_DESTROY(db) ( db->cursor->c_close(db->cursor),\
- db->dbp->close(db->dbp, 0) )
+ (db->dbp->close)(db->dbp, 0) )
#define db_close(db) ((db->dbp)->close)(db->dbp, 0)
#define db_del(db, key, flags) (flagSet(flags, R_CURSOR) \
? ((db->cursor)->c_del)(db->cursor, 0) \
: ((db->dbp)->del)(db->dbp, NULL, &key, flags) )
-#else
+#else /* ! DB_VERSION_MAJOR */
#define db_DESTROY(db) ((db->dbp)->close)(db->dbp)
#define db_close(db) ((db->dbp)->close)(db->dbp)
#define db_del(db, key, flags) ((db->dbp)->del)(db->dbp, &key, flags)
#define db_put(db, key, value, flags) ((db->dbp)->put)(db->dbp, &key, &value, flags)
-#endif
+#endif /* ! DB_VERSION_MAJOR */
#define db_seq(db, key, value, flags) do_SEQ(db, key, value, flags)
@@ -306,7 +334,9 @@ typedef struct {
SV * prefix ;
SV * hash ;
int in_memory ;
+#ifdef BERKELEY_DB_1_OR_2
INFO info ;
+#endif
#ifdef DB_VERSION_MAJOR
DBC * cursor ;
#endif
@@ -439,48 +469,6 @@ u_int flags ;
#endif /* DB_VERSION_MAJOR */
-static void
-GetVersionInfo(pTHX)
-{
- SV * version_sv = perl_get_sv("DB_File::db_version", GV_ADD|GV_ADDMULTI) ;
- SV * ver_sv = perl_get_sv("DB_File::db_ver", GV_ADD|GV_ADDMULTI) ;
-#ifdef DB_VERSION_MAJOR
- int Major, Minor, Patch ;
-
- (void)db_version(&Major, &Minor, &Patch) ;
-
- /* Check that the versions of db.h and libdb.a are the same */
- if (Major != DB_VERSION_MAJOR || Minor != DB_VERSION_MINOR
- || Patch != DB_VERSION_PATCH)
- croak("\nDB_File needs compatible versions of libdb & db.h\n\tyou have db.h version %d.%d.%d and libdb version %d.%d.%d\n",
- DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH,
- Major, Minor, Patch) ;
-
- /* check that libdb is recent enough -- we need 2.3.4 or greater */
- if (Major == 2 && (Minor < 3 || (Minor == 3 && Patch < 4)))
- croak("DB_File needs Berkeley DB 2.3.4 or greater, you have %d.%d.%d\n",
- Major, Minor, Patch) ;
-
-#if PERL_VERSION > 3
- sv_setpvf(version_sv, "%d.%d", Major, Minor) ;
- sv_setpvf(ver_sv, "%d.%03d%03d", Major, Minor, Patch) ;
-#else
- {
- char buffer[40] ;
- sprintf(buffer, "%d.%d", Major, Minor) ;
- sv_setpv(version_sv, buffer) ;
- sprintf(buffer, "%d.%03d%03d", Major, Minor, Patch) ;
- sv_setpv(ver_sv, buffer) ;
- }
-#endif
-
-#else
- sv_setiv(version_sv, 1) ;
- sv_setiv(ver_sv, 1) ;
-#endif
-
-}
-
static int
#ifdef CAN_PROTOTYPE
@@ -641,7 +629,7 @@ size_t size ;
}
-#ifdef TRACE
+#if defined(TRACE) && defined(BERKELEY_DB_1_OR_2)
static void
#ifdef CAN_PROTOTYPE
@@ -724,8 +712,8 @@ DB_File db ;
DBT value ;
int RETVAL ;
- DBT_flags(key) ;
- DBT_flags(value) ;
+ DBT_clear(key) ;
+ DBT_clear(value) ;
RETVAL = do_SEQ(db, key, value, R_LAST) ;
if (RETVAL == 0)
RETVAL = *(I32 *)key.data ;
@@ -760,6 +748,7 @@ I32 value ;
return value ;
}
+
static DB_File
#ifdef CAN_PROTOTYPE
ParseOpenInfo(pTHX_ int isHASH, char *name, int flags, int mode, SV *sv)
@@ -772,6 +761,9 @@ int mode ;
SV * sv ;
#endif
{
+
+#ifdef BERKELEY_DB_1_OR_2 /* Berkeley DB Version 1 or 2 */
+
SV ** svp;
HV * action ;
DB_File RETVAL = (DB_File)safemalloc(sizeof(DB_File_type)) ;
@@ -1032,11 +1024,265 @@ SV * sv ;
}
#else
+
+#if defined(DB_LIBRARY_COMPATIBILITY_API) && DB_VERSION_MAJOR > 2
+ RETVAL->dbp = __db185_open(name, flags, mode, RETVAL->type, openinfo) ;
+#else
RETVAL->dbp = dbopen(name, flags, mode, RETVAL->type, openinfo) ;
+#endif /* DB_LIBRARY_COMPATIBILITY_API */
+
#endif
return (RETVAL) ;
-}
+
+#else /* Berkeley DB Version > 2 */
+
+ SV ** svp;
+ HV * action ;
+ DB_File RETVAL = (DB_File)safemalloc(sizeof(DB_File_type)) ;
+ DB * dbp ;
+ STRLEN n_a;
+ int status ;
+
+/* printf("In ParseOpenInfo name=[%s] flags=[%d] mode = [%d]\n", name, flags, mode) ; */
+ Zero(RETVAL, 1, DB_File_type) ;
+
+ /* Default to HASH */
+#ifdef DBM_FILTERING
+ RETVAL->filtering = 0 ;
+ RETVAL->filter_fetch_key = RETVAL->filter_store_key =
+ RETVAL->filter_fetch_value = RETVAL->filter_store_value =
+#endif /* DBM_FILTERING */
+ RETVAL->hash = RETVAL->compare = RETVAL->prefix = NULL ;
+ RETVAL->type = DB_HASH ;
+
+ /* DGH - Next line added to avoid SEGV on existing hash DB */
+ CurrentDB = RETVAL;
+
+ /* fd for 1.86 hash in memory files doesn't return -1 like 1.85 */
+ RETVAL->in_memory = (name == NULL) ;
+
+ status = db_create(&RETVAL->dbp, NULL,0) ;
+ /* printf("db_create returned %d %s\n", status, db_strerror(status)) ; */
+ if (status) {
+ RETVAL->dbp = NULL ;
+ return (RETVAL) ;
+ }
+ dbp = RETVAL->dbp ;
+
+ if (sv)
+ {
+ if (! SvROK(sv) )
+ croak ("type parameter is not a reference") ;
+
+ svp = hv_fetch( (HV*)SvRV(sv), "GOT", 3, FALSE) ;
+ if (svp && SvOK(*svp))
+ action = (HV*) SvRV(*svp) ;
+ else
+ croak("internal error") ;
+
+ if (sv_isa(sv, "DB_File::HASHINFO"))
+ {
+
+ if (!isHASH)
+ croak("DB_File can only tie an associative array to a DB_HASH database") ;
+
+ RETVAL->type = DB_HASH ;
+
+ svp = hv_fetch(action, "hash", 4, FALSE);
+
+ if (svp && SvOK(*svp))
+ {
+ (void)dbp->set_h_hash(dbp, hash_cb) ;
+ RETVAL->hash = newSVsv(*svp) ;
+ }
+
+ svp = hv_fetch(action, "ffactor", 7, FALSE);
+ if (svp)
+ (void)dbp->set_h_ffactor(dbp, SvIV(*svp)) ;
+
+ svp = hv_fetch(action, "nelem", 5, FALSE);
+ if (svp)
+ (void)dbp->set_h_nelem(dbp, SvIV(*svp)) ;
+
+ svp = hv_fetch(action, "bsize", 5, FALSE);
+ if (svp)
+ (void)dbp->set_pagesize(dbp, SvIV(*svp));
+
+ svp = hv_fetch(action, "cachesize", 9, FALSE);
+ if (svp)
+ (void)dbp->set_cachesize(dbp, 0, SvIV(*svp), 0) ;
+
+ svp = hv_fetch(action, "lorder", 6, FALSE);
+ if (svp)
+ (void)dbp->set_lorder(dbp, SvIV(*svp)) ;
+
+ PrintHash(info) ;
+ }
+ else if (sv_isa(sv, "DB_File::BTREEINFO"))
+ {
+ if (!isHASH)
+ croak("DB_File can only tie an associative array to a DB_BTREE database");
+
+ RETVAL->type = DB_BTREE ;
+
+ svp = hv_fetch(action, "compare", 7, FALSE);
+ if (svp && SvOK(*svp))
+ {
+ (void)dbp->set_bt_compare(dbp, btree_compare) ;
+ RETVAL->compare = newSVsv(*svp) ;
+ }
+
+ svp = hv_fetch(action, "prefix", 6, FALSE);
+ if (svp && SvOK(*svp))
+ {
+ (void)dbp->set_bt_prefix(dbp, btree_prefix) ;
+ RETVAL->prefix = newSVsv(*svp) ;
+ }
+
+ svp = hv_fetch(action, "flags", 5, FALSE);
+ if (svp)
+ (void)dbp->set_flags(dbp, SvIV(*svp)) ;
+
+ svp = hv_fetch(action, "cachesize", 9, FALSE);
+ if (svp)
+ (void)dbp->set_cachesize(dbp, 0, SvIV(*svp), 0) ;
+
+ svp = hv_fetch(action, "psize", 5, FALSE);
+ if (svp)
+ (void)dbp->set_pagesize(dbp, SvIV(*svp)) ;
+
+ svp = hv_fetch(action, "lorder", 6, FALSE);
+ if (svp)
+ (void)dbp->set_lorder(dbp, SvIV(*svp)) ;
+
+ PrintBtree(info) ;
+
+ }
+ else if (sv_isa(sv, "DB_File::RECNOINFO"))
+ {
+ int fixed = FALSE ;
+
+ if (isHASH)
+ croak("DB_File can only tie an array to a DB_RECNO database");
+
+ RETVAL->type = DB_RECNO ;
+
+ svp = hv_fetch(action, "flags", 5, FALSE);
+ if (svp) {
+ int flags = SvIV(*svp) ;
+ /* remove FIXDLEN, if present */
+ if (flags & DB_FIXEDLEN) {
+ fixed = TRUE ;
+ flags &= ~DB_FIXEDLEN ;
+ }
+ }
+
+ svp = hv_fetch(action, "cachesize", 9, FALSE);
+ if (svp) {
+ status = dbp->set_cachesize(dbp, 0, SvIV(*svp), 0) ;
+ }
+
+ svp = hv_fetch(action, "psize", 5, FALSE);
+ if (svp) {
+ status = dbp->set_pagesize(dbp, SvIV(*svp)) ;
+ }
+
+ svp = hv_fetch(action, "lorder", 6, FALSE);
+ if (svp) {
+ status = dbp->set_lorder(dbp, SvIV(*svp)) ;
+ }
+
+ svp = hv_fetch(action, "bval", 4, FALSE);
+ if (svp && SvOK(*svp))
+ {
+ int value ;
+ if (SvPOK(*svp))
+ value = (int)*SvPV(*svp, n_a) ;
+ else
+ value = SvIV(*svp) ;
+
+ if (fixed) {
+ status = dbp->set_re_pad(dbp, value) ;
+ }
+ else {
+ status = dbp->set_re_delim(dbp, value) ;
+ }
+
+ }
+
+ if (fixed) {
+ svp = hv_fetch(action, "reclen", 6, FALSE);
+ if (svp) {
+ u_int32_t len = (u_int32_t)SvIV(*svp) ;
+ status = dbp->set_re_len(dbp, len) ;
+ }
+ }
+
+ if (name != NULL) {
+ status = dbp->set_re_source(dbp, name) ;
+ name = NULL ;
+ }
+
+ svp = hv_fetch(action, "bfname", 6, FALSE);
+ if (svp && SvOK(*svp)) {
+ char * ptr = SvPV(*svp,n_a) ;
+ name = (char*) n_a ? ptr : NULL ;
+ }
+ else
+ name = NULL ;
+
+
+ status = dbp->set_flags(dbp, DB_RENUMBER) ;
+
+ if (flags){
+ (void)dbp->set_flags(dbp, flags) ;
+ }
+ PrintRecno(info) ;
+ }
+ else
+ croak("type is not of type DB_File::HASHINFO, DB_File::BTREEINFO or DB_File::RECNOINFO");
+ }
+
+ {
+ int Flags = 0 ;
+ int status ;
+
+ /* Map 1.x flags to 3.x flags */
+ if ((flags & O_CREAT) == O_CREAT)
+ Flags |= DB_CREATE ;
+
+#if O_RDONLY == 0
+ if (flags == O_RDONLY)
+#else
+ if ((flags & O_RDONLY) == O_RDONLY && (flags & O_RDWR) != O_RDWR)
+#endif
+ Flags |= DB_RDONLY ;
+
+#ifdef O_TRUNC
+ if ((flags & O_TRUNC) == O_TRUNC)
+ Flags |= DB_TRUNCATE ;
+#endif
+
+ status = RETVAL->dbp->open(RETVAL->dbp, name, NULL, RETVAL->type,
+ Flags, mode) ;
+ /* printf("open returned %d %s\n", status, db_strerror(status)) ; */
+
+ if (status == 0)
+ status = (RETVAL->dbp->cursor)(RETVAL->dbp, NULL, &RETVAL->cursor,
+ 0) ;
+ /* printf("cursor returned %d %s\n", status, db_strerror(status)) ; */
+
+ if (status)
+ RETVAL->dbp = NULL ;
+
+ }
+
+ return (RETVAL) ;
+
+#endif /* Berkeley DB Version > 2 */
+
+} /* ParseOpenInfo */
static double
@@ -1279,11 +1525,11 @@ MODULE = DB_File PACKAGE = DB_File PREFIX = db_
BOOT:
{
- GetVersionInfo(aTHX) ;
+ __getBerkeleyDBInfo() ;
+ DBT_clear(empty) ;
empty.data = &zero ;
empty.size = sizeof(recno_t) ;
- DBT_flags(empty) ;
}
double
@@ -1363,7 +1609,7 @@ db_EXISTS(db, key)
{
DBT value ;
- DBT_flags(value) ;
+ DBT_clear(value) ;
CurrentDB = db ;
RETVAL = (((db->dbp)->get)(db->dbp, TXN &key, &value, 0) == 0) ;
}
@@ -1379,7 +1625,7 @@ db_FETCH(db, key, flags=0)
{
DBT value ;
- DBT_flags(value) ;
+ DBT_clear(value) ;
CurrentDB = db ;
/* RETVAL = ((db->dbp)->get)(db->dbp, TXN &key, &value, flags) ; */
RETVAL = db_get(db, key, value, flags) ;
@@ -1405,8 +1651,8 @@ db_FIRSTKEY(db)
DBTKEY key ;
DBT value ;
- DBT_flags(key) ;
- DBT_flags(value) ;
+ DBT_clear(key) ;
+ DBT_clear(value) ;
CurrentDB = db ;
RETVAL = do_SEQ(db, key, value, R_FIRST) ;
ST(0) = sv_newmortal();
@@ -1421,7 +1667,7 @@ db_NEXTKEY(db, key)
{
DBT value ;
- DBT_flags(value) ;
+ DBT_clear(value) ;
CurrentDB = db ;
RETVAL = do_SEQ(db, key, value, R_NEXT) ;
ST(0) = sv_newmortal();
@@ -1445,8 +1691,8 @@ unshift(db, ...)
DB * Db = db->dbp ;
STRLEN n_a;
- DBT_flags(key) ;
- DBT_flags(value) ;
+ DBT_clear(key) ;
+ DBT_clear(value) ;
CurrentDB = db ;
#ifdef DB_VERSION_MAJOR
/* get the first value */
@@ -1483,8 +1729,8 @@ pop(db)
DBTKEY key ;
DBT value ;
- DBT_flags(key) ;
- DBT_flags(value) ;
+ DBT_clear(key) ;
+ DBT_clear(value) ;
CurrentDB = db ;
/* First get the final value */
@@ -1510,8 +1756,8 @@ shift(db)
DBT value ;
DBTKEY key ;
- DBT_flags(key) ;
- DBT_flags(value) ;
+ DBT_clear(key) ;
+ DBT_clear(value) ;
CurrentDB = db ;
/* get the first value */
RETVAL = do_SEQ(db, key, value, R_FIRST) ;
@@ -1539,45 +1785,37 @@ push(db, ...)
DB * Db = db->dbp ;
int i ;
STRLEN n_a;
+ int keyval ;
DBT_flags(key) ;
DBT_flags(value) ;
CurrentDB = db ;
-#ifdef DB_VERSION_MAJOR
- RETVAL = do_SEQ(db, key, value, DB_LAST) ;
- RETVAL = 0 ;
- key = empty ;
- for (i = 1 ; i < items ; ++i)
- {
- value.data = SvPV(ST(i), n_a) ;
- value.size = n_a ;
- RETVAL = (Db->put)(Db, NULL, &key, &value, DB_APPEND) ;
- if (RETVAL != 0)
- break;
- }
-#else
-
/* Set the Cursor to the Last element */
RETVAL = do_SEQ(db, key, value, R_LAST) ;
+#ifndef DB_VERSION_MAJOR
if (RETVAL >= 0)
+#endif
{
- if (RETVAL == 1)
- key = empty ;
- for (i = items - 1 ; i > 0 ; --i)
+ if (RETVAL == 0)
+ keyval = *(int*)key.data ;
+ else
+ keyval = 0 ;
+ for (i = 1 ; i < items ; ++i)
{
value.data = SvPV(ST(i), n_a) ;
value.size = n_a ;
- RETVAL = (Db->put)(Db, &key, &value, R_IAFTER) ;
+ ++ keyval ;
+ key.data = &keyval ;
+ key.size = sizeof(int) ;
+ RETVAL = (Db->put)(Db, TXN &key, &value, 0) ;
if (RETVAL != 0)
break;
}
}
-#endif
}
OUTPUT:
RETVAL
-
I32
length(db)
DB_File db
@@ -1619,7 +1857,7 @@ db_get(db, key, value, flags=0)
u_int flags
CODE:
CurrentDB = db ;
- DBT_flags(value) ;
+ DBT_clear(value) ;
RETVAL = db_get(db, key, value, flags) ;
#ifdef DB_VERSION_MAJOR
if (RETVAL > 0)
@@ -1694,7 +1932,7 @@ db_seq(db, key, value, flags)
u_int flags
CODE:
CurrentDB = db ;
- DBT_flags(value) ;
+ DBT_clear(value) ;
RETVAL = db_seq(db, key, value, flags);
#ifdef DB_VERSION_MAJOR
if (RETVAL > 0)
diff --git a/ext/DB_File/Makefile.PL b/ext/DB_File/Makefile.PL
index 1a13e0bbd8..a247924ec8 100644
--- a/ext/DB_File/Makefile.PL
+++ b/ext/DB_File/Makefile.PL
@@ -14,7 +14,15 @@ WriteMakefile(
MAN3PODS => {}, # Pods will be built by installman.
#INC => '-I/usr/local/include',
VERSION_FROM => 'DB_File.pm',
+ OBJECT => 'version$(OBJ_EXT) DB_File$(OBJ_EXT)',
XSPROTOARG => '-noprototypes',
DEFINE => "$OS2",
);
+sub MY::postamble {
+ '
+version$(OBJ_EXT): version.c
+
+' ;
+}
+
diff --git a/ext/DB_File/dbinfo b/ext/DB_File/dbinfo
index 24a794448f..701ac612b6 100644
--- a/ext/DB_File/dbinfo
+++ b/ext/DB_File/dbinfo
@@ -4,8 +4,8 @@
# a database file
#
# Author: Paul Marquess <Paul.Marquess@btinternet.com>
-# Version: 1.01
-# Date 16th April 1998
+# Version: 1.02
+# Date 20th August 1999
#
# Copyright (c) 1998 Paul Marquess. All rights reserved.
# This program is free software; you can redistribute it and/or
@@ -19,7 +19,7 @@ use strict ;
my %Data =
(
0x053162 => {
- Type => "Btree",
+ Type => "Btree",
Versions =>
{
1 => "Unknown (older than 1.71)",
@@ -27,18 +27,27 @@ my %Data =
3 => "1.71 -> 1.85, 1.86",
4 => "Unknown",
5 => "2.0.0 -> 2.3.0",
- 6 => "2.3.1 or greater",
+ 6 => "2.3.1 -> 2.7.7",
+ 7 => "3.0.0 or greater",
}
},
0x061561 => {
- Type => "Hash",
+ Type => "Hash",
Versions =>
{
1 => "Unknown (older than 1.71)",
2 => "1.71 -> 1.85",
3 => "1.86",
4 => "2.0.0 -> 2.1.0",
- 5 => "2.2.6 or greater",
+ 5 => "2.2.6 -> 2.7.7",
+ 6 => "3.0.0 or greater",
+ }
+ },
+ 0x042253 => {
+ Type => "Queue",
+ Versions =>
+ {
+ 1 => "3.0.0 or greater",
}
},
) ;
diff --git a/ext/DB_File/typemap b/ext/DB_File/typemap
index a614cc4c29..41a24f4a86 100644
--- a/ext/DB_File/typemap
+++ b/ext/DB_File/typemap
@@ -1,8 +1,8 @@
# typemap for Perl 5 interface to Berkeley
#
# written by Paul Marquess <Paul.Marquess@btinternet.com>
-# last modified 6th June 1999
-# version 1.67
+# last modified 7th September 1999
+# version 1.71
#
#################################### DB SECTION
#
@@ -16,22 +16,21 @@ DBTKEY T_dbtkeydatum
INPUT
T_dbtkeydatum
ckFilter($arg, filter_store_key, \"filter_store_key\");
+ DBT_clear($var) ;
if (db->type != DB_RECNO) {
$var.data = SvPV($arg, PL_na);
$var.size = (int)PL_na;
- DBT_flags($var);
}
else {
Value = GetRecnoKey(aTHX_ db, SvIV($arg)) ;
$var.data = & Value;
$var.size = (int)sizeof(recno_t);
- DBT_flags($var);
}
T_dbtdatum
ckFilter($arg, filter_store_value, \"filter_store_value\");
+ DBT_clear($var) ;
$var.data = SvPV($arg, PL_na);
$var.size = (int)PL_na;
- DBT_flags($var);
OUTPUT
diff --git a/ext/DB_File/version.c b/ext/DB_File/version.c
new file mode 100644
index 0000000000..23c96a6804
--- /dev/null
+++ b/ext/DB_File/version.c
@@ -0,0 +1,70 @@
+/*
+
+ version.c -- Perl 5 interface to Berkeley DB
+
+ written by Paul Marquess <Paul.Marquess@btinternet.com>
+ last modified 7th September 1999
+ version 1.71
+
+ All comments/suggestions/problems are welcome
+
+ Copyright (c) 1995-9 Paul Marquess. All rights reserved.
+ This program is free software; you can redistribute it and/or
+ modify it under the same terms as Perl itself.
+
+ Changes:
+ 1.71 - Support for Berkeley DB version 3.
+ Support for Berkeley DB 2/3's backward compatability mode.
+
+*/
+
+#include "EXTERN.h"
+#include "perl.h"
+#include "XSUB.h"
+
+#include <db.h>
+
+void
+__getBerkeleyDBInfo()
+{
+ SV * version_sv = perl_get_sv("DB_File::db_version", GV_ADD|GV_ADDMULTI) ;
+ SV * ver_sv = perl_get_sv("DB_File::db_ver", GV_ADD|GV_ADDMULTI) ;
+ SV * compat_sv = perl_get_sv("DB_File::db_185_compat", GV_ADD|GV_ADDMULTI) ;
+
+#ifdef DB_VERSION_MAJOR
+ int Major, Minor, Patch ;
+
+ (void)db_version(&Major, &Minor, &Patch) ;
+
+ /* Check that the versions of db.h and libdb.a are the same */
+ if (Major != DB_VERSION_MAJOR || Minor != DB_VERSION_MINOR
+ || Patch != DB_VERSION_PATCH)
+ croak("\nDB_File needs compatible versions of libdb & db.h\n\tyou have db.h version %d.%d.%d and libdb version %d.%d.%d\n",
+ DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH,
+ Major, Minor, Patch) ;
+
+ /* check that libdb is recent enough -- we need 2.3.4 or greater */
+ if (Major == 2 && (Minor < 3 || (Minor == 3 && Patch < 4)))
+ croak("DB_File needs Berkeley DB 2.3.4 or greater, you have %d.%d.%d\n",
+ Major, Minor, Patch) ;
+
+ {
+ char buffer[40] ;
+ sprintf(buffer, "%d.%d", Major, Minor) ;
+ sv_setpv(version_sv, buffer) ;
+ sprintf(buffer, "%d.%03d%03d", Major, Minor, Patch) ;
+ sv_setpv(ver_sv, buffer) ;
+ }
+
+#else /* ! DB_VERSION_MAJOR */
+ sv_setiv(version_sv, 1) ;
+ sv_setiv(ver_sv, 1) ;
+#endif /* ! DB_VERSION_MAJOR */
+
+#ifdef COMPAT185
+ sv_setiv(compat_sv, 1) ;
+#else /* ! COMPAT185 */
+ sv_setiv(compat_sv, 0) ;
+#endif /* ! COMPAT185 */
+
+}
diff --git a/ext/Devel/DProf/DProf.xs b/ext/Devel/DProf/DProf.xs
index 62a0c9ec1c..69f0b899a3 100644
--- a/ext/Devel/DProf/DProf.xs
+++ b/ext/Devel/DProf/DProf.xs
@@ -292,7 +292,7 @@ prof_mark( opcode ptype )
static U32 lastid;
CV *cv;
- cv = (CV*)PTR_CAST SvIVX(Sub);
+ cv = INT2PTR(CV*,SvIVX(Sub));
svp = hv_fetch(cv_hash, (char*)&cv, sizeof(CV*), TRUE);
if (!SvOK(*svp)) {
GV *gv = CvGV(cv);
@@ -568,7 +568,7 @@ XS(XS_DB_sub)
PUSHMARK( ORIGMARK );
#ifdef G_NODEBUG
- perl_call_sv( (SV*)PTR_CAST SvIV(Sub), GIMME | G_NODEBUG);
+ perl_call_sv( INT2PTR(SV*,SvIV(Sub)), GIMME | G_NODEBUG);
#else
curstash = debstash; /* To disable debugging of perl_call_sv */
#ifdef PERLDBf_NONAME
diff --git a/ext/DynaLoader/DynaLoader_pm.PL b/ext/DynaLoader/DynaLoader_pm.PL
index 3e30698f87..3ce720b1cb 100644
--- a/ext/DynaLoader/DynaLoader_pm.PL
+++ b/ext/DynaLoader/DynaLoader_pm.PL
@@ -179,7 +179,7 @@ sub bootstrap {
# The .bs file can be used to configure @dl_resolve_using etc to
# match the needs of the individual module on this architecture.
my $bs = $file;
- $bs =~ s/(\.\w+)?$/\.bs/; # look for .bs 'beside' the library
+ $bs =~ s/(\.\w+)?(;\d*)?$/\.bs/; # look for .bs 'beside' the library
if (-s $bs) { # only read file if it's not empty
print STDERR "BS: $bs ($^O, $dlsrc)\n" if $dl_debug;
eval { do $bs; };
diff --git a/ext/DynaLoader/dl_aix.xs b/ext/DynaLoader/dl_aix.xs
index 877b28543a..96bce4e1d4 100644
--- a/ext/DynaLoader/dl_aix.xs
+++ b/ext/DynaLoader/dl_aix.xs
@@ -590,7 +590,7 @@ dl_load_file(filename, flags=0)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
void *
@@ -606,7 +606,7 @@ dl_find_symbol(libhandle, symbolname)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL));
void
diff --git a/ext/DynaLoader/dl_beos.xs b/ext/DynaLoader/dl_beos.xs
index 1bd16a69a1..c26824e34e 100644
--- a/ext/DynaLoader/dl_beos.xs
+++ b/ext/DynaLoader/dl_beos.xs
@@ -54,7 +54,7 @@ dl_load_file(filename, flags=0)
PerlIO_printf(PerlIO_stderr(), "load_add_on(%s) : %d (%s)\n", path, bogo, strerror(bogo));
} else {
RETVAL = (void *) bogo;
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
}
free(path);
}
@@ -83,7 +83,7 @@ dl_find_symbol(libhandle, symbolname)
SaveError(aTHX_ "%s", strerror(retcode)) ;
PerlIO_printf(PerlIO_stderr(), "retcode = %p (%s)\n", retcode, strerror(retcode));
} else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL));
void
diff --git a/ext/DynaLoader/dl_cygwin.xs b/ext/DynaLoader/dl_cygwin.xs
index 0054afaae7..7f74cdd83f 100644
--- a/ext/DynaLoader/dl_cygwin.xs
+++ b/ext/DynaLoader/dl_cygwin.xs
@@ -95,7 +95,7 @@ dl_load_file(filename,flags=0)
if (RETVAL == NULL){
SaveError(aTHX_ "%d",GetLastError()) ;
} else {
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
}
}
@@ -114,7 +114,7 @@ dl_find_symbol(libhandle, symbolname)
if (RETVAL == NULL)
SaveError(aTHX_ "%d",GetLastError()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL));
void
diff --git a/ext/DynaLoader/dl_dld.xs b/ext/DynaLoader/dl_dld.xs
index 1ddc443cfa..d427efa1d0 100644
--- a/ext/DynaLoader/dl_dld.xs
+++ b/ext/DynaLoader/dl_dld.xs
@@ -118,7 +118,7 @@ dl_load_file(filename, flags=0)
haverror:
ST(0) = sv_newmortal() ;
if (dlderr == 0)
- sv_setiv(ST(0), (IV)RETVAL);
+ sv_setiv(ST(0), PTR2IV(RETVAL));
void *
@@ -135,7 +135,7 @@ dl_find_symbol(libhandle, symbolname)
if (RETVAL == NULL)
SaveError(aTHX_ "dl_find_symbol: Unable to find '%s' symbol", symbolname) ;
else
- sv_setiv(ST(0), (IV)RETVAL);
+ sv_setiv(ST(0), PTR2IV(RETVAL));
void
diff --git a/ext/DynaLoader/dl_dlopen.xs b/ext/DynaLoader/dl_dlopen.xs
index a4dcfb4fbe..641db33514 100644
--- a/ext/DynaLoader/dl_dlopen.xs
+++ b/ext/DynaLoader/dl_dlopen.xs
@@ -166,7 +166,7 @@ dl_load_file(filename, flags=0)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)PTR_CAST RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL));
void *
@@ -187,7 +187,7 @@ dl_find_symbol(libhandle, symbolname)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)PTR_CAST RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL));
void
diff --git a/ext/DynaLoader/dl_hpux.xs b/ext/DynaLoader/dl_hpux.xs
index ce454598c0..180679fb71 100644
--- a/ext/DynaLoader/dl_hpux.xs
+++ b/ext/DynaLoader/dl_hpux.xs
@@ -92,7 +92,7 @@ end:
if (obj == NULL)
SaveError(aTHX_ "%s",Strerror(errno));
else
- sv_setiv( ST(0), (IV)obj);
+ sv_setiv( ST(0), PTR2IV(obj) );
void *
@@ -124,7 +124,7 @@ dl_find_symbol(libhandle, symbolname)
if (status == -1) {
SaveError(aTHX_ "%s",(errno) ? Strerror(errno) : "Symbol not found") ;
} else {
- sv_setiv( ST(0), (IV)symaddr);
+ sv_setiv( ST(0), PTR2IV(symaddr) );
}
diff --git a/ext/DynaLoader/dl_mpeix.xs b/ext/DynaLoader/dl_mpeix.xs
index 4c5d17635a..913e259cd9 100644
--- a/ext/DynaLoader/dl_mpeix.xs
+++ b/ext/DynaLoader/dl_mpeix.xs
@@ -74,7 +74,7 @@ flags));
if (obj == NULL)
SaveError(aTHX_"%s",Strerror(errno));
else
- sv_setiv( ST(0), (IV)obj);
+ sv_setiv( ST(0), PTR2IV(obj) );
void *
dl_find_symbol(libhandle, symbolname)
@@ -100,7 +100,7 @@ dl_find_symbol(libhandle, symbolname)
if (status != 0) {
SaveError(aTHX_"%s",(errno) ? Strerror(errno) : "Symbol not found") ;
} else {
- sv_setiv( ST(0), (IV)symaddr);
+ sv_setiv( ST(0), PTR2IV(symaddr) );
}
void
diff --git a/ext/DynaLoader/dl_next.xs b/ext/DynaLoader/dl_next.xs
index ec01d608f4..54d4be07ab 100644
--- a/ext/DynaLoader/dl_next.xs
+++ b/ext/DynaLoader/dl_next.xs
@@ -252,7 +252,7 @@ dl_load_file(filename, flags=0)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
void *
@@ -273,7 +273,7 @@ dl_find_symbol(libhandle, symbolname)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
void
diff --git a/ext/DynaLoader/dl_rhapsody.xs b/ext/DynaLoader/dl_rhapsody.xs
index 223d7f68b5..a56452ed7d 100644
--- a/ext/DynaLoader/dl_rhapsody.xs
+++ b/ext/DynaLoader/dl_rhapsody.xs
@@ -166,7 +166,7 @@ dl_load_file(filename, flags=0)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
void *
@@ -185,7 +185,7 @@ dl_find_symbol(libhandle, symbolname)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
void
diff --git a/ext/DynaLoader/dl_vmesa.xs b/ext/DynaLoader/dl_vmesa.xs
index ff1b60bedf..9e4908cecd 100644
--- a/ext/DynaLoader/dl_vmesa.xs
+++ b/ext/DynaLoader/dl_vmesa.xs
@@ -123,7 +123,7 @@ dl_load_file(filename, flags=0)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
void *
@@ -141,7 +141,7 @@ dl_find_symbol(libhandle, symbolname)
if (RETVAL == NULL)
SaveError(aTHX_ "%s",dlerror()) ;
else
- sv_setiv( ST(0), (IV)RETVAL);
+ sv_setiv( ST(0), PTR2IV(RETVAL) );
void
diff --git a/ext/DynaLoader/dl_vms.xs b/ext/DynaLoader/dl_vms.xs
index 1024c41f96..409d586ae7 100644
--- a/ext/DynaLoader/dl_vms.xs
+++ b/ext/DynaLoader/dl_vms.xs
@@ -301,7 +301,7 @@ dl_load_file(filespec, flags)
ST(0) = &PL_sv_undef;
}
else {
- ST(0) = sv_2mortal(newSViv((IV) dlptr));
+ ST(0) = sv_2mortal(newSViv(PTR2IV(dlptr)));
}
@@ -328,7 +328,7 @@ dl_find_symbol(librefptr,symname)
/* error message already saved by findsym_handler */
ST(0) = &PL_sv_undef;
}
- else ST(0) = sv_2mortal(newSViv((IV) entry));
+ else ST(0) = sv_2mortal(newSViv(PTR2IV(entry)));
void
diff --git a/ext/ODBM_File/ODBM_File.xs b/ext/ODBM_File/ODBM_File.xs
index bb2eb4714a..7601c3433b 100644
--- a/ext/ODBM_File/ODBM_File.xs
+++ b/ext/ODBM_File/ODBM_File.xs
@@ -111,7 +111,7 @@ odbm_TIEHASH(dbtype, filename, flags, mode)
Zero(RETVAL, 1, ODBM_File_type) ;
RETVAL->dbp = dbp ;
ST(0) = sv_mortalcopy(&PL_sv_undef);
- sv_setptrobj(ST(0), PTR_CAST RETVAL, dbtype);
+ sv_setptrobj(ST(0), RETVAL, dbtype);
}
void
diff --git a/ext/Opcode/Safe.pm b/ext/Opcode/Safe.pm
index 2d09c2e5c7..00ee85dbeb 100644
--- a/ext/Opcode/Safe.pm
+++ b/ext/Opcode/Safe.pm
@@ -235,7 +235,7 @@ sub rdo {
1;
-__DATA__
+__END__
=head1 NAME
diff --git a/ext/POSIX/POSIX.xs b/ext/POSIX/POSIX.xs
index 0f09aace1a..16217f0936 100644
--- a/ext/POSIX/POSIX.xs
+++ b/ext/POSIX/POSIX.xs
@@ -3246,7 +3246,7 @@ sigaction(sig, action, oldaction = 0)
}
else {
New(0, sigset, 1, sigset_t);
- sv_setptrobj(*svp, PTR_CAST sigset, "POSIX::SigSet");
+ sv_setptrobj(*svp, sigset, "POSIX::SigSet");
}
*sigset = oact.sa_mask;
@@ -3274,7 +3274,7 @@ INIT:
}
else if (sv_derived_from(ST(2), "POSIX::SigSet")) {
IV tmp = SvIV((SV*)SvRV(ST(2)));
- oldsigset = (POSIX__SigSet)PTR_CAST tmp;
+ oldsigset = INT2PTR(POSIX__SigSet,tmp);
}
else {
New(0, oldsigset, 1, sigset_t);
diff --git a/hints/irix_6.sh b/hints/irix_6.sh
index cab48b45ae..288138505e 100644
--- a/hints/irix_6.sh
+++ b/hints/irix_6.sh
@@ -245,7 +245,6 @@ EOM
archname64="-n32"
;;
esac
- ccflags="$ccflags -DUSE_64_BITS"
;;
esac
EOCBU
diff --git a/hints/unicos.sh b/hints/unicos.sh
index ab0203bec6..7ffd73fbcc 100644
--- a/hints/unicos.sh
+++ b/hints/unicos.sh
@@ -14,3 +14,5 @@ case "$usemymalloc" in
usemymalloc='n'
;;
esac
+# Configure gets fooled for some reason. There is no getpgid().
+d_getpgid='undef'
diff --git a/intrpvar.h b/intrpvar.h
index a291d393ca..669e6f97ad 100644
--- a/intrpvar.h
+++ b/intrpvar.h
@@ -353,8 +353,6 @@ PERLVAR(Iyyval, YYSTYPE)
PERLVAR(Iyylval, YYSTYPE)
PERLVAR(Iglob_index, int)
-PERLVAR(Iefloatbuf, char*)
-PERLVAR(Iefloatsize, STRLEN)
PERLVAR(Isrand_called, bool)
PERLVARA(Iuudmap,256, char)
PERLVAR(Ibitcount, char *)
diff --git a/jpl/JNI/Closer.java b/jpl/JNI/Closer.java
new file mode 100755
index 0000000000..934405571d
--- /dev/null
+++ b/jpl/JNI/Closer.java
@@ -0,0 +1,9 @@
+import java.awt.event.*;
+import java.awt.*;
+public class Closer extends WindowAdapter {
+
+ public void windowClosing(WindowEvent e) {
+ Window w = e.getWindow();
+ w.dispose();
+ }
+}
diff --git a/jpl/JNI/JNI.pm b/jpl/JNI/JNI.pm
index ad28a9a211..edbc1e6067 100644
--- a/jpl/JNI/JNI.pm
+++ b/jpl/JNI/JNI.pm
@@ -198,7 +198,7 @@ sub AUTOLOAD {
($constname = $AUTOLOAD) =~ s/.*:://;
my $val = constant($constname, @_ ? $_[0] : 0);
if ($! != 0) {
- if ($! =~ /Invalid/ || $!{EINVAL}) {
+ if ($! =~ /Invalid/) {
$AutoLoader::AUTOLOAD = $AUTOLOAD;
goto &AutoLoader::AUTOLOAD;
}
@@ -215,22 +215,45 @@ bootstrap JNI $VERSION;
if (not $JPL::_env_) {
$ENV{JAVA_HOME} ||= "/usr/local/java";
- chop(my $arch = `uname -p`);
- chop($arch = `uname -m`) unless -d "$ENV{JAVA_HOME}/lib/$arch";
+ my ($arch, @CLASSPATH);
+ if ($^O eq 'MSWin32') {
- my @CLASSPATH = split(/:/, $ENV{CLASSPATH});
- @CLASSPATH = "." unless @CLASSPATH;
- push @CLASSPATH,
- "$ENV{JAVA_HOME}/classes",
- "$ENV{JAVA_HOME}/lib/classes.zip";
- $ENV{CLASSPATH} = join(':', @CLASSPATH);
+ $arch = 'MSWin32' unless -d "$ENV{JAVA_HOME}/lib/$arch";
+ @CLASSPATH = split(/;/, $ENV{CLASSPATH});
+ @CLASSPATH = "." unless @CLASSPATH;
+ push @CLASSPATH,
+ "$ENV{JAVA_HOME}\\classes",
+ "$ENV{JAVA_HOME}\\lib\\classes.zip";
- $ENV{THREADS_TYPE} ||= "green_threads";
+ $ENV{CLASSPATH} = join(';', @CLASSPATH);
+ $ENV{THREADS_TYPE} ||= "green_threads";
- $JAVALIB = "$ENV{JAVA_HOME}/lib/$arch/$ENV{THREADS_TYPE}";
- $ENV{$Config{ldlibpthname}} .= ":$JAVALIB";
+ $JAVALIB = "$ENV{JAVA_HOME}/lib/$arch/$ENV{THREADS_TYPE}";
+ $ENV{LD_LIBRARY_PATH} .= ":$JAVALIB";
- $JVM = GetJavaVM("$JAVALIB/libjava.so",@JVM_ARGS);
+ push @JVM_ARGS, "classpath", $ENV{CLASSPATH};
+ print "JVM_ARGS=@JVM_ARGS!\n";
+ $JVM = GetJavaVM("$JAVALIB/javai.dll",@JVM_ARGS);
+
+ } else {
+ chop($arch = `uname -p`);
+ chop($arch = `uname -m`) unless -d "$ENV{JAVA_HOME}/lib/$arch";
+
+ @CLASSPATH = split(/:/, $ENV{CLASSPATH});
+ @CLASSPATH = "." unless @CLASSPATH;
+ push @CLASSPATH,
+ "$ENV{JAVA_HOME}/classes",
+ "$ENV{JAVA_HOME}/lib/classes.zip";
+ $ENV{CLASSPATH} = join(':', @CLASSPATH);
+
+ $ENV{THREADS_TYPE} ||= "green_threads";
+
+ $JAVALIB = "$ENV{JAVA_HOME}/lib/$arch/$ENV{THREADS_TYPE}";
+ $ENV{LD_LIBRARY_PATH} .= ":$JAVALIB";
+ push @JVM_ARGS, "classpath", $ENV{CLASSPATH};
+ print "JVM_ARGS=@JVM_ARGS!\n";
+ $JVM = GetJavaVM("$JAVALIB/libjava.so",@JVM_ARGS);
+ }
}
1;
diff --git a/jpl/JNI/JNI.xs b/jpl/JNI/JNI.xs
index ee854c13b5..e5e0af3b53 100644
--- a/jpl/JNI/JNI.xs
+++ b/jpl/JNI/JNI.xs
@@ -8,24 +8,64 @@
#include "perl.h"
#include "XSUB.h"
-#include <perl.h>
+#include <stdio.h>
#include <jni.h>
-#include <dlfcn.h>
+#ifndef PERL_VERSION
+# include <patchlevel.h>
+# define PERL_REVISION 5
+# define PERL_VERSION PATCHLEVEL
+# define PERL_SUBVERSION SUBVERSION
+#endif
+
+#if PERL_REVISION == 5 && (PERL_VERSION < 4 || \
+ (PERL_VERSION == 4 && PERL_SUBVERSION <= 75))
+# define PL_na na
+# define PL_sv_no sv_no
+# define PL_sv_undef sv_undef
+# define PL_dowarn dowarn
+#endif
+
+#ifndef newSVpvn
+# define newSVpvn(a,b) newSVpv(a,b)
+#endif
+
+#ifndef pTHX
+# define pTHX void
+# define pTHX_
+# define aTHX
+# define aTHX_
+# define dTHX extern int JNI___notused
+#endif
+
+#ifndef WIN32
+# include <dlfcn.h>
+#endif
+
+#ifdef EMBEDDEDPERL
extern JNIEnv* jplcurenv;
extern int jpldebug;
+#else
+JNIEnv* jplcurenv;
+int jpldebug = 1;
+#endif
#define SysRet jint
-static void
-call_my_exit(jint status)
+#ifdef WIN32
+static void JNICALL call_my_exit(jint status)
+{
+ my_exit(status);
+}
+#else
+static void call_my_exit(jint status)
{
- dTHX;
my_exit(status);
}
+#endif
jvalue*
-makeargs(pTHX_ char *sig, SV** svp, int items)
+makeargs(char *sig, SV** svp, int items)
{
jvalue* jv = (jvalue*)safemalloc(sizeof(jvalue) * items);
int ix = 0;
@@ -80,10 +120,18 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
+#ifdef WIN32
+ jbooleanArray ja = env->NewBooleanArray(len);
+#else
jbooleanArray ja = (*env)->NewBooleanArray(env, len);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++)
buf[i] = (jboolean)SvIV(*esv);
+#ifdef WIN32
+ env->SetBooleanArrayRegion(ja, 0, len, buf);
+#else
(*env)->SetBooleanArrayRegion(env, ja, 0, len, buf);
+#endif
free((void*)buf);
jv[ix++].l = (jobject)ja;
}
@@ -93,8 +141,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
else if (SvPOK(sv)) {
jsize len = sv_len(sv) / sizeof(jboolean);
+#ifdef WIN32
+ jbooleanArray ja = env->NewBooleanArray(len);
+#else
jbooleanArray ja = (*env)->NewBooleanArray(env, len);
+#endif
+#ifdef WIN32
+ env->SetBooleanArrayRegion(ja, 0, len, (jboolean*)SvPV(sv,n_a));
+#else
(*env)->SetBooleanArrayRegion(env, ja, 0, len, (jboolean*)SvPV(sv,n_a));
+#endif
jv[ix++].l = (jobject)ja;
}
else
@@ -111,10 +167,18 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
+#ifdef WIN32
+ jbyteArray ja = env->NewByteArray(len);
+#else
jbyteArray ja = (*env)->NewByteArray(env, len);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++)
buf[i] = (jbyte)SvIV(*esv);
+#ifdef WIN32
+ env->SetByteArrayRegion(ja, 0, len, buf);
+#else
(*env)->SetByteArrayRegion(env, ja, 0, len, buf);
+#endif
free((void*)buf);
jv[ix++].l = (jobject)ja;
}
@@ -124,8 +188,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
else if (SvPOK(sv)) {
jsize len = sv_len(sv) / sizeof(jbyte);
+#ifdef WIN32
+ jbyteArray ja = env->NewByteArray(len);
+#else
jbyteArray ja = (*env)->NewByteArray(env, len);
+#endif
+#ifdef WIN32
+ env->SetByteArrayRegion(ja, 0, len, (jbyte*)SvPV(sv,n_a));
+#else
(*env)->SetByteArrayRegion(env, ja, 0, len, (jbyte*)SvPV(sv,n_a));
+#endif
jv[ix++].l = (jobject)ja;
}
else
@@ -142,10 +214,18 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
+#ifdef WIN32
+ jcharArray ja = env->NewCharArray(len);
+#else
jcharArray ja = (*env)->NewCharArray(env, len);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++)
buf[i] = (jchar)SvIV(*esv);
+#ifdef WIN32
+ env->SetCharArrayRegion(ja, 0, len, buf);
+#else
(*env)->SetCharArrayRegion(env, ja, 0, len, buf);
+#endif
free((void*)buf);
jv[ix++].l = (jobject)ja;
}
@@ -155,8 +235,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
else if (SvPOK(sv)) {
jsize len = sv_len(sv) / sizeof(jchar);
+#ifdef WIN32
+ jcharArray ja = env->NewCharArray(len);
+#else
jcharArray ja = (*env)->NewCharArray(env, len);
+#endif
+#ifdef WIN32
+ env->SetCharArrayRegion(ja, 0, len, (jchar*)SvPV(sv,n_a));
+#else
(*env)->SetCharArrayRegion(env, ja, 0, len, (jchar*)SvPV(sv,n_a));
+#endif
jv[ix++].l = (jobject)ja;
}
else
@@ -173,10 +261,18 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
+#ifdef WIN32
+ jshortArray ja = env->NewShortArray(len);
+#else
jshortArray ja = (*env)->NewShortArray(env, len);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++)
buf[i] = (jshort)SvIV(*esv);
+#ifdef WIN32
+ env->SetShortArrayRegion(ja, 0, len, buf);
+#else
(*env)->SetShortArrayRegion(env, ja, 0, len, buf);
+#endif
free((void*)buf);
jv[ix++].l = (jobject)ja;
}
@@ -186,8 +282,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
else if (SvPOK(sv)) {
jsize len = sv_len(sv) / sizeof(jshort);
+#ifdef WIN32
+ jshortArray ja = env->NewShortArray(len);
+#else
jshortArray ja = (*env)->NewShortArray(env, len);
+#endif
+#ifdef WIN32
+ env->SetShortArrayRegion(ja, 0, len, (jshort*)SvPV(sv,n_a));
+#else
(*env)->SetShortArrayRegion(env, ja, 0, len, (jshort*)SvPV(sv,n_a));
+#endif
jv[ix++].l = (jobject)ja;
}
else
@@ -204,10 +308,18 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
+#ifdef WIN32
+ jintArray ja = env->NewIntArray(len);
+#else
jintArray ja = (*env)->NewIntArray(env, len);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++)
buf[i] = (jint)SvIV(*esv);
+#ifdef WIN32
+ env->SetIntArrayRegion(ja, 0, len, buf);
+#else
(*env)->SetIntArrayRegion(env, ja, 0, len, buf);
+#endif
free((void*)buf);
jv[ix++].l = (jobject)ja;
}
@@ -217,8 +329,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
else if (SvPOK(sv)) {
jsize len = sv_len(sv) / sizeof(jint);
+#ifdef WIN32
+ jintArray ja = env->NewIntArray(len);
+#else
jintArray ja = (*env)->NewIntArray(env, len);
+#endif
+#ifdef WIN32
+ env->SetIntArrayRegion(ja, 0, len, (jint*)SvPV(sv,n_a));
+#else
(*env)->SetIntArrayRegion(env, ja, 0, len, (jint*)SvPV(sv,n_a));
+#endif
jv[ix++].l = (jobject)ja;
}
else
@@ -235,10 +355,18 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
+#ifdef WIN32
+ jlongArray ja = env->NewLongArray(len);
+#else
jlongArray ja = (*env)->NewLongArray(env, len);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++)
buf[i] = (jlong)SvNV(*esv);
+#ifdef WIN32
+ env->SetLongArrayRegion(ja, 0, len, buf);
+#else
(*env)->SetLongArrayRegion(env, ja, 0, len, buf);
+#endif
free((void*)buf);
jv[ix++].l = (jobject)ja;
}
@@ -248,8 +376,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
else if (SvPOK(sv)) {
jsize len = sv_len(sv) / sizeof(jlong);
+#ifdef WIN32
+ jlongArray ja = env->NewLongArray(len);
+#else
jlongArray ja = (*env)->NewLongArray(env, len);
+#endif
+#ifdef WIN32
+ env->SetLongArrayRegion(ja, 0, len, (jlong*)SvPV(sv,n_a));
+#else
(*env)->SetLongArrayRegion(env, ja, 0, len, (jlong*)SvPV(sv,n_a));
+#endif
jv[ix++].l = (jobject)ja;
}
else
@@ -266,10 +402,18 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
+#ifdef WIN32
+ jfloatArray ja = env->NewFloatArray(len);
+#else
jfloatArray ja = (*env)->NewFloatArray(env, len);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++)
buf[i] = (jfloat)SvNV(*esv);
+#ifdef WIN32
+ env->SetFloatArrayRegion(ja, 0, len, buf);
+#else
(*env)->SetFloatArrayRegion(env, ja, 0, len, buf);
+#endif
free((void*)buf);
jv[ix++].l = (jobject)ja;
}
@@ -279,8 +423,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
else if (SvPOK(sv)) {
jsize len = sv_len(sv) / sizeof(jfloat);
+#ifdef WIN32
+ jfloatArray ja = env->NewFloatArray(len);
+#else
jfloatArray ja = (*env)->NewFloatArray(env, len);
+#endif
+#ifdef WIN32
+ env->SetFloatArrayRegion(ja, 0, len, (jfloat*)SvPV(sv,n_a));
+#else
(*env)->SetFloatArrayRegion(env, ja, 0, len, (jfloat*)SvPV(sv,n_a));
+#endif
jv[ix++].l = (jobject)ja;
}
else
@@ -297,10 +449,18 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
+#ifdef WIN32
+ jdoubleArray ja = env->NewDoubleArray(len);
+#else
jdoubleArray ja = (*env)->NewDoubleArray(env, len);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++)
buf[i] = (jdouble)SvNV(*esv);
+#ifdef WIN32
+ env->SetDoubleArrayRegion(ja, 0, len, buf);
+#else
(*env)->SetDoubleArrayRegion(env, ja, 0, len, buf);
+#endif
free((void*)buf);
jv[ix++].l = (jobject)ja;
}
@@ -310,8 +470,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
else if (SvPOK(sv)) {
jsize len = sv_len(sv) / sizeof(jdouble);
+#ifdef WIN32
+ jdoubleArray ja = env->NewDoubleArray(len);
+#else
jdoubleArray ja = (*env)->NewDoubleArray(env, len);
+#endif
+#ifdef WIN32
+ env->SetDoubleArrayRegion(ja, 0, len, (jdouble*)SvPV(sv,n_a));
+#else
(*env)->SetDoubleArrayRegion(env, ja, 0, len, (jdouble*)SvPV(sv,n_a));
+#endif
jv[ix++].l = (jobject)ja;
}
else
@@ -330,14 +498,30 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
static jclass jcl = 0;
- jarray ja;
+ jobjectArray ja;
if (!jcl)
+#ifdef WIN32
+ jcl = env->FindClass("java/lang/String");
+#else
jcl = (*env)->FindClass(env, "java/lang/String");
+#endif
+#ifdef WIN32
+ ja = env->NewObjectArray(len, jcl, 0);
+#else
ja = (*env)->NewObjectArray(env, len, jcl, 0);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++) {
+#ifdef WIN32
+ jobject str = (jobject)env->NewStringUTF(SvPV(*esv,n_a));
+#else
jobject str = (jobject)(*env)->NewStringUTF(env, SvPV(*esv,n_a));
+#endif
+#ifdef WIN32
+ env->SetObjectArrayElement(ja, i, str);
+#else
(*env)->SetObjectArrayElement(env, ja, i, str);
+#endif
}
jv[ix++].l = (jobject)ja;
}
@@ -359,20 +543,38 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
int i;
SV** esv;
static jclass jcl = 0;
- jarray ja;
+ jobjectArray ja;
if (!jcl)
+#ifdef WIN32
+ jcl = env->FindClass("java/lang/Object");
+#else
jcl = (*env)->FindClass(env, "java/lang/Object");
+#endif
+#ifdef WIN32
+ ja = env->NewObjectArray(len, jcl, 0);
+#else
ja = (*env)->NewObjectArray(env, len, jcl, 0);
+#endif
for (esv = AvARRAY((AV*)rv), i = 0; i < len; esv++, i++) {
if (SvROK(*esv) && (rv = SvRV(*esv)) && SvOBJECT(rv)) {
- (*env)->SetObjectArrayElement(env, ja, i,
- (jobject)(void*)SvIV(rv));
+#ifdef WIN32
+ env->SetObjectArrayElement(ja, i, (jobject)(void*)SvIV(rv));
+#else
+ (*env)->SetObjectArrayElement(env, ja, i, (jobject)(void*)SvIV(rv));
+#endif
}
else {
- jobject str = (jobject)(*env)->NewStringUTF(env,
- SvPV(*esv,n_a));
+#ifdef WIN32
+ jobject str = (jobject)env->NewStringUTF(SvPV(*esv,n_a));
+#else
+ jobject str = (jobject)(*env)->NewStringUTF(env, SvPV(*esv,n_a));
+#endif
+#ifdef WIN32
+ env->SetObjectArrayElement(ja, i, str);
+#else
(*env)->SetObjectArrayElement(env, ja, i, str);
+#endif
}
}
jv[ix++].l = (jobject)ja;
@@ -388,8 +590,11 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
case 'L':
if (!SvROK(sv) || strnEQ(s, "java/lang/String;", 17)) {
s += 17;
- jv[ix++].l = (jobject)(*env)->NewStringUTF(env,
- (char*) SvPV(sv,n_a));
+#ifdef WIN32
+ jv[ix++].l = (jobject)env->NewStringUTF((char*) SvPV(sv,n_a));
+#else
+ jv[ix++].l = (jobject)(*env)->NewStringUTF(env, (char*) SvPV(sv,n_a));
+#endif
break;
}
while (*s != ';') s++;
@@ -400,16 +605,16 @@ makeargs(pTHX_ char *sig, SV** svp, int items)
}
break;
case ')':
- Perl_croak(aTHX_ "too many arguments, signature: %s", sig);
+ croak("too many arguments, signature: %s", sig);
goto cleanup;
default:
- Perl_croak(aTHX_ "panic: malformed signature: %s", s-1);
+ croak("panic: malformed signature: %s", s-1);
goto cleanup;
}
}
if (*s != ')') {
- Perl_croak(aTHX_ "not enough arguments, signature: %s", sig);
+ croak("not enough arguments, signature: %s", sig);
goto cleanup;
}
return jv;
@@ -420,9 +625,9 @@ cleanup:
}
static int
-not_here(pTHX_ char *s)
+not_here(char *s)
{
- Perl_croak(aTHX_ "%s not implemented on this architecture", s);
+ croak("%s not implemented on this architecture", s);
return -1;
}
@@ -476,7 +681,11 @@ constant(char *name, int arg)
#endif
if (strEQ(name, "JNI_H"))
#ifdef JNI_H
+#ifdef WIN32
+ return 1;
+#else
return JNI_H;
+#endif
#else
goto not_there;
#endif
@@ -551,7 +760,11 @@ GetVersion()
JNIEnv * env = FETCHENV;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetVersion();
+#else
RETVAL = (*env)->GetVersion(env);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -567,7 +780,19 @@ DefineClass(name, loader, buf)
const jbyte * buf
CODE:
{
- RETVAL = (*env)->DefineClass(env, name, loader, buf, (jsize)buf_len_);
+#ifdef KAFFE
+#ifdef WIN32
+ RETVAL = env->DefineClass( loader, buf, (jsize)buf_len_);
+#else
+ RETVAL = (*env)->DefineClass(env, loader, buf, (jsize)buf_len_);
+#endif
+#else
+#ifdef WIN32
+ RETVAL = env->DefineClass( name, loader, buf, (jsize)buf_len_);
+#else
+ RETVAL = (*env)->DefineClass(env, name, loader, buf, (jsize)buf_len_);
+#endif
+#endif
RESTOREENV;
}
OUTPUT:
@@ -579,7 +804,11 @@ FindClass(name)
const char * name
CODE:
{
+#ifdef WIN32
+ RETVAL = env->FindClass( name);
+#else
RETVAL = (*env)->FindClass(env, name);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -591,7 +820,11 @@ GetSuperclass(sub)
jclass sub
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetSuperclass( sub);
+#else
RETVAL = (*env)->GetSuperclass(env, sub);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -604,7 +837,11 @@ IsAssignableFrom(sub, sup)
jclass sup
CODE:
{
+#ifdef WIN32
+ RETVAL = env->IsAssignableFrom( sub, sup);
+#else
RETVAL = (*env)->IsAssignableFrom(env, sub, sup);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -616,7 +853,11 @@ Throw(obj)
jthrowable obj
CODE:
{
+#ifdef WIN32
+ RETVAL = env->Throw( obj);
+#else
RETVAL = (*env)->Throw(env, obj);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -629,7 +870,11 @@ ThrowNew(clazz, msg)
const char * msg
CODE:
{
+#ifdef WIN32
+ RETVAL = env->ThrowNew( clazz, msg);
+#else
RETVAL = (*env)->ThrowNew(env, clazz, msg);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -640,7 +885,11 @@ ExceptionOccurred()
JNIEnv * env = FETCHENV;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->ExceptionOccurred();
+#else
RETVAL = (*env)->ExceptionOccurred(env);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -651,7 +900,11 @@ ExceptionDescribe()
JNIEnv * env = FETCHENV;
CODE:
{
+#ifdef WIN32
+ env->ExceptionDescribe();
+#else
(*env)->ExceptionDescribe(env);
+#endif
RESTOREENV;
}
@@ -660,7 +913,11 @@ ExceptionClear()
JNIEnv * env = FETCHENV;
CODE:
{
+#ifdef WIN32
+ env->ExceptionClear();
+#else
(*env)->ExceptionClear(env);
+#endif
RESTOREENV;
}
@@ -670,7 +927,11 @@ FatalError(msg)
const char * msg
CODE:
{
+#ifdef WIN32
+ env->FatalError( msg);
+#else
(*env)->FatalError(env, msg);
+#endif
RESTOREENV;
}
@@ -680,7 +941,11 @@ NewGlobalRef(lobj)
jobject lobj
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewGlobalRef(lobj);
+#else
RETVAL = (*env)->NewGlobalRef(env, lobj);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -692,7 +957,11 @@ DeleteGlobalRef(gref)
jobject gref
CODE:
{
+#ifdef WIN32
+ env->DeleteGlobalRef(gref);
+#else
(*env)->DeleteGlobalRef(env, gref);
+#endif
RESTOREENV;
}
@@ -702,7 +971,11 @@ DeleteLocalRef(obj)
jobject obj
CODE:
{
+#ifdef WIN32
+ env->DeleteLocalRef( obj);
+#else
(*env)->DeleteLocalRef(env, obj);
+#endif
RESTOREENV;
}
@@ -713,7 +986,11 @@ IsSameObject(obj1,obj2)
jobject obj2
CODE:
{
+#ifdef WIN32
+ RETVAL = env->IsSameObject(obj1,obj2);
+#else
RETVAL = (*env)->IsSameObject(env, obj1,obj2);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -725,7 +1002,11 @@ AllocObject(clazz)
jclass clazz
CODE:
{
+#ifdef WIN32
+ RETVAL = env->AllocObject(clazz);
+#else
RETVAL = (*env)->AllocObject(env, clazz);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -740,8 +1021,12 @@ NewObject(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->NewObjectA(clazz,methodID,args);
+#else
RETVAL = (*env)->NewObjectA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -756,7 +1041,11 @@ NewObjectA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewObjectA(clazz,methodID,args);
+#else
RETVAL = (*env)->NewObjectA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -768,7 +1057,11 @@ GetObjectClass(obj)
jobject obj
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetObjectClass(obj);
+#else
RETVAL = (*env)->GetObjectClass(env, obj);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -781,7 +1074,11 @@ IsInstanceOf(obj,clazz)
jclass clazz
CODE:
{
+#ifdef WIN32
+ RETVAL = env->IsInstanceOf(obj,clazz);
+#else
RETVAL = (*env)->IsInstanceOf(env, obj,clazz);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -795,7 +1092,11 @@ GetMethodID(clazz,name,sig)
const char * sig
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetMethodID(clazz,name,sig);
+#else
RETVAL = (*env)->GetMethodID(env, clazz,name,sig);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -810,8 +1111,12 @@ CallObjectMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallObjectMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallObjectMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -826,7 +1131,11 @@ CallObjectMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallObjectMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallObjectMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -841,8 +1150,12 @@ CallBooleanMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallBooleanMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallBooleanMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -857,7 +1170,11 @@ CallBooleanMethodA(obj,methodID, args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallBooleanMethodA(obj,methodID, args);
+#else
RETVAL = (*env)->CallBooleanMethodA(env, obj,methodID, args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -872,8 +1189,12 @@ CallByteMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallByteMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallByteMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -888,7 +1209,11 @@ CallByteMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallByteMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallByteMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -903,8 +1228,12 @@ CallCharMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallCharMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallCharMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -919,7 +1248,11 @@ CallCharMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallCharMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallCharMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -934,8 +1267,12 @@ CallShortMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallShortMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallShortMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -950,7 +1287,11 @@ CallShortMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallShortMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallShortMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -965,8 +1306,12 @@ CallIntMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallIntMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallIntMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -981,7 +1326,11 @@ CallIntMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallIntMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallIntMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -996,8 +1345,12 @@ CallLongMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallLongMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallLongMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1012,7 +1365,11 @@ CallLongMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallLongMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallLongMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1027,8 +1384,12 @@ CallFloatMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallFloatMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallFloatMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1043,7 +1404,11 @@ CallFloatMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallFloatMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallFloatMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1058,8 +1423,12 @@ CallDoubleMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallDoubleMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallDoubleMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1074,7 +1443,11 @@ CallDoubleMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallDoubleMethodA(obj,methodID,args);
+#else
RETVAL = (*env)->CallDoubleMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1089,8 +1462,12 @@ CallVoidMethod(obj,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ env->CallVoidMethodA(obj,methodID,args);
+#else
(*env)->CallVoidMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
@@ -1103,7 +1480,11 @@ CallVoidMethodA(obj,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ env->CallVoidMethodA(obj,methodID,args);
+#else
(*env)->CallVoidMethodA(env, obj,methodID,args);
+#endif
RESTOREENV;
}
@@ -1117,8 +1498,12 @@ CallNonvirtualObjectMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualObjectMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualObjectMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1134,7 +1519,11 @@ CallNonvirtualObjectMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualObjectMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualObjectMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1150,8 +1539,12 @@ CallNonvirtualBooleanMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualBooleanMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualBooleanMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1167,7 +1560,11 @@ CallNonvirtualBooleanMethodA(obj,clazz,methodID, args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualBooleanMethodA(obj,clazz,methodID, args);
+#else
RETVAL = (*env)->CallNonvirtualBooleanMethodA(env, obj,clazz,methodID, args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1183,8 +1580,12 @@ CallNonvirtualByteMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualByteMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualByteMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1200,7 +1601,11 @@ CallNonvirtualByteMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualByteMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualByteMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1216,8 +1621,12 @@ CallNonvirtualCharMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualCharMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualCharMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1233,7 +1642,11 @@ CallNonvirtualCharMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualCharMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualCharMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1249,8 +1662,12 @@ CallNonvirtualShortMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualShortMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualShortMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1266,7 +1683,11 @@ CallNonvirtualShortMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualShortMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualShortMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1282,8 +1703,12 @@ CallNonvirtualIntMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualIntMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualIntMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1299,7 +1724,11 @@ CallNonvirtualIntMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualIntMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualIntMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1315,8 +1744,12 @@ CallNonvirtualLongMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualLongMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualLongMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1332,7 +1765,11 @@ CallNonvirtualLongMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualLongMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualLongMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1348,8 +1785,12 @@ CallNonvirtualFloatMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualFloatMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualFloatMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1365,7 +1806,11 @@ CallNonvirtualFloatMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualFloatMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualFloatMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1381,8 +1826,12 @@ CallNonvirtualDoubleMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualDoubleMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualDoubleMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1398,7 +1847,11 @@ CallNonvirtualDoubleMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallNonvirtualDoubleMethodA(obj,clazz,methodID,args);
+#else
RETVAL = (*env)->CallNonvirtualDoubleMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1414,8 +1867,12 @@ CallNonvirtualVoidMethod(obj,clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ env->CallNonvirtualVoidMethodA(obj,clazz,methodID,args);
+#else
(*env)->CallNonvirtualVoidMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
@@ -1429,7 +1886,11 @@ CallNonvirtualVoidMethodA(obj,clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ env->CallNonvirtualVoidMethodA(obj,clazz,methodID,args);
+#else
(*env)->CallNonvirtualVoidMethodA(env, obj,clazz,methodID,args);
+#endif
RESTOREENV;
}
@@ -1441,7 +1902,11 @@ GetFieldID(clazz,name,sig)
const char * sig
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetFieldID(clazz,name,sig);
+#else
RETVAL = (*env)->GetFieldID(env, clazz,name,sig);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1455,7 +1920,11 @@ GetObjectField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetObjectField(obj,fieldID);
+#else
RETVAL = (*env)->GetObjectField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1469,7 +1938,11 @@ GetBooleanField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetBooleanField(obj,fieldID);
+#else
RETVAL = (*env)->GetBooleanField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1483,7 +1956,11 @@ GetByteField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetByteField(obj,fieldID);
+#else
RETVAL = (*env)->GetByteField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1497,7 +1974,11 @@ GetCharField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetCharField(obj,fieldID);
+#else
RETVAL = (*env)->GetCharField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1511,7 +1992,11 @@ GetShortField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetShortField(obj,fieldID);
+#else
RETVAL = (*env)->GetShortField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1525,7 +2010,11 @@ GetIntField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetIntField(obj,fieldID);
+#else
RETVAL = (*env)->GetIntField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1539,7 +2028,11 @@ GetLongField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetLongField(obj,fieldID);
+#else
RETVAL = (*env)->GetLongField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1553,7 +2046,11 @@ GetFloatField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetFloatField(obj,fieldID);
+#else
RETVAL = (*env)->GetFloatField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1567,7 +2064,11 @@ GetDoubleField(obj,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetDoubleField(obj,fieldID);
+#else
RETVAL = (*env)->GetDoubleField(env, obj,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1582,7 +2083,11 @@ SetObjectField(obj,fieldID,val)
jobject val
CODE:
{
+#ifdef WIN32
+ env->SetObjectField(obj,fieldID,val);
+#else
(*env)->SetObjectField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1595,7 +2100,11 @@ SetBooleanField(obj,fieldID,val)
jboolean val
CODE:
{
+#ifdef WIN32
+ env->SetBooleanField(obj,fieldID,val);
+#else
(*env)->SetBooleanField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1608,7 +2117,11 @@ SetByteField(obj,fieldID,val)
jbyte val
CODE:
{
+#ifdef WIN32
+ env->SetByteField(obj,fieldID,val);
+#else
(*env)->SetByteField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1621,7 +2134,11 @@ SetCharField(obj,fieldID,val)
jchar val
CODE:
{
+#ifdef WIN32
+ env->SetCharField(obj,fieldID,val);
+#else
(*env)->SetCharField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1634,7 +2151,11 @@ SetShortField(obj,fieldID,val)
jshort val
CODE:
{
+#ifdef WIN32
+ env->SetShortField(obj,fieldID,val);
+#else
(*env)->SetShortField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1647,7 +2168,11 @@ SetIntField(obj,fieldID,val)
jint val
CODE:
{
+#ifdef WIN32
+ env->SetIntField(obj,fieldID,val);
+#else
(*env)->SetIntField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1660,7 +2185,11 @@ SetLongField(obj,fieldID,val)
jlong val
CODE:
{
+#ifdef WIN32
+ env->SetLongField(obj,fieldID,val);
+#else
(*env)->SetLongField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1673,7 +2202,11 @@ SetFloatField(obj,fieldID,val)
jfloat val
CODE:
{
+#ifdef WIN32
+ env->SetFloatField(obj,fieldID,val);
+#else
(*env)->SetFloatField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1686,7 +2219,11 @@ SetDoubleField(obj,fieldID,val)
jdouble val
CODE:
{
+#ifdef WIN32
+ env->SetDoubleField(obj,fieldID,val);
+#else
(*env)->SetDoubleField(env, obj,fieldID,val);
+#endif
RESTOREENV;
}
@@ -1698,7 +2235,11 @@ GetStaticMethodID(clazz,name,sig)
const char * sig
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticMethodID(clazz,name,sig);
+#else
RETVAL = (*env)->GetStaticMethodID(env, clazz,name,sig);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1713,8 +2254,12 @@ CallStaticObjectMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticObjectMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticObjectMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1729,7 +2274,11 @@ CallStaticObjectMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticObjectMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticObjectMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1744,8 +2293,12 @@ CallStaticBooleanMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticBooleanMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticBooleanMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1760,7 +2313,11 @@ CallStaticBooleanMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticBooleanMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticBooleanMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1775,8 +2332,12 @@ CallStaticByteMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticByteMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticByteMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1791,7 +2352,11 @@ CallStaticByteMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticByteMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticByteMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1806,8 +2371,12 @@ CallStaticCharMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticCharMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticCharMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1822,7 +2391,11 @@ CallStaticCharMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticCharMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticCharMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1837,8 +2410,12 @@ CallStaticShortMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticShortMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticShortMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1853,7 +2430,11 @@ CallStaticShortMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticShortMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticShortMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1868,8 +2449,12 @@ CallStaticIntMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticIntMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticIntMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1884,7 +2469,11 @@ CallStaticIntMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticIntMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticIntMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1899,8 +2488,12 @@ CallStaticLongMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticLongMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticLongMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1915,7 +2508,11 @@ CallStaticLongMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticLongMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticLongMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1930,8 +2527,12 @@ CallStaticFloatMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticFloatMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticFloatMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1946,7 +2547,11 @@ CallStaticFloatMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticFloatMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticFloatMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1961,8 +2566,12 @@ CallStaticDoubleMethod(clazz,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ RETVAL = env->CallStaticDoubleMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticDoubleMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1977,7 +2586,11 @@ CallStaticDoubleMethodA(clazz,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ RETVAL = env->CallStaticDoubleMethodA(clazz,methodID,args);
+#else
RETVAL = (*env)->CallStaticDoubleMethodA(env, clazz,methodID,args);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -1992,8 +2605,12 @@ CallStaticVoidMethod(cls,methodID,...)
int argoff = $min_args;
CODE:
{
- jvalue * args = makeargs(aTHX_ sig, &ST(argoff), items - argoff);
+ jvalue * args = makeargs(sig, &ST(argoff), items - argoff);
+#ifdef WIN32
+ env->CallStaticVoidMethodA(cls,methodID,args);
+#else
(*env)->CallStaticVoidMethodA(env, cls,methodID,args);
+#endif
RESTOREENV;
}
@@ -2006,7 +2623,11 @@ CallStaticVoidMethodA(cls,methodID,args)
jvalue * args
CODE:
{
+#ifdef WIN32
+ env->CallStaticVoidMethodA(cls,methodID,args);
+#else
(*env)->CallStaticVoidMethodA(env, cls,methodID,args);
+#endif
RESTOREENV;
}
@@ -2018,7 +2639,11 @@ GetStaticFieldID(clazz,name,sig)
const char * sig
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticFieldID(clazz,name,sig);
+#else
RETVAL = (*env)->GetStaticFieldID(env, clazz,name,sig);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2032,7 +2657,11 @@ GetStaticObjectField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticObjectField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticObjectField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2046,7 +2675,11 @@ GetStaticBooleanField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticBooleanField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticBooleanField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2060,7 +2693,11 @@ GetStaticByteField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticByteField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticByteField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2074,7 +2711,11 @@ GetStaticCharField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticCharField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticCharField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2088,7 +2729,11 @@ GetStaticShortField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticShortField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticShortField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2102,7 +2747,11 @@ GetStaticIntField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticIntField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticIntField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2116,7 +2765,11 @@ GetStaticLongField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticLongField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticLongField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2130,7 +2783,11 @@ GetStaticFloatField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticFloatField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticFloatField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2144,7 +2801,11 @@ GetStaticDoubleField(clazz,fieldID)
char * sig = 0;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStaticDoubleField(clazz,fieldID);
+#else
RETVAL = (*env)->GetStaticDoubleField(env, clazz,fieldID);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2159,7 +2820,11 @@ SetStaticObjectField(clazz,fieldID,value)
jobject value
CODE:
{
+#ifdef WIN32
+ env->SetStaticObjectField(clazz,fieldID,value);
+#else
(*env)->SetStaticObjectField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2172,7 +2837,11 @@ SetStaticBooleanField(clazz,fieldID,value)
jboolean value
CODE:
{
+#ifdef WIN32
+ env->SetStaticBooleanField(clazz,fieldID,value);
+#else
(*env)->SetStaticBooleanField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2185,7 +2854,11 @@ SetStaticByteField(clazz,fieldID,value)
jbyte value
CODE:
{
+#ifdef WIN32
+ env->SetStaticByteField(clazz,fieldID,value);
+#else
(*env)->SetStaticByteField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2198,7 +2871,11 @@ SetStaticCharField(clazz,fieldID,value)
jchar value
CODE:
{
+#ifdef WIN32
+ env->SetStaticCharField(clazz,fieldID,value);
+#else
(*env)->SetStaticCharField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2211,7 +2888,11 @@ SetStaticShortField(clazz,fieldID,value)
jshort value
CODE:
{
+#ifdef WIN32
+ env->SetStaticShortField(clazz,fieldID,value);
+#else
(*env)->SetStaticShortField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2224,7 +2905,11 @@ SetStaticIntField(clazz,fieldID,value)
jint value
CODE:
{
+#ifdef WIN32
+ env->SetStaticIntField(clazz,fieldID,value);
+#else
(*env)->SetStaticIntField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2237,7 +2922,11 @@ SetStaticLongField(clazz,fieldID,value)
jlong value
CODE:
{
+#ifdef WIN32
+ env->SetStaticLongField(clazz,fieldID,value);
+#else
(*env)->SetStaticLongField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2250,7 +2939,11 @@ SetStaticFloatField(clazz,fieldID,value)
jfloat value
CODE:
{
+#ifdef WIN32
+ env->SetStaticFloatField(clazz,fieldID,value);
+#else
(*env)->SetStaticFloatField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2263,7 +2956,11 @@ SetStaticDoubleField(clazz,fieldID,value)
jdouble value
CODE:
{
+#ifdef WIN32
+ env->SetStaticDoubleField(clazz,fieldID,value);
+#else
(*env)->SetStaticDoubleField(env, clazz,fieldID,value);
+#endif
RESTOREENV;
}
@@ -2275,7 +2972,11 @@ NewString(unicode)
const jchar * unicode
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewString(unicode, unicode_len_);
+#else
RETVAL = (*env)->NewString(env, unicode, unicode_len_);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2287,7 +2988,11 @@ GetStringLength(str)
jstring str
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStringLength(str);
+#else
RETVAL = (*env)->GetStringLength(env, str);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2301,14 +3006,26 @@ GetStringChars(str)
jsize RETVAL_len_ = NO_INIT;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStringChars(str,&isCopy);
+#else
RETVAL = (*env)->GetStringChars(env, str,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetStringLength(str);
+#else
RETVAL_len_ = (*env)->GetStringLength(env, str);
+#endif
RESTOREENV;
}
OUTPUT:
RETVAL
CLEANUP:
+#ifdef WIN32
+ env->ReleaseStringChars(str,RETVAL);
+#else
(*env)->ReleaseStringChars(env, str,RETVAL);
+#endif
jstring
NewStringUTF(utf)
@@ -2316,7 +3033,11 @@ NewStringUTF(utf)
const char * utf
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewStringUTF(utf);
+#else
RETVAL = (*env)->NewStringUTF(env, utf);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2328,7 +3049,11 @@ GetStringUTFLength(str)
jstring str
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStringUTFLength(str);
+#else
RETVAL = (*env)->GetStringUTFLength(env, str);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2341,13 +3066,21 @@ GetStringUTFChars(str)
jboolean isCopy = NO_INIT;
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetStringUTFChars(str,&isCopy);
+#else
RETVAL = (*env)->GetStringUTFChars(env, str,&isCopy);
+#endif
RESTOREENV;
}
OUTPUT:
RETVAL
CLEANUP:
+#ifdef WIN32
+ env->ReleaseStringUTFChars(str, RETVAL);
+#else
(*env)->ReleaseStringUTFChars(env, str, RETVAL);
+#endif
jsize
@@ -2356,7 +3089,11 @@ GetArrayLength(array)
jarray array
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetArrayLength(array);
+#else
RETVAL = (*env)->GetArrayLength(env, array);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2370,7 +3107,11 @@ NewObjectArray(len,clazz,init)
jobject init
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewObjectArray(len,clazz,init);
+#else
RETVAL = (*env)->NewObjectArray(env, len,clazz,init);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2383,7 +3124,11 @@ GetObjectArrayElement(array,index)
jsize index
CODE:
{
+#ifdef WIN32
+ RETVAL = env->GetObjectArrayElement(array,index);
+#else
RETVAL = (*env)->GetObjectArrayElement(env, array,index);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2397,7 +3142,11 @@ SetObjectArrayElement(array,index,val)
jobject val
CODE:
{
+#ifdef WIN32
+ env->SetObjectArrayElement(array,index,val);
+#else
(*env)->SetObjectArrayElement(env, array,index,val);
+#endif
RESTOREENV;
}
@@ -2407,7 +3156,11 @@ NewBooleanArray(len)
jsize len
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewBooleanArray(len);
+#else
RETVAL = (*env)->NewBooleanArray(env, len);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2419,7 +3172,11 @@ NewByteArray(len)
jsize len
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewByteArray(len);
+#else
RETVAL = (*env)->NewByteArray(env, len);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2431,7 +3188,11 @@ NewCharArray(len)
jsize len
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewCharArray(len);
+#else
RETVAL = (*env)->NewCharArray(env, len);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2443,7 +3204,11 @@ NewShortArray(len)
jsize len
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewShortArray(len);
+#else
RETVAL = (*env)->NewShortArray(env, len);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2455,7 +3220,11 @@ NewIntArray(len)
jsize len
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewIntArray(len);
+#else
RETVAL = (*env)->NewIntArray(env, len);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2467,7 +3236,11 @@ NewLongArray(len)
jsize len
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewLongArray(len);
+#else
RETVAL = (*env)->NewLongArray(env, len);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2479,7 +3252,11 @@ NewFloatArray(len)
jsize len
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewFloatArray(len);
+#else
RETVAL = (*env)->NewFloatArray(env, len);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2491,7 +3268,11 @@ NewDoubleArray(len)
jsize len
CODE:
{
+#ifdef WIN32
+ RETVAL = env->NewDoubleArray(len);
+#else
RETVAL = (*env)->NewDoubleArray(env, len);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -2505,8 +3286,16 @@ GetBooleanArrayElements(array)
jboolean isCopy = NO_INIT;
PPCODE:
{
+#ifdef WIN32
+ RETVAL = env->GetBooleanArrayElements(array,&isCopy);
+#else
RETVAL = (*env)->GetBooleanArrayElements(env, array,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetArrayLength(array);
+#else
RETVAL_len_ = (*env)->GetArrayLength(env, array);
+#endif
if (GIMME == G_ARRAY) {
int i;
jboolean* r = RETVAL;
@@ -2523,7 +3312,11 @@ GetBooleanArrayElements(array)
else
PUSHs(&PL_sv_no);
}
+#ifdef WIN32
+ env->ReleaseBooleanArrayElements(array,RETVAL,JNI_ABORT);
+#else
(*env)->ReleaseBooleanArrayElements(env, array,RETVAL,JNI_ABORT);
+#endif
RESTOREENV;
}
@@ -2535,8 +3328,16 @@ GetByteArrayElements(array)
jboolean isCopy = NO_INIT;
PPCODE:
{
+#ifdef WIN32
+ RETVAL = env->GetByteArrayElements(array,&isCopy);
+#else
RETVAL = (*env)->GetByteArrayElements(env, array,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetArrayLength(array);
+#else
RETVAL_len_ = (*env)->GetArrayLength(env, array);
+#endif
if (GIMME == G_ARRAY) {
int i;
jbyte* r = RETVAL;
@@ -2553,7 +3354,11 @@ GetByteArrayElements(array)
else
PUSHs(&PL_sv_no);
}
+#ifdef WIN32
+ env->ReleaseByteArrayElements(array,RETVAL,JNI_ABORT);
+#else
(*env)->ReleaseByteArrayElements(env, array,RETVAL,JNI_ABORT);
+#endif
RESTOREENV;
}
@@ -2565,8 +3370,16 @@ GetCharArrayElements(array)
jboolean isCopy = NO_INIT;
PPCODE:
{
+#ifdef WIN32
+ RETVAL = env->GetCharArrayElements(array,&isCopy);
+#else
RETVAL = (*env)->GetCharArrayElements(env, array,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetArrayLength(array);
+#else
RETVAL_len_ = (*env)->GetArrayLength(env, array);
+#endif
if (GIMME == G_ARRAY) {
int i;
jchar* r = RETVAL;
@@ -2583,7 +3396,11 @@ GetCharArrayElements(array)
else
PUSHs(&PL_sv_no);
}
+#ifdef WIN32
+ env->ReleaseCharArrayElements(array,RETVAL,JNI_ABORT);
+#else
(*env)->ReleaseCharArrayElements(env, array,RETVAL,JNI_ABORT);
+#endif
RESTOREENV;
}
@@ -2595,8 +3412,16 @@ GetShortArrayElements(array)
jboolean isCopy = NO_INIT;
PPCODE:
{
+#ifdef WIN32
+ RETVAL = env->GetShortArrayElements(array,&isCopy);
+#else
RETVAL = (*env)->GetShortArrayElements(env, array,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetArrayLength(array);
+#else
RETVAL_len_ = (*env)->GetArrayLength(env, array);
+#endif
if (GIMME == G_ARRAY) {
int i;
jshort* r = RETVAL;
@@ -2613,7 +3438,11 @@ GetShortArrayElements(array)
else
PUSHs(&PL_sv_no);
}
+#ifdef WIN32
+ env->ReleaseShortArrayElements(array,RETVAL,JNI_ABORT);
+#else
(*env)->ReleaseShortArrayElements(env, array,RETVAL,JNI_ABORT);
+#endif
RESTOREENV;
}
@@ -2625,8 +3454,16 @@ GetIntArrayElements(array)
jboolean isCopy = NO_INIT;
PPCODE:
{
+#ifdef WIN32
+ RETVAL = env->GetIntArrayElements(array,&isCopy);
+#else
RETVAL = (*env)->GetIntArrayElements(env, array,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetArrayLength(array);
+#else
RETVAL_len_ = (*env)->GetArrayLength(env, array);
+#endif
if (GIMME == G_ARRAY) {
int i;
jint* r = RETVAL;
@@ -2643,7 +3480,11 @@ GetIntArrayElements(array)
else
PUSHs(&PL_sv_no);
}
+#ifdef WIN32
+ env->ReleaseIntArrayElements(array,RETVAL,JNI_ABORT);
+#else
(*env)->ReleaseIntArrayElements(env, array,RETVAL,JNI_ABORT);
+#endif
RESTOREENV;
}
@@ -2655,8 +3496,16 @@ GetLongArrayElements(array)
jboolean isCopy = NO_INIT;
PPCODE:
{
+#ifdef WIN32
+ RETVAL = env->GetLongArrayElements(array,&isCopy);
+#else
RETVAL = (*env)->GetLongArrayElements(env, array,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetArrayLength(array);
+#else
RETVAL_len_ = (*env)->GetArrayLength(env, array);
+#endif
if (GIMME == G_ARRAY) {
int i;
jlong* r = RETVAL;
@@ -2673,7 +3522,11 @@ GetLongArrayElements(array)
else
PUSHs(&PL_sv_no);
}
+#ifdef WIN32
+ env->ReleaseLongArrayElements(array,RETVAL,JNI_ABORT);
+#else
(*env)->ReleaseLongArrayElements(env, array,RETVAL,JNI_ABORT);
+#endif
RESTOREENV;
}
@@ -2685,8 +3538,16 @@ GetFloatArrayElements(array)
jboolean isCopy = NO_INIT;
PPCODE:
{
+#ifdef WIN32
+ RETVAL = env->GetFloatArrayElements(array,&isCopy);
+#else
RETVAL = (*env)->GetFloatArrayElements(env, array,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetArrayLength(array);
+#else
RETVAL_len_ = (*env)->GetArrayLength(env, array);
+#endif
if (GIMME == G_ARRAY) {
int i;
jfloat* r = RETVAL;
@@ -2703,7 +3564,11 @@ GetFloatArrayElements(array)
else
PUSHs(&PL_sv_no);
}
+#ifdef WIN32
+ env->ReleaseFloatArrayElements(array,RETVAL,JNI_ABORT);
+#else
(*env)->ReleaseFloatArrayElements(env, array,RETVAL,JNI_ABORT);
+#endif
RESTOREENV;
}
@@ -2715,8 +3580,16 @@ GetDoubleArrayElements(array)
jboolean isCopy = NO_INIT;
PPCODE:
{
+#ifdef WIN32
+ RETVAL = env->GetDoubleArrayElements(array,&isCopy);
+#else
RETVAL = (*env)->GetDoubleArrayElements(env, array,&isCopy);
+#endif
+#ifdef WIN32
+ RETVAL_len_ = env->GetArrayLength(array);
+#else
RETVAL_len_ = (*env)->GetArrayLength(env, array);
+#endif
if (GIMME == G_ARRAY) {
int i;
jdouble* r = RETVAL;
@@ -2733,7 +3606,11 @@ GetDoubleArrayElements(array)
else
PUSHs(&PL_sv_no);
}
+#ifdef WIN32
+ env->ReleaseDoubleArrayElements(array,RETVAL,JNI_ABORT);
+#else
(*env)->ReleaseDoubleArrayElements(env, array,RETVAL,JNI_ABORT);
+#endif
RESTOREENV;
}
@@ -2748,7 +3625,11 @@ GetBooleanArrayRegion(array,start,len,buf)
jboolean * buf = (jboolean*)sv_grow(ST(3),len * sizeof(jboolean)+1);
CODE:
{
+#ifdef WIN32
+ env->GetBooleanArrayRegion(array,start,len,buf);
+#else
(*env)->GetBooleanArrayRegion(env, array,start,len,buf);
+#endif
SvCUR_set(ST(3), len * sizeof(jboolean));
*SvEND(ST(3)) = '\0';
RESTOREENV;
@@ -2765,7 +3646,11 @@ GetByteArrayRegion(array,start,len,buf)
jbyte * buf = (jbyte*)sv_grow(ST(3),len * sizeof(jbyte)+1);
CODE:
{
+#ifdef WIN32
+ env->GetByteArrayRegion(array,start,len,buf);
+#else
(*env)->GetByteArrayRegion(env, array,start,len,buf);
+#endif
SvCUR_set(ST(3), len * sizeof(jbyte));
*SvEND(ST(3)) = '\0';
RESTOREENV;
@@ -2782,7 +3667,11 @@ GetCharArrayRegion(array,start,len,buf)
jchar * buf = (jchar*)sv_grow(ST(3),len * sizeof(jchar)+1);
CODE:
{
+#ifdef WIN32
+ env->GetCharArrayRegion(array,start,len,buf);
+#else
(*env)->GetCharArrayRegion(env, array,start,len,buf);
+#endif
SvCUR_set(ST(3), len * sizeof(jchar));
*SvEND(ST(3)) = '\0';
RESTOREENV;
@@ -2799,7 +3688,11 @@ GetShortArrayRegion(array,start,len,buf)
jshort * buf = (jshort*)sv_grow(ST(3),len * sizeof(jshort)+1);
CODE:
{
+#ifdef WIN32
+ env->GetShortArrayRegion(array,start,len,buf);
+#else
(*env)->GetShortArrayRegion(env, array,start,len,buf);
+#endif
SvCUR_set(ST(3), len * sizeof(jshort));
*SvEND(ST(3)) = '\0';
RESTOREENV;
@@ -2816,7 +3709,11 @@ GetIntArrayRegion(array,start,len,buf)
jint * buf = (jint*)sv_grow(ST(3),len * sizeof(jint)+1);
CODE:
{
+#ifdef WIN32
+ env->GetIntArrayRegion(array,start,len,buf);
+#else
(*env)->GetIntArrayRegion(env, array,start,len,buf);
+#endif
SvCUR_set(ST(3), len * sizeof(jint));
*SvEND(ST(3)) = '\0';
RESTOREENV;
@@ -2833,7 +3730,11 @@ GetLongArrayRegion(array,start,len,buf)
jlong * buf = (jlong*)sv_grow(ST(3),len * sizeof(jlong)+1);
CODE:
{
+#ifdef WIN32
+ env->GetLongArrayRegion(array,start,len,buf);
+#else
(*env)->GetLongArrayRegion(env, array,start,len,buf);
+#endif
SvCUR_set(ST(3), len * sizeof(jlong));
*SvEND(ST(3)) = '\0';
RESTOREENV;
@@ -2850,7 +3751,11 @@ GetFloatArrayRegion(array,start,len,buf)
jfloat * buf = (jfloat*)sv_grow(ST(3),len * sizeof(jfloat)+1);
CODE:
{
+#ifdef WIN32
+ env->GetFloatArrayRegion(array,start,len,buf);
+#else
(*env)->GetFloatArrayRegion(env, array,start,len,buf);
+#endif
SvCUR_set(ST(3), len * sizeof(jfloat));
*SvEND(ST(3)) = '\0';
RESTOREENV;
@@ -2867,7 +3772,11 @@ GetDoubleArrayRegion(array,start,len,buf)
jdouble * buf = (jdouble*)sv_grow(ST(3),len * sizeof(jdouble)+1);
CODE:
{
+#ifdef WIN32
+ env->GetDoubleArrayRegion(array,start,len,buf);
+#else
(*env)->GetDoubleArrayRegion(env, array,start,len,buf);
+#endif
SvCUR_set(ST(3), len * sizeof(jdouble));
*SvEND(ST(3)) = '\0';
RESTOREENV;
@@ -2885,10 +3794,14 @@ SetBooleanArrayRegion(array,start,len,buf)
CODE:
{
if (buf_len_ < len)
- Perl_croak(aTHX_ "string is too short");
- else if (buf_len_ > len && ckWARN(WARN_UNSAFE))
- Perl_warner(aTHX_ WARN_UNSAFE, "string is too long");
+ croak("string is too short");
+ else if (buf_len_ > len && PL_dowarn)
+ warn("string is too long");
+#ifdef WIN32
+ env->SetBooleanArrayRegion(array,start,len,buf);
+#else
(*env)->SetBooleanArrayRegion(env, array,start,len,buf);
+#endif
RESTOREENV;
}
@@ -2904,10 +3817,14 @@ SetByteArrayRegion(array,start,len,buf)
CODE:
{
if (buf_len_ < len)
- Perl_croak(aTHX_ "string is too short");
- else if (buf_len_ > len && ckWARN(WARN_UNSAFE))
- Perl_warner(aTHX_ WARN_UNSAFE, "string is too long");
+ croak("string is too short");
+ else if (buf_len_ > len && PL_dowarn)
+ warn("string is too long");
+#ifdef WIN32
+ env->SetByteArrayRegion(array,start,len,buf);
+#else
(*env)->SetByteArrayRegion(env, array,start,len,buf);
+#endif
RESTOREENV;
}
@@ -2923,10 +3840,14 @@ SetCharArrayRegion(array,start,len,buf)
CODE:
{
if (buf_len_ < len)
- Perl_croak(aTHX_ "string is too short");
- else if (buf_len_ > len && ckWARN(WARN_UNSAFE))
- Perl_warner(aTHX_ WARN_UNSAFE, "string is too long");
+ croak("string is too short");
+ else if (buf_len_ > len && PL_dowarn)
+ warn("string is too long");
+#ifdef WIN32
+ env->SetCharArrayRegion(array,start,len,buf);
+#else
(*env)->SetCharArrayRegion(env, array,start,len,buf);
+#endif
RESTOREENV;
}
@@ -2942,10 +3863,14 @@ SetShortArrayRegion(array,start,len,buf)
CODE:
{
if (buf_len_ < len)
- Perl_croak(aTHX_ "string is too short");
- else if (buf_len_ > len && ckWARN(WARN_UNSAFE))
- Perl_warner(aTHX_ WARN_UNSAFE, "string is too long");
+ croak("string is too short");
+ else if (buf_len_ > len && PL_dowarn)
+ warn("string is too long");
+#ifdef WIN32
+ env->SetShortArrayRegion(array,start,len,buf);
+#else
(*env)->SetShortArrayRegion(env, array,start,len,buf);
+#endif
RESTOREENV;
}
@@ -2961,10 +3886,14 @@ SetIntArrayRegion(array,start,len,buf)
CODE:
{
if (buf_len_ < len)
- Perl_croak(aTHX_ "string is too short");
- else if (buf_len_ > len && ckWARN(WARN_UNSAFE))
- Perl_warner(aTHX_ WARN_UNSAFE, "string is too long");
+ croak("string is too short");
+ else if (buf_len_ > len && PL_dowarn)
+ warn("string is too long");
+#ifdef WIN32
+ env->SetIntArrayRegion(array,start,len,buf);
+#else
(*env)->SetIntArrayRegion(env, array,start,len,buf);
+#endif
RESTOREENV;
}
@@ -2980,10 +3909,14 @@ SetLongArrayRegion(array,start,len,buf)
CODE:
{
if (buf_len_ < len)
- Perl_croak(aTHX_ "string is too short");
- else if (buf_len_ > len && ckWARN(WARN_UNSAFE))
- Perl_warner(aTHX_ WARN_UNSAFE, "string is too long");
+ croak("string is too short");
+ else if (buf_len_ > len && PL_dowarn)
+ warn("string is too long");
+#ifdef WIN32
+ env->SetLongArrayRegion(array,start,len,buf);
+#else
(*env)->SetLongArrayRegion(env, array,start,len,buf);
+#endif
RESTOREENV;
}
@@ -2999,10 +3932,14 @@ SetFloatArrayRegion(array,start,len,buf)
CODE:
{
if (buf_len_ < len)
- Perl_croak(aTHX_ "string is too short");
- else if (buf_len_ > len && ckWARN(WARN_UNSAFE))
- Perl_warner(aTHX_ WARN_UNSAFE, "string is too long");
+ croak("string is too short");
+ else if (buf_len_ > len && PL_dowarn)
+ warn("string is too long");
+#ifdef WIN32
+ env->SetFloatArrayRegion(array,start,len,buf);
+#else
(*env)->SetFloatArrayRegion(env, array,start,len,buf);
+#endif
RESTOREENV;
}
@@ -3018,10 +3955,14 @@ SetDoubleArrayRegion(array,start,len,buf)
CODE:
{
if (buf_len_ < len)
- Perl_croak(aTHX_ "string is too short");
- else if (buf_len_ > len && ckWARN(WARN_UNSAFE))
- Perl_warner(aTHX_ WARN_UNSAFE, "string is too long");
+ croak("string is too short");
+ else if (buf_len_ > len && PL_dowarn)
+ warn("string is too long");
+#ifdef WIN32
+ env->SetDoubleArrayRegion(array,start,len,buf);
+#else
(*env)->SetDoubleArrayRegion(env, array,start,len,buf);
+#endif
RESTOREENV;
}
@@ -3033,7 +3974,11 @@ RegisterNatives(clazz,methods,nMethods)
jint nMethods
CODE:
{
+#ifdef WIN32
+ RETVAL = env->RegisterNatives(clazz,methods,nMethods);
+#else
RETVAL = (*env)->RegisterNatives(env, clazz,methods,nMethods);
+#endif
}
SysRet
@@ -3042,7 +3987,11 @@ UnregisterNatives(clazz)
jclass clazz
CODE:
{
+#ifdef WIN32
+ RETVAL = env->UnregisterNatives(clazz);
+#else
RETVAL = (*env)->UnregisterNatives(env, clazz);
+#endif
}
OUTPUT:
RETVAL
@@ -3053,7 +4002,11 @@ MonitorEnter(obj)
jobject obj
CODE:
{
+#ifdef WIN32
+ RETVAL = env->MonitorEnter(obj);
+#else
RETVAL = (*env)->MonitorEnter(env, obj);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -3065,7 +4018,11 @@ MonitorExit(obj)
jobject obj
CODE:
{
+#ifdef WIN32
+ RETVAL = env->MonitorExit(obj);
+#else
RETVAL = (*env)->MonitorExit(env, obj);
+#endif
RESTOREENV;
}
OUTPUT:
@@ -3077,12 +4034,23 @@ GetJavaVM(...)
CODE:
{
if (env) { /* We're embedded. */
+#ifdef WIN32
+ if (env->GetJavaVM(&RETVAL) < 0)
+#else
if ((*env)->GetJavaVM(env, &RETVAL) < 0)
+#endif
RETVAL = 0;
}
else { /* We're embedding. */
- JDK1_1InitArgs vm_args;
+#ifdef KAFFE
+ JavaVMInitArgs vm_args;
+#else
+ JDK1_1InitArgs vm_args;
+#endif
char *lib;
+ if (jpldebug) {
+ fprintf(stderr, "We're embedding Java in Perl.\n");
+ }
if (items--) {
++mark;
@@ -3090,47 +4058,84 @@ GetJavaVM(...)
}
else
lib = 0;
-
+ if (jpldebug) {
+ fprintf(stderr, "lib is %s.\n", lib);
+ }
+#ifdef WIN32
+ if (!LoadLibrary("javai.dll")) {
+ if (lib && !LoadLibrary(lib))
+ croak("Can't load javai.dll");
+ }
+#else
+ if (jpldebug) {
+ fprintf(stderr, "Opening Java shared library.\n");
+ }
+#ifdef KAFFE
+ if (!dlopen("libkaffevm.so", RTLD_LAZY|RTLD_GLOBAL)) {
+#else
if (!dlopen("libjava.so", RTLD_LAZY|RTLD_GLOBAL)) {
+#endif
if (lib && !dlopen(lib, RTLD_LAZY|RTLD_GLOBAL))
- Perl_croak(aTHX_ "Can't load libjava.so");
+ croak("Can't load Java shared library.");
}
+#endif
JNI_GetDefaultJavaVMInitArgs(&vm_args);
vm_args.exit = &call_my_exit;
+ if (jpldebug) {
+ fprintf(stderr, "items = %d\n", items);
+ fprintf(stderr, "mark = %s\n", SvPV(*mark, PL_na));
+ }
+ ++mark;
while (items > 1) {
- char *s = SvPV(*++mark,PL_na);
+ char *s = SvPV(*mark,PL_na);
+ ++mark;
+ if (jpldebug) {
+ fprintf(stderr, "*s = %s\n", s);
+ fprintf(stderr, "val = %s\n", SvPV(*mark, PL_na));
+ }
items -= 2;
if (strEQ(s, "checkSource"))
- vm_args.checkSource = (jint)SvIV(*++mark);
+ vm_args.checkSource = (jint)SvIV(*mark);
else if (strEQ(s, "nativeStackSize"))
- vm_args.nativeStackSize = (jint)SvIV(*++mark);
+ vm_args.nativeStackSize = (jint)SvIV(*mark);
else if (strEQ(s, "javaStackSize"))
- vm_args.javaStackSize = (jint)SvIV(*++mark);
+ vm_args.javaStackSize = (jint)SvIV(*mark);
else if (strEQ(s, "minHeapSize"))
- vm_args.minHeapSize = (jint)SvIV(*++mark);
+ vm_args.minHeapSize = (jint)SvIV(*mark);
else if (strEQ(s, "maxHeapSize"))
- vm_args.maxHeapSize = (jint)SvIV(*++mark);
+ vm_args.maxHeapSize = (jint)SvIV(*mark);
else if (strEQ(s, "verifyMode"))
- vm_args.verifyMode = (jint)SvIV(*++mark);
+ vm_args.verifyMode = (jint)SvIV(*mark);
else if (strEQ(s, "classpath"))
- vm_args.classpath = savepv(SvPV(*++mark,PL_na));
+ vm_args.classpath = savepv(SvPV(*mark,PL_na));
else if (strEQ(s, "enableClassGC"))
- vm_args.enableClassGC = (jint)SvIV(*++mark);
+ vm_args.enableClassGC = (jint)SvIV(*mark);
else if (strEQ(s, "enableVerboseGC"))
- vm_args.enableVerboseGC = (jint)SvIV(*++mark);
+ vm_args.enableVerboseGC = (jint)SvIV(*mark);
else if (strEQ(s, "disableAsyncGC"))
- vm_args.disableAsyncGC = (jint)SvIV(*++mark);
+ vm_args.disableAsyncGC = (jint)SvIV(*mark);
+#ifndef KAFFE
else if (strEQ(s, "verbose"))
- vm_args.verbose = (jint)SvIV(*++mark);
+ vm_args.verbose = (jint)SvIV(*mark);
else if (strEQ(s, "debugging"))
- vm_args.debugging = (jboolean)SvIV(*++mark);
+ vm_args.debugging = (jboolean)SvIV(*mark);
else if (strEQ(s, "debugPort"))
- vm_args.debugPort = (jint)SvIV(*++mark);
+ vm_args.debugPort = (jint)SvIV(*mark);
+#endif
else
- Perl_croak(aTHX_ "unrecognized option: %s", s);
+ croak("unrecognized option: %s", s);
+ }
+
+ if (jpldebug) {
+ fprintf(stderr, "Creating Java VM...\n");
+ fprintf(stderr, "Working CLASSPATH: %s\n",
+ vm_args.classpath);
}
JNI_CreateJavaVM(&RETVAL, &jplcurenv, &vm_args);
+ if (jpldebug) {
+ fprintf(stderr, "Created Java VM.\n");
+ }
}
}
diff --git a/jpl/JNI/JNIConfig b/jpl/JNI/JNIConfig
new file mode 100644
index 0000000000..494de13888
--- /dev/null
+++ b/jpl/JNI/JNIConfig
@@ -0,0 +1,13 @@
+eval `$JPL_SRC/setvars -perl`;
+$java = $ENV{JAVA_HOME};
+$jpl = $ENV{JPL_HOME};
+
+# Where are the Java includes?
+#
+@INCLUDE = ("$java/include", "$java/include/$^O", "$java/include/genunix");
+
+# Are we embedding Perl in Java?
+#
+$EMBEDDEDPERL = 1;
+
+1;
diff --git a/jpl/JNI/JNIConfig.Win32 b/jpl/JNI/JNIConfig.Win32
new file mode 100644
index 0000000000..000566ae4c
--- /dev/null
+++ b/jpl/JNI/JNIConfig.Win32
@@ -0,0 +1,21 @@
+# Are we using Kaffe?
+#
+$KAFFE = 0;
+
+# Where are the Java includes?
+#
+@INCLUDE = ("C:\\jdk1.1.8\\include", "C:\\jdk1.1.8\\include\\win32");
+
+# Are we embedding Perl in Java?
+#
+$EMBEDDEDPERL = 0;
+
+# Extra C flags
+#
+$CCFLAGS=" -Z7 -D_DEBUG";
+
+$MYEXTLIB = "C:\\jdk1.1.8\\lib\\javai.lib " .
+ "$Config{installarchlib}\\CORE\\perlcore.lib " .
+ "$Config{installarchlib}\\CORE\\perlcapi.lib";
+
+1;
diff --git a/jpl/JNI/JNIConfig.kaffe b/jpl/JNI/JNIConfig.kaffe
new file mode 100644
index 0000000000..9b2fa87414
--- /dev/null
+++ b/jpl/JNI/JNIConfig.kaffe
@@ -0,0 +1,26 @@
+eval `$JPL_SRC/setvars -perl`;
+$java = $ENV{JAVA_HOME};
+$jpl = $ENV{JPL_HOME};
+
+# Are we using Kaffe?
+#
+$KAFFE = 1;
+
+# What is the name of the JVM library?
+#
+$LIBJVM="kaffevm";
+
+# Where is the JVM library?
+#
+$LIBLOC="/usr/local/lib";
+
+# Where are the Java includes?
+#
+#@INCLUDE = ('$java/include', '$java/include/$^O' '$java/include/genunix');
+@INCLUDE = ( '/usr/local/include/kaffe');
+
+# Are we embedding Perl in Java?
+#
+$EMBEDDEDPERL = 0;
+
+1;
diff --git a/jpl/JNI/JNIConfig.noembed b/jpl/JNI/JNIConfig.noembed
new file mode 100644
index 0000000000..ae03b2c225
--- /dev/null
+++ b/jpl/JNI/JNIConfig.noembed
@@ -0,0 +1,25 @@
+eval `$JPL_SRC/setvars -perl`;
+$java = $ENV{JAVA_HOME};
+$jpl = $ENV{JPL_HOME};
+
+# Are we using Kaffe?
+#
+$KAFFE = 0;
+
+# What is the name of the JVM library?
+#
+$LIBJVM="java";
+
+# Where is the JVM library?
+#
+$LIBLOC="/usr/local/java/lib/i686/green_threads/";
+
+# Where are the Java includes?
+#
+@INCLUDE = ("$java/include", "$java/include/$^O", "$java/include/genunix");
+
+# Are we embedding Perl in Java?
+#
+$EMBEDDEDPERL = 0;
+
+1;
diff --git a/jpl/JNI/JNIConfig.standard b/jpl/JNI/JNIConfig.standard
new file mode 100644
index 0000000000..494de13888
--- /dev/null
+++ b/jpl/JNI/JNIConfig.standard
@@ -0,0 +1,13 @@
+eval `$JPL_SRC/setvars -perl`;
+$java = $ENV{JAVA_HOME};
+$jpl = $ENV{JPL_HOME};
+
+# Where are the Java includes?
+#
+@INCLUDE = ("$java/include", "$java/include/$^O", "$java/include/genunix");
+
+# Are we embedding Perl in Java?
+#
+$EMBEDDEDPERL = 1;
+
+1;
diff --git a/jpl/JNI/Makefile.PL b/jpl/JNI/Makefile.PL
index 2611ff172c..1a54b9d82c 100644
--- a/jpl/JNI/Makefile.PL
+++ b/jpl/JNI/Makefile.PL
@@ -1,24 +1,189 @@
#!/usr/bin/perl
-
-$JPL_SRC = "..";
-
use ExtUtils::MakeMaker;
+use Getopt::Std;
use Config;
+$ARCHNAME = $Config{archname};
+use File::Basename;
-eval `$JPL_SRC/setvars -perl`;
+getopts('e'); # embedding?
-$java = $ENV{JAVA_HOME};
-$jpl = $ENV{JPL_HOME};
+#require "JNIConfig";
-$ARCHNAME = $Config{archname};
+if ($^O eq 'solaris') {
+ $LIBPATH = " -R$Config{archlib}/CORE -L$Config{archlib}/CORE";
+} elsif ($^O eq 'MSWin32') {
+ $LIBPATH = " -L$Config{archlib}\\CORE";
+} else {
+ $LIBPATH = " -L$Config{archlib}/CORE";
+}
+#$LIBS = " -lperl";
-# See lib/ExtUtils/MakeMaker.pm for details of how to influence
-# the contents of the Makefile that is written.
-WriteMakefile(
- NAME => 'JNI',
+# Figure out where Java might live
+#
+my @JAVA_HOME_GUESSES = qw(/usr/local/java /usr/java /usr/local/jdk117_v3
+ /usr/local/lib/kaffe C:\\JDK1.1.8
+ C:\\JDK1.2.1 );
+if (! defined $ENV{JAVA_HOME}) {
+ print "You didn't define JAVA_HOME, so I'm trying a few guesses.\n";
+ print "If this fails, you might want to try setting JAVA_HOME and\n";
+ print "running me again.\n";
+} else {
+ @JAVA_HOME_GUESSES = ( $ENV{JAVA_HOME} );
+}
+
+# Let's find out where jni.h lives
+#
+my @INCLUDE = find_includes();
+$INC = join(" -I", ("", @INCLUDE));
+
+# Let's find out the name of the Java shared library
+#
+my @JAVALIBS = find_libs();
+
+# Find out some defines based on the library we are linking to
+#
+foreach (@JAVALIBS) {
+ if ( /javai.lib$/ or /jvm.lib$/) { # We're on Win32
+ $INC =~ s#/#\\#g;
+ $INC =~ s#\\$##;
+ $CCFLAGS .= "-DWIN32 -Z7 -D_DEBUG";
+ $MYEXTLIB = $libjava;
+ } elsif (/libkaffevm.so$/) {
+ $CCFLAGS .= "-DKAFFE";
+ }
+}
+
+# Let's find out the path of the library we need to link against.
+#
+foreach (@JAVALIBS) {
+ if ( /javai.lib$/ or /jvm.lib$/) { # We're on Win32
+ $_ =~ s#/#\\\\#g;
+ }
+ my ($libname, $libpath, $libsuffix) = fileparse($_, ("\.so", "\.lib"));
+ $libname =~ s/^lib//;
+ if ($^O eq 'solaris') {
+ $LIBPATH .= " -R$libpath -L$libpath"
+ } else {
+ $LIBPATH .= " -L$libpath"
+ }
+ $LIBS .= " -l$libname";
+}
+
+# Do we need -D_REENTRANT?
+if ($LIBPATH =~ /native/) {
+ print "Looks like native threads...\n";
+ $CCFLAGS .= " -D_REENTRANT";
+}
+
+if ($opt_e) {
+ print "We're embedding Perl in Java via libPerlInterpreter.so.\n";
+ eval `../setvars -perl`;
+ $CCFLAGS .= " -DEMBEDDEDPERL";
+ $LIBPATH .= " -R$ENV{JPL_HOME}/lib/$ARCHNAME -L$ENV{JPL_HOME}/lib/$ARCHNAME";
+ $LIBS .= " -lPerlInterpreter";
+}
+
+# Needed for JNI.
+if ($^O eq 'solaris') {
+ $LIBS = " -lthread -lc $LIBS"; #-lthread must be first!!!
+ $CCFLAGS .= " -D_REENTRANT";
+}
+
+my %Makefile = (
+ NAME => 'JNI',
VERSION_FROM => 'JNI.pm',
- LIBS => ["-R$Config{archlib}/CORE -L$Config{archlib}/CORE -R$jpl/lib/$ARCHNAME -L$jpl/lib/$ARCHNAME -lperl -lPerlInterpreter"],
- DEFINE => '',
+ DEFINE => '',
LINKTYPE => 'dynamic',
- INC => "-I$java/include -I$java/include/$^O -I$java/include/genunix",
+ INC => $INC,
+ CCFLAGS => "$Config{ccflags} $CCFLAGS",
+ ($Config{archname} =~ /mswin32.*-object/i ? ('CAPI' => 'TRUE') : ()),
);
+
+$Makefile{LIBS} = ["$LIBPATH $LIBS"];
+if ($MYEXTLIB) {
+ $Makefile{MYEXTLIB} = $MYEXTLIB;
+}
+
+# See lib/ExtUtils/MakeMaker.pm for details of how to influence
+# the contents of the Makefile that is written.
+#
+WriteMakefile(%Makefile);
+
+# subroutine to find a library
+#
+sub find_stuff {
+
+ my ($candidates, $locations) = @_;
+
+ my $lib;
+ $wanted = sub {
+ foreach my $name (@$candidates) {
+ if (/$name$/ and ! /green_threads/ and !/include-old/) {
+ $lib = $File::Find::name;
+ }
+ }
+ };
+
+ use File::Find;
+ foreach my $guess (@$locations) {
+ next unless -d $guess;
+ find (\&$wanted, $guess);
+ }
+ if (! $lib) {
+ print "Could not find @$candidates\n";
+ } else {
+ print "Found @$candidates as $lib\n\n";
+ }
+ return $lib;
+}
+
+# Extra lib for Java 1.2
+#
+sub find_libs {
+
+ my $libjava = find_stuff(['libjava.so', 'libkaffevm.so', 'javai.lib', 'jvm.lib'],
+ \@JAVA_HOME_GUESSES);
+ my $libjvm = find_stuff(['libjvm.so'], \@JAVA_HOME_GUESSES);
+ if ($libjvm) { # JDK 1.2
+ my $libhpi = find_stuff(['libhpi.so'], \@JAVA_HOME_GUESSES);
+ my $libawt = find_stuff(['libawt.so'], \@JAVA_HOME_GUESSES);
+ return($libjava, $libjvm, $libhpi, $libawt);
+ } else {
+ return($libjava);
+ }
+
+}
+
+# We need to find jni.h and jni_md.h
+#
+sub find_includes {
+
+ my @CANDIDATES = qw(jni.h jni_md.h);
+ my @includes;
+
+ sub find_inc {
+ foreach my $name (@CANDIDATES) {
+ if (/$name$/) {
+ my ($hname, $hpath, $hsuffix) =
+ fileparse($File::Find::name, ("\.h", "\.H"));
+ unless ($hpath =~ /include-old/) {
+ print "Found $hname$hsuffix in $hpath\n";
+ push @includes, $hpath;
+ }
+ }
+ }
+ }
+
+ use File::Find;
+ foreach my $guess (@JAVA_HOME_GUESSES) {
+ next unless -d $guess;
+ find (\&find_inc, $guess);
+ }
+ if (! @includes) {
+ die "Could not find Java includes!";
+ } else {
+ print join("\n", @includes), "\n";
+ }
+ return @includes;
+}
+
diff --git a/jpl/JNI/test.pl b/jpl/JNI/test.pl
index 816e28bcf2..9c5238eb9f 100644
--- a/jpl/JNI/test.pl
+++ b/jpl/JNI/test.pl
@@ -6,7 +6,7 @@
# Change 1..1 below to 1..last_test_to_print .
# (It may become useful if the test is moved to ./t subdirectory.)
-BEGIN { $| = 1; print "1..1\n"; }
+BEGIN { $| = 1; print "1..3\n"; }
END {print "not ok 1\n" unless $loaded;}
use JNI;
$loaded = 1;
@@ -18,3 +18,41 @@ print "ok 1\n";
# (correspondingly "not ok 13") depending on the success of chunk 13
# of the test code):
+# Simple StringBuffer test.
+#
+use JPL::AutoLoader;
+use JPL::Class 'java::lang::StringBuffer';
+$sb = java::lang::StringBuffer->new__s("TEST");
+if ($sb->toString____s() eq "TEST") {
+ print "ok 2\n";
+} else {
+ print "not ok 2\n";
+}
+
+# Put up a frame and let the user close it.
+#
+use JPL::AutoLoader;
+use JPL::Class 'java::awt::Frame';
+use JPL::Class 'Closer';
+
+$f = java::awt::Frame->new__s("Close Me, Please!");
+my $setSize = getmeth("setSize", ["int", "int"], []);
+my $addWindowListener = getmeth("addWindowListener",
+ ["java.awt.event.WindowListener"], []);
+
+$f->$addWindowListener( new Closer );
+$f->$setSize(200,200);
+$f->show();
+
+while (1) {
+
+ if (!$f->isVisible____Z) {
+ last;
+ }
+
+ # Sleep a bit.
+ #
+ sleep 1;
+}
+
+print "ok 3\n";
diff --git a/jpl/JNI/typemap b/jpl/JNI/typemap
index 6b97cf474b..9bd0691be2 100644
--- a/jpl/JNI/typemap
+++ b/jpl/JNI/typemap
@@ -55,13 +55,13 @@ T_JVALUELIST
AV* av = (AV*)SvRV($arg);
if (SvTYPE(av) == SVt_PVAV) {
I32 maxarg = AvFILL(av) + 1;
- $var = makeargs(aTHX_ sig, AvARRAY(av), maxarg);
+ $var = makeargs(sig, AvARRAY(av), maxarg);
}
else
- Perl_croak(aTHX_ \"$var is not an array reference\");
+ croak(\"$var is not an array reference\");
}
else
- Perl_croak(aTHX_ \"$var is not a reference\")
+ croak(\"$var is not a reference\")
T_JIDSIG
{
$var = ($type)SvIV($arg);
@@ -73,7 +73,7 @@ T_JPTROBJ
$var = ($type) tmp;
}
else
- Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+ croak(\"$var is not of type ${ntype}\")
OUTPUT
T_JMEM
@@ -152,22 +152,22 @@ T_JPTROBJ
# if (sv_isa($arg, \"${ntype}\"))
# $var = (SV*)SvRV($arg);
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_AVREF
# if (sv_isa($arg, \"${ntype}\"))
# $var = (AV*)SvRV($arg);
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_HVREF
# if (sv_isa($arg, \"${ntype}\"))
# $var = (HV*)SvRV($arg);
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_CVREF
# if (sv_isa($arg, \"${ntype}\"))
# $var = (CV*)SvRV($arg);
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_SYSRET
# $var NOT IMPLEMENTED
# T_IV
@@ -208,28 +208,28 @@ T_JPTROBJ
# $var = ($type) tmp;
# }
# else
-# Perl_croak(aTHX_ \"$var is not a reference\")
+# croak(\"$var is not a reference\")
# T_REF_IV_REF
# if (sv_isa($arg, \"${type}\")) {
# IV tmp = SvIV((SV*)SvRV($arg));
# $var = *($type *) tmp;
# }
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_REF_IV_PTR
# if (sv_isa($arg, \"${type}\")) {
# IV tmp = SvIV((SV*)SvRV($arg));
# $var = ($type) tmp;
# }
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_PTROBJ
# if (sv_derived_from($arg, \"${ntype}\")) {
# IV tmp = SvIV((SV*)SvRV($arg));
# $var = ($type) tmp;
# }
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_PTRDESC
# if (sv_isa($arg, \"${ntype}\")) {
# IV tmp = SvIV((SV*)SvRV($arg));
@@ -237,21 +237,21 @@ T_JPTROBJ
# $var = ${type}_desc->ptr;
# }
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_REFREF
# if (SvROK($arg)) {
# IV tmp = SvIV((SV*)SvRV($arg));
# $var = *($type) tmp;
# }
# else
-# Perl_croak(aTHX_ \"$var is not a reference\")
+# croak(\"$var is not a reference\")
# T_REFOBJ
# if (sv_isa($arg, \"${ntype}\")) {
# IV tmp = SvIV((SV*)SvRV($arg));
# $var = *($type) tmp;
# }
# else
-# Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
+# croak(\"$var is not of type ${ntype}\")
# T_OPAQUE
# $var NOT IMPLEMENTED
# T_OPAQUEPTR
diff --git a/jpl/JNI/typemap.gcc b/jpl/JNI/typemap.gcc
new file mode 100644
index 0000000000..9bd0691be2
--- /dev/null
+++ b/jpl/JNI/typemap.gcc
@@ -0,0 +1,386 @@
+JavaVM * T_JPTROBJ
+JNINativeMethod * T_JPTROBJ
+const char * T_PV
+const jbyte * T_JMEM
+const jchar * T_JMEM
+jarray T_JPTROBJ
+jboolean T_IV
+jboolean * T_JMEM
+jbooleanArray T_JPTROBJ
+jbyte T_IV
+jbyte * T_JMEM
+jbyteArray T_JPTROBJ
+jchar T_IV
+jchar * T_JMEM
+jcharArray T_JPTROBJ
+jclass T_JPTROBJ
+jdouble T_NV
+jdouble * T_JMEM
+jdoubleArray T_JPTROBJ
+jfieldID T_JIDSIG
+jfloat T_NV
+jfloat * T_JMEM
+jfloatArray T_JPTROBJ
+jint T_IV
+jint * T_JMEM
+jintArray T_JPTROBJ
+jlong T_NV
+jlong * T_JMEM
+jlongArray T_JPTROBJ
+jmethodID T_JIDSIG
+jobject T_JPTROBJ
+jobjectArray T_JPTROBJ
+jshort T_IV
+jshort * T_JMEM
+jshortArray T_JPTROBJ
+jsize T_IV
+jstring T_JSTRING
+jthrowable T_JPTROBJ
+jvalue * T_JVALUELIST
+
+INPUT
+T_JMEM
+ {
+ $var = ($type)SvPV($arg,tmplen);
+ ${var}_len_ = (jsize) tmplen / sizeof(${subtype});
+ }
+T_JSTRING
+ if (SvROK($arg)) {
+ $var = ($type)(void*)SvIV(SvRV($arg));
+ }
+ else
+ $var = ($type)(*env)->NewStringUTF(env, (char *) SvPV($arg,PL_na))
+T_JVALUELIST
+ if (SvROK($arg)) {
+ AV* av = (AV*)SvRV($arg);
+ if (SvTYPE(av) == SVt_PVAV) {
+ I32 maxarg = AvFILL(av) + 1;
+ $var = makeargs(sig, AvARRAY(av), maxarg);
+ }
+ else
+ croak(\"$var is not an array reference\");
+ }
+ else
+ croak(\"$var is not a reference\")
+T_JIDSIG
+ {
+ $var = ($type)SvIV($arg);
+ sig = (char*)SvPV($arg,PL_na);
+ }
+T_JPTROBJ
+ if (SvROK($arg) && SvOBJECT(SvRV($arg))) {
+ IV tmp = SvIV((SV*)SvRV($arg));
+ $var = ($type) tmp;
+ }
+ else
+ croak(\"$var is not of type ${ntype}\")
+
+OUTPUT
+T_JMEM
+ sv_setpvn((SV*)$arg, (char*)$var, (STRLEN)${var}_len_ * sizeof(${subtype}));
+T_JSTRING
+ {
+ static HV* ${var}_stashhv_ = 0;
+ if (!${var}_stashhv_)
+ ${var}_stashhv_ = gv_stashpv("java::lang::String", TRUE);
+
+ sv_bless(
+ sv_setref_iv($arg, Nullch, (IV)(void*)${var}),
+ ${var}_stashhv_);
+
+ }
+T_JIDSIG
+ sv_setiv($arg, (IV)(void*)$var);
+ sv_setpv($arg, (char*)sig);
+ SvIOK_on($arg);
+T_JPTROBJ
+ sv_setref_pv($arg, \"${ntype}\", (void*)$var);
+
+# basic C types
+# int T_IV
+# unsigned T_IV
+# unsigned int T_IV
+# long T_IV
+# unsigned long T_IV
+# short T_IV
+# unsigned short T_IV
+# char T_CHAR
+# unsigned char T_U_CHAR
+# char * T_PV
+# unsigned char * T_PV
+# caddr_t T_PV
+# wchar_t * T_PV
+# wchar_t T_IV
+# bool_t T_IV
+# size_t T_IV
+# ssize_t T_IV
+# time_t T_NV
+# unsigned long * T_OPAQUEPTR
+# char ** T_PACKED
+# void * T_PTR
+# Time_t * T_PV
+# SV * T_SV
+# SVREF T_SVREF
+# AV * T_AVREF
+# HV * T_HVREF
+# CV * T_CVREF
+#
+# IV T_IV
+# I32 T_IV
+# I16 T_IV
+# I8 T_IV
+# U32 T_U_LONG
+# U16 T_U_SHORT
+# U8 T_IV
+# Result T_U_CHAR
+# Boolean T_IV
+# double T_DOUBLE
+# SysRet T_SYSRET
+# SysRetLong T_SYSRET
+# FILE * T_IN
+# FileHandle T_PTROBJ
+# InputStream T_IN
+# InOutStream T_INOUT
+# OutputStream T_OUT
+# bool T_BOOL
+#
+#############################################################################
+# INPUT
+# T_SV
+# $var = $arg
+# T_SVREF
+# if (sv_isa($arg, \"${ntype}\"))
+# $var = (SV*)SvRV($arg);
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_AVREF
+# if (sv_isa($arg, \"${ntype}\"))
+# $var = (AV*)SvRV($arg);
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_HVREF
+# if (sv_isa($arg, \"${ntype}\"))
+# $var = (HV*)SvRV($arg);
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_CVREF
+# if (sv_isa($arg, \"${ntype}\"))
+# $var = (CV*)SvRV($arg);
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_SYSRET
+# $var NOT IMPLEMENTED
+# T_IV
+# $var = ($type)SvIV($arg)
+# T_INT
+# $var = (int)SvIV($arg)
+# T_ENUM
+# $var = ($type)SvIV($arg)
+# T_BOOL
+# $var = (int)SvIV($arg)
+# T_U_INT
+# $var = (unsigned int)SvIV($arg)
+# T_SHORT
+# $var = (short)SvIV($arg)
+# T_U_SHORT
+# $var = (unsigned short)SvIV($arg)
+# T_LONG
+# $var = (long)SvIV($arg)
+# T_U_LONG
+# $var = (unsigned long)SvIV($arg)
+# T_CHAR
+# $var = (char)*SvPV($arg,PL_na)
+# T_U_CHAR
+# $var = (unsigned char)SvIV($arg)
+# T_FLOAT
+# $var = (float)SvNV($arg)
+# T_NV
+# $var = ($type)SvNV($arg)
+# T_DOUBLE
+# $var = (double)SvNV($arg)
+# T_PV
+# $var = ($type)SvPV($arg,PL_na)
+# T_PTR
+# $var = ($type)SvIV($arg)
+# T_PTRREF
+# if (SvROK($arg)) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = ($type) tmp;
+# }
+# else
+# croak(\"$var is not a reference\")
+# T_REF_IV_REF
+# if (sv_isa($arg, \"${type}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = *($type *) tmp;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_REF_IV_PTR
+# if (sv_isa($arg, \"${type}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = ($type) tmp;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_PTROBJ
+# if (sv_derived_from($arg, \"${ntype}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = ($type) tmp;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_PTRDESC
+# if (sv_isa($arg, \"${ntype}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# ${type}_desc = (\U${type}_DESC\E*) tmp;
+# $var = ${type}_desc->ptr;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_REFREF
+# if (SvROK($arg)) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = *($type) tmp;
+# }
+# else
+# croak(\"$var is not a reference\")
+# T_REFOBJ
+# if (sv_isa($arg, \"${ntype}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = *($type) tmp;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_OPAQUE
+# $var NOT IMPLEMENTED
+# T_OPAQUEPTR
+# $var = ($type)SvPV($arg,PL_na)
+# T_PACKED
+# $var = XS_unpack_$ntype($arg)
+# T_PACKEDARRAY
+# $var = XS_unpack_$ntype($arg)
+# T_CALLBACK
+# $var = make_perl_cb_$type($arg)
+# T_ARRAY
+# $var = $ntype(items -= $argoff);
+# U32 ix_$var = $argoff;
+# while (items--) {
+# DO_ARRAY_ELEM;
+# }
+# T_IN
+# $var = IoIFP(sv_2io($arg))
+# T_INOUT
+# $var = IoIFP(sv_2io($arg))
+# T_OUT
+# $var = IoOFP(sv_2io($arg))
+##############################################################################
+# OUTPUT
+# T_SV
+# $arg = $var;
+# T_SVREF
+# $arg = newRV((SV*)$var);
+# T_AVREF
+# $arg = newRV((SV*)$var);
+# T_HVREF
+# $arg = newRV((SV*)$var);
+# T_CVREF
+# $arg = newRV((SV*)$var);
+# T_IV
+# sv_setiv($arg, (IV)$var);
+# T_INT
+# sv_setiv($arg, (IV)$var);
+# T_SYSRET
+# if ($var != -1) {
+# if ($var == 0)
+# sv_setpvn($arg, "0 but true", 10);
+# else
+# sv_setiv($arg, (IV)$var);
+# }
+# T_ENUM
+# sv_setiv($arg, (IV)$var);
+# T_BOOL
+# $arg = boolSV($var);
+# T_U_INT
+# sv_setiv($arg, (IV)$var);
+# T_SHORT
+# sv_setiv($arg, (IV)$var);
+# T_U_SHORT
+# sv_setiv($arg, (IV)$var);
+# T_LONG
+# sv_setiv($arg, (IV)$var);
+# T_U_LONG
+# sv_setiv($arg, (IV)$var);
+# T_CHAR
+# sv_setpvn($arg, (char *)&$var, 1);
+# T_U_CHAR
+# sv_setiv($arg, (IV)$var);
+# T_FLOAT
+# sv_setnv($arg, (double)$var);
+# T_NV
+# sv_setnv($arg, (double)$var);
+# T_DOUBLE
+# sv_setnv($arg, (double)$var);
+# T_PV
+# sv_setpv((SV*)$arg, $var);
+# T_PTR
+# sv_setiv($arg, (IV)$var);
+# T_PTRREF
+# sv_setref_pv($arg, Nullch, (void*)$var);
+# T_REF_IV_REF
+# sv_setref_pv($arg, \"${ntype}\", (void*)new $ntype($var));
+# T_REF_IV_PTR
+# sv_setref_pv($arg, \"${ntype}\", (void*)$var);
+# T_PTROBJ
+# sv_setref_pv($arg, \"${ntype}\", (void*)$var);
+# T_PTRDESC
+# sv_setref_pv($arg, \"${ntype}\", (void*)new\U${type}_DESC\E($var));
+# T_REFREF
+# sv_setrefref($arg, \"${ntype}\", XS_service_$ntype,
+# ($var ? (void*)new $ntype($var) : 0));
+# T_REFOBJ
+# NOT IMPLEMENTED
+# T_OPAQUE
+# sv_setpvn($arg, (char *)&$var, sizeof($var));
+# T_OPAQUEPTR
+# sv_setpvn($arg, (char *)$var, sizeof(*$var)), XFree((char *)$var);
+# T_PACKED
+# XS_pack_$ntype($arg, $var);
+# T_PACKEDARRAY
+# XS_pack_$ntype($arg, $var, count_$ntype);
+# T_DATAUNIT
+# sv_setpvn($arg, $var.chp(), $var.size());
+# T_CALLBACK
+# sv_setpvn($arg, $var.context.value().chp(),
+# $var.context.value().size());
+# T_ARRAY
+# ST_EXTEND($var.size);
+# for (U32 ix_$var = 0; ix_$var < $var.size; ix_$var++) {
+# ST(ix_$var) = sv_newmortal();
+# DO_ARRAY_ELEM
+# }
+# sp += $var.size - 1;
+# T_IN
+# {
+# GV *gv = newGVgen("$Package");
+# if ( do_open(gv, "<&", 2, FALSE, 0, 0, $var) )
+# sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
+# else
+# $arg = &PL_sv_undef;
+# }
+# T_INOUT
+# {
+# GV *gv = newGVgen("$Package");
+# if ( do_open(gv, "+<&", 3, FALSE, 0, 0, $var) )
+# sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
+# else
+# $arg = &PL_sv_undef;
+# }
+# T_OUT
+# {
+# GV *gv = newGVgen("$Package");
+# if ( do_open(gv, "+>&", 3, FALSE, 0, 0, $var) )
+# sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
+# else
+# $arg = &PL_sv_undef;
+# }
diff --git a/jpl/JNI/typemap.win32 b/jpl/JNI/typemap.win32
new file mode 100644
index 0000000000..89eb8df5df
--- /dev/null
+++ b/jpl/JNI/typemap.win32
@@ -0,0 +1,386 @@
+JavaVM * T_JPTROBJ
+JNINativeMethod * T_JPTROBJ
+const char * T_PV
+const jbyte * T_JMEM
+const jchar * T_JMEM
+jarray T_JPTROBJ
+jboolean T_IV
+jboolean * T_JMEM
+jbooleanArray T_JPTROBJ
+jbyte T_IV
+jbyte * T_JMEM
+jbyteArray T_JPTROBJ
+jchar T_IV
+jchar * T_JMEM
+jcharArray T_JPTROBJ
+jclass T_JPTROBJ
+jdouble T_NV
+jdouble * T_JMEM
+jdoubleArray T_JPTROBJ
+jfieldID T_JIDSIG
+jfloat T_NV
+jfloat * T_JMEM
+jfloatArray T_JPTROBJ
+jint T_IV
+jint * T_JMEM
+jintArray T_JPTROBJ
+jlong T_NV
+jlong * T_JMEM
+jlongArray T_JPTROBJ
+jmethodID T_JIDSIG
+jobject T_JPTROBJ
+jobjectArray T_JPTROBJ
+jshort T_IV
+jshort * T_JMEM
+jshortArray T_JPTROBJ
+jsize T_IV
+jstring T_JSTRING
+jthrowable T_JPTROBJ
+jvalue * T_JVALUELIST
+
+INPUT
+T_JMEM
+ {
+ $var = ($type)SvPV($arg,tmplen);
+ ${var}_len_ = (jsize) tmplen / sizeof(${subtype});
+ }
+T_JSTRING
+ if (SvROK($arg)) {
+ $var = ($type)(void*)SvIV(SvRV($arg));
+ }
+ else
+ $var = ($type)env->NewStringUTF((char *) SvPV($arg,PL_na))
+T_JVALUELIST
+ if (SvROK($arg)) {
+ AV* av = (AV*)SvRV($arg);
+ if (SvTYPE(av) == SVt_PVAV) {
+ I32 maxarg = AvFILL(av) + 1;
+ $var = makeargs(sig, AvARRAY(av), maxarg);
+ }
+ else
+ croak(\"$var is not an array reference\");
+ }
+ else
+ croak(\"$var is not a reference\")
+T_JIDSIG
+ {
+ $var = ($type)SvIV($arg);
+ sig = (char*)SvPV($arg,PL_na);
+ }
+T_JPTROBJ
+ if (SvROK($arg) && SvOBJECT(SvRV($arg))) {
+ IV tmp = SvIV((SV*)SvRV($arg));
+ $var = ($type) tmp;
+ }
+ else
+ croak(\"$var is not of type ${ntype}\")
+
+OUTPUT
+T_JMEM
+ sv_setpvn((SV*)$arg, (char*)$var, (STRLEN)${var}_len_ * sizeof(${subtype}));
+T_JSTRING
+ {
+ static HV* ${var}_stashhv_ = 0;
+ if (!${var}_stashhv_)
+ ${var}_stashhv_ = gv_stashpv("java::lang::String", TRUE);
+
+ sv_bless(
+ sv_setref_iv($arg, Nullch, (IV)(void*)${var}),
+ ${var}_stashhv_);
+
+ }
+T_JIDSIG
+ sv_setiv($arg, (IV)(void*)$var);
+ sv_setpv($arg, (char*)sig);
+ SvIOK_on($arg);
+T_JPTROBJ
+ sv_setref_pv($arg, \"${ntype}\", (void*)$var);
+
+# basic C types
+# int T_IV
+# unsigned T_IV
+# unsigned int T_IV
+# long T_IV
+# unsigned long T_IV
+# short T_IV
+# unsigned short T_IV
+# char T_CHAR
+# unsigned char T_U_CHAR
+# char * T_PV
+# unsigned char * T_PV
+# caddr_t T_PV
+# wchar_t * T_PV
+# wchar_t T_IV
+# bool_t T_IV
+# size_t T_IV
+# ssize_t T_IV
+# time_t T_NV
+# unsigned long * T_OPAQUEPTR
+# char ** T_PACKED
+# void * T_PTR
+# Time_t * T_PV
+# SV * T_SV
+# SVREF T_SVREF
+# AV * T_AVREF
+# HV * T_HVREF
+# CV * T_CVREF
+#
+# IV T_IV
+# I32 T_IV
+# I16 T_IV
+# I8 T_IV
+# U32 T_U_LONG
+# U16 T_U_SHORT
+# U8 T_IV
+# Result T_U_CHAR
+# Boolean T_IV
+# double T_DOUBLE
+# SysRet T_SYSRET
+# SysRetLong T_SYSRET
+# FILE * T_IN
+# FileHandle T_PTROBJ
+# InputStream T_IN
+# InOutStream T_INOUT
+# OutputStream T_OUT
+# bool T_BOOL
+#
+#############################################################################
+# INPUT
+# T_SV
+# $var = $arg
+# T_SVREF
+# if (sv_isa($arg, \"${ntype}\"))
+# $var = (SV*)SvRV($arg);
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_AVREF
+# if (sv_isa($arg, \"${ntype}\"))
+# $var = (AV*)SvRV($arg);
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_HVREF
+# if (sv_isa($arg, \"${ntype}\"))
+# $var = (HV*)SvRV($arg);
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_CVREF
+# if (sv_isa($arg, \"${ntype}\"))
+# $var = (CV*)SvRV($arg);
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_SYSRET
+# $var NOT IMPLEMENTED
+# T_IV
+# $var = ($type)SvIV($arg)
+# T_INT
+# $var = (int)SvIV($arg)
+# T_ENUM
+# $var = ($type)SvIV($arg)
+# T_BOOL
+# $var = (int)SvIV($arg)
+# T_U_INT
+# $var = (unsigned int)SvIV($arg)
+# T_SHORT
+# $var = (short)SvIV($arg)
+# T_U_SHORT
+# $var = (unsigned short)SvIV($arg)
+# T_LONG
+# $var = (long)SvIV($arg)
+# T_U_LONG
+# $var = (unsigned long)SvIV($arg)
+# T_CHAR
+# $var = (char)*SvPV($arg,PL_na)
+# T_U_CHAR
+# $var = (unsigned char)SvIV($arg)
+# T_FLOAT
+# $var = (float)SvNV($arg)
+# T_NV
+# $var = ($type)SvNV($arg)
+# T_DOUBLE
+# $var = (double)SvNV($arg)
+# T_PV
+# $var = ($type)SvPV($arg,PL_na)
+# T_PTR
+# $var = ($type)SvIV($arg)
+# T_PTRREF
+# if (SvROK($arg)) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = ($type) tmp;
+# }
+# else
+# croak(\"$var is not a reference\")
+# T_REF_IV_REF
+# if (sv_isa($arg, \"${type}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = *($type *) tmp;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_REF_IV_PTR
+# if (sv_isa($arg, \"${type}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = ($type) tmp;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_PTROBJ
+# if (sv_derived_from($arg, \"${ntype}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = ($type) tmp;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_PTRDESC
+# if (sv_isa($arg, \"${ntype}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# ${type}_desc = (\U${type}_DESC\E*) tmp;
+# $var = ${type}_desc->ptr;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_REFREF
+# if (SvROK($arg)) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = *($type) tmp;
+# }
+# else
+# croak(\"$var is not a reference\")
+# T_REFOBJ
+# if (sv_isa($arg, \"${ntype}\")) {
+# IV tmp = SvIV((SV*)SvRV($arg));
+# $var = *($type) tmp;
+# }
+# else
+# croak(\"$var is not of type ${ntype}\")
+# T_OPAQUE
+# $var NOT IMPLEMENTED
+# T_OPAQUEPTR
+# $var = ($type)SvPV($arg,PL_na)
+# T_PACKED
+# $var = XS_unpack_$ntype($arg)
+# T_PACKEDARRAY
+# $var = XS_unpack_$ntype($arg)
+# T_CALLBACK
+# $var = make_perl_cb_$type($arg)
+# T_ARRAY
+# $var = $ntype(items -= $argoff);
+# U32 ix_$var = $argoff;
+# while (items--) {
+# DO_ARRAY_ELEM;
+# }
+# T_IN
+# $var = IoIFP(sv_2io($arg))
+# T_INOUT
+# $var = IoIFP(sv_2io($arg))
+# T_OUT
+# $var = IoOFP(sv_2io($arg))
+##############################################################################
+# OUTPUT
+# T_SV
+# $arg = $var;
+# T_SVREF
+# $arg = newRV((SV*)$var);
+# T_AVREF
+# $arg = newRV((SV*)$var);
+# T_HVREF
+# $arg = newRV((SV*)$var);
+# T_CVREF
+# $arg = newRV((SV*)$var);
+# T_IV
+# sv_setiv($arg, (IV)$var);
+# T_INT
+# sv_setiv($arg, (IV)$var);
+# T_SYSRET
+# if ($var != -1) {
+# if ($var == 0)
+# sv_setpvn($arg, "0 but true", 10);
+# else
+# sv_setiv($arg, (IV)$var);
+# }
+# T_ENUM
+# sv_setiv($arg, (IV)$var);
+# T_BOOL
+# $arg = boolSV($var);
+# T_U_INT
+# sv_setiv($arg, (IV)$var);
+# T_SHORT
+# sv_setiv($arg, (IV)$var);
+# T_U_SHORT
+# sv_setiv($arg, (IV)$var);
+# T_LONG
+# sv_setiv($arg, (IV)$var);
+# T_U_LONG
+# sv_setiv($arg, (IV)$var);
+# T_CHAR
+# sv_setpvn($arg, (char *)&$var, 1);
+# T_U_CHAR
+# sv_setiv($arg, (IV)$var);
+# T_FLOAT
+# sv_setnv($arg, (double)$var);
+# T_NV
+# sv_setnv($arg, (double)$var);
+# T_DOUBLE
+# sv_setnv($arg, (double)$var);
+# T_PV
+# sv_setpv((SV*)$arg, $var);
+# T_PTR
+# sv_setiv($arg, (IV)$var);
+# T_PTRREF
+# sv_setref_pv($arg, Nullch, (void*)$var);
+# T_REF_IV_REF
+# sv_setref_pv($arg, \"${ntype}\", (void*)new $ntype($var));
+# T_REF_IV_PTR
+# sv_setref_pv($arg, \"${ntype}\", (void*)$var);
+# T_PTROBJ
+# sv_setref_pv($arg, \"${ntype}\", (void*)$var);
+# T_PTRDESC
+# sv_setref_pv($arg, \"${ntype}\", (void*)new\U${type}_DESC\E($var));
+# T_REFREF
+# sv_setrefref($arg, \"${ntype}\", XS_service_$ntype,
+# ($var ? (void*)new $ntype($var) : 0));
+# T_REFOBJ
+# NOT IMPLEMENTED
+# T_OPAQUE
+# sv_setpvn($arg, (char *)&$var, sizeof($var));
+# T_OPAQUEPTR
+# sv_setpvn($arg, (char *)$var, sizeof(*$var)), XFree((char *)$var);
+# T_PACKED
+# XS_pack_$ntype($arg, $var);
+# T_PACKEDARRAY
+# XS_pack_$ntype($arg, $var, count_$ntype);
+# T_DATAUNIT
+# sv_setpvn($arg, $var.chp(), $var.size());
+# T_CALLBACK
+# sv_setpvn($arg, $var.context.value().chp(),
+# $var.context.value().size());
+# T_ARRAY
+# ST_EXTEND($var.size);
+# for (U32 ix_$var = 0; ix_$var < $var.size; ix_$var++) {
+# ST(ix_$var) = sv_newmortal();
+# DO_ARRAY_ELEM
+# }
+# sp += $var.size - 1;
+# T_IN
+# {
+# GV *gv = newGVgen("$Package");
+# if ( do_open(gv, "<&", 2, FALSE, 0, 0, $var) )
+# sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
+# else
+# $arg = &PL_sv_undef;
+# }
+# T_INOUT
+# {
+# GV *gv = newGVgen("$Package");
+# if ( do_open(gv, "+<&", 3, FALSE, 0, 0, $var) )
+# sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
+# else
+# $arg = &PL_sv_undef;
+# }
+# T_OUT
+# {
+# GV *gv = newGVgen("$Package");
+# if ( do_open(gv, "+>&", 3, FALSE, 0, 0, $var) )
+# sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
+# else
+# $arg = &PL_sv_undef;
+# }
diff --git a/jpl/JPL/Makefile.PL b/jpl/JPL/Makefile.PL
index efb606da17..02e5b4597a 100644
--- a/jpl/JPL/Makefile.PL
+++ b/jpl/JPL/Makefile.PL
@@ -1,36 +1,6 @@
-#!/usr/bin/perl
-
-$JPL_SRC = "..";
-
-use Config;
-
-eval `$JPL_SRC/setvars -perl`;
-
-open(MAKEFILE, ">Makefile");
-
-print MAKEFILE <<"SUBS";
-PERL = perl$]
-ARCHNAME = $Config{archname}
-JAVA_HOME = $ENV{JAVA_HOME}
-JPL_HOME = $ENV{JPL_HOME}
-PERLARCHDIR = $Config{archlib}
-
-SUBS
-
-print MAKEFILE <<'NOSUBS';
-
-all:
-
-debug:
-
-test:
-
-install:
- mkdir -p $(JPL_HOME)/perl/JPL
- cp *.p[ml] $(JPL_HOME)/perl/JPL
-
-clean:
-
-NOSUBS
-
-close MAKEFILE;
+use ExtUtils::MakeMaker;
+# See lib/ExtUtils/MakeMaker.pm for details of how to influence
+# the contents of the Makefile that is written.
+WriteMakefile(
+ 'NAME' => 'JPL::Class',
+);
diff --git a/jpl/PerlInterpreter/Makefile.PL b/jpl/PerlInterpreter/Makefile.PL
index 76852c6cc8..b8b20f1e69 100644
--- a/jpl/PerlInterpreter/Makefile.PL
+++ b/jpl/PerlInterpreter/Makefile.PL
@@ -9,12 +9,16 @@ eval `$JPL_SRC/setvars -perl`;
if ($^O eq 'linux') {
$flags = "-Dbool=char"; # avoid builtin bool altogether
$libs = "-lc -lm -ldl";
-}
-else {
+} else {
$flags = "";
$libs = "-lc -lm -ldl";
}
+# Needed for JNI.
+if ($^O eq 'solaris') {
+ $libs .= " -lthread";
+}
+
open(MAKEFILE, ">Makefile");
print MAKEFILE <<"SUBS";
diff --git a/jpl/PerlInterpreter/PerlInterpreter.c b/jpl/PerlInterpreter/PerlInterpreter.c
index b229d130b3..8134f0c9f5 100644
--- a/jpl/PerlInterpreter/PerlInterpreter.c
+++ b/jpl/PerlInterpreter/PerlInterpreter.c
@@ -8,6 +8,37 @@
#include "EXTERN.h"
#include "perl.h"
+#ifndef PERL_VERSION
+# include <patchlevel.h>
+# define PERL_REVISION 5
+# define PERL_VERSION PATCHLEVEL
+# define PERL_SUBVERSION SUBVERSION
+#endif
+
+#if PERL_REVISION == 5 && (PERL_VERSION < 4 || \
+ (PERL_VERSION == 4 && PERL_SUBVERSION <= 75))
+# define PL_na na
+# define PL_sv_no sv_no
+# define PL_sv_undef sv_undef
+# define PL_dowarn dowarn
+# define PL_curinterp curinterp
+# define PL_do_undump do_undump
+# define PL_perl_destruct_level perl_destruct_level
+# define ERRSV GvSV(errgv)
+#endif
+
+#ifndef newSVpvn
+# define newSVpvn(a,b) newSVpv(a,b)
+#endif
+
+#ifndef pTHX
+# define pTHX void
+# define pTHX_
+# define aTHX
+# define aTHX_
+# define dTHX extern int JNI___notused
+#endif
+
#ifndef EXTERN_C
# ifdef __cplusplus
# define EXTERN_C extern "C"
@@ -46,6 +77,8 @@ Java_PerlInterpreter_init(JNIEnv *env, jobject obj, jstring js)
if (PL_curinterp)
return;
+ perl_init_i18nl10n(1);
+
if (!PL_do_undump) {
my_perl = perl_alloc();
if (!my_perl)
@@ -62,21 +95,20 @@ Java_PerlInterpreter_init(JNIEnv *env, jobject obj, jstring js)
}
JNIEXPORT void JNICALL
-Java_PerlInterpreter_eval(void *perl, JNIEnv *env, jobject obj, jstring js)
+Java_PerlInterpreter_eval(JNIEnv *env, jobject obj, jstring js)
{
SV* envsv;
SV* objsv;
dSP;
jbyte* jb;
- dTHXa(perl);
ENTER;
SAVETMPS;
jplcurenv = env;
- envsv = get_sv("JPL::_env_", 1);
+ envsv = perl_get_sv("JPL::_env_", 1);
sv_setiv(envsv, (IV)(void*)env);
- objsv = get_sv("JPL::_obj_", 1);
+ objsv = perl_get_sv("JPL::_obj_", 1);
sv_setiv(objsv, (IV)(void*)obj);
jb = (jbyte*)(*env)->GetStringUTFChars(env,js,0);
@@ -84,7 +116,7 @@ Java_PerlInterpreter_eval(void *perl, JNIEnv *env, jobject obj, jstring js)
if (jpldebug)
fprintf(stderr, "eval %s\n", (char*)jb);
- eval_pv( (char*)jb, 0 );
+ perl_eval_pv( (char*)jb, 0 );
if (SvTRUE(ERRSV)) {
jthrowable newExcCls;
@@ -105,9 +137,8 @@ Java_PerlInterpreter_eval(void *perl, JNIEnv *env, jobject obj, jstring js)
/*
JNIEXPORT jint JNICALL
-Java_PerlInterpreter_eval(void *perl, JNIEnv *env, jobject obj, jint ji)
+Java_PerlInterpreter_eval(JNIEnv *env, jobject obj, jint ji)
{
- dTHXa(perl);
op = (OP*)(void*)ji;
op = (*op->op_ppaddr)(pTHX);
return (jint)(void*)op;
diff --git a/jpl/PerlInterpreter/PerlInterpreter.h b/jpl/PerlInterpreter/PerlInterpreter.h
index 4927a5f6fb..22fdf526dc 100644
--- a/jpl/PerlInterpreter/PerlInterpreter.h
+++ b/jpl/PerlInterpreter/PerlInterpreter.h
@@ -21,7 +21,7 @@ JNIEXPORT void JNICALL Java_PerlInterpreter_init
* Signature: (Ljava/lang/String;)V
*/
JNIEXPORT void JNICALL Java_PerlInterpreter_eval
- (void *perl, JNIEnv *, jobject, jstring);
+ (JNIEnv *, jobject, jstring);
#ifdef __cplusplus
}
diff --git a/jpl/README b/jpl/README
index eb900f024c..57f52c4f71 100644
--- a/jpl/README
+++ b/jpl/README
@@ -9,12 +9,13 @@ from the network. Don't expect not to be surprised occasionally.
Requirements
------------
-Perl 5.005_02 (or later) must be compiled and installed as a shared library
-(libperl.so). I had to use the system's malloc. JPL was originally built
-and tested with 5.004_04 and early Java 1.1 development kits. This version
-has not been well tested under 5.005_02, so you can expect some rough edges.
+Under Solaris and Linux (and other Unix-like systems), Perl 5.005 (or later)
+must be compiled and installed as a shared library (libperl.so). I had to use
+the system's malloc. JPL was originally built and tested with 5.004_04 and
+early Java 1.1 development kits. This version has not been well tested under
+other versions, so you can expect some rough edges.
-You need JDK 1.1. On Solaris 1.1.5 has been verified to work. Linux
+You need JDK 1.1. On Solaris, 1.1.5 has been verified to work. Linux
users can try the latest version (1.1.3 or later) available from (for
example):
@@ -28,6 +29,21 @@ You may need to ensure that all files under the ../jpl directory are writable.
install-jpl expects to be run with super-user privileges so that it can
put things in the right places.
+Microsoft Windows
+-----------------
+Only a subset of JPL works under Microsoft Windows. This subset includes
+the JNI extension and the JPL module. This is enough for you to embed
+Java in Perl, but not Perl in Java.
+
+This has only been tested with the Sun JDK 1.1.8. I haven't tested it
+with JDK 1.2 (aka Java 2) or any Microsoft implementation of Java.
+
+Kaffe
+-----
+You might notice some mention of Kaffe (www.kaffe.org) in the source files.
+This is because some preliminary work is being done in this area, but JPL
+doesn't yet work with Kaffe.
+
What the heck is JPL?
---------------------
JPL is a hybrid (to use the polite term) language. It's basically Java
@@ -58,6 +74,25 @@ file it generates.
Installation
------------
+There are two ways to install JPL.
+
+The first way gives you the ability to embed Perl in Java programs. You
+can also call back into Java from your embedded Perl programs. This should
+work well with most JDKs, and is the only option for people using a JDK
+that uses green threads (see your JDK documentation).
+
+The second way lets you embed Java in Perl, but doesn't provide support
+for the other direction. This is good, in theory, if you need to work with
+a lot of Java classes from within Perl. I say "in theory," because this
+doesn't actually work a lot of the time. To use this second way, you
+must be using a JDK with native threads.
+
+At this point, the second way is the only way to use JPL under Microsoft
+Windows. Oddly enough, this is the only platform under which the second
+way works!
+
+Installation the First Way (All of JPL)
+---------------------------------------
Run "install-jpl". You have to tell it whether you want to use the
current directory for JPL_HOME or some other directory. Everything
else should take care of itself, except that after install-jpl
@@ -68,6 +103,124 @@ before any JPL applications can be compiled under the current shell.
csh: eval `setvars -csh`
perl: eval `setvars -perl`;
+install-jpl has been tested under:
+
+ Solaris 2.5.1 SPARC, GCC 2.8.0, Perl 5.005_03, JDK 1.1.7
+ Debian 2.1 x86, Perl 5.005_60, JDK 1.1.7v3
+
+********************
+Solaris 2.5.1 Users:
+********************
+
+NOTE: Under Solaris 2.5.1, you may get an error message when install-jpl
+builds Sample.jpl:
+
+ You must install a Solaris patch to run this version of the Java
+ runtime. Please see the README and release notes for more
+ information.
+ Exiting.
+
+ This is apparently a spurious message, and it has been reported to
+ Sun. Although this message aborts the installation, all of JPL is
+ installed by the time this message is reached. To recover and continue,
+ run setvars as described above, cd to the Sample directory, and type
+ 'make' to continue building. You can then run 'java Sample' to test the
+ example.
+
+ Unfortunately, each time you use 'make' to build a JPL application,
+ it will abort when it tries to run 'perl -c' on the generated .pl
+ file. However, you can continue building by typing 'make' again.
+
+Just-JNI (call into Java from Perl only)
+----------------------------------------
+
+This has been tested with:
+
+ Debian 2.1 SPARC, Perl 5.005_60, JDK 1.2 beta (crashes with AWT, though)
+ Windows NT 4.0 SP4, ActivePerl 519, JDK 1.1.8, Visual C++
+ Solaris 7, Perl 5.005_03, JDK 1.1.6, GCC 2.8.1
+
+Solaris 7 Note (this probably applies to all native thread situations):
+
+ Native threads were tricky. I had to build my own Perl, configured with:
+
+ sh Configure -Dprefix=/opt/perl5.005 -Duseshrplib -Doptimize=-g \
+ -Uusemymalloc -D cc=gcc -Dusethreads -d
+
+ When Configure let me edit config.sh, I changed libs to:
+
+ libs='-lthread -lsocket -lnsl -ldl -lm -lposix4 -lpthread -lc -lcrypt'
+
+ The leading -lthread is the only thing I had to add.
+
+How do I do this crazy thing?
+
+1) Cd into the JPL directory. Type the following:
+
+ perl Makefile.PL
+ make
+ make install
+
+ Under windows, that's:
+
+ perl Makefile.PL
+ nmake
+ nmake install
+
+3) cd into the JNI directory (cd ../JNI or cd ..\JNI)
+
+4) We now need to compile and make the Closer.class available to your
+ JPL program. Closer is a WindowListener that closes the Frame we
+ make in the test program.
+
+ It seems that we've managed to fix the problem with CLASSPATH not
+ getting propagated to the JVM, so if '.' is in your CLASSPATH, you
+ should be able to compile Closer.java and leave it in the current
+ directory:
+
+ javac Closer.java
+
+5) Make the demo:
+
+ a) If you are on Windows, copy typemap.win32:
+
+ copy typemap.win32 typemap
+
+ (this step will probably go away when we clean up some of the
+ WIN32 #defines)
+
+ b) type the following:
+
+ perl Makefile.PL
+ make
+ make test
+
+ Under Windows:
+
+ perl Makefile.PL
+ nmake
+ nmake test
+
+
+ c) if all went well, type:
+
+ make install
+
+ or, under Windows:
+
+ nmake install
+
+Mailing List
+------------
+To subscribe to the jpl mailing list, send an email message to
+jpl-subscribe@perl.org.
+
+CVS Access
+----------
+Information on accessing the bleeding edge JPL via CVS can be found at:
+
+ http://users.ids.net/~bjepson/jpl/cvs.html
+
More Info
---------
diff --git a/jpl/SETVARS.PL b/jpl/SETVARS.PL
new file mode 100644
index 0000000000..d3d85b42b4
--- /dev/null
+++ b/jpl/SETVARS.PL
@@ -0,0 +1,11 @@
+# Your JDK top-level directory.
+#
+$ENV{JAVA_HOME} = 'c:\jdk1.1.8';
+
+# The location where you extracted JPL.
+#
+$ENV{JPL_HOME} = 'D:\jpl';
+
+# The executeable name of Perl
+#
+$ENV{JPLPERL} = 'perl';
diff --git a/jpl/Sample/Makefile.PL b/jpl/Sample/Makefile.PL
index 944c7e180d..cd6b09360f 100644
--- a/jpl/Sample/Makefile.PL
+++ b/jpl/Sample/Makefile.PL
@@ -14,11 +14,16 @@ $WHAT =~ s#.*/##;
if ($^O eq 'linux') {
$flags = "-Dbool=char"; # avoid builtin bool altogether
$libs = "-lc -lm -ldl";
-}
-else {
+} else {
$flags = "";
$libs = "-lc -lm -ldl";
}
+
+# Needed for JNI
+if ($^O eq 'solaris') {
+ $libs .= " -lthread";
+}
+
chop($cwd = `pwd`);
($jpldir = $cwd) =~ s#/[^/]*$##;
@@ -65,7 +70,8 @@ lib$(WHAT)_g.so: $(WHAT).c $(JPL_HOME)/lib/$(ARCHNAME)/libPerlInterpreter_g.so
$(LIBS) \
-o lib$(WHAT)_g.so
-test:
+test: all
+ java $(WHAT)
install: all
cp *.class $(JPL_HOME)/lib
diff --git a/jpl/install-jpl b/jpl/install-jpl
index c1ef0b4e12..f19e226e48 100755
--- a/jpl/install-jpl
+++ b/jpl/install-jpl
@@ -116,9 +116,9 @@ print "\nInstalling JNI module\n";
system <<'END' and die "Couldn't install JNI\n";
set -x
cd JNI
-perl Makefile.PL
+perl Makefile.PL -e
make clean
-perl Makefile.PL
+perl Makefile.PL -e
make
echo 'Attempting to install JNI as root'
su root -c "make install"
@@ -187,14 +187,8 @@ archname=`$JPLPERL -MConfig -e 'print $Config{archname}'`
CLASSPATH=".:$JPL_HOME/lib${CLASSPATH:+:$CLASSPATH}"
export CLASSPATH
-ldlibpthname=`$JPLPERL -MConfig -e 'print $Config{ldlibpthname}'`
-case "$ldlibpthname" in
-'') ldlibpthname=LD_LIBRARY_PATH ;;
-esac
-eval "ldlibpth=\$$ldlibpthname"
-
-$ldlibpthname=".:$JPL_HOME/lib/$archname:$archlib/CORE$ldlibpth"
-export $ldlibpthname
+LD_LIBRARY_PATH=".:$JPL_HOME/lib/$archname:$archlib/CORE${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
+export LD_LIBRARY_PATH
PERL5LIB="$JPL_HOME/perl${PERL5LIB:+:$PERL5LIB}"
export PERL5LIB
@@ -211,13 +205,13 @@ case "$1" in
\$ENV{JPL_HOME} = '$JPL_HOME';
\$ENV{JPLPERL} = '$JPLPERL';
\$ENV{CLASSPATH} = '$CLASSPATH';
-\$ENV{$ldlibpthname} = '$ldlibpth';
+\$ENV{LD_LIBRARY_PATH} = '$LD_LIBRARY_PATH';
\$ENV{PERL5LIB} = '$PERL5LIB';
END
;;
-sh)
cat <<END
- PATH='$PATH';export PATH;JAVA_HOME='$JAVA_HOME';export JAVA_HOME;JPL_HOME='$JPL_HOME';export JPL_HOME;JPLPERL='$JPLPERL';export JPLPERL;CLASSPATH='$CLASSPATH';export CLASSPATH;$ldlibpthname='$ldlibpth';export $ldlibpthname;PERL5LIB='$PERL5LIB';export PERL5LIB
+ PATH='$PATH';export PATH;JAVA_HOME='$JAVA_HOME';export JAVA_HOME;JPL_HOME='$JPL_HOME';export JPL_HOME;JPLPERL='$JPLPERL';export JPLPERL;CLASSPATH='$CLASSPATH';export CLASSPATH;LD_LIBRARY_PATH='$LD_LIBRARY_PATH';export LD_LIBRARY_PATH;PERL5LIB='$PERL5LIB';export PERL5LIB
END
;;
-csh)
@@ -227,7 +221,7 @@ setenv JAVA_HOME '$JAVA_HOME';
setenv JPL_HOME '$JPL_HOME';
setenv JPLPERL '$JPLPERL';
setenv CLASSPATH '$CLASSPATH';
-setenv $ldlibpthname '$ldlibpth';
+setenv LD_LIBRARY_PATH '$LD_LIBRARY_PATH';
setenv PERL5LIB '$PERL5LIB';
END
;;
diff --git a/lib/Benchmark.pm b/lib/Benchmark.pm
index b3282b6223..767cb67d13 100644
--- a/lib/Benchmark.pm
+++ b/lib/Benchmark.pm
@@ -273,7 +273,9 @@ sub init {
sub debug { $debug = ($_[1] != 0); }
-sub clearcache { delete $cache{$_[0]}; }
+# The cache needs two branches: 's' for strings and 'c' for code. The
+# emtpy loop is different in these two cases.
+sub clearcache { delete $cache{"$_[0]c"}; delete $cache{"$_[0]s"}; }
sub clearallcache { %cache = (); }
sub enablecache { $cache = 1; }
sub disablecache { $cache = 0; }
@@ -362,11 +364,18 @@ sub runloop {
croak "runloop unable to compile '$c': $@\ncode: $subcode\n" if $@;
print STDERR "runloop $n '$subcode'\n" if $debug;
- $t0 = Benchmark->new(0);
+ # Wait for the user timer to tick. This makes the error range more like -0.01, +0. If
+ # we don't wait, then it's more like -0.01, +0.01. This may not seem important, but it
+ # significantly reduces the chances of getting too low initial $n in the initial, 'find
+ # the minimum' loop in &runfor. This, in turn, can reduce the number of calls to
+ # &runloop a lot, and thus reduce additive errors.
+ my $tbase = Benchmark->new(0)->[1];
+ do {
+ $t0 = Benchmark->new(0);
+ } while ( $t0->[1] == $tbase ) ;
&$subref;
$t1 = Benchmark->new($n);
$td = &timediff($t1, $t0);
-
timedebug("runloop:",$td);
$td;
}
@@ -377,12 +386,12 @@ sub timeit {
my($wn, $wc, $wd);
printf STDERR "timeit $n $code\n" if $debug;
-
- if ($cache && exists $cache{$n}) {
- $wn = $cache{$n};
+ my $cache_key = $n . ( ref( $code ) ? 'c' : 's' ) ;
+ if ($cache && exists $cache{$cache_key} ) {
+ $wn = $cache{$cache_key};
} else {
- $wn = &runloop($n, '');
- $cache{$n} = $wn;
+ $wn = &runloop($n, ref( $code ) ? sub { undef } : '' );
+ $cache{$cache_key} = $wn;
}
$wc = &runloop($n, $code);
@@ -414,24 +423,23 @@ sub runfor {
my ($n, $td, $tc, $ntot, $rtot, $utot, $stot, $cutot, $cstot );
- # First find the minimum $n that gives a non-zero timing.
+ # First find the minimum $n that gives a significant timing.
my $nmin;
- for ($n = 1, $tc = 0; $tc <= 0; $n *= 2 ) {
+ for ($n = 1, $tc = 0; ; $n *= 2 ) {
$td = timeit($n, $code);
$tc = $td->[1] + $td->[2];
+ last if $tc > 0.1 ;
}
$nmin = $n;
my $ttot = 0;
my $tpra = 0.05 * $tmax; # Target/time practice.
-
# Double $n until we have think we have practiced enough.
- for ( $n = 1; $ttot < $tpra; $n *= 2 ) {
+ for ( ; $ttot < $tpra; $n *= 2 ) {
$td = timeit($n, $code);
- $tc = $td->cpu_p;
$ntot += $n;
$rtot += $td->[0];
$utot += $td->[1];
@@ -446,7 +454,7 @@ sub runfor {
# Then iterate towards the $tmax.
while ( $ttot < $tmax ) {
$r = $tmax / $ttot - 1; # Linear approximation.
- $n = int( $r * $n );
+ $n = int( $r * $ntot );
$n = $nmin if $n < $nmin;
$td = timeit($n, $code);
$ntot += $n;
diff --git a/lib/Exporter/Heavy.pm b/lib/Exporter/Heavy.pm
index f049e72ea9..91ad61322b 100644
--- a/lib/Exporter/Heavy.pm
+++ b/lib/Exporter/Heavy.pm
@@ -179,6 +179,8 @@ sub heavy_export_to_level
{
my $pkg = shift;
my $level = shift;
+ # need to get rid of the first argument, its junk
+ shift;
my $callpkg = caller($level);
$pkg->export($callpkg, @_);
}
diff --git a/lib/ExtUtils/MM_Unix.pm b/lib/ExtUtils/MM_Unix.pm
index 0909cc15b5..5e12773953 100644
--- a/lib/ExtUtils/MM_Unix.pm
+++ b/lib/ExtUtils/MM_Unix.pm
@@ -1674,10 +1674,34 @@ from the perl source tree.
}
} else {
# we should also consider $ENV{PERL5LIB} here
+ my $old = $self->{PERL_LIB} || $self->{PERL_ARCHLIB} || $self->{PERL_INC};
$self->{PERL_LIB} ||= $Config::Config{privlibexp};
$self->{PERL_ARCHLIB} ||= $Config::Config{archlibexp};
$self->{PERL_INC} = $self->catdir("$self->{PERL_ARCHLIB}","CORE"); # wild guess for now
my $perl_h;
+
+ if (not -f ($perl_h = $self->catfile($self->{PERL_INC},"perl.h"))
+ and not $old){
+ # Maybe somebody tries to build an extension with an
+ # uninstalled Perl outside of Perl build tree
+ my $found;
+ for my $dir (@INC) {
+ $found = $dir, last if -e $self->catdir($dir, "Config.pm");
+ }
+ if ($found) {
+ my $inc = dirname $found;
+ if (-e $self->catdir($inc, "perl.h")) {
+ $self->{PERL_LIB} = $found;
+ $self->{PERL_ARCHLIB} = $found;
+ $self->{PERL_INC} = $inc;
+ $self->{UNINSTALLED_PERL} = 1;
+ print STDOUT <<EOP;
+... Detected uninstalled Perl. Trying to continue.
+EOP
+ }
+ }
+ }
+
unless (-f ($perl_h = $self->catfile($self->{PERL_INC},"perl.h"))){
die qq{
Error: Unable to locate installed Perl libraries or Perl source code.
@@ -2556,6 +2580,10 @@ sub manifypods {
$pod2man_exe = $self->catfile($Config{scriptdirexp},'pod2man');
}
unless ($pod2man_exe = $self->perl_script($pod2man_exe)) {
+ # Maybe a build by uninstalled Perl?
+ $pod2man_exe = $self->catfile($self->{PERL_INC}, "pod", "pod2man");
+ }
+ unless ($pod2man_exe = $self->perl_script($pod2man_exe)) {
# No pod2man but some MAN3PODS to be installed
print <<END;
diff --git a/lib/ExtUtils/MM_VMS.pm b/lib/ExtUtils/MM_VMS.pm
index a2a949b260..31ca69067e 100644
--- a/lib/ExtUtils/MM_VMS.pm
+++ b/lib/ExtUtils/MM_VMS.pm
@@ -12,10 +12,11 @@ use Config;
require Exporter;
use VMS::Filespec;
use File::Basename;
-
-use vars qw($Revision);
+use File::Spec;
+use vars qw($Revision @ISA);
$Revision = '5.56 (27-Apr-1999)';
+@ISA = qw( File::Spec );
unshift @MM::ISA, 'ExtUtils::MM_VMS';
Exporter::import('ExtUtils::MakeMaker', '$Verbose', '&neatvalue');
@@ -38,157 +39,6 @@ the semantics.
=over
-=item eliminate_macros
-
-Expands MM[KS]/Make macros in a text string, using the contents of
-identically named elements of C<%$self>, and returns the result
-as a file specification in Unix syntax.
-
-=cut
-
-sub eliminate_macros {
- my($self,$path) = @_;
- unless ($path) {
- print "eliminate_macros('') = ||\n" if $Verbose >= 3;
- return '';
- }
- my($npath) = join(' ', map(unixify($_), split(/\s+/, $path)));
- my($complex) = 0;
- my($head,$macro,$tail);
-
- # perform m##g in scalar context so it acts as an iterator
- while ($npath =~ m#(.*?)\$\((\S+?)\)(.*)#g) {
- if ($self->{$2}) {
- ($head,$macro,$tail) = ($1,$2,$3);
- if (ref $self->{$macro}) {
- if (ref $self->{$macro} eq 'ARRAY') {
- print "Note: expanded array macro \$($macro) in $path\n" if $Verbose;
- $macro = join ' ', @{$self->{$macro}};
- }
- else {
- print "Note: can't expand macro \$($macro) containing ",ref($self->{$macro}),
- "\n\t(using MMK-specific deferred substitution; MMS will break)\n";
- $macro = "\cB$macro\cB";
- $complex = 1;
- }
- }
- else { ($macro = unixify($self->{$macro})) =~ s#/$##; }
- $npath = "$head$macro$tail";
- }
- }
- if ($complex) { $npath =~ s#\cB(.*?)\cB#\${$1}#g; }
- print "eliminate_macros($path) = |$npath|\n" if $Verbose >= 3;
- $npath;
-}
-
-=item fixpath
-
-Catchall routine to clean up problem MM[SK]/Make macros. Expands macros
-in any directory specification, in order to avoid juxtaposing two
-VMS-syntax directories when MM[SK] is run. Also expands expressions which
-are all macro, so that we can tell how long the expansion is, and avoid
-overrunning DCL's command buffer when MM[KS] is running.
-
-If optional second argument has a TRUE value, then the return string is
-a VMS-syntax directory specification, if it is FALSE, the return string
-is a VMS-syntax file specification, and if it is not specified, fixpath()
-checks to see whether it matches the name of a directory in the current
-default directory, and returns a directory or file specification accordingly.
-
-=cut
-
-sub fixpath {
- my($self,$path,$force_path) = @_;
- unless ($path) {
- print "eliminate_macros('') = ||\n" if $Verbose >= 3;
- return '';
- }
- my($fixedpath,$prefix,$name);
-
- if ($path =~ m#^\$\([^\)]+\)$# || $path =~ m#[/:>\]]#) {
- if ($force_path or $path =~ /(?:DIR\)|\])$/) {
- $fixedpath = join(' ', map(vmspath($_),split(/\s+/, $self->eliminate_macros($path))));
- }
- else {
- $fixedpath = join(' ', map(vmsify($_),split(/\s+/, $self->eliminate_macros($path))));
-
- }
- }
- elsif ((($prefix,$name) = ($path =~ m#^\$\(([^\)]+)\)(.+)#)) && $self->{$prefix}) {
- my($vmspre) = $self->eliminate_macros("\$($prefix)");
- # is it a dir or just a name?
- $vmspre = ($vmspre =~ m|/| or $prefix =~ /DIR$/) ? vmspath($vmspre) : '';
- $fixedpath = ($vmspre ? $vmspre : $self->{$prefix}) . $name;
- $fixedpath = vmspath($fixedpath) if $force_path;
- }
- else {
- $fixedpath = $path;
- $fixedpath = vmspath($fixedpath) if $force_path;
- }
- # No hints, so we try to guess
- if (!defined($force_path) and $fixedpath !~ /[:>(.\]]/) {
- $fixedpath = vmspath($fixedpath) if -d $fixedpath;
- }
- # Trim off root dirname if it's had other dirs inserted in front of it.
- $fixedpath =~ s/\.000000([\]>])/$1/;
- print "fixpath($path) = |$fixedpath|\n" if $Verbose >= 3;
- $fixedpath;
-}
-
-=item catdir
-
-Concatenates a list of file specifications, and returns the result as a
-VMS-syntax directory specification.
-
-=cut
-
-sub catdir {
- my($self,@dirs) = @_;
- my($dir) = pop @dirs;
- @dirs = grep($_,@dirs);
- my($rslt);
- if (@dirs) {
- my($path) = (@dirs == 1 ? $dirs[0] : $self->catdir(@dirs));
- my($spath,$sdir) = ($path,$dir);
- $spath =~ s/.dir$//; $sdir =~ s/.dir$//;
- $sdir = $self->eliminate_macros($sdir) unless $sdir =~ /^[\w\-]+$/;
- $rslt = $self->fixpath($self->eliminate_macros($spath)."/$sdir",1);
- }
- else {
- if ($dir =~ /^\$\([^\)]+\)$/) { $rslt = $dir; }
- else { $rslt = vmspath($dir); }
- }
- print "catdir(",join(',',@_[1..$#_]),") = |$rslt|\n" if $Verbose >= 3;
- $rslt;
-}
-
-=item catfile
-
-Concatenates a list of file specifications, and returns the result as a
-VMS-syntax directory specification.
-
-=cut
-
-sub catfile {
- my($self,@files) = @_;
- my($file) = pop @files;
- @files = grep($_,@files);
- my($rslt);
- if (@files) {
- my($path) = (@files == 1 ? $files[0] : $self->catdir(@files));
- my($spath) = $path;
- $spath =~ s/.dir$//;
- if ( $spath =~ /^[^\)\]\/:>]+\)$/ && basename($file) eq $file) { $rslt = "$spath$file"; }
- else {
- $rslt = $self->eliminate_macros($spath);
- $rslt = vmsify($rslt.($rslt ? '/' : '').unixify($file));
- }
- }
- else { $rslt = vmsify($file); }
- print "catfile(",join(',',@_[1..$#_]),") = |$rslt|\n" if $Verbose >= 3;
- $rslt;
-}
-
=item wraplist
Converts a list into a string wrapped at approximately 80 columns.
@@ -213,16 +63,6 @@ sub wraplist {
$line;
}
-=item curdir (override)
-
-Returns a string representing of the current directory.
-
-=cut
-
-sub curdir {
- return '[]';
-}
-
=item rootdir (override)
Returns a string representing of the root directory.
@@ -233,16 +73,6 @@ sub rootdir {
return '';
}
-=item updir (override)
-
-Returns a string representing of the parent directory.
-
-=cut
-
-sub updir {
- return '[-]';
-}
-
package ExtUtils::MM_VMS;
sub ExtUtils::MM_VMS::ext;
@@ -626,6 +456,9 @@ sub constants {
my($self) = @_;
my(@m,$def,$macro);
+ # Be kind about case for pollution
+ for (@ARGV) { $_ = uc($_) if /POLLUTE/i; }
+
if ($self->{DEFINE} ne '') {
my(@terms) = split(/\s+/,$self->{DEFINE});
my(@defs,@udefs);
@@ -844,6 +677,7 @@ sub cflags {
warn "MM_VMS: Ignoring unrecognized CCFLAGS elements \"$quals\"\n";
$quals = '';
}
+ $definestr .= q["PERL_POLLUTE",] if $self->{POLLUTE};
if (length $definestr) { chop($definestr); $quals .= "/Define=($definestr)"; }
if (length $undefstr) { chop($undefstr); $quals .= "/Undef=($undefstr)"; }
# Deal with $self->{DEFINE} here since some C compilers pay attention
@@ -1343,7 +1177,7 @@ static :: $(INST_ARCHAUTODIR)$(BASEEXT).opt
$(NOECHO) $(NOOP)
') unless $self->{SKIPHASH}{'static'};
- push(@m,'
+ push @m,'
$(INST_ARCHAUTODIR)$(BASEEXT).opt : $(BASEEXT).opt
$(CP) $(MMS$SOURCE) $(MMS$TARGET)
@@ -1351,9 +1185,26 @@ $(BASEEXT).opt : Makefile.PL
$(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -e "use ExtUtils::Mksymlists;" -
',qq[-e "Mksymlists('NAME' => '$self->{NAME}', 'DL_FUNCS' => ],
neatvalue($funcs),q[, 'DL_VARS' => ],neatvalue($vars),
- q[, 'FUNCLIST' => ],neatvalue($funclist),')"
- $(PERL) -e "print ""$(INST_STATIC)/Include=$(BASEEXT)\n$(INST_STATIC)/Library\n"";" >>$(MMS$TARGET)
-');
+ q[, 'FUNCLIST' => ],neatvalue($funclist),qq[)"\n];
+
+ push @m, ' $(PERL) -e "print ""$(INST_STATIC)/Include=';
+ if ($self->{OBJECT} =~ /\bBASEEXT\b/ or
+ $self->{OBJECT} =~ /\b$self->{BASEEXT}\b/i) { push @m, '$(BASEEXT)'; }
+ else { # We don't have a "main" object file, so pull 'em all in
+ my(@omods) = map { s/\.[^.]*$//; # Trim off file type
+ s[\$\(\w+_EXT\)][]; # even as a macro
+ s/.*[:>\/\]]//; # Trim off dir spec
+ $_; } split ' ', $self->eliminate_macros($self->{OBJECT});
+ my($tmp,@lines,$elt) = '';
+ my $tmp = shift @omods;
+ foreach $elt (@omods) {
+ $tmp .= ",$elt";
+ if (length($tmp) > 80) { push @lines, $tmp; $tmp = ''; }
+ }
+ push @lines, $tmp;
+ push @m, '(', join( qq[, -\\n\\t"";" >>\$(MMS\$TARGET)\n\t\$(PERL) -e "print ""], @lines),')';
+ }
+ push @m, '\n$(INST_STATIC)/Library\n"";" >>$(MMS$TARGET)',"\n";
if (length $self->{LDLOADLIBS}) {
my($lib); my($line) = '';
@@ -2192,12 +2043,13 @@ $(MAKE_APERL_FILE) : $(FIRST_MAKEFILE)
$(NOECHO) $(PERL) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" \
Makefile.PL DIR=}, $dir, q{ \
MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \
- MAKEAPERL=1 NORECURS=1
+ MAKEAPERL=1 NORECURS=1 };
+
+ push @m, map(q[ \\\n\t\t"$_"], @ARGV),q{
$(MAP_TARGET) :: $(MAKE_APERL_FILE)
$(MMS)$(MMSQUALIFIERS)$(USEMAKEFILE)$(MAKE_APERL_FILE) static $(MMS$TARGET)
};
- push @m, map( " \\\n\t\t$_", @ARGV );
push @m, "\n";
return join '', @m;
diff --git a/lib/ExtUtils/MakeMaker.pm b/lib/ExtUtils/MakeMaker.pm
index 6318d0eed1..0f00e39afc 100644
--- a/lib/ExtUtils/MakeMaker.pm
+++ b/lib/ExtUtils/MakeMaker.pm
@@ -482,7 +482,7 @@ sub ExtUtils::MakeMaker::new {
else {
$pthinks =~ s!/Config\.pm$!!; $pthinks =~ s!.*/!!;
}
- print STDOUT <<END;
+ print STDOUT <<END unless $self->{UNINSTALLED_PERL};
Your perl and your Config.pm seem to have different ideas about the architecture
they are running on.
Perl thinks: [$pthinks]
diff --git a/lib/ExtUtils/typemap b/lib/ExtUtils/typemap
index a332024011..d84435e50f 100644
--- a/lib/ExtUtils/typemap
+++ b/lib/ExtUtils/typemap
@@ -1,4 +1,4 @@
-# $Header: /home/rmb1/misc/perl/build/perl5.005_60/lib/ExtUtils/../../../RCS/perl5.005_61/lib/ExtUtils/typemap,v 1.2 1999/09/07 10:05:21 rmb1 Exp $
+# $Header: /home/rmb1/misc/CVS/perl5.005_61/lib/ExtUtils/typemap,v 1.3 1999/09/13 09:46:43 rmb1 Exp $
# basic C types
int T_IV
unsigned T_UV
@@ -107,11 +107,11 @@ T_DOUBLE
T_PV
$var = ($type)SvPV($arg,PL_na)
T_PTR
- $var = ($type)PTR_CAST SvIV($arg)
+ $var = INT2PTR($type,SvIV($arg))
T_PTRREF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
- $var = ($type)PTR_CAST tmp;
+ $var = INT2PTR($type,tmp);
}
else
croak(\"$var is not a reference\")
@@ -132,7 +132,7 @@ T_REF_IV_PTR
T_PTROBJ
if (sv_derived_from($arg, \"${ntype}\")) {
IV tmp = SvIV((SV*)SvRV($arg));
- $var = ($type)PTR_CAST tmp;
+ $var = INT2PTR($type,tmp);
}
else
croak(\"$var is not of type ${ntype}\")
@@ -147,14 +147,14 @@ T_PTRDESC
T_REFREF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
- $var = *($type)PTR_CAST tmp;
+ $var = *INT2PTR($type,tmp);
}
else
croak(\"$var is not a reference\")
T_REFOBJ
if (sv_isa($arg, \"${ntype}\")) {
IV tmp = SvIV((SV*)SvRV($arg));
- $var = *($type)PTR_CAST tmp;
+ $var = *INT2PTR($type,tmp);
}
else
croak(\"$var is not of type ${ntype}\")
diff --git a/lib/File/Spec/Functions.pm b/lib/File/Spec/Functions.pm
index ffc1199523..140738f443 100644
--- a/lib/File/Spec/Functions.pm
+++ b/lib/File/Spec/Functions.pm
@@ -3,7 +3,7 @@ package File::Spec::Functions;
use File::Spec;
use strict;
-use vars qw(@ISA @EXPORT @EXPORT_OK);
+use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
require Exporter;
@@ -31,6 +31,8 @@ require Exporter;
rel2abs
);
+%EXPORT_TAGS = ( ALL => [ @EXPORT_OK, @EXPORT ] );
+
foreach my $meth (@EXPORT, @EXPORT_OK) {
my $sub = File::Spec->can($meth);
no strict 'refs';
@@ -85,6 +87,8 @@ The following functions are exported only by request.
abs2rel
rel2abs
+All the functions may be imported using the C<:ALL> tag.
+
=head1 SEE ALSO
File::Spec, File::Spec::Unix, File::Spec::Mac, File::Spec::OS2,
diff --git a/lib/File/Spec/VMS.pm b/lib/File/Spec/VMS.pm
index d13f5e68c2..00c068accb 100644
--- a/lib/File/Spec/VMS.pm
+++ b/lib/File/Spec/VMS.pm
@@ -22,6 +22,12 @@ See File::Spec::Unix for a documentation of the methods provided
there. This package overrides the implementation of these methods, not
the semantics.
+=item eliminate_macros
+
+Expands MM[KS]/Make macros in a text string, using the contents of
+identically named elements of C<%$self>, and returns the result
+as a file specification in Unix syntax.
+
=cut
sub eliminate_macros {
@@ -55,6 +61,22 @@ sub eliminate_macros {
$npath;
}
+=item fixpath
+
+Catchall routine to clean up problem MM[SK]/Make macros. Expands macros
+in any directory specification, in order to avoid juxtaposing two
+VMS-syntax directories when MM[SK] is run. Also expands expressions which
+are all macro, so that we can tell how long the expansion is, and avoid
+overrunning DCL's command buffer when MM[KS] is running.
+
+If optional second argument has a TRUE value, then the return string is
+a VMS-syntax directory specification, if it is FALSE, the return string
+is a VMS-syntax file specification, and if it is not specified, fixpath()
+checks to see whether it matches the name of a directory in the current
+default directory, and returns a directory or file specification accordingly.
+
+=cut
+
sub fixpath {
my($self,$path,$force_path) = @_;
return '' unless $path;
diff --git a/lib/Pod/Functions.pm b/lib/Pod/Functions.pm
index 5e6551f417..03cbf711eb 100644
--- a/lib/Pod/Functions.pm
+++ b/lib/Pod/Functions.pm
@@ -65,6 +65,8 @@ while (<DATA>) {
}
}
+close DATA;
+
unless (caller) {
foreach $type ( @Type_Order ) {
$list = join(", ", sort @{$Kinds{$type}});
diff --git a/lib/Time/Local.pm b/lib/Time/Local.pm
index 75bcc38eea..60f42e8756 100644
--- a/lib/Time/Local.pm
+++ b/lib/Time/Local.pm
@@ -74,7 +74,8 @@ sub cheat {
$year = $_[5];
$month = $_[4];
croak "Month '$month' out of range 0..11" if $month > 11 || $month < 0;
- croak "Day '$_[3]' out of range 1..31" if $_[3] > 31 || $_[3] < 1;
+# Allow "julian" conversions. --jhi 1999-09-09
+# croak "Day '$_[3]' out of range 1..31" if $_[3] > 31 || $_[3] < 1;
croak "Hour '$_[2]' out of range 0..23" if $_[2] > 23 || $_[2] < 0;
croak "Minute '$_[1]' out of range 0..59" if $_[1] > 59 || $_[1] < 0;
croak "Second '$_[0]' out of range 0..59" if $_[0] > 59 || $_[0] < 0;
diff --git a/lib/byte.pm b/lib/byte.pm
new file mode 100644
index 0000000000..cc23b40f4f
--- /dev/null
+++ b/lib/byte.pm
@@ -0,0 +1,33 @@
+package byte;
+
+sub import {
+ $^H |= 0x00000010;
+}
+
+sub unimport {
+ $^H &= ~0x00000010;
+}
+
+sub AUTOLOAD {
+ require "byte_heavy.pl";
+ goto &$AUTOLOAD;
+}
+
+sub length ($);
+
+1;
+__END__
+
+=head1 NAME
+
+byte - Perl pragma to turn force treating strings as bytes not UNICODE
+
+=head1 SYNOPSIS
+
+ use byte;
+ no byte;
+
+=head1 DESCRIPTION
+
+
+=cut
diff --git a/lib/byte_heavy.pl b/lib/byte_heavy.pl
new file mode 100644
index 0000000000..07c908a689
--- /dev/null
+++ b/lib/byte_heavy.pl
@@ -0,0 +1,8 @@
+package byte;
+
+sub length ($)
+{
+ return CORE::length($_[0]);
+}
+
+1;
diff --git a/lib/perl5db.pl b/lib/perl5db.pl
index 0eac573901..7b0567c403 100644
--- a/lib/perl5db.pl
+++ b/lib/perl5db.pl
@@ -350,7 +350,7 @@ if ($notty) {
print $OUT ("Emacs support ",
$emacs ? "enabled" : "available",
".\n");
- print $OUT "\nEnter h or `h h' for help.\n\n";
+ print $OUT "\nEnter h or `h h' for help, run `perldoc perldebug' for more help.\n\n";
}
}
@@ -1867,6 +1867,8 @@ B<R> Pure-man-restart of debugger, some of debugger state
history, breakpoints and actions, debugger B<O>ptions
and the following command-line options: I<-w>, I<-I>, I<-e>.
B<h> [I<db_command>] Get help [on a specific debugger command], enter B<|h> to page.
+ Complete description of debugger is available in B<perldebug>
+ section of Perl documention
B<h h> Summary of debugger commands.
B<q> or B<^D> Quit. Set B<\$DB::finished = 0> to debug global destruction.
@@ -1876,18 +1878,17 @@ I<List/search source lines:> I<Control script execution:>
B<l> [I<ln>|I<sub>] List source code B<T> Stack trace
B<-> or B<.> List previous/current line B<s> [I<expr>] Single step [in expr]
B<w> [I<line>] List around line B<n> [I<expr>] Next, steps over subs
- B<f> I<filename> View source in file <B<CR>> Repeat last B<n> or B<s>
+ B<f> I<filename> View source in file <B<CR>/B<Enter>> Repeat last B<n> or B<s>
B</>I<pattern>B</> B<?>I<patt>B<?> Search forw/backw B<r> Return from subroutine
B<v> Show versions of modules B<c> [I<ln>|I<sub>] Continue until position
I<Debugger controls:> B<L> List break/watch/actions
B<O> [...] Set debugger options B<t> [I<expr>] Toggle trace [trace expr]
- B<<>[B<<>] or B<{>[B<{>] [I<cmd>] Do before prompt B<b> [I<ln>|I<event>] [I<cnd>] Set breakpoint
- B<>>[B<>>] [I<cmd>] Do after prompt B<b> I<sub> [I<cnd>] Set breakpoint for sub
+ B<<>[B<<>]|B<{>[B<{>]|B<>>[B<>>] [I<cmd>] Do pre/post-prompt B<b> [I<ln>|I<event>|I<sub>] [I<cnd>] Set breakpoint
B<$prc> [I<N>|I<pat>] Redo a previous command B<d> [I<ln>] or B<D> Delete a/all breakpoints
B<H> [I<-num>] Display last num commands B<a> [I<ln>] I<cmd> Do cmd before line
B<=> [I<a> I<val>] Define/list an alias B<W> I<expr> Add a watch expression
B<h> [I<db_cmd>] Get help on command B<A> or B<W> Delete all actions/watch
- B<|>[B<|>]I<dbcmd> Send output to pager B<$psh>\[B<$psh>\] I<syscmd> Run cmd in a subprocess
+ B<|>[B<|>]I<db_cmd> Send output to pager B<$psh>\[B<$psh>\] I<syscmd> Run cmd in a subprocess
B<q> or B<^D> Quit B<R> Attempt a restart
I<Data Examination:> B<expr> Execute perl code, also see: B<s>,B<n>,B<t> I<expr>
B<x>|B<m> I<expr> Evals expr in array context, dumps the result or lists methods.
@@ -1895,6 +1896,7 @@ I<Data Examination:> B<expr> Execute perl code, also see: B<s>,B<n>,B<
B<S> [[B<!>]I<pat>] List subroutine names [not] matching pattern
B<V> [I<Pk> [I<Vars>]] List Variables in Package. Vars can be ~pattern or !pattern.
B<X> [I<Vars>] Same as \"B<V> I<current_package> [I<Vars>]\".
+I<More help for> B<db_cmd>I<:> Type B<h> I<cmd_letter> Run B<perldoc perldebug> for more help.
END_SUM
# ')}}; # Fix balance of Emacs parsing
}
diff --git a/lib/unicode/ArabLink.pl b/lib/unicode/ArabLink.pl
index ee4630eda7..399fa6cf3d 100644
--- a/lib/unicode/ArabLink.pl
+++ b/lib/unicode/ArabLink.pl
@@ -17,15 +17,27 @@ return <<'END';
0675 0677 R
0678 0687 D
0688 0699 R
-069a 06b7 D
-06ba 06be D
+069a 06bf D
06c0 R
06c1 D
06c2 06cb R
06cc D
06cd R
06ce D
+06cf R
06d0 06d1 D
06d2 06d3 R
06d5 U
+06fa 06fc D
+0710 R
+0712 0714 D
+0715 0719 R
+071a 071d D
+071e R
+071f 0727 D
+0728 R
+0729 D
+072a R
+072b D
+072c R
END
diff --git a/lib/unicode/ArabLnkGrp.pl b/lib/unicode/ArabLnkGrp.pl
index e107eb7829..e06c3744de 100644
--- a/lib/unicode/ArabLnkGrp.pl
+++ b/lib/unicode/ArabLnkGrp.pl
@@ -2,61 +2,90 @@ return <<'END';
0622 0623 ALEF
0624 WAW
0625 ALEF
-0626 YA
+0626 YEH
0627 ALEF
-0628 BAA
-0629 TAA MARBUTAH
-062a 062b BAA
-062c 062e HAA
+0628 BEH
+0629 TEH MARBUTA
+062a 062b BEH
+062c 062e HAH
062f 0630 DAL
-0631 0632 RA
+0631 0632 REH
0633 0634 SEEN
0635 0636 SAD
0637 0638 TAH
0639 063a AIN
0640 <no shaping>
-0641 FA
+0641 FEH
0642 QAF
-0643 CAF
+0643 KAF
0644 LAM
0645 MEEM
0646 NOON
-0647 HA
+0647 HEH
0648 WAW
-0649 ALEF MAQSURAH
-064a YA
+0649 064a YEH
0671 <no shaping>
0672 0673 ALEF
0674 <no shaping>
0675 ALEF
0676 0677 WAW
-0678 YA
-0679 0680 BAA
-0681 0687 HAA
+0678 YEH
+0679 0680 BEH
+0681 0687 HAH
0688 0690 DAL
-0691 0699 RA
+0691 0699 REH
069a 069c SEEN
069d 069e SAD
069f TAH
06a0 AIN
-06a1 06a6 FA
+06a1 06a6 FEH
06a7 06a8 QAF
06a9 GAF
-06aa SWASH CAF
+06aa SWASH KAF
06ab GAF
-06ac 06ae CAF
+06ac 06ae KAF
06af 06b4 GAF
-06b5 06b7 LAM
-06ba 06bd NOON
-06be KNOTTED HA
-06c0 TAA MARBUTAH
-06c1 HA GOAL
-06c2 06c3 HAMZAH ON HA GOAL
+06b5 06b8 LAM
+06b9 06bd NOON
+06be KNOTTED HEH
+06bf HAH
+06c0 TEH MARBUTA
+06c1 HEH GOAL
+06c2 06c3 HAMZA ON HEH GOAL
06c4 06cb WAW
-06cc YA
-06cd ALEF MAQSURAH
-06ce YA
-06d0 06d1 YA
-06d2 06d3 YA BARREE
+06cc YEH
+06cd YEH WITH TAIL
+06ce YEH
+06cf WAW
+06d0 06d1 YEH
+06d2 06d3 YEH BARREE
06d5 <no shaping>
+06fa SEEN
+06fb SAD
+06fc AIN
+0710 ALAPH
+0712 BETH
+0713 0714 GAMAL
+0715 0716 DALATH RISH
+0717 HE
+0718 WAW
+0719 ZAIN
+071a HETH
+071b 071c TETH
+071d YUDH
+071e YUDH HE
+071f KAPH
+0720 LAMADH
+0721 MIM
+0722 NUN
+0723 SEMKATH
+0724 FINAL SEMKATH
+0725 E
+0726 PE
+0727 REVERSED PE
+0728 SADHE
+0729 QAPH
+072a DALATH RISH
+072b SHIN
+072c TAW
END
diff --git a/lib/unicode/ArabShap.txt b/lib/unicode/ArabShap.txt
new file mode 100644
index 0000000000..6092d6223c
--- /dev/null
+++ b/lib/unicode/ArabShap.txt
@@ -0,0 +1,170 @@
+# Unicode; Schematic Name; Link; Link Group
+# Arabic characters
+0622; MADDA ON ALEF; R; ALEF
+0623; HAMZA ON ALEF; R; ALEF
+0624; HAMZA ON WAW; R; WAW
+0625; HAMZA UNDER ALEF; R; ALEF
+0626; HAMZA ON YEH; D; YEH
+0627; ALEF; R; ALEF
+0628; BEH; D; BEH
+0629; TEH MARBUTA; R; TEH MARBUTA
+062A; TEH; D; BEH
+062B; THEH; D; BEH
+062C; JEEM; D; HAH
+062D; HAH; D; HAH
+062E; KHAH; D; HAH
+062F; DAL; R; DAL
+0630; THAL; R; DAL
+0631; REH; R; REH
+0632; ZAIN; R; REH
+0633; SEEN; D; SEEN
+0634; SHEEN; D; SEEN
+0635; SAD; D; SAD
+0636; DAD; D; SAD
+0637; TAH; D; TAH
+0638; ZAH; D; TAH
+0639; AIN; D; AIN
+063A; GHAIN; D; AIN
+0640; TATWEEL; C; <no shaping>
+0641; FEH; D; FEH
+0642; QAF; D; QAF
+0643; KAF; D; KAF
+0644; LAM; D; LAM
+0645; MEEM; D; MEEM
+0646; NOON; D; NOON
+0647; HEH; D; HEH
+0648; WAW; R; WAW
+0649; ALEF MAKSURA; R; YEH
+064A; YEH; D; YEH
+0671; HAMZAT WASL ON ALEF; U; <no shaping>
+0672; WAVY HAMZA ON ALEF; R; ALEF
+0673; WAVY HAMZA UNDER ALEF; R; ALEF
+0674; HIGH HAMZA; U; <no shaping>
+0675; HIGH HAMZA ALEF; R; ALEF
+0676; HIGH HAMZA WAW; R; WAW
+0677; HIGH HAMZA WAW WITH DAMMA; R; WAW
+0678; HIGH HAMZA YEH; D; YEH
+0679; TEH WITH SMALL TAH; D; BEH
+067A; TEH WITH 2 DOTS VERTICAL ABOVE; D; BEH
+067B; BEH WITH 2 DOTS VERTICAL BELOW; D; BEH
+067C; TEH WITH RING; D; BEH
+067D; TEH WITH 3 DOTS ABOVE DOWNWARD; D; BEH
+067E; TEH WITH 3 DOTS BELOW; D; BEH
+067F; TEH WITH 4 DOTS ABOVE; D; BEH
+0680; BEH WITH 4 DOTS BELOW; D; BEH
+0681; HAMZA ON HAH; D; HAH
+0682; HAH WITH 2 DOTS VERTICAL ABOVE; D; HAH
+0683; HAH WITH MIDDLE 2 DOTS; D; HAH
+0684; HAH WITH MIDDLE 2 DOTS VERTICAL; D; HAH
+0685; HAH WITH 3 DOTS ABOVE; D; HAH
+0686; HAH WITH MIDDLE 3 DOTS DOWNWARD; D; HAH
+0687; HAH WITH MIDDLE 4 DOTS; D; HAH
+0688; DAL WITH SMALL TAH; R; DAL
+0689; DAL WITH RING; R; DAL
+068A; DAL WITH DOT BELOW; R; DAL
+068B; DAL WITH DOT BELOW AND SMALL TAH; R; DAL
+068C; DAL WITH 2 DOTS ABOVE; R; DAL
+068D; DAL WITH 2 DOTS BELOW; R; DAL
+068E; DAL WITH 3 DOTS ABOVE; R; DAL
+068F; DAL WITH 3 DOTS ABOVE DOWNWARD; R; DAL
+0690; DAL WITH 4 DOTS ABOVE; R; DAL
+0691; REH WITH SMALL TAH; R; REH
+0692; REH WITH SMALL V; R; REH
+0693; REH WITH RING; R; REH
+0694; REH WITH DOT BELOW; R; REH
+0695; REH WITH SMALL V BELOW; R; REH
+0696; REH WITH DOT BELOW AND DOT ABOVE; R; REH
+0697; REH WITH 2 DOTS ABOVE; R; REH
+0698; REH WITH 3 DOTS ABOVE; R; REH
+0699; REH WITH 4 DOTS ABOVE; R; REH
+069A; SEEN WITH DOT BELOW AND DOT ABOVE; D; SEEN
+069B; SEEN WITH 3 DOTS BELOW; D; SEEN
+069C; SEEN WITH 3 DOTS BELOW AND 3 DOTS ABOVE; D; SEEN
+069D; SAD WITH 2 DOTS BELOW; D; SAD
+069E; SAD WITH 3 DOTS ABOVE; D; SAD
+069F; TAH WITH 3 DOTS ABOVE; D; TAH
+06A0; AIN WITH 3 DOTS ABOVE; D; AIN
+06A1; DOTLESS FEH; D; FEH
+06A2; FEH WITH DOT MOVED BELOW; D; FEH
+06A3; FEH WITH DOT BELOW; D; FEH
+06A4; FEH WITH 3 DOTS ABOVE; D; FEH
+06A5; FEH WITH 3 DOTS BELOW; D; FEH
+06A6; FEH WITH 4 DOTS ABOVE; D; FEH
+06A7; QAF WITH DOT ABOVE; D; QAF
+06A8; QAF WITH 3 DOTS ABOVE; D; QAF
+06A9; OPEN KAF; D; GAF
+06AA; SWASH KAF; D; SWASH KAF
+06AB; KAF WITH RING; D; GAF
+06AC; KAF WITH DOT ABOVE; D; KAF
+06AD; KAF WITH 3 DOTS ABOVE; D; KAF
+06AE; KAF WITH 3 DOTS BELOW; D; KAF
+06AF; GAF; D; GAF
+06B0; GAF WITH RING; D; GAF
+06B1; GAF WITH 2 DOTS ABOVE; D; GAF
+06B2; GAF WITH 2 DOTS BELOW; D; GAF
+06B3; GAF WITH 2 DOTS VERTICAL BELOW; D; GAF
+06B4; GAF WITH 3 DOTS ABOVE; D; GAF
+06B5; LAM WITH SMALL V; D; LAM
+06B6; LAM WITH DOT ABOVE; D; LAM
+06B7; LAM WITH 3 DOTS ABOVE; D; LAM
+06B8; LAM WITH 3 DOTS BELOW; D; LAM
+06B9; NOON WITH DOT BELOW; D; NOON
+06BA; DOTLESS NOON; D; NOON
+06BB; DOTLESS NOON WITH SMALL TAH; D; NOON
+06BC; NOON WITH RING; D; NOON
+06BD; NOON WITH 3 DOTS ABOVE; D; NOON
+06BE; KNOTTED HEH; D; KNOTTED HEH
+06BF; HAH WITH MIDDLE 3 DOTS DOWNWARD AND DOT ABOVE; D; HAH
+06C0; HAMZA ON HEH; R; TEH MARBUTA
+06C1; HEH GOAL; D; HEH GOAL
+06C2; HAMZA ON HEH GOAL; R; HAMZA ON HEH GOAL
+06C3; TEH MARBUTA GOAL; R; HAMZA ON HEH GOAL
+06C4; WAW WITH RING; R; WAW
+06C5; WAW WITH BAR; R; WAW
+06C6; WAW WITH SMALL V; R; WAW
+06C7; WAW WITH DAMMA; R; WAW
+06C8; WAW WITH ALEF ABOVE; R; WAW
+06C9; WAW WITH INVERTED SMALL V; R; WAW
+06CA; WAW WITH 2 DOTS ABOVE; R; WAW
+06CB; WAW WITH 3 DOTS ABOVE; R; WAW
+06CC; DOTLESS YEH; D; YEH
+06CD; YEH WITH TAIL; R; YEH WITH TAIL
+06CE; YEH WITH SMALL V; D; YEH
+06CF; WAW WITH DOT ABOVE; R; WAW
+06D0; YEH WITH 2 DOTS VERTICAL BELOW; D; YEH
+06D1; YEH WITH 3 DOTS BELOW; D; YEH
+06D2; YEH BARREE; R; YEH BARREE
+06D3; HAMZA ON YEH BARREE; R; YEH BARREE
+06D5; AE; U; <no shaping>
+06FA; SEEN WITH DOT BELOW AND 3 DOTS ABOVE; D; SEEN
+06FB; DAD WITH DOT BELOW; D; SAD
+06FC; GHAIN WITH DOT BELOW; D; AIN
+# Syriac characters
+0710; ALAPH; R; ALAPH
+0712; BETH; D; BETH
+0713; GAMAL; D; GAMAL
+0714; GAMAL GARSHUNI; D; GAMAL
+0715; DALATH; R; DALATH RISH
+0716; DOTLESS DALATH RISH; R; DALATH RISH
+0717; HE; R; HE
+0718; WAW; R; WAW
+0719; ZAIN; R; ZAIN
+071A; HETH; D; HETH
+071B; TETH; D; TETH
+071C; TETH GARSHUNI; D; TETH
+071D; YUDH; D; YUDH
+071E; YUDH HE; R; YUDH HE
+071F; KAPH; D; KAPH
+0720; LAMADH; D; LAMADH
+0721; MIM; D; MIM
+0722; NUN; D; NUN
+0723; SEMKATH; D; SEMKATH
+0724; FINAL SEMKATH; D; FINAL SEMKATH
+0725; E; D; E
+0726; PE; D; PE
+0727; REVERSED PE; D; REVERSED PE
+0728; SADHE; R; SADHE
+0729; QAPH; D; QAPH
+072A; RISH; R; DALATH RISH
+072B; SHIN; D; SHIN
+072C; TAW; R; TAW
diff --git a/lib/unicode/Bidirectional.pl b/lib/unicode/Bidirectional.pl
index 92c3f4715a..f2ff4e67bb 100644
--- a/lib/unicode/Bidirectional.pl
+++ b/lib/unicode/Bidirectional.pl
@@ -447,7 +447,7 @@ return <<'END';
202c PDF
202d LRO
202e RLO
-202f CS
+202f WS
2030 2034 ET
2035 2046 ON
2048 204d ON
@@ -494,7 +494,9 @@ return <<'END';
2300 2335 ON
2336 237a L
237b ON
-237d 239a ON
+237d 2394 ON
+2395 L
+2396 239a ON
2400 2426 ON
2440 244a ON
2460 249b EN
@@ -554,11 +556,11 @@ return <<'END';
3400 4db5 L
4e00 9fa5 L
a000 a48c L
-a490 a4a1 L
-a4a4 a4b3 L
-a4b5 a4c0 L
-a4c2 a4c4 L
-a4c6 L
+a490 a4a1 ON
+a4a4 a4b3 ON
+a4b5 a4c0 ON
+a4c2 a4c4 ON
+a4c6 ON
ac00 d7a3 L
d800 db7f L
db80 dbff L
diff --git a/lib/unicode/Block.pl b/lib/unicode/Block.pl
index 1c0b280f4c..7d6990bd7f 100644
--- a/lib/unicode/Block.pl
+++ b/lib/unicode/Block.pl
@@ -11,6 +11,8 @@ return <<'END';
0530 058F Armenian
0590 05FF Hebrew
0600 06FF Arabic
+0700 074F Syriac
+0780 07BF Thaana
0900 097F Devanagari
0980 09FF Bengali
0A00 0A7F Gurmukhi
@@ -20,11 +22,20 @@ return <<'END';
0C00 0C7F Telugu
0C80 0CFF Kannada
0D00 0D7F Malayalam
+0D80 0DFF Sinhala
0E00 0E7F Thai
0E80 0EFF Lao
-0F00 0FBF Tibetan
+0F00 0FFF Tibetan
+1000 109F Myanmar
10A0 10FF Georgian
1100 11FF Hangul Jamo
+1200 137F Ethiopic
+13A0 13FF Cherokee
+1400 167F Unified Canadian Aboriginal Syllabics
+1680 169F Ogham
+16A0 16FF Runic
+1780 17FF Khmer
+1800 18AF Mongolian
1E00 1EFF Latin Extended Additional
1F00 1FFF Greek Extended
2000 206F General Punctuation
@@ -44,15 +55,23 @@ return <<'END';
25A0 25FF Geometric Shapes
2600 26FF Miscellaneous Symbols
2700 27BF Dingbats
+2800 28FF Braille Patterns
+2E80 2EFF CJK Radicals Supplement
+2F00 2FDF Kangxi Radicals
+2FF0 2FFF Ideographic Description Characters
3000 303F CJK Symbols and Punctuation
3040 309F Hiragana
30A0 30FF Katakana
3100 312F Bopomofo
3130 318F Hangul Compatibility Jamo
3190 319F Kanbun
+31A0 31BF Bopomofo Extended
3200 32FF Enclosed CJK Letters and Months
3300 33FF CJK Compatibility
+3400 4DB5 CJK Unified Ideographs Extension A
4E00 9FFF CJK Unified Ideographs
+A000 A48F Yi Syllables
+A490 A4CF Yi Radicals
AC00 D7A3 Hangul Syllables
D800 DB7F High Surrogates
DB80 DBFF High Private Use Surrogates
@@ -64,8 +83,8 @@ FB50 FDFF Arabic Presentation Forms-A
FE20 FE2F Combining Half Marks
FE30 FE4F CJK Compatibility Forms
FE50 FE6F Small Form Variants
-FE70 FEFF Arabic Presentation Forms-B
-FF00 FFEF Halfwidth and Fullwidth Forms
+FE70 FEFE Arabic Presentation Forms-B
FEFF FEFF Specials
-FFF0 FFFF Specials
+FF00 FFEF Halfwidth and Fullwidth Forms
+FFF0 FFFD Specials
END
diff --git a/lib/unicode/blocks.txt b/lib/unicode/Blocks.txt
index e9c0ae82d3..15c8957f2d 100755..100644
--- a/lib/unicode/blocks.txt
+++ b/lib/unicode/Blocks.txt
@@ -11,6 +11,8 @@
0530; 058F; Armenian
0590; 05FF; Hebrew
0600; 06FF; Arabic
+0700; 074F; Syriac
+0780; 07BF; Thaana
0900; 097F; Devanagari
0980; 09FF; Bengali
0A00; 0A7F; Gurmukhi
@@ -20,11 +22,20 @@
0C00; 0C7F; Telugu
0C80; 0CFF; Kannada
0D00; 0D7F; Malayalam
+0D80; 0DFF; Sinhala
0E00; 0E7F; Thai
0E80; 0EFF; Lao
-0F00; 0FBF; Tibetan
+0F00; 0FFF; Tibetan
+1000; 109F; Myanmar
10A0; 10FF; Georgian
1100; 11FF; Hangul Jamo
+1200; 137F; Ethiopic
+13A0; 13FF; Cherokee
+1400; 167F; Unified Canadian Aboriginal Syllabics
+1680; 169F; Ogham
+16A0; 16FF; Runic
+1780; 17FF; Khmer
+1800; 18AF; Mongolian
1E00; 1EFF; Latin Extended Additional
1F00; 1FFF; Greek Extended
2000; 206F; General Punctuation
@@ -44,15 +55,23 @@
25A0; 25FF; Geometric Shapes
2600; 26FF; Miscellaneous Symbols
2700; 27BF; Dingbats
+2800; 28FF; Braille Patterns
+2E80; 2EFF; CJK Radicals Supplement
+2F00; 2FDF; Kangxi Radicals
+2FF0; 2FFF; Ideographic Description Characters
3000; 303F; CJK Symbols and Punctuation
3040; 309F; Hiragana
30A0; 30FF; Katakana
3100; 312F; Bopomofo
3130; 318F; Hangul Compatibility Jamo
3190; 319F; Kanbun
+31A0; 31BF; Bopomofo Extended
3200; 32FF; Enclosed CJK Letters and Months
3300; 33FF; CJK Compatibility
+3400; 4DB5; CJK Unified Ideographs Extension A
4E00; 9FFF; CJK Unified Ideographs
+A000; A48F; Yi Syllables
+A490; A4CF; Yi Radicals
AC00; D7A3; Hangul Syllables
D800; DB7F; High Surrogates
DB80; DBFF; High Private Use Surrogates
@@ -64,7 +83,8 @@ FB50; FDFF; Arabic Presentation Forms-A
FE20; FE2F; Combining Half Marks
FE30; FE4F; CJK Compatibility Forms
FE50; FE6F; Small Form Variants
-FE70; FEFF; Arabic Presentation Forms-B
-FF00; FFEF; Halfwidth and Fullwidth Forms
+FE70; FEFE; Arabic Presentation Forms-B
FEFF; FEFF; Specials
-FFF0; FFFF; Specials
+FF00; FFEF; Halfwidth and Fullwidth Forms
+FFF0; FFFD; Specials
+
diff --git a/lib/unicode/Category.pl b/lib/unicode/Category.pl
index 853de42813..4e3e87397f 100644
--- a/lib/unicode/Category.pl
+++ b/lib/unicode/Category.pl
@@ -208,8 +208,7 @@ return <<'END';
01a6 01a7 Lu
01a8 Ll
01a9 Lu
-01aa Lo
-01ab Ll
+01aa 01ab Ll
01ac Lu
01ad Ll
01ae 01af Lu
@@ -222,9 +221,7 @@ return <<'END';
01b9 01ba Ll
01bb Lo
01bc Lu
-01bd Ll
-01be Lo
-01bf Ll
+01bd 01bf Ll
01c0 01c3 Lo
01c4 Lu
01c5 Lt
@@ -381,8 +378,7 @@ return <<'END';
03ec Lu
03ed Ll
03ee Lu
-03ef 03f2 Ll
-03f3 Lo
+03ef 03f3 Ll
0400 042f Lu
0430 045f Ll
0460 Lu
@@ -474,8 +470,7 @@ return <<'END';
04bd Ll
04be Lu
04bf Ll
-04c0 Lo
-04c1 Lu
+04c0 04c1 Lu
04c2 Ll
04c3 Lu
04c4 Ll
@@ -886,7 +881,9 @@ return <<'END';
17db Sc
17dc Po
17e0 17e9 Nd
-1800 180a Po
+1800 1805 Po
+1806 Pd
+1807 180a Po
180b 180e Cf
1810 1819 Nd
1820 1842 Lo
@@ -1258,7 +1255,19 @@ return <<'END';
2153 215f No
2160 2183 Nl
2190 2194 Sm
-2195 21d1 So
+2195 2199 So
+219a 219b Sm
+219c 219f So
+21a0 Sm
+21a1 21a2 So
+21a3 Sm
+21a4 21a5 So
+21a6 Sm
+21a7 21ad So
+21ae Sm
+21af 21cd So
+21ce 21cf Sm
+21d0 21d1 So
21d2 Sm
21d3 So
21d4 Sm
@@ -1279,9 +1288,15 @@ return <<'END';
249c 24e9 So
24ea No
2500 2595 So
-25a0 25f7 So
+25a0 25b6 So
+25b7 Sm
+25b8 25c0 So
+25c1 Sm
+25c2 25f7 So
2600 2613 So
-2619 2671 So
+2619 266e So
+266f Sm
+2670 2671 So
2701 2704 So
2706 2709 So
270c 2727 So
@@ -1364,11 +1379,11 @@ return <<'END';
3400 4db5 Lo
4e00 9fa5 Lo
a000 a48c Lo
-a490 a4a1 Lo
-a4a4 a4b3 Lo
-a4b5 a4c0 Lo
-a4c2 a4c4 Lo
-a4c6 Lo
+a490 a4a1 So
+a4a4 a4b3 So
+a4b5 a4c0 So
+a4c2 a4c4 So
+a4c6 So
ac00 d7a3 Lo
d800 db7f Cs
db80 dbff Cs
diff --git a/lib/unicode/CombiningClass.pl b/lib/unicode/CombiningClass.pl
index 8449c8c5e1..5b506ade02 100644
--- a/lib/unicode/CombiningClass.pl
+++ b/lib/unicode/CombiningClass.pl
@@ -113,10 +113,8 @@ return <<'END';
0e38 0e39 103
0e3a 9
0e48 0e4b 107
-0e4d 107
0eb8 0eb9 118
0ec8 0ecb 122
-0ecd 122
0f18 0f19 220
0f35 220
0f37 220
diff --git a/lib/unicode/CompExcl.txt b/lib/unicode/CompExcl.txt
new file mode 100644
index 0000000000..5ea46afc63
--- /dev/null
+++ b/lib/unicode/CompExcl.txt
@@ -0,0 +1,143 @@
+# Composition Exclusions
+# This file lists the characters from the UTR #15 Composition Exclusion Table.
+#
+# For more information, see
+# http://www.unicode.org/unicode/reports/tr15/#Primary Exclusion List Table
+
+# (1) Script Specifics
+# This list of characters cannot be derived from the UnicodeData file.
+
+0958 # DEVANAGARI LETTER QA
+0959 # DEVANAGARI LETTER KHHA
+095A # DEVANAGARI LETTER GHHA
+095B # DEVANAGARI LETTER ZA
+095C # DEVANAGARI LETTER DDDHA
+095D # DEVANAGARI LETTER RHA
+095E # DEVANAGARI LETTER FA
+095F # DEVANAGARI LETTER YYA
+09DC # BENGALI LETTER RRA
+09DD # BENGALI LETTER RHA
+09DF # BENGALI LETTER YYA
+0A33 # GURMUKHI LETTER LLA
+0A36 # GURMUKHI LETTER SHA
+0A59 # GURMUKHI LETTER KHHA
+0A5A # GURMUKHI LETTER GHHA
+0A5B # GURMUKHI LETTER ZA
+0A5E # GURMUKHI LETTER FA
+0B5C # ORIYA LETTER RRA
+0B5D # ORIYA LETTER RHA
+0F43 # TIBETAN LETTER GHA
+0F4D # TIBETAN LETTER DDHA
+0F52 # TIBETAN LETTER DHA
+0F57 # TIBETAN LETTER BHA
+0F5C # TIBETAN LETTER DZHA
+0F69 # TIBETAN LETTER KSSA
+0F76 # TIBETAN VOWEL SIGN VOCALIC R
+0F78 # TIBETAN VOWEL SIGN VOCALIC L
+0F93 # TIBETAN SUBJOINED LETTER GHA
+0F9D # TIBETAN SUBJOINED LETTER DDHA
+0FA2 # TIBETAN SUBJOINED LETTER DHA
+0FA7 # TIBETAN SUBJOINED LETTER BHA
+0FAC # TIBETAN SUBJOINED LETTER DZHA
+0FB9 # TIBETAN SUBJOINED LETTER KSSA
+FB1F # HEBREW LIGATURE YIDDISH YOD YOD PATAH
+FB2A # HEBREW LETTER SHIN WITH SHIN DOT
+FB2B # HEBREW LETTER SHIN WITH SIN DOT
+FB2C # HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT
+FB2D # HEBREW LETTER SHIN WITH DAGESH AND SIN DOT
+FB2E # HEBREW LETTER ALEF WITH PATAH
+FB2F # HEBREW LETTER ALEF WITH QAMATS
+FB30 # HEBREW LETTER ALEF WITH MAPIQ
+FB31 # HEBREW LETTER BET WITH DAGESH
+FB32 # HEBREW LETTER GIMEL WITH DAGESH
+FB33 # HEBREW LETTER DALET WITH DAGESH
+FB34 # HEBREW LETTER HE WITH MAPIQ
+FB35 # HEBREW LETTER VAV WITH DAGESH
+FB36 # HEBREW LETTER ZAYIN WITH DAGESH
+FB38 # HEBREW LETTER TET WITH DAGESH
+FB39 # HEBREW LETTER YOD WITH DAGESH
+FB3A # HEBREW LETTER FINAL KAF WITH DAGESH
+FB3B # HEBREW LETTER KAF WITH DAGESH
+FB3C # HEBREW LETTER LAMED WITH DAGESH
+FB3E # HEBREW LETTER MEM WITH DAGESH
+FB40 # HEBREW LETTER NUN WITH DAGESH
+FB41 # HEBREW LETTER SAMEKH WITH DAGESH
+FB43 # HEBREW LETTER FINAL PE WITH DAGESH
+FB44 # HEBREW LETTER PE WITH DAGESH
+FB46 # HEBREW LETTER TSADI WITH DAGESH
+FB47 # HEBREW LETTER QOF WITH DAGESH
+FB48 # HEBREW LETTER RESH WITH DAGESH
+FB49 # HEBREW LETTER SHIN WITH DAGESH
+FB4A # HEBREW LETTER TAV WITH DAGESH
+FB4B # HEBREW LETTER VAV WITH HOLAM
+FB4C # HEBREW LETTER BET WITH RAFE
+FB4D # HEBREW LETTER KAF WITH RAFE
+FB4E # HEBREW LETTER PE WITH RAFE
+
+# (2) Post Composition Version characters
+# These characters cannot be derived from the UnicodeData file.
+# (There are no characters in this category in this version of Unicode.)
+
+# (3) Singleton Decompositions
+# These characters can be derived from the UnicodeData file
+# by including all characters whose canonical decomposition
+# consists of a single character.
+# These characters are simply quoted here for reference.
+
+# 0340 COMBINING GRAVE TONE MARK
+# 0341 COMBINING ACUTE TONE MARK
+# 0343 COMBINING GREEK KORONIS
+# 0374 GREEK NUMERAL SIGN
+# 037E GREEK QUESTION MARK
+# 0387 GREEK ANO TELEIA
+# 1F71 GREEK SMALL LETTER ALPHA WITH OXIA
+# 1F73 GREEK SMALL LETTER EPSILON WITH OXIA
+# 1F75 GREEK SMALL LETTER ETA WITH OXIA
+# 1F77 GREEK SMALL LETTER IOTA WITH OXIA
+# 1F79 GREEK SMALL LETTER OMICRON WITH OXIA
+# 1F7B GREEK SMALL LETTER UPSILON WITH OXIA
+# 1F7D GREEK SMALL LETTER OMEGA WITH OXIA
+# 1FBB GREEK CAPITAL LETTER ALPHA WITH OXIA
+# 1FBE GREEK PROSGEGRAMMENI
+# 1FC9 GREEK CAPITAL LETTER EPSILON WITH OXIA
+# 1FCB GREEK CAPITAL LETTER ETA WITH OXIA
+# 1FD3 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
+# 1FDB GREEK CAPITAL LETTER IOTA WITH OXIA
+# 1FE3 GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
+# 1FEB GREEK CAPITAL LETTER UPSILON WITH OXIA
+# 1FEE GREEK DIALYTIKA AND OXIA
+# 1FEF GREEK VARIA
+# 1FF9 GREEK CAPITAL LETTER OMICRON WITH OXIA
+# 1FFB GREEK CAPITAL LETTER OMEGA WITH OXIA
+# 1FFD GREEK OXIA
+# 2000 EN QUAD
+# 2001 EM QUAD
+# 2126 OHM SIGN
+# 212A KELVIN SIGN
+# 212B ANGSTROM SIGN
+# 2329 LEFT-POINTING ANGLE BRACKET
+# 232A RIGHT-POINTING ANGLE BRACKET
+# F900 CJK COMPATIBILITY IDEOGRAPH-F900
+#.. FA0D CJK COMPATIBILITY IDEOGRAPH-FA0D
+# FA10 CJK COMPATIBILITY IDEOGRAPH-FA10
+# FA12 CJK COMPATIBILITY IDEOGRAPH-FA12
+# FA15 CJK COMPATIBILITY IDEOGRAPH-FA15
+#.. FA1E CJK COMPATIBILITY IDEOGRAPH-FA1E
+# FA20 CJK COMPATIBILITY IDEOGRAPH-FA20
+# FA22 CJK COMPATIBILITY IDEOGRAPH-FA22
+# FA25 CJK COMPATIBILITY IDEOGRAPH-FA25
+# FA26 CJK COMPATIBILITY IDEOGRAPH-FA26
+# FA2A CJK COMPATIBILITY IDEOGRAPH-FA2A
+#.. FA2D CJK COMPATIBILITY IDEOGRAPH-FA2D
+
+# (4) Non-Starter Decompositions
+# These characters can be derived from the UnicodeData file
+# by including all characters whose canonical decomposition consists
+# of a sequence of characters, the first of which has a canonical
+# class of zero.
+# These characters are simply quoted here for reference.
+
+# 0344 COMBINING GREEK DIALYTIKA TONOS
+# 0F73 TIBETAN VOWEL SIGN II
+# 0F75 TIBETAN VOWEL SIGN UU
+# 0F81 TIBETAN VOWEL SIGN REVERSED II
diff --git a/lib/unicode/Decomposition.pl b/lib/unicode/Decomposition.pl
index fcf7244df3..ae4cbaf6ab 100644
--- a/lib/unicode/Decomposition.pl
+++ b/lib/unicode/Decomposition.pl
@@ -1,7 +1,4 @@
return <<'END';
-005e <compat> 0020 0302
-005f <compat> 0020 0332
-0060 <compat> 0020 0300
00a0 <noBreak> 0020
00a8 <compat> 0020 0308
00aa <super> 0061
@@ -455,8 +452,8 @@ return <<'END';
0ddc 0DD9 0DCF
0ddd 0DDC 0DCA
0dde 0DD9 0DDF
-0e33 0E4D 0E32
-0eb3 0ECD 0EB2
+0e33 <compat> 0E4D 0E32
+0eb3 <compat> 0ECD 0EB2
0edc <compat> 0EAB 0E99
0edd <compat> 0EAB 0EA1
0f0c <noBreak> 0F0B
diff --git a/lib/unicode/EAWidth.txt b/lib/unicode/EAWidth.txt
new file mode 100644
index 0000000000..2b3577b77d
--- /dev/null
+++ b/lib/unicode/EAWidth.txt
@@ -0,0 +1,10636 @@
+# EastAsianWidth-3.txt
+#
+# East Asian Width Properties
+#
+# This file is a supplement to the UnicodeData file.
+# It contains informative data only.
+# The format is three fields separated by semicolons.
+# Field 1: Unicode value
+# Field 2: East Asian Width property, consisting of one of the following values:
+# "N", "A", "H", "W", "F", "Na"
+# - Assigned characters that are not listed explicitly are given the value "N".
+# - Characters within ranges marked by "First>" and "Last>" are omitted,
+# as in UnicodeData.txt. For example, the following means that
+# all characters between 3400 and 4DB5 have the value "W"
+# 3400;W;<CJK Ideograph Extension A, First>
+# 4DB5;W;<CJK Ideograph Extension A, Last>
+# Field 3: Unicode name (this is purely informative)
+#
+# See UTR #11: East Asian Character Width for more information
+0000;N;<control>
+0001;N;<control>
+0002;N;<control>
+0003;N;<control>
+0004;N;<control>
+0005;N;<control>
+0006;N;<control>
+0007;N;<control>
+0008;N;<control>
+0009;N;<control>
+000A;N;<control>
+000B;N;<control>
+000C;N;<control>
+000D;N;<control>
+000E;N;<control>
+000F;N;<control>
+0010;N;<control>
+0011;N;<control>
+0012;N;<control>
+0013;N;<control>
+0014;N;<control>
+0015;N;<control>
+0016;N;<control>
+0017;N;<control>
+0018;N;<control>
+0019;N;<control>
+001A;N;<control>
+001B;N;<control>
+001C;N;<control>
+001D;N;<control>
+001E;N;<control>
+001F;N;<control>
+0020;Na;SPACE
+0021;Na;EXCLAMATION MARK
+0022;Na;QUOTATION MARK
+0023;Na;NUMBER SIGN
+0024;Na;DOLLAR SIGN
+0025;Na;PERCENT SIGN
+0026;Na;AMPERSAND
+0027;Na;APOSTROPHE
+0028;Na;LEFT PARENTHESIS
+0029;Na;RIGHT PARENTHESIS
+002A;Na;ASTERISK
+002B;Na;PLUS SIGN
+002C;Na;COMMA
+002D;Na;HYPHEN-MINUS
+002E;Na;FULL STOP
+002F;Na;SOLIDUS
+0030;Na;DIGIT ZERO
+0031;Na;DIGIT ONE
+0032;Na;DIGIT TWO
+0033;Na;DIGIT THREE
+0034;Na;DIGIT FOUR
+0035;Na;DIGIT FIVE
+0036;Na;DIGIT SIX
+0037;Na;DIGIT SEVEN
+0038;Na;DIGIT EIGHT
+0039;Na;DIGIT NINE
+003A;Na;COLON
+003B;Na;SEMICOLON
+003C;Na;LESS-THAN SIGN
+003D;Na;EQUALS SIGN
+003E;Na;GREATER-THAN SIGN
+003F;Na;QUESTION MARK
+0040;Na;COMMERCIAL AT
+0041;Na;LATIN CAPITAL LETTER A
+0042;Na;LATIN CAPITAL LETTER B
+0043;Na;LATIN CAPITAL LETTER C
+0044;Na;LATIN CAPITAL LETTER D
+0045;Na;LATIN CAPITAL LETTER E
+0046;Na;LATIN CAPITAL LETTER F
+0047;Na;LATIN CAPITAL LETTER G
+0048;Na;LATIN CAPITAL LETTER H
+0049;Na;LATIN CAPITAL LETTER I
+004A;Na;LATIN CAPITAL LETTER J
+004B;Na;LATIN CAPITAL LETTER K
+004C;Na;LATIN CAPITAL LETTER L
+004D;Na;LATIN CAPITAL LETTER M
+004E;Na;LATIN CAPITAL LETTER N
+004F;Na;LATIN CAPITAL LETTER O
+0050;Na;LATIN CAPITAL LETTER P
+0051;Na;LATIN CAPITAL LETTER Q
+0052;Na;LATIN CAPITAL LETTER R
+0053;Na;LATIN CAPITAL LETTER S
+0054;Na;LATIN CAPITAL LETTER T
+0055;Na;LATIN CAPITAL LETTER U
+0056;Na;LATIN CAPITAL LETTER V
+0057;Na;LATIN CAPITAL LETTER W
+0058;Na;LATIN CAPITAL LETTER X
+0059;Na;LATIN CAPITAL LETTER Y
+005A;Na;LATIN CAPITAL LETTER Z
+005B;Na;LEFT SQUARE BRACKET
+005C;Na;REVERSE SOLIDUS
+005D;Na;RIGHT SQUARE BRACKET
+005E;Na;CIRCUMFLEX ACCENT
+005F;Na;LOW LINE
+0060;Na;GRAVE ACCENT
+0061;Na;LATIN SMALL LETTER A
+0062;Na;LATIN SMALL LETTER B
+0063;Na;LATIN SMALL LETTER C
+0064;Na;LATIN SMALL LETTER D
+0065;Na;LATIN SMALL LETTER E
+0066;Na;LATIN SMALL LETTER F
+0067;Na;LATIN SMALL LETTER G
+0068;Na;LATIN SMALL LETTER H
+0069;Na;LATIN SMALL LETTER I
+006A;Na;LATIN SMALL LETTER J
+006B;Na;LATIN SMALL LETTER K
+006C;Na;LATIN SMALL LETTER L
+006D;Na;LATIN SMALL LETTER M
+006E;Na;LATIN SMALL LETTER N
+006F;Na;LATIN SMALL LETTER O
+0070;Na;LATIN SMALL LETTER P
+0071;Na;LATIN SMALL LETTER Q
+0072;Na;LATIN SMALL LETTER R
+0073;Na;LATIN SMALL LETTER S
+0074;Na;LATIN SMALL LETTER T
+0075;Na;LATIN SMALL LETTER U
+0076;Na;LATIN SMALL LETTER V
+0077;Na;LATIN SMALL LETTER W
+0078;Na;LATIN SMALL LETTER X
+0079;Na;LATIN SMALL LETTER Y
+007A;Na;LATIN SMALL LETTER Z
+007B;Na;LEFT CURLY BRACKET
+007C;Na;VERTICAL LINE
+007D;Na;RIGHT CURLY BRACKET
+007E;Na;TILDE
+007F;N;<control>
+0080;N;<control>
+0081;N;<control>
+0082;N;<control>
+0083;N;<control>
+0084;N;<control>
+0085;N;<control>
+0086;N;<control>
+0087;N;<control>
+0088;N;<control>
+0089;N;<control>
+008A;N;<control>
+008B;N;<control>
+008C;N;<control>
+008D;N;<control>
+008E;N;<control>
+008F;N;<control>
+0090;N;<control>
+0091;N;<control>
+0092;N;<control>
+0093;N;<control>
+0094;N;<control>
+0095;N;<control>
+0096;N;<control>
+0097;N;<control>
+0098;N;<control>
+0099;N;<control>
+009A;N;<control>
+009B;N;<control>
+009C;N;<control>
+009D;N;<control>
+009E;N;<control>
+009F;N;<control>
+00A0;N;NO-BREAK SPACE
+00A1;A;INVERTED EXCLAMATION MARK
+00A2;Na;CENT SIGN
+00A3;Na;POUND SIGN
+00A4;A;CURRENCY SIGN
+00A5;Na;YEN SIGN
+00A6;Na;BROKEN BAR
+00A7;A;SECTION SIGN
+00A8;A;DIAERESIS
+00A9;N;COPYRIGHT SIGN
+00AA;A;FEMININE ORDINAL INDICATOR
+00AB;N;LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+00AC;Na;NOT SIGN
+00AD;A;SOFT HYPHEN
+00AE;N;REGISTERED SIGN
+00AF;Na;MACRON
+00B0;A;DEGREE SIGN
+00B1;A;PLUS-MINUS SIGN
+00B2;A;SUPERSCRIPT TWO
+00B3;A;SUPERSCRIPT THREE
+00B4;A;ACUTE ACCENT
+00B5;N;MICRO SIGN
+00B6;A;PILCROW SIGN
+00B7;A;MIDDLE DOT
+00B8;A;CEDILLA
+00B9;A;SUPERSCRIPT ONE
+00BA;A;MASCULINE ORDINAL INDICATOR
+00BB;N;RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+00BC;A;VULGAR FRACTION ONE QUARTER
+00BD;A;VULGAR FRACTION ONE HALF
+00BE;A;VULGAR FRACTION THREE QUARTERS
+00BF;A;INVERTED QUESTION MARK
+00C0;N;LATIN CAPITAL LETTER A WITH GRAVE
+00C1;N;LATIN CAPITAL LETTER A WITH ACUTE
+00C2;N;LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+00C3;N;LATIN CAPITAL LETTER A WITH TILDE
+00C4;N;LATIN CAPITAL LETTER A WITH DIAERESIS
+00C5;N;LATIN CAPITAL LETTER A WITH RING ABOVE
+00C6;A;LATIN CAPITAL LETTER AE
+00C7;N;LATIN CAPITAL LETTER C WITH CEDILLA
+00C8;N;LATIN CAPITAL LETTER E WITH GRAVE
+00C9;N;LATIN CAPITAL LETTER E WITH ACUTE
+00CA;N;LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+00CB;N;LATIN CAPITAL LETTER E WITH DIAERESIS
+00CC;N;LATIN CAPITAL LETTER I WITH GRAVE
+00CD;N;LATIN CAPITAL LETTER I WITH ACUTE
+00CE;N;LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+00CF;N;LATIN CAPITAL LETTER I WITH DIAERESIS
+00D0;A;LATIN CAPITAL LETTER ETH
+00D1;N;LATIN CAPITAL LETTER N WITH TILDE
+00D2;N;LATIN CAPITAL LETTER O WITH GRAVE
+00D3;N;LATIN CAPITAL LETTER O WITH ACUTE
+00D4;N;LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+00D5;N;LATIN CAPITAL LETTER O WITH TILDE
+00D6;N;LATIN CAPITAL LETTER O WITH DIAERESIS
+00D7;A;MULTIPLICATION SIGN
+00D8;A;LATIN CAPITAL LETTER O WITH STROKE
+00D9;N;LATIN CAPITAL LETTER U WITH GRAVE
+00DA;N;LATIN CAPITAL LETTER U WITH ACUTE
+00DB;N;LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+00DC;N;LATIN CAPITAL LETTER U WITH DIAERESIS
+00DD;N;LATIN CAPITAL LETTER Y WITH ACUTE
+00DE;A;LATIN CAPITAL LETTER THORN
+00DF;A;LATIN SMALL LETTER SHARP S
+00E0;A;LATIN SMALL LETTER A WITH GRAVE
+00E1;A;LATIN SMALL LETTER A WITH ACUTE
+00E2;N;LATIN SMALL LETTER A WITH CIRCUMFLEX
+00E3;N;LATIN SMALL LETTER A WITH TILDE
+00E4;N;LATIN SMALL LETTER A WITH DIAERESIS
+00E5;N;LATIN SMALL LETTER A WITH RING ABOVE
+00E6;A;LATIN SMALL LETTER AE
+00E7;N;LATIN SMALL LETTER C WITH CEDILLA
+00E8;A;LATIN SMALL LETTER E WITH GRAVE
+00E9;A;LATIN SMALL LETTER E WITH ACUTE
+00EA;A;LATIN SMALL LETTER E WITH CIRCUMFLEX
+00EB;N;LATIN SMALL LETTER E WITH DIAERESIS
+00EC;A;LATIN SMALL LETTER I WITH GRAVE
+00ED;A;LATIN SMALL LETTER I WITH ACUTE
+00EE;N;LATIN SMALL LETTER I WITH CIRCUMFLEX
+00EF;N;LATIN SMALL LETTER I WITH DIAERESIS
+00F0;A;LATIN SMALL LETTER ETH
+00F1;N;LATIN SMALL LETTER N WITH TILDE
+00F2;A;LATIN SMALL LETTER O WITH GRAVE
+00F3;A;LATIN SMALL LETTER O WITH ACUTE
+00F4;N;LATIN SMALL LETTER O WITH CIRCUMFLEX
+00F5;N;LATIN SMALL LETTER O WITH TILDE
+00F6;N;LATIN SMALL LETTER O WITH DIAERESIS
+00F7;A;DIVISION SIGN
+00F8;A;LATIN SMALL LETTER O WITH STROKE
+00F9;A;LATIN SMALL LETTER U WITH GRAVE
+00FA;A;LATIN SMALL LETTER U WITH ACUTE
+00FB;N;LATIN SMALL LETTER U WITH CIRCUMFLEX
+00FC;A;LATIN SMALL LETTER U WITH DIAERESIS
+00FD;N;LATIN SMALL LETTER Y WITH ACUTE
+00FE;A;LATIN SMALL LETTER THORN
+00FF;N;LATIN SMALL LETTER Y WITH DIAERESIS
+0100;N;LATIN CAPITAL LETTER A WITH MACRON
+0101;A;LATIN SMALL LETTER A WITH MACRON
+0102;N;LATIN CAPITAL LETTER A WITH BREVE
+0103;N;LATIN SMALL LETTER A WITH BREVE
+0104;N;LATIN CAPITAL LETTER A WITH OGONEK
+0105;N;LATIN SMALL LETTER A WITH OGONEK
+0106;N;LATIN CAPITAL LETTER C WITH ACUTE
+0107;N;LATIN SMALL LETTER C WITH ACUTE
+0108;N;LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+0109;N;LATIN SMALL LETTER C WITH CIRCUMFLEX
+010A;N;LATIN CAPITAL LETTER C WITH DOT ABOVE
+010B;N;LATIN SMALL LETTER C WITH DOT ABOVE
+010C;N;LATIN CAPITAL LETTER C WITH CARON
+010D;N;LATIN SMALL LETTER C WITH CARON
+010E;N;LATIN CAPITAL LETTER D WITH CARON
+010F;N;LATIN SMALL LETTER D WITH CARON
+0110;N;LATIN CAPITAL LETTER D WITH STROKE
+0111;A;LATIN SMALL LETTER D WITH STROKE
+0112;N;LATIN CAPITAL LETTER E WITH MACRON
+0113;A;LATIN SMALL LETTER E WITH MACRON
+0114;N;LATIN CAPITAL LETTER E WITH BREVE
+0115;N;LATIN SMALL LETTER E WITH BREVE
+0116;N;LATIN CAPITAL LETTER E WITH DOT ABOVE
+0117;N;LATIN SMALL LETTER E WITH DOT ABOVE
+0118;N;LATIN CAPITAL LETTER E WITH OGONEK
+0119;N;LATIN SMALL LETTER E WITH OGONEK
+011A;N;LATIN CAPITAL LETTER E WITH CARON
+011B;A;LATIN SMALL LETTER E WITH CARON
+011C;N;LATIN CAPITAL LETTER G WITH CIRCUMFLEX
+011D;N;LATIN SMALL LETTER G WITH CIRCUMFLEX
+011E;N;LATIN CAPITAL LETTER G WITH BREVE
+011F;N;LATIN SMALL LETTER G WITH BREVE
+0120;N;LATIN CAPITAL LETTER G WITH DOT ABOVE
+0121;N;LATIN SMALL LETTER G WITH DOT ABOVE
+0122;N;LATIN CAPITAL LETTER G WITH CEDILLA
+0123;N;LATIN SMALL LETTER G WITH CEDILLA
+0124;N;LATIN CAPITAL LETTER H WITH CIRCUMFLEX
+0125;N;LATIN SMALL LETTER H WITH CIRCUMFLEX
+0126;A;LATIN CAPITAL LETTER H WITH STROKE
+0127;A;LATIN SMALL LETTER H WITH STROKE
+0128;N;LATIN CAPITAL LETTER I WITH TILDE
+0129;N;LATIN SMALL LETTER I WITH TILDE
+012A;N;LATIN CAPITAL LETTER I WITH MACRON
+012B;A;LATIN SMALL LETTER I WITH MACRON
+012C;N;LATIN CAPITAL LETTER I WITH BREVE
+012D;N;LATIN SMALL LETTER I WITH BREVE
+012E;N;LATIN CAPITAL LETTER I WITH OGONEK
+012F;N;LATIN SMALL LETTER I WITH OGONEK
+0130;N;LATIN CAPITAL LETTER I WITH DOT ABOVE
+0131;A;LATIN SMALL LETTER DOTLESS I
+0132;A;LATIN CAPITAL LIGATURE IJ
+0133;A;LATIN SMALL LIGATURE IJ
+0134;N;LATIN CAPITAL LETTER J WITH CIRCUMFLEX
+0135;N;LATIN SMALL LETTER J WITH CIRCUMFLEX
+0136;N;LATIN CAPITAL LETTER K WITH CEDILLA
+0137;N;LATIN SMALL LETTER K WITH CEDILLA
+0138;A;LATIN SMALL LETTER KRA
+0139;N;LATIN CAPITAL LETTER L WITH ACUTE
+013A;N;LATIN SMALL LETTER L WITH ACUTE
+013B;N;LATIN CAPITAL LETTER L WITH CEDILLA
+013C;N;LATIN SMALL LETTER L WITH CEDILLA
+013D;N;LATIN CAPITAL LETTER L WITH CARON
+013E;N;LATIN SMALL LETTER L WITH CARON
+013F;A;LATIN CAPITAL LETTER L WITH MIDDLE DOT
+0140;A;LATIN SMALL LETTER L WITH MIDDLE DOT
+0141;A;LATIN CAPITAL LETTER L WITH STROKE
+0142;A;LATIN SMALL LETTER L WITH STROKE
+0143;N;LATIN CAPITAL LETTER N WITH ACUTE
+0144;A;LATIN SMALL LETTER N WITH ACUTE
+0145;N;LATIN CAPITAL LETTER N WITH CEDILLA
+0146;N;LATIN SMALL LETTER N WITH CEDILLA
+0147;N;LATIN CAPITAL LETTER N WITH CARON
+0148;A;LATIN SMALL LETTER N WITH CARON
+0149;A;LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
+014A;A;LATIN CAPITAL LETTER ENG
+014B;N;LATIN SMALL LETTER ENG
+014C;N;LATIN CAPITAL LETTER O WITH MACRON
+014D;A;LATIN SMALL LETTER O WITH MACRON
+014E;N;LATIN CAPITAL LETTER O WITH BREVE
+014F;N;LATIN SMALL LETTER O WITH BREVE
+0150;N;LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
+0151;N;LATIN SMALL LETTER O WITH DOUBLE ACUTE
+0152;A;LATIN CAPITAL LIGATURE OE
+0153;A;LATIN SMALL LIGATURE OE
+0154;N;LATIN CAPITAL LETTER R WITH ACUTE
+0155;N;LATIN SMALL LETTER R WITH ACUTE
+0156;N;LATIN CAPITAL LETTER R WITH CEDILLA
+0157;N;LATIN SMALL LETTER R WITH CEDILLA
+0158;N;LATIN CAPITAL LETTER R WITH CARON
+0159;N;LATIN SMALL LETTER R WITH CARON
+015A;N;LATIN CAPITAL LETTER S WITH ACUTE
+015B;N;LATIN SMALL LETTER S WITH ACUTE
+015C;N;LATIN CAPITAL LETTER S WITH CIRCUMFLEX
+015D;N;LATIN SMALL LETTER S WITH CIRCUMFLEX
+015E;N;LATIN CAPITAL LETTER S WITH CEDILLA
+015F;N;LATIN SMALL LETTER S WITH CEDILLA
+0160;N;LATIN CAPITAL LETTER S WITH CARON
+0161;N;LATIN SMALL LETTER S WITH CARON
+0162;N;LATIN CAPITAL LETTER T WITH CEDILLA
+0163;N;LATIN SMALL LETTER T WITH CEDILLA
+0164;N;LATIN CAPITAL LETTER T WITH CARON
+0165;N;LATIN SMALL LETTER T WITH CARON
+0166;A;LATIN CAPITAL LETTER T WITH STROKE
+0167;A;LATIN SMALL LETTER T WITH STROKE
+0168;N;LATIN CAPITAL LETTER U WITH TILDE
+0169;N;LATIN SMALL LETTER U WITH TILDE
+016A;N;LATIN CAPITAL LETTER U WITH MACRON
+016B;A;LATIN SMALL LETTER U WITH MACRON
+016C;N;LATIN CAPITAL LETTER U WITH BREVE
+016D;N;LATIN SMALL LETTER U WITH BREVE
+016E;N;LATIN CAPITAL LETTER U WITH RING ABOVE
+016F;N;LATIN SMALL LETTER U WITH RING ABOVE
+0170;N;LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
+0171;N;LATIN SMALL LETTER U WITH DOUBLE ACUTE
+0172;N;LATIN CAPITAL LETTER U WITH OGONEK
+0173;N;LATIN SMALL LETTER U WITH OGONEK
+0174;N;LATIN CAPITAL LETTER W WITH CIRCUMFLEX
+0175;N;LATIN SMALL LETTER W WITH CIRCUMFLEX
+0176;N;LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
+0177;N;LATIN SMALL LETTER Y WITH CIRCUMFLEX
+0178;N;LATIN CAPITAL LETTER Y WITH DIAERESIS
+0179;N;LATIN CAPITAL LETTER Z WITH ACUTE
+017A;N;LATIN SMALL LETTER Z WITH ACUTE
+017B;N;LATIN CAPITAL LETTER Z WITH DOT ABOVE
+017C;N;LATIN SMALL LETTER Z WITH DOT ABOVE
+017D;N;LATIN CAPITAL LETTER Z WITH CARON
+017E;N;LATIN SMALL LETTER Z WITH CARON
+017F;N;LATIN SMALL LETTER LONG S
+0180;N;LATIN SMALL LETTER B WITH STROKE
+0181;N;LATIN CAPITAL LETTER B WITH HOOK
+0182;N;LATIN CAPITAL LETTER B WITH TOPBAR
+0183;N;LATIN SMALL LETTER B WITH TOPBAR
+0184;N;LATIN CAPITAL LETTER TONE SIX
+0185;N;LATIN SMALL LETTER TONE SIX
+0186;N;LATIN CAPITAL LETTER OPEN O
+0187;N;LATIN CAPITAL LETTER C WITH HOOK
+0188;N;LATIN SMALL LETTER C WITH HOOK
+0189;N;LATIN CAPITAL LETTER AFRICAN D
+018A;N;LATIN CAPITAL LETTER D WITH HOOK
+018B;N;LATIN CAPITAL LETTER D WITH TOPBAR
+018C;N;LATIN SMALL LETTER D WITH TOPBAR
+018D;N;LATIN SMALL LETTER TURNED DELTA
+018E;N;LATIN CAPITAL LETTER REVERSED E
+018F;N;LATIN CAPITAL LETTER SCHWA
+0190;N;LATIN CAPITAL LETTER OPEN E
+0191;N;LATIN CAPITAL LETTER F WITH HOOK
+0192;N;LATIN SMALL LETTER F WITH HOOK
+0193;N;LATIN CAPITAL LETTER G WITH HOOK
+0194;N;LATIN CAPITAL LETTER GAMMA
+0195;N;LATIN SMALL LETTER HV
+0196;N;LATIN CAPITAL LETTER IOTA
+0197;N;LATIN CAPITAL LETTER I WITH STROKE
+0198;N;LATIN CAPITAL LETTER K WITH HOOK
+0199;N;LATIN SMALL LETTER K WITH HOOK
+019A;N;LATIN SMALL LETTER L WITH BAR
+019B;N;LATIN SMALL LETTER LAMBDA WITH STROKE
+019C;N;LATIN CAPITAL LETTER TURNED M
+019D;N;LATIN CAPITAL LETTER N WITH LEFT HOOK
+019E;N;LATIN SMALL LETTER N WITH LONG RIGHT LEG
+019F;N;LATIN CAPITAL LETTER O WITH MIDDLE TILDE
+01A0;N;LATIN CAPITAL LETTER O WITH HORN
+01A1;N;LATIN SMALL LETTER O WITH HORN
+01A2;N;LATIN CAPITAL LETTER OI
+01A3;N;LATIN SMALL LETTER OI
+01A4;N;LATIN CAPITAL LETTER P WITH HOOK
+01A5;N;LATIN SMALL LETTER P WITH HOOK
+01A6;N;LATIN LETTER YR
+01A7;N;LATIN CAPITAL LETTER TONE TWO
+01A8;N;LATIN SMALL LETTER TONE TWO
+01A9;N;LATIN CAPITAL LETTER ESH
+01AA;N;LATIN LETTER REVERSED ESH LOOP
+01AB;N;LATIN SMALL LETTER T WITH PALATAL HOOK
+01AC;N;LATIN CAPITAL LETTER T WITH HOOK
+01AD;N;LATIN SMALL LETTER T WITH HOOK
+01AE;N;LATIN CAPITAL LETTER T WITH RETROFLEX HOOK
+01AF;N;LATIN CAPITAL LETTER U WITH HORN
+01B0;N;LATIN SMALL LETTER U WITH HORN
+01B1;N;LATIN CAPITAL LETTER UPSILON
+01B2;N;LATIN CAPITAL LETTER V WITH HOOK
+01B3;N;LATIN CAPITAL LETTER Y WITH HOOK
+01B4;N;LATIN SMALL LETTER Y WITH HOOK
+01B5;N;LATIN CAPITAL LETTER Z WITH STROKE
+01B6;N;LATIN SMALL LETTER Z WITH STROKE
+01B7;N;LATIN CAPITAL LETTER EZH
+01B8;N;LATIN CAPITAL LETTER EZH REVERSED
+01B9;N;LATIN SMALL LETTER EZH REVERSED
+01BA;N;LATIN SMALL LETTER EZH WITH TAIL
+01BB;N;LATIN LETTER TWO WITH STROKE
+01BC;N;LATIN CAPITAL LETTER TONE FIVE
+01BD;N;LATIN SMALL LETTER TONE FIVE
+01BE;N;LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE
+01BF;N;LATIN LETTER WYNN
+01C0;N;LATIN LETTER DENTAL CLICK
+01C1;N;LATIN LETTER LATERAL CLICK
+01C2;N;LATIN LETTER ALVEOLAR CLICK
+01C3;N;LATIN LETTER RETROFLEX CLICK
+01C4;N;LATIN CAPITAL LETTER DZ WITH CARON
+01C5;N;LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON
+01C6;N;LATIN SMALL LETTER DZ WITH CARON
+01C7;N;LATIN CAPITAL LETTER LJ
+01C8;N;LATIN CAPITAL LETTER L WITH SMALL LETTER J
+01C9;N;LATIN SMALL LETTER LJ
+01CA;N;LATIN CAPITAL LETTER NJ
+01CB;N;LATIN CAPITAL LETTER N WITH SMALL LETTER J
+01CC;N;LATIN SMALL LETTER NJ
+01CD;N;LATIN CAPITAL LETTER A WITH CARON
+01CE;A;LATIN SMALL LETTER A WITH CARON
+01CF;N;LATIN CAPITAL LETTER I WITH CARON
+01D0;A;LATIN SMALL LETTER I WITH CARON
+01D1;N;LATIN CAPITAL LETTER O WITH CARON
+01D2;A;LATIN SMALL LETTER O WITH CARON
+01D3;N;LATIN CAPITAL LETTER U WITH CARON
+01D4;A;LATIN SMALL LETTER U WITH CARON
+01D5;N;LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON
+01D6;A;LATIN SMALL LETTER U WITH DIAERESIS AND MACRON
+01D7;N;LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE
+01D8;A;LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE
+01D9;N;LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON
+01DA;A;LATIN SMALL LETTER U WITH DIAERESIS AND CARON
+01DB;N;LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE
+01DC;A;LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE
+01DD;N;LATIN SMALL LETTER TURNED E
+01DE;N;LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON
+01DF;N;LATIN SMALL LETTER A WITH DIAERESIS AND MACRON
+01E0;N;LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON
+01E1;N;LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON
+01E2;N;LATIN CAPITAL LETTER AE WITH MACRON
+01E3;N;LATIN SMALL LETTER AE WITH MACRON
+01E4;N;LATIN CAPITAL LETTER G WITH STROKE
+01E5;N;LATIN SMALL LETTER G WITH STROKE
+01E6;N;LATIN CAPITAL LETTER G WITH CARON
+01E7;N;LATIN SMALL LETTER G WITH CARON
+01E8;N;LATIN CAPITAL LETTER K WITH CARON
+01E9;N;LATIN SMALL LETTER K WITH CARON
+01EA;N;LATIN CAPITAL LETTER O WITH OGONEK
+01EB;N;LATIN SMALL LETTER O WITH OGONEK
+01EC;N;LATIN CAPITAL LETTER O WITH OGONEK AND MACRON
+01ED;N;LATIN SMALL LETTER O WITH OGONEK AND MACRON
+01EE;N;LATIN CAPITAL LETTER EZH WITH CARON
+01EF;N;LATIN SMALL LETTER EZH WITH CARON
+01F0;N;LATIN SMALL LETTER J WITH CARON
+01F1;N;LATIN CAPITAL LETTER DZ
+01F2;N;LATIN CAPITAL LETTER D WITH SMALL LETTER Z
+01F3;N;LATIN SMALL LETTER DZ
+01F4;N;LATIN CAPITAL LETTER G WITH ACUTE
+01F5;N;LATIN SMALL LETTER G WITH ACUTE
+01F6;N;LATIN CAPITAL LETTER HWAIR
+01F7;N;LATIN CAPITAL LETTER WYNN
+01F8;N;LATIN CAPITAL LETTER N WITH GRAVE
+01F9;N;LATIN SMALL LETTER N WITH GRAVE
+01FA;N;LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE
+01FB;N;LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE
+01FC;N;LATIN CAPITAL LETTER AE WITH ACUTE
+01FD;N;LATIN SMALL LETTER AE WITH ACUTE
+01FE;N;LATIN CAPITAL LETTER O WITH STROKE AND ACUTE
+01FF;N;LATIN SMALL LETTER O WITH STROKE AND ACUTE
+0200;N;LATIN CAPITAL LETTER A WITH DOUBLE GRAVE
+0201;N;LATIN SMALL LETTER A WITH DOUBLE GRAVE
+0202;N;LATIN CAPITAL LETTER A WITH INVERTED BREVE
+0203;N;LATIN SMALL LETTER A WITH INVERTED BREVE
+0204;N;LATIN CAPITAL LETTER E WITH DOUBLE GRAVE
+0205;N;LATIN SMALL LETTER E WITH DOUBLE GRAVE
+0206;N;LATIN CAPITAL LETTER E WITH INVERTED BREVE
+0207;N;LATIN SMALL LETTER E WITH INVERTED BREVE
+0208;N;LATIN CAPITAL LETTER I WITH DOUBLE GRAVE
+0209;N;LATIN SMALL LETTER I WITH DOUBLE GRAVE
+020A;N;LATIN CAPITAL LETTER I WITH INVERTED BREVE
+020B;N;LATIN SMALL LETTER I WITH INVERTED BREVE
+020C;N;LATIN CAPITAL LETTER O WITH DOUBLE GRAVE
+020D;N;LATIN SMALL LETTER O WITH DOUBLE GRAVE
+020E;N;LATIN CAPITAL LETTER O WITH INVERTED BREVE
+020F;N;LATIN SMALL LETTER O WITH INVERTED BREVE
+0210;N;LATIN CAPITAL LETTER R WITH DOUBLE GRAVE
+0211;N;LATIN SMALL LETTER R WITH DOUBLE GRAVE
+0212;N;LATIN CAPITAL LETTER R WITH INVERTED BREVE
+0213;N;LATIN SMALL LETTER R WITH INVERTED BREVE
+0214;N;LATIN CAPITAL LETTER U WITH DOUBLE GRAVE
+0215;N;LATIN SMALL LETTER U WITH DOUBLE GRAVE
+0216;N;LATIN CAPITAL LETTER U WITH INVERTED BREVE
+0217;N;LATIN SMALL LETTER U WITH INVERTED BREVE
+0218;N;LATIN CAPITAL LETTER S WITH COMMA BELOW
+0219;N;LATIN SMALL LETTER S WITH COMMA BELOW
+021A;N;LATIN CAPITAL LETTER T WITH COMMA BELOW
+021B;N;LATIN SMALL LETTER T WITH COMMA BELOW
+021C;N;LATIN CAPITAL LETTER YOGH
+021D;N;LATIN SMALL LETTER YOGH
+021E;N;LATIN CAPITAL LETTER H WITH CARON
+021F;N;LATIN SMALL LETTER H WITH CARON
+0222;N;LATIN CAPITAL LETTER OU
+0223;N;LATIN SMALL LETTER OU
+0224;N;LATIN CAPITAL LETTER Z WITH HOOK
+0225;N;LATIN SMALL LETTER Z WITH HOOK
+0226;N;LATIN CAPITAL LETTER A WITH DOT ABOVE
+0227;N;LATIN SMALL LETTER A WITH DOT ABOVE
+0228;N;LATIN CAPITAL LETTER E WITH CEDILLA
+0229;N;LATIN SMALL LETTER E WITH CEDILLA
+022A;N;LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON
+022B;N;LATIN SMALL LETTER O WITH DIAERESIS AND MACRON
+022C;N;LATIN CAPITAL LETTER O WITH TILDE AND MACRON
+022D;N;LATIN SMALL LETTER O WITH TILDE AND MACRON
+022E;N;LATIN CAPITAL LETTER O WITH DOT ABOVE
+022F;N;LATIN SMALL LETTER O WITH DOT ABOVE
+0230;N;LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON
+0231;N;LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON
+0232;N;LATIN CAPITAL LETTER Y WITH MACRON
+0233;N;LATIN SMALL LETTER Y WITH MACRON
+0250;N;LATIN SMALL LETTER TURNED A
+0251;A;LATIN SMALL LETTER ALPHA
+0252;N;LATIN SMALL LETTER TURNED ALPHA
+0253;N;LATIN SMALL LETTER B WITH HOOK
+0254;N;LATIN SMALL LETTER OPEN O
+0255;N;LATIN SMALL LETTER C WITH CURL
+0256;N;LATIN SMALL LETTER D WITH TAIL
+0257;N;LATIN SMALL LETTER D WITH HOOK
+0258;N;LATIN SMALL LETTER REVERSED E
+0259;N;LATIN SMALL LETTER SCHWA
+025A;N;LATIN SMALL LETTER SCHWA WITH HOOK
+025B;N;LATIN SMALL LETTER OPEN E
+025C;N;LATIN SMALL LETTER REVERSED OPEN E
+025D;N;LATIN SMALL LETTER REVERSED OPEN E WITH HOOK
+025E;N;LATIN SMALL LETTER CLOSED REVERSED OPEN E
+025F;N;LATIN SMALL LETTER DOTLESS J WITH STROKE
+0260;N;LATIN SMALL LETTER G WITH HOOK
+0261;A;LATIN SMALL LETTER SCRIPT G
+0262;N;LATIN LETTER SMALL CAPITAL G
+0263;N;LATIN SMALL LETTER GAMMA
+0264;N;LATIN SMALL LETTER RAMS HORN
+0265;N;LATIN SMALL LETTER TURNED H
+0266;N;LATIN SMALL LETTER H WITH HOOK
+0267;N;LATIN SMALL LETTER HENG WITH HOOK
+0268;N;LATIN SMALL LETTER I WITH STROKE
+0269;N;LATIN SMALL LETTER IOTA
+026A;N;LATIN LETTER SMALL CAPITAL I
+026B;N;LATIN SMALL LETTER L WITH MIDDLE TILDE
+026C;N;LATIN SMALL LETTER L WITH BELT
+026D;N;LATIN SMALL LETTER L WITH RETROFLEX HOOK
+026E;N;LATIN SMALL LETTER LEZH
+026F;N;LATIN SMALL LETTER TURNED M
+0270;N;LATIN SMALL LETTER TURNED M WITH LONG LEG
+0271;N;LATIN SMALL LETTER M WITH HOOK
+0272;N;LATIN SMALL LETTER N WITH LEFT HOOK
+0273;N;LATIN SMALL LETTER N WITH RETROFLEX HOOK
+0274;N;LATIN LETTER SMALL CAPITAL N
+0275;N;LATIN SMALL LETTER BARRED O
+0276;N;LATIN LETTER SMALL CAPITAL OE
+0277;N;LATIN SMALL LETTER CLOSED OMEGA
+0278;N;LATIN SMALL LETTER PHI
+0279;N;LATIN SMALL LETTER TURNED R
+027A;N;LATIN SMALL LETTER TURNED R WITH LONG LEG
+027B;N;LATIN SMALL LETTER TURNED R WITH HOOK
+027C;N;LATIN SMALL LETTER R WITH LONG LEG
+027D;N;LATIN SMALL LETTER R WITH TAIL
+027E;N;LATIN SMALL LETTER R WITH FISHHOOK
+027F;N;LATIN SMALL LETTER REVERSED R WITH FISHHOOK
+0280;N;LATIN LETTER SMALL CAPITAL R
+0281;N;LATIN LETTER SMALL CAPITAL INVERTED R
+0282;N;LATIN SMALL LETTER S WITH HOOK
+0283;N;LATIN SMALL LETTER ESH
+0284;N;LATIN SMALL LETTER DOTLESS J WITH STROKE AND HOOK
+0285;N;LATIN SMALL LETTER SQUAT REVERSED ESH
+0286;N;LATIN SMALL LETTER ESH WITH CURL
+0287;N;LATIN SMALL LETTER TURNED T
+0288;N;LATIN SMALL LETTER T WITH RETROFLEX HOOK
+0289;N;LATIN SMALL LETTER U BAR
+028A;N;LATIN SMALL LETTER UPSILON
+028B;N;LATIN SMALL LETTER V WITH HOOK
+028C;N;LATIN SMALL LETTER TURNED V
+028D;N;LATIN SMALL LETTER TURNED W
+028E;N;LATIN SMALL LETTER TURNED Y
+028F;N;LATIN LETTER SMALL CAPITAL Y
+0290;N;LATIN SMALL LETTER Z WITH RETROFLEX HOOK
+0291;N;LATIN SMALL LETTER Z WITH CURL
+0292;N;LATIN SMALL LETTER EZH
+0293;N;LATIN SMALL LETTER EZH WITH CURL
+0294;N;LATIN LETTER GLOTTAL STOP
+0295;N;LATIN LETTER PHARYNGEAL VOICED FRICATIVE
+0296;N;LATIN LETTER INVERTED GLOTTAL STOP
+0297;N;LATIN LETTER STRETCHED C
+0298;N;LATIN LETTER BILABIAL CLICK
+0299;N;LATIN LETTER SMALL CAPITAL B
+029A;N;LATIN SMALL LETTER CLOSED OPEN E
+029B;N;LATIN LETTER SMALL CAPITAL G WITH HOOK
+029C;N;LATIN LETTER SMALL CAPITAL H
+029D;N;LATIN SMALL LETTER J WITH CROSSED-TAIL
+029E;N;LATIN SMALL LETTER TURNED K
+029F;N;LATIN LETTER SMALL CAPITAL L
+02A0;N;LATIN SMALL LETTER Q WITH HOOK
+02A1;N;LATIN LETTER GLOTTAL STOP WITH STROKE
+02A2;N;LATIN LETTER REVERSED GLOTTAL STOP WITH STROKE
+02A3;N;LATIN SMALL LETTER DZ DIGRAPH
+02A4;N;LATIN SMALL LETTER DEZH DIGRAPH
+02A5;N;LATIN SMALL LETTER DZ DIGRAPH WITH CURL
+02A6;N;LATIN SMALL LETTER TS DIGRAPH
+02A7;N;LATIN SMALL LETTER TESH DIGRAPH
+02A8;N;LATIN SMALL LETTER TC DIGRAPH WITH CURL
+02A9;N;LATIN SMALL LETTER FENG DIGRAPH
+02AA;N;LATIN SMALL LETTER LS DIGRAPH
+02AB;N;LATIN SMALL LETTER LZ DIGRAPH
+02AC;N;LATIN LETTER BILABIAL PERCUSSIVE
+02AD;N;LATIN LETTER BIDENTAL PERCUSSIVE
+02B0;N;MODIFIER LETTER SMALL H
+02B1;N;MODIFIER LETTER SMALL H WITH HOOK
+02B2;N;MODIFIER LETTER SMALL J
+02B3;N;MODIFIER LETTER SMALL R
+02B4;N;MODIFIER LETTER SMALL TURNED R
+02B5;N;MODIFIER LETTER SMALL TURNED R WITH HOOK
+02B6;N;MODIFIER LETTER SMALL CAPITAL INVERTED R
+02B7;N;MODIFIER LETTER SMALL W
+02B8;N;MODIFIER LETTER SMALL Y
+02B9;N;MODIFIER LETTER PRIME
+02BA;N;MODIFIER LETTER DOUBLE PRIME
+02BB;N;MODIFIER LETTER TURNED COMMA
+02BC;N;MODIFIER LETTER APOSTROPHE
+02BD;N;MODIFIER LETTER REVERSED COMMA
+02BE;N;MODIFIER LETTER RIGHT HALF RING
+02BF;N;MODIFIER LETTER LEFT HALF RING
+02C0;N;MODIFIER LETTER GLOTTAL STOP
+02C1;N;MODIFIER LETTER REVERSED GLOTTAL STOP
+02C2;N;MODIFIER LETTER LEFT ARROWHEAD
+02C3;N;MODIFIER LETTER RIGHT ARROWHEAD
+02C4;N;MODIFIER LETTER UP ARROWHEAD
+02C5;N;MODIFIER LETTER DOWN ARROWHEAD
+02C6;N;MODIFIER LETTER CIRCUMFLEX ACCENT
+02C7;A;CARON
+02C8;N;MODIFIER LETTER VERTICAL LINE
+02C9;A;MODIFIER LETTER MACRON
+02CA;A;MODIFIER LETTER ACUTE ACCENT
+02CB;A;MODIFIER LETTER GRAVE ACCENT
+02CC;N;MODIFIER LETTER LOW VERTICAL LINE
+02CD;A;MODIFIER LETTER LOW MACRON
+02CE;N;MODIFIER LETTER LOW GRAVE ACCENT
+02CF;N;MODIFIER LETTER LOW ACUTE ACCENT
+02D0;A;MODIFIER LETTER TRIANGULAR COLON
+02D1;N;MODIFIER LETTER HALF TRIANGULAR COLON
+02D2;N;MODIFIER LETTER CENTRED RIGHT HALF RING
+02D3;N;MODIFIER LETTER CENTRED LEFT HALF RING
+02D4;N;MODIFIER LETTER UP TACK
+02D5;N;MODIFIER LETTER DOWN TACK
+02D6;N;MODIFIER LETTER PLUS SIGN
+02D7;N;MODIFIER LETTER MINUS SIGN
+02D8;A;BREVE
+02D9;A;DOT ABOVE
+02DA;A;RING ABOVE
+02DB;A;OGONEK
+02DC;N;SMALL TILDE
+02DD;A;DOUBLE ACUTE ACCENT
+02DE;N;MODIFIER LETTER RHOTIC HOOK
+02DF;N;MODIFIER LETTER CROSS ACCENT
+02E0;N;MODIFIER LETTER SMALL GAMMA
+02E1;N;MODIFIER LETTER SMALL L
+02E2;N;MODIFIER LETTER SMALL S
+02E3;N;MODIFIER LETTER SMALL X
+02E4;N;MODIFIER LETTER SMALL REVERSED GLOTTAL STOP
+02E5;N;MODIFIER LETTER EXTRA-HIGH TONE BAR
+02E6;N;MODIFIER LETTER HIGH TONE BAR
+02E7;N;MODIFIER LETTER MID TONE BAR
+02E8;N;MODIFIER LETTER LOW TONE BAR
+02E9;N;MODIFIER LETTER EXTRA-LOW TONE BAR
+02EA;N;MODIFIER LETTER YIN DEPARTING TONE MARK
+02EB;N;MODIFIER LETTER YANG DEPARTING TONE MARK
+02EC;N;MODIFIER LETTER VOICING
+02ED;N;MODIFIER LETTER UNASPIRATED
+02EE;N;MODIFIER LETTER DOUBLE APOSTROPHE
+0300;A;COMBINING GRAVE ACCENT
+0301;A;COMBINING ACUTE ACCENT
+0302;A;COMBINING CIRCUMFLEX ACCENT
+0303;A;COMBINING TILDE
+0304;A;COMBINING MACRON
+0305;A;COMBINING OVERLINE
+0306;A;COMBINING BREVE
+0307;A;COMBINING DOT ABOVE
+0308;A;COMBINING DIAERESIS
+0309;A;COMBINING HOOK ABOVE
+030A;A;COMBINING RING ABOVE
+030B;A;COMBINING DOUBLE ACUTE ACCENT
+030C;A;COMBINING CARON
+030D;A;COMBINING VERTICAL LINE ABOVE
+030E;A;COMBINING DOUBLE VERTICAL LINE ABOVE
+030F;A;COMBINING DOUBLE GRAVE ACCENT
+0310;A;COMBINING CANDRABINDU
+0311;A;COMBINING INVERTED BREVE
+0312;A;COMBINING TURNED COMMA ABOVE
+0313;A;COMBINING COMMA ABOVE
+0314;A;COMBINING REVERSED COMMA ABOVE
+0315;A;COMBINING COMMA ABOVE RIGHT
+0316;A;COMBINING GRAVE ACCENT BELOW
+0317;A;COMBINING ACUTE ACCENT BELOW
+0318;A;COMBINING LEFT TACK BELOW
+0319;A;COMBINING RIGHT TACK BELOW
+031A;A;COMBINING LEFT ANGLE ABOVE
+031B;A;COMBINING HORN
+031C;A;COMBINING LEFT HALF RING BELOW
+031D;A;COMBINING UP TACK BELOW
+031E;A;COMBINING DOWN TACK BELOW
+031F;A;COMBINING PLUS SIGN BELOW
+0320;A;COMBINING MINUS SIGN BELOW
+0321;A;COMBINING PALATALIZED HOOK BELOW
+0322;A;COMBINING RETROFLEX HOOK BELOW
+0323;A;COMBINING DOT BELOW
+0324;A;COMBINING DIAERESIS BELOW
+0325;A;COMBINING RING BELOW
+0326;A;COMBINING COMMA BELOW
+0327;A;COMBINING CEDILLA
+0328;A;COMBINING OGONEK
+0329;A;COMBINING VERTICAL LINE BELOW
+032A;A;COMBINING BRIDGE BELOW
+032B;A;COMBINING INVERTED DOUBLE ARCH BELOW
+032C;A;COMBINING CARON BELOW
+032D;A;COMBINING CIRCUMFLEX ACCENT BELOW
+032E;A;COMBINING BREVE BELOW
+032F;A;COMBINING INVERTED BREVE BELOW
+0330;A;COMBINING TILDE BELOW
+0331;A;COMBINING MACRON BELOW
+0332;A;COMBINING LOW LINE
+0333;A;COMBINING DOUBLE LOW LINE
+0334;A;COMBINING TILDE OVERLAY
+0335;A;COMBINING SHORT STROKE OVERLAY
+0336;A;COMBINING LONG STROKE OVERLAY
+0337;A;COMBINING SHORT SOLIDUS OVERLAY
+0338;A;COMBINING LONG SOLIDUS OVERLAY
+0339;A;COMBINING RIGHT HALF RING BELOW
+033A;A;COMBINING INVERTED BRIDGE BELOW
+033B;A;COMBINING SQUARE BELOW
+033C;A;COMBINING SEAGULL BELOW
+033D;A;COMBINING X ABOVE
+033E;A;COMBINING VERTICAL TILDE
+033F;A;COMBINING DOUBLE OVERLINE
+0340;A;COMBINING GRAVE TONE MARK
+0341;A;COMBINING ACUTE TONE MARK
+0342;A;COMBINING GREEK PERISPOMENI
+0343;A;COMBINING GREEK KORONIS
+0344;A;COMBINING GREEK DIALYTIKA TONOS
+0345;A;COMBINING GREEK YPOGEGRAMMENI
+0346;A;COMBINING BRIDGE ABOVE
+0347;A;COMBINING EQUALS SIGN BELOW
+0348;A;COMBINING DOUBLE VERTICAL LINE BELOW
+0349;A;COMBINING LEFT ANGLE BELOW
+034A;A;COMBINING NOT TILDE ABOVE
+034B;A;COMBINING HOMOTHETIC ABOVE
+034C;A;COMBINING ALMOST EQUAL TO ABOVE
+034D;A;COMBINING LEFT RIGHT ARROW BELOW
+034E;A;COMBINING UPWARDS ARROW BELOW
+0360;A;COMBINING DOUBLE TILDE
+0361;A;COMBINING DOUBLE INVERTED BREVE
+0362;A;COMBINING DOUBLE RIGHTWARDS ARROW BELOW
+0374;N;GREEK NUMERAL SIGN
+0375;N;GREEK LOWER NUMERAL SIGN
+037A;N;GREEK YPOGEGRAMMENI
+037E;N;GREEK QUESTION MARK
+0384;N;GREEK TONOS
+0385;N;GREEK DIALYTIKA TONOS
+0386;N;GREEK CAPITAL LETTER ALPHA WITH TONOS
+0387;N;GREEK ANO TELEIA
+0388;N;GREEK CAPITAL LETTER EPSILON WITH TONOS
+0389;N;GREEK CAPITAL LETTER ETA WITH TONOS
+038A;N;GREEK CAPITAL LETTER IOTA WITH TONOS
+038C;N;GREEK CAPITAL LETTER OMICRON WITH TONOS
+038E;N;GREEK CAPITAL LETTER UPSILON WITH TONOS
+038F;N;GREEK CAPITAL LETTER OMEGA WITH TONOS
+0390;N;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+0391;A;GREEK CAPITAL LETTER ALPHA
+0392;A;GREEK CAPITAL LETTER BETA
+0393;A;GREEK CAPITAL LETTER GAMMA
+0394;A;GREEK CAPITAL LETTER DELTA
+0395;A;GREEK CAPITAL LETTER EPSILON
+0396;A;GREEK CAPITAL LETTER ZETA
+0397;A;GREEK CAPITAL LETTER ETA
+0398;A;GREEK CAPITAL LETTER THETA
+0399;A;GREEK CAPITAL LETTER IOTA
+039A;A;GREEK CAPITAL LETTER KAPPA
+039B;A;GREEK CAPITAL LETTER LAMDA
+039C;A;GREEK CAPITAL LETTER MU
+039D;A;GREEK CAPITAL LETTER NU
+039E;A;GREEK CAPITAL LETTER XI
+039F;A;GREEK CAPITAL LETTER OMICRON
+03A0;A;GREEK CAPITAL LETTER PI
+03A1;A;GREEK CAPITAL LETTER RHO
+03A3;A;GREEK CAPITAL LETTER SIGMA
+03A4;A;GREEK CAPITAL LETTER TAU
+03A5;A;GREEK CAPITAL LETTER UPSILON
+03A6;A;GREEK CAPITAL LETTER PHI
+03A7;A;GREEK CAPITAL LETTER CHI
+03A8;A;GREEK CAPITAL LETTER PSI
+03A9;A;GREEK CAPITAL LETTER OMEGA
+03AA;N;GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
+03AB;N;GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+03AC;N;GREEK SMALL LETTER ALPHA WITH TONOS
+03AD;N;GREEK SMALL LETTER EPSILON WITH TONOS
+03AE;N;GREEK SMALL LETTER ETA WITH TONOS
+03AF;N;GREEK SMALL LETTER IOTA WITH TONOS
+03B0;N;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+03B1;A;GREEK SMALL LETTER ALPHA
+03B2;A;GREEK SMALL LETTER BETA
+03B3;A;GREEK SMALL LETTER GAMMA
+03B4;A;GREEK SMALL LETTER DELTA
+03B5;A;GREEK SMALL LETTER EPSILON
+03B6;A;GREEK SMALL LETTER ZETA
+03B7;A;GREEK SMALL LETTER ETA
+03B8;A;GREEK SMALL LETTER THETA
+03B9;A;GREEK SMALL LETTER IOTA
+03BA;A;GREEK SMALL LETTER KAPPA
+03BB;A;GREEK SMALL LETTER LAMDA
+03BC;A;GREEK SMALL LETTER MU
+03BD;A;GREEK SMALL LETTER NU
+03BE;A;GREEK SMALL LETTER XI
+03BF;A;GREEK SMALL LETTER OMICRON
+03C0;A;GREEK SMALL LETTER PI
+03C1;A;GREEK SMALL LETTER RHO
+03C2;N;GREEK SMALL LETTER FINAL SIGMA
+03C3;A;GREEK SMALL LETTER SIGMA
+03C4;A;GREEK SMALL LETTER TAU
+03C5;A;GREEK SMALL LETTER UPSILON
+03C6;A;GREEK SMALL LETTER PHI
+03C7;A;GREEK SMALL LETTER CHI
+03C8;A;GREEK SMALL LETTER PSI
+03C9;A;GREEK SMALL LETTER OMEGA
+03CA;N;GREEK SMALL LETTER IOTA WITH DIALYTIKA
+03CB;N;GREEK SMALL LETTER UPSILON WITH DIALYTIKA
+03CC;N;GREEK SMALL LETTER OMICRON WITH TONOS
+03CD;N;GREEK SMALL LETTER UPSILON WITH TONOS
+03CE;N;GREEK SMALL LETTER OMEGA WITH TONOS
+03D0;N;GREEK BETA SYMBOL
+03D1;N;GREEK THETA SYMBOL
+03D2;N;GREEK UPSILON WITH HOOK SYMBOL
+03D3;N;GREEK UPSILON WITH ACUTE AND HOOK SYMBOL
+03D4;N;GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL
+03D5;N;GREEK PHI SYMBOL
+03D6;N;GREEK PI SYMBOL
+03D7;N;GREEK KAI SYMBOL
+03DA;N;GREEK LETTER STIGMA
+03DB;N;GREEK SMALL LETTER STIGMA
+03DC;N;GREEK LETTER DIGAMMA
+03DD;N;GREEK SMALL LETTER DIGAMMA
+03DE;N;GREEK LETTER KOPPA
+03DF;N;GREEK SMALL LETTER KOPPA
+03E0;N;GREEK LETTER SAMPI
+03E1;N;GREEK SMALL LETTER SAMPI
+03E2;N;COPTIC CAPITAL LETTER SHEI
+03E3;N;COPTIC SMALL LETTER SHEI
+03E4;N;COPTIC CAPITAL LETTER FEI
+03E5;N;COPTIC SMALL LETTER FEI
+03E6;N;COPTIC CAPITAL LETTER KHEI
+03E7;N;COPTIC SMALL LETTER KHEI
+03E8;N;COPTIC CAPITAL LETTER HORI
+03E9;N;COPTIC SMALL LETTER HORI
+03EA;N;COPTIC CAPITAL LETTER GANGIA
+03EB;N;COPTIC SMALL LETTER GANGIA
+03EC;N;COPTIC CAPITAL LETTER SHIMA
+03ED;N;COPTIC SMALL LETTER SHIMA
+03EE;N;COPTIC CAPITAL LETTER DEI
+03EF;N;COPTIC SMALL LETTER DEI
+03F0;N;GREEK KAPPA SYMBOL
+03F1;N;GREEK RHO SYMBOL
+03F2;N;GREEK LUNATE SIGMA SYMBOL
+03F3;N;GREEK LETTER YOT
+0400;N;CYRILLIC CAPITAL LETTER IE WITH GRAVE
+0401;A;CYRILLIC CAPITAL LETTER IO
+0402;N;CYRILLIC CAPITAL LETTER DJE
+0403;N;CYRILLIC CAPITAL LETTER GJE
+0404;N;CYRILLIC CAPITAL LETTER UKRAINIAN IE
+0405;N;CYRILLIC CAPITAL LETTER DZE
+0406;N;CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+0407;N;CYRILLIC CAPITAL LETTER YI
+0408;N;CYRILLIC CAPITAL LETTER JE
+0409;N;CYRILLIC CAPITAL LETTER LJE
+040A;N;CYRILLIC CAPITAL LETTER NJE
+040B;N;CYRILLIC CAPITAL LETTER TSHE
+040C;N;CYRILLIC CAPITAL LETTER KJE
+040D;N;CYRILLIC CAPITAL LETTER I WITH GRAVE
+040E;N;CYRILLIC CAPITAL LETTER SHORT U
+040F;N;CYRILLIC CAPITAL LETTER DZHE
+0410;A;CYRILLIC CAPITAL LETTER A
+0411;A;CYRILLIC CAPITAL LETTER BE
+0412;A;CYRILLIC CAPITAL LETTER VE
+0413;A;CYRILLIC CAPITAL LETTER GHE
+0414;A;CYRILLIC CAPITAL LETTER DE
+0415;A;CYRILLIC CAPITAL LETTER IE
+0416;A;CYRILLIC CAPITAL LETTER ZHE
+0417;A;CYRILLIC CAPITAL LETTER ZE
+0418;A;CYRILLIC CAPITAL LETTER I
+0419;A;CYRILLIC CAPITAL LETTER SHORT I
+041A;A;CYRILLIC CAPITAL LETTER KA
+041B;A;CYRILLIC CAPITAL LETTER EL
+041C;A;CYRILLIC CAPITAL LETTER EM
+041D;A;CYRILLIC CAPITAL LETTER EN
+041E;A;CYRILLIC CAPITAL LETTER O
+041F;A;CYRILLIC CAPITAL LETTER PE
+0420;A;CYRILLIC CAPITAL LETTER ER
+0421;A;CYRILLIC CAPITAL LETTER ES
+0422;A;CYRILLIC CAPITAL LETTER TE
+0423;A;CYRILLIC CAPITAL LETTER U
+0424;A;CYRILLIC CAPITAL LETTER EF
+0425;A;CYRILLIC CAPITAL LETTER HA
+0426;A;CYRILLIC CAPITAL LETTER TSE
+0427;A;CYRILLIC CAPITAL LETTER CHE
+0428;A;CYRILLIC CAPITAL LETTER SHA
+0429;A;CYRILLIC CAPITAL LETTER SHCHA
+042A;A;CYRILLIC CAPITAL LETTER HARD SIGN
+042B;A;CYRILLIC CAPITAL LETTER YERU
+042C;A;CYRILLIC CAPITAL LETTER SOFT SIGN
+042D;A;CYRILLIC CAPITAL LETTER E
+042E;A;CYRILLIC CAPITAL LETTER YU
+042F;A;CYRILLIC CAPITAL LETTER YA
+0430;A;CYRILLIC SMALL LETTER A
+0431;A;CYRILLIC SMALL LETTER BE
+0432;A;CYRILLIC SMALL LETTER VE
+0433;A;CYRILLIC SMALL LETTER GHE
+0434;A;CYRILLIC SMALL LETTER DE
+0435;A;CYRILLIC SMALL LETTER IE
+0436;A;CYRILLIC SMALL LETTER ZHE
+0437;A;CYRILLIC SMALL LETTER ZE
+0438;A;CYRILLIC SMALL LETTER I
+0439;A;CYRILLIC SMALL LETTER SHORT I
+043A;A;CYRILLIC SMALL LETTER KA
+043B;A;CYRILLIC SMALL LETTER EL
+043C;A;CYRILLIC SMALL LETTER EM
+043D;A;CYRILLIC SMALL LETTER EN
+043E;A;CYRILLIC SMALL LETTER O
+043F;A;CYRILLIC SMALL LETTER PE
+0440;A;CYRILLIC SMALL LETTER ER
+0441;A;CYRILLIC SMALL LETTER ES
+0442;A;CYRILLIC SMALL LETTER TE
+0443;A;CYRILLIC SMALL LETTER U
+0444;A;CYRILLIC SMALL LETTER EF
+0445;A;CYRILLIC SMALL LETTER HA
+0446;A;CYRILLIC SMALL LETTER TSE
+0447;A;CYRILLIC SMALL LETTER CHE
+0448;A;CYRILLIC SMALL LETTER SHA
+0449;A;CYRILLIC SMALL LETTER SHCHA
+044A;A;CYRILLIC SMALL LETTER HARD SIGN
+044B;A;CYRILLIC SMALL LETTER YERU
+044C;A;CYRILLIC SMALL LETTER SOFT SIGN
+044D;A;CYRILLIC SMALL LETTER E
+044E;A;CYRILLIC SMALL LETTER YU
+044F;A;CYRILLIC SMALL LETTER YA
+0450;N;CYRILLIC SMALL LETTER IE WITH GRAVE
+0451;A;CYRILLIC SMALL LETTER IO
+0452;N;CYRILLIC SMALL LETTER DJE
+0453;N;CYRILLIC SMALL LETTER GJE
+0454;N;CYRILLIC SMALL LETTER UKRAINIAN IE
+0455;N;CYRILLIC SMALL LETTER DZE
+0456;N;CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+0457;N;CYRILLIC SMALL LETTER YI
+0458;N;CYRILLIC SMALL LETTER JE
+0459;N;CYRILLIC SMALL LETTER LJE
+045A;N;CYRILLIC SMALL LETTER NJE
+045B;N;CYRILLIC SMALL LETTER TSHE
+045C;N;CYRILLIC SMALL LETTER KJE
+045D;N;CYRILLIC SMALL LETTER I WITH GRAVE
+045E;N;CYRILLIC SMALL LETTER SHORT U
+045F;N;CYRILLIC SMALL LETTER DZHE
+0460;N;CYRILLIC CAPITAL LETTER OMEGA
+0461;N;CYRILLIC SMALL LETTER OMEGA
+0462;N;CYRILLIC CAPITAL LETTER YAT
+0463;N;CYRILLIC SMALL LETTER YAT
+0464;N;CYRILLIC CAPITAL LETTER IOTIFIED E
+0465;N;CYRILLIC SMALL LETTER IOTIFIED E
+0466;N;CYRILLIC CAPITAL LETTER LITTLE YUS
+0467;N;CYRILLIC SMALL LETTER LITTLE YUS
+0468;N;CYRILLIC CAPITAL LETTER IOTIFIED LITTLE YUS
+0469;N;CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS
+046A;N;CYRILLIC CAPITAL LETTER BIG YUS
+046B;N;CYRILLIC SMALL LETTER BIG YUS
+046C;N;CYRILLIC CAPITAL LETTER IOTIFIED BIG YUS
+046D;N;CYRILLIC SMALL LETTER IOTIFIED BIG YUS
+046E;N;CYRILLIC CAPITAL LETTER KSI
+046F;N;CYRILLIC SMALL LETTER KSI
+0470;N;CYRILLIC CAPITAL LETTER PSI
+0471;N;CYRILLIC SMALL LETTER PSI
+0472;N;CYRILLIC CAPITAL LETTER FITA
+0473;N;CYRILLIC SMALL LETTER FITA
+0474;N;CYRILLIC CAPITAL LETTER IZHITSA
+0475;N;CYRILLIC SMALL LETTER IZHITSA
+0476;N;CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT
+0477;N;CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT
+0478;N;CYRILLIC CAPITAL LETTER UK
+0479;N;CYRILLIC SMALL LETTER UK
+047A;N;CYRILLIC CAPITAL LETTER ROUND OMEGA
+047B;N;CYRILLIC SMALL LETTER ROUND OMEGA
+047C;N;CYRILLIC CAPITAL LETTER OMEGA WITH TITLO
+047D;N;CYRILLIC SMALL LETTER OMEGA WITH TITLO
+047E;N;CYRILLIC CAPITAL LETTER OT
+047F;N;CYRILLIC SMALL LETTER OT
+0480;N;CYRILLIC CAPITAL LETTER KOPPA
+0481;N;CYRILLIC SMALL LETTER KOPPA
+0482;N;CYRILLIC THOUSANDS SIGN
+0483;N;COMBINING CYRILLIC TITLO
+0484;N;COMBINING CYRILLIC PALATALIZATION
+0485;N;COMBINING CYRILLIC DASIA PNEUMATA
+0486;N;COMBINING CYRILLIC PSILI PNEUMATA
+0488;N;COMBINING CYRILLIC HUNDRED THOUSANDS SIGN
+0489;N;COMBINING CYRILLIC MILLIONS SIGN
+048C;N;CYRILLIC CAPITAL LETTER SEMISOFT SIGN
+048D;N;CYRILLIC SMALL LETTER SEMISOFT SIGN
+048E;N;CYRILLIC CAPITAL LETTER ER WITH TICK
+048F;N;CYRILLIC SMALL LETTER ER WITH TICK
+0490;N;CYRILLIC CAPITAL LETTER GHE WITH UPTURN
+0491;N;CYRILLIC SMALL LETTER GHE WITH UPTURN
+0492;N;CYRILLIC CAPITAL LETTER GHE WITH STROKE
+0493;N;CYRILLIC SMALL LETTER GHE WITH STROKE
+0494;N;CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK
+0495;N;CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK
+0496;N;CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER
+0497;N;CYRILLIC SMALL LETTER ZHE WITH DESCENDER
+0498;N;CYRILLIC CAPITAL LETTER ZE WITH DESCENDER
+0499;N;CYRILLIC SMALL LETTER ZE WITH DESCENDER
+049A;N;CYRILLIC CAPITAL LETTER KA WITH DESCENDER
+049B;N;CYRILLIC SMALL LETTER KA WITH DESCENDER
+049C;N;CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE
+049D;N;CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE
+049E;N;CYRILLIC CAPITAL LETTER KA WITH STROKE
+049F;N;CYRILLIC SMALL LETTER KA WITH STROKE
+04A0;N;CYRILLIC CAPITAL LETTER BASHKIR KA
+04A1;N;CYRILLIC SMALL LETTER BASHKIR KA
+04A2;N;CYRILLIC CAPITAL LETTER EN WITH DESCENDER
+04A3;N;CYRILLIC SMALL LETTER EN WITH DESCENDER
+04A4;N;CYRILLIC CAPITAL LIGATURE EN GHE
+04A5;N;CYRILLIC SMALL LIGATURE EN GHE
+04A6;N;CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK
+04A7;N;CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK
+04A8;N;CYRILLIC CAPITAL LETTER ABKHASIAN HA
+04A9;N;CYRILLIC SMALL LETTER ABKHASIAN HA
+04AA;N;CYRILLIC CAPITAL LETTER ES WITH DESCENDER
+04AB;N;CYRILLIC SMALL LETTER ES WITH DESCENDER
+04AC;N;CYRILLIC CAPITAL LETTER TE WITH DESCENDER
+04AD;N;CYRILLIC SMALL LETTER TE WITH DESCENDER
+04AE;N;CYRILLIC CAPITAL LETTER STRAIGHT U
+04AF;N;CYRILLIC SMALL LETTER STRAIGHT U
+04B0;N;CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE
+04B1;N;CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
+04B2;N;CYRILLIC CAPITAL LETTER HA WITH DESCENDER
+04B3;N;CYRILLIC SMALL LETTER HA WITH DESCENDER
+04B4;N;CYRILLIC CAPITAL LIGATURE TE TSE
+04B5;N;CYRILLIC SMALL LIGATURE TE TSE
+04B6;N;CYRILLIC CAPITAL LETTER CHE WITH DESCENDER
+04B7;N;CYRILLIC SMALL LETTER CHE WITH DESCENDER
+04B8;N;CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE
+04B9;N;CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE
+04BA;N;CYRILLIC CAPITAL LETTER SHHA
+04BB;N;CYRILLIC SMALL LETTER SHHA
+04BC;N;CYRILLIC CAPITAL LETTER ABKHASIAN CHE
+04BD;N;CYRILLIC SMALL LETTER ABKHASIAN CHE
+04BE;N;CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER
+04BF;N;CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER
+04C0;N;CYRILLIC LETTER PALOCHKA
+04C1;N;CYRILLIC CAPITAL LETTER ZHE WITH BREVE
+04C2;N;CYRILLIC SMALL LETTER ZHE WITH BREVE
+04C3;N;CYRILLIC CAPITAL LETTER KA WITH HOOK
+04C4;N;CYRILLIC SMALL LETTER KA WITH HOOK
+04C7;N;CYRILLIC CAPITAL LETTER EN WITH HOOK
+04C8;N;CYRILLIC SMALL LETTER EN WITH HOOK
+04CB;N;CYRILLIC CAPITAL LETTER KHAKASSIAN CHE
+04CC;N;CYRILLIC SMALL LETTER KHAKASSIAN CHE
+04D0;N;CYRILLIC CAPITAL LETTER A WITH BREVE
+04D1;N;CYRILLIC SMALL LETTER A WITH BREVE
+04D2;N;CYRILLIC CAPITAL LETTER A WITH DIAERESIS
+04D3;N;CYRILLIC SMALL LETTER A WITH DIAERESIS
+04D4;N;CYRILLIC CAPITAL LIGATURE A IE
+04D5;N;CYRILLIC SMALL LIGATURE A IE
+04D6;N;CYRILLIC CAPITAL LETTER IE WITH BREVE
+04D7;N;CYRILLIC SMALL LETTER IE WITH BREVE
+04D8;N;CYRILLIC CAPITAL LETTER SCHWA
+04D9;N;CYRILLIC SMALL LETTER SCHWA
+04DA;N;CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS
+04DB;N;CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS
+04DC;N;CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS
+04DD;N;CYRILLIC SMALL LETTER ZHE WITH DIAERESIS
+04DE;N;CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS
+04DF;N;CYRILLIC SMALL LETTER ZE WITH DIAERESIS
+04E0;N;CYRILLIC CAPITAL LETTER ABKHASIAN DZE
+04E1;N;CYRILLIC SMALL LETTER ABKHASIAN DZE
+04E2;N;CYRILLIC CAPITAL LETTER I WITH MACRON
+04E3;N;CYRILLIC SMALL LETTER I WITH MACRON
+04E4;N;CYRILLIC CAPITAL LETTER I WITH DIAERESIS
+04E5;N;CYRILLIC SMALL LETTER I WITH DIAERESIS
+04E6;N;CYRILLIC CAPITAL LETTER O WITH DIAERESIS
+04E7;N;CYRILLIC SMALL LETTER O WITH DIAERESIS
+04E8;N;CYRILLIC CAPITAL LETTER BARRED O
+04E9;N;CYRILLIC SMALL LETTER BARRED O
+04EA;N;CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS
+04EB;N;CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS
+04EC;N;CYRILLIC CAPITAL LETTER E WITH DIAERESIS
+04ED;N;CYRILLIC SMALL LETTER E WITH DIAERESIS
+04EE;N;CYRILLIC CAPITAL LETTER U WITH MACRON
+04EF;N;CYRILLIC SMALL LETTER U WITH MACRON
+04F0;N;CYRILLIC CAPITAL LETTER U WITH DIAERESIS
+04F1;N;CYRILLIC SMALL LETTER U WITH DIAERESIS
+04F2;N;CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE
+04F3;N;CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE
+04F4;N;CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS
+04F5;N;CYRILLIC SMALL LETTER CHE WITH DIAERESIS
+04F8;N;CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS
+04F9;N;CYRILLIC SMALL LETTER YERU WITH DIAERESIS
+0531;N;ARMENIAN CAPITAL LETTER AYB
+0532;N;ARMENIAN CAPITAL LETTER BEN
+0533;N;ARMENIAN CAPITAL LETTER GIM
+0534;N;ARMENIAN CAPITAL LETTER DA
+0535;N;ARMENIAN CAPITAL LETTER ECH
+0536;N;ARMENIAN CAPITAL LETTER ZA
+0537;N;ARMENIAN CAPITAL LETTER EH
+0538;N;ARMENIAN CAPITAL LETTER ET
+0539;N;ARMENIAN CAPITAL LETTER TO
+053A;N;ARMENIAN CAPITAL LETTER ZHE
+053B;N;ARMENIAN CAPITAL LETTER INI
+053C;N;ARMENIAN CAPITAL LETTER LIWN
+053D;N;ARMENIAN CAPITAL LETTER XEH
+053E;N;ARMENIAN CAPITAL LETTER CA
+053F;N;ARMENIAN CAPITAL LETTER KEN
+0540;N;ARMENIAN CAPITAL LETTER HO
+0541;N;ARMENIAN CAPITAL LETTER JA
+0542;N;ARMENIAN CAPITAL LETTER GHAD
+0543;N;ARMENIAN CAPITAL LETTER CHEH
+0544;N;ARMENIAN CAPITAL LETTER MEN
+0545;N;ARMENIAN CAPITAL LETTER YI
+0546;N;ARMENIAN CAPITAL LETTER NOW
+0547;N;ARMENIAN CAPITAL LETTER SHA
+0548;N;ARMENIAN CAPITAL LETTER VO
+0549;N;ARMENIAN CAPITAL LETTER CHA
+054A;N;ARMENIAN CAPITAL LETTER PEH
+054B;N;ARMENIAN CAPITAL LETTER JHEH
+054C;N;ARMENIAN CAPITAL LETTER RA
+054D;N;ARMENIAN CAPITAL LETTER SEH
+054E;N;ARMENIAN CAPITAL LETTER VEW
+054F;N;ARMENIAN CAPITAL LETTER TIWN
+0550;N;ARMENIAN CAPITAL LETTER REH
+0551;N;ARMENIAN CAPITAL LETTER CO
+0552;N;ARMENIAN CAPITAL LETTER YIWN
+0553;N;ARMENIAN CAPITAL LETTER PIWR
+0554;N;ARMENIAN CAPITAL LETTER KEH
+0555;N;ARMENIAN CAPITAL LETTER OH
+0556;N;ARMENIAN CAPITAL LETTER FEH
+0559;N;ARMENIAN MODIFIER LETTER LEFT HALF RING
+055A;N;ARMENIAN APOSTROPHE
+055B;N;ARMENIAN EMPHASIS MARK
+055C;N;ARMENIAN EXCLAMATION MARK
+055D;N;ARMENIAN COMMA
+055E;N;ARMENIAN QUESTION MARK
+055F;N;ARMENIAN ABBREVIATION MARK
+0561;N;ARMENIAN SMALL LETTER AYB
+0562;N;ARMENIAN SMALL LETTER BEN
+0563;N;ARMENIAN SMALL LETTER GIM
+0564;N;ARMENIAN SMALL LETTER DA
+0565;N;ARMENIAN SMALL LETTER ECH
+0566;N;ARMENIAN SMALL LETTER ZA
+0567;N;ARMENIAN SMALL LETTER EH
+0568;N;ARMENIAN SMALL LETTER ET
+0569;N;ARMENIAN SMALL LETTER TO
+056A;N;ARMENIAN SMALL LETTER ZHE
+056B;N;ARMENIAN SMALL LETTER INI
+056C;N;ARMENIAN SMALL LETTER LIWN
+056D;N;ARMENIAN SMALL LETTER XEH
+056E;N;ARMENIAN SMALL LETTER CA
+056F;N;ARMENIAN SMALL LETTER KEN
+0570;N;ARMENIAN SMALL LETTER HO
+0571;N;ARMENIAN SMALL LETTER JA
+0572;N;ARMENIAN SMALL LETTER GHAD
+0573;N;ARMENIAN SMALL LETTER CHEH
+0574;N;ARMENIAN SMALL LETTER MEN
+0575;N;ARMENIAN SMALL LETTER YI
+0576;N;ARMENIAN SMALL LETTER NOW
+0577;N;ARMENIAN SMALL LETTER SHA
+0578;N;ARMENIAN SMALL LETTER VO
+0579;N;ARMENIAN SMALL LETTER CHA
+057A;N;ARMENIAN SMALL LETTER PEH
+057B;N;ARMENIAN SMALL LETTER JHEH
+057C;N;ARMENIAN SMALL LETTER RA
+057D;N;ARMENIAN SMALL LETTER SEH
+057E;N;ARMENIAN SMALL LETTER VEW
+057F;N;ARMENIAN SMALL LETTER TIWN
+0580;N;ARMENIAN SMALL LETTER REH
+0581;N;ARMENIAN SMALL LETTER CO
+0582;N;ARMENIAN SMALL LETTER YIWN
+0583;N;ARMENIAN SMALL LETTER PIWR
+0584;N;ARMENIAN SMALL LETTER KEH
+0585;N;ARMENIAN SMALL LETTER OH
+0586;N;ARMENIAN SMALL LETTER FEH
+0587;N;ARMENIAN SMALL LIGATURE ECH YIWN
+0589;N;ARMENIAN FULL STOP
+058A;N;ARMENIAN HYPHEN
+0591;N;HEBREW ACCENT ETNAHTA
+0592;N;HEBREW ACCENT SEGOL
+0593;N;HEBREW ACCENT SHALSHELET
+0594;N;HEBREW ACCENT ZAQEF QATAN
+0595;N;HEBREW ACCENT ZAQEF GADOL
+0596;N;HEBREW ACCENT TIPEHA
+0597;N;HEBREW ACCENT REVIA
+0598;N;HEBREW ACCENT ZARQA
+0599;N;HEBREW ACCENT PASHTA
+059A;N;HEBREW ACCENT YETIV
+059B;N;HEBREW ACCENT TEVIR
+059C;N;HEBREW ACCENT GERESH
+059D;N;HEBREW ACCENT GERESH MUQDAM
+059E;N;HEBREW ACCENT GERSHAYIM
+059F;N;HEBREW ACCENT QARNEY PARA
+05A0;N;HEBREW ACCENT TELISHA GEDOLA
+05A1;N;HEBREW ACCENT PAZER
+05A3;N;HEBREW ACCENT MUNAH
+05A4;N;HEBREW ACCENT MAHAPAKH
+05A5;N;HEBREW ACCENT MERKHA
+05A6;N;HEBREW ACCENT MERKHA KEFULA
+05A7;N;HEBREW ACCENT DARGA
+05A8;N;HEBREW ACCENT QADMA
+05A9;N;HEBREW ACCENT TELISHA QETANA
+05AA;N;HEBREW ACCENT YERAH BEN YOMO
+05AB;N;HEBREW ACCENT OLE
+05AC;N;HEBREW ACCENT ILUY
+05AD;N;HEBREW ACCENT DEHI
+05AE;N;HEBREW ACCENT ZINOR
+05AF;N;HEBREW MARK MASORA CIRCLE
+05B0;N;HEBREW POINT SHEVA
+05B1;N;HEBREW POINT HATAF SEGOL
+05B2;N;HEBREW POINT HATAF PATAH
+05B3;N;HEBREW POINT HATAF QAMATS
+05B4;N;HEBREW POINT HIRIQ
+05B5;N;HEBREW POINT TSERE
+05B6;N;HEBREW POINT SEGOL
+05B7;N;HEBREW POINT PATAH
+05B8;N;HEBREW POINT QAMATS
+05B9;N;HEBREW POINT HOLAM
+05BB;N;HEBREW POINT QUBUTS
+05BC;N;HEBREW POINT DAGESH OR MAPIQ
+05BD;N;HEBREW POINT METEG
+05BE;N;HEBREW PUNCTUATION MAQAF
+05BF;N;HEBREW POINT RAFE
+05C0;N;HEBREW PUNCTUATION PASEQ
+05C1;N;HEBREW POINT SHIN DOT
+05C2;N;HEBREW POINT SIN DOT
+05C3;N;HEBREW PUNCTUATION SOF PASUQ
+05C4;N;HEBREW MARK UPPER DOT
+05D0;N;HEBREW LETTER ALEF
+05D1;N;HEBREW LETTER BET
+05D2;N;HEBREW LETTER GIMEL
+05D3;N;HEBREW LETTER DALET
+05D4;N;HEBREW LETTER HE
+05D5;N;HEBREW LETTER VAV
+05D6;N;HEBREW LETTER ZAYIN
+05D7;N;HEBREW LETTER HET
+05D8;N;HEBREW LETTER TET
+05D9;N;HEBREW LETTER YOD
+05DA;N;HEBREW LETTER FINAL KAF
+05DB;N;HEBREW LETTER KAF
+05DC;N;HEBREW LETTER LAMED
+05DD;N;HEBREW LETTER FINAL MEM
+05DE;N;HEBREW LETTER MEM
+05DF;N;HEBREW LETTER FINAL NUN
+05E0;N;HEBREW LETTER NUN
+05E1;N;HEBREW LETTER SAMEKH
+05E2;N;HEBREW LETTER AYIN
+05E3;N;HEBREW LETTER FINAL PE
+05E4;N;HEBREW LETTER PE
+05E5;N;HEBREW LETTER FINAL TSADI
+05E6;N;HEBREW LETTER TSADI
+05E7;N;HEBREW LETTER QOF
+05E8;N;HEBREW LETTER RESH
+05E9;N;HEBREW LETTER SHIN
+05EA;N;HEBREW LETTER TAV
+05F0;N;HEBREW LIGATURE YIDDISH DOUBLE VAV
+05F1;N;HEBREW LIGATURE YIDDISH VAV YOD
+05F2;N;HEBREW LIGATURE YIDDISH DOUBLE YOD
+05F3;N;HEBREW PUNCTUATION GERESH
+05F4;N;HEBREW PUNCTUATION GERSHAYIM
+060C;N;ARABIC COMMA
+061B;N;ARABIC SEMICOLON
+061F;N;ARABIC QUESTION MARK
+0621;N;ARABIC LETTER HAMZA
+0622;N;ARABIC LETTER ALEF WITH MADDA ABOVE
+0623;N;ARABIC LETTER ALEF WITH HAMZA ABOVE
+0624;N;ARABIC LETTER WAW WITH HAMZA ABOVE
+0625;N;ARABIC LETTER ALEF WITH HAMZA BELOW
+0626;N;ARABIC LETTER YEH WITH HAMZA ABOVE
+0627;N;ARABIC LETTER ALEF
+0628;N;ARABIC LETTER BEH
+0629;N;ARABIC LETTER TEH MARBUTA
+062A;N;ARABIC LETTER TEH
+062B;N;ARABIC LETTER THEH
+062C;N;ARABIC LETTER JEEM
+062D;N;ARABIC LETTER HAH
+062E;N;ARABIC LETTER KHAH
+062F;N;ARABIC LETTER DAL
+0630;N;ARABIC LETTER THAL
+0631;N;ARABIC LETTER REH
+0632;N;ARABIC LETTER ZAIN
+0633;N;ARABIC LETTER SEEN
+0634;N;ARABIC LETTER SHEEN
+0635;N;ARABIC LETTER SAD
+0636;N;ARABIC LETTER DAD
+0637;N;ARABIC LETTER TAH
+0638;N;ARABIC LETTER ZAH
+0639;N;ARABIC LETTER AIN
+063A;N;ARABIC LETTER GHAIN
+0640;N;ARABIC TATWEEL
+0641;N;ARABIC LETTER FEH
+0642;N;ARABIC LETTER QAF
+0643;N;ARABIC LETTER KAF
+0644;N;ARABIC LETTER LAM
+0645;N;ARABIC LETTER MEEM
+0646;N;ARABIC LETTER NOON
+0647;N;ARABIC LETTER HEH
+0648;N;ARABIC LETTER WAW
+0649;N;ARABIC LETTER ALEF MAKSURA
+064A;N;ARABIC LETTER YEH
+064B;N;ARABIC FATHATAN
+064C;N;ARABIC DAMMATAN
+064D;N;ARABIC KASRATAN
+064E;N;ARABIC FATHA
+064F;N;ARABIC DAMMA
+0650;N;ARABIC KASRA
+0651;N;ARABIC SHADDA
+0652;N;ARABIC SUKUN
+0653;N;ARABIC MADDAH ABOVE
+0654;N;ARABIC HAMZA ABOVE
+0655;N;ARABIC HAMZA BELOW
+0660;N;ARABIC-INDIC DIGIT ZERO
+0661;N;ARABIC-INDIC DIGIT ONE
+0662;N;ARABIC-INDIC DIGIT TWO
+0663;N;ARABIC-INDIC DIGIT THREE
+0664;N;ARABIC-INDIC DIGIT FOUR
+0665;N;ARABIC-INDIC DIGIT FIVE
+0666;N;ARABIC-INDIC DIGIT SIX
+0667;N;ARABIC-INDIC DIGIT SEVEN
+0668;N;ARABIC-INDIC DIGIT EIGHT
+0669;N;ARABIC-INDIC DIGIT NINE
+066A;N;ARABIC PERCENT SIGN
+066B;N;ARABIC DECIMAL SEPARATOR
+066C;N;ARABIC THOUSANDS SEPARATOR
+066D;N;ARABIC FIVE POINTED STAR
+0670;N;ARABIC LETTER SUPERSCRIPT ALEF
+0671;N;ARABIC LETTER ALEF WASLA
+0672;N;ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE
+0673;N;ARABIC LETTER ALEF WITH WAVY HAMZA BELOW
+0674;N;ARABIC LETTER HIGH HAMZA
+0675;N;ARABIC LETTER HIGH HAMZA ALEF
+0676;N;ARABIC LETTER HIGH HAMZA WAW
+0677;N;ARABIC LETTER U WITH HAMZA ABOVE
+0678;N;ARABIC LETTER HIGH HAMZA YEH
+0679;N;ARABIC LETTER TTEH
+067A;N;ARABIC LETTER TTEHEH
+067B;N;ARABIC LETTER BEEH
+067C;N;ARABIC LETTER TEH WITH RING
+067D;N;ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS
+067E;N;ARABIC LETTER PEH
+067F;N;ARABIC LETTER TEHEH
+0680;N;ARABIC LETTER BEHEH
+0681;N;ARABIC LETTER HAH WITH HAMZA ABOVE
+0682;N;ARABIC LETTER HAH WITH TWO DOTS VERTICAL ABOVE
+0683;N;ARABIC LETTER NYEH
+0684;N;ARABIC LETTER DYEH
+0685;N;ARABIC LETTER HAH WITH THREE DOTS ABOVE
+0686;N;ARABIC LETTER TCHEH
+0687;N;ARABIC LETTER TCHEHEH
+0688;N;ARABIC LETTER DDAL
+0689;N;ARABIC LETTER DAL WITH RING
+068A;N;ARABIC LETTER DAL WITH DOT BELOW
+068B;N;ARABIC LETTER DAL WITH DOT BELOW AND SMALL TAH
+068C;N;ARABIC LETTER DAHAL
+068D;N;ARABIC LETTER DDAHAL
+068E;N;ARABIC LETTER DUL
+068F;N;ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS
+0690;N;ARABIC LETTER DAL WITH FOUR DOTS ABOVE
+0691;N;ARABIC LETTER RREH
+0692;N;ARABIC LETTER REH WITH SMALL V
+0693;N;ARABIC LETTER REH WITH RING
+0694;N;ARABIC LETTER REH WITH DOT BELOW
+0695;N;ARABIC LETTER REH WITH SMALL V BELOW
+0696;N;ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE
+0697;N;ARABIC LETTER REH WITH TWO DOTS ABOVE
+0698;N;ARABIC LETTER JEH
+0699;N;ARABIC LETTER REH WITH FOUR DOTS ABOVE
+069A;N;ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE
+069B;N;ARABIC LETTER SEEN WITH THREE DOTS BELOW
+069C;N;ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE
+069D;N;ARABIC LETTER SAD WITH TWO DOTS BELOW
+069E;N;ARABIC LETTER SAD WITH THREE DOTS ABOVE
+069F;N;ARABIC LETTER TAH WITH THREE DOTS ABOVE
+06A0;N;ARABIC LETTER AIN WITH THREE DOTS ABOVE
+06A1;N;ARABIC LETTER DOTLESS FEH
+06A2;N;ARABIC LETTER FEH WITH DOT MOVED BELOW
+06A3;N;ARABIC LETTER FEH WITH DOT BELOW
+06A4;N;ARABIC LETTER VEH
+06A5;N;ARABIC LETTER FEH WITH THREE DOTS BELOW
+06A6;N;ARABIC LETTER PEHEH
+06A7;N;ARABIC LETTER QAF WITH DOT ABOVE
+06A8;N;ARABIC LETTER QAF WITH THREE DOTS ABOVE
+06A9;N;ARABIC LETTER KEHEH
+06AA;N;ARABIC LETTER SWASH KAF
+06AB;N;ARABIC LETTER KAF WITH RING
+06AC;N;ARABIC LETTER KAF WITH DOT ABOVE
+06AD;N;ARABIC LETTER NG
+06AE;N;ARABIC LETTER KAF WITH THREE DOTS BELOW
+06AF;N;ARABIC LETTER GAF
+06B0;N;ARABIC LETTER GAF WITH RING
+06B1;N;ARABIC LETTER NGOEH
+06B2;N;ARABIC LETTER GAF WITH TWO DOTS BELOW
+06B3;N;ARABIC LETTER GUEH
+06B4;N;ARABIC LETTER GAF WITH THREE DOTS ABOVE
+06B5;N;ARABIC LETTER LAM WITH SMALL V
+06B6;N;ARABIC LETTER LAM WITH DOT ABOVE
+06B7;N;ARABIC LETTER LAM WITH THREE DOTS ABOVE
+06B8;N;ARABIC LETTER LAM WITH THREE DOTS BELOW
+06B9;N;ARABIC LETTER NOON WITH DOT BELOW
+06BA;N;ARABIC LETTER NOON GHUNNA
+06BB;N;ARABIC LETTER RNOON
+06BC;N;ARABIC LETTER NOON WITH RING
+06BD;N;ARABIC LETTER NOON WITH THREE DOTS ABOVE
+06BE;N;ARABIC LETTER HEH DOACHASHMEE
+06BF;N;ARABIC LETTER TCHEH WITH DOT ABOVE
+06C0;N;ARABIC LETTER HEH WITH YEH ABOVE
+06C1;N;ARABIC LETTER HEH GOAL
+06C2;N;ARABIC LETTER HEH GOAL WITH HAMZA ABOVE
+06C3;N;ARABIC LETTER TEH MARBUTA GOAL
+06C4;N;ARABIC LETTER WAW WITH RING
+06C5;N;ARABIC LETTER KIRGHIZ OE
+06C6;N;ARABIC LETTER OE
+06C7;N;ARABIC LETTER U
+06C8;N;ARABIC LETTER YU
+06C9;N;ARABIC LETTER KIRGHIZ YU
+06CA;N;ARABIC LETTER WAW WITH TWO DOTS ABOVE
+06CB;N;ARABIC LETTER VE
+06CC;N;ARABIC LETTER FARSI YEH
+06CD;N;ARABIC LETTER YEH WITH TAIL
+06CE;N;ARABIC LETTER YEH WITH SMALL V
+06CF;N;ARABIC LETTER WAW WITH DOT ABOVE
+06D0;N;ARABIC LETTER E
+06D1;N;ARABIC LETTER YEH WITH THREE DOTS BELOW
+06D2;N;ARABIC LETTER YEH BARREE
+06D3;N;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE
+06D4;N;ARABIC FULL STOP
+06D5;N;ARABIC LETTER AE
+06D6;N;ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA
+06D7;N;ARABIC SMALL HIGH LIGATURE QAF WITH LAM WITH ALEF MAKSURA
+06D8;N;ARABIC SMALL HIGH MEEM INITIAL FORM
+06D9;N;ARABIC SMALL HIGH LAM ALEF
+06DA;N;ARABIC SMALL HIGH JEEM
+06DB;N;ARABIC SMALL HIGH THREE DOTS
+06DC;N;ARABIC SMALL HIGH SEEN
+06DD;N;ARABIC END OF AYAH
+06DE;N;ARABIC START OF RUB EL HIZB
+06DF;N;ARABIC SMALL HIGH ROUNDED ZERO
+06E0;N;ARABIC SMALL HIGH UPRIGHT RECTANGULAR ZERO
+06E1;N;ARABIC SMALL HIGH DOTLESS HEAD OF KHAH
+06E2;N;ARABIC SMALL HIGH MEEM ISOLATED FORM
+06E3;N;ARABIC SMALL LOW SEEN
+06E4;N;ARABIC SMALL HIGH MADDA
+06E5;N;ARABIC SMALL WAW
+06E6;N;ARABIC SMALL YEH
+06E7;N;ARABIC SMALL HIGH YEH
+06E8;N;ARABIC SMALL HIGH NOON
+06E9;N;ARABIC PLACE OF SAJDAH
+06EA;N;ARABIC EMPTY CENTRE LOW STOP
+06EB;N;ARABIC EMPTY CENTRE HIGH STOP
+06EC;N;ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE
+06ED;N;ARABIC SMALL LOW MEEM
+06F0;N;EXTENDED ARABIC-INDIC DIGIT ZERO
+06F1;N;EXTENDED ARABIC-INDIC DIGIT ONE
+06F2;N;EXTENDED ARABIC-INDIC DIGIT TWO
+06F3;N;EXTENDED ARABIC-INDIC DIGIT THREE
+06F4;N;EXTENDED ARABIC-INDIC DIGIT FOUR
+06F5;N;EXTENDED ARABIC-INDIC DIGIT FIVE
+06F6;N;EXTENDED ARABIC-INDIC DIGIT SIX
+06F7;N;EXTENDED ARABIC-INDIC DIGIT SEVEN
+06F8;N;EXTENDED ARABIC-INDIC DIGIT EIGHT
+06F9;N;EXTENDED ARABIC-INDIC DIGIT NINE
+06FA;N;ARABIC LETTER SHEEN WITH DOT BELOW
+06FB;N;ARABIC LETTER DAD WITH DOT BELOW
+06FC;N;ARABIC LETTER GHAIN WITH DOT BELOW
+06FD;N;ARABIC SIGN SINDHI AMPERSAND
+06FE;N;ARABIC SIGN SINDHI POSTPOSITION MEN
+0700;N;SYRIAC END OF PARAGRAPH
+0701;N;SYRIAC SUPRALINEAR FULL STOP
+0702;N;SYRIAC SUBLINEAR FULL STOP
+0703;N;SYRIAC SUPRALINEAR COLON
+0704;N;SYRIAC SUBLINEAR COLON
+0705;N;SYRIAC HORIZONTAL COLON
+0706;N;SYRIAC COLON SKEWED LEFT
+0707;N;SYRIAC COLON SKEWED RIGHT
+0708;N;SYRIAC SUPRALINEAR COLON SKEWED LEFT
+0709;N;SYRIAC SUBLINEAR COLON SKEWED RIGHT
+070A;N;SYRIAC CONTRACTION
+070B;N;SYRIAC HARKLEAN OBELUS
+070C;N;SYRIAC HARKLEAN METOBELUS
+070D;N;SYRIAC HARKLEAN ASTERISCUS
+070F;N;SYRIAC ABBREVIATION MARK
+0710;N;SYRIAC LETTER ALAPH
+0711;N;SYRIAC LETTER SUPERSCRIPT ALAPH
+0712;N;SYRIAC LETTER BETH
+0713;N;SYRIAC LETTER GAMAL
+0714;N;SYRIAC LETTER GAMAL GARSHUNI
+0715;N;SYRIAC LETTER DALATH
+0716;N;SYRIAC LETTER DOTLESS DALATH RISH
+0717;N;SYRIAC LETTER HE
+0718;N;SYRIAC LETTER WAW
+0719;N;SYRIAC LETTER ZAIN
+071A;N;SYRIAC LETTER HETH
+071B;N;SYRIAC LETTER TETH
+071C;N;SYRIAC LETTER TETH GARSHUNI
+071D;N;SYRIAC LETTER YUDH
+071E;N;SYRIAC LETTER YUDH HE
+071F;N;SYRIAC LETTER KAPH
+0720;N;SYRIAC LETTER LAMADH
+0721;N;SYRIAC LETTER MIM
+0722;N;SYRIAC LETTER NUN
+0723;N;SYRIAC LETTER SEMKATH
+0724;N;SYRIAC LETTER FINAL SEMKATH
+0725;N;SYRIAC LETTER E
+0726;N;SYRIAC LETTER PE
+0727;N;SYRIAC LETTER REVERSED PE
+0728;N;SYRIAC LETTER SADHE
+0729;N;SYRIAC LETTER QAPH
+072A;N;SYRIAC LETTER RISH
+072B;N;SYRIAC LETTER SHIN
+072C;N;SYRIAC LETTER TAW
+0730;N;SYRIAC PTHAHA ABOVE
+0731;N;SYRIAC PTHAHA BELOW
+0732;N;SYRIAC PTHAHA DOTTED
+0733;N;SYRIAC ZQAPHA ABOVE
+0734;N;SYRIAC ZQAPHA BELOW
+0735;N;SYRIAC ZQAPHA DOTTED
+0736;N;SYRIAC RBASA ABOVE
+0737;N;SYRIAC RBASA BELOW
+0738;N;SYRIAC DOTTED ZLAMA HORIZONTAL
+0739;N;SYRIAC DOTTED ZLAMA ANGULAR
+073A;N;SYRIAC HBASA ABOVE
+073B;N;SYRIAC HBASA BELOW
+073C;N;SYRIAC HBASA-ESASA DOTTED
+073D;N;SYRIAC ESASA ABOVE
+073E;N;SYRIAC ESASA BELOW
+073F;N;SYRIAC RWAHA
+0740;N;SYRIAC FEMININE DOT
+0741;N;SYRIAC QUSHSHAYA
+0742;N;SYRIAC RUKKAKHA
+0743;N;SYRIAC TWO VERTICAL DOTS ABOVE
+0744;N;SYRIAC TWO VERTICAL DOTS BELOW
+0745;N;SYRIAC THREE DOTS ABOVE
+0746;N;SYRIAC THREE DOTS BELOW
+0747;N;SYRIAC OBLIQUE LINE ABOVE
+0748;N;SYRIAC OBLIQUE LINE BELOW
+0749;N;SYRIAC MUSIC
+074A;N;SYRIAC BARREKH
+0780;N;THAANA LETTER HAA
+0781;N;THAANA LETTER SHAVIYANI
+0782;N;THAANA LETTER NOONU
+0783;N;THAANA LETTER RAA
+0784;N;THAANA LETTER BAA
+0785;N;THAANA LETTER LHAVIYANI
+0786;N;THAANA LETTER KAAFU
+0787;N;THAANA LETTER ALIFU
+0788;N;THAANA LETTER VAAVU
+0789;N;THAANA LETTER MEEMU
+078A;N;THAANA LETTER FAAFU
+078B;N;THAANA LETTER DHAALU
+078C;N;THAANA LETTER THAA
+078D;N;THAANA LETTER LAAMU
+078E;N;THAANA LETTER GAAFU
+078F;N;THAANA LETTER GNAVIYANI
+0790;N;THAANA LETTER SEENU
+0791;N;THAANA LETTER DAVIYANI
+0792;N;THAANA LETTER ZAVIYANI
+0793;N;THAANA LETTER TAVIYANI
+0794;N;THAANA LETTER YAA
+0795;N;THAANA LETTER PAVIYANI
+0796;N;THAANA LETTER JAVIYANI
+0797;N;THAANA LETTER CHAVIYANI
+0798;N;THAANA LETTER TTAA
+0799;N;THAANA LETTER HHAA
+079A;N;THAANA LETTER KHAA
+079B;N;THAANA LETTER THAALU
+079C;N;THAANA LETTER ZAA
+079D;N;THAANA LETTER SHEENU
+079E;N;THAANA LETTER SAADHU
+079F;N;THAANA LETTER DAADHU
+07A0;N;THAANA LETTER TO
+07A1;N;THAANA LETTER ZO
+07A2;N;THAANA LETTER AINU
+07A3;N;THAANA LETTER GHAINU
+07A4;N;THAANA LETTER QAAFU
+07A5;N;THAANA LETTER WAAVU
+07A6;N;THAANA ABAFILI
+07A7;N;THAANA AABAAFILI
+07A8;N;THAANA IBIFILI
+07A9;N;THAANA EEBEEFILI
+07AA;N;THAANA UBUFILI
+07AB;N;THAANA OOBOOFILI
+07AC;N;THAANA EBEFILI
+07AD;N;THAANA EYBEYFILI
+07AE;N;THAANA OBOFILI
+07AF;N;THAANA OABOAFILI
+07B0;N;THAANA SUKUN
+0901;N;DEVANAGARI SIGN CANDRABINDU
+0902;N;DEVANAGARI SIGN ANUSVARA
+0903;N;DEVANAGARI SIGN VISARGA
+0905;N;DEVANAGARI LETTER A
+0906;N;DEVANAGARI LETTER AA
+0907;N;DEVANAGARI LETTER I
+0908;N;DEVANAGARI LETTER II
+0909;N;DEVANAGARI LETTER U
+090A;N;DEVANAGARI LETTER UU
+090B;N;DEVANAGARI LETTER VOCALIC R
+090C;N;DEVANAGARI LETTER VOCALIC L
+090D;N;DEVANAGARI LETTER CANDRA E
+090E;N;DEVANAGARI LETTER SHORT E
+090F;N;DEVANAGARI LETTER E
+0910;N;DEVANAGARI LETTER AI
+0911;N;DEVANAGARI LETTER CANDRA O
+0912;N;DEVANAGARI LETTER SHORT O
+0913;N;DEVANAGARI LETTER O
+0914;N;DEVANAGARI LETTER AU
+0915;N;DEVANAGARI LETTER KA
+0916;N;DEVANAGARI LETTER KHA
+0917;N;DEVANAGARI LETTER GA
+0918;N;DEVANAGARI LETTER GHA
+0919;N;DEVANAGARI LETTER NGA
+091A;N;DEVANAGARI LETTER CA
+091B;N;DEVANAGARI LETTER CHA
+091C;N;DEVANAGARI LETTER JA
+091D;N;DEVANAGARI LETTER JHA
+091E;N;DEVANAGARI LETTER NYA
+091F;N;DEVANAGARI LETTER TTA
+0920;N;DEVANAGARI LETTER TTHA
+0921;N;DEVANAGARI LETTER DDA
+0922;N;DEVANAGARI LETTER DDHA
+0923;N;DEVANAGARI LETTER NNA
+0924;N;DEVANAGARI LETTER TA
+0925;N;DEVANAGARI LETTER THA
+0926;N;DEVANAGARI LETTER DA
+0927;N;DEVANAGARI LETTER DHA
+0928;N;DEVANAGARI LETTER NA
+0929;N;DEVANAGARI LETTER NNNA
+092A;N;DEVANAGARI LETTER PA
+092B;N;DEVANAGARI LETTER PHA
+092C;N;DEVANAGARI LETTER BA
+092D;N;DEVANAGARI LETTER BHA
+092E;N;DEVANAGARI LETTER MA
+092F;N;DEVANAGARI LETTER YA
+0930;N;DEVANAGARI LETTER RA
+0931;N;DEVANAGARI LETTER RRA
+0932;N;DEVANAGARI LETTER LA
+0933;N;DEVANAGARI LETTER LLA
+0934;N;DEVANAGARI LETTER LLLA
+0935;N;DEVANAGARI LETTER VA
+0936;N;DEVANAGARI LETTER SHA
+0937;N;DEVANAGARI LETTER SSA
+0938;N;DEVANAGARI LETTER SA
+0939;N;DEVANAGARI LETTER HA
+093C;N;DEVANAGARI SIGN NUKTA
+093D;N;DEVANAGARI SIGN AVAGRAHA
+093E;N;DEVANAGARI VOWEL SIGN AA
+093F;N;DEVANAGARI VOWEL SIGN I
+0940;N;DEVANAGARI VOWEL SIGN II
+0941;N;DEVANAGARI VOWEL SIGN U
+0942;N;DEVANAGARI VOWEL SIGN UU
+0943;N;DEVANAGARI VOWEL SIGN VOCALIC R
+0944;N;DEVANAGARI VOWEL SIGN VOCALIC RR
+0945;N;DEVANAGARI VOWEL SIGN CANDRA E
+0946;N;DEVANAGARI VOWEL SIGN SHORT E
+0947;N;DEVANAGARI VOWEL SIGN E
+0948;N;DEVANAGARI VOWEL SIGN AI
+0949;N;DEVANAGARI VOWEL SIGN CANDRA O
+094A;N;DEVANAGARI VOWEL SIGN SHORT O
+094B;N;DEVANAGARI VOWEL SIGN O
+094C;N;DEVANAGARI VOWEL SIGN AU
+094D;N;DEVANAGARI SIGN VIRAMA
+0950;N;DEVANAGARI OM
+0951;N;DEVANAGARI STRESS SIGN UDATTA
+0952;N;DEVANAGARI STRESS SIGN ANUDATTA
+0953;N;DEVANAGARI GRAVE ACCENT
+0954;N;DEVANAGARI ACUTE ACCENT
+0958;N;DEVANAGARI LETTER QA
+0959;N;DEVANAGARI LETTER KHHA
+095A;N;DEVANAGARI LETTER GHHA
+095B;N;DEVANAGARI LETTER ZA
+095C;N;DEVANAGARI LETTER DDDHA
+095D;N;DEVANAGARI LETTER RHA
+095E;N;DEVANAGARI LETTER FA
+095F;N;DEVANAGARI LETTER YYA
+0960;N;DEVANAGARI LETTER VOCALIC RR
+0961;N;DEVANAGARI LETTER VOCALIC LL
+0962;N;DEVANAGARI VOWEL SIGN VOCALIC L
+0963;N;DEVANAGARI VOWEL SIGN VOCALIC LL
+0964;N;DEVANAGARI DANDA
+0965;N;DEVANAGARI DOUBLE DANDA
+0966;N;DEVANAGARI DIGIT ZERO
+0967;N;DEVANAGARI DIGIT ONE
+0968;N;DEVANAGARI DIGIT TWO
+0969;N;DEVANAGARI DIGIT THREE
+096A;N;DEVANAGARI DIGIT FOUR
+096B;N;DEVANAGARI DIGIT FIVE
+096C;N;DEVANAGARI DIGIT SIX
+096D;N;DEVANAGARI DIGIT SEVEN
+096E;N;DEVANAGARI DIGIT EIGHT
+096F;N;DEVANAGARI DIGIT NINE
+0970;N;DEVANAGARI ABBREVIATION SIGN
+0981;N;BENGALI SIGN CANDRABINDU
+0982;N;BENGALI SIGN ANUSVARA
+0983;N;BENGALI SIGN VISARGA
+0985;N;BENGALI LETTER A
+0986;N;BENGALI LETTER AA
+0987;N;BENGALI LETTER I
+0988;N;BENGALI LETTER II
+0989;N;BENGALI LETTER U
+098A;N;BENGALI LETTER UU
+098B;N;BENGALI LETTER VOCALIC R
+098C;N;BENGALI LETTER VOCALIC L
+098F;N;BENGALI LETTER E
+0990;N;BENGALI LETTER AI
+0993;N;BENGALI LETTER O
+0994;N;BENGALI LETTER AU
+0995;N;BENGALI LETTER KA
+0996;N;BENGALI LETTER KHA
+0997;N;BENGALI LETTER GA
+0998;N;BENGALI LETTER GHA
+0999;N;BENGALI LETTER NGA
+099A;N;BENGALI LETTER CA
+099B;N;BENGALI LETTER CHA
+099C;N;BENGALI LETTER JA
+099D;N;BENGALI LETTER JHA
+099E;N;BENGALI LETTER NYA
+099F;N;BENGALI LETTER TTA
+09A0;N;BENGALI LETTER TTHA
+09A1;N;BENGALI LETTER DDA
+09A2;N;BENGALI LETTER DDHA
+09A3;N;BENGALI LETTER NNA
+09A4;N;BENGALI LETTER TA
+09A5;N;BENGALI LETTER THA
+09A6;N;BENGALI LETTER DA
+09A7;N;BENGALI LETTER DHA
+09A8;N;BENGALI LETTER NA
+09AA;N;BENGALI LETTER PA
+09AB;N;BENGALI LETTER PHA
+09AC;N;BENGALI LETTER BA
+09AD;N;BENGALI LETTER BHA
+09AE;N;BENGALI LETTER MA
+09AF;N;BENGALI LETTER YA
+09B0;N;BENGALI LETTER RA
+09B2;N;BENGALI LETTER LA
+09B6;N;BENGALI LETTER SHA
+09B7;N;BENGALI LETTER SSA
+09B8;N;BENGALI LETTER SA
+09B9;N;BENGALI LETTER HA
+09BC;N;BENGALI SIGN NUKTA
+09BE;N;BENGALI VOWEL SIGN AA
+09BF;N;BENGALI VOWEL SIGN I
+09C0;N;BENGALI VOWEL SIGN II
+09C1;N;BENGALI VOWEL SIGN U
+09C2;N;BENGALI VOWEL SIGN UU
+09C3;N;BENGALI VOWEL SIGN VOCALIC R
+09C4;N;BENGALI VOWEL SIGN VOCALIC RR
+09C7;N;BENGALI VOWEL SIGN E
+09C8;N;BENGALI VOWEL SIGN AI
+09CB;N;BENGALI VOWEL SIGN O
+09CC;N;BENGALI VOWEL SIGN AU
+09CD;N;BENGALI SIGN VIRAMA
+09D7;N;BENGALI AU LENGTH MARK
+09DC;N;BENGALI LETTER RRA
+09DD;N;BENGALI LETTER RHA
+09DF;N;BENGALI LETTER YYA
+09E0;N;BENGALI LETTER VOCALIC RR
+09E1;N;BENGALI LETTER VOCALIC LL
+09E2;N;BENGALI VOWEL SIGN VOCALIC L
+09E3;N;BENGALI VOWEL SIGN VOCALIC LL
+09E6;N;BENGALI DIGIT ZERO
+09E7;N;BENGALI DIGIT ONE
+09E8;N;BENGALI DIGIT TWO
+09E9;N;BENGALI DIGIT THREE
+09EA;N;BENGALI DIGIT FOUR
+09EB;N;BENGALI DIGIT FIVE
+09EC;N;BENGALI DIGIT SIX
+09ED;N;BENGALI DIGIT SEVEN
+09EE;N;BENGALI DIGIT EIGHT
+09EF;N;BENGALI DIGIT NINE
+09F0;N;BENGALI LETTER RA WITH MIDDLE DIAGONAL
+09F1;N;BENGALI LETTER RA WITH LOWER DIAGONAL
+09F2;N;BENGALI RUPEE MARK
+09F3;N;BENGALI RUPEE SIGN
+09F4;N;BENGALI CURRENCY NUMERATOR ONE
+09F5;N;BENGALI CURRENCY NUMERATOR TWO
+09F6;N;BENGALI CURRENCY NUMERATOR THREE
+09F7;N;BENGALI CURRENCY NUMERATOR FOUR
+09F8;N;BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR
+09F9;N;BENGALI CURRENCY DENOMINATOR SIXTEEN
+09FA;N;BENGALI ISSHAR
+0A02;N;GURMUKHI SIGN BINDI
+0A05;N;GURMUKHI LETTER A
+0A06;N;GURMUKHI LETTER AA
+0A07;N;GURMUKHI LETTER I
+0A08;N;GURMUKHI LETTER II
+0A09;N;GURMUKHI LETTER U
+0A0A;N;GURMUKHI LETTER UU
+0A0F;N;GURMUKHI LETTER EE
+0A10;N;GURMUKHI LETTER AI
+0A13;N;GURMUKHI LETTER OO
+0A14;N;GURMUKHI LETTER AU
+0A15;N;GURMUKHI LETTER KA
+0A16;N;GURMUKHI LETTER KHA
+0A17;N;GURMUKHI LETTER GA
+0A18;N;GURMUKHI LETTER GHA
+0A19;N;GURMUKHI LETTER NGA
+0A1A;N;GURMUKHI LETTER CA
+0A1B;N;GURMUKHI LETTER CHA
+0A1C;N;GURMUKHI LETTER JA
+0A1D;N;GURMUKHI LETTER JHA
+0A1E;N;GURMUKHI LETTER NYA
+0A1F;N;GURMUKHI LETTER TTA
+0A20;N;GURMUKHI LETTER TTHA
+0A21;N;GURMUKHI LETTER DDA
+0A22;N;GURMUKHI LETTER DDHA
+0A23;N;GURMUKHI LETTER NNA
+0A24;N;GURMUKHI LETTER TA
+0A25;N;GURMUKHI LETTER THA
+0A26;N;GURMUKHI LETTER DA
+0A27;N;GURMUKHI LETTER DHA
+0A28;N;GURMUKHI LETTER NA
+0A2A;N;GURMUKHI LETTER PA
+0A2B;N;GURMUKHI LETTER PHA
+0A2C;N;GURMUKHI LETTER BA
+0A2D;N;GURMUKHI LETTER BHA
+0A2E;N;GURMUKHI LETTER MA
+0A2F;N;GURMUKHI LETTER YA
+0A30;N;GURMUKHI LETTER RA
+0A32;N;GURMUKHI LETTER LA
+0A33;N;GURMUKHI LETTER LLA
+0A35;N;GURMUKHI LETTER VA
+0A36;N;GURMUKHI LETTER SHA
+0A38;N;GURMUKHI LETTER SA
+0A39;N;GURMUKHI LETTER HA
+0A3C;N;GURMUKHI SIGN NUKTA
+0A3E;N;GURMUKHI VOWEL SIGN AA
+0A3F;N;GURMUKHI VOWEL SIGN I
+0A40;N;GURMUKHI VOWEL SIGN II
+0A41;N;GURMUKHI VOWEL SIGN U
+0A42;N;GURMUKHI VOWEL SIGN UU
+0A47;N;GURMUKHI VOWEL SIGN EE
+0A48;N;GURMUKHI VOWEL SIGN AI
+0A4B;N;GURMUKHI VOWEL SIGN OO
+0A4C;N;GURMUKHI VOWEL SIGN AU
+0A4D;N;GURMUKHI SIGN VIRAMA
+0A59;N;GURMUKHI LETTER KHHA
+0A5A;N;GURMUKHI LETTER GHHA
+0A5B;N;GURMUKHI LETTER ZA
+0A5C;N;GURMUKHI LETTER RRA
+0A5E;N;GURMUKHI LETTER FA
+0A66;N;GURMUKHI DIGIT ZERO
+0A67;N;GURMUKHI DIGIT ONE
+0A68;N;GURMUKHI DIGIT TWO
+0A69;N;GURMUKHI DIGIT THREE
+0A6A;N;GURMUKHI DIGIT FOUR
+0A6B;N;GURMUKHI DIGIT FIVE
+0A6C;N;GURMUKHI DIGIT SIX
+0A6D;N;GURMUKHI DIGIT SEVEN
+0A6E;N;GURMUKHI DIGIT EIGHT
+0A6F;N;GURMUKHI DIGIT NINE
+0A70;N;GURMUKHI TIPPI
+0A71;N;GURMUKHI ADDAK
+0A72;N;GURMUKHI IRI
+0A73;N;GURMUKHI URA
+0A74;N;GURMUKHI EK ONKAR
+0A81;N;GUJARATI SIGN CANDRABINDU
+0A82;N;GUJARATI SIGN ANUSVARA
+0A83;N;GUJARATI SIGN VISARGA
+0A85;N;GUJARATI LETTER A
+0A86;N;GUJARATI LETTER AA
+0A87;N;GUJARATI LETTER I
+0A88;N;GUJARATI LETTER II
+0A89;N;GUJARATI LETTER U
+0A8A;N;GUJARATI LETTER UU
+0A8B;N;GUJARATI LETTER VOCALIC R
+0A8D;N;GUJARATI VOWEL CANDRA E
+0A8F;N;GUJARATI LETTER E
+0A90;N;GUJARATI LETTER AI
+0A91;N;GUJARATI VOWEL CANDRA O
+0A93;N;GUJARATI LETTER O
+0A94;N;GUJARATI LETTER AU
+0A95;N;GUJARATI LETTER KA
+0A96;N;GUJARATI LETTER KHA
+0A97;N;GUJARATI LETTER GA
+0A98;N;GUJARATI LETTER GHA
+0A99;N;GUJARATI LETTER NGA
+0A9A;N;GUJARATI LETTER CA
+0A9B;N;GUJARATI LETTER CHA
+0A9C;N;GUJARATI LETTER JA
+0A9D;N;GUJARATI LETTER JHA
+0A9E;N;GUJARATI LETTER NYA
+0A9F;N;GUJARATI LETTER TTA
+0AA0;N;GUJARATI LETTER TTHA
+0AA1;N;GUJARATI LETTER DDA
+0AA2;N;GUJARATI LETTER DDHA
+0AA3;N;GUJARATI LETTER NNA
+0AA4;N;GUJARATI LETTER TA
+0AA5;N;GUJARATI LETTER THA
+0AA6;N;GUJARATI LETTER DA
+0AA7;N;GUJARATI LETTER DHA
+0AA8;N;GUJARATI LETTER NA
+0AAA;N;GUJARATI LETTER PA
+0AAB;N;GUJARATI LETTER PHA
+0AAC;N;GUJARATI LETTER BA
+0AAD;N;GUJARATI LETTER BHA
+0AAE;N;GUJARATI LETTER MA
+0AAF;N;GUJARATI LETTER YA
+0AB0;N;GUJARATI LETTER RA
+0AB2;N;GUJARATI LETTER LA
+0AB3;N;GUJARATI LETTER LLA
+0AB5;N;GUJARATI LETTER VA
+0AB6;N;GUJARATI LETTER SHA
+0AB7;N;GUJARATI LETTER SSA
+0AB8;N;GUJARATI LETTER SA
+0AB9;N;GUJARATI LETTER HA
+0ABC;N;GUJARATI SIGN NUKTA
+0ABD;N;GUJARATI SIGN AVAGRAHA
+0ABE;N;GUJARATI VOWEL SIGN AA
+0ABF;N;GUJARATI VOWEL SIGN I
+0AC0;N;GUJARATI VOWEL SIGN II
+0AC1;N;GUJARATI VOWEL SIGN U
+0AC2;N;GUJARATI VOWEL SIGN UU
+0AC3;N;GUJARATI VOWEL SIGN VOCALIC R
+0AC4;N;GUJARATI VOWEL SIGN VOCALIC RR
+0AC5;N;GUJARATI VOWEL SIGN CANDRA E
+0AC7;N;GUJARATI VOWEL SIGN E
+0AC8;N;GUJARATI VOWEL SIGN AI
+0AC9;N;GUJARATI VOWEL SIGN CANDRA O
+0ACB;N;GUJARATI VOWEL SIGN O
+0ACC;N;GUJARATI VOWEL SIGN AU
+0ACD;N;GUJARATI SIGN VIRAMA
+0AD0;N;GUJARATI OM
+0AE0;N;GUJARATI LETTER VOCALIC RR
+0AE6;N;GUJARATI DIGIT ZERO
+0AE7;N;GUJARATI DIGIT ONE
+0AE8;N;GUJARATI DIGIT TWO
+0AE9;N;GUJARATI DIGIT THREE
+0AEA;N;GUJARATI DIGIT FOUR
+0AEB;N;GUJARATI DIGIT FIVE
+0AEC;N;GUJARATI DIGIT SIX
+0AED;N;GUJARATI DIGIT SEVEN
+0AEE;N;GUJARATI DIGIT EIGHT
+0AEF;N;GUJARATI DIGIT NINE
+0B01;N;ORIYA SIGN CANDRABINDU
+0B02;N;ORIYA SIGN ANUSVARA
+0B03;N;ORIYA SIGN VISARGA
+0B05;N;ORIYA LETTER A
+0B06;N;ORIYA LETTER AA
+0B07;N;ORIYA LETTER I
+0B08;N;ORIYA LETTER II
+0B09;N;ORIYA LETTER U
+0B0A;N;ORIYA LETTER UU
+0B0B;N;ORIYA LETTER VOCALIC R
+0B0C;N;ORIYA LETTER VOCALIC L
+0B0F;N;ORIYA LETTER E
+0B10;N;ORIYA LETTER AI
+0B13;N;ORIYA LETTER O
+0B14;N;ORIYA LETTER AU
+0B15;N;ORIYA LETTER KA
+0B16;N;ORIYA LETTER KHA
+0B17;N;ORIYA LETTER GA
+0B18;N;ORIYA LETTER GHA
+0B19;N;ORIYA LETTER NGA
+0B1A;N;ORIYA LETTER CA
+0B1B;N;ORIYA LETTER CHA
+0B1C;N;ORIYA LETTER JA
+0B1D;N;ORIYA LETTER JHA
+0B1E;N;ORIYA LETTER NYA
+0B1F;N;ORIYA LETTER TTA
+0B20;N;ORIYA LETTER TTHA
+0B21;N;ORIYA LETTER DDA
+0B22;N;ORIYA LETTER DDHA
+0B23;N;ORIYA LETTER NNA
+0B24;N;ORIYA LETTER TA
+0B25;N;ORIYA LETTER THA
+0B26;N;ORIYA LETTER DA
+0B27;N;ORIYA LETTER DHA
+0B28;N;ORIYA LETTER NA
+0B2A;N;ORIYA LETTER PA
+0B2B;N;ORIYA LETTER PHA
+0B2C;N;ORIYA LETTER BA
+0B2D;N;ORIYA LETTER BHA
+0B2E;N;ORIYA LETTER MA
+0B2F;N;ORIYA LETTER YA
+0B30;N;ORIYA LETTER RA
+0B32;N;ORIYA LETTER LA
+0B33;N;ORIYA LETTER LLA
+0B36;N;ORIYA LETTER SHA
+0B37;N;ORIYA LETTER SSA
+0B38;N;ORIYA LETTER SA
+0B39;N;ORIYA LETTER HA
+0B3C;N;ORIYA SIGN NUKTA
+0B3D;N;ORIYA SIGN AVAGRAHA
+0B3E;N;ORIYA VOWEL SIGN AA
+0B3F;N;ORIYA VOWEL SIGN I
+0B40;N;ORIYA VOWEL SIGN II
+0B41;N;ORIYA VOWEL SIGN U
+0B42;N;ORIYA VOWEL SIGN UU
+0B43;N;ORIYA VOWEL SIGN VOCALIC R
+0B47;N;ORIYA VOWEL SIGN E
+0B48;N;ORIYA VOWEL SIGN AI
+0B4B;N;ORIYA VOWEL SIGN O
+0B4C;N;ORIYA VOWEL SIGN AU
+0B4D;N;ORIYA SIGN VIRAMA
+0B56;N;ORIYA AI LENGTH MARK
+0B57;N;ORIYA AU LENGTH MARK
+0B5C;N;ORIYA LETTER RRA
+0B5D;N;ORIYA LETTER RHA
+0B5F;N;ORIYA LETTER YYA
+0B60;N;ORIYA LETTER VOCALIC RR
+0B61;N;ORIYA LETTER VOCALIC LL
+0B66;N;ORIYA DIGIT ZERO
+0B67;N;ORIYA DIGIT ONE
+0B68;N;ORIYA DIGIT TWO
+0B69;N;ORIYA DIGIT THREE
+0B6A;N;ORIYA DIGIT FOUR
+0B6B;N;ORIYA DIGIT FIVE
+0B6C;N;ORIYA DIGIT SIX
+0B6D;N;ORIYA DIGIT SEVEN
+0B6E;N;ORIYA DIGIT EIGHT
+0B6F;N;ORIYA DIGIT NINE
+0B70;N;ORIYA ISSHAR
+0B82;N;TAMIL SIGN ANUSVARA
+0B83;N;TAMIL SIGN VISARGA
+0B85;N;TAMIL LETTER A
+0B86;N;TAMIL LETTER AA
+0B87;N;TAMIL LETTER I
+0B88;N;TAMIL LETTER II
+0B89;N;TAMIL LETTER U
+0B8A;N;TAMIL LETTER UU
+0B8E;N;TAMIL LETTER E
+0B8F;N;TAMIL LETTER EE
+0B90;N;TAMIL LETTER AI
+0B92;N;TAMIL LETTER O
+0B93;N;TAMIL LETTER OO
+0B94;N;TAMIL LETTER AU
+0B95;N;TAMIL LETTER KA
+0B99;N;TAMIL LETTER NGA
+0B9A;N;TAMIL LETTER CA
+0B9C;N;TAMIL LETTER JA
+0B9E;N;TAMIL LETTER NYA
+0B9F;N;TAMIL LETTER TTA
+0BA3;N;TAMIL LETTER NNA
+0BA4;N;TAMIL LETTER TA
+0BA8;N;TAMIL LETTER NA
+0BA9;N;TAMIL LETTER NNNA
+0BAA;N;TAMIL LETTER PA
+0BAE;N;TAMIL LETTER MA
+0BAF;N;TAMIL LETTER YA
+0BB0;N;TAMIL LETTER RA
+0BB1;N;TAMIL LETTER RRA
+0BB2;N;TAMIL LETTER LA
+0BB3;N;TAMIL LETTER LLA
+0BB4;N;TAMIL LETTER LLLA
+0BB5;N;TAMIL LETTER VA
+0BB7;N;TAMIL LETTER SSA
+0BB8;N;TAMIL LETTER SA
+0BB9;N;TAMIL LETTER HA
+0BBE;N;TAMIL VOWEL SIGN AA
+0BBF;N;TAMIL VOWEL SIGN I
+0BC0;N;TAMIL VOWEL SIGN II
+0BC1;N;TAMIL VOWEL SIGN U
+0BC2;N;TAMIL VOWEL SIGN UU
+0BC6;N;TAMIL VOWEL SIGN E
+0BC7;N;TAMIL VOWEL SIGN EE
+0BC8;N;TAMIL VOWEL SIGN AI
+0BCA;N;TAMIL VOWEL SIGN O
+0BCB;N;TAMIL VOWEL SIGN OO
+0BCC;N;TAMIL VOWEL SIGN AU
+0BCD;N;TAMIL SIGN VIRAMA
+0BD7;N;TAMIL AU LENGTH MARK
+0BE7;N;TAMIL DIGIT ONE
+0BE8;N;TAMIL DIGIT TWO
+0BE9;N;TAMIL DIGIT THREE
+0BEA;N;TAMIL DIGIT FOUR
+0BEB;N;TAMIL DIGIT FIVE
+0BEC;N;TAMIL DIGIT SIX
+0BED;N;TAMIL DIGIT SEVEN
+0BEE;N;TAMIL DIGIT EIGHT
+0BEF;N;TAMIL DIGIT NINE
+0BF0;N;TAMIL NUMBER TEN
+0BF1;N;TAMIL NUMBER ONE HUNDRED
+0BF2;N;TAMIL NUMBER ONE THOUSAND
+0C01;N;TELUGU SIGN CANDRABINDU
+0C02;N;TELUGU SIGN ANUSVARA
+0C03;N;TELUGU SIGN VISARGA
+0C05;N;TELUGU LETTER A
+0C06;N;TELUGU LETTER AA
+0C07;N;TELUGU LETTER I
+0C08;N;TELUGU LETTER II
+0C09;N;TELUGU LETTER U
+0C0A;N;TELUGU LETTER UU
+0C0B;N;TELUGU LETTER VOCALIC R
+0C0C;N;TELUGU LETTER VOCALIC L
+0C0E;N;TELUGU LETTER E
+0C0F;N;TELUGU LETTER EE
+0C10;N;TELUGU LETTER AI
+0C12;N;TELUGU LETTER O
+0C13;N;TELUGU LETTER OO
+0C14;N;TELUGU LETTER AU
+0C15;N;TELUGU LETTER KA
+0C16;N;TELUGU LETTER KHA
+0C17;N;TELUGU LETTER GA
+0C18;N;TELUGU LETTER GHA
+0C19;N;TELUGU LETTER NGA
+0C1A;N;TELUGU LETTER CA
+0C1B;N;TELUGU LETTER CHA
+0C1C;N;TELUGU LETTER JA
+0C1D;N;TELUGU LETTER JHA
+0C1E;N;TELUGU LETTER NYA
+0C1F;N;TELUGU LETTER TTA
+0C20;N;TELUGU LETTER TTHA
+0C21;N;TELUGU LETTER DDA
+0C22;N;TELUGU LETTER DDHA
+0C23;N;TELUGU LETTER NNA
+0C24;N;TELUGU LETTER TA
+0C25;N;TELUGU LETTER THA
+0C26;N;TELUGU LETTER DA
+0C27;N;TELUGU LETTER DHA
+0C28;N;TELUGU LETTER NA
+0C2A;N;TELUGU LETTER PA
+0C2B;N;TELUGU LETTER PHA
+0C2C;N;TELUGU LETTER BA
+0C2D;N;TELUGU LETTER BHA
+0C2E;N;TELUGU LETTER MA
+0C2F;N;TELUGU LETTER YA
+0C30;N;TELUGU LETTER RA
+0C31;N;TELUGU LETTER RRA
+0C32;N;TELUGU LETTER LA
+0C33;N;TELUGU LETTER LLA
+0C35;N;TELUGU LETTER VA
+0C36;N;TELUGU LETTER SHA
+0C37;N;TELUGU LETTER SSA
+0C38;N;TELUGU LETTER SA
+0C39;N;TELUGU LETTER HA
+0C3E;N;TELUGU VOWEL SIGN AA
+0C3F;N;TELUGU VOWEL SIGN I
+0C40;N;TELUGU VOWEL SIGN II
+0C41;N;TELUGU VOWEL SIGN U
+0C42;N;TELUGU VOWEL SIGN UU
+0C43;N;TELUGU VOWEL SIGN VOCALIC R
+0C44;N;TELUGU VOWEL SIGN VOCALIC RR
+0C46;N;TELUGU VOWEL SIGN E
+0C47;N;TELUGU VOWEL SIGN EE
+0C48;N;TELUGU VOWEL SIGN AI
+0C4A;N;TELUGU VOWEL SIGN O
+0C4B;N;TELUGU VOWEL SIGN OO
+0C4C;N;TELUGU VOWEL SIGN AU
+0C4D;N;TELUGU SIGN VIRAMA
+0C55;N;TELUGU LENGTH MARK
+0C56;N;TELUGU AI LENGTH MARK
+0C60;N;TELUGU LETTER VOCALIC RR
+0C61;N;TELUGU LETTER VOCALIC LL
+0C66;N;TELUGU DIGIT ZERO
+0C67;N;TELUGU DIGIT ONE
+0C68;N;TELUGU DIGIT TWO
+0C69;N;TELUGU DIGIT THREE
+0C6A;N;TELUGU DIGIT FOUR
+0C6B;N;TELUGU DIGIT FIVE
+0C6C;N;TELUGU DIGIT SIX
+0C6D;N;TELUGU DIGIT SEVEN
+0C6E;N;TELUGU DIGIT EIGHT
+0C6F;N;TELUGU DIGIT NINE
+0C82;N;KANNADA SIGN ANUSVARA
+0C83;N;KANNADA SIGN VISARGA
+0C85;N;KANNADA LETTER A
+0C86;N;KANNADA LETTER AA
+0C87;N;KANNADA LETTER I
+0C88;N;KANNADA LETTER II
+0C89;N;KANNADA LETTER U
+0C8A;N;KANNADA LETTER UU
+0C8B;N;KANNADA LETTER VOCALIC R
+0C8C;N;KANNADA LETTER VOCALIC L
+0C8E;N;KANNADA LETTER E
+0C8F;N;KANNADA LETTER EE
+0C90;N;KANNADA LETTER AI
+0C92;N;KANNADA LETTER O
+0C93;N;KANNADA LETTER OO
+0C94;N;KANNADA LETTER AU
+0C95;N;KANNADA LETTER KA
+0C96;N;KANNADA LETTER KHA
+0C97;N;KANNADA LETTER GA
+0C98;N;KANNADA LETTER GHA
+0C99;N;KANNADA LETTER NGA
+0C9A;N;KANNADA LETTER CA
+0C9B;N;KANNADA LETTER CHA
+0C9C;N;KANNADA LETTER JA
+0C9D;N;KANNADA LETTER JHA
+0C9E;N;KANNADA LETTER NYA
+0C9F;N;KANNADA LETTER TTA
+0CA0;N;KANNADA LETTER TTHA
+0CA1;N;KANNADA LETTER DDA
+0CA2;N;KANNADA LETTER DDHA
+0CA3;N;KANNADA LETTER NNA
+0CA4;N;KANNADA LETTER TA
+0CA5;N;KANNADA LETTER THA
+0CA6;N;KANNADA LETTER DA
+0CA7;N;KANNADA LETTER DHA
+0CA8;N;KANNADA LETTER NA
+0CAA;N;KANNADA LETTER PA
+0CAB;N;KANNADA LETTER PHA
+0CAC;N;KANNADA LETTER BA
+0CAD;N;KANNADA LETTER BHA
+0CAE;N;KANNADA LETTER MA
+0CAF;N;KANNADA LETTER YA
+0CB0;N;KANNADA LETTER RA
+0CB1;N;KANNADA LETTER RRA
+0CB2;N;KANNADA LETTER LA
+0CB3;N;KANNADA LETTER LLA
+0CB5;N;KANNADA LETTER VA
+0CB6;N;KANNADA LETTER SHA
+0CB7;N;KANNADA LETTER SSA
+0CB8;N;KANNADA LETTER SA
+0CB9;N;KANNADA LETTER HA
+0CBE;N;KANNADA VOWEL SIGN AA
+0CBF;N;KANNADA VOWEL SIGN I
+0CC0;N;KANNADA VOWEL SIGN II
+0CC1;N;KANNADA VOWEL SIGN U
+0CC2;N;KANNADA VOWEL SIGN UU
+0CC3;N;KANNADA VOWEL SIGN VOCALIC R
+0CC4;N;KANNADA VOWEL SIGN VOCALIC RR
+0CC6;N;KANNADA VOWEL SIGN E
+0CC7;N;KANNADA VOWEL SIGN EE
+0CC8;N;KANNADA VOWEL SIGN AI
+0CCA;N;KANNADA VOWEL SIGN O
+0CCB;N;KANNADA VOWEL SIGN OO
+0CCC;N;KANNADA VOWEL SIGN AU
+0CCD;N;KANNADA SIGN VIRAMA
+0CD5;N;KANNADA LENGTH MARK
+0CD6;N;KANNADA AI LENGTH MARK
+0CDE;N;KANNADA LETTER FA
+0CE0;N;KANNADA LETTER VOCALIC RR
+0CE1;N;KANNADA LETTER VOCALIC LL
+0CE6;N;KANNADA DIGIT ZERO
+0CE7;N;KANNADA DIGIT ONE
+0CE8;N;KANNADA DIGIT TWO
+0CE9;N;KANNADA DIGIT THREE
+0CEA;N;KANNADA DIGIT FOUR
+0CEB;N;KANNADA DIGIT FIVE
+0CEC;N;KANNADA DIGIT SIX
+0CED;N;KANNADA DIGIT SEVEN
+0CEE;N;KANNADA DIGIT EIGHT
+0CEF;N;KANNADA DIGIT NINE
+0D02;N;MALAYALAM SIGN ANUSVARA
+0D03;N;MALAYALAM SIGN VISARGA
+0D05;N;MALAYALAM LETTER A
+0D06;N;MALAYALAM LETTER AA
+0D07;N;MALAYALAM LETTER I
+0D08;N;MALAYALAM LETTER II
+0D09;N;MALAYALAM LETTER U
+0D0A;N;MALAYALAM LETTER UU
+0D0B;N;MALAYALAM LETTER VOCALIC R
+0D0C;N;MALAYALAM LETTER VOCALIC L
+0D0E;N;MALAYALAM LETTER E
+0D0F;N;MALAYALAM LETTER EE
+0D10;N;MALAYALAM LETTER AI
+0D12;N;MALAYALAM LETTER O
+0D13;N;MALAYALAM LETTER OO
+0D14;N;MALAYALAM LETTER AU
+0D15;N;MALAYALAM LETTER KA
+0D16;N;MALAYALAM LETTER KHA
+0D17;N;MALAYALAM LETTER GA
+0D18;N;MALAYALAM LETTER GHA
+0D19;N;MALAYALAM LETTER NGA
+0D1A;N;MALAYALAM LETTER CA
+0D1B;N;MALAYALAM LETTER CHA
+0D1C;N;MALAYALAM LETTER JA
+0D1D;N;MALAYALAM LETTER JHA
+0D1E;N;MALAYALAM LETTER NYA
+0D1F;N;MALAYALAM LETTER TTA
+0D20;N;MALAYALAM LETTER TTHA
+0D21;N;MALAYALAM LETTER DDA
+0D22;N;MALAYALAM LETTER DDHA
+0D23;N;MALAYALAM LETTER NNA
+0D24;N;MALAYALAM LETTER TA
+0D25;N;MALAYALAM LETTER THA
+0D26;N;MALAYALAM LETTER DA
+0D27;N;MALAYALAM LETTER DHA
+0D28;N;MALAYALAM LETTER NA
+0D2A;N;MALAYALAM LETTER PA
+0D2B;N;MALAYALAM LETTER PHA
+0D2C;N;MALAYALAM LETTER BA
+0D2D;N;MALAYALAM LETTER BHA
+0D2E;N;MALAYALAM LETTER MA
+0D2F;N;MALAYALAM LETTER YA
+0D30;N;MALAYALAM LETTER RA
+0D31;N;MALAYALAM LETTER RRA
+0D32;N;MALAYALAM LETTER LA
+0D33;N;MALAYALAM LETTER LLA
+0D34;N;MALAYALAM LETTER LLLA
+0D35;N;MALAYALAM LETTER VA
+0D36;N;MALAYALAM LETTER SHA
+0D37;N;MALAYALAM LETTER SSA
+0D38;N;MALAYALAM LETTER SA
+0D39;N;MALAYALAM LETTER HA
+0D3E;N;MALAYALAM VOWEL SIGN AA
+0D3F;N;MALAYALAM VOWEL SIGN I
+0D40;N;MALAYALAM VOWEL SIGN II
+0D41;N;MALAYALAM VOWEL SIGN U
+0D42;N;MALAYALAM VOWEL SIGN UU
+0D43;N;MALAYALAM VOWEL SIGN VOCALIC R
+0D46;N;MALAYALAM VOWEL SIGN E
+0D47;N;MALAYALAM VOWEL SIGN EE
+0D48;N;MALAYALAM VOWEL SIGN AI
+0D4A;N;MALAYALAM VOWEL SIGN O
+0D4B;N;MALAYALAM VOWEL SIGN OO
+0D4C;N;MALAYALAM VOWEL SIGN AU
+0D4D;N;MALAYALAM SIGN VIRAMA
+0D57;N;MALAYALAM AU LENGTH MARK
+0D60;N;MALAYALAM LETTER VOCALIC RR
+0D61;N;MALAYALAM LETTER VOCALIC LL
+0D66;N;MALAYALAM DIGIT ZERO
+0D67;N;MALAYALAM DIGIT ONE
+0D68;N;MALAYALAM DIGIT TWO
+0D69;N;MALAYALAM DIGIT THREE
+0D6A;N;MALAYALAM DIGIT FOUR
+0D6B;N;MALAYALAM DIGIT FIVE
+0D6C;N;MALAYALAM DIGIT SIX
+0D6D;N;MALAYALAM DIGIT SEVEN
+0D6E;N;MALAYALAM DIGIT EIGHT
+0D6F;N;MALAYALAM DIGIT NINE
+0D82;N;SINHALA SIGN ANUSVARAYA
+0D83;N;SINHALA SIGN VISARGAYA
+0D85;N;SINHALA LETTER AYANNA
+0D86;N;SINHALA LETTER AAYANNA
+0D87;N;SINHALA LETTER AEYANNA
+0D88;N;SINHALA LETTER AEEYANNA
+0D89;N;SINHALA LETTER IYANNA
+0D8A;N;SINHALA LETTER IIYANNA
+0D8B;N;SINHALA LETTER UYANNA
+0D8C;N;SINHALA LETTER UUYANNA
+0D8D;N;SINHALA LETTER IRUYANNA
+0D8E;N;SINHALA LETTER IRUUYANNA
+0D8F;N;SINHALA LETTER ILUYANNA
+0D90;N;SINHALA LETTER ILUUYANNA
+0D91;N;SINHALA LETTER EYANNA
+0D92;N;SINHALA LETTER EEYANNA
+0D93;N;SINHALA LETTER AIYANNA
+0D94;N;SINHALA LETTER OYANNA
+0D95;N;SINHALA LETTER OOYANNA
+0D96;N;SINHALA LETTER AUYANNA
+0D9A;N;SINHALA LETTER ALPAPRAANA KAYANNA
+0D9B;N;SINHALA LETTER MAHAAPRAANA KAYANNA
+0D9C;N;SINHALA LETTER ALPAPRAANA GAYANNA
+0D9D;N;SINHALA LETTER MAHAAPRAANA GAYANNA
+0D9E;N;SINHALA LETTER KANTAJA NAASIKYAYA
+0D9F;N;SINHALA LETTER SANYAKA GAYANNA
+0DA0;N;SINHALA LETTER ALPAPRAANA CAYANNA
+0DA1;N;SINHALA LETTER MAHAAPRAANA CAYANNA
+0DA2;N;SINHALA LETTER ALPAPRAANA JAYANNA
+0DA3;N;SINHALA LETTER MAHAAPRAANA JAYANNA
+0DA4;N;SINHALA LETTER TAALUJA NAASIKYAYA
+0DA5;N;SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA
+0DA6;N;SINHALA LETTER SANYAKA JAYANNA
+0DA7;N;SINHALA LETTER ALPAPRAANA TTAYANNA
+0DA8;N;SINHALA LETTER MAHAAPRAANA TTAYANNA
+0DA9;N;SINHALA LETTER ALPAPRAANA DDAYANNA
+0DAA;N;SINHALA LETTER MAHAAPRAANA DDAYANNA
+0DAB;N;SINHALA LETTER MUURDHAJA NAYANNA
+0DAC;N;SINHALA LETTER SANYAKA DDAYANNA
+0DAD;N;SINHALA LETTER ALPAPRAANA TAYANNA
+0DAE;N;SINHALA LETTER MAHAAPRAANA TAYANNA
+0DAF;N;SINHALA LETTER ALPAPRAANA DAYANNA
+0DB0;N;SINHALA LETTER MAHAAPRAANA DAYANNA
+0DB1;N;SINHALA LETTER DANTAJA NAYANNA
+0DB3;N;SINHALA LETTER SANYAKA DAYANNA
+0DB4;N;SINHALA LETTER ALPAPRAANA PAYANNA
+0DB5;N;SINHALA LETTER MAHAAPRAANA PAYANNA
+0DB6;N;SINHALA LETTER ALPAPRAANA BAYANNA
+0DB7;N;SINHALA LETTER MAHAAPRAANA BAYANNA
+0DB8;N;SINHALA LETTER MAYANNA
+0DB9;N;SINHALA LETTER AMBA BAYANNA
+0DBA;N;SINHALA LETTER YAYANNA
+0DBB;N;SINHALA LETTER RAYANNA
+0DBD;N;SINHALA LETTER DANTAJA LAYANNA
+0DC0;N;SINHALA LETTER VAYANNA
+0DC1;N;SINHALA LETTER TAALUJA SAYANNA
+0DC2;N;SINHALA LETTER MUURDHAJA SAYANNA
+0DC3;N;SINHALA LETTER DANTAJA SAYANNA
+0DC4;N;SINHALA LETTER HAYANNA
+0DC5;N;SINHALA LETTER MUURDHAJA LAYANNA
+0DC6;N;SINHALA LETTER FAYANNA
+0DCA;N;SINHALA SIGN AL-LAKUNA
+0DCF;N;SINHALA VOWEL SIGN AELA-PILLA
+0DD0;N;SINHALA VOWEL SIGN KETTI AEDA-PILLA
+0DD1;N;SINHALA VOWEL SIGN DIGA AEDA-PILLA
+0DD2;N;SINHALA VOWEL SIGN KETTI IS-PILLA
+0DD3;N;SINHALA VOWEL SIGN DIGA IS-PILLA
+0DD4;N;SINHALA VOWEL SIGN KETTI PAA-PILLA
+0DD6;N;SINHALA VOWEL SIGN DIGA PAA-PILLA
+0DD8;N;SINHALA VOWEL SIGN GAETTA-PILLA
+0DD9;N;SINHALA VOWEL SIGN KOMBUVA
+0DDA;N;SINHALA VOWEL SIGN DIGA KOMBUVA
+0DDB;N;SINHALA VOWEL SIGN KOMBU DEKA
+0DDC;N;SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA
+0DDD;N;SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA
+0DDE;N;SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA
+0DDF;N;SINHALA VOWEL SIGN GAYANUKITTA
+0DF2;N;SINHALA VOWEL SIGN DIGA GAETTA-PILLA
+0DF3;N;SINHALA VOWEL SIGN DIGA GAYANUKITTA
+0DF4;N;SINHALA PUNCTUATION KUNDDALIYA
+0E01;N;THAI CHARACTER KO KAI
+0E02;N;THAI CHARACTER KHO KHAI
+0E03;N;THAI CHARACTER KHO KHUAT
+0E04;N;THAI CHARACTER KHO KHWAI
+0E05;N;THAI CHARACTER KHO KHON
+0E06;N;THAI CHARACTER KHO RAKHANG
+0E07;N;THAI CHARACTER NGO NGU
+0E08;N;THAI CHARACTER CHO CHAN
+0E09;N;THAI CHARACTER CHO CHING
+0E0A;N;THAI CHARACTER CHO CHANG
+0E0B;N;THAI CHARACTER SO SO
+0E0C;N;THAI CHARACTER CHO CHOE
+0E0D;N;THAI CHARACTER YO YING
+0E0E;N;THAI CHARACTER DO CHADA
+0E0F;N;THAI CHARACTER TO PATAK
+0E10;N;THAI CHARACTER THO THAN
+0E11;N;THAI CHARACTER THO NANGMONTHO
+0E12;N;THAI CHARACTER THO PHUTHAO
+0E13;N;THAI CHARACTER NO NEN
+0E14;N;THAI CHARACTER DO DEK
+0E15;N;THAI CHARACTER TO TAO
+0E16;N;THAI CHARACTER THO THUNG
+0E17;N;THAI CHARACTER THO THAHAN
+0E18;N;THAI CHARACTER THO THONG
+0E19;N;THAI CHARACTER NO NU
+0E1A;N;THAI CHARACTER BO BAIMAI
+0E1B;N;THAI CHARACTER PO PLA
+0E1C;N;THAI CHARACTER PHO PHUNG
+0E1D;N;THAI CHARACTER FO FA
+0E1E;N;THAI CHARACTER PHO PHAN
+0E1F;N;THAI CHARACTER FO FAN
+0E20;N;THAI CHARACTER PHO SAMPHAO
+0E21;N;THAI CHARACTER MO MA
+0E22;N;THAI CHARACTER YO YAK
+0E23;N;THAI CHARACTER RO RUA
+0E24;N;THAI CHARACTER RU
+0E25;N;THAI CHARACTER LO LING
+0E26;N;THAI CHARACTER LU
+0E27;N;THAI CHARACTER WO WAEN
+0E28;N;THAI CHARACTER SO SALA
+0E29;N;THAI CHARACTER SO RUSI
+0E2A;N;THAI CHARACTER SO SUA
+0E2B;N;THAI CHARACTER HO HIP
+0E2C;N;THAI CHARACTER LO CHULA
+0E2D;N;THAI CHARACTER O ANG
+0E2E;N;THAI CHARACTER HO NOKHUK
+0E2F;N;THAI CHARACTER PAIYANNOI
+0E30;N;THAI CHARACTER SARA A
+0E31;N;THAI CHARACTER MAI HAN-AKAT
+0E32;N;THAI CHARACTER SARA AA
+0E33;N;THAI CHARACTER SARA AM
+0E34;N;THAI CHARACTER SARA I
+0E35;N;THAI CHARACTER SARA II
+0E36;N;THAI CHARACTER SARA UE
+0E37;N;THAI CHARACTER SARA UEE
+0E38;N;THAI CHARACTER SARA U
+0E39;N;THAI CHARACTER SARA UU
+0E3A;N;THAI CHARACTER PHINTHU
+0E3F;N;THAI CURRENCY SYMBOL BAHT
+0E40;N;THAI CHARACTER SARA E
+0E41;N;THAI CHARACTER SARA AE
+0E42;N;THAI CHARACTER SARA O
+0E43;N;THAI CHARACTER SARA AI MAIMUAN
+0E44;N;THAI CHARACTER SARA AI MAIMALAI
+0E45;N;THAI CHARACTER LAKKHANGYAO
+0E46;N;THAI CHARACTER MAIYAMOK
+0E47;N;THAI CHARACTER MAITAIKHU
+0E48;N;THAI CHARACTER MAI EK
+0E49;N;THAI CHARACTER MAI THO
+0E4A;N;THAI CHARACTER MAI TRI
+0E4B;N;THAI CHARACTER MAI CHATTAWA
+0E4C;N;THAI CHARACTER THANTHAKHAT
+0E4D;N;THAI CHARACTER NIKHAHIT
+0E4E;N;THAI CHARACTER YAMAKKAN
+0E4F;N;THAI CHARACTER FONGMAN
+0E50;N;THAI DIGIT ZERO
+0E51;N;THAI DIGIT ONE
+0E52;N;THAI DIGIT TWO
+0E53;N;THAI DIGIT THREE
+0E54;N;THAI DIGIT FOUR
+0E55;N;THAI DIGIT FIVE
+0E56;N;THAI DIGIT SIX
+0E57;N;THAI DIGIT SEVEN
+0E58;N;THAI DIGIT EIGHT
+0E59;N;THAI DIGIT NINE
+0E5A;N;THAI CHARACTER ANGKHANKHU
+0E5B;N;THAI CHARACTER KHOMUT
+0E81;N;LAO LETTER KO
+0E82;N;LAO LETTER KHO SUNG
+0E84;N;LAO LETTER KHO TAM
+0E87;N;LAO LETTER NGO
+0E88;N;LAO LETTER CO
+0E8A;N;LAO LETTER SO TAM
+0E8D;N;LAO LETTER NYO
+0E94;N;LAO LETTER DO
+0E95;N;LAO LETTER TO
+0E96;N;LAO LETTER THO SUNG
+0E97;N;LAO LETTER THO TAM
+0E99;N;LAO LETTER NO
+0E9A;N;LAO LETTER BO
+0E9B;N;LAO LETTER PO
+0E9C;N;LAO LETTER PHO SUNG
+0E9D;N;LAO LETTER FO TAM
+0E9E;N;LAO LETTER PHO TAM
+0E9F;N;LAO LETTER FO SUNG
+0EA1;N;LAO LETTER MO
+0EA2;N;LAO LETTER YO
+0EA3;N;LAO LETTER LO LING
+0EA5;N;LAO LETTER LO LOOT
+0EA7;N;LAO LETTER WO
+0EAA;N;LAO LETTER SO SUNG
+0EAB;N;LAO LETTER HO SUNG
+0EAD;N;LAO LETTER O
+0EAE;N;LAO LETTER HO TAM
+0EAF;N;LAO ELLIPSIS
+0EB0;N;LAO VOWEL SIGN A
+0EB1;N;LAO VOWEL SIGN MAI KAN
+0EB2;N;LAO VOWEL SIGN AA
+0EB3;N;LAO VOWEL SIGN AM
+0EB4;N;LAO VOWEL SIGN I
+0EB5;N;LAO VOWEL SIGN II
+0EB6;N;LAO VOWEL SIGN Y
+0EB7;N;LAO VOWEL SIGN YY
+0EB8;N;LAO VOWEL SIGN U
+0EB9;N;LAO VOWEL SIGN UU
+0EBB;N;LAO VOWEL SIGN MAI KON
+0EBC;N;LAO SEMIVOWEL SIGN LO
+0EBD;N;LAO SEMIVOWEL SIGN NYO
+0EC0;N;LAO VOWEL SIGN E
+0EC1;N;LAO VOWEL SIGN EI
+0EC2;N;LAO VOWEL SIGN O
+0EC3;N;LAO VOWEL SIGN AY
+0EC4;N;LAO VOWEL SIGN AI
+0EC6;N;LAO KO LA
+0EC8;N;LAO TONE MAI EK
+0EC9;N;LAO TONE MAI THO
+0ECA;N;LAO TONE MAI TI
+0ECB;N;LAO TONE MAI CATAWA
+0ECC;N;LAO CANCELLATION MARK
+0ECD;N;LAO NIGGAHITA
+0ED0;N;LAO DIGIT ZERO
+0ED1;N;LAO DIGIT ONE
+0ED2;N;LAO DIGIT TWO
+0ED3;N;LAO DIGIT THREE
+0ED4;N;LAO DIGIT FOUR
+0ED5;N;LAO DIGIT FIVE
+0ED6;N;LAO DIGIT SIX
+0ED7;N;LAO DIGIT SEVEN
+0ED8;N;LAO DIGIT EIGHT
+0ED9;N;LAO DIGIT NINE
+0EDC;N;LAO HO NO
+0EDD;N;LAO HO MO
+0F00;N;TIBETAN SYLLABLE OM
+0F01;N;TIBETAN MARK GTER YIG MGO TRUNCATED A
+0F02;N;TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA
+0F03;N;TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA
+0F04;N;TIBETAN MARK INITIAL YIG MGO MDUN MA
+0F05;N;TIBETAN MARK CLOSING YIG MGO SGAB MA
+0F06;N;TIBETAN MARK CARET YIG MGO PHUR SHAD MA
+0F07;N;TIBETAN MARK YIG MGO TSHEG SHAD MA
+0F08;N;TIBETAN MARK SBRUL SHAD
+0F09;N;TIBETAN MARK BSKUR YIG MGO
+0F0A;N;TIBETAN MARK BKA- SHOG YIG MGO
+0F0B;N;TIBETAN MARK INTERSYLLABIC TSHEG
+0F0C;N;TIBETAN MARK DELIMITER TSHEG BSTAR
+0F0D;N;TIBETAN MARK SHAD
+0F0E;N;TIBETAN MARK NYIS SHAD
+0F0F;N;TIBETAN MARK TSHEG SHAD
+0F10;N;TIBETAN MARK NYIS TSHEG SHAD
+0F11;N;TIBETAN MARK RIN CHEN SPUNGS SHAD
+0F12;N;TIBETAN MARK RGYA GRAM SHAD
+0F13;N;TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN
+0F14;N;TIBETAN MARK GTER TSHEG
+0F15;N;TIBETAN LOGOTYPE SIGN CHAD RTAGS
+0F16;N;TIBETAN LOGOTYPE SIGN LHAG RTAGS
+0F17;N;TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS
+0F18;N;TIBETAN ASTROLOGICAL SIGN -KHYUD PA
+0F19;N;TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
+0F1A;N;TIBETAN SIGN RDEL DKAR GCIG
+0F1B;N;TIBETAN SIGN RDEL DKAR GNYIS
+0F1C;N;TIBETAN SIGN RDEL DKAR GSUM
+0F1D;N;TIBETAN SIGN RDEL NAG GCIG
+0F1E;N;TIBETAN SIGN RDEL NAG GNYIS
+0F1F;N;TIBETAN SIGN RDEL DKAR RDEL NAG
+0F20;N;TIBETAN DIGIT ZERO
+0F21;N;TIBETAN DIGIT ONE
+0F22;N;TIBETAN DIGIT TWO
+0F23;N;TIBETAN DIGIT THREE
+0F24;N;TIBETAN DIGIT FOUR
+0F25;N;TIBETAN DIGIT FIVE
+0F26;N;TIBETAN DIGIT SIX
+0F27;N;TIBETAN DIGIT SEVEN
+0F28;N;TIBETAN DIGIT EIGHT
+0F29;N;TIBETAN DIGIT NINE
+0F2A;N;TIBETAN DIGIT HALF ONE
+0F2B;N;TIBETAN DIGIT HALF TWO
+0F2C;N;TIBETAN DIGIT HALF THREE
+0F2D;N;TIBETAN DIGIT HALF FOUR
+0F2E;N;TIBETAN DIGIT HALF FIVE
+0F2F;N;TIBETAN DIGIT HALF SIX
+0F30;N;TIBETAN DIGIT HALF SEVEN
+0F31;N;TIBETAN DIGIT HALF EIGHT
+0F32;N;TIBETAN DIGIT HALF NINE
+0F33;N;TIBETAN DIGIT HALF ZERO
+0F34;N;TIBETAN MARK BSDUS RTAGS
+0F35;N;TIBETAN MARK NGAS BZUNG NYI ZLA
+0F36;N;TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN
+0F37;N;TIBETAN MARK NGAS BZUNG SGOR RTAGS
+0F38;N;TIBETAN MARK CHE MGO
+0F39;N;TIBETAN MARK TSA -PHRU
+0F3A;N;TIBETAN MARK GUG RTAGS GYON
+0F3B;N;TIBETAN MARK GUG RTAGS GYAS
+0F3C;N;TIBETAN MARK ANG KHANG GYON
+0F3D;N;TIBETAN MARK ANG KHANG GYAS
+0F3E;N;TIBETAN SIGN YAR TSHES
+0F3F;N;TIBETAN SIGN MAR TSHES
+0F40;N;TIBETAN LETTER KA
+0F41;N;TIBETAN LETTER KHA
+0F42;N;TIBETAN LETTER GA
+0F43;N;TIBETAN LETTER GHA
+0F44;N;TIBETAN LETTER NGA
+0F45;N;TIBETAN LETTER CA
+0F46;N;TIBETAN LETTER CHA
+0F47;N;TIBETAN LETTER JA
+0F49;N;TIBETAN LETTER NYA
+0F4A;N;TIBETAN LETTER TTA
+0F4B;N;TIBETAN LETTER TTHA
+0F4C;N;TIBETAN LETTER DDA
+0F4D;N;TIBETAN LETTER DDHA
+0F4E;N;TIBETAN LETTER NNA
+0F4F;N;TIBETAN LETTER TA
+0F50;N;TIBETAN LETTER THA
+0F51;N;TIBETAN LETTER DA
+0F52;N;TIBETAN LETTER DHA
+0F53;N;TIBETAN LETTER NA
+0F54;N;TIBETAN LETTER PA
+0F55;N;TIBETAN LETTER PHA
+0F56;N;TIBETAN LETTER BA
+0F57;N;TIBETAN LETTER BHA
+0F58;N;TIBETAN LETTER MA
+0F59;N;TIBETAN LETTER TSA
+0F5A;N;TIBETAN LETTER TSHA
+0F5B;N;TIBETAN LETTER DZA
+0F5C;N;TIBETAN LETTER DZHA
+0F5D;N;TIBETAN LETTER WA
+0F5E;N;TIBETAN LETTER ZHA
+0F5F;N;TIBETAN LETTER ZA
+0F60;N;TIBETAN LETTER -A
+0F61;N;TIBETAN LETTER YA
+0F62;N;TIBETAN LETTER RA
+0F63;N;TIBETAN LETTER LA
+0F64;N;TIBETAN LETTER SHA
+0F65;N;TIBETAN LETTER SSA
+0F66;N;TIBETAN LETTER SA
+0F67;N;TIBETAN LETTER HA
+0F68;N;TIBETAN LETTER A
+0F69;N;TIBETAN LETTER KSSA
+0F6A;N;TIBETAN LETTER FIXED-FORM RA
+0F71;N;TIBETAN VOWEL SIGN AA
+0F72;N;TIBETAN VOWEL SIGN I
+0F73;N;TIBETAN VOWEL SIGN II
+0F74;N;TIBETAN VOWEL SIGN U
+0F75;N;TIBETAN VOWEL SIGN UU
+0F76;N;TIBETAN VOWEL SIGN VOCALIC R
+0F77;N;TIBETAN VOWEL SIGN VOCALIC RR
+0F78;N;TIBETAN VOWEL SIGN VOCALIC L
+0F79;N;TIBETAN VOWEL SIGN VOCALIC LL
+0F7A;N;TIBETAN VOWEL SIGN E
+0F7B;N;TIBETAN VOWEL SIGN EE
+0F7C;N;TIBETAN VOWEL SIGN O
+0F7D;N;TIBETAN VOWEL SIGN OO
+0F7E;N;TIBETAN SIGN RJES SU NGA RO
+0F7F;N;TIBETAN SIGN RNAM BCAD
+0F80;N;TIBETAN VOWEL SIGN REVERSED I
+0F81;N;TIBETAN VOWEL SIGN REVERSED II
+0F82;N;TIBETAN SIGN NYI ZLA NAA DA
+0F83;N;TIBETAN SIGN SNA LDAN
+0F84;N;TIBETAN MARK HALANTA
+0F85;N;TIBETAN MARK PALUTA
+0F86;N;TIBETAN SIGN LCI RTAGS
+0F87;N;TIBETAN SIGN YANG RTAGS
+0F88;N;TIBETAN SIGN LCE TSA CAN
+0F89;N;TIBETAN SIGN MCHU CAN
+0F8A;N;TIBETAN SIGN GRU CAN RGYINGS
+0F8B;N;TIBETAN SIGN GRU MED RGYINGS
+0F90;N;TIBETAN SUBJOINED LETTER KA
+0F91;N;TIBETAN SUBJOINED LETTER KHA
+0F92;N;TIBETAN SUBJOINED LETTER GA
+0F93;N;TIBETAN SUBJOINED LETTER GHA
+0F94;N;TIBETAN SUBJOINED LETTER NGA
+0F95;N;TIBETAN SUBJOINED LETTER CA
+0F96;N;TIBETAN SUBJOINED LETTER CHA
+0F97;N;TIBETAN SUBJOINED LETTER JA
+0F99;N;TIBETAN SUBJOINED LETTER NYA
+0F9A;N;TIBETAN SUBJOINED LETTER TTA
+0F9B;N;TIBETAN SUBJOINED LETTER TTHA
+0F9C;N;TIBETAN SUBJOINED LETTER DDA
+0F9D;N;TIBETAN SUBJOINED LETTER DDHA
+0F9E;N;TIBETAN SUBJOINED LETTER NNA
+0F9F;N;TIBETAN SUBJOINED LETTER TA
+0FA0;N;TIBETAN SUBJOINED LETTER THA
+0FA1;N;TIBETAN SUBJOINED LETTER DA
+0FA2;N;TIBETAN SUBJOINED LETTER DHA
+0FA3;N;TIBETAN SUBJOINED LETTER NA
+0FA4;N;TIBETAN SUBJOINED LETTER PA
+0FA5;N;TIBETAN SUBJOINED LETTER PHA
+0FA6;N;TIBETAN SUBJOINED LETTER BA
+0FA7;N;TIBETAN SUBJOINED LETTER BHA
+0FA8;N;TIBETAN SUBJOINED LETTER MA
+0FA9;N;TIBETAN SUBJOINED LETTER TSA
+0FAA;N;TIBETAN SUBJOINED LETTER TSHA
+0FAB;N;TIBETAN SUBJOINED LETTER DZA
+0FAC;N;TIBETAN SUBJOINED LETTER DZHA
+0FAD;N;TIBETAN SUBJOINED LETTER WA
+0FAE;N;TIBETAN SUBJOINED LETTER ZHA
+0FAF;N;TIBETAN SUBJOINED LETTER ZA
+0FB0;N;TIBETAN SUBJOINED LETTER -A
+0FB1;N;TIBETAN SUBJOINED LETTER YA
+0FB2;N;TIBETAN SUBJOINED LETTER RA
+0FB3;N;TIBETAN SUBJOINED LETTER LA
+0FB4;N;TIBETAN SUBJOINED LETTER SHA
+0FB5;N;TIBETAN SUBJOINED LETTER SSA
+0FB6;N;TIBETAN SUBJOINED LETTER SA
+0FB7;N;TIBETAN SUBJOINED LETTER HA
+0FB8;N;TIBETAN SUBJOINED LETTER A
+0FB9;N;TIBETAN SUBJOINED LETTER KSSA
+0FBA;N;TIBETAN SUBJOINED LETTER FIXED-FORM WA
+0FBB;N;TIBETAN SUBJOINED LETTER FIXED-FORM YA
+0FBC;N;TIBETAN SUBJOINED LETTER FIXED-FORM RA
+0FBE;N;TIBETAN KU RU KHA
+0FBF;N;TIBETAN KU RU KHA BZHI MIG CAN
+0FC0;N;TIBETAN CANTILLATION SIGN HEAVY BEAT
+0FC1;N;TIBETAN CANTILLATION SIGN LIGHT BEAT
+0FC2;N;TIBETAN CANTILLATION SIGN CANG TE-U
+0FC3;N;TIBETAN CANTILLATION SIGN SBUB -CHAL
+0FC4;N;TIBETAN SYMBOL DRIL BU
+0FC5;N;TIBETAN SYMBOL RDO RJE
+0FC6;N;TIBETAN SYMBOL PADMA GDAN
+0FC7;N;TIBETAN SYMBOL RDO RJE RGYA GRAM
+0FC8;N;TIBETAN SYMBOL PHUR PA
+0FC9;N;TIBETAN SYMBOL NOR BU
+0FCA;N;TIBETAN SYMBOL NOR BU NYIS -KHYIL
+0FCB;N;TIBETAN SYMBOL NOR BU GSUM -KHYIL
+0FCC;N;TIBETAN SYMBOL NOR BU BZHI -KHYIL
+0FCF;N;TIBETAN SIGN RDEL NAG GSUM
+1000;N;MYANMAR LETTER KA
+1001;N;MYANMAR LETTER KHA
+1002;N;MYANMAR LETTER GA
+1003;N;MYANMAR LETTER GHA
+1004;N;MYANMAR LETTER NGA
+1005;N;MYANMAR LETTER CA
+1006;N;MYANMAR LETTER CHA
+1007;N;MYANMAR LETTER JA
+1008;N;MYANMAR LETTER JHA
+1009;N;MYANMAR LETTER NYA
+100A;N;MYANMAR LETTER NNYA
+100B;N;MYANMAR LETTER TTA
+100C;N;MYANMAR LETTER TTHA
+100D;N;MYANMAR LETTER DDA
+100E;N;MYANMAR LETTER DDHA
+100F;N;MYANMAR LETTER NNA
+1010;N;MYANMAR LETTER TA
+1011;N;MYANMAR LETTER THA
+1012;N;MYANMAR LETTER DA
+1013;N;MYANMAR LETTER DHA
+1014;N;MYANMAR LETTER NA
+1015;N;MYANMAR LETTER PA
+1016;N;MYANMAR LETTER PHA
+1017;N;MYANMAR LETTER BA
+1018;N;MYANMAR LETTER BHA
+1019;N;MYANMAR LETTER MA
+101A;N;MYANMAR LETTER YA
+101B;N;MYANMAR LETTER RA
+101C;N;MYANMAR LETTER LA
+101D;N;MYANMAR LETTER WA
+101E;N;MYANMAR LETTER SA
+101F;N;MYANMAR LETTER HA
+1020;N;MYANMAR LETTER LLA
+1021;N;MYANMAR LETTER A
+1023;N;MYANMAR LETTER I
+1024;N;MYANMAR LETTER II
+1025;N;MYANMAR LETTER U
+1026;N;MYANMAR LETTER UU
+1027;N;MYANMAR LETTER E
+1029;N;MYANMAR LETTER O
+102A;N;MYANMAR LETTER AU
+102C;N;MYANMAR VOWEL SIGN AA
+102D;N;MYANMAR VOWEL SIGN I
+102E;N;MYANMAR VOWEL SIGN II
+102F;N;MYANMAR VOWEL SIGN U
+1030;N;MYANMAR VOWEL SIGN UU
+1031;N;MYANMAR VOWEL SIGN E
+1032;N;MYANMAR VOWEL SIGN AI
+1036;N;MYANMAR SIGN ANUSVARA
+1037;N;MYANMAR SIGN DOT BELOW
+1038;N;MYANMAR SIGN VISARGA
+1039;N;MYANMAR SIGN VIRAMA
+1040;N;MYANMAR DIGIT ZERO
+1041;N;MYANMAR DIGIT ONE
+1042;N;MYANMAR DIGIT TWO
+1043;N;MYANMAR DIGIT THREE
+1044;N;MYANMAR DIGIT FOUR
+1045;N;MYANMAR DIGIT FIVE
+1046;N;MYANMAR DIGIT SIX
+1047;N;MYANMAR DIGIT SEVEN
+1048;N;MYANMAR DIGIT EIGHT
+1049;N;MYANMAR DIGIT NINE
+104A;N;MYANMAR SIGN LITTLE SECTION
+104B;N;MYANMAR SIGN SECTION
+104C;N;MYANMAR SYMBOL LOCATIVE
+104D;N;MYANMAR SYMBOL COMPLETED
+104E;N;MYANMAR SYMBOL AFOREMENTIONED
+104F;N;MYANMAR SYMBOL GENITIVE
+1050;N;MYANMAR LETTER SHA
+1051;N;MYANMAR LETTER SSA
+1052;N;MYANMAR LETTER VOCALIC R
+1053;N;MYANMAR LETTER VOCALIC RR
+1054;N;MYANMAR LETTER VOCALIC L
+1055;N;MYANMAR LETTER VOCALIC LL
+1056;N;MYANMAR VOWEL SIGN VOCALIC R
+1057;N;MYANMAR VOWEL SIGN VOCALIC RR
+1058;N;MYANMAR VOWEL SIGN VOCALIC L
+1059;N;MYANMAR VOWEL SIGN VOCALIC LL
+10A0;N;GEORGIAN CAPITAL LETTER AN
+10A1;N;GEORGIAN CAPITAL LETTER BAN
+10A2;N;GEORGIAN CAPITAL LETTER GAN
+10A3;N;GEORGIAN CAPITAL LETTER DON
+10A4;N;GEORGIAN CAPITAL LETTER EN
+10A5;N;GEORGIAN CAPITAL LETTER VIN
+10A6;N;GEORGIAN CAPITAL LETTER ZEN
+10A7;N;GEORGIAN CAPITAL LETTER TAN
+10A8;N;GEORGIAN CAPITAL LETTER IN
+10A9;N;GEORGIAN CAPITAL LETTER KAN
+10AA;N;GEORGIAN CAPITAL LETTER LAS
+10AB;N;GEORGIAN CAPITAL LETTER MAN
+10AC;N;GEORGIAN CAPITAL LETTER NAR
+10AD;N;GEORGIAN CAPITAL LETTER ON
+10AE;N;GEORGIAN CAPITAL LETTER PAR
+10AF;N;GEORGIAN CAPITAL LETTER ZHAR
+10B0;N;GEORGIAN CAPITAL LETTER RAE
+10B1;N;GEORGIAN CAPITAL LETTER SAN
+10B2;N;GEORGIAN CAPITAL LETTER TAR
+10B3;N;GEORGIAN CAPITAL LETTER UN
+10B4;N;GEORGIAN CAPITAL LETTER PHAR
+10B5;N;GEORGIAN CAPITAL LETTER KHAR
+10B6;N;GEORGIAN CAPITAL LETTER GHAN
+10B7;N;GEORGIAN CAPITAL LETTER QAR
+10B8;N;GEORGIAN CAPITAL LETTER SHIN
+10B9;N;GEORGIAN CAPITAL LETTER CHIN
+10BA;N;GEORGIAN CAPITAL LETTER CAN
+10BB;N;GEORGIAN CAPITAL LETTER JIL
+10BC;N;GEORGIAN CAPITAL LETTER CIL
+10BD;N;GEORGIAN CAPITAL LETTER CHAR
+10BE;N;GEORGIAN CAPITAL LETTER XAN
+10BF;N;GEORGIAN CAPITAL LETTER JHAN
+10C0;N;GEORGIAN CAPITAL LETTER HAE
+10C1;N;GEORGIAN CAPITAL LETTER HE
+10C2;N;GEORGIAN CAPITAL LETTER HIE
+10C3;N;GEORGIAN CAPITAL LETTER WE
+10C4;N;GEORGIAN CAPITAL LETTER HAR
+10C5;N;GEORGIAN CAPITAL LETTER HOE
+10D0;N;GEORGIAN LETTER AN
+10D1;N;GEORGIAN LETTER BAN
+10D2;N;GEORGIAN LETTER GAN
+10D3;N;GEORGIAN LETTER DON
+10D4;N;GEORGIAN LETTER EN
+10D5;N;GEORGIAN LETTER VIN
+10D6;N;GEORGIAN LETTER ZEN
+10D7;N;GEORGIAN LETTER TAN
+10D8;N;GEORGIAN LETTER IN
+10D9;N;GEORGIAN LETTER KAN
+10DA;N;GEORGIAN LETTER LAS
+10DB;N;GEORGIAN LETTER MAN
+10DC;N;GEORGIAN LETTER NAR
+10DD;N;GEORGIAN LETTER ON
+10DE;N;GEORGIAN LETTER PAR
+10DF;N;GEORGIAN LETTER ZHAR
+10E0;N;GEORGIAN LETTER RAE
+10E1;N;GEORGIAN LETTER SAN
+10E2;N;GEORGIAN LETTER TAR
+10E3;N;GEORGIAN LETTER UN
+10E4;N;GEORGIAN LETTER PHAR
+10E5;N;GEORGIAN LETTER KHAR
+10E6;N;GEORGIAN LETTER GHAN
+10E7;N;GEORGIAN LETTER QAR
+10E8;N;GEORGIAN LETTER SHIN
+10E9;N;GEORGIAN LETTER CHIN
+10EA;N;GEORGIAN LETTER CAN
+10EB;N;GEORGIAN LETTER JIL
+10EC;N;GEORGIAN LETTER CIL
+10ED;N;GEORGIAN LETTER CHAR
+10EE;N;GEORGIAN LETTER XAN
+10EF;N;GEORGIAN LETTER JHAN
+10F0;N;GEORGIAN LETTER HAE
+10F1;N;GEORGIAN LETTER HE
+10F2;N;GEORGIAN LETTER HIE
+10F3;N;GEORGIAN LETTER WE
+10F4;N;GEORGIAN LETTER HAR
+10F5;N;GEORGIAN LETTER HOE
+10F6;N;GEORGIAN LETTER FI
+10FB;N;GEORGIAN PARAGRAPH SEPARATOR
+1100;W;HANGUL CHOSEONG KIYEOK
+1101;W;HANGUL CHOSEONG SSANGKIYEOK
+1102;W;HANGUL CHOSEONG NIEUN
+1103;W;HANGUL CHOSEONG TIKEUT
+1104;W;HANGUL CHOSEONG SSANGTIKEUT
+1105;W;HANGUL CHOSEONG RIEUL
+1106;W;HANGUL CHOSEONG MIEUM
+1107;W;HANGUL CHOSEONG PIEUP
+1108;W;HANGUL CHOSEONG SSANGPIEUP
+1109;W;HANGUL CHOSEONG SIOS
+110A;W;HANGUL CHOSEONG SSANGSIOS
+110B;W;HANGUL CHOSEONG IEUNG
+110C;W;HANGUL CHOSEONG CIEUC
+110D;W;HANGUL CHOSEONG SSANGCIEUC
+110E;W;HANGUL CHOSEONG CHIEUCH
+110F;W;HANGUL CHOSEONG KHIEUKH
+1110;W;HANGUL CHOSEONG THIEUTH
+1111;W;HANGUL CHOSEONG PHIEUPH
+1112;W;HANGUL CHOSEONG HIEUH
+1113;W;HANGUL CHOSEONG NIEUN-KIYEOK
+1114;W;HANGUL CHOSEONG SSANGNIEUN
+1115;W;HANGUL CHOSEONG NIEUN-TIKEUT
+1116;W;HANGUL CHOSEONG NIEUN-PIEUP
+1117;W;HANGUL CHOSEONG TIKEUT-KIYEOK
+1118;W;HANGUL CHOSEONG RIEUL-NIEUN
+1119;W;HANGUL CHOSEONG SSANGRIEUL
+111A;W;HANGUL CHOSEONG RIEUL-HIEUH
+111B;W;HANGUL CHOSEONG KAPYEOUNRIEUL
+111C;W;HANGUL CHOSEONG MIEUM-PIEUP
+111D;W;HANGUL CHOSEONG KAPYEOUNMIEUM
+111E;W;HANGUL CHOSEONG PIEUP-KIYEOK
+111F;W;HANGUL CHOSEONG PIEUP-NIEUN
+1120;W;HANGUL CHOSEONG PIEUP-TIKEUT
+1121;W;HANGUL CHOSEONG PIEUP-SIOS
+1122;W;HANGUL CHOSEONG PIEUP-SIOS-KIYEOK
+1123;W;HANGUL CHOSEONG PIEUP-SIOS-TIKEUT
+1124;W;HANGUL CHOSEONG PIEUP-SIOS-PIEUP
+1125;W;HANGUL CHOSEONG PIEUP-SSANGSIOS
+1126;W;HANGUL CHOSEONG PIEUP-SIOS-CIEUC
+1127;W;HANGUL CHOSEONG PIEUP-CIEUC
+1128;W;HANGUL CHOSEONG PIEUP-CHIEUCH
+1129;W;HANGUL CHOSEONG PIEUP-THIEUTH
+112A;W;HANGUL CHOSEONG PIEUP-PHIEUPH
+112B;W;HANGUL CHOSEONG KAPYEOUNPIEUP
+112C;W;HANGUL CHOSEONG KAPYEOUNSSANGPIEUP
+112D;W;HANGUL CHOSEONG SIOS-KIYEOK
+112E;W;HANGUL CHOSEONG SIOS-NIEUN
+112F;W;HANGUL CHOSEONG SIOS-TIKEUT
+1130;W;HANGUL CHOSEONG SIOS-RIEUL
+1131;W;HANGUL CHOSEONG SIOS-MIEUM
+1132;W;HANGUL CHOSEONG SIOS-PIEUP
+1133;W;HANGUL CHOSEONG SIOS-PIEUP-KIYEOK
+1134;W;HANGUL CHOSEONG SIOS-SSANGSIOS
+1135;W;HANGUL CHOSEONG SIOS-IEUNG
+1136;W;HANGUL CHOSEONG SIOS-CIEUC
+1137;W;HANGUL CHOSEONG SIOS-CHIEUCH
+1138;W;HANGUL CHOSEONG SIOS-KHIEUKH
+1139;W;HANGUL CHOSEONG SIOS-THIEUTH
+113A;W;HANGUL CHOSEONG SIOS-PHIEUPH
+113B;W;HANGUL CHOSEONG SIOS-HIEUH
+113C;W;HANGUL CHOSEONG CHITUEUMSIOS
+113D;W;HANGUL CHOSEONG CHITUEUMSSANGSIOS
+113E;W;HANGUL CHOSEONG CEONGCHIEUMSIOS
+113F;W;HANGUL CHOSEONG CEONGCHIEUMSSANGSIOS
+1140;W;HANGUL CHOSEONG PANSIOS
+1141;W;HANGUL CHOSEONG IEUNG-KIYEOK
+1142;W;HANGUL CHOSEONG IEUNG-TIKEUT
+1143;W;HANGUL CHOSEONG IEUNG-MIEUM
+1144;W;HANGUL CHOSEONG IEUNG-PIEUP
+1145;W;HANGUL CHOSEONG IEUNG-SIOS
+1146;W;HANGUL CHOSEONG IEUNG-PANSIOS
+1147;W;HANGUL CHOSEONG SSANGIEUNG
+1148;W;HANGUL CHOSEONG IEUNG-CIEUC
+1149;W;HANGUL CHOSEONG IEUNG-CHIEUCH
+114A;W;HANGUL CHOSEONG IEUNG-THIEUTH
+114B;W;HANGUL CHOSEONG IEUNG-PHIEUPH
+114C;W;HANGUL CHOSEONG YESIEUNG
+114D;W;HANGUL CHOSEONG CIEUC-IEUNG
+114E;W;HANGUL CHOSEONG CHITUEUMCIEUC
+114F;W;HANGUL CHOSEONG CHITUEUMSSANGCIEUC
+1150;W;HANGUL CHOSEONG CEONGCHIEUMCIEUC
+1151;W;HANGUL CHOSEONG CEONGCHIEUMSSANGCIEUC
+1152;W;HANGUL CHOSEONG CHIEUCH-KHIEUKH
+1153;W;HANGUL CHOSEONG CHIEUCH-HIEUH
+1154;W;HANGUL CHOSEONG CHITUEUMCHIEUCH
+1155;W;HANGUL CHOSEONG CEONGCHIEUMCHIEUCH
+1156;W;HANGUL CHOSEONG PHIEUPH-PIEUP
+1157;W;HANGUL CHOSEONG KAPYEOUNPHIEUPH
+1158;W;HANGUL CHOSEONG SSANGHIEUH
+1159;W;HANGUL CHOSEONG YEORINHIEUH
+115F;W;HANGUL CHOSEONG FILLER
+1160;N;HANGUL JUNGSEONG FILLER
+1161;N;HANGUL JUNGSEONG A
+1162;N;HANGUL JUNGSEONG AE
+1163;N;HANGUL JUNGSEONG YA
+1164;N;HANGUL JUNGSEONG YAE
+1165;N;HANGUL JUNGSEONG EO
+1166;N;HANGUL JUNGSEONG E
+1167;N;HANGUL JUNGSEONG YEO
+1168;N;HANGUL JUNGSEONG YE
+1169;N;HANGUL JUNGSEONG O
+116A;N;HANGUL JUNGSEONG WA
+116B;N;HANGUL JUNGSEONG WAE
+116C;N;HANGUL JUNGSEONG OE
+116D;N;HANGUL JUNGSEONG YO
+116E;N;HANGUL JUNGSEONG U
+116F;N;HANGUL JUNGSEONG WEO
+1170;N;HANGUL JUNGSEONG WE
+1171;N;HANGUL JUNGSEONG WI
+1172;N;HANGUL JUNGSEONG YU
+1173;N;HANGUL JUNGSEONG EU
+1174;N;HANGUL JUNGSEONG YI
+1175;N;HANGUL JUNGSEONG I
+1176;N;HANGUL JUNGSEONG A-O
+1177;N;HANGUL JUNGSEONG A-U
+1178;N;HANGUL JUNGSEONG YA-O
+1179;N;HANGUL JUNGSEONG YA-YO
+117A;N;HANGUL JUNGSEONG EO-O
+117B;N;HANGUL JUNGSEONG EO-U
+117C;N;HANGUL JUNGSEONG EO-EU
+117D;N;HANGUL JUNGSEONG YEO-O
+117E;N;HANGUL JUNGSEONG YEO-U
+117F;N;HANGUL JUNGSEONG O-EO
+1180;N;HANGUL JUNGSEONG O-E
+1181;N;HANGUL JUNGSEONG O-YE
+1182;N;HANGUL JUNGSEONG O-O
+1183;N;HANGUL JUNGSEONG O-U
+1184;N;HANGUL JUNGSEONG YO-YA
+1185;N;HANGUL JUNGSEONG YO-YAE
+1186;N;HANGUL JUNGSEONG YO-YEO
+1187;N;HANGUL JUNGSEONG YO-O
+1188;N;HANGUL JUNGSEONG YO-I
+1189;N;HANGUL JUNGSEONG U-A
+118A;N;HANGUL JUNGSEONG U-AE
+118B;N;HANGUL JUNGSEONG U-EO-EU
+118C;N;HANGUL JUNGSEONG U-YE
+118D;N;HANGUL JUNGSEONG U-U
+118E;N;HANGUL JUNGSEONG YU-A
+118F;N;HANGUL JUNGSEONG YU-EO
+1190;N;HANGUL JUNGSEONG YU-E
+1191;N;HANGUL JUNGSEONG YU-YEO
+1192;N;HANGUL JUNGSEONG YU-YE
+1193;N;HANGUL JUNGSEONG YU-U
+1194;N;HANGUL JUNGSEONG YU-I
+1195;N;HANGUL JUNGSEONG EU-U
+1196;N;HANGUL JUNGSEONG EU-EU
+1197;N;HANGUL JUNGSEONG YI-U
+1198;N;HANGUL JUNGSEONG I-A
+1199;N;HANGUL JUNGSEONG I-YA
+119A;N;HANGUL JUNGSEONG I-O
+119B;N;HANGUL JUNGSEONG I-U
+119C;N;HANGUL JUNGSEONG I-EU
+119D;N;HANGUL JUNGSEONG I-ARAEA
+119E;N;HANGUL JUNGSEONG ARAEA
+119F;N;HANGUL JUNGSEONG ARAEA-EO
+11A0;N;HANGUL JUNGSEONG ARAEA-U
+11A1;N;HANGUL JUNGSEONG ARAEA-I
+11A2;N;HANGUL JUNGSEONG SSANGARAEA
+11A8;N;HANGUL JONGSEONG KIYEOK
+11A9;N;HANGUL JONGSEONG SSANGKIYEOK
+11AA;N;HANGUL JONGSEONG KIYEOK-SIOS
+11AB;N;HANGUL JONGSEONG NIEUN
+11AC;N;HANGUL JONGSEONG NIEUN-CIEUC
+11AD;N;HANGUL JONGSEONG NIEUN-HIEUH
+11AE;N;HANGUL JONGSEONG TIKEUT
+11AF;N;HANGUL JONGSEONG RIEUL
+11B0;N;HANGUL JONGSEONG RIEUL-KIYEOK
+11B1;N;HANGUL JONGSEONG RIEUL-MIEUM
+11B2;N;HANGUL JONGSEONG RIEUL-PIEUP
+11B3;N;HANGUL JONGSEONG RIEUL-SIOS
+11B4;N;HANGUL JONGSEONG RIEUL-THIEUTH
+11B5;N;HANGUL JONGSEONG RIEUL-PHIEUPH
+11B6;N;HANGUL JONGSEONG RIEUL-HIEUH
+11B7;N;HANGUL JONGSEONG MIEUM
+11B8;N;HANGUL JONGSEONG PIEUP
+11B9;N;HANGUL JONGSEONG PIEUP-SIOS
+11BA;N;HANGUL JONGSEONG SIOS
+11BB;N;HANGUL JONGSEONG SSANGSIOS
+11BC;N;HANGUL JONGSEONG IEUNG
+11BD;N;HANGUL JONGSEONG CIEUC
+11BE;N;HANGUL JONGSEONG CHIEUCH
+11BF;N;HANGUL JONGSEONG KHIEUKH
+11C0;N;HANGUL JONGSEONG THIEUTH
+11C1;N;HANGUL JONGSEONG PHIEUPH
+11C2;N;HANGUL JONGSEONG HIEUH
+11C3;N;HANGUL JONGSEONG KIYEOK-RIEUL
+11C4;N;HANGUL JONGSEONG KIYEOK-SIOS-KIYEOK
+11C5;N;HANGUL JONGSEONG NIEUN-KIYEOK
+11C6;N;HANGUL JONGSEONG NIEUN-TIKEUT
+11C7;N;HANGUL JONGSEONG NIEUN-SIOS
+11C8;N;HANGUL JONGSEONG NIEUN-PANSIOS
+11C9;N;HANGUL JONGSEONG NIEUN-THIEUTH
+11CA;N;HANGUL JONGSEONG TIKEUT-KIYEOK
+11CB;N;HANGUL JONGSEONG TIKEUT-RIEUL
+11CC;N;HANGUL JONGSEONG RIEUL-KIYEOK-SIOS
+11CD;N;HANGUL JONGSEONG RIEUL-NIEUN
+11CE;N;HANGUL JONGSEONG RIEUL-TIKEUT
+11CF;N;HANGUL JONGSEONG RIEUL-TIKEUT-HIEUH
+11D0;N;HANGUL JONGSEONG SSANGRIEUL
+11D1;N;HANGUL JONGSEONG RIEUL-MIEUM-KIYEOK
+11D2;N;HANGUL JONGSEONG RIEUL-MIEUM-SIOS
+11D3;N;HANGUL JONGSEONG RIEUL-PIEUP-SIOS
+11D4;N;HANGUL JONGSEONG RIEUL-PIEUP-HIEUH
+11D5;N;HANGUL JONGSEONG RIEUL-KAPYEOUNPIEUP
+11D6;N;HANGUL JONGSEONG RIEUL-SSANGSIOS
+11D7;N;HANGUL JONGSEONG RIEUL-PANSIOS
+11D8;N;HANGUL JONGSEONG RIEUL-KHIEUKH
+11D9;N;HANGUL JONGSEONG RIEUL-YEORINHIEUH
+11DA;N;HANGUL JONGSEONG MIEUM-KIYEOK
+11DB;N;HANGUL JONGSEONG MIEUM-RIEUL
+11DC;N;HANGUL JONGSEONG MIEUM-PIEUP
+11DD;N;HANGUL JONGSEONG MIEUM-SIOS
+11DE;N;HANGUL JONGSEONG MIEUM-SSANGSIOS
+11DF;N;HANGUL JONGSEONG MIEUM-PANSIOS
+11E0;N;HANGUL JONGSEONG MIEUM-CHIEUCH
+11E1;N;HANGUL JONGSEONG MIEUM-HIEUH
+11E2;N;HANGUL JONGSEONG KAPYEOUNMIEUM
+11E3;N;HANGUL JONGSEONG PIEUP-RIEUL
+11E4;N;HANGUL JONGSEONG PIEUP-PHIEUPH
+11E5;N;HANGUL JONGSEONG PIEUP-HIEUH
+11E6;N;HANGUL JONGSEONG KAPYEOUNPIEUP
+11E7;N;HANGUL JONGSEONG SIOS-KIYEOK
+11E8;N;HANGUL JONGSEONG SIOS-TIKEUT
+11E9;N;HANGUL JONGSEONG SIOS-RIEUL
+11EA;N;HANGUL JONGSEONG SIOS-PIEUP
+11EB;N;HANGUL JONGSEONG PANSIOS
+11EC;N;HANGUL JONGSEONG IEUNG-KIYEOK
+11ED;N;HANGUL JONGSEONG IEUNG-SSANGKIYEOK
+11EE;N;HANGUL JONGSEONG SSANGIEUNG
+11EF;N;HANGUL JONGSEONG IEUNG-KHIEUKH
+11F0;N;HANGUL JONGSEONG YESIEUNG
+11F1;N;HANGUL JONGSEONG YESIEUNG-SIOS
+11F2;N;HANGUL JONGSEONG YESIEUNG-PANSIOS
+11F3;N;HANGUL JONGSEONG PHIEUPH-PIEUP
+11F4;N;HANGUL JONGSEONG KAPYEOUNPHIEUPH
+11F5;N;HANGUL JONGSEONG HIEUH-NIEUN
+11F6;N;HANGUL JONGSEONG HIEUH-RIEUL
+11F7;N;HANGUL JONGSEONG HIEUH-MIEUM
+11F8;N;HANGUL JONGSEONG HIEUH-PIEUP
+11F9;N;HANGUL JONGSEONG YEORINHIEUH
+1200;N;ETHIOPIC SYLLABLE HA
+1201;N;ETHIOPIC SYLLABLE HU
+1202;N;ETHIOPIC SYLLABLE HI
+1203;N;ETHIOPIC SYLLABLE HAA
+1204;N;ETHIOPIC SYLLABLE HEE
+1205;N;ETHIOPIC SYLLABLE HE
+1206;N;ETHIOPIC SYLLABLE HO
+1208;N;ETHIOPIC SYLLABLE LA
+1209;N;ETHIOPIC SYLLABLE LU
+120A;N;ETHIOPIC SYLLABLE LI
+120B;N;ETHIOPIC SYLLABLE LAA
+120C;N;ETHIOPIC SYLLABLE LEE
+120D;N;ETHIOPIC SYLLABLE LE
+120E;N;ETHIOPIC SYLLABLE LO
+120F;N;ETHIOPIC SYLLABLE LWA
+1210;N;ETHIOPIC SYLLABLE HHA
+1211;N;ETHIOPIC SYLLABLE HHU
+1212;N;ETHIOPIC SYLLABLE HHI
+1213;N;ETHIOPIC SYLLABLE HHAA
+1214;N;ETHIOPIC SYLLABLE HHEE
+1215;N;ETHIOPIC SYLLABLE HHE
+1216;N;ETHIOPIC SYLLABLE HHO
+1217;N;ETHIOPIC SYLLABLE HHWA
+1218;N;ETHIOPIC SYLLABLE MA
+1219;N;ETHIOPIC SYLLABLE MU
+121A;N;ETHIOPIC SYLLABLE MI
+121B;N;ETHIOPIC SYLLABLE MAA
+121C;N;ETHIOPIC SYLLABLE MEE
+121D;N;ETHIOPIC SYLLABLE ME
+121E;N;ETHIOPIC SYLLABLE MO
+121F;N;ETHIOPIC SYLLABLE MWA
+1220;N;ETHIOPIC SYLLABLE SZA
+1221;N;ETHIOPIC SYLLABLE SZU
+1222;N;ETHIOPIC SYLLABLE SZI
+1223;N;ETHIOPIC SYLLABLE SZAA
+1224;N;ETHIOPIC SYLLABLE SZEE
+1225;N;ETHIOPIC SYLLABLE SZE
+1226;N;ETHIOPIC SYLLABLE SZO
+1227;N;ETHIOPIC SYLLABLE SZWA
+1228;N;ETHIOPIC SYLLABLE RA
+1229;N;ETHIOPIC SYLLABLE RU
+122A;N;ETHIOPIC SYLLABLE RI
+122B;N;ETHIOPIC SYLLABLE RAA
+122C;N;ETHIOPIC SYLLABLE REE
+122D;N;ETHIOPIC SYLLABLE RE
+122E;N;ETHIOPIC SYLLABLE RO
+122F;N;ETHIOPIC SYLLABLE RWA
+1230;N;ETHIOPIC SYLLABLE SA
+1231;N;ETHIOPIC SYLLABLE SU
+1232;N;ETHIOPIC SYLLABLE SI
+1233;N;ETHIOPIC SYLLABLE SAA
+1234;N;ETHIOPIC SYLLABLE SEE
+1235;N;ETHIOPIC SYLLABLE SE
+1236;N;ETHIOPIC SYLLABLE SO
+1237;N;ETHIOPIC SYLLABLE SWA
+1238;N;ETHIOPIC SYLLABLE SHA
+1239;N;ETHIOPIC SYLLABLE SHU
+123A;N;ETHIOPIC SYLLABLE SHI
+123B;N;ETHIOPIC SYLLABLE SHAA
+123C;N;ETHIOPIC SYLLABLE SHEE
+123D;N;ETHIOPIC SYLLABLE SHE
+123E;N;ETHIOPIC SYLLABLE SHO
+123F;N;ETHIOPIC SYLLABLE SHWA
+1240;N;ETHIOPIC SYLLABLE QA
+1241;N;ETHIOPIC SYLLABLE QU
+1242;N;ETHIOPIC SYLLABLE QI
+1243;N;ETHIOPIC SYLLABLE QAA
+1244;N;ETHIOPIC SYLLABLE QEE
+1245;N;ETHIOPIC SYLLABLE QE
+1246;N;ETHIOPIC SYLLABLE QO
+1248;N;ETHIOPIC SYLLABLE QWA
+124A;N;ETHIOPIC SYLLABLE QWI
+124B;N;ETHIOPIC SYLLABLE QWAA
+124C;N;ETHIOPIC SYLLABLE QWEE
+124D;N;ETHIOPIC SYLLABLE QWE
+1250;N;ETHIOPIC SYLLABLE QHA
+1251;N;ETHIOPIC SYLLABLE QHU
+1252;N;ETHIOPIC SYLLABLE QHI
+1253;N;ETHIOPIC SYLLABLE QHAA
+1254;N;ETHIOPIC SYLLABLE QHEE
+1255;N;ETHIOPIC SYLLABLE QHE
+1256;N;ETHIOPIC SYLLABLE QHO
+1258;N;ETHIOPIC SYLLABLE QHWA
+125A;N;ETHIOPIC SYLLABLE QHWI
+125B;N;ETHIOPIC SYLLABLE QHWAA
+125C;N;ETHIOPIC SYLLABLE QHWEE
+125D;N;ETHIOPIC SYLLABLE QHWE
+1260;N;ETHIOPIC SYLLABLE BA
+1261;N;ETHIOPIC SYLLABLE BU
+1262;N;ETHIOPIC SYLLABLE BI
+1263;N;ETHIOPIC SYLLABLE BAA
+1264;N;ETHIOPIC SYLLABLE BEE
+1265;N;ETHIOPIC SYLLABLE BE
+1266;N;ETHIOPIC SYLLABLE BO
+1267;N;ETHIOPIC SYLLABLE BWA
+1268;N;ETHIOPIC SYLLABLE VA
+1269;N;ETHIOPIC SYLLABLE VU
+126A;N;ETHIOPIC SYLLABLE VI
+126B;N;ETHIOPIC SYLLABLE VAA
+126C;N;ETHIOPIC SYLLABLE VEE
+126D;N;ETHIOPIC SYLLABLE VE
+126E;N;ETHIOPIC SYLLABLE VO
+126F;N;ETHIOPIC SYLLABLE VWA
+1270;N;ETHIOPIC SYLLABLE TA
+1271;N;ETHIOPIC SYLLABLE TU
+1272;N;ETHIOPIC SYLLABLE TI
+1273;N;ETHIOPIC SYLLABLE TAA
+1274;N;ETHIOPIC SYLLABLE TEE
+1275;N;ETHIOPIC SYLLABLE TE
+1276;N;ETHIOPIC SYLLABLE TO
+1277;N;ETHIOPIC SYLLABLE TWA
+1278;N;ETHIOPIC SYLLABLE CA
+1279;N;ETHIOPIC SYLLABLE CU
+127A;N;ETHIOPIC SYLLABLE CI
+127B;N;ETHIOPIC SYLLABLE CAA
+127C;N;ETHIOPIC SYLLABLE CEE
+127D;N;ETHIOPIC SYLLABLE CE
+127E;N;ETHIOPIC SYLLABLE CO
+127F;N;ETHIOPIC SYLLABLE CWA
+1280;N;ETHIOPIC SYLLABLE XA
+1281;N;ETHIOPIC SYLLABLE XU
+1282;N;ETHIOPIC SYLLABLE XI
+1283;N;ETHIOPIC SYLLABLE XAA
+1284;N;ETHIOPIC SYLLABLE XEE
+1285;N;ETHIOPIC SYLLABLE XE
+1286;N;ETHIOPIC SYLLABLE XO
+1288;N;ETHIOPIC SYLLABLE XWA
+128A;N;ETHIOPIC SYLLABLE XWI
+128B;N;ETHIOPIC SYLLABLE XWAA
+128C;N;ETHIOPIC SYLLABLE XWEE
+128D;N;ETHIOPIC SYLLABLE XWE
+1290;N;ETHIOPIC SYLLABLE NA
+1291;N;ETHIOPIC SYLLABLE NU
+1292;N;ETHIOPIC SYLLABLE NI
+1293;N;ETHIOPIC SYLLABLE NAA
+1294;N;ETHIOPIC SYLLABLE NEE
+1295;N;ETHIOPIC SYLLABLE NE
+1296;N;ETHIOPIC SYLLABLE NO
+1297;N;ETHIOPIC SYLLABLE NWA
+1298;N;ETHIOPIC SYLLABLE NYA
+1299;N;ETHIOPIC SYLLABLE NYU
+129A;N;ETHIOPIC SYLLABLE NYI
+129B;N;ETHIOPIC SYLLABLE NYAA
+129C;N;ETHIOPIC SYLLABLE NYEE
+129D;N;ETHIOPIC SYLLABLE NYE
+129E;N;ETHIOPIC SYLLABLE NYO
+129F;N;ETHIOPIC SYLLABLE NYWA
+12A0;N;ETHIOPIC SYLLABLE GLOTTAL A
+12A1;N;ETHIOPIC SYLLABLE GLOTTAL U
+12A2;N;ETHIOPIC SYLLABLE GLOTTAL I
+12A3;N;ETHIOPIC SYLLABLE GLOTTAL AA
+12A4;N;ETHIOPIC SYLLABLE GLOTTAL EE
+12A5;N;ETHIOPIC SYLLABLE GLOTTAL E
+12A6;N;ETHIOPIC SYLLABLE GLOTTAL O
+12A7;N;ETHIOPIC SYLLABLE GLOTTAL WA
+12A8;N;ETHIOPIC SYLLABLE KA
+12A9;N;ETHIOPIC SYLLABLE KU
+12AA;N;ETHIOPIC SYLLABLE KI
+12AB;N;ETHIOPIC SYLLABLE KAA
+12AC;N;ETHIOPIC SYLLABLE KEE
+12AD;N;ETHIOPIC SYLLABLE KE
+12AE;N;ETHIOPIC SYLLABLE KO
+12B0;N;ETHIOPIC SYLLABLE KWA
+12B2;N;ETHIOPIC SYLLABLE KWI
+12B3;N;ETHIOPIC SYLLABLE KWAA
+12B4;N;ETHIOPIC SYLLABLE KWEE
+12B5;N;ETHIOPIC SYLLABLE KWE
+12B8;N;ETHIOPIC SYLLABLE KXA
+12B9;N;ETHIOPIC SYLLABLE KXU
+12BA;N;ETHIOPIC SYLLABLE KXI
+12BB;N;ETHIOPIC SYLLABLE KXAA
+12BC;N;ETHIOPIC SYLLABLE KXEE
+12BD;N;ETHIOPIC SYLLABLE KXE
+12BE;N;ETHIOPIC SYLLABLE KXO
+12C0;N;ETHIOPIC SYLLABLE KXWA
+12C2;N;ETHIOPIC SYLLABLE KXWI
+12C3;N;ETHIOPIC SYLLABLE KXWAA
+12C4;N;ETHIOPIC SYLLABLE KXWEE
+12C5;N;ETHIOPIC SYLLABLE KXWE
+12C8;N;ETHIOPIC SYLLABLE WA
+12C9;N;ETHIOPIC SYLLABLE WU
+12CA;N;ETHIOPIC SYLLABLE WI
+12CB;N;ETHIOPIC SYLLABLE WAA
+12CC;N;ETHIOPIC SYLLABLE WEE
+12CD;N;ETHIOPIC SYLLABLE WE
+12CE;N;ETHIOPIC SYLLABLE WO
+12D0;N;ETHIOPIC SYLLABLE PHARYNGEAL A
+12D1;N;ETHIOPIC SYLLABLE PHARYNGEAL U
+12D2;N;ETHIOPIC SYLLABLE PHARYNGEAL I
+12D3;N;ETHIOPIC SYLLABLE PHARYNGEAL AA
+12D4;N;ETHIOPIC SYLLABLE PHARYNGEAL EE
+12D5;N;ETHIOPIC SYLLABLE PHARYNGEAL E
+12D6;N;ETHIOPIC SYLLABLE PHARYNGEAL O
+12D8;N;ETHIOPIC SYLLABLE ZA
+12D9;N;ETHIOPIC SYLLABLE ZU
+12DA;N;ETHIOPIC SYLLABLE ZI
+12DB;N;ETHIOPIC SYLLABLE ZAA
+12DC;N;ETHIOPIC SYLLABLE ZEE
+12DD;N;ETHIOPIC SYLLABLE ZE
+12DE;N;ETHIOPIC SYLLABLE ZO
+12DF;N;ETHIOPIC SYLLABLE ZWA
+12E0;N;ETHIOPIC SYLLABLE ZHA
+12E1;N;ETHIOPIC SYLLABLE ZHU
+12E2;N;ETHIOPIC SYLLABLE ZHI
+12E3;N;ETHIOPIC SYLLABLE ZHAA
+12E4;N;ETHIOPIC SYLLABLE ZHEE
+12E5;N;ETHIOPIC SYLLABLE ZHE
+12E6;N;ETHIOPIC SYLLABLE ZHO
+12E7;N;ETHIOPIC SYLLABLE ZHWA
+12E8;N;ETHIOPIC SYLLABLE YA
+12E9;N;ETHIOPIC SYLLABLE YU
+12EA;N;ETHIOPIC SYLLABLE YI
+12EB;N;ETHIOPIC SYLLABLE YAA
+12EC;N;ETHIOPIC SYLLABLE YEE
+12ED;N;ETHIOPIC SYLLABLE YE
+12EE;N;ETHIOPIC SYLLABLE YO
+12F0;N;ETHIOPIC SYLLABLE DA
+12F1;N;ETHIOPIC SYLLABLE DU
+12F2;N;ETHIOPIC SYLLABLE DI
+12F3;N;ETHIOPIC SYLLABLE DAA
+12F4;N;ETHIOPIC SYLLABLE DEE
+12F5;N;ETHIOPIC SYLLABLE DE
+12F6;N;ETHIOPIC SYLLABLE DO
+12F7;N;ETHIOPIC SYLLABLE DWA
+12F8;N;ETHIOPIC SYLLABLE DDA
+12F9;N;ETHIOPIC SYLLABLE DDU
+12FA;N;ETHIOPIC SYLLABLE DDI
+12FB;N;ETHIOPIC SYLLABLE DDAA
+12FC;N;ETHIOPIC SYLLABLE DDEE
+12FD;N;ETHIOPIC SYLLABLE DDE
+12FE;N;ETHIOPIC SYLLABLE DDO
+12FF;N;ETHIOPIC SYLLABLE DDWA
+1300;N;ETHIOPIC SYLLABLE JA
+1301;N;ETHIOPIC SYLLABLE JU
+1302;N;ETHIOPIC SYLLABLE JI
+1303;N;ETHIOPIC SYLLABLE JAA
+1304;N;ETHIOPIC SYLLABLE JEE
+1305;N;ETHIOPIC SYLLABLE JE
+1306;N;ETHIOPIC SYLLABLE JO
+1307;N;ETHIOPIC SYLLABLE JWA
+1308;N;ETHIOPIC SYLLABLE GA
+1309;N;ETHIOPIC SYLLABLE GU
+130A;N;ETHIOPIC SYLLABLE GI
+130B;N;ETHIOPIC SYLLABLE GAA
+130C;N;ETHIOPIC SYLLABLE GEE
+130D;N;ETHIOPIC SYLLABLE GE
+130E;N;ETHIOPIC SYLLABLE GO
+1310;N;ETHIOPIC SYLLABLE GWA
+1312;N;ETHIOPIC SYLLABLE GWI
+1313;N;ETHIOPIC SYLLABLE GWAA
+1314;N;ETHIOPIC SYLLABLE GWEE
+1315;N;ETHIOPIC SYLLABLE GWE
+1318;N;ETHIOPIC SYLLABLE GGA
+1319;N;ETHIOPIC SYLLABLE GGU
+131A;N;ETHIOPIC SYLLABLE GGI
+131B;N;ETHIOPIC SYLLABLE GGAA
+131C;N;ETHIOPIC SYLLABLE GGEE
+131D;N;ETHIOPIC SYLLABLE GGE
+131E;N;ETHIOPIC SYLLABLE GGO
+1320;N;ETHIOPIC SYLLABLE THA
+1321;N;ETHIOPIC SYLLABLE THU
+1322;N;ETHIOPIC SYLLABLE THI
+1323;N;ETHIOPIC SYLLABLE THAA
+1324;N;ETHIOPIC SYLLABLE THEE
+1325;N;ETHIOPIC SYLLABLE THE
+1326;N;ETHIOPIC SYLLABLE THO
+1327;N;ETHIOPIC SYLLABLE THWA
+1328;N;ETHIOPIC SYLLABLE CHA
+1329;N;ETHIOPIC SYLLABLE CHU
+132A;N;ETHIOPIC SYLLABLE CHI
+132B;N;ETHIOPIC SYLLABLE CHAA
+132C;N;ETHIOPIC SYLLABLE CHEE
+132D;N;ETHIOPIC SYLLABLE CHE
+132E;N;ETHIOPIC SYLLABLE CHO
+132F;N;ETHIOPIC SYLLABLE CHWA
+1330;N;ETHIOPIC SYLLABLE PHA
+1331;N;ETHIOPIC SYLLABLE PHU
+1332;N;ETHIOPIC SYLLABLE PHI
+1333;N;ETHIOPIC SYLLABLE PHAA
+1334;N;ETHIOPIC SYLLABLE PHEE
+1335;N;ETHIOPIC SYLLABLE PHE
+1336;N;ETHIOPIC SYLLABLE PHO
+1337;N;ETHIOPIC SYLLABLE PHWA
+1338;N;ETHIOPIC SYLLABLE TSA
+1339;N;ETHIOPIC SYLLABLE TSU
+133A;N;ETHIOPIC SYLLABLE TSI
+133B;N;ETHIOPIC SYLLABLE TSAA
+133C;N;ETHIOPIC SYLLABLE TSEE
+133D;N;ETHIOPIC SYLLABLE TSE
+133E;N;ETHIOPIC SYLLABLE TSO
+133F;N;ETHIOPIC SYLLABLE TSWA
+1340;N;ETHIOPIC SYLLABLE TZA
+1341;N;ETHIOPIC SYLLABLE TZU
+1342;N;ETHIOPIC SYLLABLE TZI
+1343;N;ETHIOPIC SYLLABLE TZAA
+1344;N;ETHIOPIC SYLLABLE TZEE
+1345;N;ETHIOPIC SYLLABLE TZE
+1346;N;ETHIOPIC SYLLABLE TZO
+1348;N;ETHIOPIC SYLLABLE FA
+1349;N;ETHIOPIC SYLLABLE FU
+134A;N;ETHIOPIC SYLLABLE FI
+134B;N;ETHIOPIC SYLLABLE FAA
+134C;N;ETHIOPIC SYLLABLE FEE
+134D;N;ETHIOPIC SYLLABLE FE
+134E;N;ETHIOPIC SYLLABLE FO
+134F;N;ETHIOPIC SYLLABLE FWA
+1350;N;ETHIOPIC SYLLABLE PA
+1351;N;ETHIOPIC SYLLABLE PU
+1352;N;ETHIOPIC SYLLABLE PI
+1353;N;ETHIOPIC SYLLABLE PAA
+1354;N;ETHIOPIC SYLLABLE PEE
+1355;N;ETHIOPIC SYLLABLE PE
+1356;N;ETHIOPIC SYLLABLE PO
+1357;N;ETHIOPIC SYLLABLE PWA
+1358;N;ETHIOPIC SYLLABLE RYA
+1359;N;ETHIOPIC SYLLABLE MYA
+135A;N;ETHIOPIC SYLLABLE FYA
+1361;N;ETHIOPIC WORDSPACE
+1362;N;ETHIOPIC FULL STOP
+1363;N;ETHIOPIC COMMA
+1364;N;ETHIOPIC SEMICOLON
+1365;N;ETHIOPIC COLON
+1366;N;ETHIOPIC PREFACE COLON
+1367;N;ETHIOPIC QUESTION MARK
+1368;N;ETHIOPIC PARAGRAPH SEPARATOR
+1369;N;ETHIOPIC DIGIT ONE
+136A;N;ETHIOPIC DIGIT TWO
+136B;N;ETHIOPIC DIGIT THREE
+136C;N;ETHIOPIC DIGIT FOUR
+136D;N;ETHIOPIC DIGIT FIVE
+136E;N;ETHIOPIC DIGIT SIX
+136F;N;ETHIOPIC DIGIT SEVEN
+1370;N;ETHIOPIC DIGIT EIGHT
+1371;N;ETHIOPIC DIGIT NINE
+1372;N;ETHIOPIC NUMBER TEN
+1373;N;ETHIOPIC NUMBER TWENTY
+1374;N;ETHIOPIC NUMBER THIRTY
+1375;N;ETHIOPIC NUMBER FORTY
+1376;N;ETHIOPIC NUMBER FIFTY
+1377;N;ETHIOPIC NUMBER SIXTY
+1378;N;ETHIOPIC NUMBER SEVENTY
+1379;N;ETHIOPIC NUMBER EIGHTY
+137A;N;ETHIOPIC NUMBER NINETY
+137B;N;ETHIOPIC NUMBER HUNDRED
+137C;N;ETHIOPIC NUMBER TEN THOUSAND
+13A0;N;CHEROKEE LETTER A
+13A1;N;CHEROKEE LETTER E
+13A2;N;CHEROKEE LETTER I
+13A3;N;CHEROKEE LETTER O
+13A4;N;CHEROKEE LETTER U
+13A5;N;CHEROKEE LETTER V
+13A6;N;CHEROKEE LETTER GA
+13A7;N;CHEROKEE LETTER KA
+13A8;N;CHEROKEE LETTER GE
+13A9;N;CHEROKEE LETTER GI
+13AA;N;CHEROKEE LETTER GO
+13AB;N;CHEROKEE LETTER GU
+13AC;N;CHEROKEE LETTER GV
+13AD;N;CHEROKEE LETTER HA
+13AE;N;CHEROKEE LETTER HE
+13AF;N;CHEROKEE LETTER HI
+13B0;N;CHEROKEE LETTER HO
+13B1;N;CHEROKEE LETTER HU
+13B2;N;CHEROKEE LETTER HV
+13B3;N;CHEROKEE LETTER LA
+13B4;N;CHEROKEE LETTER LE
+13B5;N;CHEROKEE LETTER LI
+13B6;N;CHEROKEE LETTER LO
+13B7;N;CHEROKEE LETTER LU
+13B8;N;CHEROKEE LETTER LV
+13B9;N;CHEROKEE LETTER MA
+13BA;N;CHEROKEE LETTER ME
+13BB;N;CHEROKEE LETTER MI
+13BC;N;CHEROKEE LETTER MO
+13BD;N;CHEROKEE LETTER MU
+13BE;N;CHEROKEE LETTER NA
+13BF;N;CHEROKEE LETTER HNA
+13C0;N;CHEROKEE LETTER NAH
+13C1;N;CHEROKEE LETTER NE
+13C2;N;CHEROKEE LETTER NI
+13C3;N;CHEROKEE LETTER NO
+13C4;N;CHEROKEE LETTER NU
+13C5;N;CHEROKEE LETTER NV
+13C6;N;CHEROKEE LETTER QUA
+13C7;N;CHEROKEE LETTER QUE
+13C8;N;CHEROKEE LETTER QUI
+13C9;N;CHEROKEE LETTER QUO
+13CA;N;CHEROKEE LETTER QUU
+13CB;N;CHEROKEE LETTER QUV
+13CC;N;CHEROKEE LETTER SA
+13CD;N;CHEROKEE LETTER S
+13CE;N;CHEROKEE LETTER SE
+13CF;N;CHEROKEE LETTER SI
+13D0;N;CHEROKEE LETTER SO
+13D1;N;CHEROKEE LETTER SU
+13D2;N;CHEROKEE LETTER SV
+13D3;N;CHEROKEE LETTER DA
+13D4;N;CHEROKEE LETTER TA
+13D5;N;CHEROKEE LETTER DE
+13D6;N;CHEROKEE LETTER TE
+13D7;N;CHEROKEE LETTER DI
+13D8;N;CHEROKEE LETTER TI
+13D9;N;CHEROKEE LETTER DO
+13DA;N;CHEROKEE LETTER DU
+13DB;N;CHEROKEE LETTER DV
+13DC;N;CHEROKEE LETTER DLA
+13DD;N;CHEROKEE LETTER TLA
+13DE;N;CHEROKEE LETTER TLE
+13DF;N;CHEROKEE LETTER TLI
+13E0;N;CHEROKEE LETTER TLO
+13E1;N;CHEROKEE LETTER TLU
+13E2;N;CHEROKEE LETTER TLV
+13E3;N;CHEROKEE LETTER TSA
+13E4;N;CHEROKEE LETTER TSE
+13E5;N;CHEROKEE LETTER TSI
+13E6;N;CHEROKEE LETTER TSO
+13E7;N;CHEROKEE LETTER TSU
+13E8;N;CHEROKEE LETTER TSV
+13E9;N;CHEROKEE LETTER WA
+13EA;N;CHEROKEE LETTER WE
+13EB;N;CHEROKEE LETTER WI
+13EC;N;CHEROKEE LETTER WO
+13ED;N;CHEROKEE LETTER WU
+13EE;N;CHEROKEE LETTER WV
+13EF;N;CHEROKEE LETTER YA
+13F0;N;CHEROKEE LETTER YE
+13F1;N;CHEROKEE LETTER YI
+13F2;N;CHEROKEE LETTER YO
+13F3;N;CHEROKEE LETTER YU
+13F4;N;CHEROKEE LETTER YV
+1401;N;CANADIAN SYLLABICS E
+1402;N;CANADIAN SYLLABICS AAI
+1403;N;CANADIAN SYLLABICS I
+1404;N;CANADIAN SYLLABICS II
+1405;N;CANADIAN SYLLABICS O
+1406;N;CANADIAN SYLLABICS OO
+1407;N;CANADIAN SYLLABICS Y-CREE OO
+1408;N;CANADIAN SYLLABICS CARRIER EE
+1409;N;CANADIAN SYLLABICS CARRIER I
+140A;N;CANADIAN SYLLABICS A
+140B;N;CANADIAN SYLLABICS AA
+140C;N;CANADIAN SYLLABICS WE
+140D;N;CANADIAN SYLLABICS WEST-CREE WE
+140E;N;CANADIAN SYLLABICS WI
+140F;N;CANADIAN SYLLABICS WEST-CREE WI
+1410;N;CANADIAN SYLLABICS WII
+1411;N;CANADIAN SYLLABICS WEST-CREE WII
+1412;N;CANADIAN SYLLABICS WO
+1413;N;CANADIAN SYLLABICS WEST-CREE WO
+1414;N;CANADIAN SYLLABICS WOO
+1415;N;CANADIAN SYLLABICS WEST-CREE WOO
+1416;N;CANADIAN SYLLABICS NASKAPI WOO
+1417;N;CANADIAN SYLLABICS WA
+1418;N;CANADIAN SYLLABICS WEST-CREE WA
+1419;N;CANADIAN SYLLABICS WAA
+141A;N;CANADIAN SYLLABICS WEST-CREE WAA
+141B;N;CANADIAN SYLLABICS NASKAPI WAA
+141C;N;CANADIAN SYLLABICS AI
+141D;N;CANADIAN SYLLABICS Y-CREE W
+141E;N;CANADIAN SYLLABICS GLOTTAL STOP
+141F;N;CANADIAN SYLLABICS FINAL ACUTE
+1420;N;CANADIAN SYLLABICS FINAL GRAVE
+1421;N;CANADIAN SYLLABICS FINAL BOTTOM HALF RING
+1422;N;CANADIAN SYLLABICS FINAL TOP HALF RING
+1423;N;CANADIAN SYLLABICS FINAL RIGHT HALF RING
+1424;N;CANADIAN SYLLABICS FINAL RING
+1425;N;CANADIAN SYLLABICS FINAL DOUBLE ACUTE
+1426;N;CANADIAN SYLLABICS FINAL DOUBLE SHORT VERTICAL STROKES
+1427;N;CANADIAN SYLLABICS FINAL MIDDLE DOT
+1428;N;CANADIAN SYLLABICS FINAL SHORT HORIZONTAL STROKE
+1429;N;CANADIAN SYLLABICS FINAL PLUS
+142A;N;CANADIAN SYLLABICS FINAL DOWN TACK
+142B;N;CANADIAN SYLLABICS EN
+142C;N;CANADIAN SYLLABICS IN
+142D;N;CANADIAN SYLLABICS ON
+142E;N;CANADIAN SYLLABICS AN
+142F;N;CANADIAN SYLLABICS PE
+1430;N;CANADIAN SYLLABICS PAAI
+1431;N;CANADIAN SYLLABICS PI
+1432;N;CANADIAN SYLLABICS PII
+1433;N;CANADIAN SYLLABICS PO
+1434;N;CANADIAN SYLLABICS POO
+1435;N;CANADIAN SYLLABICS Y-CREE POO
+1436;N;CANADIAN SYLLABICS CARRIER HEE
+1437;N;CANADIAN SYLLABICS CARRIER HI
+1438;N;CANADIAN SYLLABICS PA
+1439;N;CANADIAN SYLLABICS PAA
+143A;N;CANADIAN SYLLABICS PWE
+143B;N;CANADIAN SYLLABICS WEST-CREE PWE
+143C;N;CANADIAN SYLLABICS PWI
+143D;N;CANADIAN SYLLABICS WEST-CREE PWI
+143E;N;CANADIAN SYLLABICS PWII
+143F;N;CANADIAN SYLLABICS WEST-CREE PWII
+1440;N;CANADIAN SYLLABICS PWO
+1441;N;CANADIAN SYLLABICS WEST-CREE PWO
+1442;N;CANADIAN SYLLABICS PWOO
+1443;N;CANADIAN SYLLABICS WEST-CREE PWOO
+1444;N;CANADIAN SYLLABICS PWA
+1445;N;CANADIAN SYLLABICS WEST-CREE PWA
+1446;N;CANADIAN SYLLABICS PWAA
+1447;N;CANADIAN SYLLABICS WEST-CREE PWAA
+1448;N;CANADIAN SYLLABICS Y-CREE PWAA
+1449;N;CANADIAN SYLLABICS P
+144A;N;CANADIAN SYLLABICS WEST-CREE P
+144B;N;CANADIAN SYLLABICS CARRIER H
+144C;N;CANADIAN SYLLABICS TE
+144D;N;CANADIAN SYLLABICS TAAI
+144E;N;CANADIAN SYLLABICS TI
+144F;N;CANADIAN SYLLABICS TII
+1450;N;CANADIAN SYLLABICS TO
+1451;N;CANADIAN SYLLABICS TOO
+1452;N;CANADIAN SYLLABICS Y-CREE TOO
+1453;N;CANADIAN SYLLABICS CARRIER DEE
+1454;N;CANADIAN SYLLABICS CARRIER DI
+1455;N;CANADIAN SYLLABICS TA
+1456;N;CANADIAN SYLLABICS TAA
+1457;N;CANADIAN SYLLABICS TWE
+1458;N;CANADIAN SYLLABICS WEST-CREE TWE
+1459;N;CANADIAN SYLLABICS TWI
+145A;N;CANADIAN SYLLABICS WEST-CREE TWI
+145B;N;CANADIAN SYLLABICS TWII
+145C;N;CANADIAN SYLLABICS WEST-CREE TWII
+145D;N;CANADIAN SYLLABICS TWO
+145E;N;CANADIAN SYLLABICS WEST-CREE TWO
+145F;N;CANADIAN SYLLABICS TWOO
+1460;N;CANADIAN SYLLABICS WEST-CREE TWOO
+1461;N;CANADIAN SYLLABICS TWA
+1462;N;CANADIAN SYLLABICS WEST-CREE TWA
+1463;N;CANADIAN SYLLABICS TWAA
+1464;N;CANADIAN SYLLABICS WEST-CREE TWAA
+1465;N;CANADIAN SYLLABICS NASKAPI TWAA
+1466;N;CANADIAN SYLLABICS T
+1467;N;CANADIAN SYLLABICS TTE
+1468;N;CANADIAN SYLLABICS TTI
+1469;N;CANADIAN SYLLABICS TTO
+146A;N;CANADIAN SYLLABICS TTA
+146B;N;CANADIAN SYLLABICS KE
+146C;N;CANADIAN SYLLABICS KAAI
+146D;N;CANADIAN SYLLABICS KI
+146E;N;CANADIAN SYLLABICS KII
+146F;N;CANADIAN SYLLABICS KO
+1470;N;CANADIAN SYLLABICS KOO
+1471;N;CANADIAN SYLLABICS Y-CREE KOO
+1472;N;CANADIAN SYLLABICS KA
+1473;N;CANADIAN SYLLABICS KAA
+1474;N;CANADIAN SYLLABICS KWE
+1475;N;CANADIAN SYLLABICS WEST-CREE KWE
+1476;N;CANADIAN SYLLABICS KWI
+1477;N;CANADIAN SYLLABICS WEST-CREE KWI
+1478;N;CANADIAN SYLLABICS KWII
+1479;N;CANADIAN SYLLABICS WEST-CREE KWII
+147A;N;CANADIAN SYLLABICS KWO
+147B;N;CANADIAN SYLLABICS WEST-CREE KWO
+147C;N;CANADIAN SYLLABICS KWOO
+147D;N;CANADIAN SYLLABICS WEST-CREE KWOO
+147E;N;CANADIAN SYLLABICS KWA
+147F;N;CANADIAN SYLLABICS WEST-CREE KWA
+1480;N;CANADIAN SYLLABICS KWAA
+1481;N;CANADIAN SYLLABICS WEST-CREE KWAA
+1482;N;CANADIAN SYLLABICS NASKAPI KWAA
+1483;N;CANADIAN SYLLABICS K
+1484;N;CANADIAN SYLLABICS KW
+1485;N;CANADIAN SYLLABICS SOUTH-SLAVEY KEH
+1486;N;CANADIAN SYLLABICS SOUTH-SLAVEY KIH
+1487;N;CANADIAN SYLLABICS SOUTH-SLAVEY KOH
+1488;N;CANADIAN SYLLABICS SOUTH-SLAVEY KAH
+1489;N;CANADIAN SYLLABICS CE
+148A;N;CANADIAN SYLLABICS CAAI
+148B;N;CANADIAN SYLLABICS CI
+148C;N;CANADIAN SYLLABICS CII
+148D;N;CANADIAN SYLLABICS CO
+148E;N;CANADIAN SYLLABICS COO
+148F;N;CANADIAN SYLLABICS Y-CREE COO
+1490;N;CANADIAN SYLLABICS CA
+1491;N;CANADIAN SYLLABICS CAA
+1492;N;CANADIAN SYLLABICS CWE
+1493;N;CANADIAN SYLLABICS WEST-CREE CWE
+1494;N;CANADIAN SYLLABICS CWI
+1495;N;CANADIAN SYLLABICS WEST-CREE CWI
+1496;N;CANADIAN SYLLABICS CWII
+1497;N;CANADIAN SYLLABICS WEST-CREE CWII
+1498;N;CANADIAN SYLLABICS CWO
+1499;N;CANADIAN SYLLABICS WEST-CREE CWO
+149A;N;CANADIAN SYLLABICS CWOO
+149B;N;CANADIAN SYLLABICS WEST-CREE CWOO
+149C;N;CANADIAN SYLLABICS CWA
+149D;N;CANADIAN SYLLABICS WEST-CREE CWA
+149E;N;CANADIAN SYLLABICS CWAA
+149F;N;CANADIAN SYLLABICS WEST-CREE CWAA
+14A0;N;CANADIAN SYLLABICS NASKAPI CWAA
+14A1;N;CANADIAN SYLLABICS C
+14A2;N;CANADIAN SYLLABICS SAYISI TH
+14A3;N;CANADIAN SYLLABICS ME
+14A4;N;CANADIAN SYLLABICS MAAI
+14A5;N;CANADIAN SYLLABICS MI
+14A6;N;CANADIAN SYLLABICS MII
+14A7;N;CANADIAN SYLLABICS MO
+14A8;N;CANADIAN SYLLABICS MOO
+14A9;N;CANADIAN SYLLABICS Y-CREE MOO
+14AA;N;CANADIAN SYLLABICS MA
+14AB;N;CANADIAN SYLLABICS MAA
+14AC;N;CANADIAN SYLLABICS MWE
+14AD;N;CANADIAN SYLLABICS WEST-CREE MWE
+14AE;N;CANADIAN SYLLABICS MWI
+14AF;N;CANADIAN SYLLABICS WEST-CREE MWI
+14B0;N;CANADIAN SYLLABICS MWII
+14B1;N;CANADIAN SYLLABICS WEST-CREE MWII
+14B2;N;CANADIAN SYLLABICS MWO
+14B3;N;CANADIAN SYLLABICS WEST-CREE MWO
+14B4;N;CANADIAN SYLLABICS MWOO
+14B5;N;CANADIAN SYLLABICS WEST-CREE MWOO
+14B6;N;CANADIAN SYLLABICS MWA
+14B7;N;CANADIAN SYLLABICS WEST-CREE MWA
+14B8;N;CANADIAN SYLLABICS MWAA
+14B9;N;CANADIAN SYLLABICS WEST-CREE MWAA
+14BA;N;CANADIAN SYLLABICS NASKAPI MWAA
+14BB;N;CANADIAN SYLLABICS M
+14BC;N;CANADIAN SYLLABICS WEST-CREE M
+14BD;N;CANADIAN SYLLABICS MH
+14BE;N;CANADIAN SYLLABICS ATHAPASCAN M
+14BF;N;CANADIAN SYLLABICS SAYISI M
+14C0;N;CANADIAN SYLLABICS NE
+14C1;N;CANADIAN SYLLABICS NAAI
+14C2;N;CANADIAN SYLLABICS NI
+14C3;N;CANADIAN SYLLABICS NII
+14C4;N;CANADIAN SYLLABICS NO
+14C5;N;CANADIAN SYLLABICS NOO
+14C6;N;CANADIAN SYLLABICS Y-CREE NOO
+14C7;N;CANADIAN SYLLABICS NA
+14C8;N;CANADIAN SYLLABICS NAA
+14C9;N;CANADIAN SYLLABICS NWE
+14CA;N;CANADIAN SYLLABICS WEST-CREE NWE
+14CB;N;CANADIAN SYLLABICS NWA
+14CC;N;CANADIAN SYLLABICS WEST-CREE NWA
+14CD;N;CANADIAN SYLLABICS NWAA
+14CE;N;CANADIAN SYLLABICS WEST-CREE NWAA
+14CF;N;CANADIAN SYLLABICS NASKAPI NWAA
+14D0;N;CANADIAN SYLLABICS N
+14D1;N;CANADIAN SYLLABICS CARRIER NG
+14D2;N;CANADIAN SYLLABICS NH
+14D3;N;CANADIAN SYLLABICS LE
+14D4;N;CANADIAN SYLLABICS LAAI
+14D5;N;CANADIAN SYLLABICS LI
+14D6;N;CANADIAN SYLLABICS LII
+14D7;N;CANADIAN SYLLABICS LO
+14D8;N;CANADIAN SYLLABICS LOO
+14D9;N;CANADIAN SYLLABICS Y-CREE LOO
+14DA;N;CANADIAN SYLLABICS LA
+14DB;N;CANADIAN SYLLABICS LAA
+14DC;N;CANADIAN SYLLABICS LWE
+14DD;N;CANADIAN SYLLABICS WEST-CREE LWE
+14DE;N;CANADIAN SYLLABICS LWI
+14DF;N;CANADIAN SYLLABICS WEST-CREE LWI
+14E0;N;CANADIAN SYLLABICS LWII
+14E1;N;CANADIAN SYLLABICS WEST-CREE LWII
+14E2;N;CANADIAN SYLLABICS LWO
+14E3;N;CANADIAN SYLLABICS WEST-CREE LWO
+14E4;N;CANADIAN SYLLABICS LWOO
+14E5;N;CANADIAN SYLLABICS WEST-CREE LWOO
+14E6;N;CANADIAN SYLLABICS LWA
+14E7;N;CANADIAN SYLLABICS WEST-CREE LWA
+14E8;N;CANADIAN SYLLABICS LWAA
+14E9;N;CANADIAN SYLLABICS WEST-CREE LWAA
+14EA;N;CANADIAN SYLLABICS L
+14EB;N;CANADIAN SYLLABICS WEST-CREE L
+14EC;N;CANADIAN SYLLABICS MEDIAL L
+14ED;N;CANADIAN SYLLABICS SE
+14EE;N;CANADIAN SYLLABICS SAAI
+14EF;N;CANADIAN SYLLABICS SI
+14F0;N;CANADIAN SYLLABICS SII
+14F1;N;CANADIAN SYLLABICS SO
+14F2;N;CANADIAN SYLLABICS SOO
+14F3;N;CANADIAN SYLLABICS Y-CREE SOO
+14F4;N;CANADIAN SYLLABICS SA
+14F5;N;CANADIAN SYLLABICS SAA
+14F6;N;CANADIAN SYLLABICS SWE
+14F7;N;CANADIAN SYLLABICS WEST-CREE SWE
+14F8;N;CANADIAN SYLLABICS SWI
+14F9;N;CANADIAN SYLLABICS WEST-CREE SWI
+14FA;N;CANADIAN SYLLABICS SWII
+14FB;N;CANADIAN SYLLABICS WEST-CREE SWII
+14FC;N;CANADIAN SYLLABICS SWO
+14FD;N;CANADIAN SYLLABICS WEST-CREE SWO
+14FE;N;CANADIAN SYLLABICS SWOO
+14FF;N;CANADIAN SYLLABICS WEST-CREE SWOO
+1500;N;CANADIAN SYLLABICS SWA
+1501;N;CANADIAN SYLLABICS WEST-CREE SWA
+1502;N;CANADIAN SYLLABICS SWAA
+1503;N;CANADIAN SYLLABICS WEST-CREE SWAA
+1504;N;CANADIAN SYLLABICS NASKAPI SWAA
+1505;N;CANADIAN SYLLABICS S
+1506;N;CANADIAN SYLLABICS ATHAPASCAN S
+1507;N;CANADIAN SYLLABICS SW
+1508;N;CANADIAN SYLLABICS BLACKFOOT S
+1509;N;CANADIAN SYLLABICS MOOSE-CREE SK
+150A;N;CANADIAN SYLLABICS NASKAPI SKW
+150B;N;CANADIAN SYLLABICS NASKAPI S-W
+150C;N;CANADIAN SYLLABICS NASKAPI SPWA
+150D;N;CANADIAN SYLLABICS NASKAPI STWA
+150E;N;CANADIAN SYLLABICS NASKAPI SKWA
+150F;N;CANADIAN SYLLABICS NASKAPI SCWA
+1510;N;CANADIAN SYLLABICS SHE
+1511;N;CANADIAN SYLLABICS SHI
+1512;N;CANADIAN SYLLABICS SHII
+1513;N;CANADIAN SYLLABICS SHO
+1514;N;CANADIAN SYLLABICS SHOO
+1515;N;CANADIAN SYLLABICS SHA
+1516;N;CANADIAN SYLLABICS SHAA
+1517;N;CANADIAN SYLLABICS SHWE
+1518;N;CANADIAN SYLLABICS WEST-CREE SHWE
+1519;N;CANADIAN SYLLABICS SHWI
+151A;N;CANADIAN SYLLABICS WEST-CREE SHWI
+151B;N;CANADIAN SYLLABICS SHWII
+151C;N;CANADIAN SYLLABICS WEST-CREE SHWII
+151D;N;CANADIAN SYLLABICS SHWO
+151E;N;CANADIAN SYLLABICS WEST-CREE SHWO
+151F;N;CANADIAN SYLLABICS SHWOO
+1520;N;CANADIAN SYLLABICS WEST-CREE SHWOO
+1521;N;CANADIAN SYLLABICS SHWA
+1522;N;CANADIAN SYLLABICS WEST-CREE SHWA
+1523;N;CANADIAN SYLLABICS SHWAA
+1524;N;CANADIAN SYLLABICS WEST-CREE SHWAA
+1525;N;CANADIAN SYLLABICS SH
+1526;N;CANADIAN SYLLABICS YE
+1527;N;CANADIAN SYLLABICS YAAI
+1528;N;CANADIAN SYLLABICS YI
+1529;N;CANADIAN SYLLABICS YII
+152A;N;CANADIAN SYLLABICS YO
+152B;N;CANADIAN SYLLABICS YOO
+152C;N;CANADIAN SYLLABICS Y-CREE YOO
+152D;N;CANADIAN SYLLABICS YA
+152E;N;CANADIAN SYLLABICS YAA
+152F;N;CANADIAN SYLLABICS YWE
+1530;N;CANADIAN SYLLABICS WEST-CREE YWE
+1531;N;CANADIAN SYLLABICS YWI
+1532;N;CANADIAN SYLLABICS WEST-CREE YWI
+1533;N;CANADIAN SYLLABICS YWII
+1534;N;CANADIAN SYLLABICS WEST-CREE YWII
+1535;N;CANADIAN SYLLABICS YWO
+1536;N;CANADIAN SYLLABICS WEST-CREE YWO
+1537;N;CANADIAN SYLLABICS YWOO
+1538;N;CANADIAN SYLLABICS WEST-CREE YWOO
+1539;N;CANADIAN SYLLABICS YWA
+153A;N;CANADIAN SYLLABICS WEST-CREE YWA
+153B;N;CANADIAN SYLLABICS YWAA
+153C;N;CANADIAN SYLLABICS WEST-CREE YWAA
+153D;N;CANADIAN SYLLABICS NASKAPI YWAA
+153E;N;CANADIAN SYLLABICS Y
+153F;N;CANADIAN SYLLABICS BIBLE-CREE Y
+1540;N;CANADIAN SYLLABICS WEST-CREE Y
+1541;N;CANADIAN SYLLABICS SAYISI YI
+1542;N;CANADIAN SYLLABICS RE
+1543;N;CANADIAN SYLLABICS R-CREE RE
+1544;N;CANADIAN SYLLABICS WEST-CREE LE
+1545;N;CANADIAN SYLLABICS RAAI
+1546;N;CANADIAN SYLLABICS RI
+1547;N;CANADIAN SYLLABICS RII
+1548;N;CANADIAN SYLLABICS RO
+1549;N;CANADIAN SYLLABICS ROO
+154A;N;CANADIAN SYLLABICS WEST-CREE LO
+154B;N;CANADIAN SYLLABICS RA
+154C;N;CANADIAN SYLLABICS RAA
+154D;N;CANADIAN SYLLABICS WEST-CREE LA
+154E;N;CANADIAN SYLLABICS RWAA
+154F;N;CANADIAN SYLLABICS WEST-CREE RWAA
+1550;N;CANADIAN SYLLABICS R
+1551;N;CANADIAN SYLLABICS WEST-CREE R
+1552;N;CANADIAN SYLLABICS MEDIAL R
+1553;N;CANADIAN SYLLABICS FE
+1554;N;CANADIAN SYLLABICS FAAI
+1555;N;CANADIAN SYLLABICS FI
+1556;N;CANADIAN SYLLABICS FII
+1557;N;CANADIAN SYLLABICS FO
+1558;N;CANADIAN SYLLABICS FOO
+1559;N;CANADIAN SYLLABICS FA
+155A;N;CANADIAN SYLLABICS FAA
+155B;N;CANADIAN SYLLABICS FWAA
+155C;N;CANADIAN SYLLABICS WEST-CREE FWAA
+155D;N;CANADIAN SYLLABICS F
+155E;N;CANADIAN SYLLABICS THE
+155F;N;CANADIAN SYLLABICS N-CREE THE
+1560;N;CANADIAN SYLLABICS THI
+1561;N;CANADIAN SYLLABICS N-CREE THI
+1562;N;CANADIAN SYLLABICS THII
+1563;N;CANADIAN SYLLABICS N-CREE THII
+1564;N;CANADIAN SYLLABICS THO
+1565;N;CANADIAN SYLLABICS THOO
+1566;N;CANADIAN SYLLABICS THA
+1567;N;CANADIAN SYLLABICS THAA
+1568;N;CANADIAN SYLLABICS THWAA
+1569;N;CANADIAN SYLLABICS WEST-CREE THWAA
+156A;N;CANADIAN SYLLABICS TH
+156B;N;CANADIAN SYLLABICS TTHE
+156C;N;CANADIAN SYLLABICS TTHI
+156D;N;CANADIAN SYLLABICS TTHO
+156E;N;CANADIAN SYLLABICS TTHA
+156F;N;CANADIAN SYLLABICS TTH
+1570;N;CANADIAN SYLLABICS TYE
+1571;N;CANADIAN SYLLABICS TYI
+1572;N;CANADIAN SYLLABICS TYO
+1573;N;CANADIAN SYLLABICS TYA
+1574;N;CANADIAN SYLLABICS NUNAVIK HE
+1575;N;CANADIAN SYLLABICS NUNAVIK HI
+1576;N;CANADIAN SYLLABICS NUNAVIK HII
+1577;N;CANADIAN SYLLABICS NUNAVIK HO
+1578;N;CANADIAN SYLLABICS NUNAVIK HOO
+1579;N;CANADIAN SYLLABICS NUNAVIK HA
+157A;N;CANADIAN SYLLABICS NUNAVIK HAA
+157B;N;CANADIAN SYLLABICS NUNAVIK H
+157C;N;CANADIAN SYLLABICS NUNAVUT H
+157D;N;CANADIAN SYLLABICS HK
+157E;N;CANADIAN SYLLABICS QAAI
+157F;N;CANADIAN SYLLABICS QI
+1580;N;CANADIAN SYLLABICS QII
+1581;N;CANADIAN SYLLABICS QO
+1582;N;CANADIAN SYLLABICS QOO
+1583;N;CANADIAN SYLLABICS QA
+1584;N;CANADIAN SYLLABICS QAA
+1585;N;CANADIAN SYLLABICS Q
+1586;N;CANADIAN SYLLABICS TLHE
+1587;N;CANADIAN SYLLABICS TLHI
+1588;N;CANADIAN SYLLABICS TLHO
+1589;N;CANADIAN SYLLABICS TLHA
+158A;N;CANADIAN SYLLABICS WEST-CREE RE
+158B;N;CANADIAN SYLLABICS WEST-CREE RI
+158C;N;CANADIAN SYLLABICS WEST-CREE RO
+158D;N;CANADIAN SYLLABICS WEST-CREE RA
+158E;N;CANADIAN SYLLABICS NGAAI
+158F;N;CANADIAN SYLLABICS NGI
+1590;N;CANADIAN SYLLABICS NGII
+1591;N;CANADIAN SYLLABICS NGO
+1592;N;CANADIAN SYLLABICS NGOO
+1593;N;CANADIAN SYLLABICS NGA
+1594;N;CANADIAN SYLLABICS NGAA
+1595;N;CANADIAN SYLLABICS NG
+1596;N;CANADIAN SYLLABICS NNG
+1597;N;CANADIAN SYLLABICS SAYISI SHE
+1598;N;CANADIAN SYLLABICS SAYISI SHI
+1599;N;CANADIAN SYLLABICS SAYISI SHO
+159A;N;CANADIAN SYLLABICS SAYISI SHA
+159B;N;CANADIAN SYLLABICS WOODS-CREE THE
+159C;N;CANADIAN SYLLABICS WOODS-CREE THI
+159D;N;CANADIAN SYLLABICS WOODS-CREE THO
+159E;N;CANADIAN SYLLABICS WOODS-CREE THA
+159F;N;CANADIAN SYLLABICS WOODS-CREE TH
+15A0;N;CANADIAN SYLLABICS LHI
+15A1;N;CANADIAN SYLLABICS LHII
+15A2;N;CANADIAN SYLLABICS LHO
+15A3;N;CANADIAN SYLLABICS LHOO
+15A4;N;CANADIAN SYLLABICS LHA
+15A5;N;CANADIAN SYLLABICS LHAA
+15A6;N;CANADIAN SYLLABICS LH
+15A7;N;CANADIAN SYLLABICS TH-CREE THE
+15A8;N;CANADIAN SYLLABICS TH-CREE THI
+15A9;N;CANADIAN SYLLABICS TH-CREE THII
+15AA;N;CANADIAN SYLLABICS TH-CREE THO
+15AB;N;CANADIAN SYLLABICS TH-CREE THOO
+15AC;N;CANADIAN SYLLABICS TH-CREE THA
+15AD;N;CANADIAN SYLLABICS TH-CREE THAA
+15AE;N;CANADIAN SYLLABICS TH-CREE TH
+15AF;N;CANADIAN SYLLABICS AIVILIK B
+15B0;N;CANADIAN SYLLABICS BLACKFOOT E
+15B1;N;CANADIAN SYLLABICS BLACKFOOT I
+15B2;N;CANADIAN SYLLABICS BLACKFOOT O
+15B3;N;CANADIAN SYLLABICS BLACKFOOT A
+15B4;N;CANADIAN SYLLABICS BLACKFOOT WE
+15B5;N;CANADIAN SYLLABICS BLACKFOOT WI
+15B6;N;CANADIAN SYLLABICS BLACKFOOT WO
+15B7;N;CANADIAN SYLLABICS BLACKFOOT WA
+15B8;N;CANADIAN SYLLABICS BLACKFOOT NE
+15B9;N;CANADIAN SYLLABICS BLACKFOOT NI
+15BA;N;CANADIAN SYLLABICS BLACKFOOT NO
+15BB;N;CANADIAN SYLLABICS BLACKFOOT NA
+15BC;N;CANADIAN SYLLABICS BLACKFOOT KE
+15BD;N;CANADIAN SYLLABICS BLACKFOOT KI
+15BE;N;CANADIAN SYLLABICS BLACKFOOT KO
+15BF;N;CANADIAN SYLLABICS BLACKFOOT KA
+15C0;N;CANADIAN SYLLABICS SAYISI HE
+15C1;N;CANADIAN SYLLABICS SAYISI HI
+15C2;N;CANADIAN SYLLABICS SAYISI HO
+15C3;N;CANADIAN SYLLABICS SAYISI HA
+15C4;N;CANADIAN SYLLABICS CARRIER GHU
+15C5;N;CANADIAN SYLLABICS CARRIER GHO
+15C6;N;CANADIAN SYLLABICS CARRIER GHE
+15C7;N;CANADIAN SYLLABICS CARRIER GHEE
+15C8;N;CANADIAN SYLLABICS CARRIER GHI
+15C9;N;CANADIAN SYLLABICS CARRIER GHA
+15CA;N;CANADIAN SYLLABICS CARRIER RU
+15CB;N;CANADIAN SYLLABICS CARRIER RO
+15CC;N;CANADIAN SYLLABICS CARRIER RE
+15CD;N;CANADIAN SYLLABICS CARRIER REE
+15CE;N;CANADIAN SYLLABICS CARRIER RI
+15CF;N;CANADIAN SYLLABICS CARRIER RA
+15D0;N;CANADIAN SYLLABICS CARRIER WU
+15D1;N;CANADIAN SYLLABICS CARRIER WO
+15D2;N;CANADIAN SYLLABICS CARRIER WE
+15D3;N;CANADIAN SYLLABICS CARRIER WEE
+15D4;N;CANADIAN SYLLABICS CARRIER WI
+15D5;N;CANADIAN SYLLABICS CARRIER WA
+15D6;N;CANADIAN SYLLABICS CARRIER HWU
+15D7;N;CANADIAN SYLLABICS CARRIER HWO
+15D8;N;CANADIAN SYLLABICS CARRIER HWE
+15D9;N;CANADIAN SYLLABICS CARRIER HWEE
+15DA;N;CANADIAN SYLLABICS CARRIER HWI
+15DB;N;CANADIAN SYLLABICS CARRIER HWA
+15DC;N;CANADIAN SYLLABICS CARRIER THU
+15DD;N;CANADIAN SYLLABICS CARRIER THO
+15DE;N;CANADIAN SYLLABICS CARRIER THE
+15DF;N;CANADIAN SYLLABICS CARRIER THEE
+15E0;N;CANADIAN SYLLABICS CARRIER THI
+15E1;N;CANADIAN SYLLABICS CARRIER THA
+15E2;N;CANADIAN SYLLABICS CARRIER TTU
+15E3;N;CANADIAN SYLLABICS CARRIER TTO
+15E4;N;CANADIAN SYLLABICS CARRIER TTE
+15E5;N;CANADIAN SYLLABICS CARRIER TTEE
+15E6;N;CANADIAN SYLLABICS CARRIER TTI
+15E7;N;CANADIAN SYLLABICS CARRIER TTA
+15E8;N;CANADIAN SYLLABICS CARRIER PU
+15E9;N;CANADIAN SYLLABICS CARRIER PO
+15EA;N;CANADIAN SYLLABICS CARRIER PE
+15EB;N;CANADIAN SYLLABICS CARRIER PEE
+15EC;N;CANADIAN SYLLABICS CARRIER PI
+15ED;N;CANADIAN SYLLABICS CARRIER PA
+15EE;N;CANADIAN SYLLABICS CARRIER P
+15EF;N;CANADIAN SYLLABICS CARRIER GU
+15F0;N;CANADIAN SYLLABICS CARRIER GO
+15F1;N;CANADIAN SYLLABICS CARRIER GE
+15F2;N;CANADIAN SYLLABICS CARRIER GEE
+15F3;N;CANADIAN SYLLABICS CARRIER GI
+15F4;N;CANADIAN SYLLABICS CARRIER GA
+15F5;N;CANADIAN SYLLABICS CARRIER KHU
+15F6;N;CANADIAN SYLLABICS CARRIER KHO
+15F7;N;CANADIAN SYLLABICS CARRIER KHE
+15F8;N;CANADIAN SYLLABICS CARRIER KHEE
+15F9;N;CANADIAN SYLLABICS CARRIER KHI
+15FA;N;CANADIAN SYLLABICS CARRIER KHA
+15FB;N;CANADIAN SYLLABICS CARRIER KKU
+15FC;N;CANADIAN SYLLABICS CARRIER KKO
+15FD;N;CANADIAN SYLLABICS CARRIER KKE
+15FE;N;CANADIAN SYLLABICS CARRIER KKEE
+15FF;N;CANADIAN SYLLABICS CARRIER KKI
+1600;N;CANADIAN SYLLABICS CARRIER KKA
+1601;N;CANADIAN SYLLABICS CARRIER KK
+1602;N;CANADIAN SYLLABICS CARRIER NU
+1603;N;CANADIAN SYLLABICS CARRIER NO
+1604;N;CANADIAN SYLLABICS CARRIER NE
+1605;N;CANADIAN SYLLABICS CARRIER NEE
+1606;N;CANADIAN SYLLABICS CARRIER NI
+1607;N;CANADIAN SYLLABICS CARRIER NA
+1608;N;CANADIAN SYLLABICS CARRIER MU
+1609;N;CANADIAN SYLLABICS CARRIER MO
+160A;N;CANADIAN SYLLABICS CARRIER ME
+160B;N;CANADIAN SYLLABICS CARRIER MEE
+160C;N;CANADIAN SYLLABICS CARRIER MI
+160D;N;CANADIAN SYLLABICS CARRIER MA
+160E;N;CANADIAN SYLLABICS CARRIER YU
+160F;N;CANADIAN SYLLABICS CARRIER YO
+1610;N;CANADIAN SYLLABICS CARRIER YE
+1611;N;CANADIAN SYLLABICS CARRIER YEE
+1612;N;CANADIAN SYLLABICS CARRIER YI
+1613;N;CANADIAN SYLLABICS CARRIER YA
+1614;N;CANADIAN SYLLABICS CARRIER JU
+1615;N;CANADIAN SYLLABICS SAYISI JU
+1616;N;CANADIAN SYLLABICS CARRIER JO
+1617;N;CANADIAN SYLLABICS CARRIER JE
+1618;N;CANADIAN SYLLABICS CARRIER JEE
+1619;N;CANADIAN SYLLABICS CARRIER JI
+161A;N;CANADIAN SYLLABICS SAYISI JI
+161B;N;CANADIAN SYLLABICS CARRIER JA
+161C;N;CANADIAN SYLLABICS CARRIER JJU
+161D;N;CANADIAN SYLLABICS CARRIER JJO
+161E;N;CANADIAN SYLLABICS CARRIER JJE
+161F;N;CANADIAN SYLLABICS CARRIER JJEE
+1620;N;CANADIAN SYLLABICS CARRIER JJI
+1621;N;CANADIAN SYLLABICS CARRIER JJA
+1622;N;CANADIAN SYLLABICS CARRIER LU
+1623;N;CANADIAN SYLLABICS CARRIER LO
+1624;N;CANADIAN SYLLABICS CARRIER LE
+1625;N;CANADIAN SYLLABICS CARRIER LEE
+1626;N;CANADIAN SYLLABICS CARRIER LI
+1627;N;CANADIAN SYLLABICS CARRIER LA
+1628;N;CANADIAN SYLLABICS CARRIER DLU
+1629;N;CANADIAN SYLLABICS CARRIER DLO
+162A;N;CANADIAN SYLLABICS CARRIER DLE
+162B;N;CANADIAN SYLLABICS CARRIER DLEE
+162C;N;CANADIAN SYLLABICS CARRIER DLI
+162D;N;CANADIAN SYLLABICS CARRIER DLA
+162E;N;CANADIAN SYLLABICS CARRIER LHU
+162F;N;CANADIAN SYLLABICS CARRIER LHO
+1630;N;CANADIAN SYLLABICS CARRIER LHE
+1631;N;CANADIAN SYLLABICS CARRIER LHEE
+1632;N;CANADIAN SYLLABICS CARRIER LHI
+1633;N;CANADIAN SYLLABICS CARRIER LHA
+1634;N;CANADIAN SYLLABICS CARRIER TLHU
+1635;N;CANADIAN SYLLABICS CARRIER TLHO
+1636;N;CANADIAN SYLLABICS CARRIER TLHE
+1637;N;CANADIAN SYLLABICS CARRIER TLHEE
+1638;N;CANADIAN SYLLABICS CARRIER TLHI
+1639;N;CANADIAN SYLLABICS CARRIER TLHA
+163A;N;CANADIAN SYLLABICS CARRIER TLU
+163B;N;CANADIAN SYLLABICS CARRIER TLO
+163C;N;CANADIAN SYLLABICS CARRIER TLE
+163D;N;CANADIAN SYLLABICS CARRIER TLEE
+163E;N;CANADIAN SYLLABICS CARRIER TLI
+163F;N;CANADIAN SYLLABICS CARRIER TLA
+1640;N;CANADIAN SYLLABICS CARRIER ZU
+1641;N;CANADIAN SYLLABICS CARRIER ZO
+1642;N;CANADIAN SYLLABICS CARRIER ZE
+1643;N;CANADIAN SYLLABICS CARRIER ZEE
+1644;N;CANADIAN SYLLABICS CARRIER ZI
+1645;N;CANADIAN SYLLABICS CARRIER ZA
+1646;N;CANADIAN SYLLABICS CARRIER Z
+1647;N;CANADIAN SYLLABICS CARRIER INITIAL Z
+1648;N;CANADIAN SYLLABICS CARRIER DZU
+1649;N;CANADIAN SYLLABICS CARRIER DZO
+164A;N;CANADIAN SYLLABICS CARRIER DZE
+164B;N;CANADIAN SYLLABICS CARRIER DZEE
+164C;N;CANADIAN SYLLABICS CARRIER DZI
+164D;N;CANADIAN SYLLABICS CARRIER DZA
+164E;N;CANADIAN SYLLABICS CARRIER SU
+164F;N;CANADIAN SYLLABICS CARRIER SO
+1650;N;CANADIAN SYLLABICS CARRIER SE
+1651;N;CANADIAN SYLLABICS CARRIER SEE
+1652;N;CANADIAN SYLLABICS CARRIER SI
+1653;N;CANADIAN SYLLABICS CARRIER SA
+1654;N;CANADIAN SYLLABICS CARRIER SHU
+1655;N;CANADIAN SYLLABICS CARRIER SHO
+1656;N;CANADIAN SYLLABICS CARRIER SHE
+1657;N;CANADIAN SYLLABICS CARRIER SHEE
+1658;N;CANADIAN SYLLABICS CARRIER SHI
+1659;N;CANADIAN SYLLABICS CARRIER SHA
+165A;N;CANADIAN SYLLABICS CARRIER SH
+165B;N;CANADIAN SYLLABICS CARRIER TSU
+165C;N;CANADIAN SYLLABICS CARRIER TSO
+165D;N;CANADIAN SYLLABICS CARRIER TSE
+165E;N;CANADIAN SYLLABICS CARRIER TSEE
+165F;N;CANADIAN SYLLABICS CARRIER TSI
+1660;N;CANADIAN SYLLABICS CARRIER TSA
+1661;N;CANADIAN SYLLABICS CARRIER CHU
+1662;N;CANADIAN SYLLABICS CARRIER CHO
+1663;N;CANADIAN SYLLABICS CARRIER CHE
+1664;N;CANADIAN SYLLABICS CARRIER CHEE
+1665;N;CANADIAN SYLLABICS CARRIER CHI
+1666;N;CANADIAN SYLLABICS CARRIER CHA
+1667;N;CANADIAN SYLLABICS CARRIER TTSU
+1668;N;CANADIAN SYLLABICS CARRIER TTSO
+1669;N;CANADIAN SYLLABICS CARRIER TTSE
+166A;N;CANADIAN SYLLABICS CARRIER TTSEE
+166B;N;CANADIAN SYLLABICS CARRIER TTSI
+166C;N;CANADIAN SYLLABICS CARRIER TTSA
+166D;N;CANADIAN SYLLABICS CHI SIGN
+166E;N;CANADIAN SYLLABICS FULL STOP
+166F;N;CANADIAN SYLLABICS QAI
+1670;N;CANADIAN SYLLABICS NGAI
+1671;N;CANADIAN SYLLABICS NNGI
+1672;N;CANADIAN SYLLABICS NNGII
+1673;N;CANADIAN SYLLABICS NNGO
+1674;N;CANADIAN SYLLABICS NNGOO
+1675;N;CANADIAN SYLLABICS NNGA
+1676;N;CANADIAN SYLLABICS NNGAA
+1680;N;OGHAM SPACE MARK
+1681;N;OGHAM LETTER BEITH
+1682;N;OGHAM LETTER LUIS
+1683;N;OGHAM LETTER FEARN
+1684;N;OGHAM LETTER SAIL
+1685;N;OGHAM LETTER NION
+1686;N;OGHAM LETTER UATH
+1687;N;OGHAM LETTER DAIR
+1688;N;OGHAM LETTER TINNE
+1689;N;OGHAM LETTER COLL
+168A;N;OGHAM LETTER CEIRT
+168B;N;OGHAM LETTER MUIN
+168C;N;OGHAM LETTER GORT
+168D;N;OGHAM LETTER NGEADAL
+168E;N;OGHAM LETTER STRAIF
+168F;N;OGHAM LETTER RUIS
+1690;N;OGHAM LETTER AILM
+1691;N;OGHAM LETTER ONN
+1692;N;OGHAM LETTER UR
+1693;N;OGHAM LETTER EADHADH
+1694;N;OGHAM LETTER IODHADH
+1695;N;OGHAM LETTER EABHADH
+1696;N;OGHAM LETTER OR
+1697;N;OGHAM LETTER UILLEANN
+1698;N;OGHAM LETTER IFIN
+1699;N;OGHAM LETTER EAMHANCHOLL
+169A;N;OGHAM LETTER PEITH
+169B;N;OGHAM FEATHER MARK
+169C;N;OGHAM REVERSED FEATHER MARK
+16A0;N;RUNIC LETTER FEHU FEOH FE F
+16A1;N;RUNIC LETTER V
+16A2;N;RUNIC LETTER URUZ UR U
+16A3;N;RUNIC LETTER YR
+16A4;N;RUNIC LETTER Y
+16A5;N;RUNIC LETTER W
+16A6;N;RUNIC LETTER THURISAZ THURS THORN
+16A7;N;RUNIC LETTER ETH
+16A8;N;RUNIC LETTER ANSUZ A
+16A9;N;RUNIC LETTER OS O
+16AA;N;RUNIC LETTER AC A
+16AB;N;RUNIC LETTER AESC
+16AC;N;RUNIC LETTER LONG-BRANCH-OSS O
+16AD;N;RUNIC LETTER SHORT-TWIG-OSS O
+16AE;N;RUNIC LETTER O
+16AF;N;RUNIC LETTER OE
+16B0;N;RUNIC LETTER ON
+16B1;N;RUNIC LETTER RAIDO RAD REID R
+16B2;N;RUNIC LETTER KAUNA
+16B3;N;RUNIC LETTER CEN
+16B4;N;RUNIC LETTER KAUN K
+16B5;N;RUNIC LETTER G
+16B6;N;RUNIC LETTER ENG
+16B7;N;RUNIC LETTER GEBO GYFU G
+16B8;N;RUNIC LETTER GAR
+16B9;N;RUNIC LETTER WUNJO WYNN W
+16BA;N;RUNIC LETTER HAGLAZ H
+16BB;N;RUNIC LETTER HAEGL H
+16BC;N;RUNIC LETTER LONG-BRANCH-HAGALL H
+16BD;N;RUNIC LETTER SHORT-TWIG-HAGALL H
+16BE;N;RUNIC LETTER NAUDIZ NYD NAUD N
+16BF;N;RUNIC LETTER SHORT-TWIG-NAUD N
+16C0;N;RUNIC LETTER DOTTED-N
+16C1;N;RUNIC LETTER ISAZ IS ISS I
+16C2;N;RUNIC LETTER E
+16C3;N;RUNIC LETTER JERAN J
+16C4;N;RUNIC LETTER GER
+16C5;N;RUNIC LETTER LONG-BRANCH-AR AE
+16C6;N;RUNIC LETTER SHORT-TWIG-AR A
+16C7;N;RUNIC LETTER IWAZ EOH
+16C8;N;RUNIC LETTER PERTHO PEORTH P
+16C9;N;RUNIC LETTER ALGIZ EOLHX
+16CA;N;RUNIC LETTER SOWILO S
+16CB;N;RUNIC LETTER SIGEL LONG-BRANCH-SOL S
+16CC;N;RUNIC LETTER SHORT-TWIG-SOL S
+16CD;N;RUNIC LETTER C
+16CE;N;RUNIC LETTER Z
+16CF;N;RUNIC LETTER TIWAZ TIR TYR T
+16D0;N;RUNIC LETTER SHORT-TWIG-TYR T
+16D1;N;RUNIC LETTER D
+16D2;N;RUNIC LETTER BERKANAN BEORC BJARKAN B
+16D3;N;RUNIC LETTER SHORT-TWIG-BJARKAN B
+16D4;N;RUNIC LETTER DOTTED-P
+16D5;N;RUNIC LETTER OPEN-P
+16D6;N;RUNIC LETTER EHWAZ EH E
+16D7;N;RUNIC LETTER MANNAZ MAN M
+16D8;N;RUNIC LETTER LONG-BRANCH-MADR M
+16D9;N;RUNIC LETTER SHORT-TWIG-MADR M
+16DA;N;RUNIC LETTER LAUKAZ LAGU LOGR L
+16DB;N;RUNIC LETTER DOTTED-L
+16DC;N;RUNIC LETTER INGWAZ
+16DD;N;RUNIC LETTER ING
+16DE;N;RUNIC LETTER DAGAZ DAEG D
+16DF;N;RUNIC LETTER OTHALAN ETHEL O
+16E0;N;RUNIC LETTER EAR
+16E1;N;RUNIC LETTER IOR
+16E2;N;RUNIC LETTER CWEORTH
+16E3;N;RUNIC LETTER CALC
+16E4;N;RUNIC LETTER CEALC
+16E5;N;RUNIC LETTER STAN
+16E6;N;RUNIC LETTER LONG-BRANCH-YR
+16E7;N;RUNIC LETTER SHORT-TWIG-YR
+16E8;N;RUNIC LETTER ICELANDIC-YR
+16E9;N;RUNIC LETTER Q
+16EA;N;RUNIC LETTER X
+16EB;N;RUNIC SINGLE PUNCTUATION
+16EC;N;RUNIC MULTIPLE PUNCTUATION
+16ED;N;RUNIC CROSS PUNCTUATION
+16EE;N;RUNIC ARLAUG SYMBOL
+16EF;N;RUNIC TVIMADUR SYMBOL
+16F0;N;RUNIC BELGTHOR SYMBOL
+1780;N;KHMER LETTER KA
+1781;N;KHMER LETTER KHA
+1782;N;KHMER LETTER KO
+1783;N;KHMER LETTER KHO
+1784;N;KHMER LETTER NGO
+1785;N;KHMER LETTER CA
+1786;N;KHMER LETTER CHA
+1787;N;KHMER LETTER CO
+1788;N;KHMER LETTER CHO
+1789;N;KHMER LETTER NYO
+178A;N;KHMER LETTER DA
+178B;N;KHMER LETTER TTHA
+178C;N;KHMER LETTER DO
+178D;N;KHMER LETTER TTHO
+178E;N;KHMER LETTER NNO
+178F;N;KHMER LETTER TA
+1790;N;KHMER LETTER THA
+1791;N;KHMER LETTER TO
+1792;N;KHMER LETTER THO
+1793;N;KHMER LETTER NO
+1794;N;KHMER LETTER BA
+1795;N;KHMER LETTER PHA
+1796;N;KHMER LETTER PO
+1797;N;KHMER LETTER PHO
+1798;N;KHMER LETTER MO
+1799;N;KHMER LETTER YO
+179A;N;KHMER LETTER RO
+179B;N;KHMER LETTER LO
+179C;N;KHMER LETTER VO
+179D;N;KHMER LETTER SHA
+179E;N;KHMER LETTER SSO
+179F;N;KHMER LETTER SA
+17A0;N;KHMER LETTER HA
+17A1;N;KHMER LETTER LA
+17A2;N;KHMER LETTER QA
+17A3;N;KHMER INDEPENDENT VOWEL QAQ
+17A4;N;KHMER INDEPENDENT VOWEL QAA
+17A5;N;KHMER INDEPENDENT VOWEL QI
+17A6;N;KHMER INDEPENDENT VOWEL QII
+17A7;N;KHMER INDEPENDENT VOWEL QU
+17A8;N;KHMER INDEPENDENT VOWEL QUK
+17A9;N;KHMER INDEPENDENT VOWEL QUU
+17AA;N;KHMER INDEPENDENT VOWEL QUUV
+17AB;N;KHMER INDEPENDENT VOWEL RY
+17AC;N;KHMER INDEPENDENT VOWEL RYY
+17AD;N;KHMER INDEPENDENT VOWEL LY
+17AE;N;KHMER INDEPENDENT VOWEL LYY
+17AF;N;KHMER INDEPENDENT VOWEL QE
+17B0;N;KHMER INDEPENDENT VOWEL QAI
+17B1;N;KHMER INDEPENDENT VOWEL QOO TYPE ONE
+17B2;N;KHMER INDEPENDENT VOWEL QOO TYPE TWO
+17B3;N;KHMER INDEPENDENT VOWEL QAU
+17B4;N;KHMER VOWEL INHERENT AQ
+17B5;N;KHMER VOWEL INHERENT AA
+17B6;N;KHMER VOWEL SIGN AA
+17B7;N;KHMER VOWEL SIGN I
+17B8;N;KHMER VOWEL SIGN II
+17B9;N;KHMER VOWEL SIGN Y
+17BA;N;KHMER VOWEL SIGN YY
+17BB;N;KHMER VOWEL SIGN U
+17BC;N;KHMER VOWEL SIGN UU
+17BD;N;KHMER VOWEL SIGN UA
+17BE;N;KHMER VOWEL SIGN OE
+17BF;N;KHMER VOWEL SIGN YA
+17C0;N;KHMER VOWEL SIGN IE
+17C1;N;KHMER VOWEL SIGN E
+17C2;N;KHMER VOWEL SIGN AE
+17C3;N;KHMER VOWEL SIGN AI
+17C4;N;KHMER VOWEL SIGN OO
+17C5;N;KHMER VOWEL SIGN AU
+17C6;N;KHMER SIGN NIKAHIT
+17C7;N;KHMER SIGN REAHMUK
+17C8;N;KHMER SIGN YUUKALEAPINTU
+17C9;N;KHMER SIGN MUUSIKATOAN
+17CA;N;KHMER SIGN TRIISAP
+17CB;N;KHMER SIGN BANTOC
+17CC;N;KHMER SIGN ROBAT
+17CD;N;KHMER SIGN TOANDAKHIAT
+17CE;N;KHMER SIGN KAKABAT
+17CF;N;KHMER SIGN AHSDA
+17D0;N;KHMER SIGN SAMYOK SANNYA
+17D1;N;KHMER SIGN VIRIAM
+17D2;N;KHMER SIGN COENG
+17D3;N;KHMER SIGN BATHAMASAT
+17D4;N;KHMER SIGN KHAN
+17D5;N;KHMER SIGN BARIYOOSAN
+17D6;N;KHMER SIGN CAMNUC PII KUUH
+17D7;N;KHMER SIGN LEK TOO
+17D8;N;KHMER SIGN BEYYAL
+17D9;N;KHMER SIGN PHNAEK MUAN
+17DA;N;KHMER SIGN KOOMUUT
+17DB;N;KHMER CURRENCY SYMBOL RIEL
+17DC;N;KHMER SIGN AVAKRAHASANYA
+17E0;N;KHMER DIGIT ZERO
+17E1;N;KHMER DIGIT ONE
+17E2;N;KHMER DIGIT TWO
+17E3;N;KHMER DIGIT THREE
+17E4;N;KHMER DIGIT FOUR
+17E5;N;KHMER DIGIT FIVE
+17E6;N;KHMER DIGIT SIX
+17E7;N;KHMER DIGIT SEVEN
+17E8;N;KHMER DIGIT EIGHT
+17E9;N;KHMER DIGIT NINE
+1800;N;MONGOLIAN BIRGA
+1801;N;MONGOLIAN ELLIPSIS
+1802;N;MONGOLIAN COMMA
+1803;N;MONGOLIAN FULL STOP
+1804;N;MONGOLIAN COLON
+1805;N;MONGOLIAN FOUR DOTS
+1806;N;MONGOLIAN TODO SOFT HYPHEN
+1807;N;MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER
+1808;N;MONGOLIAN MANCHU COMMA
+1809;N;MONGOLIAN MANCHU FULL STOP
+180A;N;MONGOLIAN NIRUGU
+180B;N;MONGOLIAN FREE VARIATION SELECTOR ONE
+180C;N;MONGOLIAN FREE VARIATION SELECTOR TWO
+180D;N;MONGOLIAN FREE VARIATION SELECTOR THREE
+180E;N;MONGOLIAN VOWEL SEPARATOR
+1810;N;MONGOLIAN DIGIT ZERO
+1811;N;MONGOLIAN DIGIT ONE
+1812;N;MONGOLIAN DIGIT TWO
+1813;N;MONGOLIAN DIGIT THREE
+1814;N;MONGOLIAN DIGIT FOUR
+1815;N;MONGOLIAN DIGIT FIVE
+1816;N;MONGOLIAN DIGIT SIX
+1817;N;MONGOLIAN DIGIT SEVEN
+1818;N;MONGOLIAN DIGIT EIGHT
+1819;N;MONGOLIAN DIGIT NINE
+1820;N;MONGOLIAN LETTER A
+1821;N;MONGOLIAN LETTER E
+1822;N;MONGOLIAN LETTER I
+1823;N;MONGOLIAN LETTER O
+1824;N;MONGOLIAN LETTER U
+1825;N;MONGOLIAN LETTER OE
+1826;N;MONGOLIAN LETTER UE
+1827;N;MONGOLIAN LETTER EE
+1828;N;MONGOLIAN LETTER NA
+1829;N;MONGOLIAN LETTER ANG
+182A;N;MONGOLIAN LETTER BA
+182B;N;MONGOLIAN LETTER PA
+182C;N;MONGOLIAN LETTER QA
+182D;N;MONGOLIAN LETTER GA
+182E;N;MONGOLIAN LETTER MA
+182F;N;MONGOLIAN LETTER LA
+1830;N;MONGOLIAN LETTER SA
+1831;N;MONGOLIAN LETTER SHA
+1832;N;MONGOLIAN LETTER TA
+1833;N;MONGOLIAN LETTER DA
+1834;N;MONGOLIAN LETTER CHA
+1835;N;MONGOLIAN LETTER JA
+1836;N;MONGOLIAN LETTER YA
+1837;N;MONGOLIAN LETTER RA
+1838;N;MONGOLIAN LETTER WA
+1839;N;MONGOLIAN LETTER FA
+183A;N;MONGOLIAN LETTER KA
+183B;N;MONGOLIAN LETTER KHA
+183C;N;MONGOLIAN LETTER TSA
+183D;N;MONGOLIAN LETTER ZA
+183E;N;MONGOLIAN LETTER HAA
+183F;N;MONGOLIAN LETTER ZRA
+1840;N;MONGOLIAN LETTER LHA
+1841;N;MONGOLIAN LETTER ZHI
+1842;N;MONGOLIAN LETTER CHI
+1843;N;MONGOLIAN LETTER TODO LONG VOWEL SIGN
+1844;N;MONGOLIAN LETTER TODO E
+1845;N;MONGOLIAN LETTER TODO I
+1846;N;MONGOLIAN LETTER TODO O
+1847;N;MONGOLIAN LETTER TODO U
+1848;N;MONGOLIAN LETTER TODO OE
+1849;N;MONGOLIAN LETTER TODO UE
+184A;N;MONGOLIAN LETTER TODO ANG
+184B;N;MONGOLIAN LETTER TODO BA
+184C;N;MONGOLIAN LETTER TODO PA
+184D;N;MONGOLIAN LETTER TODO QA
+184E;N;MONGOLIAN LETTER TODO GA
+184F;N;MONGOLIAN LETTER TODO MA
+1850;N;MONGOLIAN LETTER TODO TA
+1851;N;MONGOLIAN LETTER TODO DA
+1852;N;MONGOLIAN LETTER TODO CHA
+1853;N;MONGOLIAN LETTER TODO JA
+1854;N;MONGOLIAN LETTER TODO TSA
+1855;N;MONGOLIAN LETTER TODO YA
+1856;N;MONGOLIAN LETTER TODO WA
+1857;N;MONGOLIAN LETTER TODO KA
+1858;N;MONGOLIAN LETTER TODO GAA
+1859;N;MONGOLIAN LETTER TODO HAA
+185A;N;MONGOLIAN LETTER TODO JIA
+185B;N;MONGOLIAN LETTER TODO NIA
+185C;N;MONGOLIAN LETTER TODO DZA
+185D;N;MONGOLIAN LETTER SIBE E
+185E;N;MONGOLIAN LETTER SIBE I
+185F;N;MONGOLIAN LETTER SIBE IY
+1860;N;MONGOLIAN LETTER SIBE UE
+1861;N;MONGOLIAN LETTER SIBE U
+1862;N;MONGOLIAN LETTER SIBE ANG
+1863;N;MONGOLIAN LETTER SIBE KA
+1864;N;MONGOLIAN LETTER SIBE GA
+1865;N;MONGOLIAN LETTER SIBE HA
+1866;N;MONGOLIAN LETTER SIBE PA
+1867;N;MONGOLIAN LETTER SIBE SHA
+1868;N;MONGOLIAN LETTER SIBE TA
+1869;N;MONGOLIAN LETTER SIBE DA
+186A;N;MONGOLIAN LETTER SIBE JA
+186B;N;MONGOLIAN LETTER SIBE FA
+186C;N;MONGOLIAN LETTER SIBE GAA
+186D;N;MONGOLIAN LETTER SIBE HAA
+186E;N;MONGOLIAN LETTER SIBE TSA
+186F;N;MONGOLIAN LETTER SIBE ZA
+1870;N;MONGOLIAN LETTER SIBE RAA
+1871;N;MONGOLIAN LETTER SIBE CHA
+1872;N;MONGOLIAN LETTER SIBE ZHA
+1873;N;MONGOLIAN LETTER MANCHU I
+1874;N;MONGOLIAN LETTER MANCHU KA
+1875;N;MONGOLIAN LETTER MANCHU RA
+1876;N;MONGOLIAN LETTER MANCHU FA
+1877;N;MONGOLIAN LETTER MANCHU ZHA
+1880;N;MONGOLIAN LETTER ALI GALI ANUSVARA ONE
+1881;N;MONGOLIAN LETTER ALI GALI VISARGA ONE
+1882;N;MONGOLIAN LETTER ALI GALI DAMARU
+1883;N;MONGOLIAN LETTER ALI GALI UBADAMA
+1884;N;MONGOLIAN LETTER ALI GALI INVERTED UBADAMA
+1885;N;MONGOLIAN LETTER ALI GALI BALUDA
+1886;N;MONGOLIAN LETTER ALI GALI THREE BALUDA
+1887;N;MONGOLIAN LETTER ALI GALI A
+1888;N;MONGOLIAN LETTER ALI GALI I
+1889;N;MONGOLIAN LETTER ALI GALI KA
+188A;N;MONGOLIAN LETTER ALI GALI NGA
+188B;N;MONGOLIAN LETTER ALI GALI CA
+188C;N;MONGOLIAN LETTER ALI GALI TTA
+188D;N;MONGOLIAN LETTER ALI GALI TTHA
+188E;N;MONGOLIAN LETTER ALI GALI DDA
+188F;N;MONGOLIAN LETTER ALI GALI NNA
+1890;N;MONGOLIAN LETTER ALI GALI TA
+1891;N;MONGOLIAN LETTER ALI GALI DA
+1892;N;MONGOLIAN LETTER ALI GALI PA
+1893;N;MONGOLIAN LETTER ALI GALI PHA
+1894;N;MONGOLIAN LETTER ALI GALI SSA
+1895;N;MONGOLIAN LETTER ALI GALI ZHA
+1896;N;MONGOLIAN LETTER ALI GALI ZA
+1897;N;MONGOLIAN LETTER ALI GALI AH
+1898;N;MONGOLIAN LETTER TODO ALI GALI TA
+1899;N;MONGOLIAN LETTER TODO ALI GALI ZHA
+189A;N;MONGOLIAN LETTER MANCHU ALI GALI GHA
+189B;N;MONGOLIAN LETTER MANCHU ALI GALI NGA
+189C;N;MONGOLIAN LETTER MANCHU ALI GALI CA
+189D;N;MONGOLIAN LETTER MANCHU ALI GALI JHA
+189E;N;MONGOLIAN LETTER MANCHU ALI GALI TTA
+189F;N;MONGOLIAN LETTER MANCHU ALI GALI DDHA
+18A0;N;MONGOLIAN LETTER MANCHU ALI GALI TA
+18A1;N;MONGOLIAN LETTER MANCHU ALI GALI DHA
+18A2;N;MONGOLIAN LETTER MANCHU ALI GALI SSA
+18A3;N;MONGOLIAN LETTER MANCHU ALI GALI CYA
+18A4;N;MONGOLIAN LETTER MANCHU ALI GALI ZHA
+18A5;N;MONGOLIAN LETTER MANCHU ALI GALI ZA
+18A6;N;MONGOLIAN LETTER ALI GALI HALF U
+18A7;N;MONGOLIAN LETTER ALI GALI HALF YA
+18A8;N;MONGOLIAN LETTER MANCHU ALI GALI BHA
+18A9;N;MONGOLIAN LETTER ALI GALI DAGALGA
+1E00;N;LATIN CAPITAL LETTER A WITH RING BELOW
+1E01;N;LATIN SMALL LETTER A WITH RING BELOW
+1E02;N;LATIN CAPITAL LETTER B WITH DOT ABOVE
+1E03;N;LATIN SMALL LETTER B WITH DOT ABOVE
+1E04;N;LATIN CAPITAL LETTER B WITH DOT BELOW
+1E05;N;LATIN SMALL LETTER B WITH DOT BELOW
+1E06;N;LATIN CAPITAL LETTER B WITH LINE BELOW
+1E07;N;LATIN SMALL LETTER B WITH LINE BELOW
+1E08;N;LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE
+1E09;N;LATIN SMALL LETTER C WITH CEDILLA AND ACUTE
+1E0A;N;LATIN CAPITAL LETTER D WITH DOT ABOVE
+1E0B;N;LATIN SMALL LETTER D WITH DOT ABOVE
+1E0C;N;LATIN CAPITAL LETTER D WITH DOT BELOW
+1E0D;N;LATIN SMALL LETTER D WITH DOT BELOW
+1E0E;N;LATIN CAPITAL LETTER D WITH LINE BELOW
+1E0F;N;LATIN SMALL LETTER D WITH LINE BELOW
+1E10;N;LATIN CAPITAL LETTER D WITH CEDILLA
+1E11;N;LATIN SMALL LETTER D WITH CEDILLA
+1E12;N;LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW
+1E13;N;LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW
+1E14;N;LATIN CAPITAL LETTER E WITH MACRON AND GRAVE
+1E15;N;LATIN SMALL LETTER E WITH MACRON AND GRAVE
+1E16;N;LATIN CAPITAL LETTER E WITH MACRON AND ACUTE
+1E17;N;LATIN SMALL LETTER E WITH MACRON AND ACUTE
+1E18;N;LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW
+1E19;N;LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW
+1E1A;N;LATIN CAPITAL LETTER E WITH TILDE BELOW
+1E1B;N;LATIN SMALL LETTER E WITH TILDE BELOW
+1E1C;N;LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE
+1E1D;N;LATIN SMALL LETTER E WITH CEDILLA AND BREVE
+1E1E;N;LATIN CAPITAL LETTER F WITH DOT ABOVE
+1E1F;N;LATIN SMALL LETTER F WITH DOT ABOVE
+1E20;N;LATIN CAPITAL LETTER G WITH MACRON
+1E21;N;LATIN SMALL LETTER G WITH MACRON
+1E22;N;LATIN CAPITAL LETTER H WITH DOT ABOVE
+1E23;N;LATIN SMALL LETTER H WITH DOT ABOVE
+1E24;N;LATIN CAPITAL LETTER H WITH DOT BELOW
+1E25;N;LATIN SMALL LETTER H WITH DOT BELOW
+1E26;N;LATIN CAPITAL LETTER H WITH DIAERESIS
+1E27;N;LATIN SMALL LETTER H WITH DIAERESIS
+1E28;N;LATIN CAPITAL LETTER H WITH CEDILLA
+1E29;N;LATIN SMALL LETTER H WITH CEDILLA
+1E2A;N;LATIN CAPITAL LETTER H WITH BREVE BELOW
+1E2B;N;LATIN SMALL LETTER H WITH BREVE BELOW
+1E2C;N;LATIN CAPITAL LETTER I WITH TILDE BELOW
+1E2D;N;LATIN SMALL LETTER I WITH TILDE BELOW
+1E2E;N;LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE
+1E2F;N;LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE
+1E30;N;LATIN CAPITAL LETTER K WITH ACUTE
+1E31;N;LATIN SMALL LETTER K WITH ACUTE
+1E32;N;LATIN CAPITAL LETTER K WITH DOT BELOW
+1E33;N;LATIN SMALL LETTER K WITH DOT BELOW
+1E34;N;LATIN CAPITAL LETTER K WITH LINE BELOW
+1E35;N;LATIN SMALL LETTER K WITH LINE BELOW
+1E36;N;LATIN CAPITAL LETTER L WITH DOT BELOW
+1E37;N;LATIN SMALL LETTER L WITH DOT BELOW
+1E38;N;LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON
+1E39;N;LATIN SMALL LETTER L WITH DOT BELOW AND MACRON
+1E3A;N;LATIN CAPITAL LETTER L WITH LINE BELOW
+1E3B;N;LATIN SMALL LETTER L WITH LINE BELOW
+1E3C;N;LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW
+1E3D;N;LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW
+1E3E;N;LATIN CAPITAL LETTER M WITH ACUTE
+1E3F;N;LATIN SMALL LETTER M WITH ACUTE
+1E40;N;LATIN CAPITAL LETTER M WITH DOT ABOVE
+1E41;N;LATIN SMALL LETTER M WITH DOT ABOVE
+1E42;N;LATIN CAPITAL LETTER M WITH DOT BELOW
+1E43;N;LATIN SMALL LETTER M WITH DOT BELOW
+1E44;N;LATIN CAPITAL LETTER N WITH DOT ABOVE
+1E45;N;LATIN SMALL LETTER N WITH DOT ABOVE
+1E46;N;LATIN CAPITAL LETTER N WITH DOT BELOW
+1E47;N;LATIN SMALL LETTER N WITH DOT BELOW
+1E48;N;LATIN CAPITAL LETTER N WITH LINE BELOW
+1E49;N;LATIN SMALL LETTER N WITH LINE BELOW
+1E4A;N;LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW
+1E4B;N;LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW
+1E4C;N;LATIN CAPITAL LETTER O WITH TILDE AND ACUTE
+1E4D;N;LATIN SMALL LETTER O WITH TILDE AND ACUTE
+1E4E;N;LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS
+1E4F;N;LATIN SMALL LETTER O WITH TILDE AND DIAERESIS
+1E50;N;LATIN CAPITAL LETTER O WITH MACRON AND GRAVE
+1E51;N;LATIN SMALL LETTER O WITH MACRON AND GRAVE
+1E52;N;LATIN CAPITAL LETTER O WITH MACRON AND ACUTE
+1E53;N;LATIN SMALL LETTER O WITH MACRON AND ACUTE
+1E54;N;LATIN CAPITAL LETTER P WITH ACUTE
+1E55;N;LATIN SMALL LETTER P WITH ACUTE
+1E56;N;LATIN CAPITAL LETTER P WITH DOT ABOVE
+1E57;N;LATIN SMALL LETTER P WITH DOT ABOVE
+1E58;N;LATIN CAPITAL LETTER R WITH DOT ABOVE
+1E59;N;LATIN SMALL LETTER R WITH DOT ABOVE
+1E5A;N;LATIN CAPITAL LETTER R WITH DOT BELOW
+1E5B;N;LATIN SMALL LETTER R WITH DOT BELOW
+1E5C;N;LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON
+1E5D;N;LATIN SMALL LETTER R WITH DOT BELOW AND MACRON
+1E5E;N;LATIN CAPITAL LETTER R WITH LINE BELOW
+1E5F;N;LATIN SMALL LETTER R WITH LINE BELOW
+1E60;N;LATIN CAPITAL LETTER S WITH DOT ABOVE
+1E61;N;LATIN SMALL LETTER S WITH DOT ABOVE
+1E62;N;LATIN CAPITAL LETTER S WITH DOT BELOW
+1E63;N;LATIN SMALL LETTER S WITH DOT BELOW
+1E64;N;LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE
+1E65;N;LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE
+1E66;N;LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE
+1E67;N;LATIN SMALL LETTER S WITH CARON AND DOT ABOVE
+1E68;N;LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE
+1E69;N;LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE
+1E6A;N;LATIN CAPITAL LETTER T WITH DOT ABOVE
+1E6B;N;LATIN SMALL LETTER T WITH DOT ABOVE
+1E6C;N;LATIN CAPITAL LETTER T WITH DOT BELOW
+1E6D;N;LATIN SMALL LETTER T WITH DOT BELOW
+1E6E;N;LATIN CAPITAL LETTER T WITH LINE BELOW
+1E6F;N;LATIN SMALL LETTER T WITH LINE BELOW
+1E70;N;LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW
+1E71;N;LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW
+1E72;N;LATIN CAPITAL LETTER U WITH DIAERESIS BELOW
+1E73;N;LATIN SMALL LETTER U WITH DIAERESIS BELOW
+1E74;N;LATIN CAPITAL LETTER U WITH TILDE BELOW
+1E75;N;LATIN SMALL LETTER U WITH TILDE BELOW
+1E76;N;LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW
+1E77;N;LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW
+1E78;N;LATIN CAPITAL LETTER U WITH TILDE AND ACUTE
+1E79;N;LATIN SMALL LETTER U WITH TILDE AND ACUTE
+1E7A;N;LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS
+1E7B;N;LATIN SMALL LETTER U WITH MACRON AND DIAERESIS
+1E7C;N;LATIN CAPITAL LETTER V WITH TILDE
+1E7D;N;LATIN SMALL LETTER V WITH TILDE
+1E7E;N;LATIN CAPITAL LETTER V WITH DOT BELOW
+1E7F;N;LATIN SMALL LETTER V WITH DOT BELOW
+1E80;N;LATIN CAPITAL LETTER W WITH GRAVE
+1E81;N;LATIN SMALL LETTER W WITH GRAVE
+1E82;N;LATIN CAPITAL LETTER W WITH ACUTE
+1E83;N;LATIN SMALL LETTER W WITH ACUTE
+1E84;N;LATIN CAPITAL LETTER W WITH DIAERESIS
+1E85;N;LATIN SMALL LETTER W WITH DIAERESIS
+1E86;N;LATIN CAPITAL LETTER W WITH DOT ABOVE
+1E87;N;LATIN SMALL LETTER W WITH DOT ABOVE
+1E88;N;LATIN CAPITAL LETTER W WITH DOT BELOW
+1E89;N;LATIN SMALL LETTER W WITH DOT BELOW
+1E8A;N;LATIN CAPITAL LETTER X WITH DOT ABOVE
+1E8B;N;LATIN SMALL LETTER X WITH DOT ABOVE
+1E8C;N;LATIN CAPITAL LETTER X WITH DIAERESIS
+1E8D;N;LATIN SMALL LETTER X WITH DIAERESIS
+1E8E;N;LATIN CAPITAL LETTER Y WITH DOT ABOVE
+1E8F;N;LATIN SMALL LETTER Y WITH DOT ABOVE
+1E90;N;LATIN CAPITAL LETTER Z WITH CIRCUMFLEX
+1E91;N;LATIN SMALL LETTER Z WITH CIRCUMFLEX
+1E92;N;LATIN CAPITAL LETTER Z WITH DOT BELOW
+1E93;N;LATIN SMALL LETTER Z WITH DOT BELOW
+1E94;N;LATIN CAPITAL LETTER Z WITH LINE BELOW
+1E95;N;LATIN SMALL LETTER Z WITH LINE BELOW
+1E96;N;LATIN SMALL LETTER H WITH LINE BELOW
+1E97;N;LATIN SMALL LETTER T WITH DIAERESIS
+1E98;N;LATIN SMALL LETTER W WITH RING ABOVE
+1E99;N;LATIN SMALL LETTER Y WITH RING ABOVE
+1E9A;N;LATIN SMALL LETTER A WITH RIGHT HALF RING
+1E9B;N;LATIN SMALL LETTER LONG S WITH DOT ABOVE
+1EA0;N;LATIN CAPITAL LETTER A WITH DOT BELOW
+1EA1;N;LATIN SMALL LETTER A WITH DOT BELOW
+1EA2;N;LATIN CAPITAL LETTER A WITH HOOK ABOVE
+1EA3;N;LATIN SMALL LETTER A WITH HOOK ABOVE
+1EA4;N;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE
+1EA5;N;LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE
+1EA6;N;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE
+1EA7;N;LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE
+1EA8;N;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+1EA9;N;LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+1EAA;N;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE
+1EAB;N;LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
+1EAC;N;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+1EAD;N;LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+1EAE;N;LATIN CAPITAL LETTER A WITH BREVE AND ACUTE
+1EAF;N;LATIN SMALL LETTER A WITH BREVE AND ACUTE
+1EB0;N;LATIN CAPITAL LETTER A WITH BREVE AND GRAVE
+1EB1;N;LATIN SMALL LETTER A WITH BREVE AND GRAVE
+1EB2;N;LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE
+1EB3;N;LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE
+1EB4;N;LATIN CAPITAL LETTER A WITH BREVE AND TILDE
+1EB5;N;LATIN SMALL LETTER A WITH BREVE AND TILDE
+1EB6;N;LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW
+1EB7;N;LATIN SMALL LETTER A WITH BREVE AND DOT BELOW
+1EB8;N;LATIN CAPITAL LETTER E WITH DOT BELOW
+1EB9;N;LATIN SMALL LETTER E WITH DOT BELOW
+1EBA;N;LATIN CAPITAL LETTER E WITH HOOK ABOVE
+1EBB;N;LATIN SMALL LETTER E WITH HOOK ABOVE
+1EBC;N;LATIN CAPITAL LETTER E WITH TILDE
+1EBD;N;LATIN SMALL LETTER E WITH TILDE
+1EBE;N;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE
+1EBF;N;LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
+1EC0;N;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE
+1EC1;N;LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
+1EC2;N;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+1EC3;N;LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+1EC4;N;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE
+1EC5;N;LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
+1EC6;N;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+1EC7;N;LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+1EC8;N;LATIN CAPITAL LETTER I WITH HOOK ABOVE
+1EC9;N;LATIN SMALL LETTER I WITH HOOK ABOVE
+1ECA;N;LATIN CAPITAL LETTER I WITH DOT BELOW
+1ECB;N;LATIN SMALL LETTER I WITH DOT BELOW
+1ECC;N;LATIN CAPITAL LETTER O WITH DOT BELOW
+1ECD;N;LATIN SMALL LETTER O WITH DOT BELOW
+1ECE;N;LATIN CAPITAL LETTER O WITH HOOK ABOVE
+1ECF;N;LATIN SMALL LETTER O WITH HOOK ABOVE
+1ED0;N;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE
+1ED1;N;LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE
+1ED2;N;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE
+1ED3;N;LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE
+1ED4;N;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+1ED5;N;LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+1ED6;N;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE
+1ED7;N;LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE
+1ED8;N;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+1ED9;N;LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+1EDA;N;LATIN CAPITAL LETTER O WITH HORN AND ACUTE
+1EDB;N;LATIN SMALL LETTER O WITH HORN AND ACUTE
+1EDC;N;LATIN CAPITAL LETTER O WITH HORN AND GRAVE
+1EDD;N;LATIN SMALL LETTER O WITH HORN AND GRAVE
+1EDE;N;LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE
+1EDF;N;LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE
+1EE0;N;LATIN CAPITAL LETTER O WITH HORN AND TILDE
+1EE1;N;LATIN SMALL LETTER O WITH HORN AND TILDE
+1EE2;N;LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW
+1EE3;N;LATIN SMALL LETTER O WITH HORN AND DOT BELOW
+1EE4;N;LATIN CAPITAL LETTER U WITH DOT BELOW
+1EE5;N;LATIN SMALL LETTER U WITH DOT BELOW
+1EE6;N;LATIN CAPITAL LETTER U WITH HOOK ABOVE
+1EE7;N;LATIN SMALL LETTER U WITH HOOK ABOVE
+1EE8;N;LATIN CAPITAL LETTER U WITH HORN AND ACUTE
+1EE9;N;LATIN SMALL LETTER U WITH HORN AND ACUTE
+1EEA;N;LATIN CAPITAL LETTER U WITH HORN AND GRAVE
+1EEB;N;LATIN SMALL LETTER U WITH HORN AND GRAVE
+1EEC;N;LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE
+1EED;N;LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE
+1EEE;N;LATIN CAPITAL LETTER U WITH HORN AND TILDE
+1EEF;N;LATIN SMALL LETTER U WITH HORN AND TILDE
+1EF0;N;LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW
+1EF1;N;LATIN SMALL LETTER U WITH HORN AND DOT BELOW
+1EF2;N;LATIN CAPITAL LETTER Y WITH GRAVE
+1EF3;N;LATIN SMALL LETTER Y WITH GRAVE
+1EF4;N;LATIN CAPITAL LETTER Y WITH DOT BELOW
+1EF5;N;LATIN SMALL LETTER Y WITH DOT BELOW
+1EF6;N;LATIN CAPITAL LETTER Y WITH HOOK ABOVE
+1EF7;N;LATIN SMALL LETTER Y WITH HOOK ABOVE
+1EF8;N;LATIN CAPITAL LETTER Y WITH TILDE
+1EF9;N;LATIN SMALL LETTER Y WITH TILDE
+1F00;N;GREEK SMALL LETTER ALPHA WITH PSILI
+1F01;N;GREEK SMALL LETTER ALPHA WITH DASIA
+1F02;N;GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA
+1F03;N;GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA
+1F04;N;GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA
+1F05;N;GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA
+1F06;N;GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI
+1F07;N;GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI
+1F08;N;GREEK CAPITAL LETTER ALPHA WITH PSILI
+1F09;N;GREEK CAPITAL LETTER ALPHA WITH DASIA
+1F0A;N;GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA
+1F0B;N;GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA
+1F0C;N;GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA
+1F0D;N;GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA
+1F0E;N;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI
+1F0F;N;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI
+1F10;N;GREEK SMALL LETTER EPSILON WITH PSILI
+1F11;N;GREEK SMALL LETTER EPSILON WITH DASIA
+1F12;N;GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA
+1F13;N;GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA
+1F14;N;GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA
+1F15;N;GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA
+1F18;N;GREEK CAPITAL LETTER EPSILON WITH PSILI
+1F19;N;GREEK CAPITAL LETTER EPSILON WITH DASIA
+1F1A;N;GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA
+1F1B;N;GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA
+1F1C;N;GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA
+1F1D;N;GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA
+1F20;N;GREEK SMALL LETTER ETA WITH PSILI
+1F21;N;GREEK SMALL LETTER ETA WITH DASIA
+1F22;N;GREEK SMALL LETTER ETA WITH PSILI AND VARIA
+1F23;N;GREEK SMALL LETTER ETA WITH DASIA AND VARIA
+1F24;N;GREEK SMALL LETTER ETA WITH PSILI AND OXIA
+1F25;N;GREEK SMALL LETTER ETA WITH DASIA AND OXIA
+1F26;N;GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI
+1F27;N;GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI
+1F28;N;GREEK CAPITAL LETTER ETA WITH PSILI
+1F29;N;GREEK CAPITAL LETTER ETA WITH DASIA
+1F2A;N;GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA
+1F2B;N;GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA
+1F2C;N;GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA
+1F2D;N;GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA
+1F2E;N;GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI
+1F2F;N;GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI
+1F30;N;GREEK SMALL LETTER IOTA WITH PSILI
+1F31;N;GREEK SMALL LETTER IOTA WITH DASIA
+1F32;N;GREEK SMALL LETTER IOTA WITH PSILI AND VARIA
+1F33;N;GREEK SMALL LETTER IOTA WITH DASIA AND VARIA
+1F34;N;GREEK SMALL LETTER IOTA WITH PSILI AND OXIA
+1F35;N;GREEK SMALL LETTER IOTA WITH DASIA AND OXIA
+1F36;N;GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI
+1F37;N;GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI
+1F38;N;GREEK CAPITAL LETTER IOTA WITH PSILI
+1F39;N;GREEK CAPITAL LETTER IOTA WITH DASIA
+1F3A;N;GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA
+1F3B;N;GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA
+1F3C;N;GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA
+1F3D;N;GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA
+1F3E;N;GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI
+1F3F;N;GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI
+1F40;N;GREEK SMALL LETTER OMICRON WITH PSILI
+1F41;N;GREEK SMALL LETTER OMICRON WITH DASIA
+1F42;N;GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA
+1F43;N;GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA
+1F44;N;GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA
+1F45;N;GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA
+1F48;N;GREEK CAPITAL LETTER OMICRON WITH PSILI
+1F49;N;GREEK CAPITAL LETTER OMICRON WITH DASIA
+1F4A;N;GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA
+1F4B;N;GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA
+1F4C;N;GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA
+1F4D;N;GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA
+1F50;N;GREEK SMALL LETTER UPSILON WITH PSILI
+1F51;N;GREEK SMALL LETTER UPSILON WITH DASIA
+1F52;N;GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA
+1F53;N;GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA
+1F54;N;GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA
+1F55;N;GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA
+1F56;N;GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI
+1F57;N;GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI
+1F59;N;GREEK CAPITAL LETTER UPSILON WITH DASIA
+1F5B;N;GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA
+1F5D;N;GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA
+1F5F;N;GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI
+1F60;N;GREEK SMALL LETTER OMEGA WITH PSILI
+1F61;N;GREEK SMALL LETTER OMEGA WITH DASIA
+1F62;N;GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA
+1F63;N;GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA
+1F64;N;GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA
+1F65;N;GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA
+1F66;N;GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI
+1F67;N;GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI
+1F68;N;GREEK CAPITAL LETTER OMEGA WITH PSILI
+1F69;N;GREEK CAPITAL LETTER OMEGA WITH DASIA
+1F6A;N;GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA
+1F6B;N;GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA
+1F6C;N;GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA
+1F6D;N;GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA
+1F6E;N;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI
+1F6F;N;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI
+1F70;N;GREEK SMALL LETTER ALPHA WITH VARIA
+1F71;N;GREEK SMALL LETTER ALPHA WITH OXIA
+1F72;N;GREEK SMALL LETTER EPSILON WITH VARIA
+1F73;N;GREEK SMALL LETTER EPSILON WITH OXIA
+1F74;N;GREEK SMALL LETTER ETA WITH VARIA
+1F75;N;GREEK SMALL LETTER ETA WITH OXIA
+1F76;N;GREEK SMALL LETTER IOTA WITH VARIA
+1F77;N;GREEK SMALL LETTER IOTA WITH OXIA
+1F78;N;GREEK SMALL LETTER OMICRON WITH VARIA
+1F79;N;GREEK SMALL LETTER OMICRON WITH OXIA
+1F7A;N;GREEK SMALL LETTER UPSILON WITH VARIA
+1F7B;N;GREEK SMALL LETTER UPSILON WITH OXIA
+1F7C;N;GREEK SMALL LETTER OMEGA WITH VARIA
+1F7D;N;GREEK SMALL LETTER OMEGA WITH OXIA
+1F80;N;GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI
+1F81;N;GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI
+1F82;N;GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1F83;N;GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1F84;N;GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1F85;N;GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1F86;N;GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1F87;N;GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1F88;N;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI
+1F89;N;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI
+1F8A;N;GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1F8B;N;GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1F8C;N;GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1F8D;N;GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1F8E;N;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1F8F;N;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1F90;N;GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI
+1F91;N;GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI
+1F92;N;GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1F93;N;GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1F94;N;GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1F95;N;GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1F96;N;GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1F97;N;GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1F98;N;GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI
+1F99;N;GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI
+1F9A;N;GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1F9B;N;GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1F9C;N;GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1F9D;N;GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1F9E;N;GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1F9F;N;GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1FA0;N;GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI
+1FA1;N;GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI
+1FA2;N;GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1FA3;N;GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1FA4;N;GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1FA5;N;GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1FA6;N;GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1FA7;N;GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1FA8;N;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI
+1FA9;N;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI
+1FAA;N;GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1FAB;N;GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1FAC;N;GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1FAD;N;GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1FAE;N;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1FAF;N;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1FB0;N;GREEK SMALL LETTER ALPHA WITH VRACHY
+1FB1;N;GREEK SMALL LETTER ALPHA WITH MACRON
+1FB2;N;GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI
+1FB3;N;GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI
+1FB4;N;GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
+1FB6;N;GREEK SMALL LETTER ALPHA WITH PERISPOMENI
+1FB7;N;GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI
+1FB8;N;GREEK CAPITAL LETTER ALPHA WITH VRACHY
+1FB9;N;GREEK CAPITAL LETTER ALPHA WITH MACRON
+1FBA;N;GREEK CAPITAL LETTER ALPHA WITH VARIA
+1FBB;N;GREEK CAPITAL LETTER ALPHA WITH OXIA
+1FBC;N;GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI
+1FBD;N;GREEK KORONIS
+1FBE;N;GREEK PROSGEGRAMMENI
+1FBF;N;GREEK PSILI
+1FC0;N;GREEK PERISPOMENI
+1FC1;N;GREEK DIALYTIKA AND PERISPOMENI
+1FC2;N;GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI
+1FC3;N;GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI
+1FC4;N;GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
+1FC6;N;GREEK SMALL LETTER ETA WITH PERISPOMENI
+1FC7;N;GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI
+1FC8;N;GREEK CAPITAL LETTER EPSILON WITH VARIA
+1FC9;N;GREEK CAPITAL LETTER EPSILON WITH OXIA
+1FCA;N;GREEK CAPITAL LETTER ETA WITH VARIA
+1FCB;N;GREEK CAPITAL LETTER ETA WITH OXIA
+1FCC;N;GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI
+1FCD;N;GREEK PSILI AND VARIA
+1FCE;N;GREEK PSILI AND OXIA
+1FCF;N;GREEK PSILI AND PERISPOMENI
+1FD0;N;GREEK SMALL LETTER IOTA WITH VRACHY
+1FD1;N;GREEK SMALL LETTER IOTA WITH MACRON
+1FD2;N;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA
+1FD3;N;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
+1FD6;N;GREEK SMALL LETTER IOTA WITH PERISPOMENI
+1FD7;N;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI
+1FD8;N;GREEK CAPITAL LETTER IOTA WITH VRACHY
+1FD9;N;GREEK CAPITAL LETTER IOTA WITH MACRON
+1FDA;N;GREEK CAPITAL LETTER IOTA WITH VARIA
+1FDB;N;GREEK CAPITAL LETTER IOTA WITH OXIA
+1FDD;N;GREEK DASIA AND VARIA
+1FDE;N;GREEK DASIA AND OXIA
+1FDF;N;GREEK DASIA AND PERISPOMENI
+1FE0;N;GREEK SMALL LETTER UPSILON WITH VRACHY
+1FE1;N;GREEK SMALL LETTER UPSILON WITH MACRON
+1FE2;N;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA
+1FE3;N;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
+1FE4;N;GREEK SMALL LETTER RHO WITH PSILI
+1FE5;N;GREEK SMALL LETTER RHO WITH DASIA
+1FE6;N;GREEK SMALL LETTER UPSILON WITH PERISPOMENI
+1FE7;N;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
+1FE8;N;GREEK CAPITAL LETTER UPSILON WITH VRACHY
+1FE9;N;GREEK CAPITAL LETTER UPSILON WITH MACRON
+1FEA;N;GREEK CAPITAL LETTER UPSILON WITH VARIA
+1FEB;N;GREEK CAPITAL LETTER UPSILON WITH OXIA
+1FEC;N;GREEK CAPITAL LETTER RHO WITH DASIA
+1FED;N;GREEK DIALYTIKA AND VARIA
+1FEE;N;GREEK DIALYTIKA AND OXIA
+1FEF;N;GREEK VARIA
+1FF2;N;GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI
+1FF3;N;GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI
+1FF4;N;GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
+1FF6;N;GREEK SMALL LETTER OMEGA WITH PERISPOMENI
+1FF7;N;GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI
+1FF8;N;GREEK CAPITAL LETTER OMICRON WITH VARIA
+1FF9;N;GREEK CAPITAL LETTER OMICRON WITH OXIA
+1FFA;N;GREEK CAPITAL LETTER OMEGA WITH VARIA
+1FFB;N;GREEK CAPITAL LETTER OMEGA WITH OXIA
+1FFC;N;GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI
+1FFD;N;GREEK OXIA
+1FFE;N;GREEK DASIA
+2000;N;EN QUAD
+2001;N;EM QUAD
+2002;N;EN SPACE
+2003;N;EM SPACE
+2004;N;THREE-PER-EM SPACE
+2005;N;FOUR-PER-EM SPACE
+2006;N;SIX-PER-EM SPACE
+2007;N;FIGURE SPACE
+2008;N;PUNCTUATION SPACE
+2009;N;THIN SPACE
+200A;N;HAIR SPACE
+200B;N;ZERO WIDTH SPACE
+200C;N;ZERO WIDTH NON-JOINER
+200D;N;ZERO WIDTH JOINER
+200E;N;LEFT-TO-RIGHT MARK
+200F;N;RIGHT-TO-LEFT MARK
+2010;A;HYPHEN
+2011;N;NON-BREAKING HYPHEN
+2012;N;FIGURE DASH
+2013;A;EN DASH
+2014;A;EM DASH
+2015;A;HORIZONTAL BAR
+2016;A;DOUBLE VERTICAL LINE
+2017;N;DOUBLE LOW LINE
+2018;A;LEFT SINGLE QUOTATION MARK
+2019;A;RIGHT SINGLE QUOTATION MARK
+201A;N;SINGLE LOW-9 QUOTATION MARK
+201B;N;SINGLE HIGH-REVERSED-9 QUOTATION MARK
+201C;A;LEFT DOUBLE QUOTATION MARK
+201D;A;RIGHT DOUBLE QUOTATION MARK
+201E;N;DOUBLE LOW-9 QUOTATION MARK
+201F;N;DOUBLE HIGH-REVERSED-9 QUOTATION MARK
+2020;A;DAGGER
+2021;A;DOUBLE DAGGER
+2022;N;BULLET
+2023;N;TRIANGULAR BULLET
+2024;N;ONE DOT LEADER
+2025;A;TWO DOT LEADER
+2026;A;HORIZONTAL ELLIPSIS
+2027;A;HYPHENATION POINT
+2028;N;LINE SEPARATOR
+2029;N;PARAGRAPH SEPARATOR
+202A;N;LEFT-TO-RIGHT EMBEDDING
+202B;N;RIGHT-TO-LEFT EMBEDDING
+202C;N;POP DIRECTIONAL FORMATTING
+202D;N;LEFT-TO-RIGHT OVERRIDE
+202E;N;RIGHT-TO-LEFT OVERRIDE
+202F;N;NARROW NO-BREAK SPACE
+2030;A;PER MILLE SIGN
+2031;N;PER TEN THOUSAND SIGN
+2032;A;PRIME
+2033;A;DOUBLE PRIME
+2034;N;TRIPLE PRIME
+2035;A;REVERSED PRIME
+2036;N;REVERSED DOUBLE PRIME
+2037;N;REVERSED TRIPLE PRIME
+2038;N;CARET
+2039;N;SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+203A;N;SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+203B;A;REFERENCE MARK
+203C;N;DOUBLE EXCLAMATION MARK
+203D;N;INTERROBANG
+203E;N;OVERLINE
+203F;N;UNDERTIE
+2040;N;CHARACTER TIE
+2041;N;CARET INSERTION POINT
+2042;N;ASTERISM
+2043;N;HYPHEN BULLET
+2044;N;FRACTION SLASH
+2045;N;LEFT SQUARE BRACKET WITH QUILL
+2046;N;RIGHT SQUARE BRACKET WITH QUILL
+2048;N;QUESTION EXCLAMATION MARK
+2049;N;EXCLAMATION QUESTION MARK
+204A;N;TIRONIAN SIGN ET
+204B;N;REVERSED PILCROW SIGN
+204C;N;BLACK LEFTWARDS BULLET
+204D;N;BLACK RIGHTWARDS BULLET
+206A;N;INHIBIT SYMMETRIC SWAPPING
+206B;N;ACTIVATE SYMMETRIC SWAPPING
+206C;N;INHIBIT ARABIC FORM SHAPING
+206D;N;ACTIVATE ARABIC FORM SHAPING
+206E;N;NATIONAL DIGIT SHAPES
+206F;N;NOMINAL DIGIT SHAPES
+2070;N;SUPERSCRIPT ZERO
+2074;A;SUPERSCRIPT FOUR
+2075;N;SUPERSCRIPT FIVE
+2076;N;SUPERSCRIPT SIX
+2077;N;SUPERSCRIPT SEVEN
+2078;N;SUPERSCRIPT EIGHT
+2079;N;SUPERSCRIPT NINE
+207A;N;SUPERSCRIPT PLUS SIGN
+207B;N;SUPERSCRIPT MINUS
+207C;N;SUPERSCRIPT EQUALS SIGN
+207D;N;SUPERSCRIPT LEFT PARENTHESIS
+207E;N;SUPERSCRIPT RIGHT PARENTHESIS
+207F;A;SUPERSCRIPT LATIN SMALL LETTER N
+2080;N;SUBSCRIPT ZERO
+2081;A;SUBSCRIPT ONE
+2082;A;SUBSCRIPT TWO
+2083;A;SUBSCRIPT THREE
+2084;A;SUBSCRIPT FOUR
+2085;N;SUBSCRIPT FIVE
+2086;N;SUBSCRIPT SIX
+2087;N;SUBSCRIPT SEVEN
+2088;N;SUBSCRIPT EIGHT
+2089;N;SUBSCRIPT NINE
+208A;N;SUBSCRIPT PLUS SIGN
+208B;N;SUBSCRIPT MINUS
+208C;N;SUBSCRIPT EQUALS SIGN
+208D;N;SUBSCRIPT LEFT PARENTHESIS
+208E;N;SUBSCRIPT RIGHT PARENTHESIS
+20A0;N;EURO-CURRENCY SIGN
+20A1;N;COLON SIGN
+20A2;N;CRUZEIRO SIGN
+20A3;N;FRENCH FRANC SIGN
+20A4;N;LIRA SIGN
+20A5;N;MILL SIGN
+20A6;N;NAIRA SIGN
+20A7;N;PESETA SIGN
+20A8;N;RUPEE SIGN
+20A9;H;WON SIGN
+20AA;N;NEW SHEQEL SIGN
+20AB;N;DONG SIGN
+20AC;A;EURO SIGN
+20AD;N;KIP SIGN
+20AE;N;TUGRIK SIGN
+20AF;N;DRACHMA SIGN
+20D0;N;COMBINING LEFT HARPOON ABOVE
+20D1;N;COMBINING RIGHT HARPOON ABOVE
+20D2;N;COMBINING LONG VERTICAL LINE OVERLAY
+20D3;N;COMBINING SHORT VERTICAL LINE OVERLAY
+20D4;N;COMBINING ANTICLOCKWISE ARROW ABOVE
+20D5;N;COMBINING CLOCKWISE ARROW ABOVE
+20D6;N;COMBINING LEFT ARROW ABOVE
+20D7;N;COMBINING RIGHT ARROW ABOVE
+20D8;N;COMBINING RING OVERLAY
+20D9;N;COMBINING CLOCKWISE RING OVERLAY
+20DA;N;COMBINING ANTICLOCKWISE RING OVERLAY
+20DB;N;COMBINING THREE DOTS ABOVE
+20DC;N;COMBINING FOUR DOTS ABOVE
+20DD;N;COMBINING ENCLOSING CIRCLE
+20DE;N;COMBINING ENCLOSING SQUARE
+20DF;N;COMBINING ENCLOSING DIAMOND
+20E0;N;COMBINING ENCLOSING CIRCLE BACKSLASH
+20E1;N;COMBINING LEFT RIGHT ARROW ABOVE
+20E2;N;COMBINING ENCLOSING SCREEN
+20E3;N;COMBINING ENCLOSING KEYCAP
+2100;N;ACCOUNT OF
+2101;N;ADDRESSED TO THE SUBJECT
+2102;N;DOUBLE-STRUCK CAPITAL C
+2103;A;DEGREE CELSIUS
+2104;N;CENTRE LINE SYMBOL
+2105;A;CARE OF
+2106;N;CADA UNA
+2107;N;EULER CONSTANT
+2108;N;SCRUPLE
+2109;A;DEGREE FAHRENHEIT
+210A;N;SCRIPT SMALL G
+210B;N;SCRIPT CAPITAL H
+210C;N;BLACK-LETTER CAPITAL H
+210D;N;DOUBLE-STRUCK CAPITAL H
+210E;N;PLANCK CONSTANT
+210F;N;PLANCK CONSTANT OVER TWO PI
+2110;N;SCRIPT CAPITAL I
+2111;N;BLACK-LETTER CAPITAL I
+2112;N;SCRIPT CAPITAL L
+2113;A;SCRIPT SMALL L
+2114;N;L B BAR SYMBOL
+2115;N;DOUBLE-STRUCK CAPITAL N
+2116;N;NUMERO SIGN
+2117;N;SOUND RECORDING COPYRIGHT
+2118;N;SCRIPT CAPITAL P
+2119;N;DOUBLE-STRUCK CAPITAL P
+211A;N;DOUBLE-STRUCK CAPITAL Q
+211B;N;SCRIPT CAPITAL R
+211C;N;BLACK-LETTER CAPITAL R
+211D;N;DOUBLE-STRUCK CAPITAL R
+211E;N;PRESCRIPTION TAKE
+211F;N;RESPONSE
+2120;N;SERVICE MARK
+2121;A;TELEPHONE SIGN
+2122;A;TRADE MARK SIGN
+2123;N;VERSICLE
+2124;N;DOUBLE-STRUCK CAPITAL Z
+2125;N;OUNCE SIGN
+2126;A;OHM SIGN
+2127;N;INVERTED OHM SIGN
+2128;N;BLACK-LETTER CAPITAL Z
+2129;N;TURNED GREEK SMALL LETTER IOTA
+212A;N;KELVIN SIGN
+212B;A;ANGSTROM SIGN
+212C;N;SCRIPT CAPITAL B
+212D;N;BLACK-LETTER CAPITAL C
+212E;N;ESTIMATED SYMBOL
+212F;N;SCRIPT SMALL E
+2130;N;SCRIPT CAPITAL E
+2131;N;SCRIPT CAPITAL F
+2132;N;TURNED CAPITAL F
+2133;N;SCRIPT CAPITAL M
+2134;N;SCRIPT SMALL O
+2135;N;ALEF SYMBOL
+2136;N;BET SYMBOL
+2137;N;GIMEL SYMBOL
+2138;N;DALET SYMBOL
+2139;N;INFORMATION SOURCE
+213A;N;ROTATED CAPITAL Q
+2153;N;VULGAR FRACTION ONE THIRD
+2154;A;VULGAR FRACTION TWO THIRDS
+2155;A;VULGAR FRACTION ONE FIFTH
+2156;N;VULGAR FRACTION TWO FIFTHS
+2157;N;VULGAR FRACTION THREE FIFTHS
+2158;N;VULGAR FRACTION FOUR FIFTHS
+2159;N;VULGAR FRACTION ONE SIXTH
+215A;N;VULGAR FRACTION FIVE SIXTHS
+215B;A;VULGAR FRACTION ONE EIGHTH
+215C;N;VULGAR FRACTION THREE EIGHTHS
+215D;N;VULGAR FRACTION FIVE EIGHTHS
+215E;A;VULGAR FRACTION SEVEN EIGHTHS
+215F;N;FRACTION NUMERATOR ONE
+2160;A;ROMAN NUMERAL ONE
+2161;A;ROMAN NUMERAL TWO
+2162;A;ROMAN NUMERAL THREE
+2163;A;ROMAN NUMERAL FOUR
+2164;A;ROMAN NUMERAL FIVE
+2165;A;ROMAN NUMERAL SIX
+2166;A;ROMAN NUMERAL SEVEN
+2167;A;ROMAN NUMERAL EIGHT
+2168;A;ROMAN NUMERAL NINE
+2169;A;ROMAN NUMERAL TEN
+216A;A;ROMAN NUMERAL ELEVEN
+216B;A;ROMAN NUMERAL TWELVE
+216C;N;ROMAN NUMERAL FIFTY
+216D;N;ROMAN NUMERAL ONE HUNDRED
+216E;N;ROMAN NUMERAL FIVE HUNDRED
+216F;N;ROMAN NUMERAL ONE THOUSAND
+2170;A;SMALL ROMAN NUMERAL ONE
+2171;A;SMALL ROMAN NUMERAL TWO
+2172;A;SMALL ROMAN NUMERAL THREE
+2173;A;SMALL ROMAN NUMERAL FOUR
+2174;A;SMALL ROMAN NUMERAL FIVE
+2175;A;SMALL ROMAN NUMERAL SIX
+2176;A;SMALL ROMAN NUMERAL SEVEN
+2177;A;SMALL ROMAN NUMERAL EIGHT
+2178;A;SMALL ROMAN NUMERAL NINE
+2179;A;SMALL ROMAN NUMERAL TEN
+217A;N;SMALL ROMAN NUMERAL ELEVEN
+217B;N;SMALL ROMAN NUMERAL TWELVE
+217C;N;SMALL ROMAN NUMERAL FIFTY
+217D;N;SMALL ROMAN NUMERAL ONE HUNDRED
+217E;N;SMALL ROMAN NUMERAL FIVE HUNDRED
+217F;N;SMALL ROMAN NUMERAL ONE THOUSAND
+2180;N;ROMAN NUMERAL ONE THOUSAND C D
+2181;N;ROMAN NUMERAL FIVE THOUSAND
+2182;N;ROMAN NUMERAL TEN THOUSAND
+2183;N;ROMAN NUMERAL REVERSED ONE HUNDRED
+2190;A;LEFTWARDS ARROW
+2191;A;UPWARDS ARROW
+2192;A;RIGHTWARDS ARROW
+2193;A;DOWNWARDS ARROW
+2194;A;LEFT RIGHT ARROW
+2195;A;UP DOWN ARROW
+2196;A;NORTH WEST ARROW
+2197;A;NORTH EAST ARROW
+2198;A;SOUTH EAST ARROW
+2199;A;SOUTH WEST ARROW
+219A;N;LEFTWARDS ARROW WITH STROKE
+219B;N;RIGHTWARDS ARROW WITH STROKE
+219C;N;LEFTWARDS WAVE ARROW
+219D;N;RIGHTWARDS WAVE ARROW
+219E;N;LEFTWARDS TWO HEADED ARROW
+219F;N;UPWARDS TWO HEADED ARROW
+21A0;N;RIGHTWARDS TWO HEADED ARROW
+21A1;N;DOWNWARDS TWO HEADED ARROW
+21A2;N;LEFTWARDS ARROW WITH TAIL
+21A3;N;RIGHTWARDS ARROW WITH TAIL
+21A4;N;LEFTWARDS ARROW FROM BAR
+21A5;N;UPWARDS ARROW FROM BAR
+21A6;N;RIGHTWARDS ARROW FROM BAR
+21A7;N;DOWNWARDS ARROW FROM BAR
+21A8;N;UP DOWN ARROW WITH BASE
+21A9;N;LEFTWARDS ARROW WITH HOOK
+21AA;N;RIGHTWARDS ARROW WITH HOOK
+21AB;N;LEFTWARDS ARROW WITH LOOP
+21AC;N;RIGHTWARDS ARROW WITH LOOP
+21AD;N;LEFT RIGHT WAVE ARROW
+21AE;N;LEFT RIGHT ARROW WITH STROKE
+21AF;N;DOWNWARDS ZIGZAG ARROW
+21B0;N;UPWARDS ARROW WITH TIP LEFTWARDS
+21B1;N;UPWARDS ARROW WITH TIP RIGHTWARDS
+21B2;N;DOWNWARDS ARROW WITH TIP LEFTWARDS
+21B3;N;DOWNWARDS ARROW WITH TIP RIGHTWARDS
+21B4;N;RIGHTWARDS ARROW WITH CORNER DOWNWARDS
+21B5;N;DOWNWARDS ARROW WITH CORNER LEFTWARDS
+21B6;N;ANTICLOCKWISE TOP SEMICIRCLE ARROW
+21B7;N;CLOCKWISE TOP SEMICIRCLE ARROW
+21B8;N;NORTH WEST ARROW TO LONG BAR
+21B9;N;LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR
+21BA;N;ANTICLOCKWISE OPEN CIRCLE ARROW
+21BB;N;CLOCKWISE OPEN CIRCLE ARROW
+21BC;N;LEFTWARDS HARPOON WITH BARB UPWARDS
+21BD;N;LEFTWARDS HARPOON WITH BARB DOWNWARDS
+21BE;N;UPWARDS HARPOON WITH BARB RIGHTWARDS
+21BF;N;UPWARDS HARPOON WITH BARB LEFTWARDS
+21C0;N;RIGHTWARDS HARPOON WITH BARB UPWARDS
+21C1;N;RIGHTWARDS HARPOON WITH BARB DOWNWARDS
+21C2;N;DOWNWARDS HARPOON WITH BARB RIGHTWARDS
+21C3;N;DOWNWARDS HARPOON WITH BARB LEFTWARDS
+21C4;N;RIGHTWARDS ARROW OVER LEFTWARDS ARROW
+21C5;N;UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW
+21C6;N;LEFTWARDS ARROW OVER RIGHTWARDS ARROW
+21C7;N;LEFTWARDS PAIRED ARROWS
+21C8;N;UPWARDS PAIRED ARROWS
+21C9;N;RIGHTWARDS PAIRED ARROWS
+21CA;N;DOWNWARDS PAIRED ARROWS
+21CB;N;LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
+21CC;N;RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
+21CD;N;LEFTWARDS DOUBLE ARROW WITH STROKE
+21CE;N;LEFT RIGHT DOUBLE ARROW WITH STROKE
+21CF;N;RIGHTWARDS DOUBLE ARROW WITH STROKE
+21D0;N;LEFTWARDS DOUBLE ARROW
+21D1;N;UPWARDS DOUBLE ARROW
+21D2;A;RIGHTWARDS DOUBLE ARROW
+21D3;N;DOWNWARDS DOUBLE ARROW
+21D4;A;LEFT RIGHT DOUBLE ARROW
+21D5;N;UP DOWN DOUBLE ARROW
+21D6;N;NORTH WEST DOUBLE ARROW
+21D7;N;NORTH EAST DOUBLE ARROW
+21D8;N;SOUTH EAST DOUBLE ARROW
+21D9;N;SOUTH WEST DOUBLE ARROW
+21DA;N;LEFTWARDS TRIPLE ARROW
+21DB;N;RIGHTWARDS TRIPLE ARROW
+21DC;N;LEFTWARDS SQUIGGLE ARROW
+21DD;N;RIGHTWARDS SQUIGGLE ARROW
+21DE;N;UPWARDS ARROW WITH DOUBLE STROKE
+21DF;N;DOWNWARDS ARROW WITH DOUBLE STROKE
+21E0;N;LEFTWARDS DASHED ARROW
+21E1;N;UPWARDS DASHED ARROW
+21E2;N;RIGHTWARDS DASHED ARROW
+21E3;N;DOWNWARDS DASHED ARROW
+21E4;N;LEFTWARDS ARROW TO BAR
+21E5;N;RIGHTWARDS ARROW TO BAR
+21E6;N;LEFTWARDS WHITE ARROW
+21E7;N;UPWARDS WHITE ARROW
+21E8;N;RIGHTWARDS WHITE ARROW
+21E9;N;DOWNWARDS WHITE ARROW
+21EA;N;UPWARDS WHITE ARROW FROM BAR
+21EB;N;UPWARDS WHITE ARROW ON PEDESTAL
+21EC;N;UPWARDS WHITE ARROW ON PEDESTAL WITH HORIZONTAL BAR
+21ED;N;UPWARDS WHITE ARROW ON PEDESTAL WITH VERTICAL BAR
+21EE;N;UPWARDS WHITE DOUBLE ARROW
+21EF;N;UPWARDS WHITE DOUBLE ARROW ON PEDESTAL
+21F0;N;RIGHTWARDS WHITE ARROW FROM WALL
+21F1;N;NORTH WEST ARROW TO CORNER
+21F2;N;SOUTH EAST ARROW TO CORNER
+21F3;N;UP DOWN WHITE ARROW
+2200;A;FOR ALL
+2201;N;COMPLEMENT
+2202;A;PARTIAL DIFFERENTIAL
+2203;A;THERE EXISTS
+2204;N;THERE DOES NOT EXIST
+2205;N;EMPTY SET
+2206;N;INCREMENT
+2207;A;NABLA
+2208;A;ELEMENT OF
+2209;N;NOT AN ELEMENT OF
+220A;N;SMALL ELEMENT OF
+220B;A;CONTAINS AS MEMBER
+220C;N;DOES NOT CONTAIN AS MEMBER
+220D;N;SMALL CONTAINS AS MEMBER
+220E;N;END OF PROOF
+220F;A;N-ARY PRODUCT
+2210;N;N-ARY COPRODUCT
+2211;A;N-ARY SUMMATION
+2212;N;MINUS SIGN
+2213;N;MINUS-OR-PLUS SIGN
+2214;N;DOT PLUS
+2215;A;DIVISION SLASH
+2216;N;SET MINUS
+2217;N;ASTERISK OPERATOR
+2218;N;RING OPERATOR
+2219;N;BULLET OPERATOR
+221A;A;SQUARE ROOT
+221B;N;CUBE ROOT
+221C;N;FOURTH ROOT
+221D;A;PROPORTIONAL TO
+221E;A;INFINITY
+221F;A;RIGHT ANGLE
+2220;A;ANGLE
+2221;N;MEASURED ANGLE
+2222;N;SPHERICAL ANGLE
+2223;A;DIVIDES
+2224;N;DOES NOT DIVIDE
+2225;A;PARALLEL TO
+2226;N;NOT PARALLEL TO
+2227;A;LOGICAL AND
+2228;A;LOGICAL OR
+2229;A;INTERSECTION
+222A;A;UNION
+222B;A;INTEGRAL
+222C;A;DOUBLE INTEGRAL
+222D;N;TRIPLE INTEGRAL
+222E;A;CONTOUR INTEGRAL
+222F;N;SURFACE INTEGRAL
+2230;N;VOLUME INTEGRAL
+2231;N;CLOCKWISE INTEGRAL
+2232;N;CLOCKWISE CONTOUR INTEGRAL
+2233;N;ANTICLOCKWISE CONTOUR INTEGRAL
+2234;A;THEREFORE
+2235;A;BECAUSE
+2236;A;RATIO
+2237;A;PROPORTION
+2238;N;DOT MINUS
+2239;N;EXCESS
+223A;N;GEOMETRIC PROPORTION
+223B;N;HOMOTHETIC
+223C;A;TILDE OPERATOR
+223D;A;REVERSED TILDE
+223E;N;INVERTED LAZY S
+223F;N;SINE WAVE
+2240;N;WREATH PRODUCT
+2241;N;NOT TILDE
+2242;N;MINUS TILDE
+2243;N;ASYMPTOTICALLY EQUAL TO
+2244;N;NOT ASYMPTOTICALLY EQUAL TO
+2245;N;APPROXIMATELY EQUAL TO
+2246;N;APPROXIMATELY BUT NOT ACTUALLY EQUAL TO
+2247;N;NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
+2248;A;ALMOST EQUAL TO
+2249;N;NOT ALMOST EQUAL TO
+224A;N;ALMOST EQUAL OR EQUAL TO
+224B;N;TRIPLE TILDE
+224C;A;ALL EQUAL TO
+224D;N;EQUIVALENT TO
+224E;N;GEOMETRICALLY EQUIVALENT TO
+224F;N;DIFFERENCE BETWEEN
+2250;N;APPROACHES THE LIMIT
+2251;N;GEOMETRICALLY EQUAL TO
+2252;A;APPROXIMATELY EQUAL TO OR THE IMAGE OF
+2253;N;IMAGE OF OR APPROXIMATELY EQUAL TO
+2254;N;COLON EQUALS
+2255;N;EQUALS COLON
+2256;N;RING IN EQUAL TO
+2257;N;RING EQUAL TO
+2258;N;CORRESPONDS TO
+2259;N;ESTIMATES
+225A;N;EQUIANGULAR TO
+225B;N;STAR EQUALS
+225C;N;DELTA EQUAL TO
+225D;N;EQUAL TO BY DEFINITION
+225E;N;MEASURED BY
+225F;N;QUESTIONED EQUAL TO
+2260;A;NOT EQUAL TO
+2261;A;IDENTICAL TO
+2262;N;NOT IDENTICAL TO
+2263;N;STRICTLY EQUIVALENT TO
+2264;A;LESS-THAN OR EQUAL TO
+2265;A;GREATER-THAN OR EQUAL TO
+2266;A;LESS-THAN OVER EQUAL TO
+2267;A;GREATER-THAN OVER EQUAL TO
+2268;N;LESS-THAN BUT NOT EQUAL TO
+2269;N;GREATER-THAN BUT NOT EQUAL TO
+226A;A;MUCH LESS-THAN
+226B;A;MUCH GREATER-THAN
+226C;N;BETWEEN
+226D;N;NOT EQUIVALENT TO
+226E;A;NOT LESS-THAN
+226F;A;NOT GREATER-THAN
+2270;N;NEITHER LESS-THAN NOR EQUAL TO
+2271;N;NEITHER GREATER-THAN NOR EQUAL TO
+2272;N;LESS-THAN OR EQUIVALENT TO
+2273;N;GREATER-THAN OR EQUIVALENT TO
+2274;N;NEITHER LESS-THAN NOR EQUIVALENT TO
+2275;N;NEITHER GREATER-THAN NOR EQUIVALENT TO
+2276;N;LESS-THAN OR GREATER-THAN
+2277;N;GREATER-THAN OR LESS-THAN
+2278;N;NEITHER LESS-THAN NOR GREATER-THAN
+2279;N;NEITHER GREATER-THAN NOR LESS-THAN
+227A;N;PRECEDES
+227B;N;SUCCEEDS
+227C;N;PRECEDES OR EQUAL TO
+227D;N;SUCCEEDS OR EQUAL TO
+227E;N;PRECEDES OR EQUIVALENT TO
+227F;N;SUCCEEDS OR EQUIVALENT TO
+2280;N;DOES NOT PRECEDE
+2281;N;DOES NOT SUCCEED
+2282;A;SUBSET OF
+2283;A;SUPERSET OF
+2284;N;NOT A SUBSET OF
+2285;N;NOT A SUPERSET OF
+2286;A;SUBSET OF OR EQUAL TO
+2287;A;SUPERSET OF OR EQUAL TO
+2288;N;NEITHER A SUBSET OF NOR EQUAL TO
+2289;N;NEITHER A SUPERSET OF NOR EQUAL TO
+228A;N;SUBSET OF WITH NOT EQUAL TO
+228B;N;SUPERSET OF WITH NOT EQUAL TO
+228C;N;MULTISET
+228D;N;MULTISET MULTIPLICATION
+228E;N;MULTISET UNION
+228F;N;SQUARE IMAGE OF
+2290;N;SQUARE ORIGINAL OF
+2291;N;SQUARE IMAGE OF OR EQUAL TO
+2292;N;SQUARE ORIGINAL OF OR EQUAL TO
+2293;N;SQUARE CAP
+2294;N;SQUARE CUP
+2295;A;CIRCLED PLUS
+2296;N;CIRCLED MINUS
+2297;N;CIRCLED TIMES
+2298;N;CIRCLED DIVISION SLASH
+2299;A;CIRCLED DOT OPERATOR
+229A;N;CIRCLED RING OPERATOR
+229B;N;CIRCLED ASTERISK OPERATOR
+229C;N;CIRCLED EQUALS
+229D;N;CIRCLED DASH
+229E;N;SQUARED PLUS
+229F;N;SQUARED MINUS
+22A0;N;SQUARED TIMES
+22A1;N;SQUARED DOT OPERATOR
+22A2;N;RIGHT TACK
+22A3;N;LEFT TACK
+22A4;N;DOWN TACK
+22A5;A;UP TACK
+22A6;N;ASSERTION
+22A7;N;MODELS
+22A8;N;TRUE
+22A9;N;FORCES
+22AA;N;TRIPLE VERTICAL BAR RIGHT TURNSTILE
+22AB;N;DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
+22AC;N;DOES NOT PROVE
+22AD;N;NOT TRUE
+22AE;N;DOES NOT FORCE
+22AF;N;NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
+22B0;N;PRECEDES UNDER RELATION
+22B1;N;SUCCEEDS UNDER RELATION
+22B2;N;NORMAL SUBGROUP OF
+22B3;N;CONTAINS AS NORMAL SUBGROUP
+22B4;N;NORMAL SUBGROUP OF OR EQUAL TO
+22B5;N;CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
+22B6;N;ORIGINAL OF
+22B7;N;IMAGE OF
+22B8;N;MULTIMAP
+22B9;N;HERMITIAN CONJUGATE MATRIX
+22BA;N;INTERCALATE
+22BB;N;XOR
+22BC;N;NAND
+22BD;N;NOR
+22BE;N;RIGHT ANGLE WITH ARC
+22BF;A;RIGHT TRIANGLE
+22C0;N;N-ARY LOGICAL AND
+22C1;N;N-ARY LOGICAL OR
+22C2;N;N-ARY INTERSECTION
+22C3;N;N-ARY UNION
+22C4;N;DIAMOND OPERATOR
+22C5;N;DOT OPERATOR
+22C6;N;STAR OPERATOR
+22C7;N;DIVISION TIMES
+22C8;N;BOWTIE
+22C9;N;LEFT NORMAL FACTOR SEMIDIRECT PRODUCT
+22CA;N;RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT
+22CB;N;LEFT SEMIDIRECT PRODUCT
+22CC;N;RIGHT SEMIDIRECT PRODUCT
+22CD;N;REVERSED TILDE EQUALS
+22CE;N;CURLY LOGICAL OR
+22CF;N;CURLY LOGICAL AND
+22D0;N;DOUBLE SUBSET
+22D1;N;DOUBLE SUPERSET
+22D2;N;DOUBLE INTERSECTION
+22D3;N;DOUBLE UNION
+22D4;N;PITCHFORK
+22D5;N;EQUAL AND PARALLEL TO
+22D6;N;LESS-THAN WITH DOT
+22D7;N;GREATER-THAN WITH DOT
+22D8;N;VERY MUCH LESS-THAN
+22D9;N;VERY MUCH GREATER-THAN
+22DA;N;LESS-THAN EQUAL TO OR GREATER-THAN
+22DB;N;GREATER-THAN EQUAL TO OR LESS-THAN
+22DC;N;EQUAL TO OR LESS-THAN
+22DD;N;EQUAL TO OR GREATER-THAN
+22DE;N;EQUAL TO OR PRECEDES
+22DF;N;EQUAL TO OR SUCCEEDS
+22E0;N;DOES NOT PRECEDE OR EQUAL
+22E1;N;DOES NOT SUCCEED OR EQUAL
+22E2;N;NOT SQUARE IMAGE OF OR EQUAL TO
+22E3;N;NOT SQUARE ORIGINAL OF OR EQUAL TO
+22E4;N;SQUARE IMAGE OF OR NOT EQUAL TO
+22E5;N;SQUARE ORIGINAL OF OR NOT EQUAL TO
+22E6;N;LESS-THAN BUT NOT EQUIVALENT TO
+22E7;N;GREATER-THAN BUT NOT EQUIVALENT TO
+22E8;N;PRECEDES BUT NOT EQUIVALENT TO
+22E9;N;SUCCEEDS BUT NOT EQUIVALENT TO
+22EA;N;NOT NORMAL SUBGROUP OF
+22EB;N;DOES NOT CONTAIN AS NORMAL SUBGROUP
+22EC;N;NOT NORMAL SUBGROUP OF OR EQUAL TO
+22ED;N;DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
+22EE;N;VERTICAL ELLIPSIS
+22EF;N;MIDLINE HORIZONTAL ELLIPSIS
+22F0;N;UP RIGHT DIAGONAL ELLIPSIS
+22F1;N;DOWN RIGHT DIAGONAL ELLIPSIS
+2300;N;DIAMETER SIGN
+2301;N;ELECTRIC ARROW
+2302;N;HOUSE
+2303;N;UP ARROWHEAD
+2304;N;DOWN ARROWHEAD
+2305;N;PROJECTIVE
+2306;N;PERSPECTIVE
+2307;N;WAVY LINE
+2308;N;LEFT CEILING
+2309;N;RIGHT CEILING
+230A;N;LEFT FLOOR
+230B;N;RIGHT FLOOR
+230C;N;BOTTOM RIGHT CROP
+230D;N;BOTTOM LEFT CROP
+230E;N;TOP RIGHT CROP
+230F;N;TOP LEFT CROP
+2310;N;REVERSED NOT SIGN
+2311;N;SQUARE LOZENGE
+2312;A;ARC
+2313;N;SEGMENT
+2314;N;SECTOR
+2315;N;TELEPHONE RECORDER
+2316;N;POSITION INDICATOR
+2317;N;VIEWDATA SQUARE
+2318;N;PLACE OF INTEREST SIGN
+2319;N;TURNED NOT SIGN
+231A;N;WATCH
+231B;N;HOURGLASS
+231C;N;TOP LEFT CORNER
+231D;N;TOP RIGHT CORNER
+231E;N;BOTTOM LEFT CORNER
+231F;N;BOTTOM RIGHT CORNER
+2320;N;TOP HALF INTEGRAL
+2321;N;BOTTOM HALF INTEGRAL
+2322;N;FROWN
+2323;N;SMILE
+2324;N;UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS
+2325;N;OPTION KEY
+2326;N;ERASE TO THE RIGHT
+2327;N;X IN A RECTANGLE BOX
+2328;N;KEYBOARD
+2329;N;LEFT-POINTING ANGLE BRACKET
+232A;N;RIGHT-POINTING ANGLE BRACKET
+232B;N;ERASE TO THE LEFT
+232C;N;BENZENE RING
+232D;N;CYLINDRICITY
+232E;N;ALL AROUND-PROFILE
+232F;N;SYMMETRY
+2330;N;TOTAL RUNOUT
+2331;N;DIMENSION ORIGIN
+2332;N;CONICAL TAPER
+2333;N;SLOPE
+2334;N;COUNTERBORE
+2335;N;COUNTERSINK
+2336;N;APL FUNCTIONAL SYMBOL I-BEAM
+2337;N;APL FUNCTIONAL SYMBOL SQUISH QUAD
+2338;N;APL FUNCTIONAL SYMBOL QUAD EQUAL
+2339;N;APL FUNCTIONAL SYMBOL QUAD DIVIDE
+233A;N;APL FUNCTIONAL SYMBOL QUAD DIAMOND
+233B;N;APL FUNCTIONAL SYMBOL QUAD JOT
+233C;N;APL FUNCTIONAL SYMBOL QUAD CIRCLE
+233D;N;APL FUNCTIONAL SYMBOL CIRCLE STILE
+233E;N;APL FUNCTIONAL SYMBOL CIRCLE JOT
+233F;N;APL FUNCTIONAL SYMBOL SLASH BAR
+2340;N;APL FUNCTIONAL SYMBOL BACKSLASH BAR
+2341;N;APL FUNCTIONAL SYMBOL QUAD SLASH
+2342;N;APL FUNCTIONAL SYMBOL QUAD BACKSLASH
+2343;N;APL FUNCTIONAL SYMBOL QUAD LESS-THAN
+2344;N;APL FUNCTIONAL SYMBOL QUAD GREATER-THAN
+2345;N;APL FUNCTIONAL SYMBOL LEFTWARDS VANE
+2346;N;APL FUNCTIONAL SYMBOL RIGHTWARDS VANE
+2347;N;APL FUNCTIONAL SYMBOL QUAD LEFTWARDS ARROW
+2348;N;APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW
+2349;N;APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH
+234A;N;APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR
+234B;N;APL FUNCTIONAL SYMBOL DELTA STILE
+234C;N;APL FUNCTIONAL SYMBOL QUAD DOWN CARET
+234D;N;APL FUNCTIONAL SYMBOL QUAD DELTA
+234E;N;APL FUNCTIONAL SYMBOL DOWN TACK JOT
+234F;N;APL FUNCTIONAL SYMBOL UPWARDS VANE
+2350;N;APL FUNCTIONAL SYMBOL QUAD UPWARDS ARROW
+2351;N;APL FUNCTIONAL SYMBOL UP TACK OVERBAR
+2352;N;APL FUNCTIONAL SYMBOL DEL STILE
+2353;N;APL FUNCTIONAL SYMBOL QUAD UP CARET
+2354;N;APL FUNCTIONAL SYMBOL QUAD DEL
+2355;N;APL FUNCTIONAL SYMBOL UP TACK JOT
+2356;N;APL FUNCTIONAL SYMBOL DOWNWARDS VANE
+2357;N;APL FUNCTIONAL SYMBOL QUAD DOWNWARDS ARROW
+2358;N;APL FUNCTIONAL SYMBOL QUOTE UNDERBAR
+2359;N;APL FUNCTIONAL SYMBOL DELTA UNDERBAR
+235A;N;APL FUNCTIONAL SYMBOL DIAMOND UNDERBAR
+235B;N;APL FUNCTIONAL SYMBOL JOT UNDERBAR
+235C;N;APL FUNCTIONAL SYMBOL CIRCLE UNDERBAR
+235D;N;APL FUNCTIONAL SYMBOL UP SHOE JOT
+235E;N;APL FUNCTIONAL SYMBOL QUOTE QUAD
+235F;N;APL FUNCTIONAL SYMBOL CIRCLE STAR
+2360;N;APL FUNCTIONAL SYMBOL QUAD COLON
+2361;N;APL FUNCTIONAL SYMBOL UP TACK DIAERESIS
+2362;N;APL FUNCTIONAL SYMBOL DEL DIAERESIS
+2363;N;APL FUNCTIONAL SYMBOL STAR DIAERESIS
+2364;N;APL FUNCTIONAL SYMBOL JOT DIAERESIS
+2365;N;APL FUNCTIONAL SYMBOL CIRCLE DIAERESIS
+2366;N;APL FUNCTIONAL SYMBOL DOWN SHOE STILE
+2367;N;APL FUNCTIONAL SYMBOL LEFT SHOE STILE
+2368;N;APL FUNCTIONAL SYMBOL TILDE DIAERESIS
+2369;N;APL FUNCTIONAL SYMBOL GREATER-THAN DIAERESIS
+236A;N;APL FUNCTIONAL SYMBOL COMMA BAR
+236B;N;APL FUNCTIONAL SYMBOL DEL TILDE
+236C;N;APL FUNCTIONAL SYMBOL ZILDE
+236D;N;APL FUNCTIONAL SYMBOL STILE TILDE
+236E;N;APL FUNCTIONAL SYMBOL SEMICOLON UNDERBAR
+236F;N;APL FUNCTIONAL SYMBOL QUAD NOT EQUAL
+2370;N;APL FUNCTIONAL SYMBOL QUAD QUESTION
+2371;N;APL FUNCTIONAL SYMBOL DOWN CARET TILDE
+2372;N;APL FUNCTIONAL SYMBOL UP CARET TILDE
+2373;N;APL FUNCTIONAL SYMBOL IOTA
+2374;N;APL FUNCTIONAL SYMBOL RHO
+2375;N;APL FUNCTIONAL SYMBOL OMEGA
+2376;N;APL FUNCTIONAL SYMBOL ALPHA UNDERBAR
+2377;N;APL FUNCTIONAL SYMBOL EPSILON UNDERBAR
+2378;N;APL FUNCTIONAL SYMBOL IOTA UNDERBAR
+2379;N;APL FUNCTIONAL SYMBOL OMEGA UNDERBAR
+237A;N;APL FUNCTIONAL SYMBOL ALPHA
+237B;N;NOT CHECK MARK
+237D;N;SHOULDERED OPEN BOX
+237E;N;BELL SYMBOL
+237F;N;VERTICAL LINE WITH MIDDLE DOT
+2380;N;INSERTION SYMBOL
+2381;N;CONTINUOUS UNDERLINE SYMBOL
+2382;N;DISCONTINUOUS UNDERLINE SYMBOL
+2383;N;EMPHASIS SYMBOL
+2384;N;COMPOSITION SYMBOL
+2385;N;WHITE SQUARE WITH CENTRE VERTICAL LINE
+2386;N;ENTER SYMBOL
+2387;N;ALTERNATIVE KEY SYMBOL
+2388;N;HELM SYMBOL
+2389;N;CIRCLED HORIZONTAL BAR WITH NOTCH
+238A;N;CIRCLED TRIANGLE DOWN
+238B;N;BROKEN CIRCLE WITH NORTHWEST ARROW
+238C;N;UNDO SYMBOL
+238D;N;MONOSTABLE SYMBOL
+238E;N;HYSTERESIS SYMBOL
+238F;N;OPEN-CIRCUIT-OUTPUT H-TYPE SYMBOL
+2390;N;OPEN-CIRCUIT-OUTPUT L-TYPE SYMBOL
+2391;N;PASSIVE-PULL-DOWN-OUTPUT SYMBOL
+2392;N;PASSIVE-PULL-UP-OUTPUT SYMBOL
+2393;N;DIRECT CURRENT SYMBOL FORM TWO
+2394;N;SOFTWARE-FUNCTION SYMBOL
+2395;N;APL FUNCTIONAL SYMBOL QUAD
+2396;N;DECIMAL SEPARATOR KEY SYMBOL
+2397;N;PREVIOUS PAGE
+2398;N;NEXT PAGE
+2399;N;PRINT SCREEN SYMBOL
+239A;N;CLEAR SCREEN SYMBOL
+2400;N;SYMBOL FOR NULL
+2401;N;SYMBOL FOR START OF HEADING
+2402;N;SYMBOL FOR START OF TEXT
+2403;N;SYMBOL FOR END OF TEXT
+2404;N;SYMBOL FOR END OF TRANSMISSION
+2405;N;SYMBOL FOR ENQUIRY
+2406;N;SYMBOL FOR ACKNOWLEDGE
+2407;N;SYMBOL FOR BELL
+2408;N;SYMBOL FOR BACKSPACE
+2409;N;SYMBOL FOR HORIZONTAL TABULATION
+240A;N;SYMBOL FOR LINE FEED
+240B;N;SYMBOL FOR VERTICAL TABULATION
+240C;N;SYMBOL FOR FORM FEED
+240D;N;SYMBOL FOR CARRIAGE RETURN
+240E;N;SYMBOL FOR SHIFT OUT
+240F;N;SYMBOL FOR SHIFT IN
+2410;N;SYMBOL FOR DATA LINK ESCAPE
+2411;N;SYMBOL FOR DEVICE CONTROL ONE
+2412;N;SYMBOL FOR DEVICE CONTROL TWO
+2413;N;SYMBOL FOR DEVICE CONTROL THREE
+2414;N;SYMBOL FOR DEVICE CONTROL FOUR
+2415;N;SYMBOL FOR NEGATIVE ACKNOWLEDGE
+2416;N;SYMBOL FOR SYNCHRONOUS IDLE
+2417;N;SYMBOL FOR END OF TRANSMISSION BLOCK
+2418;N;SYMBOL FOR CANCEL
+2419;N;SYMBOL FOR END OF MEDIUM
+241A;N;SYMBOL FOR SUBSTITUTE
+241B;N;SYMBOL FOR ESCAPE
+241C;N;SYMBOL FOR FILE SEPARATOR
+241D;N;SYMBOL FOR GROUP SEPARATOR
+241E;N;SYMBOL FOR RECORD SEPARATOR
+241F;N;SYMBOL FOR UNIT SEPARATOR
+2420;N;SYMBOL FOR SPACE
+2421;N;SYMBOL FOR DELETE
+2422;N;BLANK SYMBOL
+2423;N;OPEN BOX
+2424;N;SYMBOL FOR NEWLINE
+2425;N;SYMBOL FOR DELETE FORM TWO
+2426;N;SYMBOL FOR SUBSTITUTE FORM TWO
+2440;N;OCR HOOK
+2441;N;OCR CHAIR
+2442;N;OCR FORK
+2443;N;OCR INVERTED FORK
+2444;N;OCR BELT BUCKLE
+2445;N;OCR BOW TIE
+2446;N;OCR BRANCH BANK IDENTIFICATION
+2447;N;OCR AMOUNT OF CHECK
+2448;N;OCR DASH
+2449;N;OCR CUSTOMER ACCOUNT NUMBER
+244A;N;OCR DOUBLE BACKSLASH
+2460;A;CIRCLED DIGIT ONE
+2461;A;CIRCLED DIGIT TWO
+2462;A;CIRCLED DIGIT THREE
+2463;A;CIRCLED DIGIT FOUR
+2464;A;CIRCLED DIGIT FIVE
+2465;A;CIRCLED DIGIT SIX
+2466;A;CIRCLED DIGIT SEVEN
+2467;A;CIRCLED DIGIT EIGHT
+2468;A;CIRCLED DIGIT NINE
+2469;A;CIRCLED NUMBER TEN
+246A;A;CIRCLED NUMBER ELEVEN
+246B;A;CIRCLED NUMBER TWELVE
+246C;A;CIRCLED NUMBER THIRTEEN
+246D;A;CIRCLED NUMBER FOURTEEN
+246E;A;CIRCLED NUMBER FIFTEEN
+246F;A;CIRCLED NUMBER SIXTEEN
+2470;A;CIRCLED NUMBER SEVENTEEN
+2471;A;CIRCLED NUMBER EIGHTEEN
+2472;A;CIRCLED NUMBER NINETEEN
+2473;A;CIRCLED NUMBER TWENTY
+2474;A;PARENTHESIZED DIGIT ONE
+2475;A;PARENTHESIZED DIGIT TWO
+2476;A;PARENTHESIZED DIGIT THREE
+2477;A;PARENTHESIZED DIGIT FOUR
+2478;A;PARENTHESIZED DIGIT FIVE
+2479;A;PARENTHESIZED DIGIT SIX
+247A;A;PARENTHESIZED DIGIT SEVEN
+247B;A;PARENTHESIZED DIGIT EIGHT
+247C;A;PARENTHESIZED DIGIT NINE
+247D;A;PARENTHESIZED NUMBER TEN
+247E;A;PARENTHESIZED NUMBER ELEVEN
+247F;A;PARENTHESIZED NUMBER TWELVE
+2480;A;PARENTHESIZED NUMBER THIRTEEN
+2481;A;PARENTHESIZED NUMBER FOURTEEN
+2482;A;PARENTHESIZED NUMBER FIFTEEN
+2483;A;PARENTHESIZED NUMBER SIXTEEN
+2484;A;PARENTHESIZED NUMBER SEVENTEEN
+2485;A;PARENTHESIZED NUMBER EIGHTEEN
+2486;A;PARENTHESIZED NUMBER NINETEEN
+2487;A;PARENTHESIZED NUMBER TWENTY
+2488;A;DIGIT ONE FULL STOP
+2489;A;DIGIT TWO FULL STOP
+248A;A;DIGIT THREE FULL STOP
+248B;A;DIGIT FOUR FULL STOP
+248C;A;DIGIT FIVE FULL STOP
+248D;A;DIGIT SIX FULL STOP
+248E;A;DIGIT SEVEN FULL STOP
+248F;A;DIGIT EIGHT FULL STOP
+2490;A;DIGIT NINE FULL STOP
+2491;A;NUMBER TEN FULL STOP
+2492;A;NUMBER ELEVEN FULL STOP
+2493;A;NUMBER TWELVE FULL STOP
+2494;A;NUMBER THIRTEEN FULL STOP
+2495;A;NUMBER FOURTEEN FULL STOP
+2496;A;NUMBER FIFTEEN FULL STOP
+2497;A;NUMBER SIXTEEN FULL STOP
+2498;A;NUMBER SEVENTEEN FULL STOP
+2499;A;NUMBER EIGHTEEN FULL STOP
+249A;A;NUMBER NINETEEN FULL STOP
+249B;A;NUMBER TWENTY FULL STOP
+249C;A;PARENTHESIZED LATIN SMALL LETTER A
+249D;A;PARENTHESIZED LATIN SMALL LETTER B
+249E;A;PARENTHESIZED LATIN SMALL LETTER C
+249F;A;PARENTHESIZED LATIN SMALL LETTER D
+24A0;A;PARENTHESIZED LATIN SMALL LETTER E
+24A1;A;PARENTHESIZED LATIN SMALL LETTER F
+24A2;A;PARENTHESIZED LATIN SMALL LETTER G
+24A3;A;PARENTHESIZED LATIN SMALL LETTER H
+24A4;A;PARENTHESIZED LATIN SMALL LETTER I
+24A5;A;PARENTHESIZED LATIN SMALL LETTER J
+24A6;A;PARENTHESIZED LATIN SMALL LETTER K
+24A7;A;PARENTHESIZED LATIN SMALL LETTER L
+24A8;A;PARENTHESIZED LATIN SMALL LETTER M
+24A9;A;PARENTHESIZED LATIN SMALL LETTER N
+24AA;A;PARENTHESIZED LATIN SMALL LETTER O
+24AB;A;PARENTHESIZED LATIN SMALL LETTER P
+24AC;A;PARENTHESIZED LATIN SMALL LETTER Q
+24AD;A;PARENTHESIZED LATIN SMALL LETTER R
+24AE;A;PARENTHESIZED LATIN SMALL LETTER S
+24AF;A;PARENTHESIZED LATIN SMALL LETTER T
+24B0;A;PARENTHESIZED LATIN SMALL LETTER U
+24B1;A;PARENTHESIZED LATIN SMALL LETTER V
+24B2;A;PARENTHESIZED LATIN SMALL LETTER W
+24B3;A;PARENTHESIZED LATIN SMALL LETTER X
+24B4;A;PARENTHESIZED LATIN SMALL LETTER Y
+24B5;A;PARENTHESIZED LATIN SMALL LETTER Z
+24B6;A;CIRCLED LATIN CAPITAL LETTER A
+24B7;A;CIRCLED LATIN CAPITAL LETTER B
+24B8;A;CIRCLED LATIN CAPITAL LETTER C
+24B9;A;CIRCLED LATIN CAPITAL LETTER D
+24BA;A;CIRCLED LATIN CAPITAL LETTER E
+24BB;A;CIRCLED LATIN CAPITAL LETTER F
+24BC;A;CIRCLED LATIN CAPITAL LETTER G
+24BD;A;CIRCLED LATIN CAPITAL LETTER H
+24BE;A;CIRCLED LATIN CAPITAL LETTER I
+24BF;A;CIRCLED LATIN CAPITAL LETTER J
+24C0;N;CIRCLED LATIN CAPITAL LETTER K
+24C1;N;CIRCLED LATIN CAPITAL LETTER L
+24C2;N;CIRCLED LATIN CAPITAL LETTER M
+24C3;N;CIRCLED LATIN CAPITAL LETTER N
+24C4;N;CIRCLED LATIN CAPITAL LETTER O
+24C5;N;CIRCLED LATIN CAPITAL LETTER P
+24C6;N;CIRCLED LATIN CAPITAL LETTER Q
+24C7;N;CIRCLED LATIN CAPITAL LETTER R
+24C8;N;CIRCLED LATIN CAPITAL LETTER S
+24C9;N;CIRCLED LATIN CAPITAL LETTER T
+24CA;N;CIRCLED LATIN CAPITAL LETTER U
+24CB;N;CIRCLED LATIN CAPITAL LETTER V
+24CC;N;CIRCLED LATIN CAPITAL LETTER W
+24CD;N;CIRCLED LATIN CAPITAL LETTER X
+24CE;N;CIRCLED LATIN CAPITAL LETTER Y
+24CF;N;CIRCLED LATIN CAPITAL LETTER Z
+24D0;A;CIRCLED LATIN SMALL LETTER A
+24D1;A;CIRCLED LATIN SMALL LETTER B
+24D2;A;CIRCLED LATIN SMALL LETTER C
+24D3;A;CIRCLED LATIN SMALL LETTER D
+24D4;A;CIRCLED LATIN SMALL LETTER E
+24D5;A;CIRCLED LATIN SMALL LETTER F
+24D6;A;CIRCLED LATIN SMALL LETTER G
+24D7;A;CIRCLED LATIN SMALL LETTER H
+24D8;A;CIRCLED LATIN SMALL LETTER I
+24D9;A;CIRCLED LATIN SMALL LETTER J
+24DA;A;CIRCLED LATIN SMALL LETTER K
+24DB;A;CIRCLED LATIN SMALL LETTER L
+24DC;A;CIRCLED LATIN SMALL LETTER M
+24DD;A;CIRCLED LATIN SMALL LETTER N
+24DE;A;CIRCLED LATIN SMALL LETTER O
+24DF;A;CIRCLED LATIN SMALL LETTER P
+24E0;A;CIRCLED LATIN SMALL LETTER Q
+24E1;A;CIRCLED LATIN SMALL LETTER R
+24E2;A;CIRCLED LATIN SMALL LETTER S
+24E3;A;CIRCLED LATIN SMALL LETTER T
+24E4;A;CIRCLED LATIN SMALL LETTER U
+24E5;A;CIRCLED LATIN SMALL LETTER V
+24E6;A;CIRCLED LATIN SMALL LETTER W
+24E7;A;CIRCLED LATIN SMALL LETTER X
+24E8;A;CIRCLED LATIN SMALL LETTER Y
+24E9;A;CIRCLED LATIN SMALL LETTER Z
+24EA;N;CIRCLED DIGIT ZERO
+2500;A;BOX DRAWINGS LIGHT HORIZONTAL
+2501;A;BOX DRAWINGS HEAVY HORIZONTAL
+2502;A;BOX DRAWINGS LIGHT VERTICAL
+2503;A;BOX DRAWINGS HEAVY VERTICAL
+2504;A;BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL
+2505;A;BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL
+2506;A;BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL
+2507;A;BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL
+2508;A;BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL
+2509;A;BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL
+250A;A;BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL
+250B;A;BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL
+250C;A;BOX DRAWINGS LIGHT DOWN AND RIGHT
+250D;A;BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY
+250E;A;BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT
+250F;A;BOX DRAWINGS HEAVY DOWN AND RIGHT
+2510;A;BOX DRAWINGS LIGHT DOWN AND LEFT
+2511;A;BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY
+2512;A;BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT
+2513;A;BOX DRAWINGS HEAVY DOWN AND LEFT
+2514;A;BOX DRAWINGS LIGHT UP AND RIGHT
+2515;A;BOX DRAWINGS UP LIGHT AND RIGHT HEAVY
+2516;A;BOX DRAWINGS UP HEAVY AND RIGHT LIGHT
+2517;A;BOX DRAWINGS HEAVY UP AND RIGHT
+2518;A;BOX DRAWINGS LIGHT UP AND LEFT
+2519;A;BOX DRAWINGS UP LIGHT AND LEFT HEAVY
+251A;A;BOX DRAWINGS UP HEAVY AND LEFT LIGHT
+251B;A;BOX DRAWINGS HEAVY UP AND LEFT
+251C;A;BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+251D;A;BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY
+251E;A;BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT
+251F;A;BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT
+2520;A;BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT
+2521;A;BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY
+2522;A;BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY
+2523;A;BOX DRAWINGS HEAVY VERTICAL AND RIGHT
+2524;A;BOX DRAWINGS LIGHT VERTICAL AND LEFT
+2525;A;BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY
+2526;A;BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT
+2527;A;BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT
+2528;A;BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT
+2529;A;BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY
+252A;A;BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY
+252B;A;BOX DRAWINGS HEAVY VERTICAL AND LEFT
+252C;A;BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+252D;A;BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT
+252E;A;BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT
+252F;A;BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY
+2530;A;BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT
+2531;A;BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY
+2532;A;BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY
+2533;A;BOX DRAWINGS HEAVY DOWN AND HORIZONTAL
+2534;A;BOX DRAWINGS LIGHT UP AND HORIZONTAL
+2535;A;BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT
+2536;A;BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT
+2537;A;BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY
+2538;A;BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT
+2539;A;BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY
+253A;A;BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY
+253B;A;BOX DRAWINGS HEAVY UP AND HORIZONTAL
+253C;A;BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+253D;A;BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT
+253E;A;BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT
+253F;A;BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY
+2540;A;BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT
+2541;A;BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT
+2542;A;BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT
+2543;A;BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT
+2544;A;BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT
+2545;A;BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT
+2546;A;BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT
+2547;A;BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY
+2548;A;BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY
+2549;A;BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY
+254A;A;BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY
+254B;A;BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL
+254C;N;BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL
+254D;N;BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL
+254E;N;BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL
+254F;N;BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL
+2550;A;BOX DRAWINGS DOUBLE HORIZONTAL
+2551;A;BOX DRAWINGS DOUBLE VERTICAL
+2552;A;BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
+2553;A;BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
+2554;A;BOX DRAWINGS DOUBLE DOWN AND RIGHT
+2555;A;BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
+2556;A;BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
+2557;A;BOX DRAWINGS DOUBLE DOWN AND LEFT
+2558;A;BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
+2559;A;BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
+255A;A;BOX DRAWINGS DOUBLE UP AND RIGHT
+255B;A;BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
+255C;A;BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
+255D;A;BOX DRAWINGS DOUBLE UP AND LEFT
+255E;A;BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+255F;A;BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
+2560;A;BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+2561;A;BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+2562;A;BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
+2563;A;BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+2564;A;BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
+2565;A;BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
+2566;A;BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+2567;A;BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
+2568;A;BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
+2569;A;BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+256A;A;BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+256B;A;BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
+256C;A;BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+256D;A;BOX DRAWINGS LIGHT ARC DOWN AND RIGHT
+256E;A;BOX DRAWINGS LIGHT ARC DOWN AND LEFT
+256F;A;BOX DRAWINGS LIGHT ARC UP AND LEFT
+2570;A;BOX DRAWINGS LIGHT ARC UP AND RIGHT
+2571;A;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT
+2572;A;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT
+2573;A;BOX DRAWINGS LIGHT DIAGONAL CROSS
+2574;A;BOX DRAWINGS LIGHT LEFT
+2575;N;BOX DRAWINGS LIGHT UP
+2576;N;BOX DRAWINGS LIGHT RIGHT
+2577;N;BOX DRAWINGS LIGHT DOWN
+2578;N;BOX DRAWINGS HEAVY LEFT
+2579;N;BOX DRAWINGS HEAVY UP
+257A;N;BOX DRAWINGS HEAVY RIGHT
+257B;N;BOX DRAWINGS HEAVY DOWN
+257C;N;BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT
+257D;N;BOX DRAWINGS LIGHT UP AND HEAVY DOWN
+257E;N;BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT
+257F;N;BOX DRAWINGS HEAVY UP AND LIGHT DOWN
+2580;A;UPPER HALF BLOCK
+2581;A;LOWER ONE EIGHTH BLOCK
+2582;A;LOWER ONE QUARTER BLOCK
+2583;A;LOWER THREE EIGHTHS BLOCK
+2584;A;LOWER HALF BLOCK
+2585;A;LOWER FIVE EIGHTHS BLOCK
+2586;A;LOWER THREE QUARTERS BLOCK
+2587;A;LOWER SEVEN EIGHTHS BLOCK
+2588;A;FULL BLOCK
+2589;A;LEFT SEVEN EIGHTHS BLOCK
+258A;A;LEFT THREE QUARTERS BLOCK
+258B;A;LEFT FIVE EIGHTHS BLOCK
+258C;A;LEFT HALF BLOCK
+258D;A;LEFT THREE EIGHTHS BLOCK
+258E;A;LEFT ONE QUARTER BLOCK
+258F;A;LEFT ONE EIGHTH BLOCK
+2590;N;RIGHT HALF BLOCK
+2591;N;LIGHT SHADE
+2592;A;MEDIUM SHADE
+2593;A;DARK SHADE
+2594;A;UPPER ONE EIGHTH BLOCK
+2595;A;RIGHT ONE EIGHTH BLOCK
+25A0;A;BLACK SQUARE
+25A1;A;WHITE SQUARE
+25A2;N;WHITE SQUARE WITH ROUNDED CORNERS
+25A3;A;WHITE SQUARE CONTAINING BLACK SMALL SQUARE
+25A4;A;SQUARE WITH HORIZONTAL FILL
+25A5;A;SQUARE WITH VERTICAL FILL
+25A6;A;SQUARE WITH ORTHOGONAL CROSSHATCH FILL
+25A7;A;SQUARE WITH UPPER LEFT TO LOWER RIGHT FILL
+25A8;A;SQUARE WITH UPPER RIGHT TO LOWER LEFT FILL
+25A9;A;SQUARE WITH DIAGONAL CROSSHATCH FILL
+25AA;N;BLACK SMALL SQUARE
+25AB;N;WHITE SMALL SQUARE
+25AC;N;BLACK RECTANGLE
+25AD;N;WHITE RECTANGLE
+25AE;N;BLACK VERTICAL RECTANGLE
+25AF;N;WHITE VERTICAL RECTANGLE
+25B0;N;BLACK PARALLELOGRAM
+25B1;N;WHITE PARALLELOGRAM
+25B2;A;BLACK UP-POINTING TRIANGLE
+25B3;A;WHITE UP-POINTING TRIANGLE
+25B4;N;BLACK UP-POINTING SMALL TRIANGLE
+25B5;N;WHITE UP-POINTING SMALL TRIANGLE
+25B6;A;BLACK RIGHT-POINTING TRIANGLE
+25B7;A;WHITE RIGHT-POINTING TRIANGLE
+25B8;N;BLACK RIGHT-POINTING SMALL TRIANGLE
+25B9;N;WHITE RIGHT-POINTING SMALL TRIANGLE
+25BA;N;BLACK RIGHT-POINTING POINTER
+25BB;N;WHITE RIGHT-POINTING POINTER
+25BC;A;BLACK DOWN-POINTING TRIANGLE
+25BD;A;WHITE DOWN-POINTING TRIANGLE
+25BE;N;BLACK DOWN-POINTING SMALL TRIANGLE
+25BF;N;WHITE DOWN-POINTING SMALL TRIANGLE
+25C0;A;BLACK LEFT-POINTING TRIANGLE
+25C1;A;WHITE LEFT-POINTING TRIANGLE
+25C2;N;BLACK LEFT-POINTING SMALL TRIANGLE
+25C3;N;WHITE LEFT-POINTING SMALL TRIANGLE
+25C4;N;BLACK LEFT-POINTING POINTER
+25C5;N;WHITE LEFT-POINTING POINTER
+25C6;A;BLACK DIAMOND
+25C7;A;WHITE DIAMOND
+25C8;A;WHITE DIAMOND CONTAINING BLACK SMALL DIAMOND
+25C9;N;FISHEYE
+25CA;N;LOZENGE
+25CB;A;WHITE CIRCLE
+25CC;N;DOTTED CIRCLE
+25CD;N;CIRCLE WITH VERTICAL FILL
+25CE;A;BULLSEYE
+25CF;A;BLACK CIRCLE
+25D0;A;CIRCLE WITH LEFT HALF BLACK
+25D1;A;CIRCLE WITH RIGHT HALF BLACK
+25D2;N;CIRCLE WITH LOWER HALF BLACK
+25D3;N;CIRCLE WITH UPPER HALF BLACK
+25D4;N;CIRCLE WITH UPPER RIGHT QUADRANT BLACK
+25D5;N;CIRCLE WITH ALL BUT UPPER LEFT QUADRANT BLACK
+25D6;N;LEFT HALF BLACK CIRCLE
+25D7;N;RIGHT HALF BLACK CIRCLE
+25D8;N;INVERSE BULLET
+25D9;N;INVERSE WHITE CIRCLE
+25DA;N;UPPER HALF INVERSE WHITE CIRCLE
+25DB;N;LOWER HALF INVERSE WHITE CIRCLE
+25DC;N;UPPER LEFT QUADRANT CIRCULAR ARC
+25DD;N;UPPER RIGHT QUADRANT CIRCULAR ARC
+25DE;N;LOWER RIGHT QUADRANT CIRCULAR ARC
+25DF;N;LOWER LEFT QUADRANT CIRCULAR ARC
+25E0;N;UPPER HALF CIRCLE
+25E1;N;LOWER HALF CIRCLE
+25E2;A;BLACK LOWER RIGHT TRIANGLE
+25E3;A;BLACK LOWER LEFT TRIANGLE
+25E4;A;BLACK UPPER LEFT TRIANGLE
+25E5;A;BLACK UPPER RIGHT TRIANGLE
+25E6;N;WHITE BULLET
+25E7;N;SQUARE WITH LEFT HALF BLACK
+25E8;N;SQUARE WITH RIGHT HALF BLACK
+25E9;N;SQUARE WITH UPPER LEFT DIAGONAL HALF BLACK
+25EA;N;SQUARE WITH LOWER RIGHT DIAGONAL HALF BLACK
+25EB;N;WHITE SQUARE WITH VERTICAL BISECTING LINE
+25EC;N;WHITE UP-POINTING TRIANGLE WITH DOT
+25ED;N;UP-POINTING TRIANGLE WITH LEFT HALF BLACK
+25EE;N;UP-POINTING TRIANGLE WITH RIGHT HALF BLACK
+25EF;A;LARGE CIRCLE
+25F0;N;WHITE SQUARE WITH UPPER LEFT QUADRANT
+25F1;N;WHITE SQUARE WITH LOWER LEFT QUADRANT
+25F2;N;WHITE SQUARE WITH LOWER RIGHT QUADRANT
+25F3;N;WHITE SQUARE WITH UPPER RIGHT QUADRANT
+25F4;N;WHITE CIRCLE WITH UPPER LEFT QUADRANT
+25F5;N;WHITE CIRCLE WITH LOWER LEFT QUADRANT
+25F6;N;WHITE CIRCLE WITH LOWER RIGHT QUADRANT
+25F7;N;WHITE CIRCLE WITH UPPER RIGHT QUADRANT
+2600;N;BLACK SUN WITH RAYS
+2601;N;CLOUD
+2602;N;UMBRELLA
+2603;N;SNOWMAN
+2604;N;COMET
+2605;A;BLACK STAR
+2606;A;WHITE STAR
+2607;N;LIGHTNING
+2608;N;THUNDERSTORM
+2609;A;SUN
+260A;N;ASCENDING NODE
+260B;N;DESCENDING NODE
+260C;N;CONJUNCTION
+260D;N;OPPOSITION
+260E;A;BLACK TELEPHONE
+260F;A;WHITE TELEPHONE
+2610;N;BALLOT BOX
+2611;N;BALLOT BOX WITH CHECK
+2612;N;BALLOT BOX WITH X
+2613;N;SALTIRE
+2619;N;REVERSED ROTATED FLORAL HEART BULLET
+261A;N;BLACK LEFT POINTING INDEX
+261B;N;BLACK RIGHT POINTING INDEX
+261C;A;WHITE LEFT POINTING INDEX
+261D;N;WHITE UP POINTING INDEX
+261E;A;WHITE RIGHT POINTING INDEX
+261F;N;WHITE DOWN POINTING INDEX
+2620;N;SKULL AND CROSSBONES
+2621;N;CAUTION SIGN
+2622;N;RADIOACTIVE SIGN
+2623;N;BIOHAZARD SIGN
+2624;N;CADUCEUS
+2625;N;ANKH
+2626;N;ORTHODOX CROSS
+2627;N;CHI RHO
+2628;N;CROSS OF LORRAINE
+2629;N;CROSS OF JERUSALEM
+262A;N;STAR AND CRESCENT
+262B;N;FARSI SYMBOL
+262C;N;ADI SHAKTI
+262D;N;HAMMER AND SICKLE
+262E;N;PEACE SYMBOL
+262F;N;YIN YANG
+2630;N;TRIGRAM FOR HEAVEN
+2631;N;TRIGRAM FOR LAKE
+2632;N;TRIGRAM FOR FIRE
+2633;N;TRIGRAM FOR THUNDER
+2634;N;TRIGRAM FOR WIND
+2635;N;TRIGRAM FOR WATER
+2636;N;TRIGRAM FOR MOUNTAIN
+2637;N;TRIGRAM FOR EARTH
+2638;N;WHEEL OF DHARMA
+2639;N;WHITE FROWNING FACE
+263A;N;WHITE SMILING FACE
+263B;N;BLACK SMILING FACE
+263C;N;WHITE SUN WITH RAYS
+263D;N;FIRST QUARTER MOON
+263E;N;LAST QUARTER MOON
+263F;N;MERCURY
+2640;A;FEMALE SIGN
+2641;N;EARTH
+2642;A;MALE SIGN
+2643;N;JUPITER
+2644;N;SATURN
+2645;N;URANUS
+2646;N;NEPTUNE
+2647;N;PLUTO
+2648;N;ARIES
+2649;N;TAURUS
+264A;N;GEMINI
+264B;N;CANCER
+264C;N;LEO
+264D;N;VIRGO
+264E;N;LIBRA
+264F;N;SCORPIUS
+2650;N;SAGITTARIUS
+2651;N;CAPRICORN
+2652;N;AQUARIUS
+2653;N;PISCES
+2654;N;WHITE CHESS KING
+2655;N;WHITE CHESS QUEEN
+2656;N;WHITE CHESS ROOK
+2657;N;WHITE CHESS BISHOP
+2658;N;WHITE CHESS KNIGHT
+2659;N;WHITE CHESS PAWN
+265A;N;BLACK CHESS KING
+265B;N;BLACK CHESS QUEEN
+265C;N;BLACK CHESS ROOK
+265D;N;BLACK CHESS BISHOP
+265E;N;BLACK CHESS KNIGHT
+265F;N;BLACK CHESS PAWN
+2660;A;BLACK SPADE SUIT
+2661;A;WHITE HEART SUIT
+2662;N;WHITE DIAMOND SUIT
+2663;A;BLACK CLUB SUIT
+2664;A;WHITE SPADE SUIT
+2665;A;BLACK HEART SUIT
+2666;N;BLACK DIAMOND SUIT
+2667;A;WHITE CLUB SUIT
+2668;A;HOT SPRINGS
+2669;A;QUARTER NOTE
+266A;A;EIGHTH NOTE
+266B;N;BEAMED EIGHTH NOTES
+266C;A;BEAMED SIXTEENTH NOTES
+266D;A;MUSIC FLAT SIGN
+266E;N;MUSIC NATURAL SIGN
+266F;A;MUSIC SHARP SIGN
+2670;N;WEST SYRIAC CROSS
+2671;N;EAST SYRIAC CROSS
+2701;N;UPPER BLADE SCISSORS
+2702;N;BLACK SCISSORS
+2703;N;LOWER BLADE SCISSORS
+2704;N;WHITE SCISSORS
+2706;N;TELEPHONE LOCATION SIGN
+2707;N;TAPE DRIVE
+2708;N;AIRPLANE
+2709;N;ENVELOPE
+270C;N;VICTORY HAND
+270D;N;WRITING HAND
+270E;N;LOWER RIGHT PENCIL
+270F;N;PENCIL
+2710;N;UPPER RIGHT PENCIL
+2711;N;WHITE NIB
+2712;N;BLACK NIB
+2713;N;CHECK MARK
+2714;N;HEAVY CHECK MARK
+2715;N;MULTIPLICATION X
+2716;N;HEAVY MULTIPLICATION X
+2717;N;BALLOT X
+2718;N;HEAVY BALLOT X
+2719;N;OUTLINED GREEK CROSS
+271A;N;HEAVY GREEK CROSS
+271B;N;OPEN CENTRE CROSS
+271C;N;HEAVY OPEN CENTRE CROSS
+271D;N;LATIN CROSS
+271E;N;SHADOWED WHITE LATIN CROSS
+271F;N;OUTLINED LATIN CROSS
+2720;N;MALTESE CROSS
+2721;N;STAR OF DAVID
+2722;N;FOUR TEARDROP-SPOKED ASTERISK
+2723;N;FOUR BALLOON-SPOKED ASTERISK
+2724;N;HEAVY FOUR BALLOON-SPOKED ASTERISK
+2725;N;FOUR CLUB-SPOKED ASTERISK
+2726;N;BLACK FOUR POINTED STAR
+2727;N;WHITE FOUR POINTED STAR
+2729;N;STRESS OUTLINED WHITE STAR
+272A;N;CIRCLED WHITE STAR
+272B;N;OPEN CENTRE BLACK STAR
+272C;N;BLACK CENTRE WHITE STAR
+272D;N;OUTLINED BLACK STAR
+272E;N;HEAVY OUTLINED BLACK STAR
+272F;N;PINWHEEL STAR
+2730;N;SHADOWED WHITE STAR
+2731;N;HEAVY ASTERISK
+2732;N;OPEN CENTRE ASTERISK
+2733;N;EIGHT SPOKED ASTERISK
+2734;N;EIGHT POINTED BLACK STAR
+2735;N;EIGHT POINTED PINWHEEL STAR
+2736;N;SIX POINTED BLACK STAR
+2737;N;EIGHT POINTED RECTILINEAR BLACK STAR
+2738;N;HEAVY EIGHT POINTED RECTILINEAR BLACK STAR
+2739;N;TWELVE POINTED BLACK STAR
+273A;N;SIXTEEN POINTED ASTERISK
+273B;N;TEARDROP-SPOKED ASTERISK
+273C;N;OPEN CENTRE TEARDROP-SPOKED ASTERISK
+273D;N;HEAVY TEARDROP-SPOKED ASTERISK
+273E;N;SIX PETALLED BLACK AND WHITE FLORETTE
+273F;N;BLACK FLORETTE
+2740;N;WHITE FLORETTE
+2741;N;EIGHT PETALLED OUTLINED BLACK FLORETTE
+2742;N;CIRCLED OPEN CENTRE EIGHT POINTED STAR
+2743;N;HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK
+2744;N;SNOWFLAKE
+2745;N;TIGHT TRIFOLIATE SNOWFLAKE
+2746;N;HEAVY CHEVRON SNOWFLAKE
+2747;N;SPARKLE
+2748;N;HEAVY SPARKLE
+2749;N;BALLOON-SPOKED ASTERISK
+274A;N;EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
+274B;N;HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
+274D;N;SHADOWED WHITE CIRCLE
+274F;N;LOWER RIGHT DROP-SHADOWED WHITE SQUARE
+2750;N;UPPER RIGHT DROP-SHADOWED WHITE SQUARE
+2751;N;LOWER RIGHT SHADOWED WHITE SQUARE
+2752;N;UPPER RIGHT SHADOWED WHITE SQUARE
+2756;N;BLACK DIAMOND MINUS WHITE X
+2758;N;LIGHT VERTICAL BAR
+2759;N;MEDIUM VERTICAL BAR
+275A;N;HEAVY VERTICAL BAR
+275B;N;HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT
+275C;N;HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT
+275D;N;HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT
+275E;N;HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT
+2761;N;CURVED STEM PARAGRAPH SIGN ORNAMENT
+2762;N;HEAVY EXCLAMATION MARK ORNAMENT
+2763;N;HEAVY HEART EXCLAMATION MARK ORNAMENT
+2764;N;HEAVY BLACK HEART
+2765;N;ROTATED HEAVY BLACK HEART BULLET
+2766;N;FLORAL HEART
+2767;N;ROTATED FLORAL HEART BULLET
+2776;N;DINGBAT NEGATIVE CIRCLED DIGIT ONE
+2777;N;DINGBAT NEGATIVE CIRCLED DIGIT TWO
+2778;N;DINGBAT NEGATIVE CIRCLED DIGIT THREE
+2779;N;DINGBAT NEGATIVE CIRCLED DIGIT FOUR
+277A;N;DINGBAT NEGATIVE CIRCLED DIGIT FIVE
+277B;N;DINGBAT NEGATIVE CIRCLED DIGIT SIX
+277C;N;DINGBAT NEGATIVE CIRCLED DIGIT SEVEN
+277D;N;DINGBAT NEGATIVE CIRCLED DIGIT EIGHT
+277E;N;DINGBAT NEGATIVE CIRCLED DIGIT NINE
+277F;N;DINGBAT NEGATIVE CIRCLED NUMBER TEN
+2780;N;DINGBAT CIRCLED SANS-SERIF DIGIT ONE
+2781;N;DINGBAT CIRCLED SANS-SERIF DIGIT TWO
+2782;N;DINGBAT CIRCLED SANS-SERIF DIGIT THREE
+2783;N;DINGBAT CIRCLED SANS-SERIF DIGIT FOUR
+2784;N;DINGBAT CIRCLED SANS-SERIF DIGIT FIVE
+2785;N;DINGBAT CIRCLED SANS-SERIF DIGIT SIX
+2786;N;DINGBAT CIRCLED SANS-SERIF DIGIT SEVEN
+2787;N;DINGBAT CIRCLED SANS-SERIF DIGIT EIGHT
+2788;N;DINGBAT CIRCLED SANS-SERIF DIGIT NINE
+2789;N;DINGBAT CIRCLED SANS-SERIF NUMBER TEN
+278A;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE
+278B;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT TWO
+278C;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE
+278D;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FOUR
+278E;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FIVE
+278F;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SIX
+2790;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN
+2791;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT
+2792;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE
+2793;N;DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN
+2794;N;HEAVY WIDE-HEADED RIGHTWARDS ARROW
+2798;N;HEAVY SOUTH EAST ARROW
+2799;N;HEAVY RIGHTWARDS ARROW
+279A;N;HEAVY NORTH EAST ARROW
+279B;N;DRAFTING POINT RIGHTWARDS ARROW
+279C;N;HEAVY ROUND-TIPPED RIGHTWARDS ARROW
+279D;N;TRIANGLE-HEADED RIGHTWARDS ARROW
+279E;N;HEAVY TRIANGLE-HEADED RIGHTWARDS ARROW
+279F;N;DASHED TRIANGLE-HEADED RIGHTWARDS ARROW
+27A0;N;HEAVY DASHED TRIANGLE-HEADED RIGHTWARDS ARROW
+27A1;N;BLACK RIGHTWARDS ARROW
+27A2;N;THREE-D TOP-LIGHTED RIGHTWARDS ARROWHEAD
+27A3;N;THREE-D BOTTOM-LIGHTED RIGHTWARDS ARROWHEAD
+27A4;N;BLACK RIGHTWARDS ARROWHEAD
+27A5;N;HEAVY BLACK CURVED DOWNWARDS AND RIGHTWARDS ARROW
+27A6;N;HEAVY BLACK CURVED UPWARDS AND RIGHTWARDS ARROW
+27A7;N;SQUAT BLACK RIGHTWARDS ARROW
+27A8;N;HEAVY CONCAVE-POINTED BLACK RIGHTWARDS ARROW
+27A9;N;RIGHT-SHADED WHITE RIGHTWARDS ARROW
+27AA;N;LEFT-SHADED WHITE RIGHTWARDS ARROW
+27AB;N;BACK-TILTED SHADOWED WHITE RIGHTWARDS ARROW
+27AC;N;FRONT-TILTED SHADOWED WHITE RIGHTWARDS ARROW
+27AD;N;HEAVY LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27AE;N;HEAVY UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27AF;N;NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27B1;N;NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27B2;N;CIRCLED HEAVY WHITE RIGHTWARDS ARROW
+27B3;N;WHITE-FEATHERED RIGHTWARDS ARROW
+27B4;N;BLACK-FEATHERED SOUTH EAST ARROW
+27B5;N;BLACK-FEATHERED RIGHTWARDS ARROW
+27B6;N;BLACK-FEATHERED NORTH EAST ARROW
+27B7;N;HEAVY BLACK-FEATHERED SOUTH EAST ARROW
+27B8;N;HEAVY BLACK-FEATHERED RIGHTWARDS ARROW
+27B9;N;HEAVY BLACK-FEATHERED NORTH EAST ARROW
+27BA;N;TEARDROP-BARBED RIGHTWARDS ARROW
+27BB;N;HEAVY TEARDROP-SHANKED RIGHTWARDS ARROW
+27BC;N;WEDGE-TAILED RIGHTWARDS ARROW
+27BD;N;HEAVY WEDGE-TAILED RIGHTWARDS ARROW
+27BE;N;OPEN-OUTLINED RIGHTWARDS ARROW
+2800;N;BRAILLE PATTERN BLANK
+2801;N;BRAILLE PATTERN DOTS-1
+2802;N;BRAILLE PATTERN DOTS-2
+2803;N;BRAILLE PATTERN DOTS-12
+2804;N;BRAILLE PATTERN DOTS-3
+2805;N;BRAILLE PATTERN DOTS-13
+2806;N;BRAILLE PATTERN DOTS-23
+2807;N;BRAILLE PATTERN DOTS-123
+2808;N;BRAILLE PATTERN DOTS-4
+2809;N;BRAILLE PATTERN DOTS-14
+280A;N;BRAILLE PATTERN DOTS-24
+280B;N;BRAILLE PATTERN DOTS-124
+280C;N;BRAILLE PATTERN DOTS-34
+280D;N;BRAILLE PATTERN DOTS-134
+280E;N;BRAILLE PATTERN DOTS-234
+280F;N;BRAILLE PATTERN DOTS-1234
+2810;N;BRAILLE PATTERN DOTS-5
+2811;N;BRAILLE PATTERN DOTS-15
+2812;N;BRAILLE PATTERN DOTS-25
+2813;N;BRAILLE PATTERN DOTS-125
+2814;N;BRAILLE PATTERN DOTS-35
+2815;N;BRAILLE PATTERN DOTS-135
+2816;N;BRAILLE PATTERN DOTS-235
+2817;N;BRAILLE PATTERN DOTS-1235
+2818;N;BRAILLE PATTERN DOTS-45
+2819;N;BRAILLE PATTERN DOTS-145
+281A;N;BRAILLE PATTERN DOTS-245
+281B;N;BRAILLE PATTERN DOTS-1245
+281C;N;BRAILLE PATTERN DOTS-345
+281D;N;BRAILLE PATTERN DOTS-1345
+281E;N;BRAILLE PATTERN DOTS-2345
+281F;N;BRAILLE PATTERN DOTS-12345
+2820;N;BRAILLE PATTERN DOTS-6
+2821;N;BRAILLE PATTERN DOTS-16
+2822;N;BRAILLE PATTERN DOTS-26
+2823;N;BRAILLE PATTERN DOTS-126
+2824;N;BRAILLE PATTERN DOTS-36
+2825;N;BRAILLE PATTERN DOTS-136
+2826;N;BRAILLE PATTERN DOTS-236
+2827;N;BRAILLE PATTERN DOTS-1236
+2828;N;BRAILLE PATTERN DOTS-46
+2829;N;BRAILLE PATTERN DOTS-146
+282A;N;BRAILLE PATTERN DOTS-246
+282B;N;BRAILLE PATTERN DOTS-1246
+282C;N;BRAILLE PATTERN DOTS-346
+282D;N;BRAILLE PATTERN DOTS-1346
+282E;N;BRAILLE PATTERN DOTS-2346
+282F;N;BRAILLE PATTERN DOTS-12346
+2830;N;BRAILLE PATTERN DOTS-56
+2831;N;BRAILLE PATTERN DOTS-156
+2832;N;BRAILLE PATTERN DOTS-256
+2833;N;BRAILLE PATTERN DOTS-1256
+2834;N;BRAILLE PATTERN DOTS-356
+2835;N;BRAILLE PATTERN DOTS-1356
+2836;N;BRAILLE PATTERN DOTS-2356
+2837;N;BRAILLE PATTERN DOTS-12356
+2838;N;BRAILLE PATTERN DOTS-456
+2839;N;BRAILLE PATTERN DOTS-1456
+283A;N;BRAILLE PATTERN DOTS-2456
+283B;N;BRAILLE PATTERN DOTS-12456
+283C;N;BRAILLE PATTERN DOTS-3456
+283D;N;BRAILLE PATTERN DOTS-13456
+283E;N;BRAILLE PATTERN DOTS-23456
+283F;N;BRAILLE PATTERN DOTS-123456
+2840;N;BRAILLE PATTERN DOTS-7
+2841;N;BRAILLE PATTERN DOTS-17
+2842;N;BRAILLE PATTERN DOTS-27
+2843;N;BRAILLE PATTERN DOTS-127
+2844;N;BRAILLE PATTERN DOTS-37
+2845;N;BRAILLE PATTERN DOTS-137
+2846;N;BRAILLE PATTERN DOTS-237
+2847;N;BRAILLE PATTERN DOTS-1237
+2848;N;BRAILLE PATTERN DOTS-47
+2849;N;BRAILLE PATTERN DOTS-147
+284A;N;BRAILLE PATTERN DOTS-247
+284B;N;BRAILLE PATTERN DOTS-1247
+284C;N;BRAILLE PATTERN DOTS-347
+284D;N;BRAILLE PATTERN DOTS-1347
+284E;N;BRAILLE PATTERN DOTS-2347
+284F;N;BRAILLE PATTERN DOTS-12347
+2850;N;BRAILLE PATTERN DOTS-57
+2851;N;BRAILLE PATTERN DOTS-157
+2852;N;BRAILLE PATTERN DOTS-257
+2853;N;BRAILLE PATTERN DOTS-1257
+2854;N;BRAILLE PATTERN DOTS-357
+2855;N;BRAILLE PATTERN DOTS-1357
+2856;N;BRAILLE PATTERN DOTS-2357
+2857;N;BRAILLE PATTERN DOTS-12357
+2858;N;BRAILLE PATTERN DOTS-457
+2859;N;BRAILLE PATTERN DOTS-1457
+285A;N;BRAILLE PATTERN DOTS-2457
+285B;N;BRAILLE PATTERN DOTS-12457
+285C;N;BRAILLE PATTERN DOTS-3457
+285D;N;BRAILLE PATTERN DOTS-13457
+285E;N;BRAILLE PATTERN DOTS-23457
+285F;N;BRAILLE PATTERN DOTS-123457
+2860;N;BRAILLE PATTERN DOTS-67
+2861;N;BRAILLE PATTERN DOTS-167
+2862;N;BRAILLE PATTERN DOTS-267
+2863;N;BRAILLE PATTERN DOTS-1267
+2864;N;BRAILLE PATTERN DOTS-367
+2865;N;BRAILLE PATTERN DOTS-1367
+2866;N;BRAILLE PATTERN DOTS-2367
+2867;N;BRAILLE PATTERN DOTS-12367
+2868;N;BRAILLE PATTERN DOTS-467
+2869;N;BRAILLE PATTERN DOTS-1467
+286A;N;BRAILLE PATTERN DOTS-2467
+286B;N;BRAILLE PATTERN DOTS-12467
+286C;N;BRAILLE PATTERN DOTS-3467
+286D;N;BRAILLE PATTERN DOTS-13467
+286E;N;BRAILLE PATTERN DOTS-23467
+286F;N;BRAILLE PATTERN DOTS-123467
+2870;N;BRAILLE PATTERN DOTS-567
+2871;N;BRAILLE PATTERN DOTS-1567
+2872;N;BRAILLE PATTERN DOTS-2567
+2873;N;BRAILLE PATTERN DOTS-12567
+2874;N;BRAILLE PATTERN DOTS-3567
+2875;N;BRAILLE PATTERN DOTS-13567
+2876;N;BRAILLE PATTERN DOTS-23567
+2877;N;BRAILLE PATTERN DOTS-123567
+2878;N;BRAILLE PATTERN DOTS-4567
+2879;N;BRAILLE PATTERN DOTS-14567
+287A;N;BRAILLE PATTERN DOTS-24567
+287B;N;BRAILLE PATTERN DOTS-124567
+287C;N;BRAILLE PATTERN DOTS-34567
+287D;N;BRAILLE PATTERN DOTS-134567
+287E;N;BRAILLE PATTERN DOTS-234567
+287F;N;BRAILLE PATTERN DOTS-1234567
+2880;N;BRAILLE PATTERN DOTS-8
+2881;N;BRAILLE PATTERN DOTS-18
+2882;N;BRAILLE PATTERN DOTS-28
+2883;N;BRAILLE PATTERN DOTS-128
+2884;N;BRAILLE PATTERN DOTS-38
+2885;N;BRAILLE PATTERN DOTS-138
+2886;N;BRAILLE PATTERN DOTS-238
+2887;N;BRAILLE PATTERN DOTS-1238
+2888;N;BRAILLE PATTERN DOTS-48
+2889;N;BRAILLE PATTERN DOTS-148
+288A;N;BRAILLE PATTERN DOTS-248
+288B;N;BRAILLE PATTERN DOTS-1248
+288C;N;BRAILLE PATTERN DOTS-348
+288D;N;BRAILLE PATTERN DOTS-1348
+288E;N;BRAILLE PATTERN DOTS-2348
+288F;N;BRAILLE PATTERN DOTS-12348
+2890;N;BRAILLE PATTERN DOTS-58
+2891;N;BRAILLE PATTERN DOTS-158
+2892;N;BRAILLE PATTERN DOTS-258
+2893;N;BRAILLE PATTERN DOTS-1258
+2894;N;BRAILLE PATTERN DOTS-358
+2895;N;BRAILLE PATTERN DOTS-1358
+2896;N;BRAILLE PATTERN DOTS-2358
+2897;N;BRAILLE PATTERN DOTS-12358
+2898;N;BRAILLE PATTERN DOTS-458
+2899;N;BRAILLE PATTERN DOTS-1458
+289A;N;BRAILLE PATTERN DOTS-2458
+289B;N;BRAILLE PATTERN DOTS-12458
+289C;N;BRAILLE PATTERN DOTS-3458
+289D;N;BRAILLE PATTERN DOTS-13458
+289E;N;BRAILLE PATTERN DOTS-23458
+289F;N;BRAILLE PATTERN DOTS-123458
+28A0;N;BRAILLE PATTERN DOTS-68
+28A1;N;BRAILLE PATTERN DOTS-168
+28A2;N;BRAILLE PATTERN DOTS-268
+28A3;N;BRAILLE PATTERN DOTS-1268
+28A4;N;BRAILLE PATTERN DOTS-368
+28A5;N;BRAILLE PATTERN DOTS-1368
+28A6;N;BRAILLE PATTERN DOTS-2368
+28A7;N;BRAILLE PATTERN DOTS-12368
+28A8;N;BRAILLE PATTERN DOTS-468
+28A9;N;BRAILLE PATTERN DOTS-1468
+28AA;N;BRAILLE PATTERN DOTS-2468
+28AB;N;BRAILLE PATTERN DOTS-12468
+28AC;N;BRAILLE PATTERN DOTS-3468
+28AD;N;BRAILLE PATTERN DOTS-13468
+28AE;N;BRAILLE PATTERN DOTS-23468
+28AF;N;BRAILLE PATTERN DOTS-123468
+28B0;N;BRAILLE PATTERN DOTS-568
+28B1;N;BRAILLE PATTERN DOTS-1568
+28B2;N;BRAILLE PATTERN DOTS-2568
+28B3;N;BRAILLE PATTERN DOTS-12568
+28B4;N;BRAILLE PATTERN DOTS-3568
+28B5;N;BRAILLE PATTERN DOTS-13568
+28B6;N;BRAILLE PATTERN DOTS-23568
+28B7;N;BRAILLE PATTERN DOTS-123568
+28B8;N;BRAILLE PATTERN DOTS-4568
+28B9;N;BRAILLE PATTERN DOTS-14568
+28BA;N;BRAILLE PATTERN DOTS-24568
+28BB;N;BRAILLE PATTERN DOTS-124568
+28BC;N;BRAILLE PATTERN DOTS-34568
+28BD;N;BRAILLE PATTERN DOTS-134568
+28BE;N;BRAILLE PATTERN DOTS-234568
+28BF;N;BRAILLE PATTERN DOTS-1234568
+28C0;N;BRAILLE PATTERN DOTS-78
+28C1;N;BRAILLE PATTERN DOTS-178
+28C2;N;BRAILLE PATTERN DOTS-278
+28C3;N;BRAILLE PATTERN DOTS-1278
+28C4;N;BRAILLE PATTERN DOTS-378
+28C5;N;BRAILLE PATTERN DOTS-1378
+28C6;N;BRAILLE PATTERN DOTS-2378
+28C7;N;BRAILLE PATTERN DOTS-12378
+28C8;N;BRAILLE PATTERN DOTS-478
+28C9;N;BRAILLE PATTERN DOTS-1478
+28CA;N;BRAILLE PATTERN DOTS-2478
+28CB;N;BRAILLE PATTERN DOTS-12478
+28CC;N;BRAILLE PATTERN DOTS-3478
+28CD;N;BRAILLE PATTERN DOTS-13478
+28CE;N;BRAILLE PATTERN DOTS-23478
+28CF;N;BRAILLE PATTERN DOTS-123478
+28D0;N;BRAILLE PATTERN DOTS-578
+28D1;N;BRAILLE PATTERN DOTS-1578
+28D2;N;BRAILLE PATTERN DOTS-2578
+28D3;N;BRAILLE PATTERN DOTS-12578
+28D4;N;BRAILLE PATTERN DOTS-3578
+28D5;N;BRAILLE PATTERN DOTS-13578
+28D6;N;BRAILLE PATTERN DOTS-23578
+28D7;N;BRAILLE PATTERN DOTS-123578
+28D8;N;BRAILLE PATTERN DOTS-4578
+28D9;N;BRAILLE PATTERN DOTS-14578
+28DA;N;BRAILLE PATTERN DOTS-24578
+28DB;N;BRAILLE PATTERN DOTS-124578
+28DC;N;BRAILLE PATTERN DOTS-34578
+28DD;N;BRAILLE PATTERN DOTS-134578
+28DE;N;BRAILLE PATTERN DOTS-234578
+28DF;N;BRAILLE PATTERN DOTS-1234578
+28E0;N;BRAILLE PATTERN DOTS-678
+28E1;N;BRAILLE PATTERN DOTS-1678
+28E2;N;BRAILLE PATTERN DOTS-2678
+28E3;N;BRAILLE PATTERN DOTS-12678
+28E4;N;BRAILLE PATTERN DOTS-3678
+28E5;N;BRAILLE PATTERN DOTS-13678
+28E6;N;BRAILLE PATTERN DOTS-23678
+28E7;N;BRAILLE PATTERN DOTS-123678
+28E8;N;BRAILLE PATTERN DOTS-4678
+28E9;N;BRAILLE PATTERN DOTS-14678
+28EA;N;BRAILLE PATTERN DOTS-24678
+28EB;N;BRAILLE PATTERN DOTS-124678
+28EC;N;BRAILLE PATTERN DOTS-34678
+28ED;N;BRAILLE PATTERN DOTS-134678
+28EE;N;BRAILLE PATTERN DOTS-234678
+28EF;N;BRAILLE PATTERN DOTS-1234678
+28F0;N;BRAILLE PATTERN DOTS-5678
+28F1;N;BRAILLE PATTERN DOTS-15678
+28F2;N;BRAILLE PATTERN DOTS-25678
+28F3;N;BRAILLE PATTERN DOTS-125678
+28F4;N;BRAILLE PATTERN DOTS-35678
+28F5;N;BRAILLE PATTERN DOTS-135678
+28F6;N;BRAILLE PATTERN DOTS-235678
+28F7;N;BRAILLE PATTERN DOTS-1235678
+28F8;N;BRAILLE PATTERN DOTS-45678
+28F9;N;BRAILLE PATTERN DOTS-145678
+28FA;N;BRAILLE PATTERN DOTS-245678
+28FB;N;BRAILLE PATTERN DOTS-1245678
+28FC;N;BRAILLE PATTERN DOTS-345678
+28FD;N;BRAILLE PATTERN DOTS-1345678
+28FE;N;BRAILLE PATTERN DOTS-2345678
+28FF;N;BRAILLE PATTERN DOTS-12345678
+2E80;W;CJK RADICAL REPEAT
+2E81;W;CJK RADICAL CLIFF
+2E82;W;CJK RADICAL SECOND ONE
+2E83;W;CJK RADICAL SECOND TWO
+2E84;W;CJK RADICAL SECOND THREE
+2E85;W;CJK RADICAL PERSON
+2E86;W;CJK RADICAL BOX
+2E87;W;CJK RADICAL TABLE
+2E88;W;CJK RADICAL KNIFE ONE
+2E89;W;CJK RADICAL KNIFE TWO
+2E8A;W;CJK RADICAL DIVINATION
+2E8B;W;CJK RADICAL SEAL
+2E8C;W;CJK RADICAL SMALL ONE
+2E8D;W;CJK RADICAL SMALL TWO
+2E8E;W;CJK RADICAL LAME ONE
+2E8F;W;CJK RADICAL LAME TWO
+2E90;W;CJK RADICAL LAME THREE
+2E91;W;CJK RADICAL LAME FOUR
+2E92;W;CJK RADICAL SNAKE
+2E93;W;CJK RADICAL THREAD
+2E94;W;CJK RADICAL SNOUT ONE
+2E95;W;CJK RADICAL SNOUT TWO
+2E96;W;CJK RADICAL HEART ONE
+2E97;W;CJK RADICAL HEART TWO
+2E98;W;CJK RADICAL HAND
+2E99;W;CJK RADICAL RAP
+2E9B;W;CJK RADICAL CHOKE
+2E9C;W;CJK RADICAL SUN
+2E9D;W;CJK RADICAL MOON
+2E9E;W;CJK RADICAL DEATH
+2E9F;W;CJK RADICAL MOTHER
+2EA0;W;CJK RADICAL CIVILIAN
+2EA1;W;CJK RADICAL WATER ONE
+2EA2;W;CJK RADICAL WATER TWO
+2EA3;W;CJK RADICAL FIRE
+2EA4;W;CJK RADICAL PAW ONE
+2EA5;W;CJK RADICAL PAW TWO
+2EA6;W;CJK RADICAL SIMPLIFIED HALF TREE TRUNK
+2EA7;W;CJK RADICAL COW
+2EA8;W;CJK RADICAL DOG
+2EA9;W;CJK RADICAL JADE
+2EAA;W;CJK RADICAL BOLT OF CLOTH
+2EAB;W;CJK RADICAL EYE
+2EAC;W;CJK RADICAL SPIRIT ONE
+2EAD;W;CJK RADICAL SPIRIT TWO
+2EAE;W;CJK RADICAL BAMBOO
+2EAF;W;CJK RADICAL SILK
+2EB0;W;CJK RADICAL C-SIMPLIFIED SILK
+2EB1;W;CJK RADICAL NET ONE
+2EB2;W;CJK RADICAL NET TWO
+2EB3;W;CJK RADICAL NET THREE
+2EB4;W;CJK RADICAL NET FOUR
+2EB5;W;CJK RADICAL MESH
+2EB6;W;CJK RADICAL SHEEP
+2EB7;W;CJK RADICAL RAM
+2EB8;W;CJK RADICAL EWE
+2EB9;W;CJK RADICAL OLD
+2EBA;W;CJK RADICAL BRUSH ONE
+2EBB;W;CJK RADICAL BRUSH TWO
+2EBC;W;CJK RADICAL MEAT
+2EBD;W;CJK RADICAL MORTAR
+2EBE;W;CJK RADICAL GRASS ONE
+2EBF;W;CJK RADICAL GRASS TWO
+2EC0;W;CJK RADICAL GRASS THREE
+2EC1;W;CJK RADICAL TIGER
+2EC2;W;CJK RADICAL CLOTHES
+2EC3;W;CJK RADICAL WEST ONE
+2EC4;W;CJK RADICAL WEST TWO
+2EC5;W;CJK RADICAL C-SIMPLIFIED SEE
+2EC6;W;CJK RADICAL SIMPLIFIED HORN
+2EC7;W;CJK RADICAL HORN
+2EC8;W;CJK RADICAL C-SIMPLIFIED SPEECH
+2EC9;W;CJK RADICAL C-SIMPLIFIED SHELL
+2ECA;W;CJK RADICAL FOOT
+2ECB;W;CJK RADICAL C-SIMPLIFIED CART
+2ECC;W;CJK RADICAL SIMPLIFIED WALK
+2ECD;W;CJK RADICAL WALK ONE
+2ECE;W;CJK RADICAL WALK TWO
+2ECF;W;CJK RADICAL CITY
+2ED0;W;CJK RADICAL C-SIMPLIFIED GOLD
+2ED1;W;CJK RADICAL LONG ONE
+2ED2;W;CJK RADICAL LONG TWO
+2ED3;W;CJK RADICAL C-SIMPLIFIED LONG
+2ED4;W;CJK RADICAL C-SIMPLIFIED GATE
+2ED5;W;CJK RADICAL MOUND ONE
+2ED6;W;CJK RADICAL MOUND TWO
+2ED7;W;CJK RADICAL RAIN
+2ED8;W;CJK RADICAL BLUE
+2ED9;W;CJK RADICAL C-SIMPLIFIED TANNED LEATHER
+2EDA;W;CJK RADICAL C-SIMPLIFIED LEAF
+2EDB;W;CJK RADICAL C-SIMPLIFIED WIND
+2EDC;W;CJK RADICAL C-SIMPLIFIED FLY
+2EDD;W;CJK RADICAL EAT ONE
+2EDE;W;CJK RADICAL EAT TWO
+2EDF;W;CJK RADICAL EAT THREE
+2EE0;W;CJK RADICAL C-SIMPLIFIED EAT
+2EE1;W;CJK RADICAL HEAD
+2EE2;W;CJK RADICAL C-SIMPLIFIED HORSE
+2EE3;W;CJK RADICAL BONE
+2EE4;W;CJK RADICAL GHOST
+2EE5;W;CJK RADICAL C-SIMPLIFIED FISH
+2EE6;W;CJK RADICAL C-SIMPLIFIED BIRD
+2EE7;W;CJK RADICAL C-SIMPLIFIED SALT
+2EE8;W;CJK RADICAL SIMPLIFIED WHEAT
+2EE9;W;CJK RADICAL SIMPLIFIED YELLOW
+2EEA;W;CJK RADICAL C-SIMPLIFIED FROG
+2EEB;W;CJK RADICAL J-SIMPLIFIED EVEN
+2EEC;W;CJK RADICAL C-SIMPLIFIED EVEN
+2EED;W;CJK RADICAL J-SIMPLIFIED TOOTH
+2EEE;W;CJK RADICAL C-SIMPLIFIED TOOTH
+2EEF;W;CJK RADICAL J-SIMPLIFIED DRAGON
+2EF0;W;CJK RADICAL C-SIMPLIFIED DRAGON
+2EF1;W;CJK RADICAL TURTLE
+2EF2;W;CJK RADICAL J-SIMPLIFIED TURTLE
+2EF3;W;CJK RADICAL C-SIMPLIFIED TURTLE
+2F00;W;KANGXI RADICAL ONE
+2F01;W;KANGXI RADICAL LINE
+2F02;W;KANGXI RADICAL DOT
+2F03;W;KANGXI RADICAL SLASH
+2F04;W;KANGXI RADICAL SECOND
+2F05;W;KANGXI RADICAL HOOK
+2F06;W;KANGXI RADICAL TWO
+2F07;W;KANGXI RADICAL LID
+2F08;W;KANGXI RADICAL MAN
+2F09;W;KANGXI RADICAL LEGS
+2F0A;W;KANGXI RADICAL ENTER
+2F0B;W;KANGXI RADICAL EIGHT
+2F0C;W;KANGXI RADICAL DOWN BOX
+2F0D;W;KANGXI RADICAL COVER
+2F0E;W;KANGXI RADICAL ICE
+2F0F;W;KANGXI RADICAL TABLE
+2F10;W;KANGXI RADICAL OPEN BOX
+2F11;W;KANGXI RADICAL KNIFE
+2F12;W;KANGXI RADICAL POWER
+2F13;W;KANGXI RADICAL WRAP
+2F14;W;KANGXI RADICAL SPOON
+2F15;W;KANGXI RADICAL RIGHT OPEN BOX
+2F16;W;KANGXI RADICAL HIDING ENCLOSURE
+2F17;W;KANGXI RADICAL TEN
+2F18;W;KANGXI RADICAL DIVINATION
+2F19;W;KANGXI RADICAL SEAL
+2F1A;W;KANGXI RADICAL CLIFF
+2F1B;W;KANGXI RADICAL PRIVATE
+2F1C;W;KANGXI RADICAL AGAIN
+2F1D;W;KANGXI RADICAL MOUTH
+2F1E;W;KANGXI RADICAL ENCLOSURE
+2F1F;W;KANGXI RADICAL EARTH
+2F20;W;KANGXI RADICAL SCHOLAR
+2F21;W;KANGXI RADICAL GO
+2F22;W;KANGXI RADICAL GO SLOWLY
+2F23;W;KANGXI RADICAL EVENING
+2F24;W;KANGXI RADICAL BIG
+2F25;W;KANGXI RADICAL WOMAN
+2F26;W;KANGXI RADICAL CHILD
+2F27;W;KANGXI RADICAL ROOF
+2F28;W;KANGXI RADICAL INCH
+2F29;W;KANGXI RADICAL SMALL
+2F2A;W;KANGXI RADICAL LAME
+2F2B;W;KANGXI RADICAL CORPSE
+2F2C;W;KANGXI RADICAL SPROUT
+2F2D;W;KANGXI RADICAL MOUNTAIN
+2F2E;W;KANGXI RADICAL RIVER
+2F2F;W;KANGXI RADICAL WORK
+2F30;W;KANGXI RADICAL ONESELF
+2F31;W;KANGXI RADICAL TURBAN
+2F32;W;KANGXI RADICAL DRY
+2F33;W;KANGXI RADICAL SHORT THREAD
+2F34;W;KANGXI RADICAL DOTTED CLIFF
+2F35;W;KANGXI RADICAL LONG STRIDE
+2F36;W;KANGXI RADICAL TWO HANDS
+2F37;W;KANGXI RADICAL SHOOT
+2F38;W;KANGXI RADICAL BOW
+2F39;W;KANGXI RADICAL SNOUT
+2F3A;W;KANGXI RADICAL BRISTLE
+2F3B;W;KANGXI RADICAL STEP
+2F3C;W;KANGXI RADICAL HEART
+2F3D;W;KANGXI RADICAL HALBERD
+2F3E;W;KANGXI RADICAL DOOR
+2F3F;W;KANGXI RADICAL HAND
+2F40;W;KANGXI RADICAL BRANCH
+2F41;W;KANGXI RADICAL RAP
+2F42;W;KANGXI RADICAL SCRIPT
+2F43;W;KANGXI RADICAL DIPPER
+2F44;W;KANGXI RADICAL AXE
+2F45;W;KANGXI RADICAL SQUARE
+2F46;W;KANGXI RADICAL NOT
+2F47;W;KANGXI RADICAL SUN
+2F48;W;KANGXI RADICAL SAY
+2F49;W;KANGXI RADICAL MOON
+2F4A;W;KANGXI RADICAL TREE
+2F4B;W;KANGXI RADICAL LACK
+2F4C;W;KANGXI RADICAL STOP
+2F4D;W;KANGXI RADICAL DEATH
+2F4E;W;KANGXI RADICAL WEAPON
+2F4F;W;KANGXI RADICAL DO NOT
+2F50;W;KANGXI RADICAL COMPARE
+2F51;W;KANGXI RADICAL FUR
+2F52;W;KANGXI RADICAL CLAN
+2F53;W;KANGXI RADICAL STEAM
+2F54;W;KANGXI RADICAL WATER
+2F55;W;KANGXI RADICAL FIRE
+2F56;W;KANGXI RADICAL CLAW
+2F57;W;KANGXI RADICAL FATHER
+2F58;W;KANGXI RADICAL DOUBLE X
+2F59;W;KANGXI RADICAL HALF TREE TRUNK
+2F5A;W;KANGXI RADICAL SLICE
+2F5B;W;KANGXI RADICAL FANG
+2F5C;W;KANGXI RADICAL COW
+2F5D;W;KANGXI RADICAL DOG
+2F5E;W;KANGXI RADICAL PROFOUND
+2F5F;W;KANGXI RADICAL JADE
+2F60;W;KANGXI RADICAL MELON
+2F61;W;KANGXI RADICAL TILE
+2F62;W;KANGXI RADICAL SWEET
+2F63;W;KANGXI RADICAL LIFE
+2F64;W;KANGXI RADICAL USE
+2F65;W;KANGXI RADICAL FIELD
+2F66;W;KANGXI RADICAL BOLT OF CLOTH
+2F67;W;KANGXI RADICAL SICKNESS
+2F68;W;KANGXI RADICAL DOTTED TENT
+2F69;W;KANGXI RADICAL WHITE
+2F6A;W;KANGXI RADICAL SKIN
+2F6B;W;KANGXI RADICAL DISH
+2F6C;W;KANGXI RADICAL EYE
+2F6D;W;KANGXI RADICAL SPEAR
+2F6E;W;KANGXI RADICAL ARROW
+2F6F;W;KANGXI RADICAL STONE
+2F70;W;KANGXI RADICAL SPIRIT
+2F71;W;KANGXI RADICAL TRACK
+2F72;W;KANGXI RADICAL GRAIN
+2F73;W;KANGXI RADICAL CAVE
+2F74;W;KANGXI RADICAL STAND
+2F75;W;KANGXI RADICAL BAMBOO
+2F76;W;KANGXI RADICAL RICE
+2F77;W;KANGXI RADICAL SILK
+2F78;W;KANGXI RADICAL JAR
+2F79;W;KANGXI RADICAL NET
+2F7A;W;KANGXI RADICAL SHEEP
+2F7B;W;KANGXI RADICAL FEATHER
+2F7C;W;KANGXI RADICAL OLD
+2F7D;W;KANGXI RADICAL AND
+2F7E;W;KANGXI RADICAL PLOW
+2F7F;W;KANGXI RADICAL EAR
+2F80;W;KANGXI RADICAL BRUSH
+2F81;W;KANGXI RADICAL MEAT
+2F82;W;KANGXI RADICAL MINISTER
+2F83;W;KANGXI RADICAL SELF
+2F84;W;KANGXI RADICAL ARRIVE
+2F85;W;KANGXI RADICAL MORTAR
+2F86;W;KANGXI RADICAL TONGUE
+2F87;W;KANGXI RADICAL OPPOSE
+2F88;W;KANGXI RADICAL BOAT
+2F89;W;KANGXI RADICAL STOPPING
+2F8A;W;KANGXI RADICAL COLOR
+2F8B;W;KANGXI RADICAL GRASS
+2F8C;W;KANGXI RADICAL TIGER
+2F8D;W;KANGXI RADICAL INSECT
+2F8E;W;KANGXI RADICAL BLOOD
+2F8F;W;KANGXI RADICAL WALK ENCLOSURE
+2F90;W;KANGXI RADICAL CLOTHES
+2F91;W;KANGXI RADICAL WEST
+2F92;W;KANGXI RADICAL SEE
+2F93;W;KANGXI RADICAL HORN
+2F94;W;KANGXI RADICAL SPEECH
+2F95;W;KANGXI RADICAL VALLEY
+2F96;W;KANGXI RADICAL BEAN
+2F97;W;KANGXI RADICAL PIG
+2F98;W;KANGXI RADICAL BADGER
+2F99;W;KANGXI RADICAL SHELL
+2F9A;W;KANGXI RADICAL RED
+2F9B;W;KANGXI RADICAL RUN
+2F9C;W;KANGXI RADICAL FOOT
+2F9D;W;KANGXI RADICAL BODY
+2F9E;W;KANGXI RADICAL CART
+2F9F;W;KANGXI RADICAL BITTER
+2FA0;W;KANGXI RADICAL MORNING
+2FA1;W;KANGXI RADICAL WALK
+2FA2;W;KANGXI RADICAL CITY
+2FA3;W;KANGXI RADICAL WINE
+2FA4;W;KANGXI RADICAL DISTINGUISH
+2FA5;W;KANGXI RADICAL VILLAGE
+2FA6;W;KANGXI RADICAL GOLD
+2FA7;W;KANGXI RADICAL LONG
+2FA8;W;KANGXI RADICAL GATE
+2FA9;W;KANGXI RADICAL MOUND
+2FAA;W;KANGXI RADICAL SLAVE
+2FAB;W;KANGXI RADICAL SHORT TAILED BIRD
+2FAC;W;KANGXI RADICAL RAIN
+2FAD;W;KANGXI RADICAL BLUE
+2FAE;W;KANGXI RADICAL WRONG
+2FAF;W;KANGXI RADICAL FACE
+2FB0;W;KANGXI RADICAL LEATHER
+2FB1;W;KANGXI RADICAL TANNED LEATHER
+2FB2;W;KANGXI RADICAL LEEK
+2FB3;W;KANGXI RADICAL SOUND
+2FB4;W;KANGXI RADICAL LEAF
+2FB5;W;KANGXI RADICAL WIND
+2FB6;W;KANGXI RADICAL FLY
+2FB7;W;KANGXI RADICAL EAT
+2FB8;W;KANGXI RADICAL HEAD
+2FB9;W;KANGXI RADICAL FRAGRANT
+2FBA;W;KANGXI RADICAL HORSE
+2FBB;W;KANGXI RADICAL BONE
+2FBC;W;KANGXI RADICAL TALL
+2FBD;W;KANGXI RADICAL HAIR
+2FBE;W;KANGXI RADICAL FIGHT
+2FBF;W;KANGXI RADICAL SACRIFICIAL WINE
+2FC0;W;KANGXI RADICAL CAULDRON
+2FC1;W;KANGXI RADICAL GHOST
+2FC2;W;KANGXI RADICAL FISH
+2FC3;W;KANGXI RADICAL BIRD
+2FC4;W;KANGXI RADICAL SALT
+2FC5;W;KANGXI RADICAL DEER
+2FC6;W;KANGXI RADICAL WHEAT
+2FC7;W;KANGXI RADICAL HEMP
+2FC8;W;KANGXI RADICAL YELLOW
+2FC9;W;KANGXI RADICAL MILLET
+2FCA;W;KANGXI RADICAL BLACK
+2FCB;W;KANGXI RADICAL EMBROIDERY
+2FCC;W;KANGXI RADICAL FROG
+2FCD;W;KANGXI RADICAL TRIPOD
+2FCE;W;KANGXI RADICAL DRUM
+2FCF;W;KANGXI RADICAL RAT
+2FD0;W;KANGXI RADICAL NOSE
+2FD1;W;KANGXI RADICAL EVEN
+2FD2;W;KANGXI RADICAL TOOTH
+2FD3;W;KANGXI RADICAL DRAGON
+2FD4;W;KANGXI RADICAL TURTLE
+2FD5;W;KANGXI RADICAL FLUTE
+2FF0;W;IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT
+2FF1;W;IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO BELOW
+2FF2;W;IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO MIDDLE AND RIGHT
+2FF3;W;IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO MIDDLE AND BELOW
+2FF4;W;IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND
+2FF5;W;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM ABOVE
+2FF6;W;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM BELOW
+2FF7;W;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LEFT
+2FF8;W;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER LEFT
+2FF9;W;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER RIGHT
+2FFA;W;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LOWER LEFT
+2FFB;W;IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID
+3000;W;IDEOGRAPHIC SPACE
+3001;W;IDEOGRAPHIC COMMA
+3002;W;IDEOGRAPHIC FULL STOP
+3003;W;DITTO MARK
+3004;W;JAPANESE INDUSTRIAL STANDARD SYMBOL
+3005;W;IDEOGRAPHIC ITERATION MARK
+3006;W;IDEOGRAPHIC CLOSING MARK
+3007;W;IDEOGRAPHIC NUMBER ZERO
+3008;W;LEFT ANGLE BRACKET
+3009;W;RIGHT ANGLE BRACKET
+300A;A;LEFT DOUBLE ANGLE BRACKET
+300B;A;RIGHT DOUBLE ANGLE BRACKET
+300C;W;LEFT CORNER BRACKET
+300D;W;RIGHT CORNER BRACKET
+300E;W;LEFT WHITE CORNER BRACKET
+300F;W;RIGHT WHITE CORNER BRACKET
+3010;W;LEFT BLACK LENTICULAR BRACKET
+3011;W;RIGHT BLACK LENTICULAR BRACKET
+3012;W;POSTAL MARK
+3013;W;GETA MARK
+3014;W;LEFT TORTOISE SHELL BRACKET
+3015;W;RIGHT TORTOISE SHELL BRACKET
+3016;W;LEFT WHITE LENTICULAR BRACKET
+3017;W;RIGHT WHITE LENTICULAR BRACKET
+3018;W;LEFT WHITE TORTOISE SHELL BRACKET
+3019;W;RIGHT WHITE TORTOISE SHELL BRACKET
+301A;A;LEFT WHITE SQUARE BRACKET
+301B;A;RIGHT WHITE SQUARE BRACKET
+301C;W;WAVE DASH
+301D;W;REVERSED DOUBLE PRIME QUOTATION MARK
+301E;W;DOUBLE PRIME QUOTATION MARK
+301F;W;LOW DOUBLE PRIME QUOTATION MARK
+3020;W;POSTAL MARK FACE
+3021;W;HANGZHOU NUMERAL ONE
+3022;W;HANGZHOU NUMERAL TWO
+3023;W;HANGZHOU NUMERAL THREE
+3024;W;HANGZHOU NUMERAL FOUR
+3025;W;HANGZHOU NUMERAL FIVE
+3026;W;HANGZHOU NUMERAL SIX
+3027;W;HANGZHOU NUMERAL SEVEN
+3028;W;HANGZHOU NUMERAL EIGHT
+3029;W;HANGZHOU NUMERAL NINE
+302A;W;IDEOGRAPHIC LEVEL TONE MARK
+302B;W;IDEOGRAPHIC RISING TONE MARK
+302C;W;IDEOGRAPHIC DEPARTING TONE MARK
+302D;W;IDEOGRAPHIC ENTERING TONE MARK
+302E;W;HANGUL SINGLE DOT TONE MARK
+302F;W;HANGUL DOUBLE DOT TONE MARK
+3030;W;WAVY DASH
+3031;W;VERTICAL KANA REPEAT MARK
+3032;W;VERTICAL KANA REPEAT WITH VOICED SOUND MARK
+3033;W;VERTICAL KANA REPEAT MARK UPPER HALF
+3034;W;VERTICAL KANA REPEAT WITH VOICED SOUND MARK UPPER HALF
+3035;W;VERTICAL KANA REPEAT MARK LOWER HALF
+3036;W;CIRCLED POSTAL MARK
+3037;W;IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL
+3038;W;HANGZHOU NUMERAL TEN
+3039;W;HANGZHOU NUMERAL TWENTY
+303A;W;HANGZHOU NUMERAL THIRTY
+303E;W;IDEOGRAPHIC VARIATION INDICATOR
+303F;N;IDEOGRAPHIC HALF FILL SPACE
+3041;W;HIRAGANA LETTER SMALL A
+3042;W;HIRAGANA LETTER A
+3043;W;HIRAGANA LETTER SMALL I
+3044;W;HIRAGANA LETTER I
+3045;W;HIRAGANA LETTER SMALL U
+3046;W;HIRAGANA LETTER U
+3047;W;HIRAGANA LETTER SMALL E
+3048;W;HIRAGANA LETTER E
+3049;W;HIRAGANA LETTER SMALL O
+304A;W;HIRAGANA LETTER O
+304B;W;HIRAGANA LETTER KA
+304C;W;HIRAGANA LETTER GA
+304D;W;HIRAGANA LETTER KI
+304E;W;HIRAGANA LETTER GI
+304F;W;HIRAGANA LETTER KU
+3050;W;HIRAGANA LETTER GU
+3051;W;HIRAGANA LETTER KE
+3052;W;HIRAGANA LETTER GE
+3053;W;HIRAGANA LETTER KO
+3054;W;HIRAGANA LETTER GO
+3055;W;HIRAGANA LETTER SA
+3056;W;HIRAGANA LETTER ZA
+3057;W;HIRAGANA LETTER SI
+3058;W;HIRAGANA LETTER ZI
+3059;W;HIRAGANA LETTER SU
+305A;W;HIRAGANA LETTER ZU
+305B;W;HIRAGANA LETTER SE
+305C;W;HIRAGANA LETTER ZE
+305D;W;HIRAGANA LETTER SO
+305E;W;HIRAGANA LETTER ZO
+305F;W;HIRAGANA LETTER TA
+3060;W;HIRAGANA LETTER DA
+3061;W;HIRAGANA LETTER TI
+3062;W;HIRAGANA LETTER DI
+3063;W;HIRAGANA LETTER SMALL TU
+3064;W;HIRAGANA LETTER TU
+3065;W;HIRAGANA LETTER DU
+3066;W;HIRAGANA LETTER TE
+3067;W;HIRAGANA LETTER DE
+3068;W;HIRAGANA LETTER TO
+3069;W;HIRAGANA LETTER DO
+306A;W;HIRAGANA LETTER NA
+306B;W;HIRAGANA LETTER NI
+306C;W;HIRAGANA LETTER NU
+306D;W;HIRAGANA LETTER NE
+306E;W;HIRAGANA LETTER NO
+306F;W;HIRAGANA LETTER HA
+3070;W;HIRAGANA LETTER BA
+3071;W;HIRAGANA LETTER PA
+3072;W;HIRAGANA LETTER HI
+3073;W;HIRAGANA LETTER BI
+3074;W;HIRAGANA LETTER PI
+3075;W;HIRAGANA LETTER HU
+3076;W;HIRAGANA LETTER BU
+3077;W;HIRAGANA LETTER PU
+3078;W;HIRAGANA LETTER HE
+3079;W;HIRAGANA LETTER BE
+307A;W;HIRAGANA LETTER PE
+307B;W;HIRAGANA LETTER HO
+307C;W;HIRAGANA LETTER BO
+307D;W;HIRAGANA LETTER PO
+307E;W;HIRAGANA LETTER MA
+307F;W;HIRAGANA LETTER MI
+3080;W;HIRAGANA LETTER MU
+3081;W;HIRAGANA LETTER ME
+3082;W;HIRAGANA LETTER MO
+3083;W;HIRAGANA LETTER SMALL YA
+3084;W;HIRAGANA LETTER YA
+3085;W;HIRAGANA LETTER SMALL YU
+3086;W;HIRAGANA LETTER YU
+3087;W;HIRAGANA LETTER SMALL YO
+3088;W;HIRAGANA LETTER YO
+3089;W;HIRAGANA LETTER RA
+308A;W;HIRAGANA LETTER RI
+308B;W;HIRAGANA LETTER RU
+308C;W;HIRAGANA LETTER RE
+308D;W;HIRAGANA LETTER RO
+308E;W;HIRAGANA LETTER SMALL WA
+308F;W;HIRAGANA LETTER WA
+3090;W;HIRAGANA LETTER WI
+3091;W;HIRAGANA LETTER WE
+3092;W;HIRAGANA LETTER WO
+3093;W;HIRAGANA LETTER N
+3094;W;HIRAGANA LETTER VU
+3099;W;COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK
+309A;W;COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+309B;W;KATAKANA-HIRAGANA VOICED SOUND MARK
+309C;W;KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+309D;W;HIRAGANA ITERATION MARK
+309E;W;HIRAGANA VOICED ITERATION MARK
+30A1;W;KATAKANA LETTER SMALL A
+30A2;W;KATAKANA LETTER A
+30A3;W;KATAKANA LETTER SMALL I
+30A4;W;KATAKANA LETTER I
+30A5;W;KATAKANA LETTER SMALL U
+30A6;W;KATAKANA LETTER U
+30A7;W;KATAKANA LETTER SMALL E
+30A8;W;KATAKANA LETTER E
+30A9;W;KATAKANA LETTER SMALL O
+30AA;W;KATAKANA LETTER O
+30AB;W;KATAKANA LETTER KA
+30AC;W;KATAKANA LETTER GA
+30AD;W;KATAKANA LETTER KI
+30AE;W;KATAKANA LETTER GI
+30AF;W;KATAKANA LETTER KU
+30B0;W;KATAKANA LETTER GU
+30B1;W;KATAKANA LETTER KE
+30B2;W;KATAKANA LETTER GE
+30B3;W;KATAKANA LETTER KO
+30B4;W;KATAKANA LETTER GO
+30B5;W;KATAKANA LETTER SA
+30B6;W;KATAKANA LETTER ZA
+30B7;W;KATAKANA LETTER SI
+30B8;W;KATAKANA LETTER ZI
+30B9;W;KATAKANA LETTER SU
+30BA;W;KATAKANA LETTER ZU
+30BB;W;KATAKANA LETTER SE
+30BC;W;KATAKANA LETTER ZE
+30BD;W;KATAKANA LETTER SO
+30BE;W;KATAKANA LETTER ZO
+30BF;W;KATAKANA LETTER TA
+30C0;W;KATAKANA LETTER DA
+30C1;W;KATAKANA LETTER TI
+30C2;W;KATAKANA LETTER DI
+30C3;W;KATAKANA LETTER SMALL TU
+30C4;W;KATAKANA LETTER TU
+30C5;W;KATAKANA LETTER DU
+30C6;W;KATAKANA LETTER TE
+30C7;W;KATAKANA LETTER DE
+30C8;W;KATAKANA LETTER TO
+30C9;W;KATAKANA LETTER DO
+30CA;W;KATAKANA LETTER NA
+30CB;W;KATAKANA LETTER NI
+30CC;W;KATAKANA LETTER NU
+30CD;W;KATAKANA LETTER NE
+30CE;W;KATAKANA LETTER NO
+30CF;W;KATAKANA LETTER HA
+30D0;W;KATAKANA LETTER BA
+30D1;W;KATAKANA LETTER PA
+30D2;W;KATAKANA LETTER HI
+30D3;W;KATAKANA LETTER BI
+30D4;W;KATAKANA LETTER PI
+30D5;W;KATAKANA LETTER HU
+30D6;W;KATAKANA LETTER BU
+30D7;W;KATAKANA LETTER PU
+30D8;W;KATAKANA LETTER HE
+30D9;W;KATAKANA LETTER BE
+30DA;W;KATAKANA LETTER PE
+30DB;W;KATAKANA LETTER HO
+30DC;W;KATAKANA LETTER BO
+30DD;W;KATAKANA LETTER PO
+30DE;W;KATAKANA LETTER MA
+30DF;W;KATAKANA LETTER MI
+30E0;W;KATAKANA LETTER MU
+30E1;W;KATAKANA LETTER ME
+30E2;W;KATAKANA LETTER MO
+30E3;W;KATAKANA LETTER SMALL YA
+30E4;W;KATAKANA LETTER YA
+30E5;W;KATAKANA LETTER SMALL YU
+30E6;W;KATAKANA LETTER YU
+30E7;W;KATAKANA LETTER SMALL YO
+30E8;W;KATAKANA LETTER YO
+30E9;W;KATAKANA LETTER RA
+30EA;W;KATAKANA LETTER RI
+30EB;W;KATAKANA LETTER RU
+30EC;W;KATAKANA LETTER RE
+30ED;W;KATAKANA LETTER RO
+30EE;W;KATAKANA LETTER SMALL WA
+30EF;W;KATAKANA LETTER WA
+30F0;W;KATAKANA LETTER WI
+30F1;W;KATAKANA LETTER WE
+30F2;W;KATAKANA LETTER WO
+30F3;W;KATAKANA LETTER N
+30F4;W;KATAKANA LETTER VU
+30F5;W;KATAKANA LETTER SMALL KA
+30F6;W;KATAKANA LETTER SMALL KE
+30F7;W;KATAKANA LETTER VA
+30F8;W;KATAKANA LETTER VI
+30F9;W;KATAKANA LETTER VE
+30FA;W;KATAKANA LETTER VO
+30FB;W;KATAKANA MIDDLE DOT
+30FC;W;KATAKANA-HIRAGANA PROLONGED SOUND MARK
+30FD;W;KATAKANA ITERATION MARK
+30FE;W;KATAKANA VOICED ITERATION MARK
+3105;W;BOPOMOFO LETTER B
+3106;W;BOPOMOFO LETTER P
+3107;W;BOPOMOFO LETTER M
+3108;W;BOPOMOFO LETTER F
+3109;W;BOPOMOFO LETTER D
+310A;W;BOPOMOFO LETTER T
+310B;W;BOPOMOFO LETTER N
+310C;W;BOPOMOFO LETTER L
+310D;W;BOPOMOFO LETTER G
+310E;W;BOPOMOFO LETTER K
+310F;W;BOPOMOFO LETTER H
+3110;W;BOPOMOFO LETTER J
+3111;W;BOPOMOFO LETTER Q
+3112;W;BOPOMOFO LETTER X
+3113;W;BOPOMOFO LETTER ZH
+3114;W;BOPOMOFO LETTER CH
+3115;W;BOPOMOFO LETTER SH
+3116;W;BOPOMOFO LETTER R
+3117;W;BOPOMOFO LETTER Z
+3118;W;BOPOMOFO LETTER C
+3119;W;BOPOMOFO LETTER S
+311A;W;BOPOMOFO LETTER A
+311B;W;BOPOMOFO LETTER O
+311C;W;BOPOMOFO LETTER E
+311D;W;BOPOMOFO LETTER EH
+311E;W;BOPOMOFO LETTER AI
+311F;W;BOPOMOFO LETTER EI
+3120;W;BOPOMOFO LETTER AU
+3121;W;BOPOMOFO LETTER OU
+3122;W;BOPOMOFO LETTER AN
+3123;W;BOPOMOFO LETTER EN
+3124;W;BOPOMOFO LETTER ANG
+3125;W;BOPOMOFO LETTER ENG
+3126;W;BOPOMOFO LETTER ER
+3127;W;BOPOMOFO LETTER I
+3128;W;BOPOMOFO LETTER U
+3129;W;BOPOMOFO LETTER IU
+312A;W;BOPOMOFO LETTER V
+312B;W;BOPOMOFO LETTER NG
+312C;W;BOPOMOFO LETTER GN
+3131;W;HANGUL LETTER KIYEOK
+3132;W;HANGUL LETTER SSANGKIYEOK
+3133;W;HANGUL LETTER KIYEOK-SIOS
+3134;W;HANGUL LETTER NIEUN
+3135;W;HANGUL LETTER NIEUN-CIEUC
+3136;W;HANGUL LETTER NIEUN-HIEUH
+3137;W;HANGUL LETTER TIKEUT
+3138;W;HANGUL LETTER SSANGTIKEUT
+3139;W;HANGUL LETTER RIEUL
+313A;W;HANGUL LETTER RIEUL-KIYEOK
+313B;W;HANGUL LETTER RIEUL-MIEUM
+313C;W;HANGUL LETTER RIEUL-PIEUP
+313D;W;HANGUL LETTER RIEUL-SIOS
+313E;W;HANGUL LETTER RIEUL-THIEUTH
+313F;W;HANGUL LETTER RIEUL-PHIEUPH
+3140;W;HANGUL LETTER RIEUL-HIEUH
+3141;W;HANGUL LETTER MIEUM
+3142;W;HANGUL LETTER PIEUP
+3143;W;HANGUL LETTER SSANGPIEUP
+3144;W;HANGUL LETTER PIEUP-SIOS
+3145;W;HANGUL LETTER SIOS
+3146;W;HANGUL LETTER SSANGSIOS
+3147;W;HANGUL LETTER IEUNG
+3148;W;HANGUL LETTER CIEUC
+3149;W;HANGUL LETTER SSANGCIEUC
+314A;W;HANGUL LETTER CHIEUCH
+314B;W;HANGUL LETTER KHIEUKH
+314C;W;HANGUL LETTER THIEUTH
+314D;W;HANGUL LETTER PHIEUPH
+314E;W;HANGUL LETTER HIEUH
+314F;W;HANGUL LETTER A
+3150;W;HANGUL LETTER AE
+3151;W;HANGUL LETTER YA
+3152;W;HANGUL LETTER YAE
+3153;W;HANGUL LETTER EO
+3154;W;HANGUL LETTER E
+3155;W;HANGUL LETTER YEO
+3156;W;HANGUL LETTER YE
+3157;W;HANGUL LETTER O
+3158;W;HANGUL LETTER WA
+3159;W;HANGUL LETTER WAE
+315A;W;HANGUL LETTER OE
+315B;W;HANGUL LETTER YO
+315C;W;HANGUL LETTER U
+315D;W;HANGUL LETTER WEO
+315E;W;HANGUL LETTER WE
+315F;W;HANGUL LETTER WI
+3160;W;HANGUL LETTER YU
+3161;W;HANGUL LETTER EU
+3162;W;HANGUL LETTER YI
+3163;W;HANGUL LETTER I
+3164;W;HANGUL FILLER
+3165;W;HANGUL LETTER SSANGNIEUN
+3166;W;HANGUL LETTER NIEUN-TIKEUT
+3167;W;HANGUL LETTER NIEUN-SIOS
+3168;W;HANGUL LETTER NIEUN-PANSIOS
+3169;W;HANGUL LETTER RIEUL-KIYEOK-SIOS
+316A;W;HANGUL LETTER RIEUL-TIKEUT
+316B;W;HANGUL LETTER RIEUL-PIEUP-SIOS
+316C;W;HANGUL LETTER RIEUL-PANSIOS
+316D;W;HANGUL LETTER RIEUL-YEORINHIEUH
+316E;W;HANGUL LETTER MIEUM-PIEUP
+316F;W;HANGUL LETTER MIEUM-SIOS
+3170;W;HANGUL LETTER MIEUM-PANSIOS
+3171;W;HANGUL LETTER KAPYEOUNMIEUM
+3172;W;HANGUL LETTER PIEUP-KIYEOK
+3173;W;HANGUL LETTER PIEUP-TIKEUT
+3174;W;HANGUL LETTER PIEUP-SIOS-KIYEOK
+3175;W;HANGUL LETTER PIEUP-SIOS-TIKEUT
+3176;W;HANGUL LETTER PIEUP-CIEUC
+3177;W;HANGUL LETTER PIEUP-THIEUTH
+3178;W;HANGUL LETTER KAPYEOUNPIEUP
+3179;W;HANGUL LETTER KAPYEOUNSSANGPIEUP
+317A;W;HANGUL LETTER SIOS-KIYEOK
+317B;W;HANGUL LETTER SIOS-NIEUN
+317C;W;HANGUL LETTER SIOS-TIKEUT
+317D;W;HANGUL LETTER SIOS-PIEUP
+317E;W;HANGUL LETTER SIOS-CIEUC
+317F;W;HANGUL LETTER PANSIOS
+3180;W;HANGUL LETTER SSANGIEUNG
+3181;W;HANGUL LETTER YESIEUNG
+3182;W;HANGUL LETTER YESIEUNG-SIOS
+3183;W;HANGUL LETTER YESIEUNG-PANSIOS
+3184;W;HANGUL LETTER KAPYEOUNPHIEUPH
+3185;W;HANGUL LETTER SSANGHIEUH
+3186;W;HANGUL LETTER YEORINHIEUH
+3187;W;HANGUL LETTER YO-YA
+3188;W;HANGUL LETTER YO-YAE
+3189;W;HANGUL LETTER YO-I
+318A;W;HANGUL LETTER YU-YEO
+318B;W;HANGUL LETTER YU-YE
+318C;W;HANGUL LETTER YU-I
+318D;W;HANGUL LETTER ARAEA
+318E;W;HANGUL LETTER ARAEAE
+3190;W;IDEOGRAPHIC ANNOTATION LINKING MARK
+3191;W;IDEOGRAPHIC ANNOTATION REVERSE MARK
+3192;W;IDEOGRAPHIC ANNOTATION ONE MARK
+3193;W;IDEOGRAPHIC ANNOTATION TWO MARK
+3194;W;IDEOGRAPHIC ANNOTATION THREE MARK
+3195;W;IDEOGRAPHIC ANNOTATION FOUR MARK
+3196;W;IDEOGRAPHIC ANNOTATION TOP MARK
+3197;W;IDEOGRAPHIC ANNOTATION MIDDLE MARK
+3198;W;IDEOGRAPHIC ANNOTATION BOTTOM MARK
+3199;W;IDEOGRAPHIC ANNOTATION FIRST MARK
+319A;W;IDEOGRAPHIC ANNOTATION SECOND MARK
+319B;W;IDEOGRAPHIC ANNOTATION THIRD MARK
+319C;W;IDEOGRAPHIC ANNOTATION FOURTH MARK
+319D;W;IDEOGRAPHIC ANNOTATION HEAVEN MARK
+319E;W;IDEOGRAPHIC ANNOTATION EARTH MARK
+319F;W;IDEOGRAPHIC ANNOTATION MAN MARK
+31A0;W;BOPOMOFO LETTER BU
+31A1;W;BOPOMOFO LETTER ZI
+31A2;W;BOPOMOFO LETTER JI
+31A3;W;BOPOMOFO LETTER GU
+31A4;W;BOPOMOFO LETTER EE
+31A5;W;BOPOMOFO LETTER ENN
+31A6;W;BOPOMOFO LETTER OO
+31A7;W;BOPOMOFO LETTER ONN
+31A8;W;BOPOMOFO LETTER IR
+31A9;W;BOPOMOFO LETTER ANN
+31AA;W;BOPOMOFO LETTER INN
+31AB;W;BOPOMOFO LETTER UNN
+31AC;W;BOPOMOFO LETTER IM
+31AD;W;BOPOMOFO LETTER NGG
+31AE;W;BOPOMOFO LETTER AINN
+31AF;W;BOPOMOFO LETTER AUNN
+31B0;W;BOPOMOFO LETTER AM
+31B1;W;BOPOMOFO LETTER OM
+31B2;W;BOPOMOFO LETTER ONG
+31B3;W;BOPOMOFO LETTER INNN
+31B4;W;BOPOMOFO FINAL LETTER P
+31B5;W;BOPOMOFO FINAL LETTER T
+31B6;W;BOPOMOFO FINAL LETTER K
+31B7;W;BOPOMOFO FINAL LETTER H
+3200;W;PARENTHESIZED HANGUL KIYEOK
+3201;W;PARENTHESIZED HANGUL NIEUN
+3202;W;PARENTHESIZED HANGUL TIKEUT
+3203;W;PARENTHESIZED HANGUL RIEUL
+3204;W;PARENTHESIZED HANGUL MIEUM
+3205;W;PARENTHESIZED HANGUL PIEUP
+3206;W;PARENTHESIZED HANGUL SIOS
+3207;W;PARENTHESIZED HANGUL IEUNG
+3208;W;PARENTHESIZED HANGUL CIEUC
+3209;W;PARENTHESIZED HANGUL CHIEUCH
+320A;W;PARENTHESIZED HANGUL KHIEUKH
+320B;W;PARENTHESIZED HANGUL THIEUTH
+320C;W;PARENTHESIZED HANGUL PHIEUPH
+320D;W;PARENTHESIZED HANGUL HIEUH
+320E;W;PARENTHESIZED HANGUL KIYEOK A
+320F;W;PARENTHESIZED HANGUL NIEUN A
+3210;W;PARENTHESIZED HANGUL TIKEUT A
+3211;W;PARENTHESIZED HANGUL RIEUL A
+3212;W;PARENTHESIZED HANGUL MIEUM A
+3213;W;PARENTHESIZED HANGUL PIEUP A
+3214;W;PARENTHESIZED HANGUL SIOS A
+3215;W;PARENTHESIZED HANGUL IEUNG A
+3216;W;PARENTHESIZED HANGUL CIEUC A
+3217;W;PARENTHESIZED HANGUL CHIEUCH A
+3218;W;PARENTHESIZED HANGUL KHIEUKH A
+3219;W;PARENTHESIZED HANGUL THIEUTH A
+321A;W;PARENTHESIZED HANGUL PHIEUPH A
+321B;W;PARENTHESIZED HANGUL HIEUH A
+321C;W;PARENTHESIZED HANGUL CIEUC U
+3220;W;PARENTHESIZED IDEOGRAPH ONE
+3221;W;PARENTHESIZED IDEOGRAPH TWO
+3222;W;PARENTHESIZED IDEOGRAPH THREE
+3223;W;PARENTHESIZED IDEOGRAPH FOUR
+3224;W;PARENTHESIZED IDEOGRAPH FIVE
+3225;W;PARENTHESIZED IDEOGRAPH SIX
+3226;W;PARENTHESIZED IDEOGRAPH SEVEN
+3227;W;PARENTHESIZED IDEOGRAPH EIGHT
+3228;W;PARENTHESIZED IDEOGRAPH NINE
+3229;W;PARENTHESIZED IDEOGRAPH TEN
+322A;W;PARENTHESIZED IDEOGRAPH MOON
+322B;W;PARENTHESIZED IDEOGRAPH FIRE
+322C;W;PARENTHESIZED IDEOGRAPH WATER
+322D;W;PARENTHESIZED IDEOGRAPH WOOD
+322E;W;PARENTHESIZED IDEOGRAPH METAL
+322F;W;PARENTHESIZED IDEOGRAPH EARTH
+3230;W;PARENTHESIZED IDEOGRAPH SUN
+3231;W;PARENTHESIZED IDEOGRAPH STOCK
+3232;W;PARENTHESIZED IDEOGRAPH HAVE
+3233;W;PARENTHESIZED IDEOGRAPH SOCIETY
+3234;W;PARENTHESIZED IDEOGRAPH NAME
+3235;W;PARENTHESIZED IDEOGRAPH SPECIAL
+3236;W;PARENTHESIZED IDEOGRAPH FINANCIAL
+3237;W;PARENTHESIZED IDEOGRAPH CONGRATULATION
+3238;W;PARENTHESIZED IDEOGRAPH LABOR
+3239;W;PARENTHESIZED IDEOGRAPH REPRESENT
+323A;W;PARENTHESIZED IDEOGRAPH CALL
+323B;W;PARENTHESIZED IDEOGRAPH STUDY
+323C;W;PARENTHESIZED IDEOGRAPH SUPERVISE
+323D;W;PARENTHESIZED IDEOGRAPH ENTERPRISE
+323E;W;PARENTHESIZED IDEOGRAPH RESOURCE
+323F;W;PARENTHESIZED IDEOGRAPH ALLIANCE
+3240;W;PARENTHESIZED IDEOGRAPH FESTIVAL
+3241;W;PARENTHESIZED IDEOGRAPH REST
+3242;W;PARENTHESIZED IDEOGRAPH SELF
+3243;W;PARENTHESIZED IDEOGRAPH REACH
+3260;W;CIRCLED HANGUL KIYEOK
+3261;W;CIRCLED HANGUL NIEUN
+3262;W;CIRCLED HANGUL TIKEUT
+3263;W;CIRCLED HANGUL RIEUL
+3264;W;CIRCLED HANGUL MIEUM
+3265;W;CIRCLED HANGUL PIEUP
+3266;W;CIRCLED HANGUL SIOS
+3267;W;CIRCLED HANGUL IEUNG
+3268;W;CIRCLED HANGUL CIEUC
+3269;W;CIRCLED HANGUL CHIEUCH
+326A;W;CIRCLED HANGUL KHIEUKH
+326B;W;CIRCLED HANGUL THIEUTH
+326C;W;CIRCLED HANGUL PHIEUPH
+326D;W;CIRCLED HANGUL HIEUH
+326E;W;CIRCLED HANGUL KIYEOK A
+326F;W;CIRCLED HANGUL NIEUN A
+3270;W;CIRCLED HANGUL TIKEUT A
+3271;W;CIRCLED HANGUL RIEUL A
+3272;W;CIRCLED HANGUL MIEUM A
+3273;W;CIRCLED HANGUL PIEUP A
+3274;W;CIRCLED HANGUL SIOS A
+3275;W;CIRCLED HANGUL IEUNG A
+3276;W;CIRCLED HANGUL CIEUC A
+3277;W;CIRCLED HANGUL CHIEUCH A
+3278;W;CIRCLED HANGUL KHIEUKH A
+3279;W;CIRCLED HANGUL THIEUTH A
+327A;W;CIRCLED HANGUL PHIEUPH A
+327B;W;CIRCLED HANGUL HIEUH A
+327F;W;KOREAN STANDARD SYMBOL
+3280;W;CIRCLED IDEOGRAPH ONE
+3281;W;CIRCLED IDEOGRAPH TWO
+3282;W;CIRCLED IDEOGRAPH THREE
+3283;W;CIRCLED IDEOGRAPH FOUR
+3284;W;CIRCLED IDEOGRAPH FIVE
+3285;W;CIRCLED IDEOGRAPH SIX
+3286;W;CIRCLED IDEOGRAPH SEVEN
+3287;W;CIRCLED IDEOGRAPH EIGHT
+3288;W;CIRCLED IDEOGRAPH NINE
+3289;W;CIRCLED IDEOGRAPH TEN
+328A;W;CIRCLED IDEOGRAPH MOON
+328B;W;CIRCLED IDEOGRAPH FIRE
+328C;W;CIRCLED IDEOGRAPH WATER
+328D;W;CIRCLED IDEOGRAPH WOOD
+328E;W;CIRCLED IDEOGRAPH METAL
+328F;W;CIRCLED IDEOGRAPH EARTH
+3290;W;CIRCLED IDEOGRAPH SUN
+3291;W;CIRCLED IDEOGRAPH STOCK
+3292;W;CIRCLED IDEOGRAPH HAVE
+3293;W;CIRCLED IDEOGRAPH SOCIETY
+3294;W;CIRCLED IDEOGRAPH NAME
+3295;W;CIRCLED IDEOGRAPH SPECIAL
+3296;W;CIRCLED IDEOGRAPH FINANCIAL
+3297;W;CIRCLED IDEOGRAPH CONGRATULATION
+3298;W;CIRCLED IDEOGRAPH LABOR
+3299;W;CIRCLED IDEOGRAPH SECRET
+329A;W;CIRCLED IDEOGRAPH MALE
+329B;W;CIRCLED IDEOGRAPH FEMALE
+329C;W;CIRCLED IDEOGRAPH SUITABLE
+329D;W;CIRCLED IDEOGRAPH EXCELLENT
+329E;W;CIRCLED IDEOGRAPH PRINT
+329F;W;CIRCLED IDEOGRAPH ATTENTION
+32A0;W;CIRCLED IDEOGRAPH ITEM
+32A1;W;CIRCLED IDEOGRAPH REST
+32A2;W;CIRCLED IDEOGRAPH COPY
+32A3;W;CIRCLED IDEOGRAPH CORRECT
+32A4;W;CIRCLED IDEOGRAPH HIGH
+32A5;W;CIRCLED IDEOGRAPH CENTRE
+32A6;W;CIRCLED IDEOGRAPH LOW
+32A7;W;CIRCLED IDEOGRAPH LEFT
+32A8;W;CIRCLED IDEOGRAPH RIGHT
+32A9;W;CIRCLED IDEOGRAPH MEDICINE
+32AA;W;CIRCLED IDEOGRAPH RELIGION
+32AB;W;CIRCLED IDEOGRAPH STUDY
+32AC;W;CIRCLED IDEOGRAPH SUPERVISE
+32AD;W;CIRCLED IDEOGRAPH ENTERPRISE
+32AE;W;CIRCLED IDEOGRAPH RESOURCE
+32AF;W;CIRCLED IDEOGRAPH ALLIANCE
+32B0;W;CIRCLED IDEOGRAPH NIGHT
+32C0;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY
+32C1;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR FEBRUARY
+32C2;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR MARCH
+32C3;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR APRIL
+32C4;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR MAY
+32C5;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JUNE
+32C6;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JULY
+32C7;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR AUGUST
+32C8;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR SEPTEMBER
+32C9;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR OCTOBER
+32CA;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR NOVEMBER
+32CB;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER
+32D0;W;CIRCLED KATAKANA A
+32D1;W;CIRCLED KATAKANA I
+32D2;W;CIRCLED KATAKANA U
+32D3;W;CIRCLED KATAKANA E
+32D4;W;CIRCLED KATAKANA O
+32D5;W;CIRCLED KATAKANA KA
+32D6;W;CIRCLED KATAKANA KI
+32D7;W;CIRCLED KATAKANA KU
+32D8;W;CIRCLED KATAKANA KE
+32D9;W;CIRCLED KATAKANA KO
+32DA;W;CIRCLED KATAKANA SA
+32DB;W;CIRCLED KATAKANA SI
+32DC;W;CIRCLED KATAKANA SU
+32DD;W;CIRCLED KATAKANA SE
+32DE;W;CIRCLED KATAKANA SO
+32DF;W;CIRCLED KATAKANA TA
+32E0;W;CIRCLED KATAKANA TI
+32E1;W;CIRCLED KATAKANA TU
+32E2;W;CIRCLED KATAKANA TE
+32E3;W;CIRCLED KATAKANA TO
+32E4;W;CIRCLED KATAKANA NA
+32E5;W;CIRCLED KATAKANA NI
+32E6;W;CIRCLED KATAKANA NU
+32E7;W;CIRCLED KATAKANA NE
+32E8;W;CIRCLED KATAKANA NO
+32E9;W;CIRCLED KATAKANA HA
+32EA;W;CIRCLED KATAKANA HI
+32EB;W;CIRCLED KATAKANA HU
+32EC;W;CIRCLED KATAKANA HE
+32ED;W;CIRCLED KATAKANA HO
+32EE;W;CIRCLED KATAKANA MA
+32EF;W;CIRCLED KATAKANA MI
+32F0;W;CIRCLED KATAKANA MU
+32F1;W;CIRCLED KATAKANA ME
+32F2;W;CIRCLED KATAKANA MO
+32F3;W;CIRCLED KATAKANA YA
+32F4;W;CIRCLED KATAKANA YU
+32F5;W;CIRCLED KATAKANA YO
+32F6;W;CIRCLED KATAKANA RA
+32F7;W;CIRCLED KATAKANA RI
+32F8;W;CIRCLED KATAKANA RU
+32F9;W;CIRCLED KATAKANA RE
+32FA;W;CIRCLED KATAKANA RO
+32FB;W;CIRCLED KATAKANA WA
+32FC;W;CIRCLED KATAKANA WI
+32FD;W;CIRCLED KATAKANA WE
+32FE;W;CIRCLED KATAKANA WO
+3300;W;SQUARE APAATO
+3301;W;SQUARE ARUHUA
+3302;W;SQUARE ANPEA
+3303;W;SQUARE AARU
+3304;W;SQUARE ININGU
+3305;W;SQUARE INTI
+3306;W;SQUARE UON
+3307;W;SQUARE ESUKUUDO
+3308;W;SQUARE EEKAA
+3309;W;SQUARE ONSU
+330A;W;SQUARE OOMU
+330B;W;SQUARE KAIRI
+330C;W;SQUARE KARATTO
+330D;W;SQUARE KARORII
+330E;W;SQUARE GARON
+330F;W;SQUARE GANMA
+3310;W;SQUARE GIGA
+3311;W;SQUARE GINII
+3312;W;SQUARE KYURII
+3313;W;SQUARE GIRUDAA
+3314;W;SQUARE KIRO
+3315;W;SQUARE KIROGURAMU
+3316;W;SQUARE KIROMEETORU
+3317;W;SQUARE KIROWATTO
+3318;W;SQUARE GURAMU
+3319;W;SQUARE GURAMUTON
+331A;W;SQUARE KURUZEIRO
+331B;W;SQUARE KUROONE
+331C;W;SQUARE KEESU
+331D;W;SQUARE KORUNA
+331E;W;SQUARE KOOPO
+331F;W;SQUARE SAIKURU
+3320;W;SQUARE SANTIIMU
+3321;W;SQUARE SIRINGU
+3322;W;SQUARE SENTI
+3323;W;SQUARE SENTO
+3324;W;SQUARE DAASU
+3325;W;SQUARE DESI
+3326;W;SQUARE DORU
+3327;W;SQUARE TON
+3328;W;SQUARE NANO
+3329;W;SQUARE NOTTO
+332A;W;SQUARE HAITU
+332B;W;SQUARE PAASENTO
+332C;W;SQUARE PAATU
+332D;W;SQUARE BAARERU
+332E;W;SQUARE PIASUTORU
+332F;W;SQUARE PIKURU
+3330;W;SQUARE PIKO
+3331;W;SQUARE BIRU
+3332;W;SQUARE HUARADDO
+3333;W;SQUARE HUIITO
+3334;W;SQUARE BUSSYERU
+3335;W;SQUARE HURAN
+3336;W;SQUARE HEKUTAARU
+3337;W;SQUARE PESO
+3338;W;SQUARE PENIHI
+3339;W;SQUARE HERUTU
+333A;W;SQUARE PENSU
+333B;W;SQUARE PEEZI
+333C;W;SQUARE BEETA
+333D;W;SQUARE POINTO
+333E;W;SQUARE BORUTO
+333F;W;SQUARE HON
+3340;W;SQUARE PONDO
+3341;W;SQUARE HOORU
+3342;W;SQUARE HOON
+3343;W;SQUARE MAIKURO
+3344;W;SQUARE MAIRU
+3345;W;SQUARE MAHHA
+3346;W;SQUARE MARUKU
+3347;W;SQUARE MANSYON
+3348;W;SQUARE MIKURON
+3349;W;SQUARE MIRI
+334A;W;SQUARE MIRIBAARU
+334B;W;SQUARE MEGA
+334C;W;SQUARE MEGATON
+334D;W;SQUARE MEETORU
+334E;W;SQUARE YAADO
+334F;W;SQUARE YAARU
+3350;W;SQUARE YUAN
+3351;W;SQUARE RITTORU
+3352;W;SQUARE RIRA
+3353;W;SQUARE RUPII
+3354;W;SQUARE RUUBURU
+3355;W;SQUARE REMU
+3356;W;SQUARE RENTOGEN
+3357;W;SQUARE WATTO
+3358;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO
+3359;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ONE
+335A;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWO
+335B;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THREE
+335C;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOUR
+335D;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIVE
+335E;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIX
+335F;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVEN
+3360;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHT
+3361;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINE
+3362;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TEN
+3363;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ELEVEN
+3364;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWELVE
+3365;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THIRTEEN
+3366;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOURTEEN
+3367;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIFTEEN
+3368;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIXTEEN
+3369;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVENTEEN
+336A;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHTEEN
+336B;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINETEEN
+336C;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY
+336D;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-ONE
+336E;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-TWO
+336F;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-THREE
+3370;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR
+3371;W;SQUARE HPA
+3372;W;SQUARE DA
+3373;W;SQUARE AU
+3374;W;SQUARE BAR
+3375;W;SQUARE OV
+3376;W;SQUARE PC
+337B;W;SQUARE ERA NAME HEISEI
+337C;W;SQUARE ERA NAME SYOUWA
+337D;W;SQUARE ERA NAME TAISYOU
+337E;W;SQUARE ERA NAME MEIZI
+337F;W;SQUARE CORPORATION
+3380;W;SQUARE PA AMPS
+3381;W;SQUARE NA
+3382;W;SQUARE MU A
+3383;W;SQUARE MA
+3384;W;SQUARE KA
+3385;W;SQUARE KB
+3386;W;SQUARE MB
+3387;W;SQUARE GB
+3388;W;SQUARE CAL
+3389;W;SQUARE KCAL
+338A;W;SQUARE PF
+338B;W;SQUARE NF
+338C;W;SQUARE MU F
+338D;W;SQUARE MU G
+338E;W;SQUARE MG
+338F;W;SQUARE KG
+3390;W;SQUARE HZ
+3391;W;SQUARE KHZ
+3392;W;SQUARE MHZ
+3393;W;SQUARE GHZ
+3394;W;SQUARE THZ
+3395;W;SQUARE MU L
+3396;W;SQUARE ML
+3397;W;SQUARE DL
+3398;W;SQUARE KL
+3399;W;SQUARE FM
+339A;W;SQUARE NM
+339B;W;SQUARE MU M
+339C;W;SQUARE MM
+339D;W;SQUARE CM
+339E;W;SQUARE KM
+339F;W;SQUARE MM SQUARED
+33A0;W;SQUARE CM SQUARED
+33A1;W;SQUARE M SQUARED
+33A2;W;SQUARE KM SQUARED
+33A3;W;SQUARE MM CUBED
+33A4;W;SQUARE CM CUBED
+33A5;W;SQUARE M CUBED
+33A6;W;SQUARE KM CUBED
+33A7;W;SQUARE M OVER S
+33A8;W;SQUARE M OVER S SQUARED
+33A9;W;SQUARE PA
+33AA;W;SQUARE KPA
+33AB;W;SQUARE MPA
+33AC;W;SQUARE GPA
+33AD;W;SQUARE RAD
+33AE;W;SQUARE RAD OVER S
+33AF;W;SQUARE RAD OVER S SQUARED
+33B0;W;SQUARE PS
+33B1;W;SQUARE NS
+33B2;W;SQUARE MU S
+33B3;W;SQUARE MS
+33B4;W;SQUARE PV
+33B5;W;SQUARE NV
+33B6;W;SQUARE MU V
+33B7;W;SQUARE MV
+33B8;W;SQUARE KV
+33B9;W;SQUARE MV MEGA
+33BA;W;SQUARE PW
+33BB;W;SQUARE NW
+33BC;W;SQUARE MU W
+33BD;W;SQUARE MW
+33BE;W;SQUARE KW
+33BF;W;SQUARE MW MEGA
+33C0;W;SQUARE K OHM
+33C1;W;SQUARE M OHM
+33C2;W;SQUARE AM
+33C3;W;SQUARE BQ
+33C4;W;SQUARE CC
+33C5;W;SQUARE CD
+33C6;W;SQUARE C OVER KG
+33C7;W;SQUARE CO
+33C8;W;SQUARE DB
+33C9;W;SQUARE GY
+33CA;W;SQUARE HA
+33CB;W;SQUARE HP
+33CC;W;SQUARE IN
+33CD;W;SQUARE KK
+33CE;W;SQUARE KM CAPITAL
+33CF;W;SQUARE KT
+33D0;W;SQUARE LM
+33D1;W;SQUARE LN
+33D2;W;SQUARE LOG
+33D3;W;SQUARE LX
+33D4;W;SQUARE MB SMALL
+33D5;W;SQUARE MIL
+33D6;W;SQUARE MOL
+33D7;W;SQUARE PH
+33D8;W;SQUARE PM
+33D9;W;SQUARE PPM
+33DA;W;SQUARE PR
+33DB;W;SQUARE SR
+33DC;W;SQUARE SV
+33DD;W;SQUARE WB
+33E0;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE
+33E1;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWO
+33E2;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THREE
+33E3;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOUR
+33E4;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIVE
+33E5;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIX
+33E6;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVEN
+33E7;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHT
+33E8;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINE
+33E9;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TEN
+33EA;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ELEVEN
+33EB;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWELVE
+33EC;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTEEN
+33ED;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOURTEEN
+33EE;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIFTEEN
+33EF;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIXTEEN
+33F0;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVENTEEN
+33F1;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHTEEN
+33F2;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINETEEN
+33F3;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY
+33F4;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-ONE
+33F5;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-TWO
+33F6;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-THREE
+33F7;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FOUR
+33F8;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FIVE
+33F9;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SIX
+33FA;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SEVEN
+33FB;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-EIGHT
+33FC;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-NINE
+33FD;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY
+33FE;W;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE
+3400;W;<CJK Ideograph Extension A, First>
+4DB5;W;<CJK Ideograph Extension A, Last>
+4E00;W;<CJK Ideograph, First>
+9FA5;W;<CJK Ideograph, Last>
+A000;W;YI SYLLABLE IT
+A001;W;YI SYLLABLE IX
+A002;W;YI SYLLABLE I
+A003;W;YI SYLLABLE IP
+A004;W;YI SYLLABLE IET
+A005;W;YI SYLLABLE IEX
+A006;W;YI SYLLABLE IE
+A007;W;YI SYLLABLE IEP
+A008;W;YI SYLLABLE AT
+A009;W;YI SYLLABLE AX
+A00A;W;YI SYLLABLE A
+A00B;W;YI SYLLABLE AP
+A00C;W;YI SYLLABLE UOX
+A00D;W;YI SYLLABLE UO
+A00E;W;YI SYLLABLE UOP
+A00F;W;YI SYLLABLE OT
+A010;W;YI SYLLABLE OX
+A011;W;YI SYLLABLE O
+A012;W;YI SYLLABLE OP
+A013;W;YI SYLLABLE EX
+A014;W;YI SYLLABLE E
+A015;W;YI SYLLABLE WU
+A016;W;YI SYLLABLE BIT
+A017;W;YI SYLLABLE BIX
+A018;W;YI SYLLABLE BI
+A019;W;YI SYLLABLE BIP
+A01A;W;YI SYLLABLE BIET
+A01B;W;YI SYLLABLE BIEX
+A01C;W;YI SYLLABLE BIE
+A01D;W;YI SYLLABLE BIEP
+A01E;W;YI SYLLABLE BAT
+A01F;W;YI SYLLABLE BAX
+A020;W;YI SYLLABLE BA
+A021;W;YI SYLLABLE BAP
+A022;W;YI SYLLABLE BUOX
+A023;W;YI SYLLABLE BUO
+A024;W;YI SYLLABLE BUOP
+A025;W;YI SYLLABLE BOT
+A026;W;YI SYLLABLE BOX
+A027;W;YI SYLLABLE BO
+A028;W;YI SYLLABLE BOP
+A029;W;YI SYLLABLE BEX
+A02A;W;YI SYLLABLE BE
+A02B;W;YI SYLLABLE BEP
+A02C;W;YI SYLLABLE BUT
+A02D;W;YI SYLLABLE BUX
+A02E;W;YI SYLLABLE BU
+A02F;W;YI SYLLABLE BUP
+A030;W;YI SYLLABLE BURX
+A031;W;YI SYLLABLE BUR
+A032;W;YI SYLLABLE BYT
+A033;W;YI SYLLABLE BYX
+A034;W;YI SYLLABLE BY
+A035;W;YI SYLLABLE BYP
+A036;W;YI SYLLABLE BYRX
+A037;W;YI SYLLABLE BYR
+A038;W;YI SYLLABLE PIT
+A039;W;YI SYLLABLE PIX
+A03A;W;YI SYLLABLE PI
+A03B;W;YI SYLLABLE PIP
+A03C;W;YI SYLLABLE PIEX
+A03D;W;YI SYLLABLE PIE
+A03E;W;YI SYLLABLE PIEP
+A03F;W;YI SYLLABLE PAT
+A040;W;YI SYLLABLE PAX
+A041;W;YI SYLLABLE PA
+A042;W;YI SYLLABLE PAP
+A043;W;YI SYLLABLE PUOX
+A044;W;YI SYLLABLE PUO
+A045;W;YI SYLLABLE PUOP
+A046;W;YI SYLLABLE POT
+A047;W;YI SYLLABLE POX
+A048;W;YI SYLLABLE PO
+A049;W;YI SYLLABLE POP
+A04A;W;YI SYLLABLE PUT
+A04B;W;YI SYLLABLE PUX
+A04C;W;YI SYLLABLE PU
+A04D;W;YI SYLLABLE PUP
+A04E;W;YI SYLLABLE PURX
+A04F;W;YI SYLLABLE PUR
+A050;W;YI SYLLABLE PYT
+A051;W;YI SYLLABLE PYX
+A052;W;YI SYLLABLE PY
+A053;W;YI SYLLABLE PYP
+A054;W;YI SYLLABLE PYRX
+A055;W;YI SYLLABLE PYR
+A056;W;YI SYLLABLE BBIT
+A057;W;YI SYLLABLE BBIX
+A058;W;YI SYLLABLE BBI
+A059;W;YI SYLLABLE BBIP
+A05A;W;YI SYLLABLE BBIET
+A05B;W;YI SYLLABLE BBIEX
+A05C;W;YI SYLLABLE BBIE
+A05D;W;YI SYLLABLE BBIEP
+A05E;W;YI SYLLABLE BBAT
+A05F;W;YI SYLLABLE BBAX
+A060;W;YI SYLLABLE BBA
+A061;W;YI SYLLABLE BBAP
+A062;W;YI SYLLABLE BBUOX
+A063;W;YI SYLLABLE BBUO
+A064;W;YI SYLLABLE BBUOP
+A065;W;YI SYLLABLE BBOT
+A066;W;YI SYLLABLE BBOX
+A067;W;YI SYLLABLE BBO
+A068;W;YI SYLLABLE BBOP
+A069;W;YI SYLLABLE BBEX
+A06A;W;YI SYLLABLE BBE
+A06B;W;YI SYLLABLE BBEP
+A06C;W;YI SYLLABLE BBUT
+A06D;W;YI SYLLABLE BBUX
+A06E;W;YI SYLLABLE BBU
+A06F;W;YI SYLLABLE BBUP
+A070;W;YI SYLLABLE BBURX
+A071;W;YI SYLLABLE BBUR
+A072;W;YI SYLLABLE BBYT
+A073;W;YI SYLLABLE BBYX
+A074;W;YI SYLLABLE BBY
+A075;W;YI SYLLABLE BBYP
+A076;W;YI SYLLABLE NBIT
+A077;W;YI SYLLABLE NBIX
+A078;W;YI SYLLABLE NBI
+A079;W;YI SYLLABLE NBIP
+A07A;W;YI SYLLABLE NBIEX
+A07B;W;YI SYLLABLE NBIE
+A07C;W;YI SYLLABLE NBIEP
+A07D;W;YI SYLLABLE NBAT
+A07E;W;YI SYLLABLE NBAX
+A07F;W;YI SYLLABLE NBA
+A080;W;YI SYLLABLE NBAP
+A081;W;YI SYLLABLE NBOT
+A082;W;YI SYLLABLE NBOX
+A083;W;YI SYLLABLE NBO
+A084;W;YI SYLLABLE NBOP
+A085;W;YI SYLLABLE NBUT
+A086;W;YI SYLLABLE NBUX
+A087;W;YI SYLLABLE NBU
+A088;W;YI SYLLABLE NBUP
+A089;W;YI SYLLABLE NBURX
+A08A;W;YI SYLLABLE NBUR
+A08B;W;YI SYLLABLE NBYT
+A08C;W;YI SYLLABLE NBYX
+A08D;W;YI SYLLABLE NBY
+A08E;W;YI SYLLABLE NBYP
+A08F;W;YI SYLLABLE NBYRX
+A090;W;YI SYLLABLE NBYR
+A091;W;YI SYLLABLE HMIT
+A092;W;YI SYLLABLE HMIX
+A093;W;YI SYLLABLE HMI
+A094;W;YI SYLLABLE HMIP
+A095;W;YI SYLLABLE HMIEX
+A096;W;YI SYLLABLE HMIE
+A097;W;YI SYLLABLE HMIEP
+A098;W;YI SYLLABLE HMAT
+A099;W;YI SYLLABLE HMAX
+A09A;W;YI SYLLABLE HMA
+A09B;W;YI SYLLABLE HMAP
+A09C;W;YI SYLLABLE HMUOX
+A09D;W;YI SYLLABLE HMUO
+A09E;W;YI SYLLABLE HMUOP
+A09F;W;YI SYLLABLE HMOT
+A0A0;W;YI SYLLABLE HMOX
+A0A1;W;YI SYLLABLE HMO
+A0A2;W;YI SYLLABLE HMOP
+A0A3;W;YI SYLLABLE HMUT
+A0A4;W;YI SYLLABLE HMUX
+A0A5;W;YI SYLLABLE HMU
+A0A6;W;YI SYLLABLE HMUP
+A0A7;W;YI SYLLABLE HMURX
+A0A8;W;YI SYLLABLE HMUR
+A0A9;W;YI SYLLABLE HMYX
+A0AA;W;YI SYLLABLE HMY
+A0AB;W;YI SYLLABLE HMYP
+A0AC;W;YI SYLLABLE HMYRX
+A0AD;W;YI SYLLABLE HMYR
+A0AE;W;YI SYLLABLE MIT
+A0AF;W;YI SYLLABLE MIX
+A0B0;W;YI SYLLABLE MI
+A0B1;W;YI SYLLABLE MIP
+A0B2;W;YI SYLLABLE MIEX
+A0B3;W;YI SYLLABLE MIE
+A0B4;W;YI SYLLABLE MIEP
+A0B5;W;YI SYLLABLE MAT
+A0B6;W;YI SYLLABLE MAX
+A0B7;W;YI SYLLABLE MA
+A0B8;W;YI SYLLABLE MAP
+A0B9;W;YI SYLLABLE MUOT
+A0BA;W;YI SYLLABLE MUOX
+A0BB;W;YI SYLLABLE MUO
+A0BC;W;YI SYLLABLE MUOP
+A0BD;W;YI SYLLABLE MOT
+A0BE;W;YI SYLLABLE MOX
+A0BF;W;YI SYLLABLE MO
+A0C0;W;YI SYLLABLE MOP
+A0C1;W;YI SYLLABLE MEX
+A0C2;W;YI SYLLABLE ME
+A0C3;W;YI SYLLABLE MUT
+A0C4;W;YI SYLLABLE MUX
+A0C5;W;YI SYLLABLE MU
+A0C6;W;YI SYLLABLE MUP
+A0C7;W;YI SYLLABLE MURX
+A0C8;W;YI SYLLABLE MUR
+A0C9;W;YI SYLLABLE MYT
+A0CA;W;YI SYLLABLE MYX
+A0CB;W;YI SYLLABLE MY
+A0CC;W;YI SYLLABLE MYP
+A0CD;W;YI SYLLABLE FIT
+A0CE;W;YI SYLLABLE FIX
+A0CF;W;YI SYLLABLE FI
+A0D0;W;YI SYLLABLE FIP
+A0D1;W;YI SYLLABLE FAT
+A0D2;W;YI SYLLABLE FAX
+A0D3;W;YI SYLLABLE FA
+A0D4;W;YI SYLLABLE FAP
+A0D5;W;YI SYLLABLE FOX
+A0D6;W;YI SYLLABLE FO
+A0D7;W;YI SYLLABLE FOP
+A0D8;W;YI SYLLABLE FUT
+A0D9;W;YI SYLLABLE FUX
+A0DA;W;YI SYLLABLE FU
+A0DB;W;YI SYLLABLE FUP
+A0DC;W;YI SYLLABLE FURX
+A0DD;W;YI SYLLABLE FUR
+A0DE;W;YI SYLLABLE FYT
+A0DF;W;YI SYLLABLE FYX
+A0E0;W;YI SYLLABLE FY
+A0E1;W;YI SYLLABLE FYP
+A0E2;W;YI SYLLABLE VIT
+A0E3;W;YI SYLLABLE VIX
+A0E4;W;YI SYLLABLE VI
+A0E5;W;YI SYLLABLE VIP
+A0E6;W;YI SYLLABLE VIET
+A0E7;W;YI SYLLABLE VIEX
+A0E8;W;YI SYLLABLE VIE
+A0E9;W;YI SYLLABLE VIEP
+A0EA;W;YI SYLLABLE VAT
+A0EB;W;YI SYLLABLE VAX
+A0EC;W;YI SYLLABLE VA
+A0ED;W;YI SYLLABLE VAP
+A0EE;W;YI SYLLABLE VOT
+A0EF;W;YI SYLLABLE VOX
+A0F0;W;YI SYLLABLE VO
+A0F1;W;YI SYLLABLE VOP
+A0F2;W;YI SYLLABLE VEX
+A0F3;W;YI SYLLABLE VEP
+A0F4;W;YI SYLLABLE VUT
+A0F5;W;YI SYLLABLE VUX
+A0F6;W;YI SYLLABLE VU
+A0F7;W;YI SYLLABLE VUP
+A0F8;W;YI SYLLABLE VURX
+A0F9;W;YI SYLLABLE VUR
+A0FA;W;YI SYLLABLE VYT
+A0FB;W;YI SYLLABLE VYX
+A0FC;W;YI SYLLABLE VY
+A0FD;W;YI SYLLABLE VYP
+A0FE;W;YI SYLLABLE VYRX
+A0FF;W;YI SYLLABLE VYR
+A100;W;YI SYLLABLE DIT
+A101;W;YI SYLLABLE DIX
+A102;W;YI SYLLABLE DI
+A103;W;YI SYLLABLE DIP
+A104;W;YI SYLLABLE DIEX
+A105;W;YI SYLLABLE DIE
+A106;W;YI SYLLABLE DIEP
+A107;W;YI SYLLABLE DAT
+A108;W;YI SYLLABLE DAX
+A109;W;YI SYLLABLE DA
+A10A;W;YI SYLLABLE DAP
+A10B;W;YI SYLLABLE DUOX
+A10C;W;YI SYLLABLE DUO
+A10D;W;YI SYLLABLE DOT
+A10E;W;YI SYLLABLE DOX
+A10F;W;YI SYLLABLE DO
+A110;W;YI SYLLABLE DOP
+A111;W;YI SYLLABLE DEX
+A112;W;YI SYLLABLE DE
+A113;W;YI SYLLABLE DEP
+A114;W;YI SYLLABLE DUT
+A115;W;YI SYLLABLE DUX
+A116;W;YI SYLLABLE DU
+A117;W;YI SYLLABLE DUP
+A118;W;YI SYLLABLE DURX
+A119;W;YI SYLLABLE DUR
+A11A;W;YI SYLLABLE TIT
+A11B;W;YI SYLLABLE TIX
+A11C;W;YI SYLLABLE TI
+A11D;W;YI SYLLABLE TIP
+A11E;W;YI SYLLABLE TIEX
+A11F;W;YI SYLLABLE TIE
+A120;W;YI SYLLABLE TIEP
+A121;W;YI SYLLABLE TAT
+A122;W;YI SYLLABLE TAX
+A123;W;YI SYLLABLE TA
+A124;W;YI SYLLABLE TAP
+A125;W;YI SYLLABLE TUOT
+A126;W;YI SYLLABLE TUOX
+A127;W;YI SYLLABLE TUO
+A128;W;YI SYLLABLE TUOP
+A129;W;YI SYLLABLE TOT
+A12A;W;YI SYLLABLE TOX
+A12B;W;YI SYLLABLE TO
+A12C;W;YI SYLLABLE TOP
+A12D;W;YI SYLLABLE TEX
+A12E;W;YI SYLLABLE TE
+A12F;W;YI SYLLABLE TEP
+A130;W;YI SYLLABLE TUT
+A131;W;YI SYLLABLE TUX
+A132;W;YI SYLLABLE TU
+A133;W;YI SYLLABLE TUP
+A134;W;YI SYLLABLE TURX
+A135;W;YI SYLLABLE TUR
+A136;W;YI SYLLABLE DDIT
+A137;W;YI SYLLABLE DDIX
+A138;W;YI SYLLABLE DDI
+A139;W;YI SYLLABLE DDIP
+A13A;W;YI SYLLABLE DDIEX
+A13B;W;YI SYLLABLE DDIE
+A13C;W;YI SYLLABLE DDIEP
+A13D;W;YI SYLLABLE DDAT
+A13E;W;YI SYLLABLE DDAX
+A13F;W;YI SYLLABLE DDA
+A140;W;YI SYLLABLE DDAP
+A141;W;YI SYLLABLE DDUOX
+A142;W;YI SYLLABLE DDUO
+A143;W;YI SYLLABLE DDUOP
+A144;W;YI SYLLABLE DDOT
+A145;W;YI SYLLABLE DDOX
+A146;W;YI SYLLABLE DDO
+A147;W;YI SYLLABLE DDOP
+A148;W;YI SYLLABLE DDEX
+A149;W;YI SYLLABLE DDE
+A14A;W;YI SYLLABLE DDEP
+A14B;W;YI SYLLABLE DDUT
+A14C;W;YI SYLLABLE DDUX
+A14D;W;YI SYLLABLE DDU
+A14E;W;YI SYLLABLE DDUP
+A14F;W;YI SYLLABLE DDURX
+A150;W;YI SYLLABLE DDUR
+A151;W;YI SYLLABLE NDIT
+A152;W;YI SYLLABLE NDIX
+A153;W;YI SYLLABLE NDI
+A154;W;YI SYLLABLE NDIP
+A155;W;YI SYLLABLE NDIEX
+A156;W;YI SYLLABLE NDIE
+A157;W;YI SYLLABLE NDAT
+A158;W;YI SYLLABLE NDAX
+A159;W;YI SYLLABLE NDA
+A15A;W;YI SYLLABLE NDAP
+A15B;W;YI SYLLABLE NDOT
+A15C;W;YI SYLLABLE NDOX
+A15D;W;YI SYLLABLE NDO
+A15E;W;YI SYLLABLE NDOP
+A15F;W;YI SYLLABLE NDEX
+A160;W;YI SYLLABLE NDE
+A161;W;YI SYLLABLE NDEP
+A162;W;YI SYLLABLE NDUT
+A163;W;YI SYLLABLE NDUX
+A164;W;YI SYLLABLE NDU
+A165;W;YI SYLLABLE NDUP
+A166;W;YI SYLLABLE NDURX
+A167;W;YI SYLLABLE NDUR
+A168;W;YI SYLLABLE HNIT
+A169;W;YI SYLLABLE HNIX
+A16A;W;YI SYLLABLE HNI
+A16B;W;YI SYLLABLE HNIP
+A16C;W;YI SYLLABLE HNIET
+A16D;W;YI SYLLABLE HNIEX
+A16E;W;YI SYLLABLE HNIE
+A16F;W;YI SYLLABLE HNIEP
+A170;W;YI SYLLABLE HNAT
+A171;W;YI SYLLABLE HNAX
+A172;W;YI SYLLABLE HNA
+A173;W;YI SYLLABLE HNAP
+A174;W;YI SYLLABLE HNUOX
+A175;W;YI SYLLABLE HNUO
+A176;W;YI SYLLABLE HNOT
+A177;W;YI SYLLABLE HNOX
+A178;W;YI SYLLABLE HNOP
+A179;W;YI SYLLABLE HNEX
+A17A;W;YI SYLLABLE HNE
+A17B;W;YI SYLLABLE HNEP
+A17C;W;YI SYLLABLE HNUT
+A17D;W;YI SYLLABLE NIT
+A17E;W;YI SYLLABLE NIX
+A17F;W;YI SYLLABLE NI
+A180;W;YI SYLLABLE NIP
+A181;W;YI SYLLABLE NIEX
+A182;W;YI SYLLABLE NIE
+A183;W;YI SYLLABLE NIEP
+A184;W;YI SYLLABLE NAX
+A185;W;YI SYLLABLE NA
+A186;W;YI SYLLABLE NAP
+A187;W;YI SYLLABLE NUOX
+A188;W;YI SYLLABLE NUO
+A189;W;YI SYLLABLE NUOP
+A18A;W;YI SYLLABLE NOT
+A18B;W;YI SYLLABLE NOX
+A18C;W;YI SYLLABLE NO
+A18D;W;YI SYLLABLE NOP
+A18E;W;YI SYLLABLE NEX
+A18F;W;YI SYLLABLE NE
+A190;W;YI SYLLABLE NEP
+A191;W;YI SYLLABLE NUT
+A192;W;YI SYLLABLE NUX
+A193;W;YI SYLLABLE NU
+A194;W;YI SYLLABLE NUP
+A195;W;YI SYLLABLE NURX
+A196;W;YI SYLLABLE NUR
+A197;W;YI SYLLABLE HLIT
+A198;W;YI SYLLABLE HLIX
+A199;W;YI SYLLABLE HLI
+A19A;W;YI SYLLABLE HLIP
+A19B;W;YI SYLLABLE HLIEX
+A19C;W;YI SYLLABLE HLIE
+A19D;W;YI SYLLABLE HLIEP
+A19E;W;YI SYLLABLE HLAT
+A19F;W;YI SYLLABLE HLAX
+A1A0;W;YI SYLLABLE HLA
+A1A1;W;YI SYLLABLE HLAP
+A1A2;W;YI SYLLABLE HLUOX
+A1A3;W;YI SYLLABLE HLUO
+A1A4;W;YI SYLLABLE HLUOP
+A1A5;W;YI SYLLABLE HLOX
+A1A6;W;YI SYLLABLE HLO
+A1A7;W;YI SYLLABLE HLOP
+A1A8;W;YI SYLLABLE HLEX
+A1A9;W;YI SYLLABLE HLE
+A1AA;W;YI SYLLABLE HLEP
+A1AB;W;YI SYLLABLE HLUT
+A1AC;W;YI SYLLABLE HLUX
+A1AD;W;YI SYLLABLE HLU
+A1AE;W;YI SYLLABLE HLUP
+A1AF;W;YI SYLLABLE HLURX
+A1B0;W;YI SYLLABLE HLUR
+A1B1;W;YI SYLLABLE HLYT
+A1B2;W;YI SYLLABLE HLYX
+A1B3;W;YI SYLLABLE HLY
+A1B4;W;YI SYLLABLE HLYP
+A1B5;W;YI SYLLABLE HLYRX
+A1B6;W;YI SYLLABLE HLYR
+A1B7;W;YI SYLLABLE LIT
+A1B8;W;YI SYLLABLE LIX
+A1B9;W;YI SYLLABLE LI
+A1BA;W;YI SYLLABLE LIP
+A1BB;W;YI SYLLABLE LIET
+A1BC;W;YI SYLLABLE LIEX
+A1BD;W;YI SYLLABLE LIE
+A1BE;W;YI SYLLABLE LIEP
+A1BF;W;YI SYLLABLE LAT
+A1C0;W;YI SYLLABLE LAX
+A1C1;W;YI SYLLABLE LA
+A1C2;W;YI SYLLABLE LAP
+A1C3;W;YI SYLLABLE LUOT
+A1C4;W;YI SYLLABLE LUOX
+A1C5;W;YI SYLLABLE LUO
+A1C6;W;YI SYLLABLE LUOP
+A1C7;W;YI SYLLABLE LOT
+A1C8;W;YI SYLLABLE LOX
+A1C9;W;YI SYLLABLE LO
+A1CA;W;YI SYLLABLE LOP
+A1CB;W;YI SYLLABLE LEX
+A1CC;W;YI SYLLABLE LE
+A1CD;W;YI SYLLABLE LEP
+A1CE;W;YI SYLLABLE LUT
+A1CF;W;YI SYLLABLE LUX
+A1D0;W;YI SYLLABLE LU
+A1D1;W;YI SYLLABLE LUP
+A1D2;W;YI SYLLABLE LURX
+A1D3;W;YI SYLLABLE LUR
+A1D4;W;YI SYLLABLE LYT
+A1D5;W;YI SYLLABLE LYX
+A1D6;W;YI SYLLABLE LY
+A1D7;W;YI SYLLABLE LYP
+A1D8;W;YI SYLLABLE LYRX
+A1D9;W;YI SYLLABLE LYR
+A1DA;W;YI SYLLABLE GIT
+A1DB;W;YI SYLLABLE GIX
+A1DC;W;YI SYLLABLE GI
+A1DD;W;YI SYLLABLE GIP
+A1DE;W;YI SYLLABLE GIET
+A1DF;W;YI SYLLABLE GIEX
+A1E0;W;YI SYLLABLE GIE
+A1E1;W;YI SYLLABLE GIEP
+A1E2;W;YI SYLLABLE GAT
+A1E3;W;YI SYLLABLE GAX
+A1E4;W;YI SYLLABLE GA
+A1E5;W;YI SYLLABLE GAP
+A1E6;W;YI SYLLABLE GUOT
+A1E7;W;YI SYLLABLE GUOX
+A1E8;W;YI SYLLABLE GUO
+A1E9;W;YI SYLLABLE GUOP
+A1EA;W;YI SYLLABLE GOT
+A1EB;W;YI SYLLABLE GOX
+A1EC;W;YI SYLLABLE GO
+A1ED;W;YI SYLLABLE GOP
+A1EE;W;YI SYLLABLE GET
+A1EF;W;YI SYLLABLE GEX
+A1F0;W;YI SYLLABLE GE
+A1F1;W;YI SYLLABLE GEP
+A1F2;W;YI SYLLABLE GUT
+A1F3;W;YI SYLLABLE GUX
+A1F4;W;YI SYLLABLE GU
+A1F5;W;YI SYLLABLE GUP
+A1F6;W;YI SYLLABLE GURX
+A1F7;W;YI SYLLABLE GUR
+A1F8;W;YI SYLLABLE KIT
+A1F9;W;YI SYLLABLE KIX
+A1FA;W;YI SYLLABLE KI
+A1FB;W;YI SYLLABLE KIP
+A1FC;W;YI SYLLABLE KIEX
+A1FD;W;YI SYLLABLE KIE
+A1FE;W;YI SYLLABLE KIEP
+A1FF;W;YI SYLLABLE KAT
+A200;W;YI SYLLABLE KAX
+A201;W;YI SYLLABLE KA
+A202;W;YI SYLLABLE KAP
+A203;W;YI SYLLABLE KUOX
+A204;W;YI SYLLABLE KUO
+A205;W;YI SYLLABLE KUOP
+A206;W;YI SYLLABLE KOT
+A207;W;YI SYLLABLE KOX
+A208;W;YI SYLLABLE KO
+A209;W;YI SYLLABLE KOP
+A20A;W;YI SYLLABLE KET
+A20B;W;YI SYLLABLE KEX
+A20C;W;YI SYLLABLE KE
+A20D;W;YI SYLLABLE KEP
+A20E;W;YI SYLLABLE KUT
+A20F;W;YI SYLLABLE KUX
+A210;W;YI SYLLABLE KU
+A211;W;YI SYLLABLE KUP
+A212;W;YI SYLLABLE KURX
+A213;W;YI SYLLABLE KUR
+A214;W;YI SYLLABLE GGIT
+A215;W;YI SYLLABLE GGIX
+A216;W;YI SYLLABLE GGI
+A217;W;YI SYLLABLE GGIEX
+A218;W;YI SYLLABLE GGIE
+A219;W;YI SYLLABLE GGIEP
+A21A;W;YI SYLLABLE GGAT
+A21B;W;YI SYLLABLE GGAX
+A21C;W;YI SYLLABLE GGA
+A21D;W;YI SYLLABLE GGAP
+A21E;W;YI SYLLABLE GGUOT
+A21F;W;YI SYLLABLE GGUOX
+A220;W;YI SYLLABLE GGUO
+A221;W;YI SYLLABLE GGUOP
+A222;W;YI SYLLABLE GGOT
+A223;W;YI SYLLABLE GGOX
+A224;W;YI SYLLABLE GGO
+A225;W;YI SYLLABLE GGOP
+A226;W;YI SYLLABLE GGET
+A227;W;YI SYLLABLE GGEX
+A228;W;YI SYLLABLE GGE
+A229;W;YI SYLLABLE GGEP
+A22A;W;YI SYLLABLE GGUT
+A22B;W;YI SYLLABLE GGUX
+A22C;W;YI SYLLABLE GGU
+A22D;W;YI SYLLABLE GGUP
+A22E;W;YI SYLLABLE GGURX
+A22F;W;YI SYLLABLE GGUR
+A230;W;YI SYLLABLE MGIEX
+A231;W;YI SYLLABLE MGIE
+A232;W;YI SYLLABLE MGAT
+A233;W;YI SYLLABLE MGAX
+A234;W;YI SYLLABLE MGA
+A235;W;YI SYLLABLE MGAP
+A236;W;YI SYLLABLE MGUOX
+A237;W;YI SYLLABLE MGUO
+A238;W;YI SYLLABLE MGUOP
+A239;W;YI SYLLABLE MGOT
+A23A;W;YI SYLLABLE MGOX
+A23B;W;YI SYLLABLE MGO
+A23C;W;YI SYLLABLE MGOP
+A23D;W;YI SYLLABLE MGEX
+A23E;W;YI SYLLABLE MGE
+A23F;W;YI SYLLABLE MGEP
+A240;W;YI SYLLABLE MGUT
+A241;W;YI SYLLABLE MGUX
+A242;W;YI SYLLABLE MGU
+A243;W;YI SYLLABLE MGUP
+A244;W;YI SYLLABLE MGURX
+A245;W;YI SYLLABLE MGUR
+A246;W;YI SYLLABLE HXIT
+A247;W;YI SYLLABLE HXIX
+A248;W;YI SYLLABLE HXI
+A249;W;YI SYLLABLE HXIP
+A24A;W;YI SYLLABLE HXIET
+A24B;W;YI SYLLABLE HXIEX
+A24C;W;YI SYLLABLE HXIE
+A24D;W;YI SYLLABLE HXIEP
+A24E;W;YI SYLLABLE HXAT
+A24F;W;YI SYLLABLE HXAX
+A250;W;YI SYLLABLE HXA
+A251;W;YI SYLLABLE HXAP
+A252;W;YI SYLLABLE HXUOT
+A253;W;YI SYLLABLE HXUOX
+A254;W;YI SYLLABLE HXUO
+A255;W;YI SYLLABLE HXUOP
+A256;W;YI SYLLABLE HXOT
+A257;W;YI SYLLABLE HXOX
+A258;W;YI SYLLABLE HXO
+A259;W;YI SYLLABLE HXOP
+A25A;W;YI SYLLABLE HXEX
+A25B;W;YI SYLLABLE HXE
+A25C;W;YI SYLLABLE HXEP
+A25D;W;YI SYLLABLE NGIEX
+A25E;W;YI SYLLABLE NGIE
+A25F;W;YI SYLLABLE NGIEP
+A260;W;YI SYLLABLE NGAT
+A261;W;YI SYLLABLE NGAX
+A262;W;YI SYLLABLE NGA
+A263;W;YI SYLLABLE NGAP
+A264;W;YI SYLLABLE NGUOT
+A265;W;YI SYLLABLE NGUOX
+A266;W;YI SYLLABLE NGUO
+A267;W;YI SYLLABLE NGOT
+A268;W;YI SYLLABLE NGOX
+A269;W;YI SYLLABLE NGO
+A26A;W;YI SYLLABLE NGOP
+A26B;W;YI SYLLABLE NGEX
+A26C;W;YI SYLLABLE NGE
+A26D;W;YI SYLLABLE NGEP
+A26E;W;YI SYLLABLE HIT
+A26F;W;YI SYLLABLE HIEX
+A270;W;YI SYLLABLE HIE
+A271;W;YI SYLLABLE HAT
+A272;W;YI SYLLABLE HAX
+A273;W;YI SYLLABLE HA
+A274;W;YI SYLLABLE HAP
+A275;W;YI SYLLABLE HUOT
+A276;W;YI SYLLABLE HUOX
+A277;W;YI SYLLABLE HUO
+A278;W;YI SYLLABLE HUOP
+A279;W;YI SYLLABLE HOT
+A27A;W;YI SYLLABLE HOX
+A27B;W;YI SYLLABLE HO
+A27C;W;YI SYLLABLE HOP
+A27D;W;YI SYLLABLE HEX
+A27E;W;YI SYLLABLE HE
+A27F;W;YI SYLLABLE HEP
+A280;W;YI SYLLABLE WAT
+A281;W;YI SYLLABLE WAX
+A282;W;YI SYLLABLE WA
+A283;W;YI SYLLABLE WAP
+A284;W;YI SYLLABLE WUOX
+A285;W;YI SYLLABLE WUO
+A286;W;YI SYLLABLE WUOP
+A287;W;YI SYLLABLE WOX
+A288;W;YI SYLLABLE WO
+A289;W;YI SYLLABLE WOP
+A28A;W;YI SYLLABLE WEX
+A28B;W;YI SYLLABLE WE
+A28C;W;YI SYLLABLE WEP
+A28D;W;YI SYLLABLE ZIT
+A28E;W;YI SYLLABLE ZIX
+A28F;W;YI SYLLABLE ZI
+A290;W;YI SYLLABLE ZIP
+A291;W;YI SYLLABLE ZIEX
+A292;W;YI SYLLABLE ZIE
+A293;W;YI SYLLABLE ZIEP
+A294;W;YI SYLLABLE ZAT
+A295;W;YI SYLLABLE ZAX
+A296;W;YI SYLLABLE ZA
+A297;W;YI SYLLABLE ZAP
+A298;W;YI SYLLABLE ZUOX
+A299;W;YI SYLLABLE ZUO
+A29A;W;YI SYLLABLE ZUOP
+A29B;W;YI SYLLABLE ZOT
+A29C;W;YI SYLLABLE ZOX
+A29D;W;YI SYLLABLE ZO
+A29E;W;YI SYLLABLE ZOP
+A29F;W;YI SYLLABLE ZEX
+A2A0;W;YI SYLLABLE ZE
+A2A1;W;YI SYLLABLE ZEP
+A2A2;W;YI SYLLABLE ZUT
+A2A3;W;YI SYLLABLE ZUX
+A2A4;W;YI SYLLABLE ZU
+A2A5;W;YI SYLLABLE ZUP
+A2A6;W;YI SYLLABLE ZURX
+A2A7;W;YI SYLLABLE ZUR
+A2A8;W;YI SYLLABLE ZYT
+A2A9;W;YI SYLLABLE ZYX
+A2AA;W;YI SYLLABLE ZY
+A2AB;W;YI SYLLABLE ZYP
+A2AC;W;YI SYLLABLE ZYRX
+A2AD;W;YI SYLLABLE ZYR
+A2AE;W;YI SYLLABLE CIT
+A2AF;W;YI SYLLABLE CIX
+A2B0;W;YI SYLLABLE CI
+A2B1;W;YI SYLLABLE CIP
+A2B2;W;YI SYLLABLE CIET
+A2B3;W;YI SYLLABLE CIEX
+A2B4;W;YI SYLLABLE CIE
+A2B5;W;YI SYLLABLE CIEP
+A2B6;W;YI SYLLABLE CAT
+A2B7;W;YI SYLLABLE CAX
+A2B8;W;YI SYLLABLE CA
+A2B9;W;YI SYLLABLE CAP
+A2BA;W;YI SYLLABLE CUOX
+A2BB;W;YI SYLLABLE CUO
+A2BC;W;YI SYLLABLE CUOP
+A2BD;W;YI SYLLABLE COT
+A2BE;W;YI SYLLABLE COX
+A2BF;W;YI SYLLABLE CO
+A2C0;W;YI SYLLABLE COP
+A2C1;W;YI SYLLABLE CEX
+A2C2;W;YI SYLLABLE CE
+A2C3;W;YI SYLLABLE CEP
+A2C4;W;YI SYLLABLE CUT
+A2C5;W;YI SYLLABLE CUX
+A2C6;W;YI SYLLABLE CU
+A2C7;W;YI SYLLABLE CUP
+A2C8;W;YI SYLLABLE CURX
+A2C9;W;YI SYLLABLE CUR
+A2CA;W;YI SYLLABLE CYT
+A2CB;W;YI SYLLABLE CYX
+A2CC;W;YI SYLLABLE CY
+A2CD;W;YI SYLLABLE CYP
+A2CE;W;YI SYLLABLE CYRX
+A2CF;W;YI SYLLABLE CYR
+A2D0;W;YI SYLLABLE ZZIT
+A2D1;W;YI SYLLABLE ZZIX
+A2D2;W;YI SYLLABLE ZZI
+A2D3;W;YI SYLLABLE ZZIP
+A2D4;W;YI SYLLABLE ZZIET
+A2D5;W;YI SYLLABLE ZZIEX
+A2D6;W;YI SYLLABLE ZZIE
+A2D7;W;YI SYLLABLE ZZIEP
+A2D8;W;YI SYLLABLE ZZAT
+A2D9;W;YI SYLLABLE ZZAX
+A2DA;W;YI SYLLABLE ZZA
+A2DB;W;YI SYLLABLE ZZAP
+A2DC;W;YI SYLLABLE ZZOX
+A2DD;W;YI SYLLABLE ZZO
+A2DE;W;YI SYLLABLE ZZOP
+A2DF;W;YI SYLLABLE ZZEX
+A2E0;W;YI SYLLABLE ZZE
+A2E1;W;YI SYLLABLE ZZEP
+A2E2;W;YI SYLLABLE ZZUX
+A2E3;W;YI SYLLABLE ZZU
+A2E4;W;YI SYLLABLE ZZUP
+A2E5;W;YI SYLLABLE ZZURX
+A2E6;W;YI SYLLABLE ZZUR
+A2E7;W;YI SYLLABLE ZZYT
+A2E8;W;YI SYLLABLE ZZYX
+A2E9;W;YI SYLLABLE ZZY
+A2EA;W;YI SYLLABLE ZZYP
+A2EB;W;YI SYLLABLE ZZYRX
+A2EC;W;YI SYLLABLE ZZYR
+A2ED;W;YI SYLLABLE NZIT
+A2EE;W;YI SYLLABLE NZIX
+A2EF;W;YI SYLLABLE NZI
+A2F0;W;YI SYLLABLE NZIP
+A2F1;W;YI SYLLABLE NZIEX
+A2F2;W;YI SYLLABLE NZIE
+A2F3;W;YI SYLLABLE NZIEP
+A2F4;W;YI SYLLABLE NZAT
+A2F5;W;YI SYLLABLE NZAX
+A2F6;W;YI SYLLABLE NZA
+A2F7;W;YI SYLLABLE NZAP
+A2F8;W;YI SYLLABLE NZUOX
+A2F9;W;YI SYLLABLE NZUO
+A2FA;W;YI SYLLABLE NZOX
+A2FB;W;YI SYLLABLE NZOP
+A2FC;W;YI SYLLABLE NZEX
+A2FD;W;YI SYLLABLE NZE
+A2FE;W;YI SYLLABLE NZUX
+A2FF;W;YI SYLLABLE NZU
+A300;W;YI SYLLABLE NZUP
+A301;W;YI SYLLABLE NZURX
+A302;W;YI SYLLABLE NZUR
+A303;W;YI SYLLABLE NZYT
+A304;W;YI SYLLABLE NZYX
+A305;W;YI SYLLABLE NZY
+A306;W;YI SYLLABLE NZYP
+A307;W;YI SYLLABLE NZYRX
+A308;W;YI SYLLABLE NZYR
+A309;W;YI SYLLABLE SIT
+A30A;W;YI SYLLABLE SIX
+A30B;W;YI SYLLABLE SI
+A30C;W;YI SYLLABLE SIP
+A30D;W;YI SYLLABLE SIEX
+A30E;W;YI SYLLABLE SIE
+A30F;W;YI SYLLABLE SIEP
+A310;W;YI SYLLABLE SAT
+A311;W;YI SYLLABLE SAX
+A312;W;YI SYLLABLE SA
+A313;W;YI SYLLABLE SAP
+A314;W;YI SYLLABLE SUOX
+A315;W;YI SYLLABLE SUO
+A316;W;YI SYLLABLE SUOP
+A317;W;YI SYLLABLE SOT
+A318;W;YI SYLLABLE SOX
+A319;W;YI SYLLABLE SO
+A31A;W;YI SYLLABLE SOP
+A31B;W;YI SYLLABLE SEX
+A31C;W;YI SYLLABLE SE
+A31D;W;YI SYLLABLE SEP
+A31E;W;YI SYLLABLE SUT
+A31F;W;YI SYLLABLE SUX
+A320;W;YI SYLLABLE SU
+A321;W;YI SYLLABLE SUP
+A322;W;YI SYLLABLE SURX
+A323;W;YI SYLLABLE SUR
+A324;W;YI SYLLABLE SYT
+A325;W;YI SYLLABLE SYX
+A326;W;YI SYLLABLE SY
+A327;W;YI SYLLABLE SYP
+A328;W;YI SYLLABLE SYRX
+A329;W;YI SYLLABLE SYR
+A32A;W;YI SYLLABLE SSIT
+A32B;W;YI SYLLABLE SSIX
+A32C;W;YI SYLLABLE SSI
+A32D;W;YI SYLLABLE SSIP
+A32E;W;YI SYLLABLE SSIEX
+A32F;W;YI SYLLABLE SSIE
+A330;W;YI SYLLABLE SSIEP
+A331;W;YI SYLLABLE SSAT
+A332;W;YI SYLLABLE SSAX
+A333;W;YI SYLLABLE SSA
+A334;W;YI SYLLABLE SSAP
+A335;W;YI SYLLABLE SSOT
+A336;W;YI SYLLABLE SSOX
+A337;W;YI SYLLABLE SSO
+A338;W;YI SYLLABLE SSOP
+A339;W;YI SYLLABLE SSEX
+A33A;W;YI SYLLABLE SSE
+A33B;W;YI SYLLABLE SSEP
+A33C;W;YI SYLLABLE SSUT
+A33D;W;YI SYLLABLE SSUX
+A33E;W;YI SYLLABLE SSU
+A33F;W;YI SYLLABLE SSUP
+A340;W;YI SYLLABLE SSYT
+A341;W;YI SYLLABLE SSYX
+A342;W;YI SYLLABLE SSY
+A343;W;YI SYLLABLE SSYP
+A344;W;YI SYLLABLE SSYRX
+A345;W;YI SYLLABLE SSYR
+A346;W;YI SYLLABLE ZHAT
+A347;W;YI SYLLABLE ZHAX
+A348;W;YI SYLLABLE ZHA
+A349;W;YI SYLLABLE ZHAP
+A34A;W;YI SYLLABLE ZHUOX
+A34B;W;YI SYLLABLE ZHUO
+A34C;W;YI SYLLABLE ZHUOP
+A34D;W;YI SYLLABLE ZHOT
+A34E;W;YI SYLLABLE ZHOX
+A34F;W;YI SYLLABLE ZHO
+A350;W;YI SYLLABLE ZHOP
+A351;W;YI SYLLABLE ZHET
+A352;W;YI SYLLABLE ZHEX
+A353;W;YI SYLLABLE ZHE
+A354;W;YI SYLLABLE ZHEP
+A355;W;YI SYLLABLE ZHUT
+A356;W;YI SYLLABLE ZHUX
+A357;W;YI SYLLABLE ZHU
+A358;W;YI SYLLABLE ZHUP
+A359;W;YI SYLLABLE ZHURX
+A35A;W;YI SYLLABLE ZHUR
+A35B;W;YI SYLLABLE ZHYT
+A35C;W;YI SYLLABLE ZHYX
+A35D;W;YI SYLLABLE ZHY
+A35E;W;YI SYLLABLE ZHYP
+A35F;W;YI SYLLABLE ZHYRX
+A360;W;YI SYLLABLE ZHYR
+A361;W;YI SYLLABLE CHAT
+A362;W;YI SYLLABLE CHAX
+A363;W;YI SYLLABLE CHA
+A364;W;YI SYLLABLE CHAP
+A365;W;YI SYLLABLE CHUOT
+A366;W;YI SYLLABLE CHUOX
+A367;W;YI SYLLABLE CHUO
+A368;W;YI SYLLABLE CHUOP
+A369;W;YI SYLLABLE CHOT
+A36A;W;YI SYLLABLE CHOX
+A36B;W;YI SYLLABLE CHO
+A36C;W;YI SYLLABLE CHOP
+A36D;W;YI SYLLABLE CHET
+A36E;W;YI SYLLABLE CHEX
+A36F;W;YI SYLLABLE CHE
+A370;W;YI SYLLABLE CHEP
+A371;W;YI SYLLABLE CHUX
+A372;W;YI SYLLABLE CHU
+A373;W;YI SYLLABLE CHUP
+A374;W;YI SYLLABLE CHURX
+A375;W;YI SYLLABLE CHUR
+A376;W;YI SYLLABLE CHYT
+A377;W;YI SYLLABLE CHYX
+A378;W;YI SYLLABLE CHY
+A379;W;YI SYLLABLE CHYP
+A37A;W;YI SYLLABLE CHYRX
+A37B;W;YI SYLLABLE CHYR
+A37C;W;YI SYLLABLE RRAX
+A37D;W;YI SYLLABLE RRA
+A37E;W;YI SYLLABLE RRUOX
+A37F;W;YI SYLLABLE RRUO
+A380;W;YI SYLLABLE RROT
+A381;W;YI SYLLABLE RROX
+A382;W;YI SYLLABLE RRO
+A383;W;YI SYLLABLE RROP
+A384;W;YI SYLLABLE RRET
+A385;W;YI SYLLABLE RREX
+A386;W;YI SYLLABLE RRE
+A387;W;YI SYLLABLE RREP
+A388;W;YI SYLLABLE RRUT
+A389;W;YI SYLLABLE RRUX
+A38A;W;YI SYLLABLE RRU
+A38B;W;YI SYLLABLE RRUP
+A38C;W;YI SYLLABLE RRURX
+A38D;W;YI SYLLABLE RRUR
+A38E;W;YI SYLLABLE RRYT
+A38F;W;YI SYLLABLE RRYX
+A390;W;YI SYLLABLE RRY
+A391;W;YI SYLLABLE RRYP
+A392;W;YI SYLLABLE RRYRX
+A393;W;YI SYLLABLE RRYR
+A394;W;YI SYLLABLE NRAT
+A395;W;YI SYLLABLE NRAX
+A396;W;YI SYLLABLE NRA
+A397;W;YI SYLLABLE NRAP
+A398;W;YI SYLLABLE NROX
+A399;W;YI SYLLABLE NRO
+A39A;W;YI SYLLABLE NROP
+A39B;W;YI SYLLABLE NRET
+A39C;W;YI SYLLABLE NREX
+A39D;W;YI SYLLABLE NRE
+A39E;W;YI SYLLABLE NREP
+A39F;W;YI SYLLABLE NRUT
+A3A0;W;YI SYLLABLE NRUX
+A3A1;W;YI SYLLABLE NRU
+A3A2;W;YI SYLLABLE NRUP
+A3A3;W;YI SYLLABLE NRURX
+A3A4;W;YI SYLLABLE NRUR
+A3A5;W;YI SYLLABLE NRYT
+A3A6;W;YI SYLLABLE NRYX
+A3A7;W;YI SYLLABLE NRY
+A3A8;W;YI SYLLABLE NRYP
+A3A9;W;YI SYLLABLE NRYRX
+A3AA;W;YI SYLLABLE NRYR
+A3AB;W;YI SYLLABLE SHAT
+A3AC;W;YI SYLLABLE SHAX
+A3AD;W;YI SYLLABLE SHA
+A3AE;W;YI SYLLABLE SHAP
+A3AF;W;YI SYLLABLE SHUOX
+A3B0;W;YI SYLLABLE SHUO
+A3B1;W;YI SYLLABLE SHUOP
+A3B2;W;YI SYLLABLE SHOT
+A3B3;W;YI SYLLABLE SHOX
+A3B4;W;YI SYLLABLE SHO
+A3B5;W;YI SYLLABLE SHOP
+A3B6;W;YI SYLLABLE SHET
+A3B7;W;YI SYLLABLE SHEX
+A3B8;W;YI SYLLABLE SHE
+A3B9;W;YI SYLLABLE SHEP
+A3BA;W;YI SYLLABLE SHUT
+A3BB;W;YI SYLLABLE SHUX
+A3BC;W;YI SYLLABLE SHU
+A3BD;W;YI SYLLABLE SHUP
+A3BE;W;YI SYLLABLE SHURX
+A3BF;W;YI SYLLABLE SHUR
+A3C0;W;YI SYLLABLE SHYT
+A3C1;W;YI SYLLABLE SHYX
+A3C2;W;YI SYLLABLE SHY
+A3C3;W;YI SYLLABLE SHYP
+A3C4;W;YI SYLLABLE SHYRX
+A3C5;W;YI SYLLABLE SHYR
+A3C6;W;YI SYLLABLE RAT
+A3C7;W;YI SYLLABLE RAX
+A3C8;W;YI SYLLABLE RA
+A3C9;W;YI SYLLABLE RAP
+A3CA;W;YI SYLLABLE RUOX
+A3CB;W;YI SYLLABLE RUO
+A3CC;W;YI SYLLABLE RUOP
+A3CD;W;YI SYLLABLE ROT
+A3CE;W;YI SYLLABLE ROX
+A3CF;W;YI SYLLABLE RO
+A3D0;W;YI SYLLABLE ROP
+A3D1;W;YI SYLLABLE REX
+A3D2;W;YI SYLLABLE RE
+A3D3;W;YI SYLLABLE REP
+A3D4;W;YI SYLLABLE RUT
+A3D5;W;YI SYLLABLE RUX
+A3D6;W;YI SYLLABLE RU
+A3D7;W;YI SYLLABLE RUP
+A3D8;W;YI SYLLABLE RURX
+A3D9;W;YI SYLLABLE RUR
+A3DA;W;YI SYLLABLE RYT
+A3DB;W;YI SYLLABLE RYX
+A3DC;W;YI SYLLABLE RY
+A3DD;W;YI SYLLABLE RYP
+A3DE;W;YI SYLLABLE RYRX
+A3DF;W;YI SYLLABLE RYR
+A3E0;W;YI SYLLABLE JIT
+A3E1;W;YI SYLLABLE JIX
+A3E2;W;YI SYLLABLE JI
+A3E3;W;YI SYLLABLE JIP
+A3E4;W;YI SYLLABLE JIET
+A3E5;W;YI SYLLABLE JIEX
+A3E6;W;YI SYLLABLE JIE
+A3E7;W;YI SYLLABLE JIEP
+A3E8;W;YI SYLLABLE JUOT
+A3E9;W;YI SYLLABLE JUOX
+A3EA;W;YI SYLLABLE JUO
+A3EB;W;YI SYLLABLE JUOP
+A3EC;W;YI SYLLABLE JOT
+A3ED;W;YI SYLLABLE JOX
+A3EE;W;YI SYLLABLE JO
+A3EF;W;YI SYLLABLE JOP
+A3F0;W;YI SYLLABLE JUT
+A3F1;W;YI SYLLABLE JUX
+A3F2;W;YI SYLLABLE JU
+A3F3;W;YI SYLLABLE JUP
+A3F4;W;YI SYLLABLE JURX
+A3F5;W;YI SYLLABLE JUR
+A3F6;W;YI SYLLABLE JYT
+A3F7;W;YI SYLLABLE JYX
+A3F8;W;YI SYLLABLE JY
+A3F9;W;YI SYLLABLE JYP
+A3FA;W;YI SYLLABLE JYRX
+A3FB;W;YI SYLLABLE JYR
+A3FC;W;YI SYLLABLE QIT
+A3FD;W;YI SYLLABLE QIX
+A3FE;W;YI SYLLABLE QI
+A3FF;W;YI SYLLABLE QIP
+A400;W;YI SYLLABLE QIET
+A401;W;YI SYLLABLE QIEX
+A402;W;YI SYLLABLE QIE
+A403;W;YI SYLLABLE QIEP
+A404;W;YI SYLLABLE QUOT
+A405;W;YI SYLLABLE QUOX
+A406;W;YI SYLLABLE QUO
+A407;W;YI SYLLABLE QUOP
+A408;W;YI SYLLABLE QOT
+A409;W;YI SYLLABLE QOX
+A40A;W;YI SYLLABLE QO
+A40B;W;YI SYLLABLE QOP
+A40C;W;YI SYLLABLE QUT
+A40D;W;YI SYLLABLE QUX
+A40E;W;YI SYLLABLE QU
+A40F;W;YI SYLLABLE QUP
+A410;W;YI SYLLABLE QURX
+A411;W;YI SYLLABLE QUR
+A412;W;YI SYLLABLE QYT
+A413;W;YI SYLLABLE QYX
+A414;W;YI SYLLABLE QY
+A415;W;YI SYLLABLE QYP
+A416;W;YI SYLLABLE QYRX
+A417;W;YI SYLLABLE QYR
+A418;W;YI SYLLABLE JJIT
+A419;W;YI SYLLABLE JJIX
+A41A;W;YI SYLLABLE JJI
+A41B;W;YI SYLLABLE JJIP
+A41C;W;YI SYLLABLE JJIET
+A41D;W;YI SYLLABLE JJIEX
+A41E;W;YI SYLLABLE JJIE
+A41F;W;YI SYLLABLE JJIEP
+A420;W;YI SYLLABLE JJUOX
+A421;W;YI SYLLABLE JJUO
+A422;W;YI SYLLABLE JJUOP
+A423;W;YI SYLLABLE JJOT
+A424;W;YI SYLLABLE JJOX
+A425;W;YI SYLLABLE JJO
+A426;W;YI SYLLABLE JJOP
+A427;W;YI SYLLABLE JJUT
+A428;W;YI SYLLABLE JJUX
+A429;W;YI SYLLABLE JJU
+A42A;W;YI SYLLABLE JJUP
+A42B;W;YI SYLLABLE JJURX
+A42C;W;YI SYLLABLE JJUR
+A42D;W;YI SYLLABLE JJYT
+A42E;W;YI SYLLABLE JJYX
+A42F;W;YI SYLLABLE JJY
+A430;W;YI SYLLABLE JJYP
+A431;W;YI SYLLABLE NJIT
+A432;W;YI SYLLABLE NJIX
+A433;W;YI SYLLABLE NJI
+A434;W;YI SYLLABLE NJIP
+A435;W;YI SYLLABLE NJIET
+A436;W;YI SYLLABLE NJIEX
+A437;W;YI SYLLABLE NJIE
+A438;W;YI SYLLABLE NJIEP
+A439;W;YI SYLLABLE NJUOX
+A43A;W;YI SYLLABLE NJUO
+A43B;W;YI SYLLABLE NJOT
+A43C;W;YI SYLLABLE NJOX
+A43D;W;YI SYLLABLE NJO
+A43E;W;YI SYLLABLE NJOP
+A43F;W;YI SYLLABLE NJUX
+A440;W;YI SYLLABLE NJU
+A441;W;YI SYLLABLE NJUP
+A442;W;YI SYLLABLE NJURX
+A443;W;YI SYLLABLE NJUR
+A444;W;YI SYLLABLE NJYT
+A445;W;YI SYLLABLE NJYX
+A446;W;YI SYLLABLE NJY
+A447;W;YI SYLLABLE NJYP
+A448;W;YI SYLLABLE NJYRX
+A449;W;YI SYLLABLE NJYR
+A44A;W;YI SYLLABLE NYIT
+A44B;W;YI SYLLABLE NYIX
+A44C;W;YI SYLLABLE NYI
+A44D;W;YI SYLLABLE NYIP
+A44E;W;YI SYLLABLE NYIET
+A44F;W;YI SYLLABLE NYIEX
+A450;W;YI SYLLABLE NYIE
+A451;W;YI SYLLABLE NYIEP
+A452;W;YI SYLLABLE NYUOX
+A453;W;YI SYLLABLE NYUO
+A454;W;YI SYLLABLE NYUOP
+A455;W;YI SYLLABLE NYOT
+A456;W;YI SYLLABLE NYOX
+A457;W;YI SYLLABLE NYO
+A458;W;YI SYLLABLE NYOP
+A459;W;YI SYLLABLE NYUT
+A45A;W;YI SYLLABLE NYUX
+A45B;W;YI SYLLABLE NYU
+A45C;W;YI SYLLABLE NYUP
+A45D;W;YI SYLLABLE XIT
+A45E;W;YI SYLLABLE XIX
+A45F;W;YI SYLLABLE XI
+A460;W;YI SYLLABLE XIP
+A461;W;YI SYLLABLE XIET
+A462;W;YI SYLLABLE XIEX
+A463;W;YI SYLLABLE XIE
+A464;W;YI SYLLABLE XIEP
+A465;W;YI SYLLABLE XUOX
+A466;W;YI SYLLABLE XUO
+A467;W;YI SYLLABLE XOT
+A468;W;YI SYLLABLE XOX
+A469;W;YI SYLLABLE XO
+A46A;W;YI SYLLABLE XOP
+A46B;W;YI SYLLABLE XYT
+A46C;W;YI SYLLABLE XYX
+A46D;W;YI SYLLABLE XY
+A46E;W;YI SYLLABLE XYP
+A46F;W;YI SYLLABLE XYRX
+A470;W;YI SYLLABLE XYR
+A471;W;YI SYLLABLE YIT
+A472;W;YI SYLLABLE YIX
+A473;W;YI SYLLABLE YI
+A474;W;YI SYLLABLE YIP
+A475;W;YI SYLLABLE YIET
+A476;W;YI SYLLABLE YIEX
+A477;W;YI SYLLABLE YIE
+A478;W;YI SYLLABLE YIEP
+A479;W;YI SYLLABLE YUOT
+A47A;W;YI SYLLABLE YUOX
+A47B;W;YI SYLLABLE YUO
+A47C;W;YI SYLLABLE YUOP
+A47D;W;YI SYLLABLE YOT
+A47E;W;YI SYLLABLE YOX
+A47F;W;YI SYLLABLE YO
+A480;W;YI SYLLABLE YOP
+A481;W;YI SYLLABLE YUT
+A482;W;YI SYLLABLE YUX
+A483;W;YI SYLLABLE YU
+A484;W;YI SYLLABLE YUP
+A485;W;YI SYLLABLE YURX
+A486;W;YI SYLLABLE YUR
+A487;W;YI SYLLABLE YYT
+A488;W;YI SYLLABLE YYX
+A489;W;YI SYLLABLE YY
+A48A;W;YI SYLLABLE YYP
+A48B;W;YI SYLLABLE YYRX
+A48C;W;YI SYLLABLE YYR
+A490;W;YI RADICAL QOT
+A491;W;YI RADICAL LI
+A492;W;YI RADICAL KIT
+A493;W;YI RADICAL NYIP
+A494;W;YI RADICAL CYP
+A495;W;YI RADICAL SSI
+A496;W;YI RADICAL GGOP
+A497;W;YI RADICAL GEP
+A498;W;YI RADICAL MI
+A499;W;YI RADICAL HXIT
+A49A;W;YI RADICAL LYR
+A49B;W;YI RADICAL BBUT
+A49C;W;YI RADICAL MOP
+A49D;W;YI RADICAL YO
+A49E;W;YI RADICAL PUT
+A49F;W;YI RADICAL HXUO
+A4A0;W;YI RADICAL TAT
+A4A1;W;YI RADICAL GA
+A4A4;W;YI RADICAL DDUR
+A4A5;W;YI RADICAL BUR
+A4A6;W;YI RADICAL GGUO
+A4A7;W;YI RADICAL NYOP
+A4A8;W;YI RADICAL TU
+A4A9;W;YI RADICAL OP
+A4AA;W;YI RADICAL JJUT
+A4AB;W;YI RADICAL ZOT
+A4AC;W;YI RADICAL PYT
+A4AD;W;YI RADICAL HMO
+A4AE;W;YI RADICAL YIT
+A4AF;W;YI RADICAL VUR
+A4B0;W;YI RADICAL SHY
+A4B1;W;YI RADICAL VEP
+A4B2;W;YI RADICAL ZA
+A4B3;W;YI RADICAL JO
+A4B5;W;YI RADICAL JJY
+A4B6;W;YI RADICAL GOT
+A4B7;W;YI RADICAL JJIE
+A4B8;W;YI RADICAL WO
+A4B9;W;YI RADICAL DU
+A4BA;W;YI RADICAL SHUR
+A4BB;W;YI RADICAL LIE
+A4BC;W;YI RADICAL CY
+A4BD;W;YI RADICAL CUOP
+A4BE;W;YI RADICAL CIP
+A4BF;W;YI RADICAL HXOP
+A4C0;W;YI RADICAL SHAT
+A4C2;W;YI RADICAL SHOP
+A4C3;W;YI RADICAL CHE
+A4C4;W;YI RADICAL ZZIET
+A4C6;W;YI RADICAL KE
+AC00;W;<Hangul Syllable, First>
+D7A3;W;<Hangul Syllable, Last>
+D800;N;<Non Private Use High Surrogate, First>
+DB7F;N;<Non Private Use High Surrogate, Last>
+DB80;N;<Private Use High Surrogate, First>
+DBFF;N;<Private Use High Surrogate, Last>
+DC00;N;<Low Surrogate, First>
+DFFF;N;<Low Surrogate, Last>
+E000;A;<Private Use, First>
+F8FF;A;<Private Use, Last>
+F900;W;CJK COMPATIBILITY IDEOGRAPH-F900
+F901;W;CJK COMPATIBILITY IDEOGRAPH-F901
+F902;W;CJK COMPATIBILITY IDEOGRAPH-F902
+F903;W;CJK COMPATIBILITY IDEOGRAPH-F903
+F904;W;CJK COMPATIBILITY IDEOGRAPH-F904
+F905;W;CJK COMPATIBILITY IDEOGRAPH-F905
+F906;W;CJK COMPATIBILITY IDEOGRAPH-F906
+F907;W;CJK COMPATIBILITY IDEOGRAPH-F907
+F908;W;CJK COMPATIBILITY IDEOGRAPH-F908
+F909;W;CJK COMPATIBILITY IDEOGRAPH-F909
+F90A;W;CJK COMPATIBILITY IDEOGRAPH-F90A
+F90B;W;CJK COMPATIBILITY IDEOGRAPH-F90B
+F90C;W;CJK COMPATIBILITY IDEOGRAPH-F90C
+F90D;W;CJK COMPATIBILITY IDEOGRAPH-F90D
+F90E;W;CJK COMPATIBILITY IDEOGRAPH-F90E
+F90F;W;CJK COMPATIBILITY IDEOGRAPH-F90F
+F910;W;CJK COMPATIBILITY IDEOGRAPH-F910
+F911;W;CJK COMPATIBILITY IDEOGRAPH-F911
+F912;W;CJK COMPATIBILITY IDEOGRAPH-F912
+F913;W;CJK COMPATIBILITY IDEOGRAPH-F913
+F914;W;CJK COMPATIBILITY IDEOGRAPH-F914
+F915;W;CJK COMPATIBILITY IDEOGRAPH-F915
+F916;W;CJK COMPATIBILITY IDEOGRAPH-F916
+F917;W;CJK COMPATIBILITY IDEOGRAPH-F917
+F918;W;CJK COMPATIBILITY IDEOGRAPH-F918
+F919;W;CJK COMPATIBILITY IDEOGRAPH-F919
+F91A;W;CJK COMPATIBILITY IDEOGRAPH-F91A
+F91B;W;CJK COMPATIBILITY IDEOGRAPH-F91B
+F91C;W;CJK COMPATIBILITY IDEOGRAPH-F91C
+F91D;W;CJK COMPATIBILITY IDEOGRAPH-F91D
+F91E;W;CJK COMPATIBILITY IDEOGRAPH-F91E
+F91F;W;CJK COMPATIBILITY IDEOGRAPH-F91F
+F920;W;CJK COMPATIBILITY IDEOGRAPH-F920
+F921;W;CJK COMPATIBILITY IDEOGRAPH-F921
+F922;W;CJK COMPATIBILITY IDEOGRAPH-F922
+F923;W;CJK COMPATIBILITY IDEOGRAPH-F923
+F924;W;CJK COMPATIBILITY IDEOGRAPH-F924
+F925;W;CJK COMPATIBILITY IDEOGRAPH-F925
+F926;W;CJK COMPATIBILITY IDEOGRAPH-F926
+F927;W;CJK COMPATIBILITY IDEOGRAPH-F927
+F928;W;CJK COMPATIBILITY IDEOGRAPH-F928
+F929;W;CJK COMPATIBILITY IDEOGRAPH-F929
+F92A;W;CJK COMPATIBILITY IDEOGRAPH-F92A
+F92B;W;CJK COMPATIBILITY IDEOGRAPH-F92B
+F92C;W;CJK COMPATIBILITY IDEOGRAPH-F92C
+F92D;W;CJK COMPATIBILITY IDEOGRAPH-F92D
+F92E;W;CJK COMPATIBILITY IDEOGRAPH-F92E
+F92F;W;CJK COMPATIBILITY IDEOGRAPH-F92F
+F930;W;CJK COMPATIBILITY IDEOGRAPH-F930
+F931;W;CJK COMPATIBILITY IDEOGRAPH-F931
+F932;W;CJK COMPATIBILITY IDEOGRAPH-F932
+F933;W;CJK COMPATIBILITY IDEOGRAPH-F933
+F934;W;CJK COMPATIBILITY IDEOGRAPH-F934
+F935;W;CJK COMPATIBILITY IDEOGRAPH-F935
+F936;W;CJK COMPATIBILITY IDEOGRAPH-F936
+F937;W;CJK COMPATIBILITY IDEOGRAPH-F937
+F938;W;CJK COMPATIBILITY IDEOGRAPH-F938
+F939;W;CJK COMPATIBILITY IDEOGRAPH-F939
+F93A;W;CJK COMPATIBILITY IDEOGRAPH-F93A
+F93B;W;CJK COMPATIBILITY IDEOGRAPH-F93B
+F93C;W;CJK COMPATIBILITY IDEOGRAPH-F93C
+F93D;W;CJK COMPATIBILITY IDEOGRAPH-F93D
+F93E;W;CJK COMPATIBILITY IDEOGRAPH-F93E
+F93F;W;CJK COMPATIBILITY IDEOGRAPH-F93F
+F940;W;CJK COMPATIBILITY IDEOGRAPH-F940
+F941;W;CJK COMPATIBILITY IDEOGRAPH-F941
+F942;W;CJK COMPATIBILITY IDEOGRAPH-F942
+F943;W;CJK COMPATIBILITY IDEOGRAPH-F943
+F944;W;CJK COMPATIBILITY IDEOGRAPH-F944
+F945;W;CJK COMPATIBILITY IDEOGRAPH-F945
+F946;W;CJK COMPATIBILITY IDEOGRAPH-F946
+F947;W;CJK COMPATIBILITY IDEOGRAPH-F947
+F948;W;CJK COMPATIBILITY IDEOGRAPH-F948
+F949;W;CJK COMPATIBILITY IDEOGRAPH-F949
+F94A;W;CJK COMPATIBILITY IDEOGRAPH-F94A
+F94B;W;CJK COMPATIBILITY IDEOGRAPH-F94B
+F94C;W;CJK COMPATIBILITY IDEOGRAPH-F94C
+F94D;W;CJK COMPATIBILITY IDEOGRAPH-F94D
+F94E;W;CJK COMPATIBILITY IDEOGRAPH-F94E
+F94F;W;CJK COMPATIBILITY IDEOGRAPH-F94F
+F950;W;CJK COMPATIBILITY IDEOGRAPH-F950
+F951;W;CJK COMPATIBILITY IDEOGRAPH-F951
+F952;W;CJK COMPATIBILITY IDEOGRAPH-F952
+F953;W;CJK COMPATIBILITY IDEOGRAPH-F953
+F954;W;CJK COMPATIBILITY IDEOGRAPH-F954
+F955;W;CJK COMPATIBILITY IDEOGRAPH-F955
+F956;W;CJK COMPATIBILITY IDEOGRAPH-F956
+F957;W;CJK COMPATIBILITY IDEOGRAPH-F957
+F958;W;CJK COMPATIBILITY IDEOGRAPH-F958
+F959;W;CJK COMPATIBILITY IDEOGRAPH-F959
+F95A;W;CJK COMPATIBILITY IDEOGRAPH-F95A
+F95B;W;CJK COMPATIBILITY IDEOGRAPH-F95B
+F95C;W;CJK COMPATIBILITY IDEOGRAPH-F95C
+F95D;W;CJK COMPATIBILITY IDEOGRAPH-F95D
+F95E;W;CJK COMPATIBILITY IDEOGRAPH-F95E
+F95F;W;CJK COMPATIBILITY IDEOGRAPH-F95F
+F960;W;CJK COMPATIBILITY IDEOGRAPH-F960
+F961;W;CJK COMPATIBILITY IDEOGRAPH-F961
+F962;W;CJK COMPATIBILITY IDEOGRAPH-F962
+F963;W;CJK COMPATIBILITY IDEOGRAPH-F963
+F964;W;CJK COMPATIBILITY IDEOGRAPH-F964
+F965;W;CJK COMPATIBILITY IDEOGRAPH-F965
+F966;W;CJK COMPATIBILITY IDEOGRAPH-F966
+F967;W;CJK COMPATIBILITY IDEOGRAPH-F967
+F968;W;CJK COMPATIBILITY IDEOGRAPH-F968
+F969;W;CJK COMPATIBILITY IDEOGRAPH-F969
+F96A;W;CJK COMPATIBILITY IDEOGRAPH-F96A
+F96B;W;CJK COMPATIBILITY IDEOGRAPH-F96B
+F96C;W;CJK COMPATIBILITY IDEOGRAPH-F96C
+F96D;W;CJK COMPATIBILITY IDEOGRAPH-F96D
+F96E;W;CJK COMPATIBILITY IDEOGRAPH-F96E
+F96F;W;CJK COMPATIBILITY IDEOGRAPH-F96F
+F970;W;CJK COMPATIBILITY IDEOGRAPH-F970
+F971;W;CJK COMPATIBILITY IDEOGRAPH-F971
+F972;W;CJK COMPATIBILITY IDEOGRAPH-F972
+F973;W;CJK COMPATIBILITY IDEOGRAPH-F973
+F974;W;CJK COMPATIBILITY IDEOGRAPH-F974
+F975;W;CJK COMPATIBILITY IDEOGRAPH-F975
+F976;W;CJK COMPATIBILITY IDEOGRAPH-F976
+F977;W;CJK COMPATIBILITY IDEOGRAPH-F977
+F978;W;CJK COMPATIBILITY IDEOGRAPH-F978
+F979;W;CJK COMPATIBILITY IDEOGRAPH-F979
+F97A;W;CJK COMPATIBILITY IDEOGRAPH-F97A
+F97B;W;CJK COMPATIBILITY IDEOGRAPH-F97B
+F97C;W;CJK COMPATIBILITY IDEOGRAPH-F97C
+F97D;W;CJK COMPATIBILITY IDEOGRAPH-F97D
+F97E;W;CJK COMPATIBILITY IDEOGRAPH-F97E
+F97F;W;CJK COMPATIBILITY IDEOGRAPH-F97F
+F980;W;CJK COMPATIBILITY IDEOGRAPH-F980
+F981;W;CJK COMPATIBILITY IDEOGRAPH-F981
+F982;W;CJK COMPATIBILITY IDEOGRAPH-F982
+F983;W;CJK COMPATIBILITY IDEOGRAPH-F983
+F984;W;CJK COMPATIBILITY IDEOGRAPH-F984
+F985;W;CJK COMPATIBILITY IDEOGRAPH-F985
+F986;W;CJK COMPATIBILITY IDEOGRAPH-F986
+F987;W;CJK COMPATIBILITY IDEOGRAPH-F987
+F988;W;CJK COMPATIBILITY IDEOGRAPH-F988
+F989;W;CJK COMPATIBILITY IDEOGRAPH-F989
+F98A;W;CJK COMPATIBILITY IDEOGRAPH-F98A
+F98B;W;CJK COMPATIBILITY IDEOGRAPH-F98B
+F98C;W;CJK COMPATIBILITY IDEOGRAPH-F98C
+F98D;W;CJK COMPATIBILITY IDEOGRAPH-F98D
+F98E;W;CJK COMPATIBILITY IDEOGRAPH-F98E
+F98F;W;CJK COMPATIBILITY IDEOGRAPH-F98F
+F990;W;CJK COMPATIBILITY IDEOGRAPH-F990
+F991;W;CJK COMPATIBILITY IDEOGRAPH-F991
+F992;W;CJK COMPATIBILITY IDEOGRAPH-F992
+F993;W;CJK COMPATIBILITY IDEOGRAPH-F993
+F994;W;CJK COMPATIBILITY IDEOGRAPH-F994
+F995;W;CJK COMPATIBILITY IDEOGRAPH-F995
+F996;W;CJK COMPATIBILITY IDEOGRAPH-F996
+F997;W;CJK COMPATIBILITY IDEOGRAPH-F997
+F998;W;CJK COMPATIBILITY IDEOGRAPH-F998
+F999;W;CJK COMPATIBILITY IDEOGRAPH-F999
+F99A;W;CJK COMPATIBILITY IDEOGRAPH-F99A
+F99B;W;CJK COMPATIBILITY IDEOGRAPH-F99B
+F99C;W;CJK COMPATIBILITY IDEOGRAPH-F99C
+F99D;W;CJK COMPATIBILITY IDEOGRAPH-F99D
+F99E;W;CJK COMPATIBILITY IDEOGRAPH-F99E
+F99F;W;CJK COMPATIBILITY IDEOGRAPH-F99F
+F9A0;W;CJK COMPATIBILITY IDEOGRAPH-F9A0
+F9A1;W;CJK COMPATIBILITY IDEOGRAPH-F9A1
+F9A2;W;CJK COMPATIBILITY IDEOGRAPH-F9A2
+F9A3;W;CJK COMPATIBILITY IDEOGRAPH-F9A3
+F9A4;W;CJK COMPATIBILITY IDEOGRAPH-F9A4
+F9A5;W;CJK COMPATIBILITY IDEOGRAPH-F9A5
+F9A6;W;CJK COMPATIBILITY IDEOGRAPH-F9A6
+F9A7;W;CJK COMPATIBILITY IDEOGRAPH-F9A7
+F9A8;W;CJK COMPATIBILITY IDEOGRAPH-F9A8
+F9A9;W;CJK COMPATIBILITY IDEOGRAPH-F9A9
+F9AA;W;CJK COMPATIBILITY IDEOGRAPH-F9AA
+F9AB;W;CJK COMPATIBILITY IDEOGRAPH-F9AB
+F9AC;W;CJK COMPATIBILITY IDEOGRAPH-F9AC
+F9AD;W;CJK COMPATIBILITY IDEOGRAPH-F9AD
+F9AE;W;CJK COMPATIBILITY IDEOGRAPH-F9AE
+F9AF;W;CJK COMPATIBILITY IDEOGRAPH-F9AF
+F9B0;W;CJK COMPATIBILITY IDEOGRAPH-F9B0
+F9B1;W;CJK COMPATIBILITY IDEOGRAPH-F9B1
+F9B2;W;CJK COMPATIBILITY IDEOGRAPH-F9B2
+F9B3;W;CJK COMPATIBILITY IDEOGRAPH-F9B3
+F9B4;W;CJK COMPATIBILITY IDEOGRAPH-F9B4
+F9B5;W;CJK COMPATIBILITY IDEOGRAPH-F9B5
+F9B6;W;CJK COMPATIBILITY IDEOGRAPH-F9B6
+F9B7;W;CJK COMPATIBILITY IDEOGRAPH-F9B7
+F9B8;W;CJK COMPATIBILITY IDEOGRAPH-F9B8
+F9B9;W;CJK COMPATIBILITY IDEOGRAPH-F9B9
+F9BA;W;CJK COMPATIBILITY IDEOGRAPH-F9BA
+F9BB;W;CJK COMPATIBILITY IDEOGRAPH-F9BB
+F9BC;W;CJK COMPATIBILITY IDEOGRAPH-F9BC
+F9BD;W;CJK COMPATIBILITY IDEOGRAPH-F9BD
+F9BE;W;CJK COMPATIBILITY IDEOGRAPH-F9BE
+F9BF;W;CJK COMPATIBILITY IDEOGRAPH-F9BF
+F9C0;W;CJK COMPATIBILITY IDEOGRAPH-F9C0
+F9C1;W;CJK COMPATIBILITY IDEOGRAPH-F9C1
+F9C2;W;CJK COMPATIBILITY IDEOGRAPH-F9C2
+F9C3;W;CJK COMPATIBILITY IDEOGRAPH-F9C3
+F9C4;W;CJK COMPATIBILITY IDEOGRAPH-F9C4
+F9C5;W;CJK COMPATIBILITY IDEOGRAPH-F9C5
+F9C6;W;CJK COMPATIBILITY IDEOGRAPH-F9C6
+F9C7;W;CJK COMPATIBILITY IDEOGRAPH-F9C7
+F9C8;W;CJK COMPATIBILITY IDEOGRAPH-F9C8
+F9C9;W;CJK COMPATIBILITY IDEOGRAPH-F9C9
+F9CA;W;CJK COMPATIBILITY IDEOGRAPH-F9CA
+F9CB;W;CJK COMPATIBILITY IDEOGRAPH-F9CB
+F9CC;W;CJK COMPATIBILITY IDEOGRAPH-F9CC
+F9CD;W;CJK COMPATIBILITY IDEOGRAPH-F9CD
+F9CE;W;CJK COMPATIBILITY IDEOGRAPH-F9CE
+F9CF;W;CJK COMPATIBILITY IDEOGRAPH-F9CF
+F9D0;W;CJK COMPATIBILITY IDEOGRAPH-F9D0
+F9D1;W;CJK COMPATIBILITY IDEOGRAPH-F9D1
+F9D2;W;CJK COMPATIBILITY IDEOGRAPH-F9D2
+F9D3;W;CJK COMPATIBILITY IDEOGRAPH-F9D3
+F9D4;W;CJK COMPATIBILITY IDEOGRAPH-F9D4
+F9D5;W;CJK COMPATIBILITY IDEOGRAPH-F9D5
+F9D6;W;CJK COMPATIBILITY IDEOGRAPH-F9D6
+F9D7;W;CJK COMPATIBILITY IDEOGRAPH-F9D7
+F9D8;W;CJK COMPATIBILITY IDEOGRAPH-F9D8
+F9D9;W;CJK COMPATIBILITY IDEOGRAPH-F9D9
+F9DA;W;CJK COMPATIBILITY IDEOGRAPH-F9DA
+F9DB;W;CJK COMPATIBILITY IDEOGRAPH-F9DB
+F9DC;W;CJK COMPATIBILITY IDEOGRAPH-F9DC
+F9DD;W;CJK COMPATIBILITY IDEOGRAPH-F9DD
+F9DE;W;CJK COMPATIBILITY IDEOGRAPH-F9DE
+F9DF;W;CJK COMPATIBILITY IDEOGRAPH-F9DF
+F9E0;W;CJK COMPATIBILITY IDEOGRAPH-F9E0
+F9E1;W;CJK COMPATIBILITY IDEOGRAPH-F9E1
+F9E2;W;CJK COMPATIBILITY IDEOGRAPH-F9E2
+F9E3;W;CJK COMPATIBILITY IDEOGRAPH-F9E3
+F9E4;W;CJK COMPATIBILITY IDEOGRAPH-F9E4
+F9E5;W;CJK COMPATIBILITY IDEOGRAPH-F9E5
+F9E6;W;CJK COMPATIBILITY IDEOGRAPH-F9E6
+F9E7;W;CJK COMPATIBILITY IDEOGRAPH-F9E7
+F9E8;W;CJK COMPATIBILITY IDEOGRAPH-F9E8
+F9E9;W;CJK COMPATIBILITY IDEOGRAPH-F9E9
+F9EA;W;CJK COMPATIBILITY IDEOGRAPH-F9EA
+F9EB;W;CJK COMPATIBILITY IDEOGRAPH-F9EB
+F9EC;W;CJK COMPATIBILITY IDEOGRAPH-F9EC
+F9ED;W;CJK COMPATIBILITY IDEOGRAPH-F9ED
+F9EE;W;CJK COMPATIBILITY IDEOGRAPH-F9EE
+F9EF;W;CJK COMPATIBILITY IDEOGRAPH-F9EF
+F9F0;W;CJK COMPATIBILITY IDEOGRAPH-F9F0
+F9F1;W;CJK COMPATIBILITY IDEOGRAPH-F9F1
+F9F2;W;CJK COMPATIBILITY IDEOGRAPH-F9F2
+F9F3;W;CJK COMPATIBILITY IDEOGRAPH-F9F3
+F9F4;W;CJK COMPATIBILITY IDEOGRAPH-F9F4
+F9F5;W;CJK COMPATIBILITY IDEOGRAPH-F9F5
+F9F6;W;CJK COMPATIBILITY IDEOGRAPH-F9F6
+F9F7;W;CJK COMPATIBILITY IDEOGRAPH-F9F7
+F9F8;W;CJK COMPATIBILITY IDEOGRAPH-F9F8
+F9F9;W;CJK COMPATIBILITY IDEOGRAPH-F9F9
+F9FA;W;CJK COMPATIBILITY IDEOGRAPH-F9FA
+F9FB;W;CJK COMPATIBILITY IDEOGRAPH-F9FB
+F9FC;W;CJK COMPATIBILITY IDEOGRAPH-F9FC
+F9FD;W;CJK COMPATIBILITY IDEOGRAPH-F9FD
+F9FE;W;CJK COMPATIBILITY IDEOGRAPH-F9FE
+F9FF;W;CJK COMPATIBILITY IDEOGRAPH-F9FF
+FA00;W;CJK COMPATIBILITY IDEOGRAPH-FA00
+FA01;W;CJK COMPATIBILITY IDEOGRAPH-FA01
+FA02;W;CJK COMPATIBILITY IDEOGRAPH-FA02
+FA03;W;CJK COMPATIBILITY IDEOGRAPH-FA03
+FA04;W;CJK COMPATIBILITY IDEOGRAPH-FA04
+FA05;W;CJK COMPATIBILITY IDEOGRAPH-FA05
+FA06;W;CJK COMPATIBILITY IDEOGRAPH-FA06
+FA07;W;CJK COMPATIBILITY IDEOGRAPH-FA07
+FA08;W;CJK COMPATIBILITY IDEOGRAPH-FA08
+FA09;W;CJK COMPATIBILITY IDEOGRAPH-FA09
+FA0A;W;CJK COMPATIBILITY IDEOGRAPH-FA0A
+FA0B;W;CJK COMPATIBILITY IDEOGRAPH-FA0B
+FA0C;W;CJK COMPATIBILITY IDEOGRAPH-FA0C
+FA0D;W;CJK COMPATIBILITY IDEOGRAPH-FA0D
+FA0E;W;CJK COMPATIBILITY IDEOGRAPH-FA0E
+FA0F;W;CJK COMPATIBILITY IDEOGRAPH-FA0F
+FA10;W;CJK COMPATIBILITY IDEOGRAPH-FA10
+FA11;W;CJK COMPATIBILITY IDEOGRAPH-FA11
+FA12;W;CJK COMPATIBILITY IDEOGRAPH-FA12
+FA13;W;CJK COMPATIBILITY IDEOGRAPH-FA13
+FA14;W;CJK COMPATIBILITY IDEOGRAPH-FA14
+FA15;W;CJK COMPATIBILITY IDEOGRAPH-FA15
+FA16;W;CJK COMPATIBILITY IDEOGRAPH-FA16
+FA17;W;CJK COMPATIBILITY IDEOGRAPH-FA17
+FA18;W;CJK COMPATIBILITY IDEOGRAPH-FA18
+FA19;W;CJK COMPATIBILITY IDEOGRAPH-FA19
+FA1A;W;CJK COMPATIBILITY IDEOGRAPH-FA1A
+FA1B;W;CJK COMPATIBILITY IDEOGRAPH-FA1B
+FA1C;W;CJK COMPATIBILITY IDEOGRAPH-FA1C
+FA1D;W;CJK COMPATIBILITY IDEOGRAPH-FA1D
+FA1E;W;CJK COMPATIBILITY IDEOGRAPH-FA1E
+FA1F;W;CJK COMPATIBILITY IDEOGRAPH-FA1F
+FA20;W;CJK COMPATIBILITY IDEOGRAPH-FA20
+FA21;W;CJK COMPATIBILITY IDEOGRAPH-FA21
+FA22;W;CJK COMPATIBILITY IDEOGRAPH-FA22
+FA23;W;CJK COMPATIBILITY IDEOGRAPH-FA23
+FA24;W;CJK COMPATIBILITY IDEOGRAPH-FA24
+FA25;W;CJK COMPATIBILITY IDEOGRAPH-FA25
+FA26;W;CJK COMPATIBILITY IDEOGRAPH-FA26
+FA27;W;CJK COMPATIBILITY IDEOGRAPH-FA27
+FA28;W;CJK COMPATIBILITY IDEOGRAPH-FA28
+FA29;W;CJK COMPATIBILITY IDEOGRAPH-FA29
+FA2A;W;CJK COMPATIBILITY IDEOGRAPH-FA2A
+FA2B;W;CJK COMPATIBILITY IDEOGRAPH-FA2B
+FA2C;W;CJK COMPATIBILITY IDEOGRAPH-FA2C
+FA2D;W;CJK COMPATIBILITY IDEOGRAPH-FA2D
+FB00;N;LATIN SMALL LIGATURE FF
+FB01;N;LATIN SMALL LIGATURE FI
+FB02;N;LATIN SMALL LIGATURE FL
+FB03;N;LATIN SMALL LIGATURE FFI
+FB04;N;LATIN SMALL LIGATURE FFL
+FB05;N;LATIN SMALL LIGATURE LONG S T
+FB06;N;LATIN SMALL LIGATURE ST
+FB13;N;ARMENIAN SMALL LIGATURE MEN NOW
+FB14;N;ARMENIAN SMALL LIGATURE MEN ECH
+FB15;N;ARMENIAN SMALL LIGATURE MEN INI
+FB16;N;ARMENIAN SMALL LIGATURE VEW NOW
+FB17;N;ARMENIAN SMALL LIGATURE MEN XEH
+FB1D;N;HEBREW LETTER YOD WITH HIRIQ
+FB1E;N;HEBREW POINT JUDEO-SPANISH VARIKA
+FB1F;N;HEBREW LIGATURE YIDDISH YOD YOD PATAH
+FB20;N;HEBREW LETTER ALTERNATIVE AYIN
+FB21;N;HEBREW LETTER WIDE ALEF
+FB22;N;HEBREW LETTER WIDE DALET
+FB23;N;HEBREW LETTER WIDE HE
+FB24;N;HEBREW LETTER WIDE KAF
+FB25;N;HEBREW LETTER WIDE LAMED
+FB26;N;HEBREW LETTER WIDE FINAL MEM
+FB27;N;HEBREW LETTER WIDE RESH
+FB28;N;HEBREW LETTER WIDE TAV
+FB29;N;HEBREW LETTER ALTERNATIVE PLUS SIGN
+FB2A;N;HEBREW LETTER SHIN WITH SHIN DOT
+FB2B;N;HEBREW LETTER SHIN WITH SIN DOT
+FB2C;N;HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT
+FB2D;N;HEBREW LETTER SHIN WITH DAGESH AND SIN DOT
+FB2E;N;HEBREW LETTER ALEF WITH PATAH
+FB2F;N;HEBREW LETTER ALEF WITH QAMATS
+FB30;N;HEBREW LETTER ALEF WITH MAPIQ
+FB31;N;HEBREW LETTER BET WITH DAGESH
+FB32;N;HEBREW LETTER GIMEL WITH DAGESH
+FB33;N;HEBREW LETTER DALET WITH DAGESH
+FB34;N;HEBREW LETTER HE WITH MAPIQ
+FB35;N;HEBREW LETTER VAV WITH DAGESH
+FB36;N;HEBREW LETTER ZAYIN WITH DAGESH
+FB38;N;HEBREW LETTER TET WITH DAGESH
+FB39;N;HEBREW LETTER YOD WITH DAGESH
+FB3A;N;HEBREW LETTER FINAL KAF WITH DAGESH
+FB3B;N;HEBREW LETTER KAF WITH DAGESH
+FB3C;N;HEBREW LETTER LAMED WITH DAGESH
+FB3E;N;HEBREW LETTER MEM WITH DAGESH
+FB40;N;HEBREW LETTER NUN WITH DAGESH
+FB41;N;HEBREW LETTER SAMEKH WITH DAGESH
+FB43;N;HEBREW LETTER FINAL PE WITH DAGESH
+FB44;N;HEBREW LETTER PE WITH DAGESH
+FB46;N;HEBREW LETTER TSADI WITH DAGESH
+FB47;N;HEBREW LETTER QOF WITH DAGESH
+FB48;N;HEBREW LETTER RESH WITH DAGESH
+FB49;N;HEBREW LETTER SHIN WITH DAGESH
+FB4A;N;HEBREW LETTER TAV WITH DAGESH
+FB4B;N;HEBREW LETTER VAV WITH HOLAM
+FB4C;N;HEBREW LETTER BET WITH RAFE
+FB4D;N;HEBREW LETTER KAF WITH RAFE
+FB4E;N;HEBREW LETTER PE WITH RAFE
+FB4F;N;HEBREW LIGATURE ALEF LAMED
+FB50;N;ARABIC LETTER ALEF WASLA ISOLATED FORM
+FB51;N;ARABIC LETTER ALEF WASLA FINAL FORM
+FB52;N;ARABIC LETTER BEEH ISOLATED FORM
+FB53;N;ARABIC LETTER BEEH FINAL FORM
+FB54;N;ARABIC LETTER BEEH INITIAL FORM
+FB55;N;ARABIC LETTER BEEH MEDIAL FORM
+FB56;N;ARABIC LETTER PEH ISOLATED FORM
+FB57;N;ARABIC LETTER PEH FINAL FORM
+FB58;N;ARABIC LETTER PEH INITIAL FORM
+FB59;N;ARABIC LETTER PEH MEDIAL FORM
+FB5A;N;ARABIC LETTER BEHEH ISOLATED FORM
+FB5B;N;ARABIC LETTER BEHEH FINAL FORM
+FB5C;N;ARABIC LETTER BEHEH INITIAL FORM
+FB5D;N;ARABIC LETTER BEHEH MEDIAL FORM
+FB5E;N;ARABIC LETTER TTEHEH ISOLATED FORM
+FB5F;N;ARABIC LETTER TTEHEH FINAL FORM
+FB60;N;ARABIC LETTER TTEHEH INITIAL FORM
+FB61;N;ARABIC LETTER TTEHEH MEDIAL FORM
+FB62;N;ARABIC LETTER TEHEH ISOLATED FORM
+FB63;N;ARABIC LETTER TEHEH FINAL FORM
+FB64;N;ARABIC LETTER TEHEH INITIAL FORM
+FB65;N;ARABIC LETTER TEHEH MEDIAL FORM
+FB66;N;ARABIC LETTER TTEH ISOLATED FORM
+FB67;N;ARABIC LETTER TTEH FINAL FORM
+FB68;N;ARABIC LETTER TTEH INITIAL FORM
+FB69;N;ARABIC LETTER TTEH MEDIAL FORM
+FB6A;N;ARABIC LETTER VEH ISOLATED FORM
+FB6B;N;ARABIC LETTER VEH FINAL FORM
+FB6C;N;ARABIC LETTER VEH INITIAL FORM
+FB6D;N;ARABIC LETTER VEH MEDIAL FORM
+FB6E;N;ARABIC LETTER PEHEH ISOLATED FORM
+FB6F;N;ARABIC LETTER PEHEH FINAL FORM
+FB70;N;ARABIC LETTER PEHEH INITIAL FORM
+FB71;N;ARABIC LETTER PEHEH MEDIAL FORM
+FB72;N;ARABIC LETTER DYEH ISOLATED FORM
+FB73;N;ARABIC LETTER DYEH FINAL FORM
+FB74;N;ARABIC LETTER DYEH INITIAL FORM
+FB75;N;ARABIC LETTER DYEH MEDIAL FORM
+FB76;N;ARABIC LETTER NYEH ISOLATED FORM
+FB77;N;ARABIC LETTER NYEH FINAL FORM
+FB78;N;ARABIC LETTER NYEH INITIAL FORM
+FB79;N;ARABIC LETTER NYEH MEDIAL FORM
+FB7A;N;ARABIC LETTER TCHEH ISOLATED FORM
+FB7B;N;ARABIC LETTER TCHEH FINAL FORM
+FB7C;N;ARABIC LETTER TCHEH INITIAL FORM
+FB7D;N;ARABIC LETTER TCHEH MEDIAL FORM
+FB7E;N;ARABIC LETTER TCHEHEH ISOLATED FORM
+FB7F;N;ARABIC LETTER TCHEHEH FINAL FORM
+FB80;N;ARABIC LETTER TCHEHEH INITIAL FORM
+FB81;N;ARABIC LETTER TCHEHEH MEDIAL FORM
+FB82;N;ARABIC LETTER DDAHAL ISOLATED FORM
+FB83;N;ARABIC LETTER DDAHAL FINAL FORM
+FB84;N;ARABIC LETTER DAHAL ISOLATED FORM
+FB85;N;ARABIC LETTER DAHAL FINAL FORM
+FB86;N;ARABIC LETTER DUL ISOLATED FORM
+FB87;N;ARABIC LETTER DUL FINAL FORM
+FB88;N;ARABIC LETTER DDAL ISOLATED FORM
+FB89;N;ARABIC LETTER DDAL FINAL FORM
+FB8A;N;ARABIC LETTER JEH ISOLATED FORM
+FB8B;N;ARABIC LETTER JEH FINAL FORM
+FB8C;N;ARABIC LETTER RREH ISOLATED FORM
+FB8D;N;ARABIC LETTER RREH FINAL FORM
+FB8E;N;ARABIC LETTER KEHEH ISOLATED FORM
+FB8F;N;ARABIC LETTER KEHEH FINAL FORM
+FB90;N;ARABIC LETTER KEHEH INITIAL FORM
+FB91;N;ARABIC LETTER KEHEH MEDIAL FORM
+FB92;N;ARABIC LETTER GAF ISOLATED FORM
+FB93;N;ARABIC LETTER GAF FINAL FORM
+FB94;N;ARABIC LETTER GAF INITIAL FORM
+FB95;N;ARABIC LETTER GAF MEDIAL FORM
+FB96;N;ARABIC LETTER GUEH ISOLATED FORM
+FB97;N;ARABIC LETTER GUEH FINAL FORM
+FB98;N;ARABIC LETTER GUEH INITIAL FORM
+FB99;N;ARABIC LETTER GUEH MEDIAL FORM
+FB9A;N;ARABIC LETTER NGOEH ISOLATED FORM
+FB9B;N;ARABIC LETTER NGOEH FINAL FORM
+FB9C;N;ARABIC LETTER NGOEH INITIAL FORM
+FB9D;N;ARABIC LETTER NGOEH MEDIAL FORM
+FB9E;N;ARABIC LETTER NOON GHUNNA ISOLATED FORM
+FB9F;N;ARABIC LETTER NOON GHUNNA FINAL FORM
+FBA0;N;ARABIC LETTER RNOON ISOLATED FORM
+FBA1;N;ARABIC LETTER RNOON FINAL FORM
+FBA2;N;ARABIC LETTER RNOON INITIAL FORM
+FBA3;N;ARABIC LETTER RNOON MEDIAL FORM
+FBA4;N;ARABIC LETTER HEH WITH YEH ABOVE ISOLATED FORM
+FBA5;N;ARABIC LETTER HEH WITH YEH ABOVE FINAL FORM
+FBA6;N;ARABIC LETTER HEH GOAL ISOLATED FORM
+FBA7;N;ARABIC LETTER HEH GOAL FINAL FORM
+FBA8;N;ARABIC LETTER HEH GOAL INITIAL FORM
+FBA9;N;ARABIC LETTER HEH GOAL MEDIAL FORM
+FBAA;N;ARABIC LETTER HEH DOACHASHMEE ISOLATED FORM
+FBAB;N;ARABIC LETTER HEH DOACHASHMEE FINAL FORM
+FBAC;N;ARABIC LETTER HEH DOACHASHMEE INITIAL FORM
+FBAD;N;ARABIC LETTER HEH DOACHASHMEE MEDIAL FORM
+FBAE;N;ARABIC LETTER YEH BARREE ISOLATED FORM
+FBAF;N;ARABIC LETTER YEH BARREE FINAL FORM
+FBB0;N;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM
+FBB1;N;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM
+FBD3;N;ARABIC LETTER NG ISOLATED FORM
+FBD4;N;ARABIC LETTER NG FINAL FORM
+FBD5;N;ARABIC LETTER NG INITIAL FORM
+FBD6;N;ARABIC LETTER NG MEDIAL FORM
+FBD7;N;ARABIC LETTER U ISOLATED FORM
+FBD8;N;ARABIC LETTER U FINAL FORM
+FBD9;N;ARABIC LETTER OE ISOLATED FORM
+FBDA;N;ARABIC LETTER OE FINAL FORM
+FBDB;N;ARABIC LETTER YU ISOLATED FORM
+FBDC;N;ARABIC LETTER YU FINAL FORM
+FBDD;N;ARABIC LETTER U WITH HAMZA ABOVE ISOLATED FORM
+FBDE;N;ARABIC LETTER VE ISOLATED FORM
+FBDF;N;ARABIC LETTER VE FINAL FORM
+FBE0;N;ARABIC LETTER KIRGHIZ OE ISOLATED FORM
+FBE1;N;ARABIC LETTER KIRGHIZ OE FINAL FORM
+FBE2;N;ARABIC LETTER KIRGHIZ YU ISOLATED FORM
+FBE3;N;ARABIC LETTER KIRGHIZ YU FINAL FORM
+FBE4;N;ARABIC LETTER E ISOLATED FORM
+FBE5;N;ARABIC LETTER E FINAL FORM
+FBE6;N;ARABIC LETTER E INITIAL FORM
+FBE7;N;ARABIC LETTER E MEDIAL FORM
+FBE8;N;ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA INITIAL FORM
+FBE9;N;ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA MEDIAL FORM
+FBEA;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF ISOLATED FORM
+FBEB;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF FINAL FORM
+FBEC;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE ISOLATED FORM
+FBED;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE FINAL FORM
+FBEE;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW ISOLATED FORM
+FBEF;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW FINAL FORM
+FBF0;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U ISOLATED FORM
+FBF1;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U FINAL FORM
+FBF2;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE ISOLATED FORM
+FBF3;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE FINAL FORM
+FBF4;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU ISOLATED FORM
+FBF5;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU FINAL FORM
+FBF6;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E ISOLATED FORM
+FBF7;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E FINAL FORM
+FBF8;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E INITIAL FORM
+FBF9;N;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM
+FBFA;N;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM
+FBFB;N;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA INITIAL FORM
+FBFC;N;ARABIC LETTER FARSI YEH ISOLATED FORM
+FBFD;N;ARABIC LETTER FARSI YEH FINAL FORM
+FBFE;N;ARABIC LETTER FARSI YEH INITIAL FORM
+FBFF;N;ARABIC LETTER FARSI YEH MEDIAL FORM
+FC00;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM ISOLATED FORM
+FC01;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH ISOLATED FORM
+FC02;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM ISOLATED FORM
+FC03;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM
+FC04;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH ISOLATED FORM
+FC05;N;ARABIC LIGATURE BEH WITH JEEM ISOLATED FORM
+FC06;N;ARABIC LIGATURE BEH WITH HAH ISOLATED FORM
+FC07;N;ARABIC LIGATURE BEH WITH KHAH ISOLATED FORM
+FC08;N;ARABIC LIGATURE BEH WITH MEEM ISOLATED FORM
+FC09;N;ARABIC LIGATURE BEH WITH ALEF MAKSURA ISOLATED FORM
+FC0A;N;ARABIC LIGATURE BEH WITH YEH ISOLATED FORM
+FC0B;N;ARABIC LIGATURE TEH WITH JEEM ISOLATED FORM
+FC0C;N;ARABIC LIGATURE TEH WITH HAH ISOLATED FORM
+FC0D;N;ARABIC LIGATURE TEH WITH KHAH ISOLATED FORM
+FC0E;N;ARABIC LIGATURE TEH WITH MEEM ISOLATED FORM
+FC0F;N;ARABIC LIGATURE TEH WITH ALEF MAKSURA ISOLATED FORM
+FC10;N;ARABIC LIGATURE TEH WITH YEH ISOLATED FORM
+FC11;N;ARABIC LIGATURE THEH WITH JEEM ISOLATED FORM
+FC12;N;ARABIC LIGATURE THEH WITH MEEM ISOLATED FORM
+FC13;N;ARABIC LIGATURE THEH WITH ALEF MAKSURA ISOLATED FORM
+FC14;N;ARABIC LIGATURE THEH WITH YEH ISOLATED FORM
+FC15;N;ARABIC LIGATURE JEEM WITH HAH ISOLATED FORM
+FC16;N;ARABIC LIGATURE JEEM WITH MEEM ISOLATED FORM
+FC17;N;ARABIC LIGATURE HAH WITH JEEM ISOLATED FORM
+FC18;N;ARABIC LIGATURE HAH WITH MEEM ISOLATED FORM
+FC19;N;ARABIC LIGATURE KHAH WITH JEEM ISOLATED FORM
+FC1A;N;ARABIC LIGATURE KHAH WITH HAH ISOLATED FORM
+FC1B;N;ARABIC LIGATURE KHAH WITH MEEM ISOLATED FORM
+FC1C;N;ARABIC LIGATURE SEEN WITH JEEM ISOLATED FORM
+FC1D;N;ARABIC LIGATURE SEEN WITH HAH ISOLATED FORM
+FC1E;N;ARABIC LIGATURE SEEN WITH KHAH ISOLATED FORM
+FC1F;N;ARABIC LIGATURE SEEN WITH MEEM ISOLATED FORM
+FC20;N;ARABIC LIGATURE SAD WITH HAH ISOLATED FORM
+FC21;N;ARABIC LIGATURE SAD WITH MEEM ISOLATED FORM
+FC22;N;ARABIC LIGATURE DAD WITH JEEM ISOLATED FORM
+FC23;N;ARABIC LIGATURE DAD WITH HAH ISOLATED FORM
+FC24;N;ARABIC LIGATURE DAD WITH KHAH ISOLATED FORM
+FC25;N;ARABIC LIGATURE DAD WITH MEEM ISOLATED FORM
+FC26;N;ARABIC LIGATURE TAH WITH HAH ISOLATED FORM
+FC27;N;ARABIC LIGATURE TAH WITH MEEM ISOLATED FORM
+FC28;N;ARABIC LIGATURE ZAH WITH MEEM ISOLATED FORM
+FC29;N;ARABIC LIGATURE AIN WITH JEEM ISOLATED FORM
+FC2A;N;ARABIC LIGATURE AIN WITH MEEM ISOLATED FORM
+FC2B;N;ARABIC LIGATURE GHAIN WITH JEEM ISOLATED FORM
+FC2C;N;ARABIC LIGATURE GHAIN WITH MEEM ISOLATED FORM
+FC2D;N;ARABIC LIGATURE FEH WITH JEEM ISOLATED FORM
+FC2E;N;ARABIC LIGATURE FEH WITH HAH ISOLATED FORM
+FC2F;N;ARABIC LIGATURE FEH WITH KHAH ISOLATED FORM
+FC30;N;ARABIC LIGATURE FEH WITH MEEM ISOLATED FORM
+FC31;N;ARABIC LIGATURE FEH WITH ALEF MAKSURA ISOLATED FORM
+FC32;N;ARABIC LIGATURE FEH WITH YEH ISOLATED FORM
+FC33;N;ARABIC LIGATURE QAF WITH HAH ISOLATED FORM
+FC34;N;ARABIC LIGATURE QAF WITH MEEM ISOLATED FORM
+FC35;N;ARABIC LIGATURE QAF WITH ALEF MAKSURA ISOLATED FORM
+FC36;N;ARABIC LIGATURE QAF WITH YEH ISOLATED FORM
+FC37;N;ARABIC LIGATURE KAF WITH ALEF ISOLATED FORM
+FC38;N;ARABIC LIGATURE KAF WITH JEEM ISOLATED FORM
+FC39;N;ARABIC LIGATURE KAF WITH HAH ISOLATED FORM
+FC3A;N;ARABIC LIGATURE KAF WITH KHAH ISOLATED FORM
+FC3B;N;ARABIC LIGATURE KAF WITH LAM ISOLATED FORM
+FC3C;N;ARABIC LIGATURE KAF WITH MEEM ISOLATED FORM
+FC3D;N;ARABIC LIGATURE KAF WITH ALEF MAKSURA ISOLATED FORM
+FC3E;N;ARABIC LIGATURE KAF WITH YEH ISOLATED FORM
+FC3F;N;ARABIC LIGATURE LAM WITH JEEM ISOLATED FORM
+FC40;N;ARABIC LIGATURE LAM WITH HAH ISOLATED FORM
+FC41;N;ARABIC LIGATURE LAM WITH KHAH ISOLATED FORM
+FC42;N;ARABIC LIGATURE LAM WITH MEEM ISOLATED FORM
+FC43;N;ARABIC LIGATURE LAM WITH ALEF MAKSURA ISOLATED FORM
+FC44;N;ARABIC LIGATURE LAM WITH YEH ISOLATED FORM
+FC45;N;ARABIC LIGATURE MEEM WITH JEEM ISOLATED FORM
+FC46;N;ARABIC LIGATURE MEEM WITH HAH ISOLATED FORM
+FC47;N;ARABIC LIGATURE MEEM WITH KHAH ISOLATED FORM
+FC48;N;ARABIC LIGATURE MEEM WITH MEEM ISOLATED FORM
+FC49;N;ARABIC LIGATURE MEEM WITH ALEF MAKSURA ISOLATED FORM
+FC4A;N;ARABIC LIGATURE MEEM WITH YEH ISOLATED FORM
+FC4B;N;ARABIC LIGATURE NOON WITH JEEM ISOLATED FORM
+FC4C;N;ARABIC LIGATURE NOON WITH HAH ISOLATED FORM
+FC4D;N;ARABIC LIGATURE NOON WITH KHAH ISOLATED FORM
+FC4E;N;ARABIC LIGATURE NOON WITH MEEM ISOLATED FORM
+FC4F;N;ARABIC LIGATURE NOON WITH ALEF MAKSURA ISOLATED FORM
+FC50;N;ARABIC LIGATURE NOON WITH YEH ISOLATED FORM
+FC51;N;ARABIC LIGATURE HEH WITH JEEM ISOLATED FORM
+FC52;N;ARABIC LIGATURE HEH WITH MEEM ISOLATED FORM
+FC53;N;ARABIC LIGATURE HEH WITH ALEF MAKSURA ISOLATED FORM
+FC54;N;ARABIC LIGATURE HEH WITH YEH ISOLATED FORM
+FC55;N;ARABIC LIGATURE YEH WITH JEEM ISOLATED FORM
+FC56;N;ARABIC LIGATURE YEH WITH HAH ISOLATED FORM
+FC57;N;ARABIC LIGATURE YEH WITH KHAH ISOLATED FORM
+FC58;N;ARABIC LIGATURE YEH WITH MEEM ISOLATED FORM
+FC59;N;ARABIC LIGATURE YEH WITH ALEF MAKSURA ISOLATED FORM
+FC5A;N;ARABIC LIGATURE YEH WITH YEH ISOLATED FORM
+FC5B;N;ARABIC LIGATURE THAL WITH SUPERSCRIPT ALEF ISOLATED FORM
+FC5C;N;ARABIC LIGATURE REH WITH SUPERSCRIPT ALEF ISOLATED FORM
+FC5D;N;ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF ISOLATED FORM
+FC5E;N;ARABIC LIGATURE SHADDA WITH DAMMATAN ISOLATED FORM
+FC5F;N;ARABIC LIGATURE SHADDA WITH KASRATAN ISOLATED FORM
+FC60;N;ARABIC LIGATURE SHADDA WITH FATHA ISOLATED FORM
+FC61;N;ARABIC LIGATURE SHADDA WITH DAMMA ISOLATED FORM
+FC62;N;ARABIC LIGATURE SHADDA WITH KASRA ISOLATED FORM
+FC63;N;ARABIC LIGATURE SHADDA WITH SUPERSCRIPT ALEF ISOLATED FORM
+FC64;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH REH FINAL FORM
+FC65;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ZAIN FINAL FORM
+FC66;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM FINAL FORM
+FC67;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH NOON FINAL FORM
+FC68;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM
+FC69;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH FINAL FORM
+FC6A;N;ARABIC LIGATURE BEH WITH REH FINAL FORM
+FC6B;N;ARABIC LIGATURE BEH WITH ZAIN FINAL FORM
+FC6C;N;ARABIC LIGATURE BEH WITH MEEM FINAL FORM
+FC6D;N;ARABIC LIGATURE BEH WITH NOON FINAL FORM
+FC6E;N;ARABIC LIGATURE BEH WITH ALEF MAKSURA FINAL FORM
+FC6F;N;ARABIC LIGATURE BEH WITH YEH FINAL FORM
+FC70;N;ARABIC LIGATURE TEH WITH REH FINAL FORM
+FC71;N;ARABIC LIGATURE TEH WITH ZAIN FINAL FORM
+FC72;N;ARABIC LIGATURE TEH WITH MEEM FINAL FORM
+FC73;N;ARABIC LIGATURE TEH WITH NOON FINAL FORM
+FC74;N;ARABIC LIGATURE TEH WITH ALEF MAKSURA FINAL FORM
+FC75;N;ARABIC LIGATURE TEH WITH YEH FINAL FORM
+FC76;N;ARABIC LIGATURE THEH WITH REH FINAL FORM
+FC77;N;ARABIC LIGATURE THEH WITH ZAIN FINAL FORM
+FC78;N;ARABIC LIGATURE THEH WITH MEEM FINAL FORM
+FC79;N;ARABIC LIGATURE THEH WITH NOON FINAL FORM
+FC7A;N;ARABIC LIGATURE THEH WITH ALEF MAKSURA FINAL FORM
+FC7B;N;ARABIC LIGATURE THEH WITH YEH FINAL FORM
+FC7C;N;ARABIC LIGATURE FEH WITH ALEF MAKSURA FINAL FORM
+FC7D;N;ARABIC LIGATURE FEH WITH YEH FINAL FORM
+FC7E;N;ARABIC LIGATURE QAF WITH ALEF MAKSURA FINAL FORM
+FC7F;N;ARABIC LIGATURE QAF WITH YEH FINAL FORM
+FC80;N;ARABIC LIGATURE KAF WITH ALEF FINAL FORM
+FC81;N;ARABIC LIGATURE KAF WITH LAM FINAL FORM
+FC82;N;ARABIC LIGATURE KAF WITH MEEM FINAL FORM
+FC83;N;ARABIC LIGATURE KAF WITH ALEF MAKSURA FINAL FORM
+FC84;N;ARABIC LIGATURE KAF WITH YEH FINAL FORM
+FC85;N;ARABIC LIGATURE LAM WITH MEEM FINAL FORM
+FC86;N;ARABIC LIGATURE LAM WITH ALEF MAKSURA FINAL FORM
+FC87;N;ARABIC LIGATURE LAM WITH YEH FINAL FORM
+FC88;N;ARABIC LIGATURE MEEM WITH ALEF FINAL FORM
+FC89;N;ARABIC LIGATURE MEEM WITH MEEM FINAL FORM
+FC8A;N;ARABIC LIGATURE NOON WITH REH FINAL FORM
+FC8B;N;ARABIC LIGATURE NOON WITH ZAIN FINAL FORM
+FC8C;N;ARABIC LIGATURE NOON WITH MEEM FINAL FORM
+FC8D;N;ARABIC LIGATURE NOON WITH NOON FINAL FORM
+FC8E;N;ARABIC LIGATURE NOON WITH ALEF MAKSURA FINAL FORM
+FC8F;N;ARABIC LIGATURE NOON WITH YEH FINAL FORM
+FC90;N;ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF FINAL FORM
+FC91;N;ARABIC LIGATURE YEH WITH REH FINAL FORM
+FC92;N;ARABIC LIGATURE YEH WITH ZAIN FINAL FORM
+FC93;N;ARABIC LIGATURE YEH WITH MEEM FINAL FORM
+FC94;N;ARABIC LIGATURE YEH WITH NOON FINAL FORM
+FC95;N;ARABIC LIGATURE YEH WITH ALEF MAKSURA FINAL FORM
+FC96;N;ARABIC LIGATURE YEH WITH YEH FINAL FORM
+FC97;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM INITIAL FORM
+FC98;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH INITIAL FORM
+FC99;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH KHAH INITIAL FORM
+FC9A;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM INITIAL FORM
+FC9B;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH INITIAL FORM
+FC9C;N;ARABIC LIGATURE BEH WITH JEEM INITIAL FORM
+FC9D;N;ARABIC LIGATURE BEH WITH HAH INITIAL FORM
+FC9E;N;ARABIC LIGATURE BEH WITH KHAH INITIAL FORM
+FC9F;N;ARABIC LIGATURE BEH WITH MEEM INITIAL FORM
+FCA0;N;ARABIC LIGATURE BEH WITH HEH INITIAL FORM
+FCA1;N;ARABIC LIGATURE TEH WITH JEEM INITIAL FORM
+FCA2;N;ARABIC LIGATURE TEH WITH HAH INITIAL FORM
+FCA3;N;ARABIC LIGATURE TEH WITH KHAH INITIAL FORM
+FCA4;N;ARABIC LIGATURE TEH WITH MEEM INITIAL FORM
+FCA5;N;ARABIC LIGATURE TEH WITH HEH INITIAL FORM
+FCA6;N;ARABIC LIGATURE THEH WITH MEEM INITIAL FORM
+FCA7;N;ARABIC LIGATURE JEEM WITH HAH INITIAL FORM
+FCA8;N;ARABIC LIGATURE JEEM WITH MEEM INITIAL FORM
+FCA9;N;ARABIC LIGATURE HAH WITH JEEM INITIAL FORM
+FCAA;N;ARABIC LIGATURE HAH WITH MEEM INITIAL FORM
+FCAB;N;ARABIC LIGATURE KHAH WITH JEEM INITIAL FORM
+FCAC;N;ARABIC LIGATURE KHAH WITH MEEM INITIAL FORM
+FCAD;N;ARABIC LIGATURE SEEN WITH JEEM INITIAL FORM
+FCAE;N;ARABIC LIGATURE SEEN WITH HAH INITIAL FORM
+FCAF;N;ARABIC LIGATURE SEEN WITH KHAH INITIAL FORM
+FCB0;N;ARABIC LIGATURE SEEN WITH MEEM INITIAL FORM
+FCB1;N;ARABIC LIGATURE SAD WITH HAH INITIAL FORM
+FCB2;N;ARABIC LIGATURE SAD WITH KHAH INITIAL FORM
+FCB3;N;ARABIC LIGATURE SAD WITH MEEM INITIAL FORM
+FCB4;N;ARABIC LIGATURE DAD WITH JEEM INITIAL FORM
+FCB5;N;ARABIC LIGATURE DAD WITH HAH INITIAL FORM
+FCB6;N;ARABIC LIGATURE DAD WITH KHAH INITIAL FORM
+FCB7;N;ARABIC LIGATURE DAD WITH MEEM INITIAL FORM
+FCB8;N;ARABIC LIGATURE TAH WITH HAH INITIAL FORM
+FCB9;N;ARABIC LIGATURE ZAH WITH MEEM INITIAL FORM
+FCBA;N;ARABIC LIGATURE AIN WITH JEEM INITIAL FORM
+FCBB;N;ARABIC LIGATURE AIN WITH MEEM INITIAL FORM
+FCBC;N;ARABIC LIGATURE GHAIN WITH JEEM INITIAL FORM
+FCBD;N;ARABIC LIGATURE GHAIN WITH MEEM INITIAL FORM
+FCBE;N;ARABIC LIGATURE FEH WITH JEEM INITIAL FORM
+FCBF;N;ARABIC LIGATURE FEH WITH HAH INITIAL FORM
+FCC0;N;ARABIC LIGATURE FEH WITH KHAH INITIAL FORM
+FCC1;N;ARABIC LIGATURE FEH WITH MEEM INITIAL FORM
+FCC2;N;ARABIC LIGATURE QAF WITH HAH INITIAL FORM
+FCC3;N;ARABIC LIGATURE QAF WITH MEEM INITIAL FORM
+FCC4;N;ARABIC LIGATURE KAF WITH JEEM INITIAL FORM
+FCC5;N;ARABIC LIGATURE KAF WITH HAH INITIAL FORM
+FCC6;N;ARABIC LIGATURE KAF WITH KHAH INITIAL FORM
+FCC7;N;ARABIC LIGATURE KAF WITH LAM INITIAL FORM
+FCC8;N;ARABIC LIGATURE KAF WITH MEEM INITIAL FORM
+FCC9;N;ARABIC LIGATURE LAM WITH JEEM INITIAL FORM
+FCCA;N;ARABIC LIGATURE LAM WITH HAH INITIAL FORM
+FCCB;N;ARABIC LIGATURE LAM WITH KHAH INITIAL FORM
+FCCC;N;ARABIC LIGATURE LAM WITH MEEM INITIAL FORM
+FCCD;N;ARABIC LIGATURE LAM WITH HEH INITIAL FORM
+FCCE;N;ARABIC LIGATURE MEEM WITH JEEM INITIAL FORM
+FCCF;N;ARABIC LIGATURE MEEM WITH HAH INITIAL FORM
+FCD0;N;ARABIC LIGATURE MEEM WITH KHAH INITIAL FORM
+FCD1;N;ARABIC LIGATURE MEEM WITH MEEM INITIAL FORM
+FCD2;N;ARABIC LIGATURE NOON WITH JEEM INITIAL FORM
+FCD3;N;ARABIC LIGATURE NOON WITH HAH INITIAL FORM
+FCD4;N;ARABIC LIGATURE NOON WITH KHAH INITIAL FORM
+FCD5;N;ARABIC LIGATURE NOON WITH MEEM INITIAL FORM
+FCD6;N;ARABIC LIGATURE NOON WITH HEH INITIAL FORM
+FCD7;N;ARABIC LIGATURE HEH WITH JEEM INITIAL FORM
+FCD8;N;ARABIC LIGATURE HEH WITH MEEM INITIAL FORM
+FCD9;N;ARABIC LIGATURE HEH WITH SUPERSCRIPT ALEF INITIAL FORM
+FCDA;N;ARABIC LIGATURE YEH WITH JEEM INITIAL FORM
+FCDB;N;ARABIC LIGATURE YEH WITH HAH INITIAL FORM
+FCDC;N;ARABIC LIGATURE YEH WITH KHAH INITIAL FORM
+FCDD;N;ARABIC LIGATURE YEH WITH MEEM INITIAL FORM
+FCDE;N;ARABIC LIGATURE YEH WITH HEH INITIAL FORM
+FCDF;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM MEDIAL FORM
+FCE0;N;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH MEDIAL FORM
+FCE1;N;ARABIC LIGATURE BEH WITH MEEM MEDIAL FORM
+FCE2;N;ARABIC LIGATURE BEH WITH HEH MEDIAL FORM
+FCE3;N;ARABIC LIGATURE TEH WITH MEEM MEDIAL FORM
+FCE4;N;ARABIC LIGATURE TEH WITH HEH MEDIAL FORM
+FCE5;N;ARABIC LIGATURE THEH WITH MEEM MEDIAL FORM
+FCE6;N;ARABIC LIGATURE THEH WITH HEH MEDIAL FORM
+FCE7;N;ARABIC LIGATURE SEEN WITH MEEM MEDIAL FORM
+FCE8;N;ARABIC LIGATURE SEEN WITH HEH MEDIAL FORM
+FCE9;N;ARABIC LIGATURE SHEEN WITH MEEM MEDIAL FORM
+FCEA;N;ARABIC LIGATURE SHEEN WITH HEH MEDIAL FORM
+FCEB;N;ARABIC LIGATURE KAF WITH LAM MEDIAL FORM
+FCEC;N;ARABIC LIGATURE KAF WITH MEEM MEDIAL FORM
+FCED;N;ARABIC LIGATURE LAM WITH MEEM MEDIAL FORM
+FCEE;N;ARABIC LIGATURE NOON WITH MEEM MEDIAL FORM
+FCEF;N;ARABIC LIGATURE NOON WITH HEH MEDIAL FORM
+FCF0;N;ARABIC LIGATURE YEH WITH MEEM MEDIAL FORM
+FCF1;N;ARABIC LIGATURE YEH WITH HEH MEDIAL FORM
+FCF2;N;ARABIC LIGATURE SHADDA WITH FATHA MEDIAL FORM
+FCF3;N;ARABIC LIGATURE SHADDA WITH DAMMA MEDIAL FORM
+FCF4;N;ARABIC LIGATURE SHADDA WITH KASRA MEDIAL FORM
+FCF5;N;ARABIC LIGATURE TAH WITH ALEF MAKSURA ISOLATED FORM
+FCF6;N;ARABIC LIGATURE TAH WITH YEH ISOLATED FORM
+FCF7;N;ARABIC LIGATURE AIN WITH ALEF MAKSURA ISOLATED FORM
+FCF8;N;ARABIC LIGATURE AIN WITH YEH ISOLATED FORM
+FCF9;N;ARABIC LIGATURE GHAIN WITH ALEF MAKSURA ISOLATED FORM
+FCFA;N;ARABIC LIGATURE GHAIN WITH YEH ISOLATED FORM
+FCFB;N;ARABIC LIGATURE SEEN WITH ALEF MAKSURA ISOLATED FORM
+FCFC;N;ARABIC LIGATURE SEEN WITH YEH ISOLATED FORM
+FCFD;N;ARABIC LIGATURE SHEEN WITH ALEF MAKSURA ISOLATED FORM
+FCFE;N;ARABIC LIGATURE SHEEN WITH YEH ISOLATED FORM
+FCFF;N;ARABIC LIGATURE HAH WITH ALEF MAKSURA ISOLATED FORM
+FD00;N;ARABIC LIGATURE HAH WITH YEH ISOLATED FORM
+FD01;N;ARABIC LIGATURE JEEM WITH ALEF MAKSURA ISOLATED FORM
+FD02;N;ARABIC LIGATURE JEEM WITH YEH ISOLATED FORM
+FD03;N;ARABIC LIGATURE KHAH WITH ALEF MAKSURA ISOLATED FORM
+FD04;N;ARABIC LIGATURE KHAH WITH YEH ISOLATED FORM
+FD05;N;ARABIC LIGATURE SAD WITH ALEF MAKSURA ISOLATED FORM
+FD06;N;ARABIC LIGATURE SAD WITH YEH ISOLATED FORM
+FD07;N;ARABIC LIGATURE DAD WITH ALEF MAKSURA ISOLATED FORM
+FD08;N;ARABIC LIGATURE DAD WITH YEH ISOLATED FORM
+FD09;N;ARABIC LIGATURE SHEEN WITH JEEM ISOLATED FORM
+FD0A;N;ARABIC LIGATURE SHEEN WITH HAH ISOLATED FORM
+FD0B;N;ARABIC LIGATURE SHEEN WITH KHAH ISOLATED FORM
+FD0C;N;ARABIC LIGATURE SHEEN WITH MEEM ISOLATED FORM
+FD0D;N;ARABIC LIGATURE SHEEN WITH REH ISOLATED FORM
+FD0E;N;ARABIC LIGATURE SEEN WITH REH ISOLATED FORM
+FD0F;N;ARABIC LIGATURE SAD WITH REH ISOLATED FORM
+FD10;N;ARABIC LIGATURE DAD WITH REH ISOLATED FORM
+FD11;N;ARABIC LIGATURE TAH WITH ALEF MAKSURA FINAL FORM
+FD12;N;ARABIC LIGATURE TAH WITH YEH FINAL FORM
+FD13;N;ARABIC LIGATURE AIN WITH ALEF MAKSURA FINAL FORM
+FD14;N;ARABIC LIGATURE AIN WITH YEH FINAL FORM
+FD15;N;ARABIC LIGATURE GHAIN WITH ALEF MAKSURA FINAL FORM
+FD16;N;ARABIC LIGATURE GHAIN WITH YEH FINAL FORM
+FD17;N;ARABIC LIGATURE SEEN WITH ALEF MAKSURA FINAL FORM
+FD18;N;ARABIC LIGATURE SEEN WITH YEH FINAL FORM
+FD19;N;ARABIC LIGATURE SHEEN WITH ALEF MAKSURA FINAL FORM
+FD1A;N;ARABIC LIGATURE SHEEN WITH YEH FINAL FORM
+FD1B;N;ARABIC LIGATURE HAH WITH ALEF MAKSURA FINAL FORM
+FD1C;N;ARABIC LIGATURE HAH WITH YEH FINAL FORM
+FD1D;N;ARABIC LIGATURE JEEM WITH ALEF MAKSURA FINAL FORM
+FD1E;N;ARABIC LIGATURE JEEM WITH YEH FINAL FORM
+FD1F;N;ARABIC LIGATURE KHAH WITH ALEF MAKSURA FINAL FORM
+FD20;N;ARABIC LIGATURE KHAH WITH YEH FINAL FORM
+FD21;N;ARABIC LIGATURE SAD WITH ALEF MAKSURA FINAL FORM
+FD22;N;ARABIC LIGATURE SAD WITH YEH FINAL FORM
+FD23;N;ARABIC LIGATURE DAD WITH ALEF MAKSURA FINAL FORM
+FD24;N;ARABIC LIGATURE DAD WITH YEH FINAL FORM
+FD25;N;ARABIC LIGATURE SHEEN WITH JEEM FINAL FORM
+FD26;N;ARABIC LIGATURE SHEEN WITH HAH FINAL FORM
+FD27;N;ARABIC LIGATURE SHEEN WITH KHAH FINAL FORM
+FD28;N;ARABIC LIGATURE SHEEN WITH MEEM FINAL FORM
+FD29;N;ARABIC LIGATURE SHEEN WITH REH FINAL FORM
+FD2A;N;ARABIC LIGATURE SEEN WITH REH FINAL FORM
+FD2B;N;ARABIC LIGATURE SAD WITH REH FINAL FORM
+FD2C;N;ARABIC LIGATURE DAD WITH REH FINAL FORM
+FD2D;N;ARABIC LIGATURE SHEEN WITH JEEM INITIAL FORM
+FD2E;N;ARABIC LIGATURE SHEEN WITH HAH INITIAL FORM
+FD2F;N;ARABIC LIGATURE SHEEN WITH KHAH INITIAL FORM
+FD30;N;ARABIC LIGATURE SHEEN WITH MEEM INITIAL FORM
+FD31;N;ARABIC LIGATURE SEEN WITH HEH INITIAL FORM
+FD32;N;ARABIC LIGATURE SHEEN WITH HEH INITIAL FORM
+FD33;N;ARABIC LIGATURE TAH WITH MEEM INITIAL FORM
+FD34;N;ARABIC LIGATURE SEEN WITH JEEM MEDIAL FORM
+FD35;N;ARABIC LIGATURE SEEN WITH HAH MEDIAL FORM
+FD36;N;ARABIC LIGATURE SEEN WITH KHAH MEDIAL FORM
+FD37;N;ARABIC LIGATURE SHEEN WITH JEEM MEDIAL FORM
+FD38;N;ARABIC LIGATURE SHEEN WITH HAH MEDIAL FORM
+FD39;N;ARABIC LIGATURE SHEEN WITH KHAH MEDIAL FORM
+FD3A;N;ARABIC LIGATURE TAH WITH MEEM MEDIAL FORM
+FD3B;N;ARABIC LIGATURE ZAH WITH MEEM MEDIAL FORM
+FD3C;N;ARABIC LIGATURE ALEF WITH FATHATAN FINAL FORM
+FD3D;N;ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM
+FD3E;N;ORNATE LEFT PARENTHESIS
+FD3F;N;ORNATE RIGHT PARENTHESIS
+FD50;N;ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM
+FD51;N;ARABIC LIGATURE TEH WITH HAH WITH JEEM FINAL FORM
+FD52;N;ARABIC LIGATURE TEH WITH HAH WITH JEEM INITIAL FORM
+FD53;N;ARABIC LIGATURE TEH WITH HAH WITH MEEM INITIAL FORM
+FD54;N;ARABIC LIGATURE TEH WITH KHAH WITH MEEM INITIAL FORM
+FD55;N;ARABIC LIGATURE TEH WITH MEEM WITH JEEM INITIAL FORM
+FD56;N;ARABIC LIGATURE TEH WITH MEEM WITH HAH INITIAL FORM
+FD57;N;ARABIC LIGATURE TEH WITH MEEM WITH KHAH INITIAL FORM
+FD58;N;ARABIC LIGATURE JEEM WITH MEEM WITH HAH FINAL FORM
+FD59;N;ARABIC LIGATURE JEEM WITH MEEM WITH HAH INITIAL FORM
+FD5A;N;ARABIC LIGATURE HAH WITH MEEM WITH YEH FINAL FORM
+FD5B;N;ARABIC LIGATURE HAH WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FD5C;N;ARABIC LIGATURE SEEN WITH HAH WITH JEEM INITIAL FORM
+FD5D;N;ARABIC LIGATURE SEEN WITH JEEM WITH HAH INITIAL FORM
+FD5E;N;ARABIC LIGATURE SEEN WITH JEEM WITH ALEF MAKSURA FINAL FORM
+FD5F;N;ARABIC LIGATURE SEEN WITH MEEM WITH HAH FINAL FORM
+FD60;N;ARABIC LIGATURE SEEN WITH MEEM WITH HAH INITIAL FORM
+FD61;N;ARABIC LIGATURE SEEN WITH MEEM WITH JEEM INITIAL FORM
+FD62;N;ARABIC LIGATURE SEEN WITH MEEM WITH MEEM FINAL FORM
+FD63;N;ARABIC LIGATURE SEEN WITH MEEM WITH MEEM INITIAL FORM
+FD64;N;ARABIC LIGATURE SAD WITH HAH WITH HAH FINAL FORM
+FD65;N;ARABIC LIGATURE SAD WITH HAH WITH HAH INITIAL FORM
+FD66;N;ARABIC LIGATURE SAD WITH MEEM WITH MEEM FINAL FORM
+FD67;N;ARABIC LIGATURE SHEEN WITH HAH WITH MEEM FINAL FORM
+FD68;N;ARABIC LIGATURE SHEEN WITH HAH WITH MEEM INITIAL FORM
+FD69;N;ARABIC LIGATURE SHEEN WITH JEEM WITH YEH FINAL FORM
+FD6A;N;ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH FINAL FORM
+FD6B;N;ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH INITIAL FORM
+FD6C;N;ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM FINAL FORM
+FD6D;N;ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM INITIAL FORM
+FD6E;N;ARABIC LIGATURE DAD WITH HAH WITH ALEF MAKSURA FINAL FORM
+FD6F;N;ARABIC LIGATURE DAD WITH KHAH WITH MEEM FINAL FORM
+FD70;N;ARABIC LIGATURE DAD WITH KHAH WITH MEEM INITIAL FORM
+FD71;N;ARABIC LIGATURE TAH WITH MEEM WITH HAH FINAL FORM
+FD72;N;ARABIC LIGATURE TAH WITH MEEM WITH HAH INITIAL FORM
+FD73;N;ARABIC LIGATURE TAH WITH MEEM WITH MEEM INITIAL FORM
+FD74;N;ARABIC LIGATURE TAH WITH MEEM WITH YEH FINAL FORM
+FD75;N;ARABIC LIGATURE AIN WITH JEEM WITH MEEM FINAL FORM
+FD76;N;ARABIC LIGATURE AIN WITH MEEM WITH MEEM FINAL FORM
+FD77;N;ARABIC LIGATURE AIN WITH MEEM WITH MEEM INITIAL FORM
+FD78;N;ARABIC LIGATURE AIN WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FD79;N;ARABIC LIGATURE GHAIN WITH MEEM WITH MEEM FINAL FORM
+FD7A;N;ARABIC LIGATURE GHAIN WITH MEEM WITH YEH FINAL FORM
+FD7B;N;ARABIC LIGATURE GHAIN WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FD7C;N;ARABIC LIGATURE FEH WITH KHAH WITH MEEM FINAL FORM
+FD7D;N;ARABIC LIGATURE FEH WITH KHAH WITH MEEM INITIAL FORM
+FD7E;N;ARABIC LIGATURE QAF WITH MEEM WITH HAH FINAL FORM
+FD7F;N;ARABIC LIGATURE QAF WITH MEEM WITH MEEM FINAL FORM
+FD80;N;ARABIC LIGATURE LAM WITH HAH WITH MEEM FINAL FORM
+FD81;N;ARABIC LIGATURE LAM WITH HAH WITH YEH FINAL FORM
+FD82;N;ARABIC LIGATURE LAM WITH HAH WITH ALEF MAKSURA FINAL FORM
+FD83;N;ARABIC LIGATURE LAM WITH JEEM WITH JEEM INITIAL FORM
+FD84;N;ARABIC LIGATURE LAM WITH JEEM WITH JEEM FINAL FORM
+FD85;N;ARABIC LIGATURE LAM WITH KHAH WITH MEEM FINAL FORM
+FD86;N;ARABIC LIGATURE LAM WITH KHAH WITH MEEM INITIAL FORM
+FD87;N;ARABIC LIGATURE LAM WITH MEEM WITH HAH FINAL FORM
+FD88;N;ARABIC LIGATURE LAM WITH MEEM WITH HAH INITIAL FORM
+FD89;N;ARABIC LIGATURE MEEM WITH HAH WITH JEEM INITIAL FORM
+FD8A;N;ARABIC LIGATURE MEEM WITH HAH WITH MEEM INITIAL FORM
+FD8B;N;ARABIC LIGATURE MEEM WITH HAH WITH YEH FINAL FORM
+FD8C;N;ARABIC LIGATURE MEEM WITH JEEM WITH HAH INITIAL FORM
+FD8D;N;ARABIC LIGATURE MEEM WITH JEEM WITH MEEM INITIAL FORM
+FD8E;N;ARABIC LIGATURE MEEM WITH KHAH WITH JEEM INITIAL FORM
+FD8F;N;ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM
+FD92;N;ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM
+FD93;N;ARABIC LIGATURE HEH WITH MEEM WITH JEEM INITIAL FORM
+FD94;N;ARABIC LIGATURE HEH WITH MEEM WITH MEEM INITIAL FORM
+FD95;N;ARABIC LIGATURE NOON WITH HAH WITH MEEM INITIAL FORM
+FD96;N;ARABIC LIGATURE NOON WITH HAH WITH ALEF MAKSURA FINAL FORM
+FD97;N;ARABIC LIGATURE NOON WITH JEEM WITH MEEM FINAL FORM
+FD98;N;ARABIC LIGATURE NOON WITH JEEM WITH MEEM INITIAL FORM
+FD99;N;ARABIC LIGATURE NOON WITH JEEM WITH ALEF MAKSURA FINAL FORM
+FD9A;N;ARABIC LIGATURE NOON WITH MEEM WITH YEH FINAL FORM
+FD9B;N;ARABIC LIGATURE NOON WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FD9C;N;ARABIC LIGATURE YEH WITH MEEM WITH MEEM FINAL FORM
+FD9D;N;ARABIC LIGATURE YEH WITH MEEM WITH MEEM INITIAL FORM
+FD9E;N;ARABIC LIGATURE BEH WITH KHAH WITH YEH FINAL FORM
+FD9F;N;ARABIC LIGATURE TEH WITH JEEM WITH YEH FINAL FORM
+FDA0;N;ARABIC LIGATURE TEH WITH JEEM WITH ALEF MAKSURA FINAL FORM
+FDA1;N;ARABIC LIGATURE TEH WITH KHAH WITH YEH FINAL FORM
+FDA2;N;ARABIC LIGATURE TEH WITH KHAH WITH ALEF MAKSURA FINAL FORM
+FDA3;N;ARABIC LIGATURE TEH WITH MEEM WITH YEH FINAL FORM
+FDA4;N;ARABIC LIGATURE TEH WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FDA5;N;ARABIC LIGATURE JEEM WITH MEEM WITH YEH FINAL FORM
+FDA6;N;ARABIC LIGATURE JEEM WITH HAH WITH ALEF MAKSURA FINAL FORM
+FDA7;N;ARABIC LIGATURE JEEM WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FDA8;N;ARABIC LIGATURE SEEN WITH KHAH WITH ALEF MAKSURA FINAL FORM
+FDA9;N;ARABIC LIGATURE SAD WITH HAH WITH YEH FINAL FORM
+FDAA;N;ARABIC LIGATURE SHEEN WITH HAH WITH YEH FINAL FORM
+FDAB;N;ARABIC LIGATURE DAD WITH HAH WITH YEH FINAL FORM
+FDAC;N;ARABIC LIGATURE LAM WITH JEEM WITH YEH FINAL FORM
+FDAD;N;ARABIC LIGATURE LAM WITH MEEM WITH YEH FINAL FORM
+FDAE;N;ARABIC LIGATURE YEH WITH HAH WITH YEH FINAL FORM
+FDAF;N;ARABIC LIGATURE YEH WITH JEEM WITH YEH FINAL FORM
+FDB0;N;ARABIC LIGATURE YEH WITH MEEM WITH YEH FINAL FORM
+FDB1;N;ARABIC LIGATURE MEEM WITH MEEM WITH YEH FINAL FORM
+FDB2;N;ARABIC LIGATURE QAF WITH MEEM WITH YEH FINAL FORM
+FDB3;N;ARABIC LIGATURE NOON WITH HAH WITH YEH FINAL FORM
+FDB4;N;ARABIC LIGATURE QAF WITH MEEM WITH HAH INITIAL FORM
+FDB5;N;ARABIC LIGATURE LAM WITH HAH WITH MEEM INITIAL FORM
+FDB6;N;ARABIC LIGATURE AIN WITH MEEM WITH YEH FINAL FORM
+FDB7;N;ARABIC LIGATURE KAF WITH MEEM WITH YEH FINAL FORM
+FDB8;N;ARABIC LIGATURE NOON WITH JEEM WITH HAH INITIAL FORM
+FDB9;N;ARABIC LIGATURE MEEM WITH KHAH WITH YEH FINAL FORM
+FDBA;N;ARABIC LIGATURE LAM WITH JEEM WITH MEEM INITIAL FORM
+FDBB;N;ARABIC LIGATURE KAF WITH MEEM WITH MEEM FINAL FORM
+FDBC;N;ARABIC LIGATURE LAM WITH JEEM WITH MEEM FINAL FORM
+FDBD;N;ARABIC LIGATURE NOON WITH JEEM WITH HAH FINAL FORM
+FDBE;N;ARABIC LIGATURE JEEM WITH HAH WITH YEH FINAL FORM
+FDBF;N;ARABIC LIGATURE HAH WITH JEEM WITH YEH FINAL FORM
+FDC0;N;ARABIC LIGATURE MEEM WITH JEEM WITH YEH FINAL FORM
+FDC1;N;ARABIC LIGATURE FEH WITH MEEM WITH YEH FINAL FORM
+FDC2;N;ARABIC LIGATURE BEH WITH HAH WITH YEH FINAL FORM
+FDC3;N;ARABIC LIGATURE KAF WITH MEEM WITH MEEM INITIAL FORM
+FDC4;N;ARABIC LIGATURE AIN WITH JEEM WITH MEEM INITIAL FORM
+FDC5;N;ARABIC LIGATURE SAD WITH MEEM WITH MEEM INITIAL FORM
+FDC6;N;ARABIC LIGATURE SEEN WITH KHAH WITH YEH FINAL FORM
+FDC7;N;ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM
+FDF0;N;ARABIC LIGATURE SALLA USED AS KORANIC STOP SIGN ISOLATED FORM
+FDF1;N;ARABIC LIGATURE QALA USED AS KORANIC STOP SIGN ISOLATED FORM
+FDF2;N;ARABIC LIGATURE ALLAH ISOLATED FORM
+FDF3;N;ARABIC LIGATURE AKBAR ISOLATED FORM
+FDF4;N;ARABIC LIGATURE MOHAMMAD ISOLATED FORM
+FDF5;N;ARABIC LIGATURE SALAM ISOLATED FORM
+FDF6;N;ARABIC LIGATURE RASOUL ISOLATED FORM
+FDF7;N;ARABIC LIGATURE ALAYHE ISOLATED FORM
+FDF8;N;ARABIC LIGATURE WASALLAM ISOLATED FORM
+FDF9;N;ARABIC LIGATURE SALLA ISOLATED FORM
+FDFA;N;ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM
+FDFB;N;ARABIC LIGATURE JALLAJALALOUHOU
+FE20;N;COMBINING LIGATURE LEFT HALF
+FE21;N;COMBINING LIGATURE RIGHT HALF
+FE22;N;COMBINING DOUBLE TILDE LEFT HALF
+FE23;N;COMBINING DOUBLE TILDE RIGHT HALF
+FE30;W;PRESENTATION FORM FOR VERTICAL TWO DOT LEADER
+FE31;W;PRESENTATION FORM FOR VERTICAL EM DASH
+FE32;W;PRESENTATION FORM FOR VERTICAL EN DASH
+FE33;W;PRESENTATION FORM FOR VERTICAL LOW LINE
+FE34;W;PRESENTATION FORM FOR VERTICAL WAVY LOW LINE
+FE35;W;PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS
+FE36;W;PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS
+FE37;W;PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET
+FE38;W;PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET
+FE39;W;PRESENTATION FORM FOR VERTICAL LEFT TORTOISE SHELL BRACKET
+FE3A;W;PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET
+FE3B;W;PRESENTATION FORM FOR VERTICAL LEFT BLACK LENTICULAR BRACKET
+FE3C;W;PRESENTATION FORM FOR VERTICAL RIGHT BLACK LENTICULAR BRACKET
+FE3D;W;PRESENTATION FORM FOR VERTICAL LEFT DOUBLE ANGLE BRACKET
+FE3E;W;PRESENTATION FORM FOR VERTICAL RIGHT DOUBLE ANGLE BRACKET
+FE3F;W;PRESENTATION FORM FOR VERTICAL LEFT ANGLE BRACKET
+FE40;W;PRESENTATION FORM FOR VERTICAL RIGHT ANGLE BRACKET
+FE41;W;PRESENTATION FORM FOR VERTICAL LEFT CORNER BRACKET
+FE42;W;PRESENTATION FORM FOR VERTICAL RIGHT CORNER BRACKET
+FE43;W;PRESENTATION FORM FOR VERTICAL LEFT WHITE CORNER BRACKET
+FE44;W;PRESENTATION FORM FOR VERTICAL RIGHT WHITE CORNER BRACKET
+FE49;W;DASHED OVERLINE
+FE4A;W;CENTRELINE OVERLINE
+FE4B;W;WAVY OVERLINE
+FE4C;W;DOUBLE WAVY OVERLINE
+FE4D;W;DASHED LOW LINE
+FE4E;W;CENTRELINE LOW LINE
+FE4F;W;WAVY LOW LINE
+FE50;W;SMALL COMMA
+FE51;W;SMALL IDEOGRAPHIC COMMA
+FE52;W;SMALL FULL STOP
+FE54;W;SMALL SEMICOLON
+FE55;W;SMALL COLON
+FE56;W;SMALL QUESTION MARK
+FE57;W;SMALL EXCLAMATION MARK
+FE58;W;SMALL EM DASH
+FE59;W;SMALL LEFT PARENTHESIS
+FE5A;W;SMALL RIGHT PARENTHESIS
+FE5B;W;SMALL LEFT CURLY BRACKET
+FE5C;W;SMALL RIGHT CURLY BRACKET
+FE5D;W;SMALL LEFT TORTOISE SHELL BRACKET
+FE5E;W;SMALL RIGHT TORTOISE SHELL BRACKET
+FE5F;W;SMALL NUMBER SIGN
+FE60;W;SMALL AMPERSAND
+FE61;W;SMALL ASTERISK
+FE62;W;SMALL PLUS SIGN
+FE63;W;SMALL HYPHEN-MINUS
+FE64;W;SMALL LESS-THAN SIGN
+FE65;W;SMALL GREATER-THAN SIGN
+FE66;W;SMALL EQUALS SIGN
+FE68;W;SMALL REVERSE SOLIDUS
+FE69;W;SMALL DOLLAR SIGN
+FE6A;W;SMALL PERCENT SIGN
+FE6B;W;SMALL COMMERCIAL AT
+FE70;N;ARABIC FATHATAN ISOLATED FORM
+FE71;N;ARABIC TATWEEL WITH FATHATAN ABOVE
+FE72;N;ARABIC DAMMATAN ISOLATED FORM
+FE74;N;ARABIC KASRATAN ISOLATED FORM
+FE76;N;ARABIC FATHA ISOLATED FORM
+FE77;N;ARABIC FATHA MEDIAL FORM
+FE78;N;ARABIC DAMMA ISOLATED FORM
+FE79;N;ARABIC DAMMA MEDIAL FORM
+FE7A;N;ARABIC KASRA ISOLATED FORM
+FE7B;N;ARABIC KASRA MEDIAL FORM
+FE7C;N;ARABIC SHADDA ISOLATED FORM
+FE7D;N;ARABIC SHADDA MEDIAL FORM
+FE7E;N;ARABIC SUKUN ISOLATED FORM
+FE7F;N;ARABIC SUKUN MEDIAL FORM
+FE80;N;ARABIC LETTER HAMZA ISOLATED FORM
+FE81;N;ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
+FE82;N;ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
+FE83;N;ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM
+FE84;N;ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
+FE85;N;ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
+FE86;N;ARABIC LETTER WAW WITH HAMZA ABOVE FINAL FORM
+FE87;N;ARABIC LETTER ALEF WITH HAMZA BELOW ISOLATED FORM
+FE88;N;ARABIC LETTER ALEF WITH HAMZA BELOW FINAL FORM
+FE89;N;ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM
+FE8A;N;ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM
+FE8B;N;ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
+FE8C;N;ARABIC LETTER YEH WITH HAMZA ABOVE MEDIAL FORM
+FE8D;N;ARABIC LETTER ALEF ISOLATED FORM
+FE8E;N;ARABIC LETTER ALEF FINAL FORM
+FE8F;N;ARABIC LETTER BEH ISOLATED FORM
+FE90;N;ARABIC LETTER BEH FINAL FORM
+FE91;N;ARABIC LETTER BEH INITIAL FORM
+FE92;N;ARABIC LETTER BEH MEDIAL FORM
+FE93;N;ARABIC LETTER TEH MARBUTA ISOLATED FORM
+FE94;N;ARABIC LETTER TEH MARBUTA FINAL FORM
+FE95;N;ARABIC LETTER TEH ISOLATED FORM
+FE96;N;ARABIC LETTER TEH FINAL FORM
+FE97;N;ARABIC LETTER TEH INITIAL FORM
+FE98;N;ARABIC LETTER TEH MEDIAL FORM
+FE99;N;ARABIC LETTER THEH ISOLATED FORM
+FE9A;N;ARABIC LETTER THEH FINAL FORM
+FE9B;N;ARABIC LETTER THEH INITIAL FORM
+FE9C;N;ARABIC LETTER THEH MEDIAL FORM
+FE9D;N;ARABIC LETTER JEEM ISOLATED FORM
+FE9E;N;ARABIC LETTER JEEM FINAL FORM
+FE9F;N;ARABIC LETTER JEEM INITIAL FORM
+FEA0;N;ARABIC LETTER JEEM MEDIAL FORM
+FEA1;N;ARABIC LETTER HAH ISOLATED FORM
+FEA2;N;ARABIC LETTER HAH FINAL FORM
+FEA3;N;ARABIC LETTER HAH INITIAL FORM
+FEA4;N;ARABIC LETTER HAH MEDIAL FORM
+FEA5;N;ARABIC LETTER KHAH ISOLATED FORM
+FEA6;N;ARABIC LETTER KHAH FINAL FORM
+FEA7;N;ARABIC LETTER KHAH INITIAL FORM
+FEA8;N;ARABIC LETTER KHAH MEDIAL FORM
+FEA9;N;ARABIC LETTER DAL ISOLATED FORM
+FEAA;N;ARABIC LETTER DAL FINAL FORM
+FEAB;N;ARABIC LETTER THAL ISOLATED FORM
+FEAC;N;ARABIC LETTER THAL FINAL FORM
+FEAD;N;ARABIC LETTER REH ISOLATED FORM
+FEAE;N;ARABIC LETTER REH FINAL FORM
+FEAF;N;ARABIC LETTER ZAIN ISOLATED FORM
+FEB0;N;ARABIC LETTER ZAIN FINAL FORM
+FEB1;N;ARABIC LETTER SEEN ISOLATED FORM
+FEB2;N;ARABIC LETTER SEEN FINAL FORM
+FEB3;N;ARABIC LETTER SEEN INITIAL FORM
+FEB4;N;ARABIC LETTER SEEN MEDIAL FORM
+FEB5;N;ARABIC LETTER SHEEN ISOLATED FORM
+FEB6;N;ARABIC LETTER SHEEN FINAL FORM
+FEB7;N;ARABIC LETTER SHEEN INITIAL FORM
+FEB8;N;ARABIC LETTER SHEEN MEDIAL FORM
+FEB9;N;ARABIC LETTER SAD ISOLATED FORM
+FEBA;N;ARABIC LETTER SAD FINAL FORM
+FEBB;N;ARABIC LETTER SAD INITIAL FORM
+FEBC;N;ARABIC LETTER SAD MEDIAL FORM
+FEBD;N;ARABIC LETTER DAD ISOLATED FORM
+FEBE;N;ARABIC LETTER DAD FINAL FORM
+FEBF;N;ARABIC LETTER DAD INITIAL FORM
+FEC0;N;ARABIC LETTER DAD MEDIAL FORM
+FEC1;N;ARABIC LETTER TAH ISOLATED FORM
+FEC2;N;ARABIC LETTER TAH FINAL FORM
+FEC3;N;ARABIC LETTER TAH INITIAL FORM
+FEC4;N;ARABIC LETTER TAH MEDIAL FORM
+FEC5;N;ARABIC LETTER ZAH ISOLATED FORM
+FEC6;N;ARABIC LETTER ZAH FINAL FORM
+FEC7;N;ARABIC LETTER ZAH INITIAL FORM
+FEC8;N;ARABIC LETTER ZAH MEDIAL FORM
+FEC9;N;ARABIC LETTER AIN ISOLATED FORM
+FECA;N;ARABIC LETTER AIN FINAL FORM
+FECB;N;ARABIC LETTER AIN INITIAL FORM
+FECC;N;ARABIC LETTER AIN MEDIAL FORM
+FECD;N;ARABIC LETTER GHAIN ISOLATED FORM
+FECE;N;ARABIC LETTER GHAIN FINAL FORM
+FECF;N;ARABIC LETTER GHAIN INITIAL FORM
+FED0;N;ARABIC LETTER GHAIN MEDIAL FORM
+FED1;N;ARABIC LETTER FEH ISOLATED FORM
+FED2;N;ARABIC LETTER FEH FINAL FORM
+FED3;N;ARABIC LETTER FEH INITIAL FORM
+FED4;N;ARABIC LETTER FEH MEDIAL FORM
+FED5;N;ARABIC LETTER QAF ISOLATED FORM
+FED6;N;ARABIC LETTER QAF FINAL FORM
+FED7;N;ARABIC LETTER QAF INITIAL FORM
+FED8;N;ARABIC LETTER QAF MEDIAL FORM
+FED9;N;ARABIC LETTER KAF ISOLATED FORM
+FEDA;N;ARABIC LETTER KAF FINAL FORM
+FEDB;N;ARABIC LETTER KAF INITIAL FORM
+FEDC;N;ARABIC LETTER KAF MEDIAL FORM
+FEDD;N;ARABIC LETTER LAM ISOLATED FORM
+FEDE;N;ARABIC LETTER LAM FINAL FORM
+FEDF;N;ARABIC LETTER LAM INITIAL FORM
+FEE0;N;ARABIC LETTER LAM MEDIAL FORM
+FEE1;N;ARABIC LETTER MEEM ISOLATED FORM
+FEE2;N;ARABIC LETTER MEEM FINAL FORM
+FEE3;N;ARABIC LETTER MEEM INITIAL FORM
+FEE4;N;ARABIC LETTER MEEM MEDIAL FORM
+FEE5;N;ARABIC LETTER NOON ISOLATED FORM
+FEE6;N;ARABIC LETTER NOON FINAL FORM
+FEE7;N;ARABIC LETTER NOON INITIAL FORM
+FEE8;N;ARABIC LETTER NOON MEDIAL FORM
+FEE9;N;ARABIC LETTER HEH ISOLATED FORM
+FEEA;N;ARABIC LETTER HEH FINAL FORM
+FEEB;N;ARABIC LETTER HEH INITIAL FORM
+FEEC;N;ARABIC LETTER HEH MEDIAL FORM
+FEED;N;ARABIC LETTER WAW ISOLATED FORM
+FEEE;N;ARABIC LETTER WAW FINAL FORM
+FEEF;N;ARABIC LETTER ALEF MAKSURA ISOLATED FORM
+FEF0;N;ARABIC LETTER ALEF MAKSURA FINAL FORM
+FEF1;N;ARABIC LETTER YEH ISOLATED FORM
+FEF2;N;ARABIC LETTER YEH FINAL FORM
+FEF3;N;ARABIC LETTER YEH INITIAL FORM
+FEF4;N;ARABIC LETTER YEH MEDIAL FORM
+FEF5;N;ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
+FEF6;N;ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM
+FEF7;N;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
+FEF8;N;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM
+FEF9;N;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM
+FEFA;N;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM
+FEFB;N;ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
+FEFC;N;ARABIC LIGATURE LAM WITH ALEF FINAL FORM
+FEFF;N;ZERO WIDTH NO-BREAK SPACE
+FF01;F;FULLWIDTH EXCLAMATION MARK
+FF02;F;FULLWIDTH QUOTATION MARK
+FF03;F;FULLWIDTH NUMBER SIGN
+FF04;F;FULLWIDTH DOLLAR SIGN
+FF05;F;FULLWIDTH PERCENT SIGN
+FF06;F;FULLWIDTH AMPERSAND
+FF07;F;FULLWIDTH APOSTROPHE
+FF08;F;FULLWIDTH LEFT PARENTHESIS
+FF09;F;FULLWIDTH RIGHT PARENTHESIS
+FF0A;F;FULLWIDTH ASTERISK
+FF0B;F;FULLWIDTH PLUS SIGN
+FF0C;F;FULLWIDTH COMMA
+FF0D;F;FULLWIDTH HYPHEN-MINUS
+FF0E;F;FULLWIDTH FULL STOP
+FF0F;F;FULLWIDTH SOLIDUS
+FF10;F;FULLWIDTH DIGIT ZERO
+FF11;F;FULLWIDTH DIGIT ONE
+FF12;F;FULLWIDTH DIGIT TWO
+FF13;F;FULLWIDTH DIGIT THREE
+FF14;F;FULLWIDTH DIGIT FOUR
+FF15;F;FULLWIDTH DIGIT FIVE
+FF16;F;FULLWIDTH DIGIT SIX
+FF17;F;FULLWIDTH DIGIT SEVEN
+FF18;F;FULLWIDTH DIGIT EIGHT
+FF19;F;FULLWIDTH DIGIT NINE
+FF1A;F;FULLWIDTH COLON
+FF1B;F;FULLWIDTH SEMICOLON
+FF1C;F;FULLWIDTH LESS-THAN SIGN
+FF1D;F;FULLWIDTH EQUALS SIGN
+FF1E;F;FULLWIDTH GREATER-THAN SIGN
+FF1F;F;FULLWIDTH QUESTION MARK
+FF20;F;FULLWIDTH COMMERCIAL AT
+FF21;F;FULLWIDTH LATIN CAPITAL LETTER A
+FF22;F;FULLWIDTH LATIN CAPITAL LETTER B
+FF23;F;FULLWIDTH LATIN CAPITAL LETTER C
+FF24;F;FULLWIDTH LATIN CAPITAL LETTER D
+FF25;F;FULLWIDTH LATIN CAPITAL LETTER E
+FF26;F;FULLWIDTH LATIN CAPITAL LETTER F
+FF27;F;FULLWIDTH LATIN CAPITAL LETTER G
+FF28;F;FULLWIDTH LATIN CAPITAL LETTER H
+FF29;F;FULLWIDTH LATIN CAPITAL LETTER I
+FF2A;F;FULLWIDTH LATIN CAPITAL LETTER J
+FF2B;F;FULLWIDTH LATIN CAPITAL LETTER K
+FF2C;F;FULLWIDTH LATIN CAPITAL LETTER L
+FF2D;F;FULLWIDTH LATIN CAPITAL LETTER M
+FF2E;F;FULLWIDTH LATIN CAPITAL LETTER N
+FF2F;F;FULLWIDTH LATIN CAPITAL LETTER O
+FF30;F;FULLWIDTH LATIN CAPITAL LETTER P
+FF31;F;FULLWIDTH LATIN CAPITAL LETTER Q
+FF32;F;FULLWIDTH LATIN CAPITAL LETTER R
+FF33;F;FULLWIDTH LATIN CAPITAL LETTER S
+FF34;F;FULLWIDTH LATIN CAPITAL LETTER T
+FF35;F;FULLWIDTH LATIN CAPITAL LETTER U
+FF36;F;FULLWIDTH LATIN CAPITAL LETTER V
+FF37;F;FULLWIDTH LATIN CAPITAL LETTER W
+FF38;F;FULLWIDTH LATIN CAPITAL LETTER X
+FF39;F;FULLWIDTH LATIN CAPITAL LETTER Y
+FF3A;F;FULLWIDTH LATIN CAPITAL LETTER Z
+FF3B;F;FULLWIDTH LEFT SQUARE BRACKET
+FF3C;F;FULLWIDTH REVERSE SOLIDUS
+FF3D;F;FULLWIDTH RIGHT SQUARE BRACKET
+FF3E;F;FULLWIDTH CIRCUMFLEX ACCENT
+FF3F;F;FULLWIDTH LOW LINE
+FF40;F;FULLWIDTH GRAVE ACCENT
+FF41;F;FULLWIDTH LATIN SMALL LETTER A
+FF42;F;FULLWIDTH LATIN SMALL LETTER B
+FF43;F;FULLWIDTH LATIN SMALL LETTER C
+FF44;F;FULLWIDTH LATIN SMALL LETTER D
+FF45;F;FULLWIDTH LATIN SMALL LETTER E
+FF46;F;FULLWIDTH LATIN SMALL LETTER F
+FF47;F;FULLWIDTH LATIN SMALL LETTER G
+FF48;F;FULLWIDTH LATIN SMALL LETTER H
+FF49;F;FULLWIDTH LATIN SMALL LETTER I
+FF4A;F;FULLWIDTH LATIN SMALL LETTER J
+FF4B;F;FULLWIDTH LATIN SMALL LETTER K
+FF4C;F;FULLWIDTH LATIN SMALL LETTER L
+FF4D;F;FULLWIDTH LATIN SMALL LETTER M
+FF4E;F;FULLWIDTH LATIN SMALL LETTER N
+FF4F;F;FULLWIDTH LATIN SMALL LETTER O
+FF50;F;FULLWIDTH LATIN SMALL LETTER P
+FF51;F;FULLWIDTH LATIN SMALL LETTER Q
+FF52;F;FULLWIDTH LATIN SMALL LETTER R
+FF53;F;FULLWIDTH LATIN SMALL LETTER S
+FF54;F;FULLWIDTH LATIN SMALL LETTER T
+FF55;F;FULLWIDTH LATIN SMALL LETTER U
+FF56;F;FULLWIDTH LATIN SMALL LETTER V
+FF57;F;FULLWIDTH LATIN SMALL LETTER W
+FF58;F;FULLWIDTH LATIN SMALL LETTER X
+FF59;F;FULLWIDTH LATIN SMALL LETTER Y
+FF5A;F;FULLWIDTH LATIN SMALL LETTER Z
+FF5B;F;FULLWIDTH LEFT CURLY BRACKET
+FF5C;F;FULLWIDTH VERTICAL LINE
+FF5D;F;FULLWIDTH RIGHT CURLY BRACKET
+FF5E;F;FULLWIDTH TILDE
+FF61;H;HALFWIDTH IDEOGRAPHIC FULL STOP
+FF62;H;HALFWIDTH LEFT CORNER BRACKET
+FF63;H;HALFWIDTH RIGHT CORNER BRACKET
+FF64;H;HALFWIDTH IDEOGRAPHIC COMMA
+FF65;H;HALFWIDTH KATAKANA MIDDLE DOT
+FF66;H;HALFWIDTH KATAKANA LETTER WO
+FF67;H;HALFWIDTH KATAKANA LETTER SMALL A
+FF68;H;HALFWIDTH KATAKANA LETTER SMALL I
+FF69;H;HALFWIDTH KATAKANA LETTER SMALL U
+FF6A;H;HALFWIDTH KATAKANA LETTER SMALL E
+FF6B;H;HALFWIDTH KATAKANA LETTER SMALL O
+FF6C;H;HALFWIDTH KATAKANA LETTER SMALL YA
+FF6D;H;HALFWIDTH KATAKANA LETTER SMALL YU
+FF6E;H;HALFWIDTH KATAKANA LETTER SMALL YO
+FF6F;H;HALFWIDTH KATAKANA LETTER SMALL TU
+FF70;H;HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
+FF71;H;HALFWIDTH KATAKANA LETTER A
+FF72;H;HALFWIDTH KATAKANA LETTER I
+FF73;H;HALFWIDTH KATAKANA LETTER U
+FF74;H;HALFWIDTH KATAKANA LETTER E
+FF75;H;HALFWIDTH KATAKANA LETTER O
+FF76;H;HALFWIDTH KATAKANA LETTER KA
+FF77;H;HALFWIDTH KATAKANA LETTER KI
+FF78;H;HALFWIDTH KATAKANA LETTER KU
+FF79;H;HALFWIDTH KATAKANA LETTER KE
+FF7A;H;HALFWIDTH KATAKANA LETTER KO
+FF7B;H;HALFWIDTH KATAKANA LETTER SA
+FF7C;H;HALFWIDTH KATAKANA LETTER SI
+FF7D;H;HALFWIDTH KATAKANA LETTER SU
+FF7E;H;HALFWIDTH KATAKANA LETTER SE
+FF7F;H;HALFWIDTH KATAKANA LETTER SO
+FF80;H;HALFWIDTH KATAKANA LETTER TA
+FF81;H;HALFWIDTH KATAKANA LETTER TI
+FF82;H;HALFWIDTH KATAKANA LETTER TU
+FF83;H;HALFWIDTH KATAKANA LETTER TE
+FF84;H;HALFWIDTH KATAKANA LETTER TO
+FF85;H;HALFWIDTH KATAKANA LETTER NA
+FF86;H;HALFWIDTH KATAKANA LETTER NI
+FF87;H;HALFWIDTH KATAKANA LETTER NU
+FF88;H;HALFWIDTH KATAKANA LETTER NE
+FF89;H;HALFWIDTH KATAKANA LETTER NO
+FF8A;H;HALFWIDTH KATAKANA LETTER HA
+FF8B;H;HALFWIDTH KATAKANA LETTER HI
+FF8C;H;HALFWIDTH KATAKANA LETTER HU
+FF8D;H;HALFWIDTH KATAKANA LETTER HE
+FF8E;H;HALFWIDTH KATAKANA LETTER HO
+FF8F;H;HALFWIDTH KATAKANA LETTER MA
+FF90;H;HALFWIDTH KATAKANA LETTER MI
+FF91;H;HALFWIDTH KATAKANA LETTER MU
+FF92;H;HALFWIDTH KATAKANA LETTER ME
+FF93;H;HALFWIDTH KATAKANA LETTER MO
+FF94;H;HALFWIDTH KATAKANA LETTER YA
+FF95;H;HALFWIDTH KATAKANA LETTER YU
+FF96;H;HALFWIDTH KATAKANA LETTER YO
+FF97;H;HALFWIDTH KATAKANA LETTER RA
+FF98;H;HALFWIDTH KATAKANA LETTER RI
+FF99;H;HALFWIDTH KATAKANA LETTER RU
+FF9A;H;HALFWIDTH KATAKANA LETTER RE
+FF9B;H;HALFWIDTH KATAKANA LETTER RO
+FF9C;H;HALFWIDTH KATAKANA LETTER WA
+FF9D;H;HALFWIDTH KATAKANA LETTER N
+FF9E;H;HALFWIDTH KATAKANA VOICED SOUND MARK
+FF9F;H;HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
+FFA0;H;HALFWIDTH HANGUL FILLER
+FFA1;H;HALFWIDTH HANGUL LETTER KIYEOK
+FFA2;H;HALFWIDTH HANGUL LETTER SSANGKIYEOK
+FFA3;H;HALFWIDTH HANGUL LETTER KIYEOK-SIOS
+FFA4;H;HALFWIDTH HANGUL LETTER NIEUN
+FFA5;H;HALFWIDTH HANGUL LETTER NIEUN-CIEUC
+FFA6;H;HALFWIDTH HANGUL LETTER NIEUN-HIEUH
+FFA7;H;HALFWIDTH HANGUL LETTER TIKEUT
+FFA8;H;HALFWIDTH HANGUL LETTER SSANGTIKEUT
+FFA9;H;HALFWIDTH HANGUL LETTER RIEUL
+FFAA;H;HALFWIDTH HANGUL LETTER RIEUL-KIYEOK
+FFAB;H;HALFWIDTH HANGUL LETTER RIEUL-MIEUM
+FFAC;H;HALFWIDTH HANGUL LETTER RIEUL-PIEUP
+FFAD;H;HALFWIDTH HANGUL LETTER RIEUL-SIOS
+FFAE;H;HALFWIDTH HANGUL LETTER RIEUL-THIEUTH
+FFAF;H;HALFWIDTH HANGUL LETTER RIEUL-PHIEUPH
+FFB0;H;HALFWIDTH HANGUL LETTER RIEUL-HIEUH
+FFB1;H;HALFWIDTH HANGUL LETTER MIEUM
+FFB2;H;HALFWIDTH HANGUL LETTER PIEUP
+FFB3;H;HALFWIDTH HANGUL LETTER SSANGPIEUP
+FFB4;H;HALFWIDTH HANGUL LETTER PIEUP-SIOS
+FFB5;H;HALFWIDTH HANGUL LETTER SIOS
+FFB6;H;HALFWIDTH HANGUL LETTER SSANGSIOS
+FFB7;H;HALFWIDTH HANGUL LETTER IEUNG
+FFB8;H;HALFWIDTH HANGUL LETTER CIEUC
+FFB9;H;HALFWIDTH HANGUL LETTER SSANGCIEUC
+FFBA;H;HALFWIDTH HANGUL LETTER CHIEUCH
+FFBB;H;HALFWIDTH HANGUL LETTER KHIEUKH
+FFBC;H;HALFWIDTH HANGUL LETTER THIEUTH
+FFBD;H;HALFWIDTH HANGUL LETTER PHIEUPH
+FFBE;H;HALFWIDTH HANGUL LETTER HIEUH
+FFC2;H;HALFWIDTH HANGUL LETTER A
+FFC3;H;HALFWIDTH HANGUL LETTER AE
+FFC4;H;HALFWIDTH HANGUL LETTER YA
+FFC5;H;HALFWIDTH HANGUL LETTER YAE
+FFC6;H;HALFWIDTH HANGUL LETTER EO
+FFC7;H;HALFWIDTH HANGUL LETTER E
+FFCA;H;HALFWIDTH HANGUL LETTER YEO
+FFCB;H;HALFWIDTH HANGUL LETTER YE
+FFCC;H;HALFWIDTH HANGUL LETTER O
+FFCD;H;HALFWIDTH HANGUL LETTER WA
+FFCE;H;HALFWIDTH HANGUL LETTER WAE
+FFCF;H;HALFWIDTH HANGUL LETTER OE
+FFD2;H;HALFWIDTH HANGUL LETTER YO
+FFD3;H;HALFWIDTH HANGUL LETTER U
+FFD4;H;HALFWIDTH HANGUL LETTER WEO
+FFD5;H;HALFWIDTH HANGUL LETTER WE
+FFD6;H;HALFWIDTH HANGUL LETTER WI
+FFD7;H;HALFWIDTH HANGUL LETTER YU
+FFDA;H;HALFWIDTH HANGUL LETTER EU
+FFDB;H;HALFWIDTH HANGUL LETTER YI
+FFDC;H;HALFWIDTH HANGUL LETTER I
+FFE0;F;FULLWIDTH CENT SIGN
+FFE1;F;FULLWIDTH POUND SIGN
+FFE2;F;FULLWIDTH NOT SIGN
+FFE3;F;FULLWIDTH MACRON
+FFE4;F;FULLWIDTH BROKEN BAR
+FFE5;F;FULLWIDTH YEN SIGN
+FFE6;F;FULLWIDTH WON SIGN
+FFE8;H;HALFWIDTH FORMS LIGHT VERTICAL
+FFE9;H;HALFWIDTH LEFTWARDS ARROW
+FFEA;H;HALFWIDTH UPWARDS ARROW
+FFEB;H;HALFWIDTH RIGHTWARDS ARROW
+FFEC;H;HALFWIDTH DOWNWARDS ARROW
+FFED;H;HALFWIDTH BLACK SQUARE
+FFEE;H;HALFWIDTH WHITE CIRCLE
+FFF9;N;INTERLINEAR ANNOTATION ANCHOR
+FFFA;N;INTERLINEAR ANNOTATION SEPARATOR
+FFFB;N;INTERLINEAR ANNOTATION TERMINATOR
+FFFC;N;OBJECT REPLACEMENT CHARACTER
+FFFD;A;REPLACEMENT CHARACTER
diff --git a/lib/unicode/In/ArabicPresentationForms-B.pl b/lib/unicode/In/ArabicPresentationForms-B.pl
index 0740d3b2ea..9e81cf9572 100644
--- a/lib/unicode/In/ArabicPresentationForms-B.pl
+++ b/lib/unicode/In/ArabicPresentationForms-B.pl
@@ -1,3 +1,3 @@
return <<'END';
-FE70 FEFF
+FE70 FEFE
END
diff --git a/lib/unicode/In/Specials.pl b/lib/unicode/In/Specials.pl
index f9d3943455..6be56a4039 100644
--- a/lib/unicode/In/Specials.pl
+++ b/lib/unicode/In/Specials.pl
@@ -1,3 +1,3 @@
return <<'END';
-FFF0 FFFF
+FFF0 FFFD
END
diff --git a/lib/unicode/In/Tibetan.pl b/lib/unicode/In/Tibetan.pl
index b46705d95b..bf2888d38d 100644
--- a/lib/unicode/In/Tibetan.pl
+++ b/lib/unicode/In/Tibetan.pl
@@ -1,3 +1,3 @@
return <<'END';
-0F00 0FBF
+0F00 0FFF
END
diff --git a/lib/unicode/index2.txt b/lib/unicode/Index.txt
index 273ea4e75a..1ebeea6848 100755..100644
--- a/lib/unicode/index2.txt
+++ b/lib/unicode/Index.txt
@@ -8,23 +8,25 @@ a, latin small letter script 0251
A, LATIN SMALL LETTER TURNED 0250
ABBREVIATION MARK, ARMENIAN 055F
ABBREVIATION SIGN, DEVANAGARI 0970
-Abbreviations, Squared Latin 3380
+Abbreviations, Squared Latin 3371
+Aboriginal Syllabics, Unified Canadian 1400
ABOVE RIGHT, COMBINING COMMA 0315
above, cedilla 0312
-ABOVE, COMBINING ANTICLOCKWISE ARROW 20D4
+ABOVE, COMBINING ALMOST EQUAL TO 034C
+ABOVE, COMBINING BRIDGE 0346
ABOVE, COMBINING CLOCKWISE ARROW 20D5
ABOVE, COMBINING COMMA 0313
ABOVE, COMBINING DOT 0307
ABOVE, COMBINING DOUBLE VERTICAL LINE 030E
ABOVE, COMBINING FOUR DOTS 20DC
+ABOVE, COMBINING HOMOTHETIC 034B
ABOVE, COMBINING HOOK 0309
ABOVE, COMBINING LEFT ANGLE 031A
ABOVE, COMBINING LEFT ARROW 20D6
ABOVE, COMBINING LEFT HARPOON 20D0
ABOVE, COMBINING LEFT RIGHT ARROW 20E1
+ABOVE, COMBINING NOT TILDE 034A
ABOVE, COMBINING REVERSED COMMA 0314
-ABOVE, COMBINING RIGHT ARROW 20D7
-ABOVE, COMBINING RIGHT HARPOON 20D1
ABOVE, COMBINING RING 030A
ABOVE, COMBINING THREE DOTS 20DB
ABOVE, COMBINING TURNED COMMA 0312
@@ -33,10 +35,32 @@ ABOVE, COMBINING X 033D
ABOVE, DOT 02D9
above, double dot 0308
ABOVE, RING 02DA
-above, v 030C
+above, vee 030C
+ACCENT BELOW, COMBINING ACUTE 0317
+ACCENT BELOW, COMBINING CIRCUMFLEX 032D
+ACCENT BELOW, COMBINING GRAVE 0316
+ACCENT, ACUTE 00B4
+ACCENT, CIRCUMFLEX 005E
+ACCENT, COMBINING ACUTE 0301
+ACCENT, COMBINING CIRCUMFLEX 0302
+ACCENT, COMBINING DOUBLE ACUTE 030B
+ACCENT, COMBINING DOUBLE GRAVE 030F
+ACCENT, COMBINING GRAVE 0300
+ACCENT, DOUBLE ACUTE 02DD
+ACCENT, GRAVE 0060
+ACCENT, MODIFIER LETTER ACUTE 02CA
+ACCENT, MODIFIER LETTER CIRCUMFLEX 02C6
+ACCENT, MODIFIER LETTER CROSS 02DF
+ACCENT, MODIFIER LETTER GRAVE 02CB
+ACCENT, MODIFIER LETTER LOW ACUTE 02CF
+ACCENT, MODIFIER LETTER LOW GRAVE 02CE
+accent, swedish grave 02DF
ACCOUNT OF 2100
-ACKNOWLEDGE 0006
-ACKNOWLEDGE, NEGATIVE 0015
+acknowledge 0006
+acknowledge, graphic for negative 237B
+acknowledge, negative 0015
+ACKNOWLEDGE, SYMBOL FOR 2406
+ACKNOWLEDGE, SYMBOL FOR NEGATIVE 2415
ACTIVATE ARABIC FORM SHAPING 206D
ACTIVATE SYMMETRIC SWAPPING 206B
ACUTE ACCENT 00B4
@@ -49,27 +73,23 @@ ACUTE ACCENT, MODIFIER LETTER 02CA
ACUTE ACCENT, MODIFIER LETTER LOW 02CF
ACUTE TONE MARK, COMBINING 0341
acute, spacing 00B4
-ADDAK, GURMUKHI 0A71
ADDRESSED TO THE SUBJECT 2101
-ADI SHAKTI 262C
AE, LATIN SMALL LETTER 00E6
-AFRICAN D, LATIN CAPITAL LETTER 0189
AIRPLANE 2708
+aldus leaf 2766
ALEF SYMBOL 2135
ALL AROUND-PROFILE 232E
ALL EQUAL TO 224C
ALL, FOR 2200
ALMOST EQUAL TO 2248
+ALMOST EQUAL TO ABOVE, COMBINING 034C
ALPHA, LATIN SMALL LETTER 0251
ALPHA, LATIN SMALL LETTER TURNED 0252
-Alphabet (Khutsuri), Georgian Archaic Uppercase 10A0
-Alphabet (Mkhedruli), Georgian Modern Lowercase 10D0
-Alphabet, Basic Russian 0410
-Alphabet, International Phonetic 0250
-Alphabet, Korean Hangul Combining 1100
Alphabetic Presentation Forms FB00
Alphanumerics, Enclosed 2460
alternating current 223F
+ALTERNATIVE KEY SYMBOL 2387
+ALVEOLAR CLICK, LATIN LETTER 01C2
AMPERSAND 0026
AND, CURLY LOGICAL 22CF
AND, LOGICAL 2227
@@ -77,6 +97,7 @@ AND, N-ARY LOGICAL 22C0
ANGLE 2220
ANGLE ABOVE, COMBINING LEFT 031A
angle arc 2222
+ANGLE BELOW, COMBINING LEFT 0349
ANGLE BRACKET, LEFT 3008
ANGLE BRACKET, LEFT DOUBLE 300A
ANGLE BRACKET, LEFT-POINTING 2329
@@ -89,23 +110,13 @@ ANGLE WITH ARC, RIGHT 22BE
ANGLE, MEASURED 2221
ANGLE, RIGHT 221F
ANGLE, SPHERICAL 2222
+angled dash 00AC
ANGSTROM SIGN 212B
ANKH 2625
-ANO TELEIA, GREEK 0387
-ANTICLOCKWISE ARROW ABOVE, COMBINING 20D4
-ANTICLOCKWISE CONTOUR INTEGRAL 2233
-ANTICLOCKWISE RING OVERLAY, COMBINING 20DA
-ANUDATTA, DEVANAGARI STRESS SIGN 0952
-anunasika, devanagari 0901
-ANUSVARA, BENGALI SIGN 0982
-ANUSVARA, DEVANAGARI SIGN 0902
-ANUSVARA, GUJARATI SIGN 0A82
-ANUSVARA, KANNADA SIGN 0C82
-ANUSVARA, MALAYALAM SIGN 0D02
-ANUSVARA, ORIYA SIGN 0B02
-ANUSVARA, TAMIL SIGN 0B82
-ANUSVARA, TELUGU SIGN 0C02
-apl downstile 230A
+Annotation Signs, Koranic 06D6
+Annotation, Interlinear FFF9
+Annotation, Kanbun Ideographic 3190
+APL 2336
APL Functional Symbols 2336
apl jot 2218
apl overbar 00AF
@@ -115,9 +126,12 @@ apl tilde 223C
apl upstile 2308
APOSTROPHE 0027
apostrophe 02BC
+apostrophe 2019
APOSTROPHE, ARMENIAN 055A
APOSTROPHE, MODIFIER LETTER 02BC
+APOSTROPHE, MODIFIER LETTER DOUBLE 02EE
apostrophe-quote 0027
+application program command 009F
APPROACHES THE LIMIT 2250
APPROXIMATELY EQUAL TO 2245
approximately equal to 2257
@@ -129,108 +143,97 @@ ARABIC FIVE POINTED STAR 066D
ARABIC FORM SHAPING, ACTIVATE 206D
ARABIC FORM SHAPING, INHIBIT 206C
ARABIC FULL STOP 06D4
-Arabic Harakaat 064B
-arabic kashida 0640
-ARABIC LETTER SUPERSCRIPT ALEF 0670
Arabic Letters 0627
-Arabic Letters, Extended 0671
ARABIC PERCENT SIGN 066A
+Arabic Points 064B
Arabic Presentation Forms-A FB50
Arabic Presentation Forms-B FE70
ARABIC QUESTION MARK 061F
ARABIC SEMICOLON 061B
-ARABIC TATWEEL 0640
ARABIC THOUSANDS SEPARATOR 066C
+Arabic, Extended 0671
Arabic-Indic Digits 0660
-Arabic-Indic Digits (Persian and Urdu), Eastern 06F0
+Arabic-Indic Digits for Persian and Urdu, Eastern 06F0
ARC 2312
arc, angle 2222
ARC, RIGHT ANGLE WITH 22BE
ARCH BELOW, COMBINING INVERTED DOUBLE 032B
Arcs 25DC
+area, end of guarded 0097
+area, end of selected 0087
+area, start of guarded 0096
+area, start of selected 0086
ARIES 2648
-aristeri keraia, greek 0375
Armenian 0530
ARMENIAN ABBREVIATION MARK 055F
ARMENIAN APOSTROPHE 055A
-armenian batsaganchakan nshan 055C
-armenian boot 055D
Armenian Capital Letters 0531
ARMENIAN COMMA 055D
ARMENIAN EMPHASIS MARK 055B
ARMENIAN EXCLAMATION MARK 055C
ARMENIAN FULL STOP 0589
-armenian hartsakan nshan 055E
-ARMENIAN MODIFIER LETTER LEFT HALF RING 0559
-armenian modifier letter right half ring 055A
-armenian patiw 055F
+ARMENIAN HYPHEN 058A
+Armenian Ligatures FB13
ARMENIAN QUESTION MARK 055E
-armenian shesht 055B
Armenian Small Letters 0561
-armenian vertsaket 0589
+ARROW ABOVE, COMBINING CLOCKWISE 20D5
+ARROW ABOVE, COMBINING LEFT 20D6
+ARROW ABOVE, COMBINING LEFT RIGHT 20E1
+ARROW BELOW, COMBINING DOUBLE RIGHTWARDS 0362
+ARROW BELOW, COMBINING LEFT RIGHT 034D
+ARROW BELOW, COMBINING UPWARDS 034E
Arrow Dingbats 2794
-arrow indicator, backward 25C5
-arrow indicator, forward 25BB
-ARROWHEAD, DOWN 2304
+ARROW, ELECTRIC 2301
ARROWHEAD, UP 2303
Arrowheads, Modifier Letter 02C2
Arrows 2190
ASCENDING NODE 260A
+ASCII 0020
ASCII C0 Control Codes 0000
ASCII Digits 0030
ASCII Variants, Fullwidth FF01
-ASCII, Based on 0020
+ash 00E6
ASSERTION 22A6
ASTERISK 002A
Asterisk Dingbats 2722
ASTERISK OPERATOR 2217
ASTERISK OPERATOR, CIRCLED 229B
+Asterisks and Snowflakes, Stars, 2721
ASTERISM 2042
+Astrological Symbols 263D
asymptotic to 2248
ASYMPTOTICALLY EQUAL TO 2243
AT, COMMERCIAL 0040
-AVAGRAHA, DEVANAGARI SIGN 093D
-AVAGRAHA, GUJARATI SIGN 0ABD
-AVAGRAHA, ORIYA SIGN 0B3D
B, LATIN LETTER SMALL CAPITAL 0299
B, SCRIPT CAPITAL 212C
baby gamma, latin small letter 0264
backslash 005C
BACKSLASH, COMBINING ENCLOSING CIRCLE 20E0
-BACKSPACE 0008
-backward arrow indicator 25C5
+backspace 0008
+BACKSPACE, SYMBOL FOR 2408
backward difference 2207
BAHT, THAI CURRENCY SYMBOL 0E3F
BALLOT BOX 2610
BALLOT BOX WITH CHECK 2611
BALLOT BOX WITH X 2612
BALLOT X 2717
+BALLOT X, HEAVY 2718
+bang 0021
Bar Dingbats, Vertical 2758
bar, broken vertical 00A6
BAR, HORIZONTAL 2015
bar, vertical 007C
barred o, latin capital letter 019F
BARRED O, LATIN SMALL LETTER 0275
-Based on ASCII 0020
-Based on GB 2312 (Chinese) 3100
-Based on ISCII 1988 (Devanagari) 0901
-Based on ISO 8859-1 (Latin-1) 00A0
-Based on ISO 8859-2, -3, -4, -9 (European Latin) 0100
-Based on ISO 8859-5 (Cyrillic) 0400
-Based on ISO 8859-6 (Arabic) 0600
-Based on ISO 8859-7 (Greek) 0370
-Based on ISO 8859-8 (Hebrew) 05D0
-Based on JIS X 0208 (Japanese Hiragana) 3040
-Based on KS C 5601 (Korean Hangul) 3130
-Based on TIS 620-2529 (Thai) 0E01
Basic Latin, C0 Controls and 0000
Basic Russian Alphabet 0410
-batsaganchakan nshan, armenian 055C
BEAMED EIGHTH NOTES 266B
BEAMED SIXTEENTH NOTES 266C
BECAUSE 2235
beginning of line 2310
-BELL 0007
+bell 0007
+BELL SYMBOL 237E
+BELL, SYMBOL FOR 2407
BELOW, COMBINING ACUTE ACCENT 0317
BELOW, COMBINING BREVE 032E
BELOW, COMBINING BRIDGE 032A
@@ -239,12 +242,16 @@ BELOW, COMBINING CIRCUMFLEX ACCENT 032D
BELOW, COMBINING COMMA 0326
BELOW, COMBINING DIAERESIS 0324
BELOW, COMBINING DOT 0323
-BELOW, COMBINING DOWN TACK 031E
+BELOW, COMBINING DOUBLE RIGHTWARDS ARROW 0362
+BELOW, COMBINING DOUBLE VERTICAL LINE 0348
+BELOW, COMBINING EQUALS SIGN 0347
BELOW, COMBINING GRAVE ACCENT 0316
BELOW, COMBINING INVERTED BREVE 032F
BELOW, COMBINING INVERTED BRIDGE 033A
BELOW, COMBINING INVERTED DOUBLE ARCH 032B
+BELOW, COMBINING LEFT ANGLE 0349
BELOW, COMBINING LEFT HALF RING 031C
+BELOW, COMBINING LEFT RIGHT ARROW 034D
BELOW, COMBINING LEFT TACK 0318
BELOW, COMBINING MACRON 0331
BELOW, COMBINING MINUS SIGN 0320
@@ -252,37 +259,42 @@ BELOW, COMBINING PALATALIZED HOOK 0321
BELOW, COMBINING PLUS SIGN 031F
BELOW, COMBINING RETROFLEX HOOK 0322
BELOW, COMBINING RIGHT HALF RING 0339
-BELOW, COMBINING RIGHT TACK 0319
BELOW, COMBINING RING 0325
BELOW, COMBINING SEAGULL 033C
BELOW, COMBINING SQUARE 033B
BELOW, COMBINING TILDE 0330
BELOW, COMBINING UP TACK 031D
+BELOW, COMBINING UPWARDS ARROW 034E
BELOW, COMBINING VERTICAL LINE 0329
-below, greek combining iota 0345
+below, greek non-spacing iota 0345
Bengali 0980
+Bengali Currency Signs 09F2
Bengali Digits 09E6
-bengali halant 09CD
-BENGALI ISSHAR 09FA
Bengali Letters 0985
BENGALI RUPEE MARK 09F2
BENGALI RUPEE SIGN 09F3
-BENGALI SIGN ANUSVARA 0982
-BENGALI SIGN CANDRABINDU 0981
-BENGALI SIGN NUKTA 09BC
-BENGALI SIGN VIRAMA 09CD
-BENGALI SIGN VISARGA 0983
BENZENE RING 232C
bernoulli function 212C
BET SYMBOL 2136
+Betty BOOP
BETWEEN 226C
+BIDENTAL PERCUSSIVE, LATIN LETTER 02AD
Bidirectional Formatting Controls 202A
-BINDI, GURMUKHI SIGN 0A02
-bindu, devanagari 0902
+Big 5, Duplicates from FA0C
+BILABIAL CLICK, LATIN LETTER 0298
+BILABIAL PERCUSSIVE, LATIN LETTER 02AC
BIOHAZARD SIGN 2623
-BLACK CIRCLE 25CF
-BLACK DIAMOND 25C6
-BLACK RECTANGLE 25AC
+BLACK LEFT POINTING INDEX 261A
+BLACK LEFTWARDS BULLET 204C
+BLACK LENTICULAR BRACKET, LEFT 3010
+BLACK NIB 2712
+BLACK PARALLELOGRAM 25B0
+BLACK SCISSORS 2702
+black small circle 2022
+BLACK SMILING FACE 263B
+BLACK STAR 2605
+BLACK SUN WITH RAYS 2600
+BLACK TELEPHONE 260E
BLACK-LETTER CAPITAL C 212D
BLACK-LETTER CAPITAL H 210C
BLACK-LETTER CAPITAL I 2111
@@ -290,18 +302,25 @@ BLACK-LETTER CAPITAL R 211C
BLACK-LETTER CAPITAL Z 2128
BLANK SYMBOL 2422
Block Elements 2580
+block, end of transmission 0017
+BLOCK, SYMBOL FOR END OF TRANSMISSION 2417
bom FEFF
-boot, armenian 055D
+Bopomofo Extended for Minnan and Hakka, Chinese 31A0
Bopomofo, Chinese 3100
BOWTIE 22C8
Box Drawing 2500
BOX WITH CHECK, BALLOT 2611
BOX WITH X, BALLOT 2612
BOX, BALLOT 2610
+BOX, OPEN 2423
+BOX, SHOULDERED OPEN 237D
BOX, X IN A RECTANGLE 2327
bra 2329
+brace, closing 007D
brace, opening 007B
BRACKET WITH QUILL, LEFT SQUARE 2045
+bracket, closing curly 007D
+bracket, closing square 005D
BRACKET, LEFT ANGLE 3008
BRACKET, LEFT BLACK LENTICULAR 3010
BRACKET, LEFT CORNER 300C
@@ -316,6 +335,12 @@ BRACKET, LEFT WHITE TORTOISE SHELL 3018
BRACKET, LEFT-POINTING ANGLE 2329
bracket, opening curly 007B
bracket, opening square 005B
+BRACKET, RIGHT CURLY 007D
+BRACKET, RIGHT SQUARE 005D
+Braille Patterns 2800
+brazilian currency 20A2
+break here, no 0083
+break permitted here 0082
breathing, rough 0314
breathing, smooth 0313
BREVE 02D8
@@ -324,34 +349,38 @@ BREVE BELOW, COMBINING INVERTED 032F
BREVE, COMBINING 0306
BREVE, COMBINING DOUBLE INVERTED 0361
BREVE, COMBINING INVERTED 0311
+BRIDGE ABOVE, COMBINING 0346
BRIDGE BELOW, COMBINING 032A
BRIDGE BELOW, COMBINING INVERTED 033A
broken vertical bar 00A6
BULLET 2022
BULLET OPERATOR 2219
+BULLET, BLACK LEFTWARDS 204C
BULLET, HYPHEN 2043
+BULLET, REVERSED ROTATED FLORAL HEART 2619
bullet, tainome (japanese, a kind of) 25C9
BULLET, TRIANGULAR 2023
BULLET, WHITE 25E6
BULLSEYE 25CE
bullseye, latin letter 0298
+by definition, equal to 225C
+BY DEFINITION, EQUAL TO 225D
+BY, MEASURED 225E
byte order mark FEFF
C, BLACK-LETTER CAPITAL 212D
C, DOUBLE-STRUCK CAPITAL 2102
+C, LATIN LETTER STRETCHED 0297
C0 Controls and Basic Latin 0000
C1 Controls and Latin-1 Supplement 0080
CADA UNA 2106
CADUCEUS 2624
-CANCEL 0018
-CANCELLATION MARK, LAO 0ECC
+Canadian Aboriginal Syllabics, Unified 1400
+cancel 0018
+cancel character 0094
+CANCEL, SYMBOL FOR 2418
CANCER 264B
-CANDRABINDU, BENGALI SIGN 0981
CANDRABINDU, COMBINING 0310
-CANDRABINDU, DEVANAGARI SIGN 0901
-CANDRABINDU, GUJARATI SIGN 0A81
-CANDRABINDU, ORIYA SIGN 0B01
-CANDRABINDU, TELUGU SIGN 0C01
-Cantillation marks, Hebrew Accents or 0591
+Cantillation Marks, Hebrew 0591
cap 2229
CAP, SQUARE 2293
Capital Letters, Armenian 0531
@@ -361,11 +390,11 @@ Capital Letters, Greek 0391
Capital Letters, Latin 0041
CAPRICORN 2651
caps lock 21EA
-Card Suits 2660
+caps lock 21EC
+Card Suits, Playing 2660
cardinal (countable), first transfinite 2135
cardinal (functions of a real variable), third transfinite 2137
cardinal (the continuum), second transfinite 2136
-cardinal, fourth transfinite 2138
CARE OF 2105
caret 028C
CARET 2038
@@ -373,8 +402,9 @@ CARET INSERTION POINT 2041
CARON 02C7
CARON BELOW, COMBINING 032C
CARON, COMBINING 030C
-CARRIAGE RETURN 000D
+carriage return 000D
carriage return 21B5
+CARRIAGE RETURN, SYMBOL FOR 240D
CAUTION SIGN 2621
CEDILLA 00B8
cedilla above 0312
@@ -385,27 +415,39 @@ CELSIUS, DEGREE 2103
CENT SIGN 00A2
centigrade, degrees 2103
CENTRE LINE SYMBOL 2104
+CENTRED LEFT HALF RING, MODIFIER LETTER 02D3
+CENTRELINE LOW LINE FE4E
+CENTRELINE OVERLINE FE4A
+character introducer, single 009A
+character tabulation set 0088
+character tabulation with justification 0089
+CHARACTER TIE 2040
Chart Components, Form and 2500
-Check Mark Dingbats 2713
+CHECK MARK 2713
+CHECK MARK, HEAVY 2714
+CHECK MARK, NOT 237B
CHECK, BALLOT BOX WITH 2611
+Cherokee 13A0
Chess Pieces 2654
+chevrons 00AB
CHI RHO 2627
Chinese Bopomofo 3100
+Chinese Bopomofo Extended for Minnan and Hakka 31A0
CIRCLE BACKSLASH, COMBINING ENCLOSING 20E0
CIRCLE, BLACK 25CF
circle, black small 2022
CIRCLE, COMBINING ENCLOSING 20DD
circle, jis composition 20DD
-CIRCLE, WHITE 25CB
+CIRCLE, LARGE 25EF
CIRCLED ASTERISK OPERATOR 229B
CIRCLED DASH 229D
CIRCLED DIGIT ZERO 24EA
+Circled Digits, Dingbat 2776
CIRCLED DIVISION SLASH 2298
CIRCLED DOT OPERATOR 2299
CIRCLED EQUALS 229C
Circled Ideographs 3280
Circled Inverse Numbers 2776
-Circled Inverse Sans-Serif Numbers 278A
Circled Japanese Katakana 32D0
Circled Korean Hangul Elements 3260
Circled Korean Hangul Syllables 326E
@@ -415,7 +457,6 @@ Circled Numbers 2460
CIRCLED PLUS 2295
CIRCLED POSTAL MARK 3036
CIRCLED RING OPERATOR 229A
-Circled Sans-Serif Numbers 2780
CIRCLED TIMES 2297
Circles 25CB
CIRCUMFLEX ACCENT 005E
@@ -426,16 +467,33 @@ circumflex, spacing 005E
CJK Compatibility 3300
CJK Compatibility Forms FE30
CJK Compatibility Ideographs F900
+CJK Compatibility Ideographs, IBM FA0E
+CJK Ideographs Area 3400
CJK Letters and Ideographs, Enclosed 3200
+CJK Phonetics and Symbols Area 2E00
+CJK Radicals Supplement 2E80
CJK Symbols and Punctuation 3000
CJK Unified Ideographs 4E00
+CJK Unified Ideographs Extension A 3400
clear key 2327
+CLEAR SCREEN SYMBOL 239A
clear weather 2600
+CLICK, LATIN LETTER ALVEOLAR 01C2
+CLICK, LATIN LETTER BILABIAL 0298
+CLICK, LATIN LETTER DENTAL 01C0
+CLICK, LATIN LETTER LATERAL 01C1
+CLICK, LATIN LETTER RETROFLEX 01C3
CLOCKWISE ARROW ABOVE, COMBINING 20D5
CLOCKWISE CONTOUR INTEGRAL 2232
CLOCKWISE INTEGRAL 2231
CLOCKWISE RING OVERLAY, COMBINING 20D9
clone 2104
+Clones of Diacritics, Spacing 02D8
+closed epsilon, latin small letter 029A
+CLOSED OMEGA, LATIN SMALL LETTER 0277
+CLOSED OPEN E, LATIN SMALL LETTER 029A
+closed reversed epsilon, latin small letter 025E
+CLOSED REVERSED OPEN E, LATIN SMALL LETTER 025E
closing brace 007D
closing curly bracket 007D
CLOSING MARK, IDEOGRAPHIC 3006
@@ -446,22 +504,24 @@ cloudy weather 2601
COLON 003A
COLON EQUALS 2254
COLON SIGN 20A1
-COLON, EQUALS 2255
+COLON, ETHIOPIC 1365
COLON, MODIFIER LETTER HALF TRIANGULAR 02D1
COLON, MODIFIER LETTER TRIANGULAR 02D0
+COLON, MONGOLIAN 1804
COMBINING ACUTE ACCENT 0301
COMBINING ACUTE ACCENT BELOW 0317
COMBINING ACUTE TONE MARK 0341
-Combining Alphabet, Korean Hangul 1100
-COMBINING ANTICLOCKWISE ARROW ABOVE 20D4
-COMBINING ANTICLOCKWISE RING OVERLAY 20DA
+COMBINING ALMOST EQUAL TO ABOVE 034C
+Combining Alphabet, Korean Hangul Jamo 1100
COMBINING BREVE 0306
COMBINING BREVE BELOW 032E
+COMBINING BRIDGE ABOVE 0346
COMBINING BRIDGE BELOW 032A
COMBINING CANDRABINDU 0310
COMBINING CARON 030C
COMBINING CARON BELOW 032C
COMBINING CEDILLA 0327
+Combining Characters, Cyrillic 0483
COMBINING CIRCUMFLEX ACCENT 0302
COMBINING CIRCUMFLEX ACCENT BELOW 032D
COMBINING CLOCKWISE ARROW ABOVE 20D5
@@ -469,10 +529,6 @@ COMBINING CLOCKWISE RING OVERLAY 20D9
COMBINING COMMA ABOVE 0313
COMBINING COMMA ABOVE RIGHT 0315
COMBINING COMMA BELOW 0326
-COMBINING CYRILLIC DASIA PNEUMATA 0485
-COMBINING CYRILLIC PALATALIZATION 0484
-COMBINING CYRILLIC PSILI PNEUMATA 0486
-COMBINING CYRILLIC TITLO 0483
Combining Diacritical Marks 0300
Combining Diacritical Marks for Symbols 20D0
COMBINING DIAERESIS 0308
@@ -484,13 +540,19 @@ COMBINING DOUBLE GRAVE ACCENT 030F
COMBINING DOUBLE INVERTED BREVE 0361
COMBINING DOUBLE LOW LINE 0333
COMBINING DOUBLE OVERLINE 033F
+COMBINING DOUBLE RIGHTWARDS ARROW BELOW 0362
COMBINING DOUBLE TILDE 0360
+COMBINING DOUBLE TILDE LEFT HALF FE22
COMBINING DOUBLE VERTICAL LINE ABOVE 030E
+COMBINING DOUBLE VERTICAL LINE BELOW 0348
COMBINING DOWN TACK BELOW 031E
COMBINING ENCLOSING CIRCLE 20DD
COMBINING ENCLOSING CIRCLE BACKSLASH 20E0
COMBINING ENCLOSING DIAMOND 20DF
+COMBINING ENCLOSING KEYCAP 20E3
+COMBINING ENCLOSING SCREEN 20E2
COMBINING ENCLOSING SQUARE 20DE
+COMBINING EQUALS SIGN BELOW 0347
COMBINING FOUR DOTS ABOVE 20DC
COMBINING GRAVE ACCENT 0300
COMBINING GRAVE ACCENT BELOW 0316
@@ -501,20 +563,23 @@ COMBINING GREEK PERISPOMENI 0342
COMBINING GREEK YPOGEGRAMMENI 0345
combining hacek 030C
Combining Half Marks FE20
+COMBINING HOMOTHETIC ABOVE 034B
COMBINING HOOK ABOVE 0309
COMBINING HORN 031B
COMBINING INVERTED BREVE 0311
COMBINING INVERTED BREVE BELOW 032F
COMBINING INVERTED BRIDGE BELOW 033A
COMBINING INVERTED DOUBLE ARCH BELOW 032B
-combining iota below, greek 0345
COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK 3099
COMBINING LEFT ANGLE ABOVE 031A
+COMBINING LEFT ANGLE BELOW 0349
COMBINING LEFT ARROW ABOVE 20D6
COMBINING LEFT HALF RING BELOW 031C
COMBINING LEFT HARPOON ABOVE 20D0
COMBINING LEFT RIGHT ARROW ABOVE 20E1
+COMBINING LEFT RIGHT ARROW BELOW 034D
COMBINING LEFT TACK BELOW 0318
+COMBINING LIGATURE LEFT HALF FE20
COMBINING LONG SOLIDUS OVERLAY 0338
COMBINING LONG STROKE OVERLAY 0336
COMBINING LONG VERTICAL LINE OVERLAY 20D2
@@ -522,16 +587,14 @@ COMBINING LOW LINE 0332
COMBINING MACRON 0304
COMBINING MACRON BELOW 0331
COMBINING MINUS SIGN BELOW 0320
+COMBINING NOT TILDE ABOVE 034A
COMBINING OGONEK 0328
COMBINING OVERLINE 0305
COMBINING PALATALIZED HOOK BELOW 0321
COMBINING PLUS SIGN BELOW 031F
COMBINING RETROFLEX HOOK BELOW 0322
COMBINING REVERSED COMMA ABOVE 0314
-COMBINING RIGHT ARROW ABOVE 20D7
COMBINING RIGHT HALF RING BELOW 0339
-COMBINING RIGHT HARPOON ABOVE 20D1
-COMBINING RIGHT TACK BELOW 0319
COMBINING RING ABOVE 030A
COMBINING RING BELOW 0325
COMBINING RING OVERLAY 20D8
@@ -546,6 +609,7 @@ COMBINING TILDE BELOW 0330
COMBINING TILDE OVERLAY 0334
COMBINING TURNED COMMA ABOVE 0312
COMBINING UP TACK BELOW 031D
+COMBINING UPWARDS ARROW BELOW 034E
COMBINING VERTICAL LINE ABOVE 030D
COMBINING VERTICAL LINE BELOW 0329
COMBINING VERTICAL TILDE 033E
@@ -567,173 +631,224 @@ comma quotation mark, single reversed 201B
comma quotation mark, single turned 2018
COMMA, ARABIC 060C
COMMA, ARMENIAN 055D
+COMMA, ETHIOPIC 1363
comma, georgian 00B7
COMMA, IDEOGRAPHIC 3001
COMMA, MODIFIER LETTER REVERSED 02BD
COMMA, MODIFIER LETTER TURNED 02BB
+COMMA, MONGOLIAN 1802
command key 2318
+command, application program 009F
+command, operating system 009D
COMMERCIAL AT 0040
compass 263C
+Compatibility and Specials Area F900
Compatibility Forms, CJK FE30
Compatibility Ideographs, CJK F900
+Compatibility Ideographs, IBM CJK FA0E
Compatibility Jamo, Korean Hangul 3130
Compatibility, CJK 3300
COMPLEMENT 2201
complex numbers, the set of 2102
+Components, Form and Chart 2500
composite function 2218
composition circle, jis 20DD
+COMPOSITION SYMBOL 2384
conductance 2127
CONICAL TAPER 2332
CONJUGATE MATRIX, HERMITIAN 22B9
+conjunction 2227
CONJUNCTION 260C
CONTAINS AS MEMBER 220B
+CONTAINS AS MEMBER, SMALL 220D
CONTAINS AS NORMAL SUBGROUP 22B3
+CONTINUOUS UNDERLINE SYMBOL 2381
continuum, second transfinite cardinal 2136
CONTOUR INTEGRAL 222E
-CONTOUR INTEGRAL, ANTICLOCKWISE 2233
CONTOUR INTEGRAL, CLOCKWISE 2232
+Control Code Graphics 25F0
Control Codes, ASCII C0 0000
Control Codes, C1 0080
-Control Codes, Graphic Symbols for 2400
+Control Codes, Graphic Pictures for 2400
+Control Codes, Graphics for 237B
+control sequence introducer 009B
+control string, device 0090
+control, graphic for 2388
+Control, Syriac Format 070F
Controls and Basic Latin, C0 0000
Controls and Latin-1 Supplement, C1 0080
Controls, Bidirectional Formatting 202A
+Controls, Mongolian Format 180B
COPRODUCT, N-ARY 2210
-Coptic-Unique Letters 03E2
+Coptic, Greek and 0370
+Coptic-unique Letters 03E2
COPYRIGHT SIGN 00A9
COPYRIGHT, SOUND RECORDING 2117
CORNER BRACKET, LEFT 300C
CORNER BRACKET, LEFT WHITE 300E
CORNER, TOP LEFT 231C
+CORPORATION, SQUARE 337F
CORRESPONDS TO 2258
corresponds to 2259
+costa rican currency 20A1
countable, first transfinite cardinal 2135
COUNTERBORE 2334
-counterclockwise arrow above, combining 20D4
-counterclockwise contour integral 2233
-counterclockwise ring overlay, combining 20DA
COUNTERSINK 2335
+cr 000D
CRESCENT, STAR AND 262A
Croatian Digraphs Matching Serbian Cyrillic Letters 01C4
+Croatian, Additions for Slovenian and 0200
CROP, TOP LEFT 230F
+CROSS ACCENT, MODIFIER LETTER 02DF
Cross Dingbats 2719
CROSS OF JERUSALEM 2629
CROSS OF LORRAINE 2628
cross ratio 211E
+CROSS, EAST SYRIAC 2671
CROSS, LATIN 271D
+cross, long 2020
CROSS, MALTESE 2720
CROSS, ORTHODOX 2626
cross, st. andrew's 2613
+CROSS, WEST SYRIAC 2670
+CROSSBONES, SKULL AND 2620
+crosshatch 0023
CRUZEIRO SIGN 20A2
CUBE ROOT 221B
cubed 00B3
cup 222A
CUP, SQUARE 2294
+curly bracket, closing 007D
CURLY BRACKET, LEFT 007B
curly bracket, opening 007B
+CURLY BRACKET, RIGHT 007D
CURLY LOGICAL AND 22CF
CURLY LOGICAL OR 22CE
CURRENCY SIGN 00A4
+Currency Signs, Bengali 09F2
CURRENCY SYMBOL BAHT, THAI 0E3F
currency symbol, florin 0192
Currency Symbols 20A0
+currency, brazilian 20A2
+currency, costa rican 20A1
+currency, el salvadorian 20A1
+currency, euro european 20AC
+currency, french 20A3
+currency, greek 20AF
+currency, hebrew 20AA
+currency, indian 20A8
+currency, israeli 20AA
+currency, italian 20A4
+currency, korean 20A9
+currency, laotian 20AD
+currency, mongolian 20AE
+currency, nigerian 20A6
+currency, spanish 20A7
+currency, turkish 20A4
+currency, vietnamese 20AB
+CURRENT SYMBOL FORM TWO, DIRECT 2393
current, alternating 223F
cycle 223C
CYLINDRICITY 232D
Cyrillic 0400
Cyrillic Capital Letters 0401
-CYRILLIC DASIA PNEUMATA, COMBINING 0485
-CYRILLIC PALATALIZATION, COMBINING 0484
-CYRILLIC PSILI PNEUMATA, COMBINING 0486
+Cyrillic Combining Characters 0483
+Cyrillic Extensions 0450
+Cyrillic Historic Letters 0460
Cyrillic Small Letters 0430
-CYRILLIC THOUSANDS SIGN 0482
-CYRILLIC TITLO, COMBINING 0483
-Cyrillic, Extended 0490
+Cyrillic, Extended 048C
d retroflex hook, latin small letter 0256
+D WITH TAIL, LATIN SMALL LETTER 0256
D, LATIN CAPITAL LETTER AFRICAN 0189
DAGGER 2020
DAGGER, DOUBLE 2021
DALET SYMBOL 2138
DANDA, DEVANAGARI 0964
DANDA, DEVANAGARI DOUBLE 0965
+dash, angled 00AC
DASH, CIRCLED 229D
DASH, EM 2014
DASH, EN 2013
DASH, FIGURE 2012
+dash, long 2015
dash, quotation 2015
+dash, swung 007E
DASH, WAVE 301C
DASH, WAVY 3030
-DASIA PNEUMATA, COMBINING CYRILLIC 0485
-dasia, greek 0314
-DATA LINK ESCAPE 0010
-day!, have a nice 263A
+DASHED LOW LINE FE4D
+DASHED OVERLINE FE49
+Dashes 2010
+dasia 0314
+data link escape 0010
+DATA LINK ESCAPE, SYMBOL FOR 2410
+DAVID, STAR OF 2721
+Days, Telegraph Symbols for 33E0
+decimal point 002E
+decimal separator 002C
+DECIMAL SEPARATOR KEY SYMBOL 2396
DECIMAL SEPARATOR, ARABIC 066B
+definition, equal to by 225C
+DEFINITION, EQUAL TO BY 225D
DEGREE CELSIUS 2103
DEGREE FAHRENHEIT 2109
DEGREE SIGN 00B0
degrees centigrade 2103
degrees kelvin 212A
del 2207
-DELETE 007F
+delete 007F
+DELETE FORM TWO, SYMBOL FOR 2425
delete to the left key 232B
delete to the right key 2326
+DELETE, SYMBOL FOR 2421
+delete, undoable 2425
DELTA EQUAL TO 225C
DELTA, LATIN SMALL LETTER TURNED 018D
+DENTAL CLICK, LATIN LETTER 01C0
depth symbol 21A7
derivative 0307
derivative, double 0308
derivative, fourth 20DC
derivative, third 20DB
DESCENDING NODE 260B
+Description Characters, Ideographic 2FF0
Devanagari 0900
-DEVANAGARI ABBREVIATION SIGN 0970
-DEVANAGARI ACUTE ACCENT 0954
-devanagari anunasika 0901
-devanagari bindu 0902
DEVANAGARI DANDA 0964
Devanagari Digits 0966
DEVANAGARI DOUBLE DANDA 0965
-DEVANAGARI GRAVE ACCENT 0953
-devanagari halant 094D
Devanagari Letters 0905
DEVANAGARI OM 0950
-devanagari phrase separator 0964
-DEVANAGARI SIGN ANUSVARA 0902
-DEVANAGARI SIGN AVAGRAHA 093D
-DEVANAGARI SIGN CANDRABINDU 0901
-DEVANAGARI SIGN NUKTA 093C
-DEVANAGARI SIGN VIRAMA 094D
-DEVANAGARI SIGN VISARGA 0903
-DEVANAGARI STRESS SIGN ANUDATTA 0952
-DEVANAGARI STRESS SIGN UDATTA 0951
-DEVICE CONTROL FOUR 0014
-DEVICE CONTROL ONE 0011
-DEVICE CONTROL THREE 0013
-DEVICE CONTROL TWO 0012
-dexia keraia, greek 0374
-DEZH DIGRAPH, LATIN SMALL LETTER 02A4
+device control four 0014
+DEVICE CONTROL FOUR, SYMBOL FOR 2414
+device control one 0011
+DEVICE CONTROL ONE, SYMBOL FOR 2411
+device control string 0090
+device control three 0013
+DEVICE CONTROL THREE, SYMBOL FOR 2413
+device control two 0012
+DEVICE CONTROL TWO, SYMBOL FOR 2412
DHARMA, WHEEL OF 2638
-Diacritic-Vowel Combinations, Pinyin 01CD
+Diacritic-vowel Combinations, Pinyin 01CD
Diacritical Marks for Symbols, Combining 20D0
Diacritical Marks, Combining 0300
-Diacritical Marks, Double 0360
-Diacritical Marks, Enclosing 20DD
-Diacritical Marks, Generic 0300
-Diacritical Marks, Overstruck 0334
+Diacritics for Greek 0342
+Diacritics for IPA 0346
+Diacritics, Double 0360
+Diacritics, Enclosing 20DD
+Diacritics, Overstruck 0334
+Diacritics, Spacing Clones of 02D8
DIAERESIS 00A8
DIAERESIS BELOW, COMBINING 0324
DIAERESIS, COMBINING 0308
diaeresis, spacing 00A8
+DIAGONAL ELLIPSIS, UP RIGHT 22F0
+dialytika 0308
DIALYTIKA TONOS, COMBINING GREEK 0344
-DIALYTIKA TONOS, GREEK 0385
-dialytika, greek 0308
DIAMETER SIGN 2300
diameter symbol 2205
DIAMOND OPERATOR 22C4
-DIAMOND, BLACK 25C6
DIAMOND, COMBINING ENCLOSING 20DF
-DIAMOND, WHITE 25C7
Diamonds 25C6
+diesis 2021
difference between 223C
DIFFERENCE BETWEEN 224F
difference, backward 2207
@@ -743,32 +858,37 @@ difference, symmetric 2296
DIFFERENTIAL, PARTIAL 2202
DIGIT SHAPES, NATIONAL 206E
DIGIT SHAPES, NOMINAL 206F
-Digits (Persian and Urdu), Eastern Arabic-Indic 06F0
+Digits for Persian and Urdu, Eastern Arabic-Indic 06F0
Digits, Arabic-Indic 0660
Digits, ASCII 0030
Digits, Bengali 09E6
Digits, Devanagari 0966
+Digits, Dingbat Circled 2776
+Digits, Ethiopic 1369
Digits, Gujarati 0AE6
Digits, Gurmukhi 0A66
Digits, Kannada 0CE6
+Digits, Khmer 17E0
Digits, Lao 0ED0
Digits, Malayalam 0D66
+Digits, Mongolian 1810
+Digits, Myanmar 1040
Digits, Oriya 0B66
+Digits, Subscript 2080
+Digits, Superscript 2070
Digits, Tamil 0BE7
Digits, Telugu 0C66
Digits, Thai 0E50
Digits, Tibetan 0F20
-DIGRAPH, LATIN SMALL LETTER DEZH 02A4
-DIGRAPH, LATIN SMALL LETTER DZ 02A3
-DIGRAPH, LATIN SMALL LETTER TESH 02A7
-DIGRAPH, LATIN SMALL LETTER TS 02A6
Digraphs Matching Serbian Cyrillic Letters, Croatian 01C4
-Digraphs, Yiddish Hebrew Ligatures or 05F0
+Digraphs, Phonetic 02A3
+Digraphs, Yiddish 05F0
DIMENSION ORIGIN 2331
+Dingbat Circled Digits 2776
Dingbats 2700
+Dingbats Series 100, ITC Zapf 2700
Dingbats, Arrow 2794
Dingbats, Asterisk 2722
-Dingbats, Check Mark 2713
Dingbats, Cross 2719
Dingbats, Drop-Shadowed 274D
Dingbats, Hazard 2620
@@ -785,27 +905,29 @@ Dingbats, Vertical Bar 2758
Dingbats, Warning 2620
Dingbats, Weather 2600
Dingbats, Zapf 2700
+DIRECT CURRENT SYMBOL FORM TWO 2393
direct product 2299
direct sum 2295
Directional Formatting Controls 202A
DIRECTIONAL FORMATTING, POP 202C
+DISCONTINUOUS UNDERLINE SYMBOL 2382
discretionary hyphen 00AD
+disjunction 2228
DITTO MARK 3003
DIVIDES 2223
DIVISION SIGN 00F7
DIVISION SLASH 2215
DIVISION SLASH, CIRCLED 2298
DIVISION TIMES 22C7
+does not yield 22A3
DOLLAR SIGN 0024
DONG SIGN 20AB
+dot 002E
DOT ABOVE 02D9
DOT ABOVE, COMBINING 0307
dot above, double 0308
DOT ABOVE, LATIN CAPITAL LETTER I WITH 0130
DOT BELOW, COMBINING 0323
-DOT LEADER, ONE 2024
-dot leader, three 2026
-DOT LEADER, TWO 2025
DOT MINUS 2238
DOT OPERATOR 22C5
DOT OPERATOR, CIRCLED 2299
@@ -822,6 +944,7 @@ DOUBLE ACUTE ACCENT, COMBINING 030B
DOUBLE ANGLE BRACKET, LEFT 300A
DOUBLE ANGLE QUOTATION MARK, LEFT-POINTING 00AB
DOUBLE ANGLE QUOTATION MARK, RIGHT-POINTING 00BB
+DOUBLE APOSTROPHE, MODIFIER LETTER 02EE
DOUBLE ARCH BELOW, COMBINING INVERTED 032B
double bar, latin letter pipe 01C2
double comma quotation mark 201D
@@ -829,7 +952,7 @@ double comma quotation mark, low 201E
DOUBLE DAGGER 2021
DOUBLE DANDA, DEVANAGARI 0965
double derivative 0308
-Double Diacritical Marks 0360
+Double Diacritics 0360
double dot above 0308
DOUBLE EXCLAMATION MARK 203C
DOUBLE GRAVE ACCENT, COMBINING 030F
@@ -840,8 +963,9 @@ DOUBLE INVERTED BREVE, COMBINING 0361
DOUBLE LOW LINE 2017
DOUBLE LOW LINE, COMBINING 0333
DOUBLE LOW-9 QUOTATION MARK 201E
+double obelisk 2021
DOUBLE OVERLINE, COMBINING 033F
-double pipe, latin letter 01C1
+double pipe 01C1
DOUBLE PRIME 2033
DOUBLE PRIME QUOTATION MARK 301E
DOUBLE PRIME QUOTATION MARK, LOW 301F
@@ -851,18 +975,21 @@ DOUBLE PRIME, REVERSED 2036
DOUBLE QUOTATION MARK, LEFT 201C
DOUBLE QUOTATION MARK, RIGHT 201D
double reversed comma quotation mark 201F
-DOUBLE RIGHT TURNSTILE, DOUBLE VERTICAL BAR 22AB
+DOUBLE RIGHTWARDS ARROW BELOW, COMBINING 0362
DOUBLE SUBSET 22D0
DOUBLE SUPERSET 22D1
+DOUBLE TILDE LEFT HALF, COMBINING FE22
DOUBLE TILDE, COMBINING 0360
double turned comma quotation mark 201C
double underline 0333
double underscore 0333
double underscore, spacing 2017
DOUBLE UNION 22D3
-DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE 22AB
DOUBLE VERTICAL LINE 2016
DOUBLE VERTICAL LINE ABOVE, COMBINING 030E
+DOUBLE VERTICAL LINE BELOW, COMBINING 0348
+DOUBLE WAVY OVERLINE FE4C
+double-barred pipe 01C2
DOUBLE-STRUCK CAPITAL C 2102
DOUBLE-STRUCK CAPITAL H 210D
DOUBLE-STRUCK CAPITAL N 2115
@@ -870,39 +997,41 @@ DOUBLE-STRUCK CAPITAL P 2119
DOUBLE-STRUCK CAPITAL Q 211A
DOUBLE-STRUCK CAPITAL R 211D
DOUBLE-STRUCK CAPITAL Z 2124
-DOWN ARROWHEAD 2304
-DOWN RIGHT DIAGONAL ELLIPSIS 22F1
DOWN TACK 22A4
DOWN TACK BELOW, COMBINING 031E
-DOWN TACK, MODIFIER LETTER 02D5
-downstile, apl 230A
+down, page 21DF
+DRACHMA SIGN 20AF
dram 0292
-drop, minim 264F
-Drop-Shadowed Dingbats 274D
-DZ DIGRAPH, LATIN SMALL LETTER 02A3
-DZ, LATIN SMALL LETTER 01F3
+drop 264F
+Duplicates from Big 5 FA0C
+E, LATIN CAPITAL LETTER OPEN 0190
E, LATIN CAPITAL LETTER REVERSED 018E
-E, latin capital letter turned 018E
+e, latin capital letter turned 018E
+E, LATIN SMALL LETTER CLOSED OPEN 029A
+E, LATIN SMALL LETTER CLOSED REVERSED OPEN 025E
+E, LATIN SMALL LETTER OPEN 025B
E, LATIN SMALL LETTER REVERSED 0258
+E, LATIN SMALL LETTER REVERSED OPEN 025C
E, LATIN SMALL LETTER TURNED 01DD
E, SCRIPT CAPITAL 2130
E, SCRIPT SMALL 212F
EARTH 2641
-Eastern Arabic-Indic Digits (Persian and Urdu) 06F0
+Eastern Arabic-Indic Digits for Persian and Urdu 06F0
+ecu 20A0
EIGHTH NOTE 266A
EIGHTH NOTES, BEAMED 266B
-EIGHTH, VULGAR FRACTION ONE 215B
-EIGHTHS, VULGAR FRACTION FIVE 215D
-EIGHTHS, VULGAR FRACTION SEVEN 215E
-EIGHTHS, VULGAR FRACTION THREE 215C
+Eighths, Fractions 215B
EK ONKAR, GURMUKHI 0A74
+el salvadorian currency 20A1
+ELECTRIC ARROW 2301
electro-magnetic force, emf 2130
electrolysis 21AF
+Electrotechnical Symbols from IR 181 238D
ELEMENT OF 2208
+ELEMENT OF, NOT AN 2209
ELEMENT OF, SMALL 220A
-ELLIPSIS, DOWN RIGHT DIAGONAL 22F1
+element, unique 2129
ELLIPSIS, HORIZONTAL 2026
-ELLIPSIS, LAO 0EAF
ELLIPSIS, MIDLINE HORIZONTAL 22EF
ELLIPSIS, UP RIGHT DIAGONAL 22F0
ELLIPSIS, VERTICAL 22EE
@@ -912,8 +1041,9 @@ EM QUAD 2001
EM SPACE 2003
EMBEDDING, LEFT-TO-RIGHT 202A
EMBEDDING, RIGHT-TO-LEFT 202B
-emf (electro-magnetic force) 2130
+emf 2130
EMPHASIS MARK, ARMENIAN 055B
+EMPHASIS SYMBOL 2383
EMPTY SET 2205
EN DASH 2013
EN QUAD 2000
@@ -922,21 +1052,39 @@ Enclosed Alphanumerics 2460
Enclosed CJK Letters and Ideographs 3200
ENCLOSING CIRCLE BACKSLASH, COMBINING 20E0
ENCLOSING CIRCLE, COMBINING 20DD
-Enclosing Diacritical Marks 20DD
+Enclosing Diacritics 20DD
ENCLOSING DIAMOND, COMBINING 20DF
+ENCLOSING KEYCAP, COMBINING 20E3
+ENCLOSING SCREEN, COMBINING 20E2
ENCLOSING SQUARE, COMBINING 20DE
-END OF MEDIUM 0019
+end 21F2
+end of guarded area 0097
+end of medium 0019
+end of medium, graphic for 237F
+END OF MEDIUM, SYMBOL FOR 2419
END OF PROOF 220E
-END OF TEXT 0003
-END OF TRANSMISSION 0004
-END OF TRANSMISSION BLOCK 0017
+end of selected area 0087
+end of text 0003
+END OF TEXT, SYMBOL FOR 2403
+end of transmission 0004
+end of transmission block 0017
+END OF TRANSMISSION BLOCK, SYMBOL FOR 2417
+end of transmission, graphic for 2301
+END OF TRANSMISSION, SYMBOL FOR 2404
ENG, LATIN SMALL LETTER 014B
enotikon, greek 203F
-ENQUIRY 0005
+enquiry 0005
+ENQUIRY, SYMBOL FOR 2405
enter key 2324
+ENTER SYMBOL 2386
ENVELOPE 2709
+epsilon, latin capital letter 0190
epsilon, latin small letter 025B
-EQUAL AND PARALLEL TO 22D5
+epsilon, latin small letter closed 029A
+epsilon, latin small letter closed reversed 025E
+epsilon, reversed straight 220D
+epsilon, straight 220A
+EQUAL TO ABOVE, COMBINING ALMOST 034C
equal to by definition 225C
EQUAL TO BY DEFINITION 225D
EQUAL TO, ALL 224C
@@ -946,15 +1094,18 @@ equal to, approximately 2257
EQUAL TO, ASYMPTOTICALLY 2243
EQUAL TO, DELTA 225C
EQUAL TO, GEOMETRICALLY 2251
+EQUAL TO, GREATER-THAN OR 2265
+EQUAL TO, LESS-THAN OR 2264
EQUAL TO, NOT 2260
EQUAL TO, QUESTIONED 225F
EQUAL TO, RING 2257
EQUAL TO, RING IN 2256
EQUALS COLON 2255
EQUALS SIGN 003D
+EQUALS SIGN BELOW, COMBINING 0347
+EQUALS SIGN, SUBSCRIPT 208C
+EQUALS SIGN, SUPERSCRIPT 207C
EQUALS, CIRCLED 229C
-EQUALS, COLON 2254
-equals, nearly 2252
EQUALS, REVERSED TILDE 22CD
EQUALS, STAR 225B
equiangular 225C
@@ -965,20 +1116,35 @@ EQUIVALENT TO, STRICTLY 2263
Era Names, Japanese 337B
ERASE TO THE LEFT 232B
ERASE TO THE RIGHT 2326
-erotimatiko, greek 037E
error 212F
-ESCAPE 001B
+escape 001B
+escape, data link 0010
+ESCAPE, SYMBOL FOR 241B
+ESCAPE, SYMBOL FOR DATA LINK 2410
escudo 0024
ESH LOOP, LATIN LETTER REVERSED 01AA
ESH, LATIN CAPITAL LETTER 01A9
ESH, LATIN SMALL LETTER 0283
-ess-zed 00DF
+ESH, LATIN SMALL LETTER SQUAT REVERSED 0285
ESTIMATED SYMBOL 212E
ESTIMATES 2259
+eszett 00DF
+ET, TIRONIAN SIGN 204A
ETH, LATIN SMALL LETTER 00F0
+ethel 0153
+Ethiopic 1200
+ETHIOPIC COLON 1365
+ETHIOPIC COMMA 1363
+Ethiopic Digits 1369
+ETHIOPIC FULL STOP 1362
+ETHIOPIC QUESTION MARK 1367
+ETHIOPIC SEMICOLON 1364
+ETHIOPIC WORDSPACE 1361
EULER CONSTANT 2107
-EURO-CURRENCY SIGN 20A0
+EURO SIGN 20AC
European Latin 0100
+european paragraph sign 00A7
+european section sign 00B6
EXCESS 2239
EXCLAMATION MARK 0021
EXCLAMATION MARK ORNAMENT, HEAVY 2762
@@ -986,19 +1152,25 @@ EXCLAMATION MARK, ARMENIAN 055C
EXCLAMATION MARK, DOUBLE 203C
EXCLAMATION MARK, INVERTED 00A1
exclamation mark, latin letter 01C3
+EXCLAMATION MARK, QUESTION 2048
+EXCLAMATION QUESTION MARK 2049
EXISTS, THERE 2203
Extended Additional, Latin 1E00
-Extended Arabic Letters 0671
-Extended Cyrillic 0490
+Extended Arabic 0671
+Extended Cyrillic 048C
+Extended for Minnan and Hakka, Chinese Bopomofo 31A0
Extended Greek 1F00
-Extended Latin 0180
Extended-A, Latin 0100
Extended-B, Latin 0180
+Extension A, CJK Unified Ideographs 3400
+Extensions for Sanskrit and Tibetan, Mongolian 1880
+Extensions for Vietnamese, Latin 1EA0
+Extensions, Cyrillic 0450
Extensions, IPA 0250
EZH REVERSED, LATIN SMALL LETTER 01B9
EZH, LATIN CAPITAL LETTER 01B7
EZH, LATIN SMALL LETTER 0292
-f, latin small letter script 0192
+F WITH HOOK, LATIN SMALL LETTER 0192
F, SCRIPT CAPITAL 2131
F, TURNED CAPITAL 2132
FACE, BLACK SMILING 263B
@@ -1007,84 +1179,69 @@ FACE, WHITE FROWNING 2639
FACE, WHITE SMILING 263A
factorial 0021
FAHRENHEIT, DEGREE 2109
-FARSI SYMBOL 262B
feet 2032
FEMALE SIGN 2640
FEMININE ORDINAL INDICATOR 00AA
-FIFTH, VULGAR FRACTION ONE 2155
-FIFTHS, VULGAR FRACTION FOUR 2158
-FIFTHS, VULGAR FRACTION THREE 2157
-FIFTHS, VULGAR FRACTION TWO 2156
+Fifths, Fractions 2155
FIGURE DASH 2012
FIGURE SPACE 2007
-FILE SEPARATOR 001C
-FILL SPACE, IDEOGRAPHIC HALF 303F
-FILLER, HANGUL 3164
-FILLER, HANGUL CHOSEONG 115F
-FILLER, HANGUL JUNGSEONG 1160
+file separator 001C
+FILE SEPARATOR, SYMBOL FOR 241C
Finger Dingbats, Pointing Index 261A
FIRST QUARTER MOON 263D
first transfinite cardinal (countable) 2135
FISHEYE 25C9
-FIVE EIGHTHS, VULGAR FRACTION 215D
+fist 261E
FIVE POINTED STAR, ARABIC 066D
-FIVE SIXTHS, VULGAR FRACTION 215A
+FIVE, LATIN SMALL LETTER TONE 01BD
FLAT SIGN, MUSIC 266D
FLOOR, LEFT 230A
+FLORAL HEART BULLET, REVERSED ROTATED 2619
florin currency symbol 0192
-FONGMAN, THAI CHARACTER 0E4F
+folder 0192
FOR ALL 2200
FORCES 22A9
Form and Chart Components 2500
-FORM FEED 000C
+form feed 000C
form feed 21A1
+FORM FEED, SYMBOL FOR 240C
+Format Control, Syriac 070F
+Format Controls, Mongolian 180B
+Formatting Characters 200C
+Formatting Characters 2028
Formatting Controls, Bidirectional 202A
FORMATTING, POP DIRECTIONAL 202C
-forward arrow indicator 25BB
forward difference 2206
FOUR DOTS ABOVE, COMBINING 20DC
-FOUR FIFTHS, VULGAR FRACTION 2158
FOUR-PER-EM SPACE 2005
fourier transform 2131
fourth derivative 20DC
FOURTH ROOT 221C
fourth transfinite cardinal 2138
-FRACTION FIVE EIGHTHS, VULGAR 215D
-FRACTION FIVE SIXTHS, VULGAR 215A
-FRACTION FOUR FIFTHS, VULGAR 2158
+Fourths, Fractions 00BC
FRACTION NUMERATOR ONE 215F
-FRACTION ONE EIGHTH, VULGAR 215B
-FRACTION ONE FIFTH, VULGAR 2155
FRACTION ONE HALF, VULGAR 00BD
FRACTION ONE QUARTER, VULGAR 00BC
-FRACTION ONE SIXTH, VULGAR 2159
-FRACTION ONE THIRD, VULGAR 2153
-FRACTION SEVEN EIGHTHS, VULGAR 215E
FRACTION SLASH 2044
-FRACTION THREE EIGHTHS, VULGAR 215C
-FRACTION THREE FIFTHS, VULGAR 2157
FRACTION THREE QUARTERS, VULGAR 00BE
-FRACTION TWO FIFTHS, VULGAR 2156
-FRACTION TWO THIRDS, VULGAR 2154
Fractions 2153
FRANC SIGN, FRENCH 20A3
+FRICATIVE, LATIN LETTER PHARYNGEAL VOICED 0295
FROWN 2322
FROWNING FACE, WHITE 2639
FULL BLOCK 2588
FULL STOP 002E
FULL STOP, ARABIC 06D4
FULL STOP, ARMENIAN 0589
+FULL STOP, ETHIOPIC 1362
+full stop, georgian 0589
FULL STOP, IDEOGRAPHIC 3002
+FULL STOP, MONGOLIAN 1803
Fullwidth ASCII Variants FF01
Fullwidth Forms, Halfwidth and FF00
Fullwidth Symbol Variants FFE0
function symbol 0192
-function, bernoulli 212C
-function, composite 2218
function, gamma 0393
-function, hamiltonian 210B
-function, weierstrass elliptic 2118
-Functional Symbols, APL 2336
G, LATIN LETTER SMALL CAPITAL 0262
G, LATIN SMALL LETTER SCRIPT 0261
G, SCRIPT SMALL 210A
@@ -1092,30 +1249,35 @@ gamma function 0393
GAMMA, LATIN CAPITAL LETTER 0194
GAMMA, LATIN SMALL LETTER 0263
gamma, latin small letter baby 0264
+GAMMA, MODIFIER LETTER SMALL 02E0
GB 2312 (Chinese), Based on 3100
GEMINI 264A
General Punctuation 2000
-Generic Diacritical Marks 0300
+General Scripts Area 0000
GEOMETRIC PROPORTION 223A
Geometric Shapes 25A0
GEOMETRICALLY EQUAL TO 2251
GEOMETRICALLY EQUIVALENT TO 224E
Georgian 10A0
-Georgian Archaic Uppercase Alphabet (Khutsuri) 10A0
Georgian Capital Letters 10A0
georgian comma 00B7
-Georgian Modern Lowercase Alphabet (Mkhedruli) 10D0
+georgian full stop 0589
GEORGIAN PARAGRAPH SEPARATOR 10FB
Georgian Small Letters 10D0
-GERESH, HEBREW PUNCTUATION 05F3
-GERSHAYIM, HEBREW PUNCTUATION 05F4
+german mark 2133
GETA MARK 3013
GIMEL SYMBOL 2137
+glottal stop 02BC
GLOTTAL STOP, LATIN LETTER 0294
+GLOTTAL STOP, LATIN LETTER INVERTED 0296
glottal stop, latin letter reversed 0295
GLOTTAL STOP, MODIFIER LETTER 02C0
-Glyphs for Vertical Variants FE30
-Graphic Symbols for Control Codes 2400
+GLOTTAL STOP, MODIFIER LETTER REVERSED 02C1
+GLOTTAL STOP, MODIFIER LETTER SMALL REVERSED 02E4
+Golden Number Runes 16EE
+Graphic Pictures for Control Codes 2400
+Graphics for Control Codes 237B
+Graphics, Control Code 25F0
GRAVE ACCENT 0060
GRAVE ACCENT BELOW, COMBINING 0316
GRAVE ACCENT, COMBINING 0300
@@ -1123,47 +1285,34 @@ GRAVE ACCENT, COMBINING DOUBLE 030F
GRAVE ACCENT, DEVANAGARI 0953
GRAVE ACCENT, MODIFIER LETTER 02CB
GRAVE ACCENT, MODIFIER LETTER LOW 02CE
+grave accent, swedish 02DF
GRAVE TONE MARK, COMBINING 0340
grave, spacing 0060
GREATER-THAN OR EQUAL TO 2265
GREATER-THAN SIGN 003E
-GREATER-THAN WITH DOT 22D7
GREATER-THAN, MUCH 226B
GREATER-THAN, VERY MUCH 22D9
-Greek 0370
-GREEK ANO TELEIA 0387
-greek aristeri keraia 0375
+Greek and Coptic 0370
Greek Capital Letters 0391
-greek combining iota below 0345
-greek dasia 0314
-greek dexia keraia 0374
-greek dialytika 0308
-GREEK DIALYTIKA TONOS 0385
+greek currency 20AF
GREEK DIALYTIKA TONOS, COMBINING 0344
greek enotikon 203F
-greek erotimatiko 037E
-greek iota adscript 0399
-greek iota subscript 0345
GREEK KORONIS, COMBINING 0343
-GREEK LOWER NUMERAL SIGN 0375
greek middle dot 00B7
-GREEK NUMERAL SIGN 0374
-greek oxia 0301
+greek non-spacing iota below 0345
GREEK PERISPOMENI, COMBINING 0342
-greek psili 0313
GREEK QUESTION MARK 037E
GREEK SMALL LETTER IOTA, TURNED 2129
Greek Small Letters 03B1
Greek Symbols 03D0
-greek tonos 030D
-GREEK TONOS 0384
-greek upper numeral sign 0374
-greek varia 0300
-greek vrachy 0306
-GREEK YPOGEGRAMMENI 037A
GREEK YPOGEGRAMMENI, COMBINING 0345
+Greek, Diacritics for 0342
Greek, Extended 1F00
-GROUP SEPARATOR 001D
+group lock 21F0
+group separator 001D
+GROUP SEPARATOR, SYMBOL FOR 241D
+guarded area, end of 0097
+guarded area, start of 0096
guillemet, left pointing 00AB
guillemet, left pointing single 2039
guillemet, right pointing 00BB
@@ -1171,30 +1320,19 @@ guillemet, right pointing single 203A
Gujarati 0A80
Gujarati Digits 0AE6
Gujarati Letters 0A85
-GUJARATI OM 0AD0
-GUJARATI SIGN ANUSVARA 0A82
-GUJARATI SIGN AVAGRAHA 0ABD
-GUJARATI SIGN CANDRABINDU 0A81
-GUJARATI SIGN NUKTA 0ABC
-GUJARATI SIGN VIRAMA 0ACD
-GUJARATI SIGN VISARGA 0A83
Gurmukhi 0A00
-GURMUKHI ADDAK 0A71
Gurmukhi Digits 0A66
-GURMUKHI EK ONKAR 0A74
Gurmukhi Letters 0A05
-GURMUKHI SIGN BINDI 0A02
-GURMUKHI SIGN NUKTA 0A3C
-GURMUKHI SIGN VIRAMA 0A4D
-GURMUKHI TIPPI 0A70
H, BLACK-LETTER CAPITAL 210C
H, DOUBLE-STRUCK CAPITAL 210D
H, LATIN LETTER SMALL CAPITAL 029C
H, LATIN SMALL LETTER TURNED 0265
+H, MODIFIER LETTER SMALL 02B0
H, SCRIPT CAPITAL 210B
hacek, combining 030C
hacek, modifier letter 02C7
HAIR SPACE 200A
+Hakka, Chinese Bopomofo Extended for Minnan and 31A0
halant, bengali 09CD
halant, devanagari 094D
HALF FILL SPACE, IDEOGRAPHIC 303F
@@ -1202,12 +1340,11 @@ HALF INTEGRAL, TOP 2320
Half Marks, Combining FE20
HALF RING BELOW, COMBINING LEFT 031C
HALF RING BELOW, COMBINING RIGHT 0339
-HALF RING, ARMENIAN MODIFIER LETTER LEFT 0559
-half ring, armenian modifier letter right 055A
HALF RING, MODIFIER LETTER CENTRED LEFT 02D3
HALF RING, MODIFIER LETTER LEFT 02BF
-HALF RING, MODIFIER LETTER RIGHT 02BE
HALF TRIANGULAR COLON, MODIFIER LETTER 02D1
+HALF, COMBINING DOUBLE TILDE LEFT FE22
+HALF, COMBINING LIGATURE LEFT FE20
HALF, VULGAR FRACTION ONE 00BD
Halfwidth and Fullwidth Forms FF00
Halfwidth Japanese Katakana Variants FF61
@@ -1215,119 +1352,134 @@ Halfwidth Korean Hangul Variants FFA0
hamiltonian function 210B
HAMMER AND SICKLE 262D
Han Ideographs 4E00
+Hand Symbols, Pointing 261A
HAND, VICTORY 270C
HAND, WRITING 270D
HANGUL CHOSEONG FILLER 115F
-Hangul Combining Alphabet, Korean 1100
Hangul Compatibility Jamo, Korean 3130
Hangul Elements, Circled Korean 3260
Hangul Elements, Parenthesized Korean 3200
HANGUL FILLER 3164
+Hangul Jamo Combining Alphabet, Korean 1100
HANGUL JUNGSEONG FILLER 1160
-Hangul Letters (Jamo), Korean 1100
+Hangul Syllables Area, Korean AC00
Hangul Syllables, Circled Korean 326E
-Hangul Syllables, Korean AC00
Hangul Syllables, Parenthesized Korean 320E
Hangul Variants, Halfwidth Korean FFA0
Hangul, Based on KS C 5601 (Korean) 3130
-Hangzhou-Style Numerals 3021
-Harakaat, Arabic 064B
+Hangzhou-style Numerals 3021
HARPOON ABOVE, COMBINING LEFT 20D0
-HARPOON ABOVE, COMBINING RIGHT 20D1
-hartsakan nshan, armenian 055E
+hash 0023
hat 0302
+hat 2229
have a nice day! 263A
Hazard Dingbats 2620
-Heart Dingbats 2763
+heading, start of 0001
+HEADING, SYMBOL FOR START OF 2401
+Heart Ornaments 2763
+HEAVY BALLOT X 2718
+HEAVY CHECK MARK 2714
+HEAVY MULTIPLICATION X 2716
Hebrew 0590
-Hebrew Accents or Cantillation marks 0591
-hebrew legarmeh 05C0
+Hebrew Cantillation Marks 0591
+hebrew currency 20AA
Hebrew Letters 05D0
-Hebrew Ligatures or Digraphs, Yiddish 05F0
-Hebrew Points and Punctuation 05B0
-HEBREW PUNCTUATION GERESH 05F3
-HEBREW PUNCTUATION GERSHAYIM 05F4
-HEBREW PUNCTUATION MAQAF 05BE
-HEBREW PUNCTUATION PASEQ 05C0
-HEBREW PUNCTUATION SOF PASUQ 05C3
+Hebrew Points 05B0
+Hebrew Presentation Forms FB1D
+HELM SYMBOL 2388
HERMITIAN CONJUGATE MATRIX 22B9
-High Surrogates DB80
-High Surrogates, Private Use DB80
-HIGH TONE BAR, MODIFIER LETTER 02E6
+High Surrogates D800
HIGH-REVERSED-9 QUOTATION MARK, DOUBLE 201F
HIGH-REVERSED-9 QUOTATION MARK, SINGLE 201B
higher rank than 227B
+hilbert space 210C
HIRAGANA ITERATION MARK 309D
Hiragana, Based on JIS X 0208 (Japanese) 3040
histogram marker 25AE
+Historic Letters, Cyrillic 0460
home 21B8
+home 21F1
HOMOTHETIC 223B
+HOMOTHETIC ABOVE, COMBINING 034B
HOOK ABOVE, COMBINING 0309
HOOK BELOW, COMBINING PALATALIZED 0321
HOOK BELOW, COMBINING RETROFLEX 0322
-hook, latin small letter d retroflex 0256
HOOK, MODIFIER LETTER RHOTIC 02DE
+hook, nasal 0328
HORIZONTAL BAR 2015
HORIZONTAL ELLIPSIS 2026
HORIZONTAL ELLIPSIS, MIDLINE 22EF
-HORIZONTAL TABULATION 0009
+horizontal tabulation 0009
+HORIZONTAL TABULATION, SYMBOL FOR 2409
HORN, COMBINING 031B
+HORN, LATIN SMALL LETTER RAMS 0264
HOT SPRINGS 2668
HOURGLASS 231B
+Hours, Telegraph Symbols for 3358
HOUSE 2302
HV, LATIN SMALL LETTER 0195
+HWAIR, LATIN CAPITAL LETTER 01F6
HYPHEN 2010
HYPHEN BULLET 2043
hyphen or minus sign 002D
+HYPHEN, ARMENIAN 058A
hyphen, discretionary 00AD
HYPHEN, NON-BREAKING 2011
HYPHEN, SOFT 00AD
HYPHEN-MINUS 002D
HYPHENATION POINT 2027
hyphus 002D
-i dot, latin capital letter 0130
+HYSTERESIS SYMBOL 238E
I WITH DOT ABOVE, LATIN CAPITAL LETTER 0130
I, BLACK-LETTER CAPITAL 2111
I, LATIN LETTER SMALL CAPITAL 026A
I, LATIN SMALL LETTER DOTLESS 0131
I, SCRIPT CAPITAL 2110
+IBM CJK Compatibility Ideographs FA0E
IDENTICAL TO 2261
Ideographic Annotation, Japanese Kanbun 3190
IDEOGRAPHIC CLOSING MARK 3006
IDEOGRAPHIC COMMA 3001
+Ideographic Description Characters 2FF0
IDEOGRAPHIC FULL STOP 3002
IDEOGRAPHIC HALF FILL SPACE 303F
IDEOGRAPHIC ITERATION MARK 3005
IDEOGRAPHIC NUMBER ZERO 3007
IDEOGRAPHIC SPACE 3000
Ideographic Tone Marks 302A
+Ideographs Area, CJK 3400
+Ideographs Extension A, CJK Unified 3400
Ideographs, Circled 3280
Ideographs, CJK Compatibility F900
Ideographs, CJK Unified 4E00
Ideographs, Enclosed CJK Letters and 3200
Ideographs, Han 4E00
+Ideographs, IBM CJK Compatibility FA0E
Ideographs, Parenthesized 3220
+IDLE, SYMBOL FOR SYNCHRONOUS 2416
+idle, synchronous 0016
IJ, LATIN SMALL LIGATURE 0133
IMAGE OF 22B7
IMAGE OF, SQUARE 228F
imaginary part 2111
-implies, yields, proves 22A2
+implies 22A2
inches 2033
+included in set 2282
+includes in set 2283
+incorporated, japanese 337F
INCREMENT 2206
+index 0084
Index Finger Dingbats, Pointing 261A
-indicator, backward arrow 25C5
-INDICATOR, FEMININE ORDINAL 00AA
-indicator, forward arrow 25BB
-INDICATOR, MASCULINE ORDINAL 00BA
-INDICATOR, POSITION 2316
+indian currency 20A8
inferior order to, of 2134
INFINITY 221E
+INFORMATION SOURCE 2139
INHIBIT ARABIC FORM SHAPING 206C
INHIBIT SYMMETRIC SWAPPING 206A
INSERTION POINT, CARET 2041
+INSERTION SYMBOL 2380
integers, the set of 2124
INTEGRAL 222B
-INTEGRAL, ANTICLOCKWISE CONTOUR 2233
INTEGRAL, CLOCKWISE 2231
INTEGRAL, CLOCKWISE CONTOUR 2232
INTEGRAL, CONTOUR 222E
@@ -1338,32 +1490,37 @@ INTEGRAL, TOP HALF 2320
INTEGRAL, TRIPLE 222D
INTEGRAL, VOLUME 2230
INTERCALATE 22BA
+Interlinear Annotation FFF9
International Phonetic Alphabet 0250
INTERROBANG 203D
INTERSECTION 2229
INTERSECTION, DOUBLE 22D2
INTERSECTION, N-ARY 22C2
intersection, proper 22D4
+introducer, control sequence 009B
+introducer, single character 009A
Inverse Numbers, Circled 2776
-Inverse Sans-Serif Numbers, Circled 278A
INVERTED BREVE BELOW, COMBINING 032F
INVERTED BREVE, COMBINING 0311
INVERTED BREVE, COMBINING DOUBLE 0361
INVERTED BRIDGE BELOW, COMBINING 033A
INVERTED DOUBLE ARCH BELOW, COMBINING 032B
INVERTED EXCLAMATION MARK 00A1
+INVERTED GLOTTAL STOP, LATIN LETTER 0296
INVERTED LAZY S 223E
INVERTED OHM SIGN 2127
INVERTED QUESTION MARK 00BF
INVERTED R, LATIN LETTER SMALL CAPITAL 0281
-iota below, greek combining 0345
-iota adscript, greek 0399
-iota subscript, greek 0345
+INVERTED R, MODIFIER LETTER SMALL CAPITAL 02B6
+iota below, greek non-spacing 0345
IOTA, LATIN CAPITAL LETTER 0196
IOTA, LATIN SMALL LETTER 0269
IOTA, TURNED GREEK SMALL LETTER 2129
IPA Extensions 0250
+IPA, Diacritics for 0346
+IR 181, Electrotechnical Symbols from 238D
iran, symbol of 262B
+irish punt 00A3
ISCII 1988 (Devanagari), Based on 0901
ISO 8859-1 (Latin-1), Based on 00A0
ISO 8859-2, -3, -4, -9 (European Latin), Based on 0100
@@ -1371,16 +1528,22 @@ ISO 8859-5 (Cyrillic), Based on 0400
ISO 8859-6 (Arabic), Based on 0600
ISO 8859-7 (Greek), Based on 0370
ISO 8859-8 (Hebrew), Based on 05D0
-ISSHAR, BENGALI 09FA
-ISSHAR, ORIYA 0B70
+ISO 9995-7, Keyboard Symbols from 2380
+ISO 9995-7, Keyboard Symbols from 2396
+israeli currency 20AA
+italian currency 20A4
+ITC Zapf Dingbats Series 100 2700
ITERATION MARK, HIRAGANA 309D
ITERATION MARK, IDEOGRAPHIC 3005
ITERATION MARK, KATAKANA 30FD
+ivy leaf 2767
+J, MODIFIER LETTER SMALL 02B2
jack 2749
+Jamo Combining Alphabet, Korean Hangul 1100
Jamo, Korean Hangul Compatibility 3130
-Jamo, Korean Hangul Letters 1100
Japanese Era Names 337B
Japanese Hiragana 3040
+japanese incorporated 337F
JAPANESE INDUSTRIAL STANDARD SYMBOL 3004
Japanese Kanbun (Ideographic Annotation) 3190
Japanese Katakana 30A0
@@ -1390,20 +1553,19 @@ Japanese Katakana, Circled 32D0
japanese kome 203B
JERUSALEM, CROSS OF 2629
jis composition circle 20DD
-JIS X 0208 (Japanese Hiragana), Based on 3040
+JIS X 0208, Based on 3040
JOINER, ZERO WIDTH 200D
jot, apl 2218
JUPITER 2643
+justification, character tabulation with 0089
K, LATIN SMALL LETTER TURNED 029E
-KANA REPEAT MARK, VERTICAL 3031
+kabusiki-gaisya 337F
+Kana Repeat Marks 3031
Kanbun (Ideographic Annotation), Japanese 3190
+Kangxi Radicals 2F00
Kannada 0C80
Kannada Digits 0CE6
Kannada Letters 0C85
-KANNADA SIGN ANUSVARA 0C82
-KANNADA SIGN VIRAMA 0CCD
-KANNADA SIGN VISARGA 0C83
-kashida, arabic 0640
KATAKANA ITERATION MARK 30FD
KATAKANA MIDDLE DOT 30FB
Katakana Variants, Halfwidth Japanese FF61
@@ -1414,9 +1576,9 @@ KATAKANA-HIRAGANA PROLONGED SOUND MARK 30FC
KATAKANA-HIRAGANA VOICED SOUND MARK 309B
KATAKANA-HIRAGANA VOICED SOUND MARK, COMBINING 3099
KELVIN SIGN 212A
-keraia, greek aristeri 0375
-keraia, greek dexia 0374
ket 232A
+KEY SYMBOL, ALTERNATIVE 2387
+KEY SYMBOL, DECIMAL SEPARATOR 2396
key, clear 2327
key, command 2318
key, delete to the left 232B
@@ -1424,142 +1586,70 @@ key, delete to the right 2326
key, enter 2324
KEY, OPTION 2325
KEYBOARD 2328
-Khutsuri, Georgian Archaic Uppercase Alphabet 10A0
+Keyboard Symbols from ISO 9995-7 2380
+Keyboard Symbols from ISO 9995-7 2396
+KEYCAP, COMBINING ENCLOSING 20E3
+Khmer 1780
+Khmer Digits 17E0
+KIP SIGN 20AD
kome, japanese 203B
-Korean Hangul Combining Alphabet 1100
+Koranic Annotation Signs 06D6
+korean currency 20A9
+Korean Hangul Compatibility Jamo 3130
Korean Hangul Elements, Circled 3260
Korean Hangul Elements, Parenthesized 3200
-Korean Hangul Letters (Jamo) 1100
-Korean Hangul Syllables AC00
+Korean Hangul Jamo Combining Alphabet 1100
+Korean Hangul Syllables Area AC00
Korean Hangul Syllables, Circled 326E
Korean Hangul Syllables, Parenthesized 320E
Korean Hangul Variants, Halfwidth FFA0
KOREAN STANDARD SYMBOL 327F
KORONIS, COMBINING GREEK 0343
+KRA, LATIN SMALL LETTER 0138
KS C 5601 (Korean Hangul), Based on 3130
L B BAR SYMBOL 2114
+L WITH MIDDLE DOT, LATIN SMALL LETTER 0140
+L WITH MIDDLE TILDE, LATIN SMALL LETTER 026B
L, LATIN LETTER SMALL CAPITAL 029F
+L, MODIFIER LETTER SMALL 02E1
L, SCRIPT CAPITAL 2112
L, SCRIPT SMALL 2113
-LAKKHANGYAO, THAI CHARACTER 0E45
lambda bar, latin letter 019B
Lao 0E80
-LAO CANCELLATION MARK 0ECC
Lao Digits 0ED0
-LAO ELLIPSIS 0EAF
Lao Letters 0E81
-LAO NIGGAHITA 0ECD
+laotian currency 20AD
laplace operator 2206
-laplace operator (written with superscript 2) 2207
+laplace operator 2207
laplace symbol 2112
LAST QUARTER MOON 263E
-Latin Abbreviations, Squared 3380
-LATIN CAPITAL LETTER AFRICAN D 0189
-latin capital letter barred o 019F
-LATIN CAPITAL LETTER ESH 01A9
-LATIN CAPITAL LETTER EZH 01B7
-LATIN CAPITAL LETTER GAMMA 0194
-LATIN CAPITAL LETTER I WITH DOT ABOVE 0130
-LATIN CAPITAL LETTER IOTA 0196
-LATIN CAPITAL LETTER REVERSED E 018E
-LATIN CAPITAL LETTER SCHWA 018F
-latin capital letter script v 01B2
-LATIN CAPITAL LETTER THORN 00DE
-latin capital letter turned E 018E
-LATIN CAPITAL LETTER TURNED M 019C
-LATIN CAPITAL LETTER UPSILON 01B1
-latin capital letter yogh 01B7
+LATERAL CLICK, LATIN LETTER 01C1
+Latin Abbreviations, Squared 3371
Latin Capital Letters 0041
LATIN CROSS 271D
Latin Extended Additional 1E00
Latin Extended-A 0100
Latin Extended-B 0180
-latin letter bullseye 0298
-latin letter double pipe 01C1
-latin letter exclamation mark 01C3
-LATIN LETTER GLOTTAL STOP 0294
-latin letter lambda bar 019B
-latin letter pipe 01C0
-latin letter pipe double bar 01C2
-LATIN LETTER REVERSED ESH LOOP 01AA
-latin letter reversed glottal stop 0295
-LATIN LETTER SMALL CAPITAL B 0299
-LATIN LETTER SMALL CAPITAL G 0262
-LATIN LETTER SMALL CAPITAL H 029C
-LATIN LETTER SMALL CAPITAL I 026A
-LATIN LETTER SMALL CAPITAL INVERTED R 0281
-LATIN LETTER SMALL CAPITAL L 029F
-LATIN LETTER SMALL CAPITAL N 0274
-LATIN LETTER SMALL CAPITAL OE 0276
-LATIN LETTER SMALL CAPITAL R 0280
-LATIN LETTER SMALL CAPITAL Y 028F
-LATIN LETTER WYNN 01BF
-LATIN LETTER YR 01A6
+Latin Extensions for Vietnamese 1EA0
Latin Letters, Circled 24B6
Latin Letters, Parenthesized 249C
Latin Letters, Phonetic Modifiers Derived from 02B0
-LATIN SMALL LETTER AE 00E6
-LATIN SMALL LETTER ALPHA 0251
-latin small letter baby gamma 0264
-LATIN SMALL LETTER BARRED O 0275
-latin small letter d retroflex hook 0256
-LATIN SMALL LETTER DEZH DIGRAPH 02A4
-LATIN SMALL LETTER DOTLESS I 0131
-LATIN SMALL LETTER DZ 01F3
-LATIN SMALL LETTER DZ DIGRAPH 02A3
-LATIN SMALL LETTER ENG 014B
-latin small letter epsilon 025B
-LATIN SMALL LETTER ESH 0283
-LATIN SMALL LETTER ETH 00F0
-LATIN SMALL LETTER EZH 0292
-LATIN SMALL LETTER EZH REVERSED 01B9
-LATIN SMALL LETTER GAMMA 0263
-LATIN SMALL LETTER HV 0195
-LATIN SMALL LETTER IOTA 0269
-LATIN SMALL LETTER LEZH 026E
-LATIN SMALL LETTER LJ 01C9
-LATIN SMALL LETTER LONG S 017F
-LATIN SMALL LETTER NJ 01CC
-LATIN SMALL LETTER PHI 0278
-LATIN SMALL LETTER RAMS HORN 0264
-LATIN SMALL LETTER REVERSED E 0258
-LATIN SMALL LETTER SCHWA 0259
-latin small letter script a 0251
-latin small letter script f 0192
-LATIN SMALL LETTER SCRIPT G 0261
-latin small letter script v 028B
-LATIN SMALL LETTER SHARP S 00DF
-LATIN SMALL LETTER TESH DIGRAPH 02A7
-LATIN SMALL LETTER THORN 00FE
-LATIN SMALL LETTER TS DIGRAPH 02A6
-LATIN SMALL LETTER TURNED A 0250
-LATIN SMALL LETTER TURNED ALPHA 0252
-LATIN SMALL LETTER TURNED DELTA 018D
-LATIN SMALL LETTER TURNED E 01DD
-LATIN SMALL LETTER TURNED H 0265
-LATIN SMALL LETTER TURNED K 029E
-LATIN SMALL LETTER TURNED M 026F
-LATIN SMALL LETTER TURNED R 0279
-LATIN SMALL LETTER TURNED T 0287
-LATIN SMALL LETTER TURNED V 028C
-LATIN SMALL LETTER TURNED W 028D
-LATIN SMALL LETTER TURNED Y 028E
-LATIN SMALL LETTER UPSILON 028A
-latin small letter yogh 0292
+Latin Ligatures FB00
Latin Small Letters 0061
-latin small ligature ae 00E6
-LATIN SMALL LIGATURE IJ 0133
-LATIN SMALL LIGATURE OE 0153
Latin, Based on ISO 8859-2, -3, -4, -9 (European) 0100
Latin, C0 Controls and Basic 0000
-Latin, Extended 0180
+Latin, European 0100
Latin-1 Supplement, C1 Controls and 0080
+Latin-1, ISO 8859-1 aka 00A0
lazy s 223D
LAZY S, INVERTED 223E
LEADER, ONE DOT 2024
leader, three dot 2026
LEADER, TWO DOT 2025
+leaf, aldus 2766
+leaf, ivy 2767
LEFT ANGLE ABOVE, COMBINING 031A
+LEFT ANGLE BELOW, COMBINING 0349
LEFT ANGLE BRACKET 3008
LEFT ARROW ABOVE, COMBINING 20D6
LEFT BLACK LENTICULAR BRACKET 3010
@@ -1572,16 +1662,21 @@ LEFT DOUBLE ANGLE BRACKET 300A
LEFT DOUBLE QUOTATION MARK 201C
LEFT FLOOR 230A
LEFT HALF RING BELOW, COMBINING 031C
-LEFT HALF RING, ARMENIAN MODIFIER LETTER 0559
LEFT HALF RING, MODIFIER LETTER 02BF
LEFT HALF RING, MODIFIER LETTER CENTRED 02D3
+LEFT HALF, COMBINING DOUBLE TILDE FE22
+LEFT HALF, COMBINING LIGATURE FE20
LEFT HARPOON ABOVE, COMBINING 20D0
-LEFT NORMAL FACTOR SEMIDIRECT PRODUCT 22C9
+left key, delete to the 232B
LEFT PARENTHESIS 0028
LEFT PARENTHESIS, ORNATE FD3E
+LEFT PARENTHESIS, SUBSCRIPT 208D
+LEFT PARENTHESIS, SUPERSCRIPT 207D
left pointing guillemet 00AB
+LEFT POINTING INDEX, BLACK 261A
left pointing single guillemet 2039
LEFT RIGHT ARROW ABOVE, COMBINING 20E1
+LEFT RIGHT ARROW BELOW, COMBINING 034D
LEFT SEMIDIRECT PRODUCT 22CB
LEFT SINGLE QUOTATION MARK 2018
LEFT SQUARE BRACKET 005B
@@ -1600,82 +1695,71 @@ LEFT-TO-RIGHT EMBEDDING 202A
LEFT-TO-RIGHT MARK 200E
LEFT-TO-RIGHT OVERRIDE 202D
leftward tab 21E4
-legarmeh, hebrew 05C0
+LEFTWARDS BULLET, BLACK 204C
LENTICULAR BRACKET, LEFT BLACK 3010
LENTICULAR BRACKET, LEFT WHITE 3016
LEO 264C
LESS-THAN OR EQUAL TO 2264
LESS-THAN SIGN 003C
-LESS-THAN WITH DOT 22D6
LESS-THAN, MUCH 226A
LESS-THAN, VERY MUCH 22D8
Letterlike Symbols 2100
-Letters (Jamo), Korean Hangul 1100
-Letters and Ideographs, Enclosed CJK 3200
-Letters, Arabic 0627
-Letters, Armenian Capital 0531
-Letters, Armenian Small 0561
-Letters, Bengali 0985
-Letters, Circled Latin 24B6
-Letters, Coptic-Unique 03E2
-Letters, Croatian Digraphs Matching Serbian Cyrillic 01C4
-Letters, Cyrillic Capital 0401
-Letters, Cyrillic Small 0430
-Letters, Devanagari 0905
-Letters, Extended Arabic 0671
-Letters, Georgian Capital 10A0
-Letters, Georgian Small 10D0
-Letters, Greek Capital 0391
-Letters, Greek Small 03B1
-Letters, Gujarati 0A85
-Letters, Gurmukhi 0A05
-Letters, Hebrew 05D0
-Letters, Kannada 0C85
-Letters, Lao 0E81
-Letters, Latin Capital 0041
-Letters, Latin Small 0061
-Letters, Malayalam 0D05
-Letters, Oriya 0B05
-Letters, Parenthesized Latin 249C
-Letters, Phonetic Modifiers Derived from Latin 02B0
-Letters, Spacing Modifier 02B0
-Letters, Tamil 0B85
-Letters, Telugu 0C05
-Letters, Thai 0E01
-Letters, Tibetan 0F40
-Letters, Tone 02E5
+level 2 lock 21EB
+level 3 lock 21EF
+level 3 select 21EE
LEZH, LATIN SMALL LETTER 026E
+lf 000A
LIBRA 264E
ligature ae, latin small 00E6
LIGATURE IJ, LATIN SMALL 0133
+LIGATURE LEFT HALF, COMBINING FE20
LIGATURE OE, LATIN SMALL 0153
-Ligatures or Digraphs, Yiddish Hebrew 05F0
+Ligatures, Armenian FB13
+Ligatures, Latin FB00
LIGHTNING 2607
LIMIT, APPROACHES THE 2250
LINE ABOVE, COMBINING DOUBLE VERTICAL 030E
LINE ABOVE, COMBINING VERTICAL 030D
+LINE BELOW, COMBINING DOUBLE VERTICAL 0348
LINE BELOW, COMBINING VERTICAL 0329
-LINE FEED 000A
+line down, partial 008B
+line feed 000A
line feed 21B4
+line feed, reverse 008D
+LINE FEED, SYMBOL FOR 240A
line marker 2319
LINE OVERLAY, COMBINING LONG VERTICAL 20D2
LINE OVERLAY, COMBINING SHORT VERTICAL 20D3
LINE SEPARATOR 2028
+LINE SYMBOL, CENTRE 2104
+line tabulation set 008A
+line up, partial 008C
+LINE WITH MIDDLE DOT, VERTICAL 237F
line, beginning of 2310
+LINE, CENTRELINE LOW FE4E
LINE, COMBINING DOUBLE LOW 0333
LINE, COMBINING LOW 0332
+LINE, DASHED LOW FE4D
LINE, DOUBLE LOW 2017
LINE, DOUBLE VERTICAL 2016
LINE, LOW 005F
LINE, MODIFIER LETTER LOW VERTICAL 02CC
LINE, MODIFIER LETTER VERTICAL 02C8
line, new 21B5
+line, next 0085
LINE, VERTICAL 007C
LINE, WAVY 2307
+LINE, WAVY LOW FE4F
LIRA SIGN 20A4
liter 2113
-LJ, LATIN SMALL LETTER 01C9
+Livonian, Additions for 022A
+LOCATION SIGN, TELEPHONE 2706
lock, caps 21EA
+lock, caps 21EC
+lock, group 21F0
+lock, level 2 21EB
+lock, level 3 21EF
+lock, numerics 21ED
LOGICAL AND 2227
LOGICAL AND, CURLY 22CF
LOGICAL AND, N-ARY 22C0
@@ -1683,27 +1767,31 @@ LOGICAL OR 2228
LOGICAL OR, CURLY 22CE
LOGICAL OR, N-ARY 22C1
long 0304
+long cross 2020
+long dash 2015
LONG S, LATIN SMALL LETTER 017F
long slash overlay 0338
LONG SOLIDUS OVERLAY, COMBINING 0338
LONG STROKE OVERLAY, COMBINING 0336
LONG VERTICAL LINE OVERLAY, COMBINING 20D2
+LORRAINE, CROSS OF 2628
LOW ACUTE ACCENT, MODIFIER LETTER 02CF
low double comma quotation mark 201E
LOW DOUBLE PRIME QUOTATION MARK 301F
LOW GRAVE ACCENT, MODIFIER LETTER 02CE
LOW LINE 005F
+LOW LINE, CENTRELINE FE4E
LOW LINE, COMBINING 0332
LOW LINE, COMBINING DOUBLE 0333
+LOW LINE, DASHED FE4D
LOW LINE, DOUBLE 2017
+LOW LINE, WAVY FE4F
LOW MACRON, MODIFIER LETTER 02CD
low single comma quotation mark 201A
Low Surrogates DC00
-LOW TONE BAR, MODIFIER LETTER 02E8
LOW VERTICAL LINE, MODIFIER LETTER 02CC
LOW-9 QUOTATION MARK, DOUBLE 201E
LOW-9 QUOTATION MARK, SINGLE 201A
-LOWER NUMERAL SIGN, GREEK 0375
lower rank than 227A
LOZENGE 25CA
LOZENGE, SQUARE 2311
@@ -1713,50 +1801,52 @@ lro 202D
M, LATIN CAPITAL LETTER TURNED 019C
M, LATIN SMALL LETTER TURNED 026F
M, SCRIPT CAPITAL 2133
-m-matrix (physics) 2133
+m-matrix 2133
MACRON 00AF
MACRON BELOW, COMBINING 0331
MACRON, COMBINING 0304
MACRON, MODIFIER LETTER 02C9
MACRON, MODIFIER LETTER LOW 02CD
macron, spacing 00AF
-MAIYAMOK, THAI CHARACTER 0E46
Malayalam 0D00
Malayalam Digits 0D66
Malayalam Letters 0D05
-MALAYALAM SIGN ANUSVARA 0D02
-MALAYALAM SIGN VIRAMA 0D4D
-MALAYALAM SIGN VISARGA 0D03
MALE SIGN 2642
MALTESE CROSS 2720
-MAQAF, HEBREW PUNCTUATION 05BE
-Marks for Symbols, Combining Diacritical 20D0
-Marks, Combining Diacritical 0300
-Marks, Combining Half FE20
-Marks, Double Diacritical 0360
-Marks, Enclosing Diacritical 20DD
-Marks, Generic Diacritical 0300
-marks, Hebrew Accents or Cantillation 0591
-Marks, Ideographic Tone 302A
-Marks, Overstruck Diacritical 0334
-Marks, Vietnamese Tone 0340
+Manchu Letters, Mongolian 1873
+mark, german 2133
+marker, histogram 25AE
mars 2642
MASCULINE ORDINAL INDICATOR 00BA
Mathematical Operators 2200
+MATRIX, HERMITIAN CONJUGATE 22B9
MEASURED ANGLE 2221
MEASURED BY 225E
+medium, end of 0019
+MEDIUM, SYMBOL FOR END OF 2419
+MEMBER, CONTAINS AS 220B
+MEMBER, SMALL CONTAINS AS 220D
MERCURY 263F
+message waiting 0095
+message, privacy 009E
+mho 2127
MICRO SIGN 00B5
-MID TONE BAR, MODIFIER LETTER 02E7
+mid space 2005
MIDDLE DOT 00B7
middle dot, greek 00B7
MIDDLE DOT, KATAKANA 30FB
+MIDDLE DOT, LATIN SMALL LETTER L WITH 0140
+MIDDLE DOT, VERTICAL LINE WITH 237F
+MIDDLE TILDE, LATIN CAPITAL LETTER O WITH 019F
+MIDDLE TILDE, LATIN SMALL LETTER L WITH 026B
MIDLINE HORIZONTAL ELLIPSIS 22EF
+midpoint 00B7
MILL SIGN 20A5
MILLE SIGN, PER 2030
milreis 0024
+minim 264F
minim (alternate glyph) 264D
-minim, drop 264F
+Minnan and Hakka, Chinese Bopomofo Extended for 31A0
MINUS SIGN 2212
MINUS SIGN BELOW, COMBINING 0320
minus sign, hyphen or 002D
@@ -1766,48 +1856,28 @@ MINUS, CIRCLED 2296
MINUS, DOT 2238
MINUS, SET 2216
MINUS, SQUARED 229F
+MINUS, SUBSCRIPT 208B
+MINUS, SUPERSCRIPT 207B
MINUS-OR-PLUS SIGN 2213
minutes 2032
-Miscellaneous Dingbats 2600
Miscellaneous Symbols 2600
Miscellaneous Technical 2300
-Mkhedruli, Georgian Modern Lowercase Alphabet 10D0
MODELS 22A7
-MODIFIER LETTER ACUTE ACCENT 02CA
-MODIFIER LETTER APOSTROPHE 02BC
-Modifier Letter Arrowheads 02C2
-MODIFIER LETTER CENTRED LEFT HALF RING 02D3
-MODIFIER LETTER CIRCUMFLEX ACCENT 02C6
-MODIFIER LETTER DOUBLE PRIME 02BA
-MODIFIER LETTER DOWN TACK 02D5
-MODIFIER LETTER EXTRA-HIGH TONE BAR 02E5
-MODIFIER LETTER EXTRA-LOW TONE BAR 02E9
-MODIFIER LETTER GLOTTAL STOP 02C0
-MODIFIER LETTER GRAVE ACCENT 02CB
-modifier letter hacek 02C7
-MODIFIER LETTER HALF TRIANGULAR COLON 02D1
-MODIFIER LETTER HIGH TONE BAR 02E6
-MODIFIER LETTER LEFT HALF RING 02BF
-MODIFIER LETTER LEFT HALF RING, ARMENIAN 0559
-MODIFIER LETTER LOW ACUTE ACCENT 02CF
-MODIFIER LETTER LOW GRAVE ACCENT 02CE
-MODIFIER LETTER LOW MACRON 02CD
-MODIFIER LETTER LOW TONE BAR 02E8
-MODIFIER LETTER LOW VERTICAL LINE 02CC
-MODIFIER LETTER MACRON 02C9
-MODIFIER LETTER MID TONE BAR 02E7
-MODIFIER LETTER MINUS SIGN 02D7
-MODIFIER LETTER PLUS SIGN 02D6
-MODIFIER LETTER PRIME 02B9
-MODIFIER LETTER REVERSED COMMA 02BD
-MODIFIER LETTER RIGHT HALF RING 02BE
-modifier letter right half ring, armenian 055A
-MODIFIER LETTER TRIANGULAR COLON 02D0
-MODIFIER LETTER TURNED COMMA 02BB
-MODIFIER LETTER UP TACK 02D4
-MODIFIER LETTER VERTICAL LINE 02C8
Modifier Letters, Spacing 02B0
-Modifiers Derived from Latin Letters, Phonetic 02B0
+Mongolian 1800
+MONGOLIAN COLON 1804
+MONGOLIAN COMMA 1802
+mongolian currency 20AE
+Mongolian Digits 1810
+Mongolian Extensions for Sanskrit and Tibetan 1880
+Mongolian Format Controls 180B
+MONGOLIAN FULL STOP 1803
+Mongolian Manchu Letters 1873
+Mongolian Sibe Letters 185D
+Mongolian Todo Letters 1843
+MONOSTABLE SYMBOL 238D
+Months, Enclosed CJK Letters and 3200
+Months, Telegraph Symbols for 32C0
MOON, FIRST QUARTER 263D
MOON, LAST QUARTER 263E
most positive 223E
@@ -1818,14 +1888,19 @@ MUCH LESS-THAN, VERY 22D8
MULTIMAP 22B8
MULTIPLICATION SIGN 00D7
MULTIPLICATION X 2715
+MULTIPLICATION X, HEAVY 2716
MULTIPLICATION, MULTISET 228D
MULTISET 228C
MULTISET MULTIPLICATION 228D
MULTISET UNION 228E
-Music Dingbats 2669
MUSIC FLAT SIGN 266D
MUSIC NATURAL SIGN 266E
MUSIC SHARP SIGN 266F
+Musical Symbols 2669
+mutton 2003
+mutton quad 2001
+Myanmar 1000
+Myanmar Digits 1040
N, DOUBLE-STRUCK CAPITAL 2115
N, LATIN LETTER SMALL CAPITAL 0274
N-ARY COPRODUCT 2210
@@ -1838,18 +1913,28 @@ N-ARY UNION 22C3
NABLA 2207
NAIRA SIGN 20A6
NAND 22BC
+nang 0323
+NARROW NO-BREAK SPACE 202F
+nasal hook 0328
NATIONAL DIGIT SHAPES 206E
natural number 2115
NATURAL SIGN, MUSIC 266E
-nearly equals 2252
-NEGATIVE ACKNOWLEDGE 0015
+negation 20D3
+negative acknowledge 0015
+negative acknowledge, graphic for 237B
+NEGATIVE ACKNOWLEDGE, SYMBOL FOR 2415
NEPTUNE 2646
new line 21B5
NEW SHEQEL SIGN 20AA
-nice day!, have a 263A
-NIGGAHITA, LAO 0ECD
-NJ, LATIN SMALL LETTER 01CC
+NEWLINE, SYMBOL FOR 2424
+next line 0085
+NEXT PAGE 2398
+NIB, BLACK 2712
+nigerian currency 20A6
+no break here 0083
+no break space, graphic for 237D
NO-BREAK SPACE 00A0
+NO-BREAK SPACE, NARROW 202F
NO-BREAK SPACE, ZERO WIDTH FEFF
NODE, ASCENDING 260A
NODE, DESCENDING 260B
@@ -1857,30 +1942,30 @@ NOMINAL DIGIT SHAPES 206F
NON-BREAKING HYPHEN 2011
non-breaking space 00A0
NON-JOINER, ZERO WIDTH 200C
+non-theorem 22A3
NOR 22BD
-NORMAL FACTOR SEMIDIRECT PRODUCT, LEFT 22C9
NORMAL SUBGROUP OF 22B2
NORMAL SUBGROUP, CONTAINS AS 22B3
not 223C
-Not a Character Code FFFE
-Not a Character Code FFFF
+Not a Character FFFE
+Not a Character FFFF
+NOT AN ELEMENT OF 2209
+NOT CHECK MARK 237B
NOT EQUAL TO 2260
NOT SIGN 00AC
NOT SIGN, REVERSED 2310
NOT SIGN, TURNED 2319
-NOT TILDE 2241
+NOT TILDE ABOVE, COMBINING 034A
+not yield, does 22A3
NOTE, EIGHTH 266A
NOTE, QUARTER 2669
NOTES, BEAMED EIGHTH 266B
NOTES, BEAMED SIXTEENTH 266C
-NUKTA, BENGALI SIGN 09BC
-NUKTA, DEVANAGARI SIGN 093C
-NUKTA, GUJARATI SIGN 0ABC
-NUKTA, GURMUKHI SIGN 0A3C
-NUKTA, ORIYA SIGN 0B3C
-NULL 0000
+null 0000
null set 2205
+NULL, SYMBOL FOR 2400
Number Forms 2150
+Number Runes, Golden 16EE
NUMBER SIGN 0023
number symbol, real 210A
NUMBER ZERO, IDEOGRAPHIC 3007
@@ -1888,45 +1973,60 @@ number, natural 2115
Numbers Period 2488
Numbers, Circled 2460
Numbers, Circled Inverse 2776
-Numbers, Circled Inverse Sans-Serif 278A
-Numbers, Circled Sans-Serif 2780
Numbers, Parenthesized 2474
numbers, the set of complex 2102
numbers, the set of rational 211A
numbers, the set of real 211D
-NUMERAL SIGN, GREEK 0374
-NUMERAL SIGN, GREEK LOWER 0375
-numeral sign, greek upper 0374
-Numerals, Hangzhou-Style 3021
+Numerals, Hangzhou-style 3021
Numerals, Roman 2160
NUMERATOR ONE, FRACTION 215F
+numerics lock 21ED
NUMERO SIGN 2116
+nut 2002
+o bar 019F
+o bar 0275
+o e, latin small letter 0153
+O WITH MIDDLE TILDE, LATIN CAPITAL LETTER 019F
o, latin capital letter barred 019F
+O, LATIN CAPITAL LETTER OPEN 0186
O, LATIN SMALL LETTER BARRED 0275
+O, LATIN SMALL LETTER OPEN 0254
O, SCRIPT SMALL 2134
+obelisk 2020
+obelisk, double 2021
+OBJECT REPLACEMENT CHARACTER FFFC
OCR, Optical Character Recognition 2440
+octothorpe 0023
OE, LATIN LETTER SMALL CAPITAL 0276
OE, LATIN SMALL LIGATURE 0153
+Ogham 1680
+OGHAM SPACE MARK 1680
OGONEK 02DB
OGONEK, COMBINING 0328
OHM SIGN 2126
OHM SIGN, INVERTED 2127
+OI, LATIN SMALL LETTER 01A3
OM, DEVANAGARI 0950
-OM, GUJARATI 0AD0
+OMEGA, LATIN SMALL LETTER CLOSED 0277
ONE DOT LEADER 2024
-ONE EIGHTH, VULGAR FRACTION 215B
-ONE FIFTH, VULGAR FRACTION 2155
ONE HALF, VULGAR FRACTION 00BD
ONE QUARTER, VULGAR FRACTION 00BC
-ONE SIXTH, VULGAR FRACTION 2159
-ONE THIRD, VULGAR FRACTION 2153
ONE, FRACTION NUMERATOR 215F
ONE, SUPERSCRIPT 00B9
-one, superscript digit 00B9
+OPEN BOX 2423
+OPEN BOX, SHOULDERED 237D
+OPEN E, LATIN CAPITAL LETTER 0190
+OPEN E, LATIN SMALL LETTER 025B
+OPEN E, LATIN SMALL LETTER CLOSED 029A
+OPEN E, LATIN SMALL LETTER CLOSED REVERSED 025E
+OPEN E, LATIN SMALL LETTER REVERSED 025C
+OPEN O, LATIN CAPITAL LETTER 0186
+OPEN O, LATIN SMALL LETTER 0254
opening brace 007B
opening curly bracket 007B
opening parenthesis 0028
opening square bracket 005B
+operating system command 009D
OPERATOR, ASTERISK 2217
OPERATOR, BULLET 2219
OPERATOR, CIRCLED ASTERISK 229B
@@ -1934,7 +2034,6 @@ OPERATOR, CIRCLED DOT 2299
OPERATOR, CIRCLED RING 229A
OPERATOR, DIAMOND 22C4
OPERATOR, DOT 22C5
-operator, laplace 2206
OPERATOR, RING 2218
OPERATOR, SQUARED DOT 22A1
OPERATOR, STAR 22C6
@@ -1946,6 +2045,7 @@ OPTION KEY 2325
OR, CURLY LOGICAL 22CE
OR, LOGICAL 2228
OR, N-ARY LOGICAL 22C1
+order 2134
ORDINAL INDICATOR, FEMININE 00AA
ORDINAL INDICATOR, MASCULINE 00BA
ORIGIN, DIMENSION 2331
@@ -1953,20 +2053,15 @@ ORIGINAL OF 22B6
ORIGINAL OF, SQUARE 2290
Oriya 0B00
Oriya Digits 0B66
-ORIYA ISSHAR 0B70
Oriya Letters 0B05
-ORIYA SIGN ANUSVARA 0B02
-ORIYA SIGN AVAGRAHA 0B3D
-ORIYA SIGN CANDRABINDU 0B01
-ORIYA SIGN NUKTA 0B3C
-ORIYA SIGN VIRAMA 0B4D
-ORIYA SIGN VISARGA 0B03
+Ornaments, Heart 2763
+Ornaments, Punctuation 275B
ORNATE LEFT PARENTHESIS FD3E
ORTHODOX CROSS 2626
orthogonal to 22A5
+OU, LATIN SMALL LETTER 0223
OUNCE SIGN 2125
overbar, apl 00AF
-OVERLAY, COMBINING ANTICLOCKWISE RING 20DA
OVERLAY, COMBINING CLOCKWISE RING 20D9
OVERLAY, COMBINING LONG SOLIDUS 0338
OVERLAY, COMBINING LONG STROKE 0336
@@ -1980,66 +2075,81 @@ overlay, long slash 0338
overlay, short slash 0337
overline 00AF
OVERLINE 203E
+OVERLINE, CENTRELINE FE4A
OVERLINE, COMBINING 0305
OVERLINE, COMBINING DOUBLE 033F
+OVERLINE, DASHED FE49
+OVERLINE, DOUBLE WAVY FE4C
+OVERLINE, WAVY FE4B
OVERRIDE, LEFT-TO-RIGHT 202D
OVERRIDE, RIGHT-TO-LEFT 202E
overscore 0305
overscore, spacing 203E
Overscores and Underscores FE49
-Overstruck Diacritical Marks 0334
-oxia, greek 0301
+Overstruck Diacritics 0334
+oxia 0301
P, DOUBLE-STRUCK CAPITAL 2119
P, SCRIPT CAPITAL 2118
page down 21DF
page up 21DE
-PAIYANNOI, THAI CHARACTER 0E2F
-PALATALIZATION, COMBINING CYRILLIC 0484
+PAGE, NEXT 2398
+PAGE, PREVIOUS 2397
PALATALIZED HOOK BELOW, COMBINING 0321
PARAGRAPH SEPARATOR 2029
PARAGRAPH SEPARATOR, GEORGIAN 10FB
paragraph separator, urdu 203B
paragraph sign 00B6
PARAGRAPH SIGN ORNAMENT, CURVED STEM 2761
+paragraph sign, european 00A7
PARALLEL TO 2225
-PARALLEL TO, EQUAL AND 22D5
+PARALLELOGRAM, BLACK 25B0
parenthesis, closing 0029
PARENTHESIS, LEFT 0028
parenthesis, opening 0028
PARENTHESIS, ORNATE LEFT FD3E
PARENTHESIS, RIGHT 0029
+PARENTHESIS, SUBSCRIPT LEFT 208D
+PARENTHESIS, SUPERSCRIPT LEFT 207D
Parenthesized Ideographs 3220
Parenthesized Korean Hangul Elements 3200
Parenthesized Korean Hangul Syllables 320E
Parenthesized Latin Letters 249C
Parenthesized Numbers 2474
+parted rule 00A6
PARTIAL DIFFERENTIAL 2202
-PASEQ, HEBREW PUNCTUATION 05C0
-PASUQ, HEBREW PUNCTUATION SOF 05C3
-patiw, armenian 055F
+partial line down 008B
+partial line up 008C
pdf 202C
PEACE SYMBOL 262E
Pencil Dingbats 270E
+PENCIL, UPPER RIGHT 2710
per 2118
PER MILLE SIGN 2030
PER TEN THOUSAND SIGN 2031
PERCENT SIGN 0025
PERCENT SIGN, ARABIC 066A
+PERCUSSIVE, LATIN LETTER BIDENTAL 02AD
+PERCUSSIVE, LATIN LETTER BILABIAL 02AC
period 002E
PERISPOMENI, COMBINING GREEK 0342
perpendicular 22A5
-Persian and Urdu, Eastern Arabic-Indic Digits 06F0
+Persian and Urdu, Eastern Arabic-Indic Digits for 06F0
PERSPECTIVE 2306
PESETA SIGN 20A7
+PHARYNGEAL VOICED FRICATIVE, LATIN LETTER 0295
PHI, LATIN SMALL LETTER 0278
Phonetic Alphabet, International 0250
Phonetic Modifiers Derived from Latin Letters 02B0
-phrase separator, devanagari 0964
+Phonetics and Symbols Area, CJK 2E00
+phonorecord sign 2117
+pi, mathematical constant 03C0
+Pictures for Control Codes, Graphic 2400
PILCROW SIGN 00B6
-Pinyin Diacritic-Vowel Combinations 01CD
-pipe double bar, latin letter 01C2
-pipe, latin letter 01C0
-pipe, latin letter double 01C1
+PILCROW SIGN, REVERSED 204B
+Pinyin Diacritic-vowel Combinations 01CD
+pipe 01C0
+pipe, double 01C1
+pipe, double-barred 01C2
PISCES 2653
PITCHFORK 22D4
PLACE OF INTEREST SIGN 2318
@@ -2047,22 +2157,25 @@ plaintiff 226C
PLANCK CONSTANT 210E
PLANCK CONSTANT OVER TWO PI 210F
Planet Symbols 263F
+Playing Card Suits 2660
PLUS SIGN 002B
PLUS SIGN BELOW, COMBINING 031F
PLUS SIGN, MODIFIER LETTER 02D6
+PLUS SIGN, SUBSCRIPT 208A
+PLUS SIGN, SUPERSCRIPT 207A
PLUS, CIRCLED 2295
PLUS, DOT 2214
PLUS, SQUARED 229E
PLUS-MINUS SIGN 00B1
PLUTO 2647
-PNEUMATA, COMBINING CYRILLIC DASIA 0485
-PNEUMATA, COMBINING CYRILLIC PSILI 0486
Pointers 25BA
-Pointing Index Finger Dingbats 261A
-Points and Punctuation, Hebrew 05B0
+Points, Arabic 064B
+Points, Hebrew 05B0
poison 2620
+Political Symbols, Religious and 2626
POP DIRECTIONAL FORMATTING 202C
POSITION INDICATOR 2316
+positive, most 223E
POSTAL MARK 3012
POSTAL MARK FACE 3020
POSTAL MARK, CIRCLED 3036
@@ -2075,8 +2188,10 @@ PRECEDES 227A
PRECEDES UNDER RELATION 22B0
PRESCRIPTION TAKE 211E
Presentation Forms, Alphabetic FB00
+Presentation Forms, Hebrew FB1D
Presentation Forms-A, Arabic FB50
Presentation Forms-B, Arabic FE70
+PREVIOUS PAGE 2397
PRIME 2032
PRIME QUOTATION MARK, DOUBLE 301E
PRIME QUOTATION MARK, LOW DOUBLE 301F
@@ -2088,47 +2203,56 @@ PRIME, REVERSED 2035
PRIME, REVERSED DOUBLE 2036
PRIME, REVERSED TRIPLE 2037
PRIME, TRIPLE 2034
+PRINT SCREEN SYMBOL 2399
+privacy message 009E
Private Use Area E000
-Private Use High Surrogates DB80
-product sign 220F
+private use one 0091
+private use two 0092
product, direct 2299
-PRODUCT, LEFT NORMAL FACTOR SEMIDIRECT 22C9
PRODUCT, LEFT SEMIDIRECT 22CB
PRODUCT, N-ARY 220F
product, tensor 2297
PRODUCT, WREATH 2240
+PROFILE, ALL AROUND- 232E
+prohibition 20E0
PROJECTIVE 2305
-PROLONGED SOUND MARK, KATAKANA-HIRAGANA 30FC
PROOF, END OF 220E
-proper intersection 22D4
PROPORTION 2237
PROPORTION, GEOMETRIC 223A
PROPORTIONAL TO 221D
proportional to, varies with 223C
-proves, implies, yields 22A2
-PSILI PNEUMATA, COMBINING CYRILLIC 0486
-psili, greek 0313
+proves 22A2
+psili 0313
published 2117
+Punctuation Ornaments 275B
+PUNCTUATION SPACE 2008
Punctuation, CJK Symbols and 3000
Punctuation, General 2000
+punt, irish 00A3
Q, DOUBLE-STRUCK CAPITAL 211A
+Q, ROTATED CAPITAL 213A
qed 220E
QUAD, EM 2001
QUAD, EN 2000
+quad, mutton 2001
quadrature 25A1
quantic 226C
QUARTER MOON, FIRST 263D
QUARTER MOON, LAST 263E
QUARTER NOTE 2669
+Quarters, Fractions 00BC
+QUESTION EXCLAMATION MARK 2048
QUESTION MARK 003F
QUESTION MARK, ARABIC 061F
QUESTION MARK, ARMENIAN 055E
+QUESTION MARK, ETHIOPIC 1367
+QUESTION MARK, EXCLAMATION 2049
QUESTION MARK, GREEK 037E
QUESTION MARK, INVERTED 00BF
QUESTIONED EQUAL TO 225F
+QUILL, LEFT SQUARE BRACKET WITH 2045
quotation dash 2015
QUOTATION MARK 0022
-Quotation Mark Dingbats 275B
Quotation Mark Ornaments 275B
quotation mark, double comma 201D
QUOTATION MARK, DOUBLE HIGH-REVERSED-9 201F
@@ -2159,41 +2283,47 @@ R, DOUBLE-STRUCK CAPITAL 211D
R, LATIN LETTER SMALL CAPITAL 0280
R, LATIN LETTER SMALL CAPITAL INVERTED 0281
R, LATIN SMALL LETTER TURNED 0279
+R, MODIFIER LETTER SMALL 02B3
+R, MODIFIER LETTER SMALL CAPITAL INVERTED 02B6
+R, MODIFIER LETTER SMALL TURNED 02B4
R, SCRIPT CAPITAL 211B
radical sign 221A
+Radicals Supplement, CJK 2E80
+Radicals, Kangxi 2F00
+Radicals, Yi A490
RADIOACTIVE SIGN 2622
rainy weather 2602
RAMS HORN, LATIN SMALL LETTER 0264
-rank than, higher 227B
-rank than, lower 227A
RATIO 2236
ratio, cross 211E
rational numbers, the set of 211A
real number symbol 210A
real numbers, the set of 211D
-real part symbol 211C
+real part 211C
recipe 211E
-RECORD SEPARATOR 001E
+record separator 001E
+RECORD SEPARATOR, SYMBOL FOR 241E
RECORDER, TELEPHONE 2315
RECORDING COPYRIGHT, SOUND 2117
-RECTANGLE BOX, X IN A 2327
-RECTANGLE, BLACK 25AC
-RECTANGLE, WHITE 25AD
+Rectangles 25AC
reduces to 22A6
reducible 22A2
REFERENCE MARK 203B
-REGISTERED SIGN 00AE
registered trade mark sign 00AE
-RELATION, PRECEDES UNDER 22B0
-RELATION, SUCCEEDS UNDER 22B1
-Religious Symbols 2625
-REPEAT MARK, VERTICAL KANA 3031
+Religious and Political Symbols 2626
+Repeat Marks, Kana 3031
REPLACEMENT CHARACTER FFFD
+REPLACEMENT CHARACTER, OBJECT FFFC
resistance 2126
RESPONSE 211F
results in 22A8
+RETROFLEX CLICK, LATIN LETTER 01C3
RETROFLEX HOOK BELOW, COMBINING 0322
retroflex hook, latin small letter d 0256
+return, carriage 000D
+return, carriage 21B5
+RETURN, SYMBOL FOR CARRIAGE 240D
+reverse line feed 008D
REVERSE SOLIDUS 005C
reverse turnstile 22A3
REVERSED COMMA ABOVE, COMBINING 0314
@@ -2204,10 +2334,18 @@ REVERSED DOUBLE PRIME 2036
REVERSED DOUBLE PRIME QUOTATION MARK 301D
REVERSED E, LATIN CAPITAL LETTER 018E
REVERSED E, LATIN SMALL LETTER 0258
+reversed epsilon, latin small letter closed 025E
REVERSED ESH LOOP, LATIN LETTER 01AA
+REVERSED ESH, LATIN SMALL LETTER SQUAT 0285
reversed glottal stop, latin letter 0295
+REVERSED GLOTTAL STOP, MODIFIER LETTER 02C1
+REVERSED GLOTTAL STOP, MODIFIER LETTER SMALL 02E4
REVERSED NOT SIGN 2310
+REVERSED OPEN E, LATIN SMALL LETTER 025C
+REVERSED OPEN E, LATIN SMALL LETTER CLOSED 025E
+REVERSED PILCROW SIGN 204B
REVERSED PRIME 2035
+reversed straight epsilon 220D
REVERSED TILDE 223D
REVERSED TILDE EQUALS 22CD
REVERSED TRIPLE PRIME 2037
@@ -2216,34 +2354,17 @@ RHOTIC HOOK, MODIFIER LETTER 02DE
riemann integral 211B
RIGHT ANGLE 221F
RIGHT ANGLE WITH ARC 22BE
-RIGHT ARROW ABOVE, COMBINING 20D7
-RIGHT ARROW ABOVE, COMBINING LEFT 20E1
RIGHT CURLY BRACKET 007D
-RIGHT DIAGONAL ELLIPSIS, DOWN 22F1
-RIGHT DIAGONAL ELLIPSIS, UP 22F0
-RIGHT DOUBLE QUOTATION MARK 201D
-RIGHT HALF RING BELOW, COMBINING 0339
-right half ring, armenian modifier letter 055A
-RIGHT HALF RING, MODIFIER LETTER 02BE
-RIGHT HARPOON ABOVE, COMBINING 20D1
-right key, delete to the 2326
RIGHT PARENTHESIS 0029
right pointing guillemet 00BB
right pointing single guillemet 203A
-RIGHT SINGLE QUOTATION MARK 2019
RIGHT SQUARE BRACKET 005D
-RIGHT TACK 22A2
-RIGHT TACK BELOW, COMBINING 0319
RIGHT TRIANGLE 22BF
-RIGHT TURNSTILE, DOUBLE VERTICAL BAR DOUBLE 22AB
-RIGHT TURNSTILE, TRIPLE VERTICAL BAR 22AA
-RIGHT-POINTING ANGLE BRACKET 232A
RIGHT-POINTING ANGLE QUOTATION MARK, SINGLE 203A
RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK 00BB
RIGHT-TO-LEFT EMBEDDING 202B
RIGHT-TO-LEFT MARK 200F
RIGHT-TO-LEFT OVERRIDE 202E
-rightward tab 21E5
RING ABOVE 02DA
RING ABOVE, COMBINING 030A
RING BELOW, COMBINING 0325
@@ -2254,22 +2375,24 @@ RING IN EQUAL TO 2256
RING OPERATOR 2218
RING OPERATOR, CIRCLED 229A
RING OVERLAY, COMBINING 20D8
-RING OVERLAY, COMBINING ANTICLOCKWISE 20DA
RING OVERLAY, COMBINING CLOCKWISE 20D9
-RING, ARMENIAN MODIFIER LETTER LEFT HALF 0559
-ring, armenian modifier letter right half 055A
RING, BENZENE 232C
RING, MODIFIER LETTER CENTRED LEFT HALF 02D3
RING, MODIFIER LETTER LEFT HALF 02BF
-RING, MODIFIER LETTER RIGHT HALF 02BE
rle 202B
rlm 200F
rlo 202E
Roman Numerals 2160
+Romanian, Additions for 0218
ROOT, CUBE 221B
ROOT, FOURTH 221C
ROOT, SQUARE 221A
+ROTATED CAPITAL Q 213A
+rotation 20D5
rough breathing 0314
+rule, parted 00A6
+Runes, Golden Number 16EE
+Runic 16A0
RUNOUT, TOTAL 2330
RUPEE MARK, BENGALI 09F2
RUPEE SIGN 20A8
@@ -2279,16 +2402,17 @@ S, INVERTED LAZY 223E
S, LATIN SMALL LETTER LONG 017F
S, LATIN SMALL LETTER SHARP 00DF
s, lazy 223D
+S, MODIFIER LETTER SMALL 02E2
SAGITTARIUS 2650
SALTIRE 2613
-Sans-Serif Numbers, Circled 2780
-Sans-Serif Numbers, Circled Inverse 278A
+Sanskrit and Tibetan, Mongolian Extensions for 1880
satisfies 22A8
SATURN 2644
SCHWA, LATIN CAPITAL LETTER 018F
SCHWA, LATIN SMALL LETTER 0259
Scissors Dingbats 2701
SCORPIUS 264F
+SCREEN, COMBINING ENCLOSING 20E2
script a, latin small letter 0251
SCRIPT CAPITAL B 212C
SCRIPT CAPITAL E 2130
@@ -2307,28 +2431,40 @@ SCRIPT SMALL L 2113
SCRIPT SMALL O 2134
script v, latin capital letter 01B2
script v, latin small letter 028B
+Scripts Area, General 0000
+scrolling 21F3
SCRUPLE 2108
SEAGULL BELOW, COMBINING 033C
second transfinite cardinal (the continuum) 2136
seconds 2033
SECTION SIGN 00A7
+section sign, european 00B6
SECTOR 2314
SEGMENT 2313
+selected area, end of 0087
+selected area, start of 0086
SEMICOLON 003B
SEMICOLON, ARABIC 061B
+SEMICOLON, ETHIOPIC 1364
SEMIDIRECT PRODUCT, LEFT 22CB
-SEMIDIRECT PRODUCT, LEFT NORMAL FACTOR 22C9
+SEPARATOR KEY SYMBOL, DECIMAL 2396
SEPARATOR, ARABIC DECIMAL 066B
SEPARATOR, ARABIC THOUSANDS 066C
+separator, decimal 002C
separator, devanagari phrase 0964
-SEPARATOR, FILE 001C
+separator, file 001C
SEPARATOR, GEORGIAN PARAGRAPH 10FB
-SEPARATOR, GROUP 001D
+separator, group 001D
SEPARATOR, LINE 2028
SEPARATOR, PARAGRAPH 2029
-SEPARATOR, RECORD 001E
-SEPARATOR, UNIT 001F
+separator, record 001E
+SEPARATOR, SYMBOL FOR FILE 241C
+SEPARATOR, SYMBOL FOR GROUP 241D
+SEPARATOR, SYMBOL FOR RECORD 241E
+SEPARATOR, SYMBOL FOR UNIT 241F
+separator, unit 001F
separator, urdu paragraph 203B
+sequence introducer, control 009B
Serbian Cyrillic Letters, Croatian Digraphs Matching 01C4
SERVICE MARK 2120
SET MINUS 2216
@@ -2336,39 +2472,35 @@ set of complex numbers, the 2102
set of integers, the 2124
set of rational numbers, the 211A
set of real numbers, the 211D
+set transmit state 0093
SET, EMPTY 2205
+set, included in 2282
+set, includes in 2283
set, null 2205
set, power 2118
-SEVEN EIGHTHS, VULGAR FRACTION 215E
sextile 2736
-SHADE, DARK 2593
-SHADE, LIGHT 2591
-SHADE, MEDIUM 2592
-SHAKTI, ADI 262C
+Shade Characters 2591
shamrock 2663
Shapes, Geometric 25A0
-SHAPES, NATIONAL DIGIT 206E
-SHAPES, NOMINAL DIGIT 206F
-SHAPING, ACTIVATE ARABIC FORM 206D
-SHAPING, INHIBIT ARABIC FORM 206C
SHARP S, LATIN SMALL LETTER 00DF
SHARP SIGN, MUSIC 266F
-SHELL BRACKET, LEFT TORTOISE 3014
-SHELL BRACKET, LEFT WHITE TORTOISE 3018
SHEQEL SIGN, NEW 20AA
-shesht, armenian 055B
shift 21E7
-SHIFT IN 000F
-SHIFT OUT 000E
-shift tab, tab with 21B9
+shift in 000F
+SHIFT IN, SYMBOL FOR 240F
+shift out 000E
+SHIFT OUT, SYMBOL FOR 240E
shilling 002F
short 0306
short slash overlay 0337
SHORT SOLIDUS OVERLAY, COMBINING 0337
SHORT STROKE OVERLAY, COMBINING 0335
SHORT VERTICAL LINE OVERLAY, COMBINING 20D3
+SHOULDERED OPEN BOX 237D
+Sibe Letters, Mongolian 185D
similar to 223C
SINE WAVE 223F
+single character introducer 009A
single comma quotation mark 2019
single comma quotation mark, low 201A
single guillemet, left pointing 2039
@@ -2380,11 +2512,13 @@ SINGLE QUOTATION MARK, LEFT 2018
SINGLE QUOTATION MARK, RIGHT 2019
single reversed comma quotation mark 201B
SINGLE RIGHT-POINTING ANGLE QUOTATION MARK 203A
+single shift three 008F
+single shift two 008E
single turned comma quotation mark 2018
+Sinhala 0D80
SIX-PER-EM SPACE 2006
SIXTEENTH NOTES, BEAMED 266C
-SIXTH, VULGAR FRACTION ONE 2159
-SIXTHS, VULGAR FRACTION FIVE 215A
+Sixths, Fractions 2159
SKULL AND CROSSBONES 2620
slash 002F
slash overlay, long 0338
@@ -2393,11 +2527,13 @@ SLASH, CIRCLED DIVISION 2298
SLASH, DIVISION 2215
SLASH, FRACTION 2044
SLOPE 2333
+Slovenian and Croatian, Additions for 0200
SMALL CAPITAL B, LATIN LETTER 0299
SMALL CAPITAL G, LATIN LETTER 0262
SMALL CAPITAL H, LATIN LETTER 029C
SMALL CAPITAL I, LATIN LETTER 026A
SMALL CAPITAL INVERTED R, LATIN LETTER 0281
+SMALL CAPITAL INVERTED R, MODIFIER LETTER 02B6
SMALL CAPITAL L, LATIN LETTER 029F
SMALL CAPITAL N, LATIN LETTER 0274
SMALL CAPITAL OE, LATIN LETTER 0276
@@ -2412,32 +2548,42 @@ Small Letters, Cyrillic 0430
Small Letters, Georgian 10D0
Small Letters, Greek 03B1
Small Letters, Latin 0061
-SMALL TILDE 02DC
SMILE 2323
SMILING FACE, BLACK 263B
SMILING FACE, WHITE 263A
smooth breathing 0313
Snowflake Dingbats 2744
+Snowflakes, Stars, Asterisks and 2721
SNOWMAN 2603
snowy weather 2603
-SOF PASUQ, HEBREW PUNCTUATION 05C3
SOFT HYPHEN 00AD
+SOFTWARE-FUNCTION SYMBOL 2394
+solid 2588
SOLIDUS 002F
+solidus 2044
SOLIDUS OVERLAY, COMBINING LONG 0338
SOLIDUS OVERLAY, COMBINING SHORT 0337
SOLIDUS, REVERSE 005C
SOUND RECORDING COPYRIGHT 2117
+SOURCE, INFORMATION 2139
SPACE 0020
+SPACE MARK, OGHAM 1680
SPACE, EM 2003
SPACE, EN 2002
SPACE, FIGURE 2007
SPACE, FOUR-PER-EM 2005
+space, graphic for 2422
+space, graphic for 2423
+space, graphic for no break 237D
SPACE, HAIR 200A
SPACE, IDEOGRAPHIC 3000
-SPACE, IDEOGRAPHIC HALF FILL 303F
+space, mid 2005
+SPACE, NARROW NO-BREAK 202F
SPACE, NO-BREAK 00A0
SPACE, PUNCTUATION 2008
SPACE, SIX-PER-EM 2006
+SPACE, SYMBOL FOR 2420
+space, thick 2004
SPACE, THIN 2009
SPACE, THREE-PER-EM 2004
SPACE, ZERO WIDTH 200B
@@ -2446,6 +2592,7 @@ Spaces 2000
spacing acute 00B4
spacing cedilla 00B8
spacing circumflex 005E
+Spacing Clones of Diacritics 02D8
spacing diaeresis 00A8
spacing double underscore 2017
spacing grave 0060
@@ -2453,7 +2600,9 @@ spacing macron 00AF
Spacing Modifier Letters 02B0
spacing overscore 203E
spacing underscore 005F
+spanish currency 20A7
Specials FFF0
+Specials Area, Compatibility and F900
SPHERICAL ANGLE 2222
SQUARE BELOW, COMBINING 033B
SQUARE BRACKET WITH QUILL, LEFT 2045
@@ -2463,6 +2612,7 @@ SQUARE BRACKET, LEFT WHITE 301A
square bracket, opening 005B
SQUARE BRACKET, RIGHT 005D
SQUARE CAP 2293
+SQUARE CORPORATION 337F
SQUARE CUP 2294
SQUARE IMAGE OF 228F
SQUARE LOZENGE 2311
@@ -2473,12 +2623,14 @@ SQUARE, VIEWDATA 2317
squared 00B2
SQUARED DOT OPERATOR 22A1
Squared Japanese Katakana Words 3300
-Squared Latin Abbreviations 3380
+Squared Latin Abbreviations 3371
SQUARED MINUS 229F
SQUARED PLUS 229E
SQUARED TIMES 22A0
Squares 25A0
+SQUAT REVERSED ESH, LATIN SMALL LETTER 0285
st. andrew's cross 2613
+star 002A
STAR AND CRESCENT 262A
Star Dingbats 2726
STAR EQUALS 225B
@@ -2486,38 +2638,58 @@ STAR OF DAVID 2721
STAR OPERATOR 22C6
STAR, ARABIC FIVE POINTED 066D
STAR, BLACK 2605
-STAR, WHITE 2606
starburst 273A
-START OF HEADING 0001
-START OF TEXT 0002
-statement is true, valid 22A8
+Stars, Asterisks and Snowflakes 2721
+start of guarded area 0096
+start of heading 0001
+START OF HEADING, SYMBOL FOR 2401
+start of selected area 0086
+start of string 0098
+start of text 0002
+START OF TEXT, SYMBOL FOR 2402
+statement is true 22A8
+sterling, pound 00A3
stile, apl 2223
+straight epsilon 220A
+straight epsilon, reversed 220D
stress mark 0301
-STRESS SIGN ANUDATTA, DEVANAGARI 0952
-STRESS SIGN UDATTA, DEVANAGARI 0951
+STRETCHED C, LATIN LETTER 0297
STRICTLY EQUIVALENT TO 2263
+string terminator 009C
+string, device control 0090
+string, start of 0098
STROKE OVERLAY, COMBINING LONG 0336
STROKE OVERLAY, COMBINING SHORT 0335
SUBGROUP OF, NORMAL 22B2
SUBGROUP, CONTAINS AS NORMAL 22B3
-subscript, greek iota 0345
+Subscript Digits 2080
+SUBSCRIPT EQUALS SIGN 208C
+SUBSCRIPT LEFT PARENTHESIS 208D
+SUBSCRIPT MINUS 208B
+SUBSCRIPT PLUS SIGN 208A
+subscript, iota 0345
Subscripts 2080
-Subscripts, Superscripts and 2070
SUBSET OF 2282
SUBSET, DOUBLE 22D0
-SUBSTITUTE 001A
+substitute 001A
+SUBSTITUTE FORM TWO, SYMBOL FOR 2426
+SUBSTITUTE, SYMBOL FOR 241A
SUCCEEDS 227B
SUCCEEDS UNDER RELATION 22B1
such that 220B
such that 2223
-Suits, Card 2660
+Suits, Playing Card 2660
sum, direct 2295
-summation sign 2211
SUMMATION, N-ARY 2211
SUN 2609
-SUN WITH RAYS, WHITE 263C
+SUN WITH RAYS, BLACK 2600
SUPERSCRIPT ALEF, ARABIC LETTER 0670
+Superscript Digits 2070
+SUPERSCRIPT EQUALS SIGN 207C
+SUPERSCRIPT LEFT PARENTHESIS 207D
+SUPERSCRIPT MINUS 207B
SUPERSCRIPT ONE 00B9
+SUPERSCRIPT PLUS SIGN 207A
SUPERSCRIPT THREE 00B3
SUPERSCRIPT TWO 00B2
SUPERSCRIPT ZERO 2070
@@ -2526,45 +2698,50 @@ Superscripts and Subscripts 2070
SUPERSET OF 2283
SUPERSET, DOUBLE 22D1
SURFACE INTEGRAL 222F
-Surrogates DB80
-Surrogates, High DB80
+Surrogates Area D800
+Surrogates, High D800
Surrogates, Low DC00
-Surrogates, Private Use High DB80
-SWAPPING, ACTIVATE SYMMETRIC 206B
-SWAPPING, INHIBIT SYMMETRIC 206A
+swedish grave accent 02DF
+swung dash 007E
+Syllabics, Unified Canadian Aboriginal 1400
+Syllables Area, Korean Hangul AC00
+Syllables, Yi A000
Symbol Variants, Fullwidth FFE0
Symbols and Punctuation, CJK 3000
+Symbols Area 2000
+Symbols Area, CJK Phonetics and 2E00
Symbols for Control Codes, Graphic 2400
-Symbols, APL Functional 2336
Symbols, Combining Diacritical Marks for 20D0
-Symbols, Currency 20A0
Symbols, Greek 03D0
Symbols, Letterlike 2100
Symbols, Miscellaneous 2600
-Symbols, Planet 263F
-Symbols, Religious 2625
-Symbols, Zodiac 2648
symmetric difference 2238
symmetric difference 2296
SYMMETRIC SWAPPING, ACTIVATE 206B
SYMMETRIC SWAPPING, INHIBIT 206A
SYMMETRY 232F
-SYNCHRONOUS IDLE 0016
+synchronous idle 0016
+SYNCHRONOUS IDLE, SYMBOL FOR 2416
+Syriac 0700
+SYRIAC CROSS, EAST 2671
+SYRIAC CROSS, WEST 2670
+Syriac Format Control 070F
T, LATIN SMALL LETTER TURNED 0287
tab 0009
tab with shift tab 21B9
tab, leftward 21E4
tab, rightward 21E5
-tab, tab with shift 21B9
-TABULATION, HORIZONTAL 0009
-TABULATION, VERTICAL 000B
-TACK BELOW, COMBINING DOWN 031E
+tab, symbol for 2409
+tabulation set, character 0088
+tabulation set, line 008A
+tabulation with justification, character 0089
+tabulation, horizontal 0009
+TABULATION, SYMBOL FOR HORIZONTAL 2409
+TABULATION, SYMBOL FOR VERTICAL 240B
+tabulation, vertical 000B
TACK BELOW, COMBINING LEFT 0318
-TACK BELOW, COMBINING RIGHT 0319
TACK BELOW, COMBINING UP 031D
-TACK, DOWN 22A4
TACK, LEFT 22A3
-TACK, MODIFIER LETTER DOWN 02D5
TACK, MODIFIER LETTER UP 02D4
TACK, RIGHT 22A2
TACK, UP 22A5
@@ -2573,55 +2750,47 @@ TAKE, PRESCRIPTION 211E
Tamil 0B80
Tamil Digits 0BE7
Tamil Letters 0B85
-TAMIL SIGN ANUSVARA 0B82
-TAMIL SIGN VIRAMA 0BCD
-TAMIL SIGN VISARGA 0B83
+TAPE DRIVE 2707
TAPER, CONICAL 2332
-TATWEEL, ARABIC 0640
TAURUS 2649
-tautology, is a 22A8
+tautology 22A8
Technical, Miscellaneous 2300
-TELEIA, GREEK ANO 0387
+Telegraph Symbols for Days 33E0
+Telegraph Symbols for Hours 3358
+Telegraph Symbols for Months 32C0
+TELEPHONE LOCATION SIGN 2706
TELEPHONE RECORDER 2315
TELEPHONE SIGN 2121
TELEPHONE, BLACK 260E
-TELEPHONE, WHITE 260F
Telugu 0C00
Telugu Digits 0C66
Telugu Letters 0C05
-TELUGU SIGN ANUSVARA 0C02
-TELUGU SIGN CANDRABINDU 0C01
-TELUGU SIGN VIRAMA 0C4D
-TELUGU SIGN VISARGA 0C03
+TEN THOUSAND SIGN, PER 2031
+tensor 20E1
tensor product 2297
-TESH DIGRAPH, LATIN SMALL LETTER 02A7
+terminator, string 009C
+text, end of 0003
+text, start of 0002
+TEXT, SYMBOL FOR END OF 2403
+TEXT, SYMBOL FOR START OF 2402
+Thaana 0780
Thai 0E00
-THAI CHARACTER FONGMAN 0E4F
-THAI CHARACTER LAKKHANGYAO 0E45
-THAI CHARACTER MAIYAMOK 0E46
-THAI CHARACTER PAIYANNOI 0E2F
-THAI CHARACTER THANTHAKHAT 0E4C
-THAI CHARACTER YAMAKKAN 0E4E
THAI CURRENCY SYMBOL BAHT 0E3F
Thai Digits 0E50
Thai Letters 0E01
-THANTHAKHAT, THAI CHARACTER 0E4C
THERE EXISTS 2203
THEREFORE 2234
+thick space 2004
THIN SPACE 2009
third derivative 20DB
third transfinite cardinal (functions of a real variable) 2137
-THIRD, VULGAR FRACTION ONE 2153
-THIRDS, VULGAR FRACTION TWO 2154
+Thirds, Fractions 2153
THORN, LATIN CAPITAL LETTER 00DE
THORN, LATIN SMALL LETTER 00FE
-THOUSAND SIGN, PER TEN 2031
THOUSANDS SEPARATOR, ARABIC 066C
THOUSANDS SIGN, CYRILLIC 0482
three dot leader 2026
THREE DOTS ABOVE, COMBINING 20DB
-THREE EIGHTHS, VULGAR FRACTION 215C
-THREE FIFTHS, VULGAR FRACTION 2157
THREE QUARTERS, VULGAR FRACTION 00BE
THREE, SUPERSCRIPT 00B3
THREE-PER-EM SPACE 2004
@@ -2629,10 +2798,13 @@ THUNDERSTORM 2608
Tibetan 0F00
Tibetan Digits 0F20
Tibetan Letters 0F40
+Tibetan, Mongolian Extensions for Sanskrit and 1880
TIE, CHARACTER 2040
TILDE 007E
+TILDE ABOVE, COMBINING NOT 034A
TILDE BELOW, COMBINING 0330
TILDE EQUALS, REVERSED 22CD
+TILDE LEFT HALF, COMBINING DOUBLE FE22
TILDE OPERATOR 223C
TILDE OVERLAY, COMBINING 0334
tilde, apl 223C
@@ -2640,30 +2812,25 @@ TILDE, COMBINING 0303
TILDE, COMBINING DOUBLE 0360
TILDE, COMBINING VERTICAL 033E
TILDE, MINUS 2242
-TILDE, NOT 2241
TILDE, REVERSED 223D
TILDE, SMALL 02DC
TILDE, TRIPLE 224B
TIMES, CIRCLED 2297
TIMES, DIVISION 22C7
TIMES, SQUARED 22A0
-TIPPI, GURMUKHI 0A70
+TIRONIAN SIGN ET 204A
TIS 620-2529 (Thai), Based on 0E01
-TITLO, COMBINING CYRILLIC 0483
-TONE BAR, MODIFIER LETTER EXTRA-HIGH 02E5
-TONE BAR, MODIFIER LETTER EXTRA-LOW 02E9
-TONE BAR, MODIFIER LETTER HIGH 02E6
-TONE BAR, MODIFIER LETTER LOW 02E8
-TONE BAR, MODIFIER LETTER MID 02E7
-Tone Letters 02E5
+Todo Letters, Mongolian 1843
+Tone Bar Letters 02E5
+TONE FIVE, LATIN SMALL LETTER 01BD
TONE MARK, COMBINING ACUTE 0341
TONE MARK, COMBINING GRAVE 0340
Tone Marks, Ideographic 302A
Tone Marks, Vietnamese 0340
+TONE SIX, LATIN SMALL LETTER 0185
+TONE TWO, LATIN SMALL LETTER 01A8
+tonos 0301
TONOS, COMBINING GREEK DIALYTIKA 0344
-tonos, greek 030D
-TONOS, GREEK 0384
-TONOS, GREEK DIALYTIKA 0385
TOP HALF INTEGRAL 2320
TOP LEFT CORNER 231C
TOP LEFT CROP 230F
@@ -2676,21 +2843,27 @@ transfinite cardinal (countable), first 2135
transfinite cardinal (functions of a real variable), third 2137
transfinite cardinal (the continuum), second 2136
transfinite cardinal, fourth 2138
+transmission block, end of 0017
+TRANSMISSION BLOCK, SYMBOL FOR END OF 2417
+transmission, end of 0004
+transmission, graphic for end of 2301
+TRANSMISSION, SYMBOL FOR END OF 2404
+transmit state, set 0093
TRIANGLE, RIGHT 22BF
Triangles 25B2
TRIANGULAR BULLET 2023
TRIANGULAR COLON, MODIFIER LETTER 02D0
TRIANGULAR COLON, MODIFIER LETTER HALF 02D1
-Trigrams, Yi Jing 2630
+Trigram Symbols, Yijing 2630
trine 25B3
TRIPLE INTEGRAL 222D
TRIPLE PRIME 2034
TRIPLE PRIME, REVERSED 2037
TRIPLE TILDE 224B
-TRIPLE VERTICAL BAR RIGHT TURNSTILE 22AA
TRUE 22A8
-TS DIGRAPH, LATIN SMALL LETTER 02A6
+TUGRIK SIGN 20AE
turbofan 274B
+turkish currency 20A4
TURNED A, LATIN SMALL LETTER 0250
TURNED ALPHA, LATIN SMALL LETTER 0252
TURNED CAPITAL F 2132
@@ -2699,7 +2872,7 @@ turned comma quotation mark, double 201C
turned comma quotation mark, single 2018
TURNED COMMA, MODIFIER LETTER 02BB
TURNED DELTA, LATIN SMALL LETTER 018D
-turned E, latin capital letter 018E
+turned e, latin capital letter 018E
TURNED E, LATIN SMALL LETTER 01DD
TURNED GREEK SMALL LETTER IOTA 2129
TURNED H, LATIN SMALL LETTER 0265
@@ -2709,22 +2882,21 @@ TURNED M, LATIN SMALL LETTER 026F
TURNED NOT SIGN 2319
turned question mark 00BF
TURNED R, LATIN SMALL LETTER 0279
+TURNED R, MODIFIER LETTER SMALL 02B4
TURNED T, LATIN SMALL LETTER 0287
TURNED V, LATIN SMALL LETTER 028C
TURNED W, LATIN SMALL LETTER 028D
TURNED Y, LATIN SMALL LETTER 028E
turnstile 22A2
-TURNSTILE, DOUBLE VERTICAL BAR DOUBLE RIGHT 22AB
turnstile, reverse 22A3
-TURNSTILE, TRIPLE VERTICAL BAR RIGHT 22AA
TWO DOT LEADER 2025
-TWO FIFTHS, VULGAR FRACTION 2156
-TWO THIRDS, VULGAR FRACTION 2154
TWO, SUPERSCRIPT 00B2
-UDATTA, DEVANAGARI STRESS SIGN 0951
UMBRELLA 2602
umlaut 0308
+UNASPIRATED, MODIFIER LETTER 02ED
underline 0332
+UNDERLINE SYMBOL, CONTINUOUS 2381
+UNDERLINE SYMBOL, DISCONTINUOUS 2382
underline, double 0333
underscore 0332
underscore, double 0333
@@ -2732,48 +2904,50 @@ underscore, spacing 005F
underscore, spacing double 2017
Underscores, Overscores and FE49
UNDERTIE 203F
-Unified Ideographs, CJK 4E00
+UNDO SYMBOL 238C
+undoable delete 2425
UNION 222A
UNION, DOUBLE 22D3
UNION, MULTISET 228E
UNION, N-ARY 22C3
-UNIT SEPARATOR 001F
+unique element 2129
+unit separator 001F
+UNIT SEPARATOR, SYMBOL FOR 241F
UP ARROWHEAD 2303
+UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS 2324
UP RIGHT DIAGONAL ELLIPSIS 22F0
UP TACK 22A5
UP TACK BELOW, COMBINING 031D
UP TACK, MODIFIER LETTER 02D4
-upper numeral sign, greek 0374
+up, page 21DE
+UPPER BLADE SCISSORS 2701
+UPPER RIGHT PENCIL 2710
UPSILON, LATIN CAPITAL LETTER 01B1
UPSILON, LATIN SMALL LETTER 028A
upstile, apl 2308
+UPWARDS ARROW BELOW, COMBINING 034E
URANUS 2645
urdu paragraph separator 203B
-Urdu, Eastern Arabic-Indic Digits (Persian and) 06F0
-v above 030C
+Urdu, Eastern Arabic-Indic Digits for Persian and 06F0
+V WITH HOOK, LATIN CAPITAL LETTER 01B2
v, latin capital letter script 01B2
v, latin small letter script 028B
V, LATIN SMALL LETTER TURNED 028C
valentine 2665
-valid, statement is true 22A8
-varia, greek 0300
-Variants, Fullwidth ASCII FF01
-Variants, Fullwidth Symbol FFE0
-Variants, Glyphs for Vertical FE30
-Variants, Halfwidth Japanese Katakana FF61
-Variants, Halfwidth Korean Hangul FFA0
-Variants, Small Form FE50
+valid 22A8
+varia 0300
varies with (proportional to) 223C
+vector 20D0
+vector 20D6
vector pointing into page 2295
vector pointing into page 2297
vector pointing out of page 2299
vee 2228
+vee above 030C
venus 2640
VERSICLE 2123
vertical bar 007C
Vertical Bar Dingbats 2758
-VERTICAL BAR DOUBLE RIGHT TURNSTILE, DOUBLE 22AB
-VERTICAL BAR RIGHT TURNSTILE, TRIPLE 22AA
vertical bar, broken 00A6
VERTICAL ELLIPSIS 22EE
VERTICAL KANA REPEAT MARK 3031
@@ -2781,20 +2955,25 @@ VERTICAL LINE 007C
VERTICAL LINE ABOVE, COMBINING 030D
VERTICAL LINE ABOVE, COMBINING DOUBLE 030E
VERTICAL LINE BELOW, COMBINING 0329
+VERTICAL LINE BELOW, COMBINING DOUBLE 0348
VERTICAL LINE OVERLAY, COMBINING LONG 20D2
VERTICAL LINE OVERLAY, COMBINING SHORT 20D3
+VERTICAL LINE WITH MIDDLE DOT 237F
VERTICAL LINE, DOUBLE 2016
VERTICAL LINE, MODIFIER LETTER 02C8
VERTICAL LINE, MODIFIER LETTER LOW 02CC
-VERTICAL TABULATION 000B
+vertical tabulation 000B
+VERTICAL TABULATION, SYMBOL FOR 240B
VERTICAL TILDE, COMBINING 033E
Vertical Variants, Glyphs for FE30
-vertsaket, armenian 0589
VERY MUCH GREATER-THAN 22D9
VERY MUCH LESS-THAN 22D8
VICTORY HAND 270C
+vietnamese currency 20AB
Vietnamese Tone Marks 0340
+Vietnamese, Latin Extensions for 1EA0
VIEWDATA SQUARE 2317
+vinculum 0305
VIRAMA, BENGALI SIGN 09CD
VIRAMA, DEVANAGARI SIGN 094D
VIRAMA, GUJARATI SIGN 0ACD
@@ -2806,70 +2985,64 @@ VIRAMA, TAMIL SIGN 0BCD
VIRAMA, TELUGU SIGN 0C4D
VIRGO 264D
virgule 002F
-VISARGA, BENGALI SIGN 0983
-VISARGA, DEVANAGARI SIGN 0903
-VISARGA, GUJARATI SIGN 0A83
-VISARGA, KANNADA SIGN 0C83
-VISARGA, MALAYALAM SIGN 0D03
-VISARGA, ORIYA SIGN 0B03
-VISARGA, TAMIL SIGN 0B83
-VISARGA, TELUGU SIGN 0C03
+VOICED FRICATIVE, LATIN LETTER PHARYNGEAL 0295
VOICED SOUND MARK, COMBINING KATAKANA-HIRAGANA 3099
VOICED SOUND MARK, KATAKANA-HIRAGANA 309B
+VOICING, MODIFIER LETTER 02EC
VOLUME INTEGRAL 2230
-vrachy, greek 0306
+vrachy 0306
W, LATIN SMALL LETTER TURNED 028D
-Warning Dingbats 2620
+W, MODIFIER LETTER SMALL 02B7
+Warning Signs 2620
WATCH 231A
WAVE DASH 301C
WAVE, SINE 223F
WAVY DASH 3030
WAVY LINE 2307
-Weather Dingbats 2600
+WAVY LOW LINE FE4F
+WAVY OVERLINE FE4B
+WAVY OVERLINE, DOUBLE FE4C
+Weather and Astrological Symbols 2600
wedge 028C
wedge 2227
weierstrass elliptic function 2118
WHEEL OF DHARMA 2638
-WHITE BULLET 25E6
-WHITE CIRCLE 25CB
-WHITE CORNER BRACKET, LEFT 300E
-WHITE DIAMOND 25C7
-WHITE FROWNING FACE 2639
-WHITE LENTICULAR BRACKET, LEFT 3016
-WHITE RECTANGLE 25AD
-WHITE SMILING FACE 263A
-WHITE SQUARE BRACKET, LEFT 301A
-WHITE STAR 2606
-WHITE SUN WITH RAYS 263C
-WHITE TELEPHONE 260F
-WHITE TORTOISE SHELL BRACKET, LEFT 3018
WON SIGN 20A9
+Words, Squared Japanese Katakana 3300
+WORDSPACE, ETHIOPIC 1361
WREATH PRODUCT 2240
WRITING HAND 270D
+WYNN, LATIN CAPITAL LETTER 01F7
WYNN, LATIN LETTER 01BF
X ABOVE, COMBINING 033D
X IN A RECTANGLE BOX 2327
X, BALLOT 2717
X, BALLOT BOX WITH 2612
+X, HEAVY BALLOT 2718
+X, HEAVY MULTIPLICATION 2716
+X, MODIFIER LETTER SMALL 02E3
X, MULTIPLICATION 2715
XOR 22BB
Y, LATIN LETTER SMALL CAPITAL 028F
Y, LATIN SMALL LETTER TURNED 028E
-YAMAKKAN, THAI CHARACTER 0E4E
+Y, MODIFIER LETTER SMALL 02B8
+YANG, YIN 262F
YEN SIGN 00A5
-Yi Jing Trigrams 2630
-Yiddish Hebrew Ligatures or Digraphs 05F0
-yields, proves, implies 22A2
+Yi Radicals A490
+Yi Syllables A000
+Yiddish Digraphs 05F0
+yields 22A2
+Yijing Trigram Symbols 2630
YIN YANG 262F
yogh, latin capital letter 01B7
+YOGH, LATIN SMALL LETTER 021D
yogh, latin small letter 0292
YPOGEGRAMMENI, COMBINING GREEK 0345
-YPOGEGRAMMENI, GREEK 037A
YR, LATIN LETTER 01A6
yuan sign 00A5
Z, BLACK-LETTER CAPITAL 2128
Z, DOUBLE-STRUCK CAPITAL 2124
-Zapf Dingbats 2700
+Zapf Dingbats Series 100, ITC 2700
ZERO WIDTH JOINER 200D
ZERO WIDTH NO-BREAK SPACE FEFF
ZERO WIDTH NON-JOINER 200C
@@ -2877,6 +3050,6 @@ ZERO WIDTH SPACE 200B
ZERO, CIRCLED DIGIT 24EA
ZERO, IDEOGRAPHIC NUMBER 3007
ZERO, SUPERSCRIPT 2070
-Zodiac Symbols 2648
-zwj ("zawj") 200D
-zwnj ("zwinj") 200C
+Zodiacal Symbols 2648
+zwj 200D
+zwnj 200C
diff --git a/lib/unicode/Is/Alnum.pl b/lib/unicode/Is/Alnum.pl
index 20f66e5e46..18200ffdda 100644
--- a/lib/unicode/Is/Alnum.pl
+++ b/lib/unicode/Is/Alnum.pl
@@ -241,11 +241,6 @@ return <<'END';
3400 4db5
4e00 9fa5
a000 a48c
-a490 a4a1
-a4a4 a4b3
-a4b5 a4c0
-a4c2 a4c4
-a4c6
ac00 d7a3
f900 fa2d
fb00 fb06
diff --git a/lib/unicode/Is/Alpha.pl b/lib/unicode/Is/Alpha.pl
index 3177149845..1be8129964 100644
--- a/lib/unicode/Is/Alpha.pl
+++ b/lib/unicode/Is/Alpha.pl
@@ -224,11 +224,6 @@ return <<'END';
3400 4db5
4e00 9fa5
a000 a48c
-a490 a4a1
-a4a4 a4b3
-a4b5 a4c0
-a4c2 a4c4
-a4c6
ac00 d7a3
f900 fa2d
fb00 fb06
diff --git a/lib/unicode/Is/BidiCS.pl b/lib/unicode/Is/BidiCS.pl
index 0f16811aaa..4c16fe7e87 100644
--- a/lib/unicode/Is/BidiCS.pl
+++ b/lib/unicode/Is/BidiCS.pl
@@ -4,7 +4,6 @@ return <<'END';
003a
00a0
060c
-202f
fe50
fe52
fe55
diff --git a/lib/unicode/Is/BidiL.pl b/lib/unicode/Is/BidiL.pl
index 913f0e52a8..ae19cbaa2b 100644
--- a/lib/unicode/Is/BidiL.pl
+++ b/lib/unicode/Is/BidiL.pl
@@ -277,6 +277,7 @@ return <<'END';
2133 2139
2160 2183
2336 237a
+2395
249c 24e9
3005 3007
3021 3029
@@ -301,11 +302,6 @@ return <<'END';
3400 4db5
4e00 9fa5
a000 a48c
-a490 a4a1
-a4a4 a4b3
-a4b5 a4c0
-a4c2 a4c4
-a4c6
ac00 d7a3
d800 db7f
db80 dbff
diff --git a/lib/unicode/Is/BidiON.pl b/lib/unicode/Is/BidiON.pl
index 061ecffe8d..8924a60c0d 100644
--- a/lib/unicode/Is/BidiON.pl
+++ b/lib/unicode/Is/BidiON.pl
@@ -53,7 +53,8 @@ return <<'END';
2214 22f1
2300 2335
237b
-237d 239a
+237d 2394
+2396 239a
2400 2426
2440 244a
2500 2595
@@ -84,6 +85,11 @@ return <<'END';
303e 303f
309b 309c
30fb
+a490 a4a1
+a4a4 a4b3
+a4b5 a4c0
+a4c2 a4c4
+a4c6
fd3e fd3f
fe30 fe44
fe49 fe4f
diff --git a/lib/unicode/Is/BidiWS.pl b/lib/unicode/Is/BidiWS.pl
index 9a6a880a68..8322155635 100644
--- a/lib/unicode/Is/BidiWS.pl
+++ b/lib/unicode/Is/BidiWS.pl
@@ -4,5 +4,6 @@ return <<'END';
1680
2000 200a
2028
+202f
3000
END
diff --git a/lib/unicode/Is/DCcompat.pl b/lib/unicode/Is/DCcompat.pl
index 86e73d0414..b6d925ba53 100644
--- a/lib/unicode/Is/DCcompat.pl
+++ b/lib/unicode/Is/DCcompat.pl
@@ -1,5 +1,4 @@
return <<'END';
-005e 0060
00a8
00af
00b4 00b5
@@ -18,6 +17,8 @@ return <<'END';
03f0 03f2
0587
0675 0678
+0e33
+0eb3
0edc 0edd
0f77
0f79
diff --git a/lib/unicode/Is/DecoCanon.pl b/lib/unicode/Is/DecoCanon.pl
index 53ac38557c..35a08690b7 100644
--- a/lib/unicode/Is/DecoCanon.pl
+++ b/lib/unicode/Is/DecoCanon.pl
@@ -80,8 +80,6 @@ return <<'END';
0d4a 0d4c
0dda
0ddc 0dde
-0e33
-0eb3
0f43
0f4d
0f52
diff --git a/lib/unicode/Is/DecoCompat.pl b/lib/unicode/Is/DecoCompat.pl
index 7b68855290..944d69155d 100644
--- a/lib/unicode/Is/DecoCompat.pl
+++ b/lib/unicode/Is/DecoCompat.pl
@@ -1,5 +1,4 @@
return <<'END';
-005e 0060
00a0
00a8
00aa
@@ -23,6 +22,8 @@ return <<'END';
03f0 03f2
0587
0675 0678
+0e33
+0eb3
0edc 0edd
0f0c
0f77
diff --git a/lib/unicode/Is/L.pl b/lib/unicode/Is/L.pl
index ac98766c6f..7ab2842a75 100644
--- a/lib/unicode/Is/L.pl
+++ b/lib/unicode/Is/L.pl
@@ -228,11 +228,6 @@ return <<'END';
3400 4db5
4e00 9fa5
a000 a48c
-a490 a4a1
-a4a4 a4b3
-a4b5 a4c0
-a4c2 a4c4
-a4c6
ac00 d7a3
f900 fa2d
fb00 fb06
diff --git a/lib/unicode/Is/Ll.pl b/lib/unicode/Is/Ll.pl
index 9a7588ceca..da6b7d76ac 100644
--- a/lib/unicode/Is/Ll.pl
+++ b/lib/unicode/Is/Ll.pl
@@ -79,14 +79,13 @@ return <<'END';
01a3
01a5
01a8
-01ab
+01aa 01ab
01ad
01b0
01b4
01b6
01b9 01ba
-01bd
-01bf
+01bd 01bf
01c6
01c9
01cc
@@ -153,7 +152,7 @@ return <<'END';
03e9
03eb
03ed
-03ef 03f2
+03ef 03f3
0430 045f
0461
0463
diff --git a/lib/unicode/Is/Lo.pl b/lib/unicode/Is/Lo.pl
index 57f722b284..e5f4537dd9 100644
--- a/lib/unicode/Is/Lo.pl
+++ b/lib/unicode/Is/Lo.pl
@@ -1,10 +1,6 @@
return <<'END';
-01aa
01bb
-01be
01c0 01c3
-03f3
-04c0
05d0 05ea
05f0 05f2
0621 063a
@@ -165,11 +161,6 @@ return <<'END';
3400 4db5
4e00 9fa5
a000 a48c
-a490 a4a1
-a4a4 a4b3
-a4b5 a4c0
-a4c2 a4c4
-a4c6
ac00 d7a3
f900 fa2d
fb1d
diff --git a/lib/unicode/Is/Lower.pl b/lib/unicode/Is/Lower.pl
index 9a7588ceca..da6b7d76ac 100644
--- a/lib/unicode/Is/Lower.pl
+++ b/lib/unicode/Is/Lower.pl
@@ -79,14 +79,13 @@ return <<'END';
01a3
01a5
01a8
-01ab
+01aa 01ab
01ad
01b0
01b4
01b6
01b9 01ba
-01bd
-01bf
+01bd 01bf
01c6
01c9
01cc
@@ -153,7 +152,7 @@ return <<'END';
03e9
03eb
03ed
-03ef 03f2
+03ef 03f3
0430 045f
0461
0463
diff --git a/lib/unicode/Is/Lu.pl b/lib/unicode/Is/Lu.pl
index 928e10b102..eb8052e70d 100644
--- a/lib/unicode/Is/Lu.pl
+++ b/lib/unicode/Is/Lu.pl
@@ -196,7 +196,7 @@ return <<'END';
04ba
04bc
04be
-04c1
+04c0 04c1
04c3
04c7
04cb
diff --git a/lib/unicode/Is/Pd.pl b/lib/unicode/Is/Pd.pl
index e2d9477dde..f1c1439939 100644
--- a/lib/unicode/Is/Pd.pl
+++ b/lib/unicode/Is/Pd.pl
@@ -2,6 +2,7 @@ return <<'END';
002d
00ad
058a
+1806
2010 2015
301c
3030
diff --git a/lib/unicode/Is/Po.pl b/lib/unicode/Is/Po.pl
index 05a22f2cfc..0e230d8331 100644
--- a/lib/unicode/Is/Po.pl
+++ b/lib/unicode/Is/Po.pl
@@ -38,7 +38,8 @@ return <<'END';
16eb 16ed
17d4 17da
17dc
-1800 180a
+1800 1805
+1807 180a
2016 2017
2020 2027
2030 2038
diff --git a/lib/unicode/Is/S.pl b/lib/unicode/Is/S.pl
index 851a0f6d53..9292596053 100644
--- a/lib/unicode/Is/S.pl
+++ b/lib/unicode/Is/S.pl
@@ -106,6 +106,11 @@ return <<'END';
3300 3376
337b 33dd
33e0 33fe
+a490 a4a1
+a4a4 a4b3
+a4b5 a4c0
+a4c2 a4c4
+a4c6
fb29
fe62
fe64 fe66
diff --git a/lib/unicode/Is/Sm.pl b/lib/unicode/Is/Sm.pl
index 5be99c80a1..e68877ab80 100644
--- a/lib/unicode/Is/Sm.pl
+++ b/lib/unicode/Is/Sm.pl
@@ -11,11 +11,20 @@ return <<'END';
207a 207c
208a 208c
2190 2194
+219a 219b
+21a0
+21a3
+21a6
+21ae
+21ce 21cf
21d2
21d4
2200 22f1
2308 230b
2320 2321
+25b7
+25c1
+266f
fb29
fe62
fe64 fe66
diff --git a/lib/unicode/Is/So.pl b/lib/unicode/Is/So.pl
index 07cb14d819..6e937d6b39 100644
--- a/lib/unicode/Is/So.pl
+++ b/lib/unicode/Is/So.pl
@@ -30,7 +30,13 @@ return <<'END';
212e
2132
213a
-2195 21d1
+2195 2199
+219c 219f
+21a1 21a2
+21a4 21a5
+21a7 21ad
+21af 21cd
+21d0 21d1
21d3
21d5 21f3
2300 2307
@@ -42,9 +48,12 @@ return <<'END';
2440 244a
249c 24e9
2500 2595
-25a0 25f7
+25a0 25b6
+25b8 25c0
+25c2 25f7
2600 2613
-2619 2671
+2619 266e
+2670 2671
2701 2704
2706 2709
270c 2727
@@ -79,6 +88,11 @@ return <<'END';
3300 3376
337b 33dd
33e0 33fe
+a490 a4a1
+a4a4 a4b3
+a4b5 a4c0
+a4c2 a4c4
+a4c6
ffe4
ffe8
ffed ffee
diff --git a/lib/unicode/Is/Upper.pl b/lib/unicode/Is/Upper.pl
index 928e10b102..eb8052e70d 100644
--- a/lib/unicode/Is/Upper.pl
+++ b/lib/unicode/Is/Upper.pl
@@ -196,7 +196,7 @@ return <<'END';
04ba
04bc
04be
-04c1
+04c0 04c1
04c3
04c7
04cb
diff --git a/lib/unicode/Is/Word.pl b/lib/unicode/Is/Word.pl
index 9ce5137dba..f30d2f126b 100644
--- a/lib/unicode/Is/Word.pl
+++ b/lib/unicode/Is/Word.pl
@@ -242,11 +242,6 @@ return <<'END';
3400 4db5
4e00 9fa5
a000 a48c
-a490 a4a1
-a4a4 a4b3
-a4b5 a4c0
-a4c2 a4c4
-a4c6
ac00 d7a3
f900 fa2d
fb00 fb06
diff --git a/lib/unicode/jamo2.txt b/lib/unicode/Jamo-2.txt
index c81776a239..6910ab924e 100755..100644
--- a/lib/unicode/jamo2.txt
+++ b/lib/unicode/Jamo-2.txt
@@ -4,7 +4,7 @@ U+1101; GG; HANGUL CHOSEONG SSANGKIYEOK
U+1102; N; HANGUL CHOSEONG NIEUN
U+1103; D; HANGUL CHOSEONG TIKEUT
U+1104; DD; HANGUL CHOSEONG SSANGTIKEUT
-U+1105; L; HANGUL CHOSEONG RIEUL
+U+1105; R; HANGUL CHOSEONG RIEUL
U+1106; M; HANGUL CHOSEONG MIEUM
U+1107; B; HANGUL CHOSEONG PIEUP
U+1108; BB; HANGUL CHOSEONG SSANGPIEUP
diff --git a/lib/unicode/JamoShort.pl b/lib/unicode/JamoShort.pl
index 6aad4da35d..433ee82951 100644
--- a/lib/unicode/JamoShort.pl
+++ b/lib/unicode/JamoShort.pl
@@ -4,7 +4,7 @@ return <<'END';
1102 N
1103 D
1104 DD
-1105 L
+1105 R
1106 M
1107 B
1108 BB
diff --git a/lib/unicode/LineBrk.txt b/lib/unicode/LineBrk.txt
new file mode 100644
index 0000000000..48f6c50be4
--- /dev/null
+++ b/lib/unicode/LineBrk.txt
@@ -0,0 +1,10643 @@
+# LineBreak-5.txt
+#
+# Line Break Properties
+#
+# This file is a supplement to the UnicodeData file.
+# It contains both normative and informative data.
+# The format is three fields separated by semicolons.
+# Field 1: Unicode value
+# Field 2: LineBreak property, consisting of one of the following values:
+# Normative:
+# "BK", "CR", "LF", "CM", "SG", "GL", "CB", "SP", "ZW"
+# Informative:
+# "XX", "OP", "CL", "QU", "NS", "EX", "SY",
+# "IS", "PR", "PO", "NU", "AL", "ID", "IN", "HY",
+# "BB", "BA", "SA", "AI", "B2"
+# - Assigned characters that are not listed explicitly are given the value
+# "AL".
+# - Unassigned characters are given the value "XX".
+# - Characters within ranges marked by "First>" and "Last>" are omitted,
+# as in UnicodeData.txt. For example, the following means that
+# all characters between 3400 and 4DB5 have the value "ID"
+# 3400;ID;<CJK Ideograph Extension A, First>
+# 4DB5;ID;<CJK Ideograph Extension A, Last>
+# Field 3: Unicode name (this is purely informative)
+#
+# See UTR #14: Line Breaking Properties for more information
+0000;CM;<control>
+0001;CM;<control>
+0002;CM;<control>
+0003;CM;<control>
+0004;CM;<control>
+0005;CM;<control>
+0006;CM;<control>
+0007;CM;<control>
+0008;CM;<control>
+0009;BA;<control>
+000A;LF;<control>
+000B;CM;<control>
+000C;BK;<control>
+000D;CR;<control>
+000E;CM;<control>
+000F;CM;<control>
+0010;CM;<control>
+0011;CM;<control>
+0012;CM;<control>
+0013;CM;<control>
+0014;CM;<control>
+0015;CM;<control>
+0016;CM;<control>
+0017;CM;<control>
+0018;CM;<control>
+0019;CM;<control>
+001A;CM;<control>
+001B;CM;<control>
+001C;CM;<control>
+001D;CM;<control>
+001E;CM;<control>
+001F;CM;<control>
+0020;SP;SPACE
+0021;EX;EXCLAMATION MARK
+0022;QU;QUOTATION MARK
+0023;AL;NUMBER SIGN
+0024;PR;DOLLAR SIGN
+0025;PO;PERCENT SIGN
+0026;AL;AMPERSAND
+0027;QU;APOSTROPHE
+0028;OP;LEFT PARENTHESIS
+0029;CL;RIGHT PARENTHESIS
+002A;AL;ASTERISK
+002B;PR;PLUS SIGN
+002C;IS;COMMA
+002D;HY;HYPHEN-MINUS
+002E;IS;FULL STOP
+002F;SY;SOLIDUS
+0030;NU;DIGIT ZERO
+0031;NU;DIGIT ONE
+0032;NU;DIGIT TWO
+0033;NU;DIGIT THREE
+0034;NU;DIGIT FOUR
+0035;NU;DIGIT FIVE
+0036;NU;DIGIT SIX
+0037;NU;DIGIT SEVEN
+0038;NU;DIGIT EIGHT
+0039;NU;DIGIT NINE
+003A;IS;COLON
+003B;IS;SEMICOLON
+003C;AL;LESS-THAN SIGN
+003D;AL;EQUALS SIGN
+003E;AL;GREATER-THAN SIGN
+003F;EX;QUESTION MARK
+0040;AL;COMMERCIAL AT
+0041;AL;LATIN CAPITAL LETTER A
+0042;AL;LATIN CAPITAL LETTER B
+0043;AL;LATIN CAPITAL LETTER C
+0044;AL;LATIN CAPITAL LETTER D
+0045;AL;LATIN CAPITAL LETTER E
+0046;AL;LATIN CAPITAL LETTER F
+0047;AL;LATIN CAPITAL LETTER G
+0048;AL;LATIN CAPITAL LETTER H
+0049;AL;LATIN CAPITAL LETTER I
+004A;AL;LATIN CAPITAL LETTER J
+004B;AL;LATIN CAPITAL LETTER K
+004C;AL;LATIN CAPITAL LETTER L
+004D;AL;LATIN CAPITAL LETTER M
+004E;AL;LATIN CAPITAL LETTER N
+004F;AL;LATIN CAPITAL LETTER O
+0050;AL;LATIN CAPITAL LETTER P
+0051;AL;LATIN CAPITAL LETTER Q
+0052;AL;LATIN CAPITAL LETTER R
+0053;AL;LATIN CAPITAL LETTER S
+0054;AL;LATIN CAPITAL LETTER T
+0055;AL;LATIN CAPITAL LETTER U
+0056;AL;LATIN CAPITAL LETTER V
+0057;AL;LATIN CAPITAL LETTER W
+0058;AL;LATIN CAPITAL LETTER X
+0059;AL;LATIN CAPITAL LETTER Y
+005A;AL;LATIN CAPITAL LETTER Z
+005B;OP;LEFT SQUARE BRACKET
+005C;PR;REVERSE SOLIDUS
+005D;CL;RIGHT SQUARE BRACKET
+005E;AL;CIRCUMFLEX ACCENT
+005F;AL;LOW LINE
+0060;AL;GRAVE ACCENT
+0061;AL;LATIN SMALL LETTER A
+0062;AL;LATIN SMALL LETTER B
+0063;AL;LATIN SMALL LETTER C
+0064;AL;LATIN SMALL LETTER D
+0065;AL;LATIN SMALL LETTER E
+0066;AL;LATIN SMALL LETTER F
+0067;AL;LATIN SMALL LETTER G
+0068;AL;LATIN SMALL LETTER H
+0069;AL;LATIN SMALL LETTER I
+006A;AL;LATIN SMALL LETTER J
+006B;AL;LATIN SMALL LETTER K
+006C;AL;LATIN SMALL LETTER L
+006D;AL;LATIN SMALL LETTER M
+006E;AL;LATIN SMALL LETTER N
+006F;AL;LATIN SMALL LETTER O
+0070;AL;LATIN SMALL LETTER P
+0071;AL;LATIN SMALL LETTER Q
+0072;AL;LATIN SMALL LETTER R
+0073;AL;LATIN SMALL LETTER S
+0074;AL;LATIN SMALL LETTER T
+0075;AL;LATIN SMALL LETTER U
+0076;AL;LATIN SMALL LETTER V
+0077;AL;LATIN SMALL LETTER W
+0078;AL;LATIN SMALL LETTER X
+0079;AL;LATIN SMALL LETTER Y
+007A;AL;LATIN SMALL LETTER Z
+007B;OP;LEFT CURLY BRACKET
+007C;BA;VERTICAL LINE
+007D;CL;RIGHT CURLY BRACKET
+007E;AL;TILDE
+007F;CM;<control>
+0080;CM;<control>
+0081;CM;<control>
+0082;CM;<control>
+0083;CM;<control>
+0084;CM;<control>
+0085;CM;<control>
+0086;CM;<control>
+0087;CM;<control>
+0088;CM;<control>
+0089;CM;<control>
+008A;CM;<control>
+008B;CM;<control>
+008C;CM;<control>
+008D;CM;<control>
+008E;CM;<control>
+008F;CM;<control>
+0090;CM;<control>
+0091;CM;<control>
+0092;CM;<control>
+0093;CM;<control>
+0094;CM;<control>
+0095;CM;<control>
+0096;CM;<control>
+0097;CM;<control>
+0098;CM;<control>
+0099;CM;<control>
+009A;CM;<control>
+009B;CM;<control>
+009C;CM;<control>
+009D;CM;<control>
+009E;CM;<control>
+009F;CM;<control>
+00A0;GL;NO-BREAK SPACE
+00A1;AI;INVERTED EXCLAMATION MARK
+00A2;PO;CENT SIGN
+00A3;PR;POUND SIGN
+00A4;PR;CURRENCY SIGN
+00A5;PR;YEN SIGN
+00A6;AL;BROKEN BAR
+00A7;AI;SECTION SIGN
+00A8;AI;DIAERESIS
+00A9;AL;COPYRIGHT SIGN
+00AA;AI;FEMININE ORDINAL INDICATOR
+00AB;QU;LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+00AC;AL;NOT SIGN
+00AD;BA;SOFT HYPHEN
+00AE;AL;REGISTERED SIGN
+00AF;AL;MACRON
+00B0;PO;DEGREE SIGN
+00B1;PR;PLUS-MINUS SIGN
+00B2;AI;SUPERSCRIPT TWO
+00B3;AI;SUPERSCRIPT THREE
+00B4;BA;ACUTE ACCENT
+00B5;AL;MICRO SIGN
+00B6;AI;PILCROW SIGN
+00B7;AI;MIDDLE DOT
+00B8;AI;CEDILLA
+00B9;AI;SUPERSCRIPT ONE
+00BA;AI;MASCULINE ORDINAL INDICATOR
+00BB;QU;RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+00BC;AI;VULGAR FRACTION ONE QUARTER
+00BD;AI;VULGAR FRACTION ONE HALF
+00BE;AI;VULGAR FRACTION THREE QUARTERS
+00BF;AI;INVERTED QUESTION MARK
+00C0;AL;LATIN CAPITAL LETTER A WITH GRAVE
+00C1;AL;LATIN CAPITAL LETTER A WITH ACUTE
+00C2;AL;LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+00C3;AL;LATIN CAPITAL LETTER A WITH TILDE
+00C4;AL;LATIN CAPITAL LETTER A WITH DIAERESIS
+00C5;AL;LATIN CAPITAL LETTER A WITH RING ABOVE
+00C6;AI;LATIN CAPITAL LETTER AE
+00C7;AL;LATIN CAPITAL LETTER C WITH CEDILLA
+00C8;AL;LATIN CAPITAL LETTER E WITH GRAVE
+00C9;AL;LATIN CAPITAL LETTER E WITH ACUTE
+00CA;AL;LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+00CB;AL;LATIN CAPITAL LETTER E WITH DIAERESIS
+00CC;AL;LATIN CAPITAL LETTER I WITH GRAVE
+00CD;AL;LATIN CAPITAL LETTER I WITH ACUTE
+00CE;AL;LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+00CF;AL;LATIN CAPITAL LETTER I WITH DIAERESIS
+00D0;AI;LATIN CAPITAL LETTER ETH
+00D1;AL;LATIN CAPITAL LETTER N WITH TILDE
+00D2;AL;LATIN CAPITAL LETTER O WITH GRAVE
+00D3;AL;LATIN CAPITAL LETTER O WITH ACUTE
+00D4;AL;LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+00D5;AL;LATIN CAPITAL LETTER O WITH TILDE
+00D6;AL;LATIN CAPITAL LETTER O WITH DIAERESIS
+00D7;AI;MULTIPLICATION SIGN
+00D8;AI;LATIN CAPITAL LETTER O WITH STROKE
+00D9;AL;LATIN CAPITAL LETTER U WITH GRAVE
+00DA;AL;LATIN CAPITAL LETTER U WITH ACUTE
+00DB;AL;LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+00DC;AL;LATIN CAPITAL LETTER U WITH DIAERESIS
+00DD;AL;LATIN CAPITAL LETTER Y WITH ACUTE
+00DE;AI;LATIN CAPITAL LETTER THORN
+00DF;AI;LATIN SMALL LETTER SHARP S
+00E0;AI;LATIN SMALL LETTER A WITH GRAVE
+00E1;AI;LATIN SMALL LETTER A WITH ACUTE
+00E2;AL;LATIN SMALL LETTER A WITH CIRCUMFLEX
+00E3;AL;LATIN SMALL LETTER A WITH TILDE
+00E4;AL;LATIN SMALL LETTER A WITH DIAERESIS
+00E5;AL;LATIN SMALL LETTER A WITH RING ABOVE
+00E6;AI;LATIN SMALL LETTER AE
+00E7;AL;LATIN SMALL LETTER C WITH CEDILLA
+00E8;AI;LATIN SMALL LETTER E WITH GRAVE
+00E9;AI;LATIN SMALL LETTER E WITH ACUTE
+00EA;AI;LATIN SMALL LETTER E WITH CIRCUMFLEX
+00EB;AL;LATIN SMALL LETTER E WITH DIAERESIS
+00EC;AI;LATIN SMALL LETTER I WITH GRAVE
+00ED;AI;LATIN SMALL LETTER I WITH ACUTE
+00EE;AL;LATIN SMALL LETTER I WITH CIRCUMFLEX
+00EF;AL;LATIN SMALL LETTER I WITH DIAERESIS
+00F0;AI;LATIN SMALL LETTER ETH
+00F1;AL;LATIN SMALL LETTER N WITH TILDE
+00F2;AI;LATIN SMALL LETTER O WITH GRAVE
+00F3;AI;LATIN SMALL LETTER O WITH ACUTE
+00F4;AL;LATIN SMALL LETTER O WITH CIRCUMFLEX
+00F5;AL;LATIN SMALL LETTER O WITH TILDE
+00F6;AL;LATIN SMALL LETTER O WITH DIAERESIS
+00F7;AI;DIVISION SIGN
+00F8;AI;LATIN SMALL LETTER O WITH STROKE
+00F9;AI;LATIN SMALL LETTER U WITH GRAVE
+00FA;AI;LATIN SMALL LETTER U WITH ACUTE
+00FB;AL;LATIN SMALL LETTER U WITH CIRCUMFLEX
+00FC;AI;LATIN SMALL LETTER U WITH DIAERESIS
+00FD;AL;LATIN SMALL LETTER Y WITH ACUTE
+00FE;AI;LATIN SMALL LETTER THORN
+00FF;AL;LATIN SMALL LETTER Y WITH DIAERESIS
+0100;AL;LATIN CAPITAL LETTER A WITH MACRON
+0101;AI;LATIN SMALL LETTER A WITH MACRON
+0102;AL;LATIN CAPITAL LETTER A WITH BREVE
+0103;AL;LATIN SMALL LETTER A WITH BREVE
+0104;AL;LATIN CAPITAL LETTER A WITH OGONEK
+0105;AL;LATIN SMALL LETTER A WITH OGONEK
+0106;AL;LATIN CAPITAL LETTER C WITH ACUTE
+0107;AL;LATIN SMALL LETTER C WITH ACUTE
+0108;AL;LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+0109;AL;LATIN SMALL LETTER C WITH CIRCUMFLEX
+010A;AL;LATIN CAPITAL LETTER C WITH DOT ABOVE
+010B;AL;LATIN SMALL LETTER C WITH DOT ABOVE
+010C;AL;LATIN CAPITAL LETTER C WITH CARON
+010D;AL;LATIN SMALL LETTER C WITH CARON
+010E;AL;LATIN CAPITAL LETTER D WITH CARON
+010F;AL;LATIN SMALL LETTER D WITH CARON
+0110;AL;LATIN CAPITAL LETTER D WITH STROKE
+0111;AI;LATIN SMALL LETTER D WITH STROKE
+0112;AL;LATIN CAPITAL LETTER E WITH MACRON
+0113;AI;LATIN SMALL LETTER E WITH MACRON
+0114;AL;LATIN CAPITAL LETTER E WITH BREVE
+0115;AL;LATIN SMALL LETTER E WITH BREVE
+0116;AL;LATIN CAPITAL LETTER E WITH DOT ABOVE
+0117;AL;LATIN SMALL LETTER E WITH DOT ABOVE
+0118;AL;LATIN CAPITAL LETTER E WITH OGONEK
+0119;AL;LATIN SMALL LETTER E WITH OGONEK
+011A;AL;LATIN CAPITAL LETTER E WITH CARON
+011B;AI;LATIN SMALL LETTER E WITH CARON
+011C;AL;LATIN CAPITAL LETTER G WITH CIRCUMFLEX
+011D;AL;LATIN SMALL LETTER G WITH CIRCUMFLEX
+011E;AL;LATIN CAPITAL LETTER G WITH BREVE
+011F;AL;LATIN SMALL LETTER G WITH BREVE
+0120;AL;LATIN CAPITAL LETTER G WITH DOT ABOVE
+0121;AL;LATIN SMALL LETTER G WITH DOT ABOVE
+0122;AL;LATIN CAPITAL LETTER G WITH CEDILLA
+0123;AL;LATIN SMALL LETTER G WITH CEDILLA
+0124;AL;LATIN CAPITAL LETTER H WITH CIRCUMFLEX
+0125;AL;LATIN SMALL LETTER H WITH CIRCUMFLEX
+0126;AI;LATIN CAPITAL LETTER H WITH STROKE
+0127;AI;LATIN SMALL LETTER H WITH STROKE
+0128;AL;LATIN CAPITAL LETTER I WITH TILDE
+0129;AL;LATIN SMALL LETTER I WITH TILDE
+012A;AL;LATIN CAPITAL LETTER I WITH MACRON
+012B;AI;LATIN SMALL LETTER I WITH MACRON
+012C;AL;LATIN CAPITAL LETTER I WITH BREVE
+012D;AL;LATIN SMALL LETTER I WITH BREVE
+012E;AL;LATIN CAPITAL LETTER I WITH OGONEK
+012F;AL;LATIN SMALL LETTER I WITH OGONEK
+0130;AL;LATIN CAPITAL LETTER I WITH DOT ABOVE
+0131;AI;LATIN SMALL LETTER DOTLESS I
+0132;AI;LATIN CAPITAL LIGATURE IJ
+0133;AI;LATIN SMALL LIGATURE IJ
+0134;AL;LATIN CAPITAL LETTER J WITH CIRCUMFLEX
+0135;AL;LATIN SMALL LETTER J WITH CIRCUMFLEX
+0136;AL;LATIN CAPITAL LETTER K WITH CEDILLA
+0137;AL;LATIN SMALL LETTER K WITH CEDILLA
+0138;AI;LATIN SMALL LETTER KRA
+0139;AL;LATIN CAPITAL LETTER L WITH ACUTE
+013A;AL;LATIN SMALL LETTER L WITH ACUTE
+013B;AL;LATIN CAPITAL LETTER L WITH CEDILLA
+013C;AL;LATIN SMALL LETTER L WITH CEDILLA
+013D;AL;LATIN CAPITAL LETTER L WITH CARON
+013E;AL;LATIN SMALL LETTER L WITH CARON
+013F;AI;LATIN CAPITAL LETTER L WITH MIDDLE DOT
+0140;AI;LATIN SMALL LETTER L WITH MIDDLE DOT
+0141;AI;LATIN CAPITAL LETTER L WITH STROKE
+0142;AI;LATIN SMALL LETTER L WITH STROKE
+0143;AL;LATIN CAPITAL LETTER N WITH ACUTE
+0144;AI;LATIN SMALL LETTER N WITH ACUTE
+0145;AL;LATIN CAPITAL LETTER N WITH CEDILLA
+0146;AL;LATIN SMALL LETTER N WITH CEDILLA
+0147;AL;LATIN CAPITAL LETTER N WITH CARON
+0148;AI;LATIN SMALL LETTER N WITH CARON
+0149;AI;LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
+014A;AI;LATIN CAPITAL LETTER ENG
+014B;AL;LATIN SMALL LETTER ENG
+014C;AL;LATIN CAPITAL LETTER O WITH MACRON
+014D;AI;LATIN SMALL LETTER O WITH MACRON
+014E;AL;LATIN CAPITAL LETTER O WITH BREVE
+014F;AL;LATIN SMALL LETTER O WITH BREVE
+0150;AL;LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
+0151;AL;LATIN SMALL LETTER O WITH DOUBLE ACUTE
+0152;AI;LATIN CAPITAL LIGATURE OE
+0153;AI;LATIN SMALL LIGATURE OE
+0154;AL;LATIN CAPITAL LETTER R WITH ACUTE
+0155;AL;LATIN SMALL LETTER R WITH ACUTE
+0156;AL;LATIN CAPITAL LETTER R WITH CEDILLA
+0157;AL;LATIN SMALL LETTER R WITH CEDILLA
+0158;AL;LATIN CAPITAL LETTER R WITH CARON
+0159;AL;LATIN SMALL LETTER R WITH CARON
+015A;AL;LATIN CAPITAL LETTER S WITH ACUTE
+015B;AL;LATIN SMALL LETTER S WITH ACUTE
+015C;AL;LATIN CAPITAL LETTER S WITH CIRCUMFLEX
+015D;AL;LATIN SMALL LETTER S WITH CIRCUMFLEX
+015E;AL;LATIN CAPITAL LETTER S WITH CEDILLA
+015F;AL;LATIN SMALL LETTER S WITH CEDILLA
+0160;AL;LATIN CAPITAL LETTER S WITH CARON
+0161;AL;LATIN SMALL LETTER S WITH CARON
+0162;AL;LATIN CAPITAL LETTER T WITH CEDILLA
+0163;AL;LATIN SMALL LETTER T WITH CEDILLA
+0164;AL;LATIN CAPITAL LETTER T WITH CARON
+0165;AL;LATIN SMALL LETTER T WITH CARON
+0166;AI;LATIN CAPITAL LETTER T WITH STROKE
+0167;AI;LATIN SMALL LETTER T WITH STROKE
+0168;AL;LATIN CAPITAL LETTER U WITH TILDE
+0169;AL;LATIN SMALL LETTER U WITH TILDE
+016A;AL;LATIN CAPITAL LETTER U WITH MACRON
+016B;AI;LATIN SMALL LETTER U WITH MACRON
+016C;AL;LATIN CAPITAL LETTER U WITH BREVE
+016D;AL;LATIN SMALL LETTER U WITH BREVE
+016E;AL;LATIN CAPITAL LETTER U WITH RING ABOVE
+016F;AL;LATIN SMALL LETTER U WITH RING ABOVE
+0170;AL;LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
+0171;AL;LATIN SMALL LETTER U WITH DOUBLE ACUTE
+0172;AL;LATIN CAPITAL LETTER U WITH OGONEK
+0173;AL;LATIN SMALL LETTER U WITH OGONEK
+0174;AL;LATIN CAPITAL LETTER W WITH CIRCUMFLEX
+0175;AL;LATIN SMALL LETTER W WITH CIRCUMFLEX
+0176;AL;LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
+0177;AL;LATIN SMALL LETTER Y WITH CIRCUMFLEX
+0178;AL;LATIN CAPITAL LETTER Y WITH DIAERESIS
+0179;AL;LATIN CAPITAL LETTER Z WITH ACUTE
+017A;AL;LATIN SMALL LETTER Z WITH ACUTE
+017B;AL;LATIN CAPITAL LETTER Z WITH DOT ABOVE
+017C;AL;LATIN SMALL LETTER Z WITH DOT ABOVE
+017D;AL;LATIN CAPITAL LETTER Z WITH CARON
+017E;AL;LATIN SMALL LETTER Z WITH CARON
+017F;AL;LATIN SMALL LETTER LONG S
+0180;AL;LATIN SMALL LETTER B WITH STROKE
+0181;AL;LATIN CAPITAL LETTER B WITH HOOK
+0182;AL;LATIN CAPITAL LETTER B WITH TOPBAR
+0183;AL;LATIN SMALL LETTER B WITH TOPBAR
+0184;AL;LATIN CAPITAL LETTER TONE SIX
+0185;AL;LATIN SMALL LETTER TONE SIX
+0186;AL;LATIN CAPITAL LETTER OPEN O
+0187;AL;LATIN CAPITAL LETTER C WITH HOOK
+0188;AL;LATIN SMALL LETTER C WITH HOOK
+0189;AL;LATIN CAPITAL LETTER AFRICAN D
+018A;AL;LATIN CAPITAL LETTER D WITH HOOK
+018B;AL;LATIN CAPITAL LETTER D WITH TOPBAR
+018C;AL;LATIN SMALL LETTER D WITH TOPBAR
+018D;AL;LATIN SMALL LETTER TURNED DELTA
+018E;AL;LATIN CAPITAL LETTER REVERSED E
+018F;AL;LATIN CAPITAL LETTER SCHWA
+0190;AL;LATIN CAPITAL LETTER OPEN E
+0191;AL;LATIN CAPITAL LETTER F WITH HOOK
+0192;AL;LATIN SMALL LETTER F WITH HOOK
+0193;AL;LATIN CAPITAL LETTER G WITH HOOK
+0194;AL;LATIN CAPITAL LETTER GAMMA
+0195;AL;LATIN SMALL LETTER HV
+0196;AL;LATIN CAPITAL LETTER IOTA
+0197;AL;LATIN CAPITAL LETTER I WITH STROKE
+0198;AL;LATIN CAPITAL LETTER K WITH HOOK
+0199;AL;LATIN SMALL LETTER K WITH HOOK
+019A;AL;LATIN SMALL LETTER L WITH BAR
+019B;AL;LATIN SMALL LETTER LAMBDA WITH STROKE
+019C;AL;LATIN CAPITAL LETTER TURNED M
+019D;AL;LATIN CAPITAL LETTER N WITH LEFT HOOK
+019E;AL;LATIN SMALL LETTER N WITH LONG RIGHT LEG
+019F;AL;LATIN CAPITAL LETTER O WITH MIDDLE TILDE
+01A0;AL;LATIN CAPITAL LETTER O WITH HORN
+01A1;AL;LATIN SMALL LETTER O WITH HORN
+01A2;AL;LATIN CAPITAL LETTER OI
+01A3;AL;LATIN SMALL LETTER OI
+01A4;AL;LATIN CAPITAL LETTER P WITH HOOK
+01A5;AL;LATIN SMALL LETTER P WITH HOOK
+01A6;AL;LATIN LETTER YR
+01A7;AL;LATIN CAPITAL LETTER TONE TWO
+01A8;AL;LATIN SMALL LETTER TONE TWO
+01A9;AL;LATIN CAPITAL LETTER ESH
+01AA;AL;LATIN LETTER REVERSED ESH LOOP
+01AB;AL;LATIN SMALL LETTER T WITH PALATAL HOOK
+01AC;AL;LATIN CAPITAL LETTER T WITH HOOK
+01AD;AL;LATIN SMALL LETTER T WITH HOOK
+01AE;AL;LATIN CAPITAL LETTER T WITH RETROFLEX HOOK
+01AF;AL;LATIN CAPITAL LETTER U WITH HORN
+01B0;AL;LATIN SMALL LETTER U WITH HORN
+01B1;AL;LATIN CAPITAL LETTER UPSILON
+01B2;AL;LATIN CAPITAL LETTER V WITH HOOK
+01B3;AL;LATIN CAPITAL LETTER Y WITH HOOK
+01B4;AL;LATIN SMALL LETTER Y WITH HOOK
+01B5;AL;LATIN CAPITAL LETTER Z WITH STROKE
+01B6;AL;LATIN SMALL LETTER Z WITH STROKE
+01B7;AL;LATIN CAPITAL LETTER EZH
+01B8;AL;LATIN CAPITAL LETTER EZH REVERSED
+01B9;AL;LATIN SMALL LETTER EZH REVERSED
+01BA;AL;LATIN SMALL LETTER EZH WITH TAIL
+01BB;AL;LATIN LETTER TWO WITH STROKE
+01BC;AL;LATIN CAPITAL LETTER TONE FIVE
+01BD;AL;LATIN SMALL LETTER TONE FIVE
+01BE;AL;LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE
+01BF;AL;LATIN LETTER WYNN
+01C0;AL;LATIN LETTER DENTAL CLICK
+01C1;AL;LATIN LETTER LATERAL CLICK
+01C2;AL;LATIN LETTER ALVEOLAR CLICK
+01C3;AL;LATIN LETTER RETROFLEX CLICK
+01C4;AL;LATIN CAPITAL LETTER DZ WITH CARON
+01C5;AL;LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON
+01C6;AL;LATIN SMALL LETTER DZ WITH CARON
+01C7;AL;LATIN CAPITAL LETTER LJ
+01C8;AL;LATIN CAPITAL LETTER L WITH SMALL LETTER J
+01C9;AL;LATIN SMALL LETTER LJ
+01CA;AL;LATIN CAPITAL LETTER NJ
+01CB;AL;LATIN CAPITAL LETTER N WITH SMALL LETTER J
+01CC;AL;LATIN SMALL LETTER NJ
+01CD;AL;LATIN CAPITAL LETTER A WITH CARON
+01CE;AI;LATIN SMALL LETTER A WITH CARON
+01CF;AL;LATIN CAPITAL LETTER I WITH CARON
+01D0;AI;LATIN SMALL LETTER I WITH CARON
+01D1;AL;LATIN CAPITAL LETTER O WITH CARON
+01D2;AI;LATIN SMALL LETTER O WITH CARON
+01D3;AL;LATIN CAPITAL LETTER U WITH CARON
+01D4;AI;LATIN SMALL LETTER U WITH CARON
+01D5;AL;LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON
+01D6;AI;LATIN SMALL LETTER U WITH DIAERESIS AND MACRON
+01D7;AL;LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE
+01D8;AI;LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE
+01D9;AL;LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON
+01DA;AI;LATIN SMALL LETTER U WITH DIAERESIS AND CARON
+01DB;AL;LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE
+01DC;AI;LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE
+01DD;AL;LATIN SMALL LETTER TURNED E
+01DE;AL;LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON
+01DF;AL;LATIN SMALL LETTER A WITH DIAERESIS AND MACRON
+01E0;AL;LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON
+01E1;AL;LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON
+01E2;AL;LATIN CAPITAL LETTER AE WITH MACRON
+01E3;AL;LATIN SMALL LETTER AE WITH MACRON
+01E4;AL;LATIN CAPITAL LETTER G WITH STROKE
+01E5;AL;LATIN SMALL LETTER G WITH STROKE
+01E6;AL;LATIN CAPITAL LETTER G WITH CARON
+01E7;AL;LATIN SMALL LETTER G WITH CARON
+01E8;AL;LATIN CAPITAL LETTER K WITH CARON
+01E9;AL;LATIN SMALL LETTER K WITH CARON
+01EA;AL;LATIN CAPITAL LETTER O WITH OGONEK
+01EB;AL;LATIN SMALL LETTER O WITH OGONEK
+01EC;AL;LATIN CAPITAL LETTER O WITH OGONEK AND MACRON
+01ED;AL;LATIN SMALL LETTER O WITH OGONEK AND MACRON
+01EE;AL;LATIN CAPITAL LETTER EZH WITH CARON
+01EF;AL;LATIN SMALL LETTER EZH WITH CARON
+01F0;AL;LATIN SMALL LETTER J WITH CARON
+01F1;AL;LATIN CAPITAL LETTER DZ
+01F2;AL;LATIN CAPITAL LETTER D WITH SMALL LETTER Z
+01F3;AL;LATIN SMALL LETTER DZ
+01F4;AL;LATIN CAPITAL LETTER G WITH ACUTE
+01F5;AL;LATIN SMALL LETTER G WITH ACUTE
+01F6;AL;LATIN CAPITAL LETTER HWAIR
+01F7;AL;LATIN CAPITAL LETTER WYNN
+01F8;AL;LATIN CAPITAL LETTER N WITH GRAVE
+01F9;AL;LATIN SMALL LETTER N WITH GRAVE
+01FA;AL;LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE
+01FB;AL;LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE
+01FC;AL;LATIN CAPITAL LETTER AE WITH ACUTE
+01FD;AL;LATIN SMALL LETTER AE WITH ACUTE
+01FE;AL;LATIN CAPITAL LETTER O WITH STROKE AND ACUTE
+01FF;AL;LATIN SMALL LETTER O WITH STROKE AND ACUTE
+0200;AL;LATIN CAPITAL LETTER A WITH DOUBLE GRAVE
+0201;AL;LATIN SMALL LETTER A WITH DOUBLE GRAVE
+0202;AL;LATIN CAPITAL LETTER A WITH INVERTED BREVE
+0203;AL;LATIN SMALL LETTER A WITH INVERTED BREVE
+0204;AL;LATIN CAPITAL LETTER E WITH DOUBLE GRAVE
+0205;AL;LATIN SMALL LETTER E WITH DOUBLE GRAVE
+0206;AL;LATIN CAPITAL LETTER E WITH INVERTED BREVE
+0207;AL;LATIN SMALL LETTER E WITH INVERTED BREVE
+0208;AL;LATIN CAPITAL LETTER I WITH DOUBLE GRAVE
+0209;AL;LATIN SMALL LETTER I WITH DOUBLE GRAVE
+020A;AL;LATIN CAPITAL LETTER I WITH INVERTED BREVE
+020B;AL;LATIN SMALL LETTER I WITH INVERTED BREVE
+020C;AL;LATIN CAPITAL LETTER O WITH DOUBLE GRAVE
+020D;AL;LATIN SMALL LETTER O WITH DOUBLE GRAVE
+020E;AL;LATIN CAPITAL LETTER O WITH INVERTED BREVE
+020F;AL;LATIN SMALL LETTER O WITH INVERTED BREVE
+0210;AL;LATIN CAPITAL LETTER R WITH DOUBLE GRAVE
+0211;AL;LATIN SMALL LETTER R WITH DOUBLE GRAVE
+0212;AL;LATIN CAPITAL LETTER R WITH INVERTED BREVE
+0213;AL;LATIN SMALL LETTER R WITH INVERTED BREVE
+0214;AL;LATIN CAPITAL LETTER U WITH DOUBLE GRAVE
+0215;AL;LATIN SMALL LETTER U WITH DOUBLE GRAVE
+0216;AL;LATIN CAPITAL LETTER U WITH INVERTED BREVE
+0217;AL;LATIN SMALL LETTER U WITH INVERTED BREVE
+0218;AL;LATIN CAPITAL LETTER S WITH COMMA BELOW
+0219;AL;LATIN SMALL LETTER S WITH COMMA BELOW
+021A;AL;LATIN CAPITAL LETTER T WITH COMMA BELOW
+021B;AL;LATIN SMALL LETTER T WITH COMMA BELOW
+021C;AL;LATIN CAPITAL LETTER YOGH
+021D;AL;LATIN SMALL LETTER YOGH
+021E;AL;LATIN CAPITAL LETTER H WITH CARON
+021F;AL;LATIN SMALL LETTER H WITH CARON
+0222;AL;LATIN CAPITAL LETTER OU
+0223;AL;LATIN SMALL LETTER OU
+0224;AL;LATIN CAPITAL LETTER Z WITH HOOK
+0225;AL;LATIN SMALL LETTER Z WITH HOOK
+0226;AL;LATIN CAPITAL LETTER A WITH DOT ABOVE
+0227;AL;LATIN SMALL LETTER A WITH DOT ABOVE
+0228;AL;LATIN CAPITAL LETTER E WITH CEDILLA
+0229;AL;LATIN SMALL LETTER E WITH CEDILLA
+022A;AL;LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON
+022B;AL;LATIN SMALL LETTER O WITH DIAERESIS AND MACRON
+022C;AL;LATIN CAPITAL LETTER O WITH TILDE AND MACRON
+022D;AL;LATIN SMALL LETTER O WITH TILDE AND MACRON
+022E;AL;LATIN CAPITAL LETTER O WITH DOT ABOVE
+022F;AL;LATIN SMALL LETTER O WITH DOT ABOVE
+0230;AL;LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON
+0231;AL;LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON
+0232;AL;LATIN CAPITAL LETTER Y WITH MACRON
+0233;AL;LATIN SMALL LETTER Y WITH MACRON
+0250;AL;LATIN SMALL LETTER TURNED A
+0251;AI;LATIN SMALL LETTER ALPHA
+0252;AL;LATIN SMALL LETTER TURNED ALPHA
+0253;AL;LATIN SMALL LETTER B WITH HOOK
+0254;AL;LATIN SMALL LETTER OPEN O
+0255;AL;LATIN SMALL LETTER C WITH CURL
+0256;AL;LATIN SMALL LETTER D WITH TAIL
+0257;AL;LATIN SMALL LETTER D WITH HOOK
+0258;AL;LATIN SMALL LETTER REVERSED E
+0259;AL;LATIN SMALL LETTER SCHWA
+025A;AL;LATIN SMALL LETTER SCHWA WITH HOOK
+025B;AL;LATIN SMALL LETTER OPEN E
+025C;AL;LATIN SMALL LETTER REVERSED OPEN E
+025D;AL;LATIN SMALL LETTER REVERSED OPEN E WITH HOOK
+025E;AL;LATIN SMALL LETTER CLOSED REVERSED OPEN E
+025F;AL;LATIN SMALL LETTER DOTLESS J WITH STROKE
+0260;AL;LATIN SMALL LETTER G WITH HOOK
+0261;AI;LATIN SMALL LETTER SCRIPT G
+0262;AL;LATIN LETTER SMALL CAPITAL G
+0263;AL;LATIN SMALL LETTER GAMMA
+0264;AL;LATIN SMALL LETTER RAMS HORN
+0265;AL;LATIN SMALL LETTER TURNED H
+0266;AL;LATIN SMALL LETTER H WITH HOOK
+0267;AL;LATIN SMALL LETTER HENG WITH HOOK
+0268;AL;LATIN SMALL LETTER I WITH STROKE
+0269;AL;LATIN SMALL LETTER IOTA
+026A;AL;LATIN LETTER SMALL CAPITAL I
+026B;AL;LATIN SMALL LETTER L WITH MIDDLE TILDE
+026C;AL;LATIN SMALL LETTER L WITH BELT
+026D;AL;LATIN SMALL LETTER L WITH RETROFLEX HOOK
+026E;AL;LATIN SMALL LETTER LEZH
+026F;AL;LATIN SMALL LETTER TURNED M
+0270;AL;LATIN SMALL LETTER TURNED M WITH LONG LEG
+0271;AL;LATIN SMALL LETTER M WITH HOOK
+0272;AL;LATIN SMALL LETTER N WITH LEFT HOOK
+0273;AL;LATIN SMALL LETTER N WITH RETROFLEX HOOK
+0274;AL;LATIN LETTER SMALL CAPITAL N
+0275;AL;LATIN SMALL LETTER BARRED O
+0276;AL;LATIN LETTER SMALL CAPITAL OE
+0277;AL;LATIN SMALL LETTER CLOSED OMEGA
+0278;AL;LATIN SMALL LETTER PHI
+0279;AL;LATIN SMALL LETTER TURNED R
+027A;AL;LATIN SMALL LETTER TURNED R WITH LONG LEG
+027B;AL;LATIN SMALL LETTER TURNED R WITH HOOK
+027C;AL;LATIN SMALL LETTER R WITH LONG LEG
+027D;AL;LATIN SMALL LETTER R WITH TAIL
+027E;AL;LATIN SMALL LETTER R WITH FISHHOOK
+027F;AL;LATIN SMALL LETTER REVERSED R WITH FISHHOOK
+0280;AL;LATIN LETTER SMALL CAPITAL R
+0281;AL;LATIN LETTER SMALL CAPITAL INVERTED R
+0282;AL;LATIN SMALL LETTER S WITH HOOK
+0283;AL;LATIN SMALL LETTER ESH
+0284;AL;LATIN SMALL LETTER DOTLESS J WITH STROKE AND HOOK
+0285;AL;LATIN SMALL LETTER SQUAT REVERSED ESH
+0286;AL;LATIN SMALL LETTER ESH WITH CURL
+0287;AL;LATIN SMALL LETTER TURNED T
+0288;AL;LATIN SMALL LETTER T WITH RETROFLEX HOOK
+0289;AL;LATIN SMALL LETTER U BAR
+028A;AL;LATIN SMALL LETTER UPSILON
+028B;AL;LATIN SMALL LETTER V WITH HOOK
+028C;AL;LATIN SMALL LETTER TURNED V
+028D;AL;LATIN SMALL LETTER TURNED W
+028E;AL;LATIN SMALL LETTER TURNED Y
+028F;AL;LATIN LETTER SMALL CAPITAL Y
+0290;AL;LATIN SMALL LETTER Z WITH RETROFLEX HOOK
+0291;AL;LATIN SMALL LETTER Z WITH CURL
+0292;AL;LATIN SMALL LETTER EZH
+0293;AL;LATIN SMALL LETTER EZH WITH CURL
+0294;AL;LATIN LETTER GLOTTAL STOP
+0295;AL;LATIN LETTER PHARYNGEAL VOICED FRICATIVE
+0296;AL;LATIN LETTER INVERTED GLOTTAL STOP
+0297;AL;LATIN LETTER STRETCHED C
+0298;AL;LATIN LETTER BILABIAL CLICK
+0299;AL;LATIN LETTER SMALL CAPITAL B
+029A;AL;LATIN SMALL LETTER CLOSED OPEN E
+029B;AL;LATIN LETTER SMALL CAPITAL G WITH HOOK
+029C;AL;LATIN LETTER SMALL CAPITAL H
+029D;AL;LATIN SMALL LETTER J WITH CROSSED-TAIL
+029E;AL;LATIN SMALL LETTER TURNED K
+029F;AL;LATIN LETTER SMALL CAPITAL L
+02A0;AL;LATIN SMALL LETTER Q WITH HOOK
+02A1;AL;LATIN LETTER GLOTTAL STOP WITH STROKE
+02A2;AL;LATIN LETTER REVERSED GLOTTAL STOP WITH STROKE
+02A3;AL;LATIN SMALL LETTER DZ DIGRAPH
+02A4;AL;LATIN SMALL LETTER DEZH DIGRAPH
+02A5;AL;LATIN SMALL LETTER DZ DIGRAPH WITH CURL
+02A6;AL;LATIN SMALL LETTER TS DIGRAPH
+02A7;AL;LATIN SMALL LETTER TESH DIGRAPH
+02A8;AL;LATIN SMALL LETTER TC DIGRAPH WITH CURL
+02A9;AL;LATIN SMALL LETTER FENG DIGRAPH
+02AA;AL;LATIN SMALL LETTER LS DIGRAPH
+02AB;AL;LATIN SMALL LETTER LZ DIGRAPH
+02AC;AL;LATIN LETTER BILABIAL PERCUSSIVE
+02AD;AL;LATIN LETTER BIDENTAL PERCUSSIVE
+02B0;AL;MODIFIER LETTER SMALL H
+02B1;AL;MODIFIER LETTER SMALL H WITH HOOK
+02B2;AL;MODIFIER LETTER SMALL J
+02B3;AL;MODIFIER LETTER SMALL R
+02B4;AL;MODIFIER LETTER SMALL TURNED R
+02B5;AL;MODIFIER LETTER SMALL TURNED R WITH HOOK
+02B6;AL;MODIFIER LETTER SMALL CAPITAL INVERTED R
+02B7;AL;MODIFIER LETTER SMALL W
+02B8;AL;MODIFIER LETTER SMALL Y
+02B9;AL;MODIFIER LETTER PRIME
+02BA;AL;MODIFIER LETTER DOUBLE PRIME
+02BB;AL;MODIFIER LETTER TURNED COMMA
+02BC;AL;MODIFIER LETTER APOSTROPHE
+02BD;AL;MODIFIER LETTER REVERSED COMMA
+02BE;AL;MODIFIER LETTER RIGHT HALF RING
+02BF;AL;MODIFIER LETTER LEFT HALF RING
+02C0;AL;MODIFIER LETTER GLOTTAL STOP
+02C1;AL;MODIFIER LETTER REVERSED GLOTTAL STOP
+02C2;AL;MODIFIER LETTER LEFT ARROWHEAD
+02C3;AL;MODIFIER LETTER RIGHT ARROWHEAD
+02C4;AL;MODIFIER LETTER UP ARROWHEAD
+02C5;AL;MODIFIER LETTER DOWN ARROWHEAD
+02C6;AL;MODIFIER LETTER CIRCUMFLEX ACCENT
+02C7;AI;CARON
+02C8;BB;MODIFIER LETTER VERTICAL LINE
+02C9;AI;MODIFIER LETTER MACRON
+02CA;AI;MODIFIER LETTER ACUTE ACCENT
+02CB;AI;MODIFIER LETTER GRAVE ACCENT
+02CC;BB;MODIFIER LETTER LOW VERTICAL LINE
+02CD;AI;MODIFIER LETTER LOW MACRON
+02CE;AL;MODIFIER LETTER LOW GRAVE ACCENT
+02CF;AL;MODIFIER LETTER LOW ACUTE ACCENT
+02D0;AI;MODIFIER LETTER TRIANGULAR COLON
+02D1;AL;MODIFIER LETTER HALF TRIANGULAR COLON
+02D2;AL;MODIFIER LETTER CENTRED RIGHT HALF RING
+02D3;AL;MODIFIER LETTER CENTRED LEFT HALF RING
+02D4;AL;MODIFIER LETTER UP TACK
+02D5;AL;MODIFIER LETTER DOWN TACK
+02D6;AL;MODIFIER LETTER PLUS SIGN
+02D7;AL;MODIFIER LETTER MINUS SIGN
+02D8;AI;BREVE
+02D9;AI;DOT ABOVE
+02DA;AI;RING ABOVE
+02DB;AI;OGONEK
+02DC;AL;SMALL TILDE
+02DD;AI;DOUBLE ACUTE ACCENT
+02DE;AL;MODIFIER LETTER RHOTIC HOOK
+02DF;AL;MODIFIER LETTER CROSS ACCENT
+02E0;AL;MODIFIER LETTER SMALL GAMMA
+02E1;AL;MODIFIER LETTER SMALL L
+02E2;AL;MODIFIER LETTER SMALL S
+02E3;AL;MODIFIER LETTER SMALL X
+02E4;AL;MODIFIER LETTER SMALL REVERSED GLOTTAL STOP
+02E5;AL;MODIFIER LETTER EXTRA-HIGH TONE BAR
+02E6;AL;MODIFIER LETTER HIGH TONE BAR
+02E7;AL;MODIFIER LETTER MID TONE BAR
+02E8;AL;MODIFIER LETTER LOW TONE BAR
+02E9;AL;MODIFIER LETTER EXTRA-LOW TONE BAR
+02EA;AL;MODIFIER LETTER YIN DEPARTING TONE MARK
+02EB;AL;MODIFIER LETTER YANG DEPARTING TONE MARK
+02EC;AL;MODIFIER LETTER VOICING
+02ED;AL;MODIFIER LETTER UNASPIRATED
+02EE;AL;MODIFIER LETTER DOUBLE APOSTROPHE
+0300;CM;COMBINING GRAVE ACCENT
+0301;CM;COMBINING ACUTE ACCENT
+0302;CM;COMBINING CIRCUMFLEX ACCENT
+0303;CM;COMBINING TILDE
+0304;CM;COMBINING MACRON
+0305;CM;COMBINING OVERLINE
+0306;CM;COMBINING BREVE
+0307;CM;COMBINING DOT ABOVE
+0308;CM;COMBINING DIAERESIS
+0309;CM;COMBINING HOOK ABOVE
+030A;CM;COMBINING RING ABOVE
+030B;CM;COMBINING DOUBLE ACUTE ACCENT
+030C;CM;COMBINING CARON
+030D;CM;COMBINING VERTICAL LINE ABOVE
+030E;CM;COMBINING DOUBLE VERTICAL LINE ABOVE
+030F;CM;COMBINING DOUBLE GRAVE ACCENT
+0310;CM;COMBINING CANDRABINDU
+0311;CM;COMBINING INVERTED BREVE
+0312;CM;COMBINING TURNED COMMA ABOVE
+0313;CM;COMBINING COMMA ABOVE
+0314;CM;COMBINING REVERSED COMMA ABOVE
+0315;CM;COMBINING COMMA ABOVE RIGHT
+0316;CM;COMBINING GRAVE ACCENT BELOW
+0317;CM;COMBINING ACUTE ACCENT BELOW
+0318;CM;COMBINING LEFT TACK BELOW
+0319;CM;COMBINING RIGHT TACK BELOW
+031A;CM;COMBINING LEFT ANGLE ABOVE
+031B;CM;COMBINING HORN
+031C;CM;COMBINING LEFT HALF RING BELOW
+031D;CM;COMBINING UP TACK BELOW
+031E;CM;COMBINING DOWN TACK BELOW
+031F;CM;COMBINING PLUS SIGN BELOW
+0320;CM;COMBINING MINUS SIGN BELOW
+0321;CM;COMBINING PALATALIZED HOOK BELOW
+0322;CM;COMBINING RETROFLEX HOOK BELOW
+0323;CM;COMBINING DOT BELOW
+0324;CM;COMBINING DIAERESIS BELOW
+0325;CM;COMBINING RING BELOW
+0326;CM;COMBINING COMMA BELOW
+0327;CM;COMBINING CEDILLA
+0328;CM;COMBINING OGONEK
+0329;CM;COMBINING VERTICAL LINE BELOW
+032A;CM;COMBINING BRIDGE BELOW
+032B;CM;COMBINING INVERTED DOUBLE ARCH BELOW
+032C;CM;COMBINING CARON BELOW
+032D;CM;COMBINING CIRCUMFLEX ACCENT BELOW
+032E;CM;COMBINING BREVE BELOW
+032F;CM;COMBINING INVERTED BREVE BELOW
+0330;CM;COMBINING TILDE BELOW
+0331;CM;COMBINING MACRON BELOW
+0332;CM;COMBINING LOW LINE
+0333;CM;COMBINING DOUBLE LOW LINE
+0334;CM;COMBINING TILDE OVERLAY
+0335;CM;COMBINING SHORT STROKE OVERLAY
+0336;CM;COMBINING LONG STROKE OVERLAY
+0337;CM;COMBINING SHORT SOLIDUS OVERLAY
+0338;CM;COMBINING LONG SOLIDUS OVERLAY
+0339;CM;COMBINING RIGHT HALF RING BELOW
+033A;CM;COMBINING INVERTED BRIDGE BELOW
+033B;CM;COMBINING SQUARE BELOW
+033C;CM;COMBINING SEAGULL BELOW
+033D;CM;COMBINING X ABOVE
+033E;CM;COMBINING VERTICAL TILDE
+033F;CM;COMBINING DOUBLE OVERLINE
+0340;CM;COMBINING GRAVE TONE MARK
+0341;CM;COMBINING ACUTE TONE MARK
+0342;CM;COMBINING GREEK PERISPOMENI
+0343;CM;COMBINING GREEK KORONIS
+0344;CM;COMBINING GREEK DIALYTIKA TONOS
+0345;CM;COMBINING GREEK YPOGEGRAMMENI
+0346;CM;COMBINING BRIDGE ABOVE
+0347;CM;COMBINING EQUALS SIGN BELOW
+0348;CM;COMBINING DOUBLE VERTICAL LINE BELOW
+0349;CM;COMBINING LEFT ANGLE BELOW
+034A;CM;COMBINING NOT TILDE ABOVE
+034B;CM;COMBINING HOMOTHETIC ABOVE
+034C;CM;COMBINING ALMOST EQUAL TO ABOVE
+034D;CM;COMBINING LEFT RIGHT ARROW BELOW
+034E;CM;COMBINING UPWARDS ARROW BELOW
+0360;CM;COMBINING DOUBLE TILDE
+0361;CM;COMBINING DOUBLE INVERTED BREVE
+0362;CM;COMBINING DOUBLE RIGHTWARDS ARROW BELOW
+0374;AL;GREEK NUMERAL SIGN
+0375;AL;GREEK LOWER NUMERAL SIGN
+037A;AL;GREEK YPOGEGRAMMENI
+037E;AL;GREEK QUESTION MARK
+0384;AL;GREEK TONOS
+0385;AL;GREEK DIALYTIKA TONOS
+0386;AL;GREEK CAPITAL LETTER ALPHA WITH TONOS
+0387;AL;GREEK ANO TELEIA
+0388;AL;GREEK CAPITAL LETTER EPSILON WITH TONOS
+0389;AL;GREEK CAPITAL LETTER ETA WITH TONOS
+038A;AL;GREEK CAPITAL LETTER IOTA WITH TONOS
+038C;AL;GREEK CAPITAL LETTER OMICRON WITH TONOS
+038E;AL;GREEK CAPITAL LETTER UPSILON WITH TONOS
+038F;AL;GREEK CAPITAL LETTER OMEGA WITH TONOS
+0390;AL;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+0391;AI;GREEK CAPITAL LETTER ALPHA
+0392;AI;GREEK CAPITAL LETTER BETA
+0393;AI;GREEK CAPITAL LETTER GAMMA
+0394;AI;GREEK CAPITAL LETTER DELTA
+0395;AI;GREEK CAPITAL LETTER EPSILON
+0396;AI;GREEK CAPITAL LETTER ZETA
+0397;AI;GREEK CAPITAL LETTER ETA
+0398;AI;GREEK CAPITAL LETTER THETA
+0399;AI;GREEK CAPITAL LETTER IOTA
+039A;AI;GREEK CAPITAL LETTER KAPPA
+039B;AI;GREEK CAPITAL LETTER LAMDA
+039C;AI;GREEK CAPITAL LETTER MU
+039D;AI;GREEK CAPITAL LETTER NU
+039E;AI;GREEK CAPITAL LETTER XI
+039F;AI;GREEK CAPITAL LETTER OMICRON
+03A0;AI;GREEK CAPITAL LETTER PI
+03A1;AI;GREEK CAPITAL LETTER RHO
+03A3;AI;GREEK CAPITAL LETTER SIGMA
+03A4;AI;GREEK CAPITAL LETTER TAU
+03A5;AI;GREEK CAPITAL LETTER UPSILON
+03A6;AI;GREEK CAPITAL LETTER PHI
+03A7;AI;GREEK CAPITAL LETTER CHI
+03A8;AI;GREEK CAPITAL LETTER PSI
+03A9;AI;GREEK CAPITAL LETTER OMEGA
+03AA;AL;GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
+03AB;AL;GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+03AC;AL;GREEK SMALL LETTER ALPHA WITH TONOS
+03AD;AL;GREEK SMALL LETTER EPSILON WITH TONOS
+03AE;AL;GREEK SMALL LETTER ETA WITH TONOS
+03AF;AL;GREEK SMALL LETTER IOTA WITH TONOS
+03B0;AL;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+03B1;AI;GREEK SMALL LETTER ALPHA
+03B2;AI;GREEK SMALL LETTER BETA
+03B3;AI;GREEK SMALL LETTER GAMMA
+03B4;AI;GREEK SMALL LETTER DELTA
+03B5;AI;GREEK SMALL LETTER EPSILON
+03B6;AI;GREEK SMALL LETTER ZETA
+03B7;AI;GREEK SMALL LETTER ETA
+03B8;AI;GREEK SMALL LETTER THETA
+03B9;AI;GREEK SMALL LETTER IOTA
+03BA;AI;GREEK SMALL LETTER KAPPA
+03BB;AI;GREEK SMALL LETTER LAMDA
+03BC;AI;GREEK SMALL LETTER MU
+03BD;AI;GREEK SMALL LETTER NU
+03BE;AI;GREEK SMALL LETTER XI
+03BF;AI;GREEK SMALL LETTER OMICRON
+03C0;AI;GREEK SMALL LETTER PI
+03C1;AI;GREEK SMALL LETTER RHO
+03C2;AL;GREEK SMALL LETTER FINAL SIGMA
+03C3;AI;GREEK SMALL LETTER SIGMA
+03C4;AI;GREEK SMALL LETTER TAU
+03C5;AI;GREEK SMALL LETTER UPSILON
+03C6;AI;GREEK SMALL LETTER PHI
+03C7;AI;GREEK SMALL LETTER CHI
+03C8;AI;GREEK SMALL LETTER PSI
+03C9;AI;GREEK SMALL LETTER OMEGA
+03CA;AL;GREEK SMALL LETTER IOTA WITH DIALYTIKA
+03CB;AL;GREEK SMALL LETTER UPSILON WITH DIALYTIKA
+03CC;AL;GREEK SMALL LETTER OMICRON WITH TONOS
+03CD;AL;GREEK SMALL LETTER UPSILON WITH TONOS
+03CE;AL;GREEK SMALL LETTER OMEGA WITH TONOS
+03D0;AL;GREEK BETA SYMBOL
+03D1;AL;GREEK THETA SYMBOL
+03D2;AL;GREEK UPSILON WITH HOOK SYMBOL
+03D3;AL;GREEK UPSILON WITH ACUTE AND HOOK SYMBOL
+03D4;AL;GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL
+03D5;AL;GREEK PHI SYMBOL
+03D6;AL;GREEK PI SYMBOL
+03D7;AL;GREEK KAI SYMBOL
+03DA;AL;GREEK LETTER STIGMA
+03DB;AL;GREEK SMALL LETTER STIGMA
+03DC;AL;GREEK LETTER DIGAMMA
+03DD;AL;GREEK SMALL LETTER DIGAMMA
+03DE;AL;GREEK LETTER KOPPA
+03DF;AL;GREEK SMALL LETTER KOPPA
+03E0;AL;GREEK LETTER SAMPI
+03E1;AL;GREEK SMALL LETTER SAMPI
+03E2;AL;COPTIC CAPITAL LETTER SHEI
+03E3;AL;COPTIC SMALL LETTER SHEI
+03E4;AL;COPTIC CAPITAL LETTER FEI
+03E5;AL;COPTIC SMALL LETTER FEI
+03E6;AL;COPTIC CAPITAL LETTER KHEI
+03E7;AL;COPTIC SMALL LETTER KHEI
+03E8;AL;COPTIC CAPITAL LETTER HORI
+03E9;AL;COPTIC SMALL LETTER HORI
+03EA;AL;COPTIC CAPITAL LETTER GANGIA
+03EB;AL;COPTIC SMALL LETTER GANGIA
+03EC;AL;COPTIC CAPITAL LETTER SHIMA
+03ED;AL;COPTIC SMALL LETTER SHIMA
+03EE;AL;COPTIC CAPITAL LETTER DEI
+03EF;AL;COPTIC SMALL LETTER DEI
+03F0;AL;GREEK KAPPA SYMBOL
+03F1;AL;GREEK RHO SYMBOL
+03F2;AL;GREEK LUNATE SIGMA SYMBOL
+03F3;AL;GREEK LETTER YOT
+0400;AL;CYRILLIC CAPITAL LETTER IE WITH GRAVE
+0401;AI;CYRILLIC CAPITAL LETTER IO
+0402;AL;CYRILLIC CAPITAL LETTER DJE
+0403;AL;CYRILLIC CAPITAL LETTER GJE
+0404;AL;CYRILLIC CAPITAL LETTER UKRAINIAN IE
+0405;AL;CYRILLIC CAPITAL LETTER DZE
+0406;AL;CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+0407;AL;CYRILLIC CAPITAL LETTER YI
+0408;AL;CYRILLIC CAPITAL LETTER JE
+0409;AL;CYRILLIC CAPITAL LETTER LJE
+040A;AL;CYRILLIC CAPITAL LETTER NJE
+040B;AL;CYRILLIC CAPITAL LETTER TSHE
+040C;AL;CYRILLIC CAPITAL LETTER KJE
+040D;AL;CYRILLIC CAPITAL LETTER I WITH GRAVE
+040E;AL;CYRILLIC CAPITAL LETTER SHORT U
+040F;AL;CYRILLIC CAPITAL LETTER DZHE
+0410;AI;CYRILLIC CAPITAL LETTER A
+0411;AI;CYRILLIC CAPITAL LETTER BE
+0412;AI;CYRILLIC CAPITAL LETTER VE
+0413;AI;CYRILLIC CAPITAL LETTER GHE
+0414;AI;CYRILLIC CAPITAL LETTER DE
+0415;AI;CYRILLIC CAPITAL LETTER IE
+0416;AI;CYRILLIC CAPITAL LETTER ZHE
+0417;AI;CYRILLIC CAPITAL LETTER ZE
+0418;AI;CYRILLIC CAPITAL LETTER I
+0419;AI;CYRILLIC CAPITAL LETTER SHORT I
+041A;AI;CYRILLIC CAPITAL LETTER KA
+041B;AI;CYRILLIC CAPITAL LETTER EL
+041C;AI;CYRILLIC CAPITAL LETTER EM
+041D;AI;CYRILLIC CAPITAL LETTER EN
+041E;AI;CYRILLIC CAPITAL LETTER O
+041F;AI;CYRILLIC CAPITAL LETTER PE
+0420;AI;CYRILLIC CAPITAL LETTER ER
+0421;AI;CYRILLIC CAPITAL LETTER ES
+0422;AI;CYRILLIC CAPITAL LETTER TE
+0423;AI;CYRILLIC CAPITAL LETTER U
+0424;AI;CYRILLIC CAPITAL LETTER EF
+0425;AI;CYRILLIC CAPITAL LETTER HA
+0426;AI;CYRILLIC CAPITAL LETTER TSE
+0427;AI;CYRILLIC CAPITAL LETTER CHE
+0428;AI;CYRILLIC CAPITAL LETTER SHA
+0429;AI;CYRILLIC CAPITAL LETTER SHCHA
+042A;AI;CYRILLIC CAPITAL LETTER HARD SIGN
+042B;AI;CYRILLIC CAPITAL LETTER YERU
+042C;AI;CYRILLIC CAPITAL LETTER SOFT SIGN
+042D;AI;CYRILLIC CAPITAL LETTER E
+042E;AI;CYRILLIC CAPITAL LETTER YU
+042F;AI;CYRILLIC CAPITAL LETTER YA
+0430;AI;CYRILLIC SMALL LETTER A
+0431;AI;CYRILLIC SMALL LETTER BE
+0432;AI;CYRILLIC SMALL LETTER VE
+0433;AI;CYRILLIC SMALL LETTER GHE
+0434;AI;CYRILLIC SMALL LETTER DE
+0435;AI;CYRILLIC SMALL LETTER IE
+0436;AI;CYRILLIC SMALL LETTER ZHE
+0437;AI;CYRILLIC SMALL LETTER ZE
+0438;AI;CYRILLIC SMALL LETTER I
+0439;AI;CYRILLIC SMALL LETTER SHORT I
+043A;AI;CYRILLIC SMALL LETTER KA
+043B;AI;CYRILLIC SMALL LETTER EL
+043C;AI;CYRILLIC SMALL LETTER EM
+043D;AI;CYRILLIC SMALL LETTER EN
+043E;AI;CYRILLIC SMALL LETTER O
+043F;AI;CYRILLIC SMALL LETTER PE
+0440;AI;CYRILLIC SMALL LETTER ER
+0441;AI;CYRILLIC SMALL LETTER ES
+0442;AI;CYRILLIC SMALL LETTER TE
+0443;AI;CYRILLIC SMALL LETTER U
+0444;AI;CYRILLIC SMALL LETTER EF
+0445;AI;CYRILLIC SMALL LETTER HA
+0446;AI;CYRILLIC SMALL LETTER TSE
+0447;AI;CYRILLIC SMALL LETTER CHE
+0448;AI;CYRILLIC SMALL LETTER SHA
+0449;AI;CYRILLIC SMALL LETTER SHCHA
+044A;AI;CYRILLIC SMALL LETTER HARD SIGN
+044B;AI;CYRILLIC SMALL LETTER YERU
+044C;AI;CYRILLIC SMALL LETTER SOFT SIGN
+044D;AI;CYRILLIC SMALL LETTER E
+044E;AI;CYRILLIC SMALL LETTER YU
+044F;AI;CYRILLIC SMALL LETTER YA
+0450;AL;CYRILLIC SMALL LETTER IE WITH GRAVE
+0451;AI;CYRILLIC SMALL LETTER IO
+0452;AL;CYRILLIC SMALL LETTER DJE
+0453;AL;CYRILLIC SMALL LETTER GJE
+0454;AL;CYRILLIC SMALL LETTER UKRAINIAN IE
+0455;AL;CYRILLIC SMALL LETTER DZE
+0456;AL;CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+0457;AL;CYRILLIC SMALL LETTER YI
+0458;AL;CYRILLIC SMALL LETTER JE
+0459;AL;CYRILLIC SMALL LETTER LJE
+045A;AL;CYRILLIC SMALL LETTER NJE
+045B;AL;CYRILLIC SMALL LETTER TSHE
+045C;AL;CYRILLIC SMALL LETTER KJE
+045D;AL;CYRILLIC SMALL LETTER I WITH GRAVE
+045E;AL;CYRILLIC SMALL LETTER SHORT U
+045F;AL;CYRILLIC SMALL LETTER DZHE
+0460;AL;CYRILLIC CAPITAL LETTER OMEGA
+0461;AL;CYRILLIC SMALL LETTER OMEGA
+0462;AL;CYRILLIC CAPITAL LETTER YAT
+0463;AL;CYRILLIC SMALL LETTER YAT
+0464;AL;CYRILLIC CAPITAL LETTER IOTIFIED E
+0465;AL;CYRILLIC SMALL LETTER IOTIFIED E
+0466;AL;CYRILLIC CAPITAL LETTER LITTLE YUS
+0467;AL;CYRILLIC SMALL LETTER LITTLE YUS
+0468;AL;CYRILLIC CAPITAL LETTER IOTIFIED LITTLE YUS
+0469;AL;CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS
+046A;AL;CYRILLIC CAPITAL LETTER BIG YUS
+046B;AL;CYRILLIC SMALL LETTER BIG YUS
+046C;AL;CYRILLIC CAPITAL LETTER IOTIFIED BIG YUS
+046D;AL;CYRILLIC SMALL LETTER IOTIFIED BIG YUS
+046E;AL;CYRILLIC CAPITAL LETTER KSI
+046F;AL;CYRILLIC SMALL LETTER KSI
+0470;AL;CYRILLIC CAPITAL LETTER PSI
+0471;AL;CYRILLIC SMALL LETTER PSI
+0472;AL;CYRILLIC CAPITAL LETTER FITA
+0473;AL;CYRILLIC SMALL LETTER FITA
+0474;AL;CYRILLIC CAPITAL LETTER IZHITSA
+0475;AL;CYRILLIC SMALL LETTER IZHITSA
+0476;AL;CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT
+0477;AL;CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT
+0478;AL;CYRILLIC CAPITAL LETTER UK
+0479;AL;CYRILLIC SMALL LETTER UK
+047A;AL;CYRILLIC CAPITAL LETTER ROUND OMEGA
+047B;AL;CYRILLIC SMALL LETTER ROUND OMEGA
+047C;AL;CYRILLIC CAPITAL LETTER OMEGA WITH TITLO
+047D;AL;CYRILLIC SMALL LETTER OMEGA WITH TITLO
+047E;AL;CYRILLIC CAPITAL LETTER OT
+047F;AL;CYRILLIC SMALL LETTER OT
+0480;AL;CYRILLIC CAPITAL LETTER KOPPA
+0481;AL;CYRILLIC SMALL LETTER KOPPA
+0482;AL;CYRILLIC THOUSANDS SIGN
+0483;CM;COMBINING CYRILLIC TITLO
+0484;CM;COMBINING CYRILLIC PALATALIZATION
+0485;CM;COMBINING CYRILLIC DASIA PNEUMATA
+0486;CM;COMBINING CYRILLIC PSILI PNEUMATA
+0488;CM;COMBINING CYRILLIC HUNDRED THOUSANDS SIGN
+0489;CM;COMBINING CYRILLIC MILLIONS SIGN
+048C;AL;CYRILLIC CAPITAL LETTER SEMISOFT SIGN
+048D;AL;CYRILLIC SMALL LETTER SEMISOFT SIGN
+048E;AL;CYRILLIC CAPITAL LETTER ER WITH TICK
+048F;AL;CYRILLIC SMALL LETTER ER WITH TICK
+0490;AL;CYRILLIC CAPITAL LETTER GHE WITH UPTURN
+0491;AL;CYRILLIC SMALL LETTER GHE WITH UPTURN
+0492;AL;CYRILLIC CAPITAL LETTER GHE WITH STROKE
+0493;AL;CYRILLIC SMALL LETTER GHE WITH STROKE
+0494;AL;CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK
+0495;AL;CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK
+0496;AL;CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER
+0497;AL;CYRILLIC SMALL LETTER ZHE WITH DESCENDER
+0498;AL;CYRILLIC CAPITAL LETTER ZE WITH DESCENDER
+0499;AL;CYRILLIC SMALL LETTER ZE WITH DESCENDER
+049A;AL;CYRILLIC CAPITAL LETTER KA WITH DESCENDER
+049B;AL;CYRILLIC SMALL LETTER KA WITH DESCENDER
+049C;AL;CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE
+049D;AL;CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE
+049E;AL;CYRILLIC CAPITAL LETTER KA WITH STROKE
+049F;AL;CYRILLIC SMALL LETTER KA WITH STROKE
+04A0;AL;CYRILLIC CAPITAL LETTER BASHKIR KA
+04A1;AL;CYRILLIC SMALL LETTER BASHKIR KA
+04A2;AL;CYRILLIC CAPITAL LETTER EN WITH DESCENDER
+04A3;AL;CYRILLIC SMALL LETTER EN WITH DESCENDER
+04A4;AL;CYRILLIC CAPITAL LIGATURE EN GHE
+04A5;AL;CYRILLIC SMALL LIGATURE EN GHE
+04A6;AL;CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK
+04A7;AL;CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK
+04A8;AL;CYRILLIC CAPITAL LETTER ABKHASIAN HA
+04A9;AL;CYRILLIC SMALL LETTER ABKHASIAN HA
+04AA;AL;CYRILLIC CAPITAL LETTER ES WITH DESCENDER
+04AB;AL;CYRILLIC SMALL LETTER ES WITH DESCENDER
+04AC;AL;CYRILLIC CAPITAL LETTER TE WITH DESCENDER
+04AD;AL;CYRILLIC SMALL LETTER TE WITH DESCENDER
+04AE;AL;CYRILLIC CAPITAL LETTER STRAIGHT U
+04AF;AL;CYRILLIC SMALL LETTER STRAIGHT U
+04B0;AL;CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE
+04B1;AL;CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
+04B2;AL;CYRILLIC CAPITAL LETTER HA WITH DESCENDER
+04B3;AL;CYRILLIC SMALL LETTER HA WITH DESCENDER
+04B4;AL;CYRILLIC CAPITAL LIGATURE TE TSE
+04B5;AL;CYRILLIC SMALL LIGATURE TE TSE
+04B6;AL;CYRILLIC CAPITAL LETTER CHE WITH DESCENDER
+04B7;AL;CYRILLIC SMALL LETTER CHE WITH DESCENDER
+04B8;AL;CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE
+04B9;AL;CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE
+04BA;AL;CYRILLIC CAPITAL LETTER SHHA
+04BB;AL;CYRILLIC SMALL LETTER SHHA
+04BC;AL;CYRILLIC CAPITAL LETTER ABKHASIAN CHE
+04BD;AL;CYRILLIC SMALL LETTER ABKHASIAN CHE
+04BE;AL;CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER
+04BF;AL;CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER
+04C0;AL;CYRILLIC LETTER PALOCHKA
+04C1;AL;CYRILLIC CAPITAL LETTER ZHE WITH BREVE
+04C2;AL;CYRILLIC SMALL LETTER ZHE WITH BREVE
+04C3;AL;CYRILLIC CAPITAL LETTER KA WITH HOOK
+04C4;AL;CYRILLIC SMALL LETTER KA WITH HOOK
+04C7;AL;CYRILLIC CAPITAL LETTER EN WITH HOOK
+04C8;AL;CYRILLIC SMALL LETTER EN WITH HOOK
+04CB;AL;CYRILLIC CAPITAL LETTER KHAKASSIAN CHE
+04CC;AL;CYRILLIC SMALL LETTER KHAKASSIAN CHE
+04D0;AL;CYRILLIC CAPITAL LETTER A WITH BREVE
+04D1;AL;CYRILLIC SMALL LETTER A WITH BREVE
+04D2;AL;CYRILLIC CAPITAL LETTER A WITH DIAERESIS
+04D3;AL;CYRILLIC SMALL LETTER A WITH DIAERESIS
+04D4;AL;CYRILLIC CAPITAL LIGATURE A IE
+04D5;AL;CYRILLIC SMALL LIGATURE A IE
+04D6;AL;CYRILLIC CAPITAL LETTER IE WITH BREVE
+04D7;AL;CYRILLIC SMALL LETTER IE WITH BREVE
+04D8;AL;CYRILLIC CAPITAL LETTER SCHWA
+04D9;AL;CYRILLIC SMALL LETTER SCHWA
+04DA;AL;CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS
+04DB;AL;CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS
+04DC;AL;CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS
+04DD;AL;CYRILLIC SMALL LETTER ZHE WITH DIAERESIS
+04DE;AL;CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS
+04DF;AL;CYRILLIC SMALL LETTER ZE WITH DIAERESIS
+04E0;AL;CYRILLIC CAPITAL LETTER ABKHASIAN DZE
+04E1;AL;CYRILLIC SMALL LETTER ABKHASIAN DZE
+04E2;AL;CYRILLIC CAPITAL LETTER I WITH MACRON
+04E3;AL;CYRILLIC SMALL LETTER I WITH MACRON
+04E4;AL;CYRILLIC CAPITAL LETTER I WITH DIAERESIS
+04E5;AL;CYRILLIC SMALL LETTER I WITH DIAERESIS
+04E6;AL;CYRILLIC CAPITAL LETTER O WITH DIAERESIS
+04E7;AL;CYRILLIC SMALL LETTER O WITH DIAERESIS
+04E8;AL;CYRILLIC CAPITAL LETTER BARRED O
+04E9;AL;CYRILLIC SMALL LETTER BARRED O
+04EA;AL;CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS
+04EB;AL;CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS
+04EC;AL;CYRILLIC CAPITAL LETTER E WITH DIAERESIS
+04ED;AL;CYRILLIC SMALL LETTER E WITH DIAERESIS
+04EE;AL;CYRILLIC CAPITAL LETTER U WITH MACRON
+04EF;AL;CYRILLIC SMALL LETTER U WITH MACRON
+04F0;AL;CYRILLIC CAPITAL LETTER U WITH DIAERESIS
+04F1;AL;CYRILLIC SMALL LETTER U WITH DIAERESIS
+04F2;AL;CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE
+04F3;AL;CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE
+04F4;AL;CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS
+04F5;AL;CYRILLIC SMALL LETTER CHE WITH DIAERESIS
+04F8;AL;CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS
+04F9;AL;CYRILLIC SMALL LETTER YERU WITH DIAERESIS
+0531;AL;ARMENIAN CAPITAL LETTER AYB
+0532;AL;ARMENIAN CAPITAL LETTER BEN
+0533;AL;ARMENIAN CAPITAL LETTER GIM
+0534;AL;ARMENIAN CAPITAL LETTER DA
+0535;AL;ARMENIAN CAPITAL LETTER ECH
+0536;AL;ARMENIAN CAPITAL LETTER ZA
+0537;AL;ARMENIAN CAPITAL LETTER EH
+0538;AL;ARMENIAN CAPITAL LETTER ET
+0539;AL;ARMENIAN CAPITAL LETTER TO
+053A;AL;ARMENIAN CAPITAL LETTER ZHE
+053B;AL;ARMENIAN CAPITAL LETTER INI
+053C;AL;ARMENIAN CAPITAL LETTER LIWN
+053D;AL;ARMENIAN CAPITAL LETTER XEH
+053E;AL;ARMENIAN CAPITAL LETTER CA
+053F;AL;ARMENIAN CAPITAL LETTER KEN
+0540;AL;ARMENIAN CAPITAL LETTER HO
+0541;AL;ARMENIAN CAPITAL LETTER JA
+0542;AL;ARMENIAN CAPITAL LETTER GHAD
+0543;AL;ARMENIAN CAPITAL LETTER CHEH
+0544;AL;ARMENIAN CAPITAL LETTER MEN
+0545;AL;ARMENIAN CAPITAL LETTER YI
+0546;AL;ARMENIAN CAPITAL LETTER NOW
+0547;AL;ARMENIAN CAPITAL LETTER SHA
+0548;AL;ARMENIAN CAPITAL LETTER VO
+0549;AL;ARMENIAN CAPITAL LETTER CHA
+054A;AL;ARMENIAN CAPITAL LETTER PEH
+054B;AL;ARMENIAN CAPITAL LETTER JHEH
+054C;AL;ARMENIAN CAPITAL LETTER RA
+054D;AL;ARMENIAN CAPITAL LETTER SEH
+054E;AL;ARMENIAN CAPITAL LETTER VEW
+054F;AL;ARMENIAN CAPITAL LETTER TIWN
+0550;AL;ARMENIAN CAPITAL LETTER REH
+0551;AL;ARMENIAN CAPITAL LETTER CO
+0552;AL;ARMENIAN CAPITAL LETTER YIWN
+0553;AL;ARMENIAN CAPITAL LETTER PIWR
+0554;AL;ARMENIAN CAPITAL LETTER KEH
+0555;AL;ARMENIAN CAPITAL LETTER OH
+0556;AL;ARMENIAN CAPITAL LETTER FEH
+0559;AL;ARMENIAN MODIFIER LETTER LEFT HALF RING
+055A;AL;ARMENIAN APOSTROPHE
+055B;AL;ARMENIAN EMPHASIS MARK
+055C;AL;ARMENIAN EXCLAMATION MARK
+055D;AL;ARMENIAN COMMA
+055E;AL;ARMENIAN QUESTION MARK
+055F;AL;ARMENIAN ABBREVIATION MARK
+0561;AL;ARMENIAN SMALL LETTER AYB
+0562;AL;ARMENIAN SMALL LETTER BEN
+0563;AL;ARMENIAN SMALL LETTER GIM
+0564;AL;ARMENIAN SMALL LETTER DA
+0565;AL;ARMENIAN SMALL LETTER ECH
+0566;AL;ARMENIAN SMALL LETTER ZA
+0567;AL;ARMENIAN SMALL LETTER EH
+0568;AL;ARMENIAN SMALL LETTER ET
+0569;AL;ARMENIAN SMALL LETTER TO
+056A;AL;ARMENIAN SMALL LETTER ZHE
+056B;AL;ARMENIAN SMALL LETTER INI
+056C;AL;ARMENIAN SMALL LETTER LIWN
+056D;AL;ARMENIAN SMALL LETTER XEH
+056E;AL;ARMENIAN SMALL LETTER CA
+056F;AL;ARMENIAN SMALL LETTER KEN
+0570;AL;ARMENIAN SMALL LETTER HO
+0571;AL;ARMENIAN SMALL LETTER JA
+0572;AL;ARMENIAN SMALL LETTER GHAD
+0573;AL;ARMENIAN SMALL LETTER CHEH
+0574;AL;ARMENIAN SMALL LETTER MEN
+0575;AL;ARMENIAN SMALL LETTER YI
+0576;AL;ARMENIAN SMALL LETTER NOW
+0577;AL;ARMENIAN SMALL LETTER SHA
+0578;AL;ARMENIAN SMALL LETTER VO
+0579;AL;ARMENIAN SMALL LETTER CHA
+057A;AL;ARMENIAN SMALL LETTER PEH
+057B;AL;ARMENIAN SMALL LETTER JHEH
+057C;AL;ARMENIAN SMALL LETTER RA
+057D;AL;ARMENIAN SMALL LETTER SEH
+057E;AL;ARMENIAN SMALL LETTER VEW
+057F;AL;ARMENIAN SMALL LETTER TIWN
+0580;AL;ARMENIAN SMALL LETTER REH
+0581;AL;ARMENIAN SMALL LETTER CO
+0582;AL;ARMENIAN SMALL LETTER YIWN
+0583;AL;ARMENIAN SMALL LETTER PIWR
+0584;AL;ARMENIAN SMALL LETTER KEH
+0585;AL;ARMENIAN SMALL LETTER OH
+0586;AL;ARMENIAN SMALL LETTER FEH
+0587;AL;ARMENIAN SMALL LIGATURE ECH YIWN
+0589;IS;ARMENIAN FULL STOP
+058A;BA;ARMENIAN HYPHEN
+0591;CM;HEBREW ACCENT ETNAHTA
+0592;CM;HEBREW ACCENT SEGOL
+0593;CM;HEBREW ACCENT SHALSHELET
+0594;CM;HEBREW ACCENT ZAQEF QATAN
+0595;CM;HEBREW ACCENT ZAQEF GADOL
+0596;CM;HEBREW ACCENT TIPEHA
+0597;CM;HEBREW ACCENT REVIA
+0598;CM;HEBREW ACCENT ZARQA
+0599;CM;HEBREW ACCENT PASHTA
+059A;CM;HEBREW ACCENT YETIV
+059B;CM;HEBREW ACCENT TEVIR
+059C;CM;HEBREW ACCENT GERESH
+059D;CM;HEBREW ACCENT GERESH MUQDAM
+059E;CM;HEBREW ACCENT GERSHAYIM
+059F;CM;HEBREW ACCENT QARNEY PARA
+05A0;CM;HEBREW ACCENT TELISHA GEDOLA
+05A1;CM;HEBREW ACCENT PAZER
+05A3;CM;HEBREW ACCENT MUNAH
+05A4;CM;HEBREW ACCENT MAHAPAKH
+05A5;CM;HEBREW ACCENT MERKHA
+05A6;CM;HEBREW ACCENT MERKHA KEFULA
+05A7;CM;HEBREW ACCENT DARGA
+05A8;CM;HEBREW ACCENT QADMA
+05A9;CM;HEBREW ACCENT TELISHA QETANA
+05AA;CM;HEBREW ACCENT YERAH BEN YOMO
+05AB;CM;HEBREW ACCENT OLE
+05AC;CM;HEBREW ACCENT ILUY
+05AD;CM;HEBREW ACCENT DEHI
+05AE;CM;HEBREW ACCENT ZINOR
+05AF;CM;HEBREW MARK MASORA CIRCLE
+05B0;CM;HEBREW POINT SHEVA
+05B1;CM;HEBREW POINT HATAF SEGOL
+05B2;CM;HEBREW POINT HATAF PATAH
+05B3;CM;HEBREW POINT HATAF QAMATS
+05B4;CM;HEBREW POINT HIRIQ
+05B5;CM;HEBREW POINT TSERE
+05B6;CM;HEBREW POINT SEGOL
+05B7;CM;HEBREW POINT PATAH
+05B8;CM;HEBREW POINT QAMATS
+05B9;CM;HEBREW POINT HOLAM
+05BB;CM;HEBREW POINT QUBUTS
+05BC;CM;HEBREW POINT DAGESH OR MAPIQ
+05BD;CM;HEBREW POINT METEG
+05BE;AL;HEBREW PUNCTUATION MAQAF
+05BF;CM;HEBREW POINT RAFE
+05C0;AL;HEBREW PUNCTUATION PASEQ
+05C1;CM;HEBREW POINT SHIN DOT
+05C2;CM;HEBREW POINT SIN DOT
+05C3;AL;HEBREW PUNCTUATION SOF PASUQ
+05C4;CM;HEBREW MARK UPPER DOT
+05D0;AL;HEBREW LETTER ALEF
+05D1;AL;HEBREW LETTER BET
+05D2;AL;HEBREW LETTER GIMEL
+05D3;AL;HEBREW LETTER DALET
+05D4;AL;HEBREW LETTER HE
+05D5;AL;HEBREW LETTER VAV
+05D6;AL;HEBREW LETTER ZAYIN
+05D7;AL;HEBREW LETTER HET
+05D8;AL;HEBREW LETTER TET
+05D9;AL;HEBREW LETTER YOD
+05DA;AL;HEBREW LETTER FINAL KAF
+05DB;AL;HEBREW LETTER KAF
+05DC;AL;HEBREW LETTER LAMED
+05DD;AL;HEBREW LETTER FINAL MEM
+05DE;AL;HEBREW LETTER MEM
+05DF;AL;HEBREW LETTER FINAL NUN
+05E0;AL;HEBREW LETTER NUN
+05E1;AL;HEBREW LETTER SAMEKH
+05E2;AL;HEBREW LETTER AYIN
+05E3;AL;HEBREW LETTER FINAL PE
+05E4;AL;HEBREW LETTER PE
+05E5;AL;HEBREW LETTER FINAL TSADI
+05E6;AL;HEBREW LETTER TSADI
+05E7;AL;HEBREW LETTER QOF
+05E8;AL;HEBREW LETTER RESH
+05E9;AL;HEBREW LETTER SHIN
+05EA;AL;HEBREW LETTER TAV
+05F0;AL;HEBREW LIGATURE YIDDISH DOUBLE VAV
+05F1;AL;HEBREW LIGATURE YIDDISH VAV YOD
+05F2;AL;HEBREW LIGATURE YIDDISH DOUBLE YOD
+05F3;AL;HEBREW PUNCTUATION GERESH
+05F4;AL;HEBREW PUNCTUATION GERSHAYIM
+060C;AL;ARABIC COMMA
+061B;AL;ARABIC SEMICOLON
+061F;AL;ARABIC QUESTION MARK
+0621;AL;ARABIC LETTER HAMZA
+0622;AL;ARABIC LETTER ALEF WITH MADDA ABOVE
+0623;AL;ARABIC LETTER ALEF WITH HAMZA ABOVE
+0624;AL;ARABIC LETTER WAW WITH HAMZA ABOVE
+0625;AL;ARABIC LETTER ALEF WITH HAMZA BELOW
+0626;AL;ARABIC LETTER YEH WITH HAMZA ABOVE
+0627;AL;ARABIC LETTER ALEF
+0628;AL;ARABIC LETTER BEH
+0629;AL;ARABIC LETTER TEH MARBUTA
+062A;AL;ARABIC LETTER TEH
+062B;AL;ARABIC LETTER THEH
+062C;AL;ARABIC LETTER JEEM
+062D;AL;ARABIC LETTER HAH
+062E;AL;ARABIC LETTER KHAH
+062F;AL;ARABIC LETTER DAL
+0630;AL;ARABIC LETTER THAL
+0631;AL;ARABIC LETTER REH
+0632;AL;ARABIC LETTER ZAIN
+0633;AL;ARABIC LETTER SEEN
+0634;AL;ARABIC LETTER SHEEN
+0635;AL;ARABIC LETTER SAD
+0636;AL;ARABIC LETTER DAD
+0637;AL;ARABIC LETTER TAH
+0638;AL;ARABIC LETTER ZAH
+0639;AL;ARABIC LETTER AIN
+063A;AL;ARABIC LETTER GHAIN
+0640;AL;ARABIC TATWEEL
+0641;AL;ARABIC LETTER FEH
+0642;AL;ARABIC LETTER QAF
+0643;AL;ARABIC LETTER KAF
+0644;AL;ARABIC LETTER LAM
+0645;AL;ARABIC LETTER MEEM
+0646;AL;ARABIC LETTER NOON
+0647;AL;ARABIC LETTER HEH
+0648;AL;ARABIC LETTER WAW
+0649;AL;ARABIC LETTER ALEF MAKSURA
+064A;AL;ARABIC LETTER YEH
+064B;CM;ARABIC FATHATAN
+064C;CM;ARABIC DAMMATAN
+064D;CM;ARABIC KASRATAN
+064E;CM;ARABIC FATHA
+064F;CM;ARABIC DAMMA
+0650;CM;ARABIC KASRA
+0651;CM;ARABIC SHADDA
+0652;CM;ARABIC SUKUN
+0653;CM;ARABIC MADDAH ABOVE
+0654;CM;ARABIC HAMZA ABOVE
+0655;CM;ARABIC HAMZA BELOW
+0660;NU;ARABIC-INDIC DIGIT ZERO
+0661;NU;ARABIC-INDIC DIGIT ONE
+0662;NU;ARABIC-INDIC DIGIT TWO
+0663;NU;ARABIC-INDIC DIGIT THREE
+0664;NU;ARABIC-INDIC DIGIT FOUR
+0665;NU;ARABIC-INDIC DIGIT FIVE
+0666;NU;ARABIC-INDIC DIGIT SIX
+0667;NU;ARABIC-INDIC DIGIT SEVEN
+0668;NU;ARABIC-INDIC DIGIT EIGHT
+0669;NU;ARABIC-INDIC DIGIT NINE
+066A;AL;ARABIC PERCENT SIGN
+066B;AL;ARABIC DECIMAL SEPARATOR
+066C;AL;ARABIC THOUSANDS SEPARATOR
+066D;AL;ARABIC FIVE POINTED STAR
+0670;CM;ARABIC LETTER SUPERSCRIPT ALEF
+0671;AL;ARABIC LETTER ALEF WASLA
+0672;AL;ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE
+0673;AL;ARABIC LETTER ALEF WITH WAVY HAMZA BELOW
+0674;AL;ARABIC LETTER HIGH HAMZA
+0675;AL;ARABIC LETTER HIGH HAMZA ALEF
+0676;AL;ARABIC LETTER HIGH HAMZA WAW
+0677;AL;ARABIC LETTER U WITH HAMZA ABOVE
+0678;AL;ARABIC LETTER HIGH HAMZA YEH
+0679;AL;ARABIC LETTER TTEH
+067A;AL;ARABIC LETTER TTEHEH
+067B;AL;ARABIC LETTER BEEH
+067C;AL;ARABIC LETTER TEH WITH RING
+067D;AL;ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS
+067E;AL;ARABIC LETTER PEH
+067F;AL;ARABIC LETTER TEHEH
+0680;AL;ARABIC LETTER BEHEH
+0681;AL;ARABIC LETTER HAH WITH HAMZA ABOVE
+0682;AL;ARABIC LETTER HAH WITH TWO DOTS VERTICAL ABOVE
+0683;AL;ARABIC LETTER NYEH
+0684;AL;ARABIC LETTER DYEH
+0685;AL;ARABIC LETTER HAH WITH THREE DOTS ABOVE
+0686;AL;ARABIC LETTER TCHEH
+0687;AL;ARABIC LETTER TCHEHEH
+0688;AL;ARABIC LETTER DDAL
+0689;AL;ARABIC LETTER DAL WITH RING
+068A;AL;ARABIC LETTER DAL WITH DOT BELOW
+068B;AL;ARABIC LETTER DAL WITH DOT BELOW AND SMALL TAH
+068C;AL;ARABIC LETTER DAHAL
+068D;AL;ARABIC LETTER DDAHAL
+068E;AL;ARABIC LETTER DUL
+068F;AL;ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS
+0690;AL;ARABIC LETTER DAL WITH FOUR DOTS ABOVE
+0691;AL;ARABIC LETTER RREH
+0692;AL;ARABIC LETTER REH WITH SMALL V
+0693;AL;ARABIC LETTER REH WITH RING
+0694;AL;ARABIC LETTER REH WITH DOT BELOW
+0695;AL;ARABIC LETTER REH WITH SMALL V BELOW
+0696;AL;ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE
+0697;AL;ARABIC LETTER REH WITH TWO DOTS ABOVE
+0698;AL;ARABIC LETTER JEH
+0699;AL;ARABIC LETTER REH WITH FOUR DOTS ABOVE
+069A;AL;ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE
+069B;AL;ARABIC LETTER SEEN WITH THREE DOTS BELOW
+069C;AL;ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE
+069D;AL;ARABIC LETTER SAD WITH TWO DOTS BELOW
+069E;AL;ARABIC LETTER SAD WITH THREE DOTS ABOVE
+069F;AL;ARABIC LETTER TAH WITH THREE DOTS ABOVE
+06A0;AL;ARABIC LETTER AIN WITH THREE DOTS ABOVE
+06A1;AL;ARABIC LETTER DOTLESS FEH
+06A2;AL;ARABIC LETTER FEH WITH DOT MOVED BELOW
+06A3;AL;ARABIC LETTER FEH WITH DOT BELOW
+06A4;AL;ARABIC LETTER VEH
+06A5;AL;ARABIC LETTER FEH WITH THREE DOTS BELOW
+06A6;AL;ARABIC LETTER PEHEH
+06A7;AL;ARABIC LETTER QAF WITH DOT ABOVE
+06A8;AL;ARABIC LETTER QAF WITH THREE DOTS ABOVE
+06A9;AL;ARABIC LETTER KEHEH
+06AA;AL;ARABIC LETTER SWASH KAF
+06AB;AL;ARABIC LETTER KAF WITH RING
+06AC;AL;ARABIC LETTER KAF WITH DOT ABOVE
+06AD;AL;ARABIC LETTER NG
+06AE;AL;ARABIC LETTER KAF WITH THREE DOTS BELOW
+06AF;AL;ARABIC LETTER GAF
+06B0;AL;ARABIC LETTER GAF WITH RING
+06B1;AL;ARABIC LETTER NGOEH
+06B2;AL;ARABIC LETTER GAF WITH TWO DOTS BELOW
+06B3;AL;ARABIC LETTER GUEH
+06B4;AL;ARABIC LETTER GAF WITH THREE DOTS ABOVE
+06B5;AL;ARABIC LETTER LAM WITH SMALL V
+06B6;AL;ARABIC LETTER LAM WITH DOT ABOVE
+06B7;AL;ARABIC LETTER LAM WITH THREE DOTS ABOVE
+06B8;AL;ARABIC LETTER LAM WITH THREE DOTS BELOW
+06B9;AL;ARABIC LETTER NOON WITH DOT BELOW
+06BA;AL;ARABIC LETTER NOON GHUNNA
+06BB;AL;ARABIC LETTER RNOON
+06BC;AL;ARABIC LETTER NOON WITH RING
+06BD;AL;ARABIC LETTER NOON WITH THREE DOTS ABOVE
+06BE;AL;ARABIC LETTER HEH DOACHASHMEE
+06BF;AL;ARABIC LETTER TCHEH WITH DOT ABOVE
+06C0;AL;ARABIC LETTER HEH WITH YEH ABOVE
+06C1;AL;ARABIC LETTER HEH GOAL
+06C2;AL;ARABIC LETTER HEH GOAL WITH HAMZA ABOVE
+06C3;AL;ARABIC LETTER TEH MARBUTA GOAL
+06C4;AL;ARABIC LETTER WAW WITH RING
+06C5;AL;ARABIC LETTER KIRGHIZ OE
+06C6;AL;ARABIC LETTER OE
+06C7;AL;ARABIC LETTER U
+06C8;AL;ARABIC LETTER YU
+06C9;AL;ARABIC LETTER KIRGHIZ YU
+06CA;AL;ARABIC LETTER WAW WITH TWO DOTS ABOVE
+06CB;AL;ARABIC LETTER VE
+06CC;AL;ARABIC LETTER FARSI YEH
+06CD;AL;ARABIC LETTER YEH WITH TAIL
+06CE;AL;ARABIC LETTER YEH WITH SMALL V
+06CF;AL;ARABIC LETTER WAW WITH DOT ABOVE
+06D0;AL;ARABIC LETTER E
+06D1;AL;ARABIC LETTER YEH WITH THREE DOTS BELOW
+06D2;AL;ARABIC LETTER YEH BARREE
+06D3;AL;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE
+06D4;AL;ARABIC FULL STOP
+06D5;AL;ARABIC LETTER AE
+06D6;CM;ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA
+06D7;CM;ARABIC SMALL HIGH LIGATURE QAF WITH LAM WITH ALEF MAKSURA
+06D8;CM;ARABIC SMALL HIGH MEEM INITIAL FORM
+06D9;CM;ARABIC SMALL HIGH LAM ALEF
+06DA;CM;ARABIC SMALL HIGH JEEM
+06DB;CM;ARABIC SMALL HIGH THREE DOTS
+06DC;CM;ARABIC SMALL HIGH SEEN
+06DD;CM;ARABIC END OF AYAH
+06DE;CM;ARABIC START OF RUB EL HIZB
+06DF;CM;ARABIC SMALL HIGH ROUNDED ZERO
+06E0;CM;ARABIC SMALL HIGH UPRIGHT RECTANGULAR ZERO
+06E1;CM;ARABIC SMALL HIGH DOTLESS HEAD OF KHAH
+06E2;CM;ARABIC SMALL HIGH MEEM ISOLATED FORM
+06E3;CM;ARABIC SMALL LOW SEEN
+06E4;CM;ARABIC SMALL HIGH MADDA
+06E5;AL;ARABIC SMALL WAW
+06E6;AL;ARABIC SMALL YEH
+06E7;CM;ARABIC SMALL HIGH YEH
+06E8;CM;ARABIC SMALL HIGH NOON
+06E9;AL;ARABIC PLACE OF SAJDAH
+06EA;CM;ARABIC EMPTY CENTRE LOW STOP
+06EB;CM;ARABIC EMPTY CENTRE HIGH STOP
+06EC;CM;ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE
+06ED;CM;ARABIC SMALL LOW MEEM
+06F0;NU;EXTENDED ARABIC-INDIC DIGIT ZERO
+06F1;NU;EXTENDED ARABIC-INDIC DIGIT ONE
+06F2;NU;EXTENDED ARABIC-INDIC DIGIT TWO
+06F3;NU;EXTENDED ARABIC-INDIC DIGIT THREE
+06F4;NU;EXTENDED ARABIC-INDIC DIGIT FOUR
+06F5;NU;EXTENDED ARABIC-INDIC DIGIT FIVE
+06F6;NU;EXTENDED ARABIC-INDIC DIGIT SIX
+06F7;NU;EXTENDED ARABIC-INDIC DIGIT SEVEN
+06F8;NU;EXTENDED ARABIC-INDIC DIGIT EIGHT
+06F9;NU;EXTENDED ARABIC-INDIC DIGIT NINE
+06FA;AL;ARABIC LETTER SHEEN WITH DOT BELOW
+06FB;AL;ARABIC LETTER DAD WITH DOT BELOW
+06FC;AL;ARABIC LETTER GHAIN WITH DOT BELOW
+06FD;AL;ARABIC SIGN SINDHI AMPERSAND
+06FE;AL;ARABIC SIGN SINDHI POSTPOSITION MEN
+0700;AL;SYRIAC END OF PARAGRAPH
+0701;AL;SYRIAC SUPRALINEAR FULL STOP
+0702;AL;SYRIAC SUBLINEAR FULL STOP
+0703;AL;SYRIAC SUPRALINEAR COLON
+0704;AL;SYRIAC SUBLINEAR COLON
+0705;AL;SYRIAC HORIZONTAL COLON
+0706;AL;SYRIAC COLON SKEWED LEFT
+0707;AL;SYRIAC COLON SKEWED RIGHT
+0708;AL;SYRIAC SUPRALINEAR COLON SKEWED LEFT
+0709;AL;SYRIAC SUBLINEAR COLON SKEWED RIGHT
+070A;AL;SYRIAC CONTRACTION
+070B;AL;SYRIAC HARKLEAN OBELUS
+070C;AL;SYRIAC HARKLEAN METOBELUS
+070D;AL;SYRIAC HARKLEAN ASTERISCUS
+070F;CM;SYRIAC ABBREVIATION MARK
+0710;AL;SYRIAC LETTER ALAPH
+0711;CM;SYRIAC LETTER SUPERSCRIPT ALAPH
+0712;AL;SYRIAC LETTER BETH
+0713;AL;SYRIAC LETTER GAMAL
+0714;AL;SYRIAC LETTER GAMAL GARSHUNI
+0715;AL;SYRIAC LETTER DALATH
+0716;AL;SYRIAC LETTER DOTLESS DALATH RISH
+0717;AL;SYRIAC LETTER HE
+0718;AL;SYRIAC LETTER WAW
+0719;AL;SYRIAC LETTER ZAIN
+071A;AL;SYRIAC LETTER HETH
+071B;AL;SYRIAC LETTER TETH
+071C;AL;SYRIAC LETTER TETH GARSHUNI
+071D;AL;SYRIAC LETTER YUDH
+071E;AL;SYRIAC LETTER YUDH HE
+071F;AL;SYRIAC LETTER KAPH
+0720;AL;SYRIAC LETTER LAMADH
+0721;AL;SYRIAC LETTER MIM
+0722;AL;SYRIAC LETTER NUN
+0723;AL;SYRIAC LETTER SEMKATH
+0724;AL;SYRIAC LETTER FINAL SEMKATH
+0725;AL;SYRIAC LETTER E
+0726;AL;SYRIAC LETTER PE
+0727;AL;SYRIAC LETTER REVERSED PE
+0728;AL;SYRIAC LETTER SADHE
+0729;AL;SYRIAC LETTER QAPH
+072A;AL;SYRIAC LETTER RISH
+072B;AL;SYRIAC LETTER SHIN
+072C;AL;SYRIAC LETTER TAW
+0730;CM;SYRIAC PTHAHA ABOVE
+0731;CM;SYRIAC PTHAHA BELOW
+0732;CM;SYRIAC PTHAHA DOTTED
+0733;CM;SYRIAC ZQAPHA ABOVE
+0734;CM;SYRIAC ZQAPHA BELOW
+0735;CM;SYRIAC ZQAPHA DOTTED
+0736;CM;SYRIAC RBASA ABOVE
+0737;CM;SYRIAC RBASA BELOW
+0738;CM;SYRIAC DOTTED ZLAMA HORIZONTAL
+0739;CM;SYRIAC DOTTED ZLAMA ANGULAR
+073A;CM;SYRIAC HBASA ABOVE
+073B;CM;SYRIAC HBASA BELOW
+073C;CM;SYRIAC HBASA-ESASA DOTTED
+073D;CM;SYRIAC ESASA ABOVE
+073E;CM;SYRIAC ESASA BELOW
+073F;CM;SYRIAC RWAHA
+0740;CM;SYRIAC FEMININE DOT
+0741;CM;SYRIAC QUSHSHAYA
+0742;CM;SYRIAC RUKKAKHA
+0743;CM;SYRIAC TWO VERTICAL DOTS ABOVE
+0744;CM;SYRIAC TWO VERTICAL DOTS BELOW
+0745;CM;SYRIAC THREE DOTS ABOVE
+0746;CM;SYRIAC THREE DOTS BELOW
+0747;CM;SYRIAC OBLIQUE LINE ABOVE
+0748;CM;SYRIAC OBLIQUE LINE BELOW
+0749;CM;SYRIAC MUSIC
+074A;CM;SYRIAC BARREKH
+0780;AL;THAANA LETTER HAA
+0781;AL;THAANA LETTER SHAVIYANI
+0782;AL;THAANA LETTER NOONU
+0783;AL;THAANA LETTER RAA
+0784;AL;THAANA LETTER BAA
+0785;AL;THAANA LETTER LHAVIYANI
+0786;AL;THAANA LETTER KAAFU
+0787;AL;THAANA LETTER ALIFU
+0788;AL;THAANA LETTER VAAVU
+0789;AL;THAANA LETTER MEEMU
+078A;AL;THAANA LETTER FAAFU
+078B;AL;THAANA LETTER DHAALU
+078C;AL;THAANA LETTER THAA
+078D;AL;THAANA LETTER LAAMU
+078E;AL;THAANA LETTER GAAFU
+078F;AL;THAANA LETTER GNAVIYANI
+0790;AL;THAANA LETTER SEENU
+0791;AL;THAANA LETTER DAVIYANI
+0792;AL;THAANA LETTER ZAVIYANI
+0793;AL;THAANA LETTER TAVIYANI
+0794;AL;THAANA LETTER YAA
+0795;AL;THAANA LETTER PAVIYANI
+0796;AL;THAANA LETTER JAVIYANI
+0797;AL;THAANA LETTER CHAVIYANI
+0798;AL;THAANA LETTER TTAA
+0799;AL;THAANA LETTER HHAA
+079A;AL;THAANA LETTER KHAA
+079B;AL;THAANA LETTER THAALU
+079C;AL;THAANA LETTER ZAA
+079D;AL;THAANA LETTER SHEENU
+079E;AL;THAANA LETTER SAADHU
+079F;AL;THAANA LETTER DAADHU
+07A0;AL;THAANA LETTER TO
+07A1;AL;THAANA LETTER ZO
+07A2;AL;THAANA LETTER AINU
+07A3;AL;THAANA LETTER GHAINU
+07A4;AL;THAANA LETTER QAAFU
+07A5;AL;THAANA LETTER WAAVU
+07A6;CM;THAANA ABAFILI
+07A7;CM;THAANA AABAAFILI
+07A8;CM;THAANA IBIFILI
+07A9;CM;THAANA EEBEEFILI
+07AA;CM;THAANA UBUFILI
+07AB;CM;THAANA OOBOOFILI
+07AC;CM;THAANA EBEFILI
+07AD;CM;THAANA EYBEYFILI
+07AE;CM;THAANA OBOFILI
+07AF;CM;THAANA OABOAFILI
+07B0;CM;THAANA SUKUN
+0901;CM;DEVANAGARI SIGN CANDRABINDU
+0902;CM;DEVANAGARI SIGN ANUSVARA
+0903;CM;DEVANAGARI SIGN VISARGA
+0905;AL;DEVANAGARI LETTER A
+0906;AL;DEVANAGARI LETTER AA
+0907;AL;DEVANAGARI LETTER I
+0908;AL;DEVANAGARI LETTER II
+0909;AL;DEVANAGARI LETTER U
+090A;AL;DEVANAGARI LETTER UU
+090B;AL;DEVANAGARI LETTER VOCALIC R
+090C;AL;DEVANAGARI LETTER VOCALIC L
+090D;AL;DEVANAGARI LETTER CANDRA E
+090E;AL;DEVANAGARI LETTER SHORT E
+090F;AL;DEVANAGARI LETTER E
+0910;AL;DEVANAGARI LETTER AI
+0911;AL;DEVANAGARI LETTER CANDRA O
+0912;AL;DEVANAGARI LETTER SHORT O
+0913;AL;DEVANAGARI LETTER O
+0914;AL;DEVANAGARI LETTER AU
+0915;AL;DEVANAGARI LETTER KA
+0916;AL;DEVANAGARI LETTER KHA
+0917;AL;DEVANAGARI LETTER GA
+0918;AL;DEVANAGARI LETTER GHA
+0919;AL;DEVANAGARI LETTER NGA
+091A;AL;DEVANAGARI LETTER CA
+091B;AL;DEVANAGARI LETTER CHA
+091C;AL;DEVANAGARI LETTER JA
+091D;AL;DEVANAGARI LETTER JHA
+091E;AL;DEVANAGARI LETTER NYA
+091F;AL;DEVANAGARI LETTER TTA
+0920;AL;DEVANAGARI LETTER TTHA
+0921;AL;DEVANAGARI LETTER DDA
+0922;AL;DEVANAGARI LETTER DDHA
+0923;AL;DEVANAGARI LETTER NNA
+0924;AL;DEVANAGARI LETTER TA
+0925;AL;DEVANAGARI LETTER THA
+0926;AL;DEVANAGARI LETTER DA
+0927;AL;DEVANAGARI LETTER DHA
+0928;AL;DEVANAGARI LETTER NA
+0929;AL;DEVANAGARI LETTER NNNA
+092A;AL;DEVANAGARI LETTER PA
+092B;AL;DEVANAGARI LETTER PHA
+092C;AL;DEVANAGARI LETTER BA
+092D;AL;DEVANAGARI LETTER BHA
+092E;AL;DEVANAGARI LETTER MA
+092F;AL;DEVANAGARI LETTER YA
+0930;AL;DEVANAGARI LETTER RA
+0931;AL;DEVANAGARI LETTER RRA
+0932;AL;DEVANAGARI LETTER LA
+0933;AL;DEVANAGARI LETTER LLA
+0934;AL;DEVANAGARI LETTER LLLA
+0935;AL;DEVANAGARI LETTER VA
+0936;AL;DEVANAGARI LETTER SHA
+0937;AL;DEVANAGARI LETTER SSA
+0938;AL;DEVANAGARI LETTER SA
+0939;AL;DEVANAGARI LETTER HA
+093C;CM;DEVANAGARI SIGN NUKTA
+093D;AL;DEVANAGARI SIGN AVAGRAHA
+093E;CM;DEVANAGARI VOWEL SIGN AA
+093F;CM;DEVANAGARI VOWEL SIGN I
+0940;CM;DEVANAGARI VOWEL SIGN II
+0941;CM;DEVANAGARI VOWEL SIGN U
+0942;CM;DEVANAGARI VOWEL SIGN UU
+0943;CM;DEVANAGARI VOWEL SIGN VOCALIC R
+0944;CM;DEVANAGARI VOWEL SIGN VOCALIC RR
+0945;CM;DEVANAGARI VOWEL SIGN CANDRA E
+0946;CM;DEVANAGARI VOWEL SIGN SHORT E
+0947;CM;DEVANAGARI VOWEL SIGN E
+0948;CM;DEVANAGARI VOWEL SIGN AI
+0949;CM;DEVANAGARI VOWEL SIGN CANDRA O
+094A;CM;DEVANAGARI VOWEL SIGN SHORT O
+094B;CM;DEVANAGARI VOWEL SIGN O
+094C;CM;DEVANAGARI VOWEL SIGN AU
+094D;CM;DEVANAGARI SIGN VIRAMA
+0950;AL;DEVANAGARI OM
+0951;CM;DEVANAGARI STRESS SIGN UDATTA
+0952;CM;DEVANAGARI STRESS SIGN ANUDATTA
+0953;CM;DEVANAGARI GRAVE ACCENT
+0954;CM;DEVANAGARI ACUTE ACCENT
+0958;AL;DEVANAGARI LETTER QA
+0959;AL;DEVANAGARI LETTER KHHA
+095A;AL;DEVANAGARI LETTER GHHA
+095B;AL;DEVANAGARI LETTER ZA
+095C;AL;DEVANAGARI LETTER DDDHA
+095D;AL;DEVANAGARI LETTER RHA
+095E;AL;DEVANAGARI LETTER FA
+095F;AL;DEVANAGARI LETTER YYA
+0960;AL;DEVANAGARI LETTER VOCALIC RR
+0961;AL;DEVANAGARI LETTER VOCALIC LL
+0962;CM;DEVANAGARI VOWEL SIGN VOCALIC L
+0963;CM;DEVANAGARI VOWEL SIGN VOCALIC LL
+0964;AL;DEVANAGARI DANDA
+0965;AL;DEVANAGARI DOUBLE DANDA
+0966;NU;DEVANAGARI DIGIT ZERO
+0967;NU;DEVANAGARI DIGIT ONE
+0968;NU;DEVANAGARI DIGIT TWO
+0969;NU;DEVANAGARI DIGIT THREE
+096A;NU;DEVANAGARI DIGIT FOUR
+096B;NU;DEVANAGARI DIGIT FIVE
+096C;NU;DEVANAGARI DIGIT SIX
+096D;NU;DEVANAGARI DIGIT SEVEN
+096E;NU;DEVANAGARI DIGIT EIGHT
+096F;NU;DEVANAGARI DIGIT NINE
+0970;AL;DEVANAGARI ABBREVIATION SIGN
+0981;CM;BENGALI SIGN CANDRABINDU
+0982;CM;BENGALI SIGN ANUSVARA
+0983;CM;BENGALI SIGN VISARGA
+0985;AL;BENGALI LETTER A
+0986;AL;BENGALI LETTER AA
+0987;AL;BENGALI LETTER I
+0988;AL;BENGALI LETTER II
+0989;AL;BENGALI LETTER U
+098A;AL;BENGALI LETTER UU
+098B;AL;BENGALI LETTER VOCALIC R
+098C;AL;BENGALI LETTER VOCALIC L
+098F;AL;BENGALI LETTER E
+0990;AL;BENGALI LETTER AI
+0993;AL;BENGALI LETTER O
+0994;AL;BENGALI LETTER AU
+0995;AL;BENGALI LETTER KA
+0996;AL;BENGALI LETTER KHA
+0997;AL;BENGALI LETTER GA
+0998;AL;BENGALI LETTER GHA
+0999;AL;BENGALI LETTER NGA
+099A;AL;BENGALI LETTER CA
+099B;AL;BENGALI LETTER CHA
+099C;AL;BENGALI LETTER JA
+099D;AL;BENGALI LETTER JHA
+099E;AL;BENGALI LETTER NYA
+099F;AL;BENGALI LETTER TTA
+09A0;AL;BENGALI LETTER TTHA
+09A1;AL;BENGALI LETTER DDA
+09A2;AL;BENGALI LETTER DDHA
+09A3;AL;BENGALI LETTER NNA
+09A4;AL;BENGALI LETTER TA
+09A5;AL;BENGALI LETTER THA
+09A6;AL;BENGALI LETTER DA
+09A7;AL;BENGALI LETTER DHA
+09A8;AL;BENGALI LETTER NA
+09AA;AL;BENGALI LETTER PA
+09AB;AL;BENGALI LETTER PHA
+09AC;AL;BENGALI LETTER BA
+09AD;AL;BENGALI LETTER BHA
+09AE;AL;BENGALI LETTER MA
+09AF;AL;BENGALI LETTER YA
+09B0;AL;BENGALI LETTER RA
+09B2;AL;BENGALI LETTER LA
+09B6;AL;BENGALI LETTER SHA
+09B7;AL;BENGALI LETTER SSA
+09B8;AL;BENGALI LETTER SA
+09B9;AL;BENGALI LETTER HA
+09BC;CM;BENGALI SIGN NUKTA
+09BE;CM;BENGALI VOWEL SIGN AA
+09BF;CM;BENGALI VOWEL SIGN I
+09C0;CM;BENGALI VOWEL SIGN II
+09C1;CM;BENGALI VOWEL SIGN U
+09C2;CM;BENGALI VOWEL SIGN UU
+09C3;CM;BENGALI VOWEL SIGN VOCALIC R
+09C4;CM;BENGALI VOWEL SIGN VOCALIC RR
+09C7;CM;BENGALI VOWEL SIGN E
+09C8;CM;BENGALI VOWEL SIGN AI
+09CB;CM;BENGALI VOWEL SIGN O
+09CC;CM;BENGALI VOWEL SIGN AU
+09CD;CM;BENGALI SIGN VIRAMA
+09D7;CM;BENGALI AU LENGTH MARK
+09DC;AL;BENGALI LETTER RRA
+09DD;AL;BENGALI LETTER RHA
+09DF;AL;BENGALI LETTER YYA
+09E0;AL;BENGALI LETTER VOCALIC RR
+09E1;AL;BENGALI LETTER VOCALIC LL
+09E2;CM;BENGALI VOWEL SIGN VOCALIC L
+09E3;CM;BENGALI VOWEL SIGN VOCALIC LL
+09E6;NU;BENGALI DIGIT ZERO
+09E7;NU;BENGALI DIGIT ONE
+09E8;NU;BENGALI DIGIT TWO
+09E9;NU;BENGALI DIGIT THREE
+09EA;NU;BENGALI DIGIT FOUR
+09EB;NU;BENGALI DIGIT FIVE
+09EC;NU;BENGALI DIGIT SIX
+09ED;NU;BENGALI DIGIT SEVEN
+09EE;NU;BENGALI DIGIT EIGHT
+09EF;NU;BENGALI DIGIT NINE
+09F0;AL;BENGALI LETTER RA WITH MIDDLE DIAGONAL
+09F1;AL;BENGALI LETTER RA WITH LOWER DIAGONAL
+09F2;PR;BENGALI RUPEE MARK
+09F3;PR;BENGALI RUPEE SIGN
+09F4;AL;BENGALI CURRENCY NUMERATOR ONE
+09F5;AL;BENGALI CURRENCY NUMERATOR TWO
+09F6;AL;BENGALI CURRENCY NUMERATOR THREE
+09F7;AL;BENGALI CURRENCY NUMERATOR FOUR
+09F8;AL;BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR
+09F9;AL;BENGALI CURRENCY DENOMINATOR SIXTEEN
+09FA;AL;BENGALI ISSHAR
+0A02;CM;GURMUKHI SIGN BINDI
+0A05;AL;GURMUKHI LETTER A
+0A06;AL;GURMUKHI LETTER AA
+0A07;AL;GURMUKHI LETTER I
+0A08;AL;GURMUKHI LETTER II
+0A09;AL;GURMUKHI LETTER U
+0A0A;AL;GURMUKHI LETTER UU
+0A0F;AL;GURMUKHI LETTER EE
+0A10;AL;GURMUKHI LETTER AI
+0A13;AL;GURMUKHI LETTER OO
+0A14;AL;GURMUKHI LETTER AU
+0A15;AL;GURMUKHI LETTER KA
+0A16;AL;GURMUKHI LETTER KHA
+0A17;AL;GURMUKHI LETTER GA
+0A18;AL;GURMUKHI LETTER GHA
+0A19;AL;GURMUKHI LETTER NGA
+0A1A;AL;GURMUKHI LETTER CA
+0A1B;AL;GURMUKHI LETTER CHA
+0A1C;AL;GURMUKHI LETTER JA
+0A1D;AL;GURMUKHI LETTER JHA
+0A1E;AL;GURMUKHI LETTER NYA
+0A1F;AL;GURMUKHI LETTER TTA
+0A20;AL;GURMUKHI LETTER TTHA
+0A21;AL;GURMUKHI LETTER DDA
+0A22;AL;GURMUKHI LETTER DDHA
+0A23;AL;GURMUKHI LETTER NNA
+0A24;AL;GURMUKHI LETTER TA
+0A25;AL;GURMUKHI LETTER THA
+0A26;AL;GURMUKHI LETTER DA
+0A27;AL;GURMUKHI LETTER DHA
+0A28;AL;GURMUKHI LETTER NA
+0A2A;AL;GURMUKHI LETTER PA
+0A2B;AL;GURMUKHI LETTER PHA
+0A2C;AL;GURMUKHI LETTER BA
+0A2D;AL;GURMUKHI LETTER BHA
+0A2E;AL;GURMUKHI LETTER MA
+0A2F;AL;GURMUKHI LETTER YA
+0A30;AL;GURMUKHI LETTER RA
+0A32;AL;GURMUKHI LETTER LA
+0A33;AL;GURMUKHI LETTER LLA
+0A35;AL;GURMUKHI LETTER VA
+0A36;AL;GURMUKHI LETTER SHA
+0A38;AL;GURMUKHI LETTER SA
+0A39;AL;GURMUKHI LETTER HA
+0A3C;CM;GURMUKHI SIGN NUKTA
+0A3E;CM;GURMUKHI VOWEL SIGN AA
+0A3F;CM;GURMUKHI VOWEL SIGN I
+0A40;CM;GURMUKHI VOWEL SIGN II
+0A41;CM;GURMUKHI VOWEL SIGN U
+0A42;CM;GURMUKHI VOWEL SIGN UU
+0A47;CM;GURMUKHI VOWEL SIGN EE
+0A48;CM;GURMUKHI VOWEL SIGN AI
+0A4B;CM;GURMUKHI VOWEL SIGN OO
+0A4C;CM;GURMUKHI VOWEL SIGN AU
+0A4D;CM;GURMUKHI SIGN VIRAMA
+0A59;AL;GURMUKHI LETTER KHHA
+0A5A;AL;GURMUKHI LETTER GHHA
+0A5B;AL;GURMUKHI LETTER ZA
+0A5C;AL;GURMUKHI LETTER RRA
+0A5E;AL;GURMUKHI LETTER FA
+0A66;NU;GURMUKHI DIGIT ZERO
+0A67;NU;GURMUKHI DIGIT ONE
+0A68;NU;GURMUKHI DIGIT TWO
+0A69;NU;GURMUKHI DIGIT THREE
+0A6A;NU;GURMUKHI DIGIT FOUR
+0A6B;NU;GURMUKHI DIGIT FIVE
+0A6C;NU;GURMUKHI DIGIT SIX
+0A6D;NU;GURMUKHI DIGIT SEVEN
+0A6E;NU;GURMUKHI DIGIT EIGHT
+0A6F;NU;GURMUKHI DIGIT NINE
+0A70;CM;GURMUKHI TIPPI
+0A71;CM;GURMUKHI ADDAK
+0A72;AL;GURMUKHI IRI
+0A73;AL;GURMUKHI URA
+0A74;AL;GURMUKHI EK ONKAR
+0A81;CM;GUJARATI SIGN CANDRABINDU
+0A82;CM;GUJARATI SIGN ANUSVARA
+0A83;CM;GUJARATI SIGN VISARGA
+0A85;AL;GUJARATI LETTER A
+0A86;AL;GUJARATI LETTER AA
+0A87;AL;GUJARATI LETTER I
+0A88;AL;GUJARATI LETTER II
+0A89;AL;GUJARATI LETTER U
+0A8A;AL;GUJARATI LETTER UU
+0A8B;AL;GUJARATI LETTER VOCALIC R
+0A8D;AL;GUJARATI VOWEL CANDRA E
+0A8F;AL;GUJARATI LETTER E
+0A90;AL;GUJARATI LETTER AI
+0A91;AL;GUJARATI VOWEL CANDRA O
+0A93;AL;GUJARATI LETTER O
+0A94;AL;GUJARATI LETTER AU
+0A95;AL;GUJARATI LETTER KA
+0A96;AL;GUJARATI LETTER KHA
+0A97;AL;GUJARATI LETTER GA
+0A98;AL;GUJARATI LETTER GHA
+0A99;AL;GUJARATI LETTER NGA
+0A9A;AL;GUJARATI LETTER CA
+0A9B;AL;GUJARATI LETTER CHA
+0A9C;AL;GUJARATI LETTER JA
+0A9D;AL;GUJARATI LETTER JHA
+0A9E;AL;GUJARATI LETTER NYA
+0A9F;AL;GUJARATI LETTER TTA
+0AA0;AL;GUJARATI LETTER TTHA
+0AA1;AL;GUJARATI LETTER DDA
+0AA2;AL;GUJARATI LETTER DDHA
+0AA3;AL;GUJARATI LETTER NNA
+0AA4;AL;GUJARATI LETTER TA
+0AA5;AL;GUJARATI LETTER THA
+0AA6;AL;GUJARATI LETTER DA
+0AA7;AL;GUJARATI LETTER DHA
+0AA8;AL;GUJARATI LETTER NA
+0AAA;AL;GUJARATI LETTER PA
+0AAB;AL;GUJARATI LETTER PHA
+0AAC;AL;GUJARATI LETTER BA
+0AAD;AL;GUJARATI LETTER BHA
+0AAE;AL;GUJARATI LETTER MA
+0AAF;AL;GUJARATI LETTER YA
+0AB0;AL;GUJARATI LETTER RA
+0AB2;AL;GUJARATI LETTER LA
+0AB3;AL;GUJARATI LETTER LLA
+0AB5;AL;GUJARATI LETTER VA
+0AB6;AL;GUJARATI LETTER SHA
+0AB7;AL;GUJARATI LETTER SSA
+0AB8;AL;GUJARATI LETTER SA
+0AB9;AL;GUJARATI LETTER HA
+0ABC;CM;GUJARATI SIGN NUKTA
+0ABD;AL;GUJARATI SIGN AVAGRAHA
+0ABE;CM;GUJARATI VOWEL SIGN AA
+0ABF;CM;GUJARATI VOWEL SIGN I
+0AC0;CM;GUJARATI VOWEL SIGN II
+0AC1;CM;GUJARATI VOWEL SIGN U
+0AC2;CM;GUJARATI VOWEL SIGN UU
+0AC3;CM;GUJARATI VOWEL SIGN VOCALIC R
+0AC4;CM;GUJARATI VOWEL SIGN VOCALIC RR
+0AC5;CM;GUJARATI VOWEL SIGN CANDRA E
+0AC7;CM;GUJARATI VOWEL SIGN E
+0AC8;CM;GUJARATI VOWEL SIGN AI
+0AC9;CM;GUJARATI VOWEL SIGN CANDRA O
+0ACB;CM;GUJARATI VOWEL SIGN O
+0ACC;CM;GUJARATI VOWEL SIGN AU
+0ACD;CM;GUJARATI SIGN VIRAMA
+0AD0;AL;GUJARATI OM
+0AE0;AL;GUJARATI LETTER VOCALIC RR
+0AE6;NU;GUJARATI DIGIT ZERO
+0AE7;NU;GUJARATI DIGIT ONE
+0AE8;NU;GUJARATI DIGIT TWO
+0AE9;NU;GUJARATI DIGIT THREE
+0AEA;NU;GUJARATI DIGIT FOUR
+0AEB;NU;GUJARATI DIGIT FIVE
+0AEC;NU;GUJARATI DIGIT SIX
+0AED;NU;GUJARATI DIGIT SEVEN
+0AEE;NU;GUJARATI DIGIT EIGHT
+0AEF;NU;GUJARATI DIGIT NINE
+0B01;CM;ORIYA SIGN CANDRABINDU
+0B02;CM;ORIYA SIGN ANUSVARA
+0B03;CM;ORIYA SIGN VISARGA
+0B05;AL;ORIYA LETTER A
+0B06;AL;ORIYA LETTER AA
+0B07;AL;ORIYA LETTER I
+0B08;AL;ORIYA LETTER II
+0B09;AL;ORIYA LETTER U
+0B0A;AL;ORIYA LETTER UU
+0B0B;AL;ORIYA LETTER VOCALIC R
+0B0C;AL;ORIYA LETTER VOCALIC L
+0B0F;AL;ORIYA LETTER E
+0B10;AL;ORIYA LETTER AI
+0B13;AL;ORIYA LETTER O
+0B14;AL;ORIYA LETTER AU
+0B15;AL;ORIYA LETTER KA
+0B16;AL;ORIYA LETTER KHA
+0B17;AL;ORIYA LETTER GA
+0B18;AL;ORIYA LETTER GHA
+0B19;AL;ORIYA LETTER NGA
+0B1A;AL;ORIYA LETTER CA
+0B1B;AL;ORIYA LETTER CHA
+0B1C;AL;ORIYA LETTER JA
+0B1D;AL;ORIYA LETTER JHA
+0B1E;AL;ORIYA LETTER NYA
+0B1F;AL;ORIYA LETTER TTA
+0B20;AL;ORIYA LETTER TTHA
+0B21;AL;ORIYA LETTER DDA
+0B22;AL;ORIYA LETTER DDHA
+0B23;AL;ORIYA LETTER NNA
+0B24;AL;ORIYA LETTER TA
+0B25;AL;ORIYA LETTER THA
+0B26;AL;ORIYA LETTER DA
+0B27;AL;ORIYA LETTER DHA
+0B28;AL;ORIYA LETTER NA
+0B2A;AL;ORIYA LETTER PA
+0B2B;AL;ORIYA LETTER PHA
+0B2C;AL;ORIYA LETTER BA
+0B2D;AL;ORIYA LETTER BHA
+0B2E;AL;ORIYA LETTER MA
+0B2F;AL;ORIYA LETTER YA
+0B30;AL;ORIYA LETTER RA
+0B32;AL;ORIYA LETTER LA
+0B33;AL;ORIYA LETTER LLA
+0B36;AL;ORIYA LETTER SHA
+0B37;AL;ORIYA LETTER SSA
+0B38;AL;ORIYA LETTER SA
+0B39;AL;ORIYA LETTER HA
+0B3C;CM;ORIYA SIGN NUKTA
+0B3D;AL;ORIYA SIGN AVAGRAHA
+0B3E;CM;ORIYA VOWEL SIGN AA
+0B3F;CM;ORIYA VOWEL SIGN I
+0B40;CM;ORIYA VOWEL SIGN II
+0B41;CM;ORIYA VOWEL SIGN U
+0B42;CM;ORIYA VOWEL SIGN UU
+0B43;CM;ORIYA VOWEL SIGN VOCALIC R
+0B47;CM;ORIYA VOWEL SIGN E
+0B48;CM;ORIYA VOWEL SIGN AI
+0B4B;CM;ORIYA VOWEL SIGN O
+0B4C;CM;ORIYA VOWEL SIGN AU
+0B4D;CM;ORIYA SIGN VIRAMA
+0B56;CM;ORIYA AI LENGTH MARK
+0B57;CM;ORIYA AU LENGTH MARK
+0B5C;AL;ORIYA LETTER RRA
+0B5D;AL;ORIYA LETTER RHA
+0B5F;AL;ORIYA LETTER YYA
+0B60;AL;ORIYA LETTER VOCALIC RR
+0B61;AL;ORIYA LETTER VOCALIC LL
+0B66;NU;ORIYA DIGIT ZERO
+0B67;NU;ORIYA DIGIT ONE
+0B68;NU;ORIYA DIGIT TWO
+0B69;NU;ORIYA DIGIT THREE
+0B6A;NU;ORIYA DIGIT FOUR
+0B6B;NU;ORIYA DIGIT FIVE
+0B6C;NU;ORIYA DIGIT SIX
+0B6D;NU;ORIYA DIGIT SEVEN
+0B6E;NU;ORIYA DIGIT EIGHT
+0B6F;NU;ORIYA DIGIT NINE
+0B70;AL;ORIYA ISSHAR
+0B82;CM;TAMIL SIGN ANUSVARA
+0B83;CM;TAMIL SIGN VISARGA
+0B85;AL;TAMIL LETTER A
+0B86;AL;TAMIL LETTER AA
+0B87;AL;TAMIL LETTER I
+0B88;AL;TAMIL LETTER II
+0B89;AL;TAMIL LETTER U
+0B8A;AL;TAMIL LETTER UU
+0B8E;AL;TAMIL LETTER E
+0B8F;AL;TAMIL LETTER EE
+0B90;AL;TAMIL LETTER AI
+0B92;AL;TAMIL LETTER O
+0B93;AL;TAMIL LETTER OO
+0B94;AL;TAMIL LETTER AU
+0B95;AL;TAMIL LETTER KA
+0B99;AL;TAMIL LETTER NGA
+0B9A;AL;TAMIL LETTER CA
+0B9C;AL;TAMIL LETTER JA
+0B9E;AL;TAMIL LETTER NYA
+0B9F;AL;TAMIL LETTER TTA
+0BA3;AL;TAMIL LETTER NNA
+0BA4;AL;TAMIL LETTER TA
+0BA8;AL;TAMIL LETTER NA
+0BA9;AL;TAMIL LETTER NNNA
+0BAA;AL;TAMIL LETTER PA
+0BAE;AL;TAMIL LETTER MA
+0BAF;AL;TAMIL LETTER YA
+0BB0;AL;TAMIL LETTER RA
+0BB1;AL;TAMIL LETTER RRA
+0BB2;AL;TAMIL LETTER LA
+0BB3;AL;TAMIL LETTER LLA
+0BB4;AL;TAMIL LETTER LLLA
+0BB5;AL;TAMIL LETTER VA
+0BB7;AL;TAMIL LETTER SSA
+0BB8;AL;TAMIL LETTER SA
+0BB9;AL;TAMIL LETTER HA
+0BBE;CM;TAMIL VOWEL SIGN AA
+0BBF;CM;TAMIL VOWEL SIGN I
+0BC0;CM;TAMIL VOWEL SIGN II
+0BC1;CM;TAMIL VOWEL SIGN U
+0BC2;CM;TAMIL VOWEL SIGN UU
+0BC6;CM;TAMIL VOWEL SIGN E
+0BC7;CM;TAMIL VOWEL SIGN EE
+0BC8;CM;TAMIL VOWEL SIGN AI
+0BCA;CM;TAMIL VOWEL SIGN O
+0BCB;CM;TAMIL VOWEL SIGN OO
+0BCC;CM;TAMIL VOWEL SIGN AU
+0BCD;CM;TAMIL SIGN VIRAMA
+0BD7;CM;TAMIL AU LENGTH MARK
+0BE7;NU;TAMIL DIGIT ONE
+0BE8;NU;TAMIL DIGIT TWO
+0BE9;NU;TAMIL DIGIT THREE
+0BEA;NU;TAMIL DIGIT FOUR
+0BEB;NU;TAMIL DIGIT FIVE
+0BEC;NU;TAMIL DIGIT SIX
+0BED;NU;TAMIL DIGIT SEVEN
+0BEE;NU;TAMIL DIGIT EIGHT
+0BEF;NU;TAMIL DIGIT NINE
+0BF0;AL;TAMIL NUMBER TEN
+0BF1;AL;TAMIL NUMBER ONE HUNDRED
+0BF2;AL;TAMIL NUMBER ONE THOUSAND
+0C01;CM;TELUGU SIGN CANDRABINDU
+0C02;CM;TELUGU SIGN ANUSVARA
+0C03;CM;TELUGU SIGN VISARGA
+0C05;AL;TELUGU LETTER A
+0C06;AL;TELUGU LETTER AA
+0C07;AL;TELUGU LETTER I
+0C08;AL;TELUGU LETTER II
+0C09;AL;TELUGU LETTER U
+0C0A;AL;TELUGU LETTER UU
+0C0B;AL;TELUGU LETTER VOCALIC R
+0C0C;AL;TELUGU LETTER VOCALIC L
+0C0E;AL;TELUGU LETTER E
+0C0F;AL;TELUGU LETTER EE
+0C10;AL;TELUGU LETTER AI
+0C12;AL;TELUGU LETTER O
+0C13;AL;TELUGU LETTER OO
+0C14;AL;TELUGU LETTER AU
+0C15;AL;TELUGU LETTER KA
+0C16;AL;TELUGU LETTER KHA
+0C17;AL;TELUGU LETTER GA
+0C18;AL;TELUGU LETTER GHA
+0C19;AL;TELUGU LETTER NGA
+0C1A;AL;TELUGU LETTER CA
+0C1B;AL;TELUGU LETTER CHA
+0C1C;AL;TELUGU LETTER JA
+0C1D;AL;TELUGU LETTER JHA
+0C1E;AL;TELUGU LETTER NYA
+0C1F;AL;TELUGU LETTER TTA
+0C20;AL;TELUGU LETTER TTHA
+0C21;AL;TELUGU LETTER DDA
+0C22;AL;TELUGU LETTER DDHA
+0C23;AL;TELUGU LETTER NNA
+0C24;AL;TELUGU LETTER TA
+0C25;AL;TELUGU LETTER THA
+0C26;AL;TELUGU LETTER DA
+0C27;AL;TELUGU LETTER DHA
+0C28;AL;TELUGU LETTER NA
+0C2A;AL;TELUGU LETTER PA
+0C2B;AL;TELUGU LETTER PHA
+0C2C;AL;TELUGU LETTER BA
+0C2D;AL;TELUGU LETTER BHA
+0C2E;AL;TELUGU LETTER MA
+0C2F;AL;TELUGU LETTER YA
+0C30;AL;TELUGU LETTER RA
+0C31;AL;TELUGU LETTER RRA
+0C32;AL;TELUGU LETTER LA
+0C33;AL;TELUGU LETTER LLA
+0C35;AL;TELUGU LETTER VA
+0C36;AL;TELUGU LETTER SHA
+0C37;AL;TELUGU LETTER SSA
+0C38;AL;TELUGU LETTER SA
+0C39;AL;TELUGU LETTER HA
+0C3E;CM;TELUGU VOWEL SIGN AA
+0C3F;CM;TELUGU VOWEL SIGN I
+0C40;CM;TELUGU VOWEL SIGN II
+0C41;CM;TELUGU VOWEL SIGN U
+0C42;CM;TELUGU VOWEL SIGN UU
+0C43;CM;TELUGU VOWEL SIGN VOCALIC R
+0C44;CM;TELUGU VOWEL SIGN VOCALIC RR
+0C46;CM;TELUGU VOWEL SIGN E
+0C47;CM;TELUGU VOWEL SIGN EE
+0C48;CM;TELUGU VOWEL SIGN AI
+0C4A;CM;TELUGU VOWEL SIGN O
+0C4B;CM;TELUGU VOWEL SIGN OO
+0C4C;CM;TELUGU VOWEL SIGN AU
+0C4D;CM;TELUGU SIGN VIRAMA
+0C55;CM;TELUGU LENGTH MARK
+0C56;CM;TELUGU AI LENGTH MARK
+0C60;AL;TELUGU LETTER VOCALIC RR
+0C61;AL;TELUGU LETTER VOCALIC LL
+0C66;NU;TELUGU DIGIT ZERO
+0C67;NU;TELUGU DIGIT ONE
+0C68;NU;TELUGU DIGIT TWO
+0C69;NU;TELUGU DIGIT THREE
+0C6A;NU;TELUGU DIGIT FOUR
+0C6B;NU;TELUGU DIGIT FIVE
+0C6C;NU;TELUGU DIGIT SIX
+0C6D;NU;TELUGU DIGIT SEVEN
+0C6E;NU;TELUGU DIGIT EIGHT
+0C6F;NU;TELUGU DIGIT NINE
+0C82;CM;KANNADA SIGN ANUSVARA
+0C83;CM;KANNADA SIGN VISARGA
+0C85;AL;KANNADA LETTER A
+0C86;AL;KANNADA LETTER AA
+0C87;AL;KANNADA LETTER I
+0C88;AL;KANNADA LETTER II
+0C89;AL;KANNADA LETTER U
+0C8A;AL;KANNADA LETTER UU
+0C8B;AL;KANNADA LETTER VOCALIC R
+0C8C;AL;KANNADA LETTER VOCALIC L
+0C8E;AL;KANNADA LETTER E
+0C8F;AL;KANNADA LETTER EE
+0C90;AL;KANNADA LETTER AI
+0C92;AL;KANNADA LETTER O
+0C93;AL;KANNADA LETTER OO
+0C94;AL;KANNADA LETTER AU
+0C95;AL;KANNADA LETTER KA
+0C96;AL;KANNADA LETTER KHA
+0C97;AL;KANNADA LETTER GA
+0C98;AL;KANNADA LETTER GHA
+0C99;AL;KANNADA LETTER NGA
+0C9A;AL;KANNADA LETTER CA
+0C9B;AL;KANNADA LETTER CHA
+0C9C;AL;KANNADA LETTER JA
+0C9D;AL;KANNADA LETTER JHA
+0C9E;AL;KANNADA LETTER NYA
+0C9F;AL;KANNADA LETTER TTA
+0CA0;AL;KANNADA LETTER TTHA
+0CA1;AL;KANNADA LETTER DDA
+0CA2;AL;KANNADA LETTER DDHA
+0CA3;AL;KANNADA LETTER NNA
+0CA4;AL;KANNADA LETTER TA
+0CA5;AL;KANNADA LETTER THA
+0CA6;AL;KANNADA LETTER DA
+0CA7;AL;KANNADA LETTER DHA
+0CA8;AL;KANNADA LETTER NA
+0CAA;AL;KANNADA LETTER PA
+0CAB;AL;KANNADA LETTER PHA
+0CAC;AL;KANNADA LETTER BA
+0CAD;AL;KANNADA LETTER BHA
+0CAE;AL;KANNADA LETTER MA
+0CAF;AL;KANNADA LETTER YA
+0CB0;AL;KANNADA LETTER RA
+0CB1;AL;KANNADA LETTER RRA
+0CB2;AL;KANNADA LETTER LA
+0CB3;AL;KANNADA LETTER LLA
+0CB5;AL;KANNADA LETTER VA
+0CB6;AL;KANNADA LETTER SHA
+0CB7;AL;KANNADA LETTER SSA
+0CB8;AL;KANNADA LETTER SA
+0CB9;AL;KANNADA LETTER HA
+0CBE;CM;KANNADA VOWEL SIGN AA
+0CBF;CM;KANNADA VOWEL SIGN I
+0CC0;CM;KANNADA VOWEL SIGN II
+0CC1;CM;KANNADA VOWEL SIGN U
+0CC2;CM;KANNADA VOWEL SIGN UU
+0CC3;CM;KANNADA VOWEL SIGN VOCALIC R
+0CC4;CM;KANNADA VOWEL SIGN VOCALIC RR
+0CC6;CM;KANNADA VOWEL SIGN E
+0CC7;CM;KANNADA VOWEL SIGN EE
+0CC8;CM;KANNADA VOWEL SIGN AI
+0CCA;CM;KANNADA VOWEL SIGN O
+0CCB;CM;KANNADA VOWEL SIGN OO
+0CCC;CM;KANNADA VOWEL SIGN AU
+0CCD;CM;KANNADA SIGN VIRAMA
+0CD5;CM;KANNADA LENGTH MARK
+0CD6;CM;KANNADA AI LENGTH MARK
+0CDE;AL;KANNADA LETTER FA
+0CE0;AL;KANNADA LETTER VOCALIC RR
+0CE1;AL;KANNADA LETTER VOCALIC LL
+0CE6;NU;KANNADA DIGIT ZERO
+0CE7;NU;KANNADA DIGIT ONE
+0CE8;NU;KANNADA DIGIT TWO
+0CE9;NU;KANNADA DIGIT THREE
+0CEA;NU;KANNADA DIGIT FOUR
+0CEB;NU;KANNADA DIGIT FIVE
+0CEC;NU;KANNADA DIGIT SIX
+0CED;NU;KANNADA DIGIT SEVEN
+0CEE;NU;KANNADA DIGIT EIGHT
+0CEF;NU;KANNADA DIGIT NINE
+0D02;CM;MALAYALAM SIGN ANUSVARA
+0D03;CM;MALAYALAM SIGN VISARGA
+0D05;AL;MALAYALAM LETTER A
+0D06;AL;MALAYALAM LETTER AA
+0D07;AL;MALAYALAM LETTER I
+0D08;AL;MALAYALAM LETTER II
+0D09;AL;MALAYALAM LETTER U
+0D0A;AL;MALAYALAM LETTER UU
+0D0B;AL;MALAYALAM LETTER VOCALIC R
+0D0C;AL;MALAYALAM LETTER VOCALIC L
+0D0E;AL;MALAYALAM LETTER E
+0D0F;AL;MALAYALAM LETTER EE
+0D10;AL;MALAYALAM LETTER AI
+0D12;AL;MALAYALAM LETTER O
+0D13;AL;MALAYALAM LETTER OO
+0D14;AL;MALAYALAM LETTER AU
+0D15;AL;MALAYALAM LETTER KA
+0D16;AL;MALAYALAM LETTER KHA
+0D17;AL;MALAYALAM LETTER GA
+0D18;AL;MALAYALAM LETTER GHA
+0D19;AL;MALAYALAM LETTER NGA
+0D1A;AL;MALAYALAM LETTER CA
+0D1B;AL;MALAYALAM LETTER CHA
+0D1C;AL;MALAYALAM LETTER JA
+0D1D;AL;MALAYALAM LETTER JHA
+0D1E;AL;MALAYALAM LETTER NYA
+0D1F;AL;MALAYALAM LETTER TTA
+0D20;AL;MALAYALAM LETTER TTHA
+0D21;AL;MALAYALAM LETTER DDA
+0D22;AL;MALAYALAM LETTER DDHA
+0D23;AL;MALAYALAM LETTER NNA
+0D24;AL;MALAYALAM LETTER TA
+0D25;AL;MALAYALAM LETTER THA
+0D26;AL;MALAYALAM LETTER DA
+0D27;AL;MALAYALAM LETTER DHA
+0D28;AL;MALAYALAM LETTER NA
+0D2A;AL;MALAYALAM LETTER PA
+0D2B;AL;MALAYALAM LETTER PHA
+0D2C;AL;MALAYALAM LETTER BA
+0D2D;AL;MALAYALAM LETTER BHA
+0D2E;AL;MALAYALAM LETTER MA
+0D2F;AL;MALAYALAM LETTER YA
+0D30;AL;MALAYALAM LETTER RA
+0D31;AL;MALAYALAM LETTER RRA
+0D32;AL;MALAYALAM LETTER LA
+0D33;AL;MALAYALAM LETTER LLA
+0D34;AL;MALAYALAM LETTER LLLA
+0D35;AL;MALAYALAM LETTER VA
+0D36;AL;MALAYALAM LETTER SHA
+0D37;AL;MALAYALAM LETTER SSA
+0D38;AL;MALAYALAM LETTER SA
+0D39;AL;MALAYALAM LETTER HA
+0D3E;CM;MALAYALAM VOWEL SIGN AA
+0D3F;CM;MALAYALAM VOWEL SIGN I
+0D40;CM;MALAYALAM VOWEL SIGN II
+0D41;CM;MALAYALAM VOWEL SIGN U
+0D42;CM;MALAYALAM VOWEL SIGN UU
+0D43;CM;MALAYALAM VOWEL SIGN VOCALIC R
+0D46;CM;MALAYALAM VOWEL SIGN E
+0D47;CM;MALAYALAM VOWEL SIGN EE
+0D48;CM;MALAYALAM VOWEL SIGN AI
+0D4A;CM;MALAYALAM VOWEL SIGN O
+0D4B;CM;MALAYALAM VOWEL SIGN OO
+0D4C;CM;MALAYALAM VOWEL SIGN AU
+0D4D;CM;MALAYALAM SIGN VIRAMA
+0D57;CM;MALAYALAM AU LENGTH MARK
+0D60;AL;MALAYALAM LETTER VOCALIC RR
+0D61;AL;MALAYALAM LETTER VOCALIC LL
+0D66;NU;MALAYALAM DIGIT ZERO
+0D67;NU;MALAYALAM DIGIT ONE
+0D68;NU;MALAYALAM DIGIT TWO
+0D69;NU;MALAYALAM DIGIT THREE
+0D6A;NU;MALAYALAM DIGIT FOUR
+0D6B;NU;MALAYALAM DIGIT FIVE
+0D6C;NU;MALAYALAM DIGIT SIX
+0D6D;NU;MALAYALAM DIGIT SEVEN
+0D6E;NU;MALAYALAM DIGIT EIGHT
+0D6F;NU;MALAYALAM DIGIT NINE
+0D82;CM;SINHALA SIGN ANUSVARAYA
+0D83;CM;SINHALA SIGN VISARGAYA
+0D85;AL;SINHALA LETTER AYANNA
+0D86;AL;SINHALA LETTER AAYANNA
+0D87;AL;SINHALA LETTER AEYANNA
+0D88;AL;SINHALA LETTER AEEYANNA
+0D89;AL;SINHALA LETTER IYANNA
+0D8A;AL;SINHALA LETTER IIYANNA
+0D8B;AL;SINHALA LETTER UYANNA
+0D8C;AL;SINHALA LETTER UUYANNA
+0D8D;AL;SINHALA LETTER IRUYANNA
+0D8E;AL;SINHALA LETTER IRUUYANNA
+0D8F;AL;SINHALA LETTER ILUYANNA
+0D90;AL;SINHALA LETTER ILUUYANNA
+0D91;AL;SINHALA LETTER EYANNA
+0D92;AL;SINHALA LETTER EEYANNA
+0D93;AL;SINHALA LETTER AIYANNA
+0D94;AL;SINHALA LETTER OYANNA
+0D95;AL;SINHALA LETTER OOYANNA
+0D96;AL;SINHALA LETTER AUYANNA
+0D9A;AL;SINHALA LETTER ALPAPRAANA KAYANNA
+0D9B;AL;SINHALA LETTER MAHAAPRAANA KAYANNA
+0D9C;AL;SINHALA LETTER ALPAPRAANA GAYANNA
+0D9D;AL;SINHALA LETTER MAHAAPRAANA GAYANNA
+0D9E;AL;SINHALA LETTER KANTAJA NAASIKYAYA
+0D9F;AL;SINHALA LETTER SANYAKA GAYANNA
+0DA0;AL;SINHALA LETTER ALPAPRAANA CAYANNA
+0DA1;AL;SINHALA LETTER MAHAAPRAANA CAYANNA
+0DA2;AL;SINHALA LETTER ALPAPRAANA JAYANNA
+0DA3;AL;SINHALA LETTER MAHAAPRAANA JAYANNA
+0DA4;AL;SINHALA LETTER TAALUJA NAASIKYAYA
+0DA5;AL;SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA
+0DA6;AL;SINHALA LETTER SANYAKA JAYANNA
+0DA7;AL;SINHALA LETTER ALPAPRAANA TTAYANNA
+0DA8;AL;SINHALA LETTER MAHAAPRAANA TTAYANNA
+0DA9;AL;SINHALA LETTER ALPAPRAANA DDAYANNA
+0DAA;AL;SINHALA LETTER MAHAAPRAANA DDAYANNA
+0DAB;AL;SINHALA LETTER MUURDHAJA NAYANNA
+0DAC;AL;SINHALA LETTER SANYAKA DDAYANNA
+0DAD;AL;SINHALA LETTER ALPAPRAANA TAYANNA
+0DAE;AL;SINHALA LETTER MAHAAPRAANA TAYANNA
+0DAF;AL;SINHALA LETTER ALPAPRAANA DAYANNA
+0DB0;AL;SINHALA LETTER MAHAAPRAANA DAYANNA
+0DB1;AL;SINHALA LETTER DANTAJA NAYANNA
+0DB3;AL;SINHALA LETTER SANYAKA DAYANNA
+0DB4;AL;SINHALA LETTER ALPAPRAANA PAYANNA
+0DB5;AL;SINHALA LETTER MAHAAPRAANA PAYANNA
+0DB6;AL;SINHALA LETTER ALPAPRAANA BAYANNA
+0DB7;AL;SINHALA LETTER MAHAAPRAANA BAYANNA
+0DB8;AL;SINHALA LETTER MAYANNA
+0DB9;AL;SINHALA LETTER AMBA BAYANNA
+0DBA;AL;SINHALA LETTER YAYANNA
+0DBB;AL;SINHALA LETTER RAYANNA
+0DBD;AL;SINHALA LETTER DANTAJA LAYANNA
+0DC0;AL;SINHALA LETTER VAYANNA
+0DC1;AL;SINHALA LETTER TAALUJA SAYANNA
+0DC2;AL;SINHALA LETTER MUURDHAJA SAYANNA
+0DC3;AL;SINHALA LETTER DANTAJA SAYANNA
+0DC4;AL;SINHALA LETTER HAYANNA
+0DC5;AL;SINHALA LETTER MUURDHAJA LAYANNA
+0DC6;AL;SINHALA LETTER FAYANNA
+0DCA;CM;SINHALA SIGN AL-LAKUNA
+0DCF;CM;SINHALA VOWEL SIGN AELA-PILLA
+0DD0;CM;SINHALA VOWEL SIGN KETTI AEDA-PILLA
+0DD1;CM;SINHALA VOWEL SIGN DIGA AEDA-PILLA
+0DD2;CM;SINHALA VOWEL SIGN KETTI IS-PILLA
+0DD3;CM;SINHALA VOWEL SIGN DIGA IS-PILLA
+0DD4;CM;SINHALA VOWEL SIGN KETTI PAA-PILLA
+0DD6;CM;SINHALA VOWEL SIGN DIGA PAA-PILLA
+0DD8;CM;SINHALA VOWEL SIGN GAETTA-PILLA
+0DD9;CM;SINHALA VOWEL SIGN KOMBUVA
+0DDA;CM;SINHALA VOWEL SIGN DIGA KOMBUVA
+0DDB;CM;SINHALA VOWEL SIGN KOMBU DEKA
+0DDC;CM;SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA
+0DDD;CM;SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA
+0DDE;CM;SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA
+0DDF;CM;SINHALA VOWEL SIGN GAYANUKITTA
+0DF2;CM;SINHALA VOWEL SIGN DIGA GAETTA-PILLA
+0DF3;CM;SINHALA VOWEL SIGN DIGA GAYANUKITTA
+0DF4;AL;SINHALA PUNCTUATION KUNDDALIYA
+0E01;SA;THAI CHARACTER KO KAI
+0E02;SA;THAI CHARACTER KHO KHAI
+0E03;SA;THAI CHARACTER KHO KHUAT
+0E04;SA;THAI CHARACTER KHO KHWAI
+0E05;SA;THAI CHARACTER KHO KHON
+0E06;SA;THAI CHARACTER KHO RAKHANG
+0E07;SA;THAI CHARACTER NGO NGU
+0E08;SA;THAI CHARACTER CHO CHAN
+0E09;SA;THAI CHARACTER CHO CHING
+0E0A;SA;THAI CHARACTER CHO CHANG
+0E0B;SA;THAI CHARACTER SO SO
+0E0C;SA;THAI CHARACTER CHO CHOE
+0E0D;SA;THAI CHARACTER YO YING
+0E0E;SA;THAI CHARACTER DO CHADA
+0E0F;SA;THAI CHARACTER TO PATAK
+0E10;SA;THAI CHARACTER THO THAN
+0E11;SA;THAI CHARACTER THO NANGMONTHO
+0E12;SA;THAI CHARACTER THO PHUTHAO
+0E13;SA;THAI CHARACTER NO NEN
+0E14;SA;THAI CHARACTER DO DEK
+0E15;SA;THAI CHARACTER TO TAO
+0E16;SA;THAI CHARACTER THO THUNG
+0E17;SA;THAI CHARACTER THO THAHAN
+0E18;SA;THAI CHARACTER THO THONG
+0E19;SA;THAI CHARACTER NO NU
+0E1A;SA;THAI CHARACTER BO BAIMAI
+0E1B;SA;THAI CHARACTER PO PLA
+0E1C;SA;THAI CHARACTER PHO PHUNG
+0E1D;SA;THAI CHARACTER FO FA
+0E1E;SA;THAI CHARACTER PHO PHAN
+0E1F;SA;THAI CHARACTER FO FAN
+0E20;SA;THAI CHARACTER PHO SAMPHAO
+0E21;SA;THAI CHARACTER MO MA
+0E22;SA;THAI CHARACTER YO YAK
+0E23;SA;THAI CHARACTER RO RUA
+0E24;SA;THAI CHARACTER RU
+0E25;SA;THAI CHARACTER LO LING
+0E26;SA;THAI CHARACTER LU
+0E27;SA;THAI CHARACTER WO WAEN
+0E28;SA;THAI CHARACTER SO SALA
+0E29;SA;THAI CHARACTER SO RUSI
+0E2A;SA;THAI CHARACTER SO SUA
+0E2B;SA;THAI CHARACTER HO HIP
+0E2C;SA;THAI CHARACTER LO CHULA
+0E2D;SA;THAI CHARACTER O ANG
+0E2E;SA;THAI CHARACTER HO NOKHUK
+0E2F;SA;THAI CHARACTER PAIYANNOI
+0E30;SA;THAI CHARACTER SARA A
+0E31;CM;THAI CHARACTER MAI HAN-AKAT
+0E32;SA;THAI CHARACTER SARA AA
+0E33;SA;THAI CHARACTER SARA AM
+0E34;CM;THAI CHARACTER SARA I
+0E35;CM;THAI CHARACTER SARA II
+0E36;CM;THAI CHARACTER SARA UE
+0E37;CM;THAI CHARACTER SARA UEE
+0E38;CM;THAI CHARACTER SARA U
+0E39;CM;THAI CHARACTER SARA UU
+0E3A;CM;THAI CHARACTER PHINTHU
+0E3F;PR;THAI CURRENCY SYMBOL BAHT
+0E40;SA;THAI CHARACTER SARA E
+0E41;SA;THAI CHARACTER SARA AE
+0E42;SA;THAI CHARACTER SARA O
+0E43;SA;THAI CHARACTER SARA AI MAIMUAN
+0E44;SA;THAI CHARACTER SARA AI MAIMALAI
+0E45;SA;THAI CHARACTER LAKKHANGYAO
+0E46;SA;THAI CHARACTER MAIYAMOK
+0E47;CM;THAI CHARACTER MAITAIKHU
+0E48;CM;THAI CHARACTER MAI EK
+0E49;CM;THAI CHARACTER MAI THO
+0E4A;CM;THAI CHARACTER MAI TRI
+0E4B;CM;THAI CHARACTER MAI CHATTAWA
+0E4C;CM;THAI CHARACTER THANTHAKHAT
+0E4D;CM;THAI CHARACTER NIKHAHIT
+0E4E;CM;THAI CHARACTER YAMAKKAN
+0E4F;AL;THAI CHARACTER FONGMAN
+0E50;NU;THAI DIGIT ZERO
+0E51;NU;THAI DIGIT ONE
+0E52;NU;THAI DIGIT TWO
+0E53;NU;THAI DIGIT THREE
+0E54;NU;THAI DIGIT FOUR
+0E55;NU;THAI DIGIT FIVE
+0E56;NU;THAI DIGIT SIX
+0E57;NU;THAI DIGIT SEVEN
+0E58;NU;THAI DIGIT EIGHT
+0E59;NU;THAI DIGIT NINE
+0E5A;NS;THAI CHARACTER ANGKHANKHU
+0E5B;NS;THAI CHARACTER KHOMUT
+0E81;SA;LAO LETTER KO
+0E82;SA;LAO LETTER KHO SUNG
+0E84;SA;LAO LETTER KHO TAM
+0E87;SA;LAO LETTER NGO
+0E88;SA;LAO LETTER CO
+0E8A;SA;LAO LETTER SO TAM
+0E8D;SA;LAO LETTER NYO
+0E94;SA;LAO LETTER DO
+0E95;SA;LAO LETTER TO
+0E96;SA;LAO LETTER THO SUNG
+0E97;SA;LAO LETTER THO TAM
+0E99;SA;LAO LETTER NO
+0E9A;SA;LAO LETTER BO
+0E9B;SA;LAO LETTER PO
+0E9C;SA;LAO LETTER PHO SUNG
+0E9D;SA;LAO LETTER FO TAM
+0E9E;SA;LAO LETTER PHO TAM
+0E9F;SA;LAO LETTER FO SUNG
+0EA1;SA;LAO LETTER MO
+0EA2;SA;LAO LETTER YO
+0EA3;SA;LAO LETTER LO LING
+0EA5;SA;LAO LETTER LO LOOT
+0EA7;SA;LAO LETTER WO
+0EAA;SA;LAO LETTER SO SUNG
+0EAB;SA;LAO LETTER HO SUNG
+0EAD;SA;LAO LETTER O
+0EAE;SA;LAO LETTER HO TAM
+0EAF;SA;LAO ELLIPSIS
+0EB0;SA;LAO VOWEL SIGN A
+0EB1;CM;LAO VOWEL SIGN MAI KAN
+0EB2;SA;LAO VOWEL SIGN AA
+0EB3;SA;LAO VOWEL SIGN AM
+0EB4;CM;LAO VOWEL SIGN I
+0EB5;CM;LAO VOWEL SIGN II
+0EB6;CM;LAO VOWEL SIGN Y
+0EB7;CM;LAO VOWEL SIGN YY
+0EB8;CM;LAO VOWEL SIGN U
+0EB9;CM;LAO VOWEL SIGN UU
+0EBB;CM;LAO VOWEL SIGN MAI KON
+0EBC;CM;LAO SEMIVOWEL SIGN LO
+0EBD;SA;LAO SEMIVOWEL SIGN NYO
+0EC0;SA;LAO VOWEL SIGN E
+0EC1;SA;LAO VOWEL SIGN EI
+0EC2;SA;LAO VOWEL SIGN O
+0EC3;SA;LAO VOWEL SIGN AY
+0EC4;SA;LAO VOWEL SIGN AI
+0EC6;SA;LAO KO LA
+0EC8;CM;LAO TONE MAI EK
+0EC9;CM;LAO TONE MAI THO
+0ECA;CM;LAO TONE MAI TI
+0ECB;CM;LAO TONE MAI CATAWA
+0ECC;CM;LAO CANCELLATION MARK
+0ECD;CM;LAO NIGGAHITA
+0ED0;NU;LAO DIGIT ZERO
+0ED1;NU;LAO DIGIT ONE
+0ED2;NU;LAO DIGIT TWO
+0ED3;NU;LAO DIGIT THREE
+0ED4;NU;LAO DIGIT FOUR
+0ED5;NU;LAO DIGIT FIVE
+0ED6;NU;LAO DIGIT SIX
+0ED7;NU;LAO DIGIT SEVEN
+0ED8;NU;LAO DIGIT EIGHT
+0ED9;NU;LAO DIGIT NINE
+0EDC;SA;LAO HO NO
+0EDD;SA;LAO HO MO
+0F00;AL;TIBETAN SYLLABLE OM
+0F01;AL;TIBETAN MARK GTER YIG MGO TRUNCATED A
+0F02;AL;TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA
+0F03;AL;TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA
+0F04;AL;TIBETAN MARK INITIAL YIG MGO MDUN MA
+0F05;AL;TIBETAN MARK CLOSING YIG MGO SGAB MA
+0F06;AL;TIBETAN MARK CARET YIG MGO PHUR SHAD MA
+0F07;AL;TIBETAN MARK YIG MGO TSHEG SHAD MA
+0F08;AL;TIBETAN MARK SBRUL SHAD
+0F09;AL;TIBETAN MARK BSKUR YIG MGO
+0F0A;AL;TIBETAN MARK BKA- SHOG YIG MGO
+0F0B;BA;TIBETAN MARK INTERSYLLABIC TSHEG
+0F0C;GL;TIBETAN MARK DELIMITER TSHEG BSTAR
+0F0D;AL;TIBETAN MARK SHAD
+0F0E;AL;TIBETAN MARK NYIS SHAD
+0F0F;AL;TIBETAN MARK TSHEG SHAD
+0F10;AL;TIBETAN MARK NYIS TSHEG SHAD
+0F11;AL;TIBETAN MARK RIN CHEN SPUNGS SHAD
+0F12;AL;TIBETAN MARK RGYA GRAM SHAD
+0F13;AL;TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN
+0F14;AL;TIBETAN MARK GTER TSHEG
+0F15;AL;TIBETAN LOGOTYPE SIGN CHAD RTAGS
+0F16;AL;TIBETAN LOGOTYPE SIGN LHAG RTAGS
+0F17;AL;TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS
+0F18;CM;TIBETAN ASTROLOGICAL SIGN -KHYUD PA
+0F19;CM;TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
+0F1A;AL;TIBETAN SIGN RDEL DKAR GCIG
+0F1B;AL;TIBETAN SIGN RDEL DKAR GNYIS
+0F1C;AL;TIBETAN SIGN RDEL DKAR GSUM
+0F1D;AL;TIBETAN SIGN RDEL NAG GCIG
+0F1E;AL;TIBETAN SIGN RDEL NAG GNYIS
+0F1F;AL;TIBETAN SIGN RDEL DKAR RDEL NAG
+0F20;NU;TIBETAN DIGIT ZERO
+0F21;NU;TIBETAN DIGIT ONE
+0F22;NU;TIBETAN DIGIT TWO
+0F23;NU;TIBETAN DIGIT THREE
+0F24;NU;TIBETAN DIGIT FOUR
+0F25;NU;TIBETAN DIGIT FIVE
+0F26;NU;TIBETAN DIGIT SIX
+0F27;NU;TIBETAN DIGIT SEVEN
+0F28;NU;TIBETAN DIGIT EIGHT
+0F29;NU;TIBETAN DIGIT NINE
+0F2A;AL;TIBETAN DIGIT HALF ONE
+0F2B;AL;TIBETAN DIGIT HALF TWO
+0F2C;AL;TIBETAN DIGIT HALF THREE
+0F2D;AL;TIBETAN DIGIT HALF FOUR
+0F2E;AL;TIBETAN DIGIT HALF FIVE
+0F2F;AL;TIBETAN DIGIT HALF SIX
+0F30;AL;TIBETAN DIGIT HALF SEVEN
+0F31;AL;TIBETAN DIGIT HALF EIGHT
+0F32;AL;TIBETAN DIGIT HALF NINE
+0F33;AL;TIBETAN DIGIT HALF ZERO
+0F34;AL;TIBETAN MARK BSDUS RTAGS
+0F35;CM;TIBETAN MARK NGAS BZUNG NYI ZLA
+0F36;AL;TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN
+0F37;CM;TIBETAN MARK NGAS BZUNG SGOR RTAGS
+0F38;AL;TIBETAN MARK CHE MGO
+0F39;CM;TIBETAN MARK TSA -PHRU
+0F3A;OP;TIBETAN MARK GUG RTAGS GYON
+0F3B;CL;TIBETAN MARK GUG RTAGS GYAS
+0F3C;OP;TIBETAN MARK ANG KHANG GYON
+0F3D;CL;TIBETAN MARK ANG KHANG GYAS
+0F3E;CM;TIBETAN SIGN YAR TSHES
+0F3F;CM;TIBETAN SIGN MAR TSHES
+0F40;AL;TIBETAN LETTER KA
+0F41;AL;TIBETAN LETTER KHA
+0F42;AL;TIBETAN LETTER GA
+0F43;AL;TIBETAN LETTER GHA
+0F44;AL;TIBETAN LETTER NGA
+0F45;AL;TIBETAN LETTER CA
+0F46;AL;TIBETAN LETTER CHA
+0F47;AL;TIBETAN LETTER JA
+0F49;AL;TIBETAN LETTER NYA
+0F4A;AL;TIBETAN LETTER TTA
+0F4B;AL;TIBETAN LETTER TTHA
+0F4C;AL;TIBETAN LETTER DDA
+0F4D;AL;TIBETAN LETTER DDHA
+0F4E;AL;TIBETAN LETTER NNA
+0F4F;AL;TIBETAN LETTER TA
+0F50;AL;TIBETAN LETTER THA
+0F51;AL;TIBETAN LETTER DA
+0F52;AL;TIBETAN LETTER DHA
+0F53;AL;TIBETAN LETTER NA
+0F54;AL;TIBETAN LETTER PA
+0F55;AL;TIBETAN LETTER PHA
+0F56;AL;TIBETAN LETTER BA
+0F57;AL;TIBETAN LETTER BHA
+0F58;AL;TIBETAN LETTER MA
+0F59;AL;TIBETAN LETTER TSA
+0F5A;AL;TIBETAN LETTER TSHA
+0F5B;AL;TIBETAN LETTER DZA
+0F5C;AL;TIBETAN LETTER DZHA
+0F5D;AL;TIBETAN LETTER WA
+0F5E;AL;TIBETAN LETTER ZHA
+0F5F;AL;TIBETAN LETTER ZA
+0F60;AL;TIBETAN LETTER -A
+0F61;AL;TIBETAN LETTER YA
+0F62;AL;TIBETAN LETTER RA
+0F63;AL;TIBETAN LETTER LA
+0F64;AL;TIBETAN LETTER SHA
+0F65;AL;TIBETAN LETTER SSA
+0F66;AL;TIBETAN LETTER SA
+0F67;AL;TIBETAN LETTER HA
+0F68;AL;TIBETAN LETTER A
+0F69;AL;TIBETAN LETTER KSSA
+0F6A;AL;TIBETAN LETTER FIXED-FORM RA
+0F71;CM;TIBETAN VOWEL SIGN AA
+0F72;CM;TIBETAN VOWEL SIGN I
+0F73;CM;TIBETAN VOWEL SIGN II
+0F74;CM;TIBETAN VOWEL SIGN U
+0F75;CM;TIBETAN VOWEL SIGN UU
+0F76;CM;TIBETAN VOWEL SIGN VOCALIC R
+0F77;CM;TIBETAN VOWEL SIGN VOCALIC RR
+0F78;CM;TIBETAN VOWEL SIGN VOCALIC L
+0F79;CM;TIBETAN VOWEL SIGN VOCALIC LL
+0F7A;CM;TIBETAN VOWEL SIGN E
+0F7B;CM;TIBETAN VOWEL SIGN EE
+0F7C;CM;TIBETAN VOWEL SIGN O
+0F7D;CM;TIBETAN VOWEL SIGN OO
+0F7E;CM;TIBETAN SIGN RJES SU NGA RO
+0F7F;CM;TIBETAN SIGN RNAM BCAD
+0F80;CM;TIBETAN VOWEL SIGN REVERSED I
+0F81;CM;TIBETAN VOWEL SIGN REVERSED II
+0F82;CM;TIBETAN SIGN NYI ZLA NAA DA
+0F83;CM;TIBETAN SIGN SNA LDAN
+0F84;CM;TIBETAN MARK HALANTA
+0F85;AL;TIBETAN MARK PALUTA
+0F86;CM;TIBETAN SIGN LCI RTAGS
+0F87;CM;TIBETAN SIGN YANG RTAGS
+0F88;AL;TIBETAN SIGN LCE TSA CAN
+0F89;AL;TIBETAN SIGN MCHU CAN
+0F8A;AL;TIBETAN SIGN GRU CAN RGYINGS
+0F8B;AL;TIBETAN SIGN GRU MED RGYINGS
+0F90;CM;TIBETAN SUBJOINED LETTER KA
+0F91;CM;TIBETAN SUBJOINED LETTER KHA
+0F92;CM;TIBETAN SUBJOINED LETTER GA
+0F93;CM;TIBETAN SUBJOINED LETTER GHA
+0F94;CM;TIBETAN SUBJOINED LETTER NGA
+0F95;CM;TIBETAN SUBJOINED LETTER CA
+0F96;CM;TIBETAN SUBJOINED LETTER CHA
+0F97;CM;TIBETAN SUBJOINED LETTER JA
+0F99;CM;TIBETAN SUBJOINED LETTER NYA
+0F9A;CM;TIBETAN SUBJOINED LETTER TTA
+0F9B;CM;TIBETAN SUBJOINED LETTER TTHA
+0F9C;CM;TIBETAN SUBJOINED LETTER DDA
+0F9D;CM;TIBETAN SUBJOINED LETTER DDHA
+0F9E;CM;TIBETAN SUBJOINED LETTER NNA
+0F9F;CM;TIBETAN SUBJOINED LETTER TA
+0FA0;CM;TIBETAN SUBJOINED LETTER THA
+0FA1;CM;TIBETAN SUBJOINED LETTER DA
+0FA2;CM;TIBETAN SUBJOINED LETTER DHA
+0FA3;CM;TIBETAN SUBJOINED LETTER NA
+0FA4;CM;TIBETAN SUBJOINED LETTER PA
+0FA5;CM;TIBETAN SUBJOINED LETTER PHA
+0FA6;CM;TIBETAN SUBJOINED LETTER BA
+0FA7;CM;TIBETAN SUBJOINED LETTER BHA
+0FA8;CM;TIBETAN SUBJOINED LETTER MA
+0FA9;CM;TIBETAN SUBJOINED LETTER TSA
+0FAA;CM;TIBETAN SUBJOINED LETTER TSHA
+0FAB;CM;TIBETAN SUBJOINED LETTER DZA
+0FAC;CM;TIBETAN SUBJOINED LETTER DZHA
+0FAD;CM;TIBETAN SUBJOINED LETTER WA
+0FAE;CM;TIBETAN SUBJOINED LETTER ZHA
+0FAF;CM;TIBETAN SUBJOINED LETTER ZA
+0FB0;CM;TIBETAN SUBJOINED LETTER -A
+0FB1;CM;TIBETAN SUBJOINED LETTER YA
+0FB2;CM;TIBETAN SUBJOINED LETTER RA
+0FB3;CM;TIBETAN SUBJOINED LETTER LA
+0FB4;CM;TIBETAN SUBJOINED LETTER SHA
+0FB5;CM;TIBETAN SUBJOINED LETTER SSA
+0FB6;CM;TIBETAN SUBJOINED LETTER SA
+0FB7;CM;TIBETAN SUBJOINED LETTER HA
+0FB8;CM;TIBETAN SUBJOINED LETTER A
+0FB9;CM;TIBETAN SUBJOINED LETTER KSSA
+0FBA;CM;TIBETAN SUBJOINED LETTER FIXED-FORM WA
+0FBB;CM;TIBETAN SUBJOINED LETTER FIXED-FORM YA
+0FBC;CM;TIBETAN SUBJOINED LETTER FIXED-FORM RA
+0FBE;AL;TIBETAN KU RU KHA
+0FBF;AL;TIBETAN KU RU KHA BZHI MIG CAN
+0FC0;AL;TIBETAN CANTILLATION SIGN HEAVY BEAT
+0FC1;AL;TIBETAN CANTILLATION SIGN LIGHT BEAT
+0FC2;AL;TIBETAN CANTILLATION SIGN CANG TE-U
+0FC3;AL;TIBETAN CANTILLATION SIGN SBUB -CHAL
+0FC4;AL;TIBETAN SYMBOL DRIL BU
+0FC5;AL;TIBETAN SYMBOL RDO RJE
+0FC6;CM;TIBETAN SYMBOL PADMA GDAN
+0FC7;AL;TIBETAN SYMBOL RDO RJE RGYA GRAM
+0FC8;AL;TIBETAN SYMBOL PHUR PA
+0FC9;AL;TIBETAN SYMBOL NOR BU
+0FCA;AL;TIBETAN SYMBOL NOR BU NYIS -KHYIL
+0FCB;AL;TIBETAN SYMBOL NOR BU GSUM -KHYIL
+0FCC;AL;TIBETAN SYMBOL NOR BU BZHI -KHYIL
+0FCF;AL;TIBETAN SIGN RDEL NAG GSUM
+1000;SA;MYANMAR LETTER KA
+1001;SA;MYANMAR LETTER KHA
+1002;SA;MYANMAR LETTER GA
+1003;SA;MYANMAR LETTER GHA
+1004;SA;MYANMAR LETTER NGA
+1005;SA;MYANMAR LETTER CA
+1006;SA;MYANMAR LETTER CHA
+1007;SA;MYANMAR LETTER JA
+1008;SA;MYANMAR LETTER JHA
+1009;SA;MYANMAR LETTER NYA
+100A;SA;MYANMAR LETTER NNYA
+100B;SA;MYANMAR LETTER TTA
+100C;SA;MYANMAR LETTER TTHA
+100D;SA;MYANMAR LETTER DDA
+100E;SA;MYANMAR LETTER DDHA
+100F;SA;MYANMAR LETTER NNA
+1010;SA;MYANMAR LETTER TA
+1011;SA;MYANMAR LETTER THA
+1012;SA;MYANMAR LETTER DA
+1013;SA;MYANMAR LETTER DHA
+1014;SA;MYANMAR LETTER NA
+1015;SA;MYANMAR LETTER PA
+1016;SA;MYANMAR LETTER PHA
+1017;SA;MYANMAR LETTER BA
+1018;SA;MYANMAR LETTER BHA
+1019;SA;MYANMAR LETTER MA
+101A;SA;MYANMAR LETTER YA
+101B;SA;MYANMAR LETTER RA
+101C;SA;MYANMAR LETTER LA
+101D;SA;MYANMAR LETTER WA
+101E;SA;MYANMAR LETTER SA
+101F;SA;MYANMAR LETTER HA
+1020;SA;MYANMAR LETTER LLA
+1021;SA;MYANMAR LETTER A
+1023;SA;MYANMAR LETTER I
+1024;SA;MYANMAR LETTER II
+1025;SA;MYANMAR LETTER U
+1026;SA;MYANMAR LETTER UU
+1027;SA;MYANMAR LETTER E
+1029;SA;MYANMAR LETTER O
+102A;SA;MYANMAR LETTER AU
+102C;CM;MYANMAR VOWEL SIGN AA
+102D;CM;MYANMAR VOWEL SIGN I
+102E;CM;MYANMAR VOWEL SIGN II
+102F;CM;MYANMAR VOWEL SIGN U
+1030;CM;MYANMAR VOWEL SIGN UU
+1031;CM;MYANMAR VOWEL SIGN E
+1032;CM;MYANMAR VOWEL SIGN AI
+1036;CM;MYANMAR SIGN ANUSVARA
+1037;CM;MYANMAR SIGN DOT BELOW
+1038;CM;MYANMAR SIGN VISARGA
+1039;CM;MYANMAR SIGN VIRAMA
+1040;NU;MYANMAR DIGIT ZERO
+1041;NU;MYANMAR DIGIT ONE
+1042;NU;MYANMAR DIGIT TWO
+1043;NU;MYANMAR DIGIT THREE
+1044;NU;MYANMAR DIGIT FOUR
+1045;NU;MYANMAR DIGIT FIVE
+1046;NU;MYANMAR DIGIT SIX
+1047;NU;MYANMAR DIGIT SEVEN
+1048;NU;MYANMAR DIGIT EIGHT
+1049;NU;MYANMAR DIGIT NINE
+104A;AL;MYANMAR SIGN LITTLE SECTION
+104B;AL;MYANMAR SIGN SECTION
+104C;AL;MYANMAR SYMBOL LOCATIVE
+104D;AL;MYANMAR SYMBOL COMPLETED
+104E;AL;MYANMAR SYMBOL AFOREMENTIONED
+104F;AL;MYANMAR SYMBOL GENITIVE
+1050;SA;MYANMAR LETTER SHA
+1051;SA;MYANMAR LETTER SSA
+1052;SA;MYANMAR LETTER VOCALIC R
+1053;SA;MYANMAR LETTER VOCALIC RR
+1054;SA;MYANMAR LETTER VOCALIC L
+1055;SA;MYANMAR LETTER VOCALIC LL
+1056;CM;MYANMAR VOWEL SIGN VOCALIC R
+1057;CM;MYANMAR VOWEL SIGN VOCALIC RR
+1058;CM;MYANMAR VOWEL SIGN VOCALIC L
+1059;CM;MYANMAR VOWEL SIGN VOCALIC LL
+10A0;AL;GEORGIAN CAPITAL LETTER AN
+10A1;AL;GEORGIAN CAPITAL LETTER BAN
+10A2;AL;GEORGIAN CAPITAL LETTER GAN
+10A3;AL;GEORGIAN CAPITAL LETTER DON
+10A4;AL;GEORGIAN CAPITAL LETTER EN
+10A5;AL;GEORGIAN CAPITAL LETTER VIN
+10A6;AL;GEORGIAN CAPITAL LETTER ZEN
+10A7;AL;GEORGIAN CAPITAL LETTER TAN
+10A8;AL;GEORGIAN CAPITAL LETTER IN
+10A9;AL;GEORGIAN CAPITAL LETTER KAN
+10AA;AL;GEORGIAN CAPITAL LETTER LAS
+10AB;AL;GEORGIAN CAPITAL LETTER MAN
+10AC;AL;GEORGIAN CAPITAL LETTER NAR
+10AD;AL;GEORGIAN CAPITAL LETTER ON
+10AE;AL;GEORGIAN CAPITAL LETTER PAR
+10AF;AL;GEORGIAN CAPITAL LETTER ZHAR
+10B0;AL;GEORGIAN CAPITAL LETTER RAE
+10B1;AL;GEORGIAN CAPITAL LETTER SAN
+10B2;AL;GEORGIAN CAPITAL LETTER TAR
+10B3;AL;GEORGIAN CAPITAL LETTER UN
+10B4;AL;GEORGIAN CAPITAL LETTER PHAR
+10B5;AL;GEORGIAN CAPITAL LETTER KHAR
+10B6;AL;GEORGIAN CAPITAL LETTER GHAN
+10B7;AL;GEORGIAN CAPITAL LETTER QAR
+10B8;AL;GEORGIAN CAPITAL LETTER SHIN
+10B9;AL;GEORGIAN CAPITAL LETTER CHIN
+10BA;AL;GEORGIAN CAPITAL LETTER CAN
+10BB;AL;GEORGIAN CAPITAL LETTER JIL
+10BC;AL;GEORGIAN CAPITAL LETTER CIL
+10BD;AL;GEORGIAN CAPITAL LETTER CHAR
+10BE;AL;GEORGIAN CAPITAL LETTER XAN
+10BF;AL;GEORGIAN CAPITAL LETTER JHAN
+10C0;AL;GEORGIAN CAPITAL LETTER HAE
+10C1;AL;GEORGIAN CAPITAL LETTER HE
+10C2;AL;GEORGIAN CAPITAL LETTER HIE
+10C3;AL;GEORGIAN CAPITAL LETTER WE
+10C4;AL;GEORGIAN CAPITAL LETTER HAR
+10C5;AL;GEORGIAN CAPITAL LETTER HOE
+10D0;AL;GEORGIAN LETTER AN
+10D1;AL;GEORGIAN LETTER BAN
+10D2;AL;GEORGIAN LETTER GAN
+10D3;AL;GEORGIAN LETTER DON
+10D4;AL;GEORGIAN LETTER EN
+10D5;AL;GEORGIAN LETTER VIN
+10D6;AL;GEORGIAN LETTER ZEN
+10D7;AL;GEORGIAN LETTER TAN
+10D8;AL;GEORGIAN LETTER IN
+10D9;AL;GEORGIAN LETTER KAN
+10DA;AL;GEORGIAN LETTER LAS
+10DB;AL;GEORGIAN LETTER MAN
+10DC;AL;GEORGIAN LETTER NAR
+10DD;AL;GEORGIAN LETTER ON
+10DE;AL;GEORGIAN LETTER PAR
+10DF;AL;GEORGIAN LETTER ZHAR
+10E0;AL;GEORGIAN LETTER RAE
+10E1;AL;GEORGIAN LETTER SAN
+10E2;AL;GEORGIAN LETTER TAR
+10E3;AL;GEORGIAN LETTER UN
+10E4;AL;GEORGIAN LETTER PHAR
+10E5;AL;GEORGIAN LETTER KHAR
+10E6;AL;GEORGIAN LETTER GHAN
+10E7;AL;GEORGIAN LETTER QAR
+10E8;AL;GEORGIAN LETTER SHIN
+10E9;AL;GEORGIAN LETTER CHIN
+10EA;AL;GEORGIAN LETTER CAN
+10EB;AL;GEORGIAN LETTER JIL
+10EC;AL;GEORGIAN LETTER CIL
+10ED;AL;GEORGIAN LETTER CHAR
+10EE;AL;GEORGIAN LETTER XAN
+10EF;AL;GEORGIAN LETTER JHAN
+10F0;AL;GEORGIAN LETTER HAE
+10F1;AL;GEORGIAN LETTER HE
+10F2;AL;GEORGIAN LETTER HIE
+10F3;AL;GEORGIAN LETTER WE
+10F4;AL;GEORGIAN LETTER HAR
+10F5;AL;GEORGIAN LETTER HOE
+10F6;AL;GEORGIAN LETTER FI
+10FB;AL;GEORGIAN PARAGRAPH SEPARATOR
+1100;ID;HANGUL CHOSEONG KIYEOK
+1101;ID;HANGUL CHOSEONG SSANGKIYEOK
+1102;ID;HANGUL CHOSEONG NIEUN
+1103;ID;HANGUL CHOSEONG TIKEUT
+1104;ID;HANGUL CHOSEONG SSANGTIKEUT
+1105;ID;HANGUL CHOSEONG RIEUL
+1106;ID;HANGUL CHOSEONG MIEUM
+1107;ID;HANGUL CHOSEONG PIEUP
+1108;ID;HANGUL CHOSEONG SSANGPIEUP
+1109;ID;HANGUL CHOSEONG SIOS
+110A;ID;HANGUL CHOSEONG SSANGSIOS
+110B;ID;HANGUL CHOSEONG IEUNG
+110C;ID;HANGUL CHOSEONG CIEUC
+110D;ID;HANGUL CHOSEONG SSANGCIEUC
+110E;ID;HANGUL CHOSEONG CHIEUCH
+110F;ID;HANGUL CHOSEONG KHIEUKH
+1110;ID;HANGUL CHOSEONG THIEUTH
+1111;ID;HANGUL CHOSEONG PHIEUPH
+1112;ID;HANGUL CHOSEONG HIEUH
+1113;ID;HANGUL CHOSEONG NIEUN-KIYEOK
+1114;ID;HANGUL CHOSEONG SSANGNIEUN
+1115;ID;HANGUL CHOSEONG NIEUN-TIKEUT
+1116;ID;HANGUL CHOSEONG NIEUN-PIEUP
+1117;ID;HANGUL CHOSEONG TIKEUT-KIYEOK
+1118;ID;HANGUL CHOSEONG RIEUL-NIEUN
+1119;ID;HANGUL CHOSEONG SSANGRIEUL
+111A;ID;HANGUL CHOSEONG RIEUL-HIEUH
+111B;ID;HANGUL CHOSEONG KAPYEOUNRIEUL
+111C;ID;HANGUL CHOSEONG MIEUM-PIEUP
+111D;ID;HANGUL CHOSEONG KAPYEOUNMIEUM
+111E;ID;HANGUL CHOSEONG PIEUP-KIYEOK
+111F;ID;HANGUL CHOSEONG PIEUP-NIEUN
+1120;ID;HANGUL CHOSEONG PIEUP-TIKEUT
+1121;ID;HANGUL CHOSEONG PIEUP-SIOS
+1122;ID;HANGUL CHOSEONG PIEUP-SIOS-KIYEOK
+1123;ID;HANGUL CHOSEONG PIEUP-SIOS-TIKEUT
+1124;ID;HANGUL CHOSEONG PIEUP-SIOS-PIEUP
+1125;ID;HANGUL CHOSEONG PIEUP-SSANGSIOS
+1126;ID;HANGUL CHOSEONG PIEUP-SIOS-CIEUC
+1127;ID;HANGUL CHOSEONG PIEUP-CIEUC
+1128;ID;HANGUL CHOSEONG PIEUP-CHIEUCH
+1129;ID;HANGUL CHOSEONG PIEUP-THIEUTH
+112A;ID;HANGUL CHOSEONG PIEUP-PHIEUPH
+112B;ID;HANGUL CHOSEONG KAPYEOUNPIEUP
+112C;ID;HANGUL CHOSEONG KAPYEOUNSSANGPIEUP
+112D;ID;HANGUL CHOSEONG SIOS-KIYEOK
+112E;ID;HANGUL CHOSEONG SIOS-NIEUN
+112F;ID;HANGUL CHOSEONG SIOS-TIKEUT
+1130;ID;HANGUL CHOSEONG SIOS-RIEUL
+1131;ID;HANGUL CHOSEONG SIOS-MIEUM
+1132;ID;HANGUL CHOSEONG SIOS-PIEUP
+1133;ID;HANGUL CHOSEONG SIOS-PIEUP-KIYEOK
+1134;ID;HANGUL CHOSEONG SIOS-SSANGSIOS
+1135;ID;HANGUL CHOSEONG SIOS-IEUNG
+1136;ID;HANGUL CHOSEONG SIOS-CIEUC
+1137;ID;HANGUL CHOSEONG SIOS-CHIEUCH
+1138;ID;HANGUL CHOSEONG SIOS-KHIEUKH
+1139;ID;HANGUL CHOSEONG SIOS-THIEUTH
+113A;ID;HANGUL CHOSEONG SIOS-PHIEUPH
+113B;ID;HANGUL CHOSEONG SIOS-HIEUH
+113C;ID;HANGUL CHOSEONG CHITUEUMSIOS
+113D;ID;HANGUL CHOSEONG CHITUEUMSSANGSIOS
+113E;ID;HANGUL CHOSEONG CEONGCHIEUMSIOS
+113F;ID;HANGUL CHOSEONG CEONGCHIEUMSSANGSIOS
+1140;ID;HANGUL CHOSEONG PANSIOS
+1141;ID;HANGUL CHOSEONG IEUNG-KIYEOK
+1142;ID;HANGUL CHOSEONG IEUNG-TIKEUT
+1143;ID;HANGUL CHOSEONG IEUNG-MIEUM
+1144;ID;HANGUL CHOSEONG IEUNG-PIEUP
+1145;ID;HANGUL CHOSEONG IEUNG-SIOS
+1146;ID;HANGUL CHOSEONG IEUNG-PANSIOS
+1147;ID;HANGUL CHOSEONG SSANGIEUNG
+1148;ID;HANGUL CHOSEONG IEUNG-CIEUC
+1149;ID;HANGUL CHOSEONG IEUNG-CHIEUCH
+114A;ID;HANGUL CHOSEONG IEUNG-THIEUTH
+114B;ID;HANGUL CHOSEONG IEUNG-PHIEUPH
+114C;ID;HANGUL CHOSEONG YESIEUNG
+114D;ID;HANGUL CHOSEONG CIEUC-IEUNG
+114E;ID;HANGUL CHOSEONG CHITUEUMCIEUC
+114F;ID;HANGUL CHOSEONG CHITUEUMSSANGCIEUC
+1150;ID;HANGUL CHOSEONG CEONGCHIEUMCIEUC
+1151;ID;HANGUL CHOSEONG CEONGCHIEUMSSANGCIEUC
+1152;ID;HANGUL CHOSEONG CHIEUCH-KHIEUKH
+1153;ID;HANGUL CHOSEONG CHIEUCH-HIEUH
+1154;ID;HANGUL CHOSEONG CHITUEUMCHIEUCH
+1155;ID;HANGUL CHOSEONG CEONGCHIEUMCHIEUCH
+1156;ID;HANGUL CHOSEONG PHIEUPH-PIEUP
+1157;ID;HANGUL CHOSEONG KAPYEOUNPHIEUPH
+1158;ID;HANGUL CHOSEONG SSANGHIEUH
+1159;ID;HANGUL CHOSEONG YEORINHIEUH
+115F;ID;HANGUL CHOSEONG FILLER
+1160;CM;HANGUL JUNGSEONG FILLER
+1161;CM;HANGUL JUNGSEONG A
+1162;CM;HANGUL JUNGSEONG AE
+1163;CM;HANGUL JUNGSEONG YA
+1164;CM;HANGUL JUNGSEONG YAE
+1165;CM;HANGUL JUNGSEONG EO
+1166;CM;HANGUL JUNGSEONG E
+1167;CM;HANGUL JUNGSEONG YEO
+1168;CM;HANGUL JUNGSEONG YE
+1169;CM;HANGUL JUNGSEONG O
+116A;CM;HANGUL JUNGSEONG WA
+116B;CM;HANGUL JUNGSEONG WAE
+116C;CM;HANGUL JUNGSEONG OE
+116D;CM;HANGUL JUNGSEONG YO
+116E;CM;HANGUL JUNGSEONG U
+116F;CM;HANGUL JUNGSEONG WEO
+1170;CM;HANGUL JUNGSEONG WE
+1171;CM;HANGUL JUNGSEONG WI
+1172;CM;HANGUL JUNGSEONG YU
+1173;CM;HANGUL JUNGSEONG EU
+1174;CM;HANGUL JUNGSEONG YI
+1175;CM;HANGUL JUNGSEONG I
+1176;CM;HANGUL JUNGSEONG A-O
+1177;CM;HANGUL JUNGSEONG A-U
+1178;CM;HANGUL JUNGSEONG YA-O
+1179;CM;HANGUL JUNGSEONG YA-YO
+117A;CM;HANGUL JUNGSEONG EO-O
+117B;CM;HANGUL JUNGSEONG EO-U
+117C;CM;HANGUL JUNGSEONG EO-EU
+117D;CM;HANGUL JUNGSEONG YEO-O
+117E;CM;HANGUL JUNGSEONG YEO-U
+117F;CM;HANGUL JUNGSEONG O-EO
+1180;CM;HANGUL JUNGSEONG O-E
+1181;CM;HANGUL JUNGSEONG O-YE
+1182;CM;HANGUL JUNGSEONG O-O
+1183;CM;HANGUL JUNGSEONG O-U
+1184;CM;HANGUL JUNGSEONG YO-YA
+1185;CM;HANGUL JUNGSEONG YO-YAE
+1186;CM;HANGUL JUNGSEONG YO-YEO
+1187;CM;HANGUL JUNGSEONG YO-O
+1188;CM;HANGUL JUNGSEONG YO-I
+1189;CM;HANGUL JUNGSEONG U-A
+118A;CM;HANGUL JUNGSEONG U-AE
+118B;CM;HANGUL JUNGSEONG U-EO-EU
+118C;CM;HANGUL JUNGSEONG U-YE
+118D;CM;HANGUL JUNGSEONG U-U
+118E;CM;HANGUL JUNGSEONG YU-A
+118F;CM;HANGUL JUNGSEONG YU-EO
+1190;CM;HANGUL JUNGSEONG YU-E
+1191;CM;HANGUL JUNGSEONG YU-YEO
+1192;CM;HANGUL JUNGSEONG YU-YE
+1193;CM;HANGUL JUNGSEONG YU-U
+1194;CM;HANGUL JUNGSEONG YU-I
+1195;CM;HANGUL JUNGSEONG EU-U
+1196;CM;HANGUL JUNGSEONG EU-EU
+1197;CM;HANGUL JUNGSEONG YI-U
+1198;CM;HANGUL JUNGSEONG I-A
+1199;CM;HANGUL JUNGSEONG I-YA
+119A;CM;HANGUL JUNGSEONG I-O
+119B;CM;HANGUL JUNGSEONG I-U
+119C;CM;HANGUL JUNGSEONG I-EU
+119D;CM;HANGUL JUNGSEONG I-ARAEA
+119E;CM;HANGUL JUNGSEONG ARAEA
+119F;CM;HANGUL JUNGSEONG ARAEA-EO
+11A0;CM;HANGUL JUNGSEONG ARAEA-U
+11A1;CM;HANGUL JUNGSEONG ARAEA-I
+11A2;CM;HANGUL JUNGSEONG SSANGARAEA
+11A8;CM;HANGUL JONGSEONG KIYEOK
+11A9;CM;HANGUL JONGSEONG SSANGKIYEOK
+11AA;CM;HANGUL JONGSEONG KIYEOK-SIOS
+11AB;CM;HANGUL JONGSEONG NIEUN
+11AC;CM;HANGUL JONGSEONG NIEUN-CIEUC
+11AD;CM;HANGUL JONGSEONG NIEUN-HIEUH
+11AE;CM;HANGUL JONGSEONG TIKEUT
+11AF;CM;HANGUL JONGSEONG RIEUL
+11B0;CM;HANGUL JONGSEONG RIEUL-KIYEOK
+11B1;CM;HANGUL JONGSEONG RIEUL-MIEUM
+11B2;CM;HANGUL JONGSEONG RIEUL-PIEUP
+11B3;CM;HANGUL JONGSEONG RIEUL-SIOS
+11B4;CM;HANGUL JONGSEONG RIEUL-THIEUTH
+11B5;CM;HANGUL JONGSEONG RIEUL-PHIEUPH
+11B6;CM;HANGUL JONGSEONG RIEUL-HIEUH
+11B7;CM;HANGUL JONGSEONG MIEUM
+11B8;CM;HANGUL JONGSEONG PIEUP
+11B9;CM;HANGUL JONGSEONG PIEUP-SIOS
+11BA;CM;HANGUL JONGSEONG SIOS
+11BB;CM;HANGUL JONGSEONG SSANGSIOS
+11BC;CM;HANGUL JONGSEONG IEUNG
+11BD;CM;HANGUL JONGSEONG CIEUC
+11BE;CM;HANGUL JONGSEONG CHIEUCH
+11BF;CM;HANGUL JONGSEONG KHIEUKH
+11C0;CM;HANGUL JONGSEONG THIEUTH
+11C1;CM;HANGUL JONGSEONG PHIEUPH
+11C2;CM;HANGUL JONGSEONG HIEUH
+11C3;CM;HANGUL JONGSEONG KIYEOK-RIEUL
+11C4;CM;HANGUL JONGSEONG KIYEOK-SIOS-KIYEOK
+11C5;CM;HANGUL JONGSEONG NIEUN-KIYEOK
+11C6;CM;HANGUL JONGSEONG NIEUN-TIKEUT
+11C7;CM;HANGUL JONGSEONG NIEUN-SIOS
+11C8;CM;HANGUL JONGSEONG NIEUN-PANSIOS
+11C9;CM;HANGUL JONGSEONG NIEUN-THIEUTH
+11CA;CM;HANGUL JONGSEONG TIKEUT-KIYEOK
+11CB;CM;HANGUL JONGSEONG TIKEUT-RIEUL
+11CC;CM;HANGUL JONGSEONG RIEUL-KIYEOK-SIOS
+11CD;CM;HANGUL JONGSEONG RIEUL-NIEUN
+11CE;CM;HANGUL JONGSEONG RIEUL-TIKEUT
+11CF;CM;HANGUL JONGSEONG RIEUL-TIKEUT-HIEUH
+11D0;CM;HANGUL JONGSEONG SSANGRIEUL
+11D1;CM;HANGUL JONGSEONG RIEUL-MIEUM-KIYEOK
+11D2;CM;HANGUL JONGSEONG RIEUL-MIEUM-SIOS
+11D3;CM;HANGUL JONGSEONG RIEUL-PIEUP-SIOS
+11D4;CM;HANGUL JONGSEONG RIEUL-PIEUP-HIEUH
+11D5;CM;HANGUL JONGSEONG RIEUL-KAPYEOUNPIEUP
+11D6;CM;HANGUL JONGSEONG RIEUL-SSANGSIOS
+11D7;CM;HANGUL JONGSEONG RIEUL-PANSIOS
+11D8;CM;HANGUL JONGSEONG RIEUL-KHIEUKH
+11D9;CM;HANGUL JONGSEONG RIEUL-YEORINHIEUH
+11DA;CM;HANGUL JONGSEONG MIEUM-KIYEOK
+11DB;CM;HANGUL JONGSEONG MIEUM-RIEUL
+11DC;CM;HANGUL JONGSEONG MIEUM-PIEUP
+11DD;CM;HANGUL JONGSEONG MIEUM-SIOS
+11DE;CM;HANGUL JONGSEONG MIEUM-SSANGSIOS
+11DF;CM;HANGUL JONGSEONG MIEUM-PANSIOS
+11E0;CM;HANGUL JONGSEONG MIEUM-CHIEUCH
+11E1;CM;HANGUL JONGSEONG MIEUM-HIEUH
+11E2;CM;HANGUL JONGSEONG KAPYEOUNMIEUM
+11E3;CM;HANGUL JONGSEONG PIEUP-RIEUL
+11E4;CM;HANGUL JONGSEONG PIEUP-PHIEUPH
+11E5;CM;HANGUL JONGSEONG PIEUP-HIEUH
+11E6;CM;HANGUL JONGSEONG KAPYEOUNPIEUP
+11E7;CM;HANGUL JONGSEONG SIOS-KIYEOK
+11E8;CM;HANGUL JONGSEONG SIOS-TIKEUT
+11E9;CM;HANGUL JONGSEONG SIOS-RIEUL
+11EA;CM;HANGUL JONGSEONG SIOS-PIEUP
+11EB;CM;HANGUL JONGSEONG PANSIOS
+11EC;CM;HANGUL JONGSEONG IEUNG-KIYEOK
+11ED;CM;HANGUL JONGSEONG IEUNG-SSANGKIYEOK
+11EE;CM;HANGUL JONGSEONG SSANGIEUNG
+11EF;CM;HANGUL JONGSEONG IEUNG-KHIEUKH
+11F0;CM;HANGUL JONGSEONG YESIEUNG
+11F1;CM;HANGUL JONGSEONG YESIEUNG-SIOS
+11F2;CM;HANGUL JONGSEONG YESIEUNG-PANSIOS
+11F3;CM;HANGUL JONGSEONG PHIEUPH-PIEUP
+11F4;CM;HANGUL JONGSEONG KAPYEOUNPHIEUPH
+11F5;CM;HANGUL JONGSEONG HIEUH-NIEUN
+11F6;CM;HANGUL JONGSEONG HIEUH-RIEUL
+11F7;CM;HANGUL JONGSEONG HIEUH-MIEUM
+11F8;CM;HANGUL JONGSEONG HIEUH-PIEUP
+11F9;CM;HANGUL JONGSEONG YEORINHIEUH
+1200;AL;ETHIOPIC SYLLABLE HA
+1201;AL;ETHIOPIC SYLLABLE HU
+1202;AL;ETHIOPIC SYLLABLE HI
+1203;AL;ETHIOPIC SYLLABLE HAA
+1204;AL;ETHIOPIC SYLLABLE HEE
+1205;AL;ETHIOPIC SYLLABLE HE
+1206;AL;ETHIOPIC SYLLABLE HO
+1208;AL;ETHIOPIC SYLLABLE LA
+1209;AL;ETHIOPIC SYLLABLE LU
+120A;AL;ETHIOPIC SYLLABLE LI
+120B;AL;ETHIOPIC SYLLABLE LAA
+120C;AL;ETHIOPIC SYLLABLE LEE
+120D;AL;ETHIOPIC SYLLABLE LE
+120E;AL;ETHIOPIC SYLLABLE LO
+120F;AL;ETHIOPIC SYLLABLE LWA
+1210;AL;ETHIOPIC SYLLABLE HHA
+1211;AL;ETHIOPIC SYLLABLE HHU
+1212;AL;ETHIOPIC SYLLABLE HHI
+1213;AL;ETHIOPIC SYLLABLE HHAA
+1214;AL;ETHIOPIC SYLLABLE HHEE
+1215;AL;ETHIOPIC SYLLABLE HHE
+1216;AL;ETHIOPIC SYLLABLE HHO
+1217;AL;ETHIOPIC SYLLABLE HHWA
+1218;AL;ETHIOPIC SYLLABLE MA
+1219;AL;ETHIOPIC SYLLABLE MU
+121A;AL;ETHIOPIC SYLLABLE MI
+121B;AL;ETHIOPIC SYLLABLE MAA
+121C;AL;ETHIOPIC SYLLABLE MEE
+121D;AL;ETHIOPIC SYLLABLE ME
+121E;AL;ETHIOPIC SYLLABLE MO
+121F;AL;ETHIOPIC SYLLABLE MWA
+1220;AL;ETHIOPIC SYLLABLE SZA
+1221;AL;ETHIOPIC SYLLABLE SZU
+1222;AL;ETHIOPIC SYLLABLE SZI
+1223;AL;ETHIOPIC SYLLABLE SZAA
+1224;AL;ETHIOPIC SYLLABLE SZEE
+1225;AL;ETHIOPIC SYLLABLE SZE
+1226;AL;ETHIOPIC SYLLABLE SZO
+1227;AL;ETHIOPIC SYLLABLE SZWA
+1228;AL;ETHIOPIC SYLLABLE RA
+1229;AL;ETHIOPIC SYLLABLE RU
+122A;AL;ETHIOPIC SYLLABLE RI
+122B;AL;ETHIOPIC SYLLABLE RAA
+122C;AL;ETHIOPIC SYLLABLE REE
+122D;AL;ETHIOPIC SYLLABLE RE
+122E;AL;ETHIOPIC SYLLABLE RO
+122F;AL;ETHIOPIC SYLLABLE RWA
+1230;AL;ETHIOPIC SYLLABLE SA
+1231;AL;ETHIOPIC SYLLABLE SU
+1232;AL;ETHIOPIC SYLLABLE SI
+1233;AL;ETHIOPIC SYLLABLE SAA
+1234;AL;ETHIOPIC SYLLABLE SEE
+1235;AL;ETHIOPIC SYLLABLE SE
+1236;AL;ETHIOPIC SYLLABLE SO
+1237;AL;ETHIOPIC SYLLABLE SWA
+1238;AL;ETHIOPIC SYLLABLE SHA
+1239;AL;ETHIOPIC SYLLABLE SHU
+123A;AL;ETHIOPIC SYLLABLE SHI
+123B;AL;ETHIOPIC SYLLABLE SHAA
+123C;AL;ETHIOPIC SYLLABLE SHEE
+123D;AL;ETHIOPIC SYLLABLE SHE
+123E;AL;ETHIOPIC SYLLABLE SHO
+123F;AL;ETHIOPIC SYLLABLE SHWA
+1240;AL;ETHIOPIC SYLLABLE QA
+1241;AL;ETHIOPIC SYLLABLE QU
+1242;AL;ETHIOPIC SYLLABLE QI
+1243;AL;ETHIOPIC SYLLABLE QAA
+1244;AL;ETHIOPIC SYLLABLE QEE
+1245;AL;ETHIOPIC SYLLABLE QE
+1246;AL;ETHIOPIC SYLLABLE QO
+1248;AL;ETHIOPIC SYLLABLE QWA
+124A;AL;ETHIOPIC SYLLABLE QWI
+124B;AL;ETHIOPIC SYLLABLE QWAA
+124C;AL;ETHIOPIC SYLLABLE QWEE
+124D;AL;ETHIOPIC SYLLABLE QWE
+1250;AL;ETHIOPIC SYLLABLE QHA
+1251;AL;ETHIOPIC SYLLABLE QHU
+1252;AL;ETHIOPIC SYLLABLE QHI
+1253;AL;ETHIOPIC SYLLABLE QHAA
+1254;AL;ETHIOPIC SYLLABLE QHEE
+1255;AL;ETHIOPIC SYLLABLE QHE
+1256;AL;ETHIOPIC SYLLABLE QHO
+1258;AL;ETHIOPIC SYLLABLE QHWA
+125A;AL;ETHIOPIC SYLLABLE QHWI
+125B;AL;ETHIOPIC SYLLABLE QHWAA
+125C;AL;ETHIOPIC SYLLABLE QHWEE
+125D;AL;ETHIOPIC SYLLABLE QHWE
+1260;AL;ETHIOPIC SYLLABLE BA
+1261;AL;ETHIOPIC SYLLABLE BU
+1262;AL;ETHIOPIC SYLLABLE BI
+1263;AL;ETHIOPIC SYLLABLE BAA
+1264;AL;ETHIOPIC SYLLABLE BEE
+1265;AL;ETHIOPIC SYLLABLE BE
+1266;AL;ETHIOPIC SYLLABLE BO
+1267;AL;ETHIOPIC SYLLABLE BWA
+1268;AL;ETHIOPIC SYLLABLE VA
+1269;AL;ETHIOPIC SYLLABLE VU
+126A;AL;ETHIOPIC SYLLABLE VI
+126B;AL;ETHIOPIC SYLLABLE VAA
+126C;AL;ETHIOPIC SYLLABLE VEE
+126D;AL;ETHIOPIC SYLLABLE VE
+126E;AL;ETHIOPIC SYLLABLE VO
+126F;AL;ETHIOPIC SYLLABLE VWA
+1270;AL;ETHIOPIC SYLLABLE TA
+1271;AL;ETHIOPIC SYLLABLE TU
+1272;AL;ETHIOPIC SYLLABLE TI
+1273;AL;ETHIOPIC SYLLABLE TAA
+1274;AL;ETHIOPIC SYLLABLE TEE
+1275;AL;ETHIOPIC SYLLABLE TE
+1276;AL;ETHIOPIC SYLLABLE TO
+1277;AL;ETHIOPIC SYLLABLE TWA
+1278;AL;ETHIOPIC SYLLABLE CA
+1279;AL;ETHIOPIC SYLLABLE CU
+127A;AL;ETHIOPIC SYLLABLE CI
+127B;AL;ETHIOPIC SYLLABLE CAA
+127C;AL;ETHIOPIC SYLLABLE CEE
+127D;AL;ETHIOPIC SYLLABLE CE
+127E;AL;ETHIOPIC SYLLABLE CO
+127F;AL;ETHIOPIC SYLLABLE CWA
+1280;AL;ETHIOPIC SYLLABLE XA
+1281;AL;ETHIOPIC SYLLABLE XU
+1282;AL;ETHIOPIC SYLLABLE XI
+1283;AL;ETHIOPIC SYLLABLE XAA
+1284;AL;ETHIOPIC SYLLABLE XEE
+1285;AL;ETHIOPIC SYLLABLE XE
+1286;AL;ETHIOPIC SYLLABLE XO
+1288;AL;ETHIOPIC SYLLABLE XWA
+128A;AL;ETHIOPIC SYLLABLE XWI
+128B;AL;ETHIOPIC SYLLABLE XWAA
+128C;AL;ETHIOPIC SYLLABLE XWEE
+128D;AL;ETHIOPIC SYLLABLE XWE
+1290;AL;ETHIOPIC SYLLABLE NA
+1291;AL;ETHIOPIC SYLLABLE NU
+1292;AL;ETHIOPIC SYLLABLE NI
+1293;AL;ETHIOPIC SYLLABLE NAA
+1294;AL;ETHIOPIC SYLLABLE NEE
+1295;AL;ETHIOPIC SYLLABLE NE
+1296;AL;ETHIOPIC SYLLABLE NO
+1297;AL;ETHIOPIC SYLLABLE NWA
+1298;AL;ETHIOPIC SYLLABLE NYA
+1299;AL;ETHIOPIC SYLLABLE NYU
+129A;AL;ETHIOPIC SYLLABLE NYI
+129B;AL;ETHIOPIC SYLLABLE NYAA
+129C;AL;ETHIOPIC SYLLABLE NYEE
+129D;AL;ETHIOPIC SYLLABLE NYE
+129E;AL;ETHIOPIC SYLLABLE NYO
+129F;AL;ETHIOPIC SYLLABLE NYWA
+12A0;AL;ETHIOPIC SYLLABLE GLOTTAL A
+12A1;AL;ETHIOPIC SYLLABLE GLOTTAL U
+12A2;AL;ETHIOPIC SYLLABLE GLOTTAL I
+12A3;AL;ETHIOPIC SYLLABLE GLOTTAL AA
+12A4;AL;ETHIOPIC SYLLABLE GLOTTAL EE
+12A5;AL;ETHIOPIC SYLLABLE GLOTTAL E
+12A6;AL;ETHIOPIC SYLLABLE GLOTTAL O
+12A7;AL;ETHIOPIC SYLLABLE GLOTTAL WA
+12A8;AL;ETHIOPIC SYLLABLE KA
+12A9;AL;ETHIOPIC SYLLABLE KU
+12AA;AL;ETHIOPIC SYLLABLE KI
+12AB;AL;ETHIOPIC SYLLABLE KAA
+12AC;AL;ETHIOPIC SYLLABLE KEE
+12AD;AL;ETHIOPIC SYLLABLE KE
+12AE;AL;ETHIOPIC SYLLABLE KO
+12B0;AL;ETHIOPIC SYLLABLE KWA
+12B2;AL;ETHIOPIC SYLLABLE KWI
+12B3;AL;ETHIOPIC SYLLABLE KWAA
+12B4;AL;ETHIOPIC SYLLABLE KWEE
+12B5;AL;ETHIOPIC SYLLABLE KWE
+12B8;AL;ETHIOPIC SYLLABLE KXA
+12B9;AL;ETHIOPIC SYLLABLE KXU
+12BA;AL;ETHIOPIC SYLLABLE KXI
+12BB;AL;ETHIOPIC SYLLABLE KXAA
+12BC;AL;ETHIOPIC SYLLABLE KXEE
+12BD;AL;ETHIOPIC SYLLABLE KXE
+12BE;AL;ETHIOPIC SYLLABLE KXO
+12C0;AL;ETHIOPIC SYLLABLE KXWA
+12C2;AL;ETHIOPIC SYLLABLE KXWI
+12C3;AL;ETHIOPIC SYLLABLE KXWAA
+12C4;AL;ETHIOPIC SYLLABLE KXWEE
+12C5;AL;ETHIOPIC SYLLABLE KXWE
+12C8;AL;ETHIOPIC SYLLABLE WA
+12C9;AL;ETHIOPIC SYLLABLE WU
+12CA;AL;ETHIOPIC SYLLABLE WI
+12CB;AL;ETHIOPIC SYLLABLE WAA
+12CC;AL;ETHIOPIC SYLLABLE WEE
+12CD;AL;ETHIOPIC SYLLABLE WE
+12CE;AL;ETHIOPIC SYLLABLE WO
+12D0;AL;ETHIOPIC SYLLABLE PHARYNGEAL A
+12D1;AL;ETHIOPIC SYLLABLE PHARYNGEAL U
+12D2;AL;ETHIOPIC SYLLABLE PHARYNGEAL I
+12D3;AL;ETHIOPIC SYLLABLE PHARYNGEAL AA
+12D4;AL;ETHIOPIC SYLLABLE PHARYNGEAL EE
+12D5;AL;ETHIOPIC SYLLABLE PHARYNGEAL E
+12D6;AL;ETHIOPIC SYLLABLE PHARYNGEAL O
+12D8;AL;ETHIOPIC SYLLABLE ZA
+12D9;AL;ETHIOPIC SYLLABLE ZU
+12DA;AL;ETHIOPIC SYLLABLE ZI
+12DB;AL;ETHIOPIC SYLLABLE ZAA
+12DC;AL;ETHIOPIC SYLLABLE ZEE
+12DD;AL;ETHIOPIC SYLLABLE ZE
+12DE;AL;ETHIOPIC SYLLABLE ZO
+12DF;AL;ETHIOPIC SYLLABLE ZWA
+12E0;AL;ETHIOPIC SYLLABLE ZHA
+12E1;AL;ETHIOPIC SYLLABLE ZHU
+12E2;AL;ETHIOPIC SYLLABLE ZHI
+12E3;AL;ETHIOPIC SYLLABLE ZHAA
+12E4;AL;ETHIOPIC SYLLABLE ZHEE
+12E5;AL;ETHIOPIC SYLLABLE ZHE
+12E6;AL;ETHIOPIC SYLLABLE ZHO
+12E7;AL;ETHIOPIC SYLLABLE ZHWA
+12E8;AL;ETHIOPIC SYLLABLE YA
+12E9;AL;ETHIOPIC SYLLABLE YU
+12EA;AL;ETHIOPIC SYLLABLE YI
+12EB;AL;ETHIOPIC SYLLABLE YAA
+12EC;AL;ETHIOPIC SYLLABLE YEE
+12ED;AL;ETHIOPIC SYLLABLE YE
+12EE;AL;ETHIOPIC SYLLABLE YO
+12F0;AL;ETHIOPIC SYLLABLE DA
+12F1;AL;ETHIOPIC SYLLABLE DU
+12F2;AL;ETHIOPIC SYLLABLE DI
+12F3;AL;ETHIOPIC SYLLABLE DAA
+12F4;AL;ETHIOPIC SYLLABLE DEE
+12F5;AL;ETHIOPIC SYLLABLE DE
+12F6;AL;ETHIOPIC SYLLABLE DO
+12F7;AL;ETHIOPIC SYLLABLE DWA
+12F8;AL;ETHIOPIC SYLLABLE DDA
+12F9;AL;ETHIOPIC SYLLABLE DDU
+12FA;AL;ETHIOPIC SYLLABLE DDI
+12FB;AL;ETHIOPIC SYLLABLE DDAA
+12FC;AL;ETHIOPIC SYLLABLE DDEE
+12FD;AL;ETHIOPIC SYLLABLE DDE
+12FE;AL;ETHIOPIC SYLLABLE DDO
+12FF;AL;ETHIOPIC SYLLABLE DDWA
+1300;AL;ETHIOPIC SYLLABLE JA
+1301;AL;ETHIOPIC SYLLABLE JU
+1302;AL;ETHIOPIC SYLLABLE JI
+1303;AL;ETHIOPIC SYLLABLE JAA
+1304;AL;ETHIOPIC SYLLABLE JEE
+1305;AL;ETHIOPIC SYLLABLE JE
+1306;AL;ETHIOPIC SYLLABLE JO
+1307;AL;ETHIOPIC SYLLABLE JWA
+1308;AL;ETHIOPIC SYLLABLE GA
+1309;AL;ETHIOPIC SYLLABLE GU
+130A;AL;ETHIOPIC SYLLABLE GI
+130B;AL;ETHIOPIC SYLLABLE GAA
+130C;AL;ETHIOPIC SYLLABLE GEE
+130D;AL;ETHIOPIC SYLLABLE GE
+130E;AL;ETHIOPIC SYLLABLE GO
+1310;AL;ETHIOPIC SYLLABLE GWA
+1312;AL;ETHIOPIC SYLLABLE GWI
+1313;AL;ETHIOPIC SYLLABLE GWAA
+1314;AL;ETHIOPIC SYLLABLE GWEE
+1315;AL;ETHIOPIC SYLLABLE GWE
+1318;AL;ETHIOPIC SYLLABLE GGA
+1319;AL;ETHIOPIC SYLLABLE GGU
+131A;AL;ETHIOPIC SYLLABLE GGI
+131B;AL;ETHIOPIC SYLLABLE GGAA
+131C;AL;ETHIOPIC SYLLABLE GGEE
+131D;AL;ETHIOPIC SYLLABLE GGE
+131E;AL;ETHIOPIC SYLLABLE GGO
+1320;AL;ETHIOPIC SYLLABLE THA
+1321;AL;ETHIOPIC SYLLABLE THU
+1322;AL;ETHIOPIC SYLLABLE THI
+1323;AL;ETHIOPIC SYLLABLE THAA
+1324;AL;ETHIOPIC SYLLABLE THEE
+1325;AL;ETHIOPIC SYLLABLE THE
+1326;AL;ETHIOPIC SYLLABLE THO
+1327;AL;ETHIOPIC SYLLABLE THWA
+1328;AL;ETHIOPIC SYLLABLE CHA
+1329;AL;ETHIOPIC SYLLABLE CHU
+132A;AL;ETHIOPIC SYLLABLE CHI
+132B;AL;ETHIOPIC SYLLABLE CHAA
+132C;AL;ETHIOPIC SYLLABLE CHEE
+132D;AL;ETHIOPIC SYLLABLE CHE
+132E;AL;ETHIOPIC SYLLABLE CHO
+132F;AL;ETHIOPIC SYLLABLE CHWA
+1330;AL;ETHIOPIC SYLLABLE PHA
+1331;AL;ETHIOPIC SYLLABLE PHU
+1332;AL;ETHIOPIC SYLLABLE PHI
+1333;AL;ETHIOPIC SYLLABLE PHAA
+1334;AL;ETHIOPIC SYLLABLE PHEE
+1335;AL;ETHIOPIC SYLLABLE PHE
+1336;AL;ETHIOPIC SYLLABLE PHO
+1337;AL;ETHIOPIC SYLLABLE PHWA
+1338;AL;ETHIOPIC SYLLABLE TSA
+1339;AL;ETHIOPIC SYLLABLE TSU
+133A;AL;ETHIOPIC SYLLABLE TSI
+133B;AL;ETHIOPIC SYLLABLE TSAA
+133C;AL;ETHIOPIC SYLLABLE TSEE
+133D;AL;ETHIOPIC SYLLABLE TSE
+133E;AL;ETHIOPIC SYLLABLE TSO
+133F;AL;ETHIOPIC SYLLABLE TSWA
+1340;AL;ETHIOPIC SYLLABLE TZA
+1341;AL;ETHIOPIC SYLLABLE TZU
+1342;AL;ETHIOPIC SYLLABLE TZI
+1343;AL;ETHIOPIC SYLLABLE TZAA
+1344;AL;ETHIOPIC SYLLABLE TZEE
+1345;AL;ETHIOPIC SYLLABLE TZE
+1346;AL;ETHIOPIC SYLLABLE TZO
+1348;AL;ETHIOPIC SYLLABLE FA
+1349;AL;ETHIOPIC SYLLABLE FU
+134A;AL;ETHIOPIC SYLLABLE FI
+134B;AL;ETHIOPIC SYLLABLE FAA
+134C;AL;ETHIOPIC SYLLABLE FEE
+134D;AL;ETHIOPIC SYLLABLE FE
+134E;AL;ETHIOPIC SYLLABLE FO
+134F;AL;ETHIOPIC SYLLABLE FWA
+1350;AL;ETHIOPIC SYLLABLE PA
+1351;AL;ETHIOPIC SYLLABLE PU
+1352;AL;ETHIOPIC SYLLABLE PI
+1353;AL;ETHIOPIC SYLLABLE PAA
+1354;AL;ETHIOPIC SYLLABLE PEE
+1355;AL;ETHIOPIC SYLLABLE PE
+1356;AL;ETHIOPIC SYLLABLE PO
+1357;AL;ETHIOPIC SYLLABLE PWA
+1358;AL;ETHIOPIC SYLLABLE RYA
+1359;AL;ETHIOPIC SYLLABLE MYA
+135A;AL;ETHIOPIC SYLLABLE FYA
+1361;BA;ETHIOPIC WORDSPACE
+1362;AL;ETHIOPIC FULL STOP
+1363;AL;ETHIOPIC COMMA
+1364;AL;ETHIOPIC SEMICOLON
+1365;AL;ETHIOPIC COLON
+1366;AL;ETHIOPIC PREFACE COLON
+1367;AL;ETHIOPIC QUESTION MARK
+1368;AL;ETHIOPIC PARAGRAPH SEPARATOR
+1369;NU;ETHIOPIC DIGIT ONE
+136A;NU;ETHIOPIC DIGIT TWO
+136B;NU;ETHIOPIC DIGIT THREE
+136C;NU;ETHIOPIC DIGIT FOUR
+136D;NU;ETHIOPIC DIGIT FIVE
+136E;NU;ETHIOPIC DIGIT SIX
+136F;NU;ETHIOPIC DIGIT SEVEN
+1370;NU;ETHIOPIC DIGIT EIGHT
+1371;NU;ETHIOPIC DIGIT NINE
+1372;AL;ETHIOPIC NUMBER TEN
+1373;AL;ETHIOPIC NUMBER TWENTY
+1374;AL;ETHIOPIC NUMBER THIRTY
+1375;AL;ETHIOPIC NUMBER FORTY
+1376;AL;ETHIOPIC NUMBER FIFTY
+1377;AL;ETHIOPIC NUMBER SIXTY
+1378;AL;ETHIOPIC NUMBER SEVENTY
+1379;AL;ETHIOPIC NUMBER EIGHTY
+137A;AL;ETHIOPIC NUMBER NINETY
+137B;AL;ETHIOPIC NUMBER HUNDRED
+137C;AL;ETHIOPIC NUMBER TEN THOUSAND
+13A0;AL;CHEROKEE LETTER A
+13A1;AL;CHEROKEE LETTER E
+13A2;AL;CHEROKEE LETTER I
+13A3;AL;CHEROKEE LETTER O
+13A4;AL;CHEROKEE LETTER U
+13A5;AL;CHEROKEE LETTER V
+13A6;AL;CHEROKEE LETTER GA
+13A7;AL;CHEROKEE LETTER KA
+13A8;AL;CHEROKEE LETTER GE
+13A9;AL;CHEROKEE LETTER GI
+13AA;AL;CHEROKEE LETTER GO
+13AB;AL;CHEROKEE LETTER GU
+13AC;AL;CHEROKEE LETTER GV
+13AD;AL;CHEROKEE LETTER HA
+13AE;AL;CHEROKEE LETTER HE
+13AF;AL;CHEROKEE LETTER HI
+13B0;AL;CHEROKEE LETTER HO
+13B1;AL;CHEROKEE LETTER HU
+13B2;AL;CHEROKEE LETTER HV
+13B3;AL;CHEROKEE LETTER LA
+13B4;AL;CHEROKEE LETTER LE
+13B5;AL;CHEROKEE LETTER LI
+13B6;AL;CHEROKEE LETTER LO
+13B7;AL;CHEROKEE LETTER LU
+13B8;AL;CHEROKEE LETTER LV
+13B9;AL;CHEROKEE LETTER MA
+13BA;AL;CHEROKEE LETTER ME
+13BB;AL;CHEROKEE LETTER MI
+13BC;AL;CHEROKEE LETTER MO
+13BD;AL;CHEROKEE LETTER MU
+13BE;AL;CHEROKEE LETTER NA
+13BF;AL;CHEROKEE LETTER HNA
+13C0;AL;CHEROKEE LETTER NAH
+13C1;AL;CHEROKEE LETTER NE
+13C2;AL;CHEROKEE LETTER NI
+13C3;AL;CHEROKEE LETTER NO
+13C4;AL;CHEROKEE LETTER NU
+13C5;AL;CHEROKEE LETTER NV
+13C6;AL;CHEROKEE LETTER QUA
+13C7;AL;CHEROKEE LETTER QUE
+13C8;AL;CHEROKEE LETTER QUI
+13C9;AL;CHEROKEE LETTER QUO
+13CA;AL;CHEROKEE LETTER QUU
+13CB;AL;CHEROKEE LETTER QUV
+13CC;AL;CHEROKEE LETTER SA
+13CD;AL;CHEROKEE LETTER S
+13CE;AL;CHEROKEE LETTER SE
+13CF;AL;CHEROKEE LETTER SI
+13D0;AL;CHEROKEE LETTER SO
+13D1;AL;CHEROKEE LETTER SU
+13D2;AL;CHEROKEE LETTER SV
+13D3;AL;CHEROKEE LETTER DA
+13D4;AL;CHEROKEE LETTER TA
+13D5;AL;CHEROKEE LETTER DE
+13D6;AL;CHEROKEE LETTER TE
+13D7;AL;CHEROKEE LETTER DI
+13D8;AL;CHEROKEE LETTER TI
+13D9;AL;CHEROKEE LETTER DO
+13DA;AL;CHEROKEE LETTER DU
+13DB;AL;CHEROKEE LETTER DV
+13DC;AL;CHEROKEE LETTER DLA
+13DD;AL;CHEROKEE LETTER TLA
+13DE;AL;CHEROKEE LETTER TLE
+13DF;AL;CHEROKEE LETTER TLI
+13E0;AL;CHEROKEE LETTER TLO
+13E1;AL;CHEROKEE LETTER TLU
+13E2;AL;CHEROKEE LETTER TLV
+13E3;AL;CHEROKEE LETTER TSA
+13E4;AL;CHEROKEE LETTER TSE
+13E5;AL;CHEROKEE LETTER TSI
+13E6;AL;CHEROKEE LETTER TSO
+13E7;AL;CHEROKEE LETTER TSU
+13E8;AL;CHEROKEE LETTER TSV
+13E9;AL;CHEROKEE LETTER WA
+13EA;AL;CHEROKEE LETTER WE
+13EB;AL;CHEROKEE LETTER WI
+13EC;AL;CHEROKEE LETTER WO
+13ED;AL;CHEROKEE LETTER WU
+13EE;AL;CHEROKEE LETTER WV
+13EF;AL;CHEROKEE LETTER YA
+13F0;AL;CHEROKEE LETTER YE
+13F1;AL;CHEROKEE LETTER YI
+13F2;AL;CHEROKEE LETTER YO
+13F3;AL;CHEROKEE LETTER YU
+13F4;AL;CHEROKEE LETTER YV
+1401;AL;CANADIAN SYLLABICS E
+1402;AL;CANADIAN SYLLABICS AAI
+1403;AL;CANADIAN SYLLABICS I
+1404;AL;CANADIAN SYLLABICS II
+1405;AL;CANADIAN SYLLABICS O
+1406;AL;CANADIAN SYLLABICS OO
+1407;AL;CANADIAN SYLLABICS Y-CREE OO
+1408;AL;CANADIAN SYLLABICS CARRIER EE
+1409;AL;CANADIAN SYLLABICS CARRIER I
+140A;AL;CANADIAN SYLLABICS A
+140B;AL;CANADIAN SYLLABICS AA
+140C;AL;CANADIAN SYLLABICS WE
+140D;AL;CANADIAN SYLLABICS WEST-CREE WE
+140E;AL;CANADIAN SYLLABICS WI
+140F;AL;CANADIAN SYLLABICS WEST-CREE WI
+1410;AL;CANADIAN SYLLABICS WII
+1411;AL;CANADIAN SYLLABICS WEST-CREE WII
+1412;AL;CANADIAN SYLLABICS WO
+1413;AL;CANADIAN SYLLABICS WEST-CREE WO
+1414;AL;CANADIAN SYLLABICS WOO
+1415;AL;CANADIAN SYLLABICS WEST-CREE WOO
+1416;AL;CANADIAN SYLLABICS NASKAPI WOO
+1417;AL;CANADIAN SYLLABICS WA
+1418;AL;CANADIAN SYLLABICS WEST-CREE WA
+1419;AL;CANADIAN SYLLABICS WAA
+141A;AL;CANADIAN SYLLABICS WEST-CREE WAA
+141B;AL;CANADIAN SYLLABICS NASKAPI WAA
+141C;AL;CANADIAN SYLLABICS AI
+141D;AL;CANADIAN SYLLABICS Y-CREE W
+141E;AL;CANADIAN SYLLABICS GLOTTAL STOP
+141F;AL;CANADIAN SYLLABICS FINAL ACUTE
+1420;AL;CANADIAN SYLLABICS FINAL GRAVE
+1421;AL;CANADIAN SYLLABICS FINAL BOTTOM HALF RING
+1422;AL;CANADIAN SYLLABICS FINAL TOP HALF RING
+1423;AL;CANADIAN SYLLABICS FINAL RIGHT HALF RING
+1424;AL;CANADIAN SYLLABICS FINAL RING
+1425;AL;CANADIAN SYLLABICS FINAL DOUBLE ACUTE
+1426;AL;CANADIAN SYLLABICS FINAL DOUBLE SHORT VERTICAL STROKES
+1427;AL;CANADIAN SYLLABICS FINAL MIDDLE DOT
+1428;AL;CANADIAN SYLLABICS FINAL SHORT HORIZONTAL STROKE
+1429;AL;CANADIAN SYLLABICS FINAL PLUS
+142A;AL;CANADIAN SYLLABICS FINAL DOWN TACK
+142B;AL;CANADIAN SYLLABICS EN
+142C;AL;CANADIAN SYLLABICS IN
+142D;AL;CANADIAN SYLLABICS ON
+142E;AL;CANADIAN SYLLABICS AN
+142F;AL;CANADIAN SYLLABICS PE
+1430;AL;CANADIAN SYLLABICS PAAI
+1431;AL;CANADIAN SYLLABICS PI
+1432;AL;CANADIAN SYLLABICS PII
+1433;AL;CANADIAN SYLLABICS PO
+1434;AL;CANADIAN SYLLABICS POO
+1435;AL;CANADIAN SYLLABICS Y-CREE POO
+1436;AL;CANADIAN SYLLABICS CARRIER HEE
+1437;AL;CANADIAN SYLLABICS CARRIER HI
+1438;AL;CANADIAN SYLLABICS PA
+1439;AL;CANADIAN SYLLABICS PAA
+143A;AL;CANADIAN SYLLABICS PWE
+143B;AL;CANADIAN SYLLABICS WEST-CREE PWE
+143C;AL;CANADIAN SYLLABICS PWI
+143D;AL;CANADIAN SYLLABICS WEST-CREE PWI
+143E;AL;CANADIAN SYLLABICS PWII
+143F;AL;CANADIAN SYLLABICS WEST-CREE PWII
+1440;AL;CANADIAN SYLLABICS PWO
+1441;AL;CANADIAN SYLLABICS WEST-CREE PWO
+1442;AL;CANADIAN SYLLABICS PWOO
+1443;AL;CANADIAN SYLLABICS WEST-CREE PWOO
+1444;AL;CANADIAN SYLLABICS PWA
+1445;AL;CANADIAN SYLLABICS WEST-CREE PWA
+1446;AL;CANADIAN SYLLABICS PWAA
+1447;AL;CANADIAN SYLLABICS WEST-CREE PWAA
+1448;AL;CANADIAN SYLLABICS Y-CREE PWAA
+1449;AL;CANADIAN SYLLABICS P
+144A;AL;CANADIAN SYLLABICS WEST-CREE P
+144B;AL;CANADIAN SYLLABICS CARRIER H
+144C;AL;CANADIAN SYLLABICS TE
+144D;AL;CANADIAN SYLLABICS TAAI
+144E;AL;CANADIAN SYLLABICS TI
+144F;AL;CANADIAN SYLLABICS TII
+1450;AL;CANADIAN SYLLABICS TO
+1451;AL;CANADIAN SYLLABICS TOO
+1452;AL;CANADIAN SYLLABICS Y-CREE TOO
+1453;AL;CANADIAN SYLLABICS CARRIER DEE
+1454;AL;CANADIAN SYLLABICS CARRIER DI
+1455;AL;CANADIAN SYLLABICS TA
+1456;AL;CANADIAN SYLLABICS TAA
+1457;AL;CANADIAN SYLLABICS TWE
+1458;AL;CANADIAN SYLLABICS WEST-CREE TWE
+1459;AL;CANADIAN SYLLABICS TWI
+145A;AL;CANADIAN SYLLABICS WEST-CREE TWI
+145B;AL;CANADIAN SYLLABICS TWII
+145C;AL;CANADIAN SYLLABICS WEST-CREE TWII
+145D;AL;CANADIAN SYLLABICS TWO
+145E;AL;CANADIAN SYLLABICS WEST-CREE TWO
+145F;AL;CANADIAN SYLLABICS TWOO
+1460;AL;CANADIAN SYLLABICS WEST-CREE TWOO
+1461;AL;CANADIAN SYLLABICS TWA
+1462;AL;CANADIAN SYLLABICS WEST-CREE TWA
+1463;AL;CANADIAN SYLLABICS TWAA
+1464;AL;CANADIAN SYLLABICS WEST-CREE TWAA
+1465;AL;CANADIAN SYLLABICS NASKAPI TWAA
+1466;AL;CANADIAN SYLLABICS T
+1467;AL;CANADIAN SYLLABICS TTE
+1468;AL;CANADIAN SYLLABICS TTI
+1469;AL;CANADIAN SYLLABICS TTO
+146A;AL;CANADIAN SYLLABICS TTA
+146B;AL;CANADIAN SYLLABICS KE
+146C;AL;CANADIAN SYLLABICS KAAI
+146D;AL;CANADIAN SYLLABICS KI
+146E;AL;CANADIAN SYLLABICS KII
+146F;AL;CANADIAN SYLLABICS KO
+1470;AL;CANADIAN SYLLABICS KOO
+1471;AL;CANADIAN SYLLABICS Y-CREE KOO
+1472;AL;CANADIAN SYLLABICS KA
+1473;AL;CANADIAN SYLLABICS KAA
+1474;AL;CANADIAN SYLLABICS KWE
+1475;AL;CANADIAN SYLLABICS WEST-CREE KWE
+1476;AL;CANADIAN SYLLABICS KWI
+1477;AL;CANADIAN SYLLABICS WEST-CREE KWI
+1478;AL;CANADIAN SYLLABICS KWII
+1479;AL;CANADIAN SYLLABICS WEST-CREE KWII
+147A;AL;CANADIAN SYLLABICS KWO
+147B;AL;CANADIAN SYLLABICS WEST-CREE KWO
+147C;AL;CANADIAN SYLLABICS KWOO
+147D;AL;CANADIAN SYLLABICS WEST-CREE KWOO
+147E;AL;CANADIAN SYLLABICS KWA
+147F;AL;CANADIAN SYLLABICS WEST-CREE KWA
+1480;AL;CANADIAN SYLLABICS KWAA
+1481;AL;CANADIAN SYLLABICS WEST-CREE KWAA
+1482;AL;CANADIAN SYLLABICS NASKAPI KWAA
+1483;AL;CANADIAN SYLLABICS K
+1484;AL;CANADIAN SYLLABICS KW
+1485;AL;CANADIAN SYLLABICS SOUTH-SLAVEY KEH
+1486;AL;CANADIAN SYLLABICS SOUTH-SLAVEY KIH
+1487;AL;CANADIAN SYLLABICS SOUTH-SLAVEY KOH
+1488;AL;CANADIAN SYLLABICS SOUTH-SLAVEY KAH
+1489;AL;CANADIAN SYLLABICS CE
+148A;AL;CANADIAN SYLLABICS CAAI
+148B;AL;CANADIAN SYLLABICS CI
+148C;AL;CANADIAN SYLLABICS CII
+148D;AL;CANADIAN SYLLABICS CO
+148E;AL;CANADIAN SYLLABICS COO
+148F;AL;CANADIAN SYLLABICS Y-CREE COO
+1490;AL;CANADIAN SYLLABICS CA
+1491;AL;CANADIAN SYLLABICS CAA
+1492;AL;CANADIAN SYLLABICS CWE
+1493;AL;CANADIAN SYLLABICS WEST-CREE CWE
+1494;AL;CANADIAN SYLLABICS CWI
+1495;AL;CANADIAN SYLLABICS WEST-CREE CWI
+1496;AL;CANADIAN SYLLABICS CWII
+1497;AL;CANADIAN SYLLABICS WEST-CREE CWII
+1498;AL;CANADIAN SYLLABICS CWO
+1499;AL;CANADIAN SYLLABICS WEST-CREE CWO
+149A;AL;CANADIAN SYLLABICS CWOO
+149B;AL;CANADIAN SYLLABICS WEST-CREE CWOO
+149C;AL;CANADIAN SYLLABICS CWA
+149D;AL;CANADIAN SYLLABICS WEST-CREE CWA
+149E;AL;CANADIAN SYLLABICS CWAA
+149F;AL;CANADIAN SYLLABICS WEST-CREE CWAA
+14A0;AL;CANADIAN SYLLABICS NASKAPI CWAA
+14A1;AL;CANADIAN SYLLABICS C
+14A2;AL;CANADIAN SYLLABICS SAYISI TH
+14A3;AL;CANADIAN SYLLABICS ME
+14A4;AL;CANADIAN SYLLABICS MAAI
+14A5;AL;CANADIAN SYLLABICS MI
+14A6;AL;CANADIAN SYLLABICS MII
+14A7;AL;CANADIAN SYLLABICS MO
+14A8;AL;CANADIAN SYLLABICS MOO
+14A9;AL;CANADIAN SYLLABICS Y-CREE MOO
+14AA;AL;CANADIAN SYLLABICS MA
+14AB;AL;CANADIAN SYLLABICS MAA
+14AC;AL;CANADIAN SYLLABICS MWE
+14AD;AL;CANADIAN SYLLABICS WEST-CREE MWE
+14AE;AL;CANADIAN SYLLABICS MWI
+14AF;AL;CANADIAN SYLLABICS WEST-CREE MWI
+14B0;AL;CANADIAN SYLLABICS MWII
+14B1;AL;CANADIAN SYLLABICS WEST-CREE MWII
+14B2;AL;CANADIAN SYLLABICS MWO
+14B3;AL;CANADIAN SYLLABICS WEST-CREE MWO
+14B4;AL;CANADIAN SYLLABICS MWOO
+14B5;AL;CANADIAN SYLLABICS WEST-CREE MWOO
+14B6;AL;CANADIAN SYLLABICS MWA
+14B7;AL;CANADIAN SYLLABICS WEST-CREE MWA
+14B8;AL;CANADIAN SYLLABICS MWAA
+14B9;AL;CANADIAN SYLLABICS WEST-CREE MWAA
+14BA;AL;CANADIAN SYLLABICS NASKAPI MWAA
+14BB;AL;CANADIAN SYLLABICS M
+14BC;AL;CANADIAN SYLLABICS WEST-CREE M
+14BD;AL;CANADIAN SYLLABICS MH
+14BE;AL;CANADIAN SYLLABICS ATHAPASCAN M
+14BF;AL;CANADIAN SYLLABICS SAYISI M
+14C0;AL;CANADIAN SYLLABICS NE
+14C1;AL;CANADIAN SYLLABICS NAAI
+14C2;AL;CANADIAN SYLLABICS NI
+14C3;AL;CANADIAN SYLLABICS NII
+14C4;AL;CANADIAN SYLLABICS NO
+14C5;AL;CANADIAN SYLLABICS NOO
+14C6;AL;CANADIAN SYLLABICS Y-CREE NOO
+14C7;AL;CANADIAN SYLLABICS NA
+14C8;AL;CANADIAN SYLLABICS NAA
+14C9;AL;CANADIAN SYLLABICS NWE
+14CA;AL;CANADIAN SYLLABICS WEST-CREE NWE
+14CB;AL;CANADIAN SYLLABICS NWA
+14CC;AL;CANADIAN SYLLABICS WEST-CREE NWA
+14CD;AL;CANADIAN SYLLABICS NWAA
+14CE;AL;CANADIAN SYLLABICS WEST-CREE NWAA
+14CF;AL;CANADIAN SYLLABICS NASKAPI NWAA
+14D0;AL;CANADIAN SYLLABICS N
+14D1;AL;CANADIAN SYLLABICS CARRIER NG
+14D2;AL;CANADIAN SYLLABICS NH
+14D3;AL;CANADIAN SYLLABICS LE
+14D4;AL;CANADIAN SYLLABICS LAAI
+14D5;AL;CANADIAN SYLLABICS LI
+14D6;AL;CANADIAN SYLLABICS LII
+14D7;AL;CANADIAN SYLLABICS LO
+14D8;AL;CANADIAN SYLLABICS LOO
+14D9;AL;CANADIAN SYLLABICS Y-CREE LOO
+14DA;AL;CANADIAN SYLLABICS LA
+14DB;AL;CANADIAN SYLLABICS LAA
+14DC;AL;CANADIAN SYLLABICS LWE
+14DD;AL;CANADIAN SYLLABICS WEST-CREE LWE
+14DE;AL;CANADIAN SYLLABICS LWI
+14DF;AL;CANADIAN SYLLABICS WEST-CREE LWI
+14E0;AL;CANADIAN SYLLABICS LWII
+14E1;AL;CANADIAN SYLLABICS WEST-CREE LWII
+14E2;AL;CANADIAN SYLLABICS LWO
+14E3;AL;CANADIAN SYLLABICS WEST-CREE LWO
+14E4;AL;CANADIAN SYLLABICS LWOO
+14E5;AL;CANADIAN SYLLABICS WEST-CREE LWOO
+14E6;AL;CANADIAN SYLLABICS LWA
+14E7;AL;CANADIAN SYLLABICS WEST-CREE LWA
+14E8;AL;CANADIAN SYLLABICS LWAA
+14E9;AL;CANADIAN SYLLABICS WEST-CREE LWAA
+14EA;AL;CANADIAN SYLLABICS L
+14EB;AL;CANADIAN SYLLABICS WEST-CREE L
+14EC;AL;CANADIAN SYLLABICS MEDIAL L
+14ED;AL;CANADIAN SYLLABICS SE
+14EE;AL;CANADIAN SYLLABICS SAAI
+14EF;AL;CANADIAN SYLLABICS SI
+14F0;AL;CANADIAN SYLLABICS SII
+14F1;AL;CANADIAN SYLLABICS SO
+14F2;AL;CANADIAN SYLLABICS SOO
+14F3;AL;CANADIAN SYLLABICS Y-CREE SOO
+14F4;AL;CANADIAN SYLLABICS SA
+14F5;AL;CANADIAN SYLLABICS SAA
+14F6;AL;CANADIAN SYLLABICS SWE
+14F7;AL;CANADIAN SYLLABICS WEST-CREE SWE
+14F8;AL;CANADIAN SYLLABICS SWI
+14F9;AL;CANADIAN SYLLABICS WEST-CREE SWI
+14FA;AL;CANADIAN SYLLABICS SWII
+14FB;AL;CANADIAN SYLLABICS WEST-CREE SWII
+14FC;AL;CANADIAN SYLLABICS SWO
+14FD;AL;CANADIAN SYLLABICS WEST-CREE SWO
+14FE;AL;CANADIAN SYLLABICS SWOO
+14FF;AL;CANADIAN SYLLABICS WEST-CREE SWOO
+1500;AL;CANADIAN SYLLABICS SWA
+1501;AL;CANADIAN SYLLABICS WEST-CREE SWA
+1502;AL;CANADIAN SYLLABICS SWAA
+1503;AL;CANADIAN SYLLABICS WEST-CREE SWAA
+1504;AL;CANADIAN SYLLABICS NASKAPI SWAA
+1505;AL;CANADIAN SYLLABICS S
+1506;AL;CANADIAN SYLLABICS ATHAPASCAN S
+1507;AL;CANADIAN SYLLABICS SW
+1508;AL;CANADIAN SYLLABICS BLACKFOOT S
+1509;AL;CANADIAN SYLLABICS MOOSE-CREE SK
+150A;AL;CANADIAN SYLLABICS NASKAPI SKW
+150B;AL;CANADIAN SYLLABICS NASKAPI S-W
+150C;AL;CANADIAN SYLLABICS NASKAPI SPWA
+150D;AL;CANADIAN SYLLABICS NASKAPI STWA
+150E;AL;CANADIAN SYLLABICS NASKAPI SKWA
+150F;AL;CANADIAN SYLLABICS NASKAPI SCWA
+1510;AL;CANADIAN SYLLABICS SHE
+1511;AL;CANADIAN SYLLABICS SHI
+1512;AL;CANADIAN SYLLABICS SHII
+1513;AL;CANADIAN SYLLABICS SHO
+1514;AL;CANADIAN SYLLABICS SHOO
+1515;AL;CANADIAN SYLLABICS SHA
+1516;AL;CANADIAN SYLLABICS SHAA
+1517;AL;CANADIAN SYLLABICS SHWE
+1518;AL;CANADIAN SYLLABICS WEST-CREE SHWE
+1519;AL;CANADIAN SYLLABICS SHWI
+151A;AL;CANADIAN SYLLABICS WEST-CREE SHWI
+151B;AL;CANADIAN SYLLABICS SHWII
+151C;AL;CANADIAN SYLLABICS WEST-CREE SHWII
+151D;AL;CANADIAN SYLLABICS SHWO
+151E;AL;CANADIAN SYLLABICS WEST-CREE SHWO
+151F;AL;CANADIAN SYLLABICS SHWOO
+1520;AL;CANADIAN SYLLABICS WEST-CREE SHWOO
+1521;AL;CANADIAN SYLLABICS SHWA
+1522;AL;CANADIAN SYLLABICS WEST-CREE SHWA
+1523;AL;CANADIAN SYLLABICS SHWAA
+1524;AL;CANADIAN SYLLABICS WEST-CREE SHWAA
+1525;AL;CANADIAN SYLLABICS SH
+1526;AL;CANADIAN SYLLABICS YE
+1527;AL;CANADIAN SYLLABICS YAAI
+1528;AL;CANADIAN SYLLABICS YI
+1529;AL;CANADIAN SYLLABICS YII
+152A;AL;CANADIAN SYLLABICS YO
+152B;AL;CANADIAN SYLLABICS YOO
+152C;AL;CANADIAN SYLLABICS Y-CREE YOO
+152D;AL;CANADIAN SYLLABICS YA
+152E;AL;CANADIAN SYLLABICS YAA
+152F;AL;CANADIAN SYLLABICS YWE
+1530;AL;CANADIAN SYLLABICS WEST-CREE YWE
+1531;AL;CANADIAN SYLLABICS YWI
+1532;AL;CANADIAN SYLLABICS WEST-CREE YWI
+1533;AL;CANADIAN SYLLABICS YWII
+1534;AL;CANADIAN SYLLABICS WEST-CREE YWII
+1535;AL;CANADIAN SYLLABICS YWO
+1536;AL;CANADIAN SYLLABICS WEST-CREE YWO
+1537;AL;CANADIAN SYLLABICS YWOO
+1538;AL;CANADIAN SYLLABICS WEST-CREE YWOO
+1539;AL;CANADIAN SYLLABICS YWA
+153A;AL;CANADIAN SYLLABICS WEST-CREE YWA
+153B;AL;CANADIAN SYLLABICS YWAA
+153C;AL;CANADIAN SYLLABICS WEST-CREE YWAA
+153D;AL;CANADIAN SYLLABICS NASKAPI YWAA
+153E;AL;CANADIAN SYLLABICS Y
+153F;AL;CANADIAN SYLLABICS BIBLE-CREE Y
+1540;AL;CANADIAN SYLLABICS WEST-CREE Y
+1541;AL;CANADIAN SYLLABICS SAYISI YI
+1542;AL;CANADIAN SYLLABICS RE
+1543;AL;CANADIAN SYLLABICS R-CREE RE
+1544;AL;CANADIAN SYLLABICS WEST-CREE LE
+1545;AL;CANADIAN SYLLABICS RAAI
+1546;AL;CANADIAN SYLLABICS RI
+1547;AL;CANADIAN SYLLABICS RII
+1548;AL;CANADIAN SYLLABICS RO
+1549;AL;CANADIAN SYLLABICS ROO
+154A;AL;CANADIAN SYLLABICS WEST-CREE LO
+154B;AL;CANADIAN SYLLABICS RA
+154C;AL;CANADIAN SYLLABICS RAA
+154D;AL;CANADIAN SYLLABICS WEST-CREE LA
+154E;AL;CANADIAN SYLLABICS RWAA
+154F;AL;CANADIAN SYLLABICS WEST-CREE RWAA
+1550;AL;CANADIAN SYLLABICS R
+1551;AL;CANADIAN SYLLABICS WEST-CREE R
+1552;AL;CANADIAN SYLLABICS MEDIAL R
+1553;AL;CANADIAN SYLLABICS FE
+1554;AL;CANADIAN SYLLABICS FAAI
+1555;AL;CANADIAN SYLLABICS FI
+1556;AL;CANADIAN SYLLABICS FII
+1557;AL;CANADIAN SYLLABICS FO
+1558;AL;CANADIAN SYLLABICS FOO
+1559;AL;CANADIAN SYLLABICS FA
+155A;AL;CANADIAN SYLLABICS FAA
+155B;AL;CANADIAN SYLLABICS FWAA
+155C;AL;CANADIAN SYLLABICS WEST-CREE FWAA
+155D;AL;CANADIAN SYLLABICS F
+155E;AL;CANADIAN SYLLABICS THE
+155F;AL;CANADIAN SYLLABICS N-CREE THE
+1560;AL;CANADIAN SYLLABICS THI
+1561;AL;CANADIAN SYLLABICS N-CREE THI
+1562;AL;CANADIAN SYLLABICS THII
+1563;AL;CANADIAN SYLLABICS N-CREE THII
+1564;AL;CANADIAN SYLLABICS THO
+1565;AL;CANADIAN SYLLABICS THOO
+1566;AL;CANADIAN SYLLABICS THA
+1567;AL;CANADIAN SYLLABICS THAA
+1568;AL;CANADIAN SYLLABICS THWAA
+1569;AL;CANADIAN SYLLABICS WEST-CREE THWAA
+156A;AL;CANADIAN SYLLABICS TH
+156B;AL;CANADIAN SYLLABICS TTHE
+156C;AL;CANADIAN SYLLABICS TTHI
+156D;AL;CANADIAN SYLLABICS TTHO
+156E;AL;CANADIAN SYLLABICS TTHA
+156F;AL;CANADIAN SYLLABICS TTH
+1570;AL;CANADIAN SYLLABICS TYE
+1571;AL;CANADIAN SYLLABICS TYI
+1572;AL;CANADIAN SYLLABICS TYO
+1573;AL;CANADIAN SYLLABICS TYA
+1574;AL;CANADIAN SYLLABICS NUNAVIK HE
+1575;AL;CANADIAN SYLLABICS NUNAVIK HI
+1576;AL;CANADIAN SYLLABICS NUNAVIK HII
+1577;AL;CANADIAN SYLLABICS NUNAVIK HO
+1578;AL;CANADIAN SYLLABICS NUNAVIK HOO
+1579;AL;CANADIAN SYLLABICS NUNAVIK HA
+157A;AL;CANADIAN SYLLABICS NUNAVIK HAA
+157B;AL;CANADIAN SYLLABICS NUNAVIK H
+157C;AL;CANADIAN SYLLABICS NUNAVUT H
+157D;AL;CANADIAN SYLLABICS HK
+157E;AL;CANADIAN SYLLABICS QAAI
+157F;AL;CANADIAN SYLLABICS QI
+1580;AL;CANADIAN SYLLABICS QII
+1581;AL;CANADIAN SYLLABICS QO
+1582;AL;CANADIAN SYLLABICS QOO
+1583;AL;CANADIAN SYLLABICS QA
+1584;AL;CANADIAN SYLLABICS QAA
+1585;AL;CANADIAN SYLLABICS Q
+1586;AL;CANADIAN SYLLABICS TLHE
+1587;AL;CANADIAN SYLLABICS TLHI
+1588;AL;CANADIAN SYLLABICS TLHO
+1589;AL;CANADIAN SYLLABICS TLHA
+158A;AL;CANADIAN SYLLABICS WEST-CREE RE
+158B;AL;CANADIAN SYLLABICS WEST-CREE RI
+158C;AL;CANADIAN SYLLABICS WEST-CREE RO
+158D;AL;CANADIAN SYLLABICS WEST-CREE RA
+158E;AL;CANADIAN SYLLABICS NGAAI
+158F;AL;CANADIAN SYLLABICS NGI
+1590;AL;CANADIAN SYLLABICS NGII
+1591;AL;CANADIAN SYLLABICS NGO
+1592;AL;CANADIAN SYLLABICS NGOO
+1593;AL;CANADIAN SYLLABICS NGA
+1594;AL;CANADIAN SYLLABICS NGAA
+1595;AL;CANADIAN SYLLABICS NG
+1596;AL;CANADIAN SYLLABICS NNG
+1597;AL;CANADIAN SYLLABICS SAYISI SHE
+1598;AL;CANADIAN SYLLABICS SAYISI SHI
+1599;AL;CANADIAN SYLLABICS SAYISI SHO
+159A;AL;CANADIAN SYLLABICS SAYISI SHA
+159B;AL;CANADIAN SYLLABICS WOODS-CREE THE
+159C;AL;CANADIAN SYLLABICS WOODS-CREE THI
+159D;AL;CANADIAN SYLLABICS WOODS-CREE THO
+159E;AL;CANADIAN SYLLABICS WOODS-CREE THA
+159F;AL;CANADIAN SYLLABICS WOODS-CREE TH
+15A0;AL;CANADIAN SYLLABICS LHI
+15A1;AL;CANADIAN SYLLABICS LHII
+15A2;AL;CANADIAN SYLLABICS LHO
+15A3;AL;CANADIAN SYLLABICS LHOO
+15A4;AL;CANADIAN SYLLABICS LHA
+15A5;AL;CANADIAN SYLLABICS LHAA
+15A6;AL;CANADIAN SYLLABICS LH
+15A7;AL;CANADIAN SYLLABICS TH-CREE THE
+15A8;AL;CANADIAN SYLLABICS TH-CREE THI
+15A9;AL;CANADIAN SYLLABICS TH-CREE THII
+15AA;AL;CANADIAN SYLLABICS TH-CREE THO
+15AB;AL;CANADIAN SYLLABICS TH-CREE THOO
+15AC;AL;CANADIAN SYLLABICS TH-CREE THA
+15AD;AL;CANADIAN SYLLABICS TH-CREE THAA
+15AE;AL;CANADIAN SYLLABICS TH-CREE TH
+15AF;AL;CANADIAN SYLLABICS AIVILIK B
+15B0;AL;CANADIAN SYLLABICS BLACKFOOT E
+15B1;AL;CANADIAN SYLLABICS BLACKFOOT I
+15B2;AL;CANADIAN SYLLABICS BLACKFOOT O
+15B3;AL;CANADIAN SYLLABICS BLACKFOOT A
+15B4;AL;CANADIAN SYLLABICS BLACKFOOT WE
+15B5;AL;CANADIAN SYLLABICS BLACKFOOT WI
+15B6;AL;CANADIAN SYLLABICS BLACKFOOT WO
+15B7;AL;CANADIAN SYLLABICS BLACKFOOT WA
+15B8;AL;CANADIAN SYLLABICS BLACKFOOT NE
+15B9;AL;CANADIAN SYLLABICS BLACKFOOT NI
+15BA;AL;CANADIAN SYLLABICS BLACKFOOT NO
+15BB;AL;CANADIAN SYLLABICS BLACKFOOT NA
+15BC;AL;CANADIAN SYLLABICS BLACKFOOT KE
+15BD;AL;CANADIAN SYLLABICS BLACKFOOT KI
+15BE;AL;CANADIAN SYLLABICS BLACKFOOT KO
+15BF;AL;CANADIAN SYLLABICS BLACKFOOT KA
+15C0;AL;CANADIAN SYLLABICS SAYISI HE
+15C1;AL;CANADIAN SYLLABICS SAYISI HI
+15C2;AL;CANADIAN SYLLABICS SAYISI HO
+15C3;AL;CANADIAN SYLLABICS SAYISI HA
+15C4;AL;CANADIAN SYLLABICS CARRIER GHU
+15C5;AL;CANADIAN SYLLABICS CARRIER GHO
+15C6;AL;CANADIAN SYLLABICS CARRIER GHE
+15C7;AL;CANADIAN SYLLABICS CARRIER GHEE
+15C8;AL;CANADIAN SYLLABICS CARRIER GHI
+15C9;AL;CANADIAN SYLLABICS CARRIER GHA
+15CA;AL;CANADIAN SYLLABICS CARRIER RU
+15CB;AL;CANADIAN SYLLABICS CARRIER RO
+15CC;AL;CANADIAN SYLLABICS CARRIER RE
+15CD;AL;CANADIAN SYLLABICS CARRIER REE
+15CE;AL;CANADIAN SYLLABICS CARRIER RI
+15CF;AL;CANADIAN SYLLABICS CARRIER RA
+15D0;AL;CANADIAN SYLLABICS CARRIER WU
+15D1;AL;CANADIAN SYLLABICS CARRIER WO
+15D2;AL;CANADIAN SYLLABICS CARRIER WE
+15D3;AL;CANADIAN SYLLABICS CARRIER WEE
+15D4;AL;CANADIAN SYLLABICS CARRIER WI
+15D5;AL;CANADIAN SYLLABICS CARRIER WA
+15D6;AL;CANADIAN SYLLABICS CARRIER HWU
+15D7;AL;CANADIAN SYLLABICS CARRIER HWO
+15D8;AL;CANADIAN SYLLABICS CARRIER HWE
+15D9;AL;CANADIAN SYLLABICS CARRIER HWEE
+15DA;AL;CANADIAN SYLLABICS CARRIER HWI
+15DB;AL;CANADIAN SYLLABICS CARRIER HWA
+15DC;AL;CANADIAN SYLLABICS CARRIER THU
+15DD;AL;CANADIAN SYLLABICS CARRIER THO
+15DE;AL;CANADIAN SYLLABICS CARRIER THE
+15DF;AL;CANADIAN SYLLABICS CARRIER THEE
+15E0;AL;CANADIAN SYLLABICS CARRIER THI
+15E1;AL;CANADIAN SYLLABICS CARRIER THA
+15E2;AL;CANADIAN SYLLABICS CARRIER TTU
+15E3;AL;CANADIAN SYLLABICS CARRIER TTO
+15E4;AL;CANADIAN SYLLABICS CARRIER TTE
+15E5;AL;CANADIAN SYLLABICS CARRIER TTEE
+15E6;AL;CANADIAN SYLLABICS CARRIER TTI
+15E7;AL;CANADIAN SYLLABICS CARRIER TTA
+15E8;AL;CANADIAN SYLLABICS CARRIER PU
+15E9;AL;CANADIAN SYLLABICS CARRIER PO
+15EA;AL;CANADIAN SYLLABICS CARRIER PE
+15EB;AL;CANADIAN SYLLABICS CARRIER PEE
+15EC;AL;CANADIAN SYLLABICS CARRIER PI
+15ED;AL;CANADIAN SYLLABICS CARRIER PA
+15EE;AL;CANADIAN SYLLABICS CARRIER P
+15EF;AL;CANADIAN SYLLABICS CARRIER GU
+15F0;AL;CANADIAN SYLLABICS CARRIER GO
+15F1;AL;CANADIAN SYLLABICS CARRIER GE
+15F2;AL;CANADIAN SYLLABICS CARRIER GEE
+15F3;AL;CANADIAN SYLLABICS CARRIER GI
+15F4;AL;CANADIAN SYLLABICS CARRIER GA
+15F5;AL;CANADIAN SYLLABICS CARRIER KHU
+15F6;AL;CANADIAN SYLLABICS CARRIER KHO
+15F7;AL;CANADIAN SYLLABICS CARRIER KHE
+15F8;AL;CANADIAN SYLLABICS CARRIER KHEE
+15F9;AL;CANADIAN SYLLABICS CARRIER KHI
+15FA;AL;CANADIAN SYLLABICS CARRIER KHA
+15FB;AL;CANADIAN SYLLABICS CARRIER KKU
+15FC;AL;CANADIAN SYLLABICS CARRIER KKO
+15FD;AL;CANADIAN SYLLABICS CARRIER KKE
+15FE;AL;CANADIAN SYLLABICS CARRIER KKEE
+15FF;AL;CANADIAN SYLLABICS CARRIER KKI
+1600;AL;CANADIAN SYLLABICS CARRIER KKA
+1601;AL;CANADIAN SYLLABICS CARRIER KK
+1602;AL;CANADIAN SYLLABICS CARRIER NU
+1603;AL;CANADIAN SYLLABICS CARRIER NO
+1604;AL;CANADIAN SYLLABICS CARRIER NE
+1605;AL;CANADIAN SYLLABICS CARRIER NEE
+1606;AL;CANADIAN SYLLABICS CARRIER NI
+1607;AL;CANADIAN SYLLABICS CARRIER NA
+1608;AL;CANADIAN SYLLABICS CARRIER MU
+1609;AL;CANADIAN SYLLABICS CARRIER MO
+160A;AL;CANADIAN SYLLABICS CARRIER ME
+160B;AL;CANADIAN SYLLABICS CARRIER MEE
+160C;AL;CANADIAN SYLLABICS CARRIER MI
+160D;AL;CANADIAN SYLLABICS CARRIER MA
+160E;AL;CANADIAN SYLLABICS CARRIER YU
+160F;AL;CANADIAN SYLLABICS CARRIER YO
+1610;AL;CANADIAN SYLLABICS CARRIER YE
+1611;AL;CANADIAN SYLLABICS CARRIER YEE
+1612;AL;CANADIAN SYLLABICS CARRIER YI
+1613;AL;CANADIAN SYLLABICS CARRIER YA
+1614;AL;CANADIAN SYLLABICS CARRIER JU
+1615;AL;CANADIAN SYLLABICS SAYISI JU
+1616;AL;CANADIAN SYLLABICS CARRIER JO
+1617;AL;CANADIAN SYLLABICS CARRIER JE
+1618;AL;CANADIAN SYLLABICS CARRIER JEE
+1619;AL;CANADIAN SYLLABICS CARRIER JI
+161A;AL;CANADIAN SYLLABICS SAYISI JI
+161B;AL;CANADIAN SYLLABICS CARRIER JA
+161C;AL;CANADIAN SYLLABICS CARRIER JJU
+161D;AL;CANADIAN SYLLABICS CARRIER JJO
+161E;AL;CANADIAN SYLLABICS CARRIER JJE
+161F;AL;CANADIAN SYLLABICS CARRIER JJEE
+1620;AL;CANADIAN SYLLABICS CARRIER JJI
+1621;AL;CANADIAN SYLLABICS CARRIER JJA
+1622;AL;CANADIAN SYLLABICS CARRIER LU
+1623;AL;CANADIAN SYLLABICS CARRIER LO
+1624;AL;CANADIAN SYLLABICS CARRIER LE
+1625;AL;CANADIAN SYLLABICS CARRIER LEE
+1626;AL;CANADIAN SYLLABICS CARRIER LI
+1627;AL;CANADIAN SYLLABICS CARRIER LA
+1628;AL;CANADIAN SYLLABICS CARRIER DLU
+1629;AL;CANADIAN SYLLABICS CARRIER DLO
+162A;AL;CANADIAN SYLLABICS CARRIER DLE
+162B;AL;CANADIAN SYLLABICS CARRIER DLEE
+162C;AL;CANADIAN SYLLABICS CARRIER DLI
+162D;AL;CANADIAN SYLLABICS CARRIER DLA
+162E;AL;CANADIAN SYLLABICS CARRIER LHU
+162F;AL;CANADIAN SYLLABICS CARRIER LHO
+1630;AL;CANADIAN SYLLABICS CARRIER LHE
+1631;AL;CANADIAN SYLLABICS CARRIER LHEE
+1632;AL;CANADIAN SYLLABICS CARRIER LHI
+1633;AL;CANADIAN SYLLABICS CARRIER LHA
+1634;AL;CANADIAN SYLLABICS CARRIER TLHU
+1635;AL;CANADIAN SYLLABICS CARRIER TLHO
+1636;AL;CANADIAN SYLLABICS CARRIER TLHE
+1637;AL;CANADIAN SYLLABICS CARRIER TLHEE
+1638;AL;CANADIAN SYLLABICS CARRIER TLHI
+1639;AL;CANADIAN SYLLABICS CARRIER TLHA
+163A;AL;CANADIAN SYLLABICS CARRIER TLU
+163B;AL;CANADIAN SYLLABICS CARRIER TLO
+163C;AL;CANADIAN SYLLABICS CARRIER TLE
+163D;AL;CANADIAN SYLLABICS CARRIER TLEE
+163E;AL;CANADIAN SYLLABICS CARRIER TLI
+163F;AL;CANADIAN SYLLABICS CARRIER TLA
+1640;AL;CANADIAN SYLLABICS CARRIER ZU
+1641;AL;CANADIAN SYLLABICS CARRIER ZO
+1642;AL;CANADIAN SYLLABICS CARRIER ZE
+1643;AL;CANADIAN SYLLABICS CARRIER ZEE
+1644;AL;CANADIAN SYLLABICS CARRIER ZI
+1645;AL;CANADIAN SYLLABICS CARRIER ZA
+1646;AL;CANADIAN SYLLABICS CARRIER Z
+1647;AL;CANADIAN SYLLABICS CARRIER INITIAL Z
+1648;AL;CANADIAN SYLLABICS CARRIER DZU
+1649;AL;CANADIAN SYLLABICS CARRIER DZO
+164A;AL;CANADIAN SYLLABICS CARRIER DZE
+164B;AL;CANADIAN SYLLABICS CARRIER DZEE
+164C;AL;CANADIAN SYLLABICS CARRIER DZI
+164D;AL;CANADIAN SYLLABICS CARRIER DZA
+164E;AL;CANADIAN SYLLABICS CARRIER SU
+164F;AL;CANADIAN SYLLABICS CARRIER SO
+1650;AL;CANADIAN SYLLABICS CARRIER SE
+1651;AL;CANADIAN SYLLABICS CARRIER SEE
+1652;AL;CANADIAN SYLLABICS CARRIER SI
+1653;AL;CANADIAN SYLLABICS CARRIER SA
+1654;AL;CANADIAN SYLLABICS CARRIER SHU
+1655;AL;CANADIAN SYLLABICS CARRIER SHO
+1656;AL;CANADIAN SYLLABICS CARRIER SHE
+1657;AL;CANADIAN SYLLABICS CARRIER SHEE
+1658;AL;CANADIAN SYLLABICS CARRIER SHI
+1659;AL;CANADIAN SYLLABICS CARRIER SHA
+165A;AL;CANADIAN SYLLABICS CARRIER SH
+165B;AL;CANADIAN SYLLABICS CARRIER TSU
+165C;AL;CANADIAN SYLLABICS CARRIER TSO
+165D;AL;CANADIAN SYLLABICS CARRIER TSE
+165E;AL;CANADIAN SYLLABICS CARRIER TSEE
+165F;AL;CANADIAN SYLLABICS CARRIER TSI
+1660;AL;CANADIAN SYLLABICS CARRIER TSA
+1661;AL;CANADIAN SYLLABICS CARRIER CHU
+1662;AL;CANADIAN SYLLABICS CARRIER CHO
+1663;AL;CANADIAN SYLLABICS CARRIER CHE
+1664;AL;CANADIAN SYLLABICS CARRIER CHEE
+1665;AL;CANADIAN SYLLABICS CARRIER CHI
+1666;AL;CANADIAN SYLLABICS CARRIER CHA
+1667;AL;CANADIAN SYLLABICS CARRIER TTSU
+1668;AL;CANADIAN SYLLABICS CARRIER TTSO
+1669;AL;CANADIAN SYLLABICS CARRIER TTSE
+166A;AL;CANADIAN SYLLABICS CARRIER TTSEE
+166B;AL;CANADIAN SYLLABICS CARRIER TTSI
+166C;AL;CANADIAN SYLLABICS CARRIER TTSA
+166D;AL;CANADIAN SYLLABICS CHI SIGN
+166E;AL;CANADIAN SYLLABICS FULL STOP
+166F;AL;CANADIAN SYLLABICS QAI
+1670;AL;CANADIAN SYLLABICS NGAI
+1671;AL;CANADIAN SYLLABICS NNGI
+1672;AL;CANADIAN SYLLABICS NNGII
+1673;AL;CANADIAN SYLLABICS NNGO
+1674;AL;CANADIAN SYLLABICS NNGOO
+1675;AL;CANADIAN SYLLABICS NNGA
+1676;AL;CANADIAN SYLLABICS NNGAA
+1680;BA;OGHAM SPACE MARK
+1681;AL;OGHAM LETTER BEITH
+1682;AL;OGHAM LETTER LUIS
+1683;AL;OGHAM LETTER FEARN
+1684;AL;OGHAM LETTER SAIL
+1685;AL;OGHAM LETTER NION
+1686;AL;OGHAM LETTER UATH
+1687;AL;OGHAM LETTER DAIR
+1688;AL;OGHAM LETTER TINNE
+1689;AL;OGHAM LETTER COLL
+168A;AL;OGHAM LETTER CEIRT
+168B;AL;OGHAM LETTER MUIN
+168C;AL;OGHAM LETTER GORT
+168D;AL;OGHAM LETTER NGEADAL
+168E;AL;OGHAM LETTER STRAIF
+168F;AL;OGHAM LETTER RUIS
+1690;AL;OGHAM LETTER AILM
+1691;AL;OGHAM LETTER ONN
+1692;AL;OGHAM LETTER UR
+1693;AL;OGHAM LETTER EADHADH
+1694;AL;OGHAM LETTER IODHADH
+1695;AL;OGHAM LETTER EABHADH
+1696;AL;OGHAM LETTER OR
+1697;AL;OGHAM LETTER UILLEANN
+1698;AL;OGHAM LETTER IFIN
+1699;AL;OGHAM LETTER EAMHANCHOLL
+169A;AL;OGHAM LETTER PEITH
+169B;OP;OGHAM FEATHER MARK
+169C;CL;OGHAM REVERSED FEATHER MARK
+16A0;AL;RUNIC LETTER FEHU FEOH FE F
+16A1;AL;RUNIC LETTER V
+16A2;AL;RUNIC LETTER URUZ UR U
+16A3;AL;RUNIC LETTER YR
+16A4;AL;RUNIC LETTER Y
+16A5;AL;RUNIC LETTER W
+16A6;AL;RUNIC LETTER THURISAZ THURS THORN
+16A7;AL;RUNIC LETTER ETH
+16A8;AL;RUNIC LETTER ANSUZ A
+16A9;AL;RUNIC LETTER OS O
+16AA;AL;RUNIC LETTER AC A
+16AB;AL;RUNIC LETTER AESC
+16AC;AL;RUNIC LETTER LONG-BRANCH-OSS O
+16AD;AL;RUNIC LETTER SHORT-TWIG-OSS O
+16AE;AL;RUNIC LETTER O
+16AF;AL;RUNIC LETTER OE
+16B0;AL;RUNIC LETTER ON
+16B1;AL;RUNIC LETTER RAIDO RAD REID R
+16B2;AL;RUNIC LETTER KAUNA
+16B3;AL;RUNIC LETTER CEN
+16B4;AL;RUNIC LETTER KAUN K
+16B5;AL;RUNIC LETTER G
+16B6;AL;RUNIC LETTER ENG
+16B7;AL;RUNIC LETTER GEBO GYFU G
+16B8;AL;RUNIC LETTER GAR
+16B9;AL;RUNIC LETTER WUNJO WYNN W
+16BA;AL;RUNIC LETTER HAGLAZ H
+16BB;AL;RUNIC LETTER HAEGL H
+16BC;AL;RUNIC LETTER LONG-BRANCH-HAGALL H
+16BD;AL;RUNIC LETTER SHORT-TWIG-HAGALL H
+16BE;AL;RUNIC LETTER NAUDIZ NYD NAUD N
+16BF;AL;RUNIC LETTER SHORT-TWIG-NAUD N
+16C0;AL;RUNIC LETTER DOTTED-N
+16C1;AL;RUNIC LETTER ISAZ IS ISS I
+16C2;AL;RUNIC LETTER E
+16C3;AL;RUNIC LETTER JERAN J
+16C4;AL;RUNIC LETTER GER
+16C5;AL;RUNIC LETTER LONG-BRANCH-AR AE
+16C6;AL;RUNIC LETTER SHORT-TWIG-AR A
+16C7;AL;RUNIC LETTER IWAZ EOH
+16C8;AL;RUNIC LETTER PERTHO PEORTH P
+16C9;AL;RUNIC LETTER ALGIZ EOLHX
+16CA;AL;RUNIC LETTER SOWILO S
+16CB;AL;RUNIC LETTER SIGEL LONG-BRANCH-SOL S
+16CC;AL;RUNIC LETTER SHORT-TWIG-SOL S
+16CD;AL;RUNIC LETTER C
+16CE;AL;RUNIC LETTER Z
+16CF;AL;RUNIC LETTER TIWAZ TIR TYR T
+16D0;AL;RUNIC LETTER SHORT-TWIG-TYR T
+16D1;AL;RUNIC LETTER D
+16D2;AL;RUNIC LETTER BERKANAN BEORC BJARKAN B
+16D3;AL;RUNIC LETTER SHORT-TWIG-BJARKAN B
+16D4;AL;RUNIC LETTER DOTTED-P
+16D5;AL;RUNIC LETTER OPEN-P
+16D6;AL;RUNIC LETTER EHWAZ EH E
+16D7;AL;RUNIC LETTER MANNAZ MAN M
+16D8;AL;RUNIC LETTER LONG-BRANCH-MADR M
+16D9;AL;RUNIC LETTER SHORT-TWIG-MADR M
+16DA;AL;RUNIC LETTER LAUKAZ LAGU LOGR L
+16DB;AL;RUNIC LETTER DOTTED-L
+16DC;AL;RUNIC LETTER INGWAZ
+16DD;AL;RUNIC LETTER ING
+16DE;AL;RUNIC LETTER DAGAZ DAEG D
+16DF;AL;RUNIC LETTER OTHALAN ETHEL O
+16E0;AL;RUNIC LETTER EAR
+16E1;AL;RUNIC LETTER IOR
+16E2;AL;RUNIC LETTER CWEORTH
+16E3;AL;RUNIC LETTER CALC
+16E4;AL;RUNIC LETTER CEALC
+16E5;AL;RUNIC LETTER STAN
+16E6;AL;RUNIC LETTER LONG-BRANCH-YR
+16E7;AL;RUNIC LETTER SHORT-TWIG-YR
+16E8;AL;RUNIC LETTER ICELANDIC-YR
+16E9;AL;RUNIC LETTER Q
+16EA;AL;RUNIC LETTER X
+16EB;AL;RUNIC SINGLE PUNCTUATION
+16EC;AL;RUNIC MULTIPLE PUNCTUATION
+16ED;AL;RUNIC CROSS PUNCTUATION
+16EE;AL;RUNIC ARLAUG SYMBOL
+16EF;AL;RUNIC TVIMADUR SYMBOL
+16F0;AL;RUNIC BELGTHOR SYMBOL
+1780;SA;KHMER LETTER KA
+1781;SA;KHMER LETTER KHA
+1782;SA;KHMER LETTER KO
+1783;SA;KHMER LETTER KHO
+1784;SA;KHMER LETTER NGO
+1785;SA;KHMER LETTER CA
+1786;SA;KHMER LETTER CHA
+1787;SA;KHMER LETTER CO
+1788;SA;KHMER LETTER CHO
+1789;SA;KHMER LETTER NYO
+178A;SA;KHMER LETTER DA
+178B;SA;KHMER LETTER TTHA
+178C;SA;KHMER LETTER DO
+178D;SA;KHMER LETTER TTHO
+178E;SA;KHMER LETTER NNO
+178F;SA;KHMER LETTER TA
+1790;SA;KHMER LETTER THA
+1791;SA;KHMER LETTER TO
+1792;SA;KHMER LETTER THO
+1793;SA;KHMER LETTER NO
+1794;SA;KHMER LETTER BA
+1795;SA;KHMER LETTER PHA
+1796;SA;KHMER LETTER PO
+1797;SA;KHMER LETTER PHO
+1798;SA;KHMER LETTER MO
+1799;SA;KHMER LETTER YO
+179A;SA;KHMER LETTER RO
+179B;SA;KHMER LETTER LO
+179C;SA;KHMER LETTER VO
+179D;SA;KHMER LETTER SHA
+179E;SA;KHMER LETTER SSO
+179F;SA;KHMER LETTER SA
+17A0;SA;KHMER LETTER HA
+17A1;SA;KHMER LETTER LA
+17A2;SA;KHMER LETTER QA
+17A3;SA;KHMER INDEPENDENT VOWEL QAQ
+17A4;SA;KHMER INDEPENDENT VOWEL QAA
+17A5;SA;KHMER INDEPENDENT VOWEL QI
+17A6;SA;KHMER INDEPENDENT VOWEL QII
+17A7;SA;KHMER INDEPENDENT VOWEL QU
+17A8;SA;KHMER INDEPENDENT VOWEL QUK
+17A9;SA;KHMER INDEPENDENT VOWEL QUU
+17AA;SA;KHMER INDEPENDENT VOWEL QUUV
+17AB;SA;KHMER INDEPENDENT VOWEL RY
+17AC;SA;KHMER INDEPENDENT VOWEL RYY
+17AD;SA;KHMER INDEPENDENT VOWEL LY
+17AE;SA;KHMER INDEPENDENT VOWEL LYY
+17AF;SA;KHMER INDEPENDENT VOWEL QE
+17B0;SA;KHMER INDEPENDENT VOWEL QAI
+17B1;SA;KHMER INDEPENDENT VOWEL QOO TYPE ONE
+17B2;SA;KHMER INDEPENDENT VOWEL QOO TYPE TWO
+17B3;SA;KHMER INDEPENDENT VOWEL QAU
+17B4;CM;KHMER VOWEL INHERENT AQ
+17B5;CM;KHMER VOWEL INHERENT AA
+17B6;CM;KHMER VOWEL SIGN AA
+17B7;CM;KHMER VOWEL SIGN I
+17B8;CM;KHMER VOWEL SIGN II
+17B9;CM;KHMER VOWEL SIGN Y
+17BA;CM;KHMER VOWEL SIGN YY
+17BB;CM;KHMER VOWEL SIGN U
+17BC;CM;KHMER VOWEL SIGN UU
+17BD;CM;KHMER VOWEL SIGN UA
+17BE;CM;KHMER VOWEL SIGN OE
+17BF;CM;KHMER VOWEL SIGN YA
+17C0;CM;KHMER VOWEL SIGN IE
+17C1;CM;KHMER VOWEL SIGN E
+17C2;CM;KHMER VOWEL SIGN AE
+17C3;CM;KHMER VOWEL SIGN AI
+17C4;CM;KHMER VOWEL SIGN OO
+17C5;CM;KHMER VOWEL SIGN AU
+17C6;CM;KHMER SIGN NIKAHIT
+17C7;CM;KHMER SIGN REAHMUK
+17C8;CM;KHMER SIGN YUUKALEAPINTU
+17C9;CM;KHMER SIGN MUUSIKATOAN
+17CA;CM;KHMER SIGN TRIISAP
+17CB;CM;KHMER SIGN BANTOC
+17CC;CM;KHMER SIGN ROBAT
+17CD;CM;KHMER SIGN TOANDAKHIAT
+17CE;CM;KHMER SIGN KAKABAT
+17CF;CM;KHMER SIGN AHSDA
+17D0;CM;KHMER SIGN SAMYOK SANNYA
+17D1;CM;KHMER SIGN VIRIAM
+17D2;CM;KHMER SIGN COENG
+17D3;CM;KHMER SIGN BATHAMASAT
+17D4;NS;KHMER SIGN KHAN
+17D5;BA;KHMER SIGN BARIYOOSAN
+17D6;NS;KHMER SIGN CAMNUC PII KUUH
+17D7;NS;KHMER SIGN LEK TOO
+17D8;NS;KHMER SIGN BEYYAL
+17D9;NS;KHMER SIGN PHNAEK MUAN
+17DA;NS;KHMER SIGN KOOMUUT
+17DB;PR;KHMER CURRENCY SYMBOL RIEL
+17DC;AL;KHMER SIGN AVAKRAHASANYA
+17E0;NU;KHMER DIGIT ZERO
+17E1;NU;KHMER DIGIT ONE
+17E2;NU;KHMER DIGIT TWO
+17E3;NU;KHMER DIGIT THREE
+17E4;NU;KHMER DIGIT FOUR
+17E5;NU;KHMER DIGIT FIVE
+17E6;NU;KHMER DIGIT SIX
+17E7;NU;KHMER DIGIT SEVEN
+17E8;NU;KHMER DIGIT EIGHT
+17E9;NU;KHMER DIGIT NINE
+1800;AL;MONGOLIAN BIRGA
+1801;AL;MONGOLIAN ELLIPSIS
+1802;AL;MONGOLIAN COMMA
+1803;AL;MONGOLIAN FULL STOP
+1804;AL;MONGOLIAN COLON
+1805;AL;MONGOLIAN FOUR DOTS
+1806;BB;MONGOLIAN TODO SOFT HYPHEN
+1807;AL;MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER
+1808;AL;MONGOLIAN MANCHU COMMA
+1809;AL;MONGOLIAN MANCHU FULL STOP
+180A;AL;MONGOLIAN NIRUGU
+180B;CM;MONGOLIAN FREE VARIATION SELECTOR ONE
+180C;CM;MONGOLIAN FREE VARIATION SELECTOR TWO
+180D;CM;MONGOLIAN FREE VARIATION SELECTOR THREE
+180E;CM;MONGOLIAN VOWEL SEPARATOR
+1810;NU;MONGOLIAN DIGIT ZERO
+1811;NU;MONGOLIAN DIGIT ONE
+1812;NU;MONGOLIAN DIGIT TWO
+1813;NU;MONGOLIAN DIGIT THREE
+1814;NU;MONGOLIAN DIGIT FOUR
+1815;NU;MONGOLIAN DIGIT FIVE
+1816;NU;MONGOLIAN DIGIT SIX
+1817;NU;MONGOLIAN DIGIT SEVEN
+1818;NU;MONGOLIAN DIGIT EIGHT
+1819;NU;MONGOLIAN DIGIT NINE
+1820;AL;MONGOLIAN LETTER A
+1821;AL;MONGOLIAN LETTER E
+1822;AL;MONGOLIAN LETTER I
+1823;AL;MONGOLIAN LETTER O
+1824;AL;MONGOLIAN LETTER U
+1825;AL;MONGOLIAN LETTER OE
+1826;AL;MONGOLIAN LETTER UE
+1827;AL;MONGOLIAN LETTER EE
+1828;AL;MONGOLIAN LETTER NA
+1829;AL;MONGOLIAN LETTER ANG
+182A;AL;MONGOLIAN LETTER BA
+182B;AL;MONGOLIAN LETTER PA
+182C;AL;MONGOLIAN LETTER QA
+182D;AL;MONGOLIAN LETTER GA
+182E;AL;MONGOLIAN LETTER MA
+182F;AL;MONGOLIAN LETTER LA
+1830;AL;MONGOLIAN LETTER SA
+1831;AL;MONGOLIAN LETTER SHA
+1832;AL;MONGOLIAN LETTER TA
+1833;AL;MONGOLIAN LETTER DA
+1834;AL;MONGOLIAN LETTER CHA
+1835;AL;MONGOLIAN LETTER JA
+1836;AL;MONGOLIAN LETTER YA
+1837;AL;MONGOLIAN LETTER RA
+1838;AL;MONGOLIAN LETTER WA
+1839;AL;MONGOLIAN LETTER FA
+183A;AL;MONGOLIAN LETTER KA
+183B;AL;MONGOLIAN LETTER KHA
+183C;AL;MONGOLIAN LETTER TSA
+183D;AL;MONGOLIAN LETTER ZA
+183E;AL;MONGOLIAN LETTER HAA
+183F;AL;MONGOLIAN LETTER ZRA
+1840;AL;MONGOLIAN LETTER LHA
+1841;AL;MONGOLIAN LETTER ZHI
+1842;AL;MONGOLIAN LETTER CHI
+1843;AL;MONGOLIAN LETTER TODO LONG VOWEL SIGN
+1844;AL;MONGOLIAN LETTER TODO E
+1845;AL;MONGOLIAN LETTER TODO I
+1846;AL;MONGOLIAN LETTER TODO O
+1847;AL;MONGOLIAN LETTER TODO U
+1848;AL;MONGOLIAN LETTER TODO OE
+1849;AL;MONGOLIAN LETTER TODO UE
+184A;AL;MONGOLIAN LETTER TODO ANG
+184B;AL;MONGOLIAN LETTER TODO BA
+184C;AL;MONGOLIAN LETTER TODO PA
+184D;AL;MONGOLIAN LETTER TODO QA
+184E;AL;MONGOLIAN LETTER TODO GA
+184F;AL;MONGOLIAN LETTER TODO MA
+1850;AL;MONGOLIAN LETTER TODO TA
+1851;AL;MONGOLIAN LETTER TODO DA
+1852;AL;MONGOLIAN LETTER TODO CHA
+1853;AL;MONGOLIAN LETTER TODO JA
+1854;AL;MONGOLIAN LETTER TODO TSA
+1855;AL;MONGOLIAN LETTER TODO YA
+1856;AL;MONGOLIAN LETTER TODO WA
+1857;AL;MONGOLIAN LETTER TODO KA
+1858;AL;MONGOLIAN LETTER TODO GAA
+1859;AL;MONGOLIAN LETTER TODO HAA
+185A;AL;MONGOLIAN LETTER TODO JIA
+185B;AL;MONGOLIAN LETTER TODO NIA
+185C;AL;MONGOLIAN LETTER TODO DZA
+185D;AL;MONGOLIAN LETTER SIBE E
+185E;AL;MONGOLIAN LETTER SIBE I
+185F;AL;MONGOLIAN LETTER SIBE IY
+1860;AL;MONGOLIAN LETTER SIBE UE
+1861;AL;MONGOLIAN LETTER SIBE U
+1862;AL;MONGOLIAN LETTER SIBE ANG
+1863;AL;MONGOLIAN LETTER SIBE KA
+1864;AL;MONGOLIAN LETTER SIBE GA
+1865;AL;MONGOLIAN LETTER SIBE HA
+1866;AL;MONGOLIAN LETTER SIBE PA
+1867;AL;MONGOLIAN LETTER SIBE SHA
+1868;AL;MONGOLIAN LETTER SIBE TA
+1869;AL;MONGOLIAN LETTER SIBE DA
+186A;AL;MONGOLIAN LETTER SIBE JA
+186B;AL;MONGOLIAN LETTER SIBE FA
+186C;AL;MONGOLIAN LETTER SIBE GAA
+186D;AL;MONGOLIAN LETTER SIBE HAA
+186E;AL;MONGOLIAN LETTER SIBE TSA
+186F;AL;MONGOLIAN LETTER SIBE ZA
+1870;AL;MONGOLIAN LETTER SIBE RAA
+1871;AL;MONGOLIAN LETTER SIBE CHA
+1872;AL;MONGOLIAN LETTER SIBE ZHA
+1873;AL;MONGOLIAN LETTER MANCHU I
+1874;AL;MONGOLIAN LETTER MANCHU KA
+1875;AL;MONGOLIAN LETTER MANCHU RA
+1876;AL;MONGOLIAN LETTER MANCHU FA
+1877;AL;MONGOLIAN LETTER MANCHU ZHA
+1880;AL;MONGOLIAN LETTER ALI GALI ANUSVARA ONE
+1881;AL;MONGOLIAN LETTER ALI GALI VISARGA ONE
+1882;AL;MONGOLIAN LETTER ALI GALI DAMARU
+1883;AL;MONGOLIAN LETTER ALI GALI UBADAMA
+1884;AL;MONGOLIAN LETTER ALI GALI INVERTED UBADAMA
+1885;AL;MONGOLIAN LETTER ALI GALI BALUDA
+1886;AL;MONGOLIAN LETTER ALI GALI THREE BALUDA
+1887;AL;MONGOLIAN LETTER ALI GALI A
+1888;AL;MONGOLIAN LETTER ALI GALI I
+1889;AL;MONGOLIAN LETTER ALI GALI KA
+188A;AL;MONGOLIAN LETTER ALI GALI NGA
+188B;AL;MONGOLIAN LETTER ALI GALI CA
+188C;AL;MONGOLIAN LETTER ALI GALI TTA
+188D;AL;MONGOLIAN LETTER ALI GALI TTHA
+188E;AL;MONGOLIAN LETTER ALI GALI DDA
+188F;AL;MONGOLIAN LETTER ALI GALI NNA
+1890;AL;MONGOLIAN LETTER ALI GALI TA
+1891;AL;MONGOLIAN LETTER ALI GALI DA
+1892;AL;MONGOLIAN LETTER ALI GALI PA
+1893;AL;MONGOLIAN LETTER ALI GALI PHA
+1894;AL;MONGOLIAN LETTER ALI GALI SSA
+1895;AL;MONGOLIAN LETTER ALI GALI ZHA
+1896;AL;MONGOLIAN LETTER ALI GALI ZA
+1897;AL;MONGOLIAN LETTER ALI GALI AH
+1898;AL;MONGOLIAN LETTER TODO ALI GALI TA
+1899;AL;MONGOLIAN LETTER TODO ALI GALI ZHA
+189A;AL;MONGOLIAN LETTER MANCHU ALI GALI GHA
+189B;AL;MONGOLIAN LETTER MANCHU ALI GALI NGA
+189C;AL;MONGOLIAN LETTER MANCHU ALI GALI CA
+189D;AL;MONGOLIAN LETTER MANCHU ALI GALI JHA
+189E;AL;MONGOLIAN LETTER MANCHU ALI GALI TTA
+189F;AL;MONGOLIAN LETTER MANCHU ALI GALI DDHA
+18A0;AL;MONGOLIAN LETTER MANCHU ALI GALI TA
+18A1;AL;MONGOLIAN LETTER MANCHU ALI GALI DHA
+18A2;AL;MONGOLIAN LETTER MANCHU ALI GALI SSA
+18A3;AL;MONGOLIAN LETTER MANCHU ALI GALI CYA
+18A4;AL;MONGOLIAN LETTER MANCHU ALI GALI ZHA
+18A5;AL;MONGOLIAN LETTER MANCHU ALI GALI ZA
+18A6;AL;MONGOLIAN LETTER ALI GALI HALF U
+18A7;AL;MONGOLIAN LETTER ALI GALI HALF YA
+18A8;AL;MONGOLIAN LETTER MANCHU ALI GALI BHA
+18A9;CM;MONGOLIAN LETTER ALI GALI DAGALGA
+1E00;AL;LATIN CAPITAL LETTER A WITH RING BELOW
+1E01;AL;LATIN SMALL LETTER A WITH RING BELOW
+1E02;AL;LATIN CAPITAL LETTER B WITH DOT ABOVE
+1E03;AL;LATIN SMALL LETTER B WITH DOT ABOVE
+1E04;AL;LATIN CAPITAL LETTER B WITH DOT BELOW
+1E05;AL;LATIN SMALL LETTER B WITH DOT BELOW
+1E06;AL;LATIN CAPITAL LETTER B WITH LINE BELOW
+1E07;AL;LATIN SMALL LETTER B WITH LINE BELOW
+1E08;AL;LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE
+1E09;AL;LATIN SMALL LETTER C WITH CEDILLA AND ACUTE
+1E0A;AL;LATIN CAPITAL LETTER D WITH DOT ABOVE
+1E0B;AL;LATIN SMALL LETTER D WITH DOT ABOVE
+1E0C;AL;LATIN CAPITAL LETTER D WITH DOT BELOW
+1E0D;AL;LATIN SMALL LETTER D WITH DOT BELOW
+1E0E;AL;LATIN CAPITAL LETTER D WITH LINE BELOW
+1E0F;AL;LATIN SMALL LETTER D WITH LINE BELOW
+1E10;AL;LATIN CAPITAL LETTER D WITH CEDILLA
+1E11;AL;LATIN SMALL LETTER D WITH CEDILLA
+1E12;AL;LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW
+1E13;AL;LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW
+1E14;AL;LATIN CAPITAL LETTER E WITH MACRON AND GRAVE
+1E15;AL;LATIN SMALL LETTER E WITH MACRON AND GRAVE
+1E16;AL;LATIN CAPITAL LETTER E WITH MACRON AND ACUTE
+1E17;AL;LATIN SMALL LETTER E WITH MACRON AND ACUTE
+1E18;AL;LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW
+1E19;AL;LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW
+1E1A;AL;LATIN CAPITAL LETTER E WITH TILDE BELOW
+1E1B;AL;LATIN SMALL LETTER E WITH TILDE BELOW
+1E1C;AL;LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE
+1E1D;AL;LATIN SMALL LETTER E WITH CEDILLA AND BREVE
+1E1E;AL;LATIN CAPITAL LETTER F WITH DOT ABOVE
+1E1F;AL;LATIN SMALL LETTER F WITH DOT ABOVE
+1E20;AL;LATIN CAPITAL LETTER G WITH MACRON
+1E21;AL;LATIN SMALL LETTER G WITH MACRON
+1E22;AL;LATIN CAPITAL LETTER H WITH DOT ABOVE
+1E23;AL;LATIN SMALL LETTER H WITH DOT ABOVE
+1E24;AL;LATIN CAPITAL LETTER H WITH DOT BELOW
+1E25;AL;LATIN SMALL LETTER H WITH DOT BELOW
+1E26;AL;LATIN CAPITAL LETTER H WITH DIAERESIS
+1E27;AL;LATIN SMALL LETTER H WITH DIAERESIS
+1E28;AL;LATIN CAPITAL LETTER H WITH CEDILLA
+1E29;AL;LATIN SMALL LETTER H WITH CEDILLA
+1E2A;AL;LATIN CAPITAL LETTER H WITH BREVE BELOW
+1E2B;AL;LATIN SMALL LETTER H WITH BREVE BELOW
+1E2C;AL;LATIN CAPITAL LETTER I WITH TILDE BELOW
+1E2D;AL;LATIN SMALL LETTER I WITH TILDE BELOW
+1E2E;AL;LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE
+1E2F;AL;LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE
+1E30;AL;LATIN CAPITAL LETTER K WITH ACUTE
+1E31;AL;LATIN SMALL LETTER K WITH ACUTE
+1E32;AL;LATIN CAPITAL LETTER K WITH DOT BELOW
+1E33;AL;LATIN SMALL LETTER K WITH DOT BELOW
+1E34;AL;LATIN CAPITAL LETTER K WITH LINE BELOW
+1E35;AL;LATIN SMALL LETTER K WITH LINE BELOW
+1E36;AL;LATIN CAPITAL LETTER L WITH DOT BELOW
+1E37;AL;LATIN SMALL LETTER L WITH DOT BELOW
+1E38;AL;LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON
+1E39;AL;LATIN SMALL LETTER L WITH DOT BELOW AND MACRON
+1E3A;AL;LATIN CAPITAL LETTER L WITH LINE BELOW
+1E3B;AL;LATIN SMALL LETTER L WITH LINE BELOW
+1E3C;AL;LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW
+1E3D;AL;LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW
+1E3E;AL;LATIN CAPITAL LETTER M WITH ACUTE
+1E3F;AL;LATIN SMALL LETTER M WITH ACUTE
+1E40;AL;LATIN CAPITAL LETTER M WITH DOT ABOVE
+1E41;AL;LATIN SMALL LETTER M WITH DOT ABOVE
+1E42;AL;LATIN CAPITAL LETTER M WITH DOT BELOW
+1E43;AL;LATIN SMALL LETTER M WITH DOT BELOW
+1E44;AL;LATIN CAPITAL LETTER N WITH DOT ABOVE
+1E45;AL;LATIN SMALL LETTER N WITH DOT ABOVE
+1E46;AL;LATIN CAPITAL LETTER N WITH DOT BELOW
+1E47;AL;LATIN SMALL LETTER N WITH DOT BELOW
+1E48;AL;LATIN CAPITAL LETTER N WITH LINE BELOW
+1E49;AL;LATIN SMALL LETTER N WITH LINE BELOW
+1E4A;AL;LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW
+1E4B;AL;LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW
+1E4C;AL;LATIN CAPITAL LETTER O WITH TILDE AND ACUTE
+1E4D;AL;LATIN SMALL LETTER O WITH TILDE AND ACUTE
+1E4E;AL;LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS
+1E4F;AL;LATIN SMALL LETTER O WITH TILDE AND DIAERESIS
+1E50;AL;LATIN CAPITAL LETTER O WITH MACRON AND GRAVE
+1E51;AL;LATIN SMALL LETTER O WITH MACRON AND GRAVE
+1E52;AL;LATIN CAPITAL LETTER O WITH MACRON AND ACUTE
+1E53;AL;LATIN SMALL LETTER O WITH MACRON AND ACUTE
+1E54;AL;LATIN CAPITAL LETTER P WITH ACUTE
+1E55;AL;LATIN SMALL LETTER P WITH ACUTE
+1E56;AL;LATIN CAPITAL LETTER P WITH DOT ABOVE
+1E57;AL;LATIN SMALL LETTER P WITH DOT ABOVE
+1E58;AL;LATIN CAPITAL LETTER R WITH DOT ABOVE
+1E59;AL;LATIN SMALL LETTER R WITH DOT ABOVE
+1E5A;AL;LATIN CAPITAL LETTER R WITH DOT BELOW
+1E5B;AL;LATIN SMALL LETTER R WITH DOT BELOW
+1E5C;AL;LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON
+1E5D;AL;LATIN SMALL LETTER R WITH DOT BELOW AND MACRON
+1E5E;AL;LATIN CAPITAL LETTER R WITH LINE BELOW
+1E5F;AL;LATIN SMALL LETTER R WITH LINE BELOW
+1E60;AL;LATIN CAPITAL LETTER S WITH DOT ABOVE
+1E61;AL;LATIN SMALL LETTER S WITH DOT ABOVE
+1E62;AL;LATIN CAPITAL LETTER S WITH DOT BELOW
+1E63;AL;LATIN SMALL LETTER S WITH DOT BELOW
+1E64;AL;LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE
+1E65;AL;LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE
+1E66;AL;LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE
+1E67;AL;LATIN SMALL LETTER S WITH CARON AND DOT ABOVE
+1E68;AL;LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE
+1E69;AL;LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE
+1E6A;AL;LATIN CAPITAL LETTER T WITH DOT ABOVE
+1E6B;AL;LATIN SMALL LETTER T WITH DOT ABOVE
+1E6C;AL;LATIN CAPITAL LETTER T WITH DOT BELOW
+1E6D;AL;LATIN SMALL LETTER T WITH DOT BELOW
+1E6E;AL;LATIN CAPITAL LETTER T WITH LINE BELOW
+1E6F;AL;LATIN SMALL LETTER T WITH LINE BELOW
+1E70;AL;LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW
+1E71;AL;LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW
+1E72;AL;LATIN CAPITAL LETTER U WITH DIAERESIS BELOW
+1E73;AL;LATIN SMALL LETTER U WITH DIAERESIS BELOW
+1E74;AL;LATIN CAPITAL LETTER U WITH TILDE BELOW
+1E75;AL;LATIN SMALL LETTER U WITH TILDE BELOW
+1E76;AL;LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW
+1E77;AL;LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW
+1E78;AL;LATIN CAPITAL LETTER U WITH TILDE AND ACUTE
+1E79;AL;LATIN SMALL LETTER U WITH TILDE AND ACUTE
+1E7A;AL;LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS
+1E7B;AL;LATIN SMALL LETTER U WITH MACRON AND DIAERESIS
+1E7C;AL;LATIN CAPITAL LETTER V WITH TILDE
+1E7D;AL;LATIN SMALL LETTER V WITH TILDE
+1E7E;AL;LATIN CAPITAL LETTER V WITH DOT BELOW
+1E7F;AL;LATIN SMALL LETTER V WITH DOT BELOW
+1E80;AL;LATIN CAPITAL LETTER W WITH GRAVE
+1E81;AL;LATIN SMALL LETTER W WITH GRAVE
+1E82;AL;LATIN CAPITAL LETTER W WITH ACUTE
+1E83;AL;LATIN SMALL LETTER W WITH ACUTE
+1E84;AL;LATIN CAPITAL LETTER W WITH DIAERESIS
+1E85;AL;LATIN SMALL LETTER W WITH DIAERESIS
+1E86;AL;LATIN CAPITAL LETTER W WITH DOT ABOVE
+1E87;AL;LATIN SMALL LETTER W WITH DOT ABOVE
+1E88;AL;LATIN CAPITAL LETTER W WITH DOT BELOW
+1E89;AL;LATIN SMALL LETTER W WITH DOT BELOW
+1E8A;AL;LATIN CAPITAL LETTER X WITH DOT ABOVE
+1E8B;AL;LATIN SMALL LETTER X WITH DOT ABOVE
+1E8C;AL;LATIN CAPITAL LETTER X WITH DIAERESIS
+1E8D;AL;LATIN SMALL LETTER X WITH DIAERESIS
+1E8E;AL;LATIN CAPITAL LETTER Y WITH DOT ABOVE
+1E8F;AL;LATIN SMALL LETTER Y WITH DOT ABOVE
+1E90;AL;LATIN CAPITAL LETTER Z WITH CIRCUMFLEX
+1E91;AL;LATIN SMALL LETTER Z WITH CIRCUMFLEX
+1E92;AL;LATIN CAPITAL LETTER Z WITH DOT BELOW
+1E93;AL;LATIN SMALL LETTER Z WITH DOT BELOW
+1E94;AL;LATIN CAPITAL LETTER Z WITH LINE BELOW
+1E95;AL;LATIN SMALL LETTER Z WITH LINE BELOW
+1E96;AL;LATIN SMALL LETTER H WITH LINE BELOW
+1E97;AL;LATIN SMALL LETTER T WITH DIAERESIS
+1E98;AL;LATIN SMALL LETTER W WITH RING ABOVE
+1E99;AL;LATIN SMALL LETTER Y WITH RING ABOVE
+1E9A;AL;LATIN SMALL LETTER A WITH RIGHT HALF RING
+1E9B;AL;LATIN SMALL LETTER LONG S WITH DOT ABOVE
+1EA0;AL;LATIN CAPITAL LETTER A WITH DOT BELOW
+1EA1;AL;LATIN SMALL LETTER A WITH DOT BELOW
+1EA2;AL;LATIN CAPITAL LETTER A WITH HOOK ABOVE
+1EA3;AL;LATIN SMALL LETTER A WITH HOOK ABOVE
+1EA4;AL;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE
+1EA5;AL;LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE
+1EA6;AL;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE
+1EA7;AL;LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE
+1EA8;AL;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+1EA9;AL;LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+1EAA;AL;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE
+1EAB;AL;LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
+1EAC;AL;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+1EAD;AL;LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+1EAE;AL;LATIN CAPITAL LETTER A WITH BREVE AND ACUTE
+1EAF;AL;LATIN SMALL LETTER A WITH BREVE AND ACUTE
+1EB0;AL;LATIN CAPITAL LETTER A WITH BREVE AND GRAVE
+1EB1;AL;LATIN SMALL LETTER A WITH BREVE AND GRAVE
+1EB2;AL;LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE
+1EB3;AL;LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE
+1EB4;AL;LATIN CAPITAL LETTER A WITH BREVE AND TILDE
+1EB5;AL;LATIN SMALL LETTER A WITH BREVE AND TILDE
+1EB6;AL;LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW
+1EB7;AL;LATIN SMALL LETTER A WITH BREVE AND DOT BELOW
+1EB8;AL;LATIN CAPITAL LETTER E WITH DOT BELOW
+1EB9;AL;LATIN SMALL LETTER E WITH DOT BELOW
+1EBA;AL;LATIN CAPITAL LETTER E WITH HOOK ABOVE
+1EBB;AL;LATIN SMALL LETTER E WITH HOOK ABOVE
+1EBC;AL;LATIN CAPITAL LETTER E WITH TILDE
+1EBD;AL;LATIN SMALL LETTER E WITH TILDE
+1EBE;AL;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE
+1EBF;AL;LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
+1EC0;AL;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE
+1EC1;AL;LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
+1EC2;AL;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+1EC3;AL;LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+1EC4;AL;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE
+1EC5;AL;LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
+1EC6;AL;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+1EC7;AL;LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+1EC8;AL;LATIN CAPITAL LETTER I WITH HOOK ABOVE
+1EC9;AL;LATIN SMALL LETTER I WITH HOOK ABOVE
+1ECA;AL;LATIN CAPITAL LETTER I WITH DOT BELOW
+1ECB;AL;LATIN SMALL LETTER I WITH DOT BELOW
+1ECC;AL;LATIN CAPITAL LETTER O WITH DOT BELOW
+1ECD;AL;LATIN SMALL LETTER O WITH DOT BELOW
+1ECE;AL;LATIN CAPITAL LETTER O WITH HOOK ABOVE
+1ECF;AL;LATIN SMALL LETTER O WITH HOOK ABOVE
+1ED0;AL;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE
+1ED1;AL;LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE
+1ED2;AL;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE
+1ED3;AL;LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE
+1ED4;AL;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+1ED5;AL;LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+1ED6;AL;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE
+1ED7;AL;LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE
+1ED8;AL;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+1ED9;AL;LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+1EDA;AL;LATIN CAPITAL LETTER O WITH HORN AND ACUTE
+1EDB;AL;LATIN SMALL LETTER O WITH HORN AND ACUTE
+1EDC;AL;LATIN CAPITAL LETTER O WITH HORN AND GRAVE
+1EDD;AL;LATIN SMALL LETTER O WITH HORN AND GRAVE
+1EDE;AL;LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE
+1EDF;AL;LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE
+1EE0;AL;LATIN CAPITAL LETTER O WITH HORN AND TILDE
+1EE1;AL;LATIN SMALL LETTER O WITH HORN AND TILDE
+1EE2;AL;LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW
+1EE3;AL;LATIN SMALL LETTER O WITH HORN AND DOT BELOW
+1EE4;AL;LATIN CAPITAL LETTER U WITH DOT BELOW
+1EE5;AL;LATIN SMALL LETTER U WITH DOT BELOW
+1EE6;AL;LATIN CAPITAL LETTER U WITH HOOK ABOVE
+1EE7;AL;LATIN SMALL LETTER U WITH HOOK ABOVE
+1EE8;AL;LATIN CAPITAL LETTER U WITH HORN AND ACUTE
+1EE9;AL;LATIN SMALL LETTER U WITH HORN AND ACUTE
+1EEA;AL;LATIN CAPITAL LETTER U WITH HORN AND GRAVE
+1EEB;AL;LATIN SMALL LETTER U WITH HORN AND GRAVE
+1EEC;AL;LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE
+1EED;AL;LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE
+1EEE;AL;LATIN CAPITAL LETTER U WITH HORN AND TILDE
+1EEF;AL;LATIN SMALL LETTER U WITH HORN AND TILDE
+1EF0;AL;LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW
+1EF1;AL;LATIN SMALL LETTER U WITH HORN AND DOT BELOW
+1EF2;AL;LATIN CAPITAL LETTER Y WITH GRAVE
+1EF3;AL;LATIN SMALL LETTER Y WITH GRAVE
+1EF4;AL;LATIN CAPITAL LETTER Y WITH DOT BELOW
+1EF5;AL;LATIN SMALL LETTER Y WITH DOT BELOW
+1EF6;AL;LATIN CAPITAL LETTER Y WITH HOOK ABOVE
+1EF7;AL;LATIN SMALL LETTER Y WITH HOOK ABOVE
+1EF8;AL;LATIN CAPITAL LETTER Y WITH TILDE
+1EF9;AL;LATIN SMALL LETTER Y WITH TILDE
+1F00;AL;GREEK SMALL LETTER ALPHA WITH PSILI
+1F01;AL;GREEK SMALL LETTER ALPHA WITH DASIA
+1F02;AL;GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA
+1F03;AL;GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA
+1F04;AL;GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA
+1F05;AL;GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA
+1F06;AL;GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI
+1F07;AL;GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI
+1F08;AL;GREEK CAPITAL LETTER ALPHA WITH PSILI
+1F09;AL;GREEK CAPITAL LETTER ALPHA WITH DASIA
+1F0A;AL;GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA
+1F0B;AL;GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA
+1F0C;AL;GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA
+1F0D;AL;GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA
+1F0E;AL;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI
+1F0F;AL;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI
+1F10;AL;GREEK SMALL LETTER EPSILON WITH PSILI
+1F11;AL;GREEK SMALL LETTER EPSILON WITH DASIA
+1F12;AL;GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA
+1F13;AL;GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA
+1F14;AL;GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA
+1F15;AL;GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA
+1F18;AL;GREEK CAPITAL LETTER EPSILON WITH PSILI
+1F19;AL;GREEK CAPITAL LETTER EPSILON WITH DASIA
+1F1A;AL;GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA
+1F1B;AL;GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA
+1F1C;AL;GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA
+1F1D;AL;GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA
+1F20;AL;GREEK SMALL LETTER ETA WITH PSILI
+1F21;AL;GREEK SMALL LETTER ETA WITH DASIA
+1F22;AL;GREEK SMALL LETTER ETA WITH PSILI AND VARIA
+1F23;AL;GREEK SMALL LETTER ETA WITH DASIA AND VARIA
+1F24;AL;GREEK SMALL LETTER ETA WITH PSILI AND OXIA
+1F25;AL;GREEK SMALL LETTER ETA WITH DASIA AND OXIA
+1F26;AL;GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI
+1F27;AL;GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI
+1F28;AL;GREEK CAPITAL LETTER ETA WITH PSILI
+1F29;AL;GREEK CAPITAL LETTER ETA WITH DASIA
+1F2A;AL;GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA
+1F2B;AL;GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA
+1F2C;AL;GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA
+1F2D;AL;GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA
+1F2E;AL;GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI
+1F2F;AL;GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI
+1F30;AL;GREEK SMALL LETTER IOTA WITH PSILI
+1F31;AL;GREEK SMALL LETTER IOTA WITH DASIA
+1F32;AL;GREEK SMALL LETTER IOTA WITH PSILI AND VARIA
+1F33;AL;GREEK SMALL LETTER IOTA WITH DASIA AND VARIA
+1F34;AL;GREEK SMALL LETTER IOTA WITH PSILI AND OXIA
+1F35;AL;GREEK SMALL LETTER IOTA WITH DASIA AND OXIA
+1F36;AL;GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI
+1F37;AL;GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI
+1F38;AL;GREEK CAPITAL LETTER IOTA WITH PSILI
+1F39;AL;GREEK CAPITAL LETTER IOTA WITH DASIA
+1F3A;AL;GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA
+1F3B;AL;GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA
+1F3C;AL;GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA
+1F3D;AL;GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA
+1F3E;AL;GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI
+1F3F;AL;GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI
+1F40;AL;GREEK SMALL LETTER OMICRON WITH PSILI
+1F41;AL;GREEK SMALL LETTER OMICRON WITH DASIA
+1F42;AL;GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA
+1F43;AL;GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA
+1F44;AL;GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA
+1F45;AL;GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA
+1F48;AL;GREEK CAPITAL LETTER OMICRON WITH PSILI
+1F49;AL;GREEK CAPITAL LETTER OMICRON WITH DASIA
+1F4A;AL;GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA
+1F4B;AL;GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA
+1F4C;AL;GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA
+1F4D;AL;GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA
+1F50;AL;GREEK SMALL LETTER UPSILON WITH PSILI
+1F51;AL;GREEK SMALL LETTER UPSILON WITH DASIA
+1F52;AL;GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA
+1F53;AL;GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA
+1F54;AL;GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA
+1F55;AL;GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA
+1F56;AL;GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI
+1F57;AL;GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI
+1F59;AL;GREEK CAPITAL LETTER UPSILON WITH DASIA
+1F5B;AL;GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA
+1F5D;AL;GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA
+1F5F;AL;GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI
+1F60;AL;GREEK SMALL LETTER OMEGA WITH PSILI
+1F61;AL;GREEK SMALL LETTER OMEGA WITH DASIA
+1F62;AL;GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA
+1F63;AL;GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA
+1F64;AL;GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA
+1F65;AL;GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA
+1F66;AL;GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI
+1F67;AL;GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI
+1F68;AL;GREEK CAPITAL LETTER OMEGA WITH PSILI
+1F69;AL;GREEK CAPITAL LETTER OMEGA WITH DASIA
+1F6A;AL;GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA
+1F6B;AL;GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA
+1F6C;AL;GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA
+1F6D;AL;GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA
+1F6E;AL;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI
+1F6F;AL;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI
+1F70;AL;GREEK SMALL LETTER ALPHA WITH VARIA
+1F71;AL;GREEK SMALL LETTER ALPHA WITH OXIA
+1F72;AL;GREEK SMALL LETTER EPSILON WITH VARIA
+1F73;AL;GREEK SMALL LETTER EPSILON WITH OXIA
+1F74;AL;GREEK SMALL LETTER ETA WITH VARIA
+1F75;AL;GREEK SMALL LETTER ETA WITH OXIA
+1F76;AL;GREEK SMALL LETTER IOTA WITH VARIA
+1F77;AL;GREEK SMALL LETTER IOTA WITH OXIA
+1F78;AL;GREEK SMALL LETTER OMICRON WITH VARIA
+1F79;AL;GREEK SMALL LETTER OMICRON WITH OXIA
+1F7A;AL;GREEK SMALL LETTER UPSILON WITH VARIA
+1F7B;AL;GREEK SMALL LETTER UPSILON WITH OXIA
+1F7C;AL;GREEK SMALL LETTER OMEGA WITH VARIA
+1F7D;AL;GREEK SMALL LETTER OMEGA WITH OXIA
+1F80;AL;GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI
+1F81;AL;GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI
+1F82;AL;GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1F83;AL;GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1F84;AL;GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1F85;AL;GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1F86;AL;GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1F87;AL;GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1F88;AL;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI
+1F89;AL;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI
+1F8A;AL;GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1F8B;AL;GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1F8C;AL;GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1F8D;AL;GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1F8E;AL;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1F8F;AL;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1F90;AL;GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI
+1F91;AL;GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI
+1F92;AL;GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1F93;AL;GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1F94;AL;GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1F95;AL;GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1F96;AL;GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1F97;AL;GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1F98;AL;GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI
+1F99;AL;GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI
+1F9A;AL;GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1F9B;AL;GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1F9C;AL;GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1F9D;AL;GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1F9E;AL;GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1F9F;AL;GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1FA0;AL;GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI
+1FA1;AL;GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI
+1FA2;AL;GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1FA3;AL;GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1FA4;AL;GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1FA5;AL;GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1FA6;AL;GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1FA7;AL;GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1FA8;AL;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI
+1FA9;AL;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI
+1FAA;AL;GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1FAB;AL;GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1FAC;AL;GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1FAD;AL;GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1FAE;AL;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1FAF;AL;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1FB0;AL;GREEK SMALL LETTER ALPHA WITH VRACHY
+1FB1;AL;GREEK SMALL LETTER ALPHA WITH MACRON
+1FB2;AL;GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI
+1FB3;AL;GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI
+1FB4;AL;GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
+1FB6;AL;GREEK SMALL LETTER ALPHA WITH PERISPOMENI
+1FB7;AL;GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI
+1FB8;AL;GREEK CAPITAL LETTER ALPHA WITH VRACHY
+1FB9;AL;GREEK CAPITAL LETTER ALPHA WITH MACRON
+1FBA;AL;GREEK CAPITAL LETTER ALPHA WITH VARIA
+1FBB;AL;GREEK CAPITAL LETTER ALPHA WITH OXIA
+1FBC;AL;GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI
+1FBD;AL;GREEK KORONIS
+1FBE;AL;GREEK PROSGEGRAMMENI
+1FBF;AL;GREEK PSILI
+1FC0;AL;GREEK PERISPOMENI
+1FC1;AL;GREEK DIALYTIKA AND PERISPOMENI
+1FC2;AL;GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI
+1FC3;AL;GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI
+1FC4;AL;GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
+1FC6;AL;GREEK SMALL LETTER ETA WITH PERISPOMENI
+1FC7;AL;GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI
+1FC8;AL;GREEK CAPITAL LETTER EPSILON WITH VARIA
+1FC9;AL;GREEK CAPITAL LETTER EPSILON WITH OXIA
+1FCA;AL;GREEK CAPITAL LETTER ETA WITH VARIA
+1FCB;AL;GREEK CAPITAL LETTER ETA WITH OXIA
+1FCC;AL;GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI
+1FCD;AL;GREEK PSILI AND VARIA
+1FCE;AL;GREEK PSILI AND OXIA
+1FCF;AL;GREEK PSILI AND PERISPOMENI
+1FD0;AL;GREEK SMALL LETTER IOTA WITH VRACHY
+1FD1;AL;GREEK SMALL LETTER IOTA WITH MACRON
+1FD2;AL;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA
+1FD3;AL;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
+1FD6;AL;GREEK SMALL LETTER IOTA WITH PERISPOMENI
+1FD7;AL;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI
+1FD8;AL;GREEK CAPITAL LETTER IOTA WITH VRACHY
+1FD9;AL;GREEK CAPITAL LETTER IOTA WITH MACRON
+1FDA;AL;GREEK CAPITAL LETTER IOTA WITH VARIA
+1FDB;AL;GREEK CAPITAL LETTER IOTA WITH OXIA
+1FDD;AL;GREEK DASIA AND VARIA
+1FDE;AL;GREEK DASIA AND OXIA
+1FDF;AL;GREEK DASIA AND PERISPOMENI
+1FE0;AL;GREEK SMALL LETTER UPSILON WITH VRACHY
+1FE1;AL;GREEK SMALL LETTER UPSILON WITH MACRON
+1FE2;AL;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA
+1FE3;AL;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
+1FE4;AL;GREEK SMALL LETTER RHO WITH PSILI
+1FE5;AL;GREEK SMALL LETTER RHO WITH DASIA
+1FE6;AL;GREEK SMALL LETTER UPSILON WITH PERISPOMENI
+1FE7;AL;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
+1FE8;AL;GREEK CAPITAL LETTER UPSILON WITH VRACHY
+1FE9;AL;GREEK CAPITAL LETTER UPSILON WITH MACRON
+1FEA;AL;GREEK CAPITAL LETTER UPSILON WITH VARIA
+1FEB;AL;GREEK CAPITAL LETTER UPSILON WITH OXIA
+1FEC;AL;GREEK CAPITAL LETTER RHO WITH DASIA
+1FED;AL;GREEK DIALYTIKA AND VARIA
+1FEE;AL;GREEK DIALYTIKA AND OXIA
+1FEF;AL;GREEK VARIA
+1FF2;AL;GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI
+1FF3;AL;GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI
+1FF4;AL;GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
+1FF6;AL;GREEK SMALL LETTER OMEGA WITH PERISPOMENI
+1FF7;AL;GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI
+1FF8;AL;GREEK CAPITAL LETTER OMICRON WITH VARIA
+1FF9;AL;GREEK CAPITAL LETTER OMICRON WITH OXIA
+1FFA;AL;GREEK CAPITAL LETTER OMEGA WITH VARIA
+1FFB;AL;GREEK CAPITAL LETTER OMEGA WITH OXIA
+1FFC;AL;GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI
+1FFD;AL;GREEK OXIA
+1FFE;AL;GREEK DASIA
+2000;BA;EN QUAD
+2001;BA;EM QUAD
+2002;BA;EN SPACE
+2003;BA;EM SPACE
+2004;BA;THREE-PER-EM SPACE
+2005;BA;FOUR-PER-EM SPACE
+2006;BA;SIX-PER-EM SPACE
+2007;GL;FIGURE SPACE
+2008;BA;PUNCTUATION SPACE
+2009;BA;THIN SPACE
+200A;BA;HAIR SPACE
+200B;ZW;ZERO WIDTH SPACE
+200C;CM;ZERO WIDTH NON-JOINER
+200D;CM;ZERO WIDTH JOINER
+200E;CM;LEFT-TO-RIGHT MARK
+200F;CM;RIGHT-TO-LEFT MARK
+2010;BA;HYPHEN
+2011;GL;NON-BREAKING HYPHEN
+2012;BA;FIGURE DASH
+2013;BA;EN DASH
+2014;B2;EM DASH
+2015;AL;HORIZONTAL BAR
+2016;AI;DOUBLE VERTICAL LINE
+2017;AL;DOUBLE LOW LINE
+2018;QU;LEFT SINGLE QUOTATION MARK
+2019;QU;RIGHT SINGLE QUOTATION MARK
+201A;OP;SINGLE LOW-9 QUOTATION MARK
+201B;QU;SINGLE HIGH-REVERSED-9 QUOTATION MARK
+201C;QU;LEFT DOUBLE QUOTATION MARK
+201D;QU;RIGHT DOUBLE QUOTATION MARK
+201E;OP;DOUBLE LOW-9 QUOTATION MARK
+201F;QU;DOUBLE HIGH-REVERSED-9 QUOTATION MARK
+2020;AI;DAGGER
+2021;AI;DOUBLE DAGGER
+2022;AL;BULLET
+2023;AL;TRIANGULAR BULLET
+2024;IN;ONE DOT LEADER
+2025;IN;TWO DOT LEADER
+2026;IN;HORIZONTAL ELLIPSIS
+2027;BA;HYPHENATION POINT
+2028;BK;LINE SEPARATOR
+2029;BK;PARAGRAPH SEPARATOR
+202A;CM;LEFT-TO-RIGHT EMBEDDING
+202B;CM;RIGHT-TO-LEFT EMBEDDING
+202C;CM;POP DIRECTIONAL FORMATTING
+202D;CM;LEFT-TO-RIGHT OVERRIDE
+202E;CM;RIGHT-TO-LEFT OVERRIDE
+202F;GL;NARROW NO-BREAK SPACE
+2030;PO;PER MILLE SIGN
+2031;PO;PER TEN THOUSAND SIGN
+2032;PO;PRIME
+2033;PO;DOUBLE PRIME
+2034;PO;TRIPLE PRIME
+2035;PO;REVERSED PRIME
+2036;PO;REVERSED DOUBLE PRIME
+2037;PO;REVERSED TRIPLE PRIME
+2038;AL;CARET
+2039;QU;SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+203A;QU;SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+203B;AI;REFERENCE MARK
+203C;NS;DOUBLE EXCLAMATION MARK
+203D;AL;INTERROBANG
+203E;AL;OVERLINE
+203F;AL;UNDERTIE
+2040;AL;CHARACTER TIE
+2041;AL;CARET INSERTION POINT
+2042;AL;ASTERISM
+2043;AL;HYPHEN BULLET
+2044;NS;FRACTION SLASH
+2045;OP;LEFT SQUARE BRACKET WITH QUILL
+2046;CL;RIGHT SQUARE BRACKET WITH QUILL
+2048;AL;QUESTION EXCLAMATION MARK
+2049;AL;EXCLAMATION QUESTION MARK
+204A;AL;TIRONIAN SIGN ET
+204B;AL;REVERSED PILCROW SIGN
+204C;AL;BLACK LEFTWARDS BULLET
+204D;AL;BLACK RIGHTWARDS BULLET
+206A;CM;INHIBIT SYMMETRIC SWAPPING
+206B;CM;ACTIVATE SYMMETRIC SWAPPING
+206C;CM;INHIBIT ARABIC FORM SHAPING
+206D;CM;ACTIVATE ARABIC FORM SHAPING
+206E;CM;NATIONAL DIGIT SHAPES
+206F;CM;NOMINAL DIGIT SHAPES
+2070;AL;SUPERSCRIPT ZERO
+2074;AI;SUPERSCRIPT FOUR
+2075;AL;SUPERSCRIPT FIVE
+2076;AL;SUPERSCRIPT SIX
+2077;AL;SUPERSCRIPT SEVEN
+2078;AL;SUPERSCRIPT EIGHT
+2079;AL;SUPERSCRIPT NINE
+207A;AL;SUPERSCRIPT PLUS SIGN
+207B;AL;SUPERSCRIPT MINUS
+207C;AL;SUPERSCRIPT EQUALS SIGN
+207D;OP;SUPERSCRIPT LEFT PARENTHESIS
+207E;CL;SUPERSCRIPT RIGHT PARENTHESIS
+207F;AI;SUPERSCRIPT LATIN SMALL LETTER N
+2080;AL;SUBSCRIPT ZERO
+2081;AI;SUBSCRIPT ONE
+2082;AI;SUBSCRIPT TWO
+2083;AI;SUBSCRIPT THREE
+2084;AI;SUBSCRIPT FOUR
+2085;AL;SUBSCRIPT FIVE
+2086;AL;SUBSCRIPT SIX
+2087;AL;SUBSCRIPT SEVEN
+2088;AL;SUBSCRIPT EIGHT
+2089;AL;SUBSCRIPT NINE
+208A;AL;SUBSCRIPT PLUS SIGN
+208B;AL;SUBSCRIPT MINUS
+208C;AL;SUBSCRIPT EQUALS SIGN
+208D;OP;SUBSCRIPT LEFT PARENTHESIS
+208E;CL;SUBSCRIPT RIGHT PARENTHESIS
+20A0;PR;EURO-CURRENCY SIGN
+20A1;PR;COLON SIGN
+20A2;PR;CRUZEIRO SIGN
+20A3;PR;FRENCH FRANC SIGN
+20A4;PR;LIRA SIGN
+20A5;PR;MILL SIGN
+20A6;PR;NAIRA SIGN
+20A7;PO;PESETA SIGN
+20A8;PR;RUPEE SIGN
+20A9;PR;WON SIGN
+20AA;PR;NEW SHEQEL SIGN
+20AB;PR;DONG SIGN
+20AC;PR;EURO SIGN
+20AD;PR;KIP SIGN
+20AE;PR;TUGRIK SIGN
+20AF;PR;DRACHMA SIGN
+20D0;CM;COMBINING LEFT HARPOON ABOVE
+20D1;CM;COMBINING RIGHT HARPOON ABOVE
+20D2;CM;COMBINING LONG VERTICAL LINE OVERLAY
+20D3;CM;COMBINING SHORT VERTICAL LINE OVERLAY
+20D4;CM;COMBINING ANTICLOCKWISE ARROW ABOVE
+20D5;CM;COMBINING CLOCKWISE ARROW ABOVE
+20D6;CM;COMBINING LEFT ARROW ABOVE
+20D7;CM;COMBINING RIGHT ARROW ABOVE
+20D8;CM;COMBINING RING OVERLAY
+20D9;CM;COMBINING CLOCKWISE RING OVERLAY
+20DA;CM;COMBINING ANTICLOCKWISE RING OVERLAY
+20DB;CM;COMBINING THREE DOTS ABOVE
+20DC;CM;COMBINING FOUR DOTS ABOVE
+20DD;CM;COMBINING ENCLOSING CIRCLE
+20DE;CM;COMBINING ENCLOSING SQUARE
+20DF;CM;COMBINING ENCLOSING DIAMOND
+20E0;CM;COMBINING ENCLOSING CIRCLE BACKSLASH
+20E1;CM;COMBINING LEFT RIGHT ARROW ABOVE
+20E2;CM;COMBINING ENCLOSING SCREEN
+20E3;CM;COMBINING ENCLOSING KEYCAP
+2100;AL;ACCOUNT OF
+2101;AL;ADDRESSED TO THE SUBJECT
+2102;AL;DOUBLE-STRUCK CAPITAL C
+2103;PO;DEGREE CELSIUS
+2104;AL;CENTRE LINE SYMBOL
+2105;AI;CARE OF
+2106;AL;CADA UNA
+2107;AL;EULER CONSTANT
+2108;AL;SCRUPLE
+2109;PO;DEGREE FAHRENHEIT
+210A;AL;SCRIPT SMALL G
+210B;AL;SCRIPT CAPITAL H
+210C;AL;BLACK-LETTER CAPITAL H
+210D;AL;DOUBLE-STRUCK CAPITAL H
+210E;AL;PLANCK CONSTANT
+210F;AL;PLANCK CONSTANT OVER TWO PI
+2110;AL;SCRIPT CAPITAL I
+2111;AL;BLACK-LETTER CAPITAL I
+2112;AL;SCRIPT CAPITAL L
+2113;AI;SCRIPT SMALL L
+2114;AL;L B BAR SYMBOL
+2115;AL;DOUBLE-STRUCK CAPITAL N
+2116;PR;NUMERO SIGN
+2117;AL;SOUND RECORDING COPYRIGHT
+2118;AL;SCRIPT CAPITAL P
+2119;AL;DOUBLE-STRUCK CAPITAL P
+211A;AL;DOUBLE-STRUCK CAPITAL Q
+211B;AL;SCRIPT CAPITAL R
+211C;AL;BLACK-LETTER CAPITAL R
+211D;AL;DOUBLE-STRUCK CAPITAL R
+211E;AL;PRESCRIPTION TAKE
+211F;AL;RESPONSE
+2120;AL;SERVICE MARK
+2121;AI;TELEPHONE SIGN
+2122;AI;TRADE MARK SIGN
+2123;AL;VERSICLE
+2124;AL;DOUBLE-STRUCK CAPITAL Z
+2125;AL;OUNCE SIGN
+2126;PO;OHM SIGN
+2127;AL;INVERTED OHM SIGN
+2128;AL;BLACK-LETTER CAPITAL Z
+2129;AL;TURNED GREEK SMALL LETTER IOTA
+212A;AL;KELVIN SIGN
+212B;AI;ANGSTROM SIGN
+212C;AL;SCRIPT CAPITAL B
+212D;AL;BLACK-LETTER CAPITAL C
+212E;AL;ESTIMATED SYMBOL
+212F;AL;SCRIPT SMALL E
+2130;AL;SCRIPT CAPITAL E
+2131;AL;SCRIPT CAPITAL F
+2132;AL;TURNED CAPITAL F
+2133;AL;SCRIPT CAPITAL M
+2134;AL;SCRIPT SMALL O
+2135;AL;ALEF SYMBOL
+2136;AL;BET SYMBOL
+2137;AL;GIMEL SYMBOL
+2138;AL;DALET SYMBOL
+2139;AL;INFORMATION SOURCE
+213A;AL;ROTATED CAPITAL Q
+2153;AL;VULGAR FRACTION ONE THIRD
+2154;AI;VULGAR FRACTION TWO THIRDS
+2155;AI;VULGAR FRACTION ONE FIFTH
+2156;AL;VULGAR FRACTION TWO FIFTHS
+2157;AL;VULGAR FRACTION THREE FIFTHS
+2158;AL;VULGAR FRACTION FOUR FIFTHS
+2159;AL;VULGAR FRACTION ONE SIXTH
+215A;AL;VULGAR FRACTION FIVE SIXTHS
+215B;AI;VULGAR FRACTION ONE EIGHTH
+215C;AL;VULGAR FRACTION THREE EIGHTHS
+215D;AL;VULGAR FRACTION FIVE EIGHTHS
+215E;AI;VULGAR FRACTION SEVEN EIGHTHS
+215F;AL;FRACTION NUMERATOR ONE
+2160;AI;ROMAN NUMERAL ONE
+2161;AI;ROMAN NUMERAL TWO
+2162;AI;ROMAN NUMERAL THREE
+2163;AI;ROMAN NUMERAL FOUR
+2164;AI;ROMAN NUMERAL FIVE
+2165;AI;ROMAN NUMERAL SIX
+2166;AI;ROMAN NUMERAL SEVEN
+2167;AI;ROMAN NUMERAL EIGHT
+2168;AI;ROMAN NUMERAL NINE
+2169;AI;ROMAN NUMERAL TEN
+216A;AI;ROMAN NUMERAL ELEVEN
+216B;AI;ROMAN NUMERAL TWELVE
+216C;AL;ROMAN NUMERAL FIFTY
+216D;AL;ROMAN NUMERAL ONE HUNDRED
+216E;AL;ROMAN NUMERAL FIVE HUNDRED
+216F;AL;ROMAN NUMERAL ONE THOUSAND
+2170;AI;SMALL ROMAN NUMERAL ONE
+2171;AI;SMALL ROMAN NUMERAL TWO
+2172;AI;SMALL ROMAN NUMERAL THREE
+2173;AI;SMALL ROMAN NUMERAL FOUR
+2174;AI;SMALL ROMAN NUMERAL FIVE
+2175;AI;SMALL ROMAN NUMERAL SIX
+2176;AI;SMALL ROMAN NUMERAL SEVEN
+2177;AI;SMALL ROMAN NUMERAL EIGHT
+2178;AI;SMALL ROMAN NUMERAL NINE
+2179;AI;SMALL ROMAN NUMERAL TEN
+217A;AL;SMALL ROMAN NUMERAL ELEVEN
+217B;AL;SMALL ROMAN NUMERAL TWELVE
+217C;AL;SMALL ROMAN NUMERAL FIFTY
+217D;AL;SMALL ROMAN NUMERAL ONE HUNDRED
+217E;AL;SMALL ROMAN NUMERAL FIVE HUNDRED
+217F;AL;SMALL ROMAN NUMERAL ONE THOUSAND
+2180;AL;ROMAN NUMERAL ONE THOUSAND C D
+2181;AL;ROMAN NUMERAL FIVE THOUSAND
+2182;AL;ROMAN NUMERAL TEN THOUSAND
+2183;AL;ROMAN NUMERAL REVERSED ONE HUNDRED
+2190;AI;LEFTWARDS ARROW
+2191;AI;UPWARDS ARROW
+2192;AI;RIGHTWARDS ARROW
+2193;AI;DOWNWARDS ARROW
+2194;AI;LEFT RIGHT ARROW
+2195;AI;UP DOWN ARROW
+2196;AI;NORTH WEST ARROW
+2197;AI;NORTH EAST ARROW
+2198;AI;SOUTH EAST ARROW
+2199;AI;SOUTH WEST ARROW
+219A;AL;LEFTWARDS ARROW WITH STROKE
+219B;AL;RIGHTWARDS ARROW WITH STROKE
+219C;AL;LEFTWARDS WAVE ARROW
+219D;AL;RIGHTWARDS WAVE ARROW
+219E;AL;LEFTWARDS TWO HEADED ARROW
+219F;AL;UPWARDS TWO HEADED ARROW
+21A0;AL;RIGHTWARDS TWO HEADED ARROW
+21A1;AL;DOWNWARDS TWO HEADED ARROW
+21A2;AL;LEFTWARDS ARROW WITH TAIL
+21A3;AL;RIGHTWARDS ARROW WITH TAIL
+21A4;AL;LEFTWARDS ARROW FROM BAR
+21A5;AL;UPWARDS ARROW FROM BAR
+21A6;AL;RIGHTWARDS ARROW FROM BAR
+21A7;AL;DOWNWARDS ARROW FROM BAR
+21A8;AL;UP DOWN ARROW WITH BASE
+21A9;AL;LEFTWARDS ARROW WITH HOOK
+21AA;AL;RIGHTWARDS ARROW WITH HOOK
+21AB;AL;LEFTWARDS ARROW WITH LOOP
+21AC;AL;RIGHTWARDS ARROW WITH LOOP
+21AD;AL;LEFT RIGHT WAVE ARROW
+21AE;AL;LEFT RIGHT ARROW WITH STROKE
+21AF;AL;DOWNWARDS ZIGZAG ARROW
+21B0;AL;UPWARDS ARROW WITH TIP LEFTWARDS
+21B1;AL;UPWARDS ARROW WITH TIP RIGHTWARDS
+21B2;AL;DOWNWARDS ARROW WITH TIP LEFTWARDS
+21B3;AL;DOWNWARDS ARROW WITH TIP RIGHTWARDS
+21B4;AL;RIGHTWARDS ARROW WITH CORNER DOWNWARDS
+21B5;AL;DOWNWARDS ARROW WITH CORNER LEFTWARDS
+21B6;AL;ANTICLOCKWISE TOP SEMICIRCLE ARROW
+21B7;AL;CLOCKWISE TOP SEMICIRCLE ARROW
+21B8;AL;NORTH WEST ARROW TO LONG BAR
+21B9;AL;LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR
+21BA;AL;ANTICLOCKWISE OPEN CIRCLE ARROW
+21BB;AL;CLOCKWISE OPEN CIRCLE ARROW
+21BC;AL;LEFTWARDS HARPOON WITH BARB UPWARDS
+21BD;AL;LEFTWARDS HARPOON WITH BARB DOWNWARDS
+21BE;AL;UPWARDS HARPOON WITH BARB RIGHTWARDS
+21BF;AL;UPWARDS HARPOON WITH BARB LEFTWARDS
+21C0;AL;RIGHTWARDS HARPOON WITH BARB UPWARDS
+21C1;AL;RIGHTWARDS HARPOON WITH BARB DOWNWARDS
+21C2;AL;DOWNWARDS HARPOON WITH BARB RIGHTWARDS
+21C3;AL;DOWNWARDS HARPOON WITH BARB LEFTWARDS
+21C4;AL;RIGHTWARDS ARROW OVER LEFTWARDS ARROW
+21C5;AL;UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW
+21C6;AL;LEFTWARDS ARROW OVER RIGHTWARDS ARROW
+21C7;AL;LEFTWARDS PAIRED ARROWS
+21C8;AL;UPWARDS PAIRED ARROWS
+21C9;AL;RIGHTWARDS PAIRED ARROWS
+21CA;AL;DOWNWARDS PAIRED ARROWS
+21CB;AL;LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
+21CC;AL;RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
+21CD;AL;LEFTWARDS DOUBLE ARROW WITH STROKE
+21CE;AL;LEFT RIGHT DOUBLE ARROW WITH STROKE
+21CF;AL;RIGHTWARDS DOUBLE ARROW WITH STROKE
+21D0;AL;LEFTWARDS DOUBLE ARROW
+21D1;AL;UPWARDS DOUBLE ARROW
+21D2;AI;RIGHTWARDS DOUBLE ARROW
+21D3;AL;DOWNWARDS DOUBLE ARROW
+21D4;AI;LEFT RIGHT DOUBLE ARROW
+21D5;AL;UP DOWN DOUBLE ARROW
+21D6;AL;NORTH WEST DOUBLE ARROW
+21D7;AL;NORTH EAST DOUBLE ARROW
+21D8;AL;SOUTH EAST DOUBLE ARROW
+21D9;AL;SOUTH WEST DOUBLE ARROW
+21DA;AL;LEFTWARDS TRIPLE ARROW
+21DB;AL;RIGHTWARDS TRIPLE ARROW
+21DC;AL;LEFTWARDS SQUIGGLE ARROW
+21DD;AL;RIGHTWARDS SQUIGGLE ARROW
+21DE;AL;UPWARDS ARROW WITH DOUBLE STROKE
+21DF;AL;DOWNWARDS ARROW WITH DOUBLE STROKE
+21E0;AL;LEFTWARDS DASHED ARROW
+21E1;AL;UPWARDS DASHED ARROW
+21E2;AL;RIGHTWARDS DASHED ARROW
+21E3;AL;DOWNWARDS DASHED ARROW
+21E4;AL;LEFTWARDS ARROW TO BAR
+21E5;AL;RIGHTWARDS ARROW TO BAR
+21E6;AL;LEFTWARDS WHITE ARROW
+21E7;AL;UPWARDS WHITE ARROW
+21E8;AL;RIGHTWARDS WHITE ARROW
+21E9;AL;DOWNWARDS WHITE ARROW
+21EA;AL;UPWARDS WHITE ARROW FROM BAR
+21EB;AL;UPWARDS WHITE ARROW ON PEDESTAL
+21EC;AL;UPWARDS WHITE ARROW ON PEDESTAL WITH HORIZONTAL BAR
+21ED;AL;UPWARDS WHITE ARROW ON PEDESTAL WITH VERTICAL BAR
+21EE;AL;UPWARDS WHITE DOUBLE ARROW
+21EF;AL;UPWARDS WHITE DOUBLE ARROW ON PEDESTAL
+21F0;AL;RIGHTWARDS WHITE ARROW FROM WALL
+21F1;AL;NORTH WEST ARROW TO CORNER
+21F2;AL;SOUTH EAST ARROW TO CORNER
+21F3;AL;UP DOWN WHITE ARROW
+2200;AI;FOR ALL
+2201;AL;COMPLEMENT
+2202;AI;PARTIAL DIFFERENTIAL
+2203;AI;THERE EXISTS
+2204;AL;THERE DOES NOT EXIST
+2205;AL;EMPTY SET
+2206;AL;INCREMENT
+2207;AI;NABLA
+2208;AI;ELEMENT OF
+2209;AL;NOT AN ELEMENT OF
+220A;AL;SMALL ELEMENT OF
+220B;AI;CONTAINS AS MEMBER
+220C;AL;DOES NOT CONTAIN AS MEMBER
+220D;AL;SMALL CONTAINS AS MEMBER
+220E;AL;END OF PROOF
+220F;AI;N-ARY PRODUCT
+2210;AL;N-ARY COPRODUCT
+2211;AI;N-ARY SUMMATION
+2212;PR;MINUS SIGN
+2213;PR;MINUS-OR-PLUS SIGN
+2214;AL;DOT PLUS
+2215;AI;DIVISION SLASH
+2216;AL;SET MINUS
+2217;AL;ASTERISK OPERATOR
+2218;AL;RING OPERATOR
+2219;AL;BULLET OPERATOR
+221A;AI;SQUARE ROOT
+221B;AL;CUBE ROOT
+221C;AL;FOURTH ROOT
+221D;AI;PROPORTIONAL TO
+221E;AI;INFINITY
+221F;AI;RIGHT ANGLE
+2220;AI;ANGLE
+2221;AL;MEASURED ANGLE
+2222;AL;SPHERICAL ANGLE
+2223;AI;DIVIDES
+2224;AL;DOES NOT DIVIDE
+2225;AI;PARALLEL TO
+2226;AL;NOT PARALLEL TO
+2227;AI;LOGICAL AND
+2228;AI;LOGICAL OR
+2229;AI;INTERSECTION
+222A;AI;UNION
+222B;AI;INTEGRAL
+222C;AI;DOUBLE INTEGRAL
+222D;AL;TRIPLE INTEGRAL
+222E;AI;CONTOUR INTEGRAL
+222F;AL;SURFACE INTEGRAL
+2230;AL;VOLUME INTEGRAL
+2231;AL;CLOCKWISE INTEGRAL
+2232;AL;CLOCKWISE CONTOUR INTEGRAL
+2233;AL;ANTICLOCKWISE CONTOUR INTEGRAL
+2234;AI;THEREFORE
+2235;AI;BECAUSE
+2236;AI;RATIO
+2237;AI;PROPORTION
+2238;AL;DOT MINUS
+2239;AL;EXCESS
+223A;AL;GEOMETRIC PROPORTION
+223B;AL;HOMOTHETIC
+223C;AI;TILDE OPERATOR
+223D;AI;REVERSED TILDE
+223E;AL;INVERTED LAZY S
+223F;AL;SINE WAVE
+2240;AL;WREATH PRODUCT
+2241;AL;NOT TILDE
+2242;AL;MINUS TILDE
+2243;AL;ASYMPTOTICALLY EQUAL TO
+2244;AL;NOT ASYMPTOTICALLY EQUAL TO
+2245;AL;APPROXIMATELY EQUAL TO
+2246;AL;APPROXIMATELY BUT NOT ACTUALLY EQUAL TO
+2247;AL;NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
+2248;AI;ALMOST EQUAL TO
+2249;AL;NOT ALMOST EQUAL TO
+224A;AL;ALMOST EQUAL OR EQUAL TO
+224B;AL;TRIPLE TILDE
+224C;AI;ALL EQUAL TO
+224D;AL;EQUIVALENT TO
+224E;AL;GEOMETRICALLY EQUIVALENT TO
+224F;AL;DIFFERENCE BETWEEN
+2250;AL;APPROACHES THE LIMIT
+2251;AL;GEOMETRICALLY EQUAL TO
+2252;AI;APPROXIMATELY EQUAL TO OR THE IMAGE OF
+2253;AL;IMAGE OF OR APPROXIMATELY EQUAL TO
+2254;AL;COLON EQUALS
+2255;AL;EQUALS COLON
+2256;AL;RING IN EQUAL TO
+2257;AL;RING EQUAL TO
+2258;AL;CORRESPONDS TO
+2259;AL;ESTIMATES
+225A;AL;EQUIANGULAR TO
+225B;AL;STAR EQUALS
+225C;AL;DELTA EQUAL TO
+225D;AL;EQUAL TO BY DEFINITION
+225E;AL;MEASURED BY
+225F;AL;QUESTIONED EQUAL TO
+2260;AI;NOT EQUAL TO
+2261;AI;IDENTICAL TO
+2262;AL;NOT IDENTICAL TO
+2263;AL;STRICTLY EQUIVALENT TO
+2264;AI;LESS-THAN OR EQUAL TO
+2265;AI;GREATER-THAN OR EQUAL TO
+2266;AI;LESS-THAN OVER EQUAL TO
+2267;AI;GREATER-THAN OVER EQUAL TO
+2268;AL;LESS-THAN BUT NOT EQUAL TO
+2269;AL;GREATER-THAN BUT NOT EQUAL TO
+226A;AI;MUCH LESS-THAN
+226B;AI;MUCH GREATER-THAN
+226C;AL;BETWEEN
+226D;AL;NOT EQUIVALENT TO
+226E;AI;NOT LESS-THAN
+226F;AI;NOT GREATER-THAN
+2270;AL;NEITHER LESS-THAN NOR EQUAL TO
+2271;AL;NEITHER GREATER-THAN NOR EQUAL TO
+2272;AL;LESS-THAN OR EQUIVALENT TO
+2273;AL;GREATER-THAN OR EQUIVALENT TO
+2274;AL;NEITHER LESS-THAN NOR EQUIVALENT TO
+2275;AL;NEITHER GREATER-THAN NOR EQUIVALENT TO
+2276;AL;LESS-THAN OR GREATER-THAN
+2277;AL;GREATER-THAN OR LESS-THAN
+2278;AL;NEITHER LESS-THAN NOR GREATER-THAN
+2279;AL;NEITHER GREATER-THAN NOR LESS-THAN
+227A;AL;PRECEDES
+227B;AL;SUCCEEDS
+227C;AL;PRECEDES OR EQUAL TO
+227D;AL;SUCCEEDS OR EQUAL TO
+227E;AL;PRECEDES OR EQUIVALENT TO
+227F;AL;SUCCEEDS OR EQUIVALENT TO
+2280;AL;DOES NOT PRECEDE
+2281;AL;DOES NOT SUCCEED
+2282;AI;SUBSET OF
+2283;AI;SUPERSET OF
+2284;AL;NOT A SUBSET OF
+2285;AL;NOT A SUPERSET OF
+2286;AI;SUBSET OF OR EQUAL TO
+2287;AI;SUPERSET OF OR EQUAL TO
+2288;AL;NEITHER A SUBSET OF NOR EQUAL TO
+2289;AL;NEITHER A SUPERSET OF NOR EQUAL TO
+228A;AL;SUBSET OF WITH NOT EQUAL TO
+228B;AL;SUPERSET OF WITH NOT EQUAL TO
+228C;AL;MULTISET
+228D;AL;MULTISET MULTIPLICATION
+228E;AL;MULTISET UNION
+228F;AL;SQUARE IMAGE OF
+2290;AL;SQUARE ORIGINAL OF
+2291;AL;SQUARE IMAGE OF OR EQUAL TO
+2292;AL;SQUARE ORIGINAL OF OR EQUAL TO
+2293;AL;SQUARE CAP
+2294;AL;SQUARE CUP
+2295;AI;CIRCLED PLUS
+2296;AL;CIRCLED MINUS
+2297;AL;CIRCLED TIMES
+2298;AL;CIRCLED DIVISION SLASH
+2299;AI;CIRCLED DOT OPERATOR
+229A;AL;CIRCLED RING OPERATOR
+229B;AL;CIRCLED ASTERISK OPERATOR
+229C;AL;CIRCLED EQUALS
+229D;AL;CIRCLED DASH
+229E;AL;SQUARED PLUS
+229F;AL;SQUARED MINUS
+22A0;AL;SQUARED TIMES
+22A1;AL;SQUARED DOT OPERATOR
+22A2;AL;RIGHT TACK
+22A3;AL;LEFT TACK
+22A4;AL;DOWN TACK
+22A5;AI;UP TACK
+22A6;AL;ASSERTION
+22A7;AL;MODELS
+22A8;AL;TRUE
+22A9;AL;FORCES
+22AA;AL;TRIPLE VERTICAL BAR RIGHT TURNSTILE
+22AB;AL;DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
+22AC;AL;DOES NOT PROVE
+22AD;AL;NOT TRUE
+22AE;AL;DOES NOT FORCE
+22AF;AL;NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
+22B0;AL;PRECEDES UNDER RELATION
+22B1;AL;SUCCEEDS UNDER RELATION
+22B2;AL;NORMAL SUBGROUP OF
+22B3;AL;CONTAINS AS NORMAL SUBGROUP
+22B4;AL;NORMAL SUBGROUP OF OR EQUAL TO
+22B5;AL;CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
+22B6;AL;ORIGINAL OF
+22B7;AL;IMAGE OF
+22B8;AL;MULTIMAP
+22B9;AL;HERMITIAN CONJUGATE MATRIX
+22BA;AL;INTERCALATE
+22BB;AL;XOR
+22BC;AL;NAND
+22BD;AL;NOR
+22BE;AL;RIGHT ANGLE WITH ARC
+22BF;AI;RIGHT TRIANGLE
+22C0;AL;N-ARY LOGICAL AND
+22C1;AL;N-ARY LOGICAL OR
+22C2;AL;N-ARY INTERSECTION
+22C3;AL;N-ARY UNION
+22C4;AL;DIAMOND OPERATOR
+22C5;AL;DOT OPERATOR
+22C6;AL;STAR OPERATOR
+22C7;AL;DIVISION TIMES
+22C8;AL;BOWTIE
+22C9;AL;LEFT NORMAL FACTOR SEMIDIRECT PRODUCT
+22CA;AL;RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT
+22CB;AL;LEFT SEMIDIRECT PRODUCT
+22CC;AL;RIGHT SEMIDIRECT PRODUCT
+22CD;AL;REVERSED TILDE EQUALS
+22CE;AL;CURLY LOGICAL OR
+22CF;AL;CURLY LOGICAL AND
+22D0;AL;DOUBLE SUBSET
+22D1;AL;DOUBLE SUPERSET
+22D2;AL;DOUBLE INTERSECTION
+22D3;AL;DOUBLE UNION
+22D4;AL;PITCHFORK
+22D5;AL;EQUAL AND PARALLEL TO
+22D6;AL;LESS-THAN WITH DOT
+22D7;AL;GREATER-THAN WITH DOT
+22D8;AL;VERY MUCH LESS-THAN
+22D9;AL;VERY MUCH GREATER-THAN
+22DA;AL;LESS-THAN EQUAL TO OR GREATER-THAN
+22DB;AL;GREATER-THAN EQUAL TO OR LESS-THAN
+22DC;AL;EQUAL TO OR LESS-THAN
+22DD;AL;EQUAL TO OR GREATER-THAN
+22DE;AL;EQUAL TO OR PRECEDES
+22DF;AL;EQUAL TO OR SUCCEEDS
+22E0;AL;DOES NOT PRECEDE OR EQUAL
+22E1;AL;DOES NOT SUCCEED OR EQUAL
+22E2;AL;NOT SQUARE IMAGE OF OR EQUAL TO
+22E3;AL;NOT SQUARE ORIGINAL OF OR EQUAL TO
+22E4;AL;SQUARE IMAGE OF OR NOT EQUAL TO
+22E5;AL;SQUARE ORIGINAL OF OR NOT EQUAL TO
+22E6;AL;LESS-THAN BUT NOT EQUIVALENT TO
+22E7;AL;GREATER-THAN BUT NOT EQUIVALENT TO
+22E8;AL;PRECEDES BUT NOT EQUIVALENT TO
+22E9;AL;SUCCEEDS BUT NOT EQUIVALENT TO
+22EA;AL;NOT NORMAL SUBGROUP OF
+22EB;AL;DOES NOT CONTAIN AS NORMAL SUBGROUP
+22EC;AL;NOT NORMAL SUBGROUP OF OR EQUAL TO
+22ED;AL;DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
+22EE;AL;VERTICAL ELLIPSIS
+22EF;AL;MIDLINE HORIZONTAL ELLIPSIS
+22F0;AL;UP RIGHT DIAGONAL ELLIPSIS
+22F1;AL;DOWN RIGHT DIAGONAL ELLIPSIS
+2300;AL;DIAMETER SIGN
+2301;AL;ELECTRIC ARROW
+2302;AL;HOUSE
+2303;AL;UP ARROWHEAD
+2304;AL;DOWN ARROWHEAD
+2305;AL;PROJECTIVE
+2306;AL;PERSPECTIVE
+2307;AL;WAVY LINE
+2308;AL;LEFT CEILING
+2309;AL;RIGHT CEILING
+230A;AL;LEFT FLOOR
+230B;AL;RIGHT FLOOR
+230C;AL;BOTTOM RIGHT CROP
+230D;AL;BOTTOM LEFT CROP
+230E;AL;TOP RIGHT CROP
+230F;AL;TOP LEFT CROP
+2310;AL;REVERSED NOT SIGN
+2311;AL;SQUARE LOZENGE
+2312;AI;ARC
+2313;AL;SEGMENT
+2314;AL;SECTOR
+2315;AL;TELEPHONE RECORDER
+2316;AL;POSITION INDICATOR
+2317;AL;VIEWDATA SQUARE
+2318;AL;PLACE OF INTEREST SIGN
+2319;AL;TURNED NOT SIGN
+231A;AL;WATCH
+231B;AL;HOURGLASS
+231C;AL;TOP LEFT CORNER
+231D;AL;TOP RIGHT CORNER
+231E;AL;BOTTOM LEFT CORNER
+231F;AL;BOTTOM RIGHT CORNER
+2320;AL;TOP HALF INTEGRAL
+2321;AL;BOTTOM HALF INTEGRAL
+2322;AL;FROWN
+2323;AL;SMILE
+2324;AL;UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS
+2325;AL;OPTION KEY
+2326;AL;ERASE TO THE RIGHT
+2327;AL;X IN A RECTANGLE BOX
+2328;AL;KEYBOARD
+2329;OP;LEFT-POINTING ANGLE BRACKET
+232A;CL;RIGHT-POINTING ANGLE BRACKET
+232B;AL;ERASE TO THE LEFT
+232C;AL;BENZENE RING
+232D;AL;CYLINDRICITY
+232E;AL;ALL AROUND-PROFILE
+232F;AL;SYMMETRY
+2330;AL;TOTAL RUNOUT
+2331;AL;DIMENSION ORIGIN
+2332;AL;CONICAL TAPER
+2333;AL;SLOPE
+2334;AL;COUNTERBORE
+2335;AL;COUNTERSINK
+2336;AL;APL FUNCTIONAL SYMBOL I-BEAM
+2337;AL;APL FUNCTIONAL SYMBOL SQUISH QUAD
+2338;AL;APL FUNCTIONAL SYMBOL QUAD EQUAL
+2339;AL;APL FUNCTIONAL SYMBOL QUAD DIVIDE
+233A;AL;APL FUNCTIONAL SYMBOL QUAD DIAMOND
+233B;AL;APL FUNCTIONAL SYMBOL QUAD JOT
+233C;AL;APL FUNCTIONAL SYMBOL QUAD CIRCLE
+233D;AL;APL FUNCTIONAL SYMBOL CIRCLE STILE
+233E;AL;APL FUNCTIONAL SYMBOL CIRCLE JOT
+233F;AL;APL FUNCTIONAL SYMBOL SLASH BAR
+2340;AL;APL FUNCTIONAL SYMBOL BACKSLASH BAR
+2341;AL;APL FUNCTIONAL SYMBOL QUAD SLASH
+2342;AL;APL FUNCTIONAL SYMBOL QUAD BACKSLASH
+2343;AL;APL FUNCTIONAL SYMBOL QUAD LESS-THAN
+2344;AL;APL FUNCTIONAL SYMBOL QUAD GREATER-THAN
+2345;AL;APL FUNCTIONAL SYMBOL LEFTWARDS VANE
+2346;AL;APL FUNCTIONAL SYMBOL RIGHTWARDS VANE
+2347;AL;APL FUNCTIONAL SYMBOL QUAD LEFTWARDS ARROW
+2348;AL;APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW
+2349;AL;APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH
+234A;AL;APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR
+234B;AL;APL FUNCTIONAL SYMBOL DELTA STILE
+234C;AL;APL FUNCTIONAL SYMBOL QUAD DOWN CARET
+234D;AL;APL FUNCTIONAL SYMBOL QUAD DELTA
+234E;AL;APL FUNCTIONAL SYMBOL DOWN TACK JOT
+234F;AL;APL FUNCTIONAL SYMBOL UPWARDS VANE
+2350;AL;APL FUNCTIONAL SYMBOL QUAD UPWARDS ARROW
+2351;AL;APL FUNCTIONAL SYMBOL UP TACK OVERBAR
+2352;AL;APL FUNCTIONAL SYMBOL DEL STILE
+2353;AL;APL FUNCTIONAL SYMBOL QUAD UP CARET
+2354;AL;APL FUNCTIONAL SYMBOL QUAD DEL
+2355;AL;APL FUNCTIONAL SYMBOL UP TACK JOT
+2356;AL;APL FUNCTIONAL SYMBOL DOWNWARDS VANE
+2357;AL;APL FUNCTIONAL SYMBOL QUAD DOWNWARDS ARROW
+2358;AL;APL FUNCTIONAL SYMBOL QUOTE UNDERBAR
+2359;AL;APL FUNCTIONAL SYMBOL DELTA UNDERBAR
+235A;AL;APL FUNCTIONAL SYMBOL DIAMOND UNDERBAR
+235B;AL;APL FUNCTIONAL SYMBOL JOT UNDERBAR
+235C;AL;APL FUNCTIONAL SYMBOL CIRCLE UNDERBAR
+235D;AL;APL FUNCTIONAL SYMBOL UP SHOE JOT
+235E;AL;APL FUNCTIONAL SYMBOL QUOTE QUAD
+235F;AL;APL FUNCTIONAL SYMBOL CIRCLE STAR
+2360;AL;APL FUNCTIONAL SYMBOL QUAD COLON
+2361;AL;APL FUNCTIONAL SYMBOL UP TACK DIAERESIS
+2362;AL;APL FUNCTIONAL SYMBOL DEL DIAERESIS
+2363;AL;APL FUNCTIONAL SYMBOL STAR DIAERESIS
+2364;AL;APL FUNCTIONAL SYMBOL JOT DIAERESIS
+2365;AL;APL FUNCTIONAL SYMBOL CIRCLE DIAERESIS
+2366;AL;APL FUNCTIONAL SYMBOL DOWN SHOE STILE
+2367;AL;APL FUNCTIONAL SYMBOL LEFT SHOE STILE
+2368;AL;APL FUNCTIONAL SYMBOL TILDE DIAERESIS
+2369;AL;APL FUNCTIONAL SYMBOL GREATER-THAN DIAERESIS
+236A;AL;APL FUNCTIONAL SYMBOL COMMA BAR
+236B;AL;APL FUNCTIONAL SYMBOL DEL TILDE
+236C;AL;APL FUNCTIONAL SYMBOL ZILDE
+236D;AL;APL FUNCTIONAL SYMBOL STILE TILDE
+236E;AL;APL FUNCTIONAL SYMBOL SEMICOLON UNDERBAR
+236F;AL;APL FUNCTIONAL SYMBOL QUAD NOT EQUAL
+2370;AL;APL FUNCTIONAL SYMBOL QUAD QUESTION
+2371;AL;APL FUNCTIONAL SYMBOL DOWN CARET TILDE
+2372;AL;APL FUNCTIONAL SYMBOL UP CARET TILDE
+2373;AL;APL FUNCTIONAL SYMBOL IOTA
+2374;AL;APL FUNCTIONAL SYMBOL RHO
+2375;AL;APL FUNCTIONAL SYMBOL OMEGA
+2376;AL;APL FUNCTIONAL SYMBOL ALPHA UNDERBAR
+2377;AL;APL FUNCTIONAL SYMBOL EPSILON UNDERBAR
+2378;AL;APL FUNCTIONAL SYMBOL IOTA UNDERBAR
+2379;AL;APL FUNCTIONAL SYMBOL OMEGA UNDERBAR
+237A;AL;APL FUNCTIONAL SYMBOL ALPHA
+237B;AL;NOT CHECK MARK
+237D;AL;SHOULDERED OPEN BOX
+237E;AL;BELL SYMBOL
+237F;AL;VERTICAL LINE WITH MIDDLE DOT
+2380;AL;INSERTION SYMBOL
+2381;AL;CONTINUOUS UNDERLINE SYMBOL
+2382;AL;DISCONTINUOUS UNDERLINE SYMBOL
+2383;AL;EMPHASIS SYMBOL
+2384;AL;COMPOSITION SYMBOL
+2385;AL;WHITE SQUARE WITH CENTRE VERTICAL LINE
+2386;AL;ENTER SYMBOL
+2387;AL;ALTERNATIVE KEY SYMBOL
+2388;AL;HELM SYMBOL
+2389;AL;CIRCLED HORIZONTAL BAR WITH NOTCH
+238A;AL;CIRCLED TRIANGLE DOWN
+238B;AL;BROKEN CIRCLE WITH NORTHWEST ARROW
+238C;AL;UNDO SYMBOL
+238D;AL;MONOSTABLE SYMBOL
+238E;AL;HYSTERESIS SYMBOL
+238F;AL;OPEN-CIRCUIT-OUTPUT H-TYPE SYMBOL
+2390;AL;OPEN-CIRCUIT-OUTPUT L-TYPE SYMBOL
+2391;AL;PASSIVE-PULL-DOWN-OUTPUT SYMBOL
+2392;AL;PASSIVE-PULL-UP-OUTPUT SYMBOL
+2393;AL;DIRECT CURRENT SYMBOL FORM TWO
+2394;AL;SOFTWARE-FUNCTION SYMBOL
+2395;AL;APL FUNCTIONAL SYMBOL QUAD
+2396;AL;DECIMAL SEPARATOR KEY SYMBOL
+2397;AL;PREVIOUS PAGE
+2398;AL;NEXT PAGE
+2399;AL;PRINT SCREEN SYMBOL
+239A;AL;CLEAR SCREEN SYMBOL
+2400;AL;SYMBOL FOR NULL
+2401;AL;SYMBOL FOR START OF HEADING
+2402;AL;SYMBOL FOR START OF TEXT
+2403;AL;SYMBOL FOR END OF TEXT
+2404;AL;SYMBOL FOR END OF TRANSMISSION
+2405;AL;SYMBOL FOR ENQUIRY
+2406;AL;SYMBOL FOR ACKNOWLEDGE
+2407;AL;SYMBOL FOR BELL
+2408;AL;SYMBOL FOR BACKSPACE
+2409;AL;SYMBOL FOR HORIZONTAL TABULATION
+240A;AL;SYMBOL FOR LINE FEED
+240B;AL;SYMBOL FOR VERTICAL TABULATION
+240C;AL;SYMBOL FOR FORM FEED
+240D;AL;SYMBOL FOR CARRIAGE RETURN
+240E;AL;SYMBOL FOR SHIFT OUT
+240F;AL;SYMBOL FOR SHIFT IN
+2410;AL;SYMBOL FOR DATA LINK ESCAPE
+2411;AL;SYMBOL FOR DEVICE CONTROL ONE
+2412;AL;SYMBOL FOR DEVICE CONTROL TWO
+2413;AL;SYMBOL FOR DEVICE CONTROL THREE
+2414;AL;SYMBOL FOR DEVICE CONTROL FOUR
+2415;AL;SYMBOL FOR NEGATIVE ACKNOWLEDGE
+2416;AL;SYMBOL FOR SYNCHRONOUS IDLE
+2417;AL;SYMBOL FOR END OF TRANSMISSION BLOCK
+2418;AL;SYMBOL FOR CANCEL
+2419;AL;SYMBOL FOR END OF MEDIUM
+241A;AL;SYMBOL FOR SUBSTITUTE
+241B;AL;SYMBOL FOR ESCAPE
+241C;AL;SYMBOL FOR FILE SEPARATOR
+241D;AL;SYMBOL FOR GROUP SEPARATOR
+241E;AL;SYMBOL FOR RECORD SEPARATOR
+241F;AL;SYMBOL FOR UNIT SEPARATOR
+2420;AL;SYMBOL FOR SPACE
+2421;AL;SYMBOL FOR DELETE
+2422;AL;BLANK SYMBOL
+2423;AL;OPEN BOX
+2424;AL;SYMBOL FOR NEWLINE
+2425;AL;SYMBOL FOR DELETE FORM TWO
+2426;AL;SYMBOL FOR SUBSTITUTE FORM TWO
+2440;AL;OCR HOOK
+2441;AL;OCR CHAIR
+2442;AL;OCR FORK
+2443;AL;OCR INVERTED FORK
+2444;AL;OCR BELT BUCKLE
+2445;AL;OCR BOW TIE
+2446;AL;OCR BRANCH BANK IDENTIFICATION
+2447;AL;OCR AMOUNT OF CHECK
+2448;AL;OCR DASH
+2449;AL;OCR CUSTOMER ACCOUNT NUMBER
+244A;AL;OCR DOUBLE BACKSLASH
+2460;AI;CIRCLED DIGIT ONE
+2461;AI;CIRCLED DIGIT TWO
+2462;AI;CIRCLED DIGIT THREE
+2463;AI;CIRCLED DIGIT FOUR
+2464;AI;CIRCLED DIGIT FIVE
+2465;AI;CIRCLED DIGIT SIX
+2466;AI;CIRCLED DIGIT SEVEN
+2467;AI;CIRCLED DIGIT EIGHT
+2468;AI;CIRCLED DIGIT NINE
+2469;AI;CIRCLED NUMBER TEN
+246A;AI;CIRCLED NUMBER ELEVEN
+246B;AI;CIRCLED NUMBER TWELVE
+246C;AI;CIRCLED NUMBER THIRTEEN
+246D;AI;CIRCLED NUMBER FOURTEEN
+246E;AI;CIRCLED NUMBER FIFTEEN
+246F;AI;CIRCLED NUMBER SIXTEEN
+2470;AI;CIRCLED NUMBER SEVENTEEN
+2471;AI;CIRCLED NUMBER EIGHTEEN
+2472;AI;CIRCLED NUMBER NINETEEN
+2473;AI;CIRCLED NUMBER TWENTY
+2474;AI;PARENTHESIZED DIGIT ONE
+2475;AI;PARENTHESIZED DIGIT TWO
+2476;AI;PARENTHESIZED DIGIT THREE
+2477;AI;PARENTHESIZED DIGIT FOUR
+2478;AI;PARENTHESIZED DIGIT FIVE
+2479;AI;PARENTHESIZED DIGIT SIX
+247A;AI;PARENTHESIZED DIGIT SEVEN
+247B;AI;PARENTHESIZED DIGIT EIGHT
+247C;AI;PARENTHESIZED DIGIT NINE
+247D;AI;PARENTHESIZED NUMBER TEN
+247E;AI;PARENTHESIZED NUMBER ELEVEN
+247F;AI;PARENTHESIZED NUMBER TWELVE
+2480;AI;PARENTHESIZED NUMBER THIRTEEN
+2481;AI;PARENTHESIZED NUMBER FOURTEEN
+2482;AI;PARENTHESIZED NUMBER FIFTEEN
+2483;AI;PARENTHESIZED NUMBER SIXTEEN
+2484;AI;PARENTHESIZED NUMBER SEVENTEEN
+2485;AI;PARENTHESIZED NUMBER EIGHTEEN
+2486;AI;PARENTHESIZED NUMBER NINETEEN
+2487;AI;PARENTHESIZED NUMBER TWENTY
+2488;AI;DIGIT ONE FULL STOP
+2489;AI;DIGIT TWO FULL STOP
+248A;AI;DIGIT THREE FULL STOP
+248B;AI;DIGIT FOUR FULL STOP
+248C;AI;DIGIT FIVE FULL STOP
+248D;AI;DIGIT SIX FULL STOP
+248E;AI;DIGIT SEVEN FULL STOP
+248F;AI;DIGIT EIGHT FULL STOP
+2490;AI;DIGIT NINE FULL STOP
+2491;AI;NUMBER TEN FULL STOP
+2492;AI;NUMBER ELEVEN FULL STOP
+2493;AI;NUMBER TWELVE FULL STOP
+2494;AI;NUMBER THIRTEEN FULL STOP
+2495;AI;NUMBER FOURTEEN FULL STOP
+2496;AI;NUMBER FIFTEEN FULL STOP
+2497;AI;NUMBER SIXTEEN FULL STOP
+2498;AI;NUMBER SEVENTEEN FULL STOP
+2499;AI;NUMBER EIGHTEEN FULL STOP
+249A;AI;NUMBER NINETEEN FULL STOP
+249B;AI;NUMBER TWENTY FULL STOP
+249C;AI;PARENTHESIZED LATIN SMALL LETTER A
+249D;AI;PARENTHESIZED LATIN SMALL LETTER B
+249E;AI;PARENTHESIZED LATIN SMALL LETTER C
+249F;AI;PARENTHESIZED LATIN SMALL LETTER D
+24A0;AI;PARENTHESIZED LATIN SMALL LETTER E
+24A1;AI;PARENTHESIZED LATIN SMALL LETTER F
+24A2;AI;PARENTHESIZED LATIN SMALL LETTER G
+24A3;AI;PARENTHESIZED LATIN SMALL LETTER H
+24A4;AI;PARENTHESIZED LATIN SMALL LETTER I
+24A5;AI;PARENTHESIZED LATIN SMALL LETTER J
+24A6;AI;PARENTHESIZED LATIN SMALL LETTER K
+24A7;AI;PARENTHESIZED LATIN SMALL LETTER L
+24A8;AI;PARENTHESIZED LATIN SMALL LETTER M
+24A9;AI;PARENTHESIZED LATIN SMALL LETTER N
+24AA;AI;PARENTHESIZED LATIN SMALL LETTER O
+24AB;AI;PARENTHESIZED LATIN SMALL LETTER P
+24AC;AI;PARENTHESIZED LATIN SMALL LETTER Q
+24AD;AI;PARENTHESIZED LATIN SMALL LETTER R
+24AE;AI;PARENTHESIZED LATIN SMALL LETTER S
+24AF;AI;PARENTHESIZED LATIN SMALL LETTER T
+24B0;AI;PARENTHESIZED LATIN SMALL LETTER U
+24B1;AI;PARENTHESIZED LATIN SMALL LETTER V
+24B2;AI;PARENTHESIZED LATIN SMALL LETTER W
+24B3;AI;PARENTHESIZED LATIN SMALL LETTER X
+24B4;AI;PARENTHESIZED LATIN SMALL LETTER Y
+24B5;AI;PARENTHESIZED LATIN SMALL LETTER Z
+24B6;AI;CIRCLED LATIN CAPITAL LETTER A
+24B7;AI;CIRCLED LATIN CAPITAL LETTER B
+24B8;AI;CIRCLED LATIN CAPITAL LETTER C
+24B9;AI;CIRCLED LATIN CAPITAL LETTER D
+24BA;AI;CIRCLED LATIN CAPITAL LETTER E
+24BB;AI;CIRCLED LATIN CAPITAL LETTER F
+24BC;AI;CIRCLED LATIN CAPITAL LETTER G
+24BD;AI;CIRCLED LATIN CAPITAL LETTER H
+24BE;AI;CIRCLED LATIN CAPITAL LETTER I
+24BF;AI;CIRCLED LATIN CAPITAL LETTER J
+24C0;AL;CIRCLED LATIN CAPITAL LETTER K
+24C1;AL;CIRCLED LATIN CAPITAL LETTER L
+24C2;AL;CIRCLED LATIN CAPITAL LETTER M
+24C3;AL;CIRCLED LATIN CAPITAL LETTER N
+24C4;AL;CIRCLED LATIN CAPITAL LETTER O
+24C5;AL;CIRCLED LATIN CAPITAL LETTER P
+24C6;AL;CIRCLED LATIN CAPITAL LETTER Q
+24C7;AL;CIRCLED LATIN CAPITAL LETTER R
+24C8;AL;CIRCLED LATIN CAPITAL LETTER S
+24C9;AL;CIRCLED LATIN CAPITAL LETTER T
+24CA;AL;CIRCLED LATIN CAPITAL LETTER U
+24CB;AL;CIRCLED LATIN CAPITAL LETTER V
+24CC;AL;CIRCLED LATIN CAPITAL LETTER W
+24CD;AL;CIRCLED LATIN CAPITAL LETTER X
+24CE;AL;CIRCLED LATIN CAPITAL LETTER Y
+24CF;AL;CIRCLED LATIN CAPITAL LETTER Z
+24D0;AI;CIRCLED LATIN SMALL LETTER A
+24D1;AI;CIRCLED LATIN SMALL LETTER B
+24D2;AI;CIRCLED LATIN SMALL LETTER C
+24D3;AI;CIRCLED LATIN SMALL LETTER D
+24D4;AI;CIRCLED LATIN SMALL LETTER E
+24D5;AI;CIRCLED LATIN SMALL LETTER F
+24D6;AI;CIRCLED LATIN SMALL LETTER G
+24D7;AI;CIRCLED LATIN SMALL LETTER H
+24D8;AI;CIRCLED LATIN SMALL LETTER I
+24D9;AI;CIRCLED LATIN SMALL LETTER J
+24DA;AI;CIRCLED LATIN SMALL LETTER K
+24DB;AI;CIRCLED LATIN SMALL LETTER L
+24DC;AI;CIRCLED LATIN SMALL LETTER M
+24DD;AI;CIRCLED LATIN SMALL LETTER N
+24DE;AI;CIRCLED LATIN SMALL LETTER O
+24DF;AI;CIRCLED LATIN SMALL LETTER P
+24E0;AI;CIRCLED LATIN SMALL LETTER Q
+24E1;AI;CIRCLED LATIN SMALL LETTER R
+24E2;AI;CIRCLED LATIN SMALL LETTER S
+24E3;AI;CIRCLED LATIN SMALL LETTER T
+24E4;AI;CIRCLED LATIN SMALL LETTER U
+24E5;AI;CIRCLED LATIN SMALL LETTER V
+24E6;AI;CIRCLED LATIN SMALL LETTER W
+24E7;AI;CIRCLED LATIN SMALL LETTER X
+24E8;AI;CIRCLED LATIN SMALL LETTER Y
+24E9;AI;CIRCLED LATIN SMALL LETTER Z
+24EA;AL;CIRCLED DIGIT ZERO
+2500;AI;BOX DRAWINGS LIGHT HORIZONTAL
+2501;AI;BOX DRAWINGS HEAVY HORIZONTAL
+2502;AI;BOX DRAWINGS LIGHT VERTICAL
+2503;AI;BOX DRAWINGS HEAVY VERTICAL
+2504;AI;BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL
+2505;AI;BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL
+2506;AI;BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL
+2507;AI;BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL
+2508;AI;BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL
+2509;AI;BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL
+250A;AI;BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL
+250B;AI;BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL
+250C;AI;BOX DRAWINGS LIGHT DOWN AND RIGHT
+250D;AI;BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY
+250E;AI;BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT
+250F;AI;BOX DRAWINGS HEAVY DOWN AND RIGHT
+2510;AI;BOX DRAWINGS LIGHT DOWN AND LEFT
+2511;AI;BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY
+2512;AI;BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT
+2513;AI;BOX DRAWINGS HEAVY DOWN AND LEFT
+2514;AI;BOX DRAWINGS LIGHT UP AND RIGHT
+2515;AI;BOX DRAWINGS UP LIGHT AND RIGHT HEAVY
+2516;AI;BOX DRAWINGS UP HEAVY AND RIGHT LIGHT
+2517;AI;BOX DRAWINGS HEAVY UP AND RIGHT
+2518;AI;BOX DRAWINGS LIGHT UP AND LEFT
+2519;AI;BOX DRAWINGS UP LIGHT AND LEFT HEAVY
+251A;AI;BOX DRAWINGS UP HEAVY AND LEFT LIGHT
+251B;AI;BOX DRAWINGS HEAVY UP AND LEFT
+251C;AI;BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+251D;AI;BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY
+251E;AI;BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT
+251F;AI;BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT
+2520;AI;BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT
+2521;AI;BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY
+2522;AI;BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY
+2523;AI;BOX DRAWINGS HEAVY VERTICAL AND RIGHT
+2524;AI;BOX DRAWINGS LIGHT VERTICAL AND LEFT
+2525;AI;BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY
+2526;AI;BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT
+2527;AI;BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT
+2528;AI;BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT
+2529;AI;BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY
+252A;AI;BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY
+252B;AI;BOX DRAWINGS HEAVY VERTICAL AND LEFT
+252C;AI;BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+252D;AI;BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT
+252E;AI;BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT
+252F;AI;BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY
+2530;AI;BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT
+2531;AI;BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY
+2532;AI;BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY
+2533;AI;BOX DRAWINGS HEAVY DOWN AND HORIZONTAL
+2534;AI;BOX DRAWINGS LIGHT UP AND HORIZONTAL
+2535;AI;BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT
+2536;AI;BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT
+2537;AI;BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY
+2538;AI;BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT
+2539;AI;BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY
+253A;AI;BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY
+253B;AI;BOX DRAWINGS HEAVY UP AND HORIZONTAL
+253C;AI;BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+253D;AI;BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT
+253E;AI;BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT
+253F;AI;BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY
+2540;AI;BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT
+2541;AI;BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT
+2542;AI;BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT
+2543;AI;BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT
+2544;AI;BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT
+2545;AI;BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT
+2546;AI;BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT
+2547;AI;BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY
+2548;AI;BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY
+2549;AI;BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY
+254A;AI;BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY
+254B;AI;BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL
+254C;AL;BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL
+254D;AL;BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL
+254E;AL;BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL
+254F;AL;BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL
+2550;AI;BOX DRAWINGS DOUBLE HORIZONTAL
+2551;AI;BOX DRAWINGS DOUBLE VERTICAL
+2552;AI;BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
+2553;AI;BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
+2554;AI;BOX DRAWINGS DOUBLE DOWN AND RIGHT
+2555;AI;BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
+2556;AI;BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
+2557;AI;BOX DRAWINGS DOUBLE DOWN AND LEFT
+2558;AI;BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
+2559;AI;BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
+255A;AI;BOX DRAWINGS DOUBLE UP AND RIGHT
+255B;AI;BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
+255C;AI;BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
+255D;AI;BOX DRAWINGS DOUBLE UP AND LEFT
+255E;AI;BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+255F;AI;BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
+2560;AI;BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+2561;AI;BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+2562;AI;BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
+2563;AI;BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+2564;AI;BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
+2565;AI;BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
+2566;AI;BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+2567;AI;BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
+2568;AI;BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
+2569;AI;BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+256A;AI;BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+256B;AI;BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
+256C;AI;BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+256D;AI;BOX DRAWINGS LIGHT ARC DOWN AND RIGHT
+256E;AI;BOX DRAWINGS LIGHT ARC DOWN AND LEFT
+256F;AI;BOX DRAWINGS LIGHT ARC UP AND LEFT
+2570;AI;BOX DRAWINGS LIGHT ARC UP AND RIGHT
+2571;AI;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT
+2572;AI;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT
+2573;AI;BOX DRAWINGS LIGHT DIAGONAL CROSS
+2574;AI;BOX DRAWINGS LIGHT LEFT
+2575;AL;BOX DRAWINGS LIGHT UP
+2576;AL;BOX DRAWINGS LIGHT RIGHT
+2577;AL;BOX DRAWINGS LIGHT DOWN
+2578;AL;BOX DRAWINGS HEAVY LEFT
+2579;AL;BOX DRAWINGS HEAVY UP
+257A;AL;BOX DRAWINGS HEAVY RIGHT
+257B;AL;BOX DRAWINGS HEAVY DOWN
+257C;AL;BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT
+257D;AL;BOX DRAWINGS LIGHT UP AND HEAVY DOWN
+257E;AL;BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT
+257F;AL;BOX DRAWINGS HEAVY UP AND LIGHT DOWN
+2580;AI;UPPER HALF BLOCK
+2581;AI;LOWER ONE EIGHTH BLOCK
+2582;AI;LOWER ONE QUARTER BLOCK
+2583;AI;LOWER THREE EIGHTHS BLOCK
+2584;AI;LOWER HALF BLOCK
+2585;AI;LOWER FIVE EIGHTHS BLOCK
+2586;AI;LOWER THREE QUARTERS BLOCK
+2587;AI;LOWER SEVEN EIGHTHS BLOCK
+2588;AI;FULL BLOCK
+2589;AI;LEFT SEVEN EIGHTHS BLOCK
+258A;AI;LEFT THREE QUARTERS BLOCK
+258B;AI;LEFT FIVE EIGHTHS BLOCK
+258C;AI;LEFT HALF BLOCK
+258D;AI;LEFT THREE EIGHTHS BLOCK
+258E;AI;LEFT ONE QUARTER BLOCK
+258F;AI;LEFT ONE EIGHTH BLOCK
+2590;AL;RIGHT HALF BLOCK
+2591;AL;LIGHT SHADE
+2592;AI;MEDIUM SHADE
+2593;AI;DARK SHADE
+2594;AI;UPPER ONE EIGHTH BLOCK
+2595;AI;RIGHT ONE EIGHTH BLOCK
+25A0;AI;BLACK SQUARE
+25A1;AI;WHITE SQUARE
+25A2;AL;WHITE SQUARE WITH ROUNDED CORNERS
+25A3;AI;WHITE SQUARE CONTAINING BLACK SMALL SQUARE
+25A4;AI;SQUARE WITH HORIZONTAL FILL
+25A5;AI;SQUARE WITH VERTICAL FILL
+25A6;AI;SQUARE WITH ORTHOGONAL CROSSHATCH FILL
+25A7;AI;SQUARE WITH UPPER LEFT TO LOWER RIGHT FILL
+25A8;AI;SQUARE WITH UPPER RIGHT TO LOWER LEFT FILL
+25A9;AI;SQUARE WITH DIAGONAL CROSSHATCH FILL
+25AA;AL;BLACK SMALL SQUARE
+25AB;AL;WHITE SMALL SQUARE
+25AC;AL;BLACK RECTANGLE
+25AD;AL;WHITE RECTANGLE
+25AE;AL;BLACK VERTICAL RECTANGLE
+25AF;AL;WHITE VERTICAL RECTANGLE
+25B0;AL;BLACK PARALLELOGRAM
+25B1;AL;WHITE PARALLELOGRAM
+25B2;AI;BLACK UP-POINTING TRIANGLE
+25B3;AI;WHITE UP-POINTING TRIANGLE
+25B4;AL;BLACK UP-POINTING SMALL TRIANGLE
+25B5;AL;WHITE UP-POINTING SMALL TRIANGLE
+25B6;AI;BLACK RIGHT-POINTING TRIANGLE
+25B7;AI;WHITE RIGHT-POINTING TRIANGLE
+25B8;AL;BLACK RIGHT-POINTING SMALL TRIANGLE
+25B9;AL;WHITE RIGHT-POINTING SMALL TRIANGLE
+25BA;AL;BLACK RIGHT-POINTING POINTER
+25BB;AL;WHITE RIGHT-POINTING POINTER
+25BC;AI;BLACK DOWN-POINTING TRIANGLE
+25BD;AI;WHITE DOWN-POINTING TRIANGLE
+25BE;AL;BLACK DOWN-POINTING SMALL TRIANGLE
+25BF;AL;WHITE DOWN-POINTING SMALL TRIANGLE
+25C0;AI;BLACK LEFT-POINTING TRIANGLE
+25C1;AI;WHITE LEFT-POINTING TRIANGLE
+25C2;AL;BLACK LEFT-POINTING SMALL TRIANGLE
+25C3;AL;WHITE LEFT-POINTING SMALL TRIANGLE
+25C4;AL;BLACK LEFT-POINTING POINTER
+25C5;AL;WHITE LEFT-POINTING POINTER
+25C6;AI;BLACK DIAMOND
+25C7;AI;WHITE DIAMOND
+25C8;AL;WHITE DIAMOND CONTAINING BLACK SMALL DIAMOND
+25C9;AL;FISHEYE
+25CA;AL;LOZENGE
+25CB;AI;WHITE CIRCLE
+25CC;AL;DOTTED CIRCLE
+25CD;AL;CIRCLE WITH VERTICAL FILL
+25CE;AI;BULLSEYE
+25CF;AI;BLACK CIRCLE
+25D0;AI;CIRCLE WITH LEFT HALF BLACK
+25D1;AI;CIRCLE WITH RIGHT HALF BLACK
+25D2;AL;CIRCLE WITH LOWER HALF BLACK
+25D3;AL;CIRCLE WITH UPPER HALF BLACK
+25D4;AL;CIRCLE WITH UPPER RIGHT QUADRANT BLACK
+25D5;AL;CIRCLE WITH ALL BUT UPPER LEFT QUADRANT BLACK
+25D6;AL;LEFT HALF BLACK CIRCLE
+25D7;AL;RIGHT HALF BLACK CIRCLE
+25D8;AL;INVERSE BULLET
+25D9;AL;INVERSE WHITE CIRCLE
+25DA;AL;UPPER HALF INVERSE WHITE CIRCLE
+25DB;AL;LOWER HALF INVERSE WHITE CIRCLE
+25DC;AL;UPPER LEFT QUADRANT CIRCULAR ARC
+25DD;AL;UPPER RIGHT QUADRANT CIRCULAR ARC
+25DE;AL;LOWER RIGHT QUADRANT CIRCULAR ARC
+25DF;AL;LOWER LEFT QUADRANT CIRCULAR ARC
+25E0;AL;UPPER HALF CIRCLE
+25E1;AL;LOWER HALF CIRCLE
+25E2;AI;BLACK LOWER RIGHT TRIANGLE
+25E3;AI;BLACK LOWER LEFT TRIANGLE
+25E4;AI;BLACK UPPER LEFT TRIANGLE
+25E5;AI;BLACK UPPER RIGHT TRIANGLE
+25E6;AL;WHITE BULLET
+25E7;AL;SQUARE WITH LEFT HALF BLACK
+25E8;AL;SQUARE WITH RIGHT HALF BLACK
+25E9;AL;SQUARE WITH UPPER LEFT DIAGONAL HALF BLACK
+25EA;AL;SQUARE WITH LOWER RIGHT DIAGONAL HALF BLACK
+25EB;AL;WHITE SQUARE WITH VERTICAL BISECTING LINE
+25EC;AL;WHITE UP-POINTING TRIANGLE WITH DOT
+25ED;AL;UP-POINTING TRIANGLE WITH LEFT HALF BLACK
+25EE;AL;UP-POINTING TRIANGLE WITH RIGHT HALF BLACK
+25EF;AI;LARGE CIRCLE
+25F0;AL;WHITE SQUARE WITH UPPER LEFT QUADRANT
+25F1;AL;WHITE SQUARE WITH LOWER LEFT QUADRANT
+25F2;AL;WHITE SQUARE WITH LOWER RIGHT QUADRANT
+25F3;AL;WHITE SQUARE WITH UPPER RIGHT QUADRANT
+25F4;AL;WHITE CIRCLE WITH UPPER LEFT QUADRANT
+25F5;AL;WHITE CIRCLE WITH LOWER LEFT QUADRANT
+25F6;AL;WHITE CIRCLE WITH LOWER RIGHT QUADRANT
+25F7;AL;WHITE CIRCLE WITH UPPER RIGHT QUADRANT
+2600;AL;BLACK SUN WITH RAYS
+2601;AL;CLOUD
+2602;AL;UMBRELLA
+2603;AL;SNOWMAN
+2604;AL;COMET
+2605;AI;BLACK STAR
+2606;AI;WHITE STAR
+2607;AL;LIGHTNING
+2608;AL;THUNDERSTORM
+2609;AI;SUN
+260A;AL;ASCENDING NODE
+260B;AL;DESCENDING NODE
+260C;AL;CONJUNCTION
+260D;AL;OPPOSITION
+260E;AI;BLACK TELEPHONE
+260F;AI;WHITE TELEPHONE
+2610;AL;BALLOT BOX
+2611;AL;BALLOT BOX WITH CHECK
+2612;AL;BALLOT BOX WITH X
+2613;AL;SALTIRE
+2619;AL;REVERSED ROTATED FLORAL HEART BULLET
+261A;AL;BLACK LEFT POINTING INDEX
+261B;AL;BLACK RIGHT POINTING INDEX
+261C;AI;WHITE LEFT POINTING INDEX
+261D;AL;WHITE UP POINTING INDEX
+261E;AI;WHITE RIGHT POINTING INDEX
+261F;AL;WHITE DOWN POINTING INDEX
+2620;AL;SKULL AND CROSSBONES
+2621;AL;CAUTION SIGN
+2622;AL;RADIOACTIVE SIGN
+2623;AL;BIOHAZARD SIGN
+2624;AL;CADUCEUS
+2625;AL;ANKH
+2626;AL;ORTHODOX CROSS
+2627;AL;CHI RHO
+2628;AL;CROSS OF LORRAINE
+2629;AL;CROSS OF JERUSALEM
+262A;AL;STAR AND CRESCENT
+262B;AL;FARSI SYMBOL
+262C;AL;ADI SHAKTI
+262D;AL;HAMMER AND SICKLE
+262E;AL;PEACE SYMBOL
+262F;AL;YIN YANG
+2630;AL;TRIGRAM FOR HEAVEN
+2631;AL;TRIGRAM FOR LAKE
+2632;AL;TRIGRAM FOR FIRE
+2633;AL;TRIGRAM FOR THUNDER
+2634;AL;TRIGRAM FOR WIND
+2635;AL;TRIGRAM FOR WATER
+2636;AL;TRIGRAM FOR MOUNTAIN
+2637;AL;TRIGRAM FOR EARTH
+2638;AL;WHEEL OF DHARMA
+2639;AL;WHITE FROWNING FACE
+263A;AL;WHITE SMILING FACE
+263B;AL;BLACK SMILING FACE
+263C;AL;WHITE SUN WITH RAYS
+263D;AL;FIRST QUARTER MOON
+263E;AL;LAST QUARTER MOON
+263F;AL;MERCURY
+2640;AI;FEMALE SIGN
+2641;AL;EARTH
+2642;AI;MALE SIGN
+2643;AL;JUPITER
+2644;AL;SATURN
+2645;AL;URANUS
+2646;AL;NEPTUNE
+2647;AL;PLUTO
+2648;AL;ARIES
+2649;AL;TAURUS
+264A;AL;GEMINI
+264B;AL;CANCER
+264C;AL;LEO
+264D;AL;VIRGO
+264E;AL;LIBRA
+264F;AL;SCORPIUS
+2650;AL;SAGITTARIUS
+2651;AL;CAPRICORN
+2652;AL;AQUARIUS
+2653;AL;PISCES
+2654;AL;WHITE CHESS KING
+2655;AL;WHITE CHESS QUEEN
+2656;AL;WHITE CHESS ROOK
+2657;AL;WHITE CHESS BISHOP
+2658;AL;WHITE CHESS KNIGHT
+2659;AL;WHITE CHESS PAWN
+265A;AL;BLACK CHESS KING
+265B;AL;BLACK CHESS QUEEN
+265C;AL;BLACK CHESS ROOK
+265D;AL;BLACK CHESS BISHOP
+265E;AL;BLACK CHESS KNIGHT
+265F;AL;BLACK CHESS PAWN
+2660;AI;BLACK SPADE SUIT
+2661;AI;WHITE HEART SUIT
+2662;AL;WHITE DIAMOND SUIT
+2663;AI;BLACK CLUB SUIT
+2664;AI;WHITE SPADE SUIT
+2665;AI;BLACK HEART SUIT
+2666;AL;BLACK DIAMOND SUIT
+2667;AI;WHITE CLUB SUIT
+2668;AI;HOT SPRINGS
+2669;AI;QUARTER NOTE
+266A;AI;EIGHTH NOTE
+266B;AL;BEAMED EIGHTH NOTES
+266C;AI;BEAMED SIXTEENTH NOTES
+266D;AI;MUSIC FLAT SIGN
+266E;AL;MUSIC NATURAL SIGN
+266F;AI;MUSIC SHARP SIGN
+2670;AL;WEST SYRIAC CROSS
+2671;AL;EAST SYRIAC CROSS
+2701;AL;UPPER BLADE SCISSORS
+2702;AL;BLACK SCISSORS
+2703;AL;LOWER BLADE SCISSORS
+2704;AL;WHITE SCISSORS
+2706;AL;TELEPHONE LOCATION SIGN
+2707;AL;TAPE DRIVE
+2708;AL;AIRPLANE
+2709;AL;ENVELOPE
+270C;AL;VICTORY HAND
+270D;AL;WRITING HAND
+270E;AL;LOWER RIGHT PENCIL
+270F;AL;PENCIL
+2710;AL;UPPER RIGHT PENCIL
+2711;AL;WHITE NIB
+2712;AL;BLACK NIB
+2713;AL;CHECK MARK
+2714;AL;HEAVY CHECK MARK
+2715;AL;MULTIPLICATION X
+2716;AL;HEAVY MULTIPLICATION X
+2717;AL;BALLOT X
+2718;AL;HEAVY BALLOT X
+2719;AL;OUTLINED GREEK CROSS
+271A;AL;HEAVY GREEK CROSS
+271B;AL;OPEN CENTRE CROSS
+271C;AL;HEAVY OPEN CENTRE CROSS
+271D;AL;LATIN CROSS
+271E;AL;SHADOWED WHITE LATIN CROSS
+271F;AL;OUTLINED LATIN CROSS
+2720;AL;MALTESE CROSS
+2721;AL;STAR OF DAVID
+2722;AL;FOUR TEARDROP-SPOKED ASTERISK
+2723;AL;FOUR BALLOON-SPOKED ASTERISK
+2724;AL;HEAVY FOUR BALLOON-SPOKED ASTERISK
+2725;AL;FOUR CLUB-SPOKED ASTERISK
+2726;AL;BLACK FOUR POINTED STAR
+2727;AL;WHITE FOUR POINTED STAR
+2729;AL;STRESS OUTLINED WHITE STAR
+272A;AL;CIRCLED WHITE STAR
+272B;AL;OPEN CENTRE BLACK STAR
+272C;AL;BLACK CENTRE WHITE STAR
+272D;AL;OUTLINED BLACK STAR
+272E;AL;HEAVY OUTLINED BLACK STAR
+272F;AL;PINWHEEL STAR
+2730;AL;SHADOWED WHITE STAR
+2731;AL;HEAVY ASTERISK
+2732;AL;OPEN CENTRE ASTERISK
+2733;AL;EIGHT SPOKED ASTERISK
+2734;AL;EIGHT POINTED BLACK STAR
+2735;AL;EIGHT POINTED PINWHEEL STAR
+2736;AL;SIX POINTED BLACK STAR
+2737;AL;EIGHT POINTED RECTILINEAR BLACK STAR
+2738;AL;HEAVY EIGHT POINTED RECTILINEAR BLACK STAR
+2739;AL;TWELVE POINTED BLACK STAR
+273A;AL;SIXTEEN POINTED ASTERISK
+273B;AL;TEARDROP-SPOKED ASTERISK
+273C;AL;OPEN CENTRE TEARDROP-SPOKED ASTERISK
+273D;AL;HEAVY TEARDROP-SPOKED ASTERISK
+273E;AL;SIX PETALLED BLACK AND WHITE FLORETTE
+273F;AL;BLACK FLORETTE
+2740;AL;WHITE FLORETTE
+2741;AL;EIGHT PETALLED OUTLINED BLACK FLORETTE
+2742;AL;CIRCLED OPEN CENTRE EIGHT POINTED STAR
+2743;AL;HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK
+2744;AL;SNOWFLAKE
+2745;AL;TIGHT TRIFOLIATE SNOWFLAKE
+2746;AL;HEAVY CHEVRON SNOWFLAKE
+2747;AL;SPARKLE
+2748;AL;HEAVY SPARKLE
+2749;AL;BALLOON-SPOKED ASTERISK
+274A;AL;EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
+274B;AL;HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
+274D;AL;SHADOWED WHITE CIRCLE
+274F;AL;LOWER RIGHT DROP-SHADOWED WHITE SQUARE
+2750;AL;UPPER RIGHT DROP-SHADOWED WHITE SQUARE
+2751;AL;LOWER RIGHT SHADOWED WHITE SQUARE
+2752;AL;UPPER RIGHT SHADOWED WHITE SQUARE
+2756;AL;BLACK DIAMOND MINUS WHITE X
+2758;AL;LIGHT VERTICAL BAR
+2759;AL;MEDIUM VERTICAL BAR
+275A;AL;HEAVY VERTICAL BAR
+275B;AL;HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT
+275C;AL;HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT
+275D;AL;HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT
+275E;AL;HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT
+2761;AL;CURVED STEM PARAGRAPH SIGN ORNAMENT
+2762;AL;HEAVY EXCLAMATION MARK ORNAMENT
+2763;AL;HEAVY HEART EXCLAMATION MARK ORNAMENT
+2764;AL;HEAVY BLACK HEART
+2765;AL;ROTATED HEAVY BLACK HEART BULLET
+2766;AL;FLORAL HEART
+2767;AL;ROTATED FLORAL HEART BULLET
+2776;AL;DINGBAT NEGATIVE CIRCLED DIGIT ONE
+2777;AL;DINGBAT NEGATIVE CIRCLED DIGIT TWO
+2778;AL;DINGBAT NEGATIVE CIRCLED DIGIT THREE
+2779;AL;DINGBAT NEGATIVE CIRCLED DIGIT FOUR
+277A;AL;DINGBAT NEGATIVE CIRCLED DIGIT FIVE
+277B;AL;DINGBAT NEGATIVE CIRCLED DIGIT SIX
+277C;AL;DINGBAT NEGATIVE CIRCLED DIGIT SEVEN
+277D;AL;DINGBAT NEGATIVE CIRCLED DIGIT EIGHT
+277E;AL;DINGBAT NEGATIVE CIRCLED DIGIT NINE
+277F;AL;DINGBAT NEGATIVE CIRCLED NUMBER TEN
+2780;AL;DINGBAT CIRCLED SANS-SERIF DIGIT ONE
+2781;AL;DINGBAT CIRCLED SANS-SERIF DIGIT TWO
+2782;AL;DINGBAT CIRCLED SANS-SERIF DIGIT THREE
+2783;AL;DINGBAT CIRCLED SANS-SERIF DIGIT FOUR
+2784;AL;DINGBAT CIRCLED SANS-SERIF DIGIT FIVE
+2785;AL;DINGBAT CIRCLED SANS-SERIF DIGIT SIX
+2786;AL;DINGBAT CIRCLED SANS-SERIF DIGIT SEVEN
+2787;AL;DINGBAT CIRCLED SANS-SERIF DIGIT EIGHT
+2788;AL;DINGBAT CIRCLED SANS-SERIF DIGIT NINE
+2789;AL;DINGBAT CIRCLED SANS-SERIF NUMBER TEN
+278A;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE
+278B;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT TWO
+278C;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE
+278D;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FOUR
+278E;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FIVE
+278F;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SIX
+2790;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN
+2791;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT
+2792;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE
+2793;AL;DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN
+2794;AL;HEAVY WIDE-HEADED RIGHTWARDS ARROW
+2798;AL;HEAVY SOUTH EAST ARROW
+2799;AL;HEAVY RIGHTWARDS ARROW
+279A;AL;HEAVY NORTH EAST ARROW
+279B;AL;DRAFTING POINT RIGHTWARDS ARROW
+279C;AL;HEAVY ROUND-TIPPED RIGHTWARDS ARROW
+279D;AL;TRIANGLE-HEADED RIGHTWARDS ARROW
+279E;AL;HEAVY TRIANGLE-HEADED RIGHTWARDS ARROW
+279F;AL;DASHED TRIANGLE-HEADED RIGHTWARDS ARROW
+27A0;AL;HEAVY DASHED TRIANGLE-HEADED RIGHTWARDS ARROW
+27A1;AL;BLACK RIGHTWARDS ARROW
+27A2;AL;THREE-D TOP-LIGHTED RIGHTWARDS ARROWHEAD
+27A3;AL;THREE-D BOTTOM-LIGHTED RIGHTWARDS ARROWHEAD
+27A4;AL;BLACK RIGHTWARDS ARROWHEAD
+27A5;AL;HEAVY BLACK CURVED DOWNWARDS AND RIGHTWARDS ARROW
+27A6;AL;HEAVY BLACK CURVED UPWARDS AND RIGHTWARDS ARROW
+27A7;AL;SQUAT BLACK RIGHTWARDS ARROW
+27A8;AL;HEAVY CONCAVE-POINTED BLACK RIGHTWARDS ARROW
+27A9;AL;RIGHT-SHADED WHITE RIGHTWARDS ARROW
+27AA;AL;LEFT-SHADED WHITE RIGHTWARDS ARROW
+27AB;AL;BACK-TILTED SHADOWED WHITE RIGHTWARDS ARROW
+27AC;AL;FRONT-TILTED SHADOWED WHITE RIGHTWARDS ARROW
+27AD;AL;HEAVY LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27AE;AL;HEAVY UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27AF;AL;NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27B1;AL;NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
+27B2;AL;CIRCLED HEAVY WHITE RIGHTWARDS ARROW
+27B3;AL;WHITE-FEATHERED RIGHTWARDS ARROW
+27B4;AL;BLACK-FEATHERED SOUTH EAST ARROW
+27B5;AL;BLACK-FEATHERED RIGHTWARDS ARROW
+27B6;AL;BLACK-FEATHERED NORTH EAST ARROW
+27B7;AL;HEAVY BLACK-FEATHERED SOUTH EAST ARROW
+27B8;AL;HEAVY BLACK-FEATHERED RIGHTWARDS ARROW
+27B9;AL;HEAVY BLACK-FEATHERED NORTH EAST ARROW
+27BA;AL;TEARDROP-BARBED RIGHTWARDS ARROW
+27BB;AL;HEAVY TEARDROP-SHANKED RIGHTWARDS ARROW
+27BC;AL;WEDGE-TAILED RIGHTWARDS ARROW
+27BD;AL;HEAVY WEDGE-TAILED RIGHTWARDS ARROW
+27BE;AL;OPEN-OUTLINED RIGHTWARDS ARROW
+2800;AL;BRAILLE PATTERN BLANK
+2801;AL;BRAILLE PATTERN DOTS-1
+2802;AL;BRAILLE PATTERN DOTS-2
+2803;AL;BRAILLE PATTERN DOTS-12
+2804;AL;BRAILLE PATTERN DOTS-3
+2805;AL;BRAILLE PATTERN DOTS-13
+2806;AL;BRAILLE PATTERN DOTS-23
+2807;AL;BRAILLE PATTERN DOTS-123
+2808;AL;BRAILLE PATTERN DOTS-4
+2809;AL;BRAILLE PATTERN DOTS-14
+280A;AL;BRAILLE PATTERN DOTS-24
+280B;AL;BRAILLE PATTERN DOTS-124
+280C;AL;BRAILLE PATTERN DOTS-34
+280D;AL;BRAILLE PATTERN DOTS-134
+280E;AL;BRAILLE PATTERN DOTS-234
+280F;AL;BRAILLE PATTERN DOTS-1234
+2810;AL;BRAILLE PATTERN DOTS-5
+2811;AL;BRAILLE PATTERN DOTS-15
+2812;AL;BRAILLE PATTERN DOTS-25
+2813;AL;BRAILLE PATTERN DOTS-125
+2814;AL;BRAILLE PATTERN DOTS-35
+2815;AL;BRAILLE PATTERN DOTS-135
+2816;AL;BRAILLE PATTERN DOTS-235
+2817;AL;BRAILLE PATTERN DOTS-1235
+2818;AL;BRAILLE PATTERN DOTS-45
+2819;AL;BRAILLE PATTERN DOTS-145
+281A;AL;BRAILLE PATTERN DOTS-245
+281B;AL;BRAILLE PATTERN DOTS-1245
+281C;AL;BRAILLE PATTERN DOTS-345
+281D;AL;BRAILLE PATTERN DOTS-1345
+281E;AL;BRAILLE PATTERN DOTS-2345
+281F;AL;BRAILLE PATTERN DOTS-12345
+2820;AL;BRAILLE PATTERN DOTS-6
+2821;AL;BRAILLE PATTERN DOTS-16
+2822;AL;BRAILLE PATTERN DOTS-26
+2823;AL;BRAILLE PATTERN DOTS-126
+2824;AL;BRAILLE PATTERN DOTS-36
+2825;AL;BRAILLE PATTERN DOTS-136
+2826;AL;BRAILLE PATTERN DOTS-236
+2827;AL;BRAILLE PATTERN DOTS-1236
+2828;AL;BRAILLE PATTERN DOTS-46
+2829;AL;BRAILLE PATTERN DOTS-146
+282A;AL;BRAILLE PATTERN DOTS-246
+282B;AL;BRAILLE PATTERN DOTS-1246
+282C;AL;BRAILLE PATTERN DOTS-346
+282D;AL;BRAILLE PATTERN DOTS-1346
+282E;AL;BRAILLE PATTERN DOTS-2346
+282F;AL;BRAILLE PATTERN DOTS-12346
+2830;AL;BRAILLE PATTERN DOTS-56
+2831;AL;BRAILLE PATTERN DOTS-156
+2832;AL;BRAILLE PATTERN DOTS-256
+2833;AL;BRAILLE PATTERN DOTS-1256
+2834;AL;BRAILLE PATTERN DOTS-356
+2835;AL;BRAILLE PATTERN DOTS-1356
+2836;AL;BRAILLE PATTERN DOTS-2356
+2837;AL;BRAILLE PATTERN DOTS-12356
+2838;AL;BRAILLE PATTERN DOTS-456
+2839;AL;BRAILLE PATTERN DOTS-1456
+283A;AL;BRAILLE PATTERN DOTS-2456
+283B;AL;BRAILLE PATTERN DOTS-12456
+283C;AL;BRAILLE PATTERN DOTS-3456
+283D;AL;BRAILLE PATTERN DOTS-13456
+283E;AL;BRAILLE PATTERN DOTS-23456
+283F;AL;BRAILLE PATTERN DOTS-123456
+2840;AL;BRAILLE PATTERN DOTS-7
+2841;AL;BRAILLE PATTERN DOTS-17
+2842;AL;BRAILLE PATTERN DOTS-27
+2843;AL;BRAILLE PATTERN DOTS-127
+2844;AL;BRAILLE PATTERN DOTS-37
+2845;AL;BRAILLE PATTERN DOTS-137
+2846;AL;BRAILLE PATTERN DOTS-237
+2847;AL;BRAILLE PATTERN DOTS-1237
+2848;AL;BRAILLE PATTERN DOTS-47
+2849;AL;BRAILLE PATTERN DOTS-147
+284A;AL;BRAILLE PATTERN DOTS-247
+284B;AL;BRAILLE PATTERN DOTS-1247
+284C;AL;BRAILLE PATTERN DOTS-347
+284D;AL;BRAILLE PATTERN DOTS-1347
+284E;AL;BRAILLE PATTERN DOTS-2347
+284F;AL;BRAILLE PATTERN DOTS-12347
+2850;AL;BRAILLE PATTERN DOTS-57
+2851;AL;BRAILLE PATTERN DOTS-157
+2852;AL;BRAILLE PATTERN DOTS-257
+2853;AL;BRAILLE PATTERN DOTS-1257
+2854;AL;BRAILLE PATTERN DOTS-357
+2855;AL;BRAILLE PATTERN DOTS-1357
+2856;AL;BRAILLE PATTERN DOTS-2357
+2857;AL;BRAILLE PATTERN DOTS-12357
+2858;AL;BRAILLE PATTERN DOTS-457
+2859;AL;BRAILLE PATTERN DOTS-1457
+285A;AL;BRAILLE PATTERN DOTS-2457
+285B;AL;BRAILLE PATTERN DOTS-12457
+285C;AL;BRAILLE PATTERN DOTS-3457
+285D;AL;BRAILLE PATTERN DOTS-13457
+285E;AL;BRAILLE PATTERN DOTS-23457
+285F;AL;BRAILLE PATTERN DOTS-123457
+2860;AL;BRAILLE PATTERN DOTS-67
+2861;AL;BRAILLE PATTERN DOTS-167
+2862;AL;BRAILLE PATTERN DOTS-267
+2863;AL;BRAILLE PATTERN DOTS-1267
+2864;AL;BRAILLE PATTERN DOTS-367
+2865;AL;BRAILLE PATTERN DOTS-1367
+2866;AL;BRAILLE PATTERN DOTS-2367
+2867;AL;BRAILLE PATTERN DOTS-12367
+2868;AL;BRAILLE PATTERN DOTS-467
+2869;AL;BRAILLE PATTERN DOTS-1467
+286A;AL;BRAILLE PATTERN DOTS-2467
+286B;AL;BRAILLE PATTERN DOTS-12467
+286C;AL;BRAILLE PATTERN DOTS-3467
+286D;AL;BRAILLE PATTERN DOTS-13467
+286E;AL;BRAILLE PATTERN DOTS-23467
+286F;AL;BRAILLE PATTERN DOTS-123467
+2870;AL;BRAILLE PATTERN DOTS-567
+2871;AL;BRAILLE PATTERN DOTS-1567
+2872;AL;BRAILLE PATTERN DOTS-2567
+2873;AL;BRAILLE PATTERN DOTS-12567
+2874;AL;BRAILLE PATTERN DOTS-3567
+2875;AL;BRAILLE PATTERN DOTS-13567
+2876;AL;BRAILLE PATTERN DOTS-23567
+2877;AL;BRAILLE PATTERN DOTS-123567
+2878;AL;BRAILLE PATTERN DOTS-4567
+2879;AL;BRAILLE PATTERN DOTS-14567
+287A;AL;BRAILLE PATTERN DOTS-24567
+287B;AL;BRAILLE PATTERN DOTS-124567
+287C;AL;BRAILLE PATTERN DOTS-34567
+287D;AL;BRAILLE PATTERN DOTS-134567
+287E;AL;BRAILLE PATTERN DOTS-234567
+287F;AL;BRAILLE PATTERN DOTS-1234567
+2880;AL;BRAILLE PATTERN DOTS-8
+2881;AL;BRAILLE PATTERN DOTS-18
+2882;AL;BRAILLE PATTERN DOTS-28
+2883;AL;BRAILLE PATTERN DOTS-128
+2884;AL;BRAILLE PATTERN DOTS-38
+2885;AL;BRAILLE PATTERN DOTS-138
+2886;AL;BRAILLE PATTERN DOTS-238
+2887;AL;BRAILLE PATTERN DOTS-1238
+2888;AL;BRAILLE PATTERN DOTS-48
+2889;AL;BRAILLE PATTERN DOTS-148
+288A;AL;BRAILLE PATTERN DOTS-248
+288B;AL;BRAILLE PATTERN DOTS-1248
+288C;AL;BRAILLE PATTERN DOTS-348
+288D;AL;BRAILLE PATTERN DOTS-1348
+288E;AL;BRAILLE PATTERN DOTS-2348
+288F;AL;BRAILLE PATTERN DOTS-12348
+2890;AL;BRAILLE PATTERN DOTS-58
+2891;AL;BRAILLE PATTERN DOTS-158
+2892;AL;BRAILLE PATTERN DOTS-258
+2893;AL;BRAILLE PATTERN DOTS-1258
+2894;AL;BRAILLE PATTERN DOTS-358
+2895;AL;BRAILLE PATTERN DOTS-1358
+2896;AL;BRAILLE PATTERN DOTS-2358
+2897;AL;BRAILLE PATTERN DOTS-12358
+2898;AL;BRAILLE PATTERN DOTS-458
+2899;AL;BRAILLE PATTERN DOTS-1458
+289A;AL;BRAILLE PATTERN DOTS-2458
+289B;AL;BRAILLE PATTERN DOTS-12458
+289C;AL;BRAILLE PATTERN DOTS-3458
+289D;AL;BRAILLE PATTERN DOTS-13458
+289E;AL;BRAILLE PATTERN DOTS-23458
+289F;AL;BRAILLE PATTERN DOTS-123458
+28A0;AL;BRAILLE PATTERN DOTS-68
+28A1;AL;BRAILLE PATTERN DOTS-168
+28A2;AL;BRAILLE PATTERN DOTS-268
+28A3;AL;BRAILLE PATTERN DOTS-1268
+28A4;AL;BRAILLE PATTERN DOTS-368
+28A5;AL;BRAILLE PATTERN DOTS-1368
+28A6;AL;BRAILLE PATTERN DOTS-2368
+28A7;AL;BRAILLE PATTERN DOTS-12368
+28A8;AL;BRAILLE PATTERN DOTS-468
+28A9;AL;BRAILLE PATTERN DOTS-1468
+28AA;AL;BRAILLE PATTERN DOTS-2468
+28AB;AL;BRAILLE PATTERN DOTS-12468
+28AC;AL;BRAILLE PATTERN DOTS-3468
+28AD;AL;BRAILLE PATTERN DOTS-13468
+28AE;AL;BRAILLE PATTERN DOTS-23468
+28AF;AL;BRAILLE PATTERN DOTS-123468
+28B0;AL;BRAILLE PATTERN DOTS-568
+28B1;AL;BRAILLE PATTERN DOTS-1568
+28B2;AL;BRAILLE PATTERN DOTS-2568
+28B3;AL;BRAILLE PATTERN DOTS-12568
+28B4;AL;BRAILLE PATTERN DOTS-3568
+28B5;AL;BRAILLE PATTERN DOTS-13568
+28B6;AL;BRAILLE PATTERN DOTS-23568
+28B7;AL;BRAILLE PATTERN DOTS-123568
+28B8;AL;BRAILLE PATTERN DOTS-4568
+28B9;AL;BRAILLE PATTERN DOTS-14568
+28BA;AL;BRAILLE PATTERN DOTS-24568
+28BB;AL;BRAILLE PATTERN DOTS-124568
+28BC;AL;BRAILLE PATTERN DOTS-34568
+28BD;AL;BRAILLE PATTERN DOTS-134568
+28BE;AL;BRAILLE PATTERN DOTS-234568
+28BF;AL;BRAILLE PATTERN DOTS-1234568
+28C0;AL;BRAILLE PATTERN DOTS-78
+28C1;AL;BRAILLE PATTERN DOTS-178
+28C2;AL;BRAILLE PATTERN DOTS-278
+28C3;AL;BRAILLE PATTERN DOTS-1278
+28C4;AL;BRAILLE PATTERN DOTS-378
+28C5;AL;BRAILLE PATTERN DOTS-1378
+28C6;AL;BRAILLE PATTERN DOTS-2378
+28C7;AL;BRAILLE PATTERN DOTS-12378
+28C8;AL;BRAILLE PATTERN DOTS-478
+28C9;AL;BRAILLE PATTERN DOTS-1478
+28CA;AL;BRAILLE PATTERN DOTS-2478
+28CB;AL;BRAILLE PATTERN DOTS-12478
+28CC;AL;BRAILLE PATTERN DOTS-3478
+28CD;AL;BRAILLE PATTERN DOTS-13478
+28CE;AL;BRAILLE PATTERN DOTS-23478
+28CF;AL;BRAILLE PATTERN DOTS-123478
+28D0;AL;BRAILLE PATTERN DOTS-578
+28D1;AL;BRAILLE PATTERN DOTS-1578
+28D2;AL;BRAILLE PATTERN DOTS-2578
+28D3;AL;BRAILLE PATTERN DOTS-12578
+28D4;AL;BRAILLE PATTERN DOTS-3578
+28D5;AL;BRAILLE PATTERN DOTS-13578
+28D6;AL;BRAILLE PATTERN DOTS-23578
+28D7;AL;BRAILLE PATTERN DOTS-123578
+28D8;AL;BRAILLE PATTERN DOTS-4578
+28D9;AL;BRAILLE PATTERN DOTS-14578
+28DA;AL;BRAILLE PATTERN DOTS-24578
+28DB;AL;BRAILLE PATTERN DOTS-124578
+28DC;AL;BRAILLE PATTERN DOTS-34578
+28DD;AL;BRAILLE PATTERN DOTS-134578
+28DE;AL;BRAILLE PATTERN DOTS-234578
+28DF;AL;BRAILLE PATTERN DOTS-1234578
+28E0;AL;BRAILLE PATTERN DOTS-678
+28E1;AL;BRAILLE PATTERN DOTS-1678
+28E2;AL;BRAILLE PATTERN DOTS-2678
+28E3;AL;BRAILLE PATTERN DOTS-12678
+28E4;AL;BRAILLE PATTERN DOTS-3678
+28E5;AL;BRAILLE PATTERN DOTS-13678
+28E6;AL;BRAILLE PATTERN DOTS-23678
+28E7;AL;BRAILLE PATTERN DOTS-123678
+28E8;AL;BRAILLE PATTERN DOTS-4678
+28E9;AL;BRAILLE PATTERN DOTS-14678
+28EA;AL;BRAILLE PATTERN DOTS-24678
+28EB;AL;BRAILLE PATTERN DOTS-124678
+28EC;AL;BRAILLE PATTERN DOTS-34678
+28ED;AL;BRAILLE PATTERN DOTS-134678
+28EE;AL;BRAILLE PATTERN DOTS-234678
+28EF;AL;BRAILLE PATTERN DOTS-1234678
+28F0;AL;BRAILLE PATTERN DOTS-5678
+28F1;AL;BRAILLE PATTERN DOTS-15678
+28F2;AL;BRAILLE PATTERN DOTS-25678
+28F3;AL;BRAILLE PATTERN DOTS-125678
+28F4;AL;BRAILLE PATTERN DOTS-35678
+28F5;AL;BRAILLE PATTERN DOTS-135678
+28F6;AL;BRAILLE PATTERN DOTS-235678
+28F7;AL;BRAILLE PATTERN DOTS-1235678
+28F8;AL;BRAILLE PATTERN DOTS-45678
+28F9;AL;BRAILLE PATTERN DOTS-145678
+28FA;AL;BRAILLE PATTERN DOTS-245678
+28FB;AL;BRAILLE PATTERN DOTS-1245678
+28FC;AL;BRAILLE PATTERN DOTS-345678
+28FD;AL;BRAILLE PATTERN DOTS-1345678
+28FE;AL;BRAILLE PATTERN DOTS-2345678
+28FF;AL;BRAILLE PATTERN DOTS-12345678
+2E80;ID;CJK RADICAL REPEAT
+2E81;ID;CJK RADICAL CLIFF
+2E82;ID;CJK RADICAL SECOND ONE
+2E83;ID;CJK RADICAL SECOND TWO
+2E84;ID;CJK RADICAL SECOND THREE
+2E85;ID;CJK RADICAL PERSON
+2E86;ID;CJK RADICAL BOX
+2E87;ID;CJK RADICAL TABLE
+2E88;ID;CJK RADICAL KNIFE ONE
+2E89;ID;CJK RADICAL KNIFE TWO
+2E8A;ID;CJK RADICAL DIVINATION
+2E8B;ID;CJK RADICAL SEAL
+2E8C;ID;CJK RADICAL SMALL ONE
+2E8D;ID;CJK RADICAL SMALL TWO
+2E8E;ID;CJK RADICAL LAME ONE
+2E8F;ID;CJK RADICAL LAME TWO
+2E90;ID;CJK RADICAL LAME THREE
+2E91;ID;CJK RADICAL LAME FOUR
+2E92;ID;CJK RADICAL SNAKE
+2E93;ID;CJK RADICAL THREAD
+2E94;ID;CJK RADICAL SNOUT ONE
+2E95;ID;CJK RADICAL SNOUT TWO
+2E96;ID;CJK RADICAL HEART ONE
+2E97;ID;CJK RADICAL HEART TWO
+2E98;ID;CJK RADICAL HAND
+2E99;ID;CJK RADICAL RAP
+2E9B;ID;CJK RADICAL CHOKE
+2E9C;ID;CJK RADICAL SUN
+2E9D;ID;CJK RADICAL MOON
+2E9E;ID;CJK RADICAL DEATH
+2E9F;ID;CJK RADICAL MOTHER
+2EA0;ID;CJK RADICAL CIVILIAN
+2EA1;ID;CJK RADICAL WATER ONE
+2EA2;ID;CJK RADICAL WATER TWO
+2EA3;ID;CJK RADICAL FIRE
+2EA4;ID;CJK RADICAL PAW ONE
+2EA5;ID;CJK RADICAL PAW TWO
+2EA6;ID;CJK RADICAL SIMPLIFIED HALF TREE TRUNK
+2EA7;ID;CJK RADICAL COW
+2EA8;ID;CJK RADICAL DOG
+2EA9;ID;CJK RADICAL JADE
+2EAA;ID;CJK RADICAL BOLT OF CLOTH
+2EAB;ID;CJK RADICAL EYE
+2EAC;ID;CJK RADICAL SPIRIT ONE
+2EAD;ID;CJK RADICAL SPIRIT TWO
+2EAE;ID;CJK RADICAL BAMBOO
+2EAF;ID;CJK RADICAL SILK
+2EB0;ID;CJK RADICAL C-SIMPLIFIED SILK
+2EB1;ID;CJK RADICAL NET ONE
+2EB2;ID;CJK RADICAL NET TWO
+2EB3;ID;CJK RADICAL NET THREE
+2EB4;ID;CJK RADICAL NET FOUR
+2EB5;ID;CJK RADICAL MESH
+2EB6;ID;CJK RADICAL SHEEP
+2EB7;ID;CJK RADICAL RAM
+2EB8;ID;CJK RADICAL EWE
+2EB9;ID;CJK RADICAL OLD
+2EBA;ID;CJK RADICAL BRUSH ONE
+2EBB;ID;CJK RADICAL BRUSH TWO
+2EBC;ID;CJK RADICAL MEAT
+2EBD;ID;CJK RADICAL MORTAR
+2EBE;ID;CJK RADICAL GRASS ONE
+2EBF;ID;CJK RADICAL GRASS TWO
+2EC0;ID;CJK RADICAL GRASS THREE
+2EC1;ID;CJK RADICAL TIGER
+2EC2;ID;CJK RADICAL CLOTHES
+2EC3;ID;CJK RADICAL WEST ONE
+2EC4;ID;CJK RADICAL WEST TWO
+2EC5;ID;CJK RADICAL C-SIMPLIFIED SEE
+2EC6;ID;CJK RADICAL SIMPLIFIED HORN
+2EC7;ID;CJK RADICAL HORN
+2EC8;ID;CJK RADICAL C-SIMPLIFIED SPEECH
+2EC9;ID;CJK RADICAL C-SIMPLIFIED SHELL
+2ECA;ID;CJK RADICAL FOOT
+2ECB;ID;CJK RADICAL C-SIMPLIFIED CART
+2ECC;ID;CJK RADICAL SIMPLIFIED WALK
+2ECD;ID;CJK RADICAL WALK ONE
+2ECE;ID;CJK RADICAL WALK TWO
+2ECF;ID;CJK RADICAL CITY
+2ED0;ID;CJK RADICAL C-SIMPLIFIED GOLD
+2ED1;ID;CJK RADICAL LONG ONE
+2ED2;ID;CJK RADICAL LONG TWO
+2ED3;ID;CJK RADICAL C-SIMPLIFIED LONG
+2ED4;ID;CJK RADICAL C-SIMPLIFIED GATE
+2ED5;ID;CJK RADICAL MOUND ONE
+2ED6;ID;CJK RADICAL MOUND TWO
+2ED7;ID;CJK RADICAL RAIN
+2ED8;ID;CJK RADICAL BLUE
+2ED9;ID;CJK RADICAL C-SIMPLIFIED TANNED LEATHER
+2EDA;ID;CJK RADICAL C-SIMPLIFIED LEAF
+2EDB;ID;CJK RADICAL C-SIMPLIFIED WIND
+2EDC;ID;CJK RADICAL C-SIMPLIFIED FLY
+2EDD;ID;CJK RADICAL EAT ONE
+2EDE;ID;CJK RADICAL EAT TWO
+2EDF;ID;CJK RADICAL EAT THREE
+2EE0;ID;CJK RADICAL C-SIMPLIFIED EAT
+2EE1;ID;CJK RADICAL HEAD
+2EE2;ID;CJK RADICAL C-SIMPLIFIED HORSE
+2EE3;ID;CJK RADICAL BONE
+2EE4;ID;CJK RADICAL GHOST
+2EE5;ID;CJK RADICAL C-SIMPLIFIED FISH
+2EE6;ID;CJK RADICAL C-SIMPLIFIED BIRD
+2EE7;ID;CJK RADICAL C-SIMPLIFIED SALT
+2EE8;ID;CJK RADICAL SIMPLIFIED WHEAT
+2EE9;ID;CJK RADICAL SIMPLIFIED YELLOW
+2EEA;ID;CJK RADICAL C-SIMPLIFIED FROG
+2EEB;ID;CJK RADICAL J-SIMPLIFIED EVEN
+2EEC;ID;CJK RADICAL C-SIMPLIFIED EVEN
+2EED;ID;CJK RADICAL J-SIMPLIFIED TOOTH
+2EEE;ID;CJK RADICAL C-SIMPLIFIED TOOTH
+2EEF;ID;CJK RADICAL J-SIMPLIFIED DRAGON
+2EF0;ID;CJK RADICAL C-SIMPLIFIED DRAGON
+2EF1;ID;CJK RADICAL TURTLE
+2EF2;ID;CJK RADICAL J-SIMPLIFIED TURTLE
+2EF3;ID;CJK RADICAL C-SIMPLIFIED TURTLE
+2F00;ID;KANGXI RADICAL ONE
+2F01;ID;KANGXI RADICAL LINE
+2F02;ID;KANGXI RADICAL DOT
+2F03;ID;KANGXI RADICAL SLASH
+2F04;ID;KANGXI RADICAL SECOND
+2F05;ID;KANGXI RADICAL HOOK
+2F06;ID;KANGXI RADICAL TWO
+2F07;ID;KANGXI RADICAL LID
+2F08;ID;KANGXI RADICAL MAN
+2F09;ID;KANGXI RADICAL LEGS
+2F0A;ID;KANGXI RADICAL ENTER
+2F0B;ID;KANGXI RADICAL EIGHT
+2F0C;ID;KANGXI RADICAL DOWN BOX
+2F0D;ID;KANGXI RADICAL COVER
+2F0E;ID;KANGXI RADICAL ICE
+2F0F;ID;KANGXI RADICAL TABLE
+2F10;ID;KANGXI RADICAL OPEN BOX
+2F11;ID;KANGXI RADICAL KNIFE
+2F12;ID;KANGXI RADICAL POWER
+2F13;ID;KANGXI RADICAL WRAP
+2F14;ID;KANGXI RADICAL SPOON
+2F15;ID;KANGXI RADICAL RIGHT OPEN BOX
+2F16;ID;KANGXI RADICAL HIDING ENCLOSURE
+2F17;ID;KANGXI RADICAL TEN
+2F18;ID;KANGXI RADICAL DIVINATION
+2F19;ID;KANGXI RADICAL SEAL
+2F1A;ID;KANGXI RADICAL CLIFF
+2F1B;ID;KANGXI RADICAL PRIVATE
+2F1C;ID;KANGXI RADICAL AGAIN
+2F1D;ID;KANGXI RADICAL MOUTH
+2F1E;ID;KANGXI RADICAL ENCLOSURE
+2F1F;ID;KANGXI RADICAL EARTH
+2F20;ID;KANGXI RADICAL SCHOLAR
+2F21;ID;KANGXI RADICAL GO
+2F22;ID;KANGXI RADICAL GO SLOWLY
+2F23;ID;KANGXI RADICAL EVENING
+2F24;ID;KANGXI RADICAL BIG
+2F25;ID;KANGXI RADICAL WOMAN
+2F26;ID;KANGXI RADICAL CHILD
+2F27;ID;KANGXI RADICAL ROOF
+2F28;ID;KANGXI RADICAL INCH
+2F29;ID;KANGXI RADICAL SMALL
+2F2A;ID;KANGXI RADICAL LAME
+2F2B;ID;KANGXI RADICAL CORPSE
+2F2C;ID;KANGXI RADICAL SPROUT
+2F2D;ID;KANGXI RADICAL MOUNTAIN
+2F2E;ID;KANGXI RADICAL RIVER
+2F2F;ID;KANGXI RADICAL WORK
+2F30;ID;KANGXI RADICAL ONESELF
+2F31;ID;KANGXI RADICAL TURBAN
+2F32;ID;KANGXI RADICAL DRY
+2F33;ID;KANGXI RADICAL SHORT THREAD
+2F34;ID;KANGXI RADICAL DOTTED CLIFF
+2F35;ID;KANGXI RADICAL LONG STRIDE
+2F36;ID;KANGXI RADICAL TWO HANDS
+2F37;ID;KANGXI RADICAL SHOOT
+2F38;ID;KANGXI RADICAL BOW
+2F39;ID;KANGXI RADICAL SNOUT
+2F3A;ID;KANGXI RADICAL BRISTLE
+2F3B;ID;KANGXI RADICAL STEP
+2F3C;ID;KANGXI RADICAL HEART
+2F3D;ID;KANGXI RADICAL HALBERD
+2F3E;ID;KANGXI RADICAL DOOR
+2F3F;ID;KANGXI RADICAL HAND
+2F40;ID;KANGXI RADICAL BRANCH
+2F41;ID;KANGXI RADICAL RAP
+2F42;ID;KANGXI RADICAL SCRIPT
+2F43;ID;KANGXI RADICAL DIPPER
+2F44;ID;KANGXI RADICAL AXE
+2F45;ID;KANGXI RADICAL SQUARE
+2F46;ID;KANGXI RADICAL NOT
+2F47;ID;KANGXI RADICAL SUN
+2F48;ID;KANGXI RADICAL SAY
+2F49;ID;KANGXI RADICAL MOON
+2F4A;ID;KANGXI RADICAL TREE
+2F4B;ID;KANGXI RADICAL LACK
+2F4C;ID;KANGXI RADICAL STOP
+2F4D;ID;KANGXI RADICAL DEATH
+2F4E;ID;KANGXI RADICAL WEAPON
+2F4F;ID;KANGXI RADICAL DO NOT
+2F50;ID;KANGXI RADICAL COMPARE
+2F51;ID;KANGXI RADICAL FUR
+2F52;ID;KANGXI RADICAL CLAN
+2F53;ID;KANGXI RADICAL STEAM
+2F54;ID;KANGXI RADICAL WATER
+2F55;ID;KANGXI RADICAL FIRE
+2F56;ID;KANGXI RADICAL CLAW
+2F57;ID;KANGXI RADICAL FATHER
+2F58;ID;KANGXI RADICAL DOUBLE X
+2F59;ID;KANGXI RADICAL HALF TREE TRUNK
+2F5A;ID;KANGXI RADICAL SLICE
+2F5B;ID;KANGXI RADICAL FANG
+2F5C;ID;KANGXI RADICAL COW
+2F5D;ID;KANGXI RADICAL DOG
+2F5E;ID;KANGXI RADICAL PROFOUND
+2F5F;ID;KANGXI RADICAL JADE
+2F60;ID;KANGXI RADICAL MELON
+2F61;ID;KANGXI RADICAL TILE
+2F62;ID;KANGXI RADICAL SWEET
+2F63;ID;KANGXI RADICAL LIFE
+2F64;ID;KANGXI RADICAL USE
+2F65;ID;KANGXI RADICAL FIELD
+2F66;ID;KANGXI RADICAL BOLT OF CLOTH
+2F67;ID;KANGXI RADICAL SICKNESS
+2F68;ID;KANGXI RADICAL DOTTED TENT
+2F69;ID;KANGXI RADICAL WHITE
+2F6A;ID;KANGXI RADICAL SKIN
+2F6B;ID;KANGXI RADICAL DISH
+2F6C;ID;KANGXI RADICAL EYE
+2F6D;ID;KANGXI RADICAL SPEAR
+2F6E;ID;KANGXI RADICAL ARROW
+2F6F;ID;KANGXI RADICAL STONE
+2F70;ID;KANGXI RADICAL SPIRIT
+2F71;ID;KANGXI RADICAL TRACK
+2F72;ID;KANGXI RADICAL GRAIN
+2F73;ID;KANGXI RADICAL CAVE
+2F74;ID;KANGXI RADICAL STAND
+2F75;ID;KANGXI RADICAL BAMBOO
+2F76;ID;KANGXI RADICAL RICE
+2F77;ID;KANGXI RADICAL SILK
+2F78;ID;KANGXI RADICAL JAR
+2F79;ID;KANGXI RADICAL NET
+2F7A;ID;KANGXI RADICAL SHEEP
+2F7B;ID;KANGXI RADICAL FEATHER
+2F7C;ID;KANGXI RADICAL OLD
+2F7D;ID;KANGXI RADICAL AND
+2F7E;ID;KANGXI RADICAL PLOW
+2F7F;ID;KANGXI RADICAL EAR
+2F80;ID;KANGXI RADICAL BRUSH
+2F81;ID;KANGXI RADICAL MEAT
+2F82;ID;KANGXI RADICAL MINISTER
+2F83;ID;KANGXI RADICAL SELF
+2F84;ID;KANGXI RADICAL ARRIVE
+2F85;ID;KANGXI RADICAL MORTAR
+2F86;ID;KANGXI RADICAL TONGUE
+2F87;ID;KANGXI RADICAL OPPOSE
+2F88;ID;KANGXI RADICAL BOAT
+2F89;ID;KANGXI RADICAL STOPPING
+2F8A;ID;KANGXI RADICAL COLOR
+2F8B;ID;KANGXI RADICAL GRASS
+2F8C;ID;KANGXI RADICAL TIGER
+2F8D;ID;KANGXI RADICAL INSECT
+2F8E;ID;KANGXI RADICAL BLOOD
+2F8F;ID;KANGXI RADICAL WALK ENCLOSURE
+2F90;ID;KANGXI RADICAL CLOTHES
+2F91;ID;KANGXI RADICAL WEST
+2F92;ID;KANGXI RADICAL SEE
+2F93;ID;KANGXI RADICAL HORN
+2F94;ID;KANGXI RADICAL SPEECH
+2F95;ID;KANGXI RADICAL VALLEY
+2F96;ID;KANGXI RADICAL BEAN
+2F97;ID;KANGXI RADICAL PIG
+2F98;ID;KANGXI RADICAL BADGER
+2F99;ID;KANGXI RADICAL SHELL
+2F9A;ID;KANGXI RADICAL RED
+2F9B;ID;KANGXI RADICAL RUN
+2F9C;ID;KANGXI RADICAL FOOT
+2F9D;ID;KANGXI RADICAL BODY
+2F9E;ID;KANGXI RADICAL CART
+2F9F;ID;KANGXI RADICAL BITTER
+2FA0;ID;KANGXI RADICAL MORNING
+2FA1;ID;KANGXI RADICAL WALK
+2FA2;ID;KANGXI RADICAL CITY
+2FA3;ID;KANGXI RADICAL WINE
+2FA4;ID;KANGXI RADICAL DISTINGUISH
+2FA5;ID;KANGXI RADICAL VILLAGE
+2FA6;ID;KANGXI RADICAL GOLD
+2FA7;ID;KANGXI RADICAL LONG
+2FA8;ID;KANGXI RADICAL GATE
+2FA9;ID;KANGXI RADICAL MOUND
+2FAA;ID;KANGXI RADICAL SLAVE
+2FAB;ID;KANGXI RADICAL SHORT TAILED BIRD
+2FAC;ID;KANGXI RADICAL RAIN
+2FAD;ID;KANGXI RADICAL BLUE
+2FAE;ID;KANGXI RADICAL WRONG
+2FAF;ID;KANGXI RADICAL FACE
+2FB0;ID;KANGXI RADICAL LEATHER
+2FB1;ID;KANGXI RADICAL TANNED LEATHER
+2FB2;ID;KANGXI RADICAL LEEK
+2FB3;ID;KANGXI RADICAL SOUND
+2FB4;ID;KANGXI RADICAL LEAF
+2FB5;ID;KANGXI RADICAL WIND
+2FB6;ID;KANGXI RADICAL FLY
+2FB7;ID;KANGXI RADICAL EAT
+2FB8;ID;KANGXI RADICAL HEAD
+2FB9;ID;KANGXI RADICAL FRAGRANT
+2FBA;ID;KANGXI RADICAL HORSE
+2FBB;ID;KANGXI RADICAL BONE
+2FBC;ID;KANGXI RADICAL TALL
+2FBD;ID;KANGXI RADICAL HAIR
+2FBE;ID;KANGXI RADICAL FIGHT
+2FBF;ID;KANGXI RADICAL SACRIFICIAL WINE
+2FC0;ID;KANGXI RADICAL CAULDRON
+2FC1;ID;KANGXI RADICAL GHOST
+2FC2;ID;KANGXI RADICAL FISH
+2FC3;ID;KANGXI RADICAL BIRD
+2FC4;ID;KANGXI RADICAL SALT
+2FC5;ID;KANGXI RADICAL DEER
+2FC6;ID;KANGXI RADICAL WHEAT
+2FC7;ID;KANGXI RADICAL HEMP
+2FC8;ID;KANGXI RADICAL YELLOW
+2FC9;ID;KANGXI RADICAL MILLET
+2FCA;ID;KANGXI RADICAL BLACK
+2FCB;ID;KANGXI RADICAL EMBROIDERY
+2FCC;ID;KANGXI RADICAL FROG
+2FCD;ID;KANGXI RADICAL TRIPOD
+2FCE;ID;KANGXI RADICAL DRUM
+2FCF;ID;KANGXI RADICAL RAT
+2FD0;ID;KANGXI RADICAL NOSE
+2FD1;ID;KANGXI RADICAL EVEN
+2FD2;ID;KANGXI RADICAL TOOTH
+2FD3;ID;KANGXI RADICAL DRAGON
+2FD4;ID;KANGXI RADICAL TURTLE
+2FD5;ID;KANGXI RADICAL FLUTE
+2FF0;ID;IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT
+2FF1;ID;IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO BELOW
+2FF2;ID;IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO MIDDLE AND RIGHT
+2FF3;ID;IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO MIDDLE AND BELOW
+2FF4;ID;IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND
+2FF5;ID;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM ABOVE
+2FF6;ID;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM BELOW
+2FF7;ID;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LEFT
+2FF8;ID;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER LEFT
+2FF9;ID;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER RIGHT
+2FFA;ID;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LOWER LEFT
+2FFB;ID;IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID
+3000;ID;IDEOGRAPHIC SPACE
+3001;CL;IDEOGRAPHIC COMMA
+3002;CL;IDEOGRAPHIC FULL STOP
+3003;ID;DITTO MARK
+3004;ID;JAPANESE INDUSTRIAL STANDARD SYMBOL
+3005;NS;IDEOGRAPHIC ITERATION MARK
+3006;ID;IDEOGRAPHIC CLOSING MARK
+3007;ID;IDEOGRAPHIC NUMBER ZERO
+3008;OP;LEFT ANGLE BRACKET
+3009;CL;RIGHT ANGLE BRACKET
+300A;OP;LEFT DOUBLE ANGLE BRACKET
+300B;CL;RIGHT DOUBLE ANGLE BRACKET
+300C;OP;LEFT CORNER BRACKET
+300D;CL;RIGHT CORNER BRACKET
+300E;OP;LEFT WHITE CORNER BRACKET
+300F;CL;RIGHT WHITE CORNER BRACKET
+3010;OP;LEFT BLACK LENTICULAR BRACKET
+3011;CL;RIGHT BLACK LENTICULAR BRACKET
+3012;ID;POSTAL MARK
+3013;ID;GETA MARK
+3014;OP;LEFT TORTOISE SHELL BRACKET
+3015;CL;RIGHT TORTOISE SHELL BRACKET
+3016;OP;LEFT WHITE LENTICULAR BRACKET
+3017;CL;RIGHT WHITE LENTICULAR BRACKET
+3018;OP;LEFT WHITE TORTOISE SHELL BRACKET
+3019;CL;RIGHT WHITE TORTOISE SHELL BRACKET
+301A;OP;LEFT WHITE SQUARE BRACKET
+301B;CL;RIGHT WHITE SQUARE BRACKET
+301C;NS;WAVE DASH
+301D;OP;REVERSED DOUBLE PRIME QUOTATION MARK
+301E;CL;DOUBLE PRIME QUOTATION MARK
+301F;CL;LOW DOUBLE PRIME QUOTATION MARK
+3020;ID;POSTAL MARK FACE
+3021;ID;HANGZHOU NUMERAL ONE
+3022;ID;HANGZHOU NUMERAL TWO
+3023;ID;HANGZHOU NUMERAL THREE
+3024;ID;HANGZHOU NUMERAL FOUR
+3025;ID;HANGZHOU NUMERAL FIVE
+3026;ID;HANGZHOU NUMERAL SIX
+3027;ID;HANGZHOU NUMERAL SEVEN
+3028;ID;HANGZHOU NUMERAL EIGHT
+3029;ID;HANGZHOU NUMERAL NINE
+302A;CM;IDEOGRAPHIC LEVEL TONE MARK
+302B;CM;IDEOGRAPHIC RISING TONE MARK
+302C;CM;IDEOGRAPHIC DEPARTING TONE MARK
+302D;CM;IDEOGRAPHIC ENTERING TONE MARK
+302E;CM;HANGUL SINGLE DOT TONE MARK
+302F;CM;HANGUL DOUBLE DOT TONE MARK
+3030;ID;WAVY DASH
+3031;ID;VERTICAL KANA REPEAT MARK
+3032;ID;VERTICAL KANA REPEAT WITH VOICED SOUND MARK
+3033;ID;VERTICAL KANA REPEAT MARK UPPER HALF
+3034;ID;VERTICAL KANA REPEAT WITH VOICED SOUND MARK UPPER HALF
+3035;ID;VERTICAL KANA REPEAT MARK LOWER HALF
+3036;ID;CIRCLED POSTAL MARK
+3037;ID;IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL
+3038;ID;HANGZHOU NUMERAL TEN
+3039;ID;HANGZHOU NUMERAL TWENTY
+303A;ID;HANGZHOU NUMERAL THIRTY
+303E;ID;IDEOGRAPHIC VARIATION INDICATOR
+303F;ID;IDEOGRAPHIC HALF FILL SPACE
+3041;NS;HIRAGANA LETTER SMALL A
+3042;ID;HIRAGANA LETTER A
+3043;NS;HIRAGANA LETTER SMALL I
+3044;ID;HIRAGANA LETTER I
+3045;NS;HIRAGANA LETTER SMALL U
+3046;ID;HIRAGANA LETTER U
+3047;NS;HIRAGANA LETTER SMALL E
+3048;ID;HIRAGANA LETTER E
+3049;NS;HIRAGANA LETTER SMALL O
+304A;ID;HIRAGANA LETTER O
+304B;ID;HIRAGANA LETTER KA
+304C;ID;HIRAGANA LETTER GA
+304D;ID;HIRAGANA LETTER KI
+304E;ID;HIRAGANA LETTER GI
+304F;ID;HIRAGANA LETTER KU
+3050;ID;HIRAGANA LETTER GU
+3051;ID;HIRAGANA LETTER KE
+3052;ID;HIRAGANA LETTER GE
+3053;ID;HIRAGANA LETTER KO
+3054;ID;HIRAGANA LETTER GO
+3055;ID;HIRAGANA LETTER SA
+3056;ID;HIRAGANA LETTER ZA
+3057;ID;HIRAGANA LETTER SI
+3058;ID;HIRAGANA LETTER ZI
+3059;ID;HIRAGANA LETTER SU
+305A;ID;HIRAGANA LETTER ZU
+305B;ID;HIRAGANA LETTER SE
+305C;ID;HIRAGANA LETTER ZE
+305D;ID;HIRAGANA LETTER SO
+305E;ID;HIRAGANA LETTER ZO
+305F;ID;HIRAGANA LETTER TA
+3060;ID;HIRAGANA LETTER DA
+3061;ID;HIRAGANA LETTER TI
+3062;ID;HIRAGANA LETTER DI
+3063;NS;HIRAGANA LETTER SMALL TU
+3064;ID;HIRAGANA LETTER TU
+3065;ID;HIRAGANA LETTER DU
+3066;ID;HIRAGANA LETTER TE
+3067;ID;HIRAGANA LETTER DE
+3068;ID;HIRAGANA LETTER TO
+3069;ID;HIRAGANA LETTER DO
+306A;ID;HIRAGANA LETTER NA
+306B;ID;HIRAGANA LETTER NI
+306C;ID;HIRAGANA LETTER NU
+306D;ID;HIRAGANA LETTER NE
+306E;ID;HIRAGANA LETTER NO
+306F;ID;HIRAGANA LETTER HA
+3070;ID;HIRAGANA LETTER BA
+3071;ID;HIRAGANA LETTER PA
+3072;ID;HIRAGANA LETTER HI
+3073;ID;HIRAGANA LETTER BI
+3074;ID;HIRAGANA LETTER PI
+3075;ID;HIRAGANA LETTER HU
+3076;ID;HIRAGANA LETTER BU
+3077;ID;HIRAGANA LETTER PU
+3078;ID;HIRAGANA LETTER HE
+3079;ID;HIRAGANA LETTER BE
+307A;ID;HIRAGANA LETTER PE
+307B;ID;HIRAGANA LETTER HO
+307C;ID;HIRAGANA LETTER BO
+307D;ID;HIRAGANA LETTER PO
+307E;ID;HIRAGANA LETTER MA
+307F;ID;HIRAGANA LETTER MI
+3080;ID;HIRAGANA LETTER MU
+3081;ID;HIRAGANA LETTER ME
+3082;ID;HIRAGANA LETTER MO
+3083;NS;HIRAGANA LETTER SMALL YA
+3084;ID;HIRAGANA LETTER YA
+3085;NS;HIRAGANA LETTER SMALL YU
+3086;ID;HIRAGANA LETTER YU
+3087;NS;HIRAGANA LETTER SMALL YO
+3088;ID;HIRAGANA LETTER YO
+3089;ID;HIRAGANA LETTER RA
+308A;ID;HIRAGANA LETTER RI
+308B;ID;HIRAGANA LETTER RU
+308C;ID;HIRAGANA LETTER RE
+308D;ID;HIRAGANA LETTER RO
+308E;NS;HIRAGANA LETTER SMALL WA
+308F;ID;HIRAGANA LETTER WA
+3090;ID;HIRAGANA LETTER WI
+3091;ID;HIRAGANA LETTER WE
+3092;ID;HIRAGANA LETTER WO
+3093;ID;HIRAGANA LETTER N
+3094;ID;HIRAGANA LETTER VU
+3099;CM;COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK
+309A;CM;COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+309B;NS;KATAKANA-HIRAGANA VOICED SOUND MARK
+309C;NS;KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+309D;NS;HIRAGANA ITERATION MARK
+309E;NS;HIRAGANA VOICED ITERATION MARK
+30A1;NS;KATAKANA LETTER SMALL A
+30A2;ID;KATAKANA LETTER A
+30A3;NS;KATAKANA LETTER SMALL I
+30A4;ID;KATAKANA LETTER I
+30A5;NS;KATAKANA LETTER SMALL U
+30A6;ID;KATAKANA LETTER U
+30A7;NS;KATAKANA LETTER SMALL E
+30A8;ID;KATAKANA LETTER E
+30A9;NS;KATAKANA LETTER SMALL O
+30AA;ID;KATAKANA LETTER O
+30AB;ID;KATAKANA LETTER KA
+30AC;ID;KATAKANA LETTER GA
+30AD;ID;KATAKANA LETTER KI
+30AE;ID;KATAKANA LETTER GI
+30AF;ID;KATAKANA LETTER KU
+30B0;ID;KATAKANA LETTER GU
+30B1;ID;KATAKANA LETTER KE
+30B2;ID;KATAKANA LETTER GE
+30B3;ID;KATAKANA LETTER KO
+30B4;ID;KATAKANA LETTER GO
+30B5;ID;KATAKANA LETTER SA
+30B6;ID;KATAKANA LETTER ZA
+30B7;ID;KATAKANA LETTER SI
+30B8;ID;KATAKANA LETTER ZI
+30B9;ID;KATAKANA LETTER SU
+30BA;ID;KATAKANA LETTER ZU
+30BB;ID;KATAKANA LETTER SE
+30BC;ID;KATAKANA LETTER ZE
+30BD;ID;KATAKANA LETTER SO
+30BE;ID;KATAKANA LETTER ZO
+30BF;ID;KATAKANA LETTER TA
+30C0;ID;KATAKANA LETTER DA
+30C1;ID;KATAKANA LETTER TI
+30C2;ID;KATAKANA LETTER DI
+30C3;NS;KATAKANA LETTER SMALL TU
+30C4;ID;KATAKANA LETTER TU
+30C5;ID;KATAKANA LETTER DU
+30C6;ID;KATAKANA LETTER TE
+30C7;ID;KATAKANA LETTER DE
+30C8;ID;KATAKANA LETTER TO
+30C9;ID;KATAKANA LETTER DO
+30CA;ID;KATAKANA LETTER NA
+30CB;ID;KATAKANA LETTER NI
+30CC;ID;KATAKANA LETTER NU
+30CD;ID;KATAKANA LETTER NE
+30CE;ID;KATAKANA LETTER NO
+30CF;ID;KATAKANA LETTER HA
+30D0;ID;KATAKANA LETTER BA
+30D1;ID;KATAKANA LETTER PA
+30D2;ID;KATAKANA LETTER HI
+30D3;ID;KATAKANA LETTER BI
+30D4;ID;KATAKANA LETTER PI
+30D5;ID;KATAKANA LETTER HU
+30D6;ID;KATAKANA LETTER BU
+30D7;ID;KATAKANA LETTER PU
+30D8;ID;KATAKANA LETTER HE
+30D9;ID;KATAKANA LETTER BE
+30DA;ID;KATAKANA LETTER PE
+30DB;ID;KATAKANA LETTER HO
+30DC;ID;KATAKANA LETTER BO
+30DD;ID;KATAKANA LETTER PO
+30DE;ID;KATAKANA LETTER MA
+30DF;ID;KATAKANA LETTER MI
+30E0;ID;KATAKANA LETTER MU
+30E1;ID;KATAKANA LETTER ME
+30E2;ID;KATAKANA LETTER MO
+30E3;NS;KATAKANA LETTER SMALL YA
+30E4;ID;KATAKANA LETTER YA
+30E5;NS;KATAKANA LETTER SMALL YU
+30E6;ID;KATAKANA LETTER YU
+30E7;NS;KATAKANA LETTER SMALL YO
+30E8;ID;KATAKANA LETTER YO
+30E9;ID;KATAKANA LETTER RA
+30EA;ID;KATAKANA LETTER RI
+30EB;ID;KATAKANA LETTER RU
+30EC;ID;KATAKANA LETTER RE
+30ED;ID;KATAKANA LETTER RO
+30EE;NS;KATAKANA LETTER SMALL WA
+30EF;ID;KATAKANA LETTER WA
+30F0;ID;KATAKANA LETTER WI
+30F1;ID;KATAKANA LETTER WE
+30F2;ID;KATAKANA LETTER WO
+30F3;ID;KATAKANA LETTER N
+30F4;ID;KATAKANA LETTER VU
+30F5;NS;KATAKANA LETTER SMALL KA
+30F6;NS;KATAKANA LETTER SMALL KE
+30F7;ID;KATAKANA LETTER VA
+30F8;ID;KATAKANA LETTER VI
+30F9;ID;KATAKANA LETTER VE
+30FA;ID;KATAKANA LETTER VO
+30FB;NS;KATAKANA MIDDLE DOT
+30FC;ID;KATAKANA-HIRAGANA PROLONGED SOUND MARK
+30FD;NS;KATAKANA ITERATION MARK
+30FE;ID;KATAKANA VOICED ITERATION MARK
+3105;ID;BOPOMOFO LETTER B
+3106;ID;BOPOMOFO LETTER P
+3107;ID;BOPOMOFO LETTER M
+3108;ID;BOPOMOFO LETTER F
+3109;ID;BOPOMOFO LETTER D
+310A;ID;BOPOMOFO LETTER T
+310B;ID;BOPOMOFO LETTER N
+310C;ID;BOPOMOFO LETTER L
+310D;ID;BOPOMOFO LETTER G
+310E;ID;BOPOMOFO LETTER K
+310F;ID;BOPOMOFO LETTER H
+3110;ID;BOPOMOFO LETTER J
+3111;ID;BOPOMOFO LETTER Q
+3112;ID;BOPOMOFO LETTER X
+3113;ID;BOPOMOFO LETTER ZH
+3114;ID;BOPOMOFO LETTER CH
+3115;ID;BOPOMOFO LETTER SH
+3116;ID;BOPOMOFO LETTER R
+3117;ID;BOPOMOFO LETTER Z
+3118;ID;BOPOMOFO LETTER C
+3119;ID;BOPOMOFO LETTER S
+311A;ID;BOPOMOFO LETTER A
+311B;ID;BOPOMOFO LETTER O
+311C;ID;BOPOMOFO LETTER E
+311D;ID;BOPOMOFO LETTER EH
+311E;ID;BOPOMOFO LETTER AI
+311F;ID;BOPOMOFO LETTER EI
+3120;ID;BOPOMOFO LETTER AU
+3121;ID;BOPOMOFO LETTER OU
+3122;ID;BOPOMOFO LETTER AN
+3123;ID;BOPOMOFO LETTER EN
+3124;ID;BOPOMOFO LETTER ANG
+3125;ID;BOPOMOFO LETTER ENG
+3126;ID;BOPOMOFO LETTER ER
+3127;ID;BOPOMOFO LETTER I
+3128;ID;BOPOMOFO LETTER U
+3129;ID;BOPOMOFO LETTER IU
+312A;ID;BOPOMOFO LETTER V
+312B;ID;BOPOMOFO LETTER NG
+312C;ID;BOPOMOFO LETTER GN
+3131;ID;HANGUL LETTER KIYEOK
+3132;ID;HANGUL LETTER SSANGKIYEOK
+3133;ID;HANGUL LETTER KIYEOK-SIOS
+3134;ID;HANGUL LETTER NIEUN
+3135;ID;HANGUL LETTER NIEUN-CIEUC
+3136;ID;HANGUL LETTER NIEUN-HIEUH
+3137;ID;HANGUL LETTER TIKEUT
+3138;ID;HANGUL LETTER SSANGTIKEUT
+3139;ID;HANGUL LETTER RIEUL
+313A;ID;HANGUL LETTER RIEUL-KIYEOK
+313B;ID;HANGUL LETTER RIEUL-MIEUM
+313C;ID;HANGUL LETTER RIEUL-PIEUP
+313D;ID;HANGUL LETTER RIEUL-SIOS
+313E;ID;HANGUL LETTER RIEUL-THIEUTH
+313F;ID;HANGUL LETTER RIEUL-PHIEUPH
+3140;ID;HANGUL LETTER RIEUL-HIEUH
+3141;ID;HANGUL LETTER MIEUM
+3142;ID;HANGUL LETTER PIEUP
+3143;ID;HANGUL LETTER SSANGPIEUP
+3144;ID;HANGUL LETTER PIEUP-SIOS
+3145;ID;HANGUL LETTER SIOS
+3146;ID;HANGUL LETTER SSANGSIOS
+3147;ID;HANGUL LETTER IEUNG
+3148;ID;HANGUL LETTER CIEUC
+3149;ID;HANGUL LETTER SSANGCIEUC
+314A;ID;HANGUL LETTER CHIEUCH
+314B;ID;HANGUL LETTER KHIEUKH
+314C;ID;HANGUL LETTER THIEUTH
+314D;ID;HANGUL LETTER PHIEUPH
+314E;ID;HANGUL LETTER HIEUH
+314F;ID;HANGUL LETTER A
+3150;ID;HANGUL LETTER AE
+3151;ID;HANGUL LETTER YA
+3152;ID;HANGUL LETTER YAE
+3153;ID;HANGUL LETTER EO
+3154;ID;HANGUL LETTER E
+3155;ID;HANGUL LETTER YEO
+3156;ID;HANGUL LETTER YE
+3157;ID;HANGUL LETTER O
+3158;ID;HANGUL LETTER WA
+3159;ID;HANGUL LETTER WAE
+315A;ID;HANGUL LETTER OE
+315B;ID;HANGUL LETTER YO
+315C;ID;HANGUL LETTER U
+315D;ID;HANGUL LETTER WEO
+315E;ID;HANGUL LETTER WE
+315F;ID;HANGUL LETTER WI
+3160;ID;HANGUL LETTER YU
+3161;ID;HANGUL LETTER EU
+3162;ID;HANGUL LETTER YI
+3163;ID;HANGUL LETTER I
+3164;ID;HANGUL FILLER
+3165;ID;HANGUL LETTER SSANGNIEUN
+3166;ID;HANGUL LETTER NIEUN-TIKEUT
+3167;ID;HANGUL LETTER NIEUN-SIOS
+3168;ID;HANGUL LETTER NIEUN-PANSIOS
+3169;ID;HANGUL LETTER RIEUL-KIYEOK-SIOS
+316A;ID;HANGUL LETTER RIEUL-TIKEUT
+316B;ID;HANGUL LETTER RIEUL-PIEUP-SIOS
+316C;ID;HANGUL LETTER RIEUL-PANSIOS
+316D;ID;HANGUL LETTER RIEUL-YEORINHIEUH
+316E;ID;HANGUL LETTER MIEUM-PIEUP
+316F;ID;HANGUL LETTER MIEUM-SIOS
+3170;ID;HANGUL LETTER MIEUM-PANSIOS
+3171;ID;HANGUL LETTER KAPYEOUNMIEUM
+3172;ID;HANGUL LETTER PIEUP-KIYEOK
+3173;ID;HANGUL LETTER PIEUP-TIKEUT
+3174;ID;HANGUL LETTER PIEUP-SIOS-KIYEOK
+3175;ID;HANGUL LETTER PIEUP-SIOS-TIKEUT
+3176;ID;HANGUL LETTER PIEUP-CIEUC
+3177;ID;HANGUL LETTER PIEUP-THIEUTH
+3178;ID;HANGUL LETTER KAPYEOUNPIEUP
+3179;ID;HANGUL LETTER KAPYEOUNSSANGPIEUP
+317A;ID;HANGUL LETTER SIOS-KIYEOK
+317B;ID;HANGUL LETTER SIOS-NIEUN
+317C;ID;HANGUL LETTER SIOS-TIKEUT
+317D;ID;HANGUL LETTER SIOS-PIEUP
+317E;ID;HANGUL LETTER SIOS-CIEUC
+317F;ID;HANGUL LETTER PANSIOS
+3180;ID;HANGUL LETTER SSANGIEUNG
+3181;ID;HANGUL LETTER YESIEUNG
+3182;ID;HANGUL LETTER YESIEUNG-SIOS
+3183;ID;HANGUL LETTER YESIEUNG-PANSIOS
+3184;ID;HANGUL LETTER KAPYEOUNPHIEUPH
+3185;ID;HANGUL LETTER SSANGHIEUH
+3186;ID;HANGUL LETTER YEORINHIEUH
+3187;ID;HANGUL LETTER YO-YA
+3188;ID;HANGUL LETTER YO-YAE
+3189;ID;HANGUL LETTER YO-I
+318A;ID;HANGUL LETTER YU-YEO
+318B;ID;HANGUL LETTER YU-YE
+318C;ID;HANGUL LETTER YU-I
+318D;ID;HANGUL LETTER ARAEA
+318E;ID;HANGUL LETTER ARAEAE
+3190;ID;IDEOGRAPHIC ANNOTATION LINKING MARK
+3191;ID;IDEOGRAPHIC ANNOTATION REVERSE MARK
+3192;ID;IDEOGRAPHIC ANNOTATION ONE MARK
+3193;ID;IDEOGRAPHIC ANNOTATION TWO MARK
+3194;ID;IDEOGRAPHIC ANNOTATION THREE MARK
+3195;ID;IDEOGRAPHIC ANNOTATION FOUR MARK
+3196;ID;IDEOGRAPHIC ANNOTATION TOP MARK
+3197;ID;IDEOGRAPHIC ANNOTATION MIDDLE MARK
+3198;ID;IDEOGRAPHIC ANNOTATION BOTTOM MARK
+3199;ID;IDEOGRAPHIC ANNOTATION FIRST MARK
+319A;ID;IDEOGRAPHIC ANNOTATION SECOND MARK
+319B;ID;IDEOGRAPHIC ANNOTATION THIRD MARK
+319C;ID;IDEOGRAPHIC ANNOTATION FOURTH MARK
+319D;ID;IDEOGRAPHIC ANNOTATION HEAVEN MARK
+319E;ID;IDEOGRAPHIC ANNOTATION EARTH MARK
+319F;ID;IDEOGRAPHIC ANNOTATION MAN MARK
+31A0;ID;BOPOMOFO LETTER BU
+31A1;ID;BOPOMOFO LETTER ZI
+31A2;ID;BOPOMOFO LETTER JI
+31A3;ID;BOPOMOFO LETTER GU
+31A4;ID;BOPOMOFO LETTER EE
+31A5;ID;BOPOMOFO LETTER ENN
+31A6;ID;BOPOMOFO LETTER OO
+31A7;ID;BOPOMOFO LETTER ONN
+31A8;ID;BOPOMOFO LETTER IR
+31A9;ID;BOPOMOFO LETTER ANN
+31AA;ID;BOPOMOFO LETTER INN
+31AB;ID;BOPOMOFO LETTER UNN
+31AC;ID;BOPOMOFO LETTER IM
+31AD;ID;BOPOMOFO LETTER NGG
+31AE;ID;BOPOMOFO LETTER AINN
+31AF;ID;BOPOMOFO LETTER AUNN
+31B0;ID;BOPOMOFO LETTER AM
+31B1;ID;BOPOMOFO LETTER OM
+31B2;ID;BOPOMOFO LETTER ONG
+31B3;ID;BOPOMOFO LETTER INNN
+31B4;ID;BOPOMOFO FINAL LETTER P
+31B5;ID;BOPOMOFO FINAL LETTER T
+31B6;ID;BOPOMOFO FINAL LETTER K
+31B7;ID;BOPOMOFO FINAL LETTER H
+3200;ID;PARENTHESIZED HANGUL KIYEOK
+3201;ID;PARENTHESIZED HANGUL NIEUN
+3202;ID;PARENTHESIZED HANGUL TIKEUT
+3203;ID;PARENTHESIZED HANGUL RIEUL
+3204;ID;PARENTHESIZED HANGUL MIEUM
+3205;ID;PARENTHESIZED HANGUL PIEUP
+3206;ID;PARENTHESIZED HANGUL SIOS
+3207;ID;PARENTHESIZED HANGUL IEUNG
+3208;ID;PARENTHESIZED HANGUL CIEUC
+3209;ID;PARENTHESIZED HANGUL CHIEUCH
+320A;ID;PARENTHESIZED HANGUL KHIEUKH
+320B;ID;PARENTHESIZED HANGUL THIEUTH
+320C;ID;PARENTHESIZED HANGUL PHIEUPH
+320D;ID;PARENTHESIZED HANGUL HIEUH
+320E;ID;PARENTHESIZED HANGUL KIYEOK A
+320F;ID;PARENTHESIZED HANGUL NIEUN A
+3210;ID;PARENTHESIZED HANGUL TIKEUT A
+3211;ID;PARENTHESIZED HANGUL RIEUL A
+3212;ID;PARENTHESIZED HANGUL MIEUM A
+3213;ID;PARENTHESIZED HANGUL PIEUP A
+3214;ID;PARENTHESIZED HANGUL SIOS A
+3215;ID;PARENTHESIZED HANGUL IEUNG A
+3216;ID;PARENTHESIZED HANGUL CIEUC A
+3217;ID;PARENTHESIZED HANGUL CHIEUCH A
+3218;ID;PARENTHESIZED HANGUL KHIEUKH A
+3219;ID;PARENTHESIZED HANGUL THIEUTH A
+321A;ID;PARENTHESIZED HANGUL PHIEUPH A
+321B;ID;PARENTHESIZED HANGUL HIEUH A
+321C;ID;PARENTHESIZED HANGUL CIEUC U
+3220;ID;PARENTHESIZED IDEOGRAPH ONE
+3221;ID;PARENTHESIZED IDEOGRAPH TWO
+3222;ID;PARENTHESIZED IDEOGRAPH THREE
+3223;ID;PARENTHESIZED IDEOGRAPH FOUR
+3224;ID;PARENTHESIZED IDEOGRAPH FIVE
+3225;ID;PARENTHESIZED IDEOGRAPH SIX
+3226;ID;PARENTHESIZED IDEOGRAPH SEVEN
+3227;ID;PARENTHESIZED IDEOGRAPH EIGHT
+3228;ID;PARENTHESIZED IDEOGRAPH NINE
+3229;ID;PARENTHESIZED IDEOGRAPH TEN
+322A;ID;PARENTHESIZED IDEOGRAPH MOON
+322B;ID;PARENTHESIZED IDEOGRAPH FIRE
+322C;ID;PARENTHESIZED IDEOGRAPH WATER
+322D;ID;PARENTHESIZED IDEOGRAPH WOOD
+322E;ID;PARENTHESIZED IDEOGRAPH METAL
+322F;ID;PARENTHESIZED IDEOGRAPH EARTH
+3230;ID;PARENTHESIZED IDEOGRAPH SUN
+3231;ID;PARENTHESIZED IDEOGRAPH STOCK
+3232;ID;PARENTHESIZED IDEOGRAPH HAVE
+3233;ID;PARENTHESIZED IDEOGRAPH SOCIETY
+3234;ID;PARENTHESIZED IDEOGRAPH NAME
+3235;ID;PARENTHESIZED IDEOGRAPH SPECIAL
+3236;ID;PARENTHESIZED IDEOGRAPH FINANCIAL
+3237;ID;PARENTHESIZED IDEOGRAPH CONGRATULATION
+3238;ID;PARENTHESIZED IDEOGRAPH LABOR
+3239;ID;PARENTHESIZED IDEOGRAPH REPRESENT
+323A;ID;PARENTHESIZED IDEOGRAPH CALL
+323B;ID;PARENTHESIZED IDEOGRAPH STUDY
+323C;ID;PARENTHESIZED IDEOGRAPH SUPERVISE
+323D;ID;PARENTHESIZED IDEOGRAPH ENTERPRISE
+323E;ID;PARENTHESIZED IDEOGRAPH RESOURCE
+323F;ID;PARENTHESIZED IDEOGRAPH ALLIANCE
+3240;ID;PARENTHESIZED IDEOGRAPH FESTIVAL
+3241;ID;PARENTHESIZED IDEOGRAPH REST
+3242;ID;PARENTHESIZED IDEOGRAPH SELF
+3243;ID;PARENTHESIZED IDEOGRAPH REACH
+3260;ID;CIRCLED HANGUL KIYEOK
+3261;ID;CIRCLED HANGUL NIEUN
+3262;ID;CIRCLED HANGUL TIKEUT
+3263;ID;CIRCLED HANGUL RIEUL
+3264;ID;CIRCLED HANGUL MIEUM
+3265;ID;CIRCLED HANGUL PIEUP
+3266;ID;CIRCLED HANGUL SIOS
+3267;ID;CIRCLED HANGUL IEUNG
+3268;ID;CIRCLED HANGUL CIEUC
+3269;ID;CIRCLED HANGUL CHIEUCH
+326A;ID;CIRCLED HANGUL KHIEUKH
+326B;ID;CIRCLED HANGUL THIEUTH
+326C;ID;CIRCLED HANGUL PHIEUPH
+326D;ID;CIRCLED HANGUL HIEUH
+326E;ID;CIRCLED HANGUL KIYEOK A
+326F;ID;CIRCLED HANGUL NIEUN A
+3270;ID;CIRCLED HANGUL TIKEUT A
+3271;ID;CIRCLED HANGUL RIEUL A
+3272;ID;CIRCLED HANGUL MIEUM A
+3273;ID;CIRCLED HANGUL PIEUP A
+3274;ID;CIRCLED HANGUL SIOS A
+3275;ID;CIRCLED HANGUL IEUNG A
+3276;ID;CIRCLED HANGUL CIEUC A
+3277;ID;CIRCLED HANGUL CHIEUCH A
+3278;ID;CIRCLED HANGUL KHIEUKH A
+3279;ID;CIRCLED HANGUL THIEUTH A
+327A;ID;CIRCLED HANGUL PHIEUPH A
+327B;ID;CIRCLED HANGUL HIEUH A
+327F;ID;KOREAN STANDARD SYMBOL
+3280;ID;CIRCLED IDEOGRAPH ONE
+3281;ID;CIRCLED IDEOGRAPH TWO
+3282;ID;CIRCLED IDEOGRAPH THREE
+3283;ID;CIRCLED IDEOGRAPH FOUR
+3284;ID;CIRCLED IDEOGRAPH FIVE
+3285;ID;CIRCLED IDEOGRAPH SIX
+3286;ID;CIRCLED IDEOGRAPH SEVEN
+3287;ID;CIRCLED IDEOGRAPH EIGHT
+3288;ID;CIRCLED IDEOGRAPH NINE
+3289;ID;CIRCLED IDEOGRAPH TEN
+328A;ID;CIRCLED IDEOGRAPH MOON
+328B;ID;CIRCLED IDEOGRAPH FIRE
+328C;ID;CIRCLED IDEOGRAPH WATER
+328D;ID;CIRCLED IDEOGRAPH WOOD
+328E;ID;CIRCLED IDEOGRAPH METAL
+328F;ID;CIRCLED IDEOGRAPH EARTH
+3290;ID;CIRCLED IDEOGRAPH SUN
+3291;ID;CIRCLED IDEOGRAPH STOCK
+3292;ID;CIRCLED IDEOGRAPH HAVE
+3293;ID;CIRCLED IDEOGRAPH SOCIETY
+3294;ID;CIRCLED IDEOGRAPH NAME
+3295;ID;CIRCLED IDEOGRAPH SPECIAL
+3296;ID;CIRCLED IDEOGRAPH FINANCIAL
+3297;ID;CIRCLED IDEOGRAPH CONGRATULATION
+3298;ID;CIRCLED IDEOGRAPH LABOR
+3299;ID;CIRCLED IDEOGRAPH SECRET
+329A;ID;CIRCLED IDEOGRAPH MALE
+329B;ID;CIRCLED IDEOGRAPH FEMALE
+329C;ID;CIRCLED IDEOGRAPH SUITABLE
+329D;ID;CIRCLED IDEOGRAPH EXCELLENT
+329E;ID;CIRCLED IDEOGRAPH PRINT
+329F;ID;CIRCLED IDEOGRAPH ATTENTION
+32A0;ID;CIRCLED IDEOGRAPH ITEM
+32A1;ID;CIRCLED IDEOGRAPH REST
+32A2;ID;CIRCLED IDEOGRAPH COPY
+32A3;ID;CIRCLED IDEOGRAPH CORRECT
+32A4;ID;CIRCLED IDEOGRAPH HIGH
+32A5;ID;CIRCLED IDEOGRAPH CENTRE
+32A6;ID;CIRCLED IDEOGRAPH LOW
+32A7;ID;CIRCLED IDEOGRAPH LEFT
+32A8;ID;CIRCLED IDEOGRAPH RIGHT
+32A9;ID;CIRCLED IDEOGRAPH MEDICINE
+32AA;ID;CIRCLED IDEOGRAPH RELIGION
+32AB;ID;CIRCLED IDEOGRAPH STUDY
+32AC;ID;CIRCLED IDEOGRAPH SUPERVISE
+32AD;ID;CIRCLED IDEOGRAPH ENTERPRISE
+32AE;ID;CIRCLED IDEOGRAPH RESOURCE
+32AF;ID;CIRCLED IDEOGRAPH ALLIANCE
+32B0;ID;CIRCLED IDEOGRAPH NIGHT
+32C0;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY
+32C1;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR FEBRUARY
+32C2;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR MARCH
+32C3;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR APRIL
+32C4;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR MAY
+32C5;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JUNE
+32C6;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JULY
+32C7;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR AUGUST
+32C8;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR SEPTEMBER
+32C9;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR OCTOBER
+32CA;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR NOVEMBER
+32CB;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER
+32D0;ID;CIRCLED KATAKANA A
+32D1;ID;CIRCLED KATAKANA I
+32D2;ID;CIRCLED KATAKANA U
+32D3;ID;CIRCLED KATAKANA E
+32D4;ID;CIRCLED KATAKANA O
+32D5;ID;CIRCLED KATAKANA KA
+32D6;ID;CIRCLED KATAKANA KI
+32D7;ID;CIRCLED KATAKANA KU
+32D8;ID;CIRCLED KATAKANA KE
+32D9;ID;CIRCLED KATAKANA KO
+32DA;ID;CIRCLED KATAKANA SA
+32DB;ID;CIRCLED KATAKANA SI
+32DC;ID;CIRCLED KATAKANA SU
+32DD;ID;CIRCLED KATAKANA SE
+32DE;ID;CIRCLED KATAKANA SO
+32DF;ID;CIRCLED KATAKANA TA
+32E0;ID;CIRCLED KATAKANA TI
+32E1;ID;CIRCLED KATAKANA TU
+32E2;ID;CIRCLED KATAKANA TE
+32E3;ID;CIRCLED KATAKANA TO
+32E4;ID;CIRCLED KATAKANA NA
+32E5;ID;CIRCLED KATAKANA NI
+32E6;ID;CIRCLED KATAKANA NU
+32E7;ID;CIRCLED KATAKANA NE
+32E8;ID;CIRCLED KATAKANA NO
+32E9;ID;CIRCLED KATAKANA HA
+32EA;ID;CIRCLED KATAKANA HI
+32EB;ID;CIRCLED KATAKANA HU
+32EC;ID;CIRCLED KATAKANA HE
+32ED;ID;CIRCLED KATAKANA HO
+32EE;ID;CIRCLED KATAKANA MA
+32EF;ID;CIRCLED KATAKANA MI
+32F0;ID;CIRCLED KATAKANA MU
+32F1;ID;CIRCLED KATAKANA ME
+32F2;ID;CIRCLED KATAKANA MO
+32F3;ID;CIRCLED KATAKANA YA
+32F4;ID;CIRCLED KATAKANA YU
+32F5;ID;CIRCLED KATAKANA YO
+32F6;ID;CIRCLED KATAKANA RA
+32F7;ID;CIRCLED KATAKANA RI
+32F8;ID;CIRCLED KATAKANA RU
+32F9;ID;CIRCLED KATAKANA RE
+32FA;ID;CIRCLED KATAKANA RO
+32FB;ID;CIRCLED KATAKANA WA
+32FC;ID;CIRCLED KATAKANA WI
+32FD;ID;CIRCLED KATAKANA WE
+32FE;ID;CIRCLED KATAKANA WO
+3300;ID;SQUARE APAATO
+3301;ID;SQUARE ARUHUA
+3302;ID;SQUARE ANPEA
+3303;ID;SQUARE AARU
+3304;ID;SQUARE ININGU
+3305;ID;SQUARE INTI
+3306;ID;SQUARE UON
+3307;ID;SQUARE ESUKUUDO
+3308;ID;SQUARE EEKAA
+3309;ID;SQUARE ONSU
+330A;ID;SQUARE OOMU
+330B;ID;SQUARE KAIRI
+330C;ID;SQUARE KARATTO
+330D;ID;SQUARE KARORII
+330E;ID;SQUARE GARON
+330F;ID;SQUARE GANMA
+3310;ID;SQUARE GIGA
+3311;ID;SQUARE GINII
+3312;ID;SQUARE KYURII
+3313;ID;SQUARE GIRUDAA
+3314;ID;SQUARE KIRO
+3315;ID;SQUARE KIROGURAMU
+3316;ID;SQUARE KIROMEETORU
+3317;ID;SQUARE KIROWATTO
+3318;ID;SQUARE GURAMU
+3319;ID;SQUARE GURAMUTON
+331A;ID;SQUARE KURUZEIRO
+331B;ID;SQUARE KUROONE
+331C;ID;SQUARE KEESU
+331D;ID;SQUARE KORUNA
+331E;ID;SQUARE KOOPO
+331F;ID;SQUARE SAIKURU
+3320;ID;SQUARE SANTIIMU
+3321;ID;SQUARE SIRINGU
+3322;ID;SQUARE SENTI
+3323;ID;SQUARE SENTO
+3324;ID;SQUARE DAASU
+3325;ID;SQUARE DESI
+3326;ID;SQUARE DORU
+3327;ID;SQUARE TON
+3328;ID;SQUARE NANO
+3329;ID;SQUARE NOTTO
+332A;ID;SQUARE HAITU
+332B;ID;SQUARE PAASENTO
+332C;ID;SQUARE PAATU
+332D;ID;SQUARE BAARERU
+332E;ID;SQUARE PIASUTORU
+332F;ID;SQUARE PIKURU
+3330;ID;SQUARE PIKO
+3331;ID;SQUARE BIRU
+3332;ID;SQUARE HUARADDO
+3333;ID;SQUARE HUIITO
+3334;ID;SQUARE BUSSYERU
+3335;ID;SQUARE HURAN
+3336;ID;SQUARE HEKUTAARU
+3337;ID;SQUARE PESO
+3338;ID;SQUARE PENIHI
+3339;ID;SQUARE HERUTU
+333A;ID;SQUARE PENSU
+333B;ID;SQUARE PEEZI
+333C;ID;SQUARE BEETA
+333D;ID;SQUARE POINTO
+333E;ID;SQUARE BORUTO
+333F;ID;SQUARE HON
+3340;ID;SQUARE PONDO
+3341;ID;SQUARE HOORU
+3342;ID;SQUARE HOON
+3343;ID;SQUARE MAIKURO
+3344;ID;SQUARE MAIRU
+3345;ID;SQUARE MAHHA
+3346;ID;SQUARE MARUKU
+3347;ID;SQUARE MANSYON
+3348;ID;SQUARE MIKURON
+3349;ID;SQUARE MIRI
+334A;ID;SQUARE MIRIBAARU
+334B;ID;SQUARE MEGA
+334C;ID;SQUARE MEGATON
+334D;ID;SQUARE MEETORU
+334E;ID;SQUARE YAADO
+334F;ID;SQUARE YAARU
+3350;ID;SQUARE YUAN
+3351;ID;SQUARE RITTORU
+3352;ID;SQUARE RIRA
+3353;ID;SQUARE RUPII
+3354;ID;SQUARE RUUBURU
+3355;ID;SQUARE REMU
+3356;ID;SQUARE RENTOGEN
+3357;ID;SQUARE WATTO
+3358;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO
+3359;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ONE
+335A;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWO
+335B;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THREE
+335C;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOUR
+335D;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIVE
+335E;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIX
+335F;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVEN
+3360;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHT
+3361;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINE
+3362;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TEN
+3363;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ELEVEN
+3364;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWELVE
+3365;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THIRTEEN
+3366;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOURTEEN
+3367;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIFTEEN
+3368;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIXTEEN
+3369;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVENTEEN
+336A;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHTEEN
+336B;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINETEEN
+336C;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY
+336D;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-ONE
+336E;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-TWO
+336F;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-THREE
+3370;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR
+3371;ID;SQUARE HPA
+3372;ID;SQUARE DA
+3373;ID;SQUARE AU
+3374;ID;SQUARE BAR
+3375;ID;SQUARE OV
+3376;ID;SQUARE PC
+337B;ID;SQUARE ERA NAME HEISEI
+337C;ID;SQUARE ERA NAME SYOUWA
+337D;ID;SQUARE ERA NAME TAISYOU
+337E;ID;SQUARE ERA NAME MEIZI
+337F;ID;SQUARE CORPORATION
+3380;ID;SQUARE PA AMPS
+3381;ID;SQUARE NA
+3382;ID;SQUARE MU A
+3383;ID;SQUARE MA
+3384;ID;SQUARE KA
+3385;ID;SQUARE KB
+3386;ID;SQUARE MB
+3387;ID;SQUARE GB
+3388;ID;SQUARE CAL
+3389;ID;SQUARE KCAL
+338A;ID;SQUARE PF
+338B;ID;SQUARE NF
+338C;ID;SQUARE MU F
+338D;ID;SQUARE MU G
+338E;ID;SQUARE MG
+338F;ID;SQUARE KG
+3390;ID;SQUARE HZ
+3391;ID;SQUARE KHZ
+3392;ID;SQUARE MHZ
+3393;ID;SQUARE GHZ
+3394;ID;SQUARE THZ
+3395;ID;SQUARE MU L
+3396;ID;SQUARE ML
+3397;ID;SQUARE DL
+3398;ID;SQUARE KL
+3399;ID;SQUARE FM
+339A;ID;SQUARE NM
+339B;ID;SQUARE MU M
+339C;ID;SQUARE MM
+339D;ID;SQUARE CM
+339E;ID;SQUARE KM
+339F;ID;SQUARE MM SQUARED
+33A0;ID;SQUARE CM SQUARED
+33A1;ID;SQUARE M SQUARED
+33A2;ID;SQUARE KM SQUARED
+33A3;ID;SQUARE MM CUBED
+33A4;ID;SQUARE CM CUBED
+33A5;ID;SQUARE M CUBED
+33A6;ID;SQUARE KM CUBED
+33A7;ID;SQUARE M OVER S
+33A8;ID;SQUARE M OVER S SQUARED
+33A9;ID;SQUARE PA
+33AA;ID;SQUARE KPA
+33AB;ID;SQUARE MPA
+33AC;ID;SQUARE GPA
+33AD;ID;SQUARE RAD
+33AE;ID;SQUARE RAD OVER S
+33AF;ID;SQUARE RAD OVER S SQUARED
+33B0;ID;SQUARE PS
+33B1;ID;SQUARE NS
+33B2;ID;SQUARE MU S
+33B3;ID;SQUARE MS
+33B4;ID;SQUARE PV
+33B5;ID;SQUARE NV
+33B6;ID;SQUARE MU V
+33B7;ID;SQUARE MV
+33B8;ID;SQUARE KV
+33B9;ID;SQUARE MV MEGA
+33BA;ID;SQUARE PW
+33BB;ID;SQUARE NW
+33BC;ID;SQUARE MU W
+33BD;ID;SQUARE MW
+33BE;ID;SQUARE KW
+33BF;ID;SQUARE MW MEGA
+33C0;ID;SQUARE K OHM
+33C1;ID;SQUARE M OHM
+33C2;ID;SQUARE AM
+33C3;ID;SQUARE BQ
+33C4;ID;SQUARE CC
+33C5;ID;SQUARE CD
+33C6;ID;SQUARE C OVER KG
+33C7;ID;SQUARE CO
+33C8;ID;SQUARE DB
+33C9;ID;SQUARE GY
+33CA;ID;SQUARE HA
+33CB;ID;SQUARE HP
+33CC;ID;SQUARE IN
+33CD;ID;SQUARE KK
+33CE;ID;SQUARE KM CAPITAL
+33CF;ID;SQUARE KT
+33D0;ID;SQUARE LM
+33D1;ID;SQUARE LN
+33D2;ID;SQUARE LOG
+33D3;ID;SQUARE LX
+33D4;ID;SQUARE MB SMALL
+33D5;ID;SQUARE MIL
+33D6;ID;SQUARE MOL
+33D7;ID;SQUARE PH
+33D8;ID;SQUARE PM
+33D9;ID;SQUARE PPM
+33DA;ID;SQUARE PR
+33DB;ID;SQUARE SR
+33DC;ID;SQUARE SV
+33DD;ID;SQUARE WB
+33E0;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE
+33E1;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWO
+33E2;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THREE
+33E3;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOUR
+33E4;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIVE
+33E5;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIX
+33E6;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVEN
+33E7;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHT
+33E8;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINE
+33E9;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TEN
+33EA;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ELEVEN
+33EB;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWELVE
+33EC;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTEEN
+33ED;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOURTEEN
+33EE;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIFTEEN
+33EF;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIXTEEN
+33F0;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVENTEEN
+33F1;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHTEEN
+33F2;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINETEEN
+33F3;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY
+33F4;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-ONE
+33F5;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-TWO
+33F6;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-THREE
+33F7;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FOUR
+33F8;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FIVE
+33F9;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SIX
+33FA;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SEVEN
+33FB;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-EIGHT
+33FC;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-NINE
+33FD;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY
+33FE;ID;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE
+3400;ID;<CJK Ideograph Extension A, First>
+4DB5;ID;<CJK Ideograph Extension A, Last>
+4E00;ID;<CJK Ideograph, First>
+9FA5;ID;<CJK Ideograph, Last>
+A000;ID;YI SYLLABLE IT
+A001;ID;YI SYLLABLE IX
+A002;ID;YI SYLLABLE I
+A003;ID;YI SYLLABLE IP
+A004;ID;YI SYLLABLE IET
+A005;ID;YI SYLLABLE IEX
+A006;ID;YI SYLLABLE IE
+A007;ID;YI SYLLABLE IEP
+A008;ID;YI SYLLABLE AT
+A009;ID;YI SYLLABLE AX
+A00A;ID;YI SYLLABLE A
+A00B;ID;YI SYLLABLE AP
+A00C;ID;YI SYLLABLE UOX
+A00D;ID;YI SYLLABLE UO
+A00E;ID;YI SYLLABLE UOP
+A00F;ID;YI SYLLABLE OT
+A010;ID;YI SYLLABLE OX
+A011;ID;YI SYLLABLE O
+A012;ID;YI SYLLABLE OP
+A013;ID;YI SYLLABLE EX
+A014;ID;YI SYLLABLE E
+A015;ID;YI SYLLABLE WU
+A016;ID;YI SYLLABLE BIT
+A017;ID;YI SYLLABLE BIX
+A018;ID;YI SYLLABLE BI
+A019;ID;YI SYLLABLE BIP
+A01A;ID;YI SYLLABLE BIET
+A01B;ID;YI SYLLABLE BIEX
+A01C;ID;YI SYLLABLE BIE
+A01D;ID;YI SYLLABLE BIEP
+A01E;ID;YI SYLLABLE BAT
+A01F;ID;YI SYLLABLE BAX
+A020;ID;YI SYLLABLE BA
+A021;ID;YI SYLLABLE BAP
+A022;ID;YI SYLLABLE BUOX
+A023;ID;YI SYLLABLE BUO
+A024;ID;YI SYLLABLE BUOP
+A025;ID;YI SYLLABLE BOT
+A026;ID;YI SYLLABLE BOX
+A027;ID;YI SYLLABLE BO
+A028;ID;YI SYLLABLE BOP
+A029;ID;YI SYLLABLE BEX
+A02A;ID;YI SYLLABLE BE
+A02B;ID;YI SYLLABLE BEP
+A02C;ID;YI SYLLABLE BUT
+A02D;ID;YI SYLLABLE BUX
+A02E;ID;YI SYLLABLE BU
+A02F;ID;YI SYLLABLE BUP
+A030;ID;YI SYLLABLE BURX
+A031;ID;YI SYLLABLE BUR
+A032;ID;YI SYLLABLE BYT
+A033;ID;YI SYLLABLE BYX
+A034;ID;YI SYLLABLE BY
+A035;ID;YI SYLLABLE BYP
+A036;ID;YI SYLLABLE BYRX
+A037;ID;YI SYLLABLE BYR
+A038;ID;YI SYLLABLE PIT
+A039;ID;YI SYLLABLE PIX
+A03A;ID;YI SYLLABLE PI
+A03B;ID;YI SYLLABLE PIP
+A03C;ID;YI SYLLABLE PIEX
+A03D;ID;YI SYLLABLE PIE
+A03E;ID;YI SYLLABLE PIEP
+A03F;ID;YI SYLLABLE PAT
+A040;ID;YI SYLLABLE PAX
+A041;ID;YI SYLLABLE PA
+A042;ID;YI SYLLABLE PAP
+A043;ID;YI SYLLABLE PUOX
+A044;ID;YI SYLLABLE PUO
+A045;ID;YI SYLLABLE PUOP
+A046;ID;YI SYLLABLE POT
+A047;ID;YI SYLLABLE POX
+A048;ID;YI SYLLABLE PO
+A049;ID;YI SYLLABLE POP
+A04A;ID;YI SYLLABLE PUT
+A04B;ID;YI SYLLABLE PUX
+A04C;ID;YI SYLLABLE PU
+A04D;ID;YI SYLLABLE PUP
+A04E;ID;YI SYLLABLE PURX
+A04F;ID;YI SYLLABLE PUR
+A050;ID;YI SYLLABLE PYT
+A051;ID;YI SYLLABLE PYX
+A052;ID;YI SYLLABLE PY
+A053;ID;YI SYLLABLE PYP
+A054;ID;YI SYLLABLE PYRX
+A055;ID;YI SYLLABLE PYR
+A056;ID;YI SYLLABLE BBIT
+A057;ID;YI SYLLABLE BBIX
+A058;ID;YI SYLLABLE BBI
+A059;ID;YI SYLLABLE BBIP
+A05A;ID;YI SYLLABLE BBIET
+A05B;ID;YI SYLLABLE BBIEX
+A05C;ID;YI SYLLABLE BBIE
+A05D;ID;YI SYLLABLE BBIEP
+A05E;ID;YI SYLLABLE BBAT
+A05F;ID;YI SYLLABLE BBAX
+A060;ID;YI SYLLABLE BBA
+A061;ID;YI SYLLABLE BBAP
+A062;ID;YI SYLLABLE BBUOX
+A063;ID;YI SYLLABLE BBUO
+A064;ID;YI SYLLABLE BBUOP
+A065;ID;YI SYLLABLE BBOT
+A066;ID;YI SYLLABLE BBOX
+A067;ID;YI SYLLABLE BBO
+A068;ID;YI SYLLABLE BBOP
+A069;ID;YI SYLLABLE BBEX
+A06A;ID;YI SYLLABLE BBE
+A06B;ID;YI SYLLABLE BBEP
+A06C;ID;YI SYLLABLE BBUT
+A06D;ID;YI SYLLABLE BBUX
+A06E;ID;YI SYLLABLE BBU
+A06F;ID;YI SYLLABLE BBUP
+A070;ID;YI SYLLABLE BBURX
+A071;ID;YI SYLLABLE BBUR
+A072;ID;YI SYLLABLE BBYT
+A073;ID;YI SYLLABLE BBYX
+A074;ID;YI SYLLABLE BBY
+A075;ID;YI SYLLABLE BBYP
+A076;ID;YI SYLLABLE NBIT
+A077;ID;YI SYLLABLE NBIX
+A078;ID;YI SYLLABLE NBI
+A079;ID;YI SYLLABLE NBIP
+A07A;ID;YI SYLLABLE NBIEX
+A07B;ID;YI SYLLABLE NBIE
+A07C;ID;YI SYLLABLE NBIEP
+A07D;ID;YI SYLLABLE NBAT
+A07E;ID;YI SYLLABLE NBAX
+A07F;ID;YI SYLLABLE NBA
+A080;ID;YI SYLLABLE NBAP
+A081;ID;YI SYLLABLE NBOT
+A082;ID;YI SYLLABLE NBOX
+A083;ID;YI SYLLABLE NBO
+A084;ID;YI SYLLABLE NBOP
+A085;ID;YI SYLLABLE NBUT
+A086;ID;YI SYLLABLE NBUX
+A087;ID;YI SYLLABLE NBU
+A088;ID;YI SYLLABLE NBUP
+A089;ID;YI SYLLABLE NBURX
+A08A;ID;YI SYLLABLE NBUR
+A08B;ID;YI SYLLABLE NBYT
+A08C;ID;YI SYLLABLE NBYX
+A08D;ID;YI SYLLABLE NBY
+A08E;ID;YI SYLLABLE NBYP
+A08F;ID;YI SYLLABLE NBYRX
+A090;ID;YI SYLLABLE NBYR
+A091;ID;YI SYLLABLE HMIT
+A092;ID;YI SYLLABLE HMIX
+A093;ID;YI SYLLABLE HMI
+A094;ID;YI SYLLABLE HMIP
+A095;ID;YI SYLLABLE HMIEX
+A096;ID;YI SYLLABLE HMIE
+A097;ID;YI SYLLABLE HMIEP
+A098;ID;YI SYLLABLE HMAT
+A099;ID;YI SYLLABLE HMAX
+A09A;ID;YI SYLLABLE HMA
+A09B;ID;YI SYLLABLE HMAP
+A09C;ID;YI SYLLABLE HMUOX
+A09D;ID;YI SYLLABLE HMUO
+A09E;ID;YI SYLLABLE HMUOP
+A09F;ID;YI SYLLABLE HMOT
+A0A0;ID;YI SYLLABLE HMOX
+A0A1;ID;YI SYLLABLE HMO
+A0A2;ID;YI SYLLABLE HMOP
+A0A3;ID;YI SYLLABLE HMUT
+A0A4;ID;YI SYLLABLE HMUX
+A0A5;ID;YI SYLLABLE HMU
+A0A6;ID;YI SYLLABLE HMUP
+A0A7;ID;YI SYLLABLE HMURX
+A0A8;ID;YI SYLLABLE HMUR
+A0A9;ID;YI SYLLABLE HMYX
+A0AA;ID;YI SYLLABLE HMY
+A0AB;ID;YI SYLLABLE HMYP
+A0AC;ID;YI SYLLABLE HMYRX
+A0AD;ID;YI SYLLABLE HMYR
+A0AE;ID;YI SYLLABLE MIT
+A0AF;ID;YI SYLLABLE MIX
+A0B0;ID;YI SYLLABLE MI
+A0B1;ID;YI SYLLABLE MIP
+A0B2;ID;YI SYLLABLE MIEX
+A0B3;ID;YI SYLLABLE MIE
+A0B4;ID;YI SYLLABLE MIEP
+A0B5;ID;YI SYLLABLE MAT
+A0B6;ID;YI SYLLABLE MAX
+A0B7;ID;YI SYLLABLE MA
+A0B8;ID;YI SYLLABLE MAP
+A0B9;ID;YI SYLLABLE MUOT
+A0BA;ID;YI SYLLABLE MUOX
+A0BB;ID;YI SYLLABLE MUO
+A0BC;ID;YI SYLLABLE MUOP
+A0BD;ID;YI SYLLABLE MOT
+A0BE;ID;YI SYLLABLE MOX
+A0BF;ID;YI SYLLABLE MO
+A0C0;ID;YI SYLLABLE MOP
+A0C1;ID;YI SYLLABLE MEX
+A0C2;ID;YI SYLLABLE ME
+A0C3;ID;YI SYLLABLE MUT
+A0C4;ID;YI SYLLABLE MUX
+A0C5;ID;YI SYLLABLE MU
+A0C6;ID;YI SYLLABLE MUP
+A0C7;ID;YI SYLLABLE MURX
+A0C8;ID;YI SYLLABLE MUR
+A0C9;ID;YI SYLLABLE MYT
+A0CA;ID;YI SYLLABLE MYX
+A0CB;ID;YI SYLLABLE MY
+A0CC;ID;YI SYLLABLE MYP
+A0CD;ID;YI SYLLABLE FIT
+A0CE;ID;YI SYLLABLE FIX
+A0CF;ID;YI SYLLABLE FI
+A0D0;ID;YI SYLLABLE FIP
+A0D1;ID;YI SYLLABLE FAT
+A0D2;ID;YI SYLLABLE FAX
+A0D3;ID;YI SYLLABLE FA
+A0D4;ID;YI SYLLABLE FAP
+A0D5;ID;YI SYLLABLE FOX
+A0D6;ID;YI SYLLABLE FO
+A0D7;ID;YI SYLLABLE FOP
+A0D8;ID;YI SYLLABLE FUT
+A0D9;ID;YI SYLLABLE FUX
+A0DA;ID;YI SYLLABLE FU
+A0DB;ID;YI SYLLABLE FUP
+A0DC;ID;YI SYLLABLE FURX
+A0DD;ID;YI SYLLABLE FUR
+A0DE;ID;YI SYLLABLE FYT
+A0DF;ID;YI SYLLABLE FYX
+A0E0;ID;YI SYLLABLE FY
+A0E1;ID;YI SYLLABLE FYP
+A0E2;ID;YI SYLLABLE VIT
+A0E3;ID;YI SYLLABLE VIX
+A0E4;ID;YI SYLLABLE VI
+A0E5;ID;YI SYLLABLE VIP
+A0E6;ID;YI SYLLABLE VIET
+A0E7;ID;YI SYLLABLE VIEX
+A0E8;ID;YI SYLLABLE VIE
+A0E9;ID;YI SYLLABLE VIEP
+A0EA;ID;YI SYLLABLE VAT
+A0EB;ID;YI SYLLABLE VAX
+A0EC;ID;YI SYLLABLE VA
+A0ED;ID;YI SYLLABLE VAP
+A0EE;ID;YI SYLLABLE VOT
+A0EF;ID;YI SYLLABLE VOX
+A0F0;ID;YI SYLLABLE VO
+A0F1;ID;YI SYLLABLE VOP
+A0F2;ID;YI SYLLABLE VEX
+A0F3;ID;YI SYLLABLE VEP
+A0F4;ID;YI SYLLABLE VUT
+A0F5;ID;YI SYLLABLE VUX
+A0F6;ID;YI SYLLABLE VU
+A0F7;ID;YI SYLLABLE VUP
+A0F8;ID;YI SYLLABLE VURX
+A0F9;ID;YI SYLLABLE VUR
+A0FA;ID;YI SYLLABLE VYT
+A0FB;ID;YI SYLLABLE VYX
+A0FC;ID;YI SYLLABLE VY
+A0FD;ID;YI SYLLABLE VYP
+A0FE;ID;YI SYLLABLE VYRX
+A0FF;ID;YI SYLLABLE VYR
+A100;ID;YI SYLLABLE DIT
+A101;ID;YI SYLLABLE DIX
+A102;ID;YI SYLLABLE DI
+A103;ID;YI SYLLABLE DIP
+A104;ID;YI SYLLABLE DIEX
+A105;ID;YI SYLLABLE DIE
+A106;ID;YI SYLLABLE DIEP
+A107;ID;YI SYLLABLE DAT
+A108;ID;YI SYLLABLE DAX
+A109;ID;YI SYLLABLE DA
+A10A;ID;YI SYLLABLE DAP
+A10B;ID;YI SYLLABLE DUOX
+A10C;ID;YI SYLLABLE DUO
+A10D;ID;YI SYLLABLE DOT
+A10E;ID;YI SYLLABLE DOX
+A10F;ID;YI SYLLABLE DO
+A110;ID;YI SYLLABLE DOP
+A111;ID;YI SYLLABLE DEX
+A112;ID;YI SYLLABLE DE
+A113;ID;YI SYLLABLE DEP
+A114;ID;YI SYLLABLE DUT
+A115;ID;YI SYLLABLE DUX
+A116;ID;YI SYLLABLE DU
+A117;ID;YI SYLLABLE DUP
+A118;ID;YI SYLLABLE DURX
+A119;ID;YI SYLLABLE DUR
+A11A;ID;YI SYLLABLE TIT
+A11B;ID;YI SYLLABLE TIX
+A11C;ID;YI SYLLABLE TI
+A11D;ID;YI SYLLABLE TIP
+A11E;ID;YI SYLLABLE TIEX
+A11F;ID;YI SYLLABLE TIE
+A120;ID;YI SYLLABLE TIEP
+A121;ID;YI SYLLABLE TAT
+A122;ID;YI SYLLABLE TAX
+A123;ID;YI SYLLABLE TA
+A124;ID;YI SYLLABLE TAP
+A125;ID;YI SYLLABLE TUOT
+A126;ID;YI SYLLABLE TUOX
+A127;ID;YI SYLLABLE TUO
+A128;ID;YI SYLLABLE TUOP
+A129;ID;YI SYLLABLE TOT
+A12A;ID;YI SYLLABLE TOX
+A12B;ID;YI SYLLABLE TO
+A12C;ID;YI SYLLABLE TOP
+A12D;ID;YI SYLLABLE TEX
+A12E;ID;YI SYLLABLE TE
+A12F;ID;YI SYLLABLE TEP
+A130;ID;YI SYLLABLE TUT
+A131;ID;YI SYLLABLE TUX
+A132;ID;YI SYLLABLE TU
+A133;ID;YI SYLLABLE TUP
+A134;ID;YI SYLLABLE TURX
+A135;ID;YI SYLLABLE TUR
+A136;ID;YI SYLLABLE DDIT
+A137;ID;YI SYLLABLE DDIX
+A138;ID;YI SYLLABLE DDI
+A139;ID;YI SYLLABLE DDIP
+A13A;ID;YI SYLLABLE DDIEX
+A13B;ID;YI SYLLABLE DDIE
+A13C;ID;YI SYLLABLE DDIEP
+A13D;ID;YI SYLLABLE DDAT
+A13E;ID;YI SYLLABLE DDAX
+A13F;ID;YI SYLLABLE DDA
+A140;ID;YI SYLLABLE DDAP
+A141;ID;YI SYLLABLE DDUOX
+A142;ID;YI SYLLABLE DDUO
+A143;ID;YI SYLLABLE DDUOP
+A144;ID;YI SYLLABLE DDOT
+A145;ID;YI SYLLABLE DDOX
+A146;ID;YI SYLLABLE DDO
+A147;ID;YI SYLLABLE DDOP
+A148;ID;YI SYLLABLE DDEX
+A149;ID;YI SYLLABLE DDE
+A14A;ID;YI SYLLABLE DDEP
+A14B;ID;YI SYLLABLE DDUT
+A14C;ID;YI SYLLABLE DDUX
+A14D;ID;YI SYLLABLE DDU
+A14E;ID;YI SYLLABLE DDUP
+A14F;ID;YI SYLLABLE DDURX
+A150;ID;YI SYLLABLE DDUR
+A151;ID;YI SYLLABLE NDIT
+A152;ID;YI SYLLABLE NDIX
+A153;ID;YI SYLLABLE NDI
+A154;ID;YI SYLLABLE NDIP
+A155;ID;YI SYLLABLE NDIEX
+A156;ID;YI SYLLABLE NDIE
+A157;ID;YI SYLLABLE NDAT
+A158;ID;YI SYLLABLE NDAX
+A159;ID;YI SYLLABLE NDA
+A15A;ID;YI SYLLABLE NDAP
+A15B;ID;YI SYLLABLE NDOT
+A15C;ID;YI SYLLABLE NDOX
+A15D;ID;YI SYLLABLE NDO
+A15E;ID;YI SYLLABLE NDOP
+A15F;ID;YI SYLLABLE NDEX
+A160;ID;YI SYLLABLE NDE
+A161;ID;YI SYLLABLE NDEP
+A162;ID;YI SYLLABLE NDUT
+A163;ID;YI SYLLABLE NDUX
+A164;ID;YI SYLLABLE NDU
+A165;ID;YI SYLLABLE NDUP
+A166;ID;YI SYLLABLE NDURX
+A167;ID;YI SYLLABLE NDUR
+A168;ID;YI SYLLABLE HNIT
+A169;ID;YI SYLLABLE HNIX
+A16A;ID;YI SYLLABLE HNI
+A16B;ID;YI SYLLABLE HNIP
+A16C;ID;YI SYLLABLE HNIET
+A16D;ID;YI SYLLABLE HNIEX
+A16E;ID;YI SYLLABLE HNIE
+A16F;ID;YI SYLLABLE HNIEP
+A170;ID;YI SYLLABLE HNAT
+A171;ID;YI SYLLABLE HNAX
+A172;ID;YI SYLLABLE HNA
+A173;ID;YI SYLLABLE HNAP
+A174;ID;YI SYLLABLE HNUOX
+A175;ID;YI SYLLABLE HNUO
+A176;ID;YI SYLLABLE HNOT
+A177;ID;YI SYLLABLE HNOX
+A178;ID;YI SYLLABLE HNOP
+A179;ID;YI SYLLABLE HNEX
+A17A;ID;YI SYLLABLE HNE
+A17B;ID;YI SYLLABLE HNEP
+A17C;ID;YI SYLLABLE HNUT
+A17D;ID;YI SYLLABLE NIT
+A17E;ID;YI SYLLABLE NIX
+A17F;ID;YI SYLLABLE NI
+A180;ID;YI SYLLABLE NIP
+A181;ID;YI SYLLABLE NIEX
+A182;ID;YI SYLLABLE NIE
+A183;ID;YI SYLLABLE NIEP
+A184;ID;YI SYLLABLE NAX
+A185;ID;YI SYLLABLE NA
+A186;ID;YI SYLLABLE NAP
+A187;ID;YI SYLLABLE NUOX
+A188;ID;YI SYLLABLE NUO
+A189;ID;YI SYLLABLE NUOP
+A18A;ID;YI SYLLABLE NOT
+A18B;ID;YI SYLLABLE NOX
+A18C;ID;YI SYLLABLE NO
+A18D;ID;YI SYLLABLE NOP
+A18E;ID;YI SYLLABLE NEX
+A18F;ID;YI SYLLABLE NE
+A190;ID;YI SYLLABLE NEP
+A191;ID;YI SYLLABLE NUT
+A192;ID;YI SYLLABLE NUX
+A193;ID;YI SYLLABLE NU
+A194;ID;YI SYLLABLE NUP
+A195;ID;YI SYLLABLE NURX
+A196;ID;YI SYLLABLE NUR
+A197;ID;YI SYLLABLE HLIT
+A198;ID;YI SYLLABLE HLIX
+A199;ID;YI SYLLABLE HLI
+A19A;ID;YI SYLLABLE HLIP
+A19B;ID;YI SYLLABLE HLIEX
+A19C;ID;YI SYLLABLE HLIE
+A19D;ID;YI SYLLABLE HLIEP
+A19E;ID;YI SYLLABLE HLAT
+A19F;ID;YI SYLLABLE HLAX
+A1A0;ID;YI SYLLABLE HLA
+A1A1;ID;YI SYLLABLE HLAP
+A1A2;ID;YI SYLLABLE HLUOX
+A1A3;ID;YI SYLLABLE HLUO
+A1A4;ID;YI SYLLABLE HLUOP
+A1A5;ID;YI SYLLABLE HLOX
+A1A6;ID;YI SYLLABLE HLO
+A1A7;ID;YI SYLLABLE HLOP
+A1A8;ID;YI SYLLABLE HLEX
+A1A9;ID;YI SYLLABLE HLE
+A1AA;ID;YI SYLLABLE HLEP
+A1AB;ID;YI SYLLABLE HLUT
+A1AC;ID;YI SYLLABLE HLUX
+A1AD;ID;YI SYLLABLE HLU
+A1AE;ID;YI SYLLABLE HLUP
+A1AF;ID;YI SYLLABLE HLURX
+A1B0;ID;YI SYLLABLE HLUR
+A1B1;ID;YI SYLLABLE HLYT
+A1B2;ID;YI SYLLABLE HLYX
+A1B3;ID;YI SYLLABLE HLY
+A1B4;ID;YI SYLLABLE HLYP
+A1B5;ID;YI SYLLABLE HLYRX
+A1B6;ID;YI SYLLABLE HLYR
+A1B7;ID;YI SYLLABLE LIT
+A1B8;ID;YI SYLLABLE LIX
+A1B9;ID;YI SYLLABLE LI
+A1BA;ID;YI SYLLABLE LIP
+A1BB;ID;YI SYLLABLE LIET
+A1BC;ID;YI SYLLABLE LIEX
+A1BD;ID;YI SYLLABLE LIE
+A1BE;ID;YI SYLLABLE LIEP
+A1BF;ID;YI SYLLABLE LAT
+A1C0;ID;YI SYLLABLE LAX
+A1C1;ID;YI SYLLABLE LA
+A1C2;ID;YI SYLLABLE LAP
+A1C3;ID;YI SYLLABLE LUOT
+A1C4;ID;YI SYLLABLE LUOX
+A1C5;ID;YI SYLLABLE LUO
+A1C6;ID;YI SYLLABLE LUOP
+A1C7;ID;YI SYLLABLE LOT
+A1C8;ID;YI SYLLABLE LOX
+A1C9;ID;YI SYLLABLE LO
+A1CA;ID;YI SYLLABLE LOP
+A1CB;ID;YI SYLLABLE LEX
+A1CC;ID;YI SYLLABLE LE
+A1CD;ID;YI SYLLABLE LEP
+A1CE;ID;YI SYLLABLE LUT
+A1CF;ID;YI SYLLABLE LUX
+A1D0;ID;YI SYLLABLE LU
+A1D1;ID;YI SYLLABLE LUP
+A1D2;ID;YI SYLLABLE LURX
+A1D3;ID;YI SYLLABLE LUR
+A1D4;ID;YI SYLLABLE LYT
+A1D5;ID;YI SYLLABLE LYX
+A1D6;ID;YI SYLLABLE LY
+A1D7;ID;YI SYLLABLE LYP
+A1D8;ID;YI SYLLABLE LYRX
+A1D9;ID;YI SYLLABLE LYR
+A1DA;ID;YI SYLLABLE GIT
+A1DB;ID;YI SYLLABLE GIX
+A1DC;ID;YI SYLLABLE GI
+A1DD;ID;YI SYLLABLE GIP
+A1DE;ID;YI SYLLABLE GIET
+A1DF;ID;YI SYLLABLE GIEX
+A1E0;ID;YI SYLLABLE GIE
+A1E1;ID;YI SYLLABLE GIEP
+A1E2;ID;YI SYLLABLE GAT
+A1E3;ID;YI SYLLABLE GAX
+A1E4;ID;YI SYLLABLE GA
+A1E5;ID;YI SYLLABLE GAP
+A1E6;ID;YI SYLLABLE GUOT
+A1E7;ID;YI SYLLABLE GUOX
+A1E8;ID;YI SYLLABLE GUO
+A1E9;ID;YI SYLLABLE GUOP
+A1EA;ID;YI SYLLABLE GOT
+A1EB;ID;YI SYLLABLE GOX
+A1EC;ID;YI SYLLABLE GO
+A1ED;ID;YI SYLLABLE GOP
+A1EE;ID;YI SYLLABLE GET
+A1EF;ID;YI SYLLABLE GEX
+A1F0;ID;YI SYLLABLE GE
+A1F1;ID;YI SYLLABLE GEP
+A1F2;ID;YI SYLLABLE GUT
+A1F3;ID;YI SYLLABLE GUX
+A1F4;ID;YI SYLLABLE GU
+A1F5;ID;YI SYLLABLE GUP
+A1F6;ID;YI SYLLABLE GURX
+A1F7;ID;YI SYLLABLE GUR
+A1F8;ID;YI SYLLABLE KIT
+A1F9;ID;YI SYLLABLE KIX
+A1FA;ID;YI SYLLABLE KI
+A1FB;ID;YI SYLLABLE KIP
+A1FC;ID;YI SYLLABLE KIEX
+A1FD;ID;YI SYLLABLE KIE
+A1FE;ID;YI SYLLABLE KIEP
+A1FF;ID;YI SYLLABLE KAT
+A200;ID;YI SYLLABLE KAX
+A201;ID;YI SYLLABLE KA
+A202;ID;YI SYLLABLE KAP
+A203;ID;YI SYLLABLE KUOX
+A204;ID;YI SYLLABLE KUO
+A205;ID;YI SYLLABLE KUOP
+A206;ID;YI SYLLABLE KOT
+A207;ID;YI SYLLABLE KOX
+A208;ID;YI SYLLABLE KO
+A209;ID;YI SYLLABLE KOP
+A20A;ID;YI SYLLABLE KET
+A20B;ID;YI SYLLABLE KEX
+A20C;ID;YI SYLLABLE KE
+A20D;ID;YI SYLLABLE KEP
+A20E;ID;YI SYLLABLE KUT
+A20F;ID;YI SYLLABLE KUX
+A210;ID;YI SYLLABLE KU
+A211;ID;YI SYLLABLE KUP
+A212;ID;YI SYLLABLE KURX
+A213;ID;YI SYLLABLE KUR
+A214;ID;YI SYLLABLE GGIT
+A215;ID;YI SYLLABLE GGIX
+A216;ID;YI SYLLABLE GGI
+A217;ID;YI SYLLABLE GGIEX
+A218;ID;YI SYLLABLE GGIE
+A219;ID;YI SYLLABLE GGIEP
+A21A;ID;YI SYLLABLE GGAT
+A21B;ID;YI SYLLABLE GGAX
+A21C;ID;YI SYLLABLE GGA
+A21D;ID;YI SYLLABLE GGAP
+A21E;ID;YI SYLLABLE GGUOT
+A21F;ID;YI SYLLABLE GGUOX
+A220;ID;YI SYLLABLE GGUO
+A221;ID;YI SYLLABLE GGUOP
+A222;ID;YI SYLLABLE GGOT
+A223;ID;YI SYLLABLE GGOX
+A224;ID;YI SYLLABLE GGO
+A225;ID;YI SYLLABLE GGOP
+A226;ID;YI SYLLABLE GGET
+A227;ID;YI SYLLABLE GGEX
+A228;ID;YI SYLLABLE GGE
+A229;ID;YI SYLLABLE GGEP
+A22A;ID;YI SYLLABLE GGUT
+A22B;ID;YI SYLLABLE GGUX
+A22C;ID;YI SYLLABLE GGU
+A22D;ID;YI SYLLABLE GGUP
+A22E;ID;YI SYLLABLE GGURX
+A22F;ID;YI SYLLABLE GGUR
+A230;ID;YI SYLLABLE MGIEX
+A231;ID;YI SYLLABLE MGIE
+A232;ID;YI SYLLABLE MGAT
+A233;ID;YI SYLLABLE MGAX
+A234;ID;YI SYLLABLE MGA
+A235;ID;YI SYLLABLE MGAP
+A236;ID;YI SYLLABLE MGUOX
+A237;ID;YI SYLLABLE MGUO
+A238;ID;YI SYLLABLE MGUOP
+A239;ID;YI SYLLABLE MGOT
+A23A;ID;YI SYLLABLE MGOX
+A23B;ID;YI SYLLABLE MGO
+A23C;ID;YI SYLLABLE MGOP
+A23D;ID;YI SYLLABLE MGEX
+A23E;ID;YI SYLLABLE MGE
+A23F;ID;YI SYLLABLE MGEP
+A240;ID;YI SYLLABLE MGUT
+A241;ID;YI SYLLABLE MGUX
+A242;ID;YI SYLLABLE MGU
+A243;ID;YI SYLLABLE MGUP
+A244;ID;YI SYLLABLE MGURX
+A245;ID;YI SYLLABLE MGUR
+A246;ID;YI SYLLABLE HXIT
+A247;ID;YI SYLLABLE HXIX
+A248;ID;YI SYLLABLE HXI
+A249;ID;YI SYLLABLE HXIP
+A24A;ID;YI SYLLABLE HXIET
+A24B;ID;YI SYLLABLE HXIEX
+A24C;ID;YI SYLLABLE HXIE
+A24D;ID;YI SYLLABLE HXIEP
+A24E;ID;YI SYLLABLE HXAT
+A24F;ID;YI SYLLABLE HXAX
+A250;ID;YI SYLLABLE HXA
+A251;ID;YI SYLLABLE HXAP
+A252;ID;YI SYLLABLE HXUOT
+A253;ID;YI SYLLABLE HXUOX
+A254;ID;YI SYLLABLE HXUO
+A255;ID;YI SYLLABLE HXUOP
+A256;ID;YI SYLLABLE HXOT
+A257;ID;YI SYLLABLE HXOX
+A258;ID;YI SYLLABLE HXO
+A259;ID;YI SYLLABLE HXOP
+A25A;ID;YI SYLLABLE HXEX
+A25B;ID;YI SYLLABLE HXE
+A25C;ID;YI SYLLABLE HXEP
+A25D;ID;YI SYLLABLE NGIEX
+A25E;ID;YI SYLLABLE NGIE
+A25F;ID;YI SYLLABLE NGIEP
+A260;ID;YI SYLLABLE NGAT
+A261;ID;YI SYLLABLE NGAX
+A262;ID;YI SYLLABLE NGA
+A263;ID;YI SYLLABLE NGAP
+A264;ID;YI SYLLABLE NGUOT
+A265;ID;YI SYLLABLE NGUOX
+A266;ID;YI SYLLABLE NGUO
+A267;ID;YI SYLLABLE NGOT
+A268;ID;YI SYLLABLE NGOX
+A269;ID;YI SYLLABLE NGO
+A26A;ID;YI SYLLABLE NGOP
+A26B;ID;YI SYLLABLE NGEX
+A26C;ID;YI SYLLABLE NGE
+A26D;ID;YI SYLLABLE NGEP
+A26E;ID;YI SYLLABLE HIT
+A26F;ID;YI SYLLABLE HIEX
+A270;ID;YI SYLLABLE HIE
+A271;ID;YI SYLLABLE HAT
+A272;ID;YI SYLLABLE HAX
+A273;ID;YI SYLLABLE HA
+A274;ID;YI SYLLABLE HAP
+A275;ID;YI SYLLABLE HUOT
+A276;ID;YI SYLLABLE HUOX
+A277;ID;YI SYLLABLE HUO
+A278;ID;YI SYLLABLE HUOP
+A279;ID;YI SYLLABLE HOT
+A27A;ID;YI SYLLABLE HOX
+A27B;ID;YI SYLLABLE HO
+A27C;ID;YI SYLLABLE HOP
+A27D;ID;YI SYLLABLE HEX
+A27E;ID;YI SYLLABLE HE
+A27F;ID;YI SYLLABLE HEP
+A280;ID;YI SYLLABLE WAT
+A281;ID;YI SYLLABLE WAX
+A282;ID;YI SYLLABLE WA
+A283;ID;YI SYLLABLE WAP
+A284;ID;YI SYLLABLE WUOX
+A285;ID;YI SYLLABLE WUO
+A286;ID;YI SYLLABLE WUOP
+A287;ID;YI SYLLABLE WOX
+A288;ID;YI SYLLABLE WO
+A289;ID;YI SYLLABLE WOP
+A28A;ID;YI SYLLABLE WEX
+A28B;ID;YI SYLLABLE WE
+A28C;ID;YI SYLLABLE WEP
+A28D;ID;YI SYLLABLE ZIT
+A28E;ID;YI SYLLABLE ZIX
+A28F;ID;YI SYLLABLE ZI
+A290;ID;YI SYLLABLE ZIP
+A291;ID;YI SYLLABLE ZIEX
+A292;ID;YI SYLLABLE ZIE
+A293;ID;YI SYLLABLE ZIEP
+A294;ID;YI SYLLABLE ZAT
+A295;ID;YI SYLLABLE ZAX
+A296;ID;YI SYLLABLE ZA
+A297;ID;YI SYLLABLE ZAP
+A298;ID;YI SYLLABLE ZUOX
+A299;ID;YI SYLLABLE ZUO
+A29A;ID;YI SYLLABLE ZUOP
+A29B;ID;YI SYLLABLE ZOT
+A29C;ID;YI SYLLABLE ZOX
+A29D;ID;YI SYLLABLE ZO
+A29E;ID;YI SYLLABLE ZOP
+A29F;ID;YI SYLLABLE ZEX
+A2A0;ID;YI SYLLABLE ZE
+A2A1;ID;YI SYLLABLE ZEP
+A2A2;ID;YI SYLLABLE ZUT
+A2A3;ID;YI SYLLABLE ZUX
+A2A4;ID;YI SYLLABLE ZU
+A2A5;ID;YI SYLLABLE ZUP
+A2A6;ID;YI SYLLABLE ZURX
+A2A7;ID;YI SYLLABLE ZUR
+A2A8;ID;YI SYLLABLE ZYT
+A2A9;ID;YI SYLLABLE ZYX
+A2AA;ID;YI SYLLABLE ZY
+A2AB;ID;YI SYLLABLE ZYP
+A2AC;ID;YI SYLLABLE ZYRX
+A2AD;ID;YI SYLLABLE ZYR
+A2AE;ID;YI SYLLABLE CIT
+A2AF;ID;YI SYLLABLE CIX
+A2B0;ID;YI SYLLABLE CI
+A2B1;ID;YI SYLLABLE CIP
+A2B2;ID;YI SYLLABLE CIET
+A2B3;ID;YI SYLLABLE CIEX
+A2B4;ID;YI SYLLABLE CIE
+A2B5;ID;YI SYLLABLE CIEP
+A2B6;ID;YI SYLLABLE CAT
+A2B7;ID;YI SYLLABLE CAX
+A2B8;ID;YI SYLLABLE CA
+A2B9;ID;YI SYLLABLE CAP
+A2BA;ID;YI SYLLABLE CUOX
+A2BB;ID;YI SYLLABLE CUO
+A2BC;ID;YI SYLLABLE CUOP
+A2BD;ID;YI SYLLABLE COT
+A2BE;ID;YI SYLLABLE COX
+A2BF;ID;YI SYLLABLE CO
+A2C0;ID;YI SYLLABLE COP
+A2C1;ID;YI SYLLABLE CEX
+A2C2;ID;YI SYLLABLE CE
+A2C3;ID;YI SYLLABLE CEP
+A2C4;ID;YI SYLLABLE CUT
+A2C5;ID;YI SYLLABLE CUX
+A2C6;ID;YI SYLLABLE CU
+A2C7;ID;YI SYLLABLE CUP
+A2C8;ID;YI SYLLABLE CURX
+A2C9;ID;YI SYLLABLE CUR
+A2CA;ID;YI SYLLABLE CYT
+A2CB;ID;YI SYLLABLE CYX
+A2CC;ID;YI SYLLABLE CY
+A2CD;ID;YI SYLLABLE CYP
+A2CE;ID;YI SYLLABLE CYRX
+A2CF;ID;YI SYLLABLE CYR
+A2D0;ID;YI SYLLABLE ZZIT
+A2D1;ID;YI SYLLABLE ZZIX
+A2D2;ID;YI SYLLABLE ZZI
+A2D3;ID;YI SYLLABLE ZZIP
+A2D4;ID;YI SYLLABLE ZZIET
+A2D5;ID;YI SYLLABLE ZZIEX
+A2D6;ID;YI SYLLABLE ZZIE
+A2D7;ID;YI SYLLABLE ZZIEP
+A2D8;ID;YI SYLLABLE ZZAT
+A2D9;ID;YI SYLLABLE ZZAX
+A2DA;ID;YI SYLLABLE ZZA
+A2DB;ID;YI SYLLABLE ZZAP
+A2DC;ID;YI SYLLABLE ZZOX
+A2DD;ID;YI SYLLABLE ZZO
+A2DE;ID;YI SYLLABLE ZZOP
+A2DF;ID;YI SYLLABLE ZZEX
+A2E0;ID;YI SYLLABLE ZZE
+A2E1;ID;YI SYLLABLE ZZEP
+A2E2;ID;YI SYLLABLE ZZUX
+A2E3;ID;YI SYLLABLE ZZU
+A2E4;ID;YI SYLLABLE ZZUP
+A2E5;ID;YI SYLLABLE ZZURX
+A2E6;ID;YI SYLLABLE ZZUR
+A2E7;ID;YI SYLLABLE ZZYT
+A2E8;ID;YI SYLLABLE ZZYX
+A2E9;ID;YI SYLLABLE ZZY
+A2EA;ID;YI SYLLABLE ZZYP
+A2EB;ID;YI SYLLABLE ZZYRX
+A2EC;ID;YI SYLLABLE ZZYR
+A2ED;ID;YI SYLLABLE NZIT
+A2EE;ID;YI SYLLABLE NZIX
+A2EF;ID;YI SYLLABLE NZI
+A2F0;ID;YI SYLLABLE NZIP
+A2F1;ID;YI SYLLABLE NZIEX
+A2F2;ID;YI SYLLABLE NZIE
+A2F3;ID;YI SYLLABLE NZIEP
+A2F4;ID;YI SYLLABLE NZAT
+A2F5;ID;YI SYLLABLE NZAX
+A2F6;ID;YI SYLLABLE NZA
+A2F7;ID;YI SYLLABLE NZAP
+A2F8;ID;YI SYLLABLE NZUOX
+A2F9;ID;YI SYLLABLE NZUO
+A2FA;ID;YI SYLLABLE NZOX
+A2FB;ID;YI SYLLABLE NZOP
+A2FC;ID;YI SYLLABLE NZEX
+A2FD;ID;YI SYLLABLE NZE
+A2FE;ID;YI SYLLABLE NZUX
+A2FF;ID;YI SYLLABLE NZU
+A300;ID;YI SYLLABLE NZUP
+A301;ID;YI SYLLABLE NZURX
+A302;ID;YI SYLLABLE NZUR
+A303;ID;YI SYLLABLE NZYT
+A304;ID;YI SYLLABLE NZYX
+A305;ID;YI SYLLABLE NZY
+A306;ID;YI SYLLABLE NZYP
+A307;ID;YI SYLLABLE NZYRX
+A308;ID;YI SYLLABLE NZYR
+A309;ID;YI SYLLABLE SIT
+A30A;ID;YI SYLLABLE SIX
+A30B;ID;YI SYLLABLE SI
+A30C;ID;YI SYLLABLE SIP
+A30D;ID;YI SYLLABLE SIEX
+A30E;ID;YI SYLLABLE SIE
+A30F;ID;YI SYLLABLE SIEP
+A310;ID;YI SYLLABLE SAT
+A311;ID;YI SYLLABLE SAX
+A312;ID;YI SYLLABLE SA
+A313;ID;YI SYLLABLE SAP
+A314;ID;YI SYLLABLE SUOX
+A315;ID;YI SYLLABLE SUO
+A316;ID;YI SYLLABLE SUOP
+A317;ID;YI SYLLABLE SOT
+A318;ID;YI SYLLABLE SOX
+A319;ID;YI SYLLABLE SO
+A31A;ID;YI SYLLABLE SOP
+A31B;ID;YI SYLLABLE SEX
+A31C;ID;YI SYLLABLE SE
+A31D;ID;YI SYLLABLE SEP
+A31E;ID;YI SYLLABLE SUT
+A31F;ID;YI SYLLABLE SUX
+A320;ID;YI SYLLABLE SU
+A321;ID;YI SYLLABLE SUP
+A322;ID;YI SYLLABLE SURX
+A323;ID;YI SYLLABLE SUR
+A324;ID;YI SYLLABLE SYT
+A325;ID;YI SYLLABLE SYX
+A326;ID;YI SYLLABLE SY
+A327;ID;YI SYLLABLE SYP
+A328;ID;YI SYLLABLE SYRX
+A329;ID;YI SYLLABLE SYR
+A32A;ID;YI SYLLABLE SSIT
+A32B;ID;YI SYLLABLE SSIX
+A32C;ID;YI SYLLABLE SSI
+A32D;ID;YI SYLLABLE SSIP
+A32E;ID;YI SYLLABLE SSIEX
+A32F;ID;YI SYLLABLE SSIE
+A330;ID;YI SYLLABLE SSIEP
+A331;ID;YI SYLLABLE SSAT
+A332;ID;YI SYLLABLE SSAX
+A333;ID;YI SYLLABLE SSA
+A334;ID;YI SYLLABLE SSAP
+A335;ID;YI SYLLABLE SSOT
+A336;ID;YI SYLLABLE SSOX
+A337;ID;YI SYLLABLE SSO
+A338;ID;YI SYLLABLE SSOP
+A339;ID;YI SYLLABLE SSEX
+A33A;ID;YI SYLLABLE SSE
+A33B;ID;YI SYLLABLE SSEP
+A33C;ID;YI SYLLABLE SSUT
+A33D;ID;YI SYLLABLE SSUX
+A33E;ID;YI SYLLABLE SSU
+A33F;ID;YI SYLLABLE SSUP
+A340;ID;YI SYLLABLE SSYT
+A341;ID;YI SYLLABLE SSYX
+A342;ID;YI SYLLABLE SSY
+A343;ID;YI SYLLABLE SSYP
+A344;ID;YI SYLLABLE SSYRX
+A345;ID;YI SYLLABLE SSYR
+A346;ID;YI SYLLABLE ZHAT
+A347;ID;YI SYLLABLE ZHAX
+A348;ID;YI SYLLABLE ZHA
+A349;ID;YI SYLLABLE ZHAP
+A34A;ID;YI SYLLABLE ZHUOX
+A34B;ID;YI SYLLABLE ZHUO
+A34C;ID;YI SYLLABLE ZHUOP
+A34D;ID;YI SYLLABLE ZHOT
+A34E;ID;YI SYLLABLE ZHOX
+A34F;ID;YI SYLLABLE ZHO
+A350;ID;YI SYLLABLE ZHOP
+A351;ID;YI SYLLABLE ZHET
+A352;ID;YI SYLLABLE ZHEX
+A353;ID;YI SYLLABLE ZHE
+A354;ID;YI SYLLABLE ZHEP
+A355;ID;YI SYLLABLE ZHUT
+A356;ID;YI SYLLABLE ZHUX
+A357;ID;YI SYLLABLE ZHU
+A358;ID;YI SYLLABLE ZHUP
+A359;ID;YI SYLLABLE ZHURX
+A35A;ID;YI SYLLABLE ZHUR
+A35B;ID;YI SYLLABLE ZHYT
+A35C;ID;YI SYLLABLE ZHYX
+A35D;ID;YI SYLLABLE ZHY
+A35E;ID;YI SYLLABLE ZHYP
+A35F;ID;YI SYLLABLE ZHYRX
+A360;ID;YI SYLLABLE ZHYR
+A361;ID;YI SYLLABLE CHAT
+A362;ID;YI SYLLABLE CHAX
+A363;ID;YI SYLLABLE CHA
+A364;ID;YI SYLLABLE CHAP
+A365;ID;YI SYLLABLE CHUOT
+A366;ID;YI SYLLABLE CHUOX
+A367;ID;YI SYLLABLE CHUO
+A368;ID;YI SYLLABLE CHUOP
+A369;ID;YI SYLLABLE CHOT
+A36A;ID;YI SYLLABLE CHOX
+A36B;ID;YI SYLLABLE CHO
+A36C;ID;YI SYLLABLE CHOP
+A36D;ID;YI SYLLABLE CHET
+A36E;ID;YI SYLLABLE CHEX
+A36F;ID;YI SYLLABLE CHE
+A370;ID;YI SYLLABLE CHEP
+A371;ID;YI SYLLABLE CHUX
+A372;ID;YI SYLLABLE CHU
+A373;ID;YI SYLLABLE CHUP
+A374;ID;YI SYLLABLE CHURX
+A375;ID;YI SYLLABLE CHUR
+A376;ID;YI SYLLABLE CHYT
+A377;ID;YI SYLLABLE CHYX
+A378;ID;YI SYLLABLE CHY
+A379;ID;YI SYLLABLE CHYP
+A37A;ID;YI SYLLABLE CHYRX
+A37B;ID;YI SYLLABLE CHYR
+A37C;ID;YI SYLLABLE RRAX
+A37D;ID;YI SYLLABLE RRA
+A37E;ID;YI SYLLABLE RRUOX
+A37F;ID;YI SYLLABLE RRUO
+A380;ID;YI SYLLABLE RROT
+A381;ID;YI SYLLABLE RROX
+A382;ID;YI SYLLABLE RRO
+A383;ID;YI SYLLABLE RROP
+A384;ID;YI SYLLABLE RRET
+A385;ID;YI SYLLABLE RREX
+A386;ID;YI SYLLABLE RRE
+A387;ID;YI SYLLABLE RREP
+A388;ID;YI SYLLABLE RRUT
+A389;ID;YI SYLLABLE RRUX
+A38A;ID;YI SYLLABLE RRU
+A38B;ID;YI SYLLABLE RRUP
+A38C;ID;YI SYLLABLE RRURX
+A38D;ID;YI SYLLABLE RRUR
+A38E;ID;YI SYLLABLE RRYT
+A38F;ID;YI SYLLABLE RRYX
+A390;ID;YI SYLLABLE RRY
+A391;ID;YI SYLLABLE RRYP
+A392;ID;YI SYLLABLE RRYRX
+A393;ID;YI SYLLABLE RRYR
+A394;ID;YI SYLLABLE NRAT
+A395;ID;YI SYLLABLE NRAX
+A396;ID;YI SYLLABLE NRA
+A397;ID;YI SYLLABLE NRAP
+A398;ID;YI SYLLABLE NROX
+A399;ID;YI SYLLABLE NRO
+A39A;ID;YI SYLLABLE NROP
+A39B;ID;YI SYLLABLE NRET
+A39C;ID;YI SYLLABLE NREX
+A39D;ID;YI SYLLABLE NRE
+A39E;ID;YI SYLLABLE NREP
+A39F;ID;YI SYLLABLE NRUT
+A3A0;ID;YI SYLLABLE NRUX
+A3A1;ID;YI SYLLABLE NRU
+A3A2;ID;YI SYLLABLE NRUP
+A3A3;ID;YI SYLLABLE NRURX
+A3A4;ID;YI SYLLABLE NRUR
+A3A5;ID;YI SYLLABLE NRYT
+A3A6;ID;YI SYLLABLE NRYX
+A3A7;ID;YI SYLLABLE NRY
+A3A8;ID;YI SYLLABLE NRYP
+A3A9;ID;YI SYLLABLE NRYRX
+A3AA;ID;YI SYLLABLE NRYR
+A3AB;ID;YI SYLLABLE SHAT
+A3AC;ID;YI SYLLABLE SHAX
+A3AD;ID;YI SYLLABLE SHA
+A3AE;ID;YI SYLLABLE SHAP
+A3AF;ID;YI SYLLABLE SHUOX
+A3B0;ID;YI SYLLABLE SHUO
+A3B1;ID;YI SYLLABLE SHUOP
+A3B2;ID;YI SYLLABLE SHOT
+A3B3;ID;YI SYLLABLE SHOX
+A3B4;ID;YI SYLLABLE SHO
+A3B5;ID;YI SYLLABLE SHOP
+A3B6;ID;YI SYLLABLE SHET
+A3B7;ID;YI SYLLABLE SHEX
+A3B8;ID;YI SYLLABLE SHE
+A3B9;ID;YI SYLLABLE SHEP
+A3BA;ID;YI SYLLABLE SHUT
+A3BB;ID;YI SYLLABLE SHUX
+A3BC;ID;YI SYLLABLE SHU
+A3BD;ID;YI SYLLABLE SHUP
+A3BE;ID;YI SYLLABLE SHURX
+A3BF;ID;YI SYLLABLE SHUR
+A3C0;ID;YI SYLLABLE SHYT
+A3C1;ID;YI SYLLABLE SHYX
+A3C2;ID;YI SYLLABLE SHY
+A3C3;ID;YI SYLLABLE SHYP
+A3C4;ID;YI SYLLABLE SHYRX
+A3C5;ID;YI SYLLABLE SHYR
+A3C6;ID;YI SYLLABLE RAT
+A3C7;ID;YI SYLLABLE RAX
+A3C8;ID;YI SYLLABLE RA
+A3C9;ID;YI SYLLABLE RAP
+A3CA;ID;YI SYLLABLE RUOX
+A3CB;ID;YI SYLLABLE RUO
+A3CC;ID;YI SYLLABLE RUOP
+A3CD;ID;YI SYLLABLE ROT
+A3CE;ID;YI SYLLABLE ROX
+A3CF;ID;YI SYLLABLE RO
+A3D0;ID;YI SYLLABLE ROP
+A3D1;ID;YI SYLLABLE REX
+A3D2;ID;YI SYLLABLE RE
+A3D3;ID;YI SYLLABLE REP
+A3D4;ID;YI SYLLABLE RUT
+A3D5;ID;YI SYLLABLE RUX
+A3D6;ID;YI SYLLABLE RU
+A3D7;ID;YI SYLLABLE RUP
+A3D8;ID;YI SYLLABLE RURX
+A3D9;ID;YI SYLLABLE RUR
+A3DA;ID;YI SYLLABLE RYT
+A3DB;ID;YI SYLLABLE RYX
+A3DC;ID;YI SYLLABLE RY
+A3DD;ID;YI SYLLABLE RYP
+A3DE;ID;YI SYLLABLE RYRX
+A3DF;ID;YI SYLLABLE RYR
+A3E0;ID;YI SYLLABLE JIT
+A3E1;ID;YI SYLLABLE JIX
+A3E2;ID;YI SYLLABLE JI
+A3E3;ID;YI SYLLABLE JIP
+A3E4;ID;YI SYLLABLE JIET
+A3E5;ID;YI SYLLABLE JIEX
+A3E6;ID;YI SYLLABLE JIE
+A3E7;ID;YI SYLLABLE JIEP
+A3E8;ID;YI SYLLABLE JUOT
+A3E9;ID;YI SYLLABLE JUOX
+A3EA;ID;YI SYLLABLE JUO
+A3EB;ID;YI SYLLABLE JUOP
+A3EC;ID;YI SYLLABLE JOT
+A3ED;ID;YI SYLLABLE JOX
+A3EE;ID;YI SYLLABLE JO
+A3EF;ID;YI SYLLABLE JOP
+A3F0;ID;YI SYLLABLE JUT
+A3F1;ID;YI SYLLABLE JUX
+A3F2;ID;YI SYLLABLE JU
+A3F3;ID;YI SYLLABLE JUP
+A3F4;ID;YI SYLLABLE JURX
+A3F5;ID;YI SYLLABLE JUR
+A3F6;ID;YI SYLLABLE JYT
+A3F7;ID;YI SYLLABLE JYX
+A3F8;ID;YI SYLLABLE JY
+A3F9;ID;YI SYLLABLE JYP
+A3FA;ID;YI SYLLABLE JYRX
+A3FB;ID;YI SYLLABLE JYR
+A3FC;ID;YI SYLLABLE QIT
+A3FD;ID;YI SYLLABLE QIX
+A3FE;ID;YI SYLLABLE QI
+A3FF;ID;YI SYLLABLE QIP
+A400;ID;YI SYLLABLE QIET
+A401;ID;YI SYLLABLE QIEX
+A402;ID;YI SYLLABLE QIE
+A403;ID;YI SYLLABLE QIEP
+A404;ID;YI SYLLABLE QUOT
+A405;ID;YI SYLLABLE QUOX
+A406;ID;YI SYLLABLE QUO
+A407;ID;YI SYLLABLE QUOP
+A408;ID;YI SYLLABLE QOT
+A409;ID;YI SYLLABLE QOX
+A40A;ID;YI SYLLABLE QO
+A40B;ID;YI SYLLABLE QOP
+A40C;ID;YI SYLLABLE QUT
+A40D;ID;YI SYLLABLE QUX
+A40E;ID;YI SYLLABLE QU
+A40F;ID;YI SYLLABLE QUP
+A410;ID;YI SYLLABLE QURX
+A411;ID;YI SYLLABLE QUR
+A412;ID;YI SYLLABLE QYT
+A413;ID;YI SYLLABLE QYX
+A414;ID;YI SYLLABLE QY
+A415;ID;YI SYLLABLE QYP
+A416;ID;YI SYLLABLE QYRX
+A417;ID;YI SYLLABLE QYR
+A418;ID;YI SYLLABLE JJIT
+A419;ID;YI SYLLABLE JJIX
+A41A;ID;YI SYLLABLE JJI
+A41B;ID;YI SYLLABLE JJIP
+A41C;ID;YI SYLLABLE JJIET
+A41D;ID;YI SYLLABLE JJIEX
+A41E;ID;YI SYLLABLE JJIE
+A41F;ID;YI SYLLABLE JJIEP
+A420;ID;YI SYLLABLE JJUOX
+A421;ID;YI SYLLABLE JJUO
+A422;ID;YI SYLLABLE JJUOP
+A423;ID;YI SYLLABLE JJOT
+A424;ID;YI SYLLABLE JJOX
+A425;ID;YI SYLLABLE JJO
+A426;ID;YI SYLLABLE JJOP
+A427;ID;YI SYLLABLE JJUT
+A428;ID;YI SYLLABLE JJUX
+A429;ID;YI SYLLABLE JJU
+A42A;ID;YI SYLLABLE JJUP
+A42B;ID;YI SYLLABLE JJURX
+A42C;ID;YI SYLLABLE JJUR
+A42D;ID;YI SYLLABLE JJYT
+A42E;ID;YI SYLLABLE JJYX
+A42F;ID;YI SYLLABLE JJY
+A430;ID;YI SYLLABLE JJYP
+A431;ID;YI SYLLABLE NJIT
+A432;ID;YI SYLLABLE NJIX
+A433;ID;YI SYLLABLE NJI
+A434;ID;YI SYLLABLE NJIP
+A435;ID;YI SYLLABLE NJIET
+A436;ID;YI SYLLABLE NJIEX
+A437;ID;YI SYLLABLE NJIE
+A438;ID;YI SYLLABLE NJIEP
+A439;ID;YI SYLLABLE NJUOX
+A43A;ID;YI SYLLABLE NJUO
+A43B;ID;YI SYLLABLE NJOT
+A43C;ID;YI SYLLABLE NJOX
+A43D;ID;YI SYLLABLE NJO
+A43E;ID;YI SYLLABLE NJOP
+A43F;ID;YI SYLLABLE NJUX
+A440;ID;YI SYLLABLE NJU
+A441;ID;YI SYLLABLE NJUP
+A442;ID;YI SYLLABLE NJURX
+A443;ID;YI SYLLABLE NJUR
+A444;ID;YI SYLLABLE NJYT
+A445;ID;YI SYLLABLE NJYX
+A446;ID;YI SYLLABLE NJY
+A447;ID;YI SYLLABLE NJYP
+A448;ID;YI SYLLABLE NJYRX
+A449;ID;YI SYLLABLE NJYR
+A44A;ID;YI SYLLABLE NYIT
+A44B;ID;YI SYLLABLE NYIX
+A44C;ID;YI SYLLABLE NYI
+A44D;ID;YI SYLLABLE NYIP
+A44E;ID;YI SYLLABLE NYIET
+A44F;ID;YI SYLLABLE NYIEX
+A450;ID;YI SYLLABLE NYIE
+A451;ID;YI SYLLABLE NYIEP
+A452;ID;YI SYLLABLE NYUOX
+A453;ID;YI SYLLABLE NYUO
+A454;ID;YI SYLLABLE NYUOP
+A455;ID;YI SYLLABLE NYOT
+A456;ID;YI SYLLABLE NYOX
+A457;ID;YI SYLLABLE NYO
+A458;ID;YI SYLLABLE NYOP
+A459;ID;YI SYLLABLE NYUT
+A45A;ID;YI SYLLABLE NYUX
+A45B;ID;YI SYLLABLE NYU
+A45C;ID;YI SYLLABLE NYUP
+A45D;ID;YI SYLLABLE XIT
+A45E;ID;YI SYLLABLE XIX
+A45F;ID;YI SYLLABLE XI
+A460;ID;YI SYLLABLE XIP
+A461;ID;YI SYLLABLE XIET
+A462;ID;YI SYLLABLE XIEX
+A463;ID;YI SYLLABLE XIE
+A464;ID;YI SYLLABLE XIEP
+A465;ID;YI SYLLABLE XUOX
+A466;ID;YI SYLLABLE XUO
+A467;ID;YI SYLLABLE XOT
+A468;ID;YI SYLLABLE XOX
+A469;ID;YI SYLLABLE XO
+A46A;ID;YI SYLLABLE XOP
+A46B;ID;YI SYLLABLE XYT
+A46C;ID;YI SYLLABLE XYX
+A46D;ID;YI SYLLABLE XY
+A46E;ID;YI SYLLABLE XYP
+A46F;ID;YI SYLLABLE XYRX
+A470;ID;YI SYLLABLE XYR
+A471;ID;YI SYLLABLE YIT
+A472;ID;YI SYLLABLE YIX
+A473;ID;YI SYLLABLE YI
+A474;ID;YI SYLLABLE YIP
+A475;ID;YI SYLLABLE YIET
+A476;ID;YI SYLLABLE YIEX
+A477;ID;YI SYLLABLE YIE
+A478;ID;YI SYLLABLE YIEP
+A479;ID;YI SYLLABLE YUOT
+A47A;ID;YI SYLLABLE YUOX
+A47B;ID;YI SYLLABLE YUO
+A47C;ID;YI SYLLABLE YUOP
+A47D;ID;YI SYLLABLE YOT
+A47E;ID;YI SYLLABLE YOX
+A47F;ID;YI SYLLABLE YO
+A480;ID;YI SYLLABLE YOP
+A481;ID;YI SYLLABLE YUT
+A482;ID;YI SYLLABLE YUX
+A483;ID;YI SYLLABLE YU
+A484;ID;YI SYLLABLE YUP
+A485;ID;YI SYLLABLE YURX
+A486;ID;YI SYLLABLE YUR
+A487;ID;YI SYLLABLE YYT
+A488;ID;YI SYLLABLE YYX
+A489;ID;YI SYLLABLE YY
+A48A;ID;YI SYLLABLE YYP
+A48B;ID;YI SYLLABLE YYRX
+A48C;ID;YI SYLLABLE YYR
+A490;ID;YI RADICAL QOT
+A491;ID;YI RADICAL LI
+A492;ID;YI RADICAL KIT
+A493;ID;YI RADICAL NYIP
+A494;ID;YI RADICAL CYP
+A495;ID;YI RADICAL SSI
+A496;ID;YI RADICAL GGOP
+A497;ID;YI RADICAL GEP
+A498;ID;YI RADICAL MI
+A499;ID;YI RADICAL HXIT
+A49A;ID;YI RADICAL LYR
+A49B;ID;YI RADICAL BBUT
+A49C;ID;YI RADICAL MOP
+A49D;ID;YI RADICAL YO
+A49E;ID;YI RADICAL PUT
+A49F;ID;YI RADICAL HXUO
+A4A0;ID;YI RADICAL TAT
+A4A1;ID;YI RADICAL GA
+A4A4;ID;YI RADICAL DDUR
+A4A5;ID;YI RADICAL BUR
+A4A6;ID;YI RADICAL GGUO
+A4A7;ID;YI RADICAL NYOP
+A4A8;ID;YI RADICAL TU
+A4A9;ID;YI RADICAL OP
+A4AA;ID;YI RADICAL JJUT
+A4AB;ID;YI RADICAL ZOT
+A4AC;ID;YI RADICAL PYT
+A4AD;ID;YI RADICAL HMO
+A4AE;ID;YI RADICAL YIT
+A4AF;ID;YI RADICAL VUR
+A4B0;ID;YI RADICAL SHY
+A4B1;ID;YI RADICAL VEP
+A4B2;ID;YI RADICAL ZA
+A4B3;ID;YI RADICAL JO
+A4B5;ID;YI RADICAL JJY
+A4B6;ID;YI RADICAL GOT
+A4B7;ID;YI RADICAL JJIE
+A4B8;ID;YI RADICAL WO
+A4B9;ID;YI RADICAL DU
+A4BA;ID;YI RADICAL SHUR
+A4BB;ID;YI RADICAL LIE
+A4BC;ID;YI RADICAL CY
+A4BD;ID;YI RADICAL CUOP
+A4BE;ID;YI RADICAL CIP
+A4BF;ID;YI RADICAL HXOP
+A4C0;ID;YI RADICAL SHAT
+A4C2;ID;YI RADICAL SHOP
+A4C3;ID;YI RADICAL CHE
+A4C4;ID;YI RADICAL ZZIET
+A4C6;ID;YI RADICAL KE
+AC00;ID;<Hangul Syllable, First>
+D7A3;ID;<Hangul Syllable, Last>
+D800;SG;<Non Private Use High Surrogate, First>
+DB7F;SG;<Non Private Use High Surrogate, Last>
+DB80;SG;<Private Use High Surrogate, First>
+DBFF;SG;<Private Use High Surrogate, Last>
+DC00;SG;<Low Surrogate, First>
+DFFF;SG;<Low Surrogate, Last>
+E000;AI;<Private Use, First>
+F8FF;AI;<Private Use, Last>
+F900;ID;CJK COMPATIBILITY IDEOGRAPH-F900
+F901;ID;CJK COMPATIBILITY IDEOGRAPH-F901
+F902;ID;CJK COMPATIBILITY IDEOGRAPH-F902
+F903;ID;CJK COMPATIBILITY IDEOGRAPH-F903
+F904;ID;CJK COMPATIBILITY IDEOGRAPH-F904
+F905;ID;CJK COMPATIBILITY IDEOGRAPH-F905
+F906;ID;CJK COMPATIBILITY IDEOGRAPH-F906
+F907;ID;CJK COMPATIBILITY IDEOGRAPH-F907
+F908;ID;CJK COMPATIBILITY IDEOGRAPH-F908
+F909;ID;CJK COMPATIBILITY IDEOGRAPH-F909
+F90A;ID;CJK COMPATIBILITY IDEOGRAPH-F90A
+F90B;ID;CJK COMPATIBILITY IDEOGRAPH-F90B
+F90C;ID;CJK COMPATIBILITY IDEOGRAPH-F90C
+F90D;ID;CJK COMPATIBILITY IDEOGRAPH-F90D
+F90E;ID;CJK COMPATIBILITY IDEOGRAPH-F90E
+F90F;ID;CJK COMPATIBILITY IDEOGRAPH-F90F
+F910;ID;CJK COMPATIBILITY IDEOGRAPH-F910
+F911;ID;CJK COMPATIBILITY IDEOGRAPH-F911
+F912;ID;CJK COMPATIBILITY IDEOGRAPH-F912
+F913;ID;CJK COMPATIBILITY IDEOGRAPH-F913
+F914;ID;CJK COMPATIBILITY IDEOGRAPH-F914
+F915;ID;CJK COMPATIBILITY IDEOGRAPH-F915
+F916;ID;CJK COMPATIBILITY IDEOGRAPH-F916
+F917;ID;CJK COMPATIBILITY IDEOGRAPH-F917
+F918;ID;CJK COMPATIBILITY IDEOGRAPH-F918
+F919;ID;CJK COMPATIBILITY IDEOGRAPH-F919
+F91A;ID;CJK COMPATIBILITY IDEOGRAPH-F91A
+F91B;ID;CJK COMPATIBILITY IDEOGRAPH-F91B
+F91C;ID;CJK COMPATIBILITY IDEOGRAPH-F91C
+F91D;ID;CJK COMPATIBILITY IDEOGRAPH-F91D
+F91E;ID;CJK COMPATIBILITY IDEOGRAPH-F91E
+F91F;ID;CJK COMPATIBILITY IDEOGRAPH-F91F
+F920;ID;CJK COMPATIBILITY IDEOGRAPH-F920
+F921;ID;CJK COMPATIBILITY IDEOGRAPH-F921
+F922;ID;CJK COMPATIBILITY IDEOGRAPH-F922
+F923;ID;CJK COMPATIBILITY IDEOGRAPH-F923
+F924;ID;CJK COMPATIBILITY IDEOGRAPH-F924
+F925;ID;CJK COMPATIBILITY IDEOGRAPH-F925
+F926;ID;CJK COMPATIBILITY IDEOGRAPH-F926
+F927;ID;CJK COMPATIBILITY IDEOGRAPH-F927
+F928;ID;CJK COMPATIBILITY IDEOGRAPH-F928
+F929;ID;CJK COMPATIBILITY IDEOGRAPH-F929
+F92A;ID;CJK COMPATIBILITY IDEOGRAPH-F92A
+F92B;ID;CJK COMPATIBILITY IDEOGRAPH-F92B
+F92C;ID;CJK COMPATIBILITY IDEOGRAPH-F92C
+F92D;ID;CJK COMPATIBILITY IDEOGRAPH-F92D
+F92E;ID;CJK COMPATIBILITY IDEOGRAPH-F92E
+F92F;ID;CJK COMPATIBILITY IDEOGRAPH-F92F
+F930;ID;CJK COMPATIBILITY IDEOGRAPH-F930
+F931;ID;CJK COMPATIBILITY IDEOGRAPH-F931
+F932;ID;CJK COMPATIBILITY IDEOGRAPH-F932
+F933;ID;CJK COMPATIBILITY IDEOGRAPH-F933
+F934;ID;CJK COMPATIBILITY IDEOGRAPH-F934
+F935;ID;CJK COMPATIBILITY IDEOGRAPH-F935
+F936;ID;CJK COMPATIBILITY IDEOGRAPH-F936
+F937;ID;CJK COMPATIBILITY IDEOGRAPH-F937
+F938;ID;CJK COMPATIBILITY IDEOGRAPH-F938
+F939;ID;CJK COMPATIBILITY IDEOGRAPH-F939
+F93A;ID;CJK COMPATIBILITY IDEOGRAPH-F93A
+F93B;ID;CJK COMPATIBILITY IDEOGRAPH-F93B
+F93C;ID;CJK COMPATIBILITY IDEOGRAPH-F93C
+F93D;ID;CJK COMPATIBILITY IDEOGRAPH-F93D
+F93E;ID;CJK COMPATIBILITY IDEOGRAPH-F93E
+F93F;ID;CJK COMPATIBILITY IDEOGRAPH-F93F
+F940;ID;CJK COMPATIBILITY IDEOGRAPH-F940
+F941;ID;CJK COMPATIBILITY IDEOGRAPH-F941
+F942;ID;CJK COMPATIBILITY IDEOGRAPH-F942
+F943;ID;CJK COMPATIBILITY IDEOGRAPH-F943
+F944;ID;CJK COMPATIBILITY IDEOGRAPH-F944
+F945;ID;CJK COMPATIBILITY IDEOGRAPH-F945
+F946;ID;CJK COMPATIBILITY IDEOGRAPH-F946
+F947;ID;CJK COMPATIBILITY IDEOGRAPH-F947
+F948;ID;CJK COMPATIBILITY IDEOGRAPH-F948
+F949;ID;CJK COMPATIBILITY IDEOGRAPH-F949
+F94A;ID;CJK COMPATIBILITY IDEOGRAPH-F94A
+F94B;ID;CJK COMPATIBILITY IDEOGRAPH-F94B
+F94C;ID;CJK COMPATIBILITY IDEOGRAPH-F94C
+F94D;ID;CJK COMPATIBILITY IDEOGRAPH-F94D
+F94E;ID;CJK COMPATIBILITY IDEOGRAPH-F94E
+F94F;ID;CJK COMPATIBILITY IDEOGRAPH-F94F
+F950;ID;CJK COMPATIBILITY IDEOGRAPH-F950
+F951;ID;CJK COMPATIBILITY IDEOGRAPH-F951
+F952;ID;CJK COMPATIBILITY IDEOGRAPH-F952
+F953;ID;CJK COMPATIBILITY IDEOGRAPH-F953
+F954;ID;CJK COMPATIBILITY IDEOGRAPH-F954
+F955;ID;CJK COMPATIBILITY IDEOGRAPH-F955
+F956;ID;CJK COMPATIBILITY IDEOGRAPH-F956
+F957;ID;CJK COMPATIBILITY IDEOGRAPH-F957
+F958;ID;CJK COMPATIBILITY IDEOGRAPH-F958
+F959;ID;CJK COMPATIBILITY IDEOGRAPH-F959
+F95A;ID;CJK COMPATIBILITY IDEOGRAPH-F95A
+F95B;ID;CJK COMPATIBILITY IDEOGRAPH-F95B
+F95C;ID;CJK COMPATIBILITY IDEOGRAPH-F95C
+F95D;ID;CJK COMPATIBILITY IDEOGRAPH-F95D
+F95E;ID;CJK COMPATIBILITY IDEOGRAPH-F95E
+F95F;ID;CJK COMPATIBILITY IDEOGRAPH-F95F
+F960;ID;CJK COMPATIBILITY IDEOGRAPH-F960
+F961;ID;CJK COMPATIBILITY IDEOGRAPH-F961
+F962;ID;CJK COMPATIBILITY IDEOGRAPH-F962
+F963;ID;CJK COMPATIBILITY IDEOGRAPH-F963
+F964;ID;CJK COMPATIBILITY IDEOGRAPH-F964
+F965;ID;CJK COMPATIBILITY IDEOGRAPH-F965
+F966;ID;CJK COMPATIBILITY IDEOGRAPH-F966
+F967;ID;CJK COMPATIBILITY IDEOGRAPH-F967
+F968;ID;CJK COMPATIBILITY IDEOGRAPH-F968
+F969;ID;CJK COMPATIBILITY IDEOGRAPH-F969
+F96A;ID;CJK COMPATIBILITY IDEOGRAPH-F96A
+F96B;ID;CJK COMPATIBILITY IDEOGRAPH-F96B
+F96C;ID;CJK COMPATIBILITY IDEOGRAPH-F96C
+F96D;ID;CJK COMPATIBILITY IDEOGRAPH-F96D
+F96E;ID;CJK COMPATIBILITY IDEOGRAPH-F96E
+F96F;ID;CJK COMPATIBILITY IDEOGRAPH-F96F
+F970;ID;CJK COMPATIBILITY IDEOGRAPH-F970
+F971;ID;CJK COMPATIBILITY IDEOGRAPH-F971
+F972;ID;CJK COMPATIBILITY IDEOGRAPH-F972
+F973;ID;CJK COMPATIBILITY IDEOGRAPH-F973
+F974;ID;CJK COMPATIBILITY IDEOGRAPH-F974
+F975;ID;CJK COMPATIBILITY IDEOGRAPH-F975
+F976;ID;CJK COMPATIBILITY IDEOGRAPH-F976
+F977;ID;CJK COMPATIBILITY IDEOGRAPH-F977
+F978;ID;CJK COMPATIBILITY IDEOGRAPH-F978
+F979;ID;CJK COMPATIBILITY IDEOGRAPH-F979
+F97A;ID;CJK COMPATIBILITY IDEOGRAPH-F97A
+F97B;ID;CJK COMPATIBILITY IDEOGRAPH-F97B
+F97C;ID;CJK COMPATIBILITY IDEOGRAPH-F97C
+F97D;ID;CJK COMPATIBILITY IDEOGRAPH-F97D
+F97E;ID;CJK COMPATIBILITY IDEOGRAPH-F97E
+F97F;ID;CJK COMPATIBILITY IDEOGRAPH-F97F
+F980;ID;CJK COMPATIBILITY IDEOGRAPH-F980
+F981;ID;CJK COMPATIBILITY IDEOGRAPH-F981
+F982;ID;CJK COMPATIBILITY IDEOGRAPH-F982
+F983;ID;CJK COMPATIBILITY IDEOGRAPH-F983
+F984;ID;CJK COMPATIBILITY IDEOGRAPH-F984
+F985;ID;CJK COMPATIBILITY IDEOGRAPH-F985
+F986;ID;CJK COMPATIBILITY IDEOGRAPH-F986
+F987;ID;CJK COMPATIBILITY IDEOGRAPH-F987
+F988;ID;CJK COMPATIBILITY IDEOGRAPH-F988
+F989;ID;CJK COMPATIBILITY IDEOGRAPH-F989
+F98A;ID;CJK COMPATIBILITY IDEOGRAPH-F98A
+F98B;ID;CJK COMPATIBILITY IDEOGRAPH-F98B
+F98C;ID;CJK COMPATIBILITY IDEOGRAPH-F98C
+F98D;ID;CJK COMPATIBILITY IDEOGRAPH-F98D
+F98E;ID;CJK COMPATIBILITY IDEOGRAPH-F98E
+F98F;ID;CJK COMPATIBILITY IDEOGRAPH-F98F
+F990;ID;CJK COMPATIBILITY IDEOGRAPH-F990
+F991;ID;CJK COMPATIBILITY IDEOGRAPH-F991
+F992;ID;CJK COMPATIBILITY IDEOGRAPH-F992
+F993;ID;CJK COMPATIBILITY IDEOGRAPH-F993
+F994;ID;CJK COMPATIBILITY IDEOGRAPH-F994
+F995;ID;CJK COMPATIBILITY IDEOGRAPH-F995
+F996;ID;CJK COMPATIBILITY IDEOGRAPH-F996
+F997;ID;CJK COMPATIBILITY IDEOGRAPH-F997
+F998;ID;CJK COMPATIBILITY IDEOGRAPH-F998
+F999;ID;CJK COMPATIBILITY IDEOGRAPH-F999
+F99A;ID;CJK COMPATIBILITY IDEOGRAPH-F99A
+F99B;ID;CJK COMPATIBILITY IDEOGRAPH-F99B
+F99C;ID;CJK COMPATIBILITY IDEOGRAPH-F99C
+F99D;ID;CJK COMPATIBILITY IDEOGRAPH-F99D
+F99E;ID;CJK COMPATIBILITY IDEOGRAPH-F99E
+F99F;ID;CJK COMPATIBILITY IDEOGRAPH-F99F
+F9A0;ID;CJK COMPATIBILITY IDEOGRAPH-F9A0
+F9A1;ID;CJK COMPATIBILITY IDEOGRAPH-F9A1
+F9A2;ID;CJK COMPATIBILITY IDEOGRAPH-F9A2
+F9A3;ID;CJK COMPATIBILITY IDEOGRAPH-F9A3
+F9A4;ID;CJK COMPATIBILITY IDEOGRAPH-F9A4
+F9A5;ID;CJK COMPATIBILITY IDEOGRAPH-F9A5
+F9A6;ID;CJK COMPATIBILITY IDEOGRAPH-F9A6
+F9A7;ID;CJK COMPATIBILITY IDEOGRAPH-F9A7
+F9A8;ID;CJK COMPATIBILITY IDEOGRAPH-F9A8
+F9A9;ID;CJK COMPATIBILITY IDEOGRAPH-F9A9
+F9AA;ID;CJK COMPATIBILITY IDEOGRAPH-F9AA
+F9AB;ID;CJK COMPATIBILITY IDEOGRAPH-F9AB
+F9AC;ID;CJK COMPATIBILITY IDEOGRAPH-F9AC
+F9AD;ID;CJK COMPATIBILITY IDEOGRAPH-F9AD
+F9AE;ID;CJK COMPATIBILITY IDEOGRAPH-F9AE
+F9AF;ID;CJK COMPATIBILITY IDEOGRAPH-F9AF
+F9B0;ID;CJK COMPATIBILITY IDEOGRAPH-F9B0
+F9B1;ID;CJK COMPATIBILITY IDEOGRAPH-F9B1
+F9B2;ID;CJK COMPATIBILITY IDEOGRAPH-F9B2
+F9B3;ID;CJK COMPATIBILITY IDEOGRAPH-F9B3
+F9B4;ID;CJK COMPATIBILITY IDEOGRAPH-F9B4
+F9B5;ID;CJK COMPATIBILITY IDEOGRAPH-F9B5
+F9B6;ID;CJK COMPATIBILITY IDEOGRAPH-F9B6
+F9B7;ID;CJK COMPATIBILITY IDEOGRAPH-F9B7
+F9B8;ID;CJK COMPATIBILITY IDEOGRAPH-F9B8
+F9B9;ID;CJK COMPATIBILITY IDEOGRAPH-F9B9
+F9BA;ID;CJK COMPATIBILITY IDEOGRAPH-F9BA
+F9BB;ID;CJK COMPATIBILITY IDEOGRAPH-F9BB
+F9BC;ID;CJK COMPATIBILITY IDEOGRAPH-F9BC
+F9BD;ID;CJK COMPATIBILITY IDEOGRAPH-F9BD
+F9BE;ID;CJK COMPATIBILITY IDEOGRAPH-F9BE
+F9BF;ID;CJK COMPATIBILITY IDEOGRAPH-F9BF
+F9C0;ID;CJK COMPATIBILITY IDEOGRAPH-F9C0
+F9C1;ID;CJK COMPATIBILITY IDEOGRAPH-F9C1
+F9C2;ID;CJK COMPATIBILITY IDEOGRAPH-F9C2
+F9C3;ID;CJK COMPATIBILITY IDEOGRAPH-F9C3
+F9C4;ID;CJK COMPATIBILITY IDEOGRAPH-F9C4
+F9C5;ID;CJK COMPATIBILITY IDEOGRAPH-F9C5
+F9C6;ID;CJK COMPATIBILITY IDEOGRAPH-F9C6
+F9C7;ID;CJK COMPATIBILITY IDEOGRAPH-F9C7
+F9C8;ID;CJK COMPATIBILITY IDEOGRAPH-F9C8
+F9C9;ID;CJK COMPATIBILITY IDEOGRAPH-F9C9
+F9CA;ID;CJK COMPATIBILITY IDEOGRAPH-F9CA
+F9CB;ID;CJK COMPATIBILITY IDEOGRAPH-F9CB
+F9CC;ID;CJK COMPATIBILITY IDEOGRAPH-F9CC
+F9CD;ID;CJK COMPATIBILITY IDEOGRAPH-F9CD
+F9CE;ID;CJK COMPATIBILITY IDEOGRAPH-F9CE
+F9CF;ID;CJK COMPATIBILITY IDEOGRAPH-F9CF
+F9D0;ID;CJK COMPATIBILITY IDEOGRAPH-F9D0
+F9D1;ID;CJK COMPATIBILITY IDEOGRAPH-F9D1
+F9D2;ID;CJK COMPATIBILITY IDEOGRAPH-F9D2
+F9D3;ID;CJK COMPATIBILITY IDEOGRAPH-F9D3
+F9D4;ID;CJK COMPATIBILITY IDEOGRAPH-F9D4
+F9D5;ID;CJK COMPATIBILITY IDEOGRAPH-F9D5
+F9D6;ID;CJK COMPATIBILITY IDEOGRAPH-F9D6
+F9D7;ID;CJK COMPATIBILITY IDEOGRAPH-F9D7
+F9D8;ID;CJK COMPATIBILITY IDEOGRAPH-F9D8
+F9D9;ID;CJK COMPATIBILITY IDEOGRAPH-F9D9
+F9DA;ID;CJK COMPATIBILITY IDEOGRAPH-F9DA
+F9DB;ID;CJK COMPATIBILITY IDEOGRAPH-F9DB
+F9DC;ID;CJK COMPATIBILITY IDEOGRAPH-F9DC
+F9DD;ID;CJK COMPATIBILITY IDEOGRAPH-F9DD
+F9DE;ID;CJK COMPATIBILITY IDEOGRAPH-F9DE
+F9DF;ID;CJK COMPATIBILITY IDEOGRAPH-F9DF
+F9E0;ID;CJK COMPATIBILITY IDEOGRAPH-F9E0
+F9E1;ID;CJK COMPATIBILITY IDEOGRAPH-F9E1
+F9E2;ID;CJK COMPATIBILITY IDEOGRAPH-F9E2
+F9E3;ID;CJK COMPATIBILITY IDEOGRAPH-F9E3
+F9E4;ID;CJK COMPATIBILITY IDEOGRAPH-F9E4
+F9E5;ID;CJK COMPATIBILITY IDEOGRAPH-F9E5
+F9E6;ID;CJK COMPATIBILITY IDEOGRAPH-F9E6
+F9E7;ID;CJK COMPATIBILITY IDEOGRAPH-F9E7
+F9E8;ID;CJK COMPATIBILITY IDEOGRAPH-F9E8
+F9E9;ID;CJK COMPATIBILITY IDEOGRAPH-F9E9
+F9EA;ID;CJK COMPATIBILITY IDEOGRAPH-F9EA
+F9EB;ID;CJK COMPATIBILITY IDEOGRAPH-F9EB
+F9EC;ID;CJK COMPATIBILITY IDEOGRAPH-F9EC
+F9ED;ID;CJK COMPATIBILITY IDEOGRAPH-F9ED
+F9EE;ID;CJK COMPATIBILITY IDEOGRAPH-F9EE
+F9EF;ID;CJK COMPATIBILITY IDEOGRAPH-F9EF
+F9F0;ID;CJK COMPATIBILITY IDEOGRAPH-F9F0
+F9F1;ID;CJK COMPATIBILITY IDEOGRAPH-F9F1
+F9F2;ID;CJK COMPATIBILITY IDEOGRAPH-F9F2
+F9F3;ID;CJK COMPATIBILITY IDEOGRAPH-F9F3
+F9F4;ID;CJK COMPATIBILITY IDEOGRAPH-F9F4
+F9F5;ID;CJK COMPATIBILITY IDEOGRAPH-F9F5
+F9F6;ID;CJK COMPATIBILITY IDEOGRAPH-F9F6
+F9F7;ID;CJK COMPATIBILITY IDEOGRAPH-F9F7
+F9F8;ID;CJK COMPATIBILITY IDEOGRAPH-F9F8
+F9F9;ID;CJK COMPATIBILITY IDEOGRAPH-F9F9
+F9FA;ID;CJK COMPATIBILITY IDEOGRAPH-F9FA
+F9FB;ID;CJK COMPATIBILITY IDEOGRAPH-F9FB
+F9FC;ID;CJK COMPATIBILITY IDEOGRAPH-F9FC
+F9FD;ID;CJK COMPATIBILITY IDEOGRAPH-F9FD
+F9FE;ID;CJK COMPATIBILITY IDEOGRAPH-F9FE
+F9FF;ID;CJK COMPATIBILITY IDEOGRAPH-F9FF
+FA00;ID;CJK COMPATIBILITY IDEOGRAPH-FA00
+FA01;ID;CJK COMPATIBILITY IDEOGRAPH-FA01
+FA02;ID;CJK COMPATIBILITY IDEOGRAPH-FA02
+FA03;ID;CJK COMPATIBILITY IDEOGRAPH-FA03
+FA04;ID;CJK COMPATIBILITY IDEOGRAPH-FA04
+FA05;ID;CJK COMPATIBILITY IDEOGRAPH-FA05
+FA06;ID;CJK COMPATIBILITY IDEOGRAPH-FA06
+FA07;ID;CJK COMPATIBILITY IDEOGRAPH-FA07
+FA08;ID;CJK COMPATIBILITY IDEOGRAPH-FA08
+FA09;ID;CJK COMPATIBILITY IDEOGRAPH-FA09
+FA0A;ID;CJK COMPATIBILITY IDEOGRAPH-FA0A
+FA0B;ID;CJK COMPATIBILITY IDEOGRAPH-FA0B
+FA0C;ID;CJK COMPATIBILITY IDEOGRAPH-FA0C
+FA0D;ID;CJK COMPATIBILITY IDEOGRAPH-FA0D
+FA0E;ID;CJK COMPATIBILITY IDEOGRAPH-FA0E
+FA0F;ID;CJK COMPATIBILITY IDEOGRAPH-FA0F
+FA10;ID;CJK COMPATIBILITY IDEOGRAPH-FA10
+FA11;ID;CJK COMPATIBILITY IDEOGRAPH-FA11
+FA12;ID;CJK COMPATIBILITY IDEOGRAPH-FA12
+FA13;ID;CJK COMPATIBILITY IDEOGRAPH-FA13
+FA14;ID;CJK COMPATIBILITY IDEOGRAPH-FA14
+FA15;ID;CJK COMPATIBILITY IDEOGRAPH-FA15
+FA16;ID;CJK COMPATIBILITY IDEOGRAPH-FA16
+FA17;ID;CJK COMPATIBILITY IDEOGRAPH-FA17
+FA18;ID;CJK COMPATIBILITY IDEOGRAPH-FA18
+FA19;ID;CJK COMPATIBILITY IDEOGRAPH-FA19
+FA1A;ID;CJK COMPATIBILITY IDEOGRAPH-FA1A
+FA1B;ID;CJK COMPATIBILITY IDEOGRAPH-FA1B
+FA1C;ID;CJK COMPATIBILITY IDEOGRAPH-FA1C
+FA1D;ID;CJK COMPATIBILITY IDEOGRAPH-FA1D
+FA1E;ID;CJK COMPATIBILITY IDEOGRAPH-FA1E
+FA1F;ID;CJK COMPATIBILITY IDEOGRAPH-FA1F
+FA20;ID;CJK COMPATIBILITY IDEOGRAPH-FA20
+FA21;ID;CJK COMPATIBILITY IDEOGRAPH-FA21
+FA22;ID;CJK COMPATIBILITY IDEOGRAPH-FA22
+FA23;ID;CJK COMPATIBILITY IDEOGRAPH-FA23
+FA24;ID;CJK COMPATIBILITY IDEOGRAPH-FA24
+FA25;ID;CJK COMPATIBILITY IDEOGRAPH-FA25
+FA26;ID;CJK COMPATIBILITY IDEOGRAPH-FA26
+FA27;ID;CJK COMPATIBILITY IDEOGRAPH-FA27
+FA28;ID;CJK COMPATIBILITY IDEOGRAPH-FA28
+FA29;ID;CJK COMPATIBILITY IDEOGRAPH-FA29
+FA2A;ID;CJK COMPATIBILITY IDEOGRAPH-FA2A
+FA2B;ID;CJK COMPATIBILITY IDEOGRAPH-FA2B
+FA2C;ID;CJK COMPATIBILITY IDEOGRAPH-FA2C
+FA2D;ID;CJK COMPATIBILITY IDEOGRAPH-FA2D
+FB00;AL;LATIN SMALL LIGATURE FF
+FB01;AL;LATIN SMALL LIGATURE FI
+FB02;AL;LATIN SMALL LIGATURE FL
+FB03;AL;LATIN SMALL LIGATURE FFI
+FB04;AL;LATIN SMALL LIGATURE FFL
+FB05;AL;LATIN SMALL LIGATURE LONG S T
+FB06;AL;LATIN SMALL LIGATURE ST
+FB13;AL;ARMENIAN SMALL LIGATURE MEN NOW
+FB14;AL;ARMENIAN SMALL LIGATURE MEN ECH
+FB15;AL;ARMENIAN SMALL LIGATURE MEN INI
+FB16;AL;ARMENIAN SMALL LIGATURE VEW NOW
+FB17;AL;ARMENIAN SMALL LIGATURE MEN XEH
+FB1D;AL;HEBREW LETTER YOD WITH HIRIQ
+FB1E;CM;HEBREW POINT JUDEO-SPANISH VARIKA
+FB1F;AL;HEBREW LIGATURE YIDDISH YOD YOD PATAH
+FB20;AL;HEBREW LETTER ALTERNATIVE AYIN
+FB21;AL;HEBREW LETTER WIDE ALEF
+FB22;AL;HEBREW LETTER WIDE DALET
+FB23;AL;HEBREW LETTER WIDE HE
+FB24;AL;HEBREW LETTER WIDE KAF
+FB25;AL;HEBREW LETTER WIDE LAMED
+FB26;AL;HEBREW LETTER WIDE FINAL MEM
+FB27;AL;HEBREW LETTER WIDE RESH
+FB28;AL;HEBREW LETTER WIDE TAV
+FB29;AL;HEBREW LETTER ALTERNATIVE PLUS SIGN
+FB2A;AL;HEBREW LETTER SHIN WITH SHIN DOT
+FB2B;AL;HEBREW LETTER SHIN WITH SIN DOT
+FB2C;AL;HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT
+FB2D;AL;HEBREW LETTER SHIN WITH DAGESH AND SIN DOT
+FB2E;AL;HEBREW LETTER ALEF WITH PATAH
+FB2F;AL;HEBREW LETTER ALEF WITH QAMATS
+FB30;AL;HEBREW LETTER ALEF WITH MAPIQ
+FB31;AL;HEBREW LETTER BET WITH DAGESH
+FB32;AL;HEBREW LETTER GIMEL WITH DAGESH
+FB33;AL;HEBREW LETTER DALET WITH DAGESH
+FB34;AL;HEBREW LETTER HE WITH MAPIQ
+FB35;AL;HEBREW LETTER VAV WITH DAGESH
+FB36;AL;HEBREW LETTER ZAYIN WITH DAGESH
+FB38;AL;HEBREW LETTER TET WITH DAGESH
+FB39;AL;HEBREW LETTER YOD WITH DAGESH
+FB3A;AL;HEBREW LETTER FINAL KAF WITH DAGESH
+FB3B;AL;HEBREW LETTER KAF WITH DAGESH
+FB3C;AL;HEBREW LETTER LAMED WITH DAGESH
+FB3E;AL;HEBREW LETTER MEM WITH DAGESH
+FB40;AL;HEBREW LETTER NUN WITH DAGESH
+FB41;AL;HEBREW LETTER SAMEKH WITH DAGESH
+FB43;AL;HEBREW LETTER FINAL PE WITH DAGESH
+FB44;AL;HEBREW LETTER PE WITH DAGESH
+FB46;AL;HEBREW LETTER TSADI WITH DAGESH
+FB47;AL;HEBREW LETTER QOF WITH DAGESH
+FB48;AL;HEBREW LETTER RESH WITH DAGESH
+FB49;AL;HEBREW LETTER SHIN WITH DAGESH
+FB4A;AL;HEBREW LETTER TAV WITH DAGESH
+FB4B;AL;HEBREW LETTER VAV WITH HOLAM
+FB4C;AL;HEBREW LETTER BET WITH RAFE
+FB4D;AL;HEBREW LETTER KAF WITH RAFE
+FB4E;AL;HEBREW LETTER PE WITH RAFE
+FB4F;AL;HEBREW LIGATURE ALEF LAMED
+FB50;AL;ARABIC LETTER ALEF WASLA ISOLATED FORM
+FB51;AL;ARABIC LETTER ALEF WASLA FINAL FORM
+FB52;AL;ARABIC LETTER BEEH ISOLATED FORM
+FB53;AL;ARABIC LETTER BEEH FINAL FORM
+FB54;AL;ARABIC LETTER BEEH INITIAL FORM
+FB55;AL;ARABIC LETTER BEEH MEDIAL FORM
+FB56;AL;ARABIC LETTER PEH ISOLATED FORM
+FB57;AL;ARABIC LETTER PEH FINAL FORM
+FB58;AL;ARABIC LETTER PEH INITIAL FORM
+FB59;AL;ARABIC LETTER PEH MEDIAL FORM
+FB5A;AL;ARABIC LETTER BEHEH ISOLATED FORM
+FB5B;AL;ARABIC LETTER BEHEH FINAL FORM
+FB5C;AL;ARABIC LETTER BEHEH INITIAL FORM
+FB5D;AL;ARABIC LETTER BEHEH MEDIAL FORM
+FB5E;AL;ARABIC LETTER TTEHEH ISOLATED FORM
+FB5F;AL;ARABIC LETTER TTEHEH FINAL FORM
+FB60;AL;ARABIC LETTER TTEHEH INITIAL FORM
+FB61;AL;ARABIC LETTER TTEHEH MEDIAL FORM
+FB62;AL;ARABIC LETTER TEHEH ISOLATED FORM
+FB63;AL;ARABIC LETTER TEHEH FINAL FORM
+FB64;AL;ARABIC LETTER TEHEH INITIAL FORM
+FB65;AL;ARABIC LETTER TEHEH MEDIAL FORM
+FB66;AL;ARABIC LETTER TTEH ISOLATED FORM
+FB67;AL;ARABIC LETTER TTEH FINAL FORM
+FB68;AL;ARABIC LETTER TTEH INITIAL FORM
+FB69;AL;ARABIC LETTER TTEH MEDIAL FORM
+FB6A;AL;ARABIC LETTER VEH ISOLATED FORM
+FB6B;AL;ARABIC LETTER VEH FINAL FORM
+FB6C;AL;ARABIC LETTER VEH INITIAL FORM
+FB6D;AL;ARABIC LETTER VEH MEDIAL FORM
+FB6E;AL;ARABIC LETTER PEHEH ISOLATED FORM
+FB6F;AL;ARABIC LETTER PEHEH FINAL FORM
+FB70;AL;ARABIC LETTER PEHEH INITIAL FORM
+FB71;AL;ARABIC LETTER PEHEH MEDIAL FORM
+FB72;AL;ARABIC LETTER DYEH ISOLATED FORM
+FB73;AL;ARABIC LETTER DYEH FINAL FORM
+FB74;AL;ARABIC LETTER DYEH INITIAL FORM
+FB75;AL;ARABIC LETTER DYEH MEDIAL FORM
+FB76;AL;ARABIC LETTER NYEH ISOLATED FORM
+FB77;AL;ARABIC LETTER NYEH FINAL FORM
+FB78;AL;ARABIC LETTER NYEH INITIAL FORM
+FB79;AL;ARABIC LETTER NYEH MEDIAL FORM
+FB7A;AL;ARABIC LETTER TCHEH ISOLATED FORM
+FB7B;AL;ARABIC LETTER TCHEH FINAL FORM
+FB7C;AL;ARABIC LETTER TCHEH INITIAL FORM
+FB7D;AL;ARABIC LETTER TCHEH MEDIAL FORM
+FB7E;AL;ARABIC LETTER TCHEHEH ISOLATED FORM
+FB7F;AL;ARABIC LETTER TCHEHEH FINAL FORM
+FB80;AL;ARABIC LETTER TCHEHEH INITIAL FORM
+FB81;AL;ARABIC LETTER TCHEHEH MEDIAL FORM
+FB82;AL;ARABIC LETTER DDAHAL ISOLATED FORM
+FB83;AL;ARABIC LETTER DDAHAL FINAL FORM
+FB84;AL;ARABIC LETTER DAHAL ISOLATED FORM
+FB85;AL;ARABIC LETTER DAHAL FINAL FORM
+FB86;AL;ARABIC LETTER DUL ISOLATED FORM
+FB87;AL;ARABIC LETTER DUL FINAL FORM
+FB88;AL;ARABIC LETTER DDAL ISOLATED FORM
+FB89;AL;ARABIC LETTER DDAL FINAL FORM
+FB8A;AL;ARABIC LETTER JEH ISOLATED FORM
+FB8B;AL;ARABIC LETTER JEH FINAL FORM
+FB8C;AL;ARABIC LETTER RREH ISOLATED FORM
+FB8D;AL;ARABIC LETTER RREH FINAL FORM
+FB8E;AL;ARABIC LETTER KEHEH ISOLATED FORM
+FB8F;AL;ARABIC LETTER KEHEH FINAL FORM
+FB90;AL;ARABIC LETTER KEHEH INITIAL FORM
+FB91;AL;ARABIC LETTER KEHEH MEDIAL FORM
+FB92;AL;ARABIC LETTER GAF ISOLATED FORM
+FB93;AL;ARABIC LETTER GAF FINAL FORM
+FB94;AL;ARABIC LETTER GAF INITIAL FORM
+FB95;AL;ARABIC LETTER GAF MEDIAL FORM
+FB96;AL;ARABIC LETTER GUEH ISOLATED FORM
+FB97;AL;ARABIC LETTER GUEH FINAL FORM
+FB98;AL;ARABIC LETTER GUEH INITIAL FORM
+FB99;AL;ARABIC LETTER GUEH MEDIAL FORM
+FB9A;AL;ARABIC LETTER NGOEH ISOLATED FORM
+FB9B;AL;ARABIC LETTER NGOEH FINAL FORM
+FB9C;AL;ARABIC LETTER NGOEH INITIAL FORM
+FB9D;AL;ARABIC LETTER NGOEH MEDIAL FORM
+FB9E;AL;ARABIC LETTER NOON GHUNNA ISOLATED FORM
+FB9F;AL;ARABIC LETTER NOON GHUNNA FINAL FORM
+FBA0;AL;ARABIC LETTER RNOON ISOLATED FORM
+FBA1;AL;ARABIC LETTER RNOON FINAL FORM
+FBA2;AL;ARABIC LETTER RNOON INITIAL FORM
+FBA3;AL;ARABIC LETTER RNOON MEDIAL FORM
+FBA4;AL;ARABIC LETTER HEH WITH YEH ABOVE ISOLATED FORM
+FBA5;AL;ARABIC LETTER HEH WITH YEH ABOVE FINAL FORM
+FBA6;AL;ARABIC LETTER HEH GOAL ISOLATED FORM
+FBA7;AL;ARABIC LETTER HEH GOAL FINAL FORM
+FBA8;AL;ARABIC LETTER HEH GOAL INITIAL FORM
+FBA9;AL;ARABIC LETTER HEH GOAL MEDIAL FORM
+FBAA;AL;ARABIC LETTER HEH DOACHASHMEE ISOLATED FORM
+FBAB;AL;ARABIC LETTER HEH DOACHASHMEE FINAL FORM
+FBAC;AL;ARABIC LETTER HEH DOACHASHMEE INITIAL FORM
+FBAD;AL;ARABIC LETTER HEH DOACHASHMEE MEDIAL FORM
+FBAE;AL;ARABIC LETTER YEH BARREE ISOLATED FORM
+FBAF;AL;ARABIC LETTER YEH BARREE FINAL FORM
+FBB0;AL;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM
+FBB1;AL;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM
+FBD3;AL;ARABIC LETTER NG ISOLATED FORM
+FBD4;AL;ARABIC LETTER NG FINAL FORM
+FBD5;AL;ARABIC LETTER NG INITIAL FORM
+FBD6;AL;ARABIC LETTER NG MEDIAL FORM
+FBD7;AL;ARABIC LETTER U ISOLATED FORM
+FBD8;AL;ARABIC LETTER U FINAL FORM
+FBD9;AL;ARABIC LETTER OE ISOLATED FORM
+FBDA;AL;ARABIC LETTER OE FINAL FORM
+FBDB;AL;ARABIC LETTER YU ISOLATED FORM
+FBDC;AL;ARABIC LETTER YU FINAL FORM
+FBDD;AL;ARABIC LETTER U WITH HAMZA ABOVE ISOLATED FORM
+FBDE;AL;ARABIC LETTER VE ISOLATED FORM
+FBDF;AL;ARABIC LETTER VE FINAL FORM
+FBE0;AL;ARABIC LETTER KIRGHIZ OE ISOLATED FORM
+FBE1;AL;ARABIC LETTER KIRGHIZ OE FINAL FORM
+FBE2;AL;ARABIC LETTER KIRGHIZ YU ISOLATED FORM
+FBE3;AL;ARABIC LETTER KIRGHIZ YU FINAL FORM
+FBE4;AL;ARABIC LETTER E ISOLATED FORM
+FBE5;AL;ARABIC LETTER E FINAL FORM
+FBE6;AL;ARABIC LETTER E INITIAL FORM
+FBE7;AL;ARABIC LETTER E MEDIAL FORM
+FBE8;AL;ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA INITIAL FORM
+FBE9;AL;ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA MEDIAL FORM
+FBEA;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF ISOLATED FORM
+FBEB;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF FINAL FORM
+FBEC;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE ISOLATED FORM
+FBED;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE FINAL FORM
+FBEE;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW ISOLATED FORM
+FBEF;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW FINAL FORM
+FBF0;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U ISOLATED FORM
+FBF1;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U FINAL FORM
+FBF2;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE ISOLATED FORM
+FBF3;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE FINAL FORM
+FBF4;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU ISOLATED FORM
+FBF5;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU FINAL FORM
+FBF6;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E ISOLATED FORM
+FBF7;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E FINAL FORM
+FBF8;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E INITIAL FORM
+FBF9;AL;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM
+FBFA;AL;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM
+FBFB;AL;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA INITIAL FORM
+FBFC;AL;ARABIC LETTER FARSI YEH ISOLATED FORM
+FBFD;AL;ARABIC LETTER FARSI YEH FINAL FORM
+FBFE;AL;ARABIC LETTER FARSI YEH INITIAL FORM
+FBFF;AL;ARABIC LETTER FARSI YEH MEDIAL FORM
+FC00;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM ISOLATED FORM
+FC01;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH ISOLATED FORM
+FC02;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM ISOLATED FORM
+FC03;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM
+FC04;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH ISOLATED FORM
+FC05;AL;ARABIC LIGATURE BEH WITH JEEM ISOLATED FORM
+FC06;AL;ARABIC LIGATURE BEH WITH HAH ISOLATED FORM
+FC07;AL;ARABIC LIGATURE BEH WITH KHAH ISOLATED FORM
+FC08;AL;ARABIC LIGATURE BEH WITH MEEM ISOLATED FORM
+FC09;AL;ARABIC LIGATURE BEH WITH ALEF MAKSURA ISOLATED FORM
+FC0A;AL;ARABIC LIGATURE BEH WITH YEH ISOLATED FORM
+FC0B;AL;ARABIC LIGATURE TEH WITH JEEM ISOLATED FORM
+FC0C;AL;ARABIC LIGATURE TEH WITH HAH ISOLATED FORM
+FC0D;AL;ARABIC LIGATURE TEH WITH KHAH ISOLATED FORM
+FC0E;AL;ARABIC LIGATURE TEH WITH MEEM ISOLATED FORM
+FC0F;AL;ARABIC LIGATURE TEH WITH ALEF MAKSURA ISOLATED FORM
+FC10;AL;ARABIC LIGATURE TEH WITH YEH ISOLATED FORM
+FC11;AL;ARABIC LIGATURE THEH WITH JEEM ISOLATED FORM
+FC12;AL;ARABIC LIGATURE THEH WITH MEEM ISOLATED FORM
+FC13;AL;ARABIC LIGATURE THEH WITH ALEF MAKSURA ISOLATED FORM
+FC14;AL;ARABIC LIGATURE THEH WITH YEH ISOLATED FORM
+FC15;AL;ARABIC LIGATURE JEEM WITH HAH ISOLATED FORM
+FC16;AL;ARABIC LIGATURE JEEM WITH MEEM ISOLATED FORM
+FC17;AL;ARABIC LIGATURE HAH WITH JEEM ISOLATED FORM
+FC18;AL;ARABIC LIGATURE HAH WITH MEEM ISOLATED FORM
+FC19;AL;ARABIC LIGATURE KHAH WITH JEEM ISOLATED FORM
+FC1A;AL;ARABIC LIGATURE KHAH WITH HAH ISOLATED FORM
+FC1B;AL;ARABIC LIGATURE KHAH WITH MEEM ISOLATED FORM
+FC1C;AL;ARABIC LIGATURE SEEN WITH JEEM ISOLATED FORM
+FC1D;AL;ARABIC LIGATURE SEEN WITH HAH ISOLATED FORM
+FC1E;AL;ARABIC LIGATURE SEEN WITH KHAH ISOLATED FORM
+FC1F;AL;ARABIC LIGATURE SEEN WITH MEEM ISOLATED FORM
+FC20;AL;ARABIC LIGATURE SAD WITH HAH ISOLATED FORM
+FC21;AL;ARABIC LIGATURE SAD WITH MEEM ISOLATED FORM
+FC22;AL;ARABIC LIGATURE DAD WITH JEEM ISOLATED FORM
+FC23;AL;ARABIC LIGATURE DAD WITH HAH ISOLATED FORM
+FC24;AL;ARABIC LIGATURE DAD WITH KHAH ISOLATED FORM
+FC25;AL;ARABIC LIGATURE DAD WITH MEEM ISOLATED FORM
+FC26;AL;ARABIC LIGATURE TAH WITH HAH ISOLATED FORM
+FC27;AL;ARABIC LIGATURE TAH WITH MEEM ISOLATED FORM
+FC28;AL;ARABIC LIGATURE ZAH WITH MEEM ISOLATED FORM
+FC29;AL;ARABIC LIGATURE AIN WITH JEEM ISOLATED FORM
+FC2A;AL;ARABIC LIGATURE AIN WITH MEEM ISOLATED FORM
+FC2B;AL;ARABIC LIGATURE GHAIN WITH JEEM ISOLATED FORM
+FC2C;AL;ARABIC LIGATURE GHAIN WITH MEEM ISOLATED FORM
+FC2D;AL;ARABIC LIGATURE FEH WITH JEEM ISOLATED FORM
+FC2E;AL;ARABIC LIGATURE FEH WITH HAH ISOLATED FORM
+FC2F;AL;ARABIC LIGATURE FEH WITH KHAH ISOLATED FORM
+FC30;AL;ARABIC LIGATURE FEH WITH MEEM ISOLATED FORM
+FC31;AL;ARABIC LIGATURE FEH WITH ALEF MAKSURA ISOLATED FORM
+FC32;AL;ARABIC LIGATURE FEH WITH YEH ISOLATED FORM
+FC33;AL;ARABIC LIGATURE QAF WITH HAH ISOLATED FORM
+FC34;AL;ARABIC LIGATURE QAF WITH MEEM ISOLATED FORM
+FC35;AL;ARABIC LIGATURE QAF WITH ALEF MAKSURA ISOLATED FORM
+FC36;AL;ARABIC LIGATURE QAF WITH YEH ISOLATED FORM
+FC37;AL;ARABIC LIGATURE KAF WITH ALEF ISOLATED FORM
+FC38;AL;ARABIC LIGATURE KAF WITH JEEM ISOLATED FORM
+FC39;AL;ARABIC LIGATURE KAF WITH HAH ISOLATED FORM
+FC3A;AL;ARABIC LIGATURE KAF WITH KHAH ISOLATED FORM
+FC3B;AL;ARABIC LIGATURE KAF WITH LAM ISOLATED FORM
+FC3C;AL;ARABIC LIGATURE KAF WITH MEEM ISOLATED FORM
+FC3D;AL;ARABIC LIGATURE KAF WITH ALEF MAKSURA ISOLATED FORM
+FC3E;AL;ARABIC LIGATURE KAF WITH YEH ISOLATED FORM
+FC3F;AL;ARABIC LIGATURE LAM WITH JEEM ISOLATED FORM
+FC40;AL;ARABIC LIGATURE LAM WITH HAH ISOLATED FORM
+FC41;AL;ARABIC LIGATURE LAM WITH KHAH ISOLATED FORM
+FC42;AL;ARABIC LIGATURE LAM WITH MEEM ISOLATED FORM
+FC43;AL;ARABIC LIGATURE LAM WITH ALEF MAKSURA ISOLATED FORM
+FC44;AL;ARABIC LIGATURE LAM WITH YEH ISOLATED FORM
+FC45;AL;ARABIC LIGATURE MEEM WITH JEEM ISOLATED FORM
+FC46;AL;ARABIC LIGATURE MEEM WITH HAH ISOLATED FORM
+FC47;AL;ARABIC LIGATURE MEEM WITH KHAH ISOLATED FORM
+FC48;AL;ARABIC LIGATURE MEEM WITH MEEM ISOLATED FORM
+FC49;AL;ARABIC LIGATURE MEEM WITH ALEF MAKSURA ISOLATED FORM
+FC4A;AL;ARABIC LIGATURE MEEM WITH YEH ISOLATED FORM
+FC4B;AL;ARABIC LIGATURE NOON WITH JEEM ISOLATED FORM
+FC4C;AL;ARABIC LIGATURE NOON WITH HAH ISOLATED FORM
+FC4D;AL;ARABIC LIGATURE NOON WITH KHAH ISOLATED FORM
+FC4E;AL;ARABIC LIGATURE NOON WITH MEEM ISOLATED FORM
+FC4F;AL;ARABIC LIGATURE NOON WITH ALEF MAKSURA ISOLATED FORM
+FC50;AL;ARABIC LIGATURE NOON WITH YEH ISOLATED FORM
+FC51;AL;ARABIC LIGATURE HEH WITH JEEM ISOLATED FORM
+FC52;AL;ARABIC LIGATURE HEH WITH MEEM ISOLATED FORM
+FC53;AL;ARABIC LIGATURE HEH WITH ALEF MAKSURA ISOLATED FORM
+FC54;AL;ARABIC LIGATURE HEH WITH YEH ISOLATED FORM
+FC55;AL;ARABIC LIGATURE YEH WITH JEEM ISOLATED FORM
+FC56;AL;ARABIC LIGATURE YEH WITH HAH ISOLATED FORM
+FC57;AL;ARABIC LIGATURE YEH WITH KHAH ISOLATED FORM
+FC58;AL;ARABIC LIGATURE YEH WITH MEEM ISOLATED FORM
+FC59;AL;ARABIC LIGATURE YEH WITH ALEF MAKSURA ISOLATED FORM
+FC5A;AL;ARABIC LIGATURE YEH WITH YEH ISOLATED FORM
+FC5B;AL;ARABIC LIGATURE THAL WITH SUPERSCRIPT ALEF ISOLATED FORM
+FC5C;AL;ARABIC LIGATURE REH WITH SUPERSCRIPT ALEF ISOLATED FORM
+FC5D;AL;ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF ISOLATED FORM
+FC5E;AL;ARABIC LIGATURE SHADDA WITH DAMMATAN ISOLATED FORM
+FC5F;AL;ARABIC LIGATURE SHADDA WITH KASRATAN ISOLATED FORM
+FC60;AL;ARABIC LIGATURE SHADDA WITH FATHA ISOLATED FORM
+FC61;AL;ARABIC LIGATURE SHADDA WITH DAMMA ISOLATED FORM
+FC62;AL;ARABIC LIGATURE SHADDA WITH KASRA ISOLATED FORM
+FC63;AL;ARABIC LIGATURE SHADDA WITH SUPERSCRIPT ALEF ISOLATED FORM
+FC64;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH REH FINAL FORM
+FC65;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ZAIN FINAL FORM
+FC66;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM FINAL FORM
+FC67;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH NOON FINAL FORM
+FC68;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM
+FC69;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH FINAL FORM
+FC6A;AL;ARABIC LIGATURE BEH WITH REH FINAL FORM
+FC6B;AL;ARABIC LIGATURE BEH WITH ZAIN FINAL FORM
+FC6C;AL;ARABIC LIGATURE BEH WITH MEEM FINAL FORM
+FC6D;AL;ARABIC LIGATURE BEH WITH NOON FINAL FORM
+FC6E;AL;ARABIC LIGATURE BEH WITH ALEF MAKSURA FINAL FORM
+FC6F;AL;ARABIC LIGATURE BEH WITH YEH FINAL FORM
+FC70;AL;ARABIC LIGATURE TEH WITH REH FINAL FORM
+FC71;AL;ARABIC LIGATURE TEH WITH ZAIN FINAL FORM
+FC72;AL;ARABIC LIGATURE TEH WITH MEEM FINAL FORM
+FC73;AL;ARABIC LIGATURE TEH WITH NOON FINAL FORM
+FC74;AL;ARABIC LIGATURE TEH WITH ALEF MAKSURA FINAL FORM
+FC75;AL;ARABIC LIGATURE TEH WITH YEH FINAL FORM
+FC76;AL;ARABIC LIGATURE THEH WITH REH FINAL FORM
+FC77;AL;ARABIC LIGATURE THEH WITH ZAIN FINAL FORM
+FC78;AL;ARABIC LIGATURE THEH WITH MEEM FINAL FORM
+FC79;AL;ARABIC LIGATURE THEH WITH NOON FINAL FORM
+FC7A;AL;ARABIC LIGATURE THEH WITH ALEF MAKSURA FINAL FORM
+FC7B;AL;ARABIC LIGATURE THEH WITH YEH FINAL FORM
+FC7C;AL;ARABIC LIGATURE FEH WITH ALEF MAKSURA FINAL FORM
+FC7D;AL;ARABIC LIGATURE FEH WITH YEH FINAL FORM
+FC7E;AL;ARABIC LIGATURE QAF WITH ALEF MAKSURA FINAL FORM
+FC7F;AL;ARABIC LIGATURE QAF WITH YEH FINAL FORM
+FC80;AL;ARABIC LIGATURE KAF WITH ALEF FINAL FORM
+FC81;AL;ARABIC LIGATURE KAF WITH LAM FINAL FORM
+FC82;AL;ARABIC LIGATURE KAF WITH MEEM FINAL FORM
+FC83;AL;ARABIC LIGATURE KAF WITH ALEF MAKSURA FINAL FORM
+FC84;AL;ARABIC LIGATURE KAF WITH YEH FINAL FORM
+FC85;AL;ARABIC LIGATURE LAM WITH MEEM FINAL FORM
+FC86;AL;ARABIC LIGATURE LAM WITH ALEF MAKSURA FINAL FORM
+FC87;AL;ARABIC LIGATURE LAM WITH YEH FINAL FORM
+FC88;AL;ARABIC LIGATURE MEEM WITH ALEF FINAL FORM
+FC89;AL;ARABIC LIGATURE MEEM WITH MEEM FINAL FORM
+FC8A;AL;ARABIC LIGATURE NOON WITH REH FINAL FORM
+FC8B;AL;ARABIC LIGATURE NOON WITH ZAIN FINAL FORM
+FC8C;AL;ARABIC LIGATURE NOON WITH MEEM FINAL FORM
+FC8D;AL;ARABIC LIGATURE NOON WITH NOON FINAL FORM
+FC8E;AL;ARABIC LIGATURE NOON WITH ALEF MAKSURA FINAL FORM
+FC8F;AL;ARABIC LIGATURE NOON WITH YEH FINAL FORM
+FC90;AL;ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF FINAL FORM
+FC91;AL;ARABIC LIGATURE YEH WITH REH FINAL FORM
+FC92;AL;ARABIC LIGATURE YEH WITH ZAIN FINAL FORM
+FC93;AL;ARABIC LIGATURE YEH WITH MEEM FINAL FORM
+FC94;AL;ARABIC LIGATURE YEH WITH NOON FINAL FORM
+FC95;AL;ARABIC LIGATURE YEH WITH ALEF MAKSURA FINAL FORM
+FC96;AL;ARABIC LIGATURE YEH WITH YEH FINAL FORM
+FC97;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM INITIAL FORM
+FC98;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH INITIAL FORM
+FC99;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH KHAH INITIAL FORM
+FC9A;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM INITIAL FORM
+FC9B;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH INITIAL FORM
+FC9C;AL;ARABIC LIGATURE BEH WITH JEEM INITIAL FORM
+FC9D;AL;ARABIC LIGATURE BEH WITH HAH INITIAL FORM
+FC9E;AL;ARABIC LIGATURE BEH WITH KHAH INITIAL FORM
+FC9F;AL;ARABIC LIGATURE BEH WITH MEEM INITIAL FORM
+FCA0;AL;ARABIC LIGATURE BEH WITH HEH INITIAL FORM
+FCA1;AL;ARABIC LIGATURE TEH WITH JEEM INITIAL FORM
+FCA2;AL;ARABIC LIGATURE TEH WITH HAH INITIAL FORM
+FCA3;AL;ARABIC LIGATURE TEH WITH KHAH INITIAL FORM
+FCA4;AL;ARABIC LIGATURE TEH WITH MEEM INITIAL FORM
+FCA5;AL;ARABIC LIGATURE TEH WITH HEH INITIAL FORM
+FCA6;AL;ARABIC LIGATURE THEH WITH MEEM INITIAL FORM
+FCA7;AL;ARABIC LIGATURE JEEM WITH HAH INITIAL FORM
+FCA8;AL;ARABIC LIGATURE JEEM WITH MEEM INITIAL FORM
+FCA9;AL;ARABIC LIGATURE HAH WITH JEEM INITIAL FORM
+FCAA;AL;ARABIC LIGATURE HAH WITH MEEM INITIAL FORM
+FCAB;AL;ARABIC LIGATURE KHAH WITH JEEM INITIAL FORM
+FCAC;AL;ARABIC LIGATURE KHAH WITH MEEM INITIAL FORM
+FCAD;AL;ARABIC LIGATURE SEEN WITH JEEM INITIAL FORM
+FCAE;AL;ARABIC LIGATURE SEEN WITH HAH INITIAL FORM
+FCAF;AL;ARABIC LIGATURE SEEN WITH KHAH INITIAL FORM
+FCB0;AL;ARABIC LIGATURE SEEN WITH MEEM INITIAL FORM
+FCB1;AL;ARABIC LIGATURE SAD WITH HAH INITIAL FORM
+FCB2;AL;ARABIC LIGATURE SAD WITH KHAH INITIAL FORM
+FCB3;AL;ARABIC LIGATURE SAD WITH MEEM INITIAL FORM
+FCB4;AL;ARABIC LIGATURE DAD WITH JEEM INITIAL FORM
+FCB5;AL;ARABIC LIGATURE DAD WITH HAH INITIAL FORM
+FCB6;AL;ARABIC LIGATURE DAD WITH KHAH INITIAL FORM
+FCB7;AL;ARABIC LIGATURE DAD WITH MEEM INITIAL FORM
+FCB8;AL;ARABIC LIGATURE TAH WITH HAH INITIAL FORM
+FCB9;AL;ARABIC LIGATURE ZAH WITH MEEM INITIAL FORM
+FCBA;AL;ARABIC LIGATURE AIN WITH JEEM INITIAL FORM
+FCBB;AL;ARABIC LIGATURE AIN WITH MEEM INITIAL FORM
+FCBC;AL;ARABIC LIGATURE GHAIN WITH JEEM INITIAL FORM
+FCBD;AL;ARABIC LIGATURE GHAIN WITH MEEM INITIAL FORM
+FCBE;AL;ARABIC LIGATURE FEH WITH JEEM INITIAL FORM
+FCBF;AL;ARABIC LIGATURE FEH WITH HAH INITIAL FORM
+FCC0;AL;ARABIC LIGATURE FEH WITH KHAH INITIAL FORM
+FCC1;AL;ARABIC LIGATURE FEH WITH MEEM INITIAL FORM
+FCC2;AL;ARABIC LIGATURE QAF WITH HAH INITIAL FORM
+FCC3;AL;ARABIC LIGATURE QAF WITH MEEM INITIAL FORM
+FCC4;AL;ARABIC LIGATURE KAF WITH JEEM INITIAL FORM
+FCC5;AL;ARABIC LIGATURE KAF WITH HAH INITIAL FORM
+FCC6;AL;ARABIC LIGATURE KAF WITH KHAH INITIAL FORM
+FCC7;AL;ARABIC LIGATURE KAF WITH LAM INITIAL FORM
+FCC8;AL;ARABIC LIGATURE KAF WITH MEEM INITIAL FORM
+FCC9;AL;ARABIC LIGATURE LAM WITH JEEM INITIAL FORM
+FCCA;AL;ARABIC LIGATURE LAM WITH HAH INITIAL FORM
+FCCB;AL;ARABIC LIGATURE LAM WITH KHAH INITIAL FORM
+FCCC;AL;ARABIC LIGATURE LAM WITH MEEM INITIAL FORM
+FCCD;AL;ARABIC LIGATURE LAM WITH HEH INITIAL FORM
+FCCE;AL;ARABIC LIGATURE MEEM WITH JEEM INITIAL FORM
+FCCF;AL;ARABIC LIGATURE MEEM WITH HAH INITIAL FORM
+FCD0;AL;ARABIC LIGATURE MEEM WITH KHAH INITIAL FORM
+FCD1;AL;ARABIC LIGATURE MEEM WITH MEEM INITIAL FORM
+FCD2;AL;ARABIC LIGATURE NOON WITH JEEM INITIAL FORM
+FCD3;AL;ARABIC LIGATURE NOON WITH HAH INITIAL FORM
+FCD4;AL;ARABIC LIGATURE NOON WITH KHAH INITIAL FORM
+FCD5;AL;ARABIC LIGATURE NOON WITH MEEM INITIAL FORM
+FCD6;AL;ARABIC LIGATURE NOON WITH HEH INITIAL FORM
+FCD7;AL;ARABIC LIGATURE HEH WITH JEEM INITIAL FORM
+FCD8;AL;ARABIC LIGATURE HEH WITH MEEM INITIAL FORM
+FCD9;AL;ARABIC LIGATURE HEH WITH SUPERSCRIPT ALEF INITIAL FORM
+FCDA;AL;ARABIC LIGATURE YEH WITH JEEM INITIAL FORM
+FCDB;AL;ARABIC LIGATURE YEH WITH HAH INITIAL FORM
+FCDC;AL;ARABIC LIGATURE YEH WITH KHAH INITIAL FORM
+FCDD;AL;ARABIC LIGATURE YEH WITH MEEM INITIAL FORM
+FCDE;AL;ARABIC LIGATURE YEH WITH HEH INITIAL FORM
+FCDF;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM MEDIAL FORM
+FCE0;AL;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH MEDIAL FORM
+FCE1;AL;ARABIC LIGATURE BEH WITH MEEM MEDIAL FORM
+FCE2;AL;ARABIC LIGATURE BEH WITH HEH MEDIAL FORM
+FCE3;AL;ARABIC LIGATURE TEH WITH MEEM MEDIAL FORM
+FCE4;AL;ARABIC LIGATURE TEH WITH HEH MEDIAL FORM
+FCE5;AL;ARABIC LIGATURE THEH WITH MEEM MEDIAL FORM
+FCE6;AL;ARABIC LIGATURE THEH WITH HEH MEDIAL FORM
+FCE7;AL;ARABIC LIGATURE SEEN WITH MEEM MEDIAL FORM
+FCE8;AL;ARABIC LIGATURE SEEN WITH HEH MEDIAL FORM
+FCE9;AL;ARABIC LIGATURE SHEEN WITH MEEM MEDIAL FORM
+FCEA;AL;ARABIC LIGATURE SHEEN WITH HEH MEDIAL FORM
+FCEB;AL;ARABIC LIGATURE KAF WITH LAM MEDIAL FORM
+FCEC;AL;ARABIC LIGATURE KAF WITH MEEM MEDIAL FORM
+FCED;AL;ARABIC LIGATURE LAM WITH MEEM MEDIAL FORM
+FCEE;AL;ARABIC LIGATURE NOON WITH MEEM MEDIAL FORM
+FCEF;AL;ARABIC LIGATURE NOON WITH HEH MEDIAL FORM
+FCF0;AL;ARABIC LIGATURE YEH WITH MEEM MEDIAL FORM
+FCF1;AL;ARABIC LIGATURE YEH WITH HEH MEDIAL FORM
+FCF2;AL;ARABIC LIGATURE SHADDA WITH FATHA MEDIAL FORM
+FCF3;AL;ARABIC LIGATURE SHADDA WITH DAMMA MEDIAL FORM
+FCF4;AL;ARABIC LIGATURE SHADDA WITH KASRA MEDIAL FORM
+FCF5;AL;ARABIC LIGATURE TAH WITH ALEF MAKSURA ISOLATED FORM
+FCF6;AL;ARABIC LIGATURE TAH WITH YEH ISOLATED FORM
+FCF7;AL;ARABIC LIGATURE AIN WITH ALEF MAKSURA ISOLATED FORM
+FCF8;AL;ARABIC LIGATURE AIN WITH YEH ISOLATED FORM
+FCF9;AL;ARABIC LIGATURE GHAIN WITH ALEF MAKSURA ISOLATED FORM
+FCFA;AL;ARABIC LIGATURE GHAIN WITH YEH ISOLATED FORM
+FCFB;AL;ARABIC LIGATURE SEEN WITH ALEF MAKSURA ISOLATED FORM
+FCFC;AL;ARABIC LIGATURE SEEN WITH YEH ISOLATED FORM
+FCFD;AL;ARABIC LIGATURE SHEEN WITH ALEF MAKSURA ISOLATED FORM
+FCFE;AL;ARABIC LIGATURE SHEEN WITH YEH ISOLATED FORM
+FCFF;AL;ARABIC LIGATURE HAH WITH ALEF MAKSURA ISOLATED FORM
+FD00;AL;ARABIC LIGATURE HAH WITH YEH ISOLATED FORM
+FD01;AL;ARABIC LIGATURE JEEM WITH ALEF MAKSURA ISOLATED FORM
+FD02;AL;ARABIC LIGATURE JEEM WITH YEH ISOLATED FORM
+FD03;AL;ARABIC LIGATURE KHAH WITH ALEF MAKSURA ISOLATED FORM
+FD04;AL;ARABIC LIGATURE KHAH WITH YEH ISOLATED FORM
+FD05;AL;ARABIC LIGATURE SAD WITH ALEF MAKSURA ISOLATED FORM
+FD06;AL;ARABIC LIGATURE SAD WITH YEH ISOLATED FORM
+FD07;AL;ARABIC LIGATURE DAD WITH ALEF MAKSURA ISOLATED FORM
+FD08;AL;ARABIC LIGATURE DAD WITH YEH ISOLATED FORM
+FD09;AL;ARABIC LIGATURE SHEEN WITH JEEM ISOLATED FORM
+FD0A;AL;ARABIC LIGATURE SHEEN WITH HAH ISOLATED FORM
+FD0B;AL;ARABIC LIGATURE SHEEN WITH KHAH ISOLATED FORM
+FD0C;AL;ARABIC LIGATURE SHEEN WITH MEEM ISOLATED FORM
+FD0D;AL;ARABIC LIGATURE SHEEN WITH REH ISOLATED FORM
+FD0E;AL;ARABIC LIGATURE SEEN WITH REH ISOLATED FORM
+FD0F;AL;ARABIC LIGATURE SAD WITH REH ISOLATED FORM
+FD10;AL;ARABIC LIGATURE DAD WITH REH ISOLATED FORM
+FD11;AL;ARABIC LIGATURE TAH WITH ALEF MAKSURA FINAL FORM
+FD12;AL;ARABIC LIGATURE TAH WITH YEH FINAL FORM
+FD13;AL;ARABIC LIGATURE AIN WITH ALEF MAKSURA FINAL FORM
+FD14;AL;ARABIC LIGATURE AIN WITH YEH FINAL FORM
+FD15;AL;ARABIC LIGATURE GHAIN WITH ALEF MAKSURA FINAL FORM
+FD16;AL;ARABIC LIGATURE GHAIN WITH YEH FINAL FORM
+FD17;AL;ARABIC LIGATURE SEEN WITH ALEF MAKSURA FINAL FORM
+FD18;AL;ARABIC LIGATURE SEEN WITH YEH FINAL FORM
+FD19;AL;ARABIC LIGATURE SHEEN WITH ALEF MAKSURA FINAL FORM
+FD1A;AL;ARABIC LIGATURE SHEEN WITH YEH FINAL FORM
+FD1B;AL;ARABIC LIGATURE HAH WITH ALEF MAKSURA FINAL FORM
+FD1C;AL;ARABIC LIGATURE HAH WITH YEH FINAL FORM
+FD1D;AL;ARABIC LIGATURE JEEM WITH ALEF MAKSURA FINAL FORM
+FD1E;AL;ARABIC LIGATURE JEEM WITH YEH FINAL FORM
+FD1F;AL;ARABIC LIGATURE KHAH WITH ALEF MAKSURA FINAL FORM
+FD20;AL;ARABIC LIGATURE KHAH WITH YEH FINAL FORM
+FD21;AL;ARABIC LIGATURE SAD WITH ALEF MAKSURA FINAL FORM
+FD22;AL;ARABIC LIGATURE SAD WITH YEH FINAL FORM
+FD23;AL;ARABIC LIGATURE DAD WITH ALEF MAKSURA FINAL FORM
+FD24;AL;ARABIC LIGATURE DAD WITH YEH FINAL FORM
+FD25;AL;ARABIC LIGATURE SHEEN WITH JEEM FINAL FORM
+FD26;AL;ARABIC LIGATURE SHEEN WITH HAH FINAL FORM
+FD27;AL;ARABIC LIGATURE SHEEN WITH KHAH FINAL FORM
+FD28;AL;ARABIC LIGATURE SHEEN WITH MEEM FINAL FORM
+FD29;AL;ARABIC LIGATURE SHEEN WITH REH FINAL FORM
+FD2A;AL;ARABIC LIGATURE SEEN WITH REH FINAL FORM
+FD2B;AL;ARABIC LIGATURE SAD WITH REH FINAL FORM
+FD2C;AL;ARABIC LIGATURE DAD WITH REH FINAL FORM
+FD2D;AL;ARABIC LIGATURE SHEEN WITH JEEM INITIAL FORM
+FD2E;AL;ARABIC LIGATURE SHEEN WITH HAH INITIAL FORM
+FD2F;AL;ARABIC LIGATURE SHEEN WITH KHAH INITIAL FORM
+FD30;AL;ARABIC LIGATURE SHEEN WITH MEEM INITIAL FORM
+FD31;AL;ARABIC LIGATURE SEEN WITH HEH INITIAL FORM
+FD32;AL;ARABIC LIGATURE SHEEN WITH HEH INITIAL FORM
+FD33;AL;ARABIC LIGATURE TAH WITH MEEM INITIAL FORM
+FD34;AL;ARABIC LIGATURE SEEN WITH JEEM MEDIAL FORM
+FD35;AL;ARABIC LIGATURE SEEN WITH HAH MEDIAL FORM
+FD36;AL;ARABIC LIGATURE SEEN WITH KHAH MEDIAL FORM
+FD37;AL;ARABIC LIGATURE SHEEN WITH JEEM MEDIAL FORM
+FD38;AL;ARABIC LIGATURE SHEEN WITH HAH MEDIAL FORM
+FD39;AL;ARABIC LIGATURE SHEEN WITH KHAH MEDIAL FORM
+FD3A;AL;ARABIC LIGATURE TAH WITH MEEM MEDIAL FORM
+FD3B;AL;ARABIC LIGATURE ZAH WITH MEEM MEDIAL FORM
+FD3C;AL;ARABIC LIGATURE ALEF WITH FATHATAN FINAL FORM
+FD3D;AL;ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM
+FD3E;OP;ORNATE LEFT PARENTHESIS
+FD3F;CL;ORNATE RIGHT PARENTHESIS
+FD50;AL;ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM
+FD51;AL;ARABIC LIGATURE TEH WITH HAH WITH JEEM FINAL FORM
+FD52;AL;ARABIC LIGATURE TEH WITH HAH WITH JEEM INITIAL FORM
+FD53;AL;ARABIC LIGATURE TEH WITH HAH WITH MEEM INITIAL FORM
+FD54;AL;ARABIC LIGATURE TEH WITH KHAH WITH MEEM INITIAL FORM
+FD55;AL;ARABIC LIGATURE TEH WITH MEEM WITH JEEM INITIAL FORM
+FD56;AL;ARABIC LIGATURE TEH WITH MEEM WITH HAH INITIAL FORM
+FD57;AL;ARABIC LIGATURE TEH WITH MEEM WITH KHAH INITIAL FORM
+FD58;AL;ARABIC LIGATURE JEEM WITH MEEM WITH HAH FINAL FORM
+FD59;AL;ARABIC LIGATURE JEEM WITH MEEM WITH HAH INITIAL FORM
+FD5A;AL;ARABIC LIGATURE HAH WITH MEEM WITH YEH FINAL FORM
+FD5B;AL;ARABIC LIGATURE HAH WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FD5C;AL;ARABIC LIGATURE SEEN WITH HAH WITH JEEM INITIAL FORM
+FD5D;AL;ARABIC LIGATURE SEEN WITH JEEM WITH HAH INITIAL FORM
+FD5E;AL;ARABIC LIGATURE SEEN WITH JEEM WITH ALEF MAKSURA FINAL FORM
+FD5F;AL;ARABIC LIGATURE SEEN WITH MEEM WITH HAH FINAL FORM
+FD60;AL;ARABIC LIGATURE SEEN WITH MEEM WITH HAH INITIAL FORM
+FD61;AL;ARABIC LIGATURE SEEN WITH MEEM WITH JEEM INITIAL FORM
+FD62;AL;ARABIC LIGATURE SEEN WITH MEEM WITH MEEM FINAL FORM
+FD63;AL;ARABIC LIGATURE SEEN WITH MEEM WITH MEEM INITIAL FORM
+FD64;AL;ARABIC LIGATURE SAD WITH HAH WITH HAH FINAL FORM
+FD65;AL;ARABIC LIGATURE SAD WITH HAH WITH HAH INITIAL FORM
+FD66;AL;ARABIC LIGATURE SAD WITH MEEM WITH MEEM FINAL FORM
+FD67;AL;ARABIC LIGATURE SHEEN WITH HAH WITH MEEM FINAL FORM
+FD68;AL;ARABIC LIGATURE SHEEN WITH HAH WITH MEEM INITIAL FORM
+FD69;AL;ARABIC LIGATURE SHEEN WITH JEEM WITH YEH FINAL FORM
+FD6A;AL;ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH FINAL FORM
+FD6B;AL;ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH INITIAL FORM
+FD6C;AL;ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM FINAL FORM
+FD6D;AL;ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM INITIAL FORM
+FD6E;AL;ARABIC LIGATURE DAD WITH HAH WITH ALEF MAKSURA FINAL FORM
+FD6F;AL;ARABIC LIGATURE DAD WITH KHAH WITH MEEM FINAL FORM
+FD70;AL;ARABIC LIGATURE DAD WITH KHAH WITH MEEM INITIAL FORM
+FD71;AL;ARABIC LIGATURE TAH WITH MEEM WITH HAH FINAL FORM
+FD72;AL;ARABIC LIGATURE TAH WITH MEEM WITH HAH INITIAL FORM
+FD73;AL;ARABIC LIGATURE TAH WITH MEEM WITH MEEM INITIAL FORM
+FD74;AL;ARABIC LIGATURE TAH WITH MEEM WITH YEH FINAL FORM
+FD75;AL;ARABIC LIGATURE AIN WITH JEEM WITH MEEM FINAL FORM
+FD76;AL;ARABIC LIGATURE AIN WITH MEEM WITH MEEM FINAL FORM
+FD77;AL;ARABIC LIGATURE AIN WITH MEEM WITH MEEM INITIAL FORM
+FD78;AL;ARABIC LIGATURE AIN WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FD79;AL;ARABIC LIGATURE GHAIN WITH MEEM WITH MEEM FINAL FORM
+FD7A;AL;ARABIC LIGATURE GHAIN WITH MEEM WITH YEH FINAL FORM
+FD7B;AL;ARABIC LIGATURE GHAIN WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FD7C;AL;ARABIC LIGATURE FEH WITH KHAH WITH MEEM FINAL FORM
+FD7D;AL;ARABIC LIGATURE FEH WITH KHAH WITH MEEM INITIAL FORM
+FD7E;AL;ARABIC LIGATURE QAF WITH MEEM WITH HAH FINAL FORM
+FD7F;AL;ARABIC LIGATURE QAF WITH MEEM WITH MEEM FINAL FORM
+FD80;AL;ARABIC LIGATURE LAM WITH HAH WITH MEEM FINAL FORM
+FD81;AL;ARABIC LIGATURE LAM WITH HAH WITH YEH FINAL FORM
+FD82;AL;ARABIC LIGATURE LAM WITH HAH WITH ALEF MAKSURA FINAL FORM
+FD83;AL;ARABIC LIGATURE LAM WITH JEEM WITH JEEM INITIAL FORM
+FD84;AL;ARABIC LIGATURE LAM WITH JEEM WITH JEEM FINAL FORM
+FD85;AL;ARABIC LIGATURE LAM WITH KHAH WITH MEEM FINAL FORM
+FD86;AL;ARABIC LIGATURE LAM WITH KHAH WITH MEEM INITIAL FORM
+FD87;AL;ARABIC LIGATURE LAM WITH MEEM WITH HAH FINAL FORM
+FD88;AL;ARABIC LIGATURE LAM WITH MEEM WITH HAH INITIAL FORM
+FD89;AL;ARABIC LIGATURE MEEM WITH HAH WITH JEEM INITIAL FORM
+FD8A;AL;ARABIC LIGATURE MEEM WITH HAH WITH MEEM INITIAL FORM
+FD8B;AL;ARABIC LIGATURE MEEM WITH HAH WITH YEH FINAL FORM
+FD8C;AL;ARABIC LIGATURE MEEM WITH JEEM WITH HAH INITIAL FORM
+FD8D;AL;ARABIC LIGATURE MEEM WITH JEEM WITH MEEM INITIAL FORM
+FD8E;AL;ARABIC LIGATURE MEEM WITH KHAH WITH JEEM INITIAL FORM
+FD8F;AL;ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM
+FD92;AL;ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM
+FD93;AL;ARABIC LIGATURE HEH WITH MEEM WITH JEEM INITIAL FORM
+FD94;AL;ARABIC LIGATURE HEH WITH MEEM WITH MEEM INITIAL FORM
+FD95;AL;ARABIC LIGATURE NOON WITH HAH WITH MEEM INITIAL FORM
+FD96;AL;ARABIC LIGATURE NOON WITH HAH WITH ALEF MAKSURA FINAL FORM
+FD97;AL;ARABIC LIGATURE NOON WITH JEEM WITH MEEM FINAL FORM
+FD98;AL;ARABIC LIGATURE NOON WITH JEEM WITH MEEM INITIAL FORM
+FD99;AL;ARABIC LIGATURE NOON WITH JEEM WITH ALEF MAKSURA FINAL FORM
+FD9A;AL;ARABIC LIGATURE NOON WITH MEEM WITH YEH FINAL FORM
+FD9B;AL;ARABIC LIGATURE NOON WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FD9C;AL;ARABIC LIGATURE YEH WITH MEEM WITH MEEM FINAL FORM
+FD9D;AL;ARABIC LIGATURE YEH WITH MEEM WITH MEEM INITIAL FORM
+FD9E;AL;ARABIC LIGATURE BEH WITH KHAH WITH YEH FINAL FORM
+FD9F;AL;ARABIC LIGATURE TEH WITH JEEM WITH YEH FINAL FORM
+FDA0;AL;ARABIC LIGATURE TEH WITH JEEM WITH ALEF MAKSURA FINAL FORM
+FDA1;AL;ARABIC LIGATURE TEH WITH KHAH WITH YEH FINAL FORM
+FDA2;AL;ARABIC LIGATURE TEH WITH KHAH WITH ALEF MAKSURA FINAL FORM
+FDA3;AL;ARABIC LIGATURE TEH WITH MEEM WITH YEH FINAL FORM
+FDA4;AL;ARABIC LIGATURE TEH WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FDA5;AL;ARABIC LIGATURE JEEM WITH MEEM WITH YEH FINAL FORM
+FDA6;AL;ARABIC LIGATURE JEEM WITH HAH WITH ALEF MAKSURA FINAL FORM
+FDA7;AL;ARABIC LIGATURE JEEM WITH MEEM WITH ALEF MAKSURA FINAL FORM
+FDA8;AL;ARABIC LIGATURE SEEN WITH KHAH WITH ALEF MAKSURA FINAL FORM
+FDA9;AL;ARABIC LIGATURE SAD WITH HAH WITH YEH FINAL FORM
+FDAA;AL;ARABIC LIGATURE SHEEN WITH HAH WITH YEH FINAL FORM
+FDAB;AL;ARABIC LIGATURE DAD WITH HAH WITH YEH FINAL FORM
+FDAC;AL;ARABIC LIGATURE LAM WITH JEEM WITH YEH FINAL FORM
+FDAD;AL;ARABIC LIGATURE LAM WITH MEEM WITH YEH FINAL FORM
+FDAE;AL;ARABIC LIGATURE YEH WITH HAH WITH YEH FINAL FORM
+FDAF;AL;ARABIC LIGATURE YEH WITH JEEM WITH YEH FINAL FORM
+FDB0;AL;ARABIC LIGATURE YEH WITH MEEM WITH YEH FINAL FORM
+FDB1;AL;ARABIC LIGATURE MEEM WITH MEEM WITH YEH FINAL FORM
+FDB2;AL;ARABIC LIGATURE QAF WITH MEEM WITH YEH FINAL FORM
+FDB3;AL;ARABIC LIGATURE NOON WITH HAH WITH YEH FINAL FORM
+FDB4;AL;ARABIC LIGATURE QAF WITH MEEM WITH HAH INITIAL FORM
+FDB5;AL;ARABIC LIGATURE LAM WITH HAH WITH MEEM INITIAL FORM
+FDB6;AL;ARABIC LIGATURE AIN WITH MEEM WITH YEH FINAL FORM
+FDB7;AL;ARABIC LIGATURE KAF WITH MEEM WITH YEH FINAL FORM
+FDB8;AL;ARABIC LIGATURE NOON WITH JEEM WITH HAH INITIAL FORM
+FDB9;AL;ARABIC LIGATURE MEEM WITH KHAH WITH YEH FINAL FORM
+FDBA;AL;ARABIC LIGATURE LAM WITH JEEM WITH MEEM INITIAL FORM
+FDBB;AL;ARABIC LIGATURE KAF WITH MEEM WITH MEEM FINAL FORM
+FDBC;AL;ARABIC LIGATURE LAM WITH JEEM WITH MEEM FINAL FORM
+FDBD;AL;ARABIC LIGATURE NOON WITH JEEM WITH HAH FINAL FORM
+FDBE;AL;ARABIC LIGATURE JEEM WITH HAH WITH YEH FINAL FORM
+FDBF;AL;ARABIC LIGATURE HAH WITH JEEM WITH YEH FINAL FORM
+FDC0;AL;ARABIC LIGATURE MEEM WITH JEEM WITH YEH FINAL FORM
+FDC1;AL;ARABIC LIGATURE FEH WITH MEEM WITH YEH FINAL FORM
+FDC2;AL;ARABIC LIGATURE BEH WITH HAH WITH YEH FINAL FORM
+FDC3;AL;ARABIC LIGATURE KAF WITH MEEM WITH MEEM INITIAL FORM
+FDC4;AL;ARABIC LIGATURE AIN WITH JEEM WITH MEEM INITIAL FORM
+FDC5;AL;ARABIC LIGATURE SAD WITH MEEM WITH MEEM INITIAL FORM
+FDC6;AL;ARABIC LIGATURE SEEN WITH KHAH WITH YEH FINAL FORM
+FDC7;AL;ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM
+FDF0;AL;ARABIC LIGATURE SALLA USED AS KORANIC STOP SIGN ISOLATED FORM
+FDF1;AL;ARABIC LIGATURE QALA USED AS KORANIC STOP SIGN ISOLATED FORM
+FDF2;AL;ARABIC LIGATURE ALLAH ISOLATED FORM
+FDF3;AL;ARABIC LIGATURE AKBAR ISOLATED FORM
+FDF4;AL;ARABIC LIGATURE MOHAMMAD ISOLATED FORM
+FDF5;AL;ARABIC LIGATURE SALAM ISOLATED FORM
+FDF6;AL;ARABIC LIGATURE RASOUL ISOLATED FORM
+FDF7;AL;ARABIC LIGATURE ALAYHE ISOLATED FORM
+FDF8;AL;ARABIC LIGATURE WASALLAM ISOLATED FORM
+FDF9;AL;ARABIC LIGATURE SALLA ISOLATED FORM
+FDFA;AL;ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM
+FDFB;AL;ARABIC LIGATURE JALLAJALALOUHOU
+FE20;CM;COMBINING LIGATURE LEFT HALF
+FE21;CM;COMBINING LIGATURE RIGHT HALF
+FE22;CM;COMBINING DOUBLE TILDE LEFT HALF
+FE23;CM;COMBINING DOUBLE TILDE RIGHT HALF
+FE30;ID;PRESENTATION FORM FOR VERTICAL TWO DOT LEADER
+FE31;ID;PRESENTATION FORM FOR VERTICAL EM DASH
+FE32;ID;PRESENTATION FORM FOR VERTICAL EN DASH
+FE33;ID;PRESENTATION FORM FOR VERTICAL LOW LINE
+FE34;ID;PRESENTATION FORM FOR VERTICAL WAVY LOW LINE
+FE35;OP;PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS
+FE36;CL;PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS
+FE37;OP;PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET
+FE38;CL;PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET
+FE39;OP;PRESENTATION FORM FOR VERTICAL LEFT TORTOISE SHELL BRACKET
+FE3A;CL;PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET
+FE3B;OP;PRESENTATION FORM FOR VERTICAL LEFT BLACK LENTICULAR BRACKET
+FE3C;CL;PRESENTATION FORM FOR VERTICAL RIGHT BLACK LENTICULAR BRACKET
+FE3D;OP;PRESENTATION FORM FOR VERTICAL LEFT DOUBLE ANGLE BRACKET
+FE3E;CL;PRESENTATION FORM FOR VERTICAL RIGHT DOUBLE ANGLE BRACKET
+FE3F;OP;PRESENTATION FORM FOR VERTICAL LEFT ANGLE BRACKET
+FE40;CL;PRESENTATION FORM FOR VERTICAL RIGHT ANGLE BRACKET
+FE41;OP;PRESENTATION FORM FOR VERTICAL LEFT CORNER BRACKET
+FE42;CL;PRESENTATION FORM FOR VERTICAL RIGHT CORNER BRACKET
+FE43;OP;PRESENTATION FORM FOR VERTICAL LEFT WHITE CORNER BRACKET
+FE44;CL;PRESENTATION FORM FOR VERTICAL RIGHT WHITE CORNER BRACKET
+FE49;ID;DASHED OVERLINE
+FE4A;ID;CENTRELINE OVERLINE
+FE4B;ID;WAVY OVERLINE
+FE4C;ID;DOUBLE WAVY OVERLINE
+FE4D;ID;DASHED LOW LINE
+FE4E;ID;CENTRELINE LOW LINE
+FE4F;ID;WAVY LOW LINE
+FE50;CL;SMALL COMMA
+FE51;ID;SMALL IDEOGRAPHIC COMMA
+FE52;CL;SMALL FULL STOP
+FE54;NS;SMALL SEMICOLON
+FE55;NS;SMALL COLON
+FE56;EX;SMALL QUESTION MARK
+FE57;EX;SMALL EXCLAMATION MARK
+FE58;ID;SMALL EM DASH
+FE59;OP;SMALL LEFT PARENTHESIS
+FE5A;CL;SMALL RIGHT PARENTHESIS
+FE5B;OP;SMALL LEFT CURLY BRACKET
+FE5C;CL;SMALL RIGHT CURLY BRACKET
+FE5D;OP;SMALL LEFT TORTOISE SHELL BRACKET
+FE5E;CL;SMALL RIGHT TORTOISE SHELL BRACKET
+FE5F;ID;SMALL NUMBER SIGN
+FE60;ID;SMALL AMPERSAND
+FE61;ID;SMALL ASTERISK
+FE62;ID;SMALL PLUS SIGN
+FE63;ID;SMALL HYPHEN-MINUS
+FE64;ID;SMALL LESS-THAN SIGN
+FE65;ID;SMALL GREATER-THAN SIGN
+FE66;ID;SMALL EQUALS SIGN
+FE68;ID;SMALL REVERSE SOLIDUS
+FE69;PR;SMALL DOLLAR SIGN
+FE6A;PO;SMALL PERCENT SIGN
+FE6B;AL;SMALL COMMERCIAL AT
+FE70;AL;ARABIC FATHATAN ISOLATED FORM
+FE71;AL;ARABIC TATWEEL WITH FATHATAN ABOVE
+FE72;AL;ARABIC DAMMATAN ISOLATED FORM
+FE74;AL;ARABIC KASRATAN ISOLATED FORM
+FE76;AL;ARABIC FATHA ISOLATED FORM
+FE77;AL;ARABIC FATHA MEDIAL FORM
+FE78;AL;ARABIC DAMMA ISOLATED FORM
+FE79;AL;ARABIC DAMMA MEDIAL FORM
+FE7A;AL;ARABIC KASRA ISOLATED FORM
+FE7B;AL;ARABIC KASRA MEDIAL FORM
+FE7C;AL;ARABIC SHADDA ISOLATED FORM
+FE7D;AL;ARABIC SHADDA MEDIAL FORM
+FE7E;AL;ARABIC SUKUN ISOLATED FORM
+FE7F;AL;ARABIC SUKUN MEDIAL FORM
+FE80;AL;ARABIC LETTER HAMZA ISOLATED FORM
+FE81;AL;ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
+FE82;AL;ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
+FE83;AL;ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM
+FE84;AL;ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
+FE85;AL;ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
+FE86;AL;ARABIC LETTER WAW WITH HAMZA ABOVE FINAL FORM
+FE87;AL;ARABIC LETTER ALEF WITH HAMZA BELOW ISOLATED FORM
+FE88;AL;ARABIC LETTER ALEF WITH HAMZA BELOW FINAL FORM
+FE89;AL;ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM
+FE8A;AL;ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM
+FE8B;AL;ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
+FE8C;AL;ARABIC LETTER YEH WITH HAMZA ABOVE MEDIAL FORM
+FE8D;AL;ARABIC LETTER ALEF ISOLATED FORM
+FE8E;AL;ARABIC LETTER ALEF FINAL FORM
+FE8F;AL;ARABIC LETTER BEH ISOLATED FORM
+FE90;AL;ARABIC LETTER BEH FINAL FORM
+FE91;AL;ARABIC LETTER BEH INITIAL FORM
+FE92;AL;ARABIC LETTER BEH MEDIAL FORM
+FE93;AL;ARABIC LETTER TEH MARBUTA ISOLATED FORM
+FE94;AL;ARABIC LETTER TEH MARBUTA FINAL FORM
+FE95;AL;ARABIC LETTER TEH ISOLATED FORM
+FE96;AL;ARABIC LETTER TEH FINAL FORM
+FE97;AL;ARABIC LETTER TEH INITIAL FORM
+FE98;AL;ARABIC LETTER TEH MEDIAL FORM
+FE99;AL;ARABIC LETTER THEH ISOLATED FORM
+FE9A;AL;ARABIC LETTER THEH FINAL FORM
+FE9B;AL;ARABIC LETTER THEH INITIAL FORM
+FE9C;AL;ARABIC LETTER THEH MEDIAL FORM
+FE9D;AL;ARABIC LETTER JEEM ISOLATED FORM
+FE9E;AL;ARABIC LETTER JEEM FINAL FORM
+FE9F;AL;ARABIC LETTER JEEM INITIAL FORM
+FEA0;AL;ARABIC LETTER JEEM MEDIAL FORM
+FEA1;AL;ARABIC LETTER HAH ISOLATED FORM
+FEA2;AL;ARABIC LETTER HAH FINAL FORM
+FEA3;AL;ARABIC LETTER HAH INITIAL FORM
+FEA4;AL;ARABIC LETTER HAH MEDIAL FORM
+FEA5;AL;ARABIC LETTER KHAH ISOLATED FORM
+FEA6;AL;ARABIC LETTER KHAH FINAL FORM
+FEA7;AL;ARABIC LETTER KHAH INITIAL FORM
+FEA8;AL;ARABIC LETTER KHAH MEDIAL FORM
+FEA9;AL;ARABIC LETTER DAL ISOLATED FORM
+FEAA;AL;ARABIC LETTER DAL FINAL FORM
+FEAB;AL;ARABIC LETTER THAL ISOLATED FORM
+FEAC;AL;ARABIC LETTER THAL FINAL FORM
+FEAD;AL;ARABIC LETTER REH ISOLATED FORM
+FEAE;AL;ARABIC LETTER REH FINAL FORM
+FEAF;AL;ARABIC LETTER ZAIN ISOLATED FORM
+FEB0;AL;ARABIC LETTER ZAIN FINAL FORM
+FEB1;AL;ARABIC LETTER SEEN ISOLATED FORM
+FEB2;AL;ARABIC LETTER SEEN FINAL FORM
+FEB3;AL;ARABIC LETTER SEEN INITIAL FORM
+FEB4;AL;ARABIC LETTER SEEN MEDIAL FORM
+FEB5;AL;ARABIC LETTER SHEEN ISOLATED FORM
+FEB6;AL;ARABIC LETTER SHEEN FINAL FORM
+FEB7;AL;ARABIC LETTER SHEEN INITIAL FORM
+FEB8;AL;ARABIC LETTER SHEEN MEDIAL FORM
+FEB9;AL;ARABIC LETTER SAD ISOLATED FORM
+FEBA;AL;ARABIC LETTER SAD FINAL FORM
+FEBB;AL;ARABIC LETTER SAD INITIAL FORM
+FEBC;AL;ARABIC LETTER SAD MEDIAL FORM
+FEBD;AL;ARABIC LETTER DAD ISOLATED FORM
+FEBE;AL;ARABIC LETTER DAD FINAL FORM
+FEBF;AL;ARABIC LETTER DAD INITIAL FORM
+FEC0;AL;ARABIC LETTER DAD MEDIAL FORM
+FEC1;AL;ARABIC LETTER TAH ISOLATED FORM
+FEC2;AL;ARABIC LETTER TAH FINAL FORM
+FEC3;AL;ARABIC LETTER TAH INITIAL FORM
+FEC4;AL;ARABIC LETTER TAH MEDIAL FORM
+FEC5;AL;ARABIC LETTER ZAH ISOLATED FORM
+FEC6;AL;ARABIC LETTER ZAH FINAL FORM
+FEC7;AL;ARABIC LETTER ZAH INITIAL FORM
+FEC8;AL;ARABIC LETTER ZAH MEDIAL FORM
+FEC9;AL;ARABIC LETTER AIN ISOLATED FORM
+FECA;AL;ARABIC LETTER AIN FINAL FORM
+FECB;AL;ARABIC LETTER AIN INITIAL FORM
+FECC;AL;ARABIC LETTER AIN MEDIAL FORM
+FECD;AL;ARABIC LETTER GHAIN ISOLATED FORM
+FECE;AL;ARABIC LETTER GHAIN FINAL FORM
+FECF;AL;ARABIC LETTER GHAIN INITIAL FORM
+FED0;AL;ARABIC LETTER GHAIN MEDIAL FORM
+FED1;AL;ARABIC LETTER FEH ISOLATED FORM
+FED2;AL;ARABIC LETTER FEH FINAL FORM
+FED3;AL;ARABIC LETTER FEH INITIAL FORM
+FED4;AL;ARABIC LETTER FEH MEDIAL FORM
+FED5;AL;ARABIC LETTER QAF ISOLATED FORM
+FED6;AL;ARABIC LETTER QAF FINAL FORM
+FED7;AL;ARABIC LETTER QAF INITIAL FORM
+FED8;AL;ARABIC LETTER QAF MEDIAL FORM
+FED9;AL;ARABIC LETTER KAF ISOLATED FORM
+FEDA;AL;ARABIC LETTER KAF FINAL FORM
+FEDB;AL;ARABIC LETTER KAF INITIAL FORM
+FEDC;AL;ARABIC LETTER KAF MEDIAL FORM
+FEDD;AL;ARABIC LETTER LAM ISOLATED FORM
+FEDE;AL;ARABIC LETTER LAM FINAL FORM
+FEDF;AL;ARABIC LETTER LAM INITIAL FORM
+FEE0;AL;ARABIC LETTER LAM MEDIAL FORM
+FEE1;AL;ARABIC LETTER MEEM ISOLATED FORM
+FEE2;AL;ARABIC LETTER MEEM FINAL FORM
+FEE3;AL;ARABIC LETTER MEEM INITIAL FORM
+FEE4;AL;ARABIC LETTER MEEM MEDIAL FORM
+FEE5;AL;ARABIC LETTER NOON ISOLATED FORM
+FEE6;AL;ARABIC LETTER NOON FINAL FORM
+FEE7;AL;ARABIC LETTER NOON INITIAL FORM
+FEE8;AL;ARABIC LETTER NOON MEDIAL FORM
+FEE9;AL;ARABIC LETTER HEH ISOLATED FORM
+FEEA;AL;ARABIC LETTER HEH FINAL FORM
+FEEB;AL;ARABIC LETTER HEH INITIAL FORM
+FEEC;AL;ARABIC LETTER HEH MEDIAL FORM
+FEED;AL;ARABIC LETTER WAW ISOLATED FORM
+FEEE;AL;ARABIC LETTER WAW FINAL FORM
+FEEF;AL;ARABIC LETTER ALEF MAKSURA ISOLATED FORM
+FEF0;AL;ARABIC LETTER ALEF MAKSURA FINAL FORM
+FEF1;AL;ARABIC LETTER YEH ISOLATED FORM
+FEF2;AL;ARABIC LETTER YEH FINAL FORM
+FEF3;AL;ARABIC LETTER YEH INITIAL FORM
+FEF4;AL;ARABIC LETTER YEH MEDIAL FORM
+FEF5;AL;ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
+FEF6;AL;ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM
+FEF7;AL;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
+FEF8;AL;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM
+FEF9;AL;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM
+FEFA;AL;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM
+FEFB;AL;ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
+FEFC;AL;ARABIC LIGATURE LAM WITH ALEF FINAL FORM
+FEFF;GL;ZERO WIDTH NO-BREAK SPACE
+FF01;EX;FULLWIDTH EXCLAMATION MARK
+FF02;ID;FULLWIDTH QUOTATION MARK
+FF03;ID;FULLWIDTH NUMBER SIGN
+FF04;PR;FULLWIDTH DOLLAR SIGN
+FF05;PO;FULLWIDTH PERCENT SIGN
+FF06;ID;FULLWIDTH AMPERSAND
+FF07;ID;FULLWIDTH APOSTROPHE
+FF08;OP;FULLWIDTH LEFT PARENTHESIS
+FF09;CL;FULLWIDTH RIGHT PARENTHESIS
+FF0A;ID;FULLWIDTH ASTERISK
+FF0B;ID;FULLWIDTH PLUS SIGN
+FF0C;CL;FULLWIDTH COMMA
+FF0D;ID;FULLWIDTH HYPHEN-MINUS
+FF0E;CL;FULLWIDTH FULL STOP
+FF0F;ID;FULLWIDTH SOLIDUS
+FF10;ID;FULLWIDTH DIGIT ZERO
+FF11;ID;FULLWIDTH DIGIT ONE
+FF12;ID;FULLWIDTH DIGIT TWO
+FF13;ID;FULLWIDTH DIGIT THREE
+FF14;ID;FULLWIDTH DIGIT FOUR
+FF15;ID;FULLWIDTH DIGIT FIVE
+FF16;ID;FULLWIDTH DIGIT SIX
+FF17;ID;FULLWIDTH DIGIT SEVEN
+FF18;ID;FULLWIDTH DIGIT EIGHT
+FF19;ID;FULLWIDTH DIGIT NINE
+FF1A;NS;FULLWIDTH COLON
+FF1B;NS;FULLWIDTH SEMICOLON
+FF1C;ID;FULLWIDTH LESS-THAN SIGN
+FF1D;ID;FULLWIDTH EQUALS SIGN
+FF1E;ID;FULLWIDTH GREATER-THAN SIGN
+FF1F;EX;FULLWIDTH QUESTION MARK
+FF20;ID;FULLWIDTH COMMERCIAL AT
+FF21;ID;FULLWIDTH LATIN CAPITAL LETTER A
+FF22;ID;FULLWIDTH LATIN CAPITAL LETTER B
+FF23;ID;FULLWIDTH LATIN CAPITAL LETTER C
+FF24;ID;FULLWIDTH LATIN CAPITAL LETTER D
+FF25;ID;FULLWIDTH LATIN CAPITAL LETTER E
+FF26;ID;FULLWIDTH LATIN CAPITAL LETTER F
+FF27;ID;FULLWIDTH LATIN CAPITAL LETTER G
+FF28;ID;FULLWIDTH LATIN CAPITAL LETTER H
+FF29;ID;FULLWIDTH LATIN CAPITAL LETTER I
+FF2A;ID;FULLWIDTH LATIN CAPITAL LETTER J
+FF2B;ID;FULLWIDTH LATIN CAPITAL LETTER K
+FF2C;ID;FULLWIDTH LATIN CAPITAL LETTER L
+FF2D;ID;FULLWIDTH LATIN CAPITAL LETTER M
+FF2E;ID;FULLWIDTH LATIN CAPITAL LETTER N
+FF2F;ID;FULLWIDTH LATIN CAPITAL LETTER O
+FF30;ID;FULLWIDTH LATIN CAPITAL LETTER P
+FF31;ID;FULLWIDTH LATIN CAPITAL LETTER Q
+FF32;ID;FULLWIDTH LATIN CAPITAL LETTER R
+FF33;ID;FULLWIDTH LATIN CAPITAL LETTER S
+FF34;ID;FULLWIDTH LATIN CAPITAL LETTER T
+FF35;ID;FULLWIDTH LATIN CAPITAL LETTER U
+FF36;ID;FULLWIDTH LATIN CAPITAL LETTER V
+FF37;ID;FULLWIDTH LATIN CAPITAL LETTER W
+FF38;ID;FULLWIDTH LATIN CAPITAL LETTER X
+FF39;ID;FULLWIDTH LATIN CAPITAL LETTER Y
+FF3A;ID;FULLWIDTH LATIN CAPITAL LETTER Z
+FF3B;OP;FULLWIDTH LEFT SQUARE BRACKET
+FF3C;ID;FULLWIDTH REVERSE SOLIDUS
+FF3D;CL;FULLWIDTH RIGHT SQUARE BRACKET
+FF3E;ID;FULLWIDTH CIRCUMFLEX ACCENT
+FF3F;ID;FULLWIDTH LOW LINE
+FF40;ID;FULLWIDTH GRAVE ACCENT
+FF41;ID;FULLWIDTH LATIN SMALL LETTER A
+FF42;ID;FULLWIDTH LATIN SMALL LETTER B
+FF43;ID;FULLWIDTH LATIN SMALL LETTER C
+FF44;ID;FULLWIDTH LATIN SMALL LETTER D
+FF45;ID;FULLWIDTH LATIN SMALL LETTER E
+FF46;ID;FULLWIDTH LATIN SMALL LETTER F
+FF47;ID;FULLWIDTH LATIN SMALL LETTER G
+FF48;ID;FULLWIDTH LATIN SMALL LETTER H
+FF49;ID;FULLWIDTH LATIN SMALL LETTER I
+FF4A;ID;FULLWIDTH LATIN SMALL LETTER J
+FF4B;ID;FULLWIDTH LATIN SMALL LETTER K
+FF4C;ID;FULLWIDTH LATIN SMALL LETTER L
+FF4D;ID;FULLWIDTH LATIN SMALL LETTER M
+FF4E;ID;FULLWIDTH LATIN SMALL LETTER N
+FF4F;ID;FULLWIDTH LATIN SMALL LETTER O
+FF50;ID;FULLWIDTH LATIN SMALL LETTER P
+FF51;ID;FULLWIDTH LATIN SMALL LETTER Q
+FF52;ID;FULLWIDTH LATIN SMALL LETTER R
+FF53;ID;FULLWIDTH LATIN SMALL LETTER S
+FF54;ID;FULLWIDTH LATIN SMALL LETTER T
+FF55;ID;FULLWIDTH LATIN SMALL LETTER U
+FF56;ID;FULLWIDTH LATIN SMALL LETTER V
+FF57;ID;FULLWIDTH LATIN SMALL LETTER W
+FF58;ID;FULLWIDTH LATIN SMALL LETTER X
+FF59;ID;FULLWIDTH LATIN SMALL LETTER Y
+FF5A;ID;FULLWIDTH LATIN SMALL LETTER Z
+FF5B;OP;FULLWIDTH LEFT CURLY BRACKET
+FF5C;ID;FULLWIDTH VERTICAL LINE
+FF5D;CL;FULLWIDTH RIGHT CURLY BRACKET
+FF5E;ID;FULLWIDTH TILDE
+FF61;CL;HALFWIDTH IDEOGRAPHIC FULL STOP
+FF62;OP;HALFWIDTH LEFT CORNER BRACKET
+FF63;CL;HALFWIDTH RIGHT CORNER BRACKET
+FF64;CL;HALFWIDTH IDEOGRAPHIC COMMA
+FF65;NS;HALFWIDTH KATAKANA MIDDLE DOT
+FF66;AL;HALFWIDTH KATAKANA LETTER WO
+FF67;NS;HALFWIDTH KATAKANA LETTER SMALL A
+FF68;NS;HALFWIDTH KATAKANA LETTER SMALL I
+FF69;NS;HALFWIDTH KATAKANA LETTER SMALL U
+FF6A;NS;HALFWIDTH KATAKANA LETTER SMALL E
+FF6B;NS;HALFWIDTH KATAKANA LETTER SMALL O
+FF6C;NS;HALFWIDTH KATAKANA LETTER SMALL YA
+FF6D;NS;HALFWIDTH KATAKANA LETTER SMALL YU
+FF6E;NS;HALFWIDTH KATAKANA LETTER SMALL YO
+FF6F;NS;HALFWIDTH KATAKANA LETTER SMALL TU
+FF70;NS;HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
+FF71;AL;HALFWIDTH KATAKANA LETTER A
+FF72;AL;HALFWIDTH KATAKANA LETTER I
+FF73;AL;HALFWIDTH KATAKANA LETTER U
+FF74;AL;HALFWIDTH KATAKANA LETTER E
+FF75;AL;HALFWIDTH KATAKANA LETTER O
+FF76;AL;HALFWIDTH KATAKANA LETTER KA
+FF77;AL;HALFWIDTH KATAKANA LETTER KI
+FF78;AL;HALFWIDTH KATAKANA LETTER KU
+FF79;AL;HALFWIDTH KATAKANA LETTER KE
+FF7A;AL;HALFWIDTH KATAKANA LETTER KO
+FF7B;AL;HALFWIDTH KATAKANA LETTER SA
+FF7C;AL;HALFWIDTH KATAKANA LETTER SI
+FF7D;AL;HALFWIDTH KATAKANA LETTER SU
+FF7E;AL;HALFWIDTH KATAKANA LETTER SE
+FF7F;AL;HALFWIDTH KATAKANA LETTER SO
+FF80;AL;HALFWIDTH KATAKANA LETTER TA
+FF81;AL;HALFWIDTH KATAKANA LETTER TI
+FF82;AL;HALFWIDTH KATAKANA LETTER TU
+FF83;AL;HALFWIDTH KATAKANA LETTER TE
+FF84;AL;HALFWIDTH KATAKANA LETTER TO
+FF85;AL;HALFWIDTH KATAKANA LETTER NA
+FF86;AL;HALFWIDTH KATAKANA LETTER NI
+FF87;AL;HALFWIDTH KATAKANA LETTER NU
+FF88;AL;HALFWIDTH KATAKANA LETTER NE
+FF89;AL;HALFWIDTH KATAKANA LETTER NO
+FF8A;AL;HALFWIDTH KATAKANA LETTER HA
+FF8B;AL;HALFWIDTH KATAKANA LETTER HI
+FF8C;AL;HALFWIDTH KATAKANA LETTER HU
+FF8D;AL;HALFWIDTH KATAKANA LETTER HE
+FF8E;AL;HALFWIDTH KATAKANA LETTER HO
+FF8F;AL;HALFWIDTH KATAKANA LETTER MA
+FF90;AL;HALFWIDTH KATAKANA LETTER MI
+FF91;AL;HALFWIDTH KATAKANA LETTER MU
+FF92;AL;HALFWIDTH KATAKANA LETTER ME
+FF93;AL;HALFWIDTH KATAKANA LETTER MO
+FF94;AL;HALFWIDTH KATAKANA LETTER YA
+FF95;AL;HALFWIDTH KATAKANA LETTER YU
+FF96;AL;HALFWIDTH KATAKANA LETTER YO
+FF97;AL;HALFWIDTH KATAKANA LETTER RA
+FF98;AL;HALFWIDTH KATAKANA LETTER RI
+FF99;AL;HALFWIDTH KATAKANA LETTER RU
+FF9A;AL;HALFWIDTH KATAKANA LETTER RE
+FF9B;AL;HALFWIDTH KATAKANA LETTER RO
+FF9C;AL;HALFWIDTH KATAKANA LETTER WA
+FF9D;AL;HALFWIDTH KATAKANA LETTER N
+FF9E;NS;HALFWIDTH KATAKANA VOICED SOUND MARK
+FF9F;NS;HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
+FFA0;AL;HALFWIDTH HANGUL FILLER
+FFA1;AL;HALFWIDTH HANGUL LETTER KIYEOK
+FFA2;AL;HALFWIDTH HANGUL LETTER SSANGKIYEOK
+FFA3;AL;HALFWIDTH HANGUL LETTER KIYEOK-SIOS
+FFA4;AL;HALFWIDTH HANGUL LETTER NIEUN
+FFA5;AL;HALFWIDTH HANGUL LETTER NIEUN-CIEUC
+FFA6;AL;HALFWIDTH HANGUL LETTER NIEUN-HIEUH
+FFA7;AL;HALFWIDTH HANGUL LETTER TIKEUT
+FFA8;AL;HALFWIDTH HANGUL LETTER SSANGTIKEUT
+FFA9;AL;HALFWIDTH HANGUL LETTER RIEUL
+FFAA;AL;HALFWIDTH HANGUL LETTER RIEUL-KIYEOK
+FFAB;AL;HALFWIDTH HANGUL LETTER RIEUL-MIEUM
+FFAC;AL;HALFWIDTH HANGUL LETTER RIEUL-PIEUP
+FFAD;AL;HALFWIDTH HANGUL LETTER RIEUL-SIOS
+FFAE;AL;HALFWIDTH HANGUL LETTER RIEUL-THIEUTH
+FFAF;AL;HALFWIDTH HANGUL LETTER RIEUL-PHIEUPH
+FFB0;AL;HALFWIDTH HANGUL LETTER RIEUL-HIEUH
+FFB1;AL;HALFWIDTH HANGUL LETTER MIEUM
+FFB2;AL;HALFWIDTH HANGUL LETTER PIEUP
+FFB3;AL;HALFWIDTH HANGUL LETTER SSANGPIEUP
+FFB4;AL;HALFWIDTH HANGUL LETTER PIEUP-SIOS
+FFB5;AL;HALFWIDTH HANGUL LETTER SIOS
+FFB6;AL;HALFWIDTH HANGUL LETTER SSANGSIOS
+FFB7;AL;HALFWIDTH HANGUL LETTER IEUNG
+FFB8;AL;HALFWIDTH HANGUL LETTER CIEUC
+FFB9;AL;HALFWIDTH HANGUL LETTER SSANGCIEUC
+FFBA;AL;HALFWIDTH HANGUL LETTER CHIEUCH
+FFBB;AL;HALFWIDTH HANGUL LETTER KHIEUKH
+FFBC;AL;HALFWIDTH HANGUL LETTER THIEUTH
+FFBD;AL;HALFWIDTH HANGUL LETTER PHIEUPH
+FFBE;AL;HALFWIDTH HANGUL LETTER HIEUH
+FFC2;AL;HALFWIDTH HANGUL LETTER A
+FFC3;AL;HALFWIDTH HANGUL LETTER AE
+FFC4;AL;HALFWIDTH HANGUL LETTER YA
+FFC5;AL;HALFWIDTH HANGUL LETTER YAE
+FFC6;AL;HALFWIDTH HANGUL LETTER EO
+FFC7;AL;HALFWIDTH HANGUL LETTER E
+FFCA;AL;HALFWIDTH HANGUL LETTER YEO
+FFCB;AL;HALFWIDTH HANGUL LETTER YE
+FFCC;AL;HALFWIDTH HANGUL LETTER O
+FFCD;AL;HALFWIDTH HANGUL LETTER WA
+FFCE;AL;HALFWIDTH HANGUL LETTER WAE
+FFCF;AL;HALFWIDTH HANGUL LETTER OE
+FFD2;AL;HALFWIDTH HANGUL LETTER YO
+FFD3;AL;HALFWIDTH HANGUL LETTER U
+FFD4;AL;HALFWIDTH HANGUL LETTER WEO
+FFD5;AL;HALFWIDTH HANGUL LETTER WE
+FFD6;AL;HALFWIDTH HANGUL LETTER WI
+FFD7;AL;HALFWIDTH HANGUL LETTER YU
+FFDA;AL;HALFWIDTH HANGUL LETTER EU
+FFDB;AL;HALFWIDTH HANGUL LETTER YI
+FFDC;AL;HALFWIDTH HANGUL LETTER I
+FFE0;PO;FULLWIDTH CENT SIGN
+FFE1;PR;FULLWIDTH POUND SIGN
+FFE2;ID;FULLWIDTH NOT SIGN
+FFE3;ID;FULLWIDTH MACRON
+FFE4;ID;FULLWIDTH BROKEN BAR
+FFE5;PR;FULLWIDTH YEN SIGN
+FFE6;PR;FULLWIDTH WON SIGN
+FFE8;AL;HALFWIDTH FORMS LIGHT VERTICAL
+FFE9;AL;HALFWIDTH LEFTWARDS ARROW
+FFEA;AL;HALFWIDTH UPWARDS ARROW
+FFEB;AL;HALFWIDTH RIGHTWARDS ARROW
+FFEC;AL;HALFWIDTH DOWNWARDS ARROW
+FFED;AL;HALFWIDTH BLACK SQUARE
+FFEE;AL;HALFWIDTH WHITE CIRCLE
+FFF9;CM;INTERLINEAR ANNOTATION ANCHOR
+FFFA;CM;INTERLINEAR ANNOTATION SEPARATOR
+FFFB;CM;INTERLINEAR ANNOTATION TERMINATOR
+FFFC;CB;OBJECT REPLACEMENT CHARACTER
+FFFD;AI;REPLACEMENT CHARACTER
diff --git a/lib/unicode/names2.txt b/lib/unicode/Names.txt
index 8f283d716a..aa3dce03f3 100755..100644
--- a/lib/unicode/names2.txt
+++ b/lib/unicode/Names.txt
@@ -1,38 +1,75 @@
-@@ 0000 C0 Controls and Basic Latin 007F
+@@@ The Unicode Standard 3.0
+@@@+ Final Draft UC3M990825.lst
+ More annotation fixes for Tibetan.
+ Annotation added for 2231..2233.
+@@ 0000 C0 Controls and Basic Latin (Basic Latin) 007F
@ C0 controls
-0000 NULL
-0001 START OF HEADING
-0002 START OF TEXT
-0003 END OF TEXT
-0004 END OF TRANSMISSION
-0005 ENQUIRY
-0006 ACKNOWLEDGE
-0007 BELL
-0008 BACKSPACE
-0009 HORIZONTAL TABULATION
-000A LINE FEED
-000B VERTICAL TABULATION
-000C FORM FEED
-000D CARRIAGE RETURN
-000E SHIFT OUT
-000F SHIFT IN
-0010 DATA LINK ESCAPE
-0011 DEVICE CONTROL ONE
-0012 DEVICE CONTROL TWO
-0013 DEVICE CONTROL THREE
-0014 DEVICE CONTROL FOUR
-0015 NEGATIVE ACKNOWLEDGE
-0016 SYNCHRONOUS IDLE
-0017 END OF TRANSMISSION BLOCK
-0018 CANCEL
-0019 END OF MEDIUM
-001A SUBSTITUTE
+@+ Alias names are those for ISO 6429.
+0000 <control>
+ = NULL
+0001 <control>
+ = START OF HEADING
+0002 <control>
+ = START OF TEXT
+0003 <control>
+ = END OF TEXT
+0004 <control>
+ = END OF TRANSMISSION
+0005 <control>
+ = ENQUIRY
+0006 <control>
+ = ACKNOWLEDGE
+0007 <control>
+ = BELL
+0008 <control>
+ = BACKSPACE
+0009 <control>
+ = HORIZONTAL TABULATION
+000A <control>
+ = LINE FEED
+000B <control>
+ = VERTICAL TABULATION
+000C <control>
+ = FORM FEED
+000D <control>
+ = CARRIAGE RETURN
+000E <control>
+ = SHIFT OUT
+000F <control>
+ = SHIFT IN
+0010 <control>
+ = DATA LINK ESCAPE
+0011 <control>
+ = DEVICE CONTROL ONE
+0012 <control>
+ = DEVICE CONTROL TWO
+0013 <control>
+ = DEVICE CONTROL THREE
+0014 <control>
+ = DEVICE CONTROL FOUR
+0015 <control>
+ = NEGATIVE ACKNOWLEDGE
+0016 <control>
+ = SYNCHRONOUS IDLE
+0017 <control>
+ = END OF TRANSMISSION BLOCK
+0018 <control>
+ = CANCEL
+0019 <control>
+ = END OF MEDIUM
+001A <control>
+ = SUBSTITUTE
x (replacement character - FFFD)
-001B ESCAPE
-001C FILE SEPARATOR
-001D GROUP SEPARATOR
-001E RECORD SEPARATOR
-001F UNIT SEPARATOR
+001B <control>
+ = ESCAPE
+001C <control>
+ = FILE SEPARATOR
+001D <control>
+ = GROUP SEPARATOR
+001E <control>
+ = RECORD SEPARATOR
+001F <control>
+ = UNIT SEPARATOR
@ ASCII
0020 SPACE
* sometimes considered a control code
@@ -43,27 +80,27 @@
x (zero width no-break space - FEFF)
0021 EXCLAMATION MARK
= factorial
+ = bang
x (inverted exclamation mark - 00A1)
x (latin letter retroflex click - 01C3)
x (double exclamation mark - 203C)
+ x (interrobang - 203D)
x (heavy exclamation mark ornament - 2762)
0022 QUOTATION MARK
= APL quote
* neutral (vertical), used as opening or closing quotation mark
- * preferred characters for paired quotation marks are 201C & 201D
+ * preferred characters in English for paired quotation marks are 201C & 201D
x (modifier letter double prime - 02BA)
x (combining double acute accent - 030B)
x (combining double vertical line above - 030E)
- x (left double quotation mark - 201C)
- x (right double quotation mark - 201D)
x (double prime - 2033)
+ x (ditto mark - 3003)
0023 NUMBER SIGN
- = pound sign
+ = pound sign, hash, crosshatch, octothorpe
0024 DOLLAR SIGN
- = milreis
- = escudo
+ = milreis, escudo
* glyph may have one or two vertical bars
- * this code is unambiguously dollar sign, not "currency sign" or any other currency symbol
+ * other currency symbol characters: 20A0-20AF
x (currency sign - 00A4)
0025 PERCENT SIGN
x (arabic percent sign - 066A)
@@ -73,15 +110,12 @@
0027 APOSTROPHE
= APOSTROPHE-QUOTE
* neutral (vertical) glyph having mixed usage
- * preferred character for apostrophe is 02BC
- * preferred character for opening single quotation mark is 2018
- * preferred character for closing single quotation mark is 2019
+ * preferred character for apostrophe is 2019
+ * preferred characters in English for paired quotation marks are 2018 & 2019
x (modifier letter prime - 02B9)
x (modifier letter apostrophe - 02BC)
x (modifier letter vertical line - 02C8)
x (combining acute accent - 0301)
- x (left single quotation mark - 2018)
- x (right single quotation mark - 2019)
x (prime - 2032)
0028 LEFT PARENTHESIS
= OPENING PARENTHESIS
@@ -89,29 +123,35 @@
= CLOSING PARENTHESIS
* see discussion on semantics of paired bracketing characters
002A ASTERISK
+ = star (on phone keypads)
+ x (arabic five pointed star - 066D)
x (asterisk operator - 2217)
x (heavy asterisk - 2731)
002B PLUS SIGN
002C COMMA
+ = decimal separator
x (arabic comma - 060C)
+ x (single low-9 quotation mark - 201A)
x (ideographic comma - 3001)
002D HYPHEN-MINUS
= hyphen or minus sign
- = hyphus
* used for either hyphen or minus sign
- * other hyphen and dash characters: 2010-2015
x (hyphen - 2010)
x (non-breaking hyphen - 2011)
+ x (figure dash - 2012)
+ x (en dash - 2013)
x (minus sign - 2212)
002E FULL STOP
= PERIOD
+ = dot, decimal point
+ * may be rendered as a raised decimal point in old style numbers
x (arabic full stop - 06D4)
x (ideographic full stop - 3002)
002F SOLIDUS
= SLASH
- = virgule
- = shilling (British)
+ = virgule, shilling (British)
x (latin letter dental click - 01C0)
+ x (combining long solidus overlay - 0338)
x (fraction slash - 2044)
x (division slash - 2215)
0030 DIGIT ZERO
@@ -147,6 +187,8 @@
x (greek question mark - 037E)
x (arabic question mark - 061F)
x (interrobang - 203D)
+ x (question exclamation mark - 2048)
+ x (exclamation question mark - 2049)
0040 COMMERCIAL AT
0041 LATIN CAPITAL LETTER A
0042 LATIN CAPITAL LETTER B
@@ -167,11 +209,13 @@
x (black-letter capital h - 210C)
x (double-struck capital h - 210D)
0049 LATIN CAPITAL LETTER I
- * note alternative case mappings in Turkish
+ * Turkish and Azerbaijani use 0131 for lowercase
x (latin capital letter i with dot above - 0130)
- x (latin small letter dotless i - 0131)
+ x (cyrillic capital letter byelorussian-ukrainian i - 0406)
+ x (cyrillic letter palochka - 04C0)
x (script capital i - 2110)
x (black-letter capital i - 2111)
+ x (roman numeral one - 2160)
004A LATIN CAPITAL LETTER J
004B LATIN CAPITAL LETTER K
x (kelvin sign - 212A)
@@ -183,7 +227,6 @@
x (double-struck capital n - 2115)
004F LATIN CAPITAL LETTER O
0050 LATIN CAPITAL LETTER P
- x (script capital p - 2118)
x (double-struck capital p - 2119)
0051 LATIN CAPITAL LETTER Q
x (double-struck capital q - 211A)
@@ -210,13 +253,11 @@
005D RIGHT SQUARE BRACKET
= CLOSING SQUARE BRACKET
005E CIRCUMFLEX ACCENT
- = SPACING CIRCUMFLEX
* this is a spacing character
x (modifier letter up arrowhead - 02C4)
x (modifier letter circumflex accent - 02C6)
x (combining circumflex accent - 0302)
x (up arrowhead - 2303)
- # 0020 + 0302
005F LOW LINE
= SPACING UNDERSCORE
* this is a spacing character
@@ -224,14 +265,11 @@
x (combining macron below - 0331)
x (combining low line - 0332)
x (double low line - 2017)
- # 0020 + 0332
0060 GRAVE ACCENT
- = SPACING GRAVE
* this is a spacing character
x (modifier letter grave accent - 02CB)
x (combining grave accent - 0300)
x (reversed prime - 2035)
- # 0020 + 0300
0061 LATIN SMALL LETTER A
0062 LATIN SMALL LETTER B
0063 LATIN SMALL LETTER C
@@ -247,8 +285,7 @@
x (cyrillic small letter shha - 04BB)
x (planck constant - 210E)
0069 LATIN SMALL LETTER I
- * note alternative case mappings in Turkish
- x (latin capital letter i with dot above - 0130)
+ * Turkish and Azerbaijani use 0130 for uppercase
x (latin small letter dotless i - 0131)
006A LATIN SMALL LETTER J
006B LATIN SMALL LETTER K
@@ -256,6 +293,7 @@
x (script small l - 2113)
006D LATIN SMALL LETTER M
006E LATIN SMALL LETTER N
+ x (superscript latin small letter n - 207F)
006F LATIN SMALL LETTER O
x (script small o - 2134)
0070 LATIN SMALL LETTER P
@@ -275,6 +313,7 @@
= opening brace
007C VERTICAL LINE
= VERTICAL BAR
+ * used in pairs to indicate absolute value
x (latin letter dental click - 01C0)
x (divides - 2223)
x (light vertical bar - 2758)
@@ -286,643 +325,714 @@
x (small tilde - 02DC)
x (combining tilde - 0303)
x (tilde operator - 223C)
-007F DELETE
- * control code
-@@ 0080 C1 Controls and Latin-1 Supplement 00FF
-@ ISO 8859-1 (aka Latin1)
+ x (fullwidth tilde - FF5E)
+007F <control>
+ = DELETE
+@@ 0080 C1 Controls and Latin-1 Supplement (Latin-1 Supplement) 00FF
+@ C1 controls
+@+ Alias names are those for ISO 6429.
+0080 <control>
+0081 <control>
+0082 <control>
+ = BREAK PERMITTED HERE
+0083 <control>
+ = NO BREAK HERE
+0084 <control>
+ = INDEX
+0085 <control>
+ = NEXT LINE
+0086 <control>
+ = START OF SELECTED AREA
+0087 <control>
+ = END OF SELECTED AREA
+0088 <control>
+ = CHARACTER TABULATION SET
+0089 <control>
+ = CHARACTER TABULATION WITH JUSTIFICATION
+008A <control>
+ = LINE TABULATION SET
+008B <control>
+ = PARTIAL LINE DOWN
+008C <control>
+ = PARTIAL LINE UP
+008D <control>
+ = REVERSE LINE FEED
+008E <control>
+ = SINGLE SHIFT TWO
+008F <control>
+ = SINGLE SHIFT THREE
+0090 <control>
+ = DEVICE CONTROL STRING
+0091 <control>
+ = PRIVATE USE ONE
+0092 <control>
+ = PRIVATE USE TWO
+0093 <control>
+ = SET TRANSMIT STATE
+0094 <control>
+ = CANCEL CHARACTER
+0095 <control>
+ = MESSAGE WAITING
+0096 <control>
+ = START OF GUARDED AREA
+0097 <control>
+ = END OF GUARDED AREA
+0098 <control>
+ = START OF STRING
+0099 <control>
+009A <control>
+ = SINGLE CHARACTER INTRODUCER
+009B <control>
+ = CONTROL SEQUENCE INTRODUCER
+009C <control>
+ = STRING TERMINATOR
+009D <control>
+ = OPERATING SYSTEM COMMAND
+009E <control>
+ = PRIVACY MESSAGE
+009F <control>
+ = APPLICATION PROGRAM COMMAND
+@ ISO 8859-1 (aka Latin-1)
00A0 NO-BREAK SPACE
- = NON-BREAKING SPACE
x (space - 0020)
+ x (figure space - 2007)
+ x (narrow no-break space - 202F)
x (zero width no-break space - FEFF)
- # <noBreak> + 0020
+ # <noBreak> 0020
00A1 INVERTED EXCLAMATION MARK
- * Spanish
+ * Spanish, Asturian, Galician
x (exclamation mark - 0021)
00A2 CENT SIGN
00A3 POUND SIGN
- = pound sterling
+ = pound sterling, Irish punt
x (lira sign - 20A4)
00A4 CURRENCY SIGN
- * other currency symbol characters: 20A0-20CF
+ * other currency symbol characters: 20A0-20AF
x (dollar sign - 0024)
00A5 YEN SIGN
= yuan sign
* glyph may have one or two crossbars
00A6 BROKEN BAR
= BROKEN VERTICAL BAR
+ = parted rule (in typography)
00A7 SECTION SIGN
* paragraph sign in some European usage
00A8 DIAERESIS
- = SPACING DIAERESIS
* this is a spacing character
x (combining diaeresis - 0308)
- # 0020 + 0308
+ # 0020 0308
00A9 COPYRIGHT SIGN
x (sound recording copyright - 2117)
00AA FEMININE ORDINAL INDICATOR
* Spanish
- # <super> + 0061
-00AB LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+ # <super> 0061
+00AB LEFT-POINTING DOUBLE ANGLE QUOTATION MARK *
= LEFT POINTING GUILLEMET
+ = chevrons (in typography)
* usually opening, sometimes closing
x (much less-than - 226A)
x (left double angle bracket - 300A)
00AC NOT SIGN
+ = angled dash (in typography)
x (reversed not sign - 2310)
00AD SOFT HYPHEN
= discretionary hyphen
+ x (mongolian todo soft hyphen - 1806)
00AE REGISTERED SIGN
= REGISTERED TRADE MARK SIGN
00AF MACRON
- = SPACING MACRON
- = overline
- = APL overbar
+ = overline, APL overbar
* this is a spacing character
x (modifier letter macron - 02C9)
x (combining macron - 0304)
x (combining overline - 0305)
- # 0020 + 0304
+ # 0020 0304
00B0 DEGREE SIGN
* this is a spacing character
x (ring above - 02DA)
x (combining ring above - 030A)
+ x (superscript zero - 2070)
x (ring operator - 2218)
00B1 PLUS-MINUS SIGN
- = PLUS-OR-MINUS SIGN
x (minus-or-plus sign - 2213)
00B2 SUPERSCRIPT TWO
- = SUPERSCRIPT DIGIT TWO
= squared
+ * other superscript digit characters: 2070-2079
x (superscript one - 00B9)
- # <super> + 0032
+ # <super> 0032
00B3 SUPERSCRIPT THREE
- = SUPERSCRIPT DIGIT THREE
= cubed
x (superscript one - 00B9)
- # <super> + 0033
+ # <super> 0033
00B4 ACUTE ACCENT
- = SPACING ACUTE
* this is a spacing character
x (modifier letter prime - 02B9)
x (modifier letter acute accent - 02CA)
x (combining acute accent - 0301)
x (prime - 2032)
- # 0020 + 0301
+ # 0020 0301
00B5 MICRO SIGN
- x (greek small letter mu - 03BC)
- # 03BC
+ # 03BC greek small letter mu
00B6 PILCROW SIGN
= PARAGRAPH SIGN
* section sign in some European usage
+ x (reversed pilcrow sign - 204B)
x (curved stem paragraph sign ornament - 2761)
00B7 MIDDLE DOT
+ = midpoint (in typography)
= Georgian comma
= Greek middle dot
x (bullet - 2022)
x (one dot leader - 2024)
+ x (hyphenation point - 2027)
x (bullet operator - 2219)
x (dot operator - 22C5)
x (katakana middle dot - 30FB)
00B8 CEDILLA
- = SPACING CEDILLA
* this is a spacing character
* other spacing accent characters: 02D8-02DB
x (combining cedilla - 0327)
- # 0020 + 0327
+ # 0020 0327
00B9 SUPERSCRIPT ONE
- = SUPERSCRIPT DIGIT ONE
- * other superscript digit characters: 2070-2079
x (superscript two - 00B2)
x (superscript three - 00B3)
- # <super> + 0031
+ # <super> 0031
00BA MASCULINE ORDINAL INDICATOR
* Spanish
- # <super> + 006F
-00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+ # <super> 006F
+00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK *
= RIGHT POINTING GUILLEMET
* usually closing, sometimes opening
x (much greater-than - 226B)
x (right double angle bracket - 300B)
00BC VULGAR FRACTION ONE QUARTER
- = FRACTION ONE QUARTER
* bar may be horizontal or slanted
- # <fraction> + 0031 + 2044 + 0034
+ * other fraction characters: 2153-215E
+ # 0031 2044 0034
00BD VULGAR FRACTION ONE HALF
- = FRACTION ONE HALF
* bar may be horizontal or slanted
- # <fraction> + 0031 + 2044 + 0032
+ # 0031 2044 0032
00BE VULGAR FRACTION THREE QUARTERS
- = FRACTION THREE QUARTERS
* bar may be horizontal or slanted
- * other fraction characters: 2153-215E
- # <fraction> + 0033 + 2044 + 0034
+ # 0033 2044 0034
00BF INVERTED QUESTION MARK
= turned question mark
* Spanish
x (question mark - 003F)
00C0 LATIN CAPITAL LETTER A WITH GRAVE
- = LATIN CAPITAL LETTER A GRAVE
- * (many of the following have similar name transformations)
- : 0041 + 0300
+ : 0041 0300
00C1 LATIN CAPITAL LETTER A WITH ACUTE
- : 0041 + 0301
+ : 0041 0301
00C2 LATIN CAPITAL LETTER A WITH CIRCUMFLEX
- : 0041 + 0302
+ : 0041 0302
00C3 LATIN CAPITAL LETTER A WITH TILDE
- : 0041 + 0303
+ : 0041 0303
00C4 LATIN CAPITAL LETTER A WITH DIAERESIS
- : 0041 + 0308
+ : 0041 0308
00C5 LATIN CAPITAL LETTER A WITH RING ABOVE
- = LATIN CAPITAL LETTER A RING
x (angstrom sign - 212B)
- : 0041 + 030A
-00C6 LATIN CAPITAL LETTER AE
+ : 0041 030A
+00C6 LATIN CAPITAL LETTER AE (ash) *
= LATIN CAPITAL LIGATURE AE
00C7 LATIN CAPITAL LETTER C WITH CEDILLA
- : 0043 + 0327
+ : 0043 0327
00C8 LATIN CAPITAL LETTER E WITH GRAVE
- : 0045 + 0300
+ : 0045 0300
00C9 LATIN CAPITAL LETTER E WITH ACUTE
- : 0045 + 0301
+ : 0045 0301
00CA LATIN CAPITAL LETTER E WITH CIRCUMFLEX
- : 0045 + 0302
+ : 0045 0302
00CB LATIN CAPITAL LETTER E WITH DIAERESIS
- : 0045 + 0308
+ : 0045 0308
00CC LATIN CAPITAL LETTER I WITH GRAVE
- : 0049 + 0300
+ : 0049 0300
00CD LATIN CAPITAL LETTER I WITH ACUTE
- : 0049 + 0301
+ : 0049 0301
00CE LATIN CAPITAL LETTER I WITH CIRCUMFLEX
- : 0049 + 0302
+ : 0049 0302
00CF LATIN CAPITAL LETTER I WITH DIAERESIS
- : 0049 + 0308
-00D0 LATIN CAPITAL LETTER ETH
+ : 0049 0308
+00D0 LATIN CAPITAL LETTER ETH (Icelandic)
x (latin small letter eth - 00F0)
x (latin capital letter d with stroke - 0110)
x (latin capital letter african d - 0189)
00D1 LATIN CAPITAL LETTER N WITH TILDE
- : 004E + 0303
+ : 004E 0303
00D2 LATIN CAPITAL LETTER O WITH GRAVE
- : 004F + 0300
+ : 004F 0300
00D3 LATIN CAPITAL LETTER O WITH ACUTE
- : 004F + 0301
+ : 004F 0301
00D4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX
- : 004F + 0302
+ : 004F 0302
00D5 LATIN CAPITAL LETTER O WITH TILDE
- : 004F + 0303
+ : 004F 0303
00D6 LATIN CAPITAL LETTER O WITH DIAERESIS
- : 004F + 0308
+ : 004F 0308
00D7 MULTIPLICATION SIGN
+ = z notation Cartesian product
00D8 LATIN CAPITAL LETTER O WITH STROKE
= LATIN CAPITAL LETTER O SLASH
x (empty set - 2205)
00D9 LATIN CAPITAL LETTER U WITH GRAVE
- : 0055 + 0300
+ : 0055 0300
00DA LATIN CAPITAL LETTER U WITH ACUTE
- : 0055 + 0301
+ : 0055 0301
00DB LATIN CAPITAL LETTER U WITH CIRCUMFLEX
- : 0055 + 0302
+ : 0055 0302
00DC LATIN CAPITAL LETTER U WITH DIAERESIS
- : 0055 + 0308
+ : 0055 0308
00DD LATIN CAPITAL LETTER Y WITH ACUTE
- : 0059 + 0301
-00DE LATIN CAPITAL LETTER THORN
-00DF LATIN SMALL LETTER SHARP S
- = ess-zed
+ : 0059 0301
+00DE LATIN CAPITAL LETTER THORN (Icelandic)
+00DF LATIN SMALL LETTER SHARP S (German)
+ = Eszett
* German
* uppercase is "SS"
+ * in origin a ligature of 017F and 0073
x (greek small letter beta - 03B2)
00E0 LATIN SMALL LETTER A WITH GRAVE
- = LATIN SMALL LETTER A GRAVE
- * (many of the following have similar name transformations)
- : 0061 + 0300
+ : 0061 0300
00E1 LATIN SMALL LETTER A WITH ACUTE
- : 0061 + 0301
+ : 0061 0301
00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX
- : 0061 + 0302
+ : 0061 0302
00E3 LATIN SMALL LETTER A WITH TILDE
* Portuguese
- : 0061 + 0303
+ : 0061 0303
00E4 LATIN SMALL LETTER A WITH DIAERESIS
- : 0061 + 0308
+ : 0061 0308
00E5 LATIN SMALL LETTER A WITH RING ABOVE
- = LATIN SMALL LETTER A RING
- * Danish, Norwegian, Swedish
- : 0061 + 030A
-00E6 LATIN SMALL LETTER AE
+ * Danish, Norwegian, Swedish, Walloon
+ : 0061 030A
+00E6 LATIN SMALL LETTER AE (ash) *
= LATIN SMALL LIGATURE AE
- * IPA
+ = ash (from Old English æsc)
+ * Danish, Norwegian, Icelandic, Faroese, Old English, French, IPA
x (latin small ligature oe - 0153)
+ x (cyrillic small ligature a ie - 04D5)
00E7 LATIN SMALL LETTER C WITH CEDILLA
- : 0063 + 0327
+ : 0063 0327
00E8 LATIN SMALL LETTER E WITH GRAVE
- : 0065 + 0300
+ : 0065 0300
00E9 LATIN SMALL LETTER E WITH ACUTE
- : 0065 + 0301
+ : 0065 0301
00EA LATIN SMALL LETTER E WITH CIRCUMFLEX
- : 0065 + 0302
+ : 0065 0302
00EB LATIN SMALL LETTER E WITH DIAERESIS
- : 0065 + 0308
+ : 0065 0308
00EC LATIN SMALL LETTER I WITH GRAVE
- * Italian, Malagash
- : 0069 + 0300
+ * Italian, Malagasy
+ : 0069 0300
00ED LATIN SMALL LETTER I WITH ACUTE
- : 0069 + 0301
+ : 0069 0301
00EE LATIN SMALL LETTER I WITH CIRCUMFLEX
- : 0069 + 0302
+ : 0069 0302
00EF LATIN SMALL LETTER I WITH DIAERESIS
- : 0069 + 0308
-00F0 LATIN SMALL LETTER ETH
- * Icelandic, Faroese, old English, IPA
+ : 0069 0308
+00F0 LATIN SMALL LETTER ETH (Icelandic)
+ * Icelandic, Faroese, Old English, IPA
x (latin capital letter eth - 00D0)
+ x (greek small letter delta - 03B4)
+ x (partial differential - 2202)
00F1 LATIN SMALL LETTER N WITH TILDE
- : 006E + 0303
+ : 006E 0303
00F2 LATIN SMALL LETTER O WITH GRAVE
- : 006F + 0300
+ : 006F 0300
00F3 LATIN SMALL LETTER O WITH ACUTE
- : 006F + 0301
+ : 006F 0301
00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX
- : 006F + 0302
+ : 006F 0302
00F5 LATIN SMALL LETTER O WITH TILDE
* Portuguese, Estonian
- : 006F + 0303
+ : 006F 0303
00F6 LATIN SMALL LETTER O WITH DIAERESIS
- : 006F + 0308
+ : 006F 0308
00F7 DIVISION SIGN
00F8 LATIN SMALL LETTER O WITH STROKE
= LATIN SMALL LETTER O SLASH
* Danish, Norwegian, Faroese, IPA
00F9 LATIN SMALL LETTER U WITH GRAVE
* French, Italian
- : 0075 + 0300
+ : 0075 0300
00FA LATIN SMALL LETTER U WITH ACUTE
- : 0075 + 0301
+ : 0075 0301
00FB LATIN SMALL LETTER U WITH CIRCUMFLEX
- : 0075 + 0302
+ : 0075 0302
00FC LATIN SMALL LETTER U WITH DIAERESIS
- : 0075 + 0308
+ : 0075 0308
00FD LATIN SMALL LETTER Y WITH ACUTE
- * Czech, Slovak, Icelandic, Faroese, Malagash
- : 0079 + 0301
-00FE LATIN SMALL LETTER THORN
- * Icelandic, old English, IPA
+ * Czech, Slovak, Icelandic, Faroese, Welsh, Malagasy
+ : 0079 0301
+00FE LATIN SMALL LETTER THORN (Icelandic)
+ * Icelandic, Old English, phonetics
* Runic letter borrowed into Latin script
+ x (runic letter thurisaz thurs thorn - 16A6)
00FF LATIN SMALL LETTER Y WITH DIAERESIS
* French
x (latin capital letter y with diaeresis - 0178)
- : 0079 + 0308
+ : 0079 0308
@@ 0100 Latin Extended-A 017F
@ European Latin
0100 LATIN CAPITAL LETTER A WITH MACRON
- : 0041 + 0304
+ : 0041 0304
0101 LATIN SMALL LETTER A WITH MACRON
- * Latvian, ...
- : 0061 + 0304
+ * Latvian, Latin, ...
+ : 0061 0304
0102 LATIN CAPITAL LETTER A WITH BREVE
- : 0041 + 0306
+ : 0041 0306
0103 LATIN SMALL LETTER A WITH BREVE
- * Romanian, Vietnamese, ...
- : 0061 + 0306
+ * Romanian, Vietnamese, Latin, ...
+ : 0061 0306
0104 LATIN CAPITAL LETTER A WITH OGONEK
- : 0041 + 0328
+ : 0041 0328
0105 LATIN SMALL LETTER A WITH OGONEK
* Polish, Lithuanian, ...
- : 0061 + 0328
+ : 0061 0328
0106 LATIN CAPITAL LETTER C WITH ACUTE
- : 0043 + 0301
+ : 0043 0301
0107 LATIN SMALL LETTER C WITH ACUTE
* Polish, Croatian, ...
x (cyrillic small letter tshe - 045B)
- : 0063 + 0301
+ : 0063 0301
0108 LATIN CAPITAL LETTER C WITH CIRCUMFLEX
- : 0043 + 0302
+ : 0043 0302
0109 LATIN SMALL LETTER C WITH CIRCUMFLEX
* Esperanto
- : 0063 + 0302
+ : 0063 0302
010A LATIN CAPITAL LETTER C WITH DOT ABOVE
- : 0043 + 0307
+ : 0043 0307
010B LATIN SMALL LETTER C WITH DOT ABOVE
- * Maltese
- : 0063 + 0307
+ * Maltese, Irish Gaelic (old orthography)
+ : 0063 0307
010C LATIN CAPITAL LETTER C WITH CARON
- : 0043 + 030C
+ : 0043 030C
010D LATIN SMALL LETTER C WITH CARON
- * (many)
- : 0063 + 030C
+ * Czech, Slovak, Slovenian, and many other languages
+ : 0063 030C
010E LATIN CAPITAL LETTER D WITH CARON
* the form using caron/hacek is preferred in all contexts
- : 0044 + 030C
+ : 0044 030C
010F LATIN SMALL LETTER D WITH CARON
* Czech, Slovak
* the form using apostrophe is preferred in typesetting
- : 0064 + 030C
+ : 0064 030C
0110 LATIN CAPITAL LETTER D WITH STROKE
x (latin capital letter eth - 00D0)
x (latin small letter d with stroke - 0111)
x (latin capital letter african d - 0189)
0111 LATIN SMALL LETTER D WITH STROKE
- * Croatian, Vietnamese, Lappish
+ * Croatian, Vietnamese, Sámi
x (latin capital letter d with stroke - 0110)
x (cyrillic small letter dje - 0452)
0112 LATIN CAPITAL LETTER E WITH MACRON
- : 0045 + 0304
+ : 0045 0304
0113 LATIN SMALL LETTER E WITH MACRON
- * Latvian, ...
- : 0065 + 0304
+ * Latvian, Latin, ...
+ : 0065 0304
0114 LATIN CAPITAL LETTER E WITH BREVE
- : 0045 + 0306
+ : 0045 0306
0115 LATIN SMALL LETTER E WITH BREVE
- * Malay, ...
- : 0065 + 0306
+ * Malay, Latin, ...
+ : 0065 0306
0116 LATIN CAPITAL LETTER E WITH DOT ABOVE
- : 0045 + 0307
+ : 0045 0307
0117 LATIN SMALL LETTER E WITH DOT ABOVE
* Lithuanian
- : 0065 + 0307
+ : 0065 0307
0118 LATIN CAPITAL LETTER E WITH OGONEK
- : 0045 + 0328
+ : 0045 0328
0119 LATIN SMALL LETTER E WITH OGONEK
* Polish, Lithuanian, ...
- : 0065 + 0328
+ : 0065 0328
011A LATIN CAPITAL LETTER E WITH CARON
- : 0045 + 030C
+ : 0045 030C
011B LATIN SMALL LETTER E WITH CARON
* Czech, ...
- : 0065 + 030C
+ : 0065 030C
011C LATIN CAPITAL LETTER G WITH CIRCUMFLEX
- : 0047 + 0302
+ : 0047 0302
011D LATIN SMALL LETTER G WITH CIRCUMFLEX
* Esperanto
- : 0067 + 0302
+ : 0067 0302
011E LATIN CAPITAL LETTER G WITH BREVE
- : 0047 + 0306
+ : 0047 0306
011F LATIN SMALL LETTER G WITH BREVE
- * Turkish
+ * Turkish, Azerbaijani
x (latin small letter g with caron - 01E7)
- : 0067 + 0306
+ : 0067 0306
0120 LATIN CAPITAL LETTER G WITH DOT ABOVE
- : 0047 + 0307
+ : 0047 0307
0121 LATIN SMALL LETTER G WITH DOT ABOVE
- * Maltese, ...
- : 0067 + 0307
+ * Maltese, Irish Gaelic (old orthography)
+ : 0067 0307
0122 LATIN CAPITAL LETTER G WITH CEDILLA
- : 0047 + 0327
+ : 0047 0327
0123 LATIN SMALL LETTER G WITH CEDILLA
- * Latvian, Lappish
- * there are three glyph variants
- : 0067 + 0327
+ * Latvian
+ * there are three major glyph variants
+ : 0067 0327
0124 LATIN CAPITAL LETTER H WITH CIRCUMFLEX
- : 0048 + 0302
+ : 0048 0302
0125 LATIN SMALL LETTER H WITH CIRCUMFLEX
* Esperanto
- : 0068 + 0302
+ : 0068 0302
0126 LATIN CAPITAL LETTER H WITH STROKE
0127 LATIN SMALL LETTER H WITH STROKE
* Maltese, IPA, ...
x (cyrillic small letter tshe - 045B)
x (planck constant over two pi - 210F)
0128 LATIN CAPITAL LETTER I WITH TILDE
- : 0049 + 0303
+ : 0049 0303
0129 LATIN SMALL LETTER I WITH TILDE
- * Greenlandic
- : 0069 + 0303
+ * Greenlandic (old orthography)
+ : 0069 0303
012A LATIN CAPITAL LETTER I WITH MACRON
- : 0049 + 0304
+ : 0049 0304
012B LATIN SMALL LETTER I WITH MACRON
- * Latvian, ...
- : 0069 + 0304
+ * Latvian, Latin, ...
+ : 0069 0304
012C LATIN CAPITAL LETTER I WITH BREVE
- : 0049 + 0306
+ : 0049 0306
012D LATIN SMALL LETTER I WITH BREVE
* Latin, ...
- : 0069 + 0306
+ : 0069 0306
012E LATIN CAPITAL LETTER I WITH OGONEK
- : 0049 + 0328
+ : 0049 0328
012F LATIN SMALL LETTER I WITH OGONEK
* Lithuanian, ...
- : 0069 + 0328
+ : 0069 0328
0130 LATIN CAPITAL LETTER I WITH DOT ABOVE
= LATIN CAPITAL LETTER I DOT
- * Turkish
- * note case mapping
+ * Turkish, Azerbaijani
+ * lowercase is 0069
x (latin capital letter i - 0049)
- x (latin small letter i - 0069)
- : 0049 + 0307
+ : 0049 0307
0131 LATIN SMALL LETTER DOTLESS I
- * Turkish
- * note case mapping
- x (latin capital letter i - 0049)
+ * Turkish, Azerbaijani
+ * uppercase is 0049
x (latin small letter i - 0069)
0132 LATIN CAPITAL LIGATURE IJ
- # 0049 + 004A
+ # 0049 004A
0133 LATIN SMALL LIGATURE IJ
* Dutch
- # 0069 + 006A
+ # 0069 006A
0134 LATIN CAPITAL LETTER J WITH CIRCUMFLEX
- : 004A + 0302
+ : 004A 0302
0135 LATIN SMALL LETTER J WITH CIRCUMFLEX
* Esperanto
- : 006A + 0302
+ : 006A 0302
0136 LATIN CAPITAL LETTER K WITH CEDILLA
- : 004B + 0327
+ : 004B 0327
0137 LATIN SMALL LETTER K WITH CEDILLA
- * Latvian, ...
- : 006B + 0327
-0138 LATIN SMALL LETTER KRA
- * old Greenlandic
+ * Latvian
+ : 006B 0327
+0138 LATIN SMALL LETTER KRA (Greenlandic)
+ * Greenlandic (old orthography)
0139 LATIN CAPITAL LETTER L WITH ACUTE
- : 004C + 0301
+ : 004C 0301
013A LATIN SMALL LETTER L WITH ACUTE
* Slovak
- : 006C + 0301
+ : 006C 0301
013B LATIN CAPITAL LETTER L WITH CEDILLA
- : 004C + 0327
+ : 004C 0327
013C LATIN SMALL LETTER L WITH CEDILLA
* Latvian
- : 006C + 0327
+ : 006C 0327
013D LATIN CAPITAL LETTER L WITH CARON
- : 004C + 030C
+ : 004C 030C
013E LATIN SMALL LETTER L WITH CARON
* Slovak
* the form using apostrophe is preferred in typesetting
- : 006C + 030C
+ : 006C 030C
013F LATIN CAPITAL LETTER L WITH MIDDLE DOT
- # 004C + 00B7
+ * some fonts show the middle dot inside the L, but the preferred form has the dot following the L
+ # 004C 00B7
0140 LATIN SMALL LETTER L WITH MIDDLE DOT
* Catalan
- # 006C + 00B7
+ # 006C 00B7
0141 LATIN CAPITAL LETTER L WITH STROKE
0142 LATIN SMALL LETTER L WITH STROKE
* Polish, ...
x (latin small letter l with bar - 019A)
0143 LATIN CAPITAL LETTER N WITH ACUTE
- : 004E + 0301
+ : 004E 0301
0144 LATIN SMALL LETTER N WITH ACUTE
* Polish, ...
- : 006E + 0301
+ : 006E 0301
0145 LATIN CAPITAL LETTER N WITH CEDILLA
- : 004E + 0327
+ : 004E 0327
0146 LATIN SMALL LETTER N WITH CEDILLA
* Latvian
- : 006E + 0327
+ : 006E 0327
0147 LATIN CAPITAL LETTER N WITH CARON
- : 004E + 030C
+ : 004E 030C
0148 LATIN SMALL LETTER N WITH CARON
* Czech, Slovak
- : 006E + 030C
+ : 006E 030C
0149 LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
= LATIN SMALL LETTER APOSTROPHE N
* Afrikaans
* this is not actually a single letter
- # 02BC + 006E
-014A LATIN CAPITAL LETTER ENG
-014B LATIN SMALL LETTER ENG
- * Sami, IPA, ...
+ # 02BC 006E
+014A LATIN CAPITAL LETTER ENG (Sami)
+ * glyph may also have appearance of large form of the small letter
+014B LATIN SMALL LETTER ENG (Sami)
+ * Sámi, Mende, IPA, ...
014C LATIN CAPITAL LETTER O WITH MACRON
- : 004F + 0304
+ : 004F 0304
014D LATIN SMALL LETTER O WITH MACRON
- * Latvian, ...
- : 006F + 0304
+ * Latvian, Latin, ...
+ : 006F 0304
014E LATIN CAPITAL LETTER O WITH BREVE
- : 004F + 0306
+ : 004F 0306
014F LATIN SMALL LETTER O WITH BREVE
* Latin
- : 006F + 0306
+ : 006F 0306
0150 LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
- : 004F + 030B
+ : 004F 030B
0151 LATIN SMALL LETTER O WITH DOUBLE ACUTE
* Hungarian
- : 006F + 030B
+ : 006F 030B
0152 LATIN CAPITAL LIGATURE OE
0153 LATIN SMALL LIGATURE OE
- = LATIN ... LETTER O E
- * French, IPA, ...
+ = LATIN SMALL LETTER O E
+ = ethel (from Old English eðel)
+ * French, IPA, Old Icelandic, Old English, ...
x (latin small letter ae - 00E6)
x (latin letter small capital oe - 0276)
0154 LATIN CAPITAL LETTER R WITH ACUTE
- : 0052 + 0301
+ : 0052 0301
0155 LATIN SMALL LETTER R WITH ACUTE
* Slovak, ...
- : 0072 + 0301
+ : 0072 0301
0156 LATIN CAPITAL LETTER R WITH CEDILLA
- : 0052 + 0327
+ : 0052 0327
0157 LATIN SMALL LETTER R WITH CEDILLA
* Latvian
- : 0072 + 0327
+ : 0072 0327
0158 LATIN CAPITAL LETTER R WITH CARON
- : 0052 + 030C
+ : 0052 030C
0159 LATIN SMALL LETTER R WITH CARON
* Czech, ...
- : 0072 + 030C
+ : 0072 030C
015A LATIN CAPITAL LETTER S WITH ACUTE
- : 0053 + 0301
+ : 0053 0301
015B LATIN SMALL LETTER S WITH ACUTE
- * Polish, ...
- : 0073 + 0301
+ * Polish, Indic transliteration, ...
+ : 0073 0301
015C LATIN CAPITAL LETTER S WITH CIRCUMFLEX
- : 0053 + 0302
+ : 0053 0302
015D LATIN SMALL LETTER S WITH CIRCUMFLEX
* Esperanto
- : 0073 + 0302
-015E LATIN CAPITAL LETTER S WITH CEDILLA
- : 0053 + 0327
-015F LATIN SMALL LETTER S WITH CEDILLA
- * Turkish, Romanian, ...
- * the form using under-comma is taken to be a glyph variant
- : 0073 + 0327
+ : 0073 0302
+015E LATIN CAPITAL LETTER S WITH CEDILLA *
+ : 0053 0327
+015F LATIN SMALL LETTER S WITH CEDILLA *
+ * Turkish, Azerbaijani, Romanian, ...
+ * this character is used in both Turkish and Romanian data
+ * a glyph variant with comma below is preferred for Romanian
+ x (latin small letter s with comma below - 0219)
+ : 0073 0327
0160 LATIN CAPITAL LETTER S WITH CARON
- : 0053 + 030C
+ : 0053 030C
0161 LATIN SMALL LETTER S WITH CARON
- * (many)
- : 0073 + 030C
-0162 LATIN CAPITAL LETTER T WITH CEDILLA
- : 0054 + 0327
-0163 LATIN SMALL LETTER T WITH CEDILLA
- * Romanian, ...
- * the form using under-comma is taken to be a glyph variant
- : 0074 + 0327
+ * Czech, Estonian, Finnish, Slovak, and many other languages
+ : 0073 030C
+0162 LATIN CAPITAL LETTER T WITH CEDILLA *
+ : 0054 0327
+0163 LATIN SMALL LETTER T WITH CEDILLA *
+ * Romanian, Semitic transliteration, ...
+ * this character is used in Romanian data
+ * a glyph variant with comma below is preferred for Romanian
+ x (latin small letter t with comma below - 021B)
+ : 0074 0327
0164 LATIN CAPITAL LETTER T WITH CARON
* the form using caron/hacek is preferred in all contexts
- : 0054 + 030C
+ : 0054 030C
0165 LATIN SMALL LETTER T WITH CARON
* Czech, Slovak
* the form using apostrophe is preferred in typesetting
- : 0074 + 030C
+ : 0074 030C
0166 LATIN CAPITAL LETTER T WITH STROKE
0167 LATIN SMALL LETTER T WITH STROKE
- * Lappish
+ * Sámi
0168 LATIN CAPITAL LETTER U WITH TILDE
- : 0055 + 0303
+ : 0055 0303
0169 LATIN SMALL LETTER U WITH TILDE
- * Greenlandic
- : 0075 + 0303
+ * Greenlandic (old orthography)
+ : 0075 0303
016A LATIN CAPITAL LETTER U WITH MACRON
- : 0055 + 0304
+ : 0055 0304
016B LATIN SMALL LETTER U WITH MACRON
- * Latvian, Lithuanian, ...
- : 0075 + 0304
+ * Latvian, Lithuanian, Latin, ...
+ : 0075 0304
016C LATIN CAPITAL LETTER U WITH BREVE
- : 0055 + 0306
+ : 0055 0306
016D LATIN SMALL LETTER U WITH BREVE
* Latin, Esperanto, ...
- : 0075 + 0306
+ : 0075 0306
016E LATIN CAPITAL LETTER U WITH RING ABOVE
- : 0055 + 030A
+ : 0055 030A
016F LATIN SMALL LETTER U WITH RING ABOVE
* Czech, ...
- : 0075 + 030A
+ : 0075 030A
0170 LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
- : 0055 + 030B
+ : 0055 030B
0171 LATIN SMALL LETTER U WITH DOUBLE ACUTE
* Hungarian
- : 0075 + 030B
+ : 0075 030B
0172 LATIN CAPITAL LETTER U WITH OGONEK
- : 0055 + 0328
+ : 0055 0328
0173 LATIN SMALL LETTER U WITH OGONEK
* Lithuanian
- : 0075 + 0328
+ : 0075 0328
0174 LATIN CAPITAL LETTER W WITH CIRCUMFLEX
- : 0057 + 0302
+ : 0057 0302
0175 LATIN SMALL LETTER W WITH CIRCUMFLEX
* Welsh
- : 0077 + 0302
+ : 0077 0302
0176 LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
- : 0059 + 0302
+ : 0059 0302
0177 LATIN SMALL LETTER Y WITH CIRCUMFLEX
* Welsh
- : 0079 + 0302
+ : 0079 0302
0178 LATIN CAPITAL LETTER Y WITH DIAERESIS
- * French
+ * French, Igbo
x (latin small letter y with diaeresis - 00FF)
- : 0059 + 0308
+ : 0059 0308
0179 LATIN CAPITAL LETTER Z WITH ACUTE
- : 005A + 0301
+ : 005A 0301
017A LATIN SMALL LETTER Z WITH ACUTE
* Polish, ...
- : 007A + 0301
+ : 007A 0301
017B LATIN CAPITAL LETTER Z WITH DOT ABOVE
- : 005A + 0307
+ : 005A 0307
017C LATIN SMALL LETTER Z WITH DOT ABOVE
* Polish, ...
- : 007A + 0307
+ : 007A 0307
017D LATIN CAPITAL LETTER Z WITH CARON
- : 005A + 030C
+ : 005A 030C
017E LATIN SMALL LETTER Z WITH CARON
- * (many)
- : 007A + 030C
+ * Czech, Estonian, Finnish, Slovak, Slovenian, and many other languages
+ : 007A 030C
017F LATIN SMALL LETTER LONG S
- # 0073
+ * in common use in Roman types until the 18th century
+ * in current use in Fraktur and Gaelic types
+ # 0073 latin small letter s
@@ 0180 Latin Extended-B 024F
@ Latin extended-B
0180 LATIN SMALL LETTER B WITH STROKE
- * Americanist usage for phonetic beta
+ * Americanist and Indo-Europeanist usage for phonetic beta
+ * Old Saxon
x (greek small letter beta - 03B2)
x (blank symbol - 2422)
0181 LATIN CAPITAL LETTER B WITH HOOK
+ * Zulu, Pan-Nigerian alphabet
x (latin small letter b with hook - 0253)
0182 LATIN CAPITAL LETTER B WITH TOPBAR
0183 LATIN SMALL LETTER B WITH TOPBAR
- * Ex-Soviet minority language scripts
+ * Zhuang
+ * former Soviet minority language scripts
x (cyrillic capital letter be - 0411)
0184 LATIN CAPITAL LETTER TONE SIX
0185 LATIN SMALL LETTER TONE SIX
@@ -940,28 +1050,30 @@
0187 LATIN CAPITAL LETTER C WITH HOOK
0188 LATIN SMALL LETTER C WITH HOOK
* African
-0189 LATIN CAPITAL LETTER AFRICAN D
+0189 LATIN CAPITAL LETTER AFRICAN D *
+ * Ewe
x (latin capital letter eth - 00D0)
x (latin capital letter d with stroke - 0110)
x (latin small letter d with tail - 0256)
018A LATIN CAPITAL LETTER D WITH HOOK
- * African
+ * Pan-Nigerian alphabet
x (latin small letter d with hook - 0257)
018B LATIN CAPITAL LETTER D WITH TOPBAR
018C LATIN SMALL LETTER D WITH TOPBAR
- * Ex-Soviet minority language scripts
+ * former-Soviet minority language scripts
018D LATIN SMALL LETTER TURNED DELTA
* archaic phonetic for labialized dental fricative
* recommended spellings 007A 02B7 or 007A 032B
018E LATIN CAPITAL LETTER REVERSED E
= LATIN CAPITAL LETTER TURNED E
- * Nigerian
- * alternate uppercase usage to the following
- x (latin small letter turned e - 01DD)
+ * Pan-Nigerian alphabet
+ * lowercase is 01DD
018F LATIN CAPITAL LETTER SCHWA
* Azerbaijani, ...
x (latin small letter schwa - 0259)
+ x (cyrillic capital letter schwa - 04D8)
0190 LATIN CAPITAL LETTER OPEN E
+ = LATIN CAPITAL LETTER EPSILON
* African
x (latin small letter open e - 025B)
x (euler constant - 2107)
@@ -969,32 +1081,35 @@
* African
0192 LATIN SMALL LETTER F WITH HOOK
= LATIN SMALL LETTER SCRIPT F
- = Florin currency symbol (Dutch)
+ = Florin currency symbol (Netherlands)
= function symbol
+ = abbreviation convention for folder
0193 LATIN CAPITAL LETTER G WITH HOOK
* African
x (latin small letter g with hook - 0260)
0194 LATIN CAPITAL LETTER GAMMA
* African
x (latin small letter gamma - 0263)
-0195 LATIN SMALL LETTER HV
- * Gothic
+0195 LATIN SMALL LETTER HV (hwair)
+ * Gothic transliteration
+ * uppercase is 01F6
0196 LATIN CAPITAL LETTER IOTA
* African
x (latin small letter iota - 0269)
0197 LATIN CAPITAL LETTER I WITH STROKE
- = i bar
+ = barred i, i bar
* African
* ISO 6438 gives lowercase as 026A, not 0268
x (latin letter small capital i - 026A)
0198 LATIN CAPITAL LETTER K WITH HOOK
0199 LATIN SMALL LETTER K WITH HOOK
- * African
+ * Hausa, Pan-Nigerian alphabet
019A LATIN SMALL LETTER L WITH BAR
- * Americanist phonetic usage
+ = barred l
+ * Americanist phonetic usage for 026C
x (latin small letter l with stroke - 0142)
019B LATIN SMALL LETTER LAMBDA WITH STROKE
- = lambda bar
+ = barred lambda, lambda bar
* Americanist phonetic usage
019C LATIN CAPITAL LETTER TURNED M
* Zhuang
@@ -1005,26 +1120,27 @@
019E LATIN SMALL LETTER N WITH LONG RIGHT LEG
* archaic phonetic for Japanese syllabic "n"
* recommended spelling 006E 0329
-019F LATIN CAPITAL LETTER O WITH MIDDLE TILDE
- = LATIN CAPITAL LETTER BARRED O
- = o bar
- * note case mapping
- * African, Ex-Soviet minority language scripts
- x (latin small letter barred o - 0275)
+019F LATIN CAPITAL LETTER O WITH MIDDLE TILDE *
+ = barred o, o bar
+ * lowercase is 0275
+ * African
+ x (cyrillic capital letter barred o - 04E8)
01A0 LATIN CAPITAL LETTER O WITH HORN
- : 004F + 031B
+ : 004F 031B
01A1 LATIN SMALL LETTER O WITH HORN
* Vietnamese
- : 006F + 031B
-01A2 LATIN CAPITAL LETTER OI
-01A3 LATIN SMALL LETTER OI
- * old Azerbaijani
+ : 006F 031B
+01A2 LATIN CAPITAL LETTER OI (gha)
+01A3 LATIN SMALL LETTER OI (gha)
+ = gha
+ * Pan-Turkic Latin alphabets
01A4 LATIN CAPITAL LETTER P WITH HOOK
01A5 LATIN SMALL LETTER P WITH HOOK
* African
01A6 LATIN LETTER YR
* old Norse
- * from German Standard DIN 31624
+ * from German Standard DIN 31624 and ISO 5246-2
+ * lowercase is 0280
01A7 LATIN CAPITAL LETTER TONE TWO
01A8 LATIN SMALL LETTER TONE TWO
* Zhuang
@@ -1035,7 +1151,7 @@
x (latin small letter esh - 0283)
x (greek capital letter sigma - 03A3)
01AA LATIN LETTER REVERSED ESH LOOP
- * archaic phonetic for labialized palato-alveolar or palatal fricative
+ * archaic phonetic for labialized palatoalveolar or palatal fricative
* Twi
* recommended spellings 0283 02B7, 00E7 02B7, 0068 0265, etc.
01AB LATIN SMALL LETTER T WITH PALATAL HOOK
@@ -1048,10 +1164,10 @@
* African
x (latin small letter t with retroflex hook - 0288)
01AF LATIN CAPITAL LETTER U WITH HORN
- : 0055 + 031B
+ : 0055 031B
01B0 LATIN SMALL LETTER U WITH HORN
* Vietnamese
- : 0075 + 031B
+ : 0075 031B
01B1 LATIN CAPITAL LETTER UPSILON
* African
* typographically based on turned capital Greek omega
@@ -1063,16 +1179,18 @@
x (latin small letter v with hook - 028B)
01B3 LATIN CAPITAL LETTER Y WITH HOOK
01B4 LATIN SMALL LETTER Y WITH HOOK
- * African
+ * Bini, Esoko, and other Edo languages in West Africa
01B5 LATIN CAPITAL LETTER Z WITH STROKE
01B6 LATIN SMALL LETTER Z WITH STROKE
- = z bar
- * variant of Latin "z"
+ = barred z, z bar
+ * Pan-Turkic Latin orthography
+ * handwritten variant of Latin "z"
x (latin small letter z - 007A)
01B7 LATIN CAPITAL LETTER EZH
- = LATIN CAPITAL LETTER YOGH
- * African
- x (latin small letter ezh - 0292)
+ * African, Skolt Sámi
+ * lowercase is 0292
+ x (latin capital letter yogh - 021C)
+ x (cyrillic capital letter abkhasian dze - 04E0)
01B8 LATIN CAPITAL LETTER EZH REVERSED
01B9 LATIN SMALL LETTER EZH REVERSED
* archaic phonetic for voiced pharyngeal fricative
@@ -1081,7 +1199,7 @@
x (latin letter pharyngeal voiced fricative - 0295)
x (arabic letter ain - 0639)
01BA LATIN SMALL LETTER EZH WITH TAIL
- * archaic phonetic for labialized voiced palato-alveolar or palatal fricative
+ * archaic phonetic for labialized voiced palatoalveolar or palatal fricative
* Twi
* recommended spellings 0292 02B7 or 006A 02B7
01BB LATIN LETTER TWO WITH STROKE
@@ -1094,11 +1212,15 @@
01BE LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE
* archaic phonetic for [ts] affricate
* recommended spelling 0074 0073
+ * letter form is actually derived from ligation of ts, rather than inverted glottal stop
01BF LATIN LETTER WYNN
+ = wen
* Runic letter borrowed into Latin script
* replaced by "w" in modern transcriptions of Old English
+ * uppercase is 01F7
+ x (runic letter wunjo wynn w - 16B9)
01C0 LATIN LETTER DENTAL CLICK
- = LATIN LETTER PIPE
+ = pipe
* Khoisan tradition
* "c" in Zulu orthography
x (solidus - 002F)
@@ -1106,15 +1228,14 @@
x (latin small letter turned t - 0287)
x (divides - 2223)
01C1 LATIN LETTER LATERAL CLICK
- = LATIN LETTER DOUBLE PIPE
+ = double pipe
* Khoisan tradition
* "x" in Zulu orthography
x (latin letter inverted glottal stop - 0296)
x (parallel to - 2225)
01C2 LATIN LETTER ALVEOLAR CLICK
- = LATIN LETTER PIPE DOUBLE BAR
+ = double-barred pipe
* Khoisan tradition
- * no IPA equivalent
x (not equal to - 2260)
01C3 LATIN LETTER RETROFLEX CLICK
= LATIN LETTER EXCLAMATION MARK
@@ -1124,193 +1245,271 @@
x (latin letter stretched c - 0297)
@ Croatian digraphs matching Serbian Cyrillic letters
01C4 LATIN CAPITAL LETTER DZ WITH CARON
- # 0044 + 017D
+ # 0044 017D
01C5 LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON
- # 0044 + 017E
+ # 0044 017E
01C6 LATIN SMALL LETTER DZ WITH CARON
x (cyrillic small letter dzhe - 045F)
- # 0064 + 017E
+ # 0064 017E
01C7 LATIN CAPITAL LETTER LJ
- # 004C + 004A
+ # 004C 004A
01C8 LATIN CAPITAL LETTER L WITH SMALL LETTER J
- # 004C + 006A
+ # 004C 006A
01C9 LATIN SMALL LETTER LJ
x (cyrillic small letter lje - 0459)
- # 006C + 006A
+ # 006C 006A
01CA LATIN CAPITAL LETTER NJ
- # 004E + 004A
+ # 004E 004A
01CB LATIN CAPITAL LETTER N WITH SMALL LETTER J
- # 004E + 006A
+ # 004E 006A
01CC LATIN SMALL LETTER NJ
x (cyrillic small letter nje - 045A)
- # 006E + 006A
+ # 006E 006A
@ Pinyin diacritic-vowel combinations
01CD LATIN CAPITAL LETTER A WITH CARON
- : 0041 + 030C
+ : 0041 030C
01CE LATIN SMALL LETTER A WITH CARON
* Pinyin third tone
- : 0061 + 030C
+ : 0061 030C
01CF LATIN CAPITAL LETTER I WITH CARON
- : 0049 + 030C
+ : 0049 030C
01D0 LATIN SMALL LETTER I WITH CARON
* Pinyin third tone
- : 0069 + 030C
+ : 0069 030C
01D1 LATIN CAPITAL LETTER O WITH CARON
- : 004F + 030C
+ : 004F 030C
01D2 LATIN SMALL LETTER O WITH CARON
* Pinyin third tone
- : 006F + 030C
+ : 006F 030C
01D3 LATIN CAPITAL LETTER U WITH CARON
- : 0055 + 030C
+ : 0055 030C
01D4 LATIN SMALL LETTER U WITH CARON
* Pinyin third tone
- : 0075 + 030C
+ : 0075 030C
01D5 LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON
- : 00DC + 0304
+ : 00DC 0304
01D6 LATIN SMALL LETTER U WITH DIAERESIS AND MACRON
* Pinyin first tone
- : 00FC + 0304
+ : 00FC 0304
01D7 LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE
- : 00DC + 0301
+ : 00DC 0301
01D8 LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE
* Pinyin second tone
- : 00FC + 0301
+ : 00FC 0301
01D9 LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON
- : 00DC + 030C
+ : 00DC 030C
01DA LATIN SMALL LETTER U WITH DIAERESIS AND CARON
* Pinyin third tone
- : 00FC + 030C
+ : 00FC 030C
01DB LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE
- : 00DC + 0300
+ : 00DC 0300
01DC LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE
* Pinyin fourth tone
- : 00FC + 0300
+ : 00FC 0300
@ Additions
01DD LATIN SMALL LETTER TURNED E
- * Nigerian
+ * Pan-Nigerian alphabet
* all other usages of schwa are 0259
- * note case mapping
- x (latin capital letter reversed e - 018E)
+ * uppercase is 018E
x (latin small letter schwa - 0259)
01DE LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON
- : 00C4 + 0304
+ : 00C4 0304
01DF LATIN SMALL LETTER A WITH DIAERESIS AND MACRON
- * Lappish
- : 00E4 + 0304
+ * Livonian, Uralicist usage
+ : 00E4 0304
01E0 LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON
- : 0041 + 0307 + 0304
+ : 0226 0304
01E1 LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON
- * Lappish
- : 0061 + 0307 + 0304
-01E2 LATIN CAPITAL LETTER AE WITH MACRON
- : 00C6 + 0304
-01E3 LATIN SMALL LETTER AE WITH MACRON
- * Lappish, Old English
- : 00E6 + 0304
+ * Uralicist usage
+ : 0227 0304
+01E2 LATIN CAPITAL LETTER AE WITH MACRON (ash) *
+ : 00C6 0304
+01E3 LATIN SMALL LETTER AE WITH MACRON (ash) *
+ * Old Norse, Old English
+ : 00E6 0304
01E4 LATIN CAPITAL LETTER G WITH STROKE
01E5 LATIN SMALL LETTER G WITH STROKE
- * Lappish
+ * Skolt Sámi
01E6 LATIN CAPITAL LETTER G WITH CARON
- : 0047 + 030C
+ : 0047 030C
01E7 LATIN SMALL LETTER G WITH CARON
- * Lappish; sometimes used in writing Turkish
+ * Skolt Sámi
x (latin small letter g with breve - 011F)
- : 0067 + 030C
+ : 0067 030C
01E8 LATIN CAPITAL LETTER K WITH CARON
- : 004B + 030C
+ : 004B 030C
01E9 LATIN SMALL LETTER K WITH CARON
- * Lappish
- : 006B + 030C
+ * Skolt Sámi
+ : 006B 030C
01EA LATIN CAPITAL LETTER O WITH OGONEK
- : 004F + 0328
+ : 004F 0328
01EB LATIN SMALL LETTER O WITH OGONEK
- * Lappish, Iroquoian
- : 006F + 0328
+ * Sámi, Iroquoian, Old Icelandic
+ : 006F 0328
01EC LATIN CAPITAL LETTER O WITH OGONEK AND MACRON
- : 01EA + 0304
+ : 01EA 0304
01ED LATIN SMALL LETTER O WITH OGONEK AND MACRON
- * Lappish
- : 01EB + 0304
+ * Old Icelandic
+ : 01EB 0304
01EE LATIN CAPITAL LETTER EZH WITH CARON
- : 01B7 + 030C
+ : 01B7 030C
01EF LATIN SMALL LETTER EZH WITH CARON
- * Lappish
- : 0292 + 030C
+ * Skolt Sámi
+ : 0292 030C
01F0 LATIN SMALL LETTER J WITH CARON
- * IPA
- : 006A + 030C
+ * IPA and many languages
+ : 006A 030C
01F1 LATIN CAPITAL LETTER DZ
- # 0044 + 005A
+ # 0044 005A
01F2 LATIN CAPITAL LETTER D WITH SMALL LETTER Z
- # 0044 + 007A
+ # 0044 007A
01F3 LATIN SMALL LETTER DZ
- # 0064 + 007A
+ # 0064 007A
01F4 LATIN CAPITAL LETTER G WITH ACUTE
- : 0047 + 0301
+ : 0047 0301
01F5 LATIN SMALL LETTER G WITH ACUTE
- : 0067 + 0301
+ : 0067 0301
+01F6 LATIN CAPITAL LETTER HWAIR
+ * lowercase is 0195
+01F7 LATIN CAPITAL LETTER WYNN
+ = wen
+ * lowercase is 01BF
+01F8 LATIN CAPITAL LETTER N WITH GRAVE
+ : 004E 0300
+01F9 LATIN SMALL LETTER N WITH GRAVE
+ * Pinyin
+ : 006E 0300
01FA LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE
- : 00C5 + 0301
+ : 00C5 0301
01FB LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE
- : 00E5 + 0301
-01FC LATIN CAPITAL LETTER AE WITH ACUTE
- : 00C6 + 0301
-01FD LATIN SMALL LETTER AE WITH ACUTE
- : 00E6 + 0301
+ : 00E5 0301
+01FC LATIN CAPITAL LETTER AE WITH ACUTE (ash) *
+ : 00C6 0301
+01FD LATIN SMALL LETTER AE WITH ACUTE (ash) *
+ : 00E6 0301
01FE LATIN CAPITAL LETTER O WITH STROKE AND ACUTE
- : 00D8 + 0301
+ : 00D8 0301
01FF LATIN SMALL LETTER O WITH STROKE AND ACUTE
- : 00F8 + 0301
+ : 00F8 0301
+@ Additions for Slovenian and Croatian
0200 LATIN CAPITAL LETTER A WITH DOUBLE GRAVE
- : 0041 + 030F
+ : 0041 030F
0201 LATIN SMALL LETTER A WITH DOUBLE GRAVE
- : 0061 + 030F
+ : 0061 030F
0202 LATIN CAPITAL LETTER A WITH INVERTED BREVE
- : 0041 + 0311
+ : 0041 0311
0203 LATIN SMALL LETTER A WITH INVERTED BREVE
- : 0061 + 0311
+ : 0061 0311
0204 LATIN CAPITAL LETTER E WITH DOUBLE GRAVE
- : 0045 + 030F
+ : 0045 030F
0205 LATIN SMALL LETTER E WITH DOUBLE GRAVE
- : 0065 + 030F
+ : 0065 030F
0206 LATIN CAPITAL LETTER E WITH INVERTED BREVE
- : 0045 + 0311
+ : 0045 0311
0207 LATIN SMALL LETTER E WITH INVERTED BREVE
- : 0065 + 0311
+ : 0065 0311
0208 LATIN CAPITAL LETTER I WITH DOUBLE GRAVE
- : 0049 + 030F
+ : 0049 030F
0209 LATIN SMALL LETTER I WITH DOUBLE GRAVE
- : 0069 + 030F
+ : 0069 030F
020A LATIN CAPITAL LETTER I WITH INVERTED BREVE
- : 0049 + 0311
+ : 0049 0311
020B LATIN SMALL LETTER I WITH INVERTED BREVE
- : 0069 + 0311
+ : 0069 0311
020C LATIN CAPITAL LETTER O WITH DOUBLE GRAVE
- : 004F + 030F
+ : 004F 030F
020D LATIN SMALL LETTER O WITH DOUBLE GRAVE
- : 006F + 030F
+ : 006F 030F
020E LATIN CAPITAL LETTER O WITH INVERTED BREVE
- : 004F + 0311
+ : 004F 0311
020F LATIN SMALL LETTER O WITH INVERTED BREVE
- : 006F + 0311
+ : 006F 0311
0210 LATIN CAPITAL LETTER R WITH DOUBLE GRAVE
- : 0052 + 030F
+ : 0052 030F
0211 LATIN SMALL LETTER R WITH DOUBLE GRAVE
- : 0072 + 030F
+ : 0072 030F
0212 LATIN CAPITAL LETTER R WITH INVERTED BREVE
- : 0052 + 0311
+ : 0052 0311
0213 LATIN SMALL LETTER R WITH INVERTED BREVE
- : 0072 + 0311
+ : 0072 0311
0214 LATIN CAPITAL LETTER U WITH DOUBLE GRAVE
- : 0055 + 030F
+ : 0055 030F
0215 LATIN SMALL LETTER U WITH DOUBLE GRAVE
- : 0075 + 030F
+ : 0075 030F
0216 LATIN CAPITAL LETTER U WITH INVERTED BREVE
- : 0055 + 0311
+ : 0055 0311
0217 LATIN SMALL LETTER U WITH INVERTED BREVE
- : 0075 + 0311
+ : 0075 0311
+@ Additions for Romanian
+0218 LATIN CAPITAL LETTER S WITH COMMA BELOW *
+ : 0053 0326
+0219 LATIN SMALL LETTER S WITH COMMA BELOW *
+ * Romanian, when distinct comma below form is required
+ x (latin small letter s with cedilla - 015F)
+ : 0073 0326
+021A LATIN CAPITAL LETTER T WITH COMMA BELOW *
+ : 0054 0326
+021B LATIN SMALL LETTER T WITH COMMA BELOW *
+ * Romanian, when distinct comma below form is required
+ x (latin small letter t with cedilla - 0163)
+ : 0074 0326
+@ Miscellaneous additions
+021C LATIN CAPITAL LETTER YOGH
+ x (latin capital letter ezh - 01B7)
+021D LATIN SMALL LETTER YOGH
+ * Middle English, Scots
+ x (latin small letter ezh - 0292)
+ x (ounce sign - 2125)
+021E LATIN CAPITAL LETTER H WITH CARON
+ : 0048 030C
+021F LATIN SMALL LETTER H WITH CARON
+ * Finnish Romany
+ : 0068 030C
+0222 LATIN CAPITAL LETTER OU
+0223 LATIN SMALL LETTER OU
+ * Algonquin, Huron
+ x (digit eight - 0038)
+0224 LATIN CAPITAL LETTER Z WITH HOOK
+0225 LATIN SMALL LETTER Z WITH HOOK
+ * Middle High German
+0226 LATIN CAPITAL LETTER A WITH DOT ABOVE
+ : 0041 0307
+0227 LATIN SMALL LETTER A WITH DOT ABOVE
+ * Uralicist usage
+ : 0061 0307
+0228 LATIN CAPITAL LETTER E WITH CEDILLA
+ : 0045 0327
+0229 LATIN SMALL LETTER E WITH CEDILLA
+ : 0065 0327
+@ Additions for Livonian
+022A LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON
+ : 00D6 0304
+022B LATIN SMALL LETTER O WITH DIAERESIS AND MACRON
+ * Livonian
+ : 00F6 0304
+022C LATIN CAPITAL LETTER O WITH TILDE AND MACRON
+ : 00D5 0304
+022D LATIN SMALL LETTER O WITH TILDE AND MACRON
+ * Livonian
+ : 00F5 0304
+022E LATIN CAPITAL LETTER O WITH DOT ABOVE
+ : 004F 0307
+022F LATIN SMALL LETTER O WITH DOT ABOVE
+ * Livonian
+ : 006F 0307
+0230 LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON
+ : 022E 0304
+0231 LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON
+ * Livonian
+ : 022F 0304
+0232 LATIN CAPITAL LETTER Y WITH MACRON
+ : 0059 0304
+0233 LATIN SMALL LETTER Y WITH MACRON
+ * Livonian, Cornish
+ : 0079 0304
@@ 0250 IPA Extensions 02AF
@ IPA extensions
+@+ IPA includes basic Latin letters and a number of Latin letters from other blocks.
x (latin small letter ae - 00E6)
x (latin small letter c with cedilla - 00E7)
x (latin small letter eth - 00F0)
@@ -1332,6 +1531,7 @@
* low back rounded vowel
0253 LATIN SMALL LETTER B WITH HOOK
* implosive bilabial stop
+ * Pan-Nigerian alphabet
x (latin capital letter b with hook - 0181)
0254 LATIN SMALL LETTER OPEN O
* typographically a turned c
@@ -1347,14 +1547,16 @@
x (latin capital letter african d - 0189)
0257 LATIN SMALL LETTER D WITH HOOK
* implosive dental or alveolar stop
+ * Ewe, Pan-Nigerian alphabet
x (latin capital letter d with hook - 018A)
0258 LATIN SMALL LETTER REVERSED E
* upper-mid central unrounded vowel
0259 LATIN SMALL LETTER SCHWA
* mid-central unrounded vowel
- * variant uppercase form 018E is associated with clone 01DD
+ * variant uppercase form 018E is associated with 01DD
x (latin capital letter schwa - 018F)
x (latin small letter turned e - 01DD)
+ x (cyrillic small letter schwa - 04D9)
025A LATIN SMALL LETTER SCHWA WITH HOOK
* rhotacized schwa
025B LATIN SMALL LETTER OPEN E
@@ -1367,11 +1569,13 @@
025D LATIN SMALL LETTER REVERSED OPEN E WITH HOOK
* rhotacized lower-mid central vowel
025E LATIN SMALL LETTER CLOSED REVERSED OPEN E
+ = LATIN SMALL LETTER CLOSED REVERSED EPSILON
* lower-mid central rounded vowel
025F LATIN SMALL LETTER DOTLESS J WITH STROKE
* voiced palatal stop
- * typographically a turned f
+ * typographically a turned f, but better thought of as a form of j
* "gy" in Hungarian orthography
+ * also archaic phonetic for palatoalveolar affricate 02A4
0260 LATIN SMALL LETTER G WITH HOOK
* implosive velar stop
x (latin capital letter g with hook - 0193)
@@ -1393,21 +1597,21 @@
* breathy-voiced glottal fricative
x (modifier letter small h with hook - 02B1)
0267 LATIN SMALL LETTER HENG WITH HOOK
- * voiceless coarticulated velar and palato-alveolar fricative
- * "tj" or "kj" in some Swedish dialects
+ * voiceless coarticulated velar and palatoalveolar fricative
+ * "tj" or "kj" or "sj" in some Swedish dialects
0268 LATIN SMALL LETTER I WITH STROKE
- = i bar
+ = barred i, i bar
* high central unrounded vowel
* ISO 6438 gives lowercase of 0197 as 026A, not 0268
0269 LATIN SMALL LETTER IOTA
* semi-high front unrounded vowel
- * obsoleted by IPA in 1989
+@+ * obsoleted by IPA in 1989
* preferred use is 026A LATIN LETTER SMALL CAPITAL I
x (latin capital letter iota - 0196)
x (greek small letter iota - 03B9)
026A LATIN LETTER SMALL CAPITAL I
* semi-high front unrounded vowel
- * preferred IPA alternate
+ * preferred IPA alternate for 0269
x (latin capital letter i with stroke - 0197)
026B LATIN SMALL LETTER L WITH MIDDLE TILDE
* velarized voiced alveolar lateral approximant
@@ -1435,17 +1639,17 @@
0275 LATIN SMALL LETTER BARRED O
= o bar
* rounded mid-central vowel, i.e. rounded schwa
- * note case mapping
- x (latin capital letter o with middle tilde - 019F)
+ * uppercase is 019F
x (greek small letter theta - 03B8)
x (cyrillic small letter fita - 0473)
+ x (cyrillic small letter barred o - 04E9)
0276 LATIN LETTER SMALL CAPITAL OE
* low front rounded vowel
x (latin small ligature oe - 0153)
0277 LATIN SMALL LETTER CLOSED OMEGA
* semi-high back rounded vowel
- * obsoleted by IPA in 1989
- * preferred use is 028A LATIN LETTER SMALL UPSILON
+@+ * obsoleted by IPA in 1989
+ * preferred use is 028A latin small letter upsilon
0278 LATIN SMALL LETTER PHI
* voiceless bilabial fricative
x (greek small letter phi - 03C6)
@@ -1459,9 +1663,11 @@
x (modifier letter small turned r with hook - 02B5)
027C LATIN SMALL LETTER R WITH LONG LEG
* voiced strident apico-alveolar trill
+@+ * obsoleted by IPA in 1989
* sound spelled with 0159 in Czech
+ * preferred phonetic representation for Czech is 0072 031D
+ * in current use in Gaelic types (as glyph variant of 0072)
027D LATIN SMALL LETTER R WITH TAIL
- = LATIN SMALL LETTER R HOOK
* voiced retroflex flap
027E LATIN SMALL LETTER R WITH FISHHOOK
* voiced alveolar flap or tap
@@ -1471,6 +1677,8 @@
* IPA spelling - 007A 0329
0280 LATIN LETTER SMALL CAPITAL R
* voiced uvular trill
+ * Germanic, Old Norse
+ * uppercase is 01A6
0281 LATIN LETTER SMALL CAPITAL INVERTED R
* voiced uvular fricative or approximant
x (modifier letter small capital inverted r - 02B6)
@@ -1500,7 +1708,7 @@
* high central rounded vowel
028A LATIN SMALL LETTER UPSILON
* semi-high back rounded vowel
- * preferred IPA alternate
+ * preferred IPA alternate to 0277
x (latin capital letter upsilon - 01B1)
x (greek small letter upsilon - 03C5)
028B LATIN SMALL LETTER V WITH HOOK
@@ -1509,9 +1717,11 @@
x (latin capital letter v with hook - 01B2)
x (greek small letter upsilon - 03C5)
028C LATIN SMALL LETTER TURNED V
- = caret
- = wedge
+ = caret, wedge
* lower-mid back unrounded vowel
+ x (greek capital letter lamda - 039B)
+ x (caret - 2038)
+ x (logical and - 2227)
028D LATIN SMALL LETTER TURNED W
* voiceless rounded labiovelar approximant
028E LATIN SMALL LETTER TURNED Y
@@ -1526,9 +1736,11 @@
0292 LATIN SMALL LETTER EZH
= LATIN SMALL LETTER YOGH
= dram
- * old Irish, old English
* voiced postalveolar fricative
- x (latin capital letter ezh - 01B7)
+ * uppercase is 01B7
+ * Skolt Sámi
+ x (latin small letter yogh - 021D)
+ x (cyrillic small letter abkhasian dze - 04E1)
x (ounce sign - 2125)
0293 LATIN SMALL LETTER EZH WITH CURL
* palatalized voiced postalveolar fricative
@@ -1553,25 +1765,26 @@
0299 LATIN LETTER SMALL CAPITAL B
* bilabial trill
029A LATIN SMALL LETTER CLOSED OPEN E
+ = LATIN SMALL LETTER CLOSED EPSILON
* lower-mid front rounded vowel
* non-IPA alternate for the preferred 0153
029B LATIN LETTER SMALL CAPITAL G WITH HOOK
* voiced uvular implosive
029C LATIN LETTER SMALL CAPITAL H
- * voiceless epiglotto-pharyngeal fricative
+ * voiceless epiglottal fricative
029D LATIN SMALL LETTER J WITH CROSSED-TAIL
* voiced palatal fricative
029E LATIN SMALL LETTER TURNED K
* proposed for velar click
- * withdrawn by IPA in 1970
+@+ * withdrawn by IPA in 1970
029F LATIN LETTER SMALL CAPITAL L
* velar lateral approximant
02A0 LATIN SMALL LETTER Q WITH HOOK
* voiceless uvular implosive
02A1 LATIN LETTER GLOTTAL STOP WITH STROKE
- * voiced epiglottal-pharyngeal stop
+ * voiced epiglottal stop
02A2 LATIN LETTER REVERSED GLOTTAL STOP WITH STROKE
- * voiced epiglottal-pharyngeal fricative
+ * voiced epiglottal fricative
02A3 LATIN SMALL LETTER DZ DIGRAPH
* voiced dental affricate
02A4 LATIN SMALL LETTER DEZH DIGRAPH
@@ -1584,40 +1797,51 @@
* voiceless postalveolar affricate
02A8 LATIN SMALL LETTER TC DIGRAPH WITH CURL
* voiceless alveolo-palatal affricate
+@ IPA characters for disordered speech
+02A9 LATIN SMALL LETTER FENG DIGRAPH
+ * velopharyngeal fricative
+02AA LATIN SMALL LETTER LS DIGRAPH
+ * lateral alveolar fricative (lisp)
+02AB LATIN SMALL LETTER LZ DIGRAPH
+ * voiced lateral alveolar fricative
+02AC LATIN LETTER BILABIAL PERCUSSIVE
+ * audible lip smack
+02AD LATIN LETTER BIDENTAL PERCUSSIVE
+ * audible teeth gnashing
@@ 02B0 Spacing Modifier Letters 02FF
@ Phonetic modifiers derived from Latin letters
02B0 MODIFIER LETTER SMALL H
* aspiration
- # <super> + 0068
+ # <super> 0068
02B1 MODIFIER LETTER SMALL H WITH HOOK
* breathy voiced, murmured
x (latin small letter h with hook - 0266)
x (combining diaeresis below - 0324)
- # <super> + 0266
+ # <super> 0266
02B2 MODIFIER LETTER SMALL J
* palatalization
x (combining palatalized hook below - 0321)
- # <super> + 006A
+ # <super> 006A
02B3 MODIFIER LETTER SMALL R
- # <super> + 0072
+ # <super> 0072
02B4 MODIFIER LETTER SMALL TURNED R
x (latin small letter turned r - 0279)
- # <super> + 0279
+ # <super> 0279
02B5 MODIFIER LETTER SMALL TURNED R WITH HOOK
x (latin small letter turned r with hook - 027B)
- # <super> + 027B
+ # <super> 027B
02B6 MODIFIER LETTER SMALL CAPITAL INVERTED R
* preceding four used for r-coloring or r-offglides
x (latin letter small capital inverted r - 0281)
- # <super> + 0281
+ # <super> 0281
02B7 MODIFIER LETTER SMALL W
* labialization
x (combining inverted double arch below - 032B)
- # <super> + 0077
+ # <super> 0077
02B8 MODIFIER LETTER SMALL Y
* palatalization
* common Americanist substitution for 02B2
- # <super> + 0079
+ # <super> 0079
@ Miscellaneous phonetic modifiers
02B9 MODIFIER LETTER PRIME
* primary stress, emphasis
@@ -1640,9 +1864,9 @@
x (left single quotation mark - 2018)
02BC MODIFIER LETTER APOSTROPHE
= apostrophe
- * glottal stop, glottalization, ejective; elision
+ * glottal stop, glottalization, ejective
* spacing clone of Greek smooth breathing mark
- * this is the preferred character for apostrophe
+ * many languages use this as a letter of their alphabets
x (apostrophe - 0027)
x (combining comma above - 0313)
x (combining comma above right - 0315)
@@ -1655,7 +1879,7 @@
x (armenian modifier letter left half ring - 0559)
x (single high-reversed-9 quotation mark - 201B)
02BE MODIFIER LETTER RIGHT HALF RING
- * transliteration of Arabic hamzah (glottal stop)
+ * transliteration of Arabic hamza (glottal stop)
x (armenian apostrophe - 055A)
x (arabic letter hamza - 0621)
02BF MODIFIER LETTER LEFT HALF RING
@@ -1684,8 +1908,8 @@
* rising-falling tone, falling tone, secondary stress, etc.
x (circumflex accent - 005E)
x (combining circumflex accent - 0302)
-02C7 CARON
- = MODIFIER LETTER HACEK
+02C7 CARON (Mandarin Chinese third tone)
+ = hacek
* falling-rising tone
* Mandarin Chinese third tone
x (combining caron - 030C)
@@ -1694,13 +1918,13 @@
* precedes letter or syllable modified
x (apostrophe - 0027)
x (combining vertical line above - 030D)
-02C9 MODIFIER LETTER MACRON
+02C9 MODIFIER LETTER MACRON (Mandarin Chinese first tone)
* high level tone
* precedes or follows letter or syllable modified
* Mandarin Chinese first tone
x (macron - 00AF)
x (combining macron - 0304)
-02CA MODIFIER LETTER ACUTE ACCENT
+02CA MODIFIER LETTER ACUTE ACCENT (Mandarin Chinese second tone)
* high-rising tone (IPA), high tone, primary stress
* Mandarin Chinese second tone
x (acute accent - 00B4)
@@ -1708,7 +1932,7 @@
x (combining acute accent - 0301)
x (greek numeral sign - 0374)
x (armenian emphasis mark - 055B)
-02CB MODIFIER LETTER GRAVE ACCENT
+02CB MODIFIER LETTER GRAVE ACCENT (Mandarin Chinese fourth tone)
* high-falling tone (IPA), low tone, secondary or tertiary stress
* Mandarin Chinese fourth tone
x (grave accent - 0060)
@@ -1729,8 +1953,10 @@
x (greek lower numeral sign - 0375)
02D0 MODIFIER LETTER TRIANGULAR COLON
* length mark
+ x (colon - 003A)
02D1 MODIFIER LETTER HALF TRIANGULAR COLON
* half-length mark
+ x (middle dot - 00B7)
02D2 MODIFIER LETTER CENTRED RIGHT HALF RING
* more rounded articulation
02D3 MODIFIER LETTER CENTRED LEFT HALF RING
@@ -1753,61 +1979,71 @@
@ Spacing clones of diacritics
02D8 BREVE
x (combining breve - 0306)
- # 0020 + 0306
-02D9 DOT ABOVE
+ # 0020 0306
+02D9 DOT ABOVE (Mandarin Chinese light tone)
* Mandarin Chinese fifth tone (light or neutral)
x (combining dot above - 0307)
- # 0020 + 0307
+ # 0020 0307
02DA RING ABOVE
x (degree sign - 00B0)
x (combining ring above - 030A)
- # 0020 + 030A
+ # 0020 030A
02DB OGONEK
x (combining ogonek - 0328)
- # 0020 + 0328
+ # 0020 0328
02DC SMALL TILDE
x (tilde - 007E)
x (combining tilde - 0303)
x (tilde operator - 223C)
- # 0020 + 0303
+ # 0020 0303
02DD DOUBLE ACUTE ACCENT
x (combining double acute accent - 030B)
- # 0020 + 030B
+ # 0020 030B
@ Additions based on 1989 IPA
02DE MODIFIER LETTER RHOTIC HOOK
* rhotacization in vowel
* often ligated: 025A = 0259 + 02DE; 025D = 025C + 02DE
-02DF <reserved>
+02DF MODIFIER LETTER CROSS ACCENT
+ * Swedish grave accent
02E0 MODIFIER LETTER SMALL GAMMA
* these modifier letters are occasionally used in transcription of affricates
- # <super> + 0263
+ # <super> 0263
02E1 MODIFIER LETTER SMALL L
- # <super> + 006C
+ # <super> 006C
02E2 MODIFIER LETTER SMALL S
- # <super> + 0073
+ # <super> 0073
02E3 MODIFIER LETTER SMALL X
- # <super> + 0078
+ # <super> 0078
02E4 MODIFIER LETTER SMALL REVERSED GLOTTAL STOP
- # <super> + 0295
+ # <super> 0295
@ Tone letters
02E5 MODIFIER LETTER EXTRA-HIGH TONE BAR
02E6 MODIFIER LETTER HIGH TONE BAR
02E7 MODIFIER LETTER MID TONE BAR
02E8 MODIFIER LETTER LOW TONE BAR
02E9 MODIFIER LETTER EXTRA-LOW TONE BAR
+02EA MODIFIER LETTER YIN DEPARTING TONE MARK
+02EB MODIFIER LETTER YANG DEPARTING TONE MARK
+@ IPA modifiers
+02EC MODIFIER LETTER VOICING
+02ED MODIFIER LETTER UNASPIRATED
+@ Other modifier letters
+02EE MODIFIER LETTER DOUBLE APOSTROPHE
+ * Nenets
@@ 0300 Combining Diacritical Marks 036F
@ Ordinary diacritics
-0300 COMBINING GRAVE ACCENT
+0300 COMBINING GRAVE ACCENT (Varia)
= Greek varia
x (grave accent - 0060)
x (modifier letter grave accent - 02CB)
-0301 COMBINING ACUTE ACCENT
+0301 COMBINING ACUTE ACCENT (Oxia)
= stress mark
- = Greek oxia
+ = Greek oxia, tonos
x (apostrophe - 0027)
x (acute accent - 00B4)
x (modifier letter prime - 02B9)
x (modifier letter acute accent - 02CA)
+ x (greek tonos - 0384)
0302 COMBINING CIRCUMFLEX ACCENT
= hat
x (circumflex accent - 005E)
@@ -1823,24 +2059,24 @@
x (macron - 00AF)
x (modifier letter macron - 02C9)
0305 COMBINING OVERLINE
- = overscore
+ = overscore, vinculum
* connects on left and right
x (macron - 00AF)
-0306 COMBINING BREVE
+0306 COMBINING BREVE (Vrachy)
= short
= Greek vrachy
x (breve - 02D8)
0307 COMBINING DOT ABOVE
- = derivative
- * IPA (unofficial): palatalization
+ = derivative (Newtonian notation)
+@+ * IPA (withdrawn in 1976): palatalization
x (dot above - 02D9)
-0308 COMBINING DIAERESIS
- = double dot above
- = umlaut
- = double derivative
+0308 COMBINING DIAERESIS (Dialytika)
+ = double dot above, umlaut
= Greek dialytika
+ = double derivative
x (diaeresis - 00A8)
0309 COMBINING HOOK ABOVE
+ = hoi
* kerns left or right of circumflex over vowels
* Vietnamese tone mark
x (modifier letter glottal stop - 02C0)
@@ -1853,36 +2089,31 @@
x (modifier letter double prime - 02BA)
x (double acute accent - 02DD)
030C COMBINING CARON
- = NON-SPACING HACEK
- = V above
+ = hacek, V above
x (caron - 02C7)
-030D COMBINING VERTICAL LINE ABOVE
+030D COMBINING VERTICAL LINE ABOVE (Tonos)
* Marshallese
- = Greek tonos
x (modifier letter vertical line - 02C8)
- x (greek tonos - 0384)
030E COMBINING DOUBLE VERTICAL LINE ABOVE
* Marshallese
x (quotation mark - 0022)
030F COMBINING DOUBLE GRAVE ACCENT
- * Serbocroatian
+ * Serbian and Croatian poetics
0310 COMBINING CANDRABINDU
x (devanagari sign candrabindu - 0901)
- : 0306 + 0307
0311 COMBINING INVERTED BREVE
0312 COMBINING TURNED COMMA ABOVE
= cedilla above
- * Latvian
+ * Latvian (but not used in decomposition)
x (modifier letter turned comma - 02BB)
-0313 COMBINING COMMA ABOVE
- = Greek psili
- = smooth breathing
+0313 COMBINING COMMA ABOVE (Psili)
+ = Greek psili, smooth breathing mark
+ * Americanist: ejective or glottalization
x (modifier letter apostrophe - 02BC)
x (combining cyrillic psili pneumata - 0486)
x (armenian apostrophe - 055A)
-0314 COMBINING REVERSED COMMA ABOVE
- = Greek dasia
- = rough breathing
+0314 COMBINING REVERSED COMMA ABOVE (Dasia)
+ = Greek dasia, rough breathing mark
x (modifier letter reversed comma - 02BD)
x (combining cyrillic dasia pneumata - 0485)
x (armenian modifier letter left half ring - 0559)
@@ -1918,8 +2149,9 @@
0322 COMBINING RETROFLEX HOOK BELOW
* IPA: retroflexion
0323 COMBINING DOT BELOW
+ = nang
* IPA: closer variety of vowel
- * Americanist: retraction or retroflexion
+ * Americanist and Indo-Europeanist: retraction or retroflexion
* Semiticist: velarization or pharyngealization
* Vietnamese tone mark
x (modifier letter up tack - 02D4)
@@ -1930,11 +2162,14 @@
* IPA: voiceless
* Madurese
0326 COMBINING COMMA BELOW
- * variant of the following
+ * Romanian, Latvian, Livonian
0327 COMBINING CEDILLA
+ * French, Turkish, Azerbaijani
x (cedilla - 00B8)
0328 COMBINING OGONEK
+ = nasal hook
* Americanist: nasalization
+ * Polish, Lithuanian
x (ogonek - 02DB)
0329 COMBINING VERTICAL LINE BELOW
* IPA: syllabic
@@ -1947,27 +2182,26 @@
x (modifier letter small w - 02B7)
032C COMBINING CARON BELOW
* IPA: voiced
- * Hittite
+ * Hittite transcription
032D COMBINING CIRCUMFLEX ACCENT BELOW
* Americanist: fronted articulation
032E COMBINING BREVE BELOW
032F COMBINING INVERTED BREVE BELOW
* Americanist: fronted articulation (variant of 032D)
- * Indo-European: semivowel
+ * Indo-Europeanist: semivowel
0330 COMBINING TILDE BELOW
* IPA: creaky voice
0331 COMBINING MACRON BELOW
x (low line - 005F)
x (modifier letter low macron - 02CD)
0332 COMBINING LOW LINE
- = underline
- = underscore
+ = underline, underscore
* connects on left and right
x (low line - 005F)
0333 COMBINING DOUBLE LOW LINE
- = double underline
- = double underscore
+ = double underline, double underscore
* connects on left and right
+ x (combining equals sign below - 0347)
x (double low line - 2017)
@ Overstruck diacritics
0334 COMBINING TILDE OVERLAY
@@ -1988,134 +2222,96 @@
* Cyrillic palatalization
x (combining cyrillic palatalization - 0484)
033F COMBINING DOUBLE OVERLINE
-@ Vietnamese tone marks
-0340 COMBINING GRAVE TONE MARK
- * kerns left of circumflex over vowels
- : 0300
-0341 COMBINING ACUTE TONE MARK
+@ Vietnamese tone marks (deprecated)
+0340 COMBINING GRAVE TONE MARK (Vietnamese)
+ * kerns left or right of circumflex over vowels
+ : 0300 combining grave accent
+0341 COMBINING ACUTE TONE MARK (Vietnamese)
* kerns right of circumflex over vowels
- : 0301
+ : 0301 combining acute accent
@ Additions for Greek
0342 COMBINING GREEK PERISPOMENI
0343 COMBINING GREEK KORONIS
- : 0313
+ : 0313 combining comma above
0344 COMBINING GREEK DIALYTIKA TONOS
- : 0308 + 030D
+ * use of this character is discouraged
+ : 0308 0301
0345 COMBINING GREEK YPOGEGRAMMENI
= GREEK NON-SPACING IOTA BELOW
= iota subscript
+ * note special casing issues
x (greek ypogegrammeni - 037A)
-0346 <reserved>
-0347 <reserved>
-0348 <reserved>
-0349 <reserved>
-034A <reserved>
-034B <reserved>
-034C <reserved>
-034D <reserved>
-034E <reserved>
-034F <reserved>
-0350 <reserved>
-0351 <reserved>
-0352 <reserved>
-0353 <reserved>
-0354 <reserved>
-0355 <reserved>
-0356 <reserved>
-0357 <reserved>
-0358 <reserved>
-0359 <reserved>
-035A <reserved>
-035B <reserved>
-035C <reserved>
-035D <reserved>
-035E <reserved>
-035F <reserved>
+ x (greek capital letter iota - 0399)
+@ Additions for IPA
+0346 COMBINING BRIDGE ABOVE
+ * IPA: dentolabial
+0347 COMBINING EQUALS SIGN BELOW
+ * IPA: alveolar
+0348 COMBINING DOUBLE VERTICAL LINE BELOW
+ * IPA: strong articulation
+0349 COMBINING LEFT ANGLE BELOW
+ * IPA: weak articulation
+034A COMBINING NOT TILDE ABOVE
+ * IPA: denasal
+@ IPA diacritics for disordered speech
+034B COMBINING HOMOTHETIC ABOVE
+ * IPA: nasal escape
+034C COMBINING ALMOST EQUAL TO ABOVE
+ * IPA: velopharyngeal friction
+034D COMBINING LEFT RIGHT ARROW BELOW
+ * IPA: labial spreading
+034E COMBINING UPWARDS ARROW BELOW
+ * IPA: whistled articulation
@ Double diacritics
0360 COMBINING DOUBLE TILDE
0361 COMBINING DOUBLE INVERTED BREVE
-@@ 0370 Greek 03FF
+0362 COMBINING DOUBLE RIGHTWARDS ARROW BELOW
+ * IPA: sliding articulation
+@@ 0370 Greek and Coptic 03FF
@ Based on ISO 8859-7
-0370 <reserved>
- x (combining greek ypogegrammeni - 0345)
-0371 <reserved>
- x (combining reversed comma above - 0314)
-0372 <reserved>
- x (combining comma above - 0313)
-0373 <reserved>
- x (pound sign - 00A3)
-0374 GREEK NUMERAL SIGN
- = GREEK UPPER NUMERAL SIGN
+0374 GREEK NUMERAL SIGN (Dexia keraia)
= dexia keraia
- * for numeric use of letters
- x (modifier letter prime - 02B9)
+ * indicates numeric use of letters
x (modifier letter acute accent - 02CA)
- : 02B9
-0375 GREEK LOWER NUMERAL SIGN
+ : 02B9 modifier letter prime
+0375 GREEK LOWER NUMERAL SIGN (Aristeri keraia)
= aristeri keraia
- * for numeric use of letters
+ * indicates numeric use of letters
x (modifier letter low acute accent - 02CF)
-0376 <reserved>
- x (broken bar - 00A6)
-0377 <reserved>
- x (pilcrow sign - 00B6)
-0378 <reserved>
- x (combining diaeresis - 0308)
-0379 <reserved>
- x (copyright sign - 00A9)
037A GREEK YPOGEGRAMMENI
+ = iota subscript
x (combining greek ypogegrammeni - 0345)
- # 0020 + 0345
-037B <reserved>
- x (left-pointing double angle quotation mark - 00AB)
-037C <reserved>
- x (not sign - 00AC)
-037D <reserved>
- x (soft hyphen - 00AD)
-037E GREEK QUESTION MARK
+ # 0020 0345
+037E GREEK QUESTION MARK (Erotimatiko)
= erotimatiko
* sentence-final punctuation
- x (semicolon - 003B)
x (question mark - 003F)
- : 003B
-037F <reserved>
- x (horizontal bar - 2015)
-0380 <reserved>
- x (degree sign - 00B0)
-0381 <reserved>
- x (plus-minus sign - 00B1)
-0382 <reserved>
- x (superscript two - 00B2)
-0383 <reserved>
- x (superscript three - 00B3)
+ : 003B semicolon
0384 GREEK TONOS
+ x (acute accent - 00B4)
x (combining vertical line above - 030D)
- # 0020 + 030D
+ # 0020 0301
0385 GREEK DIALYTIKA TONOS
- : 00A8 + 030D
+ : 00A8 0301
0386 GREEK CAPITAL LETTER ALPHA WITH TONOS
- : 0391 + 030D
+ : 0391 0301
0387 GREEK ANO TELEIA
- x (middle dot - 00B7)
- : 00B7
+ * functions in Greek like a semicolon
+ : 00B7 middle dot
0388 GREEK CAPITAL LETTER EPSILON WITH TONOS
- : 0395 + 030D
+ : 0395 0301
0389 GREEK CAPITAL LETTER ETA WITH TONOS
- : 0397 + 030D
+ : 0397 0301
038A GREEK CAPITAL LETTER IOTA WITH TONOS
- : 0399 + 030D
-038B <reserved>
- x (right-pointing double angle quotation mark - 00BB)
+ : 0399 0301
038C GREEK CAPITAL LETTER OMICRON WITH TONOS
- : 039F + 030D
-038D <reserved>
- x (vulgar fraction one half - 00BD)
+ : 039F 0301
038E GREEK CAPITAL LETTER UPSILON WITH TONOS
- : 03A5 + 030D
+ : 03A5 0301
038F GREEK CAPITAL LETTER OMEGA WITH TONOS
- : 03A9 + 030D
+ : 03A9 0301
0390 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
- : 03B9 + 0344
+ : 03CA 0301
0391 GREEK CAPITAL LETTER ALPHA
0392 GREEK CAPITAL LETTER BETA
0393 GREEK CAPITAL LETTER GAMMA
@@ -2137,7 +2333,6 @@
03A0 GREEK CAPITAL LETTER PI
x (n-ary product - 220F)
03A1 GREEK CAPITAL LETTER RHO
-03A2 <reserved>
03A3 GREEK CAPITAL LETTER SIGMA
x (latin capital letter esh - 01A9)
x (n-ary summation - 2211)
@@ -2150,19 +2345,19 @@
x (ohm sign - 2126)
x (inverted ohm sign - 2127)
03AA GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
- : 0399 + 0308
+ : 0399 0308
03AB GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
- : 03A5 + 0308
+ : 03A5 0308
03AC GREEK SMALL LETTER ALPHA WITH TONOS
- : 03B1 + 030D
+ : 03B1 0301
03AD GREEK SMALL LETTER EPSILON WITH TONOS
- : 03B5 + 030D
+ : 03B5 0301
03AE GREEK SMALL LETTER ETA WITH TONOS
- : 03B7 + 030D
+ : 03B7 0301
03AF GREEK SMALL LETTER IOTA WITH TONOS
- : 03B9 + 030D
+ : 03B9 0301
03B0 GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
- : 03C5 + 0344
+ : 03CB 0301
03B1 GREEK SMALL LETTER ALPHA
x (latin small letter alpha - 0251)
x (proportional to - 221D)
@@ -2184,6 +2379,7 @@
x (turned greek small letter iota - 2129)
03BA GREEK SMALL LETTER KAPPA
03BB GREEK SMALL LETTER LAMDA
+ = lambda
03BC GREEK SMALL LETTER MU
x (micro sign - 00B5)
03BD GREEK SMALL LETTER NU
@@ -2204,45 +2400,52 @@
03C8 GREEK SMALL LETTER PSI
03C9 GREEK SMALL LETTER OMEGA
03CA GREEK SMALL LETTER IOTA WITH DIALYTIKA
- : 03B9 + 0308
+ : 03B9 0308
03CB GREEK SMALL LETTER UPSILON WITH DIALYTIKA
- : 03C5 + 0308
+ : 03C5 0308
03CC GREEK SMALL LETTER OMICRON WITH TONOS
- : 03BF + 030D
+ : 03BF 0301
03CD GREEK SMALL LETTER UPSILON WITH TONOS
- : 03C5 + 030D
+ : 03C5 0301
03CE GREEK SMALL LETTER OMEGA WITH TONOS
- : 03C9 + 030D
-03CF <reserved>
+ : 03C9 0301
@ Variant letterforms
03D0 GREEK BETA SYMBOL
+ = GREEK SMALL LETTER CURLED BETA
+ # 03B2 greek small letter beta
03D1 GREEK THETA SYMBOL
+ = GREEK SMALL LETTER SCRIPT THETA
* used as technical symbol
+ # 03B8 greek small letter theta
03D2 GREEK UPSILON WITH HOOK SYMBOL
+ = GREEK CAPITAL LETTER UPSILON HOOK
+ # 03A5 greek capital letter upsilon
03D3 GREEK UPSILON WITH ACUTE AND HOOK SYMBOL
- : 03D2 + 030D
+ = GREEK CAPITAL LETTER UPSILON HOOK TONOS
+ : 03D2 0301
03D4 GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL
- : 03D2 + 0308
+ = GREEK CAPITAL LETTER UPSILON HOOK DIAERESIS
+ : 03D2 0308
03D5 GREEK PHI SYMBOL
+ = GREEK SMALL LETTER SCRIPT PHI
* used as technical symbol
+ # 03C6 greek small letter phi
03D6 GREEK PI SYMBOL
+ = GREEK SMALL LETTER OMEGA PI
* used as technical symbol
* a variant of pi, looking like omega
-03D7 <reserved>
- x (greek question mark - 037E)
-03D8 <reserved>
- x (greek numeral sign - 0374)
-03D9 <reserved>
- x (greek lower numeral sign - 0375)
+ # 03C0 greek small letter pi
+03D7 GREEK KAI SYMBOL
+ * used as an ampersand
@ Archaic letters
03DA GREEK LETTER STIGMA
-03DB <reserved>
+03DB GREEK SMALL LETTER STIGMA
03DC GREEK LETTER DIGAMMA
-03DD <reserved>
+03DD GREEK SMALL LETTER DIGAMMA
03DE GREEK LETTER KOPPA
-03DF <reserved>
+03DF GREEK SMALL LETTER KOPPA
03E0 GREEK LETTER SAMPI
-03E1 <reserved>
+03E1 GREEK SMALL LETTER SAMPI
@ Coptic-unique letters
03E2 COPTIC CAPITAL LETTER SHEI
03E3 COPTIC SMALL LETTER SHEI
@@ -2260,40 +2463,43 @@
03EF COPTIC SMALL LETTER DEI
@ Additions
03F0 GREEK KAPPA SYMBOL
+ = GREEK SMALL LETTER SCRIPT KAPPA
* used as technical symbol
+ # 03BA greek small letter kappa
03F1 GREEK RHO SYMBOL
+ = GREEK SMALL LETTER TAILED RHO
* used as technical symbol
+ # 03C1 greek small letter rho
03F2 GREEK LUNATE SIGMA SYMBOL
+ = GREEK SMALL LETTER LUNATE SIGMA
+ # 03C2 greek small letter final sigma
03F3 GREEK LETTER YOT
-03F4 <reserved>
- x (greek dialytika tonos - 0385)
-03F5 <reserved>
- x (greek ypogegrammeni - 037A)
@@ 0400 Cyrillic 04FF
-@ Based on ISO 8859-5
-0400 <reserved>
- x (no-break space - 00A0)
+@ Cyrillic extensions
+0400 CYRILLIC CAPITAL LETTER IE WITH GRAVE
+ : 0415 0300
0401 CYRILLIC CAPITAL LETTER IO
- : 0415 + 0308
-0402 CYRILLIC CAPITAL LETTER DJE
+ : 0415 0308
+0402 CYRILLIC CAPITAL LETTER DJE (Serbocroatian)
0403 CYRILLIC CAPITAL LETTER GJE
- : 0413 + 0301
+ : 0413 0301
0404 CYRILLIC CAPITAL LETTER UKRAINIAN IE
0405 CYRILLIC CAPITAL LETTER DZE
0406 CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+ x (latin capital letter i - 0049)
x (cyrillic letter palochka - 04C0)
-0407 CYRILLIC CAPITAL LETTER YI
- : 0406 + 0308
+0407 CYRILLIC CAPITAL LETTER YI (Ukrainian)
+ : 0406 0308
0408 CYRILLIC CAPITAL LETTER JE
0409 CYRILLIC CAPITAL LETTER LJE
040A CYRILLIC CAPITAL LETTER NJE
-040B CYRILLIC CAPITAL LETTER TSHE
+040B CYRILLIC CAPITAL LETTER TSHE (Serbocroatian)
040C CYRILLIC CAPITAL LETTER KJE
- : 041A + 0301
-040D <reserved>
- x (soft hyphen - 00AD)
-040E CYRILLIC CAPITAL LETTER SHORT U
- : 0423 + 0306
+ : 041A 0301
+040D CYRILLIC CAPITAL LETTER I WITH GRAVE
+ : 0418 0300
+040E CYRILLIC CAPITAL LETTER SHORT U (Byelorussian)
+ : 0423 0306
040F CYRILLIC CAPITAL LETTER DZHE
@ Basic Russian alphabet
0410 CYRILLIC CAPITAL LETTER A
@@ -2307,7 +2513,7 @@
0417 CYRILLIC CAPITAL LETTER ZE
0418 CYRILLIC CAPITAL LETTER I
0419 CYRILLIC CAPITAL LETTER SHORT I
- : 0418 + 0306
+ : 0418 0306
041A CYRILLIC CAPITAL LETTER KA
041B CYRILLIC CAPITAL LETTER EL
041C CYRILLIC CAPITAL LETTER EM
@@ -2340,10 +2546,9 @@
0435 CYRILLIC SMALL LETTER IE
0436 CYRILLIC SMALL LETTER ZHE
0437 CYRILLIC SMALL LETTER ZE
- x (latin small letter tone six - 0185)
0438 CYRILLIC SMALL LETTER I
0439 CYRILLIC SMALL LETTER SHORT I
- : 0438 + 0306
+ : 0438 0306
043A CYRILLIC SMALL LETTER KA
043B CYRILLIC SMALL LETTER EL
043C CYRILLIC SMALL LETTER EM
@@ -2358,7 +2563,6 @@
0445 CYRILLIC SMALL LETTER HA
0446 CYRILLIC SMALL LETTER TSE
0447 CYRILLIC SMALL LETTER CHE
- x (latin small letter tone six - 0185)
0448 CYRILLIC SMALL LETTER SHA
0449 CYRILLIC SMALL LETTER SHCHA
044A CYRILLIC SMALL LETTER HARD SIGN
@@ -2368,39 +2572,38 @@
044D CYRILLIC SMALL LETTER E
044E CYRILLIC SMALL LETTER YU
044F CYRILLIC SMALL LETTER YA
-@ Based on ISO 8859-5
-0450 <reserved>
- x (numero sign - 2116)
+@ Cyrillic extensions
+0450 CYRILLIC SMALL LETTER IE WITH GRAVE
+ * Macedonian
+ : 0435 0300
0451 CYRILLIC SMALL LETTER IO
* Russian, ...
- : 0435 + 0308
-0452 CYRILLIC SMALL LETTER DJE
+ : 0435 0308
+0452 CYRILLIC SMALL LETTER DJE (Serbocroatian)
* Serbian
x (latin small letter d with stroke - 0111)
0453 CYRILLIC SMALL LETTER GJE
* Macedonian
- : 0433 + 0301
+ : 0433 0301
0454 CYRILLIC SMALL LETTER UKRAINIAN IE
= Old Cyrillic yest
- * Ukrainian, ...
0455 CYRILLIC SMALL LETTER DZE
= Old Cyrillic zelo
* Macedonian
0456 CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
= Old Cyrillic i
- * Ukrainian, Byelorussian, ...
-0457 CYRILLIC SMALL LETTER YI
+0457 CYRILLIC SMALL LETTER YI (Ukrainian)
* Ukrainian
- : 0456 + 0308
+ : 0456 0308
0458 CYRILLIC SMALL LETTER JE
- * Serbian, Azerbaijan, Altaic
+ * Serbian, Azerbaijani, Altay
0459 CYRILLIC SMALL LETTER LJE
* Serbian, Macedonian
x (latin small letter lj - 01C9)
045A CYRILLIC SMALL LETTER NJE
* Serbian, Macedonian
x (latin small letter nj - 01CC)
-045B CYRILLIC SMALL LETTER TSHE
+045B CYRILLIC SMALL LETTER TSHE (Serbocroatian)
= Old Cyrillic derv
* Serbian
x (latin small letter c with acute - 0107)
@@ -2409,12 +2612,13 @@
x (planck constant over two pi - 210F)
045C CYRILLIC SMALL LETTER KJE
* Macedonian
- : 043A + 0301
-045D <reserved>
- x (section sign - 00A7)
-045E CYRILLIC SMALL LETTER SHORT U
- * Byelorussian, Uzbek, ...
- : 0443 + 0306
+ : 043A 0301
+045D CYRILLIC SMALL LETTER I WITH GRAVE
+ * Macedonian
+ : 0438 0300
+045E CYRILLIC SMALL LETTER SHORT U (Byelorussian)
+ * Byelorussian, Uzbek
+ : 0443 0306
045F CYRILLIC SMALL LETTER DZHE
* Serbian, Macedonian, Abkhasian
x (latin small letter dz with caron - 01C6)
@@ -2423,6 +2627,7 @@
0461 CYRILLIC SMALL LETTER OMEGA
0462 CYRILLIC CAPITAL LETTER YAT
0463 CYRILLIC SMALL LETTER YAT
+ * Old Russian
0464 CYRILLIC CAPITAL LETTER IOTIFIED E
0465 CYRILLIC SMALL LETTER IOTIFIED E
0466 CYRILLIC CAPITAL LETTER LITTLE YUS
@@ -2444,9 +2649,9 @@
0474 CYRILLIC CAPITAL LETTER IZHITSA
0475 CYRILLIC SMALL LETTER IZHITSA
0476 CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT
- : 0474 + 030F
+ : 0474 030F
0477 CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT
- : 0475 + 030F
+ : 0475 030F
0478 CYRILLIC CAPITAL LETTER UK
* basic Old Cyrillic uk is unified with CYRILLIC LETTER U
x (cyrillic capital letter u - 0423)
@@ -2468,23 +2673,22 @@
x (combining reversed comma above - 0314)
0486 COMBINING CYRILLIC PSILI PNEUMATA
x (combining comma above - 0313)
-0487 <reserved>
-0488 <reserved>
-0489 <reserved>
-048A <reserved>
-048B <reserved>
-048C <reserved>
-048D <reserved>
-048E <reserved>
-048F <reserved>
+0488 COMBINING CYRILLIC HUNDRED THOUSANDS SIGN
+0489 COMBINING CYRILLIC MILLIONS SIGN
@ Extended Cyrillic
+048C CYRILLIC CAPITAL LETTER SEMISOFT SIGN
+048D CYRILLIC SMALL LETTER SEMISOFT SIGN
+ * Kildin Sámi
+048E CYRILLIC CAPITAL LETTER ER WITH TICK
+048F CYRILLIC SMALL LETTER ER WITH TICK
+ * Kildin Sámi
0490 CYRILLIC CAPITAL LETTER GHE WITH UPTURN
0491 CYRILLIC SMALL LETTER GHE WITH UPTURN
* Old Ukrainian
0492 CYRILLIC CAPITAL LETTER GHE WITH STROKE
0493 CYRILLIC SMALL LETTER GHE WITH STROKE
* Azerbaijani, Bashkir, ...
- * full bar form preferred
+ * full bar form preferred over half-barred "F"-type
0494 CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK
0495 CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK
* Abkhasian, Yakut
@@ -2494,184 +2698,166 @@
0498 CYRILLIC CAPITAL LETTER ZE WITH DESCENDER
0499 CYRILLIC SMALL LETTER ZE WITH DESCENDER
* Bashkir
- * cedilla form preferred
+ * reversed ogonek form of the descender is preferred
049A CYRILLIC CAPITAL LETTER KA WITH DESCENDER
049B CYRILLIC SMALL LETTER KA WITH DESCENDER
* Abkhasian, Tajik, ...
049C CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE
049D CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE
- * Azerbaijan
+ * Azerbaijani
049E CYRILLIC CAPITAL LETTER KA WITH STROKE
049F CYRILLIC SMALL LETTER KA WITH STROKE
* Abkhasian
04A0 CYRILLIC CAPITAL LETTER BASHKIR KA
04A1 CYRILLIC SMALL LETTER BASHKIR KA
- * Bashkir
04A2 CYRILLIC CAPITAL LETTER EN WITH DESCENDER
04A3 CYRILLIC SMALL LETTER EN WITH DESCENDER
* Bashkir, ...
04A4 CYRILLIC CAPITAL LIGATURE EN GHE
04A5 CYRILLIC SMALL LIGATURE EN GHE
- * Altaic, Mari, Yakut
-04A6 CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK
-04A7 CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK
+ * Altay, Mari, Yakut
+ * this is not a decomposable ligature
+04A6 CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK (Abkhasian)
+04A7 CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK (Abkhasian)
* Abkhasian
04A8 CYRILLIC CAPITAL LETTER ABKHASIAN HA
04A9 CYRILLIC SMALL LETTER ABKHASIAN HA
- * Abkhasian
04AA CYRILLIC CAPITAL LETTER ES WITH DESCENDER
04AB CYRILLIC SMALL LETTER ES WITH DESCENDER
* Bashkir, Chuvash
- * cedilla form preferred
+ * reversed ogonek form of the descender is preferred
04AC CYRILLIC CAPITAL LETTER TE WITH DESCENDER
04AD CYRILLIC SMALL LETTER TE WITH DESCENDER
* Abkhasian
04AE CYRILLIC CAPITAL LETTER STRAIGHT U
04AF CYRILLIC SMALL LETTER STRAIGHT U
* stem is straight, unlike LETTER U
- * Azerbaijan, Bashkir, ...
+ * Azerbaijani, Bashkir, ...
x (cyrillic capital letter u - 0423)
04B0 CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE
04B1 CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
* Kazakh
04B2 CYRILLIC CAPITAL LETTER HA WITH DESCENDER
04B3 CYRILLIC SMALL LETTER HA WITH DESCENDER
- * Abkhasian, Tajik, ...
-04B4 CYRILLIC CAPITAL LIGATURE TE TSE
-04B5 CYRILLIC SMALL LIGATURE TE TSE
+ * Abkhasian, Tajik, Uzbek
+04B4 CYRILLIC CAPITAL LIGATURE TE TSE (Abkhasian)
+04B5 CYRILLIC SMALL LIGATURE TE TSE (Abkhasian)
* Abkhasian
+ * this is not a decomposable ligature
04B6 CYRILLIC CAPITAL LETTER CHE WITH DESCENDER
04B7 CYRILLIC SMALL LETTER CHE WITH DESCENDER
* Abkhasian, Tajik
04B8 CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE
04B9 CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE
- * Azerbaijan
+ * Azerbaijani
04BA CYRILLIC CAPITAL LETTER SHHA
04BB CYRILLIC SMALL LETTER SHHA
- * basically just a Latin "h", but uppercase form 04BA is closer to an inverted che (0427)
- * Azerbaijan, Bashkir, ...
+ * originally derived from Latin "h", but uppercase form 04BA is closer to an inverted che (0427)
+ * Azerbaijani, Bashkir, ...
x (latin small letter h - 0068)
04BC CYRILLIC CAPITAL LETTER ABKHASIAN CHE
04BD CYRILLIC SMALL LETTER ABKHASIAN CHE
- * Abkhasian
- * represents a "che"
04BE CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER
04BF CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER
- * Abkhasian
* ogonek form preferred
04C0 CYRILLIC LETTER PALOCHKA
* aspiration sign in many Caucasian languages
* has no "lowercase form", i.e. is case-invariant
+ x (latin capital letter i - 0049)
x (cyrillic capital letter byelorussian-ukrainian i - 0406)
04C1 CYRILLIC CAPITAL LETTER ZHE WITH BREVE
- : 0416 + 0306
+ : 0416 0306
04C2 CYRILLIC SMALL LETTER ZHE WITH BREVE
* Moldavian
- : 0436 + 0306
+ : 0436 0306
04C3 CYRILLIC CAPITAL LETTER KA WITH HOOK
04C4 CYRILLIC SMALL LETTER KA WITH HOOK
* Khanty, Chukchi
-04C5 <reserved>
- x (cyrillic capital letter ka with descender - 049A)
-04C6 <reserved>
- x (cyrillic small letter ka with descender - 049B)
04C7 CYRILLIC CAPITAL LETTER EN WITH HOOK
04C8 CYRILLIC SMALL LETTER EN WITH HOOK
- * Khanty, Chukchi
-04C9 <reserved>
- x (cyrillic capital letter ha with descender - 04B2)
-04CA <reserved>
- x (cyrillic small letter ha with descender - 04B3)
+ * Khanty, Chukchi, Nenets
04CB CYRILLIC CAPITAL LETTER KHAKASSIAN CHE
04CC CYRILLIC SMALL LETTER KHAKASSIAN CHE
- * Khakassian
-04CD <reserved>
-04CE <reserved>
-04CF <reserved>
04D0 CYRILLIC CAPITAL LETTER A WITH BREVE
- : 0410 + 0306
+ : 0410 0306
04D1 CYRILLIC SMALL LETTER A WITH BREVE
- : 0430 + 0306
+ : 0430 0306
04D2 CYRILLIC CAPITAL LETTER A WITH DIAERESIS
- : 0410 + 0308
+ : 0410 0308
04D3 CYRILLIC SMALL LETTER A WITH DIAERESIS
- : 0430 + 0308
+ : 0430 0308
04D4 CYRILLIC CAPITAL LIGATURE A IE
- : 00C6
04D5 CYRILLIC SMALL LIGATURE A IE
- : 00E6
+ * this is not a decomposable ligature
+ x (latin small letter ae - 00E6)
04D6 CYRILLIC CAPITAL LETTER IE WITH BREVE
- : 0415 + 0306
+ : 0415 0306
04D7 CYRILLIC SMALL LETTER IE WITH BREVE
- : 0435 + 0306
+ : 0435 0306
04D8 CYRILLIC CAPITAL LETTER SCHWA
- : 018F
04D9 CYRILLIC SMALL LETTER SCHWA
- : 0259
+ x (latin small letter schwa - 0259)
04DA CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS
- : 018F + 0308
+ : 04D8 0308
04DB CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS
- : 0259 + 0308
+ : 04D9 0308
04DC CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS
- : 0416 + 0308
+ : 0416 0308
04DD CYRILLIC SMALL LETTER ZHE WITH DIAERESIS
- : 0436 + 0308
+ : 0436 0308
04DE CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS
- : 0417 + 0308
+ : 0417 0308
04DF CYRILLIC SMALL LETTER ZE WITH DIAERESIS
- : 0437 + 0308
+ : 0437 0308
04E0 CYRILLIC CAPITAL LETTER ABKHASIAN DZE
- : 01B7
04E1 CYRILLIC SMALL LETTER ABKHASIAN DZE
- : 0292
+ x (latin small letter ezh - 0292)
04E2 CYRILLIC CAPITAL LETTER I WITH MACRON
- : 0418 + 0304
+ : 0418 0304
04E3 CYRILLIC SMALL LETTER I WITH MACRON
- : 0438 + 0304
+ : 0438 0304
04E4 CYRILLIC CAPITAL LETTER I WITH DIAERESIS
- : 0418 + 0308
+ : 0418 0308
04E5 CYRILLIC SMALL LETTER I WITH DIAERESIS
- : 0438 + 0308
+ : 0438 0308
04E6 CYRILLIC CAPITAL LETTER O WITH DIAERESIS
- : 041E + 0308
+ : 041E 0308
04E7 CYRILLIC SMALL LETTER O WITH DIAERESIS
- : 043E + 0308
+ : 043E 0308
04E8 CYRILLIC CAPITAL LETTER BARRED O
- : 019F
04E9 CYRILLIC SMALL LETTER BARRED O
- : 0275
+ x (latin small letter barred o - 0275)
04EA CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS
- : 019F + 0308
+ : 04E8 0308
04EB CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS
- : 0275 + 0308
-04EC <reserved>
-04ED <reserved>
+ : 04E9 0308
+04EC CYRILLIC CAPITAL LETTER E WITH DIAERESIS
+ : 042D 0308
+04ED CYRILLIC SMALL LETTER E WITH DIAERESIS
+ * Kildin Sámi
+ : 044D 0308
04EE CYRILLIC CAPITAL LETTER U WITH MACRON
- : 0423 + 0304
+ : 0423 0304
04EF CYRILLIC SMALL LETTER U WITH MACRON
- : 0443 + 0304
+ : 0443 0304
04F0 CYRILLIC CAPITAL LETTER U WITH DIAERESIS
- : 0423 + 0308
+ : 0423 0308
04F1 CYRILLIC SMALL LETTER U WITH DIAERESIS
- : 0443 + 0308
+ : 0443 0308
04F2 CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE
- : 0423 + 030B
+ : 0423 030B
04F3 CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE
- : 0443 + 030B
+ : 0443 030B
04F4 CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS
- : 0427 + 0308
+ : 0427 0308
04F5 CYRILLIC SMALL LETTER CHE WITH DIAERESIS
- : 0447 + 0308
-04F6 <reserved>
-04F7 <reserved>
+ : 0447 0308
04F8 CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS
- : 042B + 0308
+ : 042B 0308
04F9 CYRILLIC SMALL LETTER YERU WITH DIAERESIS
- : 044B + 0308
-@@ 0500 Unassigned 052F
+ : 044B 0308
@@ 0530 Armenian 058F
@ Uppercase letters
-0530 <reserved>
0531 ARMENIAN CAPITAL LETTER AYB
0532 ARMENIAN CAPITAL LETTER BEN
0533 ARMENIAN CAPITAL LETTER GIM
@@ -2710,8 +2896,6 @@
0554 ARMENIAN CAPITAL LETTER KEH
0555 ARMENIAN CAPITAL LETTER OH
0556 ARMENIAN CAPITAL LETTER FEH
-0557 <reserved>
-0558 <reserved>
@ Modifier letters
0559 ARMENIAN MODIFIER LETTER LEFT HALF RING
x (modifier letter reversed comma - 02BD)
@@ -2728,14 +2912,13 @@
055C ARMENIAN EXCLAMATION MARK
= batsaganchakan nshan
055D ARMENIAN COMMA
- = boot
+ = bowt
x (modifier letter grave accent - 02CB)
055E ARMENIAN QUESTION MARK
= hartsakan nshan
055F ARMENIAN ABBREVIATION MARK
= patiw
@ Lowercase letters
-0560 <reserved>
0561 ARMENIAN SMALL LETTER AYB
0562 ARMENIAN SMALL LETTER BEN
0563 ARMENIAN SMALL LETTER GIM
@@ -2775,24 +2958,26 @@
0585 ARMENIAN SMALL LETTER OH
0586 ARMENIAN SMALL LETTER FEH
0587 ARMENIAN SMALL LIGATURE ECH YIWN
- # 0565 + 0582
-0588 <reserved>
+ # 0565 0582
@ Punctuation
0589 ARMENIAN FULL STOP
= vertsaket
* may also be used for Georgian
x (colon - 003A)
+058A ARMENIAN HYPHEN
+ = yentamna
@@ 0590 Hebrew 05FF
@ Cantillation marks
-0590 <reserved>
0591 HEBREW ACCENT ETNAHTA
0592 HEBREW ACCENT SEGOL
0593 HEBREW ACCENT SHALSHELET
0594 HEBREW ACCENT ZAQEF QATAN
0595 HEBREW ACCENT ZAQEF GADOL
-0596 HEBREW ACCENT TIPEHA
+0596 HEBREW ACCENT TIPEHA *
+ = tarha
0597 HEBREW ACCENT REVIA
-0598 HEBREW ACCENT ZARQA
+0598 HEBREW ACCENT ZARQA *
+ = zinorit
0599 HEBREW ACCENT PASHTA
059A HEBREW ACCENT YETIV
059B HEBREW ACCENT TEVIR
@@ -2802,15 +2987,17 @@
059F HEBREW ACCENT QARNEY PARA
05A0 HEBREW ACCENT TELISHA GEDOLA
05A1 HEBREW ACCENT PAZER
-05A2 <reserved>
05A3 HEBREW ACCENT MUNAH
05A4 HEBREW ACCENT MAHAPAKH
-05A5 HEBREW ACCENT MERKHA
+05A5 HEBREW ACCENT MERKHA *
+ = yored
05A6 HEBREW ACCENT MERKHA KEFULA
05A7 HEBREW ACCENT DARGA
-05A8 HEBREW ACCENT QADMA
+05A8 HEBREW ACCENT QADMA *
+ = azla
05A9 HEBREW ACCENT TELISHA QETANA
-05AA HEBREW ACCENT YERAH BEN YOMO
+05AA HEBREW ACCENT YERAH BEN YOMO *
+ = galgal
05AB HEBREW ACCENT OLE
05AC HEBREW ACCENT ILUY
05AD HEBREW ACCENT DEHI
@@ -2825,36 +3012,26 @@
05B5 HEBREW POINT TSERE
05B6 HEBREW POINT SEGOL
05B7 HEBREW POINT PATAH
- * furtive Patah is not a distinct character
+ * furtive patah is not a distinct character
05B8 HEBREW POINT QAMATS
05B9 HEBREW POINT HOLAM
-05BA <reserved>
05BB HEBREW POINT QUBUTS
-05BC HEBREW POINT DAGESH OR MAPIQ
+05BC HEBREW POINT DAGESH OR MAPIQ (or shuruq)
= shuruq
* falls within the base letter
-05BD HEBREW POINT METEG
+05BD HEBREW POINT METEG *
= siluq
+ * may be used as a Hebrew accent sof pasuq
05BE HEBREW PUNCTUATION MAQAF
05BF HEBREW POINT RAFE
-05C0 HEBREW PUNCTUATION PASEQ
+05C0 HEBREW PUNCTUATION PASEQ *
= legarmeh
* may be treated as spacing punctuation, not as a point
05C1 HEBREW POINT SHIN DOT
05C2 HEBREW POINT SIN DOT
-05C3 HEBREW PUNCTUATION SOF PASUQ
+05C3 HEBREW PUNCTUATION SOF PASUQ *
+ * may be used as a Hebrew punctuation colon
05C4 HEBREW MARK UPPER DOT
-05C5 <reserved>
-05C6 <reserved>
-05C7 <reserved>
-05C8 <reserved>
-05C9 <reserved>
-05CA <reserved>
-05CB <reserved>
-05CC <reserved>
-05CD <reserved>
-05CE <reserved>
-05CF <reserved>
@ Based on ISO 8859-8
05D0 HEBREW LETTER ALEF
= aleph
@@ -2889,11 +3066,6 @@
05E8 HEBREW LETTER RESH
05E9 HEBREW LETTER SHIN
05EA HEBREW LETTER TAV
-05EB <reserved>
-05EC <reserved>
-05ED <reserved>
-05EE <reserved>
-05EF <reserved>
@ Yiddish digraphs
05F0 HEBREW LIGATURE YIDDISH DOUBLE VAV
= tsvey vovn
@@ -2903,56 +3075,29 @@
@ Additional punctuation
05F3 HEBREW PUNCTUATION GERESH
05F4 HEBREW PUNCTUATION GERSHAYIM
-05F5 <reserved>
- x (hebrew point judeo-spanish varika - FB1E)
@@ 0600 Arabic 06FF
@ Based on ISO 8859-6
-0600 <reserved>
- x (no-break space - 00A0)
-0601 <reserved>
-0602 <reserved>
-0603 <reserved>
-0604 <reserved>
- x (currency sign - 00A4)
-0605 <reserved>
-0606 <reserved>
-0607 <reserved>
-0608 <reserved>
-0609 <reserved>
-060A <reserved>
-060B <reserved>
060C ARABIC COMMA
+ * also used with Thaana and Syriac in modern text
x (comma - 002C)
-060D <reserved>
- x (soft hyphen - 00AD)
-060E <reserved>
-060F <reserved>
-0610 <reserved>
-0611 <reserved>
-0612 <reserved>
-0613 <reserved>
-0614 <reserved>
-0615 <reserved>
-0616 <reserved>
-0617 <reserved>
-0618 <reserved>
-0619 <reserved>
-061A <reserved>
061B ARABIC SEMICOLON
+ * also used with Thaana and Syriac in modern text
x (semicolon - 003B)
-061C <reserved>
-061D <reserved>
-061E <reserved>
061F ARABIC QUESTION MARK
+ * also used with Thaana and Syriac in modern text
x (question mark - 003F)
-0620 <reserved>
0621 ARABIC LETTER HAMZA
x (modifier letter right half ring - 02BE)
0622 ARABIC LETTER ALEF WITH MADDA ABOVE
+ : 0627 0653
0623 ARABIC LETTER ALEF WITH HAMZA ABOVE
+ : 0627 0654
0624 ARABIC LETTER WAW WITH HAMZA ABOVE
+ : 0648 0654
0625 ARABIC LETTER ALEF WITH HAMZA BELOW
+ : 0627 0655
0626 ARABIC LETTER YEH WITH HAMZA ABOVE
+ : 064A 0654
0627 ARABIC LETTER ALEF
0628 ARABIC LETTER BEH
0629 ARABIC LETTER TEH MARBUTA
@@ -2975,14 +3120,10 @@
x (latin small letter ezh reversed - 01B9)
x (modifier letter left half ring - 02BF)
063A ARABIC LETTER GHAIN
-063B <reserved>
-063C <reserved>
-063D <reserved>
-063E <reserved>
-063F <reserved>
0640 ARABIC TATWEEL
= kashida
* inserted to stretch characters
+ * also used with Syriac
0641 ARABIC LETTER FEH
0642 ARABIC LETTER QAF
0643 ARABIC LETTER KAF
@@ -2992,6 +3133,7 @@
0647 ARABIC LETTER HEH
0648 ARABIC LETTER WAW
0649 ARABIC LETTER ALEF MAKSURA
+ * represents YEH-shaped letter with no dots in any positional form
064A ARABIC LETTER YEH
@ Points from ISO 8859-6
064B ARABIC FATHATAN
@@ -3002,19 +3144,10 @@
0650 ARABIC KASRA
0651 ARABIC SHADDA
0652 ARABIC SUKUN
-0653 <reserved>
-0654 <reserved>
-0655 <reserved>
-0656 <reserved>
-0657 <reserved>
-0658 <reserved>
-0659 <reserved>
-065A <reserved>
-065B <reserved>
-065C <reserved>
-065D <reserved>
-065E <reserved>
-065F <reserved>
+@ Combining maddah and hamza
+0653 ARABIC MADDAH ABOVE
+0654 ARABIC HAMZA ABOVE
+0655 ARABIC HAMZA BELOW
@ Arabic-Indic digits
0660 ARABIC-INDIC DIGIT ZERO
0661 ARABIC-INDIC DIGIT ONE
@@ -3026,13 +3159,13 @@
0667 ARABIC-INDIC DIGIT SEVEN
0668 ARABIC-INDIC DIGIT EIGHT
0669 ARABIC-INDIC DIGIT NINE
+@ Punctuation
066A ARABIC PERCENT SIGN
x (percent sign - 0025)
066B ARABIC DECIMAL SEPARATOR
066C ARABIC THOUSANDS SEPARATOR
066D ARABIC FIVE POINTED STAR
-066E <reserved>
-066F <reserved>
+ x (asterisk - 002A)
@ Point
0670 ARABIC LETTER SUPERSCRIPT ALEF
@ Extended Arabic letters
@@ -3047,12 +3180,16 @@
* forms digraphs
0675 ARABIC LETTER HIGH HAMZA ALEF
* Kazakh
+ # 0627 0674
0676 ARABIC LETTER HIGH HAMZA WAW
* Kazakh
+ # 0648 0674
0677 ARABIC LETTER U WITH HAMZA ABOVE
* Kazakh
+ # 06C7 0674
0678 ARABIC LETTER HIGH HAMZA YEH
* Kazakh
+ # 064A 0674
0679 ARABIC LETTER TTEH
* Urdu
067A ARABIC LETTER TTEHEH
@@ -3152,7 +3289,6 @@
06A9 ARABIC LETTER KEHEH
* Persian, Urdu, ...
06AA ARABIC LETTER SWASH KAF
- * (various)
06AB ARABIC LETTER KAF WITH RING
* Pashto
06AC ARABIC LETTER KAF WITH DOT ABOVE
@@ -3161,7 +3297,7 @@
* Uighur, Kazakh, old Malay, ...
06AE ARABIC LETTER KAF WITH THREE DOTS BELOW
* Berber
-06AF ARABIC LETTER GAF
+06AF ARABIC LETTER GAF *
* Persian, Urdu, ...
06B0 ARABIC LETTER GAF WITH RING
* Lahnda
@@ -3179,8 +3315,8 @@
* Kurdish
06B7 ARABIC LETTER LAM WITH THREE DOTS ABOVE
* Kurdish
-06B8 <reserved>
-06B9 <reserved>
+06B8 ARABIC LETTER LAM WITH THREE DOTS BELOW
+06B9 ARABIC LETTER NOON WITH DOT BELOW
06BA ARABIC LETTER NOON GHUNNA
* Urdu
06BB ARABIC LETTER RNOON
@@ -3192,13 +3328,19 @@
06BE ARABIC LETTER HEH DOACHASHMEE
* Urdu
* forms aspirate digraphs
-06BF <reserved>
+06BF ARABIC LETTER TCHEH WITH DOT ABOVE
06C0 ARABIC LETTER HEH WITH YEH ABOVE
- * Persian
+ = ARABIC LETTER HAMZAH ON HA
+ = izafet
+ * Persian, Urdu
+ * actually a ligature, and not an independent letter
+ : 06D5 0654
06C1 ARABIC LETTER HEH GOAL
* Urdu
06C2 ARABIC LETTER HEH GOAL WITH HAMZA ABOVE
* Urdu
+ * actually a ligature, and not an independent letter
+ : 06C1 0654
06C3 ARABIC LETTER TEH MARBUTA GOAL
* Urdu
06C4 ARABIC LETTER WAW WITH RING
@@ -3206,7 +3348,7 @@
06C5 ARABIC LETTER KIRGHIZ OE
* Kirghiz
06C6 ARABIC LETTER OE
- * Uighur, Kurdish, Kazah
+ * Uighur, Kurdish, Kazakh
06C7 ARABIC LETTER U
* Kirghiz
06C8 ARABIC LETTER YU
@@ -3223,19 +3365,25 @@
* Pashto, Sindhi
06CE ARABIC LETTER YEH WITH SMALL V
* Kurdish
-06CF <reserved>
-06D0 ARABIC LETTER E
+06CF ARABIC LETTER WAW WITH DOT ABOVE
+06D0 ARABIC LETTER E *
* Pashto, Uighur
+ * used as the letter bbeh in Sindhi
06D1 ARABIC LETTER YEH WITH THREE DOTS BELOW
* old Malay
06D2 ARABIC LETTER YEH BARREE
* Urdu
06D3 ARABIC LETTER YEH BARREE WITH HAMZA ABOVE
* Urdu
+ * actually a ligature, and not an independent letter
+ : 06D2 0654
+@ Punctuation
06D4 ARABIC FULL STOP
* Urdu
+@ Extended Arabic letter
06D5 ARABIC LETTER AE
* Uighur, Kazakh, Kirghiz
+@ Koranic annotation signs
06D6 ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA
06D7 ARABIC SMALL HIGH LIGATURE QAF WITH LAM WITH ALEF MAKSURA
06D8 ARABIC SMALL HIGH MEEM INITIAL FORM
@@ -3260,8 +3408,6 @@
06EB ARABIC EMPTY CENTRE HIGH STOP
06EC ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE
06ED ARABIC SMALL LOW MEEM
-06EE <reserved>
-06EF <reserved>
@ Eastern Arabic-Indic digits (Persian and Urdu)
06F0 EXTENDED ARABIC-INDIC DIGIT ZERO
06F1 EXTENDED ARABIC-INDIC DIGIT ONE
@@ -3277,18 +3423,187 @@
* Urdu glyph different from Arabic
06F8 EXTENDED ARABIC-INDIC DIGIT EIGHT
06F9 EXTENDED ARABIC-INDIC DIGIT NINE
-@@ 0700 Unassigned 08FF
+@ Extended Arabic letters
+06FA ARABIC LETTER SHEEN WITH DOT BELOW
+06FB ARABIC LETTER DAD WITH DOT BELOW
+06FC ARABIC LETTER GHAIN WITH DOT BELOW
+@ Signs for Sindhi
+06FD ARABIC SIGN SINDHI AMPERSAND
+06FE ARABIC SIGN SINDHI POSTPOSITION MEN
+@@ 0700 Syriac 074F
+@ Syriac punctuation and signs
+0700 SYRIAC END OF PARAGRAPH
+ * marks the end of a paragraph
+0701 SYRIAC SUPRALINEAR FULL STOP
+ * marks interrogations, imperatives, and pauses, especially in Biblical texts
+0702 SYRIAC SUBLINEAR FULL STOP
+ * marks subordinate clauses and minor pauses, especially in Biblical texts
+0703 SYRIAC SUPRALINEAR COLON
+ * marks expressions of wonder and has a distinct pausal value in Biblical texts
+0704 SYRIAC SUBLINEAR COLON
+ * used at the end of verses of supplications
+0705 SYRIAC HORIZONTAL COLON
+ * joins two words closely together in a context to which a rising tone is suitable
+0706 SYRIAC COLON SKEWED LEFT
+ * marks a dependent clause
+0707 SYRIAC COLON SKEWED RIGHT
+ * marks the end of a subdivision of the apodosis, or latter part of a Biblical verse
+0708 SYRIAC SUPRALINEAR COLON SKEWED LEFT
+ * marks a minor phrase division
+0709 SYRIAC SUBLINEAR COLON SKEWED RIGHT
+ * marks the end of a real or rhetorical question
+070A SYRIAC CONTRACTION
+ * a contraction mark, mostly used in East Syriac
+ * placed at the end of an incomplete word
+070B SYRIAC HARKLEAN OBELUS
+ * marks the beginning of a phrase, word, or morpheme that has a marginal note
+070C SYRIAC HARKLEAN METOBELUS
+ * marks the end of a section with a marginal note
+070D SYRIAC HARKLEAN ASTERISCUS
+ * marks the beginning of a phrase, word, or morpheme that has a marginal note
+@ Syriac format control character
+070F SYRIAC ABBREVIATION MARK
+ * marks the beginning of a Syriac abbreviation
+@ Syriac letters
+0710 SYRIAC LETTER ALAPH
+0711 SYRIAC LETTER SUPERSCRIPT ALAPH
+ * used in East Syriac texts to indicate an etymological Alaph
+0712 SYRIAC LETTER BETH
+0713 SYRIAC LETTER GAMAL
+0714 SYRIAC LETTER GAMAL GARSHUNI
+ * used in Garshuni documents
+0715 SYRIAC LETTER DALATH
+0716 SYRIAC LETTER DOTLESS DALATH RISH
+ * ambiguous form for undifferentiated early dalath/rish
+0717 SYRIAC LETTER HE
+0718 SYRIAC LETTER WAW
+0719 SYRIAC LETTER ZAIN
+071A SYRIAC LETTER HETH
+071B SYRIAC LETTER TETH
+071C SYRIAC LETTER TETH GARSHUNI
+ * used in Garshuni documents
+071D SYRIAC LETTER YUDH
+071E SYRIAC LETTER YUDH HE
+ * mostly used in East Syriac texts
+071F SYRIAC LETTER KAPH
+0720 SYRIAC LETTER LAMADH
+0721 SYRIAC LETTER MIM
+0722 SYRIAC LETTER NUN
+0723 SYRIAC LETTER SEMKATH
+0724 SYRIAC LETTER FINAL SEMKATH
+0725 SYRIAC LETTER E
+0726 SYRIAC LETTER PE
+0727 SYRIAC LETTER REVERSED PE
+ * used in Christian Palestinian Aramaic
+0728 SYRIAC LETTER SADHE
+0729 SYRIAC LETTER QAPH
+072A SYRIAC LETTER RISH
+072B SYRIAC LETTER SHIN
+072C SYRIAC LETTER TAW
+@ Syriac points (vowels)
+0730 SYRIAC PTHAHA ABOVE
+0731 SYRIAC PTHAHA BELOW
+0732 SYRIAC PTHAHA DOTTED
+0733 SYRIAC ZQAPHA ABOVE
+0734 SYRIAC ZQAPHA BELOW
+0735 SYRIAC ZQAPHA DOTTED
+0736 SYRIAC RBASA ABOVE
+0737 SYRIAC RBASA BELOW
+0738 SYRIAC DOTTED ZLAMA HORIZONTAL
+0739 SYRIAC DOTTED ZLAMA ANGULAR
+073A SYRIAC HBASA ABOVE
+073B SYRIAC HBASA BELOW
+073C SYRIAC HBASA-ESASA DOTTED
+073D SYRIAC ESASA ABOVE
+073E SYRIAC ESASA BELOW
+073F SYRIAC RWAHA
+@ Syriac marks
+0740 SYRIAC FEMININE DOT
+ * feminine marker used with the Taw feminine suffix
+0741 SYRIAC QUSHSHAYA
+ * indicates a plosive pronunciation
+0742 SYRIAC RUKKAKHA
+ * indicates an aspirated (spirantized) pronunciation
+0743 SYRIAC TWO VERTICAL DOTS ABOVE
+ * accent mark used in ancient manuscripts
+0744 SYRIAC TWO VERTICAL DOTS BELOW
+ * accent mark used in ancient manuscripts
+0745 SYRIAC THREE DOTS ABOVE
+ * diacritic used in Turoyo for letters not found in Syriac
+0746 SYRIAC THREE DOTS BELOW
+ * diacritic used in Turoyo for letters not found in Syriac
+0747 SYRIAC OBLIQUE LINE ABOVE
+ * indication of a silent letter
+0748 SYRIAC OBLIQUE LINE BELOW
+ * indication of a silent letter
+ * also used to indicate numbers multiplied by a certain constant
+0749 SYRIAC MUSIC
+ * a music mark
+ * also used in the Syrian Orthodox Anaphora book to mark the breaking of the Eucharist bread
+074A SYRIAC BARREKH
+ * a diacritic cross used in liturgical texts
+@@ 0780 Thaana 07BF
+@ Basic consonants
+0780 THAANA LETTER HAA
+0781 THAANA LETTER SHAVIYANI
+0782 THAANA LETTER NOONU
+0783 THAANA LETTER RAA
+0784 THAANA LETTER BAA
+0785 THAANA LETTER LHAVIYANI
+0786 THAANA LETTER KAAFU
+0787 THAANA LETTER ALIFU
+0788 THAANA LETTER VAAVU
+0789 THAANA LETTER MEEMU
+078A THAANA LETTER FAAFU
+078B THAANA LETTER DHAALU
+078C THAANA LETTER THAA
+078D THAANA LETTER LAAMU
+078E THAANA LETTER GAAFU
+078F THAANA LETTER GNAVIYANI
+0790 THAANA LETTER SEENU
+0791 THAANA LETTER DAVIYANI
+0792 THAANA LETTER ZAVIYANI
+0793 THAANA LETTER TAVIYANI
+0794 THAANA LETTER YAA
+0795 THAANA LETTER PAVIYANI
+0796 THAANA LETTER JAVIYANI
+0797 THAANA LETTER CHAVIYANI
+@ Extensions for Arabic
+0798 THAANA LETTER TTAA
+0799 THAANA LETTER HHAA
+079A THAANA LETTER KHAA
+079B THAANA LETTER THAALU
+079C THAANA LETTER ZAA
+079D THAANA LETTER SHEENU
+079E THAANA LETTER SAADHU
+079F THAANA LETTER DAADHU
+07A0 THAANA LETTER TO
+07A1 THAANA LETTER ZO
+07A2 THAANA LETTER AINU
+07A3 THAANA LETTER GHAINU
+07A4 THAANA LETTER QAAFU
+07A5 THAANA LETTER WAAVU
+@ Vowels
+07A6 THAANA ABAFILI
+07A7 THAANA AABAAFILI
+07A8 THAANA IBIFILI
+07A9 THAANA EEBEEFILI
+07AA THAANA UBUFILI
+07AB THAANA OOBOOFILI
+07AC THAANA EBEFILI
+07AD THAANA EYBEYFILI
+07AE THAANA OBOFILI
+07AF THAANA OABOAFILI
+07B0 THAANA SUKUN
@@ 0900 Devanagari 097F
@ Based on ISCII 1988
@ Various signs
-0900 <reserved>
0901 DEVANAGARI SIGN CANDRABINDU
= anunasika
x (combining candrabindu - 0310)
0902 DEVANAGARI SIGN ANUSVARA
= bindu
0903 DEVANAGARI SIGN VISARGA
-0904 <reserved>
@ Independent vowels
0905 DEVANAGARI LETTER A
0906 DEVANAGARI LETTER AA
@@ -3330,8 +3645,8 @@
0927 DEVANAGARI LETTER DHA
0928 DEVANAGARI LETTER NA
0929 DEVANAGARI LETTER NNNA
- * for transcribing Tamil alveolar n
- : 0928 + 093C
+ * for transcribing Dravidian alveolar n
+ : 0928 093C
092A DEVANAGARI LETTER PA
092B DEVANAGARI LETTER PHA
092C DEVANAGARI LETTER BA
@@ -3340,26 +3655,25 @@
092F DEVANAGARI LETTER YA
0930 DEVANAGARI LETTER RA
0931 DEVANAGARI LETTER RRA
- * for transcribing Tamil alveolar r
- : 0930 + 093C
+ * for transcribing Dravidian alveolar r
+ * half form is represented as "Eyelash RA"
+ : 0930 093C
0932 DEVANAGARI LETTER LA
0933 DEVANAGARI LETTER LLA
0934 DEVANAGARI LETTER LLLA
- * for transcribing Tamil l
- : 0933 + 093C
+ * for transcribing Dravidian l
+ : 0933 093C
0935 DEVANAGARI LETTER VA
0936 DEVANAGARI LETTER SHA
0937 DEVANAGARI LETTER SSA
0938 DEVANAGARI LETTER SA
0939 DEVANAGARI LETTER HA
@ Various signs
-093A <reserved>
-093B <reserved>
093C DEVANAGARI SIGN NUKTA
* for extending the alphabet to new letters
093D DEVANAGARI SIGN AVAGRAHA
-@ Dependent vowel signs
093E DEVANAGARI VOWEL SIGN AA
+@ Dependent vowel signs
093F DEVANAGARI VOWEL SIGN I
* stands to the left of the consonant
0940 DEVANAGARI VOWEL SIGN II
@@ -3382,33 +3696,28 @@
094D DEVANAGARI SIGN VIRAMA
= halant
* suppresses inherent vowel
-094E <reserved>
-094F <reserved>
0950 DEVANAGARI OM
0951 DEVANAGARI STRESS SIGN UDATTA
0952 DEVANAGARI STRESS SIGN ANUDATTA
0953 DEVANAGARI GRAVE ACCENT
0954 DEVANAGARI ACUTE ACCENT
-0955 <reserved>
-0956 <reserved>
-0957 <reserved>
@ Additional consonants
0958 DEVANAGARI LETTER QA
- : 0915 + 093C
+ : 0915 093C
0959 DEVANAGARI LETTER KHHA
- : 0916 + 093C
+ : 0916 093C
095A DEVANAGARI LETTER GHHA
- : 0917 + 093C
+ : 0917 093C
095B DEVANAGARI LETTER ZA
- : 091C + 093C
+ : 091C 093C
095C DEVANAGARI LETTER DDDHA
- : 0921 + 093C
+ : 0921 093C
095D DEVANAGARI LETTER RHA
- : 0922 + 093C
+ : 0922 093C
095E DEVANAGARI LETTER FA
- : 092B + 093C
+ : 092B 093C
095F DEVANAGARI LETTER YYA
- : 092F + 093C
+ : 092F 093C
@ Generic additions
0960 DEVANAGARI LETTER VOCALIC RR
0961 DEVANAGARI LETTER VOCALIC LL
@@ -3417,6 +3726,7 @@
0964 DEVANAGARI DANDA
= phrase separator
0965 DEVANAGARI DOUBLE DANDA
+@ Digits
0966 DEVANAGARI DIGIT ZERO
0967 DEVANAGARI DIGIT ONE
0968 DEVANAGARI DIGIT TWO
@@ -3432,11 +3742,9 @@
@@ 0980 Bengali 09FF
@ Based on ISCII 1988
@ Various signs
-0980 <reserved>
0981 BENGALI SIGN CANDRABINDU
0982 BENGALI SIGN ANUSVARA
0983 BENGALI SIGN VISARGA
-0984 <reserved>
@ Independent vowels
0985 BENGALI LETTER A
0986 BENGALI LETTER AA
@@ -3446,12 +3754,8 @@
098A BENGALI LETTER UU
098B BENGALI LETTER VOCALIC R
098C BENGALI LETTER VOCALIC L
-098D <reserved>
-098E <reserved>
098F BENGALI LETTER E
0990 BENGALI LETTER AI
-0991 <reserved>
-0992 <reserved>
0993 BENGALI LETTER O
0994 BENGALI LETTER AU
@ Consonants
@@ -3475,7 +3779,6 @@
09A6 BENGALI LETTER DA
09A7 BENGALI LETTER DHA
09A8 BENGALI LETTER NA
-09A9 <reserved>
09AA BENGALI LETTER PA
09AB BENGALI LETTER PHA
09AC BENGALI LETTER BA
@@ -3484,22 +3787,14 @@
09AE BENGALI LETTER MA
09AF BENGALI LETTER YA
09B0 BENGALI LETTER RA
- : 09AC + 09BC
-09B1 <reserved>
09B2 BENGALI LETTER LA
-09B3 <reserved>
-09B4 <reserved>
-09B5 <reserved>
09B6 BENGALI LETTER SHA
09B7 BENGALI LETTER SSA
09B8 BENGALI LETTER SA
09B9 BENGALI LETTER HA
@ Various signs
-09BA <reserved>
-09BB <reserved>
09BC BENGALI SIGN NUKTA
* for extending the alphabet to new letters
-09BD <reserved>
@ Dependent vowel signs
09BE BENGALI VOWEL SIGN AA
09BF BENGALI VOWEL SIGN I
@@ -3509,52 +3804,33 @@
09C2 BENGALI VOWEL SIGN UU
09C3 BENGALI VOWEL SIGN VOCALIC R
09C4 BENGALI VOWEL SIGN VOCALIC RR
-09C5 <reserved>
-09C6 <reserved>
09C7 BENGALI VOWEL SIGN E
* stands to the left of the consonant
09C8 BENGALI VOWEL SIGN AI
* stands to the left of the consonant
-09C9 <reserved>
-09CA <reserved>
09CB BENGALI VOWEL SIGN O
* pieces on both sides of the consonant
- : 09C7 + 09BE
+ : 09C7 09BE
09CC BENGALI VOWEL SIGN AU
* pieces on both sides of the consonant
- : 09C7 + 09D7
+ : 09C7 09D7
@ Various signs
09CD BENGALI SIGN VIRAMA
= halant
-09CE <reserved>
-09CF <reserved>
-09D0 <reserved>
-09D1 <reserved>
-09D2 <reserved>
-09D3 <reserved>
-09D4 <reserved>
-09D5 <reserved>
-09D6 <reserved>
09D7 BENGALI AU LENGTH MARK
@ Additional consonants
-09D8 <reserved>
-09D9 <reserved>
-09DA <reserved>
-09DB <reserved>
09DC BENGALI LETTER RRA
- : 09A1 + 09BC
+ : 09A1 09BC
09DD BENGALI LETTER RHA
- : 09A2 + 09BC
-09DE <reserved>
+ : 09A2 09BC
09DF BENGALI LETTER YYA
- : 09AF + 09BC
+ : 09AF 09BC
@ Generic additions
09E0 BENGALI LETTER VOCALIC RR
09E1 BENGALI LETTER VOCALIC LL
09E2 BENGALI VOWEL SIGN VOCALIC L
09E3 BENGALI VOWEL SIGN VOCALIC LL
-09E4 <reserved>
-09E5 <reserved>
+@ Digits
09E6 BENGALI DIGIT ZERO
09E7 BENGALI DIGIT ONE
09E8 BENGALI DIGIT TWO
@@ -3566,9 +3842,9 @@
09EE BENGALI DIGIT EIGHT
09EF BENGALI DIGIT NINE
@ Bengali-specific additions
-09F0 BENGALI LETTER RA WITH MIDDLE DIAGONAL
+09F0 BENGALI LETTER RA WITH MIDDLE DIAGONAL (Assamese)
* Assamese
-09F1 BENGALI LETTER RA WITH LOWER DIAGONAL
+09F1 BENGALI LETTER RA WITH LOWER DIAGONAL (Assamese)
= BENGALI LETTER VA WITH LOWER DIAGONAL
* Assamese
09F2 BENGALI RUPEE MARK
@@ -3583,11 +3859,7 @@
@@ 0A00 Gurmukhi 0A7F
@ Based on ISCII 1988
@ Various signs
-0A00 <reserved>
-0A01 <reserved>
0A02 GURMUKHI SIGN BINDI
-0A03 <reserved>
-0A04 <reserved>
@ Independent vowels
0A05 GURMUKHI LETTER A
0A06 GURMUKHI LETTER AA
@@ -3595,14 +3867,8 @@
0A08 GURMUKHI LETTER II
0A09 GURMUKHI LETTER U
0A0A GURMUKHI LETTER UU
-0A0B <reserved>
-0A0C <reserved>
-0A0D <reserved>
-0A0E <reserved>
0A0F GURMUKHI LETTER EE
0A10 GURMUKHI LETTER AI
-0A11 <reserved>
-0A12 <reserved>
0A13 GURMUKHI LETTER OO
0A14 GURMUKHI LETTER AU
@ Consonants
@@ -3626,7 +3892,6 @@
0A26 GURMUKHI LETTER DA
0A27 GURMUKHI LETTER DHA
0A28 GURMUKHI LETTER NA
-0A29 <reserved>
0A2A GURMUKHI LETTER PA
0A2B GURMUKHI LETTER PHA
0A2C GURMUKHI LETTER BA
@@ -3634,21 +3899,17 @@
0A2E GURMUKHI LETTER MA
0A2F GURMUKHI LETTER YA
0A30 GURMUKHI LETTER RA
-0A31 <reserved>
0A32 GURMUKHI LETTER LA
0A33 GURMUKHI LETTER LLA
-0A34 <reserved>
+ : 0A32 0A3C
0A35 GURMUKHI LETTER VA
0A36 GURMUKHI LETTER SHA
-0A37 <reserved>
+ : 0A38 0A3C
0A38 GURMUKHI LETTER SA
0A39 GURMUKHI LETTER HA
@ Various signs
-0A3A <reserved>
-0A3B <reserved>
0A3C GURMUKHI SIGN NUKTA
* for extending the alphabet to new letters
-0A3D <reserved>
@ Dependent vowel signs
0A3E GURMUKHI VOWEL SIGN AA
0A3F GURMUKHI VOWEL SIGN I
@@ -3656,48 +3917,22 @@
0A40 GURMUKHI VOWEL SIGN II
0A41 GURMUKHI VOWEL SIGN U
0A42 GURMUKHI VOWEL SIGN UU
-0A43 <reserved>
-0A44 <reserved>
-0A45 <reserved>
-0A46 <reserved>
0A47 GURMUKHI VOWEL SIGN EE
0A48 GURMUKHI VOWEL SIGN AI
-0A49 <reserved>
-0A4A <reserved>
0A4B GURMUKHI VOWEL SIGN OO
0A4C GURMUKHI VOWEL SIGN AU
0A4D GURMUKHI SIGN VIRAMA
-0A4E <reserved>
-0A4F <reserved>
-0A50 <reserved>
-0A51 <reserved>
-0A52 <reserved>
-0A53 <reserved>
-0A54 <reserved>
-0A55 <reserved>
-0A56 <reserved>
-0A57 <reserved>
@ Additional consonants
-0A58 <reserved>
0A59 GURMUKHI LETTER KHHA
- : 0A16 + 0A3C
+ : 0A16 0A3C
0A5A GURMUKHI LETTER GHHA
- : 0A17 + 0A3C
+ : 0A17 0A3C
0A5B GURMUKHI LETTER ZA
- : 0A1C + 0A3C
+ : 0A1C 0A3C
0A5C GURMUKHI LETTER RRA
- : 0A21 + 0A3C
-0A5D <reserved>
0A5E GURMUKHI LETTER FA
- : 0A2B + 0A3C
-0A5F <reserved>
-@ Generic additions
-0A60 <reserved>
-0A61 <reserved>
-0A62 <reserved>
-0A63 <reserved>
-0A64 <reserved>
-0A65 <reserved>
+ : 0A2B 0A3C
+@ Digits
0A66 GURMUKHI DIGIT ZERO
0A67 GURMUKHI DIGIT ONE
0A68 GURMUKHI DIGIT TWO
@@ -3722,11 +3957,9 @@
@@ 0A80 Gujarati 0AFF
@ Based on ISCII 1988
@ Various signs
-0A80 <reserved>
0A81 GUJARATI SIGN CANDRABINDU
0A82 GUJARATI SIGN ANUSVARA
0A83 GUJARATI SIGN VISARGA
-0A84 <reserved>
@ Independent vowels
0A85 GUJARATI LETTER A
0A86 GUJARATI LETTER AA
@@ -3735,13 +3968,10 @@
0A89 GUJARATI LETTER U
0A8A GUJARATI LETTER UU
0A8B GUJARATI LETTER VOCALIC R
-0A8C <reserved>
0A8D GUJARATI VOWEL CANDRA E
-0A8E <reserved>
0A8F GUJARATI LETTER E
0A90 GUJARATI LETTER AI
0A91 GUJARATI VOWEL CANDRA O
-0A92 <reserved>
0A93 GUJARATI LETTER O
0A94 GUJARATI LETTER AU
@ Consonants
@@ -3765,7 +3995,6 @@
0AA6 GUJARATI LETTER DA
0AA7 GUJARATI LETTER DHA
0AA8 GUJARATI LETTER NA
-0AA9 <reserved>
0AAA GUJARATI LETTER PA
0AAB GUJARATI LETTER PHA
0AAC GUJARATI LETTER BA
@@ -3773,18 +4002,14 @@
0AAE GUJARATI LETTER MA
0AAF GUJARATI LETTER YA
0AB0 GUJARATI LETTER RA
-0AB1 <reserved>
0AB2 GUJARATI LETTER LA
0AB3 GUJARATI LETTER LLA
-0AB4 <reserved>
0AB5 GUJARATI LETTER VA
0AB6 GUJARATI LETTER SHA
0AB7 GUJARATI LETTER SSA
0AB8 GUJARATI LETTER SA
0AB9 GUJARATI LETTER HA
@ Various signs
-0ABA <reserved>
-0ABB <reserved>
0ABC GUJARATI SIGN NUKTA
* for extending the alphabet to new letters
0ABD GUJARATI SIGN AVAGRAHA
@@ -3798,40 +4023,17 @@
0AC3 GUJARATI VOWEL SIGN VOCALIC R
0AC4 GUJARATI VOWEL SIGN VOCALIC RR
0AC5 GUJARATI VOWEL SIGN CANDRA E
-0AC6 <reserved>
0AC7 GUJARATI VOWEL SIGN E
0AC8 GUJARATI VOWEL SIGN AI
0AC9 GUJARATI VOWEL SIGN CANDRA O
-0ACA <reserved>
0ACB GUJARATI VOWEL SIGN O
0ACC GUJARATI VOWEL SIGN AU
@ Various signs
0ACD GUJARATI SIGN VIRAMA
-0ACE <reserved>
-0ACF <reserved>
0AD0 GUJARATI OM
-0AD1 <reserved>
-0AD2 <reserved>
-0AD3 <reserved>
-0AD4 <reserved>
-0AD5 <reserved>
-0AD6 <reserved>
-0AD7 <reserved>
-0AD8 <reserved>
-0AD9 <reserved>
-0ADA <reserved>
-0ADB <reserved>
-0ADC <reserved>
-0ADD <reserved>
-0ADE <reserved>
-0ADF <reserved>
@ Generic additions
0AE0 GUJARATI LETTER VOCALIC RR
-0AE1 <reserved>
-0AE2 <reserved>
-0AE3 <reserved>
-0AE4 <reserved>
-0AE5 <reserved>
+@ Digits
0AE6 GUJARATI DIGIT ZERO
0AE7 GUJARATI DIGIT ONE
0AE8 GUJARATI DIGIT TWO
@@ -3845,11 +4047,9 @@
@@ 0B00 Oriya 0B7F
@ Based on ISCII 1988
@ Various signs
-0B00 <reserved>
0B01 ORIYA SIGN CANDRABINDU
0B02 ORIYA SIGN ANUSVARA
0B03 ORIYA SIGN VISARGA
-0B04 <reserved>
@ Independent vowels
0B05 ORIYA LETTER A
0B06 ORIYA LETTER AA
@@ -3859,12 +4059,8 @@
0B0A ORIYA LETTER UU
0B0B ORIYA LETTER VOCALIC R
0B0C ORIYA LETTER VOCALIC L
-0B0D <reserved>
-0B0E <reserved>
0B0F ORIYA LETTER E
0B10 ORIYA LETTER AI
-0B11 <reserved>
-0B12 <reserved>
0B13 ORIYA LETTER O
0B14 ORIYA LETTER AU
@ Consonants
@@ -3888,7 +4084,6 @@
0B26 ORIYA LETTER DA
0B27 ORIYA LETTER DHA
0B28 ORIYA LETTER NA
-0B29 <reserved>
0B2A ORIYA LETTER PA
0B2B ORIYA LETTER PHA
0B2C ORIYA LETTER BA
@@ -3897,10 +4092,8 @@
0B2E ORIYA LETTER MA
0B2F ORIYA LETTER YA
0B30 ORIYA LETTER RA
-0B31 <reserved>
0B32 ORIYA LETTER LA
0B33 ORIYA LETTER LLA
-0B34 <reserved>
0B35 <reserved>
x (oriya letter ba - 0B2C)
0B36 ORIYA LETTER SHA
@@ -3908,8 +4101,6 @@
0B38 ORIYA LETTER SA
0B39 ORIYA LETTER HA
@ Various signs
-0B3A <reserved>
-0B3B <reserved>
0B3C ORIYA SIGN NUKTA
* for extending the alphabet to new letters
0B3D ORIYA SIGN AVAGRAHA
@@ -3920,53 +4111,31 @@
0B41 ORIYA VOWEL SIGN U
0B42 ORIYA VOWEL SIGN UU
0B43 ORIYA VOWEL SIGN VOCALIC R
-0B44 <reserved>
-0B45 <reserved>
-0B46 <reserved>
0B47 ORIYA VOWEL SIGN E
* stands to the left of the consonant
0B48 ORIYA VOWEL SIGN AI
* pieces left of and above the consonant
- : 0B47 + 0B56
-0B49 <reserved>
-0B4A <reserved>
+ : 0B47 0B56
0B4B ORIYA VOWEL SIGN O
* pieces on both sides of the consonant
- : 0B47 + 0B3E
+ : 0B47 0B3E
0B4C ORIYA VOWEL SIGN AU
* pieces on both sides of the consonant
- : 0B47 + 0B57
+ : 0B47 0B57
@ Various signs
0B4D ORIYA SIGN VIRAMA
-0B4E <reserved>
-0B4F <reserved>
-0B50 <reserved>
-0B51 <reserved>
-0B52 <reserved>
-0B53 <reserved>
-0B54 <reserved>
-0B55 <reserved>
0B56 ORIYA AI LENGTH MARK
0B57 ORIYA AU LENGTH MARK
@ Additional consonants
-0B58 <reserved>
-0B59 <reserved>
-0B5A <reserved>
-0B5B <reserved>
0B5C ORIYA LETTER RRA
- : 0B21 + 0B3C
+ : 0B21 0B3C
0B5D ORIYA LETTER RHA
- : 0B22 + 0B3C
-0B5E <reserved>
+ : 0B22 0B3C
0B5F ORIYA LETTER YYA
- : 0B2F + 0B3C
@ Generic additions
0B60 ORIYA LETTER VOCALIC RR
0B61 ORIYA LETTER VOCALIC LL
-0B62 <reserved>
-0B63 <reserved>
-0B64 <reserved>
-0B65 <reserved>
+@ Digits
0B66 ORIYA DIGIT ZERO
0B67 ORIYA DIGIT ONE
0B68 ORIYA DIGIT TWO
@@ -3982,11 +4151,9 @@
@@ 0B80 Tamil 0BFF
@ Based on ISCII 1988
@ Various signs
-0B80 <reserved>
-0B81 <reserved>
0B82 TAMIL SIGN ANUSVARA
0B83 TAMIL SIGN VISARGA
-0B84 <reserved>
+ = aytham
@ Independent vowels
0B85 TAMIL LETTER A
0B86 TAMIL LETTER AA
@@ -3994,43 +4161,25 @@
0B88 TAMIL LETTER II
0B89 TAMIL LETTER U
0B8A TAMIL LETTER UU
-0B8B <reserved>
-0B8C <reserved>
-0B8D <reserved>
0B8E TAMIL LETTER E
0B8F TAMIL LETTER EE
0B90 TAMIL LETTER AI
-0B91 <reserved>
0B92 TAMIL LETTER O
0B93 TAMIL LETTER OO
0B94 TAMIL LETTER AU
- : 0B92 + 0BD7
+ : 0B92 0BD7
@ Consonants
0B95 TAMIL LETTER KA
-0B96 <reserved>
-0B97 <reserved>
-0B98 <reserved>
0B99 TAMIL LETTER NGA
0B9A TAMIL LETTER CA
-0B9B <reserved>
0B9C TAMIL LETTER JA
-0B9D <reserved>
0B9E TAMIL LETTER NYA
0B9F TAMIL LETTER TTA
-0BA0 <reserved>
-0BA1 <reserved>
-0BA2 <reserved>
0BA3 TAMIL LETTER NNA
0BA4 TAMIL LETTER TA
-0BA5 <reserved>
-0BA6 <reserved>
-0BA7 <reserved>
0BA8 TAMIL LETTER NA
0BA9 TAMIL LETTER NNNA
0BAA TAMIL LETTER PA
-0BAB <reserved>
-0BAC <reserved>
-0BAD <reserved>
0BAE TAMIL LETTER MA
0BAF TAMIL LETTER YA
0BB0 TAMIL LETTER RA
@@ -4039,66 +4188,34 @@
0BB3 TAMIL LETTER LLA
0BB4 TAMIL LETTER LLLA
0BB5 TAMIL LETTER VA
-0BB6 <reserved>
0BB7 TAMIL LETTER SSA
0BB8 TAMIL LETTER SA
0BB9 TAMIL LETTER HA
-0BBA <reserved>
-0BBB <reserved>
-0BBC <reserved>
-0BBD <reserved>
@ Dependent vowel signs
0BBE TAMIL VOWEL SIGN AA
0BBF TAMIL VOWEL SIGN I
0BC0 TAMIL VOWEL SIGN II
0BC1 TAMIL VOWEL SIGN U
0BC2 TAMIL VOWEL SIGN UU
-0BC3 <reserved>
-0BC4 <reserved>
-0BC5 <reserved>
0BC6 TAMIL VOWEL SIGN E
* stands to the left of the consonant
0BC7 TAMIL VOWEL SIGN EE
* stands to the left of the consonant
0BC8 TAMIL VOWEL SIGN AI
* stands to the left of the consonant
-0BC9 <reserved>
0BCA TAMIL VOWEL SIGN O
* pieces on both sides of the consonant
- : 0BC6 + 0BBE
+ : 0BC6 0BBE
0BCB TAMIL VOWEL SIGN OO
* pieces on both sides of the consonant
- : 0BC7 + 0BBE
+ : 0BC7 0BBE
0BCC TAMIL VOWEL SIGN AU
* pieces on both sides of the consonant
- : 0BC6 + 0BD7
+ : 0BC6 0BD7
@ Various signs
0BCD TAMIL SIGN VIRAMA
-0BCE <reserved>
-0BCF <reserved>
-0BD0 <reserved>
-0BD1 <reserved>
-0BD2 <reserved>
-0BD3 <reserved>
-0BD4 <reserved>
-0BD5 <reserved>
-0BD6 <reserved>
0BD7 TAMIL AU LENGTH MARK
-0BD8 <reserved>
-0BD9 <reserved>
-0BDA <reserved>
-0BDB <reserved>
-0BDC <reserved>
-0BDD <reserved>
-0BDE <reserved>
-0BDF <reserved>
-@ Generic additions
-0BE0 <reserved>
-0BE1 <reserved>
-0BE2 <reserved>
-0BE3 <reserved>
-0BE4 <reserved>
-0BE5 <reserved>
+@ Digits
0BE6 <reserved>
x (digit zero - 0030)
0BE7 TAMIL DIGIT ONE
@@ -4117,11 +4234,9 @@
@@ 0C00 Telugu 0C7F
@ Based on ISCII 1988
@ Various signs
-0C00 <reserved>
0C01 TELUGU SIGN CANDRABINDU
0C02 TELUGU SIGN ANUSVARA
0C03 TELUGU SIGN VISARGA
-0C04 <reserved>
@ Independent vowels
0C05 TELUGU LETTER A
0C06 TELUGU LETTER AA
@@ -4131,11 +4246,9 @@
0C0A TELUGU LETTER UU
0C0B TELUGU LETTER VOCALIC R
0C0C TELUGU LETTER VOCALIC L
-0C0D <reserved>
0C0E TELUGU LETTER E
0C0F TELUGU LETTER EE
0C10 TELUGU LETTER AI
-0C11 <reserved>
0C12 TELUGU LETTER O
0C13 TELUGU LETTER OO
0C14 TELUGU LETTER AU
@@ -4160,7 +4273,6 @@
0C26 TELUGU LETTER DA
0C27 TELUGU LETTER DHA
0C28 TELUGU LETTER NA
-0C29 <reserved>
0C2A TELUGU LETTER PA
0C2B TELUGU LETTER PHA
0C2C TELUGU LETTER BA
@@ -4171,16 +4283,11 @@
0C31 TELUGU LETTER RRA
0C32 TELUGU LETTER LA
0C33 TELUGU LETTER LLA
-0C34 <reserved>
0C35 TELUGU LETTER VA
0C36 TELUGU LETTER SHA
0C37 TELUGU LETTER SSA
0C38 TELUGU LETTER SA
0C39 TELUGU LETTER HA
-0C3A <reserved>
-0C3B <reserved>
-0C3C <reserved>
-0C3D <reserved>
@ Dependent vowel signs
0C3E TELUGU VOWEL SIGN AA
0C3F TELUGU VOWEL SIGN I
@@ -4189,42 +4296,21 @@
0C42 TELUGU VOWEL SIGN UU
0C43 TELUGU VOWEL SIGN VOCALIC R
0C44 TELUGU VOWEL SIGN VOCALIC RR
-0C45 <reserved>
0C46 TELUGU VOWEL SIGN E
0C47 TELUGU VOWEL SIGN EE
0C48 TELUGU VOWEL SIGN AI
- : 0C46 + 0C56
-0C49 <reserved>
+ : 0C46 0C56
0C4A TELUGU VOWEL SIGN O
0C4B TELUGU VOWEL SIGN OO
0C4C TELUGU VOWEL SIGN AU
@ Various signs
0C4D TELUGU SIGN VIRAMA
-0C4E <reserved>
-0C4F <reserved>
-0C50 <reserved>
-0C51 <reserved>
-0C52 <reserved>
-0C53 <reserved>
-0C54 <reserved>
0C55 TELUGU LENGTH MARK
0C56 TELUGU AI LENGTH MARK
-0C57 <reserved>
-0C58 <reserved>
-0C59 <reserved>
-0C5A <reserved>
-0C5B <reserved>
-0C5C <reserved>
-0C5D <reserved>
-0C5E <reserved>
-0C5F <reserved>
@ Generic additions
0C60 TELUGU LETTER VOCALIC RR
0C61 TELUGU LETTER VOCALIC LL
-0C62 <reserved>
-0C63 <reserved>
-0C64 <reserved>
-0C65 <reserved>
+@ Digits
0C66 TELUGU DIGIT ZERO
0C67 TELUGU DIGIT ONE
0C68 TELUGU DIGIT TWO
@@ -4238,11 +4324,8 @@
@@ 0C80 Kannada 0CFF
@ Based on ISCII 1988
@ Various signs
-0C80 <reserved>
-0C81 <reserved>
0C82 KANNADA SIGN ANUSVARA
0C83 KANNADA SIGN VISARGA
-0C84 <reserved>
@ Independent vowels
0C85 KANNADA LETTER A
0C86 KANNADA LETTER AA
@@ -4252,11 +4335,9 @@
0C8A KANNADA LETTER UU
0C8B KANNADA LETTER VOCALIC R
0C8C KANNADA LETTER VOCALIC L
-0C8D <reserved>
0C8E KANNADA LETTER E
0C8F KANNADA LETTER EE
0C90 KANNADA LETTER AI
-0C91 <reserved>
0C92 KANNADA LETTER O
0C93 KANNADA LETTER OO
0C94 KANNADA LETTER AU
@@ -4281,7 +4362,6 @@
0CA6 KANNADA LETTER DA
0CA7 KANNADA LETTER DHA
0CA8 KANNADA LETTER NA
-0CA9 <reserved>
0CAA KANNADA LETTER PA
0CAB KANNADA LETTER PHA
0CAC KANNADA LETTER BA
@@ -4292,65 +4372,42 @@
0CB1 KANNADA LETTER RRA
0CB2 KANNADA LETTER LA
0CB3 KANNADA LETTER LLA
-0CB4 <reserved>
0CB5 KANNADA LETTER VA
0CB6 KANNADA LETTER SHA
0CB7 KANNADA LETTER SSA
0CB8 KANNADA LETTER SA
0CB9 KANNADA LETTER HA
-0CBA <reserved>
-0CBB <reserved>
-0CBC <reserved>
-0CBD <reserved>
@ Dependent vowel signs
0CBE KANNADA VOWEL SIGN AA
0CBF KANNADA VOWEL SIGN I
0CC0 KANNADA VOWEL SIGN II
- : 0CBF + 0CD5
+ : 0CBF 0CD5
0CC1 KANNADA VOWEL SIGN U
0CC2 KANNADA VOWEL SIGN UU
0CC3 KANNADA VOWEL SIGN VOCALIC R
0CC4 KANNADA VOWEL SIGN VOCALIC RR
-0CC5 <reserved>
0CC6 KANNADA VOWEL SIGN E
0CC7 KANNADA VOWEL SIGN EE
- : 0CC6 + 0CD5
+ : 0CC6 0CD5
0CC8 KANNADA VOWEL SIGN AI
- : 0CC6 + 0CD6
-0CC9 <reserved>
+ : 0CC6 0CD6
0CCA KANNADA VOWEL SIGN O
- : 0CC6 + 0CC2
+ : 0CC6 0CC2
0CCB KANNADA VOWEL SIGN OO
- : 0CC6 + 0CC2 + 0CD5
+ : 0CCA 0CD5
0CCC KANNADA VOWEL SIGN AU
@ Various signs
0CCD KANNADA SIGN VIRAMA
-0CCE <reserved>
-0CCF <reserved>
-0CD0 <reserved>
-0CD1 <reserved>
-0CD2 <reserved>
-0CD3 <reserved>
-0CD4 <reserved>
0CD5 KANNADA LENGTH MARK
0CD6 KANNADA AI LENGTH MARK
-0CD7 <reserved>
@ Additional consonants
-0CD8 <reserved>
-0CD9 <reserved>
-0CDA <reserved>
-0CDB <reserved>
-0CDC <reserved>
-0CDD <reserved>
0CDE KANNADA LETTER FA
-0CDF <reserved>
+ * obsolete historic letter
+ * name is a mistake for LLLA
@ Generic additions
0CE0 KANNADA LETTER VOCALIC RR
0CE1 KANNADA LETTER VOCALIC LL
-0CE2 <reserved>
-0CE3 <reserved>
-0CE4 <reserved>
-0CE5 <reserved>
+@ Digits
0CE6 KANNADA DIGIT ZERO
0CE7 KANNADA DIGIT ONE
0CE8 KANNADA DIGIT TWO
@@ -4364,11 +4421,8 @@
@@ 0D00 Malayalam 0D7F
@ Based on ISCII 1988
@ Various signs
-0D00 <reserved>
-0D01 <reserved>
0D02 MALAYALAM SIGN ANUSVARA
0D03 MALAYALAM SIGN VISARGA
-0D04 <reserved>
@ Independent vowels
0D05 MALAYALAM LETTER A
0D06 MALAYALAM LETTER AA
@@ -4378,11 +4432,9 @@
0D0A MALAYALAM LETTER UU
0D0B MALAYALAM LETTER VOCALIC R
0D0C MALAYALAM LETTER VOCALIC L
-0D0D <reserved>
0D0E MALAYALAM LETTER E
0D0F MALAYALAM LETTER EE
0D10 MALAYALAM LETTER AI
-0D11 <reserved>
0D12 MALAYALAM LETTER O
0D13 MALAYALAM LETTER OO
0D14 MALAYALAM LETTER AU
@@ -4407,7 +4459,6 @@
0D26 MALAYALAM LETTER DA
0D27 MALAYALAM LETTER DHA
0D28 MALAYALAM LETTER NA
-0D29 <reserved>
0D2A MALAYALAM LETTER PA
0D2B MALAYALAM LETTER PHA
0D2C MALAYALAM LETTER BA
@@ -4424,10 +4475,6 @@
0D37 MALAYALAM LETTER SSA
0D38 MALAYALAM LETTER SA
0D39 MALAYALAM LETTER HA
-0D3A <reserved>
-0D3B <reserved>
-0D3C <reserved>
-0D3D <reserved>
@ Dependent vowel signs
0D3E MALAYALAM VOWEL SIGN AA
0D3F MALAYALAM VOWEL SIGN I
@@ -4435,8 +4482,6 @@
0D41 MALAYALAM VOWEL SIGN U
0D42 MALAYALAM VOWEL SIGN UU
0D43 MALAYALAM VOWEL SIGN VOCALIC R
-0D44 <reserved>
-0D45 <reserved>
0D46 MALAYALAM VOWEL SIGN E
* stands to the left of the consonant
0D47 MALAYALAM VOWEL SIGN EE
@@ -4446,41 +4491,21 @@
0D49 <reserved>
0D4A MALAYALAM VOWEL SIGN O
* pieces on both sides of the consonant
- : 0D46 + 0D3E
+ : 0D46 0D3E
0D4B MALAYALAM VOWEL SIGN OO
* pieces on both sides of the consonant
- : 0D47 + 0D3E
+ : 0D47 0D3E
0D4C MALAYALAM VOWEL SIGN AU
* pieces on both sides of the consonant
- : 0D46 + 0D57
+ : 0D46 0D57
@ Various signs
0D4D MALAYALAM SIGN VIRAMA
= vowel half-u
-0D4E <reserved>
-0D4F <reserved>
-0D50 <reserved>
-0D51 <reserved>
-0D52 <reserved>
-0D53 <reserved>
-0D54 <reserved>
-0D55 <reserved>
-0D56 <reserved>
0D57 MALAYALAM AU LENGTH MARK
-0D58 <reserved>
-0D59 <reserved>
-0D5A <reserved>
-0D5B <reserved>
-0D5C <reserved>
-0D5D <reserved>
-0D5E <reserved>
-0D5F <reserved>
@ Generic additions
0D60 MALAYALAM LETTER VOCALIC RR
0D61 MALAYALAM LETTER VOCALIC LL
-0D62 <reserved>
-0D63 <reserved>
-0D64 <reserved>
-0D65 <reserved>
+@ Digits
0D66 MALAYALAM DIGIT ZERO
0D67 MALAYALAM DIGIT ONE
0D68 MALAYALAM DIGIT TWO
@@ -4491,11 +4516,184 @@
0D6D MALAYALAM DIGIT SEVEN
0D6E MALAYALAM DIGIT EIGHT
0D6F MALAYALAM DIGIT NINE
-@@ 0D80 Unassigned 0DFF
+@@ 0D80 Sinhala 0DFF
+@ Various signs
+0D82 SINHALA SIGN ANUSVARAYA
+ = anusvara
+0D83 SINHALA SIGN VISARGAYA
+ = visarga
+@ Independent vowels
+0D85 SINHALA LETTER AYANNA
+ = sinhala letter a
+0D86 SINHALA LETTER AAYANNA
+ = sinhala letter aa
+0D87 SINHALA LETTER AEYANNA
+ = sinhala letter ae
+0D88 SINHALA LETTER AEEYANNA
+ = sinhala letter aae
+0D89 SINHALA LETTER IYANNA
+ = sinhala letter i
+0D8A SINHALA LETTER IIYANNA
+ = sinhala letter ii
+0D8B SINHALA LETTER UYANNA
+ = sinhala letter u
+0D8C SINHALA LETTER UUYANNA
+ = sinhala letter uu
+0D8D SINHALA LETTER IRUYANNA
+ = sinhala letter vocalic r
+0D8E SINHALA LETTER IRUUYANNA
+ = sinhala letter vocalic rr
+0D8F SINHALA LETTER ILUYANNA
+ = sinhala letter vocalic l
+0D90 SINHALA LETTER ILUUYANNA
+ = sinhala letter vocalic ll
+0D91 SINHALA LETTER EYANNA
+ = sinhala letter e
+0D92 SINHALA LETTER EEYANNA
+ = sinhala letter ee
+0D93 SINHALA LETTER AIYANNA
+ = sinhala letter ai
+0D94 SINHALA LETTER OYANNA
+ = sinhala letter o
+0D95 SINHALA LETTER OOYANNA
+ = sinhala letter oo
+0D96 SINHALA LETTER AUYANNA
+ = sinhala letter au
+@ Consonants
+0D9A SINHALA LETTER ALPAPRAANA KAYANNA
+ = sinhala letter ka
+0D9B SINHALA LETTER MAHAAPRAANA KAYANNA
+ = sinhala letter kha
+0D9C SINHALA LETTER ALPAPRAANA GAYANNA
+ = sinhala letter ga
+0D9D SINHALA LETTER MAHAAPRAANA GAYANNA
+ = sinhala letter gha
+0D9E SINHALA LETTER KANTAJA NAASIKYAYA
+ = sinhala letter nga
+0D9F SINHALA LETTER SANYAKA GAYANNA
+ = sinhala letter nnga
+0DA0 SINHALA LETTER ALPAPRAANA CAYANNA
+ = sinhala letter ca
+0DA1 SINHALA LETTER MAHAAPRAANA CAYANNA
+ = sinhala letter cha
+0DA2 SINHALA LETTER ALPAPRAANA JAYANNA
+ = sinhala letter ja
+0DA3 SINHALA LETTER MAHAAPRAANA JAYANNA
+ = sinhala letter jha
+0DA4 SINHALA LETTER TAALUJA NAASIKYAYA
+ = sinhala letter nya
+0DA5 SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA
+ = sinhala letter jnya
+0DA6 SINHALA LETTER SANYAKA JAYANNA
+ = sinhala letter nyja
+0DA7 SINHALA LETTER ALPAPRAANA TTAYANNA
+ = sinhala letter tta
+0DA8 SINHALA LETTER MAHAAPRAANA TTAYANNA
+ = sinhala letter ttha
+0DA9 SINHALA LETTER ALPAPRAANA DDAYANNA
+ = sinhala letter dda
+0DAA SINHALA LETTER MAHAAPRAANA DDAYANNA
+ = sinhala letter ddha
+0DAB SINHALA LETTER MUURDHAJA NAYANNA
+ = sinhala letter nna
+0DAC SINHALA LETTER SANYAKA DDAYANNA
+ = sinhala letter nndda
+0DAD SINHALA LETTER ALPAPRAANA TAYANNA
+ = sinhala letter ta
+0DAE SINHALA LETTER MAHAAPRAANA TAYANNA
+ = sinhala letter tha
+0DAF SINHALA LETTER ALPAPRAANA DAYANNA
+ = sinhala letter da
+0DB0 SINHALA LETTER MAHAAPRAANA DAYANNA
+ = sinhala letter dha
+0DB1 SINHALA LETTER DANTAJA NAYANNA
+ = sinhala letter na
+0DB3 SINHALA LETTER SANYAKA DAYANNA
+ = sinhala letter nda
+0DB4 SINHALA LETTER ALPAPRAANA PAYANNA
+ = sinhala letter pa
+0DB5 SINHALA LETTER MAHAAPRAANA PAYANNA
+ = sinhala letter pha
+0DB6 SINHALA LETTER ALPAPRAANA BAYANNA
+ = sinhala letter ba
+0DB7 SINHALA LETTER MAHAAPRAANA BAYANNA
+ = sinhala letter bha
+0DB8 SINHALA LETTER MAYANNA
+ = sinhala letter ma
+0DB9 SINHALA LETTER AMBA BAYANNA
+ = sinhala letter mba
+0DBA SINHALA LETTER YAYANNA
+ = sinhala letter ya
+0DBB SINHALA LETTER RAYANNA
+ = sinhala letter ra
+0DBD SINHALA LETTER DANTAJA LAYANNA
+ = sinhala letter la
+ * dental
+0DC0 SINHALA LETTER VAYANNA
+ = sinhala letter va
+0DC1 SINHALA LETTER TAALUJA SAYANNA
+ = sinhala letter sha
+0DC2 SINHALA LETTER MUURDHAJA SAYANNA
+ = sinhala letter ssa
+ * retroflex
+0DC3 SINHALA LETTER DANTAJA SAYANNA
+ = sinhala letter sa
+ * dental
+0DC4 SINHALA LETTER HAYANNA
+ = sinhala letter ha
+0DC5 SINHALA LETTER MUURDHAJA LAYANNA
+ = sinhala letter lla
+ * retroflex
+0DC6 SINHALA LETTER FAYANNA
+ = sinhala letter fa
+@ Sign
+0DCA SINHALA SIGN AL-LAKUNA
+ = virama
+@ Dependent vowel signs
+0DCF SINHALA VOWEL SIGN AELA-PILLA
+ = sinhala vowel sign aa
+0DD0 SINHALA VOWEL SIGN KETTI AEDA-PILLA
+ = sinhala vowel sign ae
+0DD1 SINHALA VOWEL SIGN DIGA AEDA-PILLA
+ = sinhala vowel sign aae
+0DD2 SINHALA VOWEL SIGN KETTI IS-PILLA
+ = sinhala vowel sign i
+0DD3 SINHALA VOWEL SIGN DIGA IS-PILLA
+ = sinhala vowel sign ii
+0DD4 SINHALA VOWEL SIGN KETTI PAA-PILLA
+ = sinhala vowel sign u
+0DD6 SINHALA VOWEL SIGN DIGA PAA-PILLA
+ = sinhala vowel sign uu
+0DD8 SINHALA VOWEL SIGN GAETTA-PILLA
+ = sinhala vowel sign vocalic r
+0DD9 SINHALA VOWEL SIGN KOMBUVA
+ = sinhala vowel sign e
+0DDA SINHALA VOWEL SIGN DIGA KOMBUVA
+ = sinhala vowel sign ee
+ : 0DD9 0DCA
+0DDB SINHALA VOWEL SIGN KOMBU DEKA
+ = sinhala vowel sign ai
+0DDC SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA
+ = sinhala vowel sign o
+ : 0DD9 0DCF
+0DDD SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA
+ = sinhala vowel sign oo
+ : 0DDC 0DCA
+0DDE SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA
+ = sinhala vowel sign au
+ : 0DD9 0DDF
+0DDF SINHALA VOWEL SIGN GAYANUKITTA
+ = sinhala vowel sign vocalic l
+@ Additional dependent vowel signs
+0DF2 SINHALA VOWEL SIGN DIGA GAETTA-PILLA
+ = sinhala vowel sign vocalic rr
+0DF3 SINHALA VOWEL SIGN DIGA GAYANUKITTA
+ = sinhala vowel sign vocalic ll
+@ Punctuation
+0DF4 SINHALA PUNCTUATION KUNDDALIYA
@@ 0E00 Thai 0E7F
-@ Based on TIS 620-2529
+@ Based on TIS 620-2533
@ Consonants
-0E00 <reserved>
0E01 THAI CHARACTER KO KAI
0E02 THAI CHARACTER KHO KHAI
0E03 THAI CHARACTER KHO KHUAT
@@ -4532,10 +4730,10 @@
0E22 THAI CHARACTER YO YAK
0E23 THAI CHARACTER RO RUA
0E24 THAI CHARACTER RU
- * independent vowel letter used to write Pali
+ * independent vowel letter used to write Sanskrit
0E25 THAI CHARACTER LO LING
0E26 THAI CHARACTER LU
- * independent vowel letter used to write Pali
+ * independent vowel letter used to write Sanskrit
0E27 THAI CHARACTER WO WAEN
0E28 THAI CHARACTER SO SALA
0E29 THAI CHARACTER SO RUSI
@@ -4545,40 +4743,37 @@
0E2D THAI CHARACTER O ANG
0E2E THAI CHARACTER HO NOKHUK
@ Sign
-0E2F THAI CHARACTER PAIYANNOI
+0E2F THAI CHARACTER PAIYANNOI (paiyan noi)
* ellipsis, abbreviation
@ Vowels
0E30 THAI CHARACTER SARA A
0E31 THAI CHARACTER MAI HAN-AKAT
0E32 THAI CHARACTER SARA AA
0E33 THAI CHARACTER SARA AM
- : 0E4D + 0E32
+ # 0E4D 0E32
0E34 THAI CHARACTER SARA I
0E35 THAI CHARACTER SARA II
0E36 THAI CHARACTER SARA UE
-0E37 THAI CHARACTER SARA UEE
+0E37 THAI CHARACTER SARA UEE (sara uue)
+ = sara uue
0E38 THAI CHARACTER SARA U
0E39 THAI CHARACTER SARA UU
0E3A THAI CHARACTER PHINTHU
* Pali virama
-0E3B <reserved>
-0E3C <reserved>
-0E3D <reserved>
-0E3E <reserved>
@ Currency symbol
0E3F THAI CURRENCY SYMBOL BAHT
@ Vowels
0E40 THAI CHARACTER SARA E
0E41 THAI CHARACTER SARA AE
0E42 THAI CHARACTER SARA O
-0E43 THAI CHARACTER SARA AI MAIMUAN
-0E44 THAI CHARACTER SARA AI MAIMALAI
+0E43 THAI CHARACTER SARA AI MAIMUAN (sara ai mai muan)
+0E44 THAI CHARACTER SARA AI MAIMALAI (sara ai mai malai)
@ Signs
-0E45 THAI CHARACTER LAKKHANGYAO
-0E46 THAI CHARACTER MAIYAMOK
+0E45 THAI CHARACTER LAKKHANGYAO (lakkhang yao)
+0E46 THAI CHARACTER MAIYAMOK (mai yamok)
* repetition
@ Vowel
-0E47 THAI CHARACTER MAITAIKHU
+0E47 THAI CHARACTER MAITAIKHU (mai taikhu)
@ Tone marks
0E48 THAI CHARACTER MAI EK
0E49 THAI CHARACTER MAI THO
@@ -4587,10 +4782,13 @@
@ Signs
0E4C THAI CHARACTER THANTHAKHAT
* cancellation mark
-0E4D THAI CHARACTER NIKHAHIT
+0E4D THAI CHARACTER NIKHAHIT (nikkhahit)
+ = nikkhahit
* final nasal
0E4E THAI CHARACTER YAMAKKAN
0E4F THAI CHARACTER FONGMAN
+ * used as a bullet
+ x (khmer sign phnaek muan - 17D9)
@ Digits
0E50 THAI DIGIT ZERO
0E51 THAI DIGIT ONE
@@ -4604,35 +4802,25 @@
0E59 THAI DIGIT NINE
@ Signs
0E5A THAI CHARACTER ANGKHANKHU
+ * used to mark end of long sections
+ * used in combination with 0E30 to mark end of a verse
0E5B THAI CHARACTER KHOMUT
+ * used to mark end of chapter or document
+ x (khmer sign koomuut - 17DA)
@@ 0E80 Lao 0EFF
@ Based on TIS 620-2529
@ Consonants
-0E80 <reserved>
0E81 LAO LETTER KO
0E82 LAO LETTER KHO SUNG
-0E83 <reserved>
0E84 LAO LETTER KHO TAM
-0E85 <reserved>
-0E86 <reserved>
0E87 LAO LETTER NGO
0E88 LAO LETTER CO
-0E89 <reserved>
0E8A LAO LETTER SO TAM
-0E8B <reserved>
-0E8C <reserved>
0E8D LAO LETTER NYO
-0E8E <reserved>
-0E8F <reserved>
-0E90 <reserved>
-0E91 <reserved>
-0E92 <reserved>
-0E93 <reserved>
0E94 LAO LETTER DO
0E95 LAO LETTER TO
0E96 LAO LETTER THO SUNG
0E97 LAO LETTER THO TAM
-0E98 <reserved>
0E99 LAO LETTER NO
0E9A LAO LETTER BO
0E9B LAO LETTER PO
@@ -4640,19 +4828,13 @@
0E9D LAO LETTER FO TAM
0E9E LAO LETTER PHO TAM
0E9F LAO LETTER FO SUNG
-0EA0 <reserved>
0EA1 LAO LETTER MO
0EA2 LAO LETTER YO
0EA3 LAO LETTER LO LING
-0EA4 <reserved>
0EA5 LAO LETTER LO LOOT
-0EA6 <reserved>
0EA7 LAO LETTER WO
-0EA8 <reserved>
-0EA9 <reserved>
0EAA LAO LETTER SO SUNG
0EAB LAO LETTER HO SUNG
-0EAC <reserved>
0EAD LAO LETTER O
0EAE LAO LETTER HO TAM
@ Sign
@@ -4663,32 +4845,26 @@
* vowel shortener
0EB2 LAO VOWEL SIGN AA
0EB3 LAO VOWEL SIGN AM
- : 0ECD + 0EB2
+ # 0ECD 0EB2
0EB4 LAO VOWEL SIGN I
0EB5 LAO VOWEL SIGN II
0EB6 LAO VOWEL SIGN Y
0EB7 LAO VOWEL SIGN YY
0EB8 LAO VOWEL SIGN U
0EB9 LAO VOWEL SIGN UU
-0EBA <reserved>
-@ Vowel
0EBB LAO VOWEL SIGN MAI KON
@ Signs
0EBC LAO SEMIVOWEL SIGN LO
0EBD LAO SEMIVOWEL SIGN NYO
-0EBE <reserved>
-0EBF <reserved>
@ Vowels
0EC0 LAO VOWEL SIGN E
0EC1 LAO VOWEL SIGN EI
0EC2 LAO VOWEL SIGN O
0EC3 LAO VOWEL SIGN AY
0EC4 LAO VOWEL SIGN AI
-0EC5 <reserved>
@ Sign
0EC6 LAO KO LA
* repetition
-0EC7 <reserved>
@ Tone marks
0EC8 LAO TONE MAI EK
0EC9 LAO TONE MAI THO
@@ -4698,8 +4874,6 @@
0ECC LAO CANCELLATION MARK
0ECD LAO NIGGAHITA
* final nasal
-0ECE <reserved>
-0ECF <reserved>
@ Digits
0ED0 LAO DIGIT ZERO
0ED1 LAO DIGIT ONE
@@ -4711,79 +4885,69 @@
0ED7 LAO DIGIT SEVEN
0ED8 LAO DIGIT EIGHT
0ED9 LAO DIGIT NINE
-0EDA <reserved>
-0EDB <reserved>
@ Digraphs
0EDC LAO HO NO
- # 0EAB + 0E99
+ # 0EAB 0E99
0EDD LAO HO MO
- # 0EAB + 0EA1
-@@ 0F00 Tibetan 0FBF
-@ Syllables
+ # 0EAB 0EA1
+@@ 0F00 Tibetan 0FFF
+@ Syllable
0F00 TIBETAN SYLLABLE OM
-0F01 TIBETAN MARK GTER YIG MGO TRUNCATED A
- = ter yik go a thung
-0F02 TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA
- = ter yik go wum nam chey ma
-0F03 TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA
- = ter yik go wum ter tsek ma
+@ Head marks
+0F01 TIBETAN MARK GTER YIG MGO TRUNCATED A (ter yik go a thung)
+0F02 TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA (ter yik go wum nam chey ma)
+0F03 TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA (ter yik go wum ter tsek ma)
+0F04 TIBETAN MARK INITIAL YIG MGO MDUN MA (yik go dun ma)
+ * honorific; marks beginning of text or start of new folio
+ x (mongolian birga - 1800)
+0F05 TIBETAN MARK CLOSING YIG MGO SGAB MA (yik go kab ma)
+ * follows and ligates with initial yig-mgo
+0F06 TIBETAN MARK CARET YIG MGO PHUR SHAD MA (yik go pur shey ma)
+0F07 TIBETAN MARK YIG MGO TSHEG SHAD MA (yik go tsek shey ma)
@ Marks and signs
-0F04 TIBETAN MARK INITIAL YIG MGO MDUN MA
- = yik go dun ma
-0F05 TIBETAN MARK CLOSING YIG MGO SGAB MA
- = yik go kab ma
-0F06 TIBETAN MARK CARET YIG MGO PHUR SHAD MA
- = yik go pur shey ma
-0F07 TIBETAN MARK YIG MGO TSHEG SHAD MA
- = yik go tsek shey ma
-0F08 TIBETAN MARK SBRUL SHAD
- = drul shey
-0F09 TIBETAN MARK BSKUR YIG MGO
- = kur yik go
-0F0A TIBETAN MARK BKA- SHOG YIG MGO
- = ka sho yik go
-0F0B TIBETAN MARK INTERSYLLABIC TSHEG
- = tsek
-0F0C TIBETAN MARK DELIMITER TSHEG BSTAR
- = tsek tar
-0F0D TIBETAN MARK SHAD
- = shey
-0F0E TIBETAN MARK NYIS SHAD
- = nyi shey
-0F0F TIBETAN MARK TSHEG SHAD
- = tsek shey
-0F10 TIBETAN MARK NYIS TSHEG SHAD
- = nyi tsek shey
-0F11 TIBETAN MARK RIN CHEN SPUNGS SHAD
- = rinchen pung shey
-0F12 TIBETAN MARK RGYA GRAM SHAD
- = gya tram shey
-0F13 TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN
- = dzu ta me long chen
-0F14 TIBETAN MARK GTER TSHEG
- = ter tsek
-0F15 TIBETAN LOGOTYPE SIGN CHAD RTAGS
- = che ta
-0F16 TIBETAN LOGOTYPE SIGN LHAG RTAGS
- = hlak ta
-0F17 TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS
- = trachen char ta
-0F18 TIBETAN ASTROLOGICAL SIGN -KHYUD PA
- = kyu pa
-0F19 TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
- = dong tsu
-0F1A TIBETAN SIGN RDEL DKAR GCIG
- = deka chig
-0F1B TIBETAN SIGN RDEL DKAR GNYIS
- = deka nyi
-0F1C TIBETAN SIGN RDEL DKAR GSUM
- = deka sum
-0F1D TIBETAN SIGN RDEL NAG GCIG
- = dena chig
-0F1E TIBETAN SIGN RDEL NAG GNYIS
- = dena nyi
-0F1F TIBETAN SIGN RDEL DKAR RDEL NAG
- = deka dena
+0F08 TIBETAN MARK SBRUL SHAD (drul shey)
+ * separates sections of meaning equivalent to topics and sub-topics
+0F09 TIBETAN MARK BSKUR YIG MGO (kur yik go)
+ * list enumerator, used in Bhutan
+0F0A TIBETAN MARK BKA- SHOG YIG MGO (ka sho yik go)
+ * petition honorific, used in Bhutan
+0F0B TIBETAN MARK INTERSYLLABIC TSHEG (tsek)
+ * morpheme delimiter (approximate meaning)
+ * the normal tsheg; provides a break opportunity
+ * character name is a misnomer
+0F0C TIBETAN MARK DELIMITER TSHEG BSTAR (tsek tar)
+ * a non-breaking tsheg; inhibits line breaking
+ * character name is a misnomer
+ # <noBreak> 0F0B
+0F0D TIBETAN MARK SHAD (shey)
+ * marks end of a section of text (tshig-grub)
+ x (devanagari danda - 0964)
+0F0E TIBETAN MARK NYIS SHAD (nyi shey)
+ * marks end of a whole topic (don-tshan)
+ x (devanagari double danda - 0965)
+0F0F TIBETAN MARK TSHEG SHAD (tsek shey)
+0F10 TIBETAN MARK NYIS TSHEG SHAD (nyi tsek shey)
+0F11 TIBETAN MARK RIN CHEN SPUNGS SHAD (rinchen pung shey)
+ * shad which follows a tsheg-bar that starts a new line
+0F12 TIBETAN MARK RGYA GRAM SHAD (gya tram shey)
+0F13 TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN (dzu ta me long chen)
+0F14 TIBETAN MARK GTER TSHEG (ter tsek)
+ * used as a comma-like text delimiter
+ x (khmer sign camnuc pii kuuh - 17D6)
+@ Astrological signs
+0F15 TIBETAN LOGOTYPE SIGN CHAD RTAGS (che ta)
+0F16 TIBETAN LOGOTYPE SIGN LHAG RTAGS (hlak ta)
+0F17 TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS (trachen char ta)
+0F18 TIBETAN ASTROLOGICAL SIGN -KHYUD PA (kyu pa)
+ * combines with digits
+0F19 TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS (dong tsu)
+ * combines with digits
+0F1A TIBETAN SIGN RDEL DKAR GCIG (deka chig)
+0F1B TIBETAN SIGN RDEL DKAR GNYIS (deka nyi)
+0F1C TIBETAN SIGN RDEL DKAR GSUM (deka sum)
+0F1D TIBETAN SIGN RDEL NAG GCIG (dena chig)
+0F1E TIBETAN SIGN RDEL NAG GNYIS (dena nyi)
+0F1F TIBETAN SIGN RDEL DKAR RDEL NAG (deka dena)
@ Digits
0F20 TIBETAN DIGIT ZERO
0F21 TIBETAN DIGIT ONE
@@ -4795,6 +4959,7 @@
0F27 TIBETAN DIGIT SEVEN
0F28 TIBETAN DIGIT EIGHT
0F29 TIBETAN DIGIT NINE
+@ Digits minus half
0F2A TIBETAN DIGIT HALF ONE
0F2B TIBETAN DIGIT HALF TWO
0F2C TIBETAN DIGIT HALF THREE
@@ -4806,241 +4971,363 @@
0F32 TIBETAN DIGIT HALF NINE
0F33 TIBETAN DIGIT HALF ZERO
@ Marks and signs
-0F34 TIBETAN MARK BSDUS RTAGS
- = du ta
-0F35 TIBETAN MARK NGAS BZUNG NYI ZLA
- = nge zung nyi da
-0F36 TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN
- = dzu ta shi mig chen
-0F37 TIBETAN MARK NGAS BZUNG SGOR RTAGS
- = nge zung gor ta
-0F38 TIBETAN MARK CHE MGO
- = che go
-0F39 TIBETAN MARK TSA -PHRU
- = tsa tru
-0F3A TIBETAN MARK GUG RTAGS GYON
- = gug ta yun
-0F3B TIBETAN MARK GUG RTAGS GYAS
- = gug ta ye
-0F3C TIBETAN MARK ANG KHANG GYON
- = ang kang yun
-0F3D TIBETAN MARK ANG KHANG GYAS
- = ang kang ye
-0F3E TIBETAN SIGN YAR TSHES
- = yar tse
-0F3F TIBETAN SIGN MAR TSHES
- = mar tse
+0F34 TIBETAN MARK BSDUS RTAGS (du ta)
+ * repetition
+0F35 TIBETAN MARK NGAS BZUNG NYI ZLA (nge zung nyi da)
+ * honorific, emphasis; used like underlining
+0F36 TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN (dzu ta shi mig chen)
+ * marks point of text insertion or annotation
+0F37 TIBETAN MARK NGAS BZUNG SGOR RTAGS (nge zung gor ta)
+ * emphasis; used like underlining
+0F38 TIBETAN MARK CHE MGO (che go)
+0F39 TIBETAN MARK TSA -PHRU (tsa tru)
+ * a lenition mark
+@ Paired punctuation
+0F3A TIBETAN MARK GUG RTAGS GYON (gug ta yun)
+0F3B TIBETAN MARK GUG RTAGS GYAS (gug ta ye)
+ * brackets
+0F3C TIBETAN MARK ANG KHANG GYON (ang kang yun)
+0F3D TIBETAN MARK ANG KHANG GYAS (ang kang ye)
+ * used for bracketing with a roof over
+@ Astrological signs
+0F3E TIBETAN SIGN YAR TSHES (yar tse)
+0F3F TIBETAN SIGN MAR TSHES (mar tse)
+ * marks which combine with digits
@ Consonants
0F40 TIBETAN LETTER KA
0F41 TIBETAN LETTER KHA
0F42 TIBETAN LETTER GA
0F43 TIBETAN LETTER GHA
- : 0F42 + 0FB7
+ : 0F42 0FB7
0F44 TIBETAN LETTER NGA
0F45 TIBETAN LETTER CA
0F46 TIBETAN LETTER CHA
0F47 TIBETAN LETTER JA
-0F48 <reserved>
0F49 TIBETAN LETTER NYA
0F4A TIBETAN LETTER TTA
0F4B TIBETAN LETTER TTHA
0F4C TIBETAN LETTER DDA
0F4D TIBETAN LETTER DDHA
- : 0F4C + 0FB7
+ : 0F4C 0FB7
0F4E TIBETAN LETTER NNA
0F4F TIBETAN LETTER TA
0F50 TIBETAN LETTER THA
0F51 TIBETAN LETTER DA
0F52 TIBETAN LETTER DHA
- : 0F51 + 0FB7
+ : 0F51 0FB7
0F53 TIBETAN LETTER NA
0F54 TIBETAN LETTER PA
0F55 TIBETAN LETTER PHA
0F56 TIBETAN LETTER BA
0F57 TIBETAN LETTER BHA
- : 0F56 + 0FB7
+ : 0F56 0FB7
0F58 TIBETAN LETTER MA
0F59 TIBETAN LETTER TSA
0F5A TIBETAN LETTER TSHA
0F5B TIBETAN LETTER DZA
0F5C TIBETAN LETTER DZHA
- : 0F5B + 0FB7
+ : 0F5B 0FB7
0F5D TIBETAN LETTER WA
0F5E TIBETAN LETTER ZHA
0F5F TIBETAN LETTER ZA
0F60 TIBETAN LETTER -A
0F61 TIBETAN LETTER YA
-0F62 TIBETAN LETTER RA
+0F62 TIBETAN LETTER RA *
+ * when followed by a subjoined letter = ra mgo
0F63 TIBETAN LETTER LA
0F64 TIBETAN LETTER SHA
0F65 TIBETAN LETTER SSA
+ = reversed sha
0F66 TIBETAN LETTER SA
0F67 TIBETAN LETTER HA
0F68 TIBETAN LETTER A
+ * base for dependent vowels
0F69 TIBETAN LETTER KSSA
- : 0F40 + 0FB5
-0F6A <reserved>
-0F6B <reserved>
-0F6C <reserved>
-0F6D <reserved>
-0F6E <reserved>
-0F6F <reserved>
+ : 0F40 0FB5
+0F6A TIBETAN LETTER FIXED-FORM RA *
+ * used only in transliteration and transcription
@ Dependent vowel signs
-0F70 <reserved>
0F71 TIBETAN VOWEL SIGN AA
+ = a-chung
+ * common, vowel-lengthening mark
0F72 TIBETAN VOWEL SIGN I
0F73 TIBETAN VOWEL SIGN II
- : 0F71 + 0F72
+ * use of this character is discouraged
+ : 0F71 0F72
0F74 TIBETAN VOWEL SIGN U
0F75 TIBETAN VOWEL SIGN UU
- : 0F74 + 0F71
+ * use of this character is discouraged
+ : 0F71 0F74
0F76 TIBETAN VOWEL SIGN VOCALIC R
- : 0FB2 + 0F80
+ : 0FB2 0F80
0F77 TIBETAN VOWEL SIGN VOCALIC RR
- : 0F76 + 0F71
+ * use of this character is strongly discouraged
+ # 0FB2 0F81
0F78 TIBETAN VOWEL SIGN VOCALIC L
- : 0FB3 + 0F80
+ : 0FB3 0F80
0F79 TIBETAN VOWEL SIGN VOCALIC LL
- : 0F78 + 0F71
+ * use of this character is strongly discouraged
+ # 0FB3 0F81
0F7A TIBETAN VOWEL SIGN E
0F7B TIBETAN VOWEL SIGN EE
0F7C TIBETAN VOWEL SIGN O
0F7D TIBETAN VOWEL SIGN OO
-@ Various
-0F7E TIBETAN SIGN RJES SU NGA RO
- = je su nga ro
+@ Vocalic modification
+0F7E TIBETAN SIGN RJES SU NGA RO (je su nga ro)
= anusvara
-0F7F TIBETAN SIGN RNAM BCAD
- = nam chey
+0F7F TIBETAN SIGN RNAM BCAD (nam chey)
= visarga
+@ Dependent vowel signs
0F80 TIBETAN VOWEL SIGN REVERSED I
0F81 TIBETAN VOWEL SIGN REVERSED II
- : 0F80 + 0F71
+ * use of this character is discouraged
+ : 0F71 0F80
@ Marks and signs
-0F82 TIBETAN SIGN NYI ZLA NAA DA
- = nyi da na da
-0F83 TIBETAN SIGN SNA LDAN
- = nan de
+0F82 TIBETAN SIGN NYI ZLA NAA DA (nyi da na da)
+0F83 TIBETAN SIGN SNA LDAN (nan de)
+ x (devanagari sign candrabindu - 0901)
0F84 TIBETAN MARK HALANTA
+ = srog med
+ x (devanagari sign virama - 094D)
0F85 TIBETAN MARK PALUTA
-0F86 TIBETAN SIGN LCI RTAGS
- = ji ta
-0F87 TIBETAN SIGN YANG RTAGS
- = yang ta
-0F88 TIBETAN SIGN LCE TSA CAN
- = che tsa chen
-0F89 TIBETAN SIGN MCHU CAN
- = chu chen
-0F8A TIBETAN SIGN GRU CAN RGYINGS
- = tru chen ging
-0F8B TIBETAN SIGN GRU MED RGYINGS
- = tru me ging
-0F8C <reserved>
-0F8D <reserved>
-0F8E <reserved>
-0F8F <reserved>
+0F86 TIBETAN SIGN LCI RTAGS (ji ta)
+0F87 TIBETAN SIGN YANG RTAGS (yang ta)
+@ Transliteration head letters
+0F88 TIBETAN SIGN LCE TSA CAN (che tsa chen)
+0F89 TIBETAN SIGN MCHU CAN (chu chen)
+0F8A TIBETAN SIGN GRU CAN RGYINGS (tru chen ging)
+ * always followed by 0F82
+0F8B TIBETAN SIGN GRU MED RGYINGS (tru me ging)
@ Subjoined consonants
0F90 TIBETAN SUBJOINED LETTER KA
0F91 TIBETAN SUBJOINED LETTER KHA
0F92 TIBETAN SUBJOINED LETTER GA
0F93 TIBETAN SUBJOINED LETTER GHA
- : 0F92 + 0FB7
+ : 0F92 0FB7
0F94 TIBETAN SUBJOINED LETTER NGA
0F95 TIBETAN SUBJOINED LETTER CA
-0F96 <reserved>
+0F96 TIBETAN SUBJOINED LETTER CHA
0F97 TIBETAN SUBJOINED LETTER JA
-0F98 <reserved>
0F99 TIBETAN SUBJOINED LETTER NYA
0F9A TIBETAN SUBJOINED LETTER TTA
0F9B TIBETAN SUBJOINED LETTER TTHA
0F9C TIBETAN SUBJOINED LETTER DDA
0F9D TIBETAN SUBJOINED LETTER DDHA
- : 0F9C + 0FB7
+ : 0F9C 0FB7
0F9E TIBETAN SUBJOINED LETTER NNA
0F9F TIBETAN SUBJOINED LETTER TA
0FA0 TIBETAN SUBJOINED LETTER THA
0FA1 TIBETAN SUBJOINED LETTER DA
0FA2 TIBETAN SUBJOINED LETTER DHA
- : 0FA1 + 0FB7
+ : 0FA1 0FB7
0FA3 TIBETAN SUBJOINED LETTER NA
0FA4 TIBETAN SUBJOINED LETTER PA
0FA5 TIBETAN SUBJOINED LETTER PHA
0FA6 TIBETAN SUBJOINED LETTER BA
0FA7 TIBETAN SUBJOINED LETTER BHA
- : 0FA6 + 0FB7
+ : 0FA6 0FB7
0FA8 TIBETAN SUBJOINED LETTER MA
0FA9 TIBETAN SUBJOINED LETTER TSA
0FAA TIBETAN SUBJOINED LETTER TSHA
0FAB TIBETAN SUBJOINED LETTER DZA
0FAC TIBETAN SUBJOINED LETTER DZHA
- : 0FAB + 0FB7
-0FAD TIBETAN SUBJOINED LETTER WA
-0FAE <reserved>
-0FAF <reserved>
-0FB0 <reserved>
-0FB1 TIBETAN SUBJOINED LETTER YA
-0FB2 TIBETAN SUBJOINED LETTER RA
+ : 0FAB 0FB7
+0FAD TIBETAN SUBJOINED LETTER WA *
+ = wa-zur, wa-btags
+0FAE TIBETAN SUBJOINED LETTER ZHA
+0FAF TIBETAN SUBJOINED LETTER ZA
+0FB0 TIBETAN SUBJOINED LETTER -A
+ = a-chung
+ * rare, only used for full-sized subjoined letter
+ x (tibetan vowel sign aa - 0F71)
+0FB1 TIBETAN SUBJOINED LETTER YA *
+ = ya-btags
+0FB2 TIBETAN SUBJOINED LETTER RA *
+ = ra-btags
0FB3 TIBETAN SUBJOINED LETTER LA
0FB4 TIBETAN SUBJOINED LETTER SHA
0FB5 TIBETAN SUBJOINED LETTER SSA
+ = reversed subjoined sha
0FB6 TIBETAN SUBJOINED LETTER SA
0FB7 TIBETAN SUBJOINED LETTER HA
-0FB8 <reserved>
+0FB8 TIBETAN SUBJOINED LETTER A
0FB9 TIBETAN SUBJOINED LETTER KSSA
- : 0F90 + 0FB5
-@@ 0FC0 Unassigned 109F
+ : 0F90 0FB5
+@ Fixed-form subjoined consonants
+@+ These characters are used only for transliteration and transcription.
+0FBA TIBETAN SUBJOINED LETTER FIXED-FORM WA *
+0FBB TIBETAN SUBJOINED LETTER FIXED-FORM YA *
+0FBC TIBETAN SUBJOINED LETTER FIXED-FORM RA *
+@ Signs
+0FBE TIBETAN KU RU KHA (kuruka)
+ * often repeated three times; indicates a refrain
+0FBF TIBETAN KU RU KHA BZHI MIG CAN (kuruka shi mik chen)
+ * marks point of text insertion or annotation
+ x (reference mark - 203B)
+@ Cantillation signs
+0FC0 TIBETAN CANTILLATION SIGN HEAVY BEAT
+ * marks a heavy drum beat
+0FC1 TIBETAN CANTILLATION SIGN LIGHT BEAT
+ * marks a light drum beat
+0FC2 TIBETAN CANTILLATION SIGN CANG TE-U (chang tyu)
+ * symbol of a small Tibetan hand drum
+0FC3 TIBETAN CANTILLATION SIGN SBUB -CHAL (bub chey)
+ * symbol of a Tibetan cymbal
+@ Symbols
+0FC4 TIBETAN SYMBOL DRIL BU (drilbu)
+ * symbol of a Tibetan hand bell
+0FC5 TIBETAN SYMBOL RDO RJE (dorje)
+0FC6 TIBETAN SYMBOL PADMA GDAN (pema den)
+0FC7 TIBETAN SYMBOL RDO RJE RGYA GRAM (dorje gya dram)
+0FC8 TIBETAN SYMBOL PHUR PA (phurba)
+0FC9 TIBETAN SYMBOL NOR BU (norbu)
+0FCA TIBETAN SYMBOL NOR BU NYIS -KHYIL (norbu nyi khyi)
+ * the double body symbol
+ x (yin yang - 262F)
+0FCB TIBETAN SYMBOL NOR BU GSUM -KHYIL (norbu sum khyi)
+ * the tri-kaya or triple body symbol
+0FCC TIBETAN SYMBOL NOR BU BZHI -KHYIL (norbu shi khyi)
+ * the quadruple body symbol, a form of the swastika
+ x (cjk unified ideograph-534D - 534D)
+@ Astrological sign
+0FCF TIBETAN SIGN RDEL NAG GSUM
+@@ 1000 Myanmar 109F
+@ Consonants
+1000 MYANMAR LETTER KA
+1001 MYANMAR LETTER KHA
+1002 MYANMAR LETTER GA
+1003 MYANMAR LETTER GHA
+1004 MYANMAR LETTER NGA
+1005 MYANMAR LETTER CA
+1006 MYANMAR LETTER CHA
+1007 MYANMAR LETTER JA
+1008 MYANMAR LETTER JHA
+1009 MYANMAR LETTER NYA
+100A MYANMAR LETTER NNYA
+100B MYANMAR LETTER TTA
+100C MYANMAR LETTER TTHA
+100D MYANMAR LETTER DDA
+100E MYANMAR LETTER DDHA
+100F MYANMAR LETTER NNA
+1010 MYANMAR LETTER TA
+1011 MYANMAR LETTER THA
+1012 MYANMAR LETTER DA
+1013 MYANMAR LETTER DHA
+1014 MYANMAR LETTER NA
+1015 MYANMAR LETTER PA
+1016 MYANMAR LETTER PHA
+1017 MYANMAR LETTER BA
+1018 MYANMAR LETTER BHA
+1019 MYANMAR LETTER MA
+101A MYANMAR LETTER YA
+101B MYANMAR LETTER RA
+101C MYANMAR LETTER LA
+101D MYANMAR LETTER WA
+101E MYANMAR LETTER SA
+101F MYANMAR LETTER HA
+1020 MYANMAR LETTER LLA
+@ Independent vowels
+1021 MYANMAR LETTER A
+1023 MYANMAR LETTER I
+1024 MYANMAR LETTER II
+1025 MYANMAR LETTER U
+1026 MYANMAR LETTER UU
+ : 1025 102E
+1027 MYANMAR LETTER E
+1029 MYANMAR LETTER O
+102A MYANMAR LETTER AU
+@ Dependent vowel signs
+102C MYANMAR VOWEL SIGN AA
+102D MYANMAR VOWEL SIGN I
+102E MYANMAR VOWEL SIGN II
+102F MYANMAR VOWEL SIGN U
+1030 MYANMAR VOWEL SIGN UU
+1031 MYANMAR VOWEL SIGN E
+ * stands to the left of the consonant
+1032 MYANMAR VOWEL SIGN AI
+@ Various signs
+1036 MYANMAR SIGN ANUSVARA
+1037 MYANMAR SIGN DOT BELOW
+ = aukmyit
+ * a tone mark
+1038 MYANMAR SIGN VISARGA
+1039 MYANMAR SIGN VIRAMA
+ = killer (when rendered visibly)
+@ Digits
+1040 MYANMAR DIGIT ZERO
+1041 MYANMAR DIGIT ONE
+1042 MYANMAR DIGIT TWO
+1043 MYANMAR DIGIT THREE
+1044 MYANMAR DIGIT FOUR
+1045 MYANMAR DIGIT FIVE
+1046 MYANMAR DIGIT SIX
+1047 MYANMAR DIGIT SEVEN
+1048 MYANMAR DIGIT EIGHT
+1049 MYANMAR DIGIT NINE
+@ Punctuation
+104A MYANMAR SIGN LITTLE SECTION
+ x (devanagari danda - 0964)
+104B MYANMAR SIGN SECTION
+ x (devanagari double danda - 0965)
+@ Various signs
+104C MYANMAR SYMBOL LOCATIVE
+104D MYANMAR SYMBOL COMPLETED
+104E MYANMAR SYMBOL AFOREMENTIONED
+104F MYANMAR SYMBOL GENITIVE
+@ Pali and Sanskrit extensions
+1050 MYANMAR LETTER SHA
+1051 MYANMAR LETTER SSA
+1052 MYANMAR LETTER VOCALIC R
+1053 MYANMAR LETTER VOCALIC RR
+1054 MYANMAR LETTER VOCALIC L
+1055 MYANMAR LETTER VOCALIC LL
+1056 MYANMAR VOWEL SIGN VOCALIC R
+1057 MYANMAR VOWEL SIGN VOCALIC RR
+1058 MYANMAR VOWEL SIGN VOCALIC L
+1059 MYANMAR VOWEL SIGN VOCALIC LL
@@ 10A0 Georgian 10FF
-@ Archaic uppercase alphabet (Khutsuri)
-10A0 GEORGIAN CAPITAL LETTER AN
-10A1 GEORGIAN CAPITAL LETTER BAN
-10A2 GEORGIAN CAPITAL LETTER GAN
-10A3 GEORGIAN CAPITAL LETTER DON
-10A4 GEORGIAN CAPITAL LETTER EN
-10A5 GEORGIAN CAPITAL LETTER VIN
-10A6 GEORGIAN CAPITAL LETTER ZEN
-10A7 GEORGIAN CAPITAL LETTER TAN
-10A8 GEORGIAN CAPITAL LETTER IN
-10A9 GEORGIAN CAPITAL LETTER KAN
-10AA GEORGIAN CAPITAL LETTER LAS
-10AB GEORGIAN CAPITAL LETTER MAN
-10AC GEORGIAN CAPITAL LETTER NAR
-10AD GEORGIAN CAPITAL LETTER ON
-10AE GEORGIAN CAPITAL LETTER PAR
-10AF GEORGIAN CAPITAL LETTER ZHAR
-10B0 GEORGIAN CAPITAL LETTER RAE
-10B1 GEORGIAN CAPITAL LETTER SAN
-10B2 GEORGIAN CAPITAL LETTER TAR
-10B3 GEORGIAN CAPITAL LETTER UN
-10B4 GEORGIAN CAPITAL LETTER PHAR
-10B5 GEORGIAN CAPITAL LETTER KHAR
-10B6 GEORGIAN CAPITAL LETTER GHAN
-10B7 GEORGIAN CAPITAL LETTER QAR
-10B8 GEORGIAN CAPITAL LETTER SHIN
-10B9 GEORGIAN CAPITAL LETTER CHIN
-10BA GEORGIAN CAPITAL LETTER CAN
-10BB GEORGIAN CAPITAL LETTER JIL
-10BC GEORGIAN CAPITAL LETTER CIL
-10BD GEORGIAN CAPITAL LETTER CHAR
-10BE GEORGIAN CAPITAL LETTER XAN
-10BF GEORGIAN CAPITAL LETTER JHAN
-10C0 GEORGIAN CAPITAL LETTER HAE
-10C1 GEORGIAN CAPITAL LETTER HE
-10C2 GEORGIAN CAPITAL LETTER HIE
-10C3 GEORGIAN CAPITAL LETTER WE
-10C4 GEORGIAN CAPITAL LETTER HAR
-10C5 GEORGIAN CAPITAL LETTER HOE
-10C6 <reserved>
-10C7 <reserved>
-10C8 <reserved>
-10C9 <reserved>
-10CA <reserved>
-10CB <reserved>
-10CC <reserved>
-10CD <reserved>
-10CE <reserved>
-10CF <reserved>
-@ Modern alphabet (Mkhedruli)
-@ = Archaic lowercase alphabet
+@ Khutsuri
+@+ This is the uppercase of the old ecclesiastical alphabet. The style shown in the code charts is known as Asomtavruli.
+10A0 GEORGIAN CAPITAL LETTER AN (Khutsuri)
+10A1 GEORGIAN CAPITAL LETTER BAN (Khutsuri)
+10A2 GEORGIAN CAPITAL LETTER GAN (Khutsuri)
+10A3 GEORGIAN CAPITAL LETTER DON (Khutsuri)
+10A4 GEORGIAN CAPITAL LETTER EN (Khutsuri)
+10A5 GEORGIAN CAPITAL LETTER VIN (Khutsuri)
+10A6 GEORGIAN CAPITAL LETTER ZEN (Khutsuri)
+10A7 GEORGIAN CAPITAL LETTER TAN (Khutsuri)
+10A8 GEORGIAN CAPITAL LETTER IN (Khutsuri)
+10A9 GEORGIAN CAPITAL LETTER KAN (Khutsuri)
+10AA GEORGIAN CAPITAL LETTER LAS (Khutsuri)
+10AB GEORGIAN CAPITAL LETTER MAN (Khutsuri)
+10AC GEORGIAN CAPITAL LETTER NAR (Khutsuri)
+10AD GEORGIAN CAPITAL LETTER ON (Khutsuri)
+10AE GEORGIAN CAPITAL LETTER PAR (Khutsuri)
+10AF GEORGIAN CAPITAL LETTER ZHAR (Khutsuri)
+10B0 GEORGIAN CAPITAL LETTER RAE (Khutsuri)
+10B1 GEORGIAN CAPITAL LETTER SAN (Khutsuri)
+10B2 GEORGIAN CAPITAL LETTER TAR (Khutsuri)
+10B3 GEORGIAN CAPITAL LETTER UN (Khutsuri)
+10B4 GEORGIAN CAPITAL LETTER PHAR (Khutsuri)
+10B5 GEORGIAN CAPITAL LETTER KHAR (Khutsuri)
+10B6 GEORGIAN CAPITAL LETTER GHAN (Khutsuri)
+10B7 GEORGIAN CAPITAL LETTER QAR (Khutsuri)
+10B8 GEORGIAN CAPITAL LETTER SHIN (Khutsuri)
+10B9 GEORGIAN CAPITAL LETTER CHIN (Khutsuri)
+10BA GEORGIAN CAPITAL LETTER CAN (Khutsuri)
+10BB GEORGIAN CAPITAL LETTER JIL (Khutsuri)
+10BC GEORGIAN CAPITAL LETTER CIL (Khutsuri)
+10BD GEORGIAN CAPITAL LETTER CHAR (Khutsuri)
+10BE GEORGIAN CAPITAL LETTER XAN (Khutsuri)
+10BF GEORGIAN CAPITAL LETTER JHAN (Khutsuri)
+10C0 GEORGIAN CAPITAL LETTER HAE (Khutsuri)
+10C1 GEORGIAN CAPITAL LETTER HE (Khutsuri)
+10C2 GEORGIAN CAPITAL LETTER HIE (Khutsuri)
+10C3 GEORGIAN CAPITAL LETTER WE (Khutsuri)
+10C4 GEORGIAN CAPITAL LETTER HAR (Khutsuri)
+10C5 GEORGIAN CAPITAL LETTER HOE (Khutsuri)
+@ Mkhedruli
+@+ This is the modern secular alphabet, which is caseless.
10D0 GEORGIAN LETTER AN
10D1 GEORGIAN LETTER BAN
10D2 GEORGIAN LETTER GAN
@@ -5081,1537 +5368,2915 @@
10F4 GEORGIAN LETTER HAR
10F5 GEORGIAN LETTER HOE
10F6 GEORGIAN LETTER FI
-10F7 <reserved>
-10F8 <reserved>
-10F9 <reserved>
-10FA <reserved>
@ Punctuation
10FB GEORGIAN PARAGRAPH SEPARATOR
@@ 1100 Hangul Jamo 11FF
@ Korean combining alphabet
@ Initial consonants
-1100 HANGUL CHOSEONG KIYEOK
-1101 HANGUL CHOSEONG SSANGKIYEOK
- # 1100 + 1100
-1102 HANGUL CHOSEONG NIEUN
-1103 HANGUL CHOSEONG TIKEUT
-1104 HANGUL CHOSEONG SSANGTIKEUT
- # 1103 + 1103
-1105 HANGUL CHOSEONG RIEUL
-1106 HANGUL CHOSEONG MIEUM
-1107 HANGUL CHOSEONG PIEUP
-1108 HANGUL CHOSEONG SSANGPIEUP
- # 1107 + 1107
-1109 HANGUL CHOSEONG SIOS
-110A HANGUL CHOSEONG SSANGSIOS
- # 1109 + 1109
+1100 HANGUL CHOSEONG KIYEOK (g) *
+1101 HANGUL CHOSEONG SSANGKIYEOK (gg) *
+1102 HANGUL CHOSEONG NIEUN (n) *
+1103 HANGUL CHOSEONG TIKEUT (d) *
+1104 HANGUL CHOSEONG SSANGTIKEUT (dd) *
+1105 HANGUL CHOSEONG RIEUL (r) *
+1106 HANGUL CHOSEONG MIEUM (m) *
+1107 HANGUL CHOSEONG PIEUP (b) *
+1108 HANGUL CHOSEONG SSANGPIEUP (bb) *
+1109 HANGUL CHOSEONG SIOS (s) *
+110A HANGUL CHOSEONG SSANGSIOS (ss) *
110B HANGUL CHOSEONG IEUNG
-110C HANGUL CHOSEONG CIEUC
-110D HANGUL CHOSEONG SSANGCIEUC
- # 110C + 110C
-110E HANGUL CHOSEONG CHIEUCH
-110F HANGUL CHOSEONG KHIEUKH
-1110 HANGUL CHOSEONG THIEUTH
-1111 HANGUL CHOSEONG PHIEUPH
-1112 HANGUL CHOSEONG HIEUH
+110C HANGUL CHOSEONG CIEUC (j) *
+110D HANGUL CHOSEONG SSANGCIEUC (jj) *
+110E HANGUL CHOSEONG CHIEUCH (c) *
+110F HANGUL CHOSEONG KHIEUKH (k) *
+1110 HANGUL CHOSEONG THIEUTH (t) *
+1111 HANGUL CHOSEONG PHIEUPH (p) *
+1112 HANGUL CHOSEONG HIEUH (h) *
1113 HANGUL CHOSEONG NIEUN-KIYEOK
- # 1102 + 1100
1114 HANGUL CHOSEONG SSANGNIEUN
- # 1102 + 1102
1115 HANGUL CHOSEONG NIEUN-TIKEUT
- # 1102 + 1103
1116 HANGUL CHOSEONG NIEUN-PIEUP
- # 1102 + 1107
1117 HANGUL CHOSEONG TIKEUT-KIYEOK
- # 1103 + 1100
1118 HANGUL CHOSEONG RIEUL-NIEUN
- # 1105 + 1102
1119 HANGUL CHOSEONG SSANGRIEUL
- # 1105 + 1105
111A HANGUL CHOSEONG RIEUL-HIEUH
- # 1105 + 1112
111B HANGUL CHOSEONG KAPYEOUNRIEUL
- # 1105 + 110B
111C HANGUL CHOSEONG MIEUM-PIEUP
- # 1106 + 1107
111D HANGUL CHOSEONG KAPYEOUNMIEUM
- # 1106 + 110B
111E HANGUL CHOSEONG PIEUP-KIYEOK
- # 1107 + 1100
111F HANGUL CHOSEONG PIEUP-NIEUN
- # 1107 + 1102
1120 HANGUL CHOSEONG PIEUP-TIKEUT
- # 1107 + 1103
1121 HANGUL CHOSEONG PIEUP-SIOS
- # 1107 + 1109
1122 HANGUL CHOSEONG PIEUP-SIOS-KIYEOK
- # 1107 + 1109 + 1100
1123 HANGUL CHOSEONG PIEUP-SIOS-TIKEUT
- # 1107 + 1109 + 1103
1124 HANGUL CHOSEONG PIEUP-SIOS-PIEUP
- # 1107 + 1109 + 1107
1125 HANGUL CHOSEONG PIEUP-SSANGSIOS
- # 1107 + 1109 + 1109
1126 HANGUL CHOSEONG PIEUP-SIOS-CIEUC
- # 1107 + 1109 + 110C
1127 HANGUL CHOSEONG PIEUP-CIEUC
- # 1107 + 110C
1128 HANGUL CHOSEONG PIEUP-CHIEUCH
- # 1107 + 110E
1129 HANGUL CHOSEONG PIEUP-THIEUTH
- # 1107 + 1110
112A HANGUL CHOSEONG PIEUP-PHIEUPH
- # 1107 + 1111
112B HANGUL CHOSEONG KAPYEOUNPIEUP
- # 1107 + 110B
112C HANGUL CHOSEONG KAPYEOUNSSANGPIEUP
- # 1107 + 1107 + 110B
112D HANGUL CHOSEONG SIOS-KIYEOK
- # 1109 + 1100
112E HANGUL CHOSEONG SIOS-NIEUN
- # 1109 + 1102
112F HANGUL CHOSEONG SIOS-TIKEUT
- # 1109 + 1103
1130 HANGUL CHOSEONG SIOS-RIEUL
- # 1109 + 1105
1131 HANGUL CHOSEONG SIOS-MIEUM
- # 1109 + 1106
1132 HANGUL CHOSEONG SIOS-PIEUP
- # 1109 + 1107
1133 HANGUL CHOSEONG SIOS-PIEUP-KIYEOK
- # 1109 + 1107 + 1100
1134 HANGUL CHOSEONG SIOS-SSANGSIOS
- # 1109 + 1109 + 1109
1135 HANGUL CHOSEONG SIOS-IEUNG
- # 1109 + 110B
1136 HANGUL CHOSEONG SIOS-CIEUC
- # 1109 + 110C
1137 HANGUL CHOSEONG SIOS-CHIEUCH
- # 1109 + 110E
1138 HANGUL CHOSEONG SIOS-KHIEUKH
- # 1109 + 110F
1139 HANGUL CHOSEONG SIOS-THIEUTH
- # 1109 + 1110
113A HANGUL CHOSEONG SIOS-PHIEUPH
- # 1109 + 1111
113B HANGUL CHOSEONG SIOS-HIEUH
- # 1109 + 1112
113C HANGUL CHOSEONG CHITUEUMSIOS
113D HANGUL CHOSEONG CHITUEUMSSANGSIOS
- # 113C + 113C
113E HANGUL CHOSEONG CEONGCHIEUMSIOS
113F HANGUL CHOSEONG CEONGCHIEUMSSANGSIOS
- # 113E + 113E
1140 HANGUL CHOSEONG PANSIOS
1141 HANGUL CHOSEONG IEUNG-KIYEOK
- # 110B + 1100
1142 HANGUL CHOSEONG IEUNG-TIKEUT
- # 110B + 1103
1143 HANGUL CHOSEONG IEUNG-MIEUM
- # 110B + 1106
1144 HANGUL CHOSEONG IEUNG-PIEUP
- # 110B + 1107
1145 HANGUL CHOSEONG IEUNG-SIOS
- # 110B + 1109
1146 HANGUL CHOSEONG IEUNG-PANSIOS
- # 110B + 1140
1147 HANGUL CHOSEONG SSANGIEUNG
- # 110B + 110B
1148 HANGUL CHOSEONG IEUNG-CIEUC
- # 110B + 110C
1149 HANGUL CHOSEONG IEUNG-CHIEUCH
- # 110B + 110E
114A HANGUL CHOSEONG IEUNG-THIEUTH
- # 110B + 1110
114B HANGUL CHOSEONG IEUNG-PHIEUPH
- # 110B + 1111
114C HANGUL CHOSEONG YESIEUNG
114D HANGUL CHOSEONG CIEUC-IEUNG
- # 110C + 110B
114E HANGUL CHOSEONG CHITUEUMCIEUC
114F HANGUL CHOSEONG CHITUEUMSSANGCIEUC
- # 114E + 114E
1150 HANGUL CHOSEONG CEONGCHIEUMCIEUC
1151 HANGUL CHOSEONG CEONGCHIEUMSSANGCIEUC
- # 1150 + 1150
1152 HANGUL CHOSEONG CHIEUCH-KHIEUKH
- # 110E + 110F
1153 HANGUL CHOSEONG CHIEUCH-HIEUH
- # 110E + 1112
1154 HANGUL CHOSEONG CHITUEUMCHIEUCH
1155 HANGUL CHOSEONG CEONGCHIEUMCHIEUCH
1156 HANGUL CHOSEONG PHIEUPH-PIEUP
- # 1111 + 1107
1157 HANGUL CHOSEONG KAPYEOUNPHIEUPH
- # 1111 + 110B
1158 HANGUL CHOSEONG SSANGHIEUH
- # 1112 + 1112
1159 HANGUL CHOSEONG YEORINHIEUH
-115A <reserved>
-115B <reserved>
-115C <reserved>
-115D <reserved>
-115E <reserved>
115F HANGUL CHOSEONG FILLER
@ Medial vowels
1160 HANGUL JUNGSEONG FILLER
1161 HANGUL JUNGSEONG A
1162 HANGUL JUNGSEONG AE
- # 1161 + 1175
1163 HANGUL JUNGSEONG YA
1164 HANGUL JUNGSEONG YAE
- # 1163 + 1175
1165 HANGUL JUNGSEONG EO
1166 HANGUL JUNGSEONG E
- # 1165 + 1175
1167 HANGUL JUNGSEONG YEO
1168 HANGUL JUNGSEONG YE
- # 1167 + 1175
1169 HANGUL JUNGSEONG O
116A HANGUL JUNGSEONG WA
- # 1169 + 1161
116B HANGUL JUNGSEONG WAE
- # 1169 + 1161 + 1175
116C HANGUL JUNGSEONG OE
- # 1169 + 1175
116D HANGUL JUNGSEONG YO
116E HANGUL JUNGSEONG U
116F HANGUL JUNGSEONG WEO
- # 116E + 1165
1170 HANGUL JUNGSEONG WE
- # 116E + 1165 + 1175
1171 HANGUL JUNGSEONG WI
- # 116E + 1175
1172 HANGUL JUNGSEONG YU
1173 HANGUL JUNGSEONG EU
1174 HANGUL JUNGSEONG YI
- # 1173 + 1175
1175 HANGUL JUNGSEONG I
1176 HANGUL JUNGSEONG A-O
- # 1161 + 1169
1177 HANGUL JUNGSEONG A-U
- # 1161 + 116E
1178 HANGUL JUNGSEONG YA-O
- # 1163 + 1169
1179 HANGUL JUNGSEONG YA-YO
- # 1163 + 116D
117A HANGUL JUNGSEONG EO-O
- # 1165 + 1169
117B HANGUL JUNGSEONG EO-U
- # 1165 + 116E
117C HANGUL JUNGSEONG EO-EU
- # 1165 + 1173
117D HANGUL JUNGSEONG YEO-O
- # 1167 + 1169
117E HANGUL JUNGSEONG YEO-U
- # 1167 + 116E
117F HANGUL JUNGSEONG O-EO
- # 1169 + 1165
1180 HANGUL JUNGSEONG O-E
- # 1169 + 1166
1181 HANGUL JUNGSEONG O-YE
- # 1169 + 1168
1182 HANGUL JUNGSEONG O-O
- # 1169 + 1169
1183 HANGUL JUNGSEONG O-U
- # 1169 + 116E
1184 HANGUL JUNGSEONG YO-YA
- # 116D + 1163
1185 HANGUL JUNGSEONG YO-YAE
- # 116D + 1164
1186 HANGUL JUNGSEONG YO-YEO
- # 116D + 1167
1187 HANGUL JUNGSEONG YO-O
- # 116D + 1169
1188 HANGUL JUNGSEONG YO-I
- # 116D + 1175
1189 HANGUL JUNGSEONG U-A
- # 116E + 1161
118A HANGUL JUNGSEONG U-AE
- # 116E + 1162
118B HANGUL JUNGSEONG U-EO-EU
- # 116E + 1165 + 1173
118C HANGUL JUNGSEONG U-YE
- # 116E + 1168
118D HANGUL JUNGSEONG U-U
- # 116E + 116E
118E HANGUL JUNGSEONG YU-A
- # 1172 + 1161
118F HANGUL JUNGSEONG YU-EO
- # 1172 + 1165
1190 HANGUL JUNGSEONG YU-E
- # 1172 + 1166
1191 HANGUL JUNGSEONG YU-YEO
- # 1172 + 1167
1192 HANGUL JUNGSEONG YU-YE
- # 1172 + 1168
1193 HANGUL JUNGSEONG YU-U
- # 1172 + 116E
1194 HANGUL JUNGSEONG YU-I
- # 1172 + 1175
1195 HANGUL JUNGSEONG EU-U
- # 1173 + 116E
1196 HANGUL JUNGSEONG EU-EU
- # 1173 + 1173
1197 HANGUL JUNGSEONG YI-U
- # 1174 + 116E
1198 HANGUL JUNGSEONG I-A
- # 1175 + 1161
1199 HANGUL JUNGSEONG I-YA
- # 1175 + 1163
119A HANGUL JUNGSEONG I-O
- # 1175 + 1169
119B HANGUL JUNGSEONG I-U
- # 1175 + 116E
119C HANGUL JUNGSEONG I-EU
- # 1175 + 1173
119D HANGUL JUNGSEONG I-ARAEA
- # 1175 + 119E
119E HANGUL JUNGSEONG ARAEA
119F HANGUL JUNGSEONG ARAEA-EO
- # 119E + 1165
11A0 HANGUL JUNGSEONG ARAEA-U
- # 119E + 116E
11A1 HANGUL JUNGSEONG ARAEA-I
- # 119E + 1175
11A2 HANGUL JUNGSEONG SSANGARAEA
- # 119E + 119E
-11A3 <reserved>
-11A4 <reserved>
-11A5 <reserved>
-11A6 <reserved>
-11A7 <reserved>
@ Final consonants
-11A8 HANGUL JONGSEONG KIYEOK
-11A9 HANGUL JONGSEONG SSANGKIYEOK
- # 11A8 + 11A8
-11AA HANGUL JONGSEONG KIYEOK-SIOS
- # 11A8 + 11BA
-11AB HANGUL JONGSEONG NIEUN
-11AC HANGUL JONGSEONG NIEUN-CIEUC
- # 11AB + 11BD
-11AD HANGUL JONGSEONG NIEUN-HIEUH
- # 11AB + 11C2
-11AE HANGUL JONGSEONG TIKEUT
-11AF HANGUL JONGSEONG RIEUL
-11B0 HANGUL JONGSEONG RIEUL-KIYEOK
- # 11AF + 11A8
-11B1 HANGUL JONGSEONG RIEUL-MIEUM
- # 11AF + 11B7
-11B2 HANGUL JONGSEONG RIEUL-PIEUP
- # 11AF + 11B8
-11B3 HANGUL JONGSEONG RIEUL-SIOS
- # 11AF + 11BA
-11B4 HANGUL JONGSEONG RIEUL-THIEUTH
- # 11AF + 11C0
-11B5 HANGUL JONGSEONG RIEUL-PHIEUPH
- # 11AF + 11C1
-11B6 HANGUL JONGSEONG RIEUL-HIEUH
- # 11AF + 11C2
-11B7 HANGUL JONGSEONG MIEUM
-11B8 HANGUL JONGSEONG PIEUP
-11B9 HANGUL JONGSEONG PIEUP-SIOS
- # 11B8 + 11BA
-11BA HANGUL JONGSEONG SIOS
-11BB HANGUL JONGSEONG SSANGSIOS
- # 11BA + 11BA
-11BC HANGUL JONGSEONG IEUNG
-11BD HANGUL JONGSEONG CIEUC
-11BE HANGUL JONGSEONG CHIEUCH
-11BF HANGUL JONGSEONG KHIEUKH
-11C0 HANGUL JONGSEONG THIEUTH
-11C1 HANGUL JONGSEONG PHIEUPH
-11C2 HANGUL JONGSEONG HIEUH
+11A8 HANGUL JONGSEONG KIYEOK (g) *
+11A9 HANGUL JONGSEONG SSANGKIYEOK (gg) *
+11AA HANGUL JONGSEONG KIYEOK-SIOS (gs) *
+11AB HANGUL JONGSEONG NIEUN (n) *
+11AC HANGUL JONGSEONG NIEUN-CIEUC (nj) *
+11AD HANGUL JONGSEONG NIEUN-HIEUH (nh) *
+11AE HANGUL JONGSEONG TIKEUT (d) *
+11AF HANGUL JONGSEONG RIEUL (l) *
+11B0 HANGUL JONGSEONG RIEUL-KIYEOK (lg) *
+11B1 HANGUL JONGSEONG RIEUL-MIEUM (lm) *
+11B2 HANGUL JONGSEONG RIEUL-PIEUP (lb) *
+11B3 HANGUL JONGSEONG RIEUL-SIOS (ls) *
+11B4 HANGUL JONGSEONG RIEUL-THIEUTH (lt) *
+11B5 HANGUL JONGSEONG RIEUL-PHIEUPH (lp) *
+11B6 HANGUL JONGSEONG RIEUL-HIEUH (lh) *
+11B7 HANGUL JONGSEONG MIEUM (m) *
+11B8 HANGUL JONGSEONG PIEUP (b) *
+11B9 HANGUL JONGSEONG PIEUP-SIOS (bs) *
+11BA HANGUL JONGSEONG SIOS (s) *
+11BB HANGUL JONGSEONG SSANGSIOS (ss) *
+11BC HANGUL JONGSEONG IEUNG (ng) *
+11BD HANGUL JONGSEONG CIEUC (j) *
+11BE HANGUL JONGSEONG CHIEUCH (c) *
+11BF HANGUL JONGSEONG KHIEUKH (k) *
+11C0 HANGUL JONGSEONG THIEUTH (t) *
+11C1 HANGUL JONGSEONG PHIEUPH (p) *
+11C2 HANGUL JONGSEONG HIEUH (h) *
11C3 HANGUL JONGSEONG KIYEOK-RIEUL
- # 11A8 + 11AF
11C4 HANGUL JONGSEONG KIYEOK-SIOS-KIYEOK
- # 11A8 + 11BA + 11A8
11C5 HANGUL JONGSEONG NIEUN-KIYEOK
- # 11AB + 11A8
11C6 HANGUL JONGSEONG NIEUN-TIKEUT
- # 11AB + 11AE
11C7 HANGUL JONGSEONG NIEUN-SIOS
- # 11AB + 11BA
11C8 HANGUL JONGSEONG NIEUN-PANSIOS
- # 11AB + 11EB
11C9 HANGUL JONGSEONG NIEUN-THIEUTH
- # 11AB + 11C0
11CA HANGUL JONGSEONG TIKEUT-KIYEOK
- # 11AE + 11A8
11CB HANGUL JONGSEONG TIKEUT-RIEUL
- # 11AE + 11AF
11CC HANGUL JONGSEONG RIEUL-KIYEOK-SIOS
- # 11AF + 11A8 + 11BA
11CD HANGUL JONGSEONG RIEUL-NIEUN
- # 11AF + 11AB
11CE HANGUL JONGSEONG RIEUL-TIKEUT
- # 11AF + 11AE
11CF HANGUL JONGSEONG RIEUL-TIKEUT-HIEUH
- # 11AF + 11AE + 11C2
11D0 HANGUL JONGSEONG SSANGRIEUL
- # 11AF + 11AF
11D1 HANGUL JONGSEONG RIEUL-MIEUM-KIYEOK
- # 11AF + 11B7 + 11A8
11D2 HANGUL JONGSEONG RIEUL-MIEUM-SIOS
- # 11AF + 11B7 + 11BA
11D3 HANGUL JONGSEONG RIEUL-PIEUP-SIOS
- # 11AF + 11B8 + 11BA
11D4 HANGUL JONGSEONG RIEUL-PIEUP-HIEUH
- # 11AF + 11B8 + 11C2
11D5 HANGUL JONGSEONG RIEUL-KAPYEOUNPIEUP
- # 11AF + 11B8 + 11BC
11D6 HANGUL JONGSEONG RIEUL-SSANGSIOS
- # 11AF + 11BA + 11BA
11D7 HANGUL JONGSEONG RIEUL-PANSIOS
- # 11AF + 11EB
11D8 HANGUL JONGSEONG RIEUL-KHIEUKH
- # 11AF + 11BF
11D9 HANGUL JONGSEONG RIEUL-YEORINHIEUH
- # 11AF + 11F9
11DA HANGUL JONGSEONG MIEUM-KIYEOK
- # 11B7 + 11A8
11DB HANGUL JONGSEONG MIEUM-RIEUL
- # 11B7 + 11AF
11DC HANGUL JONGSEONG MIEUM-PIEUP
- # 11B7 + 11B8
11DD HANGUL JONGSEONG MIEUM-SIOS
- # 11B7 + 11BA
11DE HANGUL JONGSEONG MIEUM-SSANGSIOS
- # 11B7 + 11BA + 11BA
11DF HANGUL JONGSEONG MIEUM-PANSIOS
- # 11B7 + 11EB
11E0 HANGUL JONGSEONG MIEUM-CHIEUCH
- # 11B7 + 11BE
11E1 HANGUL JONGSEONG MIEUM-HIEUH
- # 11B7 + 11C2
11E2 HANGUL JONGSEONG KAPYEOUNMIEUM
- # 11B7 + 11BC
11E3 HANGUL JONGSEONG PIEUP-RIEUL
- # 11B8 + 11AF
11E4 HANGUL JONGSEONG PIEUP-PHIEUPH
- # 11B8 + 11C1
11E5 HANGUL JONGSEONG PIEUP-HIEUH
- # 11B8 + 11C2
11E6 HANGUL JONGSEONG KAPYEOUNPIEUP
- # 11B8 + 11BC
11E7 HANGUL JONGSEONG SIOS-KIYEOK
- # 11BA + 11A8
11E8 HANGUL JONGSEONG SIOS-TIKEUT
- # 11BA + 11AE
11E9 HANGUL JONGSEONG SIOS-RIEUL
- # 11BA + 11AF
11EA HANGUL JONGSEONG SIOS-PIEUP
- # 11BA + 11B8
11EB HANGUL JONGSEONG PANSIOS
11EC HANGUL JONGSEONG IEUNG-KIYEOK
- # 11BC + 11A8
11ED HANGUL JONGSEONG IEUNG-SSANGKIYEOK
- # 11BC + 11A8 + 11A8
11EE HANGUL JONGSEONG SSANGIEUNG
- # 11BC + 11BC
11EF HANGUL JONGSEONG IEUNG-KHIEUKH
- # 11BC + 11BF
11F0 HANGUL JONGSEONG YESIEUNG
11F1 HANGUL JONGSEONG YESIEUNG-SIOS
- # 11F0 + 11BA
11F2 HANGUL JONGSEONG YESIEUNG-PANSIOS
- # 11F0 + 11EB
11F3 HANGUL JONGSEONG PHIEUPH-PIEUP
- # 11C1 + 11B8
11F4 HANGUL JONGSEONG KAPYEOUNPHIEUPH
- # 11C1 + 11BC
11F5 HANGUL JONGSEONG HIEUH-NIEUN
- # 11C2 + 11AB
11F6 HANGUL JONGSEONG HIEUH-RIEUL
- # 11C2 + 11AF
11F7 HANGUL JONGSEONG HIEUH-MIEUM
- # 11C2 + 11B7
11F8 HANGUL JONGSEONG HIEUH-PIEUP
- # 11C2 + 11B8
11F9 HANGUL JONGSEONG YEORINHIEUH
-@@ 1200 Unassigned 1DFF
+@@ 1200 Ethiopic 137F
+@ Syllables
+1200 ETHIOPIC SYLLABLE HA
+1201 ETHIOPIC SYLLABLE HU
+1202 ETHIOPIC SYLLABLE HI
+1203 ETHIOPIC SYLLABLE HAA
+1204 ETHIOPIC SYLLABLE HEE
+1205 ETHIOPIC SYLLABLE HE
+1206 ETHIOPIC SYLLABLE HO
+1208 ETHIOPIC SYLLABLE LA
+1209 ETHIOPIC SYLLABLE LU
+120A ETHIOPIC SYLLABLE LI
+120B ETHIOPIC SYLLABLE LAA
+120C ETHIOPIC SYLLABLE LEE
+120D ETHIOPIC SYLLABLE LE
+120E ETHIOPIC SYLLABLE LO
+120F ETHIOPIC SYLLABLE LWA
+1210 ETHIOPIC SYLLABLE HHA
+1211 ETHIOPIC SYLLABLE HHU
+1212 ETHIOPIC SYLLABLE HHI
+1213 ETHIOPIC SYLLABLE HHAA
+1214 ETHIOPIC SYLLABLE HHEE
+1215 ETHIOPIC SYLLABLE HHE
+1216 ETHIOPIC SYLLABLE HHO
+1217 ETHIOPIC SYLLABLE HHWA
+1218 ETHIOPIC SYLLABLE MA
+1219 ETHIOPIC SYLLABLE MU
+121A ETHIOPIC SYLLABLE MI
+121B ETHIOPIC SYLLABLE MAA
+121C ETHIOPIC SYLLABLE MEE
+121D ETHIOPIC SYLLABLE ME
+121E ETHIOPIC SYLLABLE MO
+121F ETHIOPIC SYLLABLE MWA
+1220 ETHIOPIC SYLLABLE SZA
+1221 ETHIOPIC SYLLABLE SZU
+1222 ETHIOPIC SYLLABLE SZI
+1223 ETHIOPIC SYLLABLE SZAA
+1224 ETHIOPIC SYLLABLE SZEE
+1225 ETHIOPIC SYLLABLE SZE
+1226 ETHIOPIC SYLLABLE SZO
+1227 ETHIOPIC SYLLABLE SZWA
+1228 ETHIOPIC SYLLABLE RA
+1229 ETHIOPIC SYLLABLE RU
+122A ETHIOPIC SYLLABLE RI
+122B ETHIOPIC SYLLABLE RAA
+122C ETHIOPIC SYLLABLE REE
+122D ETHIOPIC SYLLABLE RE
+122E ETHIOPIC SYLLABLE RO
+122F ETHIOPIC SYLLABLE RWA
+1230 ETHIOPIC SYLLABLE SA
+1231 ETHIOPIC SYLLABLE SU
+1232 ETHIOPIC SYLLABLE SI
+1233 ETHIOPIC SYLLABLE SAA
+1234 ETHIOPIC SYLLABLE SEE
+1235 ETHIOPIC SYLLABLE SE
+1236 ETHIOPIC SYLLABLE SO
+1237 ETHIOPIC SYLLABLE SWA
+1238 ETHIOPIC SYLLABLE SHA
+1239 ETHIOPIC SYLLABLE SHU
+123A ETHIOPIC SYLLABLE SHI
+123B ETHIOPIC SYLLABLE SHAA
+123C ETHIOPIC SYLLABLE SHEE
+123D ETHIOPIC SYLLABLE SHE
+123E ETHIOPIC SYLLABLE SHO
+123F ETHIOPIC SYLLABLE SHWA
+1240 ETHIOPIC SYLLABLE QA
+1241 ETHIOPIC SYLLABLE QU
+1242 ETHIOPIC SYLLABLE QI
+1243 ETHIOPIC SYLLABLE QAA
+1244 ETHIOPIC SYLLABLE QEE
+1245 ETHIOPIC SYLLABLE QE
+1246 ETHIOPIC SYLLABLE QO
+1248 ETHIOPIC SYLLABLE QWA
+124A ETHIOPIC SYLLABLE QWI
+124B ETHIOPIC SYLLABLE QWAA
+124C ETHIOPIC SYLLABLE QWEE
+124D ETHIOPIC SYLLABLE QWE
+1250 ETHIOPIC SYLLABLE QHA
+1251 ETHIOPIC SYLLABLE QHU
+1252 ETHIOPIC SYLLABLE QHI
+1253 ETHIOPIC SYLLABLE QHAA
+1254 ETHIOPIC SYLLABLE QHEE
+1255 ETHIOPIC SYLLABLE QHE
+1256 ETHIOPIC SYLLABLE QHO
+1258 ETHIOPIC SYLLABLE QHWA
+125A ETHIOPIC SYLLABLE QHWI
+125B ETHIOPIC SYLLABLE QHWAA
+125C ETHIOPIC SYLLABLE QHWEE
+125D ETHIOPIC SYLLABLE QHWE
+1260 ETHIOPIC SYLLABLE BA
+1261 ETHIOPIC SYLLABLE BU
+1262 ETHIOPIC SYLLABLE BI
+1263 ETHIOPIC SYLLABLE BAA
+1264 ETHIOPIC SYLLABLE BEE
+1265 ETHIOPIC SYLLABLE BE
+1266 ETHIOPIC SYLLABLE BO
+1267 ETHIOPIC SYLLABLE BWA
+1268 ETHIOPIC SYLLABLE VA
+1269 ETHIOPIC SYLLABLE VU
+126A ETHIOPIC SYLLABLE VI
+126B ETHIOPIC SYLLABLE VAA
+126C ETHIOPIC SYLLABLE VEE
+126D ETHIOPIC SYLLABLE VE
+126E ETHIOPIC SYLLABLE VO
+126F ETHIOPIC SYLLABLE VWA
+1270 ETHIOPIC SYLLABLE TA
+1271 ETHIOPIC SYLLABLE TU
+1272 ETHIOPIC SYLLABLE TI
+1273 ETHIOPIC SYLLABLE TAA
+1274 ETHIOPIC SYLLABLE TEE
+1275 ETHIOPIC SYLLABLE TE
+1276 ETHIOPIC SYLLABLE TO
+1277 ETHIOPIC SYLLABLE TWA
+1278 ETHIOPIC SYLLABLE CA
+1279 ETHIOPIC SYLLABLE CU
+127A ETHIOPIC SYLLABLE CI
+127B ETHIOPIC SYLLABLE CAA
+127C ETHIOPIC SYLLABLE CEE
+127D ETHIOPIC SYLLABLE CE
+127E ETHIOPIC SYLLABLE CO
+127F ETHIOPIC SYLLABLE CWA
+1280 ETHIOPIC SYLLABLE XA
+1281 ETHIOPIC SYLLABLE XU
+1282 ETHIOPIC SYLLABLE XI
+1283 ETHIOPIC SYLLABLE XAA
+1284 ETHIOPIC SYLLABLE XEE
+1285 ETHIOPIC SYLLABLE XE
+1286 ETHIOPIC SYLLABLE XO
+1288 ETHIOPIC SYLLABLE XWA
+128A ETHIOPIC SYLLABLE XWI
+128B ETHIOPIC SYLLABLE XWAA
+128C ETHIOPIC SYLLABLE XWEE
+128D ETHIOPIC SYLLABLE XWE
+1290 ETHIOPIC SYLLABLE NA
+1291 ETHIOPIC SYLLABLE NU
+1292 ETHIOPIC SYLLABLE NI
+1293 ETHIOPIC SYLLABLE NAA
+1294 ETHIOPIC SYLLABLE NEE
+1295 ETHIOPIC SYLLABLE NE
+1296 ETHIOPIC SYLLABLE NO
+1297 ETHIOPIC SYLLABLE NWA
+1298 ETHIOPIC SYLLABLE NYA
+1299 ETHIOPIC SYLLABLE NYU
+129A ETHIOPIC SYLLABLE NYI
+129B ETHIOPIC SYLLABLE NYAA
+129C ETHIOPIC SYLLABLE NYEE
+129D ETHIOPIC SYLLABLE NYE
+129E ETHIOPIC SYLLABLE NYO
+129F ETHIOPIC SYLLABLE NYWA
+12A0 ETHIOPIC SYLLABLE GLOTTAL A
+12A1 ETHIOPIC SYLLABLE GLOTTAL U
+12A2 ETHIOPIC SYLLABLE GLOTTAL I
+12A3 ETHIOPIC SYLLABLE GLOTTAL AA
+12A4 ETHIOPIC SYLLABLE GLOTTAL EE
+12A5 ETHIOPIC SYLLABLE GLOTTAL E
+12A6 ETHIOPIC SYLLABLE GLOTTAL O
+12A7 ETHIOPIC SYLLABLE GLOTTAL WA
+12A8 ETHIOPIC SYLLABLE KA
+12A9 ETHIOPIC SYLLABLE KU
+12AA ETHIOPIC SYLLABLE KI
+12AB ETHIOPIC SYLLABLE KAA
+12AC ETHIOPIC SYLLABLE KEE
+12AD ETHIOPIC SYLLABLE KE
+12AE ETHIOPIC SYLLABLE KO
+12B0 ETHIOPIC SYLLABLE KWA
+12B2 ETHIOPIC SYLLABLE KWI
+12B3 ETHIOPIC SYLLABLE KWAA
+12B4 ETHIOPIC SYLLABLE KWEE
+12B5 ETHIOPIC SYLLABLE KWE
+12B8 ETHIOPIC SYLLABLE KXA
+12B9 ETHIOPIC SYLLABLE KXU
+12BA ETHIOPIC SYLLABLE KXI
+12BB ETHIOPIC SYLLABLE KXAA
+12BC ETHIOPIC SYLLABLE KXEE
+12BD ETHIOPIC SYLLABLE KXE
+12BE ETHIOPIC SYLLABLE KXO
+12C0 ETHIOPIC SYLLABLE KXWA
+12C2 ETHIOPIC SYLLABLE KXWI
+12C3 ETHIOPIC SYLLABLE KXWAA
+12C4 ETHIOPIC SYLLABLE KXWEE
+12C5 ETHIOPIC SYLLABLE KXWE
+12C8 ETHIOPIC SYLLABLE WA
+12C9 ETHIOPIC SYLLABLE WU
+12CA ETHIOPIC SYLLABLE WI
+12CB ETHIOPIC SYLLABLE WAA
+12CC ETHIOPIC SYLLABLE WEE
+12CD ETHIOPIC SYLLABLE WE
+12CE ETHIOPIC SYLLABLE WO
+12D0 ETHIOPIC SYLLABLE PHARYNGEAL A
+12D1 ETHIOPIC SYLLABLE PHARYNGEAL U
+12D2 ETHIOPIC SYLLABLE PHARYNGEAL I
+12D3 ETHIOPIC SYLLABLE PHARYNGEAL AA
+12D4 ETHIOPIC SYLLABLE PHARYNGEAL EE
+12D5 ETHIOPIC SYLLABLE PHARYNGEAL E
+12D6 ETHIOPIC SYLLABLE PHARYNGEAL O
+12D8 ETHIOPIC SYLLABLE ZA
+12D9 ETHIOPIC SYLLABLE ZU
+12DA ETHIOPIC SYLLABLE ZI
+12DB ETHIOPIC SYLLABLE ZAA
+12DC ETHIOPIC SYLLABLE ZEE
+12DD ETHIOPIC SYLLABLE ZE
+12DE ETHIOPIC SYLLABLE ZO
+12DF ETHIOPIC SYLLABLE ZWA
+12E0 ETHIOPIC SYLLABLE ZHA
+12E1 ETHIOPIC SYLLABLE ZHU
+12E2 ETHIOPIC SYLLABLE ZHI
+12E3 ETHIOPIC SYLLABLE ZHAA
+12E4 ETHIOPIC SYLLABLE ZHEE
+12E5 ETHIOPIC SYLLABLE ZHE
+12E6 ETHIOPIC SYLLABLE ZHO
+12E7 ETHIOPIC SYLLABLE ZHWA
+12E8 ETHIOPIC SYLLABLE YA
+12E9 ETHIOPIC SYLLABLE YU
+12EA ETHIOPIC SYLLABLE YI
+12EB ETHIOPIC SYLLABLE YAA
+12EC ETHIOPIC SYLLABLE YEE
+12ED ETHIOPIC SYLLABLE YE
+12EE ETHIOPIC SYLLABLE YO
+12F0 ETHIOPIC SYLLABLE DA
+12F1 ETHIOPIC SYLLABLE DU
+12F2 ETHIOPIC SYLLABLE DI
+12F3 ETHIOPIC SYLLABLE DAA
+12F4 ETHIOPIC SYLLABLE DEE
+12F5 ETHIOPIC SYLLABLE DE
+12F6 ETHIOPIC SYLLABLE DO
+12F7 ETHIOPIC SYLLABLE DWA
+12F8 ETHIOPIC SYLLABLE DDA
+12F9 ETHIOPIC SYLLABLE DDU
+12FA ETHIOPIC SYLLABLE DDI
+12FB ETHIOPIC SYLLABLE DDAA
+12FC ETHIOPIC SYLLABLE DDEE
+12FD ETHIOPIC SYLLABLE DDE
+12FE ETHIOPIC SYLLABLE DDO
+12FF ETHIOPIC SYLLABLE DDWA
+1300 ETHIOPIC SYLLABLE JA
+1301 ETHIOPIC SYLLABLE JU
+1302 ETHIOPIC SYLLABLE JI
+1303 ETHIOPIC SYLLABLE JAA
+1304 ETHIOPIC SYLLABLE JEE
+1305 ETHIOPIC SYLLABLE JE
+1306 ETHIOPIC SYLLABLE JO
+1307 ETHIOPIC SYLLABLE JWA
+1308 ETHIOPIC SYLLABLE GA
+1309 ETHIOPIC SYLLABLE GU
+130A ETHIOPIC SYLLABLE GI
+130B ETHIOPIC SYLLABLE GAA
+130C ETHIOPIC SYLLABLE GEE
+130D ETHIOPIC SYLLABLE GE
+130E ETHIOPIC SYLLABLE GO
+1310 ETHIOPIC SYLLABLE GWA
+1312 ETHIOPIC SYLLABLE GWI
+1313 ETHIOPIC SYLLABLE GWAA
+1314 ETHIOPIC SYLLABLE GWEE
+1315 ETHIOPIC SYLLABLE GWE
+1318 ETHIOPIC SYLLABLE GGA
+1319 ETHIOPIC SYLLABLE GGU
+131A ETHIOPIC SYLLABLE GGI
+131B ETHIOPIC SYLLABLE GGAA
+131C ETHIOPIC SYLLABLE GGEE
+131D ETHIOPIC SYLLABLE GGE
+131E ETHIOPIC SYLLABLE GGO
+1320 ETHIOPIC SYLLABLE THA
+1321 ETHIOPIC SYLLABLE THU
+1322 ETHIOPIC SYLLABLE THI
+1323 ETHIOPIC SYLLABLE THAA
+1324 ETHIOPIC SYLLABLE THEE
+1325 ETHIOPIC SYLLABLE THE
+1326 ETHIOPIC SYLLABLE THO
+1327 ETHIOPIC SYLLABLE THWA
+1328 ETHIOPIC SYLLABLE CHA
+1329 ETHIOPIC SYLLABLE CHU
+132A ETHIOPIC SYLLABLE CHI
+132B ETHIOPIC SYLLABLE CHAA
+132C ETHIOPIC SYLLABLE CHEE
+132D ETHIOPIC SYLLABLE CHE
+132E ETHIOPIC SYLLABLE CHO
+132F ETHIOPIC SYLLABLE CHWA
+1330 ETHIOPIC SYLLABLE PHA
+1331 ETHIOPIC SYLLABLE PHU
+1332 ETHIOPIC SYLLABLE PHI
+1333 ETHIOPIC SYLLABLE PHAA
+1334 ETHIOPIC SYLLABLE PHEE
+1335 ETHIOPIC SYLLABLE PHE
+1336 ETHIOPIC SYLLABLE PHO
+1337 ETHIOPIC SYLLABLE PHWA
+1338 ETHIOPIC SYLLABLE TSA
+1339 ETHIOPIC SYLLABLE TSU
+133A ETHIOPIC SYLLABLE TSI
+133B ETHIOPIC SYLLABLE TSAA
+133C ETHIOPIC SYLLABLE TSEE
+133D ETHIOPIC SYLLABLE TSE
+133E ETHIOPIC SYLLABLE TSO
+133F ETHIOPIC SYLLABLE TSWA
+1340 ETHIOPIC SYLLABLE TZA
+1341 ETHIOPIC SYLLABLE TZU
+1342 ETHIOPIC SYLLABLE TZI
+1343 ETHIOPIC SYLLABLE TZAA
+1344 ETHIOPIC SYLLABLE TZEE
+1345 ETHIOPIC SYLLABLE TZE
+1346 ETHIOPIC SYLLABLE TZO
+1348 ETHIOPIC SYLLABLE FA
+1349 ETHIOPIC SYLLABLE FU
+134A ETHIOPIC SYLLABLE FI
+134B ETHIOPIC SYLLABLE FAA
+134C ETHIOPIC SYLLABLE FEE
+134D ETHIOPIC SYLLABLE FE
+134E ETHIOPIC SYLLABLE FO
+134F ETHIOPIC SYLLABLE FWA
+1350 ETHIOPIC SYLLABLE PA
+1351 ETHIOPIC SYLLABLE PU
+1352 ETHIOPIC SYLLABLE PI
+1353 ETHIOPIC SYLLABLE PAA
+1354 ETHIOPIC SYLLABLE PEE
+1355 ETHIOPIC SYLLABLE PE
+1356 ETHIOPIC SYLLABLE PO
+1357 ETHIOPIC SYLLABLE PWA
+1358 ETHIOPIC SYLLABLE RYA
+1359 ETHIOPIC SYLLABLE MYA
+135A ETHIOPIC SYLLABLE FYA
+@ Punctuation
+1361 ETHIOPIC WORDSPACE
+1362 ETHIOPIC FULL STOP
+1363 ETHIOPIC COMMA
+1364 ETHIOPIC SEMICOLON
+1365 ETHIOPIC COLON
+1366 ETHIOPIC PREFACE COLON
+1367 ETHIOPIC QUESTION MARK
+1368 ETHIOPIC PARAGRAPH SEPARATOR
+@ Digits
+1369 ETHIOPIC DIGIT ONE
+136A ETHIOPIC DIGIT TWO
+136B ETHIOPIC DIGIT THREE
+136C ETHIOPIC DIGIT FOUR
+136D ETHIOPIC DIGIT FIVE
+136E ETHIOPIC DIGIT SIX
+136F ETHIOPIC DIGIT SEVEN
+1370 ETHIOPIC DIGIT EIGHT
+1371 ETHIOPIC DIGIT NINE
+@ Numbers
+1372 ETHIOPIC NUMBER TEN
+1373 ETHIOPIC NUMBER TWENTY
+1374 ETHIOPIC NUMBER THIRTY
+1375 ETHIOPIC NUMBER FORTY
+1376 ETHIOPIC NUMBER FIFTY
+1377 ETHIOPIC NUMBER SIXTY
+1378 ETHIOPIC NUMBER SEVENTY
+1379 ETHIOPIC NUMBER EIGHTY
+137A ETHIOPIC NUMBER NINETY
+137B ETHIOPIC NUMBER HUNDRED
+137C ETHIOPIC NUMBER TEN THOUSAND
+@@ 13A0 Cherokee 13FF
+@ Syllables
+13A0 CHEROKEE LETTER A
+13A1 CHEROKEE LETTER E
+13A2 CHEROKEE LETTER I
+13A3 CHEROKEE LETTER O
+13A4 CHEROKEE LETTER U
+13A5 CHEROKEE LETTER V
+13A6 CHEROKEE LETTER GA
+13A7 CHEROKEE LETTER KA
+13A8 CHEROKEE LETTER GE
+13A9 CHEROKEE LETTER GI
+13AA CHEROKEE LETTER GO
+13AB CHEROKEE LETTER GU
+13AC CHEROKEE LETTER GV
+13AD CHEROKEE LETTER HA
+13AE CHEROKEE LETTER HE
+13AF CHEROKEE LETTER HI
+13B0 CHEROKEE LETTER HO
+13B1 CHEROKEE LETTER HU
+13B2 CHEROKEE LETTER HV
+13B3 CHEROKEE LETTER LA
+13B4 CHEROKEE LETTER LE
+13B5 CHEROKEE LETTER LI
+13B6 CHEROKEE LETTER LO
+13B7 CHEROKEE LETTER LU
+13B8 CHEROKEE LETTER LV
+13B9 CHEROKEE LETTER MA
+13BA CHEROKEE LETTER ME
+13BB CHEROKEE LETTER MI
+13BC CHEROKEE LETTER MO
+13BD CHEROKEE LETTER MU
+13BE CHEROKEE LETTER NA
+13BF CHEROKEE LETTER HNA
+13C0 CHEROKEE LETTER NAH
+13C1 CHEROKEE LETTER NE
+13C2 CHEROKEE LETTER NI
+13C3 CHEROKEE LETTER NO
+13C4 CHEROKEE LETTER NU
+13C5 CHEROKEE LETTER NV
+13C6 CHEROKEE LETTER QUA
+13C7 CHEROKEE LETTER QUE
+13C8 CHEROKEE LETTER QUI
+13C9 CHEROKEE LETTER QUO
+13CA CHEROKEE LETTER QUU
+13CB CHEROKEE LETTER QUV
+13CC CHEROKEE LETTER SA
+13CD CHEROKEE LETTER S
+13CE CHEROKEE LETTER SE
+13CF CHEROKEE LETTER SI
+13D0 CHEROKEE LETTER SO
+13D1 CHEROKEE LETTER SU
+13D2 CHEROKEE LETTER SV
+13D3 CHEROKEE LETTER DA
+13D4 CHEROKEE LETTER TA
+13D5 CHEROKEE LETTER DE
+13D6 CHEROKEE LETTER TE
+13D7 CHEROKEE LETTER DI
+13D8 CHEROKEE LETTER TI
+13D9 CHEROKEE LETTER DO
+13DA CHEROKEE LETTER DU
+13DB CHEROKEE LETTER DV
+13DC CHEROKEE LETTER DLA
+13DD CHEROKEE LETTER TLA
+13DE CHEROKEE LETTER TLE
+13DF CHEROKEE LETTER TLI
+13E0 CHEROKEE LETTER TLO
+13E1 CHEROKEE LETTER TLU
+13E2 CHEROKEE LETTER TLV
+13E3 CHEROKEE LETTER TSA
+13E4 CHEROKEE LETTER TSE
+13E5 CHEROKEE LETTER TSI
+13E6 CHEROKEE LETTER TSO
+13E7 CHEROKEE LETTER TSU
+13E8 CHEROKEE LETTER TSV
+13E9 CHEROKEE LETTER WA
+13EA CHEROKEE LETTER WE
+13EB CHEROKEE LETTER WI
+13EC CHEROKEE LETTER WO
+13ED CHEROKEE LETTER WU
+13EE CHEROKEE LETTER WV
+13EF CHEROKEE LETTER YA
+13F0 CHEROKEE LETTER YE
+13F1 CHEROKEE LETTER YI
+13F2 CHEROKEE LETTER YO
+13F3 CHEROKEE LETTER YU
+13F4 CHEROKEE LETTER YV
+@@ 1400 Unified Canadian Aboriginal Syllabics 167F
+@ Syllables
+1401 CANADIAN SYLLABICS E
+1402 CANADIAN SYLLABICS AAI
+1403 CANADIAN SYLLABICS I
+1404 CANADIAN SYLLABICS II
+1405 CANADIAN SYLLABICS O
+1406 CANADIAN SYLLABICS OO
+1407 CANADIAN SYLLABICS Y-CREE OO
+1408 CANADIAN SYLLABICS CARRIER EE
+1409 CANADIAN SYLLABICS CARRIER I
+140A CANADIAN SYLLABICS A
+140B CANADIAN SYLLABICS AA
+140C CANADIAN SYLLABICS WE
+140D CANADIAN SYLLABICS WEST-CREE WE
+140E CANADIAN SYLLABICS WI
+140F CANADIAN SYLLABICS WEST-CREE WI
+1410 CANADIAN SYLLABICS WII
+1411 CANADIAN SYLLABICS WEST-CREE WII
+1412 CANADIAN SYLLABICS WO
+1413 CANADIAN SYLLABICS WEST-CREE WO
+1414 CANADIAN SYLLABICS WOO
+1415 CANADIAN SYLLABICS WEST-CREE WOO
+1416 CANADIAN SYLLABICS NASKAPI WOO
+1417 CANADIAN SYLLABICS WA
+1418 CANADIAN SYLLABICS WEST-CREE WA
+1419 CANADIAN SYLLABICS WAA
+141A CANADIAN SYLLABICS WEST-CREE WAA
+141B CANADIAN SYLLABICS NASKAPI WAA
+141C CANADIAN SYLLABICS AI
+141D CANADIAN SYLLABICS Y-CREE W
+141E CANADIAN SYLLABICS GLOTTAL STOP
+141F CANADIAN SYLLABICS FINAL ACUTE
+1420 CANADIAN SYLLABICS FINAL GRAVE
+1421 CANADIAN SYLLABICS FINAL BOTTOM HALF RING
+1422 CANADIAN SYLLABICS FINAL TOP HALF RING
+1423 CANADIAN SYLLABICS FINAL RIGHT HALF RING
+1424 CANADIAN SYLLABICS FINAL RING
+1425 CANADIAN SYLLABICS FINAL DOUBLE ACUTE
+1426 CANADIAN SYLLABICS FINAL DOUBLE SHORT VERTICAL STROKES
+1427 CANADIAN SYLLABICS FINAL MIDDLE DOT
+1428 CANADIAN SYLLABICS FINAL SHORT HORIZONTAL STROKE
+1429 CANADIAN SYLLABICS FINAL PLUS
+142A CANADIAN SYLLABICS FINAL DOWN TACK
+142B CANADIAN SYLLABICS EN
+142C CANADIAN SYLLABICS IN
+142D CANADIAN SYLLABICS ON
+142E CANADIAN SYLLABICS AN
+142F CANADIAN SYLLABICS PE
+1430 CANADIAN SYLLABICS PAAI
+1431 CANADIAN SYLLABICS PI
+1432 CANADIAN SYLLABICS PII
+1433 CANADIAN SYLLABICS PO
+1434 CANADIAN SYLLABICS POO
+1435 CANADIAN SYLLABICS Y-CREE POO
+1436 CANADIAN SYLLABICS CARRIER HEE
+1437 CANADIAN SYLLABICS CARRIER HI
+1438 CANADIAN SYLLABICS PA
+1439 CANADIAN SYLLABICS PAA
+143A CANADIAN SYLLABICS PWE
+143B CANADIAN SYLLABICS WEST-CREE PWE
+143C CANADIAN SYLLABICS PWI
+143D CANADIAN SYLLABICS WEST-CREE PWI
+143E CANADIAN SYLLABICS PWII
+143F CANADIAN SYLLABICS WEST-CREE PWII
+1440 CANADIAN SYLLABICS PWO
+1441 CANADIAN SYLLABICS WEST-CREE PWO
+1442 CANADIAN SYLLABICS PWOO
+1443 CANADIAN SYLLABICS WEST-CREE PWOO
+1444 CANADIAN SYLLABICS PWA
+1445 CANADIAN SYLLABICS WEST-CREE PWA
+1446 CANADIAN SYLLABICS PWAA
+1447 CANADIAN SYLLABICS WEST-CREE PWAA
+1448 CANADIAN SYLLABICS Y-CREE PWAA
+1449 CANADIAN SYLLABICS P
+144A CANADIAN SYLLABICS WEST-CREE P
+144B CANADIAN SYLLABICS CARRIER H
+144C CANADIAN SYLLABICS TE
+144D CANADIAN SYLLABICS TAAI
+144E CANADIAN SYLLABICS TI
+144F CANADIAN SYLLABICS TII
+1450 CANADIAN SYLLABICS TO
+1451 CANADIAN SYLLABICS TOO
+1452 CANADIAN SYLLABICS Y-CREE TOO
+1453 CANADIAN SYLLABICS CARRIER DEE
+1454 CANADIAN SYLLABICS CARRIER DI
+1455 CANADIAN SYLLABICS TA
+1456 CANADIAN SYLLABICS TAA
+1457 CANADIAN SYLLABICS TWE
+1458 CANADIAN SYLLABICS WEST-CREE TWE
+1459 CANADIAN SYLLABICS TWI
+145A CANADIAN SYLLABICS WEST-CREE TWI
+145B CANADIAN SYLLABICS TWII
+145C CANADIAN SYLLABICS WEST-CREE TWII
+145D CANADIAN SYLLABICS TWO
+145E CANADIAN SYLLABICS WEST-CREE TWO
+145F CANADIAN SYLLABICS TWOO
+1460 CANADIAN SYLLABICS WEST-CREE TWOO
+1461 CANADIAN SYLLABICS TWA
+1462 CANADIAN SYLLABICS WEST-CREE TWA
+1463 CANADIAN SYLLABICS TWAA
+1464 CANADIAN SYLLABICS WEST-CREE TWAA
+1465 CANADIAN SYLLABICS NASKAPI TWAA
+1466 CANADIAN SYLLABICS T
+1467 CANADIAN SYLLABICS TTE
+1468 CANADIAN SYLLABICS TTI
+1469 CANADIAN SYLLABICS TTO
+146A CANADIAN SYLLABICS TTA
+146B CANADIAN SYLLABICS KE
+146C CANADIAN SYLLABICS KAAI
+146D CANADIAN SYLLABICS KI
+146E CANADIAN SYLLABICS KII
+146F CANADIAN SYLLABICS KO
+1470 CANADIAN SYLLABICS KOO
+1471 CANADIAN SYLLABICS Y-CREE KOO
+1472 CANADIAN SYLLABICS KA
+1473 CANADIAN SYLLABICS KAA
+1474 CANADIAN SYLLABICS KWE
+1475 CANADIAN SYLLABICS WEST-CREE KWE
+1476 CANADIAN SYLLABICS KWI
+1477 CANADIAN SYLLABICS WEST-CREE KWI
+1478 CANADIAN SYLLABICS KWII
+1479 CANADIAN SYLLABICS WEST-CREE KWII
+147A CANADIAN SYLLABICS KWO
+147B CANADIAN SYLLABICS WEST-CREE KWO
+147C CANADIAN SYLLABICS KWOO
+147D CANADIAN SYLLABICS WEST-CREE KWOO
+147E CANADIAN SYLLABICS KWA
+147F CANADIAN SYLLABICS WEST-CREE KWA
+1480 CANADIAN SYLLABICS KWAA
+1481 CANADIAN SYLLABICS WEST-CREE KWAA
+1482 CANADIAN SYLLABICS NASKAPI KWAA
+1483 CANADIAN SYLLABICS K
+1484 CANADIAN SYLLABICS KW
+1485 CANADIAN SYLLABICS SOUTH-SLAVEY KEH
+1486 CANADIAN SYLLABICS SOUTH-SLAVEY KIH
+1487 CANADIAN SYLLABICS SOUTH-SLAVEY KOH
+1488 CANADIAN SYLLABICS SOUTH-SLAVEY KAH
+1489 CANADIAN SYLLABICS CE
+148A CANADIAN SYLLABICS CAAI
+148B CANADIAN SYLLABICS CI
+148C CANADIAN SYLLABICS CII
+148D CANADIAN SYLLABICS CO
+148E CANADIAN SYLLABICS COO
+148F CANADIAN SYLLABICS Y-CREE COO
+1490 CANADIAN SYLLABICS CA
+1491 CANADIAN SYLLABICS CAA
+1492 CANADIAN SYLLABICS CWE
+1493 CANADIAN SYLLABICS WEST-CREE CWE
+1494 CANADIAN SYLLABICS CWI
+1495 CANADIAN SYLLABICS WEST-CREE CWI
+1496 CANADIAN SYLLABICS CWII
+1497 CANADIAN SYLLABICS WEST-CREE CWII
+1498 CANADIAN SYLLABICS CWO
+1499 CANADIAN SYLLABICS WEST-CREE CWO
+149A CANADIAN SYLLABICS CWOO
+149B CANADIAN SYLLABICS WEST-CREE CWOO
+149C CANADIAN SYLLABICS CWA
+149D CANADIAN SYLLABICS WEST-CREE CWA
+149E CANADIAN SYLLABICS CWAA
+149F CANADIAN SYLLABICS WEST-CREE CWAA
+14A0 CANADIAN SYLLABICS NASKAPI CWAA
+14A1 CANADIAN SYLLABICS C
+14A2 CANADIAN SYLLABICS SAYISI TH
+14A3 CANADIAN SYLLABICS ME
+14A4 CANADIAN SYLLABICS MAAI
+14A5 CANADIAN SYLLABICS MI
+14A6 CANADIAN SYLLABICS MII
+14A7 CANADIAN SYLLABICS MO
+14A8 CANADIAN SYLLABICS MOO
+14A9 CANADIAN SYLLABICS Y-CREE MOO
+14AA CANADIAN SYLLABICS MA
+14AB CANADIAN SYLLABICS MAA
+14AC CANADIAN SYLLABICS MWE
+14AD CANADIAN SYLLABICS WEST-CREE MWE
+14AE CANADIAN SYLLABICS MWI
+14AF CANADIAN SYLLABICS WEST-CREE MWI
+14B0 CANADIAN SYLLABICS MWII
+14B1 CANADIAN SYLLABICS WEST-CREE MWII
+14B2 CANADIAN SYLLABICS MWO
+14B3 CANADIAN SYLLABICS WEST-CREE MWO
+14B4 CANADIAN SYLLABICS MWOO
+14B5 CANADIAN SYLLABICS WEST-CREE MWOO
+14B6 CANADIAN SYLLABICS MWA
+14B7 CANADIAN SYLLABICS WEST-CREE MWA
+14B8 CANADIAN SYLLABICS MWAA
+14B9 CANADIAN SYLLABICS WEST-CREE MWAA
+14BA CANADIAN SYLLABICS NASKAPI MWAA
+14BB CANADIAN SYLLABICS M
+14BC CANADIAN SYLLABICS WEST-CREE M
+14BD CANADIAN SYLLABICS MH
+14BE CANADIAN SYLLABICS ATHAPASCAN M
+14BF CANADIAN SYLLABICS SAYISI M
+14C0 CANADIAN SYLLABICS NE
+14C1 CANADIAN SYLLABICS NAAI
+14C2 CANADIAN SYLLABICS NI
+14C3 CANADIAN SYLLABICS NII
+14C4 CANADIAN SYLLABICS NO
+14C5 CANADIAN SYLLABICS NOO
+14C6 CANADIAN SYLLABICS Y-CREE NOO
+14C7 CANADIAN SYLLABICS NA
+14C8 CANADIAN SYLLABICS NAA
+14C9 CANADIAN SYLLABICS NWE
+14CA CANADIAN SYLLABICS WEST-CREE NWE
+14CB CANADIAN SYLLABICS NWA
+14CC CANADIAN SYLLABICS WEST-CREE NWA
+14CD CANADIAN SYLLABICS NWAA
+14CE CANADIAN SYLLABICS WEST-CREE NWAA
+14CF CANADIAN SYLLABICS NASKAPI NWAA
+14D0 CANADIAN SYLLABICS N
+14D1 CANADIAN SYLLABICS CARRIER NG
+14D2 CANADIAN SYLLABICS NH
+14D3 CANADIAN SYLLABICS LE
+14D4 CANADIAN SYLLABICS LAAI
+14D5 CANADIAN SYLLABICS LI
+14D6 CANADIAN SYLLABICS LII
+14D7 CANADIAN SYLLABICS LO
+14D8 CANADIAN SYLLABICS LOO
+14D9 CANADIAN SYLLABICS Y-CREE LOO
+14DA CANADIAN SYLLABICS LA
+14DB CANADIAN SYLLABICS LAA
+14DC CANADIAN SYLLABICS LWE
+14DD CANADIAN SYLLABICS WEST-CREE LWE
+14DE CANADIAN SYLLABICS LWI
+14DF CANADIAN SYLLABICS WEST-CREE LWI
+14E0 CANADIAN SYLLABICS LWII
+14E1 CANADIAN SYLLABICS WEST-CREE LWII
+14E2 CANADIAN SYLLABICS LWO
+14E3 CANADIAN SYLLABICS WEST-CREE LWO
+14E4 CANADIAN SYLLABICS LWOO
+14E5 CANADIAN SYLLABICS WEST-CREE LWOO
+14E6 CANADIAN SYLLABICS LWA
+14E7 CANADIAN SYLLABICS WEST-CREE LWA
+14E8 CANADIAN SYLLABICS LWAA
+14E9 CANADIAN SYLLABICS WEST-CREE LWAA
+14EA CANADIAN SYLLABICS L
+14EB CANADIAN SYLLABICS WEST-CREE L
+14EC CANADIAN SYLLABICS MEDIAL L
+14ED CANADIAN SYLLABICS SE
+14EE CANADIAN SYLLABICS SAAI
+14EF CANADIAN SYLLABICS SI
+14F0 CANADIAN SYLLABICS SII
+14F1 CANADIAN SYLLABICS SO
+14F2 CANADIAN SYLLABICS SOO
+14F3 CANADIAN SYLLABICS Y-CREE SOO
+14F4 CANADIAN SYLLABICS SA
+14F5 CANADIAN SYLLABICS SAA
+14F6 CANADIAN SYLLABICS SWE
+14F7 CANADIAN SYLLABICS WEST-CREE SWE
+14F8 CANADIAN SYLLABICS SWI
+14F9 CANADIAN SYLLABICS WEST-CREE SWI
+14FA CANADIAN SYLLABICS SWII
+14FB CANADIAN SYLLABICS WEST-CREE SWII
+14FC CANADIAN SYLLABICS SWO
+14FD CANADIAN SYLLABICS WEST-CREE SWO
+14FE CANADIAN SYLLABICS SWOO
+14FF CANADIAN SYLLABICS WEST-CREE SWOO
+1500 CANADIAN SYLLABICS SWA
+1501 CANADIAN SYLLABICS WEST-CREE SWA
+1502 CANADIAN SYLLABICS SWAA
+1503 CANADIAN SYLLABICS WEST-CREE SWAA
+1504 CANADIAN SYLLABICS NASKAPI SWAA
+1505 CANADIAN SYLLABICS S
+1506 CANADIAN SYLLABICS ATHAPASCAN S
+1507 CANADIAN SYLLABICS SW
+1508 CANADIAN SYLLABICS BLACKFOOT S
+1509 CANADIAN SYLLABICS MOOSE-CREE SK
+150A CANADIAN SYLLABICS NASKAPI SKW
+150B CANADIAN SYLLABICS NASKAPI S-W
+150C CANADIAN SYLLABICS NASKAPI SPWA
+150D CANADIAN SYLLABICS NASKAPI STWA
+150E CANADIAN SYLLABICS NASKAPI SKWA
+150F CANADIAN SYLLABICS NASKAPI SCWA
+1510 CANADIAN SYLLABICS SHE
+1511 CANADIAN SYLLABICS SHI
+1512 CANADIAN SYLLABICS SHII
+1513 CANADIAN SYLLABICS SHO
+1514 CANADIAN SYLLABICS SHOO
+1515 CANADIAN SYLLABICS SHA
+1516 CANADIAN SYLLABICS SHAA
+1517 CANADIAN SYLLABICS SHWE
+1518 CANADIAN SYLLABICS WEST-CREE SHWE
+1519 CANADIAN SYLLABICS SHWI
+151A CANADIAN SYLLABICS WEST-CREE SHWI
+151B CANADIAN SYLLABICS SHWII
+151C CANADIAN SYLLABICS WEST-CREE SHWII
+151D CANADIAN SYLLABICS SHWO
+151E CANADIAN SYLLABICS WEST-CREE SHWO
+151F CANADIAN SYLLABICS SHWOO
+1520 CANADIAN SYLLABICS WEST-CREE SHWOO
+1521 CANADIAN SYLLABICS SHWA
+1522 CANADIAN SYLLABICS WEST-CREE SHWA
+1523 CANADIAN SYLLABICS SHWAA
+1524 CANADIAN SYLLABICS WEST-CREE SHWAA
+1525 CANADIAN SYLLABICS SH
+1526 CANADIAN SYLLABICS YE
+1527 CANADIAN SYLLABICS YAAI
+1528 CANADIAN SYLLABICS YI
+1529 CANADIAN SYLLABICS YII
+152A CANADIAN SYLLABICS YO
+152B CANADIAN SYLLABICS YOO
+152C CANADIAN SYLLABICS Y-CREE YOO
+152D CANADIAN SYLLABICS YA
+152E CANADIAN SYLLABICS YAA
+152F CANADIAN SYLLABICS YWE
+1530 CANADIAN SYLLABICS WEST-CREE YWE
+1531 CANADIAN SYLLABICS YWI
+1532 CANADIAN SYLLABICS WEST-CREE YWI
+1533 CANADIAN SYLLABICS YWII
+1534 CANADIAN SYLLABICS WEST-CREE YWII
+1535 CANADIAN SYLLABICS YWO
+1536 CANADIAN SYLLABICS WEST-CREE YWO
+1537 CANADIAN SYLLABICS YWOO
+1538 CANADIAN SYLLABICS WEST-CREE YWOO
+1539 CANADIAN SYLLABICS YWA
+153A CANADIAN SYLLABICS WEST-CREE YWA
+153B CANADIAN SYLLABICS YWAA
+153C CANADIAN SYLLABICS WEST-CREE YWAA
+153D CANADIAN SYLLABICS NASKAPI YWAA
+153E CANADIAN SYLLABICS Y
+153F CANADIAN SYLLABICS BIBLE-CREE Y
+1540 CANADIAN SYLLABICS WEST-CREE Y
+1541 CANADIAN SYLLABICS SAYISI YI
+1542 CANADIAN SYLLABICS RE
+1543 CANADIAN SYLLABICS R-CREE RE
+1544 CANADIAN SYLLABICS WEST-CREE LE
+1545 CANADIAN SYLLABICS RAAI
+1546 CANADIAN SYLLABICS RI
+1547 CANADIAN SYLLABICS RII
+1548 CANADIAN SYLLABICS RO
+1549 CANADIAN SYLLABICS ROO
+154A CANADIAN SYLLABICS WEST-CREE LO
+154B CANADIAN SYLLABICS RA
+154C CANADIAN SYLLABICS RAA
+154D CANADIAN SYLLABICS WEST-CREE LA
+154E CANADIAN SYLLABICS RWAA
+154F CANADIAN SYLLABICS WEST-CREE RWAA
+1550 CANADIAN SYLLABICS R
+1551 CANADIAN SYLLABICS WEST-CREE R
+1552 CANADIAN SYLLABICS MEDIAL R
+1553 CANADIAN SYLLABICS FE
+1554 CANADIAN SYLLABICS FAAI
+1555 CANADIAN SYLLABICS FI
+1556 CANADIAN SYLLABICS FII
+1557 CANADIAN SYLLABICS FO
+1558 CANADIAN SYLLABICS FOO
+1559 CANADIAN SYLLABICS FA
+155A CANADIAN SYLLABICS FAA
+155B CANADIAN SYLLABICS FWAA
+155C CANADIAN SYLLABICS WEST-CREE FWAA
+155D CANADIAN SYLLABICS F
+155E CANADIAN SYLLABICS THE
+155F CANADIAN SYLLABICS N-CREE THE
+1560 CANADIAN SYLLABICS THI
+1561 CANADIAN SYLLABICS N-CREE THI
+1562 CANADIAN SYLLABICS THII
+1563 CANADIAN SYLLABICS N-CREE THII
+1564 CANADIAN SYLLABICS THO
+1565 CANADIAN SYLLABICS THOO
+1566 CANADIAN SYLLABICS THA
+1567 CANADIAN SYLLABICS THAA
+1568 CANADIAN SYLLABICS THWAA
+1569 CANADIAN SYLLABICS WEST-CREE THWAA
+156A CANADIAN SYLLABICS TH
+156B CANADIAN SYLLABICS TTHE
+156C CANADIAN SYLLABICS TTHI
+156D CANADIAN SYLLABICS TTHO
+156E CANADIAN SYLLABICS TTHA
+156F CANADIAN SYLLABICS TTH
+1570 CANADIAN SYLLABICS TYE
+1571 CANADIAN SYLLABICS TYI
+1572 CANADIAN SYLLABICS TYO
+1573 CANADIAN SYLLABICS TYA
+1574 CANADIAN SYLLABICS NUNAVIK HE
+1575 CANADIAN SYLLABICS NUNAVIK HI
+1576 CANADIAN SYLLABICS NUNAVIK HII
+1577 CANADIAN SYLLABICS NUNAVIK HO
+1578 CANADIAN SYLLABICS NUNAVIK HOO
+1579 CANADIAN SYLLABICS NUNAVIK HA
+157A CANADIAN SYLLABICS NUNAVIK HAA
+157B CANADIAN SYLLABICS NUNAVIK H
+157C CANADIAN SYLLABICS NUNAVUT H
+157D CANADIAN SYLLABICS HK
+157E CANADIAN SYLLABICS QAAI
+157F CANADIAN SYLLABICS QI
+1580 CANADIAN SYLLABICS QII
+1581 CANADIAN SYLLABICS QO
+1582 CANADIAN SYLLABICS QOO
+1583 CANADIAN SYLLABICS QA
+1584 CANADIAN SYLLABICS QAA
+1585 CANADIAN SYLLABICS Q
+1586 CANADIAN SYLLABICS TLHE
+1587 CANADIAN SYLLABICS TLHI
+1588 CANADIAN SYLLABICS TLHO
+1589 CANADIAN SYLLABICS TLHA
+158A CANADIAN SYLLABICS WEST-CREE RE
+158B CANADIAN SYLLABICS WEST-CREE RI
+158C CANADIAN SYLLABICS WEST-CREE RO
+158D CANADIAN SYLLABICS WEST-CREE RA
+158E CANADIAN SYLLABICS NGAAI
+158F CANADIAN SYLLABICS NGI
+1590 CANADIAN SYLLABICS NGII
+1591 CANADIAN SYLLABICS NGO
+1592 CANADIAN SYLLABICS NGOO
+1593 CANADIAN SYLLABICS NGA
+1594 CANADIAN SYLLABICS NGAA
+1595 CANADIAN SYLLABICS NG
+1596 CANADIAN SYLLABICS NNG
+1597 CANADIAN SYLLABICS SAYISI SHE
+1598 CANADIAN SYLLABICS SAYISI SHI
+1599 CANADIAN SYLLABICS SAYISI SHO
+159A CANADIAN SYLLABICS SAYISI SHA
+159B CANADIAN SYLLABICS WOODS-CREE THE
+159C CANADIAN SYLLABICS WOODS-CREE THI
+159D CANADIAN SYLLABICS WOODS-CREE THO
+159E CANADIAN SYLLABICS WOODS-CREE THA
+159F CANADIAN SYLLABICS WOODS-CREE TH
+15A0 CANADIAN SYLLABICS LHI
+15A1 CANADIAN SYLLABICS LHII
+15A2 CANADIAN SYLLABICS LHO
+15A3 CANADIAN SYLLABICS LHOO
+15A4 CANADIAN SYLLABICS LHA
+15A5 CANADIAN SYLLABICS LHAA
+15A6 CANADIAN SYLLABICS LH
+15A7 CANADIAN SYLLABICS TH-CREE THE
+15A8 CANADIAN SYLLABICS TH-CREE THI
+15A9 CANADIAN SYLLABICS TH-CREE THII
+15AA CANADIAN SYLLABICS TH-CREE THO
+15AB CANADIAN SYLLABICS TH-CREE THOO
+15AC CANADIAN SYLLABICS TH-CREE THA
+15AD CANADIAN SYLLABICS TH-CREE THAA
+15AE CANADIAN SYLLABICS TH-CREE TH
+15AF CANADIAN SYLLABICS AIVILIK B
+15B0 CANADIAN SYLLABICS BLACKFOOT E
+15B1 CANADIAN SYLLABICS BLACKFOOT I
+15B2 CANADIAN SYLLABICS BLACKFOOT O
+15B3 CANADIAN SYLLABICS BLACKFOOT A
+15B4 CANADIAN SYLLABICS BLACKFOOT WE
+15B5 CANADIAN SYLLABICS BLACKFOOT WI
+15B6 CANADIAN SYLLABICS BLACKFOOT WO
+15B7 CANADIAN SYLLABICS BLACKFOOT WA
+15B8 CANADIAN SYLLABICS BLACKFOOT NE
+15B9 CANADIAN SYLLABICS BLACKFOOT NI
+15BA CANADIAN SYLLABICS BLACKFOOT NO
+15BB CANADIAN SYLLABICS BLACKFOOT NA
+15BC CANADIAN SYLLABICS BLACKFOOT KE
+15BD CANADIAN SYLLABICS BLACKFOOT KI
+15BE CANADIAN SYLLABICS BLACKFOOT KO
+15BF CANADIAN SYLLABICS BLACKFOOT KA
+15C0 CANADIAN SYLLABICS SAYISI HE
+15C1 CANADIAN SYLLABICS SAYISI HI
+15C2 CANADIAN SYLLABICS SAYISI HO
+15C3 CANADIAN SYLLABICS SAYISI HA
+15C4 CANADIAN SYLLABICS CARRIER GHU
+15C5 CANADIAN SYLLABICS CARRIER GHO
+15C6 CANADIAN SYLLABICS CARRIER GHE
+15C7 CANADIAN SYLLABICS CARRIER GHEE
+15C8 CANADIAN SYLLABICS CARRIER GHI
+15C9 CANADIAN SYLLABICS CARRIER GHA
+15CA CANADIAN SYLLABICS CARRIER RU
+15CB CANADIAN SYLLABICS CARRIER RO
+15CC CANADIAN SYLLABICS CARRIER RE
+15CD CANADIAN SYLLABICS CARRIER REE
+15CE CANADIAN SYLLABICS CARRIER RI
+15CF CANADIAN SYLLABICS CARRIER RA
+15D0 CANADIAN SYLLABICS CARRIER WU
+15D1 CANADIAN SYLLABICS CARRIER WO
+15D2 CANADIAN SYLLABICS CARRIER WE
+15D3 CANADIAN SYLLABICS CARRIER WEE
+15D4 CANADIAN SYLLABICS CARRIER WI
+15D5 CANADIAN SYLLABICS CARRIER WA
+15D6 CANADIAN SYLLABICS CARRIER HWU
+15D7 CANADIAN SYLLABICS CARRIER HWO
+15D8 CANADIAN SYLLABICS CARRIER HWE
+15D9 CANADIAN SYLLABICS CARRIER HWEE
+15DA CANADIAN SYLLABICS CARRIER HWI
+15DB CANADIAN SYLLABICS CARRIER HWA
+15DC CANADIAN SYLLABICS CARRIER THU
+15DD CANADIAN SYLLABICS CARRIER THO
+15DE CANADIAN SYLLABICS CARRIER THE
+15DF CANADIAN SYLLABICS CARRIER THEE
+15E0 CANADIAN SYLLABICS CARRIER THI
+15E1 CANADIAN SYLLABICS CARRIER THA
+15E2 CANADIAN SYLLABICS CARRIER TTU
+15E3 CANADIAN SYLLABICS CARRIER TTO
+15E4 CANADIAN SYLLABICS CARRIER TTE
+15E5 CANADIAN SYLLABICS CARRIER TTEE
+15E6 CANADIAN SYLLABICS CARRIER TTI
+15E7 CANADIAN SYLLABICS CARRIER TTA
+15E8 CANADIAN SYLLABICS CARRIER PU
+15E9 CANADIAN SYLLABICS CARRIER PO
+15EA CANADIAN SYLLABICS CARRIER PE
+15EB CANADIAN SYLLABICS CARRIER PEE
+15EC CANADIAN SYLLABICS CARRIER PI
+15ED CANADIAN SYLLABICS CARRIER PA
+15EE CANADIAN SYLLABICS CARRIER P
+15EF CANADIAN SYLLABICS CARRIER GU
+15F0 CANADIAN SYLLABICS CARRIER GO
+15F1 CANADIAN SYLLABICS CARRIER GE
+15F2 CANADIAN SYLLABICS CARRIER GEE
+15F3 CANADIAN SYLLABICS CARRIER GI
+15F4 CANADIAN SYLLABICS CARRIER GA
+15F5 CANADIAN SYLLABICS CARRIER KHU
+15F6 CANADIAN SYLLABICS CARRIER KHO
+15F7 CANADIAN SYLLABICS CARRIER KHE
+15F8 CANADIAN SYLLABICS CARRIER KHEE
+15F9 CANADIAN SYLLABICS CARRIER KHI
+15FA CANADIAN SYLLABICS CARRIER KHA
+15FB CANADIAN SYLLABICS CARRIER KKU
+15FC CANADIAN SYLLABICS CARRIER KKO
+15FD CANADIAN SYLLABICS CARRIER KKE
+15FE CANADIAN SYLLABICS CARRIER KKEE
+15FF CANADIAN SYLLABICS CARRIER KKI
+1600 CANADIAN SYLLABICS CARRIER KKA
+1601 CANADIAN SYLLABICS CARRIER KK
+1602 CANADIAN SYLLABICS CARRIER NU
+1603 CANADIAN SYLLABICS CARRIER NO
+1604 CANADIAN SYLLABICS CARRIER NE
+1605 CANADIAN SYLLABICS CARRIER NEE
+1606 CANADIAN SYLLABICS CARRIER NI
+1607 CANADIAN SYLLABICS CARRIER NA
+1608 CANADIAN SYLLABICS CARRIER MU
+1609 CANADIAN SYLLABICS CARRIER MO
+160A CANADIAN SYLLABICS CARRIER ME
+160B CANADIAN SYLLABICS CARRIER MEE
+160C CANADIAN SYLLABICS CARRIER MI
+160D CANADIAN SYLLABICS CARRIER MA
+160E CANADIAN SYLLABICS CARRIER YU
+160F CANADIAN SYLLABICS CARRIER YO
+1610 CANADIAN SYLLABICS CARRIER YE
+1611 CANADIAN SYLLABICS CARRIER YEE
+1612 CANADIAN SYLLABICS CARRIER YI
+1613 CANADIAN SYLLABICS CARRIER YA
+1614 CANADIAN SYLLABICS CARRIER JU
+1615 CANADIAN SYLLABICS SAYISI JU
+1616 CANADIAN SYLLABICS CARRIER JO
+1617 CANADIAN SYLLABICS CARRIER JE
+1618 CANADIAN SYLLABICS CARRIER JEE
+1619 CANADIAN SYLLABICS CARRIER JI
+161A CANADIAN SYLLABICS SAYISI JI
+161B CANADIAN SYLLABICS CARRIER JA
+161C CANADIAN SYLLABICS CARRIER JJU
+161D CANADIAN SYLLABICS CARRIER JJO
+161E CANADIAN SYLLABICS CARRIER JJE
+161F CANADIAN SYLLABICS CARRIER JJEE
+1620 CANADIAN SYLLABICS CARRIER JJI
+1621 CANADIAN SYLLABICS CARRIER JJA
+1622 CANADIAN SYLLABICS CARRIER LU
+1623 CANADIAN SYLLABICS CARRIER LO
+1624 CANADIAN SYLLABICS CARRIER LE
+1625 CANADIAN SYLLABICS CARRIER LEE
+1626 CANADIAN SYLLABICS CARRIER LI
+1627 CANADIAN SYLLABICS CARRIER LA
+1628 CANADIAN SYLLABICS CARRIER DLU
+1629 CANADIAN SYLLABICS CARRIER DLO
+162A CANADIAN SYLLABICS CARRIER DLE
+162B CANADIAN SYLLABICS CARRIER DLEE
+162C CANADIAN SYLLABICS CARRIER DLI
+162D CANADIAN SYLLABICS CARRIER DLA
+162E CANADIAN SYLLABICS CARRIER LHU
+162F CANADIAN SYLLABICS CARRIER LHO
+1630 CANADIAN SYLLABICS CARRIER LHE
+1631 CANADIAN SYLLABICS CARRIER LHEE
+1632 CANADIAN SYLLABICS CARRIER LHI
+1633 CANADIAN SYLLABICS CARRIER LHA
+1634 CANADIAN SYLLABICS CARRIER TLHU
+1635 CANADIAN SYLLABICS CARRIER TLHO
+1636 CANADIAN SYLLABICS CARRIER TLHE
+1637 CANADIAN SYLLABICS CARRIER TLHEE
+1638 CANADIAN SYLLABICS CARRIER TLHI
+1639 CANADIAN SYLLABICS CARRIER TLHA
+163A CANADIAN SYLLABICS CARRIER TLU
+163B CANADIAN SYLLABICS CARRIER TLO
+163C CANADIAN SYLLABICS CARRIER TLE
+163D CANADIAN SYLLABICS CARRIER TLEE
+163E CANADIAN SYLLABICS CARRIER TLI
+163F CANADIAN SYLLABICS CARRIER TLA
+1640 CANADIAN SYLLABICS CARRIER ZU
+1641 CANADIAN SYLLABICS CARRIER ZO
+1642 CANADIAN SYLLABICS CARRIER ZE
+1643 CANADIAN SYLLABICS CARRIER ZEE
+1644 CANADIAN SYLLABICS CARRIER ZI
+1645 CANADIAN SYLLABICS CARRIER ZA
+1646 CANADIAN SYLLABICS CARRIER Z
+1647 CANADIAN SYLLABICS CARRIER INITIAL Z
+1648 CANADIAN SYLLABICS CARRIER DZU
+1649 CANADIAN SYLLABICS CARRIER DZO
+164A CANADIAN SYLLABICS CARRIER DZE
+164B CANADIAN SYLLABICS CARRIER DZEE
+164C CANADIAN SYLLABICS CARRIER DZI
+164D CANADIAN SYLLABICS CARRIER DZA
+164E CANADIAN SYLLABICS CARRIER SU
+164F CANADIAN SYLLABICS CARRIER SO
+1650 CANADIAN SYLLABICS CARRIER SE
+1651 CANADIAN SYLLABICS CARRIER SEE
+1652 CANADIAN SYLLABICS CARRIER SI
+1653 CANADIAN SYLLABICS CARRIER SA
+1654 CANADIAN SYLLABICS CARRIER SHU
+1655 CANADIAN SYLLABICS CARRIER SHO
+1656 CANADIAN SYLLABICS CARRIER SHE
+1657 CANADIAN SYLLABICS CARRIER SHEE
+1658 CANADIAN SYLLABICS CARRIER SHI
+1659 CANADIAN SYLLABICS CARRIER SHA
+165A CANADIAN SYLLABICS CARRIER SH
+165B CANADIAN SYLLABICS CARRIER TSU
+165C CANADIAN SYLLABICS CARRIER TSO
+165D CANADIAN SYLLABICS CARRIER TSE
+165E CANADIAN SYLLABICS CARRIER TSEE
+165F CANADIAN SYLLABICS CARRIER TSI
+1660 CANADIAN SYLLABICS CARRIER TSA
+1661 CANADIAN SYLLABICS CARRIER CHU
+1662 CANADIAN SYLLABICS CARRIER CHO
+1663 CANADIAN SYLLABICS CARRIER CHE
+1664 CANADIAN SYLLABICS CARRIER CHEE
+1665 CANADIAN SYLLABICS CARRIER CHI
+1666 CANADIAN SYLLABICS CARRIER CHA
+1667 CANADIAN SYLLABICS CARRIER TTSU
+1668 CANADIAN SYLLABICS CARRIER TTSO
+1669 CANADIAN SYLLABICS CARRIER TTSE
+166A CANADIAN SYLLABICS CARRIER TTSEE
+166B CANADIAN SYLLABICS CARRIER TTSI
+166C CANADIAN SYLLABICS CARRIER TTSA
+@ Punctuation
+166D CANADIAN SYLLABICS CHI SIGN
+166E CANADIAN SYLLABICS FULL STOP
+@ Syllables
+166F CANADIAN SYLLABICS QAI
+1670 CANADIAN SYLLABICS NGAI
+1671 CANADIAN SYLLABICS NNGI
+1672 CANADIAN SYLLABICS NNGII
+1673 CANADIAN SYLLABICS NNGO
+1674 CANADIAN SYLLABICS NNGOO
+1675 CANADIAN SYLLABICS NNGA
+1676 CANADIAN SYLLABICS NNGAA
+@@ 1680 Ogham 169F
+@ Punctuation
+1680 OGHAM SPACE MARK
+ * glyph is blank in "stemless" style fonts
+@ Traditional letters
+1681 OGHAM LETTER BEITH
+1682 OGHAM LETTER LUIS
+1683 OGHAM LETTER FEARN
+1684 OGHAM LETTER SAIL
+1685 OGHAM LETTER NION
+1686 OGHAM LETTER UATH
+1687 OGHAM LETTER DAIR
+1688 OGHAM LETTER TINNE
+1689 OGHAM LETTER COLL
+168A OGHAM LETTER CEIRT
+168B OGHAM LETTER MUIN
+168C OGHAM LETTER GORT
+168D OGHAM LETTER NGEADAL
+168E OGHAM LETTER STRAIF
+168F OGHAM LETTER RUIS
+1690 OGHAM LETTER AILM
+1691 OGHAM LETTER ONN
+1692 OGHAM LETTER UR
+1693 OGHAM LETTER EADHADH
+1694 OGHAM LETTER IODHADH
+@ Forfeda (supplementary letters)
+1695 OGHAM LETTER EABHADH
+1696 OGHAM LETTER OR
+1697 OGHAM LETTER UILLEANN
+1698 OGHAM LETTER IFIN
+1699 OGHAM LETTER EAMHANCHOLL
+169A OGHAM LETTER PEITH
+@ Punctuation
+169B OGHAM FEATHER MARK
+ * marks beginning of Ogham text
+169C OGHAM REVERSED FEATHER MARK
+ * marks end of Ogham text
+@@ 16A0 Runic 16FF
+@ Letters
+16A0 RUNIC LETTER FEHU FEOH FE F
+16A1 RUNIC LETTER V
+16A2 RUNIC LETTER URUZ UR U
+16A3 RUNIC LETTER YR
+16A4 RUNIC LETTER Y
+16A5 RUNIC LETTER W
+16A6 RUNIC LETTER THURISAZ THURS THORN
+ x (latin small letter thorn - 00FE)
+16A7 RUNIC LETTER ETH
+16A8 RUNIC LETTER ANSUZ A
+16A9 RUNIC LETTER OS O
+16AA RUNIC LETTER AC A
+16AB RUNIC LETTER AESC
+16AC RUNIC LETTER LONG-BRANCH-OSS O
+16AD RUNIC LETTER SHORT-TWIG-OSS O
+16AE RUNIC LETTER O
+16AF RUNIC LETTER OE
+16B0 RUNIC LETTER ON
+16B1 RUNIC LETTER RAIDO RAD REID R
+16B2 RUNIC LETTER KAUNA
+16B3 RUNIC LETTER CEN
+16B4 RUNIC LETTER KAUN K
+16B5 RUNIC LETTER G
+16B6 RUNIC LETTER ENG
+16B7 RUNIC LETTER GEBO GYFU G
+16B8 RUNIC LETTER GAR
+16B9 RUNIC LETTER WUNJO WYNN W
+ x (latin letter wynn - 01BF)
+16BA RUNIC LETTER HAGLAZ H
+16BB RUNIC LETTER HAEGL H
+16BC RUNIC LETTER LONG-BRANCH-HAGALL H
+16BD RUNIC LETTER SHORT-TWIG-HAGALL H
+16BE RUNIC LETTER NAUDIZ NYD NAUD N
+16BF RUNIC LETTER SHORT-TWIG-NAUD N
+16C0 RUNIC LETTER DOTTED-N
+16C1 RUNIC LETTER ISAZ IS ISS I
+16C2 RUNIC LETTER E
+16C3 RUNIC LETTER JERAN J
+16C4 RUNIC LETTER GER
+16C5 RUNIC LETTER LONG-BRANCH-AR AE
+16C6 RUNIC LETTER SHORT-TWIG-AR A
+16C7 RUNIC LETTER IWAZ EOH
+16C8 RUNIC LETTER PERTHO PEORTH P
+16C9 RUNIC LETTER ALGIZ EOLHX
+16CA RUNIC LETTER SOWILO S
+16CB RUNIC LETTER SIGEL LONG-BRANCH-SOL S
+16CC RUNIC LETTER SHORT-TWIG-SOL S
+16CD RUNIC LETTER C
+16CE RUNIC LETTER Z
+16CF RUNIC LETTER TIWAZ TIR TYR T
+16D0 RUNIC LETTER SHORT-TWIG-TYR T
+16D1 RUNIC LETTER D
+16D2 RUNIC LETTER BERKANAN BEORC BJARKAN B
+16D3 RUNIC LETTER SHORT-TWIG-BJARKAN B
+16D4 RUNIC LETTER DOTTED-P
+16D5 RUNIC LETTER OPEN-P
+16D6 RUNIC LETTER EHWAZ EH E
+16D7 RUNIC LETTER MANNAZ MAN M
+16D8 RUNIC LETTER LONG-BRANCH-MADR M
+16D9 RUNIC LETTER SHORT-TWIG-MADR M
+16DA RUNIC LETTER LAUKAZ LAGU LOGR L
+16DB RUNIC LETTER DOTTED-L
+16DC RUNIC LETTER INGWAZ
+16DD RUNIC LETTER ING
+16DE RUNIC LETTER DAGAZ DAEG D
+16DF RUNIC LETTER OTHALAN ETHEL O
+16E0 RUNIC LETTER EAR
+16E1 RUNIC LETTER IOR
+16E2 RUNIC LETTER CWEORTH
+16E3 RUNIC LETTER CALC
+16E4 RUNIC LETTER CEALC
+16E5 RUNIC LETTER STAN
+16E6 RUNIC LETTER LONG-BRANCH-YR
+16E7 RUNIC LETTER SHORT-TWIG-YR
+16E8 RUNIC LETTER ICELANDIC-YR
+16E9 RUNIC LETTER Q
+16EA RUNIC LETTER X
+@ Punctuation
+16EB RUNIC SINGLE PUNCTUATION
+16EC RUNIC MULTIPLE PUNCTUATION
+16ED RUNIC CROSS PUNCTUATION
+@ Golden number runes
+16EE RUNIC ARLAUG SYMBOL (golden number 17)
+ * golden number 17
+16EF RUNIC TVIMADUR SYMBOL (golden number 18)
+ * golden number 18
+16F0 RUNIC BELGTHOR SYMBOL (golden number 19)
+ * golden number 19
+@@ 1780 Khmer 17FF
+@ Consonants
+1780 KHMER LETTER KA
+1781 KHMER LETTER KHA
+1782 KHMER LETTER KO
+1783 KHMER LETTER KHO
+1784 KHMER LETTER NGO
+1785 KHMER LETTER CA
+1786 KHMER LETTER CHA
+1787 KHMER LETTER CO
+1788 KHMER LETTER CHO
+1789 KHMER LETTER NYO
+178A KHMER LETTER DA
+178B KHMER LETTER TTHA
+178C KHMER LETTER DO
+178D KHMER LETTER TTHO
+178E KHMER LETTER NNO
+178F KHMER LETTER TA
+1790 KHMER LETTER THA
+1791 KHMER LETTER TO
+1792 KHMER LETTER THO
+1793 KHMER LETTER NO
+1794 KHMER LETTER BA
+1795 KHMER LETTER PHA
+1796 KHMER LETTER PO
+1797 KHMER LETTER PHO
+1798 KHMER LETTER MO
+1799 KHMER LETTER YO
+179A KHMER LETTER RO
+179B KHMER LETTER LO
+179C KHMER LETTER VO
+179D KHMER LETTER SHA
+ * used only for Pali/Sanskrit transliteration
+179E KHMER LETTER SSO
+ * used only for Pali/Sanskrit transliteration
+179F KHMER LETTER SA
+17A0 KHMER LETTER HA
+17A1 KHMER LETTER LA
+17A2 KHMER LETTER QA
+ * glottal stop
+@ Independent vowels
+17A3 KHMER INDEPENDENT VOWEL QAQ
+ * used only for Pali/Sanskrit transliteration
+17A4 KHMER INDEPENDENT VOWEL QAA
+ * used only for Pali/Sanskrit transliteration
+17A5 KHMER INDEPENDENT VOWEL QI
+17A6 KHMER INDEPENDENT VOWEL QII
+17A7 KHMER INDEPENDENT VOWEL QU
+17A8 KHMER INDEPENDENT VOWEL QUK
+ * obsolete
+17A9 KHMER INDEPENDENT VOWEL QUU
+17AA KHMER INDEPENDENT VOWEL QUUV
+17AB KHMER INDEPENDENT VOWEL RY
+17AC KHMER INDEPENDENT VOWEL RYY
+17AD KHMER INDEPENDENT VOWEL LY
+17AE KHMER INDEPENDENT VOWEL LYY
+17AF KHMER INDEPENDENT VOWEL QE
+17B0 KHMER INDEPENDENT VOWEL QAI
+17B1 KHMER INDEPENDENT VOWEL QOO TYPE ONE
+17B2 KHMER INDEPENDENT VOWEL QOO TYPE TWO
+17B3 KHMER INDEPENDENT VOWEL QAU
+@ Inherent vowels
+@+ These are for phonetic transcription to distinguish Indic language inherent vowels from Khmer inherent vowels.
+17B4 KHMER VOWEL INHERENT AQ
+17B5 KHMER VOWEL INHERENT AA
+@ Dependent vowel signs
+17B6 KHMER VOWEL SIGN AA
+17B7 KHMER VOWEL SIGN I
+17B8 KHMER VOWEL SIGN II
+17B9 KHMER VOWEL SIGN Y
+17BA KHMER VOWEL SIGN YY
+17BB KHMER VOWEL SIGN U
+17BC KHMER VOWEL SIGN UU
+17BD KHMER VOWEL SIGN UA
+17BE KHMER VOWEL SIGN OE
+17BF KHMER VOWEL SIGN YA
+17C0 KHMER VOWEL SIGN IE
+17C1 KHMER VOWEL SIGN E
+17C2 KHMER VOWEL SIGN AE
+17C3 KHMER VOWEL SIGN AI
+17C4 KHMER VOWEL SIGN OO
+17C5 KHMER VOWEL SIGN AU
+@ Various signs
+17C6 KHMER SIGN NIKAHIT
+ = anusvara
+ * final nasalization
+ x (thai character nikhahit - 0E4D)
+ x (myanmar sign anusvara - 1036)
+17C7 KHMER SIGN REAHMUK
+ = visarga
+ x (myanmar sign visarga - 1038)
+17C8 KHMER SIGN YUUKALEAPINTU
+ * inserts a short inherent vowel with abrupt glottal stop
+@ Consonant shifters
+@+ These signs shift the base consonant between registers.
+17C9 KHMER SIGN MUUSIKATOAN
+ * change second register to first
+17CA KHMER SIGN TRIISAP
+ * change first register to second
+@ Various signs
+17CB KHMER SIGN BANTOC
+ * shortens preceding vowel
+17CC KHMER SIGN ROBAT
+ * corresponds to initial r in Indian loan words, but treated as a diacritic
+17CD KHMER SIGN TOANDAKHIAT
+ * marks character not to be pronounced
+17CE KHMER SIGN KAKABAT
+ * sign used with some exclamations
+17CF KHMER SIGN AHSDA
+ * conjoined sign used in spelling of two single-consonant words
+17D0 KHMER SIGN SAMYOK SANNYA
+ * used with 17A4 to indicate shortened inherent vowel
+17D1 KHMER SIGN VIRIAM
+ * mostly obsolete
+ * indicates the base character is part of the previous word
+17D2 KHMER SIGN COENG
+ * functions as virama
+ * shape shown is arbitrary and not rendered
+17D3 KHMER SIGN BATHAMASAT
+ * very rare sign used in historic lunar dates
+17D4 KHMER SIGN KHAN
+ * functions as full stop, ellipsis, abbreviation
+ x (thai character paiyannoi - 0E2F)
+ x (thai character angkhankhu - 0E5A)
+ x (myanmar sign little section - 104A)
+17D5 KHMER SIGN BARIYOOSAN
+ * end of section
+ x (myanmar sign section - 104B)
+17D6 KHMER SIGN CAMNUC PII KUUH
+ * functions as colon or semicolon
+ x (division sign - 00F7)
+ x (tibetan mark gter tsheg - 0F14)
+17D7 KHMER SIGN LEK TOO
+ * repetition sign
+17D8 KHMER SIGN BEYYAL
+ * et cetera
+17D9 KHMER SIGN PHNAEK MUAN
+ * a list bullet
+ x (thai character fongman - 0E4F)
+17DA KHMER SIGN KOOMUUT
+ * indicates end of book or treatise
+ x (thai character khomut - 0E5B)
+@ Currency symbol
+17DB KHMER CURRENCY SYMBOL RIEL
+@ Sign
+17DC KHMER SIGN AVAKRAHASANYA
+ * rare, shows a deleted Sanskrit vowel, like an apostrophe
+@ Digits
+17E0 KHMER DIGIT ZERO
+17E1 KHMER DIGIT ONE
+17E2 KHMER DIGIT TWO
+17E3 KHMER DIGIT THREE
+17E4 KHMER DIGIT FOUR
+17E5 KHMER DIGIT FIVE
+17E6 KHMER DIGIT SIX
+17E7 KHMER DIGIT SEVEN
+17E8 KHMER DIGIT EIGHT
+17E9 KHMER DIGIT NINE
+@@ 1800 Mongolian 18AF
+@ Punctuation
+1800 MONGOLIAN BIRGA
+ x (tibetan mark initial yig mgo mdun ma - 0F04)
+1801 MONGOLIAN ELLIPSIS
+1802 MONGOLIAN COMMA
+1803 MONGOLIAN FULL STOP
+1804 MONGOLIAN COLON
+1805 MONGOLIAN FOUR DOTS
+ * marks the end of a chapter
+1806 MONGOLIAN TODO SOFT HYPHEN
+1807 MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER
+1808 MONGOLIAN MANCHU COMMA
+1809 MONGOLIAN MANCHU FULL STOP
+180A MONGOLIAN NIRUGU
+@ Format controls
+180B MONGOLIAN FREE VARIATION SELECTOR ONE
+180C MONGOLIAN FREE VARIATION SELECTOR TWO
+180D MONGOLIAN FREE VARIATION SELECTOR THREE
+180E MONGOLIAN VOWEL SEPARATOR
+@ Digits
+1810 MONGOLIAN DIGIT ZERO
+1811 MONGOLIAN DIGIT ONE
+1812 MONGOLIAN DIGIT TWO
+1813 MONGOLIAN DIGIT THREE
+1814 MONGOLIAN DIGIT FOUR
+1815 MONGOLIAN DIGIT FIVE
+1816 MONGOLIAN DIGIT SIX
+1817 MONGOLIAN DIGIT SEVEN
+1818 MONGOLIAN DIGIT EIGHT
+1819 MONGOLIAN DIGIT NINE
+@ Basic letters
+1820 MONGOLIAN LETTER A
+ x (cyrillic small letter a - 0430)
+1821 MONGOLIAN LETTER E
+ x (cyrillic small letter e - 044D)
+1822 MONGOLIAN LETTER I
+ x (cyrillic small letter i - 0438)
+1823 MONGOLIAN LETTER O
+ x (cyrillic small letter o - 043E)
+1824 MONGOLIAN LETTER U
+ x (cyrillic small letter u - 0443)
+1825 MONGOLIAN LETTER OE
+ x (cyrillic small letter barred o - 04E9)
+1826 MONGOLIAN LETTER UE
+ x (cyrillic small letter straight u - 04AF)
+1827 MONGOLIAN LETTER EE
+1828 MONGOLIAN LETTER NA
+ x (cyrillic small letter en - 043D)
+1829 MONGOLIAN LETTER ANG
+182A MONGOLIAN LETTER BA
+ x (cyrillic small letter be - 0431)
+182B MONGOLIAN LETTER PA
+ x (cyrillic small letter pe - 043F)
+182C MONGOLIAN LETTER QA
+ x (cyrillic small letter ha - 0445)
+182D MONGOLIAN LETTER GA
+ x (cyrillic small letter ghe - 0433)
+182E MONGOLIAN LETTER MA
+ x (cyrillic small letter em - 043C)
+182F MONGOLIAN LETTER LA
+ x (cyrillic small letter el - 043B)
+1830 MONGOLIAN LETTER SA
+ x (cyrillic small letter es - 0441)
+1831 MONGOLIAN LETTER SHA
+ x (cyrillic small letter sha - 0448)
+1832 MONGOLIAN LETTER TA
+ x (cyrillic small letter te - 0442)
+1833 MONGOLIAN LETTER DA
+ x (cyrillic small letter de - 0434)
+1834 MONGOLIAN LETTER CHA
+ x (cyrillic small letter che - 0447)
+1835 MONGOLIAN LETTER JA
+ x (cyrillic small letter zhe - 0436)
+1836 MONGOLIAN LETTER YA
+ x (cyrillic small letter short i - 0439)
+1837 MONGOLIAN LETTER RA
+ x (cyrillic small letter er - 0440)
+1838 MONGOLIAN LETTER WA
+ x (cyrillic small letter ve - 0432)
+1839 MONGOLIAN LETTER FA
+ x (cyrillic small letter ef - 0444)
+183A MONGOLIAN LETTER KA
+ x (cyrillic small letter ha - 0445)
+183B MONGOLIAN LETTER KHA
+ x (cyrillic small letter ka - 043A)
+183C MONGOLIAN LETTER TSA
+ x (cyrillic small letter tse - 0446)
+183D MONGOLIAN LETTER ZA
+ x (cyrillic small letter ze - 0437)
+183E MONGOLIAN LETTER HAA
+ x (cyrillic small letter ha - 0445)
+183F MONGOLIAN LETTER ZRA
+ x (cyrillic small letter zhe - 0436)
+1840 MONGOLIAN LETTER LHA
+1841 MONGOLIAN LETTER ZHI
+1842 MONGOLIAN LETTER CHI
+@ Todo letters
+1843 MONGOLIAN LETTER TODO LONG VOWEL SIGN
+1844 MONGOLIAN LETTER TODO E
+1845 MONGOLIAN LETTER TODO I
+1846 MONGOLIAN LETTER TODO O
+1847 MONGOLIAN LETTER TODO U
+1848 MONGOLIAN LETTER TODO OE
+1849 MONGOLIAN LETTER TODO UE
+184A MONGOLIAN LETTER TODO ANG
+184B MONGOLIAN LETTER TODO BA
+184C MONGOLIAN LETTER TODO PA
+184D MONGOLIAN LETTER TODO QA
+184E MONGOLIAN LETTER TODO GA
+184F MONGOLIAN LETTER TODO MA
+1850 MONGOLIAN LETTER TODO TA
+1851 MONGOLIAN LETTER TODO DA
+1852 MONGOLIAN LETTER TODO CHA
+1853 MONGOLIAN LETTER TODO JA
+1854 MONGOLIAN LETTER TODO TSA
+1855 MONGOLIAN LETTER TODO YA
+1856 MONGOLIAN LETTER TODO WA
+1857 MONGOLIAN LETTER TODO KA
+1858 MONGOLIAN LETTER TODO GAA
+1859 MONGOLIAN LETTER TODO HAA
+185A MONGOLIAN LETTER TODO JIA
+185B MONGOLIAN LETTER TODO NIA
+185C MONGOLIAN LETTER TODO DZA
+@ Sibe letters
+185D MONGOLIAN LETTER SIBE E
+185E MONGOLIAN LETTER SIBE I
+185F MONGOLIAN LETTER SIBE IY
+1860 MONGOLIAN LETTER SIBE UE
+1861 MONGOLIAN LETTER SIBE U
+1862 MONGOLIAN LETTER SIBE ANG
+1863 MONGOLIAN LETTER SIBE KA
+1864 MONGOLIAN LETTER SIBE GA
+1865 MONGOLIAN LETTER SIBE HA
+1866 MONGOLIAN LETTER SIBE PA
+1867 MONGOLIAN LETTER SIBE SHA
+1868 MONGOLIAN LETTER SIBE TA
+1869 MONGOLIAN LETTER SIBE DA
+186A MONGOLIAN LETTER SIBE JA
+186B MONGOLIAN LETTER SIBE FA
+186C MONGOLIAN LETTER SIBE GAA
+186D MONGOLIAN LETTER SIBE HAA
+186E MONGOLIAN LETTER SIBE TSA
+186F MONGOLIAN LETTER SIBE ZA
+1870 MONGOLIAN LETTER SIBE RAA
+1871 MONGOLIAN LETTER SIBE CHA
+1872 MONGOLIAN LETTER SIBE ZHA
+@ Manchu letters
+1873 MONGOLIAN LETTER MANCHU I
+1874 MONGOLIAN LETTER MANCHU KA
+1875 MONGOLIAN LETTER MANCHU RA
+1876 MONGOLIAN LETTER MANCHU FA
+1877 MONGOLIAN LETTER MANCHU ZHA
+@ Extensions for Sanskrit and Tibetan
+1880 MONGOLIAN LETTER ALI GALI ANUSVARA ONE
+1881 MONGOLIAN LETTER ALI GALI VISARGA ONE
+1882 MONGOLIAN LETTER ALI GALI DAMARU
+1883 MONGOLIAN LETTER ALI GALI UBADAMA
+1884 MONGOLIAN LETTER ALI GALI INVERTED UBADAMA
+1885 MONGOLIAN LETTER ALI GALI BALUDA
+1886 MONGOLIAN LETTER ALI GALI THREE BALUDA
+1887 MONGOLIAN LETTER ALI GALI A
+1888 MONGOLIAN LETTER ALI GALI I
+1889 MONGOLIAN LETTER ALI GALI KA
+188A MONGOLIAN LETTER ALI GALI NGA
+188B MONGOLIAN LETTER ALI GALI CA
+188C MONGOLIAN LETTER ALI GALI TTA
+188D MONGOLIAN LETTER ALI GALI TTHA
+188E MONGOLIAN LETTER ALI GALI DDA
+188F MONGOLIAN LETTER ALI GALI NNA
+1890 MONGOLIAN LETTER ALI GALI TA
+1891 MONGOLIAN LETTER ALI GALI DA
+1892 MONGOLIAN LETTER ALI GALI PA
+1893 MONGOLIAN LETTER ALI GALI PHA
+1894 MONGOLIAN LETTER ALI GALI SSA
+1895 MONGOLIAN LETTER ALI GALI ZHA
+1896 MONGOLIAN LETTER ALI GALI ZA
+1897 MONGOLIAN LETTER ALI GALI AH
+1898 MONGOLIAN LETTER TODO ALI GALI TA
+1899 MONGOLIAN LETTER TODO ALI GALI ZHA
+189A MONGOLIAN LETTER MANCHU ALI GALI GHA
+189B MONGOLIAN LETTER MANCHU ALI GALI NGA
+189C MONGOLIAN LETTER MANCHU ALI GALI CA
+189D MONGOLIAN LETTER MANCHU ALI GALI JHA
+189E MONGOLIAN LETTER MANCHU ALI GALI TTA
+189F MONGOLIAN LETTER MANCHU ALI GALI DDHA
+18A0 MONGOLIAN LETTER MANCHU ALI GALI TA
+18A1 MONGOLIAN LETTER MANCHU ALI GALI DHA
+18A2 MONGOLIAN LETTER MANCHU ALI GALI SSA
+18A3 MONGOLIAN LETTER MANCHU ALI GALI CYA
+18A4 MONGOLIAN LETTER MANCHU ALI GALI ZHA
+18A5 MONGOLIAN LETTER MANCHU ALI GALI ZA
+18A6 MONGOLIAN LETTER ALI GALI HALF U
+18A7 MONGOLIAN LETTER ALI GALI HALF YA
+18A8 MONGOLIAN LETTER MANCHU ALI GALI BHA
+18A9 MONGOLIAN LETTER ALI GALI DAGALGA
@@ 1E00 Latin Extended Additional 1EFF
-@ Latin extended additional
+@ Latin general use extensions
1E00 LATIN CAPITAL LETTER A WITH RING BELOW
- : 0041 + 0325
+ : 0041 0325
1E01 LATIN SMALL LETTER A WITH RING BELOW
- : 0061 + 0325
+ : 0061 0325
1E02 LATIN CAPITAL LETTER B WITH DOT ABOVE
- : 0042 + 0307
+ : 0042 0307
1E03 LATIN SMALL LETTER B WITH DOT ABOVE
- : 0062 + 0307
+ * Irish Gaelic (old orthography)
+ : 0062 0307
1E04 LATIN CAPITAL LETTER B WITH DOT BELOW
- : 0042 + 0323
+ : 0042 0323
1E05 LATIN SMALL LETTER B WITH DOT BELOW
- : 0062 + 0323
+ : 0062 0323
1E06 LATIN CAPITAL LETTER B WITH LINE BELOW
- : 0042 + 0331
+ : 0042 0331
1E07 LATIN SMALL LETTER B WITH LINE BELOW
- : 0062 + 0331
+ : 0062 0331
1E08 LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE
- : 00C7 + 0301
+ : 00C7 0301
1E09 LATIN SMALL LETTER C WITH CEDILLA AND ACUTE
- : 00E7 + 0301
+ : 00E7 0301
1E0A LATIN CAPITAL LETTER D WITH DOT ABOVE
- : 0044 + 0307
+ : 0044 0307
1E0B LATIN SMALL LETTER D WITH DOT ABOVE
- : 0064 + 0307
+ * Irish Gaelic (old orthography)
+ : 0064 0307
1E0C LATIN CAPITAL LETTER D WITH DOT BELOW
- : 0044 + 0323
+ : 0044 0323
1E0D LATIN SMALL LETTER D WITH DOT BELOW
- : 0064 + 0323
+ * Indic transliteration
+ : 0064 0323
1E0E LATIN CAPITAL LETTER D WITH LINE BELOW
- : 0044 + 0331
+ : 0044 0331
1E0F LATIN SMALL LETTER D WITH LINE BELOW
- : 0064 + 0331
+ : 0064 0331
1E10 LATIN CAPITAL LETTER D WITH CEDILLA
- : 0044 + 0327
+ : 0044 0327
1E11 LATIN SMALL LETTER D WITH CEDILLA
- : 0064 + 0327
+ * Livonian
+ : 0064 0327
1E12 LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW
- : 0044 + 032D
+ : 0044 032D
1E13 LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW
- : 0064 + 032D
+ : 0064 032D
1E14 LATIN CAPITAL LETTER E WITH MACRON AND GRAVE
- : 0112 + 0300
+ : 0112 0300
1E15 LATIN SMALL LETTER E WITH MACRON AND GRAVE
- : 0113 + 0300
+ : 0113 0300
1E16 LATIN CAPITAL LETTER E WITH MACRON AND ACUTE
- : 0112 + 0301
+ : 0112 0301
1E17 LATIN SMALL LETTER E WITH MACRON AND ACUTE
- : 0113 + 0301
+ : 0113 0301
1E18 LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW
- : 0045 + 032D
+ : 0045 032D
1E19 LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW
- : 0065 + 032D
+ : 0065 032D
1E1A LATIN CAPITAL LETTER E WITH TILDE BELOW
- : 0045 + 0330
+ : 0045 0330
1E1B LATIN SMALL LETTER E WITH TILDE BELOW
- : 0065 + 0330
+ : 0065 0330
1E1C LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE
- : 0114 + 0327
+ : 0228 0306
1E1D LATIN SMALL LETTER E WITH CEDILLA AND BREVE
- : 0115 + 0327
+ : 0229 0306
1E1E LATIN CAPITAL LETTER F WITH DOT ABOVE
- : 0046 + 0307
+ : 0046 0307
1E1F LATIN SMALL LETTER F WITH DOT ABOVE
- : 0066 + 0307
+ * Irish Gaelic (old orthography)
+ : 0066 0307
1E20 LATIN CAPITAL LETTER G WITH MACRON
- : 0047 + 0304
+ : 0047 0304
1E21 LATIN SMALL LETTER G WITH MACRON
- : 0067 + 0304
+ : 0067 0304
1E22 LATIN CAPITAL LETTER H WITH DOT ABOVE
- : 0048 + 0307
+ : 0048 0307
1E23 LATIN SMALL LETTER H WITH DOT ABOVE
- : 0068 + 0307
+ : 0068 0307
1E24 LATIN CAPITAL LETTER H WITH DOT BELOW
- : 0048 + 0323
+ : 0048 0323
1E25 LATIN SMALL LETTER H WITH DOT BELOW
- : 0068 + 0323
+ * Indic transliteration
+ : 0068 0323
1E26 LATIN CAPITAL LETTER H WITH DIAERESIS
- : 0048 + 0308
+ : 0048 0308
1E27 LATIN SMALL LETTER H WITH DIAERESIS
- : 0068 + 0308
+ : 0068 0308
1E28 LATIN CAPITAL LETTER H WITH CEDILLA
- : 0048 + 0327
+ : 0048 0327
1E29 LATIN SMALL LETTER H WITH CEDILLA
- : 0068 + 0327
+ : 0068 0327
1E2A LATIN CAPITAL LETTER H WITH BREVE BELOW
- : 0048 + 032E
+ : 0048 032E
1E2B LATIN SMALL LETTER H WITH BREVE BELOW
- : 0068 + 032E
+ * Semitic transliteration
+ : 0068 032E
1E2C LATIN CAPITAL LETTER I WITH TILDE BELOW
- : 0049 + 0330
+ : 0049 0330
1E2D LATIN SMALL LETTER I WITH TILDE BELOW
- : 0069 + 0330
+ : 0069 0330
1E2E LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE
- : 00CF + 0301
+ : 00CF 0301
1E2F LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE
- : 00EF + 0301
+ : 00EF 0301
1E30 LATIN CAPITAL LETTER K WITH ACUTE
- : 004B + 0301
+ : 004B 0301
1E31 LATIN SMALL LETTER K WITH ACUTE
- : 006B + 0301
+ : 006B 0301
1E32 LATIN CAPITAL LETTER K WITH DOT BELOW
- : 004B + 0323
+ : 004B 0323
1E33 LATIN SMALL LETTER K WITH DOT BELOW
- : 006B + 0323
+ : 006B 0323
1E34 LATIN CAPITAL LETTER K WITH LINE BELOW
- : 004B + 0331
+ : 004B 0331
1E35 LATIN SMALL LETTER K WITH LINE BELOW
- : 006B + 0331
+ : 006B 0331
1E36 LATIN CAPITAL LETTER L WITH DOT BELOW
- : 004C + 0323
+ : 004C 0323
1E37 LATIN SMALL LETTER L WITH DOT BELOW
- : 006C + 0323
+ * Indic transliteration
+ : 006C 0323
1E38 LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON
- : 1E36 + 0304
+ : 1E36 0304
1E39 LATIN SMALL LETTER L WITH DOT BELOW AND MACRON
- : 1E37 + 0304
+ * Indic transliteration
+ : 1E37 0304
1E3A LATIN CAPITAL LETTER L WITH LINE BELOW
- : 004C + 0331
+ : 004C 0331
1E3B LATIN SMALL LETTER L WITH LINE BELOW
- : 006C + 0331
+ * Indic transliteration
+ : 006C 0331
1E3C LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW
- : 004C + 032D
+ : 004C 032D
1E3D LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW
- : 006C + 032D
+ : 006C 032D
1E3E LATIN CAPITAL LETTER M WITH ACUTE
- : 004D + 0301
+ : 004D 0301
1E3F LATIN SMALL LETTER M WITH ACUTE
- : 006D + 0301
+ : 006D 0301
1E40 LATIN CAPITAL LETTER M WITH DOT ABOVE
- : 004D + 0307
+ : 004D 0307
1E41 LATIN SMALL LETTER M WITH DOT ABOVE
- : 006D + 0307
+ * Irish Gaelic (old orthography)
+ : 006D 0307
1E42 LATIN CAPITAL LETTER M WITH DOT BELOW
- : 004D + 0323
+ : 004D 0323
1E43 LATIN SMALL LETTER M WITH DOT BELOW
- : 006D + 0323
+ * Indic transliteration
+ : 006D 0323
1E44 LATIN CAPITAL LETTER N WITH DOT ABOVE
- : 004E + 0307
+ : 004E 0307
1E45 LATIN SMALL LETTER N WITH DOT ABOVE
- : 006E + 0307
+ * Indic transliteration
+ : 006E 0307
1E46 LATIN CAPITAL LETTER N WITH DOT BELOW
- : 004E + 0323
+ : 004E 0323
1E47 LATIN SMALL LETTER N WITH DOT BELOW
- : 006E + 0323
+ * Indic transliteration
+ : 006E 0323
1E48 LATIN CAPITAL LETTER N WITH LINE BELOW
- : 004E + 0331
+ : 004E 0331
1E49 LATIN SMALL LETTER N WITH LINE BELOW
- : 006E + 0331
+ * Indic transliteration
+ : 006E 0331
1E4A LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW
- : 004E + 032D
+ : 004E 032D
1E4B LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW
- : 006E + 032D
+ : 006E 032D
1E4C LATIN CAPITAL LETTER O WITH TILDE AND ACUTE
- : 00D5 + 0301
+ : 00D5 0301
1E4D LATIN SMALL LETTER O WITH TILDE AND ACUTE
- : 00F5 + 0301
+ : 00F5 0301
1E4E LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS
- : 00D5 + 0308
+ : 00D5 0308
1E4F LATIN SMALL LETTER O WITH TILDE AND DIAERESIS
- : 00F5 + 0308
+ : 00F5 0308
1E50 LATIN CAPITAL LETTER O WITH MACRON AND GRAVE
- : 014C + 0300
+ : 014C 0300
1E51 LATIN SMALL LETTER O WITH MACRON AND GRAVE
- : 014D + 0300
+ : 014D 0300
1E52 LATIN CAPITAL LETTER O WITH MACRON AND ACUTE
- : 014C + 0301
+ : 014C 0301
1E53 LATIN SMALL LETTER O WITH MACRON AND ACUTE
- : 014D + 0301
+ : 014D 0301
1E54 LATIN CAPITAL LETTER P WITH ACUTE
- : 0050 + 0301
+ : 0050 0301
1E55 LATIN SMALL LETTER P WITH ACUTE
- : 0070 + 0301
+ : 0070 0301
1E56 LATIN CAPITAL LETTER P WITH DOT ABOVE
- : 0050 + 0307
+ : 0050 0307
1E57 LATIN SMALL LETTER P WITH DOT ABOVE
- : 0070 + 0307
+ * Irish Gaelic (old orthography)
+ : 0070 0307
1E58 LATIN CAPITAL LETTER R WITH DOT ABOVE
- : 0052 + 0307
+ : 0052 0307
1E59 LATIN SMALL LETTER R WITH DOT ABOVE
- : 0072 + 0307
+ : 0072 0307
1E5A LATIN CAPITAL LETTER R WITH DOT BELOW
- : 0052 + 0323
+ : 0052 0323
1E5B LATIN SMALL LETTER R WITH DOT BELOW
- : 0072 + 0323
+ * Indic transliteration
+ : 0072 0323
1E5C LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON
- : 1E5A + 0304
+ : 1E5A 0304
1E5D LATIN SMALL LETTER R WITH DOT BELOW AND MACRON
- : 1E5B + 0304
+ * Indic transliteration
+ : 1E5B 0304
1E5E LATIN CAPITAL LETTER R WITH LINE BELOW
- : 0052 + 0331
+ : 0052 0331
1E5F LATIN SMALL LETTER R WITH LINE BELOW
- : 0072 + 0331
+ * Indic transliteration
+ : 0072 0331
1E60 LATIN CAPITAL LETTER S WITH DOT ABOVE
- : 0053 + 0307
+ : 0053 0307
1E61 LATIN SMALL LETTER S WITH DOT ABOVE
- : 0073 + 0307
+ * Irish Gaelic (old orthography)
+ : 0073 0307
1E62 LATIN CAPITAL LETTER S WITH DOT BELOW
- : 0053 + 0323
+ : 0053 0323
1E63 LATIN SMALL LETTER S WITH DOT BELOW
- : 0073 + 0323
+ * Indic transliteration
+ : 0073 0323
1E64 LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE
- : 015A + 0307
+ : 015A 0307
1E65 LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE
- : 015B + 0307
+ : 015B 0307
1E66 LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE
- : 0160 + 0307
+ : 0160 0307
1E67 LATIN SMALL LETTER S WITH CARON AND DOT ABOVE
- : 0161 + 0307
+ : 0161 0307
1E68 LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE
- : 1E62 + 0307
+ : 1E62 0307
1E69 LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE
- : 1E63 + 0307
+ : 1E63 0307
1E6A LATIN CAPITAL LETTER T WITH DOT ABOVE
- : 0054 + 0307
+ : 0054 0307
1E6B LATIN SMALL LETTER T WITH DOT ABOVE
- : 0074 + 0307
+ * Irish Gaelic (old orthography)
+ : 0074 0307
1E6C LATIN CAPITAL LETTER T WITH DOT BELOW
- : 0054 + 0323
+ : 0054 0323
1E6D LATIN SMALL LETTER T WITH DOT BELOW
- : 0074 + 0323
+ * Indic transliteration
+ : 0074 0323
1E6E LATIN CAPITAL LETTER T WITH LINE BELOW
- : 0054 + 0331
+ : 0054 0331
1E6F LATIN SMALL LETTER T WITH LINE BELOW
- : 0074 + 0331
+ * Semitic transliteration
+ : 0074 0331
1E70 LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW
- : 0054 + 032D
+ : 0054 032D
1E71 LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW
- : 0074 + 032D
+ : 0074 032D
1E72 LATIN CAPITAL LETTER U WITH DIAERESIS BELOW
- : 0055 + 0324
+ : 0055 0324
1E73 LATIN SMALL LETTER U WITH DIAERESIS BELOW
- : 0075 + 0324
+ : 0075 0324
1E74 LATIN CAPITAL LETTER U WITH TILDE BELOW
- : 0055 + 0330
+ : 0055 0330
1E75 LATIN SMALL LETTER U WITH TILDE BELOW
- : 0075 + 0330
+ : 0075 0330
1E76 LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW
- : 0055 + 032D
+ : 0055 032D
1E77 LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW
- : 0075 + 032D
+ : 0075 032D
1E78 LATIN CAPITAL LETTER U WITH TILDE AND ACUTE
- : 0168 + 0301
+ : 0168 0301
1E79 LATIN SMALL LETTER U WITH TILDE AND ACUTE
- : 0169 + 0301
+ : 0169 0301
1E7A LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS
- : 016A + 0308
+ : 016A 0308
1E7B LATIN SMALL LETTER U WITH MACRON AND DIAERESIS
- : 016B + 0308
+ : 016B 0308
1E7C LATIN CAPITAL LETTER V WITH TILDE
- : 0056 + 0303
+ : 0056 0303
1E7D LATIN SMALL LETTER V WITH TILDE
- : 0076 + 0303
+ : 0076 0303
1E7E LATIN CAPITAL LETTER V WITH DOT BELOW
- : 0056 + 0323
+ : 0056 0323
1E7F LATIN SMALL LETTER V WITH DOT BELOW
- : 0076 + 0323
+ : 0076 0323
1E80 LATIN CAPITAL LETTER W WITH GRAVE
- : 0057 + 0300
+ : 0057 0300
1E81 LATIN SMALL LETTER W WITH GRAVE
- : 0077 + 0300
+ * Welsh
+ : 0077 0300
1E82 LATIN CAPITAL LETTER W WITH ACUTE
- : 0057 + 0301
+ : 0057 0301
1E83 LATIN SMALL LETTER W WITH ACUTE
- : 0077 + 0301
+ * Welsh
+ : 0077 0301
1E84 LATIN CAPITAL LETTER W WITH DIAERESIS
- : 0057 + 0308
+ : 0057 0308
1E85 LATIN SMALL LETTER W WITH DIAERESIS
- : 0077 + 0308
+ * Welsh
+ : 0077 0308
1E86 LATIN CAPITAL LETTER W WITH DOT ABOVE
- : 0057 + 0307
+ : 0057 0307
1E87 LATIN SMALL LETTER W WITH DOT ABOVE
- : 0077 + 0307
+ : 0077 0307
1E88 LATIN CAPITAL LETTER W WITH DOT BELOW
- : 0057 + 0323
+ : 0057 0323
1E89 LATIN SMALL LETTER W WITH DOT BELOW
- : 0077 + 0323
+ : 0077 0323
1E8A LATIN CAPITAL LETTER X WITH DOT ABOVE
- : 0058 + 0307
+ : 0058 0307
1E8B LATIN SMALL LETTER X WITH DOT ABOVE
- : 0078 + 0307
+ : 0078 0307
1E8C LATIN CAPITAL LETTER X WITH DIAERESIS
- : 0058 + 0308
+ : 0058 0308
1E8D LATIN SMALL LETTER X WITH DIAERESIS
- : 0078 + 0308
+ : 0078 0308
1E8E LATIN CAPITAL LETTER Y WITH DOT ABOVE
- : 0059 + 0307
+ : 0059 0307
1E8F LATIN SMALL LETTER Y WITH DOT ABOVE
- : 0079 + 0307
+ : 0079 0307
1E90 LATIN CAPITAL LETTER Z WITH CIRCUMFLEX
- : 005A + 0302
+ : 005A 0302
1E91 LATIN SMALL LETTER Z WITH CIRCUMFLEX
- : 007A + 0302
+ : 007A 0302
1E92 LATIN CAPITAL LETTER Z WITH DOT BELOW
- : 005A + 0323
+ : 005A 0323
1E93 LATIN SMALL LETTER Z WITH DOT BELOW
- : 007A + 0323
+ * Indic transliteration
+ : 007A 0323
1E94 LATIN CAPITAL LETTER Z WITH LINE BELOW
- : 005A + 0331
+ : 005A 0331
1E95 LATIN SMALL LETTER Z WITH LINE BELOW
- : 007A + 0331
+ * Semitic transliteration
+ : 007A 0331
1E96 LATIN SMALL LETTER H WITH LINE BELOW
- : 0068 + 0331
+ * Semitic transliteration
+ : 0068 0331
1E97 LATIN SMALL LETTER T WITH DIAERESIS
- : 0074 + 0308
+ : 0074 0308
1E98 LATIN SMALL LETTER W WITH RING ABOVE
- : 0077 + 030A
+ : 0077 030A
1E99 LATIN SMALL LETTER Y WITH RING ABOVE
- : 0079 + 030A
+ : 0079 030A
1E9A LATIN SMALL LETTER A WITH RIGHT HALF RING
+ # 0061 02BE
1E9B LATIN SMALL LETTER LONG S WITH DOT ABOVE
- : 017F + 0307
-1E9C <reserved>
-1E9D <reserved>
-1E9E <reserved>
-1E9F <reserved>
+ * in current use in Gaelic types (as glyph variant of 1E61)
+ : 017F 0307
+@ Latin extensions for Vietnamese
1EA0 LATIN CAPITAL LETTER A WITH DOT BELOW
- : 0041 + 0323
+ : 0041 0323
1EA1 LATIN SMALL LETTER A WITH DOT BELOW
- : 0061 + 0323
+ : 0061 0323
1EA2 LATIN CAPITAL LETTER A WITH HOOK ABOVE
- : 0041 + 0309
+ : 0041 0309
1EA3 LATIN SMALL LETTER A WITH HOOK ABOVE
- : 0061 + 0309
+ : 0061 0309
1EA4 LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE
- : 00C2 + 0301
+ : 00C2 0301
1EA5 LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE
- : 00E2 + 0301
+ : 00E2 0301
1EA6 LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE
- : 00C2 + 0300
+ : 00C2 0300
1EA7 LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE
- : 00E2 + 0300
+ : 00E2 0300
1EA8 LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
- : 00C2 + 0309
+ : 00C2 0309
1EA9 LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
- : 00E2 + 0309
+ : 00E2 0309
1EAA LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE
- : 00C2 + 0303
+ : 00C2 0303
1EAB LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
- : 00E2 + 0303
+ : 00E2 0303
1EAC LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW
- : 00C2 + 0323
+ : 1EA0 0302
1EAD LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW
- : 00E2 + 0323
+ : 1EA1 0302
1EAE LATIN CAPITAL LETTER A WITH BREVE AND ACUTE
- : 0102 + 0301
+ : 0102 0301
1EAF LATIN SMALL LETTER A WITH BREVE AND ACUTE
- : 0103 + 0301
+ : 0103 0301
1EB0 LATIN CAPITAL LETTER A WITH BREVE AND GRAVE
- : 0102 + 0300
+ : 0102 0300
1EB1 LATIN SMALL LETTER A WITH BREVE AND GRAVE
- : 0103 + 0300
+ : 0103 0300
1EB2 LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE
- : 0102 + 0309
+ : 0102 0309
1EB3 LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE
- : 0103 + 0309
+ : 0103 0309
1EB4 LATIN CAPITAL LETTER A WITH BREVE AND TILDE
- : 0102 + 0303
+ : 0102 0303
1EB5 LATIN SMALL LETTER A WITH BREVE AND TILDE
- : 0103 + 0303
+ : 0103 0303
1EB6 LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW
- : 0102 + 0323
+ : 1EA0 0306
1EB7 LATIN SMALL LETTER A WITH BREVE AND DOT BELOW
- : 0103 + 0323
+ : 1EA1 0306
1EB8 LATIN CAPITAL LETTER E WITH DOT BELOW
- : 0045 + 0323
+ : 0045 0323
1EB9 LATIN SMALL LETTER E WITH DOT BELOW
- : 0065 + 0323
+ : 0065 0323
1EBA LATIN CAPITAL LETTER E WITH HOOK ABOVE
- : 0045 + 0309
+ : 0045 0309
1EBB LATIN SMALL LETTER E WITH HOOK ABOVE
- : 0065 + 0309
+ : 0065 0309
1EBC LATIN CAPITAL LETTER E WITH TILDE
- : 0045 + 0303
+ : 0045 0303
1EBD LATIN SMALL LETTER E WITH TILDE
- : 0065 + 0303
+ : 0065 0303
1EBE LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE
- : 00CA + 0301
+ : 00CA 0301
1EBF LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
- : 00EA + 0301
+ : 00EA 0301
1EC0 LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE
- : 00CA + 0300
+ : 00CA 0300
1EC1 LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
- : 00EA + 0300
+ : 00EA 0300
1EC2 LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
- : 00CA + 0309
+ : 00CA 0309
1EC3 LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
- : 00EA + 0309
+ : 00EA 0309
1EC4 LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE
- : 00CA + 0303
+ : 00CA 0303
1EC5 LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
- : 00EA + 0303
+ : 00EA 0303
1EC6 LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW
- : 00CA + 0323
+ : 1EB8 0302
1EC7 LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
- : 00EA + 0323
+ : 1EB9 0302
1EC8 LATIN CAPITAL LETTER I WITH HOOK ABOVE
- : 0049 + 0309
+ : 0049 0309
1EC9 LATIN SMALL LETTER I WITH HOOK ABOVE
- : 0069 + 0309
+ : 0069 0309
1ECA LATIN CAPITAL LETTER I WITH DOT BELOW
- : 0049 + 0323
+ : 0049 0323
1ECB LATIN SMALL LETTER I WITH DOT BELOW
- : 0069 + 0323
+ : 0069 0323
1ECC LATIN CAPITAL LETTER O WITH DOT BELOW
- : 004F + 0323
+ : 004F 0323
1ECD LATIN SMALL LETTER O WITH DOT BELOW
- : 006F + 0323
+ : 006F 0323
1ECE LATIN CAPITAL LETTER O WITH HOOK ABOVE
- : 004F + 0309
+ : 004F 0309
1ECF LATIN SMALL LETTER O WITH HOOK ABOVE
- : 006F + 0309
+ : 006F 0309
1ED0 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE
- : 00D4 + 0301
+ : 00D4 0301
1ED1 LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE
- : 00F4 + 0301
+ : 00F4 0301
1ED2 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE
- : 00D4 + 0300
+ : 00D4 0300
1ED3 LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE
- : 00F4 + 0300
+ : 00F4 0300
1ED4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
- : 00D4 + 0309
+ : 00D4 0309
1ED5 LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
- : 00F4 + 0309
+ : 00F4 0309
1ED6 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE
- : 00D4 + 0303
+ : 00D4 0303
1ED7 LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE
- : 00F4 + 0303
+ : 00F4 0303
1ED8 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW
- : 00D4 + 0323
+ : 1ECC 0302
1ED9 LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW
- : 00F4 + 0323
+ : 1ECD 0302
1EDA LATIN CAPITAL LETTER O WITH HORN AND ACUTE
- : 01A0 + 0301
+ : 01A0 0301
1EDB LATIN SMALL LETTER O WITH HORN AND ACUTE
- : 01A1 + 0301
+ : 01A1 0301
1EDC LATIN CAPITAL LETTER O WITH HORN AND GRAVE
- : 01A0 + 0300
+ : 01A0 0300
1EDD LATIN SMALL LETTER O WITH HORN AND GRAVE
- : 01A1 + 0300
+ : 01A1 0300
1EDE LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE
- : 01A0 + 0309
+ : 01A0 0309
1EDF LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE
- : 01A1 + 0309
+ : 01A1 0309
1EE0 LATIN CAPITAL LETTER O WITH HORN AND TILDE
- : 01A0 + 0303
+ : 01A0 0303
1EE1 LATIN SMALL LETTER O WITH HORN AND TILDE
- : 01A1 + 0303
+ : 01A1 0303
1EE2 LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW
- : 01A0 + 0323
+ : 01A0 0323
1EE3 LATIN SMALL LETTER O WITH HORN AND DOT BELOW
- : 01A1 + 0323
+ : 01A1 0323
1EE4 LATIN CAPITAL LETTER U WITH DOT BELOW
- : 0055 + 0323
+ : 0055 0323
1EE5 LATIN SMALL LETTER U WITH DOT BELOW
- : 0075 + 0323
+ : 0075 0323
1EE6 LATIN CAPITAL LETTER U WITH HOOK ABOVE
- : 0055 + 0309
+ : 0055 0309
1EE7 LATIN SMALL LETTER U WITH HOOK ABOVE
- : 0075 + 0309
+ : 0075 0309
1EE8 LATIN CAPITAL LETTER U WITH HORN AND ACUTE
- : 01AF + 0301
+ : 01AF 0301
1EE9 LATIN SMALL LETTER U WITH HORN AND ACUTE
- : 01B0 + 0301
+ : 01B0 0301
1EEA LATIN CAPITAL LETTER U WITH HORN AND GRAVE
- : 01AF + 0300
+ : 01AF 0300
1EEB LATIN SMALL LETTER U WITH HORN AND GRAVE
- : 01B0 + 0300
+ : 01B0 0300
1EEC LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE
- : 01AF + 0309
+ : 01AF 0309
1EED LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE
- : 01B0 + 0309
+ : 01B0 0309
1EEE LATIN CAPITAL LETTER U WITH HORN AND TILDE
- : 01AF + 0303
+ : 01AF 0303
1EEF LATIN SMALL LETTER U WITH HORN AND TILDE
- : 01B0 + 0303
+ : 01B0 0303
1EF0 LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW
- : 01AF + 0323
+ : 01AF 0323
1EF1 LATIN SMALL LETTER U WITH HORN AND DOT BELOW
- : 01B0 + 0323
+ : 01B0 0323
1EF2 LATIN CAPITAL LETTER Y WITH GRAVE
- : 0059 + 0300
+ : 0059 0300
1EF3 LATIN SMALL LETTER Y WITH GRAVE
- : 0079 + 0300
+ * Welsh
+ : 0079 0300
1EF4 LATIN CAPITAL LETTER Y WITH DOT BELOW
- : 0059 + 0323
+ : 0059 0323
1EF5 LATIN SMALL LETTER Y WITH DOT BELOW
- : 0079 + 0323
+ : 0079 0323
1EF6 LATIN CAPITAL LETTER Y WITH HOOK ABOVE
- : 0059 + 0309
+ : 0059 0309
1EF7 LATIN SMALL LETTER Y WITH HOOK ABOVE
- : 0079 + 0309
+ : 0079 0309
1EF8 LATIN CAPITAL LETTER Y WITH TILDE
- : 0059 + 0303
+ : 0059 0303
1EF9 LATIN SMALL LETTER Y WITH TILDE
- : 0079 + 0303
+ : 0079 0303
@@ 1F00 Greek Extended 1FFF
-@ Greek extended
+@ Precomposed polytonic Greek
1F00 GREEK SMALL LETTER ALPHA WITH PSILI
- : 03B1 + 0313
+ : 03B1 0313
1F01 GREEK SMALL LETTER ALPHA WITH DASIA
- : 03B1 + 0314
+ : 03B1 0314
1F02 GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA
- : 1F00 + 0300
+ : 1F00 0300
1F03 GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA
- : 1F01 + 0300
+ : 1F01 0300
1F04 GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA
- : 1F00 + 0301
+ : 1F00 0301
1F05 GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA
- : 1F01 + 0301
+ : 1F01 0301
1F06 GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI
- : 1F00 + 0342
+ : 1F00 0342
1F07 GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI
- : 1F01 + 0342
+ : 1F01 0342
1F08 GREEK CAPITAL LETTER ALPHA WITH PSILI
- : 0391 + 0313
+ : 0391 0313
1F09 GREEK CAPITAL LETTER ALPHA WITH DASIA
- : 0391 + 0314
+ : 0391 0314
1F0A GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA
- : 1F08 + 0300
+ : 1F08 0300
1F0B GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA
- : 1F09 + 0300
+ : 1F09 0300
1F0C GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA
- : 1F08 + 0301
+ : 1F08 0301
1F0D GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA
- : 1F09 + 0301
+ : 1F09 0301
1F0E GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI
- : 1F08 + 0342
+ : 1F08 0342
1F0F GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI
- : 1F09 + 0342
+ : 1F09 0342
1F10 GREEK SMALL LETTER EPSILON WITH PSILI
- : 03B5 + 0313
+ : 03B5 0313
1F11 GREEK SMALL LETTER EPSILON WITH DASIA
- : 03B5 + 0314
+ : 03B5 0314
1F12 GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA
- : 1F10 + 0300
+ : 1F10 0300
1F13 GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA
- : 1F11 + 0300
+ : 1F11 0300
1F14 GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA
- : 1F10 + 0301
+ : 1F10 0301
1F15 GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA
- : 1F11 + 0301
-1F16 <reserved>
-1F17 <reserved>
+ : 1F11 0301
1F18 GREEK CAPITAL LETTER EPSILON WITH PSILI
- : 0395 + 0313
+ : 0395 0313
1F19 GREEK CAPITAL LETTER EPSILON WITH DASIA
- : 0395 + 0314
+ : 0395 0314
1F1A GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA
- : 1F18 + 0300
+ : 1F18 0300
1F1B GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA
- : 1F19 + 0300
+ : 1F19 0300
1F1C GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA
- : 1F18 + 0301
+ : 1F18 0301
1F1D GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA
- : 1F19 + 0301
-1F1E <reserved>
-1F1F <reserved>
+ : 1F19 0301
1F20 GREEK SMALL LETTER ETA WITH PSILI
- : 03B7 + 0313
+ : 03B7 0313
1F21 GREEK SMALL LETTER ETA WITH DASIA
- : 03B7 + 0314
+ : 03B7 0314
1F22 GREEK SMALL LETTER ETA WITH PSILI AND VARIA
- : 1F20 + 0300
+ : 1F20 0300
1F23 GREEK SMALL LETTER ETA WITH DASIA AND VARIA
- : 1F21 + 0300
+ : 1F21 0300
1F24 GREEK SMALL LETTER ETA WITH PSILI AND OXIA
- : 1F20 + 0301
+ : 1F20 0301
1F25 GREEK SMALL LETTER ETA WITH DASIA AND OXIA
- : 1F21 + 0301
+ : 1F21 0301
1F26 GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI
- : 1F20 + 0342
+ : 1F20 0342
1F27 GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI
- : 1F21 + 0342
+ : 1F21 0342
1F28 GREEK CAPITAL LETTER ETA WITH PSILI
- : 0397 + 0313
+ : 0397 0313
1F29 GREEK CAPITAL LETTER ETA WITH DASIA
- : 0397 + 0314
+ : 0397 0314
1F2A GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA
- : 1F28 + 0300
+ : 1F28 0300
1F2B GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA
- : 1F29 + 0300
+ : 1F29 0300
1F2C GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA
- : 1F28 + 0301
+ : 1F28 0301
1F2D GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA
- : 1F29 + 0301
+ : 1F29 0301
1F2E GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI
- : 1F28 + 0342
+ : 1F28 0342
1F2F GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI
- : 1F29 + 0342
+ : 1F29 0342
1F30 GREEK SMALL LETTER IOTA WITH PSILI
- : 03B9 + 0313
+ : 03B9 0313
1F31 GREEK SMALL LETTER IOTA WITH DASIA
- : 03B9 + 0314
+ : 03B9 0314
1F32 GREEK SMALL LETTER IOTA WITH PSILI AND VARIA
- : 1F30 + 0300
+ : 1F30 0300
1F33 GREEK SMALL LETTER IOTA WITH DASIA AND VARIA
- : 1F31 + 0300
+ : 1F31 0300
1F34 GREEK SMALL LETTER IOTA WITH PSILI AND OXIA
- : 1F30 + 0301
+ : 1F30 0301
1F35 GREEK SMALL LETTER IOTA WITH DASIA AND OXIA
- : 1F31 + 0301
+ : 1F31 0301
1F36 GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI
- : 1F30 + 0342
+ : 1F30 0342
1F37 GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI
- : 1F31 + 0342
+ : 1F31 0342
1F38 GREEK CAPITAL LETTER IOTA WITH PSILI
- : 0399 + 0313
+ : 0399 0313
1F39 GREEK CAPITAL LETTER IOTA WITH DASIA
- : 0399 + 0314
+ : 0399 0314
1F3A GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA
- : 1F38 + 0300
+ : 1F38 0300
1F3B GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA
- : 1F39 + 0300
+ : 1F39 0300
1F3C GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA
- : 1F38 + 0301
+ : 1F38 0301
1F3D GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA
- : 1F39 + 0301
+ : 1F39 0301
1F3E GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI
- : 1F38 + 0342
+ : 1F38 0342
1F3F GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI
- : 1F39 + 0342
+ : 1F39 0342
1F40 GREEK SMALL LETTER OMICRON WITH PSILI
- : 03BF + 0313
+ : 03BF 0313
1F41 GREEK SMALL LETTER OMICRON WITH DASIA
- : 03BF + 0314
+ : 03BF 0314
1F42 GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA
- : 1F40 + 0300
+ : 1F40 0300
1F43 GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA
- : 1F41 + 0300
+ : 1F41 0300
1F44 GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA
- : 1F40 + 0301
+ : 1F40 0301
1F45 GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA
- : 1F41 + 0301
-1F46 <reserved>
-1F47 <reserved>
+ : 1F41 0301
1F48 GREEK CAPITAL LETTER OMICRON WITH PSILI
- : 039F + 0313
+ : 039F 0313
1F49 GREEK CAPITAL LETTER OMICRON WITH DASIA
- : 039F + 0314
+ : 039F 0314
1F4A GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA
- : 1F48 + 0300
+ : 1F48 0300
1F4B GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA
- : 1F49 + 0300
+ : 1F49 0300
1F4C GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA
- : 1F48 + 0301
+ : 1F48 0301
1F4D GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA
- : 1F49 + 0301
-1F4E <reserved>
-1F4F <reserved>
+ : 1F49 0301
1F50 GREEK SMALL LETTER UPSILON WITH PSILI
- : 03C5 + 0313
+ : 03C5 0313
1F51 GREEK SMALL LETTER UPSILON WITH DASIA
- : 03C5 + 0314
+ : 03C5 0314
1F52 GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA
- : 1F50 + 0300
+ : 1F50 0300
1F53 GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA
- : 1F51 + 0300
+ : 1F51 0300
1F54 GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA
- : 1F50 + 0301
+ : 1F50 0301
1F55 GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA
- : 1F51 + 0301
+ : 1F51 0301
1F56 GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI
- : 1F50 + 0342
+ : 1F50 0342
1F57 GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI
- : 1F51 + 0342
-1F58 <reserved>
+ : 1F51 0342
1F59 GREEK CAPITAL LETTER UPSILON WITH DASIA
- : 03A5 + 0314
-1F5A <reserved>
+ : 03A5 0314
1F5B GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA
- : 1F59 + 0300
-1F5C <reserved>
+ : 1F59 0300
1F5D GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA
- : 1F59 + 0301
-1F5E <reserved>
+ : 1F59 0301
1F5F GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI
- : 1F59 + 0342
+ : 1F59 0342
1F60 GREEK SMALL LETTER OMEGA WITH PSILI
- : 03C9 + 0313
+ : 03C9 0313
1F61 GREEK SMALL LETTER OMEGA WITH DASIA
- : 03C9 + 0314
+ : 03C9 0314
1F62 GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA
- : 1F60 + 0300
+ : 1F60 0300
1F63 GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA
- : 1F61 + 0300
+ : 1F61 0300
1F64 GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA
- : 1F60 + 0301
+ : 1F60 0301
1F65 GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA
- : 1F61 + 0301
+ : 1F61 0301
1F66 GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI
- : 1F60 + 0342
+ : 1F60 0342
1F67 GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI
- : 1F61 + 0342
+ : 1F61 0342
1F68 GREEK CAPITAL LETTER OMEGA WITH PSILI
- : 03A9 + 0313
+ : 03A9 0313
1F69 GREEK CAPITAL LETTER OMEGA WITH DASIA
- : 03A9 + 0314
+ : 03A9 0314
1F6A GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA
- : 1F68 + 0300
+ : 1F68 0300
1F6B GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA
- : 1F69 + 0300
+ : 1F69 0300
1F6C GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA
- : 1F68 + 0301
+ : 1F68 0301
1F6D GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA
- : 1F69 + 0301
+ : 1F69 0301
1F6E GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI
- : 1F68 + 0342
+ : 1F68 0342
1F6F GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI
- : 1F69 + 0342
+ : 1F69 0342
1F70 GREEK SMALL LETTER ALPHA WITH VARIA
- : 03B1 + 0300
+ : 03B1 0300
1F71 GREEK SMALL LETTER ALPHA WITH OXIA
- : 03B1 + 0301
+ : 03AC greek small letter alpha with tonos
1F72 GREEK SMALL LETTER EPSILON WITH VARIA
- : 03B5 + 0300
+ : 03B5 0300
1F73 GREEK SMALL LETTER EPSILON WITH OXIA
- : 03B5 + 0301
+ : 03AD greek small letter epsilon with tonos
1F74 GREEK SMALL LETTER ETA WITH VARIA
- : 03B7 + 0300
+ : 03B7 0300
1F75 GREEK SMALL LETTER ETA WITH OXIA
- : 03B7 + 0301
+ : 03AE greek small letter eta with tonos
1F76 GREEK SMALL LETTER IOTA WITH VARIA
- : 03B9 + 0300
+ : 03B9 0300
1F77 GREEK SMALL LETTER IOTA WITH OXIA
- : 03B9 + 0301
+ : 03AF greek small letter iota with tonos
1F78 GREEK SMALL LETTER OMICRON WITH VARIA
- : 03BF + 0300
+ : 03BF 0300
1F79 GREEK SMALL LETTER OMICRON WITH OXIA
- : 03BF + 0301
+ : 03CC greek small letter omicron with tonos
1F7A GREEK SMALL LETTER UPSILON WITH VARIA
- : 03C5 + 0300
+ : 03C5 0300
1F7B GREEK SMALL LETTER UPSILON WITH OXIA
- : 03C5 + 0301
+ : 03CD greek small letter upsilon with tonos
1F7C GREEK SMALL LETTER OMEGA WITH VARIA
- : 03C9 + 0300
+ : 03C9 0300
1F7D GREEK SMALL LETTER OMEGA WITH OXIA
- : 03C9 + 0301
-1F7E <reserved>
-1F7F <reserved>
+ : 03CE greek small letter omega with tonos
1F80 GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI
- : 1F00 + 0345
+ : 1F00 0345
1F81 GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI
- : 1F01 + 0345
+ : 1F01 0345
1F82 GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI
- : 1F02 + 0345
+ : 1F02 0345
1F83 GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI
- : 1F03 + 0345
+ : 1F03 0345
1F84 GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI
- : 1F04 + 0345
+ : 1F04 0345
1F85 GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI
- : 1F05 + 0345
+ : 1F05 0345
1F86 GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
- : 1F06 + 0345
+ : 1F06 0345
1F87 GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
- : 1F07 + 0345
+ : 1F07 0345
1F88 GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI
- : 1F08 + 0345
+ : 1F08 0345
1F89 GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI
- : 1F09 + 0345
+ : 1F09 0345
1F8A GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI
- : 1F0A + 0345
+ : 1F0A 0345
1F8B GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI
- : 1F0B + 0345
+ : 1F0B 0345
1F8C GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI
- : 1F0C + 0345
+ : 1F0C 0345
1F8D GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI
- : 1F0D + 0345
+ : 1F0D 0345
1F8E GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
- : 1F0E + 0345
+ : 1F0E 0345
1F8F GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
- : 1F0F + 0345
+ : 1F0F 0345
1F90 GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI
- : 1F20 + 0345
+ : 1F20 0345
1F91 GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI
- : 1F21 + 0345
+ : 1F21 0345
1F92 GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI
- : 1F22 + 0345
+ : 1F22 0345
1F93 GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI
- : 1F23 + 0345
+ : 1F23 0345
1F94 GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI
- : 1F24 + 0345
+ : 1F24 0345
1F95 GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI
- : 1F25 + 0345
+ : 1F25 0345
1F96 GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
- : 1F26 + 0345
+ : 1F26 0345
1F97 GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
- : 1F27 + 0345
+ : 1F27 0345
1F98 GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI
- : 1F28 + 0345
+ : 1F28 0345
1F99 GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI
- : 1F29 + 0345
+ : 1F29 0345
1F9A GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI
- : 1F2A + 0345
+ : 1F2A 0345
1F9B GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI
- : 1F2B + 0345
+ : 1F2B 0345
1F9C GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI
- : 1F2C + 0345
+ : 1F2C 0345
1F9D GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI
- : 1F2D + 0345
+ : 1F2D 0345
1F9E GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
- : 1F2E + 0345
+ : 1F2E 0345
1F9F GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
- : 1F2F + 0345
+ : 1F2F 0345
1FA0 GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI
- : 1F60 + 0345
+ : 1F60 0345
1FA1 GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI
- : 1F61 + 0345
+ : 1F61 0345
1FA2 GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI
- : 1F62 + 0345
+ : 1F62 0345
1FA3 GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI
- : 1F63 + 0345
+ : 1F63 0345
1FA4 GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI
- : 1F64 + 0345
+ : 1F64 0345
1FA5 GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI
- : 1F65 + 0345
+ : 1F65 0345
1FA6 GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
- : 1F66 + 0345
+ : 1F66 0345
1FA7 GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
- : 1F67 + 0345
+ : 1F67 0345
1FA8 GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI
- : 1F68 + 0345
+ : 1F68 0345
1FA9 GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI
- : 1F69 + 0345
+ : 1F69 0345
1FAA GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI
- : 1F6A + 0345
+ : 1F6A 0345
1FAB GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI
- : 1F6B + 0345
+ : 1F6B 0345
1FAC GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI
- : 1F6C + 0345
+ : 1F6C 0345
1FAD GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI
- : 1F6D + 0345
+ : 1F6D 0345
1FAE GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
- : 1F6E + 0345
+ : 1F6E 0345
1FAF GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
- : 1F6F + 0345
+ : 1F6F 0345
1FB0 GREEK SMALL LETTER ALPHA WITH VRACHY
- : 03B1 + 0306
+ : 03B1 0306
1FB1 GREEK SMALL LETTER ALPHA WITH MACRON
- : 03B1 + 0304
+ : 03B1 0304
1FB2 GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI
- : 1F70 + 0345
+ : 1F70 0345
1FB3 GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI
- : 03B1 + 0345
+ : 03B1 0345
1FB4 GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
- : 1F71 + 0345
-1FB5 <reserved>
+ : 03AC 0345
1FB6 GREEK SMALL LETTER ALPHA WITH PERISPOMENI
- : 03B1 + 0342
+ : 03B1 0342
1FB7 GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI
- : 1FB6 + 0345
+ : 1FB6 0345
1FB8 GREEK CAPITAL LETTER ALPHA WITH VRACHY
- : 0391 + 0306
+ : 0391 0306
1FB9 GREEK CAPITAL LETTER ALPHA WITH MACRON
- : 0391 + 0304
+ : 0391 0304
1FBA GREEK CAPITAL LETTER ALPHA WITH VARIA
- : 0391 + 0300
+ : 0391 0300
1FBB GREEK CAPITAL LETTER ALPHA WITH OXIA
- : 0391 + 0301
+ : 0386 greek capital letter alpha with tonos
1FBC GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI
- : 0391 + 0345
+ : 0391 0345
1FBD GREEK KORONIS
- # 0020 + 0313
+ # 0020 0313
1FBE GREEK PROSGEGRAMMENI
- : 0399
+ : 03B9 greek small letter iota
1FBF GREEK PSILI
- # 0020 + 0313
+ # 0020 0313
1FC0 GREEK PERISPOMENI
- # 0020 + 0342
+ # 0020 0342
1FC1 GREEK DIALYTIKA AND PERISPOMENI
- : 00A8 + 0342
+ : 00A8 0342
1FC2 GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI
- : 1F74 + 0345
+ : 1F74 0345
1FC3 GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI
- : 03B7 + 0345
+ : 03B7 0345
1FC4 GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
- : 1F75 + 0345
-1FC5 <reserved>
+ : 03AE 0345
1FC6 GREEK SMALL LETTER ETA WITH PERISPOMENI
- : 03B7 + 0342
+ : 03B7 0342
1FC7 GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI
- : 1FC6 + 0345
+ : 1FC6 0345
1FC8 GREEK CAPITAL LETTER EPSILON WITH VARIA
- : 0395 + 0300
+ : 0395 0300
1FC9 GREEK CAPITAL LETTER EPSILON WITH OXIA
- : 0395 + 0301
+ : 0388 greek capital letter epsilon with tonos
1FCA GREEK CAPITAL LETTER ETA WITH VARIA
- : 0397 + 0300
+ : 0397 0300
1FCB GREEK CAPITAL LETTER ETA WITH OXIA
- : 0397 + 0301
+ : 0389 greek capital letter eta with tonos
1FCC GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI
- : 0397 + 0345
+ : 0397 0345
1FCD GREEK PSILI AND VARIA
- : 1FBF + 0300
+ : 1FBF 0300
1FCE GREEK PSILI AND OXIA
- : 1FBF + 0301
+ : 1FBF 0301
1FCF GREEK PSILI AND PERISPOMENI
- : 1FBF + 0342
+ : 1FBF 0342
1FD0 GREEK SMALL LETTER IOTA WITH VRACHY
- : 03B9 + 0306
+ : 03B9 0306
1FD1 GREEK SMALL LETTER IOTA WITH MACRON
- : 03B9 + 0304
+ : 03B9 0304
1FD2 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA
- : 03CA + 0300
+ : 03CA 0300
1FD3 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
- : 03CA + 0301
-1FD4 <reserved>
-1FD5 <reserved>
+ : 0390 greek small letter iota with dialytika and tonos
1FD6 GREEK SMALL LETTER IOTA WITH PERISPOMENI
- : 03B9 + 0342
+ : 03B9 0342
1FD7 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI
- : 03CA + 0342
+ : 03CA 0342
1FD8 GREEK CAPITAL LETTER IOTA WITH VRACHY
- : 0399 + 0306
+ : 0399 0306
1FD9 GREEK CAPITAL LETTER IOTA WITH MACRON
- : 0399 + 0304
+ : 0399 0304
1FDA GREEK CAPITAL LETTER IOTA WITH VARIA
- : 0399 + 0300
+ : 0399 0300
1FDB GREEK CAPITAL LETTER IOTA WITH OXIA
- : 0399 + 0301
-1FDC <reserved>
+ : 038A greek capital letter iota with tonos
1FDD GREEK DASIA AND VARIA
- : 1FFE + 0300
+ : 1FFE 0300
1FDE GREEK DASIA AND OXIA
- : 1FFE + 0301
+ : 1FFE 0301
1FDF GREEK DASIA AND PERISPOMENI
- : 1FFE + 0342
+ : 1FFE 0342
1FE0 GREEK SMALL LETTER UPSILON WITH VRACHY
- : 03C5 + 0306
+ : 03C5 0306
1FE1 GREEK SMALL LETTER UPSILON WITH MACRON
- : 03C5 + 0304
+ : 03C5 0304
1FE2 GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA
- : 03CB + 0300
+ : 03CB 0300
1FE3 GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
- : 03CB + 0301
+ : 03B0 greek small letter upsilon with dialytika and tonos
1FE4 GREEK SMALL LETTER RHO WITH PSILI
- : 03C1 + 0313
+ : 03C1 0313
1FE5 GREEK SMALL LETTER RHO WITH DASIA
- : 03C1 + 0314
+ : 03C1 0314
1FE6 GREEK SMALL LETTER UPSILON WITH PERISPOMENI
- : 03C5 + 0342
+ : 03C5 0342
1FE7 GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
- : 03CB + 0342
+ : 03CB 0342
1FE8 GREEK CAPITAL LETTER UPSILON WITH VRACHY
- : 03A5 + 0306
+ : 03A5 0306
1FE9 GREEK CAPITAL LETTER UPSILON WITH MACRON
- : 03A5 + 0304
+ : 03A5 0304
1FEA GREEK CAPITAL LETTER UPSILON WITH VARIA
- : 03A5 + 0300
+ : 03A5 0300
1FEB GREEK CAPITAL LETTER UPSILON WITH OXIA
- : 03A5 + 0301
+ : 038E greek capital letter upsilon with tonos
1FEC GREEK CAPITAL LETTER RHO WITH DASIA
- : 03A1 + 0314
+ : 03A1 0314
1FED GREEK DIALYTIKA AND VARIA
- : 00A8 + 0300
+ : 00A8 0300
1FEE GREEK DIALYTIKA AND OXIA
- : 00A8 + 0301
+ : 0385 greek dialytika tonos
1FEF GREEK VARIA
- : 0060
-1FF0 <reserved>
-1FF1 <reserved>
+ : 0060 grave accent
1FF2 GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI
- : 1F7C + 0345
+ : 1F7C 0345
1FF3 GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI
- : 03C9 + 0345
+ : 03C9 0345
1FF4 GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
- : 1F79 + 0345
-1FF5 <reserved>
+ : 03CE 0345
1FF6 GREEK SMALL LETTER OMEGA WITH PERISPOMENI
- : 03C9 + 0342
+ : 03C9 0342
1FF7 GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI
- : 1FF6 + 0345
+ : 1FF6 0345
1FF8 GREEK CAPITAL LETTER OMICRON WITH VARIA
- : 039F + 0300
+ : 039F 0300
1FF9 GREEK CAPITAL LETTER OMICRON WITH OXIA
- : 039F + 0301
+ : 038C greek capital letter omicron with tonos
1FFA GREEK CAPITAL LETTER OMEGA WITH VARIA
- : 03A9 + 0300
+ : 03A9 0300
1FFB GREEK CAPITAL LETTER OMEGA WITH OXIA
- : 03A9 + 0301
+ : 038F greek capital letter omega with tonos
1FFC GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI
- : 03A9 + 0345
+ : 03A9 0345
1FFD GREEK OXIA
- : 00B4
+ : 00B4 acute accent
1FFE GREEK DASIA
- # 0020 + 0314
+ # 0020 0314
@@ 2000 General Punctuation 206F
-@ General punctuation
+@ Spaces
2000 EN QUAD
- : 2002
+ : 2002 en space
2001 EM QUAD
- : 2003
+ = mutton quad
+ : 2003 em space
2002 EN SPACE
- # 0020
+ = nut
+ * half an em
+ # 0020 space
2003 EM SPACE
- # 0020
+ = mutton
+ * nominally, a space equal to the type size in points
+ * may scale by the condensation factor of a font
+ # 0020 space
2004 THREE-PER-EM SPACE
- # 0020
+ = thick space
+ # 0020 space
2005 FOUR-PER-EM SPACE
- # 0020
+ = mid space
+ # 0020 space
2006 SIX-PER-EM SPACE
- # 0020
+ * in computer typography sometimes equated to thin space
+ # 0020 space
2007 FIGURE SPACE
- # <noBreak> + 0020
+ * space equal to tabular width of a font
+ * this is equivalent to the digit width of fonts with fixed-width digits
+ # <noBreak> 0020
2008 PUNCTUATION SPACE
- # 0020
+ * space equal to narrow punctuation of a font
+ # 0020 space
2009 THIN SPACE
- # 0020
+ * a fifth of an em (or sometimes a sixth)
+ # 0020 space
200A HAIR SPACE
- # 0020
+ * thinner than a thin space
+ * in traditional typography, the thinnest space available
+ # 0020 space
200B ZERO WIDTH SPACE
+ * nominally zero width, but may expand in justification
+@ Formatting characters
200C ZERO WIDTH NON-JOINER
- = ZWNJ ("zwinj")
+ = ZWNJ
200D ZERO WIDTH JOINER
- = ZWJ ("zawj")
+ = ZWJ
200E LEFT-TO-RIGHT MARK
= LRM
200F RIGHT-TO-LEFT MARK
= RLM
+@ Dashes
2010 HYPHEN
x (hyphen-minus - 002D)
2011 NON-BREAKING HYPHEN
x (hyphen-minus - 002D)
- # <noBreak> + 2010
+ # <noBreak> 2010
2012 FIGURE DASH
2013 EN DASH
2014 EM DASH
+ * may be used in pairs to offset parenthetical text
x (katakana-hiragana prolonged sound mark - 30FC)
2015 HORIZONTAL BAR
= QUOTATION DASH
* long dash introducing quoted text
+@ General punctuation
2016 DOUBLE VERTICAL LINE
* used in pairs to indicate norm of a matrix
x (parallel to - 2225)
2017 DOUBLE LOW LINE
- = SPACING DOUBLE UNDERSCORE
* this is a spacing character
x (low line - 005F)
x (combining double low line - 0333)
- # 0020 + 0333
+ # 0020 0333
2018 LEFT SINGLE QUOTATION MARK
= SINGLE TURNED COMMA QUOTATION MARK
- * this is the preferred character for opening single quotation mark
+ * this is the preferred glyph (as opposed to 201B)
x (apostrophe - 0027)
x (modifier letter turned comma - 02BB)
x (heavy single turned comma quotation mark ornament - 275B)
2019 RIGHT SINGLE QUOTATION MARK
= SINGLE COMMA QUOTATION MARK
- * this is the preferred character for closing single quotation mark
+ * this is the preferred character to use for apostrophe
x (apostrophe - 0027)
x (modifier letter apostrophe - 02BC)
x (heavy single comma quotation mark ornament - 275C)
201A SINGLE LOW-9 QUOTATION MARK
= LOW SINGLE COMMA QUOTATION MARK
- * usually opening, sometimes closing, in European usage
+ * used as opening single quotation mark in some languages
201B SINGLE HIGH-REVERSED-9 QUOTATION MARK
= SINGLE REVERSED COMMA QUOTATION MARK
* glyph variant of 2018
x (modifier letter reversed comma - 02BD)
201C LEFT DOUBLE QUOTATION MARK
= DOUBLE TURNED COMMA QUOTATION MARK
- * this is the preferred character for opening quotation mark
+ * this is the preferred glyph (as opposed to 201F)
x (quotation mark - 0022)
x (heavy double turned comma quotation mark ornament - 275D)
x (reversed double prime quotation mark - 301D)
201D RIGHT DOUBLE QUOTATION MARK
= DOUBLE COMMA QUOTATION MARK
- * this is the preferred character for closing quotation mark
x (quotation mark - 0022)
x (double prime - 2033)
x (heavy double comma quotation mark ornament - 275E)
x (double prime quotation mark - 301E)
201E DOUBLE LOW-9 QUOTATION MARK
= LOW DOUBLE COMMA QUOTATION MARK
- * usually opening, sometimes closing, in European usage
+ * used as opening double quotation mark in some languages
x (low double prime quotation mark - 301F)
201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK
= DOUBLE REVERSED COMMA QUOTATION MARK
* glyph variant of 201C
2020 DAGGER
+ = obelisk, obelus, long cross
2021 DOUBLE DAGGER
+ = diesis, double obelisk
2022 BULLET
= black small circle
x (middle dot - 00B7)
@@ -6626,14 +8291,15 @@
x (middle dot - 00B7)
x (bullet - 2022)
x (bullet operator - 2219)
- # 002E
+ # 002E full stop
2025 TWO DOT LEADER
- # 002E + 002E
+ # 002E 002E
2026 HORIZONTAL ELLIPSIS
= three dot leader
x (vertical ellipsis - 22EE)
- # 002E + 002E + 002E
+ # 002E 002E 002E
2027 HYPHENATION POINT
+@ Formatting characters
2028 LINE SEPARATOR
* may be used to represent this semantic unambiguously
2029 PARAGRAPH SEPARATOR
@@ -6648,36 +8314,38 @@
= LRO
202E RIGHT-TO-LEFT OVERRIDE
= RLO
-202F <reserved>
+202F NARROW NO-BREAK SPACE
+ x (no-break space - 00A0)
+ # <noBreak> 0020
+@ General punctuation
2030 PER MILLE SIGN
x (percent sign - 0025)
2031 PER TEN THOUSAND SIGN
x (percent sign - 0025)
2032 PRIME
- = minutes
- = feet
+ = minutes, feet
x (apostrophe - 0027)
x (acute accent - 00B4)
x (modifier letter prime - 02B9)
2033 DOUBLE PRIME
- = seconds
- = inches
+ = seconds, inches
x (quotation mark - 0022)
x (modifier letter double prime - 02BA)
x (right double quotation mark - 201D)
x (ditto mark - 3003)
x (double prime quotation mark - 301E)
- # 2032 + 2032
+ # 2032 2032
2034 TRIPLE PRIME
- # 2032 + 2032 + 2032
+ # 2032 2032 2032
2035 REVERSED PRIME
x (grave accent - 0060)
2036 REVERSED DOUBLE PRIME
x (reversed double prime quotation mark - 301D)
- # 2035 + 2035
+ # 2035 2035
2037 REVERSED TRIPLE PRIME
- # 2035 + 2035 + 2035
+ # 2035 2035 2035
2038 CARET
+ x (up arrowhead - 2303)
2039 SINGLE LEFT-POINTING ANGLE QUOTATION MARK
= LEFT POINTING SINGLE GUILLEMET
* usually opening, sometimes closing
@@ -6693,63 +8361,46 @@
203B REFERENCE MARK
= Japanese kome
= Urdu paragraph separator
+ x (tibetan ku ru kha bzhi mig can - 0FBF)
203C DOUBLE EXCLAMATION MARK
x (exclamation mark - 0021)
- # 0021 + 0021
+ # 0021 0021
203D INTERROBANG
+ x (exclamation mark - 0021)
x (question mark - 003F)
203E OVERLINE
= SPACING OVERSCORE
- # 0020 + 0305
-203F UNDERTIE
+ # 0020 0305
+203F UNDERTIE (Enotikon)
= Greek enotikon
+ x (smile - 2323)
2040 CHARACTER TIE
+ x (frown - 2322)
2041 CARET INSERTION POINT
* proofreader's mark: insert here
x (right semidirect product - 22CC)
2042 ASTERISM
2043 HYPHEN BULLET
2044 FRACTION SLASH
+ = solidus (in typography)
* for composing arbitrary fractions
x (solidus - 002F)
x (division slash - 2215)
2045 LEFT SQUARE BRACKET WITH QUILL
2046 RIGHT SQUARE BRACKET WITH QUILL
-2047 <reserved>
-2048 <reserved>
-2049 <reserved>
-204A <reserved>
-204B <reserved>
-204C <reserved>
-204D <reserved>
-204E <reserved>
-204F <reserved>
-2050 <reserved>
-2051 <reserved>
-2052 <reserved>
-2053 <reserved>
-2054 <reserved>
-2055 <reserved>
-2056 <reserved>
-2057 <reserved>
-2058 <reserved>
-2059 <reserved>
-205A <reserved>
-205B <reserved>
-205C <reserved>
-205D <reserved>
-205E <reserved>
-205F <reserved>
-2060 <reserved>
-2061 <reserved>
-2062 <reserved>
-2063 <reserved>
-2064 <reserved>
-2065 <reserved>
-2066 <reserved>
-2067 <reserved>
-2068 <reserved>
-2069 <reserved>
+2048 QUESTION EXCLAMATION MARK
+ * designed for use in vertical text
+ # 003F 0021
+2049 EXCLAMATION QUESTION MARK
+ * designed for use in vertical text
+ # 0021 003F
+204A TIRONIAN SIGN ET
+ * Irish Gaelic, ...
+204B REVERSED PILCROW SIGN
+ x (pilcrow sign - 00B6)
+204C BLACK LEFTWARDS BULLET
+204D BLACK RIGHTWARDS BULLET
+@ Deprecated
206A INHIBIT SYMMETRIC SWAPPING
206B ACTIVATE SYMMETRIC SWAPPING
206C INHIBIT ARABIC FORM SHAPING
@@ -6757,9 +8408,9 @@
206E NATIONAL DIGIT SHAPES
206F NOMINAL DIGIT SHAPES
@@ 2070 Superscripts and Subscripts 209F
-@ Superscripts and subscripts
+@ Superscripts
2070 SUPERSCRIPT ZERO
- # <super> + 0030
+ # <super> 0030
2071 <reserved>
x (superscript one - 00B9)
2072 <reserved>
@@ -6767,61 +8418,63 @@
2073 <reserved>
x (superscript three - 00B3)
2074 SUPERSCRIPT FOUR
- # <super> + 0034
+ # <super> 0034
2075 SUPERSCRIPT FIVE
- # <super> + 0035
+ # <super> 0035
2076 SUPERSCRIPT SIX
- # <super> + 0036
+ # <super> 0036
2077 SUPERSCRIPT SEVEN
- # <super> + 0037
+ # <super> 0037
2078 SUPERSCRIPT EIGHT
- # <super> + 0038
+ # <super> 0038
2079 SUPERSCRIPT NINE
- # <super> + 0039
+ # <super> 0039
207A SUPERSCRIPT PLUS SIGN
- # <super> + 002B
+ # <super> 002B
207B SUPERSCRIPT MINUS
- # <super> + 2212
+ # <super> 2212
207C SUPERSCRIPT EQUALS SIGN
- # <super> + 003D
+ # <super> 003D
207D SUPERSCRIPT LEFT PARENTHESIS
- # <super> + 0028
+ # <super> 0028
207E SUPERSCRIPT RIGHT PARENTHESIS
- # <super> + 0029
+ # <super> 0029
207F SUPERSCRIPT LATIN SMALL LETTER N
- # <super> + 006E
+ # <super> 006E
+@ Subscripts
2080 SUBSCRIPT ZERO
- # <sub> + 0030
+ # <sub> 0030
2081 SUBSCRIPT ONE
- # <sub> + 0031
+ # <sub> 0031
2082 SUBSCRIPT TWO
- # <sub> + 0032
+ # <sub> 0032
2083 SUBSCRIPT THREE
- # <sub> + 0033
+ # <sub> 0033
2084 SUBSCRIPT FOUR
- # <sub> + 0034
+ # <sub> 0034
2085 SUBSCRIPT FIVE
- # <sub> + 0035
+ # <sub> 0035
2086 SUBSCRIPT SIX
- # <sub> + 0036
+ # <sub> 0036
2087 SUBSCRIPT SEVEN
- # <sub> + 0037
+ # <sub> 0037
2088 SUBSCRIPT EIGHT
- # <sub> + 0038
+ # <sub> 0038
2089 SUBSCRIPT NINE
- # <sub> + 0039
+ # <sub> 0039
208A SUBSCRIPT PLUS SIGN
- # <sub> + 002B
+ # <sub> 002B
208B SUBSCRIPT MINUS
- # <sub> + 2212
+ # <sub> 2212
208C SUBSCRIPT EQUALS SIGN
- # <sub> + 003D
+ # <sub> 003D
208D SUBSCRIPT LEFT PARENTHESIS
- # <sub> + 0028
+ # <sub> 0028
208E SUBSCRIPT RIGHT PARENTHESIS
- # <sub> + 0029
+ # <sub> 0029
@@ 20A0 Currency Symbols 20CF
@ Currency symbols
+@+ A number of currency symbols are found in other blocks.
x (dollar sign - 0024)
x (cent sign - 00A2)
x (pound sign - 00A3)
@@ -6830,7 +8483,11 @@
x (bengali rupee mark - 09F2)
x (bengali rupee sign - 09F3)
x (thai currency symbol baht - 0E3F)
+ x (khmer currency symbol riel - 17DB)
20A0 EURO-CURRENCY SIGN
+ * intended for ECU, but not widely used
+ * historical character, this is NOT the euro!
+ x (euro sign - 20AC)
20A1 COLON SIGN
* Costa Rica, El Salvador
20A2 CRUZEIRO SIGN
@@ -6848,13 +8505,24 @@
* Spain
20A8 RUPEE SIGN
* India
- # 0052 + 0073
+ # 0052 0073
20A9 WON SIGN
* Korea
20AA NEW SHEQEL SIGN
* Israel
20AB DONG SIGN
* Vietnam
+20AC EURO SIGN
+ * currency sign for the European Monetary Union
+ * euro, not ECU
+ x (euro-currency sign - 20A0)
+20AD KIP SIGN
+ * Laos
+20AE TUGRIK SIGN
+ * Mongolia
+ * also transliterated as tugrug, tugric, tugrog, togrog
+20AF DRACHMA SIGN
+ * Greece
@@ 20D0 Combining Diacritical Marks for Symbols 20FF
@ Combining diacritical marks for symbols
20D0 COMBINING LEFT HARPOON ABOVE
@@ -6883,320 +8551,315 @@
x (large circle - 25EF)
x (ideographic number zero - 3007)
20DE COMBINING ENCLOSING SQUARE
+ x (white square - 25A1)
20DF COMBINING ENCLOSING DIAMOND
+ x (white diamond - 25C7)
20E0 COMBINING ENCLOSING CIRCLE BACKSLASH
* prohibition
-@ Additional diacritics
+@ Additional diacritical mark for symbols
20E1 COMBINING LEFT RIGHT ARROW ABOVE
* tensor
+@ Additional enclosing diacritics
+20E2 COMBINING ENCLOSING SCREEN
+ x (clear screen symbol - 239A)
+20E3 COMBINING ENCLOSING KEYCAP
@@ 2100 Letterlike Symbols 214F
@ Letterlike symbols
2100 ACCOUNT OF
+ # 0061 002F 0063
2101 ADDRESSED TO THE SUBJECT
+ # 0061 002F 0073
2102 DOUBLE-STRUCK CAPITAL C
= the set of complex numbers
- x (latin capital letter c - 0043)
- # <font> + 0043
+ # <font> 0043 latin capital letter c
2103 DEGREE CELSIUS
= degrees Centigrade
- # 00B0 + 0043
+ # 00B0 0043
2104 CENTRE LINE SYMBOL
= clone
2105 CARE OF
+ # 0063 002F 006F
2106 CADA UNA
+ # 0063 002F 0075
2107 EULER CONSTANT
x (latin capital letter e - 0045)
- x (latin capital letter open e - 0190)
- # 0190
+ # 0190 latin capital letter open e
2108 SCRUPLE
2109 DEGREE FAHRENHEIT
- # 00B0 + 0046
+ # 00B0 0046
210A SCRIPT SMALL G
= real number symbol
- x (latin small letter g - 0067)
- # <font> + 0067
+ # <font> 0067 latin small letter g
210B SCRIPT CAPITAL H
= Hamiltonian function
- x (latin capital letter h - 0048)
- # <font> + 0048
+ # <font> 0048 latin capital letter h
210C BLACK-LETTER CAPITAL H
- x (latin capital letter h - 0048)
- # <font> + 0048
+ = Hilbert space
+ # <font> 0048 latin capital letter h
210D DOUBLE-STRUCK CAPITAL H
- x (latin capital letter h - 0048)
- # <font> + 0048
+ # <font> 0048 latin capital letter h
210E PLANCK CONSTANT
- x (latin small letter h - 0068)
- # <font> + 0068
+ # <font> 0068 latin small letter h
210F PLANCK CONSTANT OVER TWO PI
- x (latin small letter h with stroke - 0127)
x (cyrillic small letter tshe - 045B)
- # <font> + 0127
+ # <font> 0127 latin small letter h with stroke
2110 SCRIPT CAPITAL I
- x (latin capital letter i - 0049)
- # <font> + 0049
+ # <font> 0049 latin capital letter i
2111 BLACK-LETTER CAPITAL I
= imaginary part
- x (latin capital letter i - 0049)
- # <font> + 0049
+ # <font> 0049 latin capital letter i
2112 SCRIPT CAPITAL L
= Laplace symbol
- x (latin capital letter l - 004C)
- # <font> + 004C
+ # <font> 004C latin capital letter l
2113 SCRIPT SMALL L
- = liter
- x (latin small letter l - 006C)
- # <font> + 006C
+ = liter (not an official SI recommendation)
+ # <font> 006C latin small letter l
2114 L B BAR SYMBOL
= pounds
2115 DOUBLE-STRUCK CAPITAL N
= natural number
- x (latin capital letter n - 004E)
- # <font> + 004E
+ # <font> 004E latin capital letter n
2116 NUMERO SIGN
- # 004E + 006F
+ # 004E 006F
2117 SOUND RECORDING COPYRIGHT
= published
+ = phonorecord sign
x (copyright sign - 00A9)
2118 SCRIPT CAPITAL P
- = per
- = power set
= Weierstrass elliptic function
- x (latin capital letter p - 0050)
- # <font> + 0050
+ * actually this has the form of a lowercase calligraphic p, despite its name
2119 DOUBLE-STRUCK CAPITAL P
- x (latin capital letter p - 0050)
- # <font> + 0050
+ # <font> 0050 latin capital letter p
211A DOUBLE-STRUCK CAPITAL Q
= the set of rational numbers
- x (latin capital letter q - 0051)
- # <font> + 0051
+ # <font> 0051 latin capital letter q
211B SCRIPT CAPITAL R
= Riemann Integral
- x (latin capital letter r - 0052)
- # <font> + 0052
+ # <font> 0052 latin capital letter r
211C BLACK-LETTER CAPITAL R
- = REAL PART SYMBOL
- x (latin capital letter r - 0052)
- # <font> + 0052
+ = real part
+ # <font> 0052 latin capital letter r
211D DOUBLE-STRUCK CAPITAL R
= the set of real numbers
- x (latin capital letter r - 0052)
- # <font> + 0052
+ # <font> 0052 latin capital letter r
211E PRESCRIPTION TAKE
= recipe
= cross ratio
211F RESPONSE
2120 SERVICE MARK
- # <super> + 0053 + 004D
+ # <super> 0053 004D
2121 TELEPHONE SIGN
- # <super> + 0054 + 0045 + 004C
+ # 0054 0045 004C
2122 TRADE MARK SIGN
- # <super> + 0054 + 004D
+ # <super> 0054 004D
2123 VERSICLE
2124 DOUBLE-STRUCK CAPITAL Z
= the set of integers
- x (latin capital letter z - 005A)
- # <font> + 005A
+ # <font> 005A latin capital letter z
2125 OUNCE SIGN
- x (latin small letter ezh - 0292)
+ x (latin small letter yogh - 021D)
2126 OHM SIGN
= resistance
- x (greek capital letter omega - 03A9)
- : 03A9
+ : 03A9 greek capital letter omega
2127 INVERTED OHM SIGN
+ = MHO
= conductance
* typographically a turned greek capital letter omega
x (latin capital letter upsilon - 01B1)
x (greek capital letter omega - 03A9)
2128 BLACK-LETTER CAPITAL Z
- x (latin capital letter z - 005A)
- # <font> + 005A
+ # <font> 005A latin capital letter z
2129 TURNED GREEK SMALL LETTER IOTA
* unique element fulfilling a description (logic)
x (greek small letter iota - 03B9)
212A KELVIN SIGN
- = degrees Kelvin
- x (latin capital letter k - 004B)
- : 004B
+ : 004B latin capital letter k
212B ANGSTROM SIGN
- x (latin capital letter a with ring above - 00C5)
- : 00C5
+ : 00C5 latin capital letter a with ring above
212C SCRIPT CAPITAL B
= Bernoulli function
- x (latin capital letter b - 0042)
- # <font> + 0042
+ # <font> 0042 latin capital letter b
212D BLACK-LETTER CAPITAL C
- x (latin capital letter c - 0043)
- # <font> + 0043
+ # <font> 0043 latin capital letter c
212E ESTIMATED SYMBOL
* used in European packaging
x (latin small letter e - 0065)
212F SCRIPT SMALL E
= error
- x (latin small letter e - 0065)
- # <font> + 0065
+ # <font> 0065 latin small letter e
2130 SCRIPT CAPITAL E
= EMF (Electro-Magnetic Force)
- x (latin capital letter e - 0045)
- # <font> + 0045
+ # <font> 0045 latin capital letter e
2131 SCRIPT CAPITAL F
= Fourier transform
- x (latin capital letter f - 0046)
- # <font> + 0046
+ # <font> 0046 latin capital letter f
2132 TURNED CAPITAL F
x (latin capital letter f - 0046)
2133 SCRIPT CAPITAL M
= M-matrix (physics)
- x (latin capital letter m - 004D)
- # <font> + 004D
+ = German Mark (not the current Deutsche Mark)
+ # <font> 004D latin capital letter m
2134 SCRIPT SMALL O
- = order; of inferior order to
- x (latin small letter o - 006F)
- # <font> + 006F
+ = order, of inferior order to
+ # <font> 006F latin small letter o
+@ Hebrew letterlike math symbols (left-to-right)
2135 ALEF SYMBOL
= first transfinite cardinal (countable)
- x (hebrew letter alef - 05D0)
- # 05D0
+ # 05D0 hebrew letter alef
2136 BET SYMBOL
= second transfinite cardinal (the continuum)
- x (hebrew letter bet - 05D1)
- # 05D1
+ # 05D1 hebrew letter bet
2137 GIMEL SYMBOL
= third transfinite cardinal (functions of a real variable)
- x (hebrew letter gimel - 05D2)
- # 05D2
+ # 05D2 hebrew letter gimel
2138 DALET SYMBOL
= fourth transfinite cardinal
- x (hebrew letter dalet - 05D3)
- # 05D3
+ # 05D3 hebrew letter dalet
+@ Additional letterlike symbols
+2139 INFORMATION SOURCE
+ * intended for use with 20DD
+ # <font> 0069 latin small letter i
+213A ROTATED CAPITAL Q
+ * a binding signature mark
@@ 2150 Number Forms 218F
-@ Number forms
-2150 <reserved>
+@ Fractions
+@+ Other fraction number forms are found in the Latin-1 Supplement block.
x (vulgar fraction one quarter - 00BC)
-2151 <reserved>
x (vulgar fraction one half - 00BD)
-2152 <reserved>
x (vulgar fraction three quarters - 00BE)
2153 VULGAR FRACTION ONE THIRD
- # <fraction> + 0031 + 2044 + 0033
+ # 0031 2044 0033
2154 VULGAR FRACTION TWO THIRDS
- # <fraction> + 0032 + 2044 + 0033
+ # 0032 2044 0033
2155 VULGAR FRACTION ONE FIFTH
- # <fraction> + 0031 + 2044 + 0035
+ # 0031 2044 0035
2156 VULGAR FRACTION TWO FIFTHS
- # <fraction> + 0032 + 2044 + 0035
+ # 0032 2044 0035
2157 VULGAR FRACTION THREE FIFTHS
- # <fraction> + 0033 + 2044 + 0035
+ # 0033 2044 0035
2158 VULGAR FRACTION FOUR FIFTHS
- # <fraction> + 0034 + 2044 + 0035
+ # 0034 2044 0035
2159 VULGAR FRACTION ONE SIXTH
- # <fraction> + 0031 + 2044 + 0036
+ # 0031 2044 0036
215A VULGAR FRACTION FIVE SIXTHS
- # <fraction> + 0035 + 2044 + 0036
+ # 0035 2044 0036
215B VULGAR FRACTION ONE EIGHTH
- # <fraction> + 0031 + 2044 + 0038
+ # 0031 2044 0038
215C VULGAR FRACTION THREE EIGHTHS
- # <fraction> + 0033 + 2044 + 0038
+ # 0033 2044 0038
215D VULGAR FRACTION FIVE EIGHTHS
- # <fraction> + 0035 + 2044 + 0038
+ # 0035 2044 0038
215E VULGAR FRACTION SEVEN EIGHTHS
- # <fraction> + 0037 + 2044 + 0038
+ # 0037 2044 0038
215F FRACTION NUMERATOR ONE
- # <fraction> + 0031 + 2044
+ # 0031 2044
+@ Roman numerals
2160 ROMAN NUMERAL ONE
- # 0049
+ # 0049 latin capital letter i
2161 ROMAN NUMERAL TWO
- # 0049 + 0049
+ # 0049 0049
2162 ROMAN NUMERAL THREE
- # 0049 + 0049 + 0049
+ # 0049 0049 0049
2163 ROMAN NUMERAL FOUR
- # 0049 + 0056
+ # 0049 0056
2164 ROMAN NUMERAL FIVE
- # 0056
+ # 0056 latin capital letter v
2165 ROMAN NUMERAL SIX
- # 0056 + 0049
+ # 0056 0049
2166 ROMAN NUMERAL SEVEN
- # 0056 + 0049 + 0049
+ # 0056 0049 0049
2167 ROMAN NUMERAL EIGHT
- # 0056 + 0049 + 0049 + 0049
+ # 0056 0049 0049 0049
2168 ROMAN NUMERAL NINE
- # 0049 + 0058
+ # 0049 0058
2169 ROMAN NUMERAL TEN
- # 0058
+ # 0058 latin capital letter x
216A ROMAN NUMERAL ELEVEN
- # 0058 + 0049
+ # 0058 0049
216B ROMAN NUMERAL TWELVE
- # 0058 + 0049 + 0049
+ # 0058 0049 0049
216C ROMAN NUMERAL FIFTY
- # 004C
+ # 004C latin capital letter l
216D ROMAN NUMERAL ONE HUNDRED
- # 0043
+ # 0043 latin capital letter c
216E ROMAN NUMERAL FIVE HUNDRED
- # 0044
+ # 0044 latin capital letter d
216F ROMAN NUMERAL ONE THOUSAND
- # 004D
+ # 004D latin capital letter m
2170 SMALL ROMAN NUMERAL ONE
- # 0069
+ # 0069 latin small letter i
2171 SMALL ROMAN NUMERAL TWO
- # 0069 + 0069
+ # 0069 0069
2172 SMALL ROMAN NUMERAL THREE
- # 0069 + 0069 + 0069
+ # 0069 0069 0069
2173 SMALL ROMAN NUMERAL FOUR
- # 0069 + 0076
+ # 0069 0076
2174 SMALL ROMAN NUMERAL FIVE
- # 0076
+ # 0076 latin small letter v
2175 SMALL ROMAN NUMERAL SIX
- # 0076 + 0069
+ # 0076 0069
2176 SMALL ROMAN NUMERAL SEVEN
- # 0076 + 0069 + 0069
+ # 0076 0069 0069
2177 SMALL ROMAN NUMERAL EIGHT
- # 0076 + 0069 + 0069 + 0069
+ # 0076 0069 0069 0069
2178 SMALL ROMAN NUMERAL NINE
- # 0069 + 0078
+ # 0069 0078
2179 SMALL ROMAN NUMERAL TEN
- # 0078
+ # 0078 latin small letter x
217A SMALL ROMAN NUMERAL ELEVEN
- # 0078 + 0069
+ # 0078 0069
217B SMALL ROMAN NUMERAL TWELVE
- # 0078 + 0069 + 0069
+ # 0078 0069 0069
217C SMALL ROMAN NUMERAL FIFTY
- # 006C
+ # 006C latin small letter l
217D SMALL ROMAN NUMERAL ONE HUNDRED
- # 0063
+ # 0063 latin small letter c
217E SMALL ROMAN NUMERAL FIVE HUNDRED
- # 0064
+ # 0064 latin small letter d
217F SMALL ROMAN NUMERAL ONE THOUSAND
- # 006D
+ # 006D latin small letter m
2180 ROMAN NUMERAL ONE THOUSAND C D
2181 ROMAN NUMERAL FIVE THOUSAND
2182 ROMAN NUMERAL TEN THOUSAND
+2183 ROMAN NUMERAL REVERSED ONE HUNDRED
+ * used in combination with C and I to form large numbers
@@ 2190 Arrows 21FF
@ Arrows
2190 LEFTWARDS ARROW
2191 UPWARDS ARROW
+ * IPA: egressive airflow
2192 RIGHTWARDS ARROW
+ = z notation total function
2193 DOWNWARDS ARROW
+ * IPA: ingressive airflow
2194 LEFT RIGHT ARROW
+ = z notation relation
2195 UP DOWN ARROW
2196 NORTH WEST ARROW
2197 NORTH EAST ARROW
2198 SOUTH EAST ARROW
2199 SOUTH WEST ARROW
219A LEFTWARDS ARROW WITH STROKE
+ * negation of 2190
+ : 2190 0338
219B RIGHTWARDS ARROW WITH STROKE
+ * negation of 2192
+ : 2192 0338
219C LEFTWARDS WAVE ARROW
219D RIGHTWARDS WAVE ARROW
219E LEFTWARDS TWO HEADED ARROW
219F UPWARDS TWO HEADED ARROW
21A0 RIGHTWARDS TWO HEADED ARROW
+ = z notation total surjection
21A1 DOWNWARDS TWO HEADED ARROW
= form feed
21A2 LEFTWARDS ARROW WITH TAIL
21A3 RIGHTWARDS ARROW WITH TAIL
+ = z notation total injection
21A4 LEFTWARDS ARROW FROM BAR
21A5 UPWARDS ARROW FROM BAR
21A6 RIGHTWARDS ARROW FROM BAR
+ = z notation maplet
21A7 DOWNWARDS ARROW FROM BAR
= depth symbol
21A8 UP DOWN ARROW WITH BASE
@@ -7206,6 +8869,8 @@
21AC RIGHTWARDS ARROW WITH LOOP
21AD LEFT RIGHT WAVE ARROW
21AE LEFT RIGHT ARROW WITH STROKE
+ * negation of 2194
+ : 2194 0338
21AF DOWNWARDS ZIGZAG ARROW
= electrolysis
21B0 UPWARDS ARROW WITH TIP LEFTWARDS
@@ -7215,8 +8880,7 @@
21B4 RIGHTWARDS ARROW WITH CORNER DOWNWARDS
= line feed
21B5 DOWNWARDS ARROW WITH CORNER LEFTWARDS
- = carriage return
- = new line
+ = carriage return, new line
21B6 ANTICLOCKWISE TOP SEMICIRCLE ARROW
21B7 CLOCKWISE TOP SEMICIRCLE ARROW
21B8 NORTH WEST ARROW TO LONG BAR
@@ -7243,8 +8907,14 @@
21CB LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
21CC RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
21CD LEFTWARDS DOUBLE ARROW WITH STROKE
+ * negation of 21D0
+ : 21D0 0338
21CE LEFT RIGHT DOUBLE ARROW WITH STROKE
+ * negation of 21D4
+ : 21D4 0338
21CF RIGHTWARDS DOUBLE ARROW WITH STROKE
+ * negation of 21D2
+ : 21D2 0338
21D0 LEFTWARDS DOUBLE ARROW
21D1 UPWARDS DOUBLE ARROW
21D2 RIGHTWARDS DOUBLE ARROW
@@ -7278,6 +8948,24 @@
21E9 DOWNWARDS WHITE ARROW
21EA UPWARDS WHITE ARROW FROM BAR
= caps lock
+21EB UPWARDS WHITE ARROW ON PEDESTAL
+ = level 2 lock
+21EC UPWARDS WHITE ARROW ON PEDESTAL WITH HORIZONTAL BAR
+ = caps lock
+21ED UPWARDS WHITE ARROW ON PEDESTAL WITH VERTICAL BAR
+ = numerics lock
+21EE UPWARDS WHITE DOUBLE ARROW
+ = level 3 select
+21EF UPWARDS WHITE DOUBLE ARROW ON PEDESTAL
+ = level 3 lock
+21F0 RIGHTWARDS WHITE ARROW FROM WALL
+ = group lock
+21F1 NORTH WEST ARROW TO CORNER
+ = home
+21F2 SOUTH EAST ARROW TO CORNER
+ = end
+21F3 UP DOWN WHITE ARROW
+ = scrolling
@@ 2200 Mathematical Operators 22FF
@ Mathematical operators
2200 FOR ALL
@@ -7286,11 +8974,11 @@
2202 PARTIAL DIFFERENTIAL
2203 THERE EXISTS
2204 THERE DOES NOT EXIST
- : 2203 + 0338
+ : 2203 0338
2205 EMPTY SET
= null set
- = diameter symbol
x (latin capital letter o with stroke - 00D8)
+ x (diameter sign - 2300)
2206 INCREMENT
= Laplace operator
= forward difference
@@ -7303,16 +8991,18 @@
x (white down-pointing triangle - 25BD)
2208 ELEMENT OF
2209 NOT AN ELEMENT OF
- : 2208 + 0338
+ : 2208 0338
220A SMALL ELEMENT OF
+ * originates in math pi fonts; not the straight epsilon
220B CONTAINS AS MEMBER
= such that
220C DOES NOT CONTAIN AS MEMBER
- : 220B + 0338
+ : 220B 0338
220D SMALL CONTAINS AS MEMBER
220E END OF PROOF
- = qed
+ = Q.E.D.
x (triangular bullet - 2023)
+ x (black vertical rectangle - 25AE)
220F N-ARY PRODUCT
= product sign
x (greek capital letter pi - 03A0)
@@ -7362,34 +9052,41 @@
x (vertical line - 007C)
x (latin letter dental click - 01C0)
2224 DOES NOT DIVIDE
- : 2223 + 0338
+ : 2223 0338
2225 PARALLEL TO
x (latin letter lateral click - 01C1)
x (double vertical line - 2016)
2226 NOT PARALLEL TO
- : 2225 + 0338
+ : 2225 0338
2227 LOGICAL AND
- = wedge
+ = wedge, conjunction
+ x (n-ary logical and - 22C0)
+ x (up arrowhead - 2303)
2228 LOGICAL OR
- = vee
+ = vee, disjunction
+ x (n-ary logical or - 22C1)
+ x (down arrowhead - 2304)
2229 INTERSECTION
- = cap
+ = cap, hat
+ x (n-ary intersection - 22C2)
222A UNION
= cup
+ x (n-ary union - 22C3)
222B INTEGRAL
x (latin small letter esh - 0283)
222C DOUBLE INTEGRAL
- # 222B + 222B
+ # 222B 222B
222D TRIPLE INTEGRAL
- # 222B + 222B + 222B
+ # 222B 222B 222B
222E CONTOUR INTEGRAL
222F SURFACE INTEGRAL
- # 222E + 222E
+ # 222E 222E
2230 VOLUME INTEGRAL
- # 222E + 222E + 222E
+ # 222E 222E 222E
2231 CLOCKWISE INTEGRAL
2232 CLOCKWISE CONTOUR INTEGRAL
2233 ANTICLOCKWISE CONTOUR INTEGRAL
+ * clockwise or anticlockwise arrows do not reverse during layout mirroring
2234 THEREFORE
2235 BECAUSE
2236 RATIO
@@ -7404,12 +9101,13 @@
= varies with (proportional to)
= difference between
= similar to
- = APL tilde
- = cycle
= not
+ = cycle
+ = APL tilde
x (tilde - 007E)
+ x (not sign - 00AC)
x (small tilde - 02DC)
-223D REVERSED TILDE
+223D REVERSED TILDE (lazy S)
= lazy S
* reversed tilde and lazy S are glyph variants
223E INVERTED LAZY S
@@ -7418,19 +9116,19 @@
= alternating current
2240 WREATH PRODUCT
2241 NOT TILDE
- : 007E + 0338
+ : 223C 0338
2242 MINUS TILDE
2243 ASYMPTOTICALLY EQUAL TO
2244 NOT ASYMPTOTICALLY EQUAL TO
- : 2243 + 0338
+ : 2243 0338
2245 APPROXIMATELY EQUAL TO
2246 APPROXIMATELY BUT NOT ACTUALLY EQUAL TO
2247 NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
- : 2245 + 0338
+ : 2245 0338
2248 ALMOST EQUAL TO
= asymptotic to
2249 NOT ALMOST EQUAL TO
- : 2248 + 0338
+ : 2248 0338
224A ALMOST EQUAL OR EQUAL TO
224B TRIPLE TILDE
224C ALL EQUAL TO
@@ -7462,10 +9160,10 @@
2260 NOT EQUAL TO
x (equals sign - 003D)
x (latin letter alveolar click - 01C2)
- : 003D + 0338
+ : 003D 0338
2261 IDENTICAL TO
2262 NOT IDENTICAL TO
- : 2261 + 0338
+ : 2261 0338
2263 STRICTLY EQUIVALENT TO
2264 LESS-THAN OR EQUAL TO
2265 GREATER-THAN OR EQUAL TO
@@ -7478,30 +9176,29 @@
226B MUCH GREATER-THAN
x (right-pointing double angle quotation mark - 00BB)
226C BETWEEN
- = plaintiff
- = quantic
+ = plaintiff, quantic
226D NOT EQUIVALENT TO
- : 224D + 0338
+ : 224D 0338
226E NOT LESS-THAN
- : 003C + 0338
+ : 003C 0338
226F NOT GREATER-THAN
- : 003E + 0338
+ : 003E 0338
2270 NEITHER LESS-THAN NOR EQUAL TO
- : 2264 + 0338
+ : 2264 0338
2271 NEITHER GREATER-THAN NOR EQUAL TO
- : 2265 + 0338
+ : 2265 0338
2272 LESS-THAN OR EQUIVALENT TO
2273 GREATER-THAN OR EQUIVALENT TO
2274 NEITHER LESS-THAN NOR EQUIVALENT TO
- : 2272 + 0338
+ : 2272 0338
2275 NEITHER GREATER-THAN NOR EQUIVALENT TO
- : 2273 + 0338
+ : 2273 0338
2276 LESS-THAN OR GREATER-THAN
2277 GREATER-THAN OR LESS-THAN
2278 NEITHER LESS-THAN NOR GREATER-THAN
- : 2276 + 0338
+ : 2276 0338
2279 NEITHER GREATER-THAN NOR LESS-THAN
- : 2277 + 0338
+ : 2277 0338
227A PRECEDES
= lower rank than
x (precedes under relation - 22B0)
@@ -7513,26 +9210,29 @@
227E PRECEDES OR EQUIVALENT TO
227F SUCCEEDS OR EQUIVALENT TO
2280 DOES NOT PRECEDE
- : 227A + 0338
+ : 227A 0338
2281 DOES NOT SUCCEED
- : 227B + 0338
+ : 227B 0338
2282 SUBSET OF
+ = included in set
2283 SUPERSET OF
+ = includes in set
2284 NOT A SUBSET OF
- : 2282 + 0338
+ : 2282 0338
2285 NOT A SUPERSET OF
- : 2283 + 0338
+ : 2283 0338
2286 SUBSET OF OR EQUAL TO
2287 SUPERSET OF OR EQUAL TO
2288 NEITHER A SUBSET OF NOR EQUAL TO
- : 2286 + 0338
+ : 2286 0338
2289 NEITHER A SUPERSET OF NOR EQUAL TO
- : 2287 + 0338
+ : 2287 0338
228A SUBSET OF WITH NOT EQUAL TO
228B SUPERSET OF WITH NOT EQUAL TO
228C MULTISET
228D MULTISET MULTIPLICATION
228E MULTISET UNION
+ = z notation bag addition
228F SQUARE IMAGE OF
2290 SQUARE ORIGINAL OF
2291 SQUARE IMAGE OF OR EQUAL TO
@@ -7552,9 +9252,10 @@
2299 CIRCLED DOT OPERATOR
= direct product
= vector pointing out of page
- x (latin letter BILABIAL CLICK - 0298)
+ x (latin letter bilabial click - 0298)
x (sun - 2609)
229A CIRCLED RING OPERATOR
+ x (apl functional symbol circle jot - 233E)
x (bullseye - 25CE)
229B CIRCLED ASTERISK OPERATOR
229C CIRCLED EQUALS
@@ -7572,10 +9273,13 @@
= reverse turnstile
= non-theorem, does not yield
22A4 DOWN TACK
+ = top
+ * called up tack in APL
22A5 UP TACK
= orthogonal to
= perpendicular
- * APL and other uses
+ = base
+ * called down tack in APL
22A6 ASSERTION
= reduces to
22A7 MODELS
@@ -7588,19 +9292,21 @@
22AA TRIPLE VERTICAL BAR RIGHT TURNSTILE
22AB DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
22AC DOES NOT PROVE
- : 22A2 + 0338
+ : 22A2 0338
22AD NOT TRUE
- : 22A8 + 0338
+ : 22A8 0338
22AE DOES NOT FORCE
- : 22A9 + 0338
+ : 22A9 0338
22AF NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE
- : 22AB + 0338
+ : 22AB 0338
22B0 PRECEDES UNDER RELATION
x (precedes - 227A)
22B1 SUCCEEDS UNDER RELATION
x (succeeds - 227B)
22B2 NORMAL SUBGROUP OF
+ x (white left-pointing pointer - 25C5)
22B3 CONTAINS AS NORMAL SUBGROUP
+ x (white right-pointing pointer - 25BB)
22B4 NORMAL SUBGROUP OF OR EQUAL TO
22B5 CONTAINS AS NORMAL SUBGROUP OR EQUAL TO
22B6 ORIGINAL OF
@@ -7610,19 +9316,27 @@
22BA INTERCALATE
22BB XOR
22BC NAND
+ x (projective - 2305)
22BD NOR
22BE RIGHT ANGLE WITH ARC
22BF RIGHT TRIANGLE
22C0 N-ARY LOGICAL AND
+ x (logical and - 2227)
22C1 N-ARY LOGICAL OR
+ x (logical or - 2228)
22C2 N-ARY INTERSECTION
+ = z notation generalised intersection
+ x (intersection - 2229)
22C3 N-ARY UNION
+ = z notation generalised union
+ x (union - 222A)
22C4 DIAMOND OPERATOR
x (white diamond - 25C7)
22C5 DOT OPERATOR
x (middle dot - 00B7)
22C6 STAR OPERATOR
* APL
+ x (arabic five pointed star - 066D)
x (black star - 2605)
22C7 DIVISION TIMES
22C8 BOWTIE
@@ -7654,13 +9368,13 @@
22DE EQUAL TO OR PRECEDES
22DF EQUAL TO OR SUCCEEDS
22E0 DOES NOT PRECEDE OR EQUAL
- : 227C + 0338
+ : 227C 0338
22E1 DOES NOT SUCCEED OR EQUAL
- : 227D + 0338
+ : 227D 0338
22E2 NOT SQUARE IMAGE OF OR EQUAL TO
- : 2291 + 0338
+ : 2291 0338
22E3 NOT SQUARE ORIGINAL OF OR EQUAL TO
- : 2292 + 0338
+ : 2292 0338
22E4 SQUARE IMAGE OF OR NOT EQUAL TO
22E5 SQUARE ORIGINAL OF OR NOT EQUAL TO
22E6 LESS-THAN BUT NOT EQUIVALENT TO
@@ -7668,15 +9382,15 @@
22E8 PRECEDES BUT NOT EQUIVALENT TO
22E9 SUCCEEDS BUT NOT EQUIVALENT TO
22EA NOT NORMAL SUBGROUP OF
- : 22B2 + 0338
+ : 22B2 0338
22EB DOES NOT CONTAIN AS NORMAL SUBGROUP
- : 22B3 + 0338
+ : 22B3 0338
22EC NOT NORMAL SUBGROUP OF OR EQUAL TO
- : 22B4 + 0338
+ : 22B4 0338
22ED DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL
- : 22B5 + 0338
+ : 22B5 0338
22EE VERTICAL ELLIPSIS
- * these four ellipses are used for matrix row/column ellision
+ * these four ellipses are used for matrix row/column elision
x (horizontal ellipsis - 2026)
22EF MIDLINE HORIZONTAL ELLIPSIS
22F0 UP RIGHT DIAGONAL ELLIPSIS
@@ -7684,22 +9398,33 @@
@@ 2300 Miscellaneous Technical 23FF
@ Miscellaneous technical
2300 DIAMETER SIGN
-2301 <reserved>
+ x (empty set - 2205)
+2301 ELECTRIC ARROW
+ * from ISO 2047
+ * symbol for End of Transmission
2302 HOUSE
2303 UP ARROWHEAD
x (circumflex accent - 005E)
x (modifier letter up arrowhead - 02C4)
+ x (caret - 2038)
+ x (logical and - 2227)
2304 DOWN ARROWHEAD
+ x (modifier letter down arrowhead - 02C5)
+ x (logical or - 2228)
+ x (countersink - 2335)
2305 PROJECTIVE
+ x (nand - 22BC)
2306 PERSPECTIVE
2307 WAVY LINE
x (wavy dash - 3030)
2308 LEFT CEILING
= APL upstile
+ x (left corner bracket - 300C)
2309 RIGHT CEILING
230A LEFT FLOOR
= APL downstile
230B RIGHT FLOOR
+ x (right corner bracket - 300D)
230C BOTTOM RIGHT CROP
* set of four "crop" corners, arranged facing outward
230D BOTTOM LEFT CROP
@@ -7710,6 +9435,7 @@
x (not sign - 00AC)
2311 SQUARE LOZENGE
2312 ARC
+ x (upper half circle - 25E0)
2313 SEGMENT
2314 SECTOR
2315 TELEPHONE RECORDER
@@ -7730,7 +9456,9 @@
2320 TOP HALF INTEGRAL
2321 BOTTOM HALF INTEGRAL
2322 FROWN
+ x (character tie - 2040)
2323 SMILE
+ x (undertie - 203F)
2324 UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS
= ENTER KEY
2325 OPTION KEY
@@ -7741,16 +9469,16 @@
2328 KEYBOARD
2329 LEFT-POINTING ANGLE BRACKET
= BRA
+ = z notation left sequence bracket
x (less-than sign - 003C)
x (single left-pointing angle quotation mark - 2039)
- x (left angle bracket - 3008)
- : 3008
+ : 3008 left angle bracket
232A RIGHT-POINTING ANGLE BRACKET
= KET
+ = z notation right sequence bracket
x (greater-than sign - 003E)
x (single right-pointing angle quotation mark - 203A)
- x (right angle bracket - 3009)
- : 3009
+ : 3009 right angle bracket
232B ERASE TO THE LEFT
= DELETE TO THE LEFT KEY
232C BENZENE RING
@@ -7762,10 +9490,14 @@
2332 CONICAL TAPER
2333 SLOPE
2334 COUNTERBORE
+ x (open box - 2423)
2335 COUNTERSINK
+ x (down arrowhead - 2304)
@ APL
2336 APL FUNCTIONAL SYMBOL I-BEAM
2337 APL FUNCTIONAL SYMBOL SQUISH QUAD
+ x (apl functional symbol quad - 2395)
+ x (white vertical rectangle - 25AF)
2338 APL FUNCTIONAL SYMBOL QUAD EQUAL
2339 APL FUNCTIONAL SYMBOL QUAD DIVIDE
233A APL FUNCTIONAL SYMBOL QUAD DIAMOND
@@ -7773,6 +9505,7 @@
233C APL FUNCTIONAL SYMBOL QUAD CIRCLE
233D APL FUNCTIONAL SYMBOL CIRCLE STILE
233E APL FUNCTIONAL SYMBOL CIRCLE JOT
+ x (circled ring operator - 229A)
233F APL FUNCTIONAL SYMBOL SLASH BAR
2340 APL FUNCTIONAL SYMBOL BACKSLASH BAR
2341 APL FUNCTIONAL SYMBOL QUAD SLASH
@@ -7784,18 +9517,21 @@
2347 APL FUNCTIONAL SYMBOL QUAD LEFTWARDS ARROW
2348 APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW
2349 APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH
-234A APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR
+234A APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR *
+ x (up tack - 22A5)
234B APL FUNCTIONAL SYMBOL DELTA STILE
234C APL FUNCTIONAL SYMBOL QUAD DOWN CARET
234D APL FUNCTIONAL SYMBOL QUAD DELTA
-234E APL FUNCTIONAL SYMBOL DOWN TACK JOT
+234E APL FUNCTIONAL SYMBOL DOWN TACK JOT *
234F APL FUNCTIONAL SYMBOL UPWARDS VANE
2350 APL FUNCTIONAL SYMBOL QUAD UPWARDS ARROW
-2351 APL FUNCTIONAL SYMBOL UP TACK OVERBAR
+2351 APL FUNCTIONAL SYMBOL UP TACK OVERBAR *
+ x (down tack - 22A4)
+ x (postal mark - 3012)
2352 APL FUNCTIONAL SYMBOL DEL STILE
2353 APL FUNCTIONAL SYMBOL QUAD UP CARET
2354 APL FUNCTIONAL SYMBOL QUAD DEL
-2355 APL FUNCTIONAL SYMBOL UP TACK JOT
+2355 APL FUNCTIONAL SYMBOL UP TACK JOT *
2356 APL FUNCTIONAL SYMBOL DOWNWARDS VANE
2357 APL FUNCTIONAL SYMBOL QUAD DOWNWARDS ARROW
2358 APL FUNCTIONAL SYMBOL QUOTE UNDERBAR
@@ -7807,7 +9543,7 @@
235E APL FUNCTIONAL SYMBOL QUOTE QUAD
235F APL FUNCTIONAL SYMBOL CIRCLE STAR
2360 APL FUNCTIONAL SYMBOL QUAD COLON
-2361 APL FUNCTIONAL SYMBOL UP TACK DIAERESIS
+2361 APL FUNCTIONAL SYMBOL UP TACK DIAERESIS *
2362 APL FUNCTIONAL SYMBOL DEL DIAERESIS
2363 APL FUNCTIONAL SYMBOL STAR DIAERESIS
2364 APL FUNCTIONAL SYMBOL JOT DIAERESIS
@@ -7833,6 +9569,54 @@
2378 APL FUNCTIONAL SYMBOL IOTA UNDERBAR
2379 APL FUNCTIONAL SYMBOL OMEGA UNDERBAR
237A APL FUNCTIONAL SYMBOL ALPHA
+@ Graphics for control codes
+237B NOT CHECK MARK
+ * from ISO 2047
+ * symbol for Negative Acknowledge
+237D SHOULDERED OPEN BOX
+ * from ISO 9995-7
+ * keyboard symbol for No Break Space
+237E BELL SYMBOL
+ * from ISO 2047
+237F VERTICAL LINE WITH MIDDLE DOT
+ * from ISO 2047
+ * symbol for End of Medium
+@ Keyboard symbols from ISO 9995-7
+2380 INSERTION SYMBOL
+2381 CONTINUOUS UNDERLINE SYMBOL
+2382 DISCONTINUOUS UNDERLINE SYMBOL
+2383 EMPHASIS SYMBOL
+2384 COMPOSITION SYMBOL
+2385 WHITE SQUARE WITH CENTRE VERTICAL LINE
+2386 ENTER SYMBOL
+2387 ALTERNATIVE KEY SYMBOL
+2388 HELM SYMBOL
+ = control
+ x (wheel of dharma - 2638)
+2389 CIRCLED HORIZONTAL BAR WITH NOTCH (pause)
+238A CIRCLED TRIANGLE DOWN (break)
+238B BROKEN CIRCLE WITH NORTHWEST ARROW (escape)
+238C UNDO SYMBOL
+@ Electrotechnical symbols from IR 181
+238D MONOSTABLE SYMBOL
+238E HYSTERESIS SYMBOL
+238F OPEN-CIRCUIT-OUTPUT H-TYPE SYMBOL
+2390 OPEN-CIRCUIT-OUTPUT L-TYPE SYMBOL
+2391 PASSIVE-PULL-DOWN-OUTPUT SYMBOL
+2392 PASSIVE-PULL-UP-OUTPUT SYMBOL
+2393 DIRECT CURRENT SYMBOL FORM TWO
+2394 SOFTWARE-FUNCTION SYMBOL
+@ APL
+2395 APL FUNCTIONAL SYMBOL QUAD
+ x (apl functional symbol squish quad - 2337)
+ x (white vertical rectangle - 25AF)
+@ Keyboard symbols from ISO 9995-7
+2396 DECIMAL SEPARATOR KEY SYMBOL
+2397 PREVIOUS PAGE
+2398 NEXT PAGE
+2399 PRINT SCREEN SYMBOL
+239A CLEAR SCREEN SYMBOL
+ x (combining enclosing screen - 20E2)
@@ 2400 Control Pictures 243F
@ Graphic pictures for control codes
2400 SYMBOL FOR NULL
@@ -7874,7 +9658,14 @@
x (latin small letter b with stroke - 0180)
2423 OPEN BOX
* graphic for space
+ x (counterbore - 2334)
2424 SYMBOL FOR NEWLINE
+2425 SYMBOL FOR DELETE FORM TWO
+ * from ISO 9995-7
+ * keyboard symbol for undoable delete
+2426 SYMBOL FOR SUBSTITUTE FORM TWO
+ * from ISO 2047
+ x (arabic question mark - 061F)
@@ 2440 Optical Character Recognition 245F
@ OCR
2440 OCR HOOK
@@ -7895,288 +9686,288 @@
@@ 2460 Enclosed Alphanumerics 24FF
@ Circled numbers
2460 CIRCLED DIGIT ONE
- # <circle> + 0031
+ # <circle> 0031
2461 CIRCLED DIGIT TWO
- # <circle> + 0032
+ # <circle> 0032
2462 CIRCLED DIGIT THREE
- # <circle> + 0033
+ # <circle> 0033
2463 CIRCLED DIGIT FOUR
- # <circle> + 0034
+ # <circle> 0034
2464 CIRCLED DIGIT FIVE
- # <circle> + 0035
+ # <circle> 0035
2465 CIRCLED DIGIT SIX
- # <circle> + 0036
+ # <circle> 0036
2466 CIRCLED DIGIT SEVEN
- # <circle> + 0037
+ # <circle> 0037
2467 CIRCLED DIGIT EIGHT
- # <circle> + 0038
+ # <circle> 0038
2468 CIRCLED DIGIT NINE
- # <circle> + 0039
+ # <circle> 0039
2469 CIRCLED NUMBER TEN
- # <circle> + 0031
+ # <circle> 0031 0030
246A CIRCLED NUMBER ELEVEN
- # <circle> + 0031 + 0030
+ # <circle> 0031 0031
246B CIRCLED NUMBER TWELVE
- # <circle> + 0031 + 0032
+ # <circle> 0031 0032
246C CIRCLED NUMBER THIRTEEN
- # <circle> + 0031 + 0033
+ # <circle> 0031 0033
246D CIRCLED NUMBER FOURTEEN
- # <circle> + 0031 + 0034
+ # <circle> 0031 0034
246E CIRCLED NUMBER FIFTEEN
- # <circle> + 0031 + 0035
+ # <circle> 0031 0035
246F CIRCLED NUMBER SIXTEEN
- # <circle> + 0031 + 0036
+ # <circle> 0031 0036
2470 CIRCLED NUMBER SEVENTEEN
- # <circle> + 0031 + 0037
+ # <circle> 0031 0037
2471 CIRCLED NUMBER EIGHTEEN
- # <circle> + 0031 + 0038
+ # <circle> 0031 0038
2472 CIRCLED NUMBER NINETEEN
- # <circle> + 0031 + 0039
+ # <circle> 0031 0039
2473 CIRCLED NUMBER TWENTY
- # <circle> + 0032 + 0030
+ # <circle> 0032 0030
@ Parenthesized numbers
2474 PARENTHESIZED DIGIT ONE
- : 0028 + 0031 + 0029
+ # 0028 0031 0029
2475 PARENTHESIZED DIGIT TWO
- : 0028 + 0032 + 0029
+ # 0028 0032 0029
2476 PARENTHESIZED DIGIT THREE
- : 0028 + 0033 + 0029
+ # 0028 0033 0029
2477 PARENTHESIZED DIGIT FOUR
- : 0028 + 0034 + 0029
+ # 0028 0034 0029
2478 PARENTHESIZED DIGIT FIVE
- : 0028 + 0035 + 0029
+ # 0028 0035 0029
2479 PARENTHESIZED DIGIT SIX
- : 0028 + 0036 + 0029
+ # 0028 0036 0029
247A PARENTHESIZED DIGIT SEVEN
- : 0028 + 0037 + 0029
+ # 0028 0037 0029
247B PARENTHESIZED DIGIT EIGHT
- : 0028 + 0038 + 0029
+ # 0028 0038 0029
247C PARENTHESIZED DIGIT NINE
- : 0028 + 0039 + 0029
+ # 0028 0039 0029
247D PARENTHESIZED NUMBER TEN
- : 0028 + 0031 + 0030 + 0029
+ # 0028 0031 0030 0029
247E PARENTHESIZED NUMBER ELEVEN
- : 0028 + 0031 + 0031 + 0029
+ # 0028 0031 0031 0029
247F PARENTHESIZED NUMBER TWELVE
- : 0028 + 0031 + 0032 + 0029
+ # 0028 0031 0032 0029
2480 PARENTHESIZED NUMBER THIRTEEN
- : 0028 + 0031 + 0033 + 0029
+ # 0028 0031 0033 0029
2481 PARENTHESIZED NUMBER FOURTEEN
- : 0028 + 0031 + 0034 + 0029
+ # 0028 0031 0034 0029
2482 PARENTHESIZED NUMBER FIFTEEN
- : 0028 + 0031 + 0035 + 0029
+ # 0028 0031 0035 0029
2483 PARENTHESIZED NUMBER SIXTEEN
- : 0028 + 0031 + 0036 + 0029
+ # 0028 0031 0036 0029
2484 PARENTHESIZED NUMBER SEVENTEEN
- : 0028 + 0031 + 0037 + 0029
+ # 0028 0031 0037 0029
2485 PARENTHESIZED NUMBER EIGHTEEN
- : 0028 + 0031 + 0038 + 0029
+ # 0028 0031 0038 0029
2486 PARENTHESIZED NUMBER NINETEEN
- : 0028 + 0031 + 0039 + 0029
+ # 0028 0031 0039 0029
2487 PARENTHESIZED NUMBER TWENTY
- : 0028 + 0032 + 0030 + 0029
+ # 0028 0032 0030 0029
@ Numbers period
2488 DIGIT ONE FULL STOP
- : 0031 + 002E
+ # 0031 002E
2489 DIGIT TWO FULL STOP
- : 0032 + 002E
+ # 0032 002E
248A DIGIT THREE FULL STOP
- : 0033 + 002E
+ # 0033 002E
248B DIGIT FOUR FULL STOP
- : 0034 + 002E
+ # 0034 002E
248C DIGIT FIVE FULL STOP
- : 0035 + 002E
+ # 0035 002E
248D DIGIT SIX FULL STOP
- : 0036 + 002E
+ # 0036 002E
248E DIGIT SEVEN FULL STOP
- : 0037 + 002E
+ # 0037 002E
248F DIGIT EIGHT FULL STOP
- : 0038 + 002E
+ # 0038 002E
2490 DIGIT NINE FULL STOP
- : 0039 + 002E
+ # 0039 002E
2491 NUMBER TEN FULL STOP
- : 0031 + 0030 + 002E
+ # 0031 0030 002E
2492 NUMBER ELEVEN FULL STOP
- : 0031 + 0031 + 002E
+ # 0031 0031 002E
2493 NUMBER TWELVE FULL STOP
- : 0031 + 0032 + 002E
+ # 0031 0032 002E
2494 NUMBER THIRTEEN FULL STOP
- : 0031 + 0033 + 002E
+ # 0031 0033 002E
2495 NUMBER FOURTEEN FULL STOP
- : 0031 + 0034 + 002E
+ # 0031 0034 002E
2496 NUMBER FIFTEEN FULL STOP
- : 0031 + 0035 + 002E
+ # 0031 0035 002E
2497 NUMBER SIXTEEN FULL STOP
- : 0031 + 0036 + 002E
+ # 0031 0036 002E
2498 NUMBER SEVENTEEN FULL STOP
- : 0031 + 0037 + 002E
+ # 0031 0037 002E
2499 NUMBER EIGHTEEN FULL STOP
- : 0031 + 0038 + 002E
+ # 0031 0038 002E
249A NUMBER NINETEEN FULL STOP
- : 0031 + 0039 + 002E
+ # 0031 0039 002E
249B NUMBER TWENTY FULL STOP
- : 0032 + 0030 + 002E
+ # 0032 0030 002E
@ Parenthesized Latin letters
249C PARENTHESIZED LATIN SMALL LETTER A
- : 0028 + 0061 + 0029
+ # 0028 0061 0029
249D PARENTHESIZED LATIN SMALL LETTER B
- : 0028 + 0062 + 0029
+ # 0028 0062 0029
249E PARENTHESIZED LATIN SMALL LETTER C
- : 0028 + 0063 + 0029
+ # 0028 0063 0029
249F PARENTHESIZED LATIN SMALL LETTER D
- : 0028 + 0064 + 0029
+ # 0028 0064 0029
24A0 PARENTHESIZED LATIN SMALL LETTER E
- : 0028 + 0065 + 0029
+ # 0028 0065 0029
24A1 PARENTHESIZED LATIN SMALL LETTER F
- : 0028 + 0066 + 0029
+ # 0028 0066 0029
24A2 PARENTHESIZED LATIN SMALL LETTER G
- : 0028 + 0067 + 0029
+ # 0028 0067 0029
24A3 PARENTHESIZED LATIN SMALL LETTER H
- : 0028 + 0068 + 0029
+ # 0028 0068 0029
24A4 PARENTHESIZED LATIN SMALL LETTER I
- : 0028 + 0069 + 0029
+ # 0028 0069 0029
24A5 PARENTHESIZED LATIN SMALL LETTER J
- : 0028 + 006A + 0029
+ # 0028 006A 0029
24A6 PARENTHESIZED LATIN SMALL LETTER K
- : 0028 + 006B + 0029
+ # 0028 006B 0029
24A7 PARENTHESIZED LATIN SMALL LETTER L
- : 0028 + 006C + 0029
+ # 0028 006C 0029
24A8 PARENTHESIZED LATIN SMALL LETTER M
- : 0028 + 006D + 0029
+ # 0028 006D 0029
24A9 PARENTHESIZED LATIN SMALL LETTER N
- : 0028 + 006E + 0029
+ # 0028 006E 0029
24AA PARENTHESIZED LATIN SMALL LETTER O
- : 0028 + 006F + 0029
+ # 0028 006F 0029
24AB PARENTHESIZED LATIN SMALL LETTER P
- : 0028 + 0070 + 0029
+ # 0028 0070 0029
24AC PARENTHESIZED LATIN SMALL LETTER Q
- : 0028 + 0071 + 0029
+ # 0028 0071 0029
24AD PARENTHESIZED LATIN SMALL LETTER R
- : 0028 + 0072 + 0029
+ # 0028 0072 0029
24AE PARENTHESIZED LATIN SMALL LETTER S
- : 0028 + 0073 + 0029
+ # 0028 0073 0029
24AF PARENTHESIZED LATIN SMALL LETTER T
- : 0028 + 0074 + 0029
+ # 0028 0074 0029
24B0 PARENTHESIZED LATIN SMALL LETTER U
- : 0028 + 0075 + 0029
+ # 0028 0075 0029
24B1 PARENTHESIZED LATIN SMALL LETTER V
- : 0028 + 0076 + 0029
+ # 0028 0076 0029
24B2 PARENTHESIZED LATIN SMALL LETTER W
- : 0028 + 0077 + 0029
+ # 0028 0077 0029
24B3 PARENTHESIZED LATIN SMALL LETTER X
- : 0028 + 0078 + 0029
+ # 0028 0078 0029
24B4 PARENTHESIZED LATIN SMALL LETTER Y
- : 0028 + 0079 + 0029
+ # 0028 0079 0029
24B5 PARENTHESIZED LATIN SMALL LETTER Z
- : 0028 + 007A + 0029
+ # 0028 007A 0029
@ Circled Latin letters
24B6 CIRCLED LATIN CAPITAL LETTER A
- # <circle> + 0041
+ # <circle> 0041
24B7 CIRCLED LATIN CAPITAL LETTER B
- # <circle> + 0042
+ # <circle> 0042
24B8 CIRCLED LATIN CAPITAL LETTER C
- # <circle> + 0043
+ # <circle> 0043
24B9 CIRCLED LATIN CAPITAL LETTER D
- # <circle> + 0044
+ # <circle> 0044
24BA CIRCLED LATIN CAPITAL LETTER E
- # <circle> + 0045
+ # <circle> 0045
24BB CIRCLED LATIN CAPITAL LETTER F
- # <circle> + 0046
+ # <circle> 0046
24BC CIRCLED LATIN CAPITAL LETTER G
- # <circle> + 0047
+ # <circle> 0047
24BD CIRCLED LATIN CAPITAL LETTER H
- # <circle> + 0048
+ # <circle> 0048
24BE CIRCLED LATIN CAPITAL LETTER I
- # <circle> + 0049
+ # <circle> 0049
24BF CIRCLED LATIN CAPITAL LETTER J
- # <circle> + 004A
+ # <circle> 004A
24C0 CIRCLED LATIN CAPITAL LETTER K
- # <circle> + 004B
+ # <circle> 004B
24C1 CIRCLED LATIN CAPITAL LETTER L
- # <circle> + 004C
+ # <circle> 004C
24C2 CIRCLED LATIN CAPITAL LETTER M
- # <circle> + 004D
+ # <circle> 004D
24C3 CIRCLED LATIN CAPITAL LETTER N
- # <circle> + 004E
+ # <circle> 004E
24C4 CIRCLED LATIN CAPITAL LETTER O
- # <circle> + 004F
+ # <circle> 004F
24C5 CIRCLED LATIN CAPITAL LETTER P
- # <circle> + 0050
+ # <circle> 0050
24C6 CIRCLED LATIN CAPITAL LETTER Q
- # <circle> + 0051
+ # <circle> 0051
24C7 CIRCLED LATIN CAPITAL LETTER R
- # <circle> + 0052
+ # <circle> 0052
24C8 CIRCLED LATIN CAPITAL LETTER S
- # <circle> + 0053
+ # <circle> 0053
24C9 CIRCLED LATIN CAPITAL LETTER T
- # <circle> + 0054
+ # <circle> 0054
24CA CIRCLED LATIN CAPITAL LETTER U
- # <circle> + 0055
+ # <circle> 0055
24CB CIRCLED LATIN CAPITAL LETTER V
- # <circle> + 0056
+ # <circle> 0056
24CC CIRCLED LATIN CAPITAL LETTER W
- # <circle> + 0057
+ # <circle> 0057
24CD CIRCLED LATIN CAPITAL LETTER X
- # <circle> + 0058
+ # <circle> 0058
24CE CIRCLED LATIN CAPITAL LETTER Y
- # <circle> + 0059
+ # <circle> 0059
24CF CIRCLED LATIN CAPITAL LETTER Z
- # <circle> + 005A
+ # <circle> 005A
24D0 CIRCLED LATIN SMALL LETTER A
- # <circle> + 0061
+ # <circle> 0061
24D1 CIRCLED LATIN SMALL LETTER B
- # <circle> + 0062
+ # <circle> 0062
24D2 CIRCLED LATIN SMALL LETTER C
- # <circle> + 0063
+ # <circle> 0063
24D3 CIRCLED LATIN SMALL LETTER D
- # <circle> + 0064
+ # <circle> 0064
24D4 CIRCLED LATIN SMALL LETTER E
- # <circle> + 0065
+ # <circle> 0065
24D5 CIRCLED LATIN SMALL LETTER F
- # <circle> + 0066
+ # <circle> 0066
24D6 CIRCLED LATIN SMALL LETTER G
- # <circle> + 0067
+ # <circle> 0067
24D7 CIRCLED LATIN SMALL LETTER H
- # <circle> + 0068
+ # <circle> 0068
24D8 CIRCLED LATIN SMALL LETTER I
- # <circle> + 0069
+ # <circle> 0069
24D9 CIRCLED LATIN SMALL LETTER J
- # <circle> + 006A
+ # <circle> 006A
24DA CIRCLED LATIN SMALL LETTER K
- # <circle> + 006B
+ # <circle> 006B
24DB CIRCLED LATIN SMALL LETTER L
- # <circle> + 006C
+ # <circle> 006C
24DC CIRCLED LATIN SMALL LETTER M
- # <circle> + 006D
+ # <circle> 006D
24DD CIRCLED LATIN SMALL LETTER N
- # <circle> + 006E
+ # <circle> 006E
24DE CIRCLED LATIN SMALL LETTER O
- # <circle> + 006F
+ # <circle> 006F
24DF CIRCLED LATIN SMALL LETTER P
- # <circle> + 0070
+ # <circle> 0070
24E0 CIRCLED LATIN SMALL LETTER Q
- # <circle> + 0071
+ # <circle> 0071
24E1 CIRCLED LATIN SMALL LETTER R
- # <circle> + 0072
+ # <circle> 0072
24E2 CIRCLED LATIN SMALL LETTER S
- # <circle> + 0073
+ # <circle> 0073
24E3 CIRCLED LATIN SMALL LETTER T
- # <circle> + 0074
+ # <circle> 0074
24E4 CIRCLED LATIN SMALL LETTER U
- # <circle> + 0075
+ # <circle> 0075
24E5 CIRCLED LATIN SMALL LETTER V
- # <circle> + 0076
+ # <circle> 0076
24E6 CIRCLED LATIN SMALL LETTER W
- # <circle> + 0077
+ # <circle> 0077
24E7 CIRCLED LATIN SMALL LETTER X
- # <circle> + 0078
+ # <circle> 0078
24E8 CIRCLED LATIN SMALL LETTER Y
- # <circle> + 0079
+ # <circle> 0079
24E9 CIRCLED LATIN SMALL LETTER Z
- # <circle> + 007A
+ # <circle> 007A
@ Additional circled numbers
24EA CIRCLED DIGIT ZERO
- # <circle> + 0030
+ # <circle> 0030
@@ 2500 Box Drawing 257F
@ Form and chart components
2500 BOX DRAWINGS LIGHT HORIZONTAL
@@ -8335,6 +10126,7 @@
2587 LOWER SEVEN EIGHTHS BLOCK
2588 FULL BLOCK
= solid
+ x (black square - 25A0)
2589 LEFT SEVEN EIGHTHS BLOCK
258A LEFT THREE QUARTERS BLOCK
258B LEFT FIVE EIGHTHS BLOCK
@@ -8343,19 +10135,23 @@
258E LEFT ONE QUARTER BLOCK
258F LEFT ONE EIGHTH BLOCK
2590 RIGHT HALF BLOCK
+@ Shade characters
2591 LIGHT SHADE
* 25%
2592 MEDIUM SHADE
* 50%
2593 DARK SHADE
* 75%
+@ Block elements
2594 UPPER ONE EIGHTH BLOCK
2595 RIGHT ONE EIGHTH BLOCK
@@ 25A0 Geometric Shapes 25FF
@ Geometric shapes
25A0 BLACK SQUARE
+ x (full block - 2588)
25A1 WHITE SQUARE
= quadrature
+ x (combining enclosing square - 20DE)
x (ballot box - 2610)
25A2 WHITE SQUARE WITH ROUNDED CORNERS
25A3 WHITE SQUARE CONTAINING BLACK SMALL SQUARE
@@ -8371,7 +10167,10 @@
25AD WHITE RECTANGLE
25AE BLACK VERTICAL RECTANGLE
= histogram marker
+ x (end of proof - 220E)
25AF WHITE VERTICAL RECTANGLE
+ x (apl functional symbol squish quad - 2337)
+ x (apl functional symbol quad - 2395)
25B0 BLACK PARALLELOGRAM
25B1 WHITE PARALLELOGRAM
25B2 BLACK UP-POINTING TRIANGLE
@@ -8382,12 +10181,14 @@
25B5 WHITE UP-POINTING SMALL TRIANGLE
25B6 BLACK RIGHT-POINTING TRIANGLE
25B7 WHITE RIGHT-POINTING TRIANGLE
+ = z notation range restriction
25B8 BLACK RIGHT-POINTING SMALL TRIANGLE
x (triangular bullet - 2023)
25B9 WHITE RIGHT-POINTING SMALL TRIANGLE
25BA BLACK RIGHT-POINTING POINTER
25BB WHITE RIGHT-POINTING POINTER
= forward arrow indicator
+ x (contains as normal subgroup - 22B3)
25BC BLACK DOWN-POINTING TRIANGLE
25BD WHITE DOWN-POINTING TRIANGLE
x (nabla - 2207)
@@ -8395,14 +10196,17 @@
25BF WHITE DOWN-POINTING SMALL TRIANGLE
25C0 BLACK LEFT-POINTING TRIANGLE
25C1 WHITE LEFT-POINTING TRIANGLE
+ = z notation domain restriction
25C2 BLACK LEFT-POINTING SMALL TRIANGLE
25C3 WHITE LEFT-POINTING SMALL TRIANGLE
25C4 BLACK LEFT-POINTING POINTER
25C5 WHITE LEFT-POINTING POINTER
= backward arrow indicator
+ x (normal subgroup of - 22B2)
25C6 BLACK DIAMOND
x (black diamond suit - 2666)
25C7 WHITE DIAMOND
+ x (combining enclosing diamond - 20DF)
x (diamond operator - 22C4)
x (white diamond suit - 2662)
25C8 WHITE DIAMOND CONTAINING BLACK SMALL DIAMOND
@@ -8438,6 +10242,7 @@
25DE LOWER RIGHT QUADRANT CIRCULAR ARC
25DF LOWER LEFT QUADRANT CIRCULAR ARC
25E0 UPPER HALF CIRCLE
+ x (arc - 2312)
25E1 LOWER HALF CIRCLE
25E2 BLACK LOWER RIGHT TRIANGLE
25E3 BLACK LOWER LEFT TRIANGLE
@@ -8459,8 +10264,17 @@
x (combining enclosing circle - 20DD)
x (white circle - 25CB)
x (ideographic number zero - 3007)
+@ Control code graphics
+25F0 WHITE SQUARE WITH UPPER LEFT QUADRANT
+25F1 WHITE SQUARE WITH LOWER LEFT QUADRANT
+25F2 WHITE SQUARE WITH LOWER RIGHT QUADRANT
+25F3 WHITE SQUARE WITH UPPER RIGHT QUADRANT
+25F4 WHITE CIRCLE WITH UPPER LEFT QUADRANT
+25F5 WHITE CIRCLE WITH LOWER LEFT QUADRANT
+25F6 WHITE CIRCLE WITH LOWER RIGHT QUADRANT
+25F7 WHITE CIRCLE WITH UPPER RIGHT QUADRANT
@@ 2600 Miscellaneous Symbols 26FF
-@ Miscellaneous symbols
+@ Weather and astrological symbols
2600 BLACK SUN WITH RAYS
= clear weather
x (sun - 2609)
@@ -8485,6 +10299,7 @@
260B DESCENDING NODE
260C CONJUNCTION
260D OPPOSITION
+@ Miscellaneous symbols
260E BLACK TELEPHONE
260F WHITE TELEPHONE
2610 BALLOT BOX
@@ -8495,25 +10310,27 @@
2613 SALTIRE
= St. Andrew's Cross
x (ballot x - 2717)
-2614 <reserved>
-2615 <reserved>
-2616 <reserved>
-2617 <reserved>
-2618 <reserved>
-2619 <reserved>
+2619 REVERSED ROTATED FLORAL HEART BULLET
+ * a binding signature mark
+ x (rotated floral heart bullet - 2767)
+@ Pointing hand symbols
261A BLACK LEFT POINTING INDEX
261B BLACK RIGHT POINTING INDEX
261C WHITE LEFT POINTING INDEX
261D WHITE UP POINTING INDEX
261E WHITE RIGHT POINTING INDEX
+ = fist (typographic term)
261F WHITE DOWN POINTING INDEX
+@ Warning signs
2620 SKULL AND CROSSBONES
= poison
2621 CAUTION SIGN
2622 RADIOACTIVE SIGN
2623 BIOHAZARD SIGN
+@ Medical and healing symbols
2624 CADUCEUS
2625 ANKH
+@ Religious and political symbols
2626 ORTHODOX CROSS
2627 CHI RHO
2628 CROSS OF LORRAINE
@@ -8525,6 +10342,8 @@
262D HAMMER AND SICKLE
262E PEACE SYMBOL
262F YIN YANG
+ x (tibetan symbol nor bu nyis -khyil - 0FCA)
+@ Yijing trigram symbols
2630 TRIGRAM FOR HEAVEN
= qian2
2631 TRIGRAM FOR LAKE
@@ -8541,7 +10360,9 @@
= gen4
2637 TRIGRAM FOR EARTH
= kun1
+@ Miscellaneous symbols
2638 WHEEL OF DHARMA
+ x (helm symbol - 2388)
2639 WHITE FROWNING FACE
263A WHITE SMILING FACE
= have a nice day!
@@ -8549,6 +10370,7 @@
263C WHITE SUN WITH RAYS
= compass
x (sun - 2609)
+@ Astrological symbols
263D FIRST QUARTER MOON
263E LAST QUARTER MOON
263F MERCURY
@@ -8563,6 +10385,7 @@
2645 URANUS
2646 NEPTUNE
2647 PLUTO
+@ Zodiacal symbols
2648 ARIES
2649 TAURUS
264A GEMINI
@@ -8577,6 +10400,7 @@
2651 CAPRICORN
2652 AQUARIUS
2653 PISCES
+@ Chess symbols
2654 WHITE CHESS KING
2655 WHITE CHESS QUEEN
2656 WHITE CHESS ROOK
@@ -8589,6 +10413,7 @@
265D BLACK CHESS BISHOP
265E BLACK CHESS KNIGHT
265F BLACK CHESS PAWN
+@ Playing card symbols
2660 BLACK SPADE SUIT
2661 WHITE HEART SUIT
2662 WHITE DIAMOND SUIT
@@ -8603,7 +10428,9 @@
2666 BLACK DIAMOND SUIT
x (black diamond - 25C6)
2667 WHITE CLUB SUIT
+@ Miscellaneous symbol
2668 HOT SPRINGS
+@ Musical symbols
2669 QUARTER NOTE
266A EIGHTH NOTE
266B BEAMED EIGHTH NOTES
@@ -8611,9 +10438,14 @@
266D MUSIC FLAT SIGN
266E MUSIC NATURAL SIGN
266F MUSIC SHARP SIGN
+ = z notation infix bag count
+@ Syriac cross symbols
+@+ These symbols are used in liturgical texts of Syriac-speaking churches.
+2670 WEST SYRIAC CROSS
+2671 EAST SYRIAC CROSS
@@ 2700 Dingbats 27BF
-@ Zapf dingbats
-2700 <reserved>
+@+ ITC Zapf dingbats series 100
+@ Miscellaneous
2701 UPPER BLADE SCISSORS
2702 BLACK SCISSORS
2703 LOWER BLADE SCISSORS
@@ -8639,10 +10471,13 @@
x (square root - 221A)
2714 HEAVY CHECK MARK
2715 MULTIPLICATION X
+ x (multiplication sign - 00D7)
+ x (box drawings light diagonal cross - 2573)
2716 HEAVY MULTIPLICATION X
2717 BALLOT X
x (saltire - 2613)
2718 HEAVY BALLOT X
+@ Crosses
2719 OUTLINED GREEK CROSS
271A HEAVY GREEK CROSS
271B OPEN CENTRE CROSS
@@ -8651,6 +10486,7 @@
271E SHADOWED WHITE LATIN CROSS
271F OUTLINED LATIN CROSS
2720 MALTESE CROSS
+@ Stars, asterisks and snowflakes
2721 STAR OF DAVID
2722 FOUR TEARDROP-SPOKED ASTERISK
2723 FOUR BALLOON-SPOKED ASTERISK
@@ -8701,6 +10537,7 @@
274A EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
274B HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK
= turbofan
+@ Miscellaneous
274C <reserved>
x (black circle - 25CF)
274D SHADOWED WHITE CIRCLE
@@ -8723,6 +10560,7 @@
x (vertical line - 007C)
2759 MEDIUM VERTICAL BAR
275A HEAVY VERTICAL BAR
+@ Punctuation ornaments
275B HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT
x (left single quotation mark - 2018)
275C HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT
@@ -8731,8 +10569,6 @@
x (left double quotation mark - 201C)
275E HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT
x (right double quotation mark - 201D)
-275F <reserved>
-2760 <reserved>
2761 CURVED STEM PARAGRAPH SIGN ORNAMENT
x (pilcrow sign - 00B6)
2762 HEAVY EXCLAMATION MARK ORNAMENT
@@ -8742,7 +10578,10 @@
x (black heart suit - 2665)
2765 ROTATED HEAVY BLACK HEART BULLET
2766 FLORAL HEART
+ = Aldus leaf
2767 ROTATED FLORAL HEART BULLET
+ = hedera, ivy leaf
+ x (reversed rotated floral heart bullet - 2619)
2768 <reserved>
x (black club suit - 2663)
2769 <reserved>
@@ -8751,6 +10590,7 @@
x (black heart suit - 2665)
276B <reserved>
x (black spade suit - 2660)
+@ Dingbat circled digits
276C <reserved>
x (circled digit one - 2460)
276D <reserved>
@@ -8801,6 +10641,7 @@
2791 DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT
2792 DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE
2793 DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN
+@ Dingbat arrows
2794 HEAVY WIDE-HEADED RIGHTWARDS ARROW
2795 <reserved>
x (rightwards arrow - 2192)
@@ -8832,7 +10673,6 @@
27AD HEAVY LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
27AE HEAVY UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
27AF NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
-27B0 <reserved>
27B1 NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW
27B2 CIRCLED HEAVY WHITE RIGHTWARDS ARROW
27B3 WHITE-FEATHERED RIGHTWARDS ARROW
@@ -8847,12 +10687,833 @@
27BC WEDGE-TAILED RIGHTWARDS ARROW
27BD HEAVY WEDGE-TAILED RIGHTWARDS ARROW
27BE OPEN-OUTLINED RIGHTWARDS ARROW
-@@ 27C0 Unassigned 2FFF
+@@ 2800 Braille Patterns 28FF
+@ Braille patterns
+2800 BRAILLE PATTERN BLANK
+2801 BRAILLE PATTERN DOTS-1
+2802 BRAILLE PATTERN DOTS-2
+2803 BRAILLE PATTERN DOTS-12
+2804 BRAILLE PATTERN DOTS-3
+2805 BRAILLE PATTERN DOTS-13
+2806 BRAILLE PATTERN DOTS-23
+2807 BRAILLE PATTERN DOTS-123
+2808 BRAILLE PATTERN DOTS-4
+2809 BRAILLE PATTERN DOTS-14
+280A BRAILLE PATTERN DOTS-24
+280B BRAILLE PATTERN DOTS-124
+280C BRAILLE PATTERN DOTS-34
+280D BRAILLE PATTERN DOTS-134
+280E BRAILLE PATTERN DOTS-234
+280F BRAILLE PATTERN DOTS-1234
+2810 BRAILLE PATTERN DOTS-5
+2811 BRAILLE PATTERN DOTS-15
+2812 BRAILLE PATTERN DOTS-25
+2813 BRAILLE PATTERN DOTS-125
+2814 BRAILLE PATTERN DOTS-35
+2815 BRAILLE PATTERN DOTS-135
+2816 BRAILLE PATTERN DOTS-235
+2817 BRAILLE PATTERN DOTS-1235
+2818 BRAILLE PATTERN DOTS-45
+2819 BRAILLE PATTERN DOTS-145
+281A BRAILLE PATTERN DOTS-245
+281B BRAILLE PATTERN DOTS-1245
+281C BRAILLE PATTERN DOTS-345
+281D BRAILLE PATTERN DOTS-1345
+281E BRAILLE PATTERN DOTS-2345
+281F BRAILLE PATTERN DOTS-12345
+2820 BRAILLE PATTERN DOTS-6
+2821 BRAILLE PATTERN DOTS-16
+2822 BRAILLE PATTERN DOTS-26
+2823 BRAILLE PATTERN DOTS-126
+2824 BRAILLE PATTERN DOTS-36
+2825 BRAILLE PATTERN DOTS-136
+2826 BRAILLE PATTERN DOTS-236
+2827 BRAILLE PATTERN DOTS-1236
+2828 BRAILLE PATTERN DOTS-46
+2829 BRAILLE PATTERN DOTS-146
+282A BRAILLE PATTERN DOTS-246
+282B BRAILLE PATTERN DOTS-1246
+282C BRAILLE PATTERN DOTS-346
+282D BRAILLE PATTERN DOTS-1346
+282E BRAILLE PATTERN DOTS-2346
+282F BRAILLE PATTERN DOTS-12346
+2830 BRAILLE PATTERN DOTS-56
+2831 BRAILLE PATTERN DOTS-156
+2832 BRAILLE PATTERN DOTS-256
+2833 BRAILLE PATTERN DOTS-1256
+2834 BRAILLE PATTERN DOTS-356
+2835 BRAILLE PATTERN DOTS-1356
+2836 BRAILLE PATTERN DOTS-2356
+2837 BRAILLE PATTERN DOTS-12356
+2838 BRAILLE PATTERN DOTS-456
+2839 BRAILLE PATTERN DOTS-1456
+283A BRAILLE PATTERN DOTS-2456
+283B BRAILLE PATTERN DOTS-12456
+283C BRAILLE PATTERN DOTS-3456
+283D BRAILLE PATTERN DOTS-13456
+283E BRAILLE PATTERN DOTS-23456
+283F BRAILLE PATTERN DOTS-123456
+2840 BRAILLE PATTERN DOTS-7
+2841 BRAILLE PATTERN DOTS-17
+2842 BRAILLE PATTERN DOTS-27
+2843 BRAILLE PATTERN DOTS-127
+2844 BRAILLE PATTERN DOTS-37
+2845 BRAILLE PATTERN DOTS-137
+2846 BRAILLE PATTERN DOTS-237
+2847 BRAILLE PATTERN DOTS-1237
+2848 BRAILLE PATTERN DOTS-47
+2849 BRAILLE PATTERN DOTS-147
+284A BRAILLE PATTERN DOTS-247
+284B BRAILLE PATTERN DOTS-1247
+284C BRAILLE PATTERN DOTS-347
+284D BRAILLE PATTERN DOTS-1347
+284E BRAILLE PATTERN DOTS-2347
+284F BRAILLE PATTERN DOTS-12347
+2850 BRAILLE PATTERN DOTS-57
+2851 BRAILLE PATTERN DOTS-157
+2852 BRAILLE PATTERN DOTS-257
+2853 BRAILLE PATTERN DOTS-1257
+2854 BRAILLE PATTERN DOTS-357
+2855 BRAILLE PATTERN DOTS-1357
+2856 BRAILLE PATTERN DOTS-2357
+2857 BRAILLE PATTERN DOTS-12357
+2858 BRAILLE PATTERN DOTS-457
+2859 BRAILLE PATTERN DOTS-1457
+285A BRAILLE PATTERN DOTS-2457
+285B BRAILLE PATTERN DOTS-12457
+285C BRAILLE PATTERN DOTS-3457
+285D BRAILLE PATTERN DOTS-13457
+285E BRAILLE PATTERN DOTS-23457
+285F BRAILLE PATTERN DOTS-123457
+2860 BRAILLE PATTERN DOTS-67
+2861 BRAILLE PATTERN DOTS-167
+2862 BRAILLE PATTERN DOTS-267
+2863 BRAILLE PATTERN DOTS-1267
+2864 BRAILLE PATTERN DOTS-367
+2865 BRAILLE PATTERN DOTS-1367
+2866 BRAILLE PATTERN DOTS-2367
+2867 BRAILLE PATTERN DOTS-12367
+2868 BRAILLE PATTERN DOTS-467
+2869 BRAILLE PATTERN DOTS-1467
+286A BRAILLE PATTERN DOTS-2467
+286B BRAILLE PATTERN DOTS-12467
+286C BRAILLE PATTERN DOTS-3467
+286D BRAILLE PATTERN DOTS-13467
+286E BRAILLE PATTERN DOTS-23467
+286F BRAILLE PATTERN DOTS-123467
+2870 BRAILLE PATTERN DOTS-567
+2871 BRAILLE PATTERN DOTS-1567
+2872 BRAILLE PATTERN DOTS-2567
+2873 BRAILLE PATTERN DOTS-12567
+2874 BRAILLE PATTERN DOTS-3567
+2875 BRAILLE PATTERN DOTS-13567
+2876 BRAILLE PATTERN DOTS-23567
+2877 BRAILLE PATTERN DOTS-123567
+2878 BRAILLE PATTERN DOTS-4567
+2879 BRAILLE PATTERN DOTS-14567
+287A BRAILLE PATTERN DOTS-24567
+287B BRAILLE PATTERN DOTS-124567
+287C BRAILLE PATTERN DOTS-34567
+287D BRAILLE PATTERN DOTS-134567
+287E BRAILLE PATTERN DOTS-234567
+287F BRAILLE PATTERN DOTS-1234567
+2880 BRAILLE PATTERN DOTS-8
+2881 BRAILLE PATTERN DOTS-18
+2882 BRAILLE PATTERN DOTS-28
+2883 BRAILLE PATTERN DOTS-128
+2884 BRAILLE PATTERN DOTS-38
+2885 BRAILLE PATTERN DOTS-138
+2886 BRAILLE PATTERN DOTS-238
+2887 BRAILLE PATTERN DOTS-1238
+2888 BRAILLE PATTERN DOTS-48
+2889 BRAILLE PATTERN DOTS-148
+288A BRAILLE PATTERN DOTS-248
+288B BRAILLE PATTERN DOTS-1248
+288C BRAILLE PATTERN DOTS-348
+288D BRAILLE PATTERN DOTS-1348
+288E BRAILLE PATTERN DOTS-2348
+288F BRAILLE PATTERN DOTS-12348
+2890 BRAILLE PATTERN DOTS-58
+2891 BRAILLE PATTERN DOTS-158
+2892 BRAILLE PATTERN DOTS-258
+2893 BRAILLE PATTERN DOTS-1258
+2894 BRAILLE PATTERN DOTS-358
+2895 BRAILLE PATTERN DOTS-1358
+2896 BRAILLE PATTERN DOTS-2358
+2897 BRAILLE PATTERN DOTS-12358
+2898 BRAILLE PATTERN DOTS-458
+2899 BRAILLE PATTERN DOTS-1458
+289A BRAILLE PATTERN DOTS-2458
+289B BRAILLE PATTERN DOTS-12458
+289C BRAILLE PATTERN DOTS-3458
+289D BRAILLE PATTERN DOTS-13458
+289E BRAILLE PATTERN DOTS-23458
+289F BRAILLE PATTERN DOTS-123458
+28A0 BRAILLE PATTERN DOTS-68
+28A1 BRAILLE PATTERN DOTS-168
+28A2 BRAILLE PATTERN DOTS-268
+28A3 BRAILLE PATTERN DOTS-1268
+28A4 BRAILLE PATTERN DOTS-368
+28A5 BRAILLE PATTERN DOTS-1368
+28A6 BRAILLE PATTERN DOTS-2368
+28A7 BRAILLE PATTERN DOTS-12368
+28A8 BRAILLE PATTERN DOTS-468
+28A9 BRAILLE PATTERN DOTS-1468
+28AA BRAILLE PATTERN DOTS-2468
+28AB BRAILLE PATTERN DOTS-12468
+28AC BRAILLE PATTERN DOTS-3468
+28AD BRAILLE PATTERN DOTS-13468
+28AE BRAILLE PATTERN DOTS-23468
+28AF BRAILLE PATTERN DOTS-123468
+28B0 BRAILLE PATTERN DOTS-568
+28B1 BRAILLE PATTERN DOTS-1568
+28B2 BRAILLE PATTERN DOTS-2568
+28B3 BRAILLE PATTERN DOTS-12568
+28B4 BRAILLE PATTERN DOTS-3568
+28B5 BRAILLE PATTERN DOTS-13568
+28B6 BRAILLE PATTERN DOTS-23568
+28B7 BRAILLE PATTERN DOTS-123568
+28B8 BRAILLE PATTERN DOTS-4568
+28B9 BRAILLE PATTERN DOTS-14568
+28BA BRAILLE PATTERN DOTS-24568
+28BB BRAILLE PATTERN DOTS-124568
+28BC BRAILLE PATTERN DOTS-34568
+28BD BRAILLE PATTERN DOTS-134568
+28BE BRAILLE PATTERN DOTS-234568
+28BF BRAILLE PATTERN DOTS-1234568
+28C0 BRAILLE PATTERN DOTS-78
+28C1 BRAILLE PATTERN DOTS-178
+28C2 BRAILLE PATTERN DOTS-278
+28C3 BRAILLE PATTERN DOTS-1278
+28C4 BRAILLE PATTERN DOTS-378
+28C5 BRAILLE PATTERN DOTS-1378
+28C6 BRAILLE PATTERN DOTS-2378
+28C7 BRAILLE PATTERN DOTS-12378
+28C8 BRAILLE PATTERN DOTS-478
+28C9 BRAILLE PATTERN DOTS-1478
+28CA BRAILLE PATTERN DOTS-2478
+28CB BRAILLE PATTERN DOTS-12478
+28CC BRAILLE PATTERN DOTS-3478
+28CD BRAILLE PATTERN DOTS-13478
+28CE BRAILLE PATTERN DOTS-23478
+28CF BRAILLE PATTERN DOTS-123478
+28D0 BRAILLE PATTERN DOTS-578
+28D1 BRAILLE PATTERN DOTS-1578
+28D2 BRAILLE PATTERN DOTS-2578
+28D3 BRAILLE PATTERN DOTS-12578
+28D4 BRAILLE PATTERN DOTS-3578
+28D5 BRAILLE PATTERN DOTS-13578
+28D6 BRAILLE PATTERN DOTS-23578
+28D7 BRAILLE PATTERN DOTS-123578
+28D8 BRAILLE PATTERN DOTS-4578
+28D9 BRAILLE PATTERN DOTS-14578
+28DA BRAILLE PATTERN DOTS-24578
+28DB BRAILLE PATTERN DOTS-124578
+28DC BRAILLE PATTERN DOTS-34578
+28DD BRAILLE PATTERN DOTS-134578
+28DE BRAILLE PATTERN DOTS-234578
+28DF BRAILLE PATTERN DOTS-1234578
+28E0 BRAILLE PATTERN DOTS-678
+28E1 BRAILLE PATTERN DOTS-1678
+28E2 BRAILLE PATTERN DOTS-2678
+28E3 BRAILLE PATTERN DOTS-12678
+28E4 BRAILLE PATTERN DOTS-3678
+28E5 BRAILLE PATTERN DOTS-13678
+28E6 BRAILLE PATTERN DOTS-23678
+28E7 BRAILLE PATTERN DOTS-123678
+28E8 BRAILLE PATTERN DOTS-4678
+28E9 BRAILLE PATTERN DOTS-14678
+28EA BRAILLE PATTERN DOTS-24678
+28EB BRAILLE PATTERN DOTS-124678
+28EC BRAILLE PATTERN DOTS-34678
+28ED BRAILLE PATTERN DOTS-134678
+28EE BRAILLE PATTERN DOTS-234678
+28EF BRAILLE PATTERN DOTS-1234678
+28F0 BRAILLE PATTERN DOTS-5678
+28F1 BRAILLE PATTERN DOTS-15678
+28F2 BRAILLE PATTERN DOTS-25678
+28F3 BRAILLE PATTERN DOTS-125678
+28F4 BRAILLE PATTERN DOTS-35678
+28F5 BRAILLE PATTERN DOTS-135678
+28F6 BRAILLE PATTERN DOTS-235678
+28F7 BRAILLE PATTERN DOTS-1235678
+28F8 BRAILLE PATTERN DOTS-45678
+28F9 BRAILLE PATTERN DOTS-145678
+28FA BRAILLE PATTERN DOTS-245678
+28FB BRAILLE PATTERN DOTS-1245678
+28FC BRAILLE PATTERN DOTS-345678
+28FD BRAILLE PATTERN DOTS-1345678
+28FE BRAILLE PATTERN DOTS-2345678
+28FF BRAILLE PATTERN DOTS-12345678
+@@ 2E80 CJK Radicals Supplement 2EFF
+@ CJK radicals supplement
+2E80 CJK RADICAL REPEAT
+2E81 CJK RADICAL CLIFF
+2E82 CJK RADICAL SECOND ONE
+2E83 CJK RADICAL SECOND TWO
+2E84 CJK RADICAL SECOND THREE
+2E85 CJK RADICAL PERSON
+2E86 CJK RADICAL BOX
+2E87 CJK RADICAL TABLE
+2E88 CJK RADICAL KNIFE ONE
+2E89 CJK RADICAL KNIFE TWO
+2E8A CJK RADICAL DIVINATION
+2E8B CJK RADICAL SEAL
+2E8C CJK RADICAL SMALL ONE
+2E8D CJK RADICAL SMALL TWO
+2E8E CJK RADICAL LAME ONE
+2E8F CJK RADICAL LAME TWO
+2E90 CJK RADICAL LAME THREE
+2E91 CJK RADICAL LAME FOUR
+2E92 CJK RADICAL SNAKE
+2E93 CJK RADICAL THREAD
+2E94 CJK RADICAL SNOUT ONE
+2E95 CJK RADICAL SNOUT TWO
+2E96 CJK RADICAL HEART ONE
+2E97 CJK RADICAL HEART TWO
+2E98 CJK RADICAL HAND
+2E99 CJK RADICAL RAP
+2E9B CJK RADICAL CHOKE
+2E9C CJK RADICAL SUN
+2E9D CJK RADICAL MOON
+2E9E CJK RADICAL DEATH
+2E9F CJK RADICAL MOTHER
+ # 6BCD
+2EA0 CJK RADICAL CIVILIAN
+2EA1 CJK RADICAL WATER ONE
+2EA2 CJK RADICAL WATER TWO
+2EA3 CJK RADICAL FIRE
+2EA4 CJK RADICAL PAW ONE
+2EA5 CJK RADICAL PAW TWO
+2EA6 CJK RADICAL SIMPLIFIED HALF TREE TRUNK
+2EA7 CJK RADICAL COW
+2EA8 CJK RADICAL DOG
+2EA9 CJK RADICAL JADE
+2EAA CJK RADICAL BOLT OF CLOTH
+2EAB CJK RADICAL EYE
+2EAC CJK RADICAL SPIRIT ONE
+2EAD CJK RADICAL SPIRIT TWO
+2EAE CJK RADICAL BAMBOO
+2EAF CJK RADICAL SILK
+2EB0 CJK RADICAL C-SIMPLIFIED SILK
+2EB1 CJK RADICAL NET ONE
+2EB2 CJK RADICAL NET TWO
+2EB3 CJK RADICAL NET THREE
+2EB4 CJK RADICAL NET FOUR
+2EB5 CJK RADICAL MESH
+2EB6 CJK RADICAL SHEEP
+2EB7 CJK RADICAL RAM
+2EB8 CJK RADICAL EWE
+2EB9 CJK RADICAL OLD
+2EBA CJK RADICAL BRUSH ONE
+2EBB CJK RADICAL BRUSH TWO
+2EBC CJK RADICAL MEAT
+2EBD CJK RADICAL MORTAR
+2EBE CJK RADICAL GRASS ONE
+2EBF CJK RADICAL GRASS TWO
+2EC0 CJK RADICAL GRASS THREE
+2EC1 CJK RADICAL TIGER
+2EC2 CJK RADICAL CLOTHES
+2EC3 CJK RADICAL WEST ONE
+2EC4 CJK RADICAL WEST TWO
+2EC5 CJK RADICAL C-SIMPLIFIED SEE
+2EC6 CJK RADICAL SIMPLIFIED HORN
+2EC7 CJK RADICAL HORN
+2EC8 CJK RADICAL C-SIMPLIFIED SPEECH
+2EC9 CJK RADICAL C-SIMPLIFIED SHELL
+2ECA CJK RADICAL FOOT
+2ECB CJK RADICAL C-SIMPLIFIED CART
+2ECC CJK RADICAL SIMPLIFIED WALK
+2ECD CJK RADICAL WALK ONE
+2ECE CJK RADICAL WALK TWO
+2ECF CJK RADICAL CITY
+2ED0 CJK RADICAL C-SIMPLIFIED GOLD
+2ED1 CJK RADICAL LONG ONE
+2ED2 CJK RADICAL LONG TWO
+2ED3 CJK RADICAL C-SIMPLIFIED LONG
+2ED4 CJK RADICAL C-SIMPLIFIED GATE
+2ED5 CJK RADICAL MOUND ONE
+2ED6 CJK RADICAL MOUND TWO
+2ED7 CJK RADICAL RAIN
+2ED8 CJK RADICAL BLUE
+2ED9 CJK RADICAL C-SIMPLIFIED TANNED LEATHER
+2EDA CJK RADICAL C-SIMPLIFIED LEAF
+2EDB CJK RADICAL C-SIMPLIFIED WIND
+2EDC CJK RADICAL C-SIMPLIFIED FLY
+2EDD CJK RADICAL EAT ONE
+2EDE CJK RADICAL EAT TWO
+2EDF CJK RADICAL EAT THREE
+2EE0 CJK RADICAL C-SIMPLIFIED EAT
+2EE1 CJK RADICAL HEAD
+2EE2 CJK RADICAL C-SIMPLIFIED HORSE
+2EE3 CJK RADICAL BONE
+2EE4 CJK RADICAL GHOST
+2EE5 CJK RADICAL C-SIMPLIFIED FISH
+2EE6 CJK RADICAL C-SIMPLIFIED BIRD
+2EE7 CJK RADICAL C-SIMPLIFIED SALT
+2EE8 CJK RADICAL SIMPLIFIED WHEAT
+2EE9 CJK RADICAL SIMPLIFIED YELLOW
+2EEA CJK RADICAL C-SIMPLIFIED FROG
+2EEB CJK RADICAL J-SIMPLIFIED EVEN
+2EEC CJK RADICAL C-SIMPLIFIED EVEN
+2EED CJK RADICAL J-SIMPLIFIED TOOTH
+2EEE CJK RADICAL C-SIMPLIFIED TOOTH
+2EEF CJK RADICAL J-SIMPLIFIED DRAGON
+2EF0 CJK RADICAL C-SIMPLIFIED DRAGON
+2EF1 CJK RADICAL TURTLE
+2EF2 CJK RADICAL J-SIMPLIFIED TURTLE
+2EF3 CJK RADICAL C-SIMPLIFIED TURTLE
+ # 9F9F
+@@ 2F00 Kangxi Radicals 2FDF
+@ Kangxi radicals
+2F00 KANGXI RADICAL ONE
+ # 4E00
+2F01 KANGXI RADICAL LINE
+ # 4E28
+2F02 KANGXI RADICAL DOT
+ # 4E36
+2F03 KANGXI RADICAL SLASH
+ # 4E3F
+2F04 KANGXI RADICAL SECOND
+ # 4E59
+2F05 KANGXI RADICAL HOOK
+ # 4E85
+2F06 KANGXI RADICAL TWO
+ # 4E8C
+2F07 KANGXI RADICAL LID
+ # 4EA0
+2F08 KANGXI RADICAL MAN
+ # 4EBA
+2F09 KANGXI RADICAL LEGS
+ # 513F
+2F0A KANGXI RADICAL ENTER
+ # 5165
+2F0B KANGXI RADICAL EIGHT
+ # 516B
+2F0C KANGXI RADICAL DOWN BOX
+ # 5182
+2F0D KANGXI RADICAL COVER
+ # 5196
+2F0E KANGXI RADICAL ICE
+ # 51AB
+2F0F KANGXI RADICAL TABLE
+ # 51E0
+2F10 KANGXI RADICAL OPEN BOX
+ # 51F5
+2F11 KANGXI RADICAL KNIFE
+ # 5200
+2F12 KANGXI RADICAL POWER
+ # 529B
+2F13 KANGXI RADICAL WRAP
+ # 52F9
+2F14 KANGXI RADICAL SPOON
+ # 5315
+2F15 KANGXI RADICAL RIGHT OPEN BOX
+ # 531A
+2F16 KANGXI RADICAL HIDING ENCLOSURE
+ # 5338
+2F17 KANGXI RADICAL TEN
+ # 5341
+2F18 KANGXI RADICAL DIVINATION
+ # 535C
+2F19 KANGXI RADICAL SEAL
+ # 5369
+2F1A KANGXI RADICAL CLIFF
+ # 5382
+2F1B KANGXI RADICAL PRIVATE
+ # 53B6
+2F1C KANGXI RADICAL AGAIN
+ # 53C8
+2F1D KANGXI RADICAL MOUTH
+ # 53E3
+2F1E KANGXI RADICAL ENCLOSURE
+ # 56D7
+2F1F KANGXI RADICAL EARTH
+ # 571F
+2F20 KANGXI RADICAL SCHOLAR
+ # 58EB
+2F21 KANGXI RADICAL GO
+ # 5902
+2F22 KANGXI RADICAL GO SLOWLY
+ # 590A
+2F23 KANGXI RADICAL EVENING
+ # 5915
+2F24 KANGXI RADICAL BIG
+ # 5927
+2F25 KANGXI RADICAL WOMAN
+ # 5973
+2F26 KANGXI RADICAL CHILD
+ # 5B50
+2F27 KANGXI RADICAL ROOF
+ # 5B80
+2F28 KANGXI RADICAL INCH
+ # 5BF8
+2F29 KANGXI RADICAL SMALL
+ # 5C0F
+2F2A KANGXI RADICAL LAME
+ # 5C22
+2F2B KANGXI RADICAL CORPSE
+ # 5C38
+2F2C KANGXI RADICAL SPROUT
+ # 5C6E
+2F2D KANGXI RADICAL MOUNTAIN
+ # 5C71
+2F2E KANGXI RADICAL RIVER
+ # 5DDB
+2F2F KANGXI RADICAL WORK
+ # 5DE5
+2F30 KANGXI RADICAL ONESELF
+ # 5DF1
+2F31 KANGXI RADICAL TURBAN
+ # 5DFE
+2F32 KANGXI RADICAL DRY
+ # 5E72
+2F33 KANGXI RADICAL SHORT THREAD
+ # 5E7A
+2F34 KANGXI RADICAL DOTTED CLIFF
+ # 5E7F
+2F35 KANGXI RADICAL LONG STRIDE
+ # 5EF4
+2F36 KANGXI RADICAL TWO HANDS
+ # 5EFE
+2F37 KANGXI RADICAL SHOOT
+ # 5F0B
+2F38 KANGXI RADICAL BOW
+ # 5F13
+2F39 KANGXI RADICAL SNOUT
+ # 5F50
+2F3A KANGXI RADICAL BRISTLE
+ # 5F61
+2F3B KANGXI RADICAL STEP
+ # 5F73
+2F3C KANGXI RADICAL HEART
+ # 5FC3
+2F3D KANGXI RADICAL HALBERD
+ # 6208
+2F3E KANGXI RADICAL DOOR
+ # 6236
+2F3F KANGXI RADICAL HAND
+ # 624B
+2F40 KANGXI RADICAL BRANCH
+ # 652F
+2F41 KANGXI RADICAL RAP
+ # 6534
+2F42 KANGXI RADICAL SCRIPT
+ # 6587
+2F43 KANGXI RADICAL DIPPER
+ # 6597
+2F44 KANGXI RADICAL AXE
+ # 65A4
+2F45 KANGXI RADICAL SQUARE
+ # 65B9
+2F46 KANGXI RADICAL NOT
+ # 65E0
+2F47 KANGXI RADICAL SUN
+ # 65E5
+2F48 KANGXI RADICAL SAY
+ # 66F0
+2F49 KANGXI RADICAL MOON
+ # 6708
+2F4A KANGXI RADICAL TREE
+ # 6728
+2F4B KANGXI RADICAL LACK
+ # 6B20
+2F4C KANGXI RADICAL STOP
+ # 6B62
+2F4D KANGXI RADICAL DEATH
+ # 6B79
+2F4E KANGXI RADICAL WEAPON
+ # 6BB3
+2F4F KANGXI RADICAL DO NOT
+ # 6BCB
+2F50 KANGXI RADICAL COMPARE
+ # 6BD4
+2F51 KANGXI RADICAL FUR
+ # 6BDB
+2F52 KANGXI RADICAL CLAN
+ # 6C0F
+2F53 KANGXI RADICAL STEAM
+ # 6C14
+2F54 KANGXI RADICAL WATER
+ # 6C34
+2F55 KANGXI RADICAL FIRE
+ # 706B
+2F56 KANGXI RADICAL CLAW
+ # 722A
+2F57 KANGXI RADICAL FATHER
+ # 7236
+2F58 KANGXI RADICAL DOUBLE X
+ # 723B
+2F59 KANGXI RADICAL HALF TREE TRUNK
+ # 723F
+2F5A KANGXI RADICAL SLICE
+ # 7247
+2F5B KANGXI RADICAL FANG
+ # 7259
+2F5C KANGXI RADICAL COW
+ # 725B
+2F5D KANGXI RADICAL DOG
+ # 72AC
+2F5E KANGXI RADICAL PROFOUND
+ # 7384
+2F5F KANGXI RADICAL JADE
+ # 7389
+2F60 KANGXI RADICAL MELON
+ # 74DC
+2F61 KANGXI RADICAL TILE
+ # 74E6
+2F62 KANGXI RADICAL SWEET
+ # 7518
+2F63 KANGXI RADICAL LIFE
+ # 751F
+2F64 KANGXI RADICAL USE
+ # 7528
+2F65 KANGXI RADICAL FIELD
+ # 7530
+2F66 KANGXI RADICAL BOLT OF CLOTH
+ # 758B
+2F67 KANGXI RADICAL SICKNESS
+ # 7592
+2F68 KANGXI RADICAL DOTTED TENT
+ # 7676
+2F69 KANGXI RADICAL WHITE
+ # 767D
+2F6A KANGXI RADICAL SKIN
+ # 76AE
+2F6B KANGXI RADICAL DISH
+ # 76BF
+2F6C KANGXI RADICAL EYE
+ # 76EE
+2F6D KANGXI RADICAL SPEAR
+ # 77DB
+2F6E KANGXI RADICAL ARROW
+ # 77E2
+2F6F KANGXI RADICAL STONE
+ # 77F3
+2F70 KANGXI RADICAL SPIRIT
+ # 793A
+2F71 KANGXI RADICAL TRACK
+ # 79B8
+2F72 KANGXI RADICAL GRAIN
+ # 79BE
+2F73 KANGXI RADICAL CAVE
+ # 7A74
+2F74 KANGXI RADICAL STAND
+ # 7ACB
+2F75 KANGXI RADICAL BAMBOO
+ # 7AF9
+2F76 KANGXI RADICAL RICE
+ # 7C73
+2F77 KANGXI RADICAL SILK
+ # 7CF8
+2F78 KANGXI RADICAL JAR
+ # 7F36
+2F79 KANGXI RADICAL NET
+ # 7F51
+2F7A KANGXI RADICAL SHEEP
+ # 7F8A
+2F7B KANGXI RADICAL FEATHER
+ # 7FBD
+2F7C KANGXI RADICAL OLD
+ # 8001
+2F7D KANGXI RADICAL AND
+ # 800C
+2F7E KANGXI RADICAL PLOW
+ # 8012
+2F7F KANGXI RADICAL EAR
+ # 8033
+2F80 KANGXI RADICAL BRUSH
+ # 807F
+2F81 KANGXI RADICAL MEAT
+ # 8089
+2F82 KANGXI RADICAL MINISTER
+ # 81E3
+2F83 KANGXI RADICAL SELF
+ # 81EA
+2F84 KANGXI RADICAL ARRIVE
+ # 81F3
+2F85 KANGXI RADICAL MORTAR
+ # 81FC
+2F86 KANGXI RADICAL TONGUE
+ # 820C
+2F87 KANGXI RADICAL OPPOSE
+ # 821B
+2F88 KANGXI RADICAL BOAT
+ # 821F
+2F89 KANGXI RADICAL STOPPING
+ # 826E
+2F8A KANGXI RADICAL COLOR
+ # 8272
+2F8B KANGXI RADICAL GRASS
+ # 8278
+2F8C KANGXI RADICAL TIGER
+ # 864D
+2F8D KANGXI RADICAL INSECT
+ # 866B
+2F8E KANGXI RADICAL BLOOD
+ # 8840
+2F8F KANGXI RADICAL WALK ENCLOSURE
+ # 884C
+2F90 KANGXI RADICAL CLOTHES
+ # 8863
+2F91 KANGXI RADICAL WEST
+ # 897E
+2F92 KANGXI RADICAL SEE
+ # 898B
+2F93 KANGXI RADICAL HORN
+ # 89D2
+2F94 KANGXI RADICAL SPEECH
+ # 8A00
+2F95 KANGXI RADICAL VALLEY
+ # 8C37
+2F96 KANGXI RADICAL BEAN
+ # 8C46
+2F97 KANGXI RADICAL PIG
+ # 8C55
+2F98 KANGXI RADICAL BADGER
+ # 8C78
+2F99 KANGXI RADICAL SHELL
+ # 8C9D
+2F9A KANGXI RADICAL RED
+ # 8D64
+2F9B KANGXI RADICAL RUN
+ # 8D70
+2F9C KANGXI RADICAL FOOT
+ # 8DB3
+2F9D KANGXI RADICAL BODY
+ # 8EAB
+2F9E KANGXI RADICAL CART
+ # 8ECA
+2F9F KANGXI RADICAL BITTER
+ # 8F9B
+2FA0 KANGXI RADICAL MORNING
+ # 8FB0
+2FA1 KANGXI RADICAL WALK
+ # 8FB5
+2FA2 KANGXI RADICAL CITY
+ # 9091
+2FA3 KANGXI RADICAL WINE
+ # 9149
+2FA4 KANGXI RADICAL DISTINGUISH
+ # 91C6
+2FA5 KANGXI RADICAL VILLAGE
+ # 91CC
+2FA6 KANGXI RADICAL GOLD
+ # 91D1
+2FA7 KANGXI RADICAL LONG
+ # 9577
+2FA8 KANGXI RADICAL GATE
+ # 9580
+2FA9 KANGXI RADICAL MOUND
+ # 961C
+2FAA KANGXI RADICAL SLAVE
+ # 96B6
+2FAB KANGXI RADICAL SHORT TAILED BIRD
+ # 96B9
+2FAC KANGXI RADICAL RAIN
+ # 96E8
+2FAD KANGXI RADICAL BLUE
+ # 9751
+2FAE KANGXI RADICAL WRONG
+ # 975E
+2FAF KANGXI RADICAL FACE
+ # 9762
+2FB0 KANGXI RADICAL LEATHER
+ # 9769
+2FB1 KANGXI RADICAL TANNED LEATHER
+ # 97CB
+2FB2 KANGXI RADICAL LEEK
+ # 97ED
+2FB3 KANGXI RADICAL SOUND
+ # 97F3
+2FB4 KANGXI RADICAL LEAF
+ # 9801
+2FB5 KANGXI RADICAL WIND
+ # 98A8
+2FB6 KANGXI RADICAL FLY
+ # 98DB
+2FB7 KANGXI RADICAL EAT
+ # 98DF
+2FB8 KANGXI RADICAL HEAD
+ # 9996
+2FB9 KANGXI RADICAL FRAGRANT
+ # 9999
+2FBA KANGXI RADICAL HORSE
+ # 99AC
+2FBB KANGXI RADICAL BONE
+ # 9AA8
+2FBC KANGXI RADICAL TALL
+ # 9AD8
+2FBD KANGXI RADICAL HAIR
+ # 9ADF
+2FBE KANGXI RADICAL FIGHT
+ # 9B25
+2FBF KANGXI RADICAL SACRIFICIAL WINE
+ # 9B2F
+2FC0 KANGXI RADICAL CAULDRON
+ # 9B32
+2FC1 KANGXI RADICAL GHOST
+ # 9B3C
+2FC2 KANGXI RADICAL FISH
+ # 9B5A
+2FC3 KANGXI RADICAL BIRD
+ # 9CE5
+2FC4 KANGXI RADICAL SALT
+ # 9E75
+2FC5 KANGXI RADICAL DEER
+ # 9E7F
+2FC6 KANGXI RADICAL WHEAT
+ # 9EA5
+2FC7 KANGXI RADICAL HEMP
+ # 9EBB
+2FC8 KANGXI RADICAL YELLOW
+ # 9EC3
+2FC9 KANGXI RADICAL MILLET
+ # 9ECD
+2FCA KANGXI RADICAL BLACK
+ # 9ED1
+2FCB KANGXI RADICAL EMBROIDERY
+ # 9EF9
+2FCC KANGXI RADICAL FROG
+ # 9EFD
+2FCD KANGXI RADICAL TRIPOD
+ # 9F0E
+2FCE KANGXI RADICAL DRUM
+ # 9F13
+2FCF KANGXI RADICAL RAT
+ # 9F20
+2FD0 KANGXI RADICAL NOSE
+ # 9F3B
+2FD1 KANGXI RADICAL EVEN
+ # 9F4A
+2FD2 KANGXI RADICAL TOOTH
+ # 9F52
+2FD3 KANGXI RADICAL DRAGON
+ # 9F8D
+2FD4 KANGXI RADICAL TURTLE
+ # 9F9C
+2FD5 KANGXI RADICAL FLUTE
+ # 9FA0
+@@ 2FF0 Ideographic Description Characters 2FFF
+@ Ideographic description characters
+@+ These are visibly displayed graphic characters, not invisible composition controls.
+2FF0 IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT
+2FF1 IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO BELOW
+2FF2 IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO MIDDLE AND RIGHT
+2FF3 IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO MIDDLE AND BELOW
+2FF4 IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND
+2FF5 IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM ABOVE
+2FF6 IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM BELOW
+2FF7 IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LEFT
+2FF8 IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER LEFT
+2FF9 IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER RIGHT
+2FFA IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LOWER LEFT
+2FFB IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID
@@ 3000 CJK Symbols and Punctuation 303F
@ CJK symbols and punctuation
3000 IDEOGRAPHIC SPACE
x (space - 0020)
- # <wide> + 0020
+ # <wide> 0020
3001 IDEOGRAPHIC COMMA
x (comma - 002C)
3002 IDEOGRAPHIC FULL STOP
@@ -8875,12 +11536,16 @@
x (single right-pointing angle quotation mark - 203A)
x (right-pointing angle bracket - 232A)
300A LEFT DOUBLE ANGLE BRACKET
+ = z notation left chevron bracket
x (left-pointing double angle quotation mark - 00AB)
300B RIGHT DOUBLE ANGLE BRACKET
+ = z notation right chevron bracket
x (right-pointing double angle quotation mark - 00BB)
300C LEFT CORNER BRACKET
+ x (left ceiling - 2308)
300D RIGHT CORNER BRACKET
* used as quotation marks
+ x (right floor - 230B)
300E LEFT WHITE CORNER BRACKET
300F RIGHT WHITE CORNER BRACKET
* used as quotation marks
@@ -8896,18 +11561,23 @@
3018 LEFT WHITE TORTOISE SHELL BRACKET
3019 RIGHT WHITE TORTOISE SHELL BRACKET
301A LEFT WHITE SQUARE BRACKET
+ = z notation left bag bracket
301B RIGHT WHITE SQUARE BRACKET
+ = z notation right bag bracket
301C WAVE DASH
- * JIS punctuation
+@+ * This character was encoded to match JIS C 6226-1978 1-33 "wave dash". Subsequent revisions of the JIS standard and industry practice have settled on JIS 1-33 as being the fullwidth tilde character.
x (wavy dash - 3030)
+ x (fullwidth tilde - FF5E)
301D REVERSED DOUBLE PRIME QUOTATION MARK
+ * sometimes depicted as double prime quotation mark
x (left double quotation mark - 201C)
x (reversed double prime - 2036)
301E DOUBLE PRIME QUOTATION MARK
+ * this is a mistaken analogue to 201D; 301F is preferred
x (right double quotation mark - 201D)
x (double prime - 2033)
301F LOW DOUBLE PRIME QUOTATION MARK
- x (double low-9 quotation mark - 201E)
+ * may be depicted as low inverse double prime quotation mark
3020 POSTAL MARK FACE
@ Hangzhou-style numerals
3021 HANGZHOU NUMERAL ONE
@@ -8925,7 +11595,9 @@
302C IDEOGRAPHIC DEPARTING TONE MARK
302D IDEOGRAPHIC ENTERING TONE MARK
302E HANGUL SINGLE DOT TONE MARK
+ = single dot Bangjeom
302F HANGUL DOUBLE DOT TONE MARK
+ = double dot Bangjeom
@ Other CJK symbols
3030 WAVY DASH
x (wavy line - 2307)
@@ -8938,19 +11610,23 @@
* the preceding two are glyphs used in conjunction with the following glyph
3035 VERTICAL KANA REPEAT MARK LOWER HALF
3036 CIRCLED POSTAL MARK
- # 3012
+ # 3012 postal mark
3037 IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL
-3038 <reserved>
-3039 <reserved>
-303A <reserved>
-303B <reserved>
-303C <reserved>
-303D <reserved>
-303E <reserved>
+@ Additional Hangzhou-style numerals
+3038 HANGZHOU NUMERAL TEN
+ # 5341
+3039 HANGZHOU NUMERAL TWENTY
+ # 5344
+303A HANGZHOU NUMERAL THIRTY
+ # 5345
+@ Special CJK indicators
+@+ These are visibly displayed graphic characters, not invisible formatting controls.
+303E IDEOGRAPHIC VARIATION INDICATOR
+ * visual indicator that the following ideograph is to be taken as a variant of the intended character
303F IDEOGRAPHIC HALF FILL SPACE
+ * visual indicator of a screen space for half of an ideograph
@@ 3040 Hiragana 309F
@ Based on JIS X 0208
-3040 <reserved>
3041 HIRAGANA LETTER SMALL A
3042 HIRAGANA LETTER A
3043 HIRAGANA LETTER SMALL I
@@ -8963,57 +11639,57 @@
304A HIRAGANA LETTER O
304B HIRAGANA LETTER KA
304C HIRAGANA LETTER GA
- : 304B + 3099
+ : 304B 3099
304D HIRAGANA LETTER KI
304E HIRAGANA LETTER GI
- : 304D + 3099
+ : 304D 3099
304F HIRAGANA LETTER KU
3050 HIRAGANA LETTER GU
- : 304F + 3099
+ : 304F 3099
3051 HIRAGANA LETTER KE
3052 HIRAGANA LETTER GE
- : 3051 + 3099
+ : 3051 3099
3053 HIRAGANA LETTER KO
3054 HIRAGANA LETTER GO
- : 3053 + 3099
+ : 3053 3099
3055 HIRAGANA LETTER SA
3056 HIRAGANA LETTER ZA
- : 3055 + 3099
+ : 3055 3099
3057 HIRAGANA LETTER SI
= SHI
3058 HIRAGANA LETTER ZI
= JI (not unique)
- : 3057 + 3099
+ : 3057 3099
3059 HIRAGANA LETTER SU
305A HIRAGANA LETTER ZU
- : 3059 + 3099
+ : 3059 3099
305B HIRAGANA LETTER SE
305C HIRAGANA LETTER ZE
- : 305B + 3099
+ : 305B 3099
305D HIRAGANA LETTER SO
305E HIRAGANA LETTER ZO
- : 305D + 3099
+ : 305D 3099
305F HIRAGANA LETTER TA
3060 HIRAGANA LETTER DA
- : 305F + 3099
+ : 305F 3099
3061 HIRAGANA LETTER TI
= CHI
3062 HIRAGANA LETTER DI
= JI (not unique)
- : 3061 + 3099
+ : 3061 3099
3063 HIRAGANA LETTER SMALL TU
= SMALL TSU
3064 HIRAGANA LETTER TU
= TSU
3065 HIRAGANA LETTER DU
= ZU (not unique)
- : 3064 + 3099
+ : 3064 3099
3066 HIRAGANA LETTER TE
3067 HIRAGANA LETTER DE
- : 3066 + 3099
+ : 3066 3099
3068 HIRAGANA LETTER TO
3069 HIRAGANA LETTER DO
- : 3068 + 3099
+ : 3068 3099
306A HIRAGANA LETTER NA
306B HIRAGANA LETTER NI
306C HIRAGANA LETTER NU
@@ -9021,30 +11697,30 @@
306E HIRAGANA LETTER NO
306F HIRAGANA LETTER HA
3070 HIRAGANA LETTER BA
- : 306F + 3099
+ : 306F 3099
3071 HIRAGANA LETTER PA
- : 306F + 309A
+ : 306F 309A
3072 HIRAGANA LETTER HI
3073 HIRAGANA LETTER BI
- : 3072 + 3099
+ : 3072 3099
3074 HIRAGANA LETTER PI
- : 3072 + 309A
+ : 3072 309A
3075 HIRAGANA LETTER HU
= FU
3076 HIRAGANA LETTER BU
- : 3075 + 3099
+ : 3075 3099
3077 HIRAGANA LETTER PU
- : 3075 + 309A
+ : 3075 309A
3078 HIRAGANA LETTER HE
3079 HIRAGANA LETTER BE
- : 3078 + 3099
+ : 3078 3099
307A HIRAGANA LETTER PE
- : 3078 + 309A
+ : 3078 309A
307B HIRAGANA LETTER HO
307C HIRAGANA LETTER BO
- : 307B + 3099
+ : 307B 3099
307D HIRAGANA LETTER PO
- : 307B + 309A
+ : 307B 309A
307E HIRAGANA LETTER MA
307F HIRAGANA LETTER MI
3080 HIRAGANA LETTER MU
@@ -9068,23 +11744,20 @@
3092 HIRAGANA LETTER WO
3093 HIRAGANA LETTER N
3094 HIRAGANA LETTER VU
- : 3046 + 3099
-3095 <reserved>
-3096 <reserved>
-3097 <reserved>
-3098 <reserved>
+ : 3046 3099
+@ Voicing marks
3099 COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK
309A COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
309B KATAKANA-HIRAGANA VOICED SOUND MARK
- # 0020 + 3099
+ # 0020 3099
309C KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
- # 0020 + 309A
+ # 0020 309A
+@ Iteration marks
309D HIRAGANA ITERATION MARK
309E HIRAGANA VOICED ITERATION MARK
- : 309D + 3099
+ : 309D 3099
@@ 30A0 Katakana 30FF
@ Based on JIS X 0208
-30A0 <reserved>
30A1 KATAKANA LETTER SMALL A
30A2 KATAKANA LETTER A
30A3 KATAKANA LETTER SMALL I
@@ -9097,57 +11770,57 @@
30AA KATAKANA LETTER O
30AB KATAKANA LETTER KA
30AC KATAKANA LETTER GA
- : 30AB + 3099
+ : 30AB 3099
30AD KATAKANA LETTER KI
30AE KATAKANA LETTER GI
- : 30AD + 3099
+ : 30AD 3099
30AF KATAKANA LETTER KU
30B0 KATAKANA LETTER GU
- : 30AF + 3099
+ : 30AF 3099
30B1 KATAKANA LETTER KE
30B2 KATAKANA LETTER GE
- : 30B1 + 3099
+ : 30B1 3099
30B3 KATAKANA LETTER KO
30B4 KATAKANA LETTER GO
- : 30B3 + 3099
+ : 30B3 3099
30B5 KATAKANA LETTER SA
30B6 KATAKANA LETTER ZA
- : 30B5 + 3099
+ : 30B5 3099
30B7 KATAKANA LETTER SI
= SHI
30B8 KATAKANA LETTER ZI
= JI (not unique)
- : 30B7 + 3099
+ : 30B7 3099
30B9 KATAKANA LETTER SU
30BA KATAKANA LETTER ZU
- : 30B9 + 3099
+ : 30B9 3099
30BB KATAKANA LETTER SE
30BC KATAKANA LETTER ZE
- : 30BB + 3099
+ : 30BB 3099
30BD KATAKANA LETTER SO
30BE KATAKANA LETTER ZO
- : 30BD + 3099
+ : 30BD 3099
30BF KATAKANA LETTER TA
30C0 KATAKANA LETTER DA
- : 30BF + 3099
+ : 30BF 3099
30C1 KATAKANA LETTER TI
= CHI
30C2 KATAKANA LETTER DI
= JI (not unique)
- : 30C1 + 3099
+ : 30C1 3099
30C3 KATAKANA LETTER SMALL TU
= SMALL TSU
30C4 KATAKANA LETTER TU
= TSU
30C5 KATAKANA LETTER DU
= ZU (not unique)
- : 30C4 + 3099
+ : 30C4 3099
30C6 KATAKANA LETTER TE
30C7 KATAKANA LETTER DE
- : 30C6 + 3099
+ : 30C6 3099
30C8 KATAKANA LETTER TO
30C9 KATAKANA LETTER DO
- : 30C8 + 3099
+ : 30C8 3099
30CA KATAKANA LETTER NA
30CB KATAKANA LETTER NI
30CC KATAKANA LETTER NU
@@ -9155,30 +11828,30 @@
30CE KATAKANA LETTER NO
30CF KATAKANA LETTER HA
30D0 KATAKANA LETTER BA
- : 30CF + 3099
+ : 30CF 3099
30D1 KATAKANA LETTER PA
- : 30CF + 309A
+ : 30CF 309A
30D2 KATAKANA LETTER HI
30D3 KATAKANA LETTER BI
- : 30D2 + 3099
+ : 30D2 3099
30D4 KATAKANA LETTER PI
- : 30D2 + 309A
+ : 30D2 309A
30D5 KATAKANA LETTER HU
= FU
30D6 KATAKANA LETTER BU
- : 30D5 + 3099
+ : 30D5 3099
30D7 KATAKANA LETTER PU
- : 30D5 + 309A
+ : 30D5 309A
30D8 KATAKANA LETTER HE
30D9 KATAKANA LETTER BE
- : 30D8 + 3099
+ : 30D8 3099
30DA KATAKANA LETTER PE
- : 30D8 + 309A
+ : 30D8 309A
30DB KATAKANA LETTER HO
30DC KATAKANA LETTER BO
- : 30DB + 3099
+ : 30DB 3099
30DD KATAKANA LETTER PO
- : 30DB + 309A
+ : 30DB 309A
30DE KATAKANA LETTER MA
30DF KATAKANA LETTER MI
30E0 KATAKANA LETTER MU
@@ -9202,36 +11875,29 @@
30F2 KATAKANA LETTER WO
30F3 KATAKANA LETTER N
30F4 KATAKANA LETTER VU
- : 30A6 + 3099
+ : 30A6 3099
30F5 KATAKANA LETTER SMALL KA
30F6 KATAKANA LETTER SMALL KE
30F7 KATAKANA LETTER VA
- : 30EF + 3099
+ : 30EF 3099
30F8 KATAKANA LETTER VI
- : 30F0 + 3099
+ : 30F0 3099
30F9 KATAKANA LETTER VE
- : 30F1 + 3099
+ : 30F1 3099
30FA KATAKANA LETTER VO
- : 30F2 + 3099
+ : 30F2 3099
+@ Conjunction and length marks
30FB KATAKANA MIDDLE DOT
x (middle dot - 00B7)
30FC KATAKANA-HIRAGANA PROLONGED SOUND MARK
x (em dash - 2014)
+@ Iteration marks
30FD KATAKANA ITERATION MARK
30FE KATAKANA VOICED ITERATION MARK
- : 30FD + 3099
+ : 30FD 3099
@@ 3100 Bopomofo 312F
+@+ See also the Bopomofo Extended block
@ Based on GB 2312
- x (caron - 02C7)
- x (modifier letter macron - 02C9)
- x (modifier letter acute accent - 02CA)
- x (modifier letter grave accent - 02CB)
- x (dot above - 02D9)
-3100 <reserved>
-3101 <reserved>
-3102 <reserved>
-3103 <reserved>
-3104 <reserved>
3105 BOPOMOFO LETTER B
3106 BOPOMOFO LETTER P
3107 BOPOMOFO LETTER M
@@ -9274,2721 +11940,4443 @@
312B BOPOMOFO LETTER NG
312C BOPOMOFO LETTER GN
@@ 3130 Hangul Compatibility Jamo 318F
-@ Based on KS C 5601
@ Modern letters
-3130 <reserved>
3131 HANGUL LETTER KIYEOK
- # 1100
+ # 1100 hangul choseong kiyeok
3132 HANGUL LETTER SSANGKIYEOK
- # 1101
+ # 1101 hangul choseong ssangkiyeok
3133 HANGUL LETTER KIYEOK-SIOS
- # 11AA
+ # 11AA hangul jongseong kiyeok-sios
3134 HANGUL LETTER NIEUN
- # 1102
+ # 1102 hangul choseong nieun
3135 HANGUL LETTER NIEUN-CIEUC
- # 11AC
+ # 11AC hangul jongseong nieun-cieuc
3136 HANGUL LETTER NIEUN-HIEUH
- # 11AD
+ # 11AD hangul jongseong nieun-hieuh
3137 HANGUL LETTER TIKEUT
- # 1103
+ # 1103 hangul choseong tikeut
3138 HANGUL LETTER SSANGTIKEUT
- # 1104
+ # 1104 hangul choseong ssangtikeut
3139 HANGUL LETTER RIEUL
- # 1105
+ # 1105 hangul choseong rieul
313A HANGUL LETTER RIEUL-KIYEOK
- # 11B0
+ # 11B0 hangul jongseong rieul-kiyeok
313B HANGUL LETTER RIEUL-MIEUM
- # 11B1
+ # 11B1 hangul jongseong rieul-mieum
313C HANGUL LETTER RIEUL-PIEUP
- # 11B2
+ # 11B2 hangul jongseong rieul-pieup
313D HANGUL LETTER RIEUL-SIOS
- # 11B3
+ # 11B3 hangul jongseong rieul-sios
313E HANGUL LETTER RIEUL-THIEUTH
- # 11B4
+ # 11B4 hangul jongseong rieul-thieuth
313F HANGUL LETTER RIEUL-PHIEUPH
- # 11B5
+ # 11B5 hangul jongseong rieul-phieuph
3140 HANGUL LETTER RIEUL-HIEUH
- # 111A
+ # 111A hangul choseong rieul-hieuh
3141 HANGUL LETTER MIEUM
- # 1106
+ # 1106 hangul choseong mieum
3142 HANGUL LETTER PIEUP
- # 1107
+ # 1107 hangul choseong pieup
3143 HANGUL LETTER SSANGPIEUP
- # 1108
+ # 1108 hangul choseong ssangpieup
3144 HANGUL LETTER PIEUP-SIOS
- # 1121
+ # 1121 hangul choseong pieup-sios
3145 HANGUL LETTER SIOS
- # 1109
+ # 1109 hangul choseong sios
3146 HANGUL LETTER SSANGSIOS
- # 110A
+ # 110A hangul choseong ssangsios
3147 HANGUL LETTER IEUNG
- # 110B
+ # 110B hangul choseong ieung
3148 HANGUL LETTER CIEUC
- # 110C
+ # 110C hangul choseong cieuc
3149 HANGUL LETTER SSANGCIEUC
- # 110D
+ # 110D hangul choseong ssangcieuc
314A HANGUL LETTER CHIEUCH
- # 110E
+ # 110E hangul choseong chieuch
314B HANGUL LETTER KHIEUKH
- # 110F
+ # 110F hangul choseong khieukh
314C HANGUL LETTER THIEUTH
- # 1110
+ # 1110 hangul choseong thieuth
314D HANGUL LETTER PHIEUPH
- # 1111
+ # 1111 hangul choseong phieuph
314E HANGUL LETTER HIEUH
- # 1112
+ # 1112 hangul choseong hieuh
314F HANGUL LETTER A
- # 1161
+ # 1161 hangul jungseong a
3150 HANGUL LETTER AE
- # 1162
+ # 1162 hangul jungseong ae
3151 HANGUL LETTER YA
- # 1163
+ # 1163 hangul jungseong ya
3152 HANGUL LETTER YAE
- # 1164
+ # 1164 hangul jungseong yae
3153 HANGUL LETTER EO
- # 1165
+ # 1165 hangul jungseong eo
3154 HANGUL LETTER E
- # 1166
+ # 1166 hangul jungseong e
3155 HANGUL LETTER YEO
- # 1167
+ # 1167 hangul jungseong yeo
3156 HANGUL LETTER YE
- # 1168
+ # 1168 hangul jungseong ye
3157 HANGUL LETTER O
- # 1169
+ # 1169 hangul jungseong o
3158 HANGUL LETTER WA
- # 116A
+ # 116A hangul jungseong wa
3159 HANGUL LETTER WAE
- # 116B
+ # 116B hangul jungseong wae
315A HANGUL LETTER OE
- # 116C
+ # 116C hangul jungseong oe
315B HANGUL LETTER YO
- # 116D
+ # 116D hangul jungseong yo
315C HANGUL LETTER U
- # 116E
+ # 116E hangul jungseong u
315D HANGUL LETTER WEO
- # 116F
+ # 116F hangul jungseong weo
315E HANGUL LETTER WE
- # 1170
+ # 1170 hangul jungseong we
315F HANGUL LETTER WI
- # 1171
+ # 1171 hangul jungseong wi
3160 HANGUL LETTER YU
- # 1172
+ # 1172 hangul jungseong yu
3161 HANGUL LETTER EU
- # 1173
+ # 1173 hangul jungseong eu
3162 HANGUL LETTER YI
- # 1174
+ # 1174 hangul jungseong yi
3163 HANGUL LETTER I
- # 1175
+ # 1175 hangul jungseong i
@ Special character
3164 HANGUL FILLER
= HANGUL CAE OM
- # 1160
+ # 1160 hangul jungseong filler
@ Archaic letters
3165 HANGUL LETTER SSANGNIEUN
- # 1114
+ # 1114 hangul choseong ssangnieun
3166 HANGUL LETTER NIEUN-TIKEUT
- # 1115
+ # 1115 hangul choseong nieun-tikeut
3167 HANGUL LETTER NIEUN-SIOS
- # 11C7
+ # 11C7 hangul jongseong nieun-sios
3168 HANGUL LETTER NIEUN-PANSIOS
- # 11C8
+ # 11C8 hangul jongseong nieun-pansios
3169 HANGUL LETTER RIEUL-KIYEOK-SIOS
- # 11CC
+ # 11CC hangul jongseong rieul-kiyeok-sios
316A HANGUL LETTER RIEUL-TIKEUT
- # 11CE
+ # 11CE hangul jongseong rieul-tikeut
316B HANGUL LETTER RIEUL-PIEUP-SIOS
- # 11D3
+ # 11D3 hangul jongseong rieul-pieup-sios
316C HANGUL LETTER RIEUL-PANSIOS
- # 11D7
+ # 11D7 hangul jongseong rieul-pansios
316D HANGUL LETTER RIEUL-YEORINHIEUH
- # 11D9
+ # 11D9 hangul jongseong rieul-yeorinhieuh
316E HANGUL LETTER MIEUM-PIEUP
- # 111C
+ # 111C hangul choseong mieum-pieup
316F HANGUL LETTER MIEUM-SIOS
- # 11DD
+ # 11DD hangul jongseong mieum-sios
3170 HANGUL LETTER MIEUM-PANSIOS
- # 11DF
+ # 11DF hangul jongseong mieum-pansios
3171 HANGUL LETTER KAPYEOUNMIEUM
- # 111D
+ # 111D hangul choseong kapyeounmieum
3172 HANGUL LETTER PIEUP-KIYEOK
- # 111E
+ # 111E hangul choseong pieup-kiyeok
3173 HANGUL LETTER PIEUP-TIKEUT
- # 1120
+ # 1120 hangul choseong pieup-tikeut
3174 HANGUL LETTER PIEUP-SIOS-KIYEOK
- # 1122
+ # 1122 hangul choseong pieup-sios-kiyeok
3175 HANGUL LETTER PIEUP-SIOS-TIKEUT
- # 1123
+ # 1123 hangul choseong pieup-sios-tikeut
3176 HANGUL LETTER PIEUP-CIEUC
- # 1127
+ # 1127 hangul choseong pieup-cieuc
3177 HANGUL LETTER PIEUP-THIEUTH
- # 1129
+ # 1129 hangul choseong pieup-thieuth
3178 HANGUL LETTER KAPYEOUNPIEUP
- # 112B
+ # 112B hangul choseong kapyeounpieup
3179 HANGUL LETTER KAPYEOUNSSANGPIEUP
- # 112C
+ # 112C hangul choseong kapyeounssangpieup
317A HANGUL LETTER SIOS-KIYEOK
- # 112D
+ # 112D hangul choseong sios-kiyeok
317B HANGUL LETTER SIOS-NIEUN
- # 112E
+ # 112E hangul choseong sios-nieun
317C HANGUL LETTER SIOS-TIKEUT
- # 112F
+ # 112F hangul choseong sios-tikeut
317D HANGUL LETTER SIOS-PIEUP
- # 1132
+ # 1132 hangul choseong sios-pieup
317E HANGUL LETTER SIOS-CIEUC
- # 1136
+ # 1136 hangul choseong sios-cieuc
317F HANGUL LETTER PANSIOS
- # 1140
+ # 1140 hangul choseong pansios
3180 HANGUL LETTER SSANGIEUNG
- # 1147
+ # 1147 hangul choseong ssangieung
3181 HANGUL LETTER YESIEUNG
* archaic velar nasal
- # 114C
+ # 114C hangul choseong yesieung
3182 HANGUL LETTER YESIEUNG-SIOS
- # 11F1
+ # 11F1 hangul jongseong yesieung-sios
3183 HANGUL LETTER YESIEUNG-PANSIOS
- # 11F2
+ # 11F2 hangul jongseong yesieung-pansios
3184 HANGUL LETTER KAPYEOUNPHIEUPH
- # 1157
+ # 1157 hangul choseong kapyeounphieuph
3185 HANGUL LETTER SSANGHIEUH
- # 1158
+ # 1158 hangul choseong ssanghieuh
3186 HANGUL LETTER YEORINHIEUH
* archaic glottal stop
- # 1159
+ # 1159 hangul choseong yeorinhieuh
3187 HANGUL LETTER YO-YA
- # 1184
+ # 1184 hangul jungseong yo-ya
3188 HANGUL LETTER YO-YAE
- # 1185
+ # 1185 hangul jungseong yo-yae
3189 HANGUL LETTER YO-I
- # 1188
+ # 1188 hangul jungseong yo-i
318A HANGUL LETTER YU-YEO
- # 1191
+ # 1191 hangul jungseong yu-yeo
318B HANGUL LETTER YU-YE
- # 1192
+ # 1192 hangul jungseong yu-ye
318C HANGUL LETTER YU-I
- # 1194
+ # 1194 hangul jungseong yu-i
318D HANGUL LETTER ARAEA
- # 119E
+ # 119E hangul jungseong araea
318E HANGUL LETTER ARAEAE
- # 11A1
+ # 11A1 hangul jungseong araea-i
@@ 3190 Kanbun 319F
@ Kanbun
-3190 IDEOGRAPHIC ANNOTATION LINKING MARK
-3191 IDEOGRAPHIC ANNOTATION REVERSE MARK
-3192 IDEOGRAPHIC ANNOTATION ONE MARK
- # <super> + 4E00
-3193 IDEOGRAPHIC ANNOTATION TWO MARK
- # <super> + 4E8C
-3194 IDEOGRAPHIC ANNOTATION THREE MARK
- # <super> + 4E09
-3195 IDEOGRAPHIC ANNOTATION FOUR MARK
- # <super> + 56DB
-3196 IDEOGRAPHIC ANNOTATION TOP MARK
- # <super> + 4E0A
-3197 IDEOGRAPHIC ANNOTATION MIDDLE MARK
- # <super> + 4E2D
-3198 IDEOGRAPHIC ANNOTATION BOTTOM MARK
- # <super> + 4E0B
-3199 IDEOGRAPHIC ANNOTATION FIRST MARK
- # <super> + 7532
-319A IDEOGRAPHIC ANNOTATION SECOND MARK
- # <super> + 4E59
-319B IDEOGRAPHIC ANNOTATION THIRD MARK
- # <super> + 4E19
-319C IDEOGRAPHIC ANNOTATION FOURTH MARK
- # <super> + 4E01
-319D IDEOGRAPHIC ANNOTATION HEAVEN MARK
- # <super> + 5929
-319E IDEOGRAPHIC ANNOTATION EARTH MARK
- # <super> + 5730
-319F IDEOGRAPHIC ANNOTATION MAN MARK
- # <super> + 4EBA
-@@ 31A0 Unassigned 31FF
+3190 IDEOGRAPHIC ANNOTATION LINKING MARK (Kanbun Tateten)
+ = KANBUN TATETEN
+3191 IDEOGRAPHIC ANNOTATION REVERSE MARK (Kaeriten)
+ = KAERITEN RE
+3192 IDEOGRAPHIC ANNOTATION ONE MARK (Kaeriten)
+ # <super> 4E00
+3193 IDEOGRAPHIC ANNOTATION TWO MARK (Kaeriten)
+ # <super> 4E8C
+3194 IDEOGRAPHIC ANNOTATION THREE MARK (Kaeriten)
+ # <super> 4E09
+3195 IDEOGRAPHIC ANNOTATION FOUR MARK (Kaeriten)
+ # <super> 56DB
+3196 IDEOGRAPHIC ANNOTATION TOP MARK (Kaeriten)
+ # <super> 4E0A
+3197 IDEOGRAPHIC ANNOTATION MIDDLE MARK (Kaeriten)
+ # <super> 4E2D
+3198 IDEOGRAPHIC ANNOTATION BOTTOM MARK (Kaeriten)
+ # <super> 4E0B
+3199 IDEOGRAPHIC ANNOTATION FIRST MARK (Kaeriten)
+ # <super> 7532
+319A IDEOGRAPHIC ANNOTATION SECOND MARK (Kaeriten)
+ # <super> 4E59
+319B IDEOGRAPHIC ANNOTATION THIRD MARK (Kaeriten)
+ # <super> 4E19
+319C IDEOGRAPHIC ANNOTATION FOURTH MARK (Kaeriten)
+ # <super> 4E01
+319D IDEOGRAPHIC ANNOTATION HEAVEN MARK (Kaeriten)
+ # <super> 5929
+319E IDEOGRAPHIC ANNOTATION EARTH MARK (Kaeriten)
+ # <super> 5730
+319F IDEOGRAPHIC ANNOTATION MAN MARK (Kaeriten)
+ # <super> 4EBA
+@@ 31A0 Bopomofo Extended 31BF
+@+ See also the Bopomofo block
+@ Extended Bopomofo for Minnan and Hakka
+31A0 BOPOMOFO LETTER BU
+31A1 BOPOMOFO LETTER ZI
+31A2 BOPOMOFO LETTER JI
+31A3 BOPOMOFO LETTER GU
+31A4 BOPOMOFO LETTER EE
+31A5 BOPOMOFO LETTER ENN
+31A6 BOPOMOFO LETTER OO
+31A7 BOPOMOFO LETTER ONN
+31A8 BOPOMOFO LETTER IR
+31A9 BOPOMOFO LETTER ANN
+31AA BOPOMOFO LETTER INN
+31AB BOPOMOFO LETTER UNN
+31AC BOPOMOFO LETTER IM
+31AD BOPOMOFO LETTER NGG
+31AE BOPOMOFO LETTER AINN
+31AF BOPOMOFO LETTER AUNN
+31B0 BOPOMOFO LETTER AM
+31B1 BOPOMOFO LETTER OM
+31B2 BOPOMOFO LETTER ONG
+31B3 BOPOMOFO LETTER INNN
+31B4 BOPOMOFO FINAL LETTER P
+31B5 BOPOMOFO FINAL LETTER T
+31B6 BOPOMOFO FINAL LETTER K
+31B7 BOPOMOFO FINAL LETTER H
@@ 3200 Enclosed CJK Letters and Months 32FF
@ Parenthesized Hangul elements
3200 PARENTHESIZED HANGUL KIYEOK
- # 0028 + 1100 + 0029
+ # 0028 1100 0029
3201 PARENTHESIZED HANGUL NIEUN
- # 0028 + 1102 + 0029
+ # 0028 1102 0029
3202 PARENTHESIZED HANGUL TIKEUT
- # 0028 + 1103 + 0029
+ # 0028 1103 0029
3203 PARENTHESIZED HANGUL RIEUL
- # 0028 + 1105 + 0029
+ # 0028 1105 0029
3204 PARENTHESIZED HANGUL MIEUM
- # 0028 + 1106 + 0029
+ # 0028 1106 0029
3205 PARENTHESIZED HANGUL PIEUP
- # 0028 + 1107 + 0029
+ # 0028 1107 0029
3206 PARENTHESIZED HANGUL SIOS
- # 0028 + 1109 + 0029
+ # 0028 1109 0029
3207 PARENTHESIZED HANGUL IEUNG
- # 0028 + 110B + 0029
+ # 0028 110B 0029
3208 PARENTHESIZED HANGUL CIEUC
- # 0028 + 110C + 0029
+ # 0028 110C 0029
3209 PARENTHESIZED HANGUL CHIEUCH
- # 0028 + 110E + 0029
+ # 0028 110E 0029
320A PARENTHESIZED HANGUL KHIEUKH
- # 0028 + 110F + 0029
+ # 0028 110F 0029
320B PARENTHESIZED HANGUL THIEUTH
- # 0028 + 1110 + 0029
+ # 0028 1110 0029
320C PARENTHESIZED HANGUL PHIEUPH
- # 0028 + 1111 + 0029
+ # 0028 1111 0029
320D PARENTHESIZED HANGUL HIEUH
- # 0028 + 1112 + 0029
+ # 0028 1112 0029
@ Parenthesized Hangul syllables
320E PARENTHESIZED HANGUL KIYEOK A
- # 0028 + 1100 + 1161 + 0029
+ # 0028 1100 1161 0029
320F PARENTHESIZED HANGUL NIEUN A
- # 0028 + 1102 + 1161 + 0029
+ # 0028 1102 1161 0029
3210 PARENTHESIZED HANGUL TIKEUT A
- # 0028 + 1103 + 1161 + 0029
+ # 0028 1103 1161 0029
3211 PARENTHESIZED HANGUL RIEUL A
- # 0028 + 1105 + 1161 + 0029
+ # 0028 1105 1161 0029
3212 PARENTHESIZED HANGUL MIEUM A
- # 0028 + 1106 + 1161 + 0029
+ # 0028 1106 1161 0029
3213 PARENTHESIZED HANGUL PIEUP A
- # 0028 + 1107 + 1161 + 0029
+ # 0028 1107 1161 0029
3214 PARENTHESIZED HANGUL SIOS A
- # 0028 + 1109 + 1161 + 0029
+ # 0028 1109 1161 0029
3215 PARENTHESIZED HANGUL IEUNG A
- # 0028 + 110B + 1161 + 0029
+ # 0028 110B 1161 0029
3216 PARENTHESIZED HANGUL CIEUC A
- # 0028 + 110C + 1161 + 0029
+ # 0028 110C 1161 0029
3217 PARENTHESIZED HANGUL CHIEUCH A
- # 0028 + 110E + 1161 + 0029
+ # 0028 110E 1161 0029
3218 PARENTHESIZED HANGUL KHIEUKH A
- # 0028 + 110F + 1161 + 0029
+ # 0028 110F 1161 0029
3219 PARENTHESIZED HANGUL THIEUTH A
- # 0028 + 1110 + 1161 + 0029
+ # 0028 1110 1161 0029
321A PARENTHESIZED HANGUL PHIEUPH A
- # 0028 + 1111 + 1161 + 0029
+ # 0028 1111 1161 0029
321B PARENTHESIZED HANGUL HIEUH A
- # 0028 + 1112 + 1161 + 0029
+ # 0028 1112 1161 0029
321C PARENTHESIZED HANGUL CIEUC U
- # 0028 + 110C + 116E + 0029
-321D <reserved>
-321E <reserved>
-321F <reserved>
+ # 0028 110C 116E 0029
@ Parenthesized ideographs
3220 PARENTHESIZED IDEOGRAPH ONE
- # 0028 + 4E00 + 0029
+ # 0028 4E00 0029
3221 PARENTHESIZED IDEOGRAPH TWO
- # 0028 + 4E8C + 0029
+ # 0028 4E8C 0029
3222 PARENTHESIZED IDEOGRAPH THREE
- # 0028 + 4E09 + 0029
+ # 0028 4E09 0029
3223 PARENTHESIZED IDEOGRAPH FOUR
- # 0028 + 56DB + 0029
+ # 0028 56DB 0029
3224 PARENTHESIZED IDEOGRAPH FIVE
- # 0028 + 4E94 + 0029
+ # 0028 4E94 0029
3225 PARENTHESIZED IDEOGRAPH SIX
- # 0028 + 516D + 0029
+ # 0028 516D 0029
3226 PARENTHESIZED IDEOGRAPH SEVEN
- # 0028 + 4E03 + 0029
+ # 0028 4E03 0029
3227 PARENTHESIZED IDEOGRAPH EIGHT
- # 0028 + 516B + 0029
+ # 0028 516B 0029
3228 PARENTHESIZED IDEOGRAPH NINE
- # 0028 + 4E5D + 0029
+ # 0028 4E5D 0029
3229 PARENTHESIZED IDEOGRAPH TEN
- # 0028 + 5341 + 0029
+ # 0028 5341 0029
322A PARENTHESIZED IDEOGRAPH MOON
* Monday
- # 0028 + 6708 + 0029
+ # 0028 6708 0029
322B PARENTHESIZED IDEOGRAPH FIRE
* Tuesday
- # 0028 + 706B + 0029
+ # 0028 706B 0029
322C PARENTHESIZED IDEOGRAPH WATER
* Wednesday
- # 0028 + 6C34 + 0029
+ # 0028 6C34 0029
322D PARENTHESIZED IDEOGRAPH WOOD
* Thursday
- # 0028 + 6728 + 0029
+ # 0028 6728 0029
322E PARENTHESIZED IDEOGRAPH METAL
* Friday
- # 0028 + 91D1 + 0029
+ # 0028 91D1 0029
322F PARENTHESIZED IDEOGRAPH EARTH
* Saturday
- # 0028 + 571F + 0029
+ # 0028 571F 0029
3230 PARENTHESIZED IDEOGRAPH SUN
* Sunday
- # 0028 + 65E5 + 0029
+ # 0028 65E5 0029
3231 PARENTHESIZED IDEOGRAPH STOCK
* incorporated
- # 0028 + 682A + 0029
+ # 0028 682A 0029
3232 PARENTHESIZED IDEOGRAPH HAVE
* limited
- # 0028 + 6709 + 0029
+ # 0028 6709 0029
3233 PARENTHESIZED IDEOGRAPH SOCIETY
* company
- # 0028 + 793E + 0029
+ # 0028 793E 0029
3234 PARENTHESIZED IDEOGRAPH NAME
- # 0028 + 540D + 0029
+ # 0028 540D 0029
3235 PARENTHESIZED IDEOGRAPH SPECIAL
- # 0028 + 7279 + 0029
+ # 0028 7279 0029
3236 PARENTHESIZED IDEOGRAPH FINANCIAL
- # 0028 + 8CA1 + 0029
+ # 0028 8CA1 0029
3237 PARENTHESIZED IDEOGRAPH CONGRATULATION
- # 0028 + 795D + 0029
+ # 0028 795D 0029
3238 PARENTHESIZED IDEOGRAPH LABOR
- # 0028 + 52B4 + 0029
+ # 0028 52B4 0029
3239 PARENTHESIZED IDEOGRAPH REPRESENT
- # 0028 + 4EE3 + 0029
+ # 0028 4EE3 0029
323A PARENTHESIZED IDEOGRAPH CALL
- # 0028 + 547C + 0029
+ # 0028 547C 0029
323B PARENTHESIZED IDEOGRAPH STUDY
- # 0028 + 5B66 + 0029
+ # 0028 5B66 0029
323C PARENTHESIZED IDEOGRAPH SUPERVISE
- # 0028 + 76E3 + 0029
+ # 0028 76E3 0029
323D PARENTHESIZED IDEOGRAPH ENTERPRISE
- # 0028 + 4F01 + 0029
+ # 0028 4F01 0029
323E PARENTHESIZED IDEOGRAPH RESOURCE
- # 0028 + 8CC7 + 0029
+ # 0028 8CC7 0029
323F PARENTHESIZED IDEOGRAPH ALLIANCE
- # 0028 + 5354 + 0029
+ # 0028 5354 0029
3240 PARENTHESIZED IDEOGRAPH FESTIVAL
- # 0028 + 796D + 0029
+ # 0028 796D 0029
3241 PARENTHESIZED IDEOGRAPH REST
- # 0028 + 4F11 + 0029
+ # 0028 4F11 0029
3242 PARENTHESIZED IDEOGRAPH SELF
* from
- # 0028 + 81EA + 0029
+ # 0028 81EA 0029
3243 PARENTHESIZED IDEOGRAPH REACH
* to
- # 0028 + 81F3 + 0029
-3244 <reserved>
-3245 <reserved>
-3246 <reserved>
-3247 <reserved>
-3248 <reserved>
-3249 <reserved>
-324A <reserved>
-324B <reserved>
-324C <reserved>
-324D <reserved>
-324E <reserved>
-324F <reserved>
-3250 <reserved>
-3251 <reserved>
-3252 <reserved>
-3253 <reserved>
-3254 <reserved>
-3255 <reserved>
-3256 <reserved>
-3257 <reserved>
-3258 <reserved>
-3259 <reserved>
-325A <reserved>
-325B <reserved>
-325C <reserved>
-325D <reserved>
-325E <reserved>
-325F <reserved>
+ # 0028 81F3 0029
@ Circled Hangul elements
3260 CIRCLED HANGUL KIYEOK
- # <circle> + 1100
+ # <circle> 1100
3261 CIRCLED HANGUL NIEUN
- # <circle> + 1102
+ # <circle> 1102
3262 CIRCLED HANGUL TIKEUT
- # <circle> + 1103
+ # <circle> 1103
3263 CIRCLED HANGUL RIEUL
- # <circle> + 1105
+ # <circle> 1105
3264 CIRCLED HANGUL MIEUM
- # <circle> + 1106
+ # <circle> 1106
3265 CIRCLED HANGUL PIEUP
- # <circle> + 1107
+ # <circle> 1107
3266 CIRCLED HANGUL SIOS
- # <circle> + 1109
+ # <circle> 1109
3267 CIRCLED HANGUL IEUNG
- # <circle> + 110B
+ # <circle> 110B
3268 CIRCLED HANGUL CIEUC
- # <circle> + 110C
+ # <circle> 110C
3269 CIRCLED HANGUL CHIEUCH
- # <circle> + 110E
+ # <circle> 110E
326A CIRCLED HANGUL KHIEUKH
- # <circle> + 110F
+ # <circle> 110F
326B CIRCLED HANGUL THIEUTH
- # <circle> + 1110
+ # <circle> 1110
326C CIRCLED HANGUL PHIEUPH
- # <circle> + 1111
+ # <circle> 1111
326D CIRCLED HANGUL HIEUH
- # <circle> + 1112
+ # <circle> 1112
@ Circled Hangul syllables
326E CIRCLED HANGUL KIYEOK A
- # <circle> + 1100 + 1161
+ # <circle> 1100 1161
326F CIRCLED HANGUL NIEUN A
- # <circle> + 1102 + 1161
+ # <circle> 1102 1161
3270 CIRCLED HANGUL TIKEUT A
- # <circle> + 1103 + 1161
+ # <circle> 1103 1161
3271 CIRCLED HANGUL RIEUL A
- # <circle> + 1105 + 1161
+ # <circle> 1105 1161
3272 CIRCLED HANGUL MIEUM A
- # <circle> + 1106 + 1161
+ # <circle> 1106 1161
3273 CIRCLED HANGUL PIEUP A
- # <circle> + 1107 + 1161
+ # <circle> 1107 1161
3274 CIRCLED HANGUL SIOS A
- # <circle> + 1109 + 1161
+ # <circle> 1109 1161
3275 CIRCLED HANGUL IEUNG A
- # <circle> + 110B + 1161
+ # <circle> 110B 1161
3276 CIRCLED HANGUL CIEUC A
- # <circle> + 110C + 1161
+ # <circle> 110C 1161
3277 CIRCLED HANGUL CHIEUCH A
- # <circle> + 110E + 1161
+ # <circle> 110E 1161
3278 CIRCLED HANGUL KHIEUKH A
- # <circle> + 110F + 1161
+ # <circle> 110F 1161
3279 CIRCLED HANGUL THIEUTH A
- # <circle> + 1110 + 1161
+ # <circle> 1110 1161
327A CIRCLED HANGUL PHIEUPH A
- # <circle> + 1111 + 1161
+ # <circle> 1111 1161
327B CIRCLED HANGUL HIEUH A
- # <circle> + 1112 + 1161
-327C <reserved>
-327D <reserved>
-327E <reserved>
+ # <circle> 1112 1161
@ Symbol
327F KOREAN STANDARD SYMBOL
@ Circled ideographs
3280 CIRCLED IDEOGRAPH ONE
= maru-iti, symbol of unification
- # <circle> + 4E00
+ # <circle> 4E00
3281 CIRCLED IDEOGRAPH TWO
- # <circle> + 4E8C
+ # <circle> 4E8C
3282 CIRCLED IDEOGRAPH THREE
- # <circle> + 4E09
+ # <circle> 4E09
3283 CIRCLED IDEOGRAPH FOUR
- # <circle> + 56DB
+ # <circle> 56DB
3284 CIRCLED IDEOGRAPH FIVE
- # <circle> + 4E94
+ # <circle> 4E94
3285 CIRCLED IDEOGRAPH SIX
- # <circle> + 516D
+ # <circle> 516D
3286 CIRCLED IDEOGRAPH SEVEN
- # <circle> + 4E03
+ # <circle> 4E03
3287 CIRCLED IDEOGRAPH EIGHT
- # <circle> + 516B
+ # <circle> 516B
3288 CIRCLED IDEOGRAPH NINE
- # <circle> + 4E5D
+ # <circle> 4E5D
3289 CIRCLED IDEOGRAPH TEN
- # <circle> + 5341
+ # <circle> 5341
328A CIRCLED IDEOGRAPH MOON
* Monday
- # <circle> + 6708
+ # <circle> 6708
328B CIRCLED IDEOGRAPH FIRE
* Tuesday
- # <circle> + 706B
+ # <circle> 706B
328C CIRCLED IDEOGRAPH WATER
* Wednesday
- # <circle> + 6C34
+ # <circle> 6C34
328D CIRCLED IDEOGRAPH WOOD
* Thursday
- # <circle> + 6728
+ # <circle> 6728
328E CIRCLED IDEOGRAPH METAL
* Friday
- # <circle> + 91D1
+ # <circle> 91D1
328F CIRCLED IDEOGRAPH EARTH
* Saturday
- # <circle> + 571F
+ # <circle> 571F
3290 CIRCLED IDEOGRAPH SUN
* Sunday
- # <circle> + 65E5
+ # <circle> 65E5
3291 CIRCLED IDEOGRAPH STOCK
* incorporated
- # <circle> + 682A
+ # <circle> 682A
3292 CIRCLED IDEOGRAPH HAVE
* limited
- # <circle> + 6709
+ # <circle> 6709
3293 CIRCLED IDEOGRAPH SOCIETY
* company
- # <circle> + 793E
+ # <circle> 793E
3294 CIRCLED IDEOGRAPH NAME
- # <circle> + 540D
+ # <circle> 540D
3295 CIRCLED IDEOGRAPH SPECIAL
- # <circle> + 7279
+ # <circle> 7279
3296 CIRCLED IDEOGRAPH FINANCIAL
- # <circle> + 8CA1
+ # <circle> 8CA1
3297 CIRCLED IDEOGRAPH CONGRATULATION
- # <circle> + 795D
+ # <circle> 795D
3298 CIRCLED IDEOGRAPH LABOR
- # <circle> + 52B4
+ # <circle> 52B4
3299 CIRCLED IDEOGRAPH SECRET
- # <circle> + 79D8
+ # <circle> 79D8
329A CIRCLED IDEOGRAPH MALE
- # <circle> + 7537
+ # <circle> 7537
329B CIRCLED IDEOGRAPH FEMALE
- # <circle> + 5973
+ # <circle> 5973
329C CIRCLED IDEOGRAPH SUITABLE
- # <circle> + 9069
+ # <circle> 9069
329D CIRCLED IDEOGRAPH EXCELLENT
- # <circle> + 512A
+ # <circle> 512A
329E CIRCLED IDEOGRAPH PRINT
* name seal
- # <circle> + 5370
+ # <circle> 5370
329F CIRCLED IDEOGRAPH ATTENTION
- # <circle> + 6CE8
+ # <circle> 6CE8
32A0 CIRCLED IDEOGRAPH ITEM
- # <circle> + 9805
+ # <circle> 9805
32A1 CIRCLED IDEOGRAPH REST
* holiday
- # <circle> + 4F11
+ # <circle> 4F11
32A2 CIRCLED IDEOGRAPH COPY
- # <circle> + 5199
+ # <circle> 5199
32A3 CIRCLED IDEOGRAPH CORRECT
- # <circle> + 6B63
+ # <circle> 6B63
32A4 CIRCLED IDEOGRAPH HIGH
- # <circle> + 4E0A
+ # <circle> 4E0A
32A5 CIRCLED IDEOGRAPH CENTRE
- # <circle> + 4E2D
+ # <circle> 4E2D
32A6 CIRCLED IDEOGRAPH LOW
- # <circle> + 4E0B
+ # <circle> 4E0B
32A7 CIRCLED IDEOGRAPH LEFT
- # <circle> + 5DE6
+ # <circle> 5DE6
32A8 CIRCLED IDEOGRAPH RIGHT
- # <circle> + 53F3
+ # <circle> 53F3
32A9 CIRCLED IDEOGRAPH MEDICINE
- # <circle> + 533B
+ # <circle> 533B
32AA CIRCLED IDEOGRAPH RELIGION
- # <circle> + 5B97
+ # <circle> 5B97
32AB CIRCLED IDEOGRAPH STUDY
- # <circle> + 5B66
+ # <circle> 5B66
32AC CIRCLED IDEOGRAPH SUPERVISE
- # <circle> + 76E3
+ # <circle> 76E3
32AD CIRCLED IDEOGRAPH ENTERPRISE
- # <circle> + 4F01
+ # <circle> 4F01
32AE CIRCLED IDEOGRAPH RESOURCE
- # <circle> + 8CC7
+ # <circle> 8CC7
32AF CIRCLED IDEOGRAPH ALLIANCE
- # <circle> + 5354
+ # <circle> 5354
32B0 CIRCLED IDEOGRAPH NIGHT
- # <circle> + 591C
-32B1 <reserved>
-32B2 <reserved>
-32B3 <reserved>
-32B4 <reserved>
-32B5 <reserved>
-32B6 <reserved>
-32B7 <reserved>
-32B8 <reserved>
-32B9 <reserved>
-32BA <reserved>
-32BB <reserved>
-32BC <reserved>
-32BD <reserved>
-32BE <reserved>
-32BF <reserved>
+ # <circle> 591C
+@ Telegraph symbols for months
32C0 IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY
- # 0031 + 6708
+ # 0031 6708
32C1 IDEOGRAPHIC TELEGRAPH SYMBOL FOR FEBRUARY
- # 0032 + 6708
+ # 0032 6708
32C2 IDEOGRAPHIC TELEGRAPH SYMBOL FOR MARCH
- # 0033 + 6708
+ # 0033 6708
32C3 IDEOGRAPHIC TELEGRAPH SYMBOL FOR APRIL
- # 0034 + 6708
+ # 0034 6708
32C4 IDEOGRAPHIC TELEGRAPH SYMBOL FOR MAY
- # 0035 + 6708
+ # 0035 6708
32C5 IDEOGRAPHIC TELEGRAPH SYMBOL FOR JUNE
- # 0036 + 6708
+ # 0036 6708
32C6 IDEOGRAPHIC TELEGRAPH SYMBOL FOR JULY
- # 0037 + 6708
+ # 0037 6708
32C7 IDEOGRAPHIC TELEGRAPH SYMBOL FOR AUGUST
- # 0038 + 6708
+ # 0038 6708
32C8 IDEOGRAPHIC TELEGRAPH SYMBOL FOR SEPTEMBER
- # 0039 + 6708
+ # 0039 6708
32C9 IDEOGRAPHIC TELEGRAPH SYMBOL FOR OCTOBER
- # 0031 + 0030 + 6708
+ # 0031 0030 6708
32CA IDEOGRAPHIC TELEGRAPH SYMBOL FOR NOVEMBER
- # 0031 + 0031 + 6708
+ # 0031 0031 6708
32CB IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER
- # 0031 + 0032 + 6708
-32CC <reserved>
-32CD <reserved>
-32CE <reserved>
-32CF <reserved>
+ # 0031 0032 6708
@ Circled Katakana
32D0 CIRCLED KATAKANA A
- # <circle> + 30A2
+ # <circle> 30A2
32D1 CIRCLED KATAKANA I
- # <circle> + 30A4
+ # <circle> 30A4
32D2 CIRCLED KATAKANA U
- # <circle> + 30A6
+ # <circle> 30A6
32D3 CIRCLED KATAKANA E
- # <circle> + 30A8
+ # <circle> 30A8
32D4 CIRCLED KATAKANA O
- # <circle> + 30AA
+ # <circle> 30AA
32D5 CIRCLED KATAKANA KA
- # <circle> + 30AB
+ # <circle> 30AB
32D6 CIRCLED KATAKANA KI
- # <circle> + 30AD
+ # <circle> 30AD
32D7 CIRCLED KATAKANA KU
- # <circle> + 30AF
+ # <circle> 30AF
32D8 CIRCLED KATAKANA KE
- # <circle> + 30B1
+ # <circle> 30B1
32D9 CIRCLED KATAKANA KO
- # <circle> + 30B3
+ # <circle> 30B3
32DA CIRCLED KATAKANA SA
- # <circle> + 30B5
+ # <circle> 30B5
32DB CIRCLED KATAKANA SI
- # <circle> + 30B7
+ # <circle> 30B7
32DC CIRCLED KATAKANA SU
- # <circle> + 30B9
+ # <circle> 30B9
32DD CIRCLED KATAKANA SE
- # <circle> + 30BB
+ # <circle> 30BB
32DE CIRCLED KATAKANA SO
- # <circle> + 30BD
+ # <circle> 30BD
32DF CIRCLED KATAKANA TA
- # <circle> + 30BF
+ # <circle> 30BF
32E0 CIRCLED KATAKANA TI
- # <circle> + 30C1
+ # <circle> 30C1
32E1 CIRCLED KATAKANA TU
- # <circle> + 30C4
+ # <circle> 30C4
32E2 CIRCLED KATAKANA TE
- # <circle> + 30C6
+ # <circle> 30C6
32E3 CIRCLED KATAKANA TO
- # <circle> + 30C8
+ # <circle> 30C8
32E4 CIRCLED KATAKANA NA
- # <circle> + 30CA
+ # <circle> 30CA
32E5 CIRCLED KATAKANA NI
- # <circle> + 30CB
+ # <circle> 30CB
32E6 CIRCLED KATAKANA NU
- # <circle> + 30CC
+ # <circle> 30CC
32E7 CIRCLED KATAKANA NE
- # <circle> + 30CD
+ # <circle> 30CD
32E8 CIRCLED KATAKANA NO
- # <circle> + 30CE
+ # <circle> 30CE
32E9 CIRCLED KATAKANA HA
- # <circle> + 30CF
+ # <circle> 30CF
32EA CIRCLED KATAKANA HI
- # <circle> + 30D2
+ # <circle> 30D2
32EB CIRCLED KATAKANA HU
- # <circle> + 30D5
+ # <circle> 30D5
32EC CIRCLED KATAKANA HE
- # <circle> + 30D8
+ # <circle> 30D8
32ED CIRCLED KATAKANA HO
- # <circle> + 30DB
+ # <circle> 30DB
32EE CIRCLED KATAKANA MA
- # <circle> + 30DE
+ # <circle> 30DE
32EF CIRCLED KATAKANA MI
- # <circle> + 30DF
+ # <circle> 30DF
32F0 CIRCLED KATAKANA MU
- # <circle> + 30E0
+ # <circle> 30E0
32F1 CIRCLED KATAKANA ME
- # <circle> + 30E1
+ # <circle> 30E1
32F2 CIRCLED KATAKANA MO
- # <circle> + 30E2
+ # <circle> 30E2
32F3 CIRCLED KATAKANA YA
- # <circle> + 30E4
+ # <circle> 30E4
32F4 CIRCLED KATAKANA YU
- # <circle> + 30E6
+ # <circle> 30E6
32F5 CIRCLED KATAKANA YO
- # <circle> + 30E8
+ # <circle> 30E8
32F6 CIRCLED KATAKANA RA
- # <circle> + 30E9
+ # <circle> 30E9
32F7 CIRCLED KATAKANA RI
- # <circle> + 30EA
+ # <circle> 30EA
32F8 CIRCLED KATAKANA RU
- # <circle> + 30EB
+ # <circle> 30EB
32F9 CIRCLED KATAKANA RE
- # <circle> + 30EC
+ # <circle> 30EC
32FA CIRCLED KATAKANA RO
- # <circle> + 30ED
+ # <circle> 30ED
32FB CIRCLED KATAKANA WA
- # <circle> + 30EF
+ # <circle> 30EF
32FC CIRCLED KATAKANA WI
- # <circle> + 30F0
+ # <circle> 30F0
32FD CIRCLED KATAKANA WE
- # <circle> + 30F1
+ # <circle> 30F1
32FE CIRCLED KATAKANA WO
- # <circle> + 30F2
+ # <circle> 30F2
@@ 3300 CJK Compatibility 33FF
@ Squared Katakana words
3300 SQUARE APAATO
* apartment
- # <square> + 30A2 + 30D1 + 30FC + 30C8
+ # <square> 30A2 30D1 30FC 30C8
3301 SQUARE ARUHUA
* alpha
- # <square> + 30A2 + 30EB + 30D5 + 30A1
+ # <square> 30A2 30EB 30D5 30A1
3302 SQUARE ANPEA
* ampere
- # <square> + 30A2 + 30F3 + 30DA + 30A2
+ # <square> 30A2 30F3 30DA 30A2
3303 SQUARE AARU
* are (unit of area)
- # <square> + 30A2 + 30FC + 30EB
+ # <square> 30A2 30FC 30EB
3304 SQUARE ININGU
* inning
- # <square> + 30A4 + 30CB + 30F3 + 30B0
+ # <square> 30A4 30CB 30F3 30B0
3305 SQUARE INTI
* inch
- # <square> + 30A4 + 30F3 + 30C1
+ # <square> 30A4 30F3 30C1
3306 SQUARE UON
* won (Korean currency)
- # <square> + 30A6 + 30A9 + 30F3
+ # <square> 30A6 30A9 30F3
3307 SQUARE ESUKUUDO
* escudo (Portuguese currency)
- # <square> + 30A8 + 30B9 + 30AF + 30FC + 30C9
+ # <square> 30A8 30B9 30AF 30FC 30C9
3308 SQUARE EEKAA
* acre
- # <square> + 30A8 + 30FC + 30AB + 30FC
+ # <square> 30A8 30FC 30AB 30FC
3309 SQUARE ONSU
* ounce
- # <square> + 30AA + 30F3 + 30B9
+ # <square> 30AA 30F3 30B9
330A SQUARE OOMU
* ohm
- # <square> + 30AA + 30FC + 30E0
+ # <square> 30AA 30FC 30E0
330B SQUARE KAIRI
* kai-ri: nautical mile
- # <square> + 30AB + 30A4 + 30EA
+ # <square> 30AB 30A4 30EA
330C SQUARE KARATTO
* carat
- # <square> + 30AB + 30E9 + 30C3 + 30C8
+ # <square> 30AB 30E9 30C3 30C8
330D SQUARE KARORII
* calorie
- # <square> + 30AB + 30ED + 30EA + 30FC
+ # <square> 30AB 30ED 30EA 30FC
330E SQUARE GARON
* gallon
- # <square> + 30AC + 30ED + 30F3
+ # <square> 30AC 30ED 30F3
330F SQUARE GANMA
* gamma
- # <square> + 30AC + 30F3 + 30DE
+ # <square> 30AC 30F3 30DE
3310 SQUARE GIGA
* giga-
- # <square> + 30AE + 30AC
+ # <square> 30AE 30AC
3311 SQUARE GINII
* guinea
- # <square> + 30AE + 30CB + 30FC
+ # <square> 30AE 30CB 30FC
3312 SQUARE KYURII
* curie
- # <square> + 30AD + 30E5 + 30EA + 30FC
+ # <square> 30AD 30E5 30EA 30FC
3313 SQUARE GIRUDAA
* guilder
- # <square> + 30AE + 30EB + 30C0 + 30FC
+ # <square> 30AE 30EB 30C0 30FC
3314 SQUARE KIRO
* kilo-
- # <square> + 30AD + 30ED
+ # <square> 30AD 30ED
3315 SQUARE KIROGURAMU
* kilogram
- # <square> + 30AD + 30ED + 30B0 + 30E9 + 30E0
+ # <square> 30AD 30ED 30B0 30E9 30E0
3316 SQUARE KIROMEETORU
* kilometer
- # <square> + 30AD + 30ED + 30E1 + 30FC + 30C8 + 30EB
+ # <square> 30AD 30ED 30E1 30FC 30C8 30EB
3317 SQUARE KIROWATTO
* kilowatt
- # <square> + 30AD + 30ED + 30EF + 30C3 + 30C8
+ # <square> 30AD 30ED 30EF 30C3 30C8
3318 SQUARE GURAMU
* gram
- # <square> + 30B0 + 30E9 + 30E0
+ # <square> 30B0 30E9 30E0
3319 SQUARE GURAMUTON
* gram ton
- # <square> + 30B0 + 30E9 + 30E0 + 30C8 + 30F3
+ # <square> 30B0 30E9 30E0 30C8 30F3
331A SQUARE KURUZEIRO
* cruzeiro (Brazilian currency)
- # <square> + 30AF + 30EB + 30BC + 30A4 + 30ED
+ # <square> 30AF 30EB 30BC 30A4 30ED
331B SQUARE KUROONE
* krone
- # <square> + 30AF + 30ED + 30FC + 30CD
+ # <square> 30AF 30ED 30FC 30CD
331C SQUARE KEESU
* case
- # <square> + 30B1 + 30FC + 30B9
+ # <square> 30B1 30FC 30B9
331D SQUARE KORUNA
* koruna (Czech currency)
- # <square> + 30B3 + 30EB + 30CA
+ # <square> 30B3 30EB 30CA
331E SQUARE KOOPO
* co-op
- # <square> + 30B3 + 30FC + 30DD
+ # <square> 30B3 30FC 30DD
331F SQUARE SAIKURU
* cycle
- # <square> + 30B5 + 30A4 + 30AF + 30EB
+ # <square> 30B5 30A4 30AF 30EB
3320 SQUARE SANTIIMU
* centime
- # <square> + 30B5 + 30F3 + 30C1 + 30FC + 30E0
+ # <square> 30B5 30F3 30C1 30FC 30E0
3321 SQUARE SIRINGU
* shilling
- # <square> + 30B7 + 30EA + 30F3 + 30B0
+ # <square> 30B7 30EA 30F3 30B0
3322 SQUARE SENTI
* centi-
- # <square> + 30BB + 30F3 + 30C1
+ # <square> 30BB 30F3 30C1
3323 SQUARE SENTO
* cent
- # <square> + 30BB + 30F3 + 30C8
+ # <square> 30BB 30F3 30C8
3324 SQUARE DAASU
* dozen
- # <square> + 30C0 + 30FC + 30B9
+ # <square> 30C0 30FC 30B9
3325 SQUARE DESI
* deci-
- # <square> + 30C7 + 30B7
+ # <square> 30C7 30B7
3326 SQUARE DORU
* dollar
- # <square> + 30C9 + 30EB
+ # <square> 30C9 30EB
3327 SQUARE TON
* ton
- # <square> + 30C8 + 30F3
+ # <square> 30C8 30F3
3328 SQUARE NANO
* nano-
- # <square> + 30CA + 30CE
+ # <square> 30CA 30CE
3329 SQUARE NOTTO
* knot, nautical mile
- # <square> + 30CE + 30C3 + 30C8
+ # <square> 30CE 30C3 30C8
332A SQUARE HAITU
* heights
- # <square> + 30CF + 30A4 + 30C4
+ # <square> 30CF 30A4 30C4
332B SQUARE PAASENTO
* percent
- # <square> + 30D1 + 30FC + 30BB + 30F3 + 30C8
+ # <square> 30D1 30FC 30BB 30F3 30C8
332C SQUARE PAATU
* parts
- # <square> + 30D1 + 30FC + 30C4
+ # <square> 30D1 30FC 30C4
332D SQUARE BAARERU
* barrel
- # <square> + 30D0 + 30FC + 30EC + 30EB
+ # <square> 30D0 30FC 30EC 30EB
332E SQUARE PIASUTORU
* piaster
- # <square> + 30D4 + 30A2 + 30B9 + 30C8 + 30EB
+ # <square> 30D4 30A2 30B9 30C8 30EB
332F SQUARE PIKURU
* picul (unit of weight)
- # <square> + 30D4 + 30AF + 30EB
+ # <square> 30D4 30AF 30EB
3330 SQUARE PIKO
* pico-
- # <square> + 30D4 + 30B3
+ # <square> 30D4 30B3
3331 SQUARE BIRU
* building
- # <square> + 30D3 + 30EB
+ # <square> 30D3 30EB
3332 SQUARE HUARADDO
* farad
- # <square> + 30D5 + 30A1 + 30E9 + 30C3 + 30C9
+ # <square> 30D5 30A1 30E9 30C3 30C9
3333 SQUARE HUIITO
* feet
- # <square> + 30D5 + 30A3 + 30FC + 30C8
+ # <square> 30D5 30A3 30FC 30C8
3334 SQUARE BUSSYERU
* bushel
- # <square> + 30D6 + 30C3 + 30B7 + 30A7 + 30EB
+ # <square> 30D6 30C3 30B7 30A7 30EB
3335 SQUARE HURAN
* franc
- # <square> + 30D5 + 30E9 + 30F3
+ # <square> 30D5 30E9 30F3
3336 SQUARE HEKUTAARU
* hectare
- # <square> + 30D8 + 30AF + 30BF + 30FC + 30EB
+ # <square> 30D8 30AF 30BF 30FC 30EB
3337 SQUARE PESO
* peso
- # <square> + 30DA + 30BD
+ # <square> 30DA 30BD
3338 SQUARE PENIHI
* pfennig
- # <square> + 30DA + 30CB + 30D2
+ # <square> 30DA 30CB 30D2
3339 SQUARE HERUTU
* hertz
- # <square> + 30D8 + 30EB + 30C4
+ # <square> 30D8 30EB 30C4
333A SQUARE PENSU
* pence
- # <square> + 30DA + 30F3 + 30B9
+ # <square> 30DA 30F3 30B9
333B SQUARE PEEZI
* page
- # <square> + 30DA + 30FC + 30B8
+ # <square> 30DA 30FC 30B8
333C SQUARE BEETA
* beta
- # <square> + 30D9 + 30FC + 30BF
+ # <square> 30D9 30FC 30BF
333D SQUARE POINTO
* point
- # <square> + 30DD + 30A4 + 30F3 + 30C8
+ # <square> 30DD 30A4 30F3 30C8
333E SQUARE BORUTO
* volt, bolt
- # <square> + 30DC + 30EB + 30C8
+ # <square> 30DC 30EB 30C8
333F SQUARE HON
* hon: volume
- # <square> + 30DB + 30F3
+ # <square> 30DB 30F3
3340 SQUARE PONDO
* pound
- # <square> + 30DD + 30F3 + 30C9
+ # <square> 30DD 30F3 30C9
3341 SQUARE HOORU
* hall
- # <square> + 30DB + 30FC + 30EB
+ # <square> 30DB 30FC 30EB
3342 SQUARE HOON
* horn
- # <square> + 30DB + 30FC + 30F3
+ # <square> 30DB 30FC 30F3
3343 SQUARE MAIKURO
* micro-
- # <square> + 30DE + 30A4 + 30AF + 30ED
+ # <square> 30DE 30A4 30AF 30ED
3344 SQUARE MAIRU
* mile
- # <square> + 30DE + 30A4 + 30EB
+ # <square> 30DE 30A4 30EB
3345 SQUARE MAHHA
* mach
- # <square> + 30DE + 30C3 + 30CF
+ # <square> 30DE 30C3 30CF
3346 SQUARE MARUKU
* mark
- # <square> + 30DE + 30EB + 30AF
+ # <square> 30DE 30EB 30AF
3347 SQUARE MANSYON
- * mansion
- # <square> + 30DE + 30F3 + 30B7 + 30E7 + 30F3
+ * mansion (i.e. better quality apartment)
+ # <square> 30DE 30F3 30B7 30E7 30F3
3348 SQUARE MIKURON
* micron
- # <square> + 30DF + 30AF + 30ED + 30F3
+ # <square> 30DF 30AF 30ED 30F3
3349 SQUARE MIRI
* milli-
- # <square> + 30DF + 30EA
+ # <square> 30DF 30EA
334A SQUARE MIRIBAARU
* millibar
- # <square> + 30DF + 30EA + 30D0 + 30FC + 30EB
+ # <square> 30DF 30EA 30D0 30FC 30EB
334B SQUARE MEGA
* mega-
- # <square> + 30E1 + 30AC
+ # <square> 30E1 30AC
334C SQUARE MEGATON
* megaton
- # <square> + 30E1 + 30AC + 30C8 + 30F3
+ # <square> 30E1 30AC 30C8 30F3
334D SQUARE MEETORU
* meter
- # <square> + 30E1 + 30FC + 30C8 + 30EB
+ # <square> 30E1 30FC 30C8 30EB
334E SQUARE YAADO
* yard
- # <square> + 30E4 + 30FC + 30C9
+ # <square> 30E4 30FC 30C9
334F SQUARE YAARU
* yard
- # <square> + 30E4 + 30FC + 30EB
+ # <square> 30E4 30FC 30EB
3350 SQUARE YUAN
* yuan (Chinese currency)
- # <square> + 30E6 + 30A2 + 30F3
+ # <square> 30E6 30A2 30F3
3351 SQUARE RITTORU
* liter
- # <square> + 30EA + 30C3 + 30C8 + 30EB
+ # <square> 30EA 30C3 30C8 30EB
3352 SQUARE RIRA
* lira
- # <square> + 30EA + 30E9
+ # <square> 30EA 30E9
3353 SQUARE RUPII
* rupee
- # <square> + 30EB + 30D4 + 30FC
+ # <square> 30EB 30D4 30FC
3354 SQUARE RUUBURU
* ruble
- # <square> + 30EB + 30FC + 30D6 + 30EB
+ # <square> 30EB 30FC 30D6 30EB
3355 SQUARE REMU
* rem (unit of radiation)
- # <square> + 30EC + 30E0
+ # <square> 30EC 30E0
3356 SQUARE RENTOGEN
* roentgen
- # <square> + 30EC + 30F3 + 30C8 + 30B2 + 30F3
+ # <square> 30EC 30F3 30C8 30B2 30F3
3357 SQUARE WATTO
* watt
- # <square> + 30EF + 30C3 + 30C8
+ # <square> 30EF 30C3 30C8
+@ Telegraph symbols for hours
3358 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO
- # <square> + 0030 + 70B9
+ # 0030 70B9
3359 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ONE
- # 0031 + 70B9
+ # 0031 70B9
335A IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWO
- # 0032 + 70B9
+ # 0032 70B9
335B IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THREE
- # 0033 + 70B9
+ # 0033 70B9
335C IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOUR
- # 0034 + 70B9
+ # 0034 70B9
335D IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIVE
- # 0035 + 70B9
+ # 0035 70B9
335E IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIX
- # 0036 + 70B9
+ # 0036 70B9
335F IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVEN
- # 0037 + 70B9
+ # 0037 70B9
3360 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHT
- # 0038 + 70B9
+ # 0038 70B9
3361 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINE
- # 0039 + 70B9
+ # 0039 70B9
3362 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TEN
- # 0031 + 0030 + 70B9
+ # 0031 0030 70B9
3363 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ELEVEN
- # 0031 + 0031 + 70B9
+ # 0031 0031 70B9
3364 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWELVE
- # 0031 + 0032 + 70B9
+ # 0031 0032 70B9
3365 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THIRTEEN
- # 0031 + 0033 + 70B9
+ # 0031 0033 70B9
3366 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOURTEEN
- # 0031 + 0034 + 70B9
+ # 0031 0034 70B9
3367 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIFTEEN
- # 0031 + 0035 + 70B9
+ # 0031 0035 70B9
3368 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIXTEEN
- # 0031 + 0036 + 70B9
+ # 0031 0036 70B9
3369 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVENTEEN
- # 0031 + 0037 + 70B9
+ # 0031 0037 70B9
336A IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHTEEN
- # 0031 + 0038 + 70B9
+ # 0031 0038 70B9
336B IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINETEEN
- # 0031 + 0039 + 70B9
+ # 0031 0039 70B9
336C IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY
- # 0032 + 0030 + 70B9
+ # 0032 0030 70B9
336D IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-ONE
- # 0032 + 0031 + 70B9
+ # 0032 0031 70B9
336E IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-TWO
- # 0032 + 0032 + 70B9
+ # 0032 0032 70B9
336F IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-THREE
- # 0032 + 0033 + 70B9
+ # 0032 0033 70B9
3370 IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR
- # 0032 + 0034 + 70B9
+ # 0032 0034 70B9
+@ Squared Latin abbreviations
3371 SQUARE HPA
- # <square> + 0068 + 0050 + 0061
+ # <square> 0068 0050 0061
3372 SQUARE DA
- # <square> + 0064 + 0061
+ # <square> 0064 0061
3373 SQUARE AU
- # <square> + 0041 + 0055
+ # <square> 0041 0055
3374 SQUARE BAR
- # <square> + 0062 + 0061 + 0072
+ # <square> 0062 0061 0072
3375 SQUARE OV
- # <square> + 006F + 0056
+ # <square> 006F 0056
3376 SQUARE PC
- # <square> + 0070 + 0063
-3377 <reserved>
-3378 <reserved>
-3379 <reserved>
-337A <reserved>
+ # <square> 0070 0063
@ Japanese era names
337B SQUARE ERA NAME HEISEI
- # <square> + 5E73 + 6210
+ # <square> 5E73 6210
337C SQUARE ERA NAME SYOUWA
- # <square> + 662D + 548C
+ # <square> 662D 548C
337D SQUARE ERA NAME TAISYOU
- # <square> + 5927 + 6B63
+ # <square> 5927 6B63
337E SQUARE ERA NAME MEIZI
- # <square> + 660E + 6CBB
+ # <square> 660E 6CBB
@ Japanese corporation
337F SQUARE CORPORATION
= kabusiki-gaisya
* incorporated
- # <square> + 682A + 5F0F + 4F1A + 793E
+ # <square> 682A 5F0F 4F1A 793E
@ Squared Latin abbreviations
3380 SQUARE PA AMPS
- # <square> + 0070 + 0041
+ # <square> 0070 0041
3381 SQUARE NA
- # <square> + 006E + 0041
+ # <square> 006E 0041
3382 SQUARE MU A
- # <square> + 03BC + 0041
+ # <square> 03BC 0041
3383 SQUARE MA
- # <square> + 006D + 0041
+ # <square> 006D 0041
3384 SQUARE KA
- # <square> + 006B + 0041
+ # <square> 006B 0041
3385 SQUARE KB
- # <square> + 004B + 0042
+ # <square> 004B 0042
3386 SQUARE MB
- # <square> + 004D + 0042
+ # <square> 004D 0042
3387 SQUARE GB
- # <square> + 0047 + 0042
+ # <square> 0047 0042
3388 SQUARE CAL
- # <square> + 0063 + 0061 + 006C
+ # <square> 0063 0061 006C
3389 SQUARE KCAL
- # <square> + 006B + 0063 + 0061 + 006C
+ # <square> 006B 0063 0061 006C
338A SQUARE PF
- # <square> + 0070 + 0046
+ # <square> 0070 0046
338B SQUARE NF
- # <square> + 006E + 0046
+ # <square> 006E 0046
338C SQUARE MU F
- # <square> + 03BC + 0046
+ # <square> 03BC 0046
338D SQUARE MU G
- # <square> + 03BC + 0067
+ # <square> 03BC 0067
338E SQUARE MG
- # <square> + 006D + 0067
+ # <square> 006D 0067
338F SQUARE KG
- # <square> + 006B + 0067
+ # <square> 006B 0067
3390 SQUARE HZ
- # <square> + 0048 + 007A
+ # <square> 0048 007A
3391 SQUARE KHZ
- # <square> + 006B + 0048 + 007A
+ # <square> 006B 0048 007A
3392 SQUARE MHZ
- # <square> + 004D + 0048 + 007A
+ # <square> 004D 0048 007A
3393 SQUARE GHZ
- # <square> + 0047 + 0048 + 007A
+ # <square> 0047 0048 007A
3394 SQUARE THZ
- # <square> + 0054 + 0048 + 007A
+ # <square> 0054 0048 007A
3395 SQUARE MU L
- # <square> + 03BC + 2113
+ # <square> 03BC 2113
3396 SQUARE ML
- # <square> + 006D + 2113
+ # <square> 006D 2113
3397 SQUARE DL
- # <square> + 0064 + 2113
+ # <square> 0064 2113
3398 SQUARE KL
- # <square> + 006B + 2113
+ # <square> 006B 2113
3399 SQUARE FM
- # <square> + 0066 + 006D
+ # <square> 0066 006D
339A SQUARE NM
- # <square> + 006E + 006D
+ # <square> 006E 006D
339B SQUARE MU M
- # <square> + 03BC + 006D
+ # <square> 03BC 006D
339C SQUARE MM
- # <square> + 006D + 006D
+ # <square> 006D 006D
339D SQUARE CM
- # <square> + 0063 + 006D
+ # <square> 0063 006D
339E SQUARE KM
- # <square> + 006B + 006D
+ # <square> 006B 006D
339F SQUARE MM SQUARED
- # <square> + 006D + 006D + 00B2
+ # <square> 006D 006D 00B2
33A0 SQUARE CM SQUARED
- # <square> + 0063 + 006D + 00B2
+ # <square> 0063 006D 00B2
33A1 SQUARE M SQUARED
- # <square> + 006D + 00B2
+ # <square> 006D 00B2
33A2 SQUARE KM SQUARED
- # <square> + 006B + 006D + 00B2
+ # <square> 006B 006D 00B2
33A3 SQUARE MM CUBED
- # <square> + 006D + 006D + 00B3
+ # <square> 006D 006D 00B3
33A4 SQUARE CM CUBED
- # <square> + 0063 + 006D + 00B3
+ # <square> 0063 006D 00B3
33A5 SQUARE M CUBED
- # <square> + 006D + 00B3
+ # <square> 006D 00B3
33A6 SQUARE KM CUBED
- # <square> + 006B + 006D + 00B3
+ # <square> 006B 006D 00B3
33A7 SQUARE M OVER S
- # <square> + 006D + 2215 + 0073
+ # <square> 006D 2215 0073
33A8 SQUARE M OVER S SQUARED
- # <square> + 006D + 2215 + 0073 + 00B2
+ # <square> 006D 2215 0073 00B2
33A9 SQUARE PA
- # <square> + 0050 + 0061
+ # <square> 0050 0061
33AA SQUARE KPA
- # <square> + 006B + 0050 + 0061
+ # <square> 006B 0050 0061
33AB SQUARE MPA
- # <square> + 004D + 0050 + 0061
+ # <square> 004D 0050 0061
33AC SQUARE GPA
- # <square> + 0047 + 0050 + 0061
+ # <square> 0047 0050 0061
33AD SQUARE RAD
- # <square> + 0072 + 0061 + 0064
+ # <square> 0072 0061 0064
33AE SQUARE RAD OVER S
- # <square> + 0072 + 0061 + 0064 + 2215 + 0073
+ # <square> 0072 0061 0064 2215 0073
33AF SQUARE RAD OVER S SQUARED
- # <square> + 0072 + 0061 + 0064 + 2215 + 0073 + 00B2
+ # <square> 0072 0061 0064 2215 0073 00B2
33B0 SQUARE PS
- # <square> + 0070 + 0073
+ # <square> 0070 0073
33B1 SQUARE NS
- # <square> + 006E + 0073
+ # <square> 006E 0073
33B2 SQUARE MU S
- # <square> + 03BC + 0073
+ # <square> 03BC 0073
33B3 SQUARE MS
- # <square> + 006D + 0073
+ # <square> 006D 0073
33B4 SQUARE PV
- # <square> + 0070 + 0056
+ # <square> 0070 0056
33B5 SQUARE NV
- # <square> + 006E + 0056
+ # <square> 006E 0056
33B6 SQUARE MU V
- # <square> + 03BC + 0056
+ # <square> 03BC 0056
33B7 SQUARE MV
- # <square> + 006D + 0056
+ # <square> 006D 0056
33B8 SQUARE KV
- # <square> + 006B + 0056
+ # <square> 006B 0056
33B9 SQUARE MV MEGA
- # <square> + 004D + 0056
+ # <square> 004D 0056
33BA SQUARE PW
- # <square> + 0070 + 0057
+ # <square> 0070 0057
33BB SQUARE NW
- # <square> + 006E + 0057
+ # <square> 006E 0057
33BC SQUARE MU W
- # <square> + 03BC + 0057
+ # <square> 03BC 0057
33BD SQUARE MW
- # <square> + 006D + 0057
+ # <square> 006D 0057
33BE SQUARE KW
- # <square> + 006B + 0057
+ # <square> 006B 0057
33BF SQUARE MW MEGA
- # <square> + 004D + 0057
+ # <square> 004D 0057
33C0 SQUARE K OHM
- # <square> + 006B + 03A9
+ # <square> 006B 03A9
33C1 SQUARE M OHM
- # <square> + 004D + 03A9
+ # <square> 004D 03A9
33C2 SQUARE AM
- # <square> + 0061 + 002E + 006D + 002E
+ # <square> 0061 002E 006D 002E
33C3 SQUARE BQ
- # <square> + 0042 + 0071
+ # <square> 0042 0071
33C4 SQUARE CC
- # <square> + 0063 + 0063
+ # <square> 0063 0063
33C5 SQUARE CD
- # <square> + 0063 + 0064
+ # <square> 0063 0064
33C6 SQUARE C OVER KG
- # <square> + 0043 + 2215 + 006B + 0067
+ # <square> 0043 2215 006B 0067
33C7 SQUARE CO
- # <square> + 0043 + 006F + 002E
+ # <square> 0043 006F 002E
33C8 SQUARE DB
- # <square> + 0064 + 0042
+ # <square> 0064 0042
33C9 SQUARE GY
- # <square> + 0047 + 0079
+ # <square> 0047 0079
33CA SQUARE HA
- # <square> + 0068 + 0061
+ # <square> 0068 0061
33CB SQUARE HP
- # <square> + 0048 + 0050
+ # <square> 0048 0050
33CC SQUARE IN
- # <square> + 0069 + 006E
+ # <square> 0069 006E
33CD SQUARE KK
- # <square> + 004B + 004B
+ # <square> 004B 004B
33CE SQUARE KM CAPITAL
- # <square> + 004B + 004D
+ # <square> 004B 004D
33CF SQUARE KT
- # <square> + 006B + 0074
+ # <square> 006B 0074
33D0 SQUARE LM
- # <square> + 006C + 006D
+ # <square> 006C 006D
33D1 SQUARE LN
- # <square> + 006C + 006E
+ # <square> 006C 006E
33D2 SQUARE LOG
- # <square> + 006C + 006F + 0067
+ # <square> 006C 006F 0067
33D3 SQUARE LX
- # <square> + 006C + 0078
+ # <square> 006C 0078
33D4 SQUARE MB SMALL
- # <square> + 006D + 0062
+ # <square> 006D 0062
33D5 SQUARE MIL
- # <square> + 006D + 0069 + 006C
+ # <square> 006D 0069 006C
33D6 SQUARE MOL
- # <square> + 006D + 006F + 006C
+ # <square> 006D 006F 006C
33D7 SQUARE PH
- # <square> + 0050 + 0048
+ # <square> 0050 0048
33D8 SQUARE PM
- # <square> + 0070 + 002E + 006D + 002E
+ # <square> 0070 002E 006D 002E
33D9 SQUARE PPM
- # <square> + 0050 + 0050 + 004D
+ # <square> 0050 0050 004D
33DA SQUARE PR
- # <square> + 0050 + 0052
+ # <square> 0050 0052
33DB SQUARE SR
- # <square> + 0073 + 0072
+ # <square> 0073 0072
33DC SQUARE SV
- # <square> + 0053 + 0076
+ # <square> 0053 0076
33DD SQUARE WB
- # <square> + 0057 + 0062
-33DE <reserved>
-33DF <reserved>
+ # <square> 0057 0062
+@ Telegraph symbols for days
33E0 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE
- # 0031 + 65E5
+ # 0031 65E5
33E1 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWO
- # 0032 + 65E5
+ # 0032 65E5
33E2 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THREE
- # 0033 + 65E5
+ # 0033 65E5
33E3 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOUR
- # 0034 + 65E5
+ # 0034 65E5
33E4 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIVE
- # 0035 + 65E5
+ # 0035 65E5
33E5 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIX
- # 0036 + 65E5
+ # 0036 65E5
33E6 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVEN
- # 0037 + 65E5
+ # 0037 65E5
33E7 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHT
- # 0038 + 65E5
+ # 0038 65E5
33E8 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINE
- # 0039 + 65E5
+ # 0039 65E5
33E9 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TEN
- # 0031 + 0030 + 65E5
+ # 0031 0030 65E5
33EA IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ELEVEN
- # 0031 + 0031 + 65E5
+ # 0031 0031 65E5
33EB IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWELVE
- # 0031 + 0032 + 65E5
+ # 0031 0032 65E5
33EC IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTEEN
- # 0031 + 0033 + 65E5
+ # 0031 0033 65E5
33ED IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOURTEEN
- # 0031 + 0034 + 65E5
+ # 0031 0034 65E5
33EE IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIFTEEN
- # 0031 + 0035 + 65E5
+ # 0031 0035 65E5
33EF IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIXTEEN
- # 0031 + 0036 + 65E5
+ # 0031 0036 65E5
33F0 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVENTEEN
- # 0031 + 0037 + 65E5
+ # 0031 0037 65E5
33F1 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHTEEN
- # 0031 + 0038 + 65E5
+ # 0031 0038 65E5
33F2 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINETEEN
- # 0031 + 0039 + 65E5
+ # 0031 0039 65E5
33F3 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY
- # 0032 + 0030 + 65E5
+ # 0032 0030 65E5
33F4 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-ONE
- # 0032 + 0031 + 65E5
+ # 0032 0031 65E5
33F5 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-TWO
- # 0032 + 0032 + 65E5
+ # 0032 0032 65E5
33F6 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-THREE
- # 0032 + 0033 + 65E5
+ # 0032 0033 65E5
33F7 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FOUR
- # 0032 + 0034 + 65E5
+ # 0032 0034 65E5
33F8 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FIVE
- # 0032 + 0035 + 65E5
+ # 0032 0035 65E5
33F9 IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SIX
- # 0032 + 0036 + 65E5
+ # 0032 0036 65E5
33FA IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SEVEN
- # 0032 + 0037 + 65E5
+ # 0032 0037 65E5
33FB IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-EIGHT
- # 0032 + 0038 + 65E5
+ # 0032 0038 65E5
33FC IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-NINE
- # 0032 + 0039 + 65E5
+ # 0032 0039 65E5
33FD IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY
- # 0033 + 0030 + 65E5
+ # 0033 0030 65E5
33FE IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE
- # 0033 + 0031 + 65E5
-@@ 3400 Unassigned 4DFF
+ # 0033 0031 65E5
+@@ 3400 CJK Unified Ideographs Extension A 4DB5
@@ 4E00 CJK Unified Ideographs 9FA5
-@@ 9FA6 Unassigned ABFF
+@@ A000 Yi Syllables A48F
+@ Syllables
+A000 YI SYLLABLE IT
+A001 YI SYLLABLE IX
+A002 YI SYLLABLE I
+A003 YI SYLLABLE IP
+A004 YI SYLLABLE IET
+A005 YI SYLLABLE IEX
+A006 YI SYLLABLE IE
+A007 YI SYLLABLE IEP
+A008 YI SYLLABLE AT
+A009 YI SYLLABLE AX
+A00A YI SYLLABLE A
+A00B YI SYLLABLE AP
+A00C YI SYLLABLE UOX
+A00D YI SYLLABLE UO
+A00E YI SYLLABLE UOP
+A00F YI SYLLABLE OT
+A010 YI SYLLABLE OX
+A011 YI SYLLABLE O
+A012 YI SYLLABLE OP
+A013 YI SYLLABLE EX
+A014 YI SYLLABLE E
+A015 YI SYLLABLE WU
+A016 YI SYLLABLE BIT
+A017 YI SYLLABLE BIX
+A018 YI SYLLABLE BI
+A019 YI SYLLABLE BIP
+A01A YI SYLLABLE BIET
+A01B YI SYLLABLE BIEX
+A01C YI SYLLABLE BIE
+A01D YI SYLLABLE BIEP
+A01E YI SYLLABLE BAT
+A01F YI SYLLABLE BAX
+A020 YI SYLLABLE BA
+A021 YI SYLLABLE BAP
+A022 YI SYLLABLE BUOX
+A023 YI SYLLABLE BUO
+A024 YI SYLLABLE BUOP
+A025 YI SYLLABLE BOT
+A026 YI SYLLABLE BOX
+A027 YI SYLLABLE BO
+A028 YI SYLLABLE BOP
+A029 YI SYLLABLE BEX
+A02A YI SYLLABLE BE
+A02B YI SYLLABLE BEP
+A02C YI SYLLABLE BUT
+A02D YI SYLLABLE BUX
+A02E YI SYLLABLE BU
+A02F YI SYLLABLE BUP
+A030 YI SYLLABLE BURX
+A031 YI SYLLABLE BUR
+A032 YI SYLLABLE BYT
+A033 YI SYLLABLE BYX
+A034 YI SYLLABLE BY
+A035 YI SYLLABLE BYP
+A036 YI SYLLABLE BYRX
+A037 YI SYLLABLE BYR
+A038 YI SYLLABLE PIT
+A039 YI SYLLABLE PIX
+A03A YI SYLLABLE PI
+A03B YI SYLLABLE PIP
+A03C YI SYLLABLE PIEX
+A03D YI SYLLABLE PIE
+A03E YI SYLLABLE PIEP
+A03F YI SYLLABLE PAT
+A040 YI SYLLABLE PAX
+A041 YI SYLLABLE PA
+A042 YI SYLLABLE PAP
+A043 YI SYLLABLE PUOX
+A044 YI SYLLABLE PUO
+A045 YI SYLLABLE PUOP
+A046 YI SYLLABLE POT
+A047 YI SYLLABLE POX
+A048 YI SYLLABLE PO
+A049 YI SYLLABLE POP
+A04A YI SYLLABLE PUT
+A04B YI SYLLABLE PUX
+A04C YI SYLLABLE PU
+A04D YI SYLLABLE PUP
+A04E YI SYLLABLE PURX
+A04F YI SYLLABLE PUR
+A050 YI SYLLABLE PYT
+A051 YI SYLLABLE PYX
+A052 YI SYLLABLE PY
+A053 YI SYLLABLE PYP
+A054 YI SYLLABLE PYRX
+A055 YI SYLLABLE PYR
+A056 YI SYLLABLE BBIT
+A057 YI SYLLABLE BBIX
+A058 YI SYLLABLE BBI
+A059 YI SYLLABLE BBIP
+A05A YI SYLLABLE BBIET
+A05B YI SYLLABLE BBIEX
+A05C YI SYLLABLE BBIE
+A05D YI SYLLABLE BBIEP
+A05E YI SYLLABLE BBAT
+A05F YI SYLLABLE BBAX
+A060 YI SYLLABLE BBA
+A061 YI SYLLABLE BBAP
+A062 YI SYLLABLE BBUOX
+A063 YI SYLLABLE BBUO
+A064 YI SYLLABLE BBUOP
+A065 YI SYLLABLE BBOT
+A066 YI SYLLABLE BBOX
+A067 YI SYLLABLE BBO
+A068 YI SYLLABLE BBOP
+A069 YI SYLLABLE BBEX
+A06A YI SYLLABLE BBE
+A06B YI SYLLABLE BBEP
+A06C YI SYLLABLE BBUT
+A06D YI SYLLABLE BBUX
+A06E YI SYLLABLE BBU
+A06F YI SYLLABLE BBUP
+A070 YI SYLLABLE BBURX
+A071 YI SYLLABLE BBUR
+A072 YI SYLLABLE BBYT
+A073 YI SYLLABLE BBYX
+A074 YI SYLLABLE BBY
+A075 YI SYLLABLE BBYP
+A076 YI SYLLABLE NBIT
+A077 YI SYLLABLE NBIX
+A078 YI SYLLABLE NBI
+A079 YI SYLLABLE NBIP
+A07A YI SYLLABLE NBIEX
+A07B YI SYLLABLE NBIE
+A07C YI SYLLABLE NBIEP
+A07D YI SYLLABLE NBAT
+A07E YI SYLLABLE NBAX
+A07F YI SYLLABLE NBA
+A080 YI SYLLABLE NBAP
+A081 YI SYLLABLE NBOT
+A082 YI SYLLABLE NBOX
+A083 YI SYLLABLE NBO
+A084 YI SYLLABLE NBOP
+A085 YI SYLLABLE NBUT
+A086 YI SYLLABLE NBUX
+A087 YI SYLLABLE NBU
+A088 YI SYLLABLE NBUP
+A089 YI SYLLABLE NBURX
+A08A YI SYLLABLE NBUR
+A08B YI SYLLABLE NBYT
+A08C YI SYLLABLE NBYX
+A08D YI SYLLABLE NBY
+A08E YI SYLLABLE NBYP
+A08F YI SYLLABLE NBYRX
+A090 YI SYLLABLE NBYR
+A091 YI SYLLABLE HMIT
+A092 YI SYLLABLE HMIX
+A093 YI SYLLABLE HMI
+A094 YI SYLLABLE HMIP
+A095 YI SYLLABLE HMIEX
+A096 YI SYLLABLE HMIE
+A097 YI SYLLABLE HMIEP
+A098 YI SYLLABLE HMAT
+A099 YI SYLLABLE HMAX
+A09A YI SYLLABLE HMA
+A09B YI SYLLABLE HMAP
+A09C YI SYLLABLE HMUOX
+A09D YI SYLLABLE HMUO
+A09E YI SYLLABLE HMUOP
+A09F YI SYLLABLE HMOT
+A0A0 YI SYLLABLE HMOX
+A0A1 YI SYLLABLE HMO
+A0A2 YI SYLLABLE HMOP
+A0A3 YI SYLLABLE HMUT
+A0A4 YI SYLLABLE HMUX
+A0A5 YI SYLLABLE HMU
+A0A6 YI SYLLABLE HMUP
+A0A7 YI SYLLABLE HMURX
+A0A8 YI SYLLABLE HMUR
+A0A9 YI SYLLABLE HMYX
+A0AA YI SYLLABLE HMY
+A0AB YI SYLLABLE HMYP
+A0AC YI SYLLABLE HMYRX
+A0AD YI SYLLABLE HMYR
+A0AE YI SYLLABLE MIT
+A0AF YI SYLLABLE MIX
+A0B0 YI SYLLABLE MI
+A0B1 YI SYLLABLE MIP
+A0B2 YI SYLLABLE MIEX
+A0B3 YI SYLLABLE MIE
+A0B4 YI SYLLABLE MIEP
+A0B5 YI SYLLABLE MAT
+A0B6 YI SYLLABLE MAX
+A0B7 YI SYLLABLE MA
+A0B8 YI SYLLABLE MAP
+A0B9 YI SYLLABLE MUOT
+A0BA YI SYLLABLE MUOX
+A0BB YI SYLLABLE MUO
+A0BC YI SYLLABLE MUOP
+A0BD YI SYLLABLE MOT
+A0BE YI SYLLABLE MOX
+A0BF YI SYLLABLE MO
+A0C0 YI SYLLABLE MOP
+A0C1 YI SYLLABLE MEX
+A0C2 YI SYLLABLE ME
+A0C3 YI SYLLABLE MUT
+A0C4 YI SYLLABLE MUX
+A0C5 YI SYLLABLE MU
+A0C6 YI SYLLABLE MUP
+A0C7 YI SYLLABLE MURX
+A0C8 YI SYLLABLE MUR
+A0C9 YI SYLLABLE MYT
+A0CA YI SYLLABLE MYX
+A0CB YI SYLLABLE MY
+A0CC YI SYLLABLE MYP
+A0CD YI SYLLABLE FIT
+A0CE YI SYLLABLE FIX
+A0CF YI SYLLABLE FI
+A0D0 YI SYLLABLE FIP
+A0D1 YI SYLLABLE FAT
+A0D2 YI SYLLABLE FAX
+A0D3 YI SYLLABLE FA
+A0D4 YI SYLLABLE FAP
+A0D5 YI SYLLABLE FOX
+A0D6 YI SYLLABLE FO
+A0D7 YI SYLLABLE FOP
+A0D8 YI SYLLABLE FUT
+A0D9 YI SYLLABLE FUX
+A0DA YI SYLLABLE FU
+A0DB YI SYLLABLE FUP
+A0DC YI SYLLABLE FURX
+A0DD YI SYLLABLE FUR
+A0DE YI SYLLABLE FYT
+A0DF YI SYLLABLE FYX
+A0E0 YI SYLLABLE FY
+A0E1 YI SYLLABLE FYP
+A0E2 YI SYLLABLE VIT
+A0E3 YI SYLLABLE VIX
+A0E4 YI SYLLABLE VI
+A0E5 YI SYLLABLE VIP
+A0E6 YI SYLLABLE VIET
+A0E7 YI SYLLABLE VIEX
+A0E8 YI SYLLABLE VIE
+A0E9 YI SYLLABLE VIEP
+A0EA YI SYLLABLE VAT
+A0EB YI SYLLABLE VAX
+A0EC YI SYLLABLE VA
+A0ED YI SYLLABLE VAP
+A0EE YI SYLLABLE VOT
+A0EF YI SYLLABLE VOX
+A0F0 YI SYLLABLE VO
+A0F1 YI SYLLABLE VOP
+A0F2 YI SYLLABLE VEX
+A0F3 YI SYLLABLE VEP
+A0F4 YI SYLLABLE VUT
+A0F5 YI SYLLABLE VUX
+A0F6 YI SYLLABLE VU
+A0F7 YI SYLLABLE VUP
+A0F8 YI SYLLABLE VURX
+A0F9 YI SYLLABLE VUR
+A0FA YI SYLLABLE VYT
+A0FB YI SYLLABLE VYX
+A0FC YI SYLLABLE VY
+A0FD YI SYLLABLE VYP
+A0FE YI SYLLABLE VYRX
+A0FF YI SYLLABLE VYR
+A100 YI SYLLABLE DIT
+A101 YI SYLLABLE DIX
+A102 YI SYLLABLE DI
+A103 YI SYLLABLE DIP
+A104 YI SYLLABLE DIEX
+A105 YI SYLLABLE DIE
+A106 YI SYLLABLE DIEP
+A107 YI SYLLABLE DAT
+A108 YI SYLLABLE DAX
+A109 YI SYLLABLE DA
+A10A YI SYLLABLE DAP
+A10B YI SYLLABLE DUOX
+A10C YI SYLLABLE DUO
+A10D YI SYLLABLE DOT
+A10E YI SYLLABLE DOX
+A10F YI SYLLABLE DO
+A110 YI SYLLABLE DOP
+A111 YI SYLLABLE DEX
+A112 YI SYLLABLE DE
+A113 YI SYLLABLE DEP
+A114 YI SYLLABLE DUT
+A115 YI SYLLABLE DUX
+A116 YI SYLLABLE DU
+A117 YI SYLLABLE DUP
+A118 YI SYLLABLE DURX
+A119 YI SYLLABLE DUR
+A11A YI SYLLABLE TIT
+A11B YI SYLLABLE TIX
+A11C YI SYLLABLE TI
+A11D YI SYLLABLE TIP
+A11E YI SYLLABLE TIEX
+A11F YI SYLLABLE TIE
+A120 YI SYLLABLE TIEP
+A121 YI SYLLABLE TAT
+A122 YI SYLLABLE TAX
+A123 YI SYLLABLE TA
+A124 YI SYLLABLE TAP
+A125 YI SYLLABLE TUOT
+A126 YI SYLLABLE TUOX
+A127 YI SYLLABLE TUO
+A128 YI SYLLABLE TUOP
+A129 YI SYLLABLE TOT
+A12A YI SYLLABLE TOX
+A12B YI SYLLABLE TO
+A12C YI SYLLABLE TOP
+A12D YI SYLLABLE TEX
+A12E YI SYLLABLE TE
+A12F YI SYLLABLE TEP
+A130 YI SYLLABLE TUT
+A131 YI SYLLABLE TUX
+A132 YI SYLLABLE TU
+A133 YI SYLLABLE TUP
+A134 YI SYLLABLE TURX
+A135 YI SYLLABLE TUR
+A136 YI SYLLABLE DDIT
+A137 YI SYLLABLE DDIX
+A138 YI SYLLABLE DDI
+A139 YI SYLLABLE DDIP
+A13A YI SYLLABLE DDIEX
+A13B YI SYLLABLE DDIE
+A13C YI SYLLABLE DDIEP
+A13D YI SYLLABLE DDAT
+A13E YI SYLLABLE DDAX
+A13F YI SYLLABLE DDA
+A140 YI SYLLABLE DDAP
+A141 YI SYLLABLE DDUOX
+A142 YI SYLLABLE DDUO
+A143 YI SYLLABLE DDUOP
+A144 YI SYLLABLE DDOT
+A145 YI SYLLABLE DDOX
+A146 YI SYLLABLE DDO
+A147 YI SYLLABLE DDOP
+A148 YI SYLLABLE DDEX
+A149 YI SYLLABLE DDE
+A14A YI SYLLABLE DDEP
+A14B YI SYLLABLE DDUT
+A14C YI SYLLABLE DDUX
+A14D YI SYLLABLE DDU
+A14E YI SYLLABLE DDUP
+A14F YI SYLLABLE DDURX
+A150 YI SYLLABLE DDUR
+A151 YI SYLLABLE NDIT
+A152 YI SYLLABLE NDIX
+A153 YI SYLLABLE NDI
+A154 YI SYLLABLE NDIP
+A155 YI SYLLABLE NDIEX
+A156 YI SYLLABLE NDIE
+A157 YI SYLLABLE NDAT
+A158 YI SYLLABLE NDAX
+A159 YI SYLLABLE NDA
+A15A YI SYLLABLE NDAP
+A15B YI SYLLABLE NDOT
+A15C YI SYLLABLE NDOX
+A15D YI SYLLABLE NDO
+A15E YI SYLLABLE NDOP
+A15F YI SYLLABLE NDEX
+A160 YI SYLLABLE NDE
+A161 YI SYLLABLE NDEP
+A162 YI SYLLABLE NDUT
+A163 YI SYLLABLE NDUX
+A164 YI SYLLABLE NDU
+A165 YI SYLLABLE NDUP
+A166 YI SYLLABLE NDURX
+A167 YI SYLLABLE NDUR
+A168 YI SYLLABLE HNIT
+A169 YI SYLLABLE HNIX
+A16A YI SYLLABLE HNI
+A16B YI SYLLABLE HNIP
+A16C YI SYLLABLE HNIET
+A16D YI SYLLABLE HNIEX
+A16E YI SYLLABLE HNIE
+A16F YI SYLLABLE HNIEP
+A170 YI SYLLABLE HNAT
+A171 YI SYLLABLE HNAX
+A172 YI SYLLABLE HNA
+A173 YI SYLLABLE HNAP
+A174 YI SYLLABLE HNUOX
+A175 YI SYLLABLE HNUO
+A176 YI SYLLABLE HNOT
+A177 YI SYLLABLE HNOX
+A178 YI SYLLABLE HNOP
+A179 YI SYLLABLE HNEX
+A17A YI SYLLABLE HNE
+A17B YI SYLLABLE HNEP
+A17C YI SYLLABLE HNUT
+A17D YI SYLLABLE NIT
+A17E YI SYLLABLE NIX
+A17F YI SYLLABLE NI
+A180 YI SYLLABLE NIP
+A181 YI SYLLABLE NIEX
+A182 YI SYLLABLE NIE
+A183 YI SYLLABLE NIEP
+A184 YI SYLLABLE NAX
+A185 YI SYLLABLE NA
+A186 YI SYLLABLE NAP
+A187 YI SYLLABLE NUOX
+A188 YI SYLLABLE NUO
+A189 YI SYLLABLE NUOP
+A18A YI SYLLABLE NOT
+A18B YI SYLLABLE NOX
+A18C YI SYLLABLE NO
+A18D YI SYLLABLE NOP
+A18E YI SYLLABLE NEX
+A18F YI SYLLABLE NE
+A190 YI SYLLABLE NEP
+A191 YI SYLLABLE NUT
+A192 YI SYLLABLE NUX
+A193 YI SYLLABLE NU
+A194 YI SYLLABLE NUP
+A195 YI SYLLABLE NURX
+A196 YI SYLLABLE NUR
+A197 YI SYLLABLE HLIT
+A198 YI SYLLABLE HLIX
+A199 YI SYLLABLE HLI
+A19A YI SYLLABLE HLIP
+A19B YI SYLLABLE HLIEX
+A19C YI SYLLABLE HLIE
+A19D YI SYLLABLE HLIEP
+A19E YI SYLLABLE HLAT
+A19F YI SYLLABLE HLAX
+A1A0 YI SYLLABLE HLA
+A1A1 YI SYLLABLE HLAP
+A1A2 YI SYLLABLE HLUOX
+A1A3 YI SYLLABLE HLUO
+A1A4 YI SYLLABLE HLUOP
+A1A5 YI SYLLABLE HLOX
+A1A6 YI SYLLABLE HLO
+A1A7 YI SYLLABLE HLOP
+A1A8 YI SYLLABLE HLEX
+A1A9 YI SYLLABLE HLE
+A1AA YI SYLLABLE HLEP
+A1AB YI SYLLABLE HLUT
+A1AC YI SYLLABLE HLUX
+A1AD YI SYLLABLE HLU
+A1AE YI SYLLABLE HLUP
+A1AF YI SYLLABLE HLURX
+A1B0 YI SYLLABLE HLUR
+A1B1 YI SYLLABLE HLYT
+A1B2 YI SYLLABLE HLYX
+A1B3 YI SYLLABLE HLY
+A1B4 YI SYLLABLE HLYP
+A1B5 YI SYLLABLE HLYRX
+A1B6 YI SYLLABLE HLYR
+A1B7 YI SYLLABLE LIT
+A1B8 YI SYLLABLE LIX
+A1B9 YI SYLLABLE LI
+A1BA YI SYLLABLE LIP
+A1BB YI SYLLABLE LIET
+A1BC YI SYLLABLE LIEX
+A1BD YI SYLLABLE LIE
+A1BE YI SYLLABLE LIEP
+A1BF YI SYLLABLE LAT
+A1C0 YI SYLLABLE LAX
+A1C1 YI SYLLABLE LA
+A1C2 YI SYLLABLE LAP
+A1C3 YI SYLLABLE LUOT
+A1C4 YI SYLLABLE LUOX
+A1C5 YI SYLLABLE LUO
+A1C6 YI SYLLABLE LUOP
+A1C7 YI SYLLABLE LOT
+A1C8 YI SYLLABLE LOX
+A1C9 YI SYLLABLE LO
+A1CA YI SYLLABLE LOP
+A1CB YI SYLLABLE LEX
+A1CC YI SYLLABLE LE
+A1CD YI SYLLABLE LEP
+A1CE YI SYLLABLE LUT
+A1CF YI SYLLABLE LUX
+A1D0 YI SYLLABLE LU
+A1D1 YI SYLLABLE LUP
+A1D2 YI SYLLABLE LURX
+A1D3 YI SYLLABLE LUR
+A1D4 YI SYLLABLE LYT
+A1D5 YI SYLLABLE LYX
+A1D6 YI SYLLABLE LY
+A1D7 YI SYLLABLE LYP
+A1D8 YI SYLLABLE LYRX
+A1D9 YI SYLLABLE LYR
+A1DA YI SYLLABLE GIT
+A1DB YI SYLLABLE GIX
+A1DC YI SYLLABLE GI
+A1DD YI SYLLABLE GIP
+A1DE YI SYLLABLE GIET
+A1DF YI SYLLABLE GIEX
+A1E0 YI SYLLABLE GIE
+A1E1 YI SYLLABLE GIEP
+A1E2 YI SYLLABLE GAT
+A1E3 YI SYLLABLE GAX
+A1E4 YI SYLLABLE GA
+A1E5 YI SYLLABLE GAP
+A1E6 YI SYLLABLE GUOT
+A1E7 YI SYLLABLE GUOX
+A1E8 YI SYLLABLE GUO
+A1E9 YI SYLLABLE GUOP
+A1EA YI SYLLABLE GOT
+A1EB YI SYLLABLE GOX
+A1EC YI SYLLABLE GO
+A1ED YI SYLLABLE GOP
+A1EE YI SYLLABLE GET
+A1EF YI SYLLABLE GEX
+A1F0 YI SYLLABLE GE
+A1F1 YI SYLLABLE GEP
+A1F2 YI SYLLABLE GUT
+A1F3 YI SYLLABLE GUX
+A1F4 YI SYLLABLE GU
+A1F5 YI SYLLABLE GUP
+A1F6 YI SYLLABLE GURX
+A1F7 YI SYLLABLE GUR
+A1F8 YI SYLLABLE KIT
+A1F9 YI SYLLABLE KIX
+A1FA YI SYLLABLE KI
+A1FB YI SYLLABLE KIP
+A1FC YI SYLLABLE KIEX
+A1FD YI SYLLABLE KIE
+A1FE YI SYLLABLE KIEP
+A1FF YI SYLLABLE KAT
+A200 YI SYLLABLE KAX
+A201 YI SYLLABLE KA
+A202 YI SYLLABLE KAP
+A203 YI SYLLABLE KUOX
+A204 YI SYLLABLE KUO
+A205 YI SYLLABLE KUOP
+A206 YI SYLLABLE KOT
+A207 YI SYLLABLE KOX
+A208 YI SYLLABLE KO
+A209 YI SYLLABLE KOP
+A20A YI SYLLABLE KET
+A20B YI SYLLABLE KEX
+A20C YI SYLLABLE KE
+A20D YI SYLLABLE KEP
+A20E YI SYLLABLE KUT
+A20F YI SYLLABLE KUX
+A210 YI SYLLABLE KU
+A211 YI SYLLABLE KUP
+A212 YI SYLLABLE KURX
+A213 YI SYLLABLE KUR
+A214 YI SYLLABLE GGIT
+A215 YI SYLLABLE GGIX
+A216 YI SYLLABLE GGI
+A217 YI SYLLABLE GGIEX
+A218 YI SYLLABLE GGIE
+A219 YI SYLLABLE GGIEP
+A21A YI SYLLABLE GGAT
+A21B YI SYLLABLE GGAX
+A21C YI SYLLABLE GGA
+A21D YI SYLLABLE GGAP
+A21E YI SYLLABLE GGUOT
+A21F YI SYLLABLE GGUOX
+A220 YI SYLLABLE GGUO
+A221 YI SYLLABLE GGUOP
+A222 YI SYLLABLE GGOT
+A223 YI SYLLABLE GGOX
+A224 YI SYLLABLE GGO
+A225 YI SYLLABLE GGOP
+A226 YI SYLLABLE GGET
+A227 YI SYLLABLE GGEX
+A228 YI SYLLABLE GGE
+A229 YI SYLLABLE GGEP
+A22A YI SYLLABLE GGUT
+A22B YI SYLLABLE GGUX
+A22C YI SYLLABLE GGU
+A22D YI SYLLABLE GGUP
+A22E YI SYLLABLE GGURX
+A22F YI SYLLABLE GGUR
+A230 YI SYLLABLE MGIEX
+A231 YI SYLLABLE MGIE
+A232 YI SYLLABLE MGAT
+A233 YI SYLLABLE MGAX
+A234 YI SYLLABLE MGA
+A235 YI SYLLABLE MGAP
+A236 YI SYLLABLE MGUOX
+A237 YI SYLLABLE MGUO
+A238 YI SYLLABLE MGUOP
+A239 YI SYLLABLE MGOT
+A23A YI SYLLABLE MGOX
+A23B YI SYLLABLE MGO
+A23C YI SYLLABLE MGOP
+A23D YI SYLLABLE MGEX
+A23E YI SYLLABLE MGE
+A23F YI SYLLABLE MGEP
+A240 YI SYLLABLE MGUT
+A241 YI SYLLABLE MGUX
+A242 YI SYLLABLE MGU
+A243 YI SYLLABLE MGUP
+A244 YI SYLLABLE MGURX
+A245 YI SYLLABLE MGUR
+A246 YI SYLLABLE HXIT
+A247 YI SYLLABLE HXIX
+A248 YI SYLLABLE HXI
+A249 YI SYLLABLE HXIP
+A24A YI SYLLABLE HXIET
+A24B YI SYLLABLE HXIEX
+A24C YI SYLLABLE HXIE
+A24D YI SYLLABLE HXIEP
+A24E YI SYLLABLE HXAT
+A24F YI SYLLABLE HXAX
+A250 YI SYLLABLE HXA
+A251 YI SYLLABLE HXAP
+A252 YI SYLLABLE HXUOT
+A253 YI SYLLABLE HXUOX
+A254 YI SYLLABLE HXUO
+A255 YI SYLLABLE HXUOP
+A256 YI SYLLABLE HXOT
+A257 YI SYLLABLE HXOX
+A258 YI SYLLABLE HXO
+A259 YI SYLLABLE HXOP
+A25A YI SYLLABLE HXEX
+A25B YI SYLLABLE HXE
+A25C YI SYLLABLE HXEP
+A25D YI SYLLABLE NGIEX
+A25E YI SYLLABLE NGIE
+A25F YI SYLLABLE NGIEP
+A260 YI SYLLABLE NGAT
+A261 YI SYLLABLE NGAX
+A262 YI SYLLABLE NGA
+A263 YI SYLLABLE NGAP
+A264 YI SYLLABLE NGUOT
+A265 YI SYLLABLE NGUOX
+A266 YI SYLLABLE NGUO
+A267 YI SYLLABLE NGOT
+A268 YI SYLLABLE NGOX
+A269 YI SYLLABLE NGO
+A26A YI SYLLABLE NGOP
+A26B YI SYLLABLE NGEX
+A26C YI SYLLABLE NGE
+A26D YI SYLLABLE NGEP
+A26E YI SYLLABLE HIT
+A26F YI SYLLABLE HIEX
+A270 YI SYLLABLE HIE
+A271 YI SYLLABLE HAT
+A272 YI SYLLABLE HAX
+A273 YI SYLLABLE HA
+A274 YI SYLLABLE HAP
+A275 YI SYLLABLE HUOT
+A276 YI SYLLABLE HUOX
+A277 YI SYLLABLE HUO
+A278 YI SYLLABLE HUOP
+A279 YI SYLLABLE HOT
+A27A YI SYLLABLE HOX
+A27B YI SYLLABLE HO
+A27C YI SYLLABLE HOP
+A27D YI SYLLABLE HEX
+A27E YI SYLLABLE HE
+A27F YI SYLLABLE HEP
+A280 YI SYLLABLE WAT
+A281 YI SYLLABLE WAX
+A282 YI SYLLABLE WA
+A283 YI SYLLABLE WAP
+A284 YI SYLLABLE WUOX
+A285 YI SYLLABLE WUO
+A286 YI SYLLABLE WUOP
+A287 YI SYLLABLE WOX
+A288 YI SYLLABLE WO
+A289 YI SYLLABLE WOP
+A28A YI SYLLABLE WEX
+A28B YI SYLLABLE WE
+A28C YI SYLLABLE WEP
+A28D YI SYLLABLE ZIT
+A28E YI SYLLABLE ZIX
+A28F YI SYLLABLE ZI
+A290 YI SYLLABLE ZIP
+A291 YI SYLLABLE ZIEX
+A292 YI SYLLABLE ZIE
+A293 YI SYLLABLE ZIEP
+A294 YI SYLLABLE ZAT
+A295 YI SYLLABLE ZAX
+A296 YI SYLLABLE ZA
+A297 YI SYLLABLE ZAP
+A298 YI SYLLABLE ZUOX
+A299 YI SYLLABLE ZUO
+A29A YI SYLLABLE ZUOP
+A29B YI SYLLABLE ZOT
+A29C YI SYLLABLE ZOX
+A29D YI SYLLABLE ZO
+A29E YI SYLLABLE ZOP
+A29F YI SYLLABLE ZEX
+A2A0 YI SYLLABLE ZE
+A2A1 YI SYLLABLE ZEP
+A2A2 YI SYLLABLE ZUT
+A2A3 YI SYLLABLE ZUX
+A2A4 YI SYLLABLE ZU
+A2A5 YI SYLLABLE ZUP
+A2A6 YI SYLLABLE ZURX
+A2A7 YI SYLLABLE ZUR
+A2A8 YI SYLLABLE ZYT
+A2A9 YI SYLLABLE ZYX
+A2AA YI SYLLABLE ZY
+A2AB YI SYLLABLE ZYP
+A2AC YI SYLLABLE ZYRX
+A2AD YI SYLLABLE ZYR
+A2AE YI SYLLABLE CIT
+A2AF YI SYLLABLE CIX
+A2B0 YI SYLLABLE CI
+A2B1 YI SYLLABLE CIP
+A2B2 YI SYLLABLE CIET
+A2B3 YI SYLLABLE CIEX
+A2B4 YI SYLLABLE CIE
+A2B5 YI SYLLABLE CIEP
+A2B6 YI SYLLABLE CAT
+A2B7 YI SYLLABLE CAX
+A2B8 YI SYLLABLE CA
+A2B9 YI SYLLABLE CAP
+A2BA YI SYLLABLE CUOX
+A2BB YI SYLLABLE CUO
+A2BC YI SYLLABLE CUOP
+A2BD YI SYLLABLE COT
+A2BE YI SYLLABLE COX
+A2BF YI SYLLABLE CO
+A2C0 YI SYLLABLE COP
+A2C1 YI SYLLABLE CEX
+A2C2 YI SYLLABLE CE
+A2C3 YI SYLLABLE CEP
+A2C4 YI SYLLABLE CUT
+A2C5 YI SYLLABLE CUX
+A2C6 YI SYLLABLE CU
+A2C7 YI SYLLABLE CUP
+A2C8 YI SYLLABLE CURX
+A2C9 YI SYLLABLE CUR
+A2CA YI SYLLABLE CYT
+A2CB YI SYLLABLE CYX
+A2CC YI SYLLABLE CY
+A2CD YI SYLLABLE CYP
+A2CE YI SYLLABLE CYRX
+A2CF YI SYLLABLE CYR
+A2D0 YI SYLLABLE ZZIT
+A2D1 YI SYLLABLE ZZIX
+A2D2 YI SYLLABLE ZZI
+A2D3 YI SYLLABLE ZZIP
+A2D4 YI SYLLABLE ZZIET
+A2D5 YI SYLLABLE ZZIEX
+A2D6 YI SYLLABLE ZZIE
+A2D7 YI SYLLABLE ZZIEP
+A2D8 YI SYLLABLE ZZAT
+A2D9 YI SYLLABLE ZZAX
+A2DA YI SYLLABLE ZZA
+A2DB YI SYLLABLE ZZAP
+A2DC YI SYLLABLE ZZOX
+A2DD YI SYLLABLE ZZO
+A2DE YI SYLLABLE ZZOP
+A2DF YI SYLLABLE ZZEX
+A2E0 YI SYLLABLE ZZE
+A2E1 YI SYLLABLE ZZEP
+A2E2 YI SYLLABLE ZZUX
+A2E3 YI SYLLABLE ZZU
+A2E4 YI SYLLABLE ZZUP
+A2E5 YI SYLLABLE ZZURX
+A2E6 YI SYLLABLE ZZUR
+A2E7 YI SYLLABLE ZZYT
+A2E8 YI SYLLABLE ZZYX
+A2E9 YI SYLLABLE ZZY
+A2EA YI SYLLABLE ZZYP
+A2EB YI SYLLABLE ZZYRX
+A2EC YI SYLLABLE ZZYR
+A2ED YI SYLLABLE NZIT
+A2EE YI SYLLABLE NZIX
+A2EF YI SYLLABLE NZI
+A2F0 YI SYLLABLE NZIP
+A2F1 YI SYLLABLE NZIEX
+A2F2 YI SYLLABLE NZIE
+A2F3 YI SYLLABLE NZIEP
+A2F4 YI SYLLABLE NZAT
+A2F5 YI SYLLABLE NZAX
+A2F6 YI SYLLABLE NZA
+A2F7 YI SYLLABLE NZAP
+A2F8 YI SYLLABLE NZUOX
+A2F9 YI SYLLABLE NZUO
+A2FA YI SYLLABLE NZOX
+A2FB YI SYLLABLE NZOP
+A2FC YI SYLLABLE NZEX
+A2FD YI SYLLABLE NZE
+A2FE YI SYLLABLE NZUX
+A2FF YI SYLLABLE NZU
+A300 YI SYLLABLE NZUP
+A301 YI SYLLABLE NZURX
+A302 YI SYLLABLE NZUR
+A303 YI SYLLABLE NZYT
+A304 YI SYLLABLE NZYX
+A305 YI SYLLABLE NZY
+A306 YI SYLLABLE NZYP
+A307 YI SYLLABLE NZYRX
+A308 YI SYLLABLE NZYR
+A309 YI SYLLABLE SIT
+A30A YI SYLLABLE SIX
+A30B YI SYLLABLE SI
+A30C YI SYLLABLE SIP
+A30D YI SYLLABLE SIEX
+A30E YI SYLLABLE SIE
+A30F YI SYLLABLE SIEP
+A310 YI SYLLABLE SAT
+A311 YI SYLLABLE SAX
+A312 YI SYLLABLE SA
+A313 YI SYLLABLE SAP
+A314 YI SYLLABLE SUOX
+A315 YI SYLLABLE SUO
+A316 YI SYLLABLE SUOP
+A317 YI SYLLABLE SOT
+A318 YI SYLLABLE SOX
+A319 YI SYLLABLE SO
+A31A YI SYLLABLE SOP
+A31B YI SYLLABLE SEX
+A31C YI SYLLABLE SE
+A31D YI SYLLABLE SEP
+A31E YI SYLLABLE SUT
+A31F YI SYLLABLE SUX
+A320 YI SYLLABLE SU
+A321 YI SYLLABLE SUP
+A322 YI SYLLABLE SURX
+A323 YI SYLLABLE SUR
+A324 YI SYLLABLE SYT
+A325 YI SYLLABLE SYX
+A326 YI SYLLABLE SY
+A327 YI SYLLABLE SYP
+A328 YI SYLLABLE SYRX
+A329 YI SYLLABLE SYR
+A32A YI SYLLABLE SSIT
+A32B YI SYLLABLE SSIX
+A32C YI SYLLABLE SSI
+A32D YI SYLLABLE SSIP
+A32E YI SYLLABLE SSIEX
+A32F YI SYLLABLE SSIE
+A330 YI SYLLABLE SSIEP
+A331 YI SYLLABLE SSAT
+A332 YI SYLLABLE SSAX
+A333 YI SYLLABLE SSA
+A334 YI SYLLABLE SSAP
+A335 YI SYLLABLE SSOT
+A336 YI SYLLABLE SSOX
+A337 YI SYLLABLE SSO
+A338 YI SYLLABLE SSOP
+A339 YI SYLLABLE SSEX
+A33A YI SYLLABLE SSE
+A33B YI SYLLABLE SSEP
+A33C YI SYLLABLE SSUT
+A33D YI SYLLABLE SSUX
+A33E YI SYLLABLE SSU
+A33F YI SYLLABLE SSUP
+A340 YI SYLLABLE SSYT
+A341 YI SYLLABLE SSYX
+A342 YI SYLLABLE SSY
+A343 YI SYLLABLE SSYP
+A344 YI SYLLABLE SSYRX
+A345 YI SYLLABLE SSYR
+A346 YI SYLLABLE ZHAT
+A347 YI SYLLABLE ZHAX
+A348 YI SYLLABLE ZHA
+A349 YI SYLLABLE ZHAP
+A34A YI SYLLABLE ZHUOX
+A34B YI SYLLABLE ZHUO
+A34C YI SYLLABLE ZHUOP
+A34D YI SYLLABLE ZHOT
+A34E YI SYLLABLE ZHOX
+A34F YI SYLLABLE ZHO
+A350 YI SYLLABLE ZHOP
+A351 YI SYLLABLE ZHET
+A352 YI SYLLABLE ZHEX
+A353 YI SYLLABLE ZHE
+A354 YI SYLLABLE ZHEP
+A355 YI SYLLABLE ZHUT
+A356 YI SYLLABLE ZHUX
+A357 YI SYLLABLE ZHU
+A358 YI SYLLABLE ZHUP
+A359 YI SYLLABLE ZHURX
+A35A YI SYLLABLE ZHUR
+A35B YI SYLLABLE ZHYT
+A35C YI SYLLABLE ZHYX
+A35D YI SYLLABLE ZHY
+A35E YI SYLLABLE ZHYP
+A35F YI SYLLABLE ZHYRX
+A360 YI SYLLABLE ZHYR
+A361 YI SYLLABLE CHAT
+A362 YI SYLLABLE CHAX
+A363 YI SYLLABLE CHA
+A364 YI SYLLABLE CHAP
+A365 YI SYLLABLE CHUOT
+A366 YI SYLLABLE CHUOX
+A367 YI SYLLABLE CHUO
+A368 YI SYLLABLE CHUOP
+A369 YI SYLLABLE CHOT
+A36A YI SYLLABLE CHOX
+A36B YI SYLLABLE CHO
+A36C YI SYLLABLE CHOP
+A36D YI SYLLABLE CHET
+A36E YI SYLLABLE CHEX
+A36F YI SYLLABLE CHE
+A370 YI SYLLABLE CHEP
+A371 YI SYLLABLE CHUX
+A372 YI SYLLABLE CHU
+A373 YI SYLLABLE CHUP
+A374 YI SYLLABLE CHURX
+A375 YI SYLLABLE CHUR
+A376 YI SYLLABLE CHYT
+A377 YI SYLLABLE CHYX
+A378 YI SYLLABLE CHY
+A379 YI SYLLABLE CHYP
+A37A YI SYLLABLE CHYRX
+A37B YI SYLLABLE CHYR
+A37C YI SYLLABLE RRAX
+A37D YI SYLLABLE RRA
+A37E YI SYLLABLE RRUOX
+A37F YI SYLLABLE RRUO
+A380 YI SYLLABLE RROT
+A381 YI SYLLABLE RROX
+A382 YI SYLLABLE RRO
+A383 YI SYLLABLE RROP
+A384 YI SYLLABLE RRET
+A385 YI SYLLABLE RREX
+A386 YI SYLLABLE RRE
+A387 YI SYLLABLE RREP
+A388 YI SYLLABLE RRUT
+A389 YI SYLLABLE RRUX
+A38A YI SYLLABLE RRU
+A38B YI SYLLABLE RRUP
+A38C YI SYLLABLE RRURX
+A38D YI SYLLABLE RRUR
+A38E YI SYLLABLE RRYT
+A38F YI SYLLABLE RRYX
+A390 YI SYLLABLE RRY
+A391 YI SYLLABLE RRYP
+A392 YI SYLLABLE RRYRX
+A393 YI SYLLABLE RRYR
+A394 YI SYLLABLE NRAT
+A395 YI SYLLABLE NRAX
+A396 YI SYLLABLE NRA
+A397 YI SYLLABLE NRAP
+A398 YI SYLLABLE NROX
+A399 YI SYLLABLE NRO
+A39A YI SYLLABLE NROP
+A39B YI SYLLABLE NRET
+A39C YI SYLLABLE NREX
+A39D YI SYLLABLE NRE
+A39E YI SYLLABLE NREP
+A39F YI SYLLABLE NRUT
+A3A0 YI SYLLABLE NRUX
+A3A1 YI SYLLABLE NRU
+A3A2 YI SYLLABLE NRUP
+A3A3 YI SYLLABLE NRURX
+A3A4 YI SYLLABLE NRUR
+A3A5 YI SYLLABLE NRYT
+A3A6 YI SYLLABLE NRYX
+A3A7 YI SYLLABLE NRY
+A3A8 YI SYLLABLE NRYP
+A3A9 YI SYLLABLE NRYRX
+A3AA YI SYLLABLE NRYR
+A3AB YI SYLLABLE SHAT
+A3AC YI SYLLABLE SHAX
+A3AD YI SYLLABLE SHA
+A3AE YI SYLLABLE SHAP
+A3AF YI SYLLABLE SHUOX
+A3B0 YI SYLLABLE SHUO
+A3B1 YI SYLLABLE SHUOP
+A3B2 YI SYLLABLE SHOT
+A3B3 YI SYLLABLE SHOX
+A3B4 YI SYLLABLE SHO
+A3B5 YI SYLLABLE SHOP
+A3B6 YI SYLLABLE SHET
+A3B7 YI SYLLABLE SHEX
+A3B8 YI SYLLABLE SHE
+A3B9 YI SYLLABLE SHEP
+A3BA YI SYLLABLE SHUT
+A3BB YI SYLLABLE SHUX
+A3BC YI SYLLABLE SHU
+A3BD YI SYLLABLE SHUP
+A3BE YI SYLLABLE SHURX
+A3BF YI SYLLABLE SHUR
+A3C0 YI SYLLABLE SHYT
+A3C1 YI SYLLABLE SHYX
+A3C2 YI SYLLABLE SHY
+A3C3 YI SYLLABLE SHYP
+A3C4 YI SYLLABLE SHYRX
+A3C5 YI SYLLABLE SHYR
+A3C6 YI SYLLABLE RAT
+A3C7 YI SYLLABLE RAX
+A3C8 YI SYLLABLE RA
+A3C9 YI SYLLABLE RAP
+A3CA YI SYLLABLE RUOX
+A3CB YI SYLLABLE RUO
+A3CC YI SYLLABLE RUOP
+A3CD YI SYLLABLE ROT
+A3CE YI SYLLABLE ROX
+A3CF YI SYLLABLE RO
+A3D0 YI SYLLABLE ROP
+A3D1 YI SYLLABLE REX
+A3D2 YI SYLLABLE RE
+A3D3 YI SYLLABLE REP
+A3D4 YI SYLLABLE RUT
+A3D5 YI SYLLABLE RUX
+A3D6 YI SYLLABLE RU
+A3D7 YI SYLLABLE RUP
+A3D8 YI SYLLABLE RURX
+A3D9 YI SYLLABLE RUR
+A3DA YI SYLLABLE RYT
+A3DB YI SYLLABLE RYX
+A3DC YI SYLLABLE RY
+A3DD YI SYLLABLE RYP
+A3DE YI SYLLABLE RYRX
+A3DF YI SYLLABLE RYR
+A3E0 YI SYLLABLE JIT
+A3E1 YI SYLLABLE JIX
+A3E2 YI SYLLABLE JI
+A3E3 YI SYLLABLE JIP
+A3E4 YI SYLLABLE JIET
+A3E5 YI SYLLABLE JIEX
+A3E6 YI SYLLABLE JIE
+A3E7 YI SYLLABLE JIEP
+A3E8 YI SYLLABLE JUOT
+A3E9 YI SYLLABLE JUOX
+A3EA YI SYLLABLE JUO
+A3EB YI SYLLABLE JUOP
+A3EC YI SYLLABLE JOT
+A3ED YI SYLLABLE JOX
+A3EE YI SYLLABLE JO
+A3EF YI SYLLABLE JOP
+A3F0 YI SYLLABLE JUT
+A3F1 YI SYLLABLE JUX
+A3F2 YI SYLLABLE JU
+A3F3 YI SYLLABLE JUP
+A3F4 YI SYLLABLE JURX
+A3F5 YI SYLLABLE JUR
+A3F6 YI SYLLABLE JYT
+A3F7 YI SYLLABLE JYX
+A3F8 YI SYLLABLE JY
+A3F9 YI SYLLABLE JYP
+A3FA YI SYLLABLE JYRX
+A3FB YI SYLLABLE JYR
+A3FC YI SYLLABLE QIT
+A3FD YI SYLLABLE QIX
+A3FE YI SYLLABLE QI
+A3FF YI SYLLABLE QIP
+A400 YI SYLLABLE QIET
+A401 YI SYLLABLE QIEX
+A402 YI SYLLABLE QIE
+A403 YI SYLLABLE QIEP
+A404 YI SYLLABLE QUOT
+A405 YI SYLLABLE QUOX
+A406 YI SYLLABLE QUO
+A407 YI SYLLABLE QUOP
+A408 YI SYLLABLE QOT
+A409 YI SYLLABLE QOX
+A40A YI SYLLABLE QO
+A40B YI SYLLABLE QOP
+A40C YI SYLLABLE QUT
+A40D YI SYLLABLE QUX
+A40E YI SYLLABLE QU
+A40F YI SYLLABLE QUP
+A410 YI SYLLABLE QURX
+A411 YI SYLLABLE QUR
+A412 YI SYLLABLE QYT
+A413 YI SYLLABLE QYX
+A414 YI SYLLABLE QY
+A415 YI SYLLABLE QYP
+A416 YI SYLLABLE QYRX
+A417 YI SYLLABLE QYR
+A418 YI SYLLABLE JJIT
+A419 YI SYLLABLE JJIX
+A41A YI SYLLABLE JJI
+A41B YI SYLLABLE JJIP
+A41C YI SYLLABLE JJIET
+A41D YI SYLLABLE JJIEX
+A41E YI SYLLABLE JJIE
+A41F YI SYLLABLE JJIEP
+A420 YI SYLLABLE JJUOX
+A421 YI SYLLABLE JJUO
+A422 YI SYLLABLE JJUOP
+A423 YI SYLLABLE JJOT
+A424 YI SYLLABLE JJOX
+A425 YI SYLLABLE JJO
+A426 YI SYLLABLE JJOP
+A427 YI SYLLABLE JJUT
+A428 YI SYLLABLE JJUX
+A429 YI SYLLABLE JJU
+A42A YI SYLLABLE JJUP
+A42B YI SYLLABLE JJURX
+A42C YI SYLLABLE JJUR
+A42D YI SYLLABLE JJYT
+A42E YI SYLLABLE JJYX
+A42F YI SYLLABLE JJY
+A430 YI SYLLABLE JJYP
+A431 YI SYLLABLE NJIT
+A432 YI SYLLABLE NJIX
+A433 YI SYLLABLE NJI
+A434 YI SYLLABLE NJIP
+A435 YI SYLLABLE NJIET
+A436 YI SYLLABLE NJIEX
+A437 YI SYLLABLE NJIE
+A438 YI SYLLABLE NJIEP
+A439 YI SYLLABLE NJUOX
+A43A YI SYLLABLE NJUO
+A43B YI SYLLABLE NJOT
+A43C YI SYLLABLE NJOX
+A43D YI SYLLABLE NJO
+A43E YI SYLLABLE NJOP
+A43F YI SYLLABLE NJUX
+A440 YI SYLLABLE NJU
+A441 YI SYLLABLE NJUP
+A442 YI SYLLABLE NJURX
+A443 YI SYLLABLE NJUR
+A444 YI SYLLABLE NJYT
+A445 YI SYLLABLE NJYX
+A446 YI SYLLABLE NJY
+A447 YI SYLLABLE NJYP
+A448 YI SYLLABLE NJYRX
+A449 YI SYLLABLE NJYR
+A44A YI SYLLABLE NYIT
+A44B YI SYLLABLE NYIX
+A44C YI SYLLABLE NYI
+A44D YI SYLLABLE NYIP
+A44E YI SYLLABLE NYIET
+A44F YI SYLLABLE NYIEX
+A450 YI SYLLABLE NYIE
+A451 YI SYLLABLE NYIEP
+A452 YI SYLLABLE NYUOX
+A453 YI SYLLABLE NYUO
+A454 YI SYLLABLE NYUOP
+A455 YI SYLLABLE NYOT
+A456 YI SYLLABLE NYOX
+A457 YI SYLLABLE NYO
+A458 YI SYLLABLE NYOP
+A459 YI SYLLABLE NYUT
+A45A YI SYLLABLE NYUX
+A45B YI SYLLABLE NYU
+A45C YI SYLLABLE NYUP
+A45D YI SYLLABLE XIT
+A45E YI SYLLABLE XIX
+A45F YI SYLLABLE XI
+A460 YI SYLLABLE XIP
+A461 YI SYLLABLE XIET
+A462 YI SYLLABLE XIEX
+A463 YI SYLLABLE XIE
+A464 YI SYLLABLE XIEP
+A465 YI SYLLABLE XUOX
+A466 YI SYLLABLE XUO
+A467 YI SYLLABLE XOT
+A468 YI SYLLABLE XOX
+A469 YI SYLLABLE XO
+A46A YI SYLLABLE XOP
+A46B YI SYLLABLE XYT
+A46C YI SYLLABLE XYX
+A46D YI SYLLABLE XY
+A46E YI SYLLABLE XYP
+A46F YI SYLLABLE XYRX
+A470 YI SYLLABLE XYR
+A471 YI SYLLABLE YIT
+A472 YI SYLLABLE YIX
+A473 YI SYLLABLE YI
+A474 YI SYLLABLE YIP
+A475 YI SYLLABLE YIET
+A476 YI SYLLABLE YIEX
+A477 YI SYLLABLE YIE
+A478 YI SYLLABLE YIEP
+A479 YI SYLLABLE YUOT
+A47A YI SYLLABLE YUOX
+A47B YI SYLLABLE YUO
+A47C YI SYLLABLE YUOP
+A47D YI SYLLABLE YOT
+A47E YI SYLLABLE YOX
+A47F YI SYLLABLE YO
+A480 YI SYLLABLE YOP
+A481 YI SYLLABLE YUT
+A482 YI SYLLABLE YUX
+A483 YI SYLLABLE YU
+A484 YI SYLLABLE YUP
+A485 YI SYLLABLE YURX
+A486 YI SYLLABLE YUR
+A487 YI SYLLABLE YYT
+A488 YI SYLLABLE YYX
+A489 YI SYLLABLE YY
+A48A YI SYLLABLE YYP
+A48B YI SYLLABLE YYRX
+A48C YI SYLLABLE YYR
+@@ A490 Yi Radicals A4CF
+@ Yi radicals
+A490 YI RADICAL QOT
+A491 YI RADICAL LI
+A492 YI RADICAL KIT
+A493 YI RADICAL NYIP
+A494 YI RADICAL CYP
+A495 YI RADICAL SSI
+A496 YI RADICAL GGOP
+A497 YI RADICAL GEP
+A498 YI RADICAL MI
+A499 YI RADICAL HXIT
+A49A YI RADICAL LYR
+A49B YI RADICAL BBUT
+A49C YI RADICAL MOP
+A49D YI RADICAL YO
+A49E YI RADICAL PUT
+A49F YI RADICAL HXUO
+A4A0 YI RADICAL TAT
+A4A1 YI RADICAL GA
+A4A4 YI RADICAL DDUR
+A4A5 YI RADICAL BUR
+A4A6 YI RADICAL GGUO
+A4A7 YI RADICAL NYOP
+A4A8 YI RADICAL TU
+A4A9 YI RADICAL OP
+A4AA YI RADICAL JJUT
+A4AB YI RADICAL ZOT
+A4AC YI RADICAL PYT
+A4AD YI RADICAL HMO
+A4AE YI RADICAL YIT
+A4AF YI RADICAL VUR
+A4B0 YI RADICAL SHY
+A4B1 YI RADICAL VEP
+A4B2 YI RADICAL ZA
+A4B3 YI RADICAL JO
+A4B5 YI RADICAL JJY
+A4B6 YI RADICAL GOT
+A4B7 YI RADICAL JJIE
+A4B8 YI RADICAL WO
+A4B9 YI RADICAL DU
+A4BA YI RADICAL SHUR
+A4BB YI RADICAL LIE
+A4BC YI RADICAL CY
+A4BD YI RADICAL CUOP
+A4BE YI RADICAL CIP
+A4BF YI RADICAL HXOP
+A4C0 YI RADICAL SHAT
+A4C2 YI RADICAL SHOP
+A4C3 YI RADICAL CHE
+A4C4 YI RADICAL ZZIET
+A4C6 YI RADICAL KE
@@ AC00 Hangul Syllables D7A3
-@@ D7A4 Unassigned D7FF
@@ D800 High Surrogates DB7F
-@@ DB80 Private Use High Surrogates DBFF
+@@ DB80 High Private Use Surrogates DBFF
@@ DC00 Low Surrogates DFFF
@@ E000 Private Use Area F8FF
@@ F900 CJK Compatibility Ideographs FAFF
+@ Pronunciation variants from KS C 5601-1987
+F900 CJK COMPATIBILITY IDEOGRAPH-F900
+ : 8C48
+F901 CJK COMPATIBILITY IDEOGRAPH-F901
+ : 66F4
+F902 CJK COMPATIBILITY IDEOGRAPH-F902
+ : 8ECA
+F903 CJK COMPATIBILITY IDEOGRAPH-F903
+ : 8CC8
+F904 CJK COMPATIBILITY IDEOGRAPH-F904
+ : 6ED1
+F905 CJK COMPATIBILITY IDEOGRAPH-F905
+ : 4E32
+F906 CJK COMPATIBILITY IDEOGRAPH-F906
+ : 53E5
+F907 CJK COMPATIBILITY IDEOGRAPH-F907
+ : 9F9C
+F908 CJK COMPATIBILITY IDEOGRAPH-F908
+ : 9F9C
+F909 CJK COMPATIBILITY IDEOGRAPH-F909
+ : 5951
+F90A CJK COMPATIBILITY IDEOGRAPH-F90A
+ : 91D1
+F90B CJK COMPATIBILITY IDEOGRAPH-F90B
+ : 5587
+F90C CJK COMPATIBILITY IDEOGRAPH-F90C
+ : 5948
+F90D CJK COMPATIBILITY IDEOGRAPH-F90D
+ : 61F6
+F90E CJK COMPATIBILITY IDEOGRAPH-F90E
+ : 7669
+F90F CJK COMPATIBILITY IDEOGRAPH-F90F
+ : 7F85
+F910 CJK COMPATIBILITY IDEOGRAPH-F910
+ : 863F
+F911 CJK COMPATIBILITY IDEOGRAPH-F911
+ : 87BA
+F912 CJK COMPATIBILITY IDEOGRAPH-F912
+ : 88F8
+F913 CJK COMPATIBILITY IDEOGRAPH-F913
+ : 908F
+F914 CJK COMPATIBILITY IDEOGRAPH-F914
+ : 6A02
+F915 CJK COMPATIBILITY IDEOGRAPH-F915
+ : 6D1B
+F916 CJK COMPATIBILITY IDEOGRAPH-F916
+ : 70D9
+F917 CJK COMPATIBILITY IDEOGRAPH-F917
+ : 73DE
+F918 CJK COMPATIBILITY IDEOGRAPH-F918
+ : 843D
+F919 CJK COMPATIBILITY IDEOGRAPH-F919
+ : 916A
+F91A CJK COMPATIBILITY IDEOGRAPH-F91A
+ : 99F1
+F91B CJK COMPATIBILITY IDEOGRAPH-F91B
+ : 4E82
+F91C CJK COMPATIBILITY IDEOGRAPH-F91C
+ : 5375
+F91D CJK COMPATIBILITY IDEOGRAPH-F91D
+ : 6B04
+F91E CJK COMPATIBILITY IDEOGRAPH-F91E
+ : 721B
+F91F CJK COMPATIBILITY IDEOGRAPH-F91F
+ : 862D
+F920 CJK COMPATIBILITY IDEOGRAPH-F920
+ : 9E1E
+F921 CJK COMPATIBILITY IDEOGRAPH-F921
+ : 5D50
+F922 CJK COMPATIBILITY IDEOGRAPH-F922
+ : 6FEB
+F923 CJK COMPATIBILITY IDEOGRAPH-F923
+ : 85CD
+F924 CJK COMPATIBILITY IDEOGRAPH-F924
+ : 8964
+F925 CJK COMPATIBILITY IDEOGRAPH-F925
+ : 62C9
+F926 CJK COMPATIBILITY IDEOGRAPH-F926
+ : 81D8
+F927 CJK COMPATIBILITY IDEOGRAPH-F927
+ : 881F
+F928 CJK COMPATIBILITY IDEOGRAPH-F928
+ : 5ECA
+F929 CJK COMPATIBILITY IDEOGRAPH-F929
+ : 6717
+F92A CJK COMPATIBILITY IDEOGRAPH-F92A
+ : 6D6A
+F92B CJK COMPATIBILITY IDEOGRAPH-F92B
+ : 72FC
+F92C CJK COMPATIBILITY IDEOGRAPH-F92C
+ : 90CE
+F92D CJK COMPATIBILITY IDEOGRAPH-F92D
+ : 4F86
+F92E CJK COMPATIBILITY IDEOGRAPH-F92E
+ : 51B7
+F92F CJK COMPATIBILITY IDEOGRAPH-F92F
+ : 52DE
+F930 CJK COMPATIBILITY IDEOGRAPH-F930
+ : 64C4
+F931 CJK COMPATIBILITY IDEOGRAPH-F931
+ : 6AD3
+F932 CJK COMPATIBILITY IDEOGRAPH-F932
+ : 7210
+F933 CJK COMPATIBILITY IDEOGRAPH-F933
+ : 76E7
+F934 CJK COMPATIBILITY IDEOGRAPH-F934
+ : 8001
+F935 CJK COMPATIBILITY IDEOGRAPH-F935
+ : 8606
+F936 CJK COMPATIBILITY IDEOGRAPH-F936
+ : 865C
+F937 CJK COMPATIBILITY IDEOGRAPH-F937
+ : 8DEF
+F938 CJK COMPATIBILITY IDEOGRAPH-F938
+ : 9732
+F939 CJK COMPATIBILITY IDEOGRAPH-F939
+ : 9B6F
+F93A CJK COMPATIBILITY IDEOGRAPH-F93A
+ : 9DFA
+F93B CJK COMPATIBILITY IDEOGRAPH-F93B
+ : 788C
+F93C CJK COMPATIBILITY IDEOGRAPH-F93C
+ : 797F
+F93D CJK COMPATIBILITY IDEOGRAPH-F93D
+ : 7DA0
+F93E CJK COMPATIBILITY IDEOGRAPH-F93E
+ : 83C9
+F93F CJK COMPATIBILITY IDEOGRAPH-F93F
+ : 9304
+F940 CJK COMPATIBILITY IDEOGRAPH-F940
+ : 9E7F
+F941 CJK COMPATIBILITY IDEOGRAPH-F941
+ : 8AD6
+F942 CJK COMPATIBILITY IDEOGRAPH-F942
+ : 58DF
+F943 CJK COMPATIBILITY IDEOGRAPH-F943
+ : 5F04
+F944 CJK COMPATIBILITY IDEOGRAPH-F944
+ : 7C60
+F945 CJK COMPATIBILITY IDEOGRAPH-F945
+ : 807E
+F946 CJK COMPATIBILITY IDEOGRAPH-F946
+ : 7262
+F947 CJK COMPATIBILITY IDEOGRAPH-F947
+ : 78CA
+F948 CJK COMPATIBILITY IDEOGRAPH-F948
+ : 8CC2
+F949 CJK COMPATIBILITY IDEOGRAPH-F949
+ : 96F7
+F94A CJK COMPATIBILITY IDEOGRAPH-F94A
+ : 58D8
+F94B CJK COMPATIBILITY IDEOGRAPH-F94B
+ : 5C62
+F94C CJK COMPATIBILITY IDEOGRAPH-F94C
+ : 6A13
+F94D CJK COMPATIBILITY IDEOGRAPH-F94D
+ : 6DDA
+F94E CJK COMPATIBILITY IDEOGRAPH-F94E
+ : 6F0F
+F94F CJK COMPATIBILITY IDEOGRAPH-F94F
+ : 7D2F
+F950 CJK COMPATIBILITY IDEOGRAPH-F950
+ : 7E37
+F951 CJK COMPATIBILITY IDEOGRAPH-F951
+ : 96FB
+F952 CJK COMPATIBILITY IDEOGRAPH-F952
+ : 52D2
+F953 CJK COMPATIBILITY IDEOGRAPH-F953
+ : 808B
+F954 CJK COMPATIBILITY IDEOGRAPH-F954
+ : 51DC
+F955 CJK COMPATIBILITY IDEOGRAPH-F955
+ : 51CC
+F956 CJK COMPATIBILITY IDEOGRAPH-F956
+ : 7A1C
+F957 CJK COMPATIBILITY IDEOGRAPH-F957
+ : 7DBE
+F958 CJK COMPATIBILITY IDEOGRAPH-F958
+ : 83F1
+F959 CJK COMPATIBILITY IDEOGRAPH-F959
+ : 9675
+F95A CJK COMPATIBILITY IDEOGRAPH-F95A
+ : 8B80
+F95B CJK COMPATIBILITY IDEOGRAPH-F95B
+ : 62CF
+F95C CJK COMPATIBILITY IDEOGRAPH-F95C
+ : 6A02
+F95D CJK COMPATIBILITY IDEOGRAPH-F95D
+ : 8AFE
+F95E CJK COMPATIBILITY IDEOGRAPH-F95E
+ : 4E39
+F95F CJK COMPATIBILITY IDEOGRAPH-F95F
+ : 5BE7
+F960 CJK COMPATIBILITY IDEOGRAPH-F960
+ : 6012
+F961 CJK COMPATIBILITY IDEOGRAPH-F961
+ : 7387
+F962 CJK COMPATIBILITY IDEOGRAPH-F962
+ : 7570
+F963 CJK COMPATIBILITY IDEOGRAPH-F963
+ : 5317
+F964 CJK COMPATIBILITY IDEOGRAPH-F964
+ : 78FB
+F965 CJK COMPATIBILITY IDEOGRAPH-F965
+ : 4FBF
+F966 CJK COMPATIBILITY IDEOGRAPH-F966
+ : 5FA9
+F967 CJK COMPATIBILITY IDEOGRAPH-F967
+ : 4E0D
+F968 CJK COMPATIBILITY IDEOGRAPH-F968
+ : 6CCC
+F969 CJK COMPATIBILITY IDEOGRAPH-F969
+ : 6578
+F96A CJK COMPATIBILITY IDEOGRAPH-F96A
+ : 7D22
+F96B CJK COMPATIBILITY IDEOGRAPH-F96B
+ : 53C3
+F96C CJK COMPATIBILITY IDEOGRAPH-F96C
+ : 585E
+F96D CJK COMPATIBILITY IDEOGRAPH-F96D
+ : 7701
+F96E CJK COMPATIBILITY IDEOGRAPH-F96E
+ : 8449
+F96F CJK COMPATIBILITY IDEOGRAPH-F96F
+ : 8AAA
+F970 CJK COMPATIBILITY IDEOGRAPH-F970
+ : 6BBA
+F971 CJK COMPATIBILITY IDEOGRAPH-F971
+ : 8FB0
+F972 CJK COMPATIBILITY IDEOGRAPH-F972
+ : 6C88
+F973 CJK COMPATIBILITY IDEOGRAPH-F973
+ : 62FE
+F974 CJK COMPATIBILITY IDEOGRAPH-F974
+ : 82E5
+F975 CJK COMPATIBILITY IDEOGRAPH-F975
+ : 63A0
+F976 CJK COMPATIBILITY IDEOGRAPH-F976
+ : 7565
+F977 CJK COMPATIBILITY IDEOGRAPH-F977
+ : 4EAE
+F978 CJK COMPATIBILITY IDEOGRAPH-F978
+ : 5169
+F979 CJK COMPATIBILITY IDEOGRAPH-F979
+ : 51C9
+F97A CJK COMPATIBILITY IDEOGRAPH-F97A
+ : 6881
+F97B CJK COMPATIBILITY IDEOGRAPH-F97B
+ : 7CE7
+F97C CJK COMPATIBILITY IDEOGRAPH-F97C
+ : 826F
+F97D CJK COMPATIBILITY IDEOGRAPH-F97D
+ : 8AD2
+F97E CJK COMPATIBILITY IDEOGRAPH-F97E
+ : 91CF
+F97F CJK COMPATIBILITY IDEOGRAPH-F97F
+ : 52F5
+F980 CJK COMPATIBILITY IDEOGRAPH-F980
+ : 5442
+F981 CJK COMPATIBILITY IDEOGRAPH-F981
+ : 5973
+F982 CJK COMPATIBILITY IDEOGRAPH-F982
+ : 5EEC
+F983 CJK COMPATIBILITY IDEOGRAPH-F983
+ : 65C5
+F984 CJK COMPATIBILITY IDEOGRAPH-F984
+ : 6FFE
+F985 CJK COMPATIBILITY IDEOGRAPH-F985
+ : 792A
+F986 CJK COMPATIBILITY IDEOGRAPH-F986
+ : 95AD
+F987 CJK COMPATIBILITY IDEOGRAPH-F987
+ : 9A6A
+F988 CJK COMPATIBILITY IDEOGRAPH-F988
+ : 9E97
+F989 CJK COMPATIBILITY IDEOGRAPH-F989
+ : 9ECE
+F98A CJK COMPATIBILITY IDEOGRAPH-F98A
+ : 529B
+F98B CJK COMPATIBILITY IDEOGRAPH-F98B
+ : 66C6
+F98C CJK COMPATIBILITY IDEOGRAPH-F98C
+ : 6B77
+F98D CJK COMPATIBILITY IDEOGRAPH-F98D
+ : 8F62
+F98E CJK COMPATIBILITY IDEOGRAPH-F98E
+ : 5E74
+F98F CJK COMPATIBILITY IDEOGRAPH-F98F
+ : 6190
+F990 CJK COMPATIBILITY IDEOGRAPH-F990
+ : 6200
+F991 CJK COMPATIBILITY IDEOGRAPH-F991
+ : 649A
+F992 CJK COMPATIBILITY IDEOGRAPH-F992
+ : 6F23
+F993 CJK COMPATIBILITY IDEOGRAPH-F993
+ : 7149
+F994 CJK COMPATIBILITY IDEOGRAPH-F994
+ : 7489
+F995 CJK COMPATIBILITY IDEOGRAPH-F995
+ : 79CA
+F996 CJK COMPATIBILITY IDEOGRAPH-F996
+ : 7DF4
+F997 CJK COMPATIBILITY IDEOGRAPH-F997
+ : 806F
+F998 CJK COMPATIBILITY IDEOGRAPH-F998
+ : 8F26
+F999 CJK COMPATIBILITY IDEOGRAPH-F999
+ : 84EE
+F99A CJK COMPATIBILITY IDEOGRAPH-F99A
+ : 9023
+F99B CJK COMPATIBILITY IDEOGRAPH-F99B
+ : 934A
+F99C CJK COMPATIBILITY IDEOGRAPH-F99C
+ : 5217
+F99D CJK COMPATIBILITY IDEOGRAPH-F99D
+ : 52A3
+F99E CJK COMPATIBILITY IDEOGRAPH-F99E
+ : 54BD
+F99F CJK COMPATIBILITY IDEOGRAPH-F99F
+ : 70C8
+F9A0 CJK COMPATIBILITY IDEOGRAPH-F9A0
+ : 88C2
+F9A1 CJK COMPATIBILITY IDEOGRAPH-F9A1
+ : 8AAA
+F9A2 CJK COMPATIBILITY IDEOGRAPH-F9A2
+ : 5EC9
+F9A3 CJK COMPATIBILITY IDEOGRAPH-F9A3
+ : 5FF5
+F9A4 CJK COMPATIBILITY IDEOGRAPH-F9A4
+ : 637B
+F9A5 CJK COMPATIBILITY IDEOGRAPH-F9A5
+ : 6BAE
+F9A6 CJK COMPATIBILITY IDEOGRAPH-F9A6
+ : 7C3E
+F9A7 CJK COMPATIBILITY IDEOGRAPH-F9A7
+ : 7375
+F9A8 CJK COMPATIBILITY IDEOGRAPH-F9A8
+ : 4EE4
+F9A9 CJK COMPATIBILITY IDEOGRAPH-F9A9
+ : 56F9
+F9AA CJK COMPATIBILITY IDEOGRAPH-F9AA
+ : 5BE7
+F9AB CJK COMPATIBILITY IDEOGRAPH-F9AB
+ : 5DBA
+F9AC CJK COMPATIBILITY IDEOGRAPH-F9AC
+ : 601C
+F9AD CJK COMPATIBILITY IDEOGRAPH-F9AD
+ : 73B2
+F9AE CJK COMPATIBILITY IDEOGRAPH-F9AE
+ : 7469
+F9AF CJK COMPATIBILITY IDEOGRAPH-F9AF
+ : 7F9A
+F9B0 CJK COMPATIBILITY IDEOGRAPH-F9B0
+ : 8046
+F9B1 CJK COMPATIBILITY IDEOGRAPH-F9B1
+ : 9234
+F9B2 CJK COMPATIBILITY IDEOGRAPH-F9B2
+ : 96F6
+F9B3 CJK COMPATIBILITY IDEOGRAPH-F9B3
+ : 9748
+F9B4 CJK COMPATIBILITY IDEOGRAPH-F9B4
+ : 9818
+F9B5 CJK COMPATIBILITY IDEOGRAPH-F9B5
+ : 4F8B
+F9B6 CJK COMPATIBILITY IDEOGRAPH-F9B6
+ : 79AE
+F9B7 CJK COMPATIBILITY IDEOGRAPH-F9B7
+ : 91B4
+F9B8 CJK COMPATIBILITY IDEOGRAPH-F9B8
+ : 96B8
+F9B9 CJK COMPATIBILITY IDEOGRAPH-F9B9
+ : 60E1
+F9BA CJK COMPATIBILITY IDEOGRAPH-F9BA
+ : 4E86
+F9BB CJK COMPATIBILITY IDEOGRAPH-F9BB
+ : 50DA
+F9BC CJK COMPATIBILITY IDEOGRAPH-F9BC
+ : 5BEE
+F9BD CJK COMPATIBILITY IDEOGRAPH-F9BD
+ : 5C3F
+F9BE CJK COMPATIBILITY IDEOGRAPH-F9BE
+ : 6599
+F9BF CJK COMPATIBILITY IDEOGRAPH-F9BF
+ : 6A02
+F9C0 CJK COMPATIBILITY IDEOGRAPH-F9C0
+ : 71CE
+F9C1 CJK COMPATIBILITY IDEOGRAPH-F9C1
+ : 7642
+F9C2 CJK COMPATIBILITY IDEOGRAPH-F9C2
+ : 84FC
+F9C3 CJK COMPATIBILITY IDEOGRAPH-F9C3
+ : 907C
+F9C4 CJK COMPATIBILITY IDEOGRAPH-F9C4
+ : 9F8D
+F9C5 CJK COMPATIBILITY IDEOGRAPH-F9C5
+ : 6688
+F9C6 CJK COMPATIBILITY IDEOGRAPH-F9C6
+ : 962E
+F9C7 CJK COMPATIBILITY IDEOGRAPH-F9C7
+ : 5289
+F9C8 CJK COMPATIBILITY IDEOGRAPH-F9C8
+ : 677B
+F9C9 CJK COMPATIBILITY IDEOGRAPH-F9C9
+ : 67F3
+F9CA CJK COMPATIBILITY IDEOGRAPH-F9CA
+ : 6D41
+F9CB CJK COMPATIBILITY IDEOGRAPH-F9CB
+ : 6E9C
+F9CC CJK COMPATIBILITY IDEOGRAPH-F9CC
+ : 7409
+F9CD CJK COMPATIBILITY IDEOGRAPH-F9CD
+ : 7559
+F9CE CJK COMPATIBILITY IDEOGRAPH-F9CE
+ : 786B
+F9CF CJK COMPATIBILITY IDEOGRAPH-F9CF
+ : 7D10
+F9D0 CJK COMPATIBILITY IDEOGRAPH-F9D0
+ : 985E
+F9D1 CJK COMPATIBILITY IDEOGRAPH-F9D1
+ : 516D
+F9D2 CJK COMPATIBILITY IDEOGRAPH-F9D2
+ : 622E
+F9D3 CJK COMPATIBILITY IDEOGRAPH-F9D3
+ : 9678
+F9D4 CJK COMPATIBILITY IDEOGRAPH-F9D4
+ : 502B
+F9D5 CJK COMPATIBILITY IDEOGRAPH-F9D5
+ : 5D19
+F9D6 CJK COMPATIBILITY IDEOGRAPH-F9D6
+ : 6DEA
+F9D7 CJK COMPATIBILITY IDEOGRAPH-F9D7
+ : 8F2A
+F9D8 CJK COMPATIBILITY IDEOGRAPH-F9D8
+ : 5F8B
+F9D9 CJK COMPATIBILITY IDEOGRAPH-F9D9
+ : 6144
+F9DA CJK COMPATIBILITY IDEOGRAPH-F9DA
+ : 6817
+F9DB CJK COMPATIBILITY IDEOGRAPH-F9DB
+ : 7387
+F9DC CJK COMPATIBILITY IDEOGRAPH-F9DC
+ : 9686
+F9DD CJK COMPATIBILITY IDEOGRAPH-F9DD
+ : 5229
+F9DE CJK COMPATIBILITY IDEOGRAPH-F9DE
+ : 540F
+F9DF CJK COMPATIBILITY IDEOGRAPH-F9DF
+ : 5C65
+F9E0 CJK COMPATIBILITY IDEOGRAPH-F9E0
+ : 6613
+F9E1 CJK COMPATIBILITY IDEOGRAPH-F9E1
+ : 674E
+F9E2 CJK COMPATIBILITY IDEOGRAPH-F9E2
+ : 68A8
+F9E3 CJK COMPATIBILITY IDEOGRAPH-F9E3
+ : 6CE5
+F9E4 CJK COMPATIBILITY IDEOGRAPH-F9E4
+ : 7406
+F9E5 CJK COMPATIBILITY IDEOGRAPH-F9E5
+ : 75E2
+F9E6 CJK COMPATIBILITY IDEOGRAPH-F9E6
+ : 7F79
+F9E7 CJK COMPATIBILITY IDEOGRAPH-F9E7
+ : 88CF
+F9E8 CJK COMPATIBILITY IDEOGRAPH-F9E8
+ : 88E1
+F9E9 CJK COMPATIBILITY IDEOGRAPH-F9E9
+ : 91CC
+F9EA CJK COMPATIBILITY IDEOGRAPH-F9EA
+ : 96E2
+F9EB CJK COMPATIBILITY IDEOGRAPH-F9EB
+ : 533F
+F9EC CJK COMPATIBILITY IDEOGRAPH-F9EC
+ : 6EBA
+F9ED CJK COMPATIBILITY IDEOGRAPH-F9ED
+ : 541D
+F9EE CJK COMPATIBILITY IDEOGRAPH-F9EE
+ : 71D0
+F9EF CJK COMPATIBILITY IDEOGRAPH-F9EF
+ : 7498
+F9F0 CJK COMPATIBILITY IDEOGRAPH-F9F0
+ : 85FA
+F9F1 CJK COMPATIBILITY IDEOGRAPH-F9F1
+ : 96A3
+F9F2 CJK COMPATIBILITY IDEOGRAPH-F9F2
+ : 9C57
+F9F3 CJK COMPATIBILITY IDEOGRAPH-F9F3
+ : 9E9F
+F9F4 CJK COMPATIBILITY IDEOGRAPH-F9F4
+ : 6797
+F9F5 CJK COMPATIBILITY IDEOGRAPH-F9F5
+ : 6DCB
+F9F6 CJK COMPATIBILITY IDEOGRAPH-F9F6
+ : 81E8
+F9F7 CJK COMPATIBILITY IDEOGRAPH-F9F7
+ : 7ACB
+F9F8 CJK COMPATIBILITY IDEOGRAPH-F9F8
+ : 7B20
+F9F9 CJK COMPATIBILITY IDEOGRAPH-F9F9
+ : 7C92
+F9FA CJK COMPATIBILITY IDEOGRAPH-F9FA
+ : 72C0
+F9FB CJK COMPATIBILITY IDEOGRAPH-F9FB
+ : 7099
+F9FC CJK COMPATIBILITY IDEOGRAPH-F9FC
+ : 8B58
+F9FD CJK COMPATIBILITY IDEOGRAPH-F9FD
+ : 4EC0
+F9FE CJK COMPATIBILITY IDEOGRAPH-F9FE
+ : 8336
+F9FF CJK COMPATIBILITY IDEOGRAPH-F9FF
+ : 523A
+FA00 CJK COMPATIBILITY IDEOGRAPH-FA00
+ : 5207
+FA01 CJK COMPATIBILITY IDEOGRAPH-FA01
+ : 5EA6
+FA02 CJK COMPATIBILITY IDEOGRAPH-FA02
+ : 62D3
+FA03 CJK COMPATIBILITY IDEOGRAPH-FA03
+ : 7CD6
+FA04 CJK COMPATIBILITY IDEOGRAPH-FA04
+ : 5B85
+FA05 CJK COMPATIBILITY IDEOGRAPH-FA05
+ : 6D1E
+FA06 CJK COMPATIBILITY IDEOGRAPH-FA06
+ : 66B4
+FA07 CJK COMPATIBILITY IDEOGRAPH-FA07
+ : 8F3B
+FA08 CJK COMPATIBILITY IDEOGRAPH-FA08
+ : 884C
+FA09 CJK COMPATIBILITY IDEOGRAPH-FA09
+ : 964D
+FA0A CJK COMPATIBILITY IDEOGRAPH-FA0A
+ : 898B
+FA0B CJK COMPATIBILITY IDEOGRAPH-FA0B
+ : 5ED3
+@ Duplicates from Big 5
+FA0C CJK COMPATIBILITY IDEOGRAPH-FA0C
+ : 5140
+FA0D CJK COMPATIBILITY IDEOGRAPH-FA0D
+ : 55C0
+@ The IBM 32 compatibility additions
+FA0E CJK COMPATIBILITY IDEOGRAPH-FA0E
+ * in the set of unified ideographs
+FA0F CJK COMPATIBILITY IDEOGRAPH-FA0F
+ * in the set of unified ideographs
+FA10 CJK COMPATIBILITY IDEOGRAPH-FA10
+ : 585A
+FA11 CJK COMPATIBILITY IDEOGRAPH-FA11
+ * in the set of unified ideographs
+FA12 CJK COMPATIBILITY IDEOGRAPH-FA12
+ : 6674
+FA13 CJK COMPATIBILITY IDEOGRAPH-FA13
+ * in the set of unified ideographs
+FA14 CJK COMPATIBILITY IDEOGRAPH-FA14
+ * in the set of unified ideographs
+FA15 CJK COMPATIBILITY IDEOGRAPH-FA15
+ : 51DE
+FA16 CJK COMPATIBILITY IDEOGRAPH-FA16
+ : 732A
+FA17 CJK COMPATIBILITY IDEOGRAPH-FA17
+ : 76CA
+FA18 CJK COMPATIBILITY IDEOGRAPH-FA18
+ : 793C
+FA19 CJK COMPATIBILITY IDEOGRAPH-FA19
+ : 795E
+FA1A CJK COMPATIBILITY IDEOGRAPH-FA1A
+ : 7965
+FA1B CJK COMPATIBILITY IDEOGRAPH-FA1B
+ : 798F
+FA1C CJK COMPATIBILITY IDEOGRAPH-FA1C
+ : 9756
+FA1D CJK COMPATIBILITY IDEOGRAPH-FA1D
+ : 7CBE
+FA1E CJK COMPATIBILITY IDEOGRAPH-FA1E
+ : 7FBD
+FA1F CJK COMPATIBILITY IDEOGRAPH-FA1F *
+ * in the set of unified ideographs
+FA20 CJK COMPATIBILITY IDEOGRAPH-FA20
+ : 8612
+FA21 CJK COMPATIBILITY IDEOGRAPH-FA21
+ * in the set of unified ideographs
+FA22 CJK COMPATIBILITY IDEOGRAPH-FA22
+ : 8AF8
+FA23 CJK COMPATIBILITY IDEOGRAPH-FA23 *
+ * in the set of unified ideographs
+FA24 CJK COMPATIBILITY IDEOGRAPH-FA24
+ * in the set of unified ideographs
+FA25 CJK COMPATIBILITY IDEOGRAPH-FA25
+ : 9038
+FA26 CJK COMPATIBILITY IDEOGRAPH-FA26
+ : 90FD
+FA27 CJK COMPATIBILITY IDEOGRAPH-FA27
+ * in the set of unified ideographs
+FA28 CJK COMPATIBILITY IDEOGRAPH-FA28
+ * in the set of unified ideographs
+FA29 CJK COMPATIBILITY IDEOGRAPH-FA29
+ * in the set of unified ideographs
+FA2A CJK COMPATIBILITY IDEOGRAPH-FA2A
+ : 98EF
+FA2B CJK COMPATIBILITY IDEOGRAPH-FA2B
+ : 98FC
+FA2C CJK COMPATIBILITY IDEOGRAPH-FA2C
+ : 9928
+FA2D CJK COMPATIBILITY IDEOGRAPH-FA2D
+ : 9DB4
@@ FB00 Alphabetic Presentation Forms FB4F
-@ Alphabetic presentation forms
+@ Latin ligatures
+@+ See the Basic Latin block starting at 0020
FB00 LATIN SMALL LIGATURE FF
- # 0066 + 0066
+ # 0066 0066
FB01 LATIN SMALL LIGATURE FI
- # 0066 + 0069
+ # 0066 0069
FB02 LATIN SMALL LIGATURE FL
- # 0066 + 006C
+ # 0066 006C
FB03 LATIN SMALL LIGATURE FFI
- # 0066 + 0066 + 0069
+ # 0066 0066 0069
FB04 LATIN SMALL LIGATURE FFL
- # 0066 + 0066 + 006C
+ # 0066 0066 006C
FB05 LATIN SMALL LIGATURE LONG S T
- # 017F + 0074
+ # 017F 0074
FB06 LATIN SMALL LIGATURE ST
- # 0073 + 0074
+ # 0073 0074
+@ Armenian ligatures
+@+ See the Armenian block starting at 0530
FB13 ARMENIAN SMALL LIGATURE MEN NOW
- # 0574 + 0576
+ # 0574 0576
FB14 ARMENIAN SMALL LIGATURE MEN ECH
- # 0574 + 0565
+ # 0574 0565
FB15 ARMENIAN SMALL LIGATURE MEN INI
- # 0574 + 056B
+ # 0574 056B
FB16 ARMENIAN SMALL LIGATURE VEW NOW
- # 057E + 0576
+ # 057E 0576
FB17 ARMENIAN SMALL LIGATURE MEN XEH
- # 0574 + 056D
+ # 0574 056D
+@ Hebrew presentation forms
+@+ See the Hebrew block starting at 0590
+FB1D HEBREW LETTER YOD WITH HIRIQ
+ : 05D9 05B4
FB1E HEBREW POINT JUDEO-SPANISH VARIKA
FB1F HEBREW LIGATURE YIDDISH YOD YOD PATAH
- # 05F2 + 05B7
+ : 05F2 05B7
FB20 HEBREW LETTER ALTERNATIVE AYIN
- # <font> + 05E2
+ # <font> 05E2 hebrew letter ayin
FB21 HEBREW LETTER WIDE ALEF
- # <font> + 05D0
+ # <font> 05D0 hebrew letter alef
FB22 HEBREW LETTER WIDE DALET
- # <font> + 05D3
+ # <font> 05D3 hebrew letter dalet
FB23 HEBREW LETTER WIDE HE
- # <font> + 05D4
+ # <font> 05D4 hebrew letter he
FB24 HEBREW LETTER WIDE KAF
- # <font> + 05DB
+ # <font> 05DB hebrew letter kaf
FB25 HEBREW LETTER WIDE LAMED
- # <font> + 05DC
+ # <font> 05DC hebrew letter lamed
FB26 HEBREW LETTER WIDE FINAL MEM
- # <font> + 05DD
+ # <font> 05DD hebrew letter final mem
FB27 HEBREW LETTER WIDE RESH
- # <font> + 05E8
+ # <font> 05E8 hebrew letter resh
FB28 HEBREW LETTER WIDE TAV
- # <font> + 05EA
+ # <font> 05EA hebrew letter tav
FB29 HEBREW LETTER ALTERNATIVE PLUS SIGN
- # <font> + 002B
+ # <font> 002B plus sign
FB2A HEBREW LETTER SHIN WITH SHIN DOT
- : 05E9 + 05C1
+ : 05E9 05C1
FB2B HEBREW LETTER SHIN WITH SIN DOT
- : 05E9 + 05C2
+ : 05E9 05C2
FB2C HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT
- : 05E9 + 05BC + 05C1
+ : FB49 05C1
FB2D HEBREW LETTER SHIN WITH DAGESH AND SIN DOT
- : 05E9 + 05BC + 05C2
+ : FB49 05C2
FB2E HEBREW LETTER ALEF WITH PATAH
- : 05D0 + 05B7
+ : 05D0 05B7
FB2F HEBREW LETTER ALEF WITH QAMATS
- : 05D0 + 05B8
+ : 05D0 05B8
FB30 HEBREW LETTER ALEF WITH MAPIQ
- : 05D0 + 05BC
+ : 05D0 05BC
FB31 HEBREW LETTER BET WITH DAGESH
- : 05D1 + 05BC
+ : 05D1 05BC
FB32 HEBREW LETTER GIMEL WITH DAGESH
- : 05D2 + 05BC
+ : 05D2 05BC
FB33 HEBREW LETTER DALET WITH DAGESH
- : 05D3 + 05BC
+ : 05D3 05BC
FB34 HEBREW LETTER HE WITH MAPIQ
- : 05D4 + 05BC
+ : 05D4 05BC
FB35 HEBREW LETTER VAV WITH DAGESH
- : 05D5 + 05BC
+ : 05D5 05BC
FB36 HEBREW LETTER ZAYIN WITH DAGESH
- : 05D6 + 05BC
+ : 05D6 05BC
FB38 HEBREW LETTER TET WITH DAGESH
- : 05D8 + 05BC
+ : 05D8 05BC
FB39 HEBREW LETTER YOD WITH DAGESH
- : 05D9 + 05BC
+ : 05D9 05BC
FB3A HEBREW LETTER FINAL KAF WITH DAGESH
- : 05DA + 05BC
+ : 05DA 05BC
FB3B HEBREW LETTER KAF WITH DAGESH
- : 05DB + 05BC
+ : 05DB 05BC
FB3C HEBREW LETTER LAMED WITH DAGESH
- : 05DC + 05BC
+ : 05DC 05BC
FB3E HEBREW LETTER MEM WITH DAGESH
- : 05DE + 05BC
+ : 05DE 05BC
FB40 HEBREW LETTER NUN WITH DAGESH
- : 05E0 + 05BC
+ : 05E0 05BC
FB41 HEBREW LETTER SAMEKH WITH DAGESH
- : 05E1 + 05BC
+ : 05E1 05BC
FB43 HEBREW LETTER FINAL PE WITH DAGESH
- : 05E3 + 05BC
+ : 05E3 05BC
FB44 HEBREW LETTER PE WITH DAGESH
- : 05E4 + 05BC
+ : 05E4 05BC
FB46 HEBREW LETTER TSADI WITH DAGESH
- : 05E6 + 05BC
+ : 05E6 05BC
FB47 HEBREW LETTER QOF WITH DAGESH
- : 05E7 + 05BC
+ : 05E7 05BC
FB48 HEBREW LETTER RESH WITH DAGESH
- : 05E8 + 05BC
+ : 05E8 05BC
FB49 HEBREW LETTER SHIN WITH DAGESH
- : 05E9 + 05BC
+ : 05E9 05BC
FB4A HEBREW LETTER TAV WITH DAGESH
- : 05EA + 05BC
+ : 05EA 05BC
FB4B HEBREW LETTER VAV WITH HOLAM
- : 05D5 + 05B9
+ : 05D5 05B9
FB4C HEBREW LETTER BET WITH RAFE
- : 05D1 + 05BF
+ : 05D1 05BF
FB4D HEBREW LETTER KAF WITH RAFE
- : 05DB + 05BF
+ : 05DB 05BF
FB4E HEBREW LETTER PE WITH RAFE
- : 05E4 + 05BF
+ : 05E4 05BF
FB4F HEBREW LIGATURE ALEF LAMED
- # 05D0 + 05DC
+ # 05D0 05DC
@@ FB50 Arabic Presentation Forms-A FDFF
-@ Arabic presentation forms-A
+@+ Preferred characters are found in the Arabic block 0600 - 06FF.
+@ Glyphs for contextual forms of letters for Persian, Urdu, Sindhi, etc.
FB50 ARABIC LETTER ALEF WASLA ISOLATED FORM
- # <isolated> + 0671
+ # <isolated> 0671
FB51 ARABIC LETTER ALEF WASLA FINAL FORM
- # <final> + 0671
+ # <final> 0671
FB52 ARABIC LETTER BEEH ISOLATED FORM
- # <isolated> + 067B
+ # <isolated> 067B
FB53 ARABIC LETTER BEEH FINAL FORM
- # <final> + 067B
+ # <final> 067B
FB54 ARABIC LETTER BEEH INITIAL FORM
- # <initial> + 067B
+ # <initial> 067B
FB55 ARABIC LETTER BEEH MEDIAL FORM
- # <medial> + 067B
+ # <medial> 067B
FB56 ARABIC LETTER PEH ISOLATED FORM
- # <isolated> + 067E
+ # <isolated> 067E
FB57 ARABIC LETTER PEH FINAL FORM
- # <final> + 067E
+ # <final> 067E
FB58 ARABIC LETTER PEH INITIAL FORM
- # <initial> + 067E
+ # <initial> 067E
FB59 ARABIC LETTER PEH MEDIAL FORM
- # <medial> + 067E
+ # <medial> 067E
FB5A ARABIC LETTER BEHEH ISOLATED FORM
- # <isolated> + 0680
+ # <isolated> 0680
FB5B ARABIC LETTER BEHEH FINAL FORM
- # <final> + 0680
+ # <final> 0680
FB5C ARABIC LETTER BEHEH INITIAL FORM
- # <initial> + 0680
+ # <initial> 0680
FB5D ARABIC LETTER BEHEH MEDIAL FORM
- # <medial> + 0680
+ # <medial> 0680
FB5E ARABIC LETTER TTEHEH ISOLATED FORM
- # <isolated> + 067A
+ # <isolated> 067A
FB5F ARABIC LETTER TTEHEH FINAL FORM
- # <final> + 067A
+ # <final> 067A
FB60 ARABIC LETTER TTEHEH INITIAL FORM
- # <initial> + 067A
+ # <initial> 067A
FB61 ARABIC LETTER TTEHEH MEDIAL FORM
- # <medial> + 067A
+ # <medial> 067A
FB62 ARABIC LETTER TEHEH ISOLATED FORM
- # <isolated> + 067F
+ # <isolated> 067F
FB63 ARABIC LETTER TEHEH FINAL FORM
- # <final> + 067F
+ # <final> 067F
FB64 ARABIC LETTER TEHEH INITIAL FORM
- # <initial> + 067F
+ # <initial> 067F
FB65 ARABIC LETTER TEHEH MEDIAL FORM
- # <medial> + 067F
+ # <medial> 067F
FB66 ARABIC LETTER TTEH ISOLATED FORM
- # <isolated> + 0679
+ # <isolated> 0679
FB67 ARABIC LETTER TTEH FINAL FORM
- # <final> + 0679
+ # <final> 0679
FB68 ARABIC LETTER TTEH INITIAL FORM
- # <initial> + 0679
+ # <initial> 0679
FB69 ARABIC LETTER TTEH MEDIAL FORM
- # <medial> + 0679
+ # <medial> 0679
FB6A ARABIC LETTER VEH ISOLATED FORM
- # <isolated> + 06A4
+ # <isolated> 06A4
FB6B ARABIC LETTER VEH FINAL FORM
- # <final> + 06A4
+ # <final> 06A4
FB6C ARABIC LETTER VEH INITIAL FORM
- # <initial> + 06A4
+ # <initial> 06A4
FB6D ARABIC LETTER VEH MEDIAL FORM
- # <medial> + 06A4
+ # <medial> 06A4
FB6E ARABIC LETTER PEHEH ISOLATED FORM
- # <isolated> + 06A6
+ # <isolated> 06A6
FB6F ARABIC LETTER PEHEH FINAL FORM
- # <final> + 06A6
+ # <final> 06A6
FB70 ARABIC LETTER PEHEH INITIAL FORM
- # <initial> + 06A6
+ # <initial> 06A6
FB71 ARABIC LETTER PEHEH MEDIAL FORM
- # <medial> + 06A6
+ # <medial> 06A6
FB72 ARABIC LETTER DYEH ISOLATED FORM
- # <isolated> + 0684
+ # <isolated> 0684
FB73 ARABIC LETTER DYEH FINAL FORM
- # <final> + 0684
+ # <final> 0684
FB74 ARABIC LETTER DYEH INITIAL FORM
- # <initial> + 0684
+ # <initial> 0684
FB75 ARABIC LETTER DYEH MEDIAL FORM
- # <medial> + 0684
+ # <medial> 0684
FB76 ARABIC LETTER NYEH ISOLATED FORM
- # <isolated> + 0683
+ # <isolated> 0683
FB77 ARABIC LETTER NYEH FINAL FORM
- # <final> + 0683
+ # <final> 0683
FB78 ARABIC LETTER NYEH INITIAL FORM
- # <initial> + 0683
+ # <initial> 0683
FB79 ARABIC LETTER NYEH MEDIAL FORM
- # <medial> + 0683
+ # <medial> 0683
FB7A ARABIC LETTER TCHEH ISOLATED FORM
- # <isolated> + 0686
+ # <isolated> 0686
FB7B ARABIC LETTER TCHEH FINAL FORM
- # <final> + 0686
+ # <final> 0686
FB7C ARABIC LETTER TCHEH INITIAL FORM
- # <initial> + 0686
+ # <initial> 0686
FB7D ARABIC LETTER TCHEH MEDIAL FORM
- # <medial> + 0686
+ # <medial> 0686
FB7E ARABIC LETTER TCHEHEH ISOLATED FORM
- # <isolated> + 0687
+ # <isolated> 0687
FB7F ARABIC LETTER TCHEHEH FINAL FORM
- # <final> + 0687
+ # <final> 0687
FB80 ARABIC LETTER TCHEHEH INITIAL FORM
- # <initial> + 0687
+ # <initial> 0687
FB81 ARABIC LETTER TCHEHEH MEDIAL FORM
- # <medial> + 0687
+ # <medial> 0687
FB82 ARABIC LETTER DDAHAL ISOLATED FORM
- # <isolated> + 068D
+ # <isolated> 068D
FB83 ARABIC LETTER DDAHAL FINAL FORM
- # <final> + 068D
+ # <final> 068D
FB84 ARABIC LETTER DAHAL ISOLATED FORM
- # <isolated> + 068C
+ # <isolated> 068C
FB85 ARABIC LETTER DAHAL FINAL FORM
- # <final> + 068C
+ # <final> 068C
FB86 ARABIC LETTER DUL ISOLATED FORM
- # <isolated> + 068E
+ # <isolated> 068E
FB87 ARABIC LETTER DUL FINAL FORM
- # <final> + 068E
+ # <final> 068E
FB88 ARABIC LETTER DDAL ISOLATED FORM
- # <isolated> + 0688
+ # <isolated> 0688
FB89 ARABIC LETTER DDAL FINAL FORM
- # <final> + 0688
+ # <final> 0688
FB8A ARABIC LETTER JEH ISOLATED FORM
- # <isolated> + 0698
+ # <isolated> 0698
FB8B ARABIC LETTER JEH FINAL FORM
- # <final> + 0698
+ # <final> 0698
FB8C ARABIC LETTER RREH ISOLATED FORM
- # <isolated> + 0691
+ # <isolated> 0691
FB8D ARABIC LETTER RREH FINAL FORM
- # <final> + 0691
+ # <final> 0691
FB8E ARABIC LETTER KEHEH ISOLATED FORM
- # <isolated> + 06A9
+ # <isolated> 06A9
FB8F ARABIC LETTER KEHEH FINAL FORM
- # <final> + 06A9
+ # <final> 06A9
FB90 ARABIC LETTER KEHEH INITIAL FORM
- # <initial> + 06A9
+ # <initial> 06A9
FB91 ARABIC LETTER KEHEH MEDIAL FORM
- # <medial> + 06A9
+ # <medial> 06A9
FB92 ARABIC LETTER GAF ISOLATED FORM
- # <isolated> + 06AF
+ # <isolated> 06AF
FB93 ARABIC LETTER GAF FINAL FORM
- # <final> + 06AF
+ # <final> 06AF
FB94 ARABIC LETTER GAF INITIAL FORM
- # <initial> + 06AF
+ # <initial> 06AF
FB95 ARABIC LETTER GAF MEDIAL FORM
- # <medial> + 06AF
+ # <medial> 06AF
FB96 ARABIC LETTER GUEH ISOLATED FORM
- # <isolated> + 06B3
+ # <isolated> 06B3
FB97 ARABIC LETTER GUEH FINAL FORM
- # <final> + 06B3
+ # <final> 06B3
FB98 ARABIC LETTER GUEH INITIAL FORM
- # <initial> + 06B3
+ # <initial> 06B3
FB99 ARABIC LETTER GUEH MEDIAL FORM
- # <medial> + 06B3
+ # <medial> 06B3
FB9A ARABIC LETTER NGOEH ISOLATED FORM
- # <isolated> + 06B1
+ # <isolated> 06B1
FB9B ARABIC LETTER NGOEH FINAL FORM
- # <final> + 06B1
+ # <final> 06B1
FB9C ARABIC LETTER NGOEH INITIAL FORM
- # <initial> + 06B1
+ # <initial> 06B1
FB9D ARABIC LETTER NGOEH MEDIAL FORM
- # <medial> + 06B1
+ # <medial> 06B1
FB9E ARABIC LETTER NOON GHUNNA ISOLATED FORM
- # <isolated> + 06BA
+ # <isolated> 06BA
FB9F ARABIC LETTER NOON GHUNNA FINAL FORM
- # <final> + 06BA
+ # <final> 06BA
FBA0 ARABIC LETTER RNOON ISOLATED FORM
- # <isolated> + 06BB
+ # <isolated> 06BB
FBA1 ARABIC LETTER RNOON FINAL FORM
- # <final> + 06BB
+ # <final> 06BB
FBA2 ARABIC LETTER RNOON INITIAL FORM
- # <initial> + 06BB
+ # <initial> 06BB
FBA3 ARABIC LETTER RNOON MEDIAL FORM
- # <medial> + 06BB
+ # <medial> 06BB
FBA4 ARABIC LETTER HEH WITH YEH ABOVE ISOLATED FORM
- # <isolated> + 06C0
+ # <isolated> 06C0
FBA5 ARABIC LETTER HEH WITH YEH ABOVE FINAL FORM
- # <final> + 06C0
+ # <final> 06C0
FBA6 ARABIC LETTER HEH GOAL ISOLATED FORM
- # <isolated> + 06C1
+ # <isolated> 06C1
FBA7 ARABIC LETTER HEH GOAL FINAL FORM
- # <final> + 06C1
+ # <final> 06C1
FBA8 ARABIC LETTER HEH GOAL INITIAL FORM
- # <initial> + 06C1
+ # <initial> 06C1
FBA9 ARABIC LETTER HEH GOAL MEDIAL FORM
- # <medial> + 06C1
+ # <medial> 06C1
FBAA ARABIC LETTER HEH DOACHASHMEE ISOLATED FORM
- # <isolated> + 06BE
+ # <isolated> 06BE
FBAB ARABIC LETTER HEH DOACHASHMEE FINAL FORM
- # <final> + 06BE
+ # <final> 06BE
FBAC ARABIC LETTER HEH DOACHASHMEE INITIAL FORM
- # <initial> + 06BE
+ # <initial> 06BE
FBAD ARABIC LETTER HEH DOACHASHMEE MEDIAL FORM
- # <medial> + 06BE
+ # <medial> 06BE
FBAE ARABIC LETTER YEH BARREE ISOLATED FORM
- # <isolated> + 06D2
+ # <isolated> 06D2
FBAF ARABIC LETTER YEH BARREE FINAL FORM
- # <final> + 06D2
+ # <final> 06D2
FBB0 ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM
- # <isolated> + 06D3
+ # <isolated> 06D3
FBB1 ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM
- # <final> + 06D3
-FBB2 <reserved>
-FBB3 <reserved>
-FBB4 <reserved>
-FBB5 <reserved>
-FBB6 <reserved>
-FBB7 <reserved>
-FBB8 <reserved>
-FBB9 <reserved>
-FBBA <reserved>
-FBBB <reserved>
-FBBC <reserved>
-FBBD <reserved>
-FBBE <reserved>
-FBBF <reserved>
-FBC0 <reserved>
-FBC1 <reserved>
-FBC2 <reserved>
-FBC3 <reserved>
-FBC4 <reserved>
-FBC5 <reserved>
-FBC6 <reserved>
-FBC7 <reserved>
-FBC8 <reserved>
-FBC9 <reserved>
-FBCA <reserved>
-FBCB <reserved>
-FBCC <reserved>
-FBCD <reserved>
-FBCE <reserved>
-FBCF <reserved>
-FBD0 <reserved>
-FBD1 <reserved>
-FBD2 <reserved>
+ # <final> 06D3
+@ Glyphs for contextual forms of letters for Central Asian languages
FBD3 ARABIC LETTER NG ISOLATED FORM
- # <isolated> + 06AD
+ # <isolated> 06AD
FBD4 ARABIC LETTER NG FINAL FORM
- # <final> + 06AD
+ # <final> 06AD
FBD5 ARABIC LETTER NG INITIAL FORM
- # <initial> + 06AD
+ # <initial> 06AD
FBD6 ARABIC LETTER NG MEDIAL FORM
- # <medial> + 06AD
+ # <medial> 06AD
FBD7 ARABIC LETTER U ISOLATED FORM
- # <isolated> + 06C7
+ # <isolated> 06C7
FBD8 ARABIC LETTER U FINAL FORM
- # <final> + 06C7
+ # <final> 06C7
FBD9 ARABIC LETTER OE ISOLATED FORM
- # <isolated> + 06C6
+ # <isolated> 06C6
FBDA ARABIC LETTER OE FINAL FORM
- # <final> + 06C6
+ # <final> 06C6
FBDB ARABIC LETTER YU ISOLATED FORM
- # <isolated> + 06C8
+ # <isolated> 06C8
FBDC ARABIC LETTER YU FINAL FORM
- # <final> + 06C8
+ # <final> 06C8
FBDD ARABIC LETTER U WITH HAMZA ABOVE ISOLATED FORM
- # <isolated> + 0677
+ # <isolated> 0677
FBDE ARABIC LETTER VE ISOLATED FORM
- # <isolated> + 06CB
+ # <isolated> 06CB
FBDF ARABIC LETTER VE FINAL FORM
- # <final> + 06CB
+ # <final> 06CB
FBE0 ARABIC LETTER KIRGHIZ OE ISOLATED FORM
- # <isolated> + 06C5
+ # <isolated> 06C5
FBE1 ARABIC LETTER KIRGHIZ OE FINAL FORM
- # <final> + 06C5
+ # <final> 06C5
FBE2 ARABIC LETTER KIRGHIZ YU ISOLATED FORM
- # <isolated> + 06C9
+ # <isolated> 06C9
FBE3 ARABIC LETTER KIRGHIZ YU FINAL FORM
- # <final> + 06C9
+ # <final> 06C9
FBE4 ARABIC LETTER E ISOLATED FORM
- # <isolated> + 06D0
+ # <isolated> 06D0
FBE5 ARABIC LETTER E FINAL FORM
- # <final> + 06D0
+ # <final> 06D0
FBE6 ARABIC LETTER E INITIAL FORM
- # <initial> + 06D0
+ # <initial> 06D0
FBE7 ARABIC LETTER E MEDIAL FORM
- # <medial> + 06D0
+ # <medial> 06D0
FBE8 ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA INITIAL FORM
+ # <initial> 0649
FBE9 ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA MEDIAL FORM
+ # <medial> 0649
+@ Ligatures (two elements)
FBEA ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF ISOLATED FORM
- # <isolated> + 0626 + 0627
+ # <isolated> 0626 0627
FBEB ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF FINAL FORM
- # <final> + 0626 + 0627
+ # <final> 0626 0627
FBEC ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE ISOLATED FORM
- # <isolated> + 0626 + 06D5
+ # <isolated> 0626 06D5
FBED ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE FINAL FORM
- # <final> + 0626 + 06D5
+ # <final> 0626 06D5
FBEE ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW ISOLATED FORM
- # <isolated> + 0626 + 0648
+ # <isolated> 0626 0648
FBEF ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW FINAL FORM
- # <final> + 0626 + 0648
+ # <final> 0626 0648
FBF0 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U ISOLATED FORM
- # <isolated> + 0626 + 06C7
+ # <isolated> 0626 06C7
FBF1 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U FINAL FORM
- # <final> + 0626 + 06C7
+ # <final> 0626 06C7
FBF2 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE ISOLATED FORM
- # <isolated> + 0626 + 06C6
+ # <isolated> 0626 06C6
FBF3 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE FINAL FORM
- # <final> + 0626 + 06C6
+ # <final> 0626 06C6
FBF4 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU ISOLATED FORM
- # <isolated> + 0626 + 06C8
+ # <isolated> 0626 06C8
FBF5 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU FINAL FORM
- # <final> + 0626 + 06C8
+ # <final> 0626 06C8
FBF6 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E ISOLATED FORM
- # <isolated> + 0626 + 06D0
+ # <isolated> 0626 06D0
FBF7 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E FINAL FORM
- # <final> + 0626 + 06D0
+ # <final> 0626 06D0
FBF8 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E INITIAL FORM
- # <initial> + 0626 + 06D0
+ # <initial> 0626 06D0
FBF9 ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM
+ # <isolated> 0626 0649
FBFA ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM
+ # <final> 0626 0649
FBFB ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA INITIAL FORM
+ # <initial> 0626 0649
FBFC ARABIC LETTER FARSI YEH ISOLATED FORM
- # <isolated> + 06CC
+ # <isolated> 06CC
FBFD ARABIC LETTER FARSI YEH FINAL FORM
- # <final> + 06CC
+ # <final> 06CC
FBFE ARABIC LETTER FARSI YEH INITIAL FORM
- # <initial> + 06CC
+ # <initial> 06CC
FBFF ARABIC LETTER FARSI YEH MEDIAL FORM
- # <medial> + 06CC
+ # <medial> 06CC
FC00 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM ISOLATED FORM
- # <isolated> + 0626 + 062C
+ # <isolated> 0626 062C
FC01 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH ISOLATED FORM
- # <isolated> + 0626 + 062D
+ # <isolated> 0626 062D
FC02 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM ISOLATED FORM
- # <isolated> + 0626 + 0645
+ # <isolated> 0626 0645
FC03 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0626 + 0649
+ # <isolated> 0626 0649
FC04 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH ISOLATED FORM
- # <isolated> + 0626 + 064A
+ # <isolated> 0626 064A
FC05 ARABIC LIGATURE BEH WITH JEEM ISOLATED FORM
- # <isolated> + 0628 + 062C
+ # <isolated> 0628 062C
FC06 ARABIC LIGATURE BEH WITH HAH ISOLATED FORM
- # <isolated> + 0628 + 062D
+ # <isolated> 0628 062D
FC07 ARABIC LIGATURE BEH WITH KHAH ISOLATED FORM
- # <isolated> + 0628 + 062E
+ # <isolated> 0628 062E
FC08 ARABIC LIGATURE BEH WITH MEEM ISOLATED FORM
- # <isolated> + 0628 + 0645
+ # <isolated> 0628 0645
FC09 ARABIC LIGATURE BEH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0628 + 0649
+ # <isolated> 0628 0649
FC0A ARABIC LIGATURE BEH WITH YEH ISOLATED FORM
- # <isolated> + 0628 + 064A
+ # <isolated> 0628 064A
FC0B ARABIC LIGATURE TEH WITH JEEM ISOLATED FORM
- # <isolated> + 062A + 062C
+ # <isolated> 062A 062C
FC0C ARABIC LIGATURE TEH WITH HAH ISOLATED FORM
- # <isolated> + 062A + 062D
+ # <isolated> 062A 062D
FC0D ARABIC LIGATURE TEH WITH KHAH ISOLATED FORM
- # <isolated> + 062A + 062E
+ # <isolated> 062A 062E
FC0E ARABIC LIGATURE TEH WITH MEEM ISOLATED FORM
- # <isolated> + 062A + 0645
+ # <isolated> 062A 0645
FC0F ARABIC LIGATURE TEH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 062A + 0649
+ # <isolated> 062A 0649
FC10 ARABIC LIGATURE TEH WITH YEH ISOLATED FORM
- # <isolated> + 062A + 064A
+ # <isolated> 062A 064A
FC11 ARABIC LIGATURE THEH WITH JEEM ISOLATED FORM
- # <isolated> + 062B + 062C
+ # <isolated> 062B 062C
FC12 ARABIC LIGATURE THEH WITH MEEM ISOLATED FORM
- # <isolated> + 062B + 0645
+ # <isolated> 062B 0645
FC13 ARABIC LIGATURE THEH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 062B + 0649
+ # <isolated> 062B 0649
FC14 ARABIC LIGATURE THEH WITH YEH ISOLATED FORM
- # <isolated> + 062B + 064A
+ # <isolated> 062B 064A
FC15 ARABIC LIGATURE JEEM WITH HAH ISOLATED FORM
- # <isolated> + 062C + 062D
+ # <isolated> 062C 062D
FC16 ARABIC LIGATURE JEEM WITH MEEM ISOLATED FORM
- # <isolated> + 062C + 0645
+ # <isolated> 062C 0645
FC17 ARABIC LIGATURE HAH WITH JEEM ISOLATED FORM
- # <isolated> + 062D + 062C
+ # <isolated> 062D 062C
FC18 ARABIC LIGATURE HAH WITH MEEM ISOLATED FORM
- # <isolated> + 062D + 0645
+ # <isolated> 062D 0645
FC19 ARABIC LIGATURE KHAH WITH JEEM ISOLATED FORM
- # <isolated> + 062E + 062C
+ # <isolated> 062E 062C
FC1A ARABIC LIGATURE KHAH WITH HAH ISOLATED FORM
- # <isolated> + 062E + 062D
+ # <isolated> 062E 062D
FC1B ARABIC LIGATURE KHAH WITH MEEM ISOLATED FORM
- # <isolated> + 062E + 0645
+ # <isolated> 062E 0645
FC1C ARABIC LIGATURE SEEN WITH JEEM ISOLATED FORM
- # <isolated> + 0633 + 062C
+ # <isolated> 0633 062C
FC1D ARABIC LIGATURE SEEN WITH HAH ISOLATED FORM
- # <isolated> + 0633 + 062D
+ # <isolated> 0633 062D
FC1E ARABIC LIGATURE SEEN WITH KHAH ISOLATED FORM
- # <isolated> + 0633 + 062E
+ # <isolated> 0633 062E
FC1F ARABIC LIGATURE SEEN WITH MEEM ISOLATED FORM
- # <isolated> + 0633 + 0645
+ # <isolated> 0633 0645
FC20 ARABIC LIGATURE SAD WITH HAH ISOLATED FORM
- # <isolated> + 0635 + 062D
+ # <isolated> 0635 062D
FC21 ARABIC LIGATURE SAD WITH MEEM ISOLATED FORM
- # <isolated> + 0635 + 0645
+ # <isolated> 0635 0645
FC22 ARABIC LIGATURE DAD WITH JEEM ISOLATED FORM
- # <isolated> + 0636 + 062C
+ # <isolated> 0636 062C
FC23 ARABIC LIGATURE DAD WITH HAH ISOLATED FORM
- # <isolated> + 0636 + 062D
+ # <isolated> 0636 062D
FC24 ARABIC LIGATURE DAD WITH KHAH ISOLATED FORM
- # <isolated> + 0636 + 062E
+ # <isolated> 0636 062E
FC25 ARABIC LIGATURE DAD WITH MEEM ISOLATED FORM
- # <isolated> + 0636 + 0645
+ # <isolated> 0636 0645
FC26 ARABIC LIGATURE TAH WITH HAH ISOLATED FORM
- # <isolated> + 0637 + 062D
+ # <isolated> 0637 062D
FC27 ARABIC LIGATURE TAH WITH MEEM ISOLATED FORM
- # <isolated> + 0637 + 0645
+ # <isolated> 0637 0645
FC28 ARABIC LIGATURE ZAH WITH MEEM ISOLATED FORM
- # <isolated> + 0638 + 0645
+ # <isolated> 0638 0645
FC29 ARABIC LIGATURE AIN WITH JEEM ISOLATED FORM
- # <isolated> + 0639 + 062C
+ # <isolated> 0639 062C
FC2A ARABIC LIGATURE AIN WITH MEEM ISOLATED FORM
- # <isolated> + 0639 + 0645
+ # <isolated> 0639 0645
FC2B ARABIC LIGATURE GHAIN WITH JEEM ISOLATED FORM
- # <isolated> + 063A + 062C
+ # <isolated> 063A 062C
FC2C ARABIC LIGATURE GHAIN WITH MEEM ISOLATED FORM
- # <isolated> + 063A + 0645
+ # <isolated> 063A 0645
FC2D ARABIC LIGATURE FEH WITH JEEM ISOLATED FORM
- # <isolated> + 0641 + 062C
+ # <isolated> 0641 062C
FC2E ARABIC LIGATURE FEH WITH HAH ISOLATED FORM
- # <isolated> + 0641 + 062D
+ # <isolated> 0641 062D
FC2F ARABIC LIGATURE FEH WITH KHAH ISOLATED FORM
- # <isolated> + 0641 + 062E
+ # <isolated> 0641 062E
FC30 ARABIC LIGATURE FEH WITH MEEM ISOLATED FORM
- # <isolated> + 0641 + 0645
+ # <isolated> 0641 0645
FC31 ARABIC LIGATURE FEH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0641 + 0649
+ # <isolated> 0641 0649
FC32 ARABIC LIGATURE FEH WITH YEH ISOLATED FORM
- # <isolated> + 0641 + 064A
+ # <isolated> 0641 064A
FC33 ARABIC LIGATURE QAF WITH HAH ISOLATED FORM
- # <isolated> + 0642 + 062D
+ # <isolated> 0642 062D
FC34 ARABIC LIGATURE QAF WITH MEEM ISOLATED FORM
- # <isolated> + 0642 + 0645
+ # <isolated> 0642 0645
FC35 ARABIC LIGATURE QAF WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0642 + 0649
+ # <isolated> 0642 0649
FC36 ARABIC LIGATURE QAF WITH YEH ISOLATED FORM
- # <isolated> + 0642 + 064A
+ # <isolated> 0642 064A
FC37 ARABIC LIGATURE KAF WITH ALEF ISOLATED FORM
- # <isolated> + 0643 + 0627
+ # <isolated> 0643 0627
FC38 ARABIC LIGATURE KAF WITH JEEM ISOLATED FORM
- # <isolated> + 0643 + 062C
+ # <isolated> 0643 062C
FC39 ARABIC LIGATURE KAF WITH HAH ISOLATED FORM
- # <isolated> + 0643 + 062D
+ # <isolated> 0643 062D
FC3A ARABIC LIGATURE KAF WITH KHAH ISOLATED FORM
- # <isolated> + 0643 + 062E
+ # <isolated> 0643 062E
FC3B ARABIC LIGATURE KAF WITH LAM ISOLATED FORM
- # <isolated> + 0643 + 0644
+ # <isolated> 0643 0644
FC3C ARABIC LIGATURE KAF WITH MEEM ISOLATED FORM
- # <isolated> + 0643 + 0645
+ # <isolated> 0643 0645
FC3D ARABIC LIGATURE KAF WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0643 + 0649
+ # <isolated> 0643 0649
FC3E ARABIC LIGATURE KAF WITH YEH ISOLATED FORM
- # <isolated> + 0643 + 064A
+ # <isolated> 0643 064A
FC3F ARABIC LIGATURE LAM WITH JEEM ISOLATED FORM
- # <isolated> + 0644 + 062C
+ # <isolated> 0644 062C
FC40 ARABIC LIGATURE LAM WITH HAH ISOLATED FORM
- # <isolated> + 0644 + 062D
+ # <isolated> 0644 062D
FC41 ARABIC LIGATURE LAM WITH KHAH ISOLATED FORM
- # <isolated> + 0644 + 062E
+ # <isolated> 0644 062E
FC42 ARABIC LIGATURE LAM WITH MEEM ISOLATED FORM
- # <isolated> + 0644 + 0645
+ # <isolated> 0644 0645
FC43 ARABIC LIGATURE LAM WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0644 + 0649
+ # <isolated> 0644 0649
FC44 ARABIC LIGATURE LAM WITH YEH ISOLATED FORM
- # <isolated> + 0644 + 064A
+ # <isolated> 0644 064A
FC45 ARABIC LIGATURE MEEM WITH JEEM ISOLATED FORM
- # <isolated> + 0645 + 062C
+ # <isolated> 0645 062C
FC46 ARABIC LIGATURE MEEM WITH HAH ISOLATED FORM
- # <isolated> + 0645 + 062D
+ # <isolated> 0645 062D
FC47 ARABIC LIGATURE MEEM WITH KHAH ISOLATED FORM
- # <isolated> + 0645 + 062E
+ # <isolated> 0645 062E
FC48 ARABIC LIGATURE MEEM WITH MEEM ISOLATED FORM
- # <isolated> + 0645 + 0645
+ # <isolated> 0645 0645
FC49 ARABIC LIGATURE MEEM WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0645 + 0649
+ # <isolated> 0645 0649
FC4A ARABIC LIGATURE MEEM WITH YEH ISOLATED FORM
- # <isolated> + 0645 + 064A
+ # <isolated> 0645 064A
FC4B ARABIC LIGATURE NOON WITH JEEM ISOLATED FORM
- # <isolated> + 0646 + 062C
+ # <isolated> 0646 062C
FC4C ARABIC LIGATURE NOON WITH HAH ISOLATED FORM
- # <isolated> + 0646 + 062D
+ # <isolated> 0646 062D
FC4D ARABIC LIGATURE NOON WITH KHAH ISOLATED FORM
- # <isolated> + 0646 + 062E
+ # <isolated> 0646 062E
FC4E ARABIC LIGATURE NOON WITH MEEM ISOLATED FORM
- # <isolated> + 0646 + 0645
+ # <isolated> 0646 0645
FC4F ARABIC LIGATURE NOON WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0646 + 0649
+ # <isolated> 0646 0649
FC50 ARABIC LIGATURE NOON WITH YEH ISOLATED FORM
- # <isolated> + 0646 + 064A
+ # <isolated> 0646 064A
FC51 ARABIC LIGATURE HEH WITH JEEM ISOLATED FORM
- # <isolated> + 0647 + 062C
+ # <isolated> 0647 062C
FC52 ARABIC LIGATURE HEH WITH MEEM ISOLATED FORM
- # <isolated> + 0647 + 0645
+ # <isolated> 0647 0645
FC53 ARABIC LIGATURE HEH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0647 + 0649
+ # <isolated> 0647 0649
FC54 ARABIC LIGATURE HEH WITH YEH ISOLATED FORM
- # <isolated> + 0647 + 064A
+ # <isolated> 0647 064A
FC55 ARABIC LIGATURE YEH WITH JEEM ISOLATED FORM
- # <isolated> + 064A + 062C
+ # <isolated> 064A 062C
FC56 ARABIC LIGATURE YEH WITH HAH ISOLATED FORM
- # <isolated> + 064A + 062D
+ # <isolated> 064A 062D
FC57 ARABIC LIGATURE YEH WITH KHAH ISOLATED FORM
- # <isolated> + 064A + 062E
+ # <isolated> 064A 062E
FC58 ARABIC LIGATURE YEH WITH MEEM ISOLATED FORM
- # <isolated> + 064A + 0645
+ # <isolated> 064A 0645
FC59 ARABIC LIGATURE YEH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 064A + 0649
+ # <isolated> 064A 0649
FC5A ARABIC LIGATURE YEH WITH YEH ISOLATED FORM
- # <isolated> + 064A + 064A
+ # <isolated> 064A 064A
FC5B ARABIC LIGATURE THAL WITH SUPERSCRIPT ALEF ISOLATED FORM
- # <isolated> + 0630 + 0670
+ # <isolated> 0630 0670
FC5C ARABIC LIGATURE REH WITH SUPERSCRIPT ALEF ISOLATED FORM
- # <isolated> + 0631 + 0670
+ # <isolated> 0631 0670
FC5D ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF ISOLATED FORM
- # <isolated> + 0649 + 0670
+ # <isolated> 0649 0670
FC5E ARABIC LIGATURE SHADDA WITH DAMMATAN ISOLATED FORM
- # <isolated> + 0020 + 0651 + 064C
+ # <isolated> 0020 064C 0651
FC5F ARABIC LIGATURE SHADDA WITH KASRATAN ISOLATED FORM
- # <isolated> + 0020 + 0651 + 064D
+ # <isolated> 0020 064D 0651
FC60 ARABIC LIGATURE SHADDA WITH FATHA ISOLATED FORM
- # <isolated> + 0020 + 0651 + 064E
+ # <isolated> 0020 064E 0651
FC61 ARABIC LIGATURE SHADDA WITH DAMMA ISOLATED FORM
- # <isolated> + 0020 + 0651 + 064F
+ # <isolated> 0020 064F 0651
FC62 ARABIC LIGATURE SHADDA WITH KASRA ISOLATED FORM
- # <isolated> + 0020 + 0651 + 0650
+ # <isolated> 0020 0650 0651
FC63 ARABIC LIGATURE SHADDA WITH SUPERSCRIPT ALEF ISOLATED FORM
- # <isolated> + 0020 + 0651 + 0670
+ # <isolated> 0020 0651 0670
FC64 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH REH FINAL FORM
- # <final> + 0626 + 0631
+ # <final> 0626 0631
FC65 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ZAIN FINAL FORM
- # <final> + 0626 + 0632
+ # <final> 0626 0632
FC66 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM FINAL FORM
- # <final> + 0626 + 0645
+ # <final> 0626 0645
FC67 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH NOON FINAL FORM
- # <final> + 0626 + 0646
+ # <final> 0626 0646
FC68 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM
- # <final> + 0626 + 0649
+ # <final> 0626 0649
FC69 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH FINAL FORM
- # <final> + 0626 + 064A
+ # <final> 0626 064A
FC6A ARABIC LIGATURE BEH WITH REH FINAL FORM
- # <final> + 0628 + 0631
+ # <final> 0628 0631
FC6B ARABIC LIGATURE BEH WITH ZAIN FINAL FORM
- # <final> + 0628 + 0632
+ # <final> 0628 0632
FC6C ARABIC LIGATURE BEH WITH MEEM FINAL FORM
- # <final> + 0628 + 0645
+ # <final> 0628 0645
FC6D ARABIC LIGATURE BEH WITH NOON FINAL FORM
- # <final> + 0628 + 0646
+ # <final> 0628 0646
FC6E ARABIC LIGATURE BEH WITH ALEF MAKSURA FINAL FORM
- # <final> + 0628 + 0649
+ # <final> 0628 0649
FC6F ARABIC LIGATURE BEH WITH YEH FINAL FORM
- # <final> + 0628 + 064A
+ # <final> 0628 064A
FC70 ARABIC LIGATURE TEH WITH REH FINAL FORM
- # <final> + 062A + 0631
+ # <final> 062A 0631
FC71 ARABIC LIGATURE TEH WITH ZAIN FINAL FORM
- # <final> + 062A + 0632
+ # <final> 062A 0632
FC72 ARABIC LIGATURE TEH WITH MEEM FINAL FORM
- # <final> + 062A + 0645
+ # <final> 062A 0645
FC73 ARABIC LIGATURE TEH WITH NOON FINAL FORM
- # <final> + 062A + 0646
+ # <final> 062A 0646
FC74 ARABIC LIGATURE TEH WITH ALEF MAKSURA FINAL FORM
- # <final> + 062A + 0649
+ # <final> 062A 0649
FC75 ARABIC LIGATURE TEH WITH YEH FINAL FORM
- # <final> + 062A + 064A
+ # <final> 062A 064A
FC76 ARABIC LIGATURE THEH WITH REH FINAL FORM
- # <final> + 062B + 0631
+ # <final> 062B 0631
FC77 ARABIC LIGATURE THEH WITH ZAIN FINAL FORM
- # <final> + 062B + 0632
+ # <final> 062B 0632
FC78 ARABIC LIGATURE THEH WITH MEEM FINAL FORM
- # <final> + 062B + 0645
+ # <final> 062B 0645
FC79 ARABIC LIGATURE THEH WITH NOON FINAL FORM
- # <final> + 062B + 0646
+ # <final> 062B 0646
FC7A ARABIC LIGATURE THEH WITH ALEF MAKSURA FINAL FORM
- # <final> + 062B + 0649
+ # <final> 062B 0649
FC7B ARABIC LIGATURE THEH WITH YEH FINAL FORM
- # <final> + 062B + 064A
+ # <final> 062B 064A
FC7C ARABIC LIGATURE FEH WITH ALEF MAKSURA FINAL FORM
- # <final> + 0641 + 0649
+ # <final> 0641 0649
FC7D ARABIC LIGATURE FEH WITH YEH FINAL FORM
- # <final> + 0641 + 064A
+ # <final> 0641 064A
FC7E ARABIC LIGATURE QAF WITH ALEF MAKSURA FINAL FORM
- # <final> + 0642 + 0649
+ # <final> 0642 0649
FC7F ARABIC LIGATURE QAF WITH YEH FINAL FORM
- # <final> + 0642 + 064A
+ # <final> 0642 064A
FC80 ARABIC LIGATURE KAF WITH ALEF FINAL FORM
- # <final> + 0643 + 0627
+ # <final> 0643 0627
FC81 ARABIC LIGATURE KAF WITH LAM FINAL FORM
- # <final> + 0643 + 0644
+ # <final> 0643 0644
FC82 ARABIC LIGATURE KAF WITH MEEM FINAL FORM
- # <final> + 0643 + 0645
+ # <final> 0643 0645
FC83 ARABIC LIGATURE KAF WITH ALEF MAKSURA FINAL FORM
- # <final> + 0643 + 0649
+ # <final> 0643 0649
FC84 ARABIC LIGATURE KAF WITH YEH FINAL FORM
- # <final> + 0643 + 064A
+ # <final> 0643 064A
FC85 ARABIC LIGATURE LAM WITH MEEM FINAL FORM
- # <final> + 0644 + 0645
+ # <final> 0644 0645
FC86 ARABIC LIGATURE LAM WITH ALEF MAKSURA FINAL FORM
- # <final> + 0644 + 0649
+ # <final> 0644 0649
FC87 ARABIC LIGATURE LAM WITH YEH FINAL FORM
- # <final> + 0644 + 064A
+ # <final> 0644 064A
FC88 ARABIC LIGATURE MEEM WITH ALEF FINAL FORM
- # <final> + 0645 + 0627
+ # <final> 0645 0627
FC89 ARABIC LIGATURE MEEM WITH MEEM FINAL FORM
- # <final> + 0645 + 0645
+ # <final> 0645 0645
FC8A ARABIC LIGATURE NOON WITH REH FINAL FORM
- # <final> + 0646 + 0631
+ # <final> 0646 0631
FC8B ARABIC LIGATURE NOON WITH ZAIN FINAL FORM
- # <final> + 0646 + 0632
+ # <final> 0646 0632
FC8C ARABIC LIGATURE NOON WITH MEEM FINAL FORM
- # <final> + 0646 + 0645
+ # <final> 0646 0645
FC8D ARABIC LIGATURE NOON WITH NOON FINAL FORM
- # <final> + 0646 + 0646
+ # <final> 0646 0646
FC8E ARABIC LIGATURE NOON WITH ALEF MAKSURA FINAL FORM
- # <final> + 0646 + 0649
+ # <final> 0646 0649
FC8F ARABIC LIGATURE NOON WITH YEH FINAL FORM
- # <final> + 0646 + 064A
+ # <final> 0646 064A
FC90 ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF FINAL FORM
- # <final> + 0649 + 0670
+ # <final> 0649 0670
FC91 ARABIC LIGATURE YEH WITH REH FINAL FORM
- # <final> + 064A + 0631
+ # <final> 064A 0631
FC92 ARABIC LIGATURE YEH WITH ZAIN FINAL FORM
- # <final> + 064A + 0632
+ # <final> 064A 0632
FC93 ARABIC LIGATURE YEH WITH MEEM FINAL FORM
- # <final> + 064A + 0645
+ # <final> 064A 0645
FC94 ARABIC LIGATURE YEH WITH NOON FINAL FORM
- # <final> + 064A + 0646
+ # <final> 064A 0646
FC95 ARABIC LIGATURE YEH WITH ALEF MAKSURA FINAL FORM
- # <final> + 064A + 0649
+ # <final> 064A 0649
FC96 ARABIC LIGATURE YEH WITH YEH FINAL FORM
- # <final> + 064A + 064A
+ # <final> 064A 064A
FC97 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM INITIAL FORM
- # <initial> + 0626 + 062C
+ # <initial> 0626 062C
FC98 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH INITIAL FORM
- # <initial> + 0626 + 062D
+ # <initial> 0626 062D
FC99 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH KHAH INITIAL FORM
- # <initial> + 0626 + 062E
+ # <initial> 0626 062E
FC9A ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM INITIAL FORM
- # <initial> + 0626 + 0645
+ # <initial> 0626 0645
FC9B ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH INITIAL FORM
- # <initial> + 0626 + 0647
+ # <initial> 0626 0647
FC9C ARABIC LIGATURE BEH WITH JEEM INITIAL FORM
- # <initial> + 0628 + 062C
+ # <initial> 0628 062C
FC9D ARABIC LIGATURE BEH WITH HAH INITIAL FORM
- # <initial> + 0628 + 062D
+ # <initial> 0628 062D
FC9E ARABIC LIGATURE BEH WITH KHAH INITIAL FORM
- # <initial> + 0628 + 062E
+ # <initial> 0628 062E
FC9F ARABIC LIGATURE BEH WITH MEEM INITIAL FORM
- # <initial> + 0628 + 0645
+ # <initial> 0628 0645
FCA0 ARABIC LIGATURE BEH WITH HEH INITIAL FORM
- # <initial> + 0628 + 0647
+ # <initial> 0628 0647
FCA1 ARABIC LIGATURE TEH WITH JEEM INITIAL FORM
- # <initial> + 062A + 062C
+ # <initial> 062A 062C
FCA2 ARABIC LIGATURE TEH WITH HAH INITIAL FORM
- # <initial> + 062A + 062D
+ # <initial> 062A 062D
FCA3 ARABIC LIGATURE TEH WITH KHAH INITIAL FORM
- # <initial> + 062A + 062E
+ # <initial> 062A 062E
FCA4 ARABIC LIGATURE TEH WITH MEEM INITIAL FORM
- # <initial> + 062A + 0645
+ # <initial> 062A 0645
FCA5 ARABIC LIGATURE TEH WITH HEH INITIAL FORM
- # <initial> + 062A + 0647
+ # <initial> 062A 0647
FCA6 ARABIC LIGATURE THEH WITH MEEM INITIAL FORM
- # <initial> + 062B + 0645
+ # <initial> 062B 0645
FCA7 ARABIC LIGATURE JEEM WITH HAH INITIAL FORM
- # <initial> + 062C + 062D
+ # <initial> 062C 062D
FCA8 ARABIC LIGATURE JEEM WITH MEEM INITIAL FORM
- # <initial> + 062C + 0645
+ # <initial> 062C 0645
FCA9 ARABIC LIGATURE HAH WITH JEEM INITIAL FORM
- # <initial> + 062D + 062C
+ # <initial> 062D 062C
FCAA ARABIC LIGATURE HAH WITH MEEM INITIAL FORM
- # <initial> + 062D + 0645
+ # <initial> 062D 0645
FCAB ARABIC LIGATURE KHAH WITH JEEM INITIAL FORM
- # <initial> + 062E + 062C
+ # <initial> 062E 062C
FCAC ARABIC LIGATURE KHAH WITH MEEM INITIAL FORM
- # <initial> + 062E + 0645
+ # <initial> 062E 0645
FCAD ARABIC LIGATURE SEEN WITH JEEM INITIAL FORM
- # <initial> + 0633 + 062C
+ # <initial> 0633 062C
FCAE ARABIC LIGATURE SEEN WITH HAH INITIAL FORM
- # <initial> + 0633 + 062D
+ # <initial> 0633 062D
FCAF ARABIC LIGATURE SEEN WITH KHAH INITIAL FORM
- # <initial> + 0633 + 062E
+ # <initial> 0633 062E
FCB0 ARABIC LIGATURE SEEN WITH MEEM INITIAL FORM
- # <initial> + 0633 + 0645
+ # <initial> 0633 0645
FCB1 ARABIC LIGATURE SAD WITH HAH INITIAL FORM
- # <initial> + 0635 + 062D
+ # <initial> 0635 062D
FCB2 ARABIC LIGATURE SAD WITH KHAH INITIAL FORM
- # <initial> + 0635 + 062E
+ # <initial> 0635 062E
FCB3 ARABIC LIGATURE SAD WITH MEEM INITIAL FORM
- # <initial> + 0635 + 0645
+ # <initial> 0635 0645
FCB4 ARABIC LIGATURE DAD WITH JEEM INITIAL FORM
- # <initial> + 0636 + 062C
+ # <initial> 0636 062C
FCB5 ARABIC LIGATURE DAD WITH HAH INITIAL FORM
- # <initial> + 0636 + 062D
+ # <initial> 0636 062D
FCB6 ARABIC LIGATURE DAD WITH KHAH INITIAL FORM
- # <initial> + 0636 + 062E
+ # <initial> 0636 062E
FCB7 ARABIC LIGATURE DAD WITH MEEM INITIAL FORM
- # <initial> + 0636 + 0645
+ # <initial> 0636 0645
FCB8 ARABIC LIGATURE TAH WITH HAH INITIAL FORM
- # <initial> + 0637 + 062D
+ # <initial> 0637 062D
FCB9 ARABIC LIGATURE ZAH WITH MEEM INITIAL FORM
- # <initial> + 0638 + 0645
+ # <initial> 0638 0645
FCBA ARABIC LIGATURE AIN WITH JEEM INITIAL FORM
- # <initial> + 0639 + 062C
+ # <initial> 0639 062C
FCBB ARABIC LIGATURE AIN WITH MEEM INITIAL FORM
- # <initial> + 0639 + 0645
+ # <initial> 0639 0645
FCBC ARABIC LIGATURE GHAIN WITH JEEM INITIAL FORM
- # <initial> + 063A + 062C
+ # <initial> 063A 062C
FCBD ARABIC LIGATURE GHAIN WITH MEEM INITIAL FORM
- # <initial> + 063A + 0645
+ # <initial> 063A 0645
FCBE ARABIC LIGATURE FEH WITH JEEM INITIAL FORM
- # <initial> + 0641 + 062C
+ # <initial> 0641 062C
FCBF ARABIC LIGATURE FEH WITH HAH INITIAL FORM
- # <initial> + 0641 + 062D
+ # <initial> 0641 062D
FCC0 ARABIC LIGATURE FEH WITH KHAH INITIAL FORM
- # <initial> + 0641 + 062E
+ # <initial> 0641 062E
FCC1 ARABIC LIGATURE FEH WITH MEEM INITIAL FORM
- # <initial> + 0641 + 0645
+ # <initial> 0641 0645
FCC2 ARABIC LIGATURE QAF WITH HAH INITIAL FORM
- # <initial> + 0642 + 062D
+ # <initial> 0642 062D
FCC3 ARABIC LIGATURE QAF WITH MEEM INITIAL FORM
- # <initial> + 0642 + 0645
+ # <initial> 0642 0645
FCC4 ARABIC LIGATURE KAF WITH JEEM INITIAL FORM
- # <initial> + 0643 + 062C
+ # <initial> 0643 062C
FCC5 ARABIC LIGATURE KAF WITH HAH INITIAL FORM
- # <initial> + 0643 + 062D
+ # <initial> 0643 062D
FCC6 ARABIC LIGATURE KAF WITH KHAH INITIAL FORM
- # <initial> + 0643 + 062E
+ # <initial> 0643 062E
FCC7 ARABIC LIGATURE KAF WITH LAM INITIAL FORM
- # <initial> + 0643 + 0644
+ # <initial> 0643 0644
FCC8 ARABIC LIGATURE KAF WITH MEEM INITIAL FORM
- # <initial> + 0643 + 0645
+ # <initial> 0643 0645
FCC9 ARABIC LIGATURE LAM WITH JEEM INITIAL FORM
- # <initial> + 0644 + 062C
+ # <initial> 0644 062C
FCCA ARABIC LIGATURE LAM WITH HAH INITIAL FORM
- # <initial> + 0644 + 062D
+ # <initial> 0644 062D
FCCB ARABIC LIGATURE LAM WITH KHAH INITIAL FORM
- # <initial> + 0644 + 062E
+ # <initial> 0644 062E
FCCC ARABIC LIGATURE LAM WITH MEEM INITIAL FORM
- # <initial> + 0644 + 0645
+ # <initial> 0644 0645
FCCD ARABIC LIGATURE LAM WITH HEH INITIAL FORM
- # <initial> + 0644 + 0647
+ # <initial> 0644 0647
FCCE ARABIC LIGATURE MEEM WITH JEEM INITIAL FORM
- # <initial> + 0645 + 062C
+ # <initial> 0645 062C
FCCF ARABIC LIGATURE MEEM WITH HAH INITIAL FORM
- # <initial> + 0645 + 062D
+ # <initial> 0645 062D
FCD0 ARABIC LIGATURE MEEM WITH KHAH INITIAL FORM
- # <initial> + 0645 + 062E
+ # <initial> 0645 062E
FCD1 ARABIC LIGATURE MEEM WITH MEEM INITIAL FORM
- # <initial> + 0645 + 0645
+ # <initial> 0645 0645
FCD2 ARABIC LIGATURE NOON WITH JEEM INITIAL FORM
- # <initial> + 0646 + 062C
+ # <initial> 0646 062C
FCD3 ARABIC LIGATURE NOON WITH HAH INITIAL FORM
- # <initial> + 0646 + 062D
+ # <initial> 0646 062D
FCD4 ARABIC LIGATURE NOON WITH KHAH INITIAL FORM
- # <initial> + 0646 + 062E
+ # <initial> 0646 062E
FCD5 ARABIC LIGATURE NOON WITH MEEM INITIAL FORM
- # <initial> + 0646 + 0645
+ # <initial> 0646 0645
FCD6 ARABIC LIGATURE NOON WITH HEH INITIAL FORM
- # <initial> + 0646 + 0647
+ # <initial> 0646 0647
FCD7 ARABIC LIGATURE HEH WITH JEEM INITIAL FORM
- # <initial> + 0647 + 062C
+ # <initial> 0647 062C
FCD8 ARABIC LIGATURE HEH WITH MEEM INITIAL FORM
- # <initial> + 0647 + 0645
+ # <initial> 0647 0645
FCD9 ARABIC LIGATURE HEH WITH SUPERSCRIPT ALEF INITIAL FORM
- # <initial> + 0647 + 0670
+ # <initial> 0647 0670
FCDA ARABIC LIGATURE YEH WITH JEEM INITIAL FORM
- # <initial> + 064A + 062C
+ # <initial> 064A 062C
FCDB ARABIC LIGATURE YEH WITH HAH INITIAL FORM
- # <initial> + 064A + 062D
+ # <initial> 064A 062D
FCDC ARABIC LIGATURE YEH WITH KHAH INITIAL FORM
- # <initial> + 064A + 062E
+ # <initial> 064A 062E
FCDD ARABIC LIGATURE YEH WITH MEEM INITIAL FORM
- # <initial> + 064A + 0645
+ # <initial> 064A 0645
FCDE ARABIC LIGATURE YEH WITH HEH INITIAL FORM
- # <initial> + 064A + 0647
+ # <initial> 064A 0647
FCDF ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM MEDIAL FORM
- # <medial> + 0626 + 0645
+ # <medial> 0626 0645
FCE0 ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH MEDIAL FORM
- # <medial> + 0626 + 0647
+ # <medial> 0626 0647
FCE1 ARABIC LIGATURE BEH WITH MEEM MEDIAL FORM
- # <medial> + 0628 + 0645
+ # <medial> 0628 0645
FCE2 ARABIC LIGATURE BEH WITH HEH MEDIAL FORM
- # <medial> + 0628 + 0647
+ # <medial> 0628 0647
FCE3 ARABIC LIGATURE TEH WITH MEEM MEDIAL FORM
- # <medial> + 062A + 0645
+ # <medial> 062A 0645
FCE4 ARABIC LIGATURE TEH WITH HEH MEDIAL FORM
- # <medial> + 062A + 0647
+ # <medial> 062A 0647
FCE5 ARABIC LIGATURE THEH WITH MEEM MEDIAL FORM
- # <medial> + 062B + 0645
+ # <medial> 062B 0645
FCE6 ARABIC LIGATURE THEH WITH HEH MEDIAL FORM
- # <medial> + 062B + 0647
+ # <medial> 062B 0647
FCE7 ARABIC LIGATURE SEEN WITH MEEM MEDIAL FORM
- # <medial> + 0633 + 0645
+ # <medial> 0633 0645
FCE8 ARABIC LIGATURE SEEN WITH HEH MEDIAL FORM
- # <medial> + 0633 + 0647
+ # <medial> 0633 0647
FCE9 ARABIC LIGATURE SHEEN WITH MEEM MEDIAL FORM
- # <medial> + 0634 + 0645
+ # <medial> 0634 0645
FCEA ARABIC LIGATURE SHEEN WITH HEH MEDIAL FORM
- # <medial> + 0634 + 0647
+ # <medial> 0634 0647
FCEB ARABIC LIGATURE KAF WITH LAM MEDIAL FORM
- # <medial> + 0643 + 0644
+ # <medial> 0643 0644
FCEC ARABIC LIGATURE KAF WITH MEEM MEDIAL FORM
- # <medial> + 0643 + 0645
+ # <medial> 0643 0645
FCED ARABIC LIGATURE LAM WITH MEEM MEDIAL FORM
- # <medial> + 0644 + 0645
+ # <medial> 0644 0645
FCEE ARABIC LIGATURE NOON WITH MEEM MEDIAL FORM
- # <medial> + 0646 + 0645
+ # <medial> 0646 0645
FCEF ARABIC LIGATURE NOON WITH HEH MEDIAL FORM
- # <medial> + 0646 + 0647
+ # <medial> 0646 0647
FCF0 ARABIC LIGATURE YEH WITH MEEM MEDIAL FORM
- # <medial> + 064A + 0645
+ # <medial> 064A 0645
FCF1 ARABIC LIGATURE YEH WITH HEH MEDIAL FORM
- # <medial> + 064A + 0647
+ # <medial> 064A 0647
FCF2 ARABIC LIGATURE SHADDA WITH FATHA MEDIAL FORM
- # <medial> + 0020 + 0651 + 064E
+ # <medial> 0640 064E 0651
FCF3 ARABIC LIGATURE SHADDA WITH DAMMA MEDIAL FORM
- # <medial> + 0020 + 0651 + 064F
+ # <medial> 0640 064F 0651
FCF4 ARABIC LIGATURE SHADDA WITH KASRA MEDIAL FORM
- # <medial> + 0020 + 0651 + 0650
+ # <medial> 0640 0650 0651
FCF5 ARABIC LIGATURE TAH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0637 + 0649
+ # <isolated> 0637 0649
FCF6 ARABIC LIGATURE TAH WITH YEH ISOLATED FORM
- # <isolated> + 0637 + 064A
+ # <isolated> 0637 064A
FCF7 ARABIC LIGATURE AIN WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0639 + 0649
+ # <isolated> 0639 0649
FCF8 ARABIC LIGATURE AIN WITH YEH ISOLATED FORM
- # <isolated> + 0639 + 064A
+ # <isolated> 0639 064A
FCF9 ARABIC LIGATURE GHAIN WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 063A + 0649
+ # <isolated> 063A 0649
FCFA ARABIC LIGATURE GHAIN WITH YEH ISOLATED FORM
- # <isolated> + 063A + 064A
+ # <isolated> 063A 064A
FCFB ARABIC LIGATURE SEEN WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0633 + 0649
+ # <isolated> 0633 0649
FCFC ARABIC LIGATURE SEEN WITH YEH ISOLATED FORM
- # <isolated> + 0633 + 064A
+ # <isolated> 0633 064A
FCFD ARABIC LIGATURE SHEEN WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0634 + 0649
+ # <isolated> 0634 0649
FCFE ARABIC LIGATURE SHEEN WITH YEH ISOLATED FORM
- # <isolated> + 0634 + 064A
+ # <isolated> 0634 064A
FCFF ARABIC LIGATURE HAH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 062D + 0649
+ # <isolated> 062D 0649
FD00 ARABIC LIGATURE HAH WITH YEH ISOLATED FORM
- # <isolated> + 062D + 064A
+ # <isolated> 062D 064A
FD01 ARABIC LIGATURE JEEM WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 062C + 0649
+ # <isolated> 062C 0649
FD02 ARABIC LIGATURE JEEM WITH YEH ISOLATED FORM
- # <isolated> + 062C + 064A
+ # <isolated> 062C 064A
FD03 ARABIC LIGATURE KHAH WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 062E + 0649
+ # <isolated> 062E 0649
FD04 ARABIC LIGATURE KHAH WITH YEH ISOLATED FORM
- # <isolated> + 062E + 064A
+ # <isolated> 062E 064A
FD05 ARABIC LIGATURE SAD WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0635 + 0649
+ # <isolated> 0635 0649
FD06 ARABIC LIGATURE SAD WITH YEH ISOLATED FORM
- # <isolated> + 0635 + 064A
+ # <isolated> 0635 064A
FD07 ARABIC LIGATURE DAD WITH ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0636 + 0649
+ # <isolated> 0636 0649
FD08 ARABIC LIGATURE DAD WITH YEH ISOLATED FORM
- # <isolated> + 0636 + 064A
+ # <isolated> 0636 064A
FD09 ARABIC LIGATURE SHEEN WITH JEEM ISOLATED FORM
- # <isolated> + 0634 + 062C
+ # <isolated> 0634 062C
FD0A ARABIC LIGATURE SHEEN WITH HAH ISOLATED FORM
- # <isolated> + 0634 + 062D
+ # <isolated> 0634 062D
FD0B ARABIC LIGATURE SHEEN WITH KHAH ISOLATED FORM
- # <isolated> + 0634 + 062E
+ # <isolated> 0634 062E
FD0C ARABIC LIGATURE SHEEN WITH MEEM ISOLATED FORM
- # <isolated> + 0634 + 0645
+ # <isolated> 0634 0645
FD0D ARABIC LIGATURE SHEEN WITH REH ISOLATED FORM
- # <isolated> + 0634 + 0631
+ # <isolated> 0634 0631
FD0E ARABIC LIGATURE SEEN WITH REH ISOLATED FORM
- # <isolated> + 0633 + 0631
+ # <isolated> 0633 0631
FD0F ARABIC LIGATURE SAD WITH REH ISOLATED FORM
- # <isolated> + 0635 + 0631
+ # <isolated> 0635 0631
FD10 ARABIC LIGATURE DAD WITH REH ISOLATED FORM
- # <isolated> + 0636 + 0631
+ # <isolated> 0636 0631
FD11 ARABIC LIGATURE TAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 0637 + 0649
+ # <final> 0637 0649
FD12 ARABIC LIGATURE TAH WITH YEH FINAL FORM
- # <final> + 0637 + 064A
+ # <final> 0637 064A
FD13 ARABIC LIGATURE AIN WITH ALEF MAKSURA FINAL FORM
- # <final> + 0639 + 0649
+ # <final> 0639 0649
FD14 ARABIC LIGATURE AIN WITH YEH FINAL FORM
- # <final> + 0639 + 064A
+ # <final> 0639 064A
FD15 ARABIC LIGATURE GHAIN WITH ALEF MAKSURA FINAL FORM
- # <final> + 063A + 0649
+ # <final> 063A 0649
FD16 ARABIC LIGATURE GHAIN WITH YEH FINAL FORM
- # <final> + 063A + 064A
+ # <final> 063A 064A
FD17 ARABIC LIGATURE SEEN WITH ALEF MAKSURA FINAL FORM
- # <final> + 0633 + 0649
+ # <final> 0633 0649
FD18 ARABIC LIGATURE SEEN WITH YEH FINAL FORM
- # <final> + 0633 + 064A
+ # <final> 0633 064A
FD19 ARABIC LIGATURE SHEEN WITH ALEF MAKSURA FINAL FORM
- # <final> + 0634 + 0649
+ # <final> 0634 0649
FD1A ARABIC LIGATURE SHEEN WITH YEH FINAL FORM
- # <final> + 0634 + 064A
+ # <final> 0634 064A
FD1B ARABIC LIGATURE HAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 062D + 0649
+ # <final> 062D 0649
FD1C ARABIC LIGATURE HAH WITH YEH FINAL FORM
- # <final> + 062D + 064A
+ # <final> 062D 064A
FD1D ARABIC LIGATURE JEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 062C + 0649
+ # <final> 062C 0649
FD1E ARABIC LIGATURE JEEM WITH YEH FINAL FORM
- # <final> + 062C + 064A
+ # <final> 062C 064A
FD1F ARABIC LIGATURE KHAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 062E + 0649
+ # <final> 062E 0649
FD20 ARABIC LIGATURE KHAH WITH YEH FINAL FORM
- # <final> + 062E + 064A
+ # <final> 062E 064A
FD21 ARABIC LIGATURE SAD WITH ALEF MAKSURA FINAL FORM
- # <final> + 0635 + 0649
+ # <final> 0635 0649
FD22 ARABIC LIGATURE SAD WITH YEH FINAL FORM
- # <final> + 0635 + 064A
+ # <final> 0635 064A
FD23 ARABIC LIGATURE DAD WITH ALEF MAKSURA FINAL FORM
- # <final> + 0636 + 0649
+ # <final> 0636 0649
FD24 ARABIC LIGATURE DAD WITH YEH FINAL FORM
- # <final> + 0636 + 064A
+ # <final> 0636 064A
FD25 ARABIC LIGATURE SHEEN WITH JEEM FINAL FORM
- # <final> + 0634 + 062C
+ # <final> 0634 062C
FD26 ARABIC LIGATURE SHEEN WITH HAH FINAL FORM
- # <final> + 0634 + 062D
+ # <final> 0634 062D
FD27 ARABIC LIGATURE SHEEN WITH KHAH FINAL FORM
- # <final> + 0634 + 062E
+ # <final> 0634 062E
FD28 ARABIC LIGATURE SHEEN WITH MEEM FINAL FORM
- # <final> + 0634 + 0645
+ # <final> 0634 0645
FD29 ARABIC LIGATURE SHEEN WITH REH FINAL FORM
- # <final> + 0634 + 0631
+ # <final> 0634 0631
FD2A ARABIC LIGATURE SEEN WITH REH FINAL FORM
- # <final> + 0633 + 0631
+ # <final> 0633 0631
FD2B ARABIC LIGATURE SAD WITH REH FINAL FORM
- # <final> + 0635 + 0631
+ # <final> 0635 0631
FD2C ARABIC LIGATURE DAD WITH REH FINAL FORM
- # <final> + 0636 + 0631
+ # <final> 0636 0631
FD2D ARABIC LIGATURE SHEEN WITH JEEM INITIAL FORM
- # <initial> + 0634 + 062C
+ # <initial> 0634 062C
FD2E ARABIC LIGATURE SHEEN WITH HAH INITIAL FORM
- # <initial> + 0634 + 062D
+ # <initial> 0634 062D
FD2F ARABIC LIGATURE SHEEN WITH KHAH INITIAL FORM
- # <initial> + 0634 + 062E
+ # <initial> 0634 062E
FD30 ARABIC LIGATURE SHEEN WITH MEEM INITIAL FORM
- # <initial> + 0634 + 0645
+ # <initial> 0634 0645
FD31 ARABIC LIGATURE SEEN WITH HEH INITIAL FORM
- # <initial> + 0633 + 0647
+ # <initial> 0633 0647
FD32 ARABIC LIGATURE SHEEN WITH HEH INITIAL FORM
- # <initial> + 0634 + 0647
+ # <initial> 0634 0647
FD33 ARABIC LIGATURE TAH WITH MEEM INITIAL FORM
- # <initial> + 0637 + 0645
+ # <initial> 0637 0645
FD34 ARABIC LIGATURE SEEN WITH JEEM MEDIAL FORM
- # <medial> + 0633 + 062C
+ # <medial> 0633 062C
FD35 ARABIC LIGATURE SEEN WITH HAH MEDIAL FORM
- # <medial> + 0633 + 062D
+ # <medial> 0633 062D
FD36 ARABIC LIGATURE SEEN WITH KHAH MEDIAL FORM
- # <medial> + 0633 + 062E
+ # <medial> 0633 062E
FD37 ARABIC LIGATURE SHEEN WITH JEEM MEDIAL FORM
- # <medial> + 0634 + 062C
+ # <medial> 0634 062C
FD38 ARABIC LIGATURE SHEEN WITH HAH MEDIAL FORM
- # <medial> + 0634 + 062D
+ # <medial> 0634 062D
FD39 ARABIC LIGATURE SHEEN WITH KHAH MEDIAL FORM
- # <medial> + 0634 + 062E
+ # <medial> 0634 062E
FD3A ARABIC LIGATURE TAH WITH MEEM MEDIAL FORM
- # <medial> + 0637 + 0645
+ # <medial> 0637 0645
FD3B ARABIC LIGATURE ZAH WITH MEEM MEDIAL FORM
- # <medial> + 0638 + 0645
+ # <medial> 0638 0645
FD3C ARABIC LIGATURE ALEF WITH FATHATAN FINAL FORM
- # <final> + 0627 + 064B
+ # <final> 0627 064B
FD3D ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM
- # <isolated> + 0627 + 064B
+ # <isolated> 0627 064B
+@ Punctuation
FD3E ORNATE LEFT PARENTHESIS
FD3F ORNATE RIGHT PARENTHESIS
-FD40 <reserved>
-FD41 <reserved>
-FD42 <reserved>
-FD43 <reserved>
-FD44 <reserved>
-FD45 <reserved>
-FD46 <reserved>
-FD47 <reserved>
-FD48 <reserved>
-FD49 <reserved>
-FD4A <reserved>
-FD4B <reserved>
-FD4C <reserved>
-FD4D <reserved>
-FD4E <reserved>
-FD4F <reserved>
+@ Ligatures (three elements)
FD50 ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM
- # <initial> + 062A + 062C + 0645
+ # <initial> 062A 062C 0645
FD51 ARABIC LIGATURE TEH WITH HAH WITH JEEM FINAL FORM
- # <final> + 062A + 062D + 062C
+ # <final> 062A 062D 062C
FD52 ARABIC LIGATURE TEH WITH HAH WITH JEEM INITIAL FORM
- # <initial> + 062A + 062D + 062C
+ # <initial> 062A 062D 062C
FD53 ARABIC LIGATURE TEH WITH HAH WITH MEEM INITIAL FORM
- # <initial> + 062A + 062D + 0645
+ # <initial> 062A 062D 0645
FD54 ARABIC LIGATURE TEH WITH KHAH WITH MEEM INITIAL FORM
- # <initial> + 062A + 062E + 0645
+ # <initial> 062A 062E 0645
FD55 ARABIC LIGATURE TEH WITH MEEM WITH JEEM INITIAL FORM
- # <initial> + 062A + 0645 + 062C
+ # <initial> 062A 0645 062C
FD56 ARABIC LIGATURE TEH WITH MEEM WITH HAH INITIAL FORM
- # <initial> + 062A + 0645 + 062D
+ # <initial> 062A 0645 062D
FD57 ARABIC LIGATURE TEH WITH MEEM WITH KHAH INITIAL FORM
- # <initial> + 062A + 0645 + 062E
+ # <initial> 062A 0645 062E
FD58 ARABIC LIGATURE JEEM WITH MEEM WITH HAH FINAL FORM
- # <final> + 062C + 0645 + 062D
+ # <final> 062C 0645 062D
FD59 ARABIC LIGATURE JEEM WITH MEEM WITH HAH INITIAL FORM
- # <initial> + 062C + 0645 + 062D
+ # <initial> 062C 0645 062D
FD5A ARABIC LIGATURE HAH WITH MEEM WITH YEH FINAL FORM
- # <final> + 062D + 0645 + 064A
+ # <final> 062D 0645 064A
FD5B ARABIC LIGATURE HAH WITH MEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 062D + 0645 + 0649
+ # <final> 062D 0645 0649
FD5C ARABIC LIGATURE SEEN WITH HAH WITH JEEM INITIAL FORM
- # <initial> + 0633 + 062D + 062C
+ # <initial> 0633 062D 062C
FD5D ARABIC LIGATURE SEEN WITH JEEM WITH HAH INITIAL FORM
- # <initial> + 0633 + 062C + 062D
+ # <initial> 0633 062C 062D
FD5E ARABIC LIGATURE SEEN WITH JEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 0633 + 062C + 0649
+ # <final> 0633 062C 0649
FD5F ARABIC LIGATURE SEEN WITH MEEM WITH HAH FINAL FORM
- # <final> + 0633 + 0645 + 062D
+ # <final> 0633 0645 062D
FD60 ARABIC LIGATURE SEEN WITH MEEM WITH HAH INITIAL FORM
- # <initial> + 0633 + 0645 + 062D
+ # <initial> 0633 0645 062D
FD61 ARABIC LIGATURE SEEN WITH MEEM WITH JEEM INITIAL FORM
- # <initial> + 0633 + 0645 + 062C
+ # <initial> 0633 0645 062C
FD62 ARABIC LIGATURE SEEN WITH MEEM WITH MEEM FINAL FORM
- # <final> + 0633 + 0645 + 0645
+ # <final> 0633 0645 0645
FD63 ARABIC LIGATURE SEEN WITH MEEM WITH MEEM INITIAL FORM
- # <initial> + 0633 + 0645 + 0645
+ # <initial> 0633 0645 0645
FD64 ARABIC LIGATURE SAD WITH HAH WITH HAH FINAL FORM
- # <final> + 0635 + 062D + 062D
+ # <final> 0635 062D 062D
FD65 ARABIC LIGATURE SAD WITH HAH WITH HAH INITIAL FORM
- # <initial> + 0635 + 062D + 062D
+ # <initial> 0635 062D 062D
FD66 ARABIC LIGATURE SAD WITH MEEM WITH MEEM FINAL FORM
- # <final> + 0635 + 0645 + 0645
+ # <final> 0635 0645 0645
FD67 ARABIC LIGATURE SHEEN WITH HAH WITH MEEM FINAL FORM
- # <final> + 0634 + 062D + 0645
+ # <final> 0634 062D 0645
FD68 ARABIC LIGATURE SHEEN WITH HAH WITH MEEM INITIAL FORM
- # <initial> + 0634 + 062D + 0645
+ # <initial> 0634 062D 0645
FD69 ARABIC LIGATURE SHEEN WITH JEEM WITH YEH FINAL FORM
- # <final> + 0634 + 062C + 064A
+ # <final> 0634 062C 064A
FD6A ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH FINAL FORM
- # <final> + 0634 + 0645 + 062E
+ # <final> 0634 0645 062E
FD6B ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH INITIAL FORM
- # <initial> + 0634 + 0645 + 062E
+ # <initial> 0634 0645 062E
FD6C ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM FINAL FORM
- # <final> + 0634 + 0645 + 0645
+ # <final> 0634 0645 0645
FD6D ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM INITIAL FORM
- # <initial> + 0634 + 0645 + 0645
+ # <initial> 0634 0645 0645
FD6E ARABIC LIGATURE DAD WITH HAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 0636 + 062D + 0649
+ # <final> 0636 062D 0649
FD6F ARABIC LIGATURE DAD WITH KHAH WITH MEEM FINAL FORM
- # <final> + 0636 + 062E + 0645
+ # <final> 0636 062E 0645
FD70 ARABIC LIGATURE DAD WITH KHAH WITH MEEM INITIAL FORM
- # <initial> + 0636 + 062E + 0645
+ # <initial> 0636 062E 0645
FD71 ARABIC LIGATURE TAH WITH MEEM WITH HAH FINAL FORM
- # <final> + 0637 + 0645 + 062D
+ # <final> 0637 0645 062D
FD72 ARABIC LIGATURE TAH WITH MEEM WITH HAH INITIAL FORM
- # <initial> + 0637 + 0645 + 062D
+ # <initial> 0637 0645 062D
FD73 ARABIC LIGATURE TAH WITH MEEM WITH MEEM INITIAL FORM
- # <initial> + 0637 + 0645 + 0645
+ # <initial> 0637 0645 0645
FD74 ARABIC LIGATURE TAH WITH MEEM WITH YEH FINAL FORM
- # <final> + 0637 + 0645 + 064A
+ # <final> 0637 0645 064A
FD75 ARABIC LIGATURE AIN WITH JEEM WITH MEEM FINAL FORM
- # <final> + 0639 + 062C + 0645
+ # <final> 0639 062C 0645
FD76 ARABIC LIGATURE AIN WITH MEEM WITH MEEM FINAL FORM
- # <final> + 0639 + 0645 + 0645
+ # <final> 0639 0645 0645
FD77 ARABIC LIGATURE AIN WITH MEEM WITH MEEM INITIAL FORM
- # <initial> + 0639 + 0645 + 0645
+ # <initial> 0639 0645 0645
FD78 ARABIC LIGATURE AIN WITH MEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 0639 + 0645 + 0649
+ # <final> 0639 0645 0649
FD79 ARABIC LIGATURE GHAIN WITH MEEM WITH MEEM FINAL FORM
- # <final> + 063A + 0645 + 0645
+ # <final> 063A 0645 0645
FD7A ARABIC LIGATURE GHAIN WITH MEEM WITH YEH FINAL FORM
- # <final> + 063A + 0645 + 064A
+ # <final> 063A 0645 064A
FD7B ARABIC LIGATURE GHAIN WITH MEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 063A + 0645 + 0649
+ # <final> 063A 0645 0649
FD7C ARABIC LIGATURE FEH WITH KHAH WITH MEEM FINAL FORM
- # <final> + 0641 + 062E + 0645
+ # <final> 0641 062E 0645
FD7D ARABIC LIGATURE FEH WITH KHAH WITH MEEM INITIAL FORM
- # <initial> + 0641 + 062E + 0645
+ # <initial> 0641 062E 0645
FD7E ARABIC LIGATURE QAF WITH MEEM WITH HAH FINAL FORM
- # <final> + 0642 + 0645 + 062D
+ # <final> 0642 0645 062D
FD7F ARABIC LIGATURE QAF WITH MEEM WITH MEEM FINAL FORM
- # <final> + 0642 + 0645 + 0645
+ # <final> 0642 0645 0645
FD80 ARABIC LIGATURE LAM WITH HAH WITH MEEM FINAL FORM
- # <final> + 0644 + 062D + 0645
+ # <final> 0644 062D 0645
FD81 ARABIC LIGATURE LAM WITH HAH WITH YEH FINAL FORM
- # <final> + 0644 + 062D + 064A
+ # <final> 0644 062D 064A
FD82 ARABIC LIGATURE LAM WITH HAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 0644 + 062D + 0649
+ # <final> 0644 062D 0649
FD83 ARABIC LIGATURE LAM WITH JEEM WITH JEEM INITIAL FORM
- # <initial> + 0644 + 062C + 062C
+ # <initial> 0644 062C 062C
FD84 ARABIC LIGATURE LAM WITH JEEM WITH JEEM FINAL FORM
- # <final> + 0644 + 062C + 062C
+ # <final> 0644 062C 062C
FD85 ARABIC LIGATURE LAM WITH KHAH WITH MEEM FINAL FORM
- # <final> + 0644 + 062E + 0645
+ # <final> 0644 062E 0645
FD86 ARABIC LIGATURE LAM WITH KHAH WITH MEEM INITIAL FORM
- # <initial> + 0644 + 062E + 0645
+ # <initial> 0644 062E 0645
FD87 ARABIC LIGATURE LAM WITH MEEM WITH HAH FINAL FORM
- # <final> + 0644 + 0645 + 062D
+ # <final> 0644 0645 062D
FD88 ARABIC LIGATURE LAM WITH MEEM WITH HAH INITIAL FORM
- # <initial> + 0644 + 0645 + 062D
+ # <initial> 0644 0645 062D
FD89 ARABIC LIGATURE MEEM WITH HAH WITH JEEM INITIAL FORM
- # <initial> + 0645 + 062D + 062C
+ # <initial> 0645 062D 062C
FD8A ARABIC LIGATURE MEEM WITH HAH WITH MEEM INITIAL FORM
- # <initial> + 0645 + 062D + 0645
+ # <initial> 0645 062D 0645
FD8B ARABIC LIGATURE MEEM WITH HAH WITH YEH FINAL FORM
- # <final> + 0645 + 062D + 064A
+ # <final> 0645 062D 064A
FD8C ARABIC LIGATURE MEEM WITH JEEM WITH HAH INITIAL FORM
- # <initial> + 0645 + 062C + 062D
+ # <initial> 0645 062C 062D
FD8D ARABIC LIGATURE MEEM WITH JEEM WITH MEEM INITIAL FORM
- # <initial> + 0645 + 062C + 0645
+ # <initial> 0645 062C 0645
FD8E ARABIC LIGATURE MEEM WITH KHAH WITH JEEM INITIAL FORM
- # <initial> + 0645 + 062E + 062C
+ # <initial> 0645 062E 062C
FD8F ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM
- # <initial> + 0645 + 062E + 0645
-FD90 <reserved>
-FD91 <reserved>
+ # <initial> 0645 062E 0645
FD92 ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM
- # <initial> + 0645 + 062C + 062E
+ # <initial> 0645 062C 062E
FD93 ARABIC LIGATURE HEH WITH MEEM WITH JEEM INITIAL FORM
- # <initial> + 0647 + 0645 + 062C
+ # <initial> 0647 0645 062C
FD94 ARABIC LIGATURE HEH WITH MEEM WITH MEEM INITIAL FORM
- # <initial> + 0647 + 0645 + 0645
+ # <initial> 0647 0645 0645
FD95 ARABIC LIGATURE NOON WITH HAH WITH MEEM INITIAL FORM
- # <initial> + 0646 + 062D + 0645
+ # <initial> 0646 062D 0645
FD96 ARABIC LIGATURE NOON WITH HAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 0646 + 062D + 0649
+ # <final> 0646 062D 0649
FD97 ARABIC LIGATURE NOON WITH JEEM WITH MEEM FINAL FORM
- # <final> + 0646 + 062C + 0645
+ # <final> 0646 062C 0645
FD98 ARABIC LIGATURE NOON WITH JEEM WITH MEEM INITIAL FORM
- # <initial> + 0646 + 062C + 0645
+ # <initial> 0646 062C 0645
FD99 ARABIC LIGATURE NOON WITH JEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 0646 + 062C + 0649
+ # <final> 0646 062C 0649
FD9A ARABIC LIGATURE NOON WITH MEEM WITH YEH FINAL FORM
- # <final> + 0646 + 0645 + 064A
+ # <final> 0646 0645 064A
FD9B ARABIC LIGATURE NOON WITH MEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 0646 + 0645 + 0649
+ # <final> 0646 0645 0649
FD9C ARABIC LIGATURE YEH WITH MEEM WITH MEEM FINAL FORM
- # <final> + 064A + 0645 + 0645
+ # <final> 064A 0645 0645
FD9D ARABIC LIGATURE YEH WITH MEEM WITH MEEM INITIAL FORM
- # <initial> + 064A + 0645 + 0645
+ # <initial> 064A 0645 0645
FD9E ARABIC LIGATURE BEH WITH KHAH WITH YEH FINAL FORM
- # <final> + 0628 + 062E + 064A
+ # <final> 0628 062E 064A
FD9F ARABIC LIGATURE TEH WITH JEEM WITH YEH FINAL FORM
- # <final> + 062A + 062C + 064A
+ # <final> 062A 062C 064A
FDA0 ARABIC LIGATURE TEH WITH JEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 062A + 062C + 0649
+ # <final> 062A 062C 0649
FDA1 ARABIC LIGATURE TEH WITH KHAH WITH YEH FINAL FORM
- # <final> + 062A + 062E + 064A
+ # <final> 062A 062E 064A
FDA2 ARABIC LIGATURE TEH WITH KHAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 062A + 062E + 0649
+ # <final> 062A 062E 0649
FDA3 ARABIC LIGATURE TEH WITH MEEM WITH YEH FINAL FORM
- # <final> + 062A + 0645 + 064A
+ # <final> 062A 0645 064A
FDA4 ARABIC LIGATURE TEH WITH MEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 062A + 0645 + 0649
+ # <final> 062A 0645 0649
FDA5 ARABIC LIGATURE JEEM WITH MEEM WITH YEH FINAL FORM
- # <final> + 062C + 0645 + 064A
+ # <final> 062C 0645 064A
FDA6 ARABIC LIGATURE JEEM WITH HAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 062C + 062D + 0649
+ # <final> 062C 062D 0649
FDA7 ARABIC LIGATURE JEEM WITH MEEM WITH ALEF MAKSURA FINAL FORM
- # <final> + 062C + 0645 + 0649
+ # <final> 062C 0645 0649
FDA8 ARABIC LIGATURE SEEN WITH KHAH WITH ALEF MAKSURA FINAL FORM
- # <final> + 0633 + 062E + 0649
+ # <final> 0633 062E 0649
FDA9 ARABIC LIGATURE SAD WITH HAH WITH YEH FINAL FORM
- # <final> + 0635 + 062D + 064A
+ # <final> 0635 062D 064A
FDAA ARABIC LIGATURE SHEEN WITH HAH WITH YEH FINAL FORM
- # <final> + 0634 + 062D + 064A
+ # <final> 0634 062D 064A
FDAB ARABIC LIGATURE DAD WITH HAH WITH YEH FINAL FORM
- # <final> + 0636 + 062D + 064A
+ # <final> 0636 062D 064A
FDAC ARABIC LIGATURE LAM WITH JEEM WITH YEH FINAL FORM
- # <final> + 0644 + 062C + 064A
+ # <final> 0644 062C 064A
FDAD ARABIC LIGATURE LAM WITH MEEM WITH YEH FINAL FORM
- # <final> + 0644 + 0645 + 064A
+ # <final> 0644 0645 064A
FDAE ARABIC LIGATURE YEH WITH HAH WITH YEH FINAL FORM
- # <final> + 064A + 062D + 064A
+ # <final> 064A 062D 064A
FDAF ARABIC LIGATURE YEH WITH JEEM WITH YEH FINAL FORM
- # <final> + 064A + 062C + 064A
+ # <final> 064A 062C 064A
FDB0 ARABIC LIGATURE YEH WITH MEEM WITH YEH FINAL FORM
- # <final> + 064A + 0645 + 064A
+ # <final> 064A 0645 064A
FDB1 ARABIC LIGATURE MEEM WITH MEEM WITH YEH FINAL FORM
- # <final> + 0645 + 0645 + 064A
+ # <final> 0645 0645 064A
FDB2 ARABIC LIGATURE QAF WITH MEEM WITH YEH FINAL FORM
- # <final> + 0642 + 0645 + 064A
+ # <final> 0642 0645 064A
FDB3 ARABIC LIGATURE NOON WITH HAH WITH YEH FINAL FORM
- # <final> + 0646 + 062D + 064A
+ # <final> 0646 062D 064A
FDB4 ARABIC LIGATURE QAF WITH MEEM WITH HAH INITIAL FORM
- # <initial> + 0642 + 0645 + 062D
+ # <initial> 0642 0645 062D
FDB5 ARABIC LIGATURE LAM WITH HAH WITH MEEM INITIAL FORM
- # <initial> + 0644 + 062D + 0645
+ # <initial> 0644 062D 0645
FDB6 ARABIC LIGATURE AIN WITH MEEM WITH YEH FINAL FORM
- # <final> + 0639 + 0645 + 064A
+ # <final> 0639 0645 064A
FDB7 ARABIC LIGATURE KAF WITH MEEM WITH YEH FINAL FORM
- # <final> + 0643 + 0645 + 064A
+ # <final> 0643 0645 064A
FDB8 ARABIC LIGATURE NOON WITH JEEM WITH HAH INITIAL FORM
- # <initial> + 0646 + 062C + 062D
+ # <initial> 0646 062C 062D
FDB9 ARABIC LIGATURE MEEM WITH KHAH WITH YEH FINAL FORM
- # <final> + 0645 + 062E + 064A
+ # <final> 0645 062E 064A
FDBA ARABIC LIGATURE LAM WITH JEEM WITH MEEM INITIAL FORM
- # <initial> + 0644 + 062C + 0645
+ # <initial> 0644 062C 0645
FDBB ARABIC LIGATURE KAF WITH MEEM WITH MEEM FINAL FORM
- # <final> + 0643 + 0645 + 0645
+ # <final> 0643 0645 0645
FDBC ARABIC LIGATURE LAM WITH JEEM WITH MEEM FINAL FORM
- # <final> + 0644 + 062C + 0645
+ # <final> 0644 062C 0645
FDBD ARABIC LIGATURE NOON WITH JEEM WITH HAH FINAL FORM
- # <final> + 0646 + 062C + 062D
+ # <final> 0646 062C 062D
FDBE ARABIC LIGATURE JEEM WITH HAH WITH YEH FINAL FORM
- # <final> + 062C + 062D + 064A
+ # <final> 062C 062D 064A
FDBF ARABIC LIGATURE HAH WITH JEEM WITH YEH FINAL FORM
- # <final> + 062D + 062C + 064A
+ # <final> 062D 062C 064A
FDC0 ARABIC LIGATURE MEEM WITH JEEM WITH YEH FINAL FORM
- # <final> + 0645 + 062C + 064A
+ # <final> 0645 062C 064A
FDC1 ARABIC LIGATURE FEH WITH MEEM WITH YEH FINAL FORM
- # <final> + 0641 + 0645 + 064A
+ # <final> 0641 0645 064A
FDC2 ARABIC LIGATURE BEH WITH HAH WITH YEH FINAL FORM
- # <final> + 0628 + 062D + 064A
+ # <final> 0628 062D 064A
FDC3 ARABIC LIGATURE KAF WITH MEEM WITH MEEM INITIAL FORM
- # <initial> + 0643 + 0645 + 0645
+ # <initial> 0643 0645 0645
FDC4 ARABIC LIGATURE AIN WITH JEEM WITH MEEM INITIAL FORM
- # <initial> + 0639 + 062C + 0645
+ # <initial> 0639 062C 0645
FDC5 ARABIC LIGATURE SAD WITH MEEM WITH MEEM INITIAL FORM
- # <initial> + 0635 + 0645 + 0645
+ # <initial> 0635 0645 0645
FDC6 ARABIC LIGATURE SEEN WITH KHAH WITH YEH FINAL FORM
- # <final> + 0633 + 062E + 064A
+ # <final> 0633 062E 064A
FDC7 ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM
- # <final> + 0646 + 062C + 064A
-FDC8 <reserved>
-FDC9 <reserved>
-FDCA <reserved>
-FDCB <reserved>
-FDCC <reserved>
-FDCD <reserved>
-FDCE <reserved>
-FDCF <reserved>
-FDD0 <reserved>
-FDD1 <reserved>
-FDD2 <reserved>
-FDD3 <reserved>
-FDD4 <reserved>
-FDD5 <reserved>
-FDD6 <reserved>
-FDD7 <reserved>
-FDD8 <reserved>
-FDD9 <reserved>
-FDDA <reserved>
-FDDB <reserved>
-FDDC <reserved>
-FDDD <reserved>
-FDDE <reserved>
-FDDF <reserved>
-FDE0 <reserved>
-FDE1 <reserved>
-FDE2 <reserved>
-FDE3 <reserved>
-FDE4 <reserved>
-FDE5 <reserved>
-FDE6 <reserved>
-FDE7 <reserved>
-FDE8 <reserved>
-FDE9 <reserved>
-FDEA <reserved>
-FDEB <reserved>
-FDEC <reserved>
-FDED <reserved>
-FDEE <reserved>
-FDEF <reserved>
+ # <final> 0646 062C 064A
+@ Word ligatures
FDF0 ARABIC LIGATURE SALLA USED AS KORANIC STOP SIGN ISOLATED FORM
- # <isolated> + 0635 + 0644 + 06D2
+ # <isolated> 0635 0644 06D2
FDF1 ARABIC LIGATURE QALA USED AS KORANIC STOP SIGN ISOLATED FORM
- # <isolated> + 0642 + 0644 + 06D2
+ # <isolated> 0642 0644 06D2
FDF2 ARABIC LIGATURE ALLAH ISOLATED FORM
- # <isolated> + 0627 + 0644 + 0644 + 0647
+ # <isolated> 0627 0644 0644 0647
FDF3 ARABIC LIGATURE AKBAR ISOLATED FORM
- # <isolated> + 0627 + 0643 + 0628 + 0631
+ # <isolated> 0627 0643 0628 0631
FDF4 ARABIC LIGATURE MOHAMMAD ISOLATED FORM
- # <isolated> + 0645 + 062D + 0645 + 062F
+ # <isolated> 0645 062D 0645 062F
FDF5 ARABIC LIGATURE SALAM ISOLATED FORM
- # <isolated> + 0635 + 0644 + 0639 + 0645
+ # <isolated> 0635 0644 0639 0645
FDF6 ARABIC LIGATURE RASOUL ISOLATED FORM
- # <isolated> + 0631 + 0633 + 0648 + 0644
+ # <isolated> 0631 0633 0648 0644
FDF7 ARABIC LIGATURE ALAYHE ISOLATED FORM
- # <isolated> + 0639 + 0644 + 064A + 0647
+ # <isolated> 0639 0644 064A 0647
FDF8 ARABIC LIGATURE WASALLAM ISOLATED FORM
- # <isolated> + 0648 + 0633 + 0644 + 0645
+ # <isolated> 0648 0633 0644 0645
FDF9 ARABIC LIGATURE SALLA ISOLATED FORM
- # <isolated> + 0635 + 0644 + 0649
+ # <isolated> 0635 0644 0649
FDFA ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM
- # <isolated> + 0635 + 0644 + 0649 + 0020 + 0627 + 0644 + 0644 + 0647 + 0020 + 0639 + 0644 + 064A + 0647 + 0020 + 0648 + 0633 + 0644 + 0645
+ # <isolated> 0635 0644 0649 0020 0627 0644 0644 0647 0020 0639 0644 064A 0647 0020 0648 0633 0644 0645
FDFB ARABIC LIGATURE JALLAJALALOUHOU
- # <isolated> + 062C + 0644 + 0020 + 062C + 0644 + 0627 + 0644 + 0647
+ # <isolated> 062C 0644 0020 062C 0644 0627 0644 0647
@@ FE20 Combining Half Marks FE2F
@ Combining half marks
FE20 COMBINING LIGATURE LEFT HALF
@@ -11998,901 +16386,882 @@ FE23 COMBINING DOUBLE TILDE RIGHT HALF
@@ FE30 CJK Compatibility Forms FE4F
@ Glyphs for vertical variants
FE30 PRESENTATION FORM FOR VERTICAL TWO DOT LEADER
- # <vertical> + 2025
+ # <vertical> 2025
FE31 PRESENTATION FORM FOR VERTICAL EM DASH
- # <vertical> + 2014
+ # <vertical> 2014
FE32 PRESENTATION FORM FOR VERTICAL EN DASH
- # <vertical> + 2013
+ # <vertical> 2013
FE33 PRESENTATION FORM FOR VERTICAL LOW LINE
- # <vertical> + 005F
+ # <vertical> 005F
FE34 PRESENTATION FORM FOR VERTICAL WAVY LOW LINE
- # <vertical> + 005F
+ # <vertical> 005F
FE35 PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS
- # <vertical> + 0028
+ # <vertical> 0028
FE36 PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS
- # <vertical> + 0029
+ # <vertical> 0029
FE37 PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET
- # <vertical> + 007B
+ # <vertical> 007B
FE38 PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET
- # <vertical> + 007D
+ # <vertical> 007D
FE39 PRESENTATION FORM FOR VERTICAL LEFT TORTOISE SHELL BRACKET
- # <vertical> + 3014
+ # <vertical> 3014
FE3A PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET
- # <vertical> + 3015
+ # <vertical> 3015
FE3B PRESENTATION FORM FOR VERTICAL LEFT BLACK LENTICULAR BRACKET
- # <vertical> + 3010
+ # <vertical> 3010
FE3C PRESENTATION FORM FOR VERTICAL RIGHT BLACK LENTICULAR BRACKET
- # <vertical> + 3011
+ # <vertical> 3011
FE3D PRESENTATION FORM FOR VERTICAL LEFT DOUBLE ANGLE BRACKET
- # <vertical> + 300A
+ # <vertical> 300A
FE3E PRESENTATION FORM FOR VERTICAL RIGHT DOUBLE ANGLE BRACKET
- # <vertical> + 300B
+ # <vertical> 300B
FE3F PRESENTATION FORM FOR VERTICAL LEFT ANGLE BRACKET
- # <vertical> + 3008
+ # <vertical> 3008
FE40 PRESENTATION FORM FOR VERTICAL RIGHT ANGLE BRACKET
- # <vertical> + 3009
+ # <vertical> 3009
FE41 PRESENTATION FORM FOR VERTICAL LEFT CORNER BRACKET
- # <vertical> + 300C
+ # <vertical> 300C
FE42 PRESENTATION FORM FOR VERTICAL RIGHT CORNER BRACKET
- # <vertical> + 300D
+ # <vertical> 300D
FE43 PRESENTATION FORM FOR VERTICAL LEFT WHITE CORNER BRACKET
- # <vertical> + 300E
+ # <vertical> 300E
FE44 PRESENTATION FORM FOR VERTICAL RIGHT WHITE CORNER BRACKET
- # <vertical> + 300F
-FE45 <reserved>
-FE46 <reserved>
-FE47 <reserved>
-FE48 <reserved>
+ # <vertical> 300F
@ Overscores and underscores
FE49 DASHED OVERLINE
- # 203E
+ # 203E overline
FE4A CENTRELINE OVERLINE
- # 203E
+ # 203E overline
FE4B WAVY OVERLINE
- # 203E
+ # 203E overline
FE4C DOUBLE WAVY OVERLINE
- # 203E
+ # 203E overline
FE4D DASHED LOW LINE
- # 005F
+ # 005F low line
FE4E CENTRELINE LOW LINE
- # 005F
+ # 005F low line
FE4F WAVY LOW LINE
- # 005F
+ # 005F low line
@@ FE50 Small Form Variants FE6F
@ Small form variants
FE50 SMALL COMMA
- # <small> + 002C
+ # <small> 002C
FE51 SMALL IDEOGRAPHIC COMMA
- # <small> + 3001
+ # <small> 3001
FE52 SMALL FULL STOP
- # <small> + 002E
+ # <small> 002E
FE53 <reserved>
x (middle dot - 00B7)
FE54 SMALL SEMICOLON
- # <small> + 003B
+ # <small> 003B
FE55 SMALL COLON
- # <small> + 003A
+ # <small> 003A
FE56 SMALL QUESTION MARK
- # <small> + 003F
+ # <small> 003F
FE57 SMALL EXCLAMATION MARK
- # <small> + 0021
+ # <small> 0021
FE58 SMALL EM DASH
- # <small> + 2014
+ # <small> 2014
FE59 SMALL LEFT PARENTHESIS
- # <small> + 0028
+ # <small> 0028
FE5A SMALL RIGHT PARENTHESIS
- # <small> + 0029
+ # <small> 0029
FE5B SMALL LEFT CURLY BRACKET
- # <small> + 007B
+ # <small> 007B
FE5C SMALL RIGHT CURLY BRACKET
- # <small> + 007D
+ # <small> 007D
FE5D SMALL LEFT TORTOISE SHELL BRACKET
- # <small> + 3014
+ # <small> 3014
FE5E SMALL RIGHT TORTOISE SHELL BRACKET
- # <small> + 3015
+ # <small> 3015
FE5F SMALL NUMBER SIGN
- # <small> + 0023
+ # <small> 0023
FE60 SMALL AMPERSAND
- # <small> + 0026
+ # <small> 0026
FE61 SMALL ASTERISK
- # <small> + 002A
+ # <small> 002A
FE62 SMALL PLUS SIGN
- # <small> + 002B
+ # <small> 002B
FE63 SMALL HYPHEN-MINUS
- # <small> + 002D
+ # <small> 002D
FE64 SMALL LESS-THAN SIGN
- # <small> + 003C
+ # <small> 003C
FE65 SMALL GREATER-THAN SIGN
- # <small> + 003E
+ # <small> 003E
FE66 SMALL EQUALS SIGN
- # <small> + 003D
+ # <small> 003D
FE67 <reserved>
x (division slash - 2215)
FE68 SMALL REVERSE SOLIDUS
- # <small> + 005C
+ # <small> 005C
FE69 SMALL DOLLAR SIGN
- # <small> + 0024
+ # <small> 0024
FE6A SMALL PERCENT SIGN
- # <small> + 0025
+ # <small> 0025
FE6B SMALL COMMERCIAL AT
- # <small> + 0040
+ # <small> 0040
@@ FE70 Arabic Presentation Forms-B FEFF
@ Glyphs for spacing forms of Arabic points
FE70 ARABIC FATHATAN ISOLATED FORM
- # <isolated> + 0020 + 064B
+ # <isolated> 0020 064B
FE71 ARABIC TATWEEL WITH FATHATAN ABOVE
- # <medial> + 0640 + 064B
+ # <medial> 0640 064B
FE72 ARABIC DAMMATAN ISOLATED FORM
- # <isolated> + 0020 + 064C
-FE73 <reserved>
+ # <isolated> 0020 064C
FE74 ARABIC KASRATAN ISOLATED FORM
- # <isolated> + 0020 + 064D
-FE75 <reserved>
+ # <isolated> 0020 064D
FE76 ARABIC FATHA ISOLATED FORM
- # <isolated> + 0020 + 064E
+ # <isolated> 0020 064E
FE77 ARABIC FATHA MEDIAL FORM
- # <medial> + 0640 + 064E
+ # <medial> 0640 064E
FE78 ARABIC DAMMA ISOLATED FORM
- # <isolated> + 0020 + 064F
+ # <isolated> 0020 064F
FE79 ARABIC DAMMA MEDIAL FORM
- # <medial> + 0640 + 064F
+ # <medial> 0640 064F
FE7A ARABIC KASRA ISOLATED FORM
- # <isolated> + 0020 + 0650
+ # <isolated> 0020 0650
FE7B ARABIC KASRA MEDIAL FORM
- # <medial> + 0640 + 0650
+ # <medial> 0640 0650
FE7C ARABIC SHADDA ISOLATED FORM
- # <isolated> + 0020 + 0651
+ # <isolated> 0020 0651
FE7D ARABIC SHADDA MEDIAL FORM
- # <medial> + 0640 + 0651
+ # <medial> 0640 0651
FE7E ARABIC SUKUN ISOLATED FORM
- # <isolated> + 0020 + 0652
+ # <isolated> 0020 0652
FE7F ARABIC SUKUN MEDIAL FORM
- # <medial> + 0640 + 0652
+ # <medial> 0640 0652
@ Basic glyphs for Arabic language contextual forms
FE80 ARABIC LETTER HAMZA ISOLATED FORM
- # <isolated> + 0621
+ # <isolated> 0621
FE81 ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM
- # <isolated> + 0622
+ # <isolated> 0622
FE82 ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM
- # <final> + 0622
+ # <final> 0622
FE83 ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM
- # <isolated> + 0623
+ # <isolated> 0623
FE84 ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM
- # <final> + 0623
+ # <final> 0623
FE85 ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM
- # <isolated> + 0624
+ # <isolated> 0624
FE86 ARABIC LETTER WAW WITH HAMZA ABOVE FINAL FORM
- # <final> + 0624
+ # <final> 0624
FE87 ARABIC LETTER ALEF WITH HAMZA BELOW ISOLATED FORM
- # <isolated> + 0625
+ # <isolated> 0625
FE88 ARABIC LETTER ALEF WITH HAMZA BELOW FINAL FORM
- # <final> + 0625
+ # <final> 0625
FE89 ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM
- # <isolated> + 0626
+ # <isolated> 0626
FE8A ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM
- # <final> + 0626
+ # <final> 0626
FE8B ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM
- # <initial> + 0626
+ # <initial> 0626
FE8C ARABIC LETTER YEH WITH HAMZA ABOVE MEDIAL FORM
- # <medial> + 0626
+ # <medial> 0626
FE8D ARABIC LETTER ALEF ISOLATED FORM
- # <isolated> + 0627
+ # <isolated> 0627
FE8E ARABIC LETTER ALEF FINAL FORM
- # <final> + 0627
+ # <final> 0627
FE8F ARABIC LETTER BEH ISOLATED FORM
- # <isolated> + 0628
+ # <isolated> 0628
FE90 ARABIC LETTER BEH FINAL FORM
- # <final> + 0628
+ # <final> 0628
FE91 ARABIC LETTER BEH INITIAL FORM
- # <initial> + 0628
+ # <initial> 0628
FE92 ARABIC LETTER BEH MEDIAL FORM
- # <medial> + 0628
+ # <medial> 0628
FE93 ARABIC LETTER TEH MARBUTA ISOLATED FORM
- # <isolated> + 0629
+ # <isolated> 0629
FE94 ARABIC LETTER TEH MARBUTA FINAL FORM
- # <final> + 0629
+ # <final> 0629
FE95 ARABIC LETTER TEH ISOLATED FORM
- # <isolated> + 062A
+ # <isolated> 062A
FE96 ARABIC LETTER TEH FINAL FORM
- # <final> + 062A
+ # <final> 062A
FE97 ARABIC LETTER TEH INITIAL FORM
- # <initial> + 062A
+ # <initial> 062A
FE98 ARABIC LETTER TEH MEDIAL FORM
- # <medial> + 062A
+ # <medial> 062A
FE99 ARABIC LETTER THEH ISOLATED FORM
- # <isolated> + 062B
+ # <isolated> 062B
FE9A ARABIC LETTER THEH FINAL FORM
- # <final> + 062B
+ # <final> 062B
FE9B ARABIC LETTER THEH INITIAL FORM
- # <initial> + 062B
+ # <initial> 062B
FE9C ARABIC LETTER THEH MEDIAL FORM
- # <medial> + 062B
+ # <medial> 062B
FE9D ARABIC LETTER JEEM ISOLATED FORM
- # <isolated> + 062C
+ # <isolated> 062C
FE9E ARABIC LETTER JEEM FINAL FORM
- # <final> + 062C
+ # <final> 062C
FE9F ARABIC LETTER JEEM INITIAL FORM
- # <initial> + 062C
+ # <initial> 062C
FEA0 ARABIC LETTER JEEM MEDIAL FORM
- # <medial> + 062C
+ # <medial> 062C
FEA1 ARABIC LETTER HAH ISOLATED FORM
- # <isolated> + 062D
+ # <isolated> 062D
FEA2 ARABIC LETTER HAH FINAL FORM
- # <final> + 062D
+ # <final> 062D
FEA3 ARABIC LETTER HAH INITIAL FORM
- # <initial> + 062D
+ # <initial> 062D
FEA4 ARABIC LETTER HAH MEDIAL FORM
- # <medial> + 062D
+ # <medial> 062D
FEA5 ARABIC LETTER KHAH ISOLATED FORM
- # <isolated> + 062E
+ # <isolated> 062E
FEA6 ARABIC LETTER KHAH FINAL FORM
- # <final> + 062E
+ # <final> 062E
FEA7 ARABIC LETTER KHAH INITIAL FORM
- # <initial> + 062E
+ # <initial> 062E
FEA8 ARABIC LETTER KHAH MEDIAL FORM
- # <medial> + 062E
+ # <medial> 062E
FEA9 ARABIC LETTER DAL ISOLATED FORM
- # <isolated> + 062F
+ # <isolated> 062F
FEAA ARABIC LETTER DAL FINAL FORM
- # <final> + 062F
+ # <final> 062F
FEAB ARABIC LETTER THAL ISOLATED FORM
- # <isolated> + 0630
+ # <isolated> 0630
FEAC ARABIC LETTER THAL FINAL FORM
- # <final> + 0630
+ # <final> 0630
FEAD ARABIC LETTER REH ISOLATED FORM
- # <isolated> + 0631
+ # <isolated> 0631
FEAE ARABIC LETTER REH FINAL FORM
- # <final> + 0631
+ # <final> 0631
FEAF ARABIC LETTER ZAIN ISOLATED FORM
- # <isolated> + 0632
+ # <isolated> 0632
FEB0 ARABIC LETTER ZAIN FINAL FORM
- # <final> + 0632
+ # <final> 0632
FEB1 ARABIC LETTER SEEN ISOLATED FORM
- # <isolated> + 0633
+ # <isolated> 0633
FEB2 ARABIC LETTER SEEN FINAL FORM
- # <final> + 0633
+ # <final> 0633
FEB3 ARABIC LETTER SEEN INITIAL FORM
- # <initial> + 0633
+ # <initial> 0633
FEB4 ARABIC LETTER SEEN MEDIAL FORM
- # <medial> + 0633
+ # <medial> 0633
FEB5 ARABIC LETTER SHEEN ISOLATED FORM
- # <isolated> + 0634
+ # <isolated> 0634
FEB6 ARABIC LETTER SHEEN FINAL FORM
- # <final> + 0634
+ # <final> 0634
FEB7 ARABIC LETTER SHEEN INITIAL FORM
- # <initial> + 0634
+ # <initial> 0634
FEB8 ARABIC LETTER SHEEN MEDIAL FORM
- # <medial> + 0634
+ # <medial> 0634
FEB9 ARABIC LETTER SAD ISOLATED FORM
- # <isolated> + 0635
+ # <isolated> 0635
FEBA ARABIC LETTER SAD FINAL FORM
- # <final> + 0635
+ # <final> 0635
FEBB ARABIC LETTER SAD INITIAL FORM
- # <initial> + 0635
+ # <initial> 0635
FEBC ARABIC LETTER SAD MEDIAL FORM
- # <medial> + 0635
+ # <medial> 0635
FEBD ARABIC LETTER DAD ISOLATED FORM
- # <isolated> + 0636
+ # <isolated> 0636
FEBE ARABIC LETTER DAD FINAL FORM
- # <final> + 0636
+ # <final> 0636
FEBF ARABIC LETTER DAD INITIAL FORM
- # <initial> + 0636
+ # <initial> 0636
FEC0 ARABIC LETTER DAD MEDIAL FORM
- # <medial> + 0636
+ # <medial> 0636
FEC1 ARABIC LETTER TAH ISOLATED FORM
- # <isolated> + 0637
+ # <isolated> 0637
FEC2 ARABIC LETTER TAH FINAL FORM
- # <final> + 0637
+ # <final> 0637
FEC3 ARABIC LETTER TAH INITIAL FORM
- # <initial> + 0637
+ # <initial> 0637
FEC4 ARABIC LETTER TAH MEDIAL FORM
- # <medial> + 0637
+ # <medial> 0637
FEC5 ARABIC LETTER ZAH ISOLATED FORM
- # <isolated> + 0638
+ # <isolated> 0638
FEC6 ARABIC LETTER ZAH FINAL FORM
- # <final> + 0638
+ # <final> 0638
FEC7 ARABIC LETTER ZAH INITIAL FORM
- # <initial> + 0638
+ # <initial> 0638
FEC8 ARABIC LETTER ZAH MEDIAL FORM
- # <medial> + 0638
+ # <medial> 0638
FEC9 ARABIC LETTER AIN ISOLATED FORM
- # <isolated> + 0639
+ # <isolated> 0639
FECA ARABIC LETTER AIN FINAL FORM
- # <final> + 0639
+ # <final> 0639
FECB ARABIC LETTER AIN INITIAL FORM
- # <initial> + 0639
+ # <initial> 0639
FECC ARABIC LETTER AIN MEDIAL FORM
- # <medial> + 0639
+ # <medial> 0639
FECD ARABIC LETTER GHAIN ISOLATED FORM
- # <isolated> + 063A
+ # <isolated> 063A
FECE ARABIC LETTER GHAIN FINAL FORM
- # <final> + 063A
+ # <final> 063A
FECF ARABIC LETTER GHAIN INITIAL FORM
- # <initial> + 063A
+ # <initial> 063A
FED0 ARABIC LETTER GHAIN MEDIAL FORM
- # <medial> + 063A
+ # <medial> 063A
FED1 ARABIC LETTER FEH ISOLATED FORM
- # <isolated> + 0641
+ # <isolated> 0641
FED2 ARABIC LETTER FEH FINAL FORM
- # <final> + 0641
+ # <final> 0641
FED3 ARABIC LETTER FEH INITIAL FORM
- # <initial> + 0641
+ # <initial> 0641
FED4 ARABIC LETTER FEH MEDIAL FORM
- # <medial> + 0641
+ # <medial> 0641
FED5 ARABIC LETTER QAF ISOLATED FORM
- # <isolated> + 0642
+ # <isolated> 0642
FED6 ARABIC LETTER QAF FINAL FORM
- # <final> + 0642
+ # <final> 0642
FED7 ARABIC LETTER QAF INITIAL FORM
- # <initial> + 0642
+ # <initial> 0642
FED8 ARABIC LETTER QAF MEDIAL FORM
- # <medial> + 0642
+ # <medial> 0642
FED9 ARABIC LETTER KAF ISOLATED FORM
- # <isolated> + 0643
+ # <isolated> 0643
FEDA ARABIC LETTER KAF FINAL FORM
- # <final> + 0643
+ # <final> 0643
FEDB ARABIC LETTER KAF INITIAL FORM
- # <initial> + 0643
+ # <initial> 0643
FEDC ARABIC LETTER KAF MEDIAL FORM
- # <medial> + 0643
+ # <medial> 0643
FEDD ARABIC LETTER LAM ISOLATED FORM
- # <isolated> + 0644
+ # <isolated> 0644
FEDE ARABIC LETTER LAM FINAL FORM
- # <final> + 0644
+ # <final> 0644
FEDF ARABIC LETTER LAM INITIAL FORM
- # <initial> + 0644
+ # <initial> 0644
FEE0 ARABIC LETTER LAM MEDIAL FORM
- # <medial> + 0644
+ # <medial> 0644
FEE1 ARABIC LETTER MEEM ISOLATED FORM
- # <isolated> + 0645
+ # <isolated> 0645
FEE2 ARABIC LETTER MEEM FINAL FORM
- # <final> + 0645
+ # <final> 0645
FEE3 ARABIC LETTER MEEM INITIAL FORM
- # <initial> + 0645
+ # <initial> 0645
FEE4 ARABIC LETTER MEEM MEDIAL FORM
- # <medial> + 0645
+ # <medial> 0645
FEE5 ARABIC LETTER NOON ISOLATED FORM
- # <isolated> + 0646
+ # <isolated> 0646
FEE6 ARABIC LETTER NOON FINAL FORM
- # <final> + 0646
+ # <final> 0646
FEE7 ARABIC LETTER NOON INITIAL FORM
- # <initial> + 0646
+ # <initial> 0646
FEE8 ARABIC LETTER NOON MEDIAL FORM
- # <medial> + 0646
+ # <medial> 0646
FEE9 ARABIC LETTER HEH ISOLATED FORM
- # <isolated> + 0647
+ # <isolated> 0647
FEEA ARABIC LETTER HEH FINAL FORM
- # <final> + 0647
+ # <final> 0647
FEEB ARABIC LETTER HEH INITIAL FORM
- # <initial> + 0647
+ # <initial> 0647
FEEC ARABIC LETTER HEH MEDIAL FORM
- # <medial> + 0647
+ # <medial> 0647
FEED ARABIC LETTER WAW ISOLATED FORM
- # <isolated> + 0648
+ # <isolated> 0648
FEEE ARABIC LETTER WAW FINAL FORM
- # <final> + 0648
+ # <final> 0648
FEEF ARABIC LETTER ALEF MAKSURA ISOLATED FORM
- # <isolated> + 0649
+ # <isolated> 0649
FEF0 ARABIC LETTER ALEF MAKSURA FINAL FORM
- # <final> + 0649
+ # <final> 0649
FEF1 ARABIC LETTER YEH ISOLATED FORM
- # <isolated> + 064A
+ # <isolated> 064A
FEF2 ARABIC LETTER YEH FINAL FORM
- # <final> + 064A
+ # <final> 064A
FEF3 ARABIC LETTER YEH INITIAL FORM
- # <initial> + 064A
+ # <initial> 064A
FEF4 ARABIC LETTER YEH MEDIAL FORM
- # <medial> + 064A
+ # <medial> 064A
FEF5 ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
- # <isolated> + 0644 + 0622
+ # <isolated> 0644 0622
FEF6 ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM
- # <final> + 0644 + 0622
+ # <final> 0644 0622
FEF7 ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
- # <isolated> + 0644 + 0623
+ # <isolated> 0644 0623
FEF8 ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM
- # <final> + 0644 + 0623
+ # <final> 0644 0623
FEF9 ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM
- # <isolated> + 0644 + 0625
+ # <isolated> 0644 0625
FEFA ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM
- # <final> + 0644 + 0625
+ # <final> 0644 0625
FEFB ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
- # <isolated> + 0644 + 0627
+ # <isolated> 0644 0627
FEFC ARABIC LIGATURE LAM WITH ALEF FINAL FORM
- # <final> + 0644 + 0627
-FEFD <reserved>
-FEFE <reserved>
+ # <final> 0644 0627
@ Special
FEFF ZERO WIDTH NO-BREAK SPACE
- = BYTE ORDER MARK
- = BOM
+ = BYTE ORDER MARK (BOM)
* may be used to detect byte order by contrast with FFFE which is not a character
- * may also be used as zero width no-break space
x (<not a character> - FFFE)
+ x (zero width space - 200B)
@@ FF00 Halfwidth and Fullwidth Forms FFEF
@ Fullwidth ASCII variants
-FF00 <reserved>
+@+ See ASCII 0020 - 007E
FF01 FULLWIDTH EXCLAMATION MARK
- # <wide> + 0021
+ # <wide> 0021
FF02 FULLWIDTH QUOTATION MARK
- # <wide> + 0022
+ # <wide> 0022
FF03 FULLWIDTH NUMBER SIGN
- # <wide> + 0023
+ # <wide> 0023
FF04 FULLWIDTH DOLLAR SIGN
- # <wide> + 0024
+ # <wide> 0024
FF05 FULLWIDTH PERCENT SIGN
- # <wide> + 0025
+ # <wide> 0025
FF06 FULLWIDTH AMPERSAND
- # <wide> + 0026
+ # <wide> 0026
FF07 FULLWIDTH APOSTROPHE
- # <wide> + 0027
+ # <wide> 0027
FF08 FULLWIDTH LEFT PARENTHESIS
- # <wide> + 0028
+ # <wide> 0028
FF09 FULLWIDTH RIGHT PARENTHESIS
- # <wide> + 0029
+ # <wide> 0029
FF0A FULLWIDTH ASTERISK
- # <wide> + 002A
+ # <wide> 002A
FF0B FULLWIDTH PLUS SIGN
- # <wide> + 002B
+ # <wide> 002B
FF0C FULLWIDTH COMMA
- # <wide> + 002C
+ # <wide> 002C
FF0D FULLWIDTH HYPHEN-MINUS
- # <wide> + 002D
+ # <wide> 002D
FF0E FULLWIDTH FULL STOP
- # <wide> + 002E
+ # <wide> 002E
FF0F FULLWIDTH SOLIDUS
- # <wide> + 002F
+ # <wide> 002F
FF10 FULLWIDTH DIGIT ZERO
- # <wide> + 0030
+ # <wide> 0030
FF11 FULLWIDTH DIGIT ONE
- # <wide> + 0031
+ # <wide> 0031
FF12 FULLWIDTH DIGIT TWO
- # <wide> + 0032
+ # <wide> 0032
FF13 FULLWIDTH DIGIT THREE
- # <wide> + 0033
+ # <wide> 0033
FF14 FULLWIDTH DIGIT FOUR
- # <wide> + 0034
+ # <wide> 0034
FF15 FULLWIDTH DIGIT FIVE
- # <wide> + 0035
+ # <wide> 0035
FF16 FULLWIDTH DIGIT SIX
- # <wide> + 0036
+ # <wide> 0036
FF17 FULLWIDTH DIGIT SEVEN
- # <wide> + 0037
+ # <wide> 0037
FF18 FULLWIDTH DIGIT EIGHT
- # <wide> + 0038
+ # <wide> 0038
FF19 FULLWIDTH DIGIT NINE
- # <wide> + 0039
+ # <wide> 0039
FF1A FULLWIDTH COLON
- # <wide> + 003A
+ # <wide> 003A
FF1B FULLWIDTH SEMICOLON
- # <wide> + 003B
+ # <wide> 003B
FF1C FULLWIDTH LESS-THAN SIGN
- # <wide> + 003C
+ # <wide> 003C
FF1D FULLWIDTH EQUALS SIGN
- # <wide> + 003D
+ # <wide> 003D
FF1E FULLWIDTH GREATER-THAN SIGN
- # <wide> + 003E
+ # <wide> 003E
FF1F FULLWIDTH QUESTION MARK
- # <wide> + 003F
+ # <wide> 003F
FF20 FULLWIDTH COMMERCIAL AT
- # <wide> + 0040
+ # <wide> 0040
FF21 FULLWIDTH LATIN CAPITAL LETTER A
- # <wide> + 0041
+ # <wide> 0041
FF22 FULLWIDTH LATIN CAPITAL LETTER B
- # <wide> + 0042
+ # <wide> 0042
FF23 FULLWIDTH LATIN CAPITAL LETTER C
- # <wide> + 0043
+ # <wide> 0043
FF24 FULLWIDTH LATIN CAPITAL LETTER D
- # <wide> + 0044
+ # <wide> 0044
FF25 FULLWIDTH LATIN CAPITAL LETTER E
- # <wide> + 0045
+ # <wide> 0045
FF26 FULLWIDTH LATIN CAPITAL LETTER F
- # <wide> + 0046
+ # <wide> 0046
FF27 FULLWIDTH LATIN CAPITAL LETTER G
- # <wide> + 0047
+ # <wide> 0047
FF28 FULLWIDTH LATIN CAPITAL LETTER H
- # <wide> + 0048
+ # <wide> 0048
FF29 FULLWIDTH LATIN CAPITAL LETTER I
- # <wide> + 0049
+ # <wide> 0049
FF2A FULLWIDTH LATIN CAPITAL LETTER J
- # <wide> + 004A
+ # <wide> 004A
FF2B FULLWIDTH LATIN CAPITAL LETTER K
- # <wide> + 004B
+ # <wide> 004B
FF2C FULLWIDTH LATIN CAPITAL LETTER L
- # <wide> + 004C
+ # <wide> 004C
FF2D FULLWIDTH LATIN CAPITAL LETTER M
- # <wide> + 004D
+ # <wide> 004D
FF2E FULLWIDTH LATIN CAPITAL LETTER N
- # <wide> + 004E
+ # <wide> 004E
FF2F FULLWIDTH LATIN CAPITAL LETTER O
- # <wide> + 004F
+ # <wide> 004F
FF30 FULLWIDTH LATIN CAPITAL LETTER P
- # <wide> + 0050
+ # <wide> 0050
FF31 FULLWIDTH LATIN CAPITAL LETTER Q
- # <wide> + 0051
+ # <wide> 0051
FF32 FULLWIDTH LATIN CAPITAL LETTER R
- # <wide> + 0052
+ # <wide> 0052
FF33 FULLWIDTH LATIN CAPITAL LETTER S
- # <wide> + 0053
+ # <wide> 0053
FF34 FULLWIDTH LATIN CAPITAL LETTER T
- # <wide> + 0054
+ # <wide> 0054
FF35 FULLWIDTH LATIN CAPITAL LETTER U
- # <wide> + 0055
+ # <wide> 0055
FF36 FULLWIDTH LATIN CAPITAL LETTER V
- # <wide> + 0056
+ # <wide> 0056
FF37 FULLWIDTH LATIN CAPITAL LETTER W
- # <wide> + 0057
+ # <wide> 0057
FF38 FULLWIDTH LATIN CAPITAL LETTER X
- # <wide> + 0058
+ # <wide> 0058
FF39 FULLWIDTH LATIN CAPITAL LETTER Y
- # <wide> + 0059
+ # <wide> 0059
FF3A FULLWIDTH LATIN CAPITAL LETTER Z
- # <wide> + 005A
+ # <wide> 005A
FF3B FULLWIDTH LEFT SQUARE BRACKET
- # <wide> + 005B
+ # <wide> 005B
FF3C FULLWIDTH REVERSE SOLIDUS
- # <wide> + 005C
+ # <wide> 005C
FF3D FULLWIDTH RIGHT SQUARE BRACKET
- # <wide> + 005D
+ # <wide> 005D
FF3E FULLWIDTH CIRCUMFLEX ACCENT
- # <wide> + 005E
+ # <wide> 005E
FF3F FULLWIDTH LOW LINE
- # <wide> + 005F
+ # <wide> 005F
FF40 FULLWIDTH GRAVE ACCENT
- # <wide> + 0060
+ # <wide> 0060
FF41 FULLWIDTH LATIN SMALL LETTER A
- # <wide> + 0061
+ # <wide> 0061
FF42 FULLWIDTH LATIN SMALL LETTER B
- # <wide> + 0062
+ # <wide> 0062
FF43 FULLWIDTH LATIN SMALL LETTER C
- # <wide> + 0063
+ # <wide> 0063
FF44 FULLWIDTH LATIN SMALL LETTER D
- # <wide> + 0064
+ # <wide> 0064
FF45 FULLWIDTH LATIN SMALL LETTER E
- # <wide> + 0065
+ # <wide> 0065
FF46 FULLWIDTH LATIN SMALL LETTER F
- # <wide> + 0066
+ # <wide> 0066
FF47 FULLWIDTH LATIN SMALL LETTER G
- # <wide> + 0067
+ # <wide> 0067
FF48 FULLWIDTH LATIN SMALL LETTER H
- # <wide> + 0068
+ # <wide> 0068
FF49 FULLWIDTH LATIN SMALL LETTER I
- # <wide> + 0069
+ # <wide> 0069
FF4A FULLWIDTH LATIN SMALL LETTER J
- # <wide> + 006A
+ # <wide> 006A
FF4B FULLWIDTH LATIN SMALL LETTER K
- # <wide> + 006B
+ # <wide> 006B
FF4C FULLWIDTH LATIN SMALL LETTER L
- # <wide> + 006C
+ # <wide> 006C
FF4D FULLWIDTH LATIN SMALL LETTER M
- # <wide> + 006D
+ # <wide> 006D
FF4E FULLWIDTH LATIN SMALL LETTER N
- # <wide> + 006E
+ # <wide> 006E
FF4F FULLWIDTH LATIN SMALL LETTER O
- # <wide> + 006F
+ # <wide> 006F
FF50 FULLWIDTH LATIN SMALL LETTER P
- # <wide> + 0070
+ # <wide> 0070
FF51 FULLWIDTH LATIN SMALL LETTER Q
- # <wide> + 0071
+ # <wide> 0071
FF52 FULLWIDTH LATIN SMALL LETTER R
- # <wide> + 0072
+ # <wide> 0072
FF53 FULLWIDTH LATIN SMALL LETTER S
- # <wide> + 0073
+ # <wide> 0073
FF54 FULLWIDTH LATIN SMALL LETTER T
- # <wide> + 0074
+ # <wide> 0074
FF55 FULLWIDTH LATIN SMALL LETTER U
- # <wide> + 0075
+ # <wide> 0075
FF56 FULLWIDTH LATIN SMALL LETTER V
- # <wide> + 0076
+ # <wide> 0076
FF57 FULLWIDTH LATIN SMALL LETTER W
- # <wide> + 0077
+ # <wide> 0077
FF58 FULLWIDTH LATIN SMALL LETTER X
- # <wide> + 0078
+ # <wide> 0078
FF59 FULLWIDTH LATIN SMALL LETTER Y
- # <wide> + 0079
+ # <wide> 0079
FF5A FULLWIDTH LATIN SMALL LETTER Z
- # <wide> + 007A
+ # <wide> 007A
FF5B FULLWIDTH LEFT CURLY BRACKET
- # <wide> + 007B
+ # <wide> 007B
FF5C FULLWIDTH VERTICAL LINE
- # <wide> + 007C
+ # <wide> 007C
FF5D FULLWIDTH RIGHT CURLY BRACKET
- # <wide> + 007D
+ # <wide> 007D
FF5E FULLWIDTH TILDE
- # <wide> + 007E
-FF5F <reserved>
-@ Halfwidth Katakana variants
-FF60 <reserved>
+ # <wide> 007E
+@ Halfwidth CJK punctuation
+@+ See CJK punctuation 3000 - 303F
FF61 HALFWIDTH IDEOGRAPHIC FULL STOP
- # <narrow> + 3002
+ # <narrow> 3002
FF62 HALFWIDTH LEFT CORNER BRACKET
- # <narrow> + 300C
+ # <narrow> 300C
FF63 HALFWIDTH RIGHT CORNER BRACKET
- # <narrow> + 300D
+ # <narrow> 300D
FF64 HALFWIDTH IDEOGRAPHIC COMMA
- # <narrow> + 3001
+ # <narrow> 3001
+@ Halfwidth Katakana variants
+@+ See Katakana 30A0 - 30FF
FF65 HALFWIDTH KATAKANA MIDDLE DOT
- # <narrow> + 30FB
+ # <narrow> 30FB
FF66 HALFWIDTH KATAKANA LETTER WO
- # <narrow> + 30F2
+ # <narrow> 30F2
FF67 HALFWIDTH KATAKANA LETTER SMALL A
- # <narrow> + 30A1
+ # <narrow> 30A1
FF68 HALFWIDTH KATAKANA LETTER SMALL I
- # <narrow> + 30A3
+ # <narrow> 30A3
FF69 HALFWIDTH KATAKANA LETTER SMALL U
- # <narrow> + 30A5
+ # <narrow> 30A5
FF6A HALFWIDTH KATAKANA LETTER SMALL E
- # <narrow> + 30A7
+ # <narrow> 30A7
FF6B HALFWIDTH KATAKANA LETTER SMALL O
- # <narrow> + 30A9
+ # <narrow> 30A9
FF6C HALFWIDTH KATAKANA LETTER SMALL YA
- # <narrow> + 30E3
+ # <narrow> 30E3
FF6D HALFWIDTH KATAKANA LETTER SMALL YU
- # <narrow> + 30E5
+ # <narrow> 30E5
FF6E HALFWIDTH KATAKANA LETTER SMALL YO
- # <narrow> + 30E7
+ # <narrow> 30E7
FF6F HALFWIDTH KATAKANA LETTER SMALL TU
- # <narrow> + 30C3
+ # <narrow> 30C3
FF70 HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
- # <narrow> + 30FC
+ # <narrow> 30FC
FF71 HALFWIDTH KATAKANA LETTER A
- # <narrow> + 30A2
+ # <narrow> 30A2
FF72 HALFWIDTH KATAKANA LETTER I
- # <narrow> + 30A4
+ # <narrow> 30A4
FF73 HALFWIDTH KATAKANA LETTER U
- # <narrow> + 30A6
+ # <narrow> 30A6
FF74 HALFWIDTH KATAKANA LETTER E
- # <narrow> + 30A8
+ # <narrow> 30A8
FF75 HALFWIDTH KATAKANA LETTER O
- # <narrow> + 30AA
+ # <narrow> 30AA
FF76 HALFWIDTH KATAKANA LETTER KA
- # <narrow> + 30AB
+ # <narrow> 30AB
FF77 HALFWIDTH KATAKANA LETTER KI
- # <narrow> + 30AD
+ # <narrow> 30AD
FF78 HALFWIDTH KATAKANA LETTER KU
- # <narrow> + 30AF
+ # <narrow> 30AF
FF79 HALFWIDTH KATAKANA LETTER KE
- # <narrow> + 30B1
+ # <narrow> 30B1
FF7A HALFWIDTH KATAKANA LETTER KO
- # <narrow> + 30B3
+ # <narrow> 30B3
FF7B HALFWIDTH KATAKANA LETTER SA
- # <narrow> + 30B5
+ # <narrow> 30B5
FF7C HALFWIDTH KATAKANA LETTER SI
- # <narrow> + 30B7
+ # <narrow> 30B7
FF7D HALFWIDTH KATAKANA LETTER SU
- # <narrow> + 30B9
+ # <narrow> 30B9
FF7E HALFWIDTH KATAKANA LETTER SE
- # <narrow> + 30BB
+ # <narrow> 30BB
FF7F HALFWIDTH KATAKANA LETTER SO
- # <narrow> + 30BD
+ # <narrow> 30BD
FF80 HALFWIDTH KATAKANA LETTER TA
- # <narrow> + 30BF
+ # <narrow> 30BF
FF81 HALFWIDTH KATAKANA LETTER TI
- # <narrow> + 30C1
+ # <narrow> 30C1
FF82 HALFWIDTH KATAKANA LETTER TU
- # <narrow> + 30C4
+ # <narrow> 30C4
FF83 HALFWIDTH KATAKANA LETTER TE
- # <narrow> + 30C6
+ # <narrow> 30C6
FF84 HALFWIDTH KATAKANA LETTER TO
- # <narrow> + 30C8
+ # <narrow> 30C8
FF85 HALFWIDTH KATAKANA LETTER NA
- # <narrow> + 30CA
+ # <narrow> 30CA
FF86 HALFWIDTH KATAKANA LETTER NI
- # <narrow> + 30CB
+ # <narrow> 30CB
FF87 HALFWIDTH KATAKANA LETTER NU
- # <narrow> + 30CC
+ # <narrow> 30CC
FF88 HALFWIDTH KATAKANA LETTER NE
- # <narrow> + 30CD
+ # <narrow> 30CD
FF89 HALFWIDTH KATAKANA LETTER NO
- # <narrow> + 30CE
+ # <narrow> 30CE
FF8A HALFWIDTH KATAKANA LETTER HA
- # <narrow> + 30CF
+ # <narrow> 30CF
FF8B HALFWIDTH KATAKANA LETTER HI
- # <narrow> + 30D2
+ # <narrow> 30D2
FF8C HALFWIDTH KATAKANA LETTER HU
- # <narrow> + 30D5
+ # <narrow> 30D5
FF8D HALFWIDTH KATAKANA LETTER HE
- # <narrow> + 30D8
+ # <narrow> 30D8
FF8E HALFWIDTH KATAKANA LETTER HO
- # <narrow> + 30DB
+ # <narrow> 30DB
FF8F HALFWIDTH KATAKANA LETTER MA
- # <narrow> + 30DE
+ # <narrow> 30DE
FF90 HALFWIDTH KATAKANA LETTER MI
- # <narrow> + 30DF
+ # <narrow> 30DF
FF91 HALFWIDTH KATAKANA LETTER MU
- # <narrow> + 30E0
+ # <narrow> 30E0
FF92 HALFWIDTH KATAKANA LETTER ME
- # <narrow> + 30E1
+ # <narrow> 30E1
FF93 HALFWIDTH KATAKANA LETTER MO
- # <narrow> + 30E2
+ # <narrow> 30E2
FF94 HALFWIDTH KATAKANA LETTER YA
- # <narrow> + 30E4
+ # <narrow> 30E4
FF95 HALFWIDTH KATAKANA LETTER YU
- # <narrow> + 30E6
+ # <narrow> 30E6
FF96 HALFWIDTH KATAKANA LETTER YO
- # <narrow> + 30E8
+ # <narrow> 30E8
FF97 HALFWIDTH KATAKANA LETTER RA
- # <narrow> + 30E9
+ # <narrow> 30E9
FF98 HALFWIDTH KATAKANA LETTER RI
- # <narrow> + 30EA
+ # <narrow> 30EA
FF99 HALFWIDTH KATAKANA LETTER RU
- # <narrow> + 30EB
+ # <narrow> 30EB
FF9A HALFWIDTH KATAKANA LETTER RE
- # <narrow> + 30EC
+ # <narrow> 30EC
FF9B HALFWIDTH KATAKANA LETTER RO
- # <narrow> + 30ED
+ # <narrow> 30ED
FF9C HALFWIDTH KATAKANA LETTER WA
- # <narrow> + 30EF
+ # <narrow> 30EF
FF9D HALFWIDTH KATAKANA LETTER N
- # <narrow> + 30F3
-FF9E HALFWIDTH KATAKANA VOICED SOUND MARK
- # <narrow> + 309B
-FF9F HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
- # <narrow> + 309C
+ # <narrow> 30F3
+FF9E HALFWIDTH KATAKANA VOICED SOUND MARK (halfwidth katakana-hiragana voiced sound mark)
+ # <narrow> 3099
+FF9F HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK (halfwidth katakana-hiragana semi-voiced sound mark)
+ # <narrow> 309A
@ Halfwidth Hangul variants
+@+ See Hangul Compatibility Jamo 3130 - 318F
FFA0 HALFWIDTH HANGUL FILLER
- # <narrow> + 3164
+ # <narrow> 3164
FFA1 HALFWIDTH HANGUL LETTER KIYEOK
- # <narrow> + 3131
+ # <narrow> 3131
FFA2 HALFWIDTH HANGUL LETTER SSANGKIYEOK
- # <narrow> + 3132
+ # <narrow> 3132
FFA3 HALFWIDTH HANGUL LETTER KIYEOK-SIOS
- # <narrow> + 3133
+ # <narrow> 3133
FFA4 HALFWIDTH HANGUL LETTER NIEUN
- # <narrow> + 3134
+ # <narrow> 3134
FFA5 HALFWIDTH HANGUL LETTER NIEUN-CIEUC
- # <narrow> + 3135
+ # <narrow> 3135
FFA6 HALFWIDTH HANGUL LETTER NIEUN-HIEUH
- # <narrow> + 3136
+ # <narrow> 3136
FFA7 HALFWIDTH HANGUL LETTER TIKEUT
- # <narrow> + 3137
+ # <narrow> 3137
FFA8 HALFWIDTH HANGUL LETTER SSANGTIKEUT
- # <narrow> + 3138
+ # <narrow> 3138
FFA9 HALFWIDTH HANGUL LETTER RIEUL
- # <narrow> + 3139
+ # <narrow> 3139
FFAA HALFWIDTH HANGUL LETTER RIEUL-KIYEOK
- # <narrow> + 313A
+ # <narrow> 313A
FFAB HALFWIDTH HANGUL LETTER RIEUL-MIEUM
- # <narrow> + 313B
+ # <narrow> 313B
FFAC HALFWIDTH HANGUL LETTER RIEUL-PIEUP
- # <narrow> + 313C
+ # <narrow> 313C
FFAD HALFWIDTH HANGUL LETTER RIEUL-SIOS
- # <narrow> + 313D
+ # <narrow> 313D
FFAE HALFWIDTH HANGUL LETTER RIEUL-THIEUTH
- # <narrow> + 313E
+ # <narrow> 313E
FFAF HALFWIDTH HANGUL LETTER RIEUL-PHIEUPH
- # <narrow> + 313F
+ # <narrow> 313F
FFB0 HALFWIDTH HANGUL LETTER RIEUL-HIEUH
- # <narrow> + 3140
+ # <narrow> 3140
FFB1 HALFWIDTH HANGUL LETTER MIEUM
- # <narrow> + 3141
+ # <narrow> 3141
FFB2 HALFWIDTH HANGUL LETTER PIEUP
- # <narrow> + 3142
+ # <narrow> 3142
FFB3 HALFWIDTH HANGUL LETTER SSANGPIEUP
- # <narrow> + 3143
+ # <narrow> 3143
FFB4 HALFWIDTH HANGUL LETTER PIEUP-SIOS
- # <narrow> + 3144
+ # <narrow> 3144
FFB5 HALFWIDTH HANGUL LETTER SIOS
- # <narrow> + 3145
+ # <narrow> 3145
FFB6 HALFWIDTH HANGUL LETTER SSANGSIOS
- # <narrow> + 3146
+ # <narrow> 3146
FFB7 HALFWIDTH HANGUL LETTER IEUNG
- # <narrow> + 3147
+ # <narrow> 3147
FFB8 HALFWIDTH HANGUL LETTER CIEUC
- # <narrow> + 3148
+ # <narrow> 3148
FFB9 HALFWIDTH HANGUL LETTER SSANGCIEUC
- # <narrow> + 3149
+ # <narrow> 3149
FFBA HALFWIDTH HANGUL LETTER CHIEUCH
- # <narrow> + 314A
+ # <narrow> 314A
FFBB HALFWIDTH HANGUL LETTER KHIEUKH
- # <narrow> + 314B
+ # <narrow> 314B
FFBC HALFWIDTH HANGUL LETTER THIEUTH
- # <narrow> + 314C
+ # <narrow> 314C
FFBD HALFWIDTH HANGUL LETTER PHIEUPH
- # <narrow> + 314D
+ # <narrow> 314D
FFBE HALFWIDTH HANGUL LETTER HIEUH
- # <narrow> + 314E
-FFBF <reserved>
-FFC0 <reserved>
-FFC1 <reserved>
+ # <narrow> 314E
FFC2 HALFWIDTH HANGUL LETTER A
- # <narrow> + 314F
+ # <narrow> 314F
FFC3 HALFWIDTH HANGUL LETTER AE
- # <narrow> + 3150
+ # <narrow> 3150
FFC4 HALFWIDTH HANGUL LETTER YA
- # <narrow> + 3151
+ # <narrow> 3151
FFC5 HALFWIDTH HANGUL LETTER YAE
- # <narrow> + 3152
+ # <narrow> 3152
FFC6 HALFWIDTH HANGUL LETTER EO
- # <narrow> + 3153
+ # <narrow> 3153
FFC7 HALFWIDTH HANGUL LETTER E
- # <narrow> + 3154
-FFC8 <reserved>
-FFC9 <reserved>
+ # <narrow> 3154
FFCA HALFWIDTH HANGUL LETTER YEO
- # <narrow> + 3155
+ # <narrow> 3155
FFCB HALFWIDTH HANGUL LETTER YE
- # <narrow> + 3156
+ # <narrow> 3156
FFCC HALFWIDTH HANGUL LETTER O
- # <narrow> + 3157
+ # <narrow> 3157
FFCD HALFWIDTH HANGUL LETTER WA
- # <narrow> + 3158
+ # <narrow> 3158
FFCE HALFWIDTH HANGUL LETTER WAE
- # <narrow> + 3159
+ # <narrow> 3159
FFCF HALFWIDTH HANGUL LETTER OE
- # <narrow> + 315A
-FFD0 <reserved>
-FFD1 <reserved>
+ # <narrow> 315A
FFD2 HALFWIDTH HANGUL LETTER YO
- # <narrow> + 315B
+ # <narrow> 315B
FFD3 HALFWIDTH HANGUL LETTER U
- # <narrow> + 315C
+ # <narrow> 315C
FFD4 HALFWIDTH HANGUL LETTER WEO
- # <narrow> + 315D
+ # <narrow> 315D
FFD5 HALFWIDTH HANGUL LETTER WE
- # <narrow> + 315E
+ # <narrow> 315E
FFD6 HALFWIDTH HANGUL LETTER WI
- # <narrow> + 315F
+ # <narrow> 315F
FFD7 HALFWIDTH HANGUL LETTER YU
- # <narrow> + 3160
-FFD8 <reserved>
-FFD9 <reserved>
+ # <narrow> 3160
FFDA HALFWIDTH HANGUL LETTER EU
- # <narrow> + 3161
+ # <narrow> 3161
FFDB HALFWIDTH HANGUL LETTER YI
- # <narrow> + 3162
+ # <narrow> 3162
FFDC HALFWIDTH HANGUL LETTER I
- # <narrow> + 3163
-FFDD <reserved>
-FFDE <reserved>
-FFDF <reserved>
+ # <narrow> 3163
@ Fullwidth symbol variants
+@+ See Latin-1 00A0 - 00FF
FFE0 FULLWIDTH CENT SIGN
- # <wide> + 00A2
+ # <wide> 00A2
FFE1 FULLWIDTH POUND SIGN
- # <wide> + 00A3
+ # <wide> 00A3
FFE2 FULLWIDTH NOT SIGN
- # <wide> + 00AC
-FFE3 FULLWIDTH MACRON
- # <wide> + 00AF
+ # <wide> 00AC
+FFE3 FULLWIDTH MACRON *
+ * sometimes treated as fullwidth overline
+ x (overline - 203E)
+ # <wide> 00AF
FFE4 FULLWIDTH BROKEN BAR
- # <wide> + 00A6
+ # <wide> 00A6
FFE5 FULLWIDTH YEN SIGN
- # <wide> + 00A5
+ # <wide> 00A5
FFE6 FULLWIDTH WON SIGN
- # <wide> + 20A9
-FFE7 <reserved>
+ # <wide> 20A9
+@ Halfwidth symbol variants
FFE8 HALFWIDTH FORMS LIGHT VERTICAL
- # <narrow> + 2502
+ # <narrow> 2502
FFE9 HALFWIDTH LEFTWARDS ARROW
- # <narrow> + 2190
+ # <narrow> 2190
FFEA HALFWIDTH UPWARDS ARROW
- # <narrow> + 2191
+ # <narrow> 2191
FFEB HALFWIDTH RIGHTWARDS ARROW
- # <narrow> + 2192
+ # <narrow> 2192
FFEC HALFWIDTH DOWNWARDS ARROW
- # <narrow> + 2193
+ # <narrow> 2193
FFED HALFWIDTH BLACK SQUARE
- # <narrow> + 25A0
+ # <narrow> 25A0
FFEE HALFWIDTH WHITE CIRCLE
- # <narrow> + 25CB
+ # <narrow> 25CB
@@ FFF0 Specials FFFF
-@ Specials
-FFF0 <reserved>
-FFF1 <reserved>
-FFF2 <reserved>
-FFF3 <reserved>
-FFF4 <reserved>
-FFF5 <reserved>
-FFF6 <reserved>
-FFF7 <reserved>
-FFF8 <reserved>
-FFF9 <reserved>
-FFFA <reserved>
-FFFB <reserved>
-FFFC <reserved>
+@ Interlinear annotation
+@+ Used internally for Japanese Ruby (furigana), etc.
+FFF9 INTERLINEAR ANNOTATION ANCHOR
+ * marks start of annotated text
+FFFA INTERLINEAR ANNOTATION SEPARATOR
+ * marks start of annotating character(s)
+FFFB INTERLINEAR ANNOTATION TERMINATOR
+ * marks end of annotation block
+@ Replacement characters
+FFFC OBJECT REPLACEMENT CHARACTER
+ * used as placeholder in text for an otherwise unspecified object
FFFD REPLACEMENT CHARACTER
- * used to replace incoming characters whose values are unknown or unrepresentable in Unicode
- x (substitute - 001A)
+ * used to replace an incoming character whose value is unknown or unrepresentable in Unicode
+ * compare the use of 001A as a control character to indicate the substitute function
@ Not character codes
FFFE <not a character>
* the value FFFE is guaranteed not to be a Unicode character at all
diff --git a/lib/unicode/Props.txt b/lib/unicode/Props.txt
new file mode 100644
index 0000000000..b3548e164d
--- /dev/null
+++ b/lib/unicode/Props.txt
@@ -0,0 +1,3640 @@
+Property dump: UnicodeData-3.0.0.txt
+
+*******************************************
+
+Property dump for: 0x10000001 (Zero-width)
+
+070F
+180B..180E (4 chars)
+200B..200F (5 chars)
+202A..202E (5 chars)
+206A..206F (6 chars)
+FEFF
+FFF9..FFFB (3 chars)
+
+*******************************************
+
+Property dump for: 0x10000002 (Space)
+
+0020
+00A0
+1680
+2000..200B (12 chars)
+202F
+3000
+
+*******************************************
+
+Property dump for: 0x10000004 (White space)
+
+0009..000D (5 chars)
+0020
+0085
+00A0
+1680
+2000..200B (12 chars)
+2028..2029 (2 chars)
+202F
+3000
+
+*******************************************
+
+Property dump for: 0x00400000 (Non-break)
+
+00A0
+0F0C
+2007
+2011
+202F
+FEFF
+
+*******************************************
+
+Property dump for: 0x10000008 (ISO Control)
+
+0000..001F (32 chars)
+007F..009F (33 chars)
+
+*******************************************
+
+Property dump for: 0x10000090 (Bidi Control)
+
+200E..200F (2 chars)
+202A..202E (5 chars)
+
+*******************************************
+
+Property dump for: 0x100000A0 (Join Control)
+
+200C..200D (2 chars)
+
+*******************************************
+
+Property dump for: 0x100000C0 (Format Control)
+
+070F
+180B..180E (4 chars)
+206A..206F (6 chars)
+FFF9..FFFB (3 chars)
+
+*******************************************
+
+Property dump for: 0x20000400 (Dash)
+
+002D
+00AD
+058A
+1806
+2010..2015 (6 chars)
+207B
+208B
+2212
+301C
+3030
+FE31..FE32 (2 chars)
+FE58
+FE63
+FF0D
+
+*******************************************
+
+Property dump for: 0x20000800 (Hyphen)
+
+002D
+00AD
+058A
+1806
+2010..2011 (2 chars)
+30FB
+FE63
+FF0D
+FF65
+
+*******************************************
+
+Property dump for: 0x20001000 (Punctuation)
+
+0021..0023 (3 chars)
+0025..002A (6 chars)
+002C..002F (4 chars)
+003A..003B (2 chars)
+003F..0040 (2 chars)
+005B..005D (3 chars)
+005F
+007B
+007D
+00A1
+00AB
+00AD
+00B7
+00BB
+00BF
+037E
+0387
+055A..055F (6 chars)
+0589..058A (2 chars)
+05BE
+05C0
+05C3
+05F3..05F4 (2 chars)
+060C
+061B
+061F
+066A..066D (4 chars)
+06D4
+0700..070D (14 chars)
+0964..0965 (2 chars)
+0970
+0DF4
+0E4F
+0E5A..0E5B (2 chars)
+0F04..0F12 (15 chars)
+0F3A..0F3D (4 chars)
+0F85
+104A..104F (6 chars)
+10FB
+1361..1368 (8 chars)
+166D..166E (2 chars)
+169B..169C (2 chars)
+16EB..16ED (3 chars)
+17D4..17DA (7 chars)
+17DC
+1800..180A (11 chars)
+2010..2027 (24 chars)
+2030..2043 (20 chars)
+2045..2046 (2 chars)
+2048..204D (6 chars)
+207D..207E (2 chars)
+208D..208E (2 chars)
+2329..232A (2 chars)
+3001..3003 (3 chars)
+3008..3011 (10 chars)
+3014..301F (12 chars)
+3030
+30FB
+FD3E..FD3F (2 chars)
+FE30..FE44 (21 chars)
+FE49..FE52 (10 chars)
+FE54..FE61 (14 chars)
+FE63
+FE68
+FE6A..FE6B (2 chars)
+FF01..FF03 (3 chars)
+FF05..FF0A (6 chars)
+FF0C..FF0F (4 chars)
+FF1A..FF1B (2 chars)
+FF1F..FF20 (2 chars)
+FF3B..FF3D (3 chars)
+FF3F
+FF5B
+FF5D
+FF61..FF65 (5 chars)
+
+*******************************************
+
+Property dump for: 0x00800000 (Delimiter)
+
+0000
+0009..000D (5 chars)
+001C..0023 (8 chars)
+0028..0029 (2 chars)
+002C
+002E..002F (2 chars)
+003A..003B (2 chars)
+003F
+005B..005D (3 chars)
+007B..007D (3 chars)
+0085
+00A0..00A1 (2 chars)
+00A6..00A7 (2 chars)
+00AB
+00B6
+00BB
+00BF
+037E
+0387
+055C..055E (3 chars)
+0589
+060C
+061B
+061F
+066B..066C (2 chars)
+06D4
+0700..0709 (10 chars)
+070B..070D (3 chars)
+0964..0965 (2 chars)
+0DF4
+0E5A..0E5B (2 chars)
+0F0B
+0F0D..0F12 (6 chars)
+0F3A..0F3D (4 chars)
+104A..104B (2 chars)
+10FB
+1361..1368 (8 chars)
+166D..166E (2 chars)
+1680
+169B..169C (2 chars)
+16EB..16ED (3 chars)
+17D4..17D6 (3 chars)
+17DA
+1802..1805 (4 chars)
+1808..1809 (2 chars)
+2000..200B (12 chars)
+2016
+2018..201F (8 chars)
+2028..2029 (2 chars)
+202F
+2039..203A (2 chars)
+203C..203D (2 chars)
+2045..2046 (2 chars)
+2048..2049 (2 chars)
+207D..207E (2 chars)
+208D..208E (2 chars)
+2329..232A (2 chars)
+3000..3002 (3 chars)
+3008..3011 (10 chars)
+3014..301B (8 chars)
+301D..301F (3 chars)
+30FB
+FD3E..FD3F (2 chars)
+FE35..FE44 (16 chars)
+FE50..FE52 (3 chars)
+FE54..FE57 (4 chars)
+FE59..FE5F (7 chars)
+FE68
+FF01..FF03 (3 chars)
+FF08..FF09 (2 chars)
+FF0C
+FF0E..FF0F (2 chars)
+FF1A..FF1B (2 chars)
+FF1F
+FF3B..FF3D (3 chars)
+FF5B..FF5D (3 chars)
+FF61..FF65 (5 chars)
+FFE4
+
+*******************************************
+
+Property dump for: 0x80000003 (Line Separator)
+
+2028
+
+*******************************************
+
+Property dump for: 0x80000004 (Paragraph Separator)
+
+2029
+
+*******************************************
+
+Property dump for: 0x20002000 (Quotation Mark)
+
+0022
+0027
+00AB
+00BB
+2018..201F (8 chars)
+2039..203A (2 chars)
+300C..300F (4 chars)
+301D..301F (3 chars)
+FE41..FE44 (4 chars)
+FF02
+FF07
+FF62..FF63 (2 chars)
+
+*******************************************
+
+Property dump for: 0x20004000 (Terminal Punctuation)
+
+0021
+002C
+002E
+003A..003B (2 chars)
+003F
+037E
+0387
+0589
+060C
+061B
+061F
+06D4
+0700..070A (11 chars)
+070C
+0964..0965 (2 chars)
+0E5A..0E5B (2 chars)
+104A..104B (2 chars)
+1361..1368 (8 chars)
+166D..166E (2 chars)
+16EB..16ED (3 chars)
+17D4..17D6 (3 chars)
+17DA
+1802..1805 (4 chars)
+1808..1809 (2 chars)
+203C..203D (2 chars)
+2048..2049 (2 chars)
+3001..3002 (2 chars)
+FE50..FE52 (3 chars)
+FE54..FE57 (4 chars)
+FF01
+FF0C
+FF0E
+FF1A..FF1B (2 chars)
+FF1F
+FF61
+FF64
+
+*******************************************
+
+Property dump for: 0x20008000 (Currency Symbol)
+
+0024
+00A2..00A5 (4 chars)
+09F2..09F3 (2 chars)
+0E3F
+17DB
+20A0..20AF (16 chars)
+FE69
+FF04
+FFE0..FFE1 (2 chars)
+FFE5..FFE6 (2 chars)
+
+*******************************************
+
+Property dump for: 0x20080000 (Math)
+
+0028..002B (4 chars)
+002D
+002F
+003C..003E (3 chars)
+005B..005E (4 chars)
+007B..007E (4 chars)
+00AC
+00B1
+00D7
+00F7
+2016
+2032..2034 (3 chars)
+2044
+207A..207E (5 chars)
+208A..208E (5 chars)
+20D0..20DC (13 chars)
+20E1
+2190..2194 (5 chars)
+219A..219B (2 chars)
+21A0
+21A3
+21A6
+21AE
+21CE..21CF (2 chars)
+21D2
+21D4
+2200..22F1 (242 chars)
+2308..230B (4 chars)
+2320..2321 (2 chars)
+2329..232A (2 chars)
+25B7
+25C1
+266F
+300A..300B (2 chars)
+301A..301B (2 chars)
+FB29
+FE35..FE38 (4 chars)
+FE59..FE5C (4 chars)
+FE61..FE66 (6 chars)
+FE68
+FF08..FF0B (4 chars)
+FF0D
+FF0F
+FF1C..FF1E (3 chars)
+FF3B..FF3E (4 chars)
+FF5B..FF5E (4 chars)
+FFE2
+FFE9..FFEC (4 chars)
+
+*******************************************
+
+Property dump for: 0x20000100 (Paired Punctuation)
+
+0028..0029 (2 chars)
+005B
+005D
+007B
+007D
+00AB
+00BB
+0F3A..0F3D (4 chars)
+169B..169C (2 chars)
+2018..201F (8 chars)
+2039..203A (2 chars)
+2045..2046 (2 chars)
+207D..207E (2 chars)
+208D..208E (2 chars)
+2329..232A (2 chars)
+3008..3011 (10 chars)
+3014..301B (8 chars)
+301D..301F (3 chars)
+FD3E..FD3F (2 chars)
+FE35..FE44 (16 chars)
+FE59..FE5E (6 chars)
+FF08..FF09 (2 chars)
+FF3B
+FF3D
+FF5B
+FF5D
+FF62..FF63 (2 chars)
+
+*******************************************
+
+Property dump for: 0x20000300 (Left of Pair)
+
+0028
+005B
+007B
+00AB
+0F3A
+0F3C
+169B
+2018
+201A..201C (3 chars)
+201E..201F (2 chars)
+2039
+2045
+207D
+208D
+2329
+3008
+300A
+300C
+300E
+3010
+3014
+3016
+3018
+301A
+301D
+FD3E
+FE35
+FE37
+FE39
+FE3B
+FE3D
+FE3F
+FE41
+FE43
+FE59
+FE5B
+FE5D
+FF08
+FF3B
+FF5B
+FF62
+
+*******************************************
+
+Property dump for: 0x20000004 (Combining)
+
+0300..034E (79 chars)
+0360..0362 (3 chars)
+0483..0486 (4 chars)
+0488..0489 (2 chars)
+0591..05A1 (17 chars)
+05A3..05B9 (23 chars)
+05BB..05BD (3 chars)
+05BF
+05C1..05C2 (2 chars)
+05C4
+064B..0655 (11 chars)
+0670
+06D6..06E4 (15 chars)
+06E7..06E8 (2 chars)
+06EA..06ED (4 chars)
+0711
+0730..074A (27 chars)
+07A6..07B0 (11 chars)
+0901..0903 (3 chars)
+093C
+093E..094D (16 chars)
+0951..0954 (4 chars)
+0962..0963 (2 chars)
+0981..0983 (3 chars)
+09BC
+09BE..09C4 (7 chars)
+09C7..09C8 (2 chars)
+09CB..09CD (3 chars)
+09D7
+09E2..09E3 (2 chars)
+0A02
+0A3C
+0A3E..0A42 (5 chars)
+0A47..0A48 (2 chars)
+0A4B..0A4D (3 chars)
+0A70..0A71 (2 chars)
+0A81..0A83 (3 chars)
+0ABC
+0ABE..0AC5 (8 chars)
+0AC7..0AC9 (3 chars)
+0ACB..0ACD (3 chars)
+0B01..0B03 (3 chars)
+0B3C
+0B3E..0B43 (6 chars)
+0B47..0B48 (2 chars)
+0B4B..0B4D (3 chars)
+0B56..0B57 (2 chars)
+0B82..0B83 (2 chars)
+0BBE..0BC2 (5 chars)
+0BC6..0BC8 (3 chars)
+0BCA..0BCD (4 chars)
+0BD7
+0C01..0C03 (3 chars)
+0C3E..0C44 (7 chars)
+0C46..0C48 (3 chars)
+0C4A..0C4D (4 chars)
+0C55..0C56 (2 chars)
+0C82..0C83 (2 chars)
+0CBE..0CC4 (7 chars)
+0CC6..0CC8 (3 chars)
+0CCA..0CCD (4 chars)
+0CD5..0CD6 (2 chars)
+0D02..0D03 (2 chars)
+0D3E..0D43 (6 chars)
+0D46..0D48 (3 chars)
+0D4A..0D4D (4 chars)
+0D57
+0D82..0D83 (2 chars)
+0DCA
+0DCF..0DD4 (6 chars)
+0DD6
+0DD8..0DDF (8 chars)
+0DF2..0DF3 (2 chars)
+0E31
+0E34..0E3A (7 chars)
+0E47..0E4E (8 chars)
+0EB1
+0EB4..0EB9 (6 chars)
+0EBB..0EBC (2 chars)
+0EC8..0ECD (6 chars)
+0F18..0F19 (2 chars)
+0F35
+0F37
+0F39
+0F3E..0F3F (2 chars)
+0F71..0F84 (20 chars)
+0F86..0F87 (2 chars)
+0F90..0F97 (8 chars)
+0F99..0FBC (36 chars)
+0FC6
+102C..1032 (7 chars)
+1036..1039 (4 chars)
+1056..1059 (4 chars)
+17B4..17D3 (32 chars)
+18A9
+20D0..20E3 (20 chars)
+302A..302F (6 chars)
+3099..309A (2 chars)
+F8F0..F8FF (16 chars)
+FB1E
+FE20..FE23 (4 chars)
+
+*******************************************
+
+Property dump for: 0x20040000 (Non-spacing)
+
+0300..034E (79 chars)
+0360..0362 (3 chars)
+0483..0486 (4 chars)
+0488..0489 (2 chars)
+0591..05A1 (17 chars)
+05A3..05B9 (23 chars)
+05BB..05BD (3 chars)
+05BF
+05C1..05C2 (2 chars)
+05C4
+064B..0655 (11 chars)
+0670
+06D6..06E4 (15 chars)
+06E7..06E8 (2 chars)
+06EA..06ED (4 chars)
+0711
+0730..074A (27 chars)
+07A6..07B0 (11 chars)
+0901..0902 (2 chars)
+093C
+0941..0948 (8 chars)
+094D
+0951..0954 (4 chars)
+0962..0963 (2 chars)
+0981
+09BC
+09C1..09C4 (4 chars)
+09CD
+09E2..09E3 (2 chars)
+0A02
+0A3C
+0A41..0A42 (2 chars)
+0A47..0A48 (2 chars)
+0A4B..0A4D (3 chars)
+0A70..0A71 (2 chars)
+0A81..0A82 (2 chars)
+0ABC
+0AC1..0AC5 (5 chars)
+0AC7..0AC8 (2 chars)
+0ACD
+0B01
+0B3C
+0B3F
+0B41..0B43 (3 chars)
+0B4D
+0B56
+0B82
+0BC0
+0BCD
+0C3E..0C40 (3 chars)
+0C46..0C48 (3 chars)
+0C4A..0C4D (4 chars)
+0C55..0C56 (2 chars)
+0CBF
+0CC6
+0CCC..0CCD (2 chars)
+0D41..0D43 (3 chars)
+0D4D
+0DCA
+0DD2..0DD4 (3 chars)
+0DD6
+0E31
+0E34..0E3A (7 chars)
+0E47..0E4E (8 chars)
+0EB1
+0EB4..0EB9 (6 chars)
+0EBB..0EBC (2 chars)
+0EC8..0ECD (6 chars)
+0F18..0F19 (2 chars)
+0F35
+0F37
+0F39
+0F71..0F7E (14 chars)
+0F80..0F84 (5 chars)
+0F86..0F87 (2 chars)
+0F90..0F97 (8 chars)
+0F99..0FBC (36 chars)
+0FC6
+102D..1030 (4 chars)
+1032
+1036..1037 (2 chars)
+1039
+1058..1059 (2 chars)
+17B7..17BD (7 chars)
+17C6
+17C9..17D3 (11 chars)
+18A9
+20D0..20E3 (20 chars)
+302A..302F (6 chars)
+3099..309A (2 chars)
+F8F0..F8FF (16 chars)
+FB1E
+FE20..FE23 (4 chars)
+
+*******************************************
+
+Property dump for: 0x20000008 (Composite)
+
+00C0..00C5 (6 chars)
+00C7..00CF (9 chars)
+00D1..00D6 (6 chars)
+00D9..00DD (5 chars)
+00E0..00E5 (6 chars)
+00E7..00EF (9 chars)
+00F1..00F6 (6 chars)
+00F9..00FD (5 chars)
+00FF..0130 (50 chars)
+0132..0137 (6 chars)
+0139..0149 (17 chars)
+014C..0151 (6 chars)
+0154..017E (43 chars)
+01A0..01A1 (2 chars)
+01AF..01B0 (2 chars)
+01C4..01DC (25 chars)
+01DE..01E3 (6 chars)
+01E6..01F5 (16 chars)
+01F8..0209 (18 chars)
+020C..021B (16 chars)
+021E..021F (2 chars)
+0226..0233 (14 chars)
+0344
+0385..0386 (2 chars)
+0388..038A (3 chars)
+038C
+038E..0390 (3 chars)
+03AA..03B0 (7 chars)
+03CA..03CE (5 chars)
+03D3..03D5 (3 chars)
+0400..0401 (2 chars)
+0403
+0407
+040C..040E (3 chars)
+0419
+0439
+0450..0451 (2 chars)
+0453
+0457
+045C..045E (3 chars)
+0476..0477 (2 chars)
+04BE..04BF (2 chars)
+04C1..04C2 (2 chars)
+04D0..04D3 (4 chars)
+04D6..04D7 (2 chars)
+04DA..04E7 (14 chars)
+04EA..04F5 (12 chars)
+04F8..04F9 (2 chars)
+0587
+0622..0626 (5 chars)
+06C0
+06C2
+06D6..06D7 (2 chars)
+0929
+0931
+0934
+0950
+0958..095F (8 chars)
+09CB..09CC (2 chars)
+09DC..09DD (2 chars)
+09DF
+0A33
+0A36
+0A59..0A5B (3 chars)
+0A5E
+0A74
+0AD0
+0B01
+0B48
+0B4B..0B4C (2 chars)
+0B5C..0B5D (2 chars)
+0B94
+0BCA..0BCC (3 chars)
+0C48
+0CC0
+0CC7..0CC8 (2 chars)
+0CCA..0CCB (2 chars)
+0D4A..0D4C (3 chars)
+0DDA
+0DDC..0DDE (3 chars)
+0E33
+0EB3
+0EDC..0EDD (2 chars)
+0F00
+0F43
+0F4D
+0F52
+0F57
+0F5C
+0F69
+0F73
+0F75..0F79 (5 chars)
+0F81
+0F93
+0F9D
+0FA2
+0FA7
+0FAC
+0FB9
+1026
+1E00..1E9B (156 chars)
+1EA0..1EF9 (90 chars)
+1F00..1F15 (22 chars)
+1F18..1F1D (6 chars)
+1F20..1F45 (38 chars)
+1F48..1F4D (6 chars)
+1F50..1F57 (8 chars)
+1F59
+1F5B
+1F5D
+1F5F..1F7D (31 chars)
+1F80..1FB4 (53 chars)
+1FB6..1FBC (7 chars)
+1FC1..1FC4 (4 chars)
+1FC6..1FD3 (14 chars)
+1FD6..1FDB (6 chars)
+1FDD..1FEE (18 chars)
+1FF2..1FF4 (3 chars)
+1FF6..1FFC (7 chars)
+203C
+2048..2049 (2 chars)
+2161..2163 (3 chars)
+2165..2168 (4 chars)
+216A..216B (2 chars)
+2171..2173 (3 chars)
+2175..2178 (4 chars)
+217A..217B (2 chars)
+2204
+2209
+220C
+2226
+222C..222D (2 chars)
+222F..2230 (2 chars)
+2247
+2249
+2260
+2262
+226D..2271 (5 chars)
+2274..2275 (2 chars)
+2278..2279 (2 chars)
+2280..2281 (2 chars)
+2284..2285 (2 chars)
+2288..2289 (2 chars)
+22AC..22AF (4 chars)
+22E0..22E3 (4 chars)
+22EA..22ED (4 chars)
+2460..24B5 (86 chars)
+24EA
+304C
+304E
+3050
+3052
+3054
+3056
+3058
+305A
+305C
+305E
+3060
+3062
+3065
+3067
+3069
+3070..3071 (2 chars)
+3073..3074 (2 chars)
+3076..3077 (2 chars)
+3079..307A (2 chars)
+307C..307D (2 chars)
+3094
+309E
+30AC
+30AE
+30B0
+30B2
+30B4
+30B6
+30B8
+30BA
+30BC
+30BE
+30C0
+30C2
+30C5
+30C7
+30C9
+30D0..30D1 (2 chars)
+30D3..30D4 (2 chars)
+30D6..30D7 (2 chars)
+30D9..30DA (2 chars)
+30DC..30DD (2 chars)
+30F4
+30FE
+3200..321C (29 chars)
+3220..3243 (36 chars)
+32C0..32CB (12 chars)
+3300..3376 (119 chars)
+337B..33DD (99 chars)
+33E0..33FE (31 chars)
+AC00..D7A3 (11172 chars)
+FB00..FB06 (7 chars)
+FB13..FB17 (5 chars)
+FB1D
+FB1F
+FB2A..FB36 (13 chars)
+FB38..FB3C (5 chars)
+FB3E
+FB40..FB41 (2 chars)
+FB43..FB44 (2 chars)
+FB46..FB4F (10 chars)
+FBEA..FBFB (18 chars)
+FC00..FD3D (318 chars)
+FD50..FD8F (64 chars)
+FD92..FDC7 (54 chars)
+FDF0..FDFB (12 chars)
+FE70..FE72 (3 chars)
+FE74
+FE76..FE7F (10 chars)
+
+*******************************************
+
+Property dump for: 0x20000080 (Hex Digit)
+
+0030..0039 (10 chars)
+0041..0046 (6 chars)
+0061..0066 (6 chars)
+FF10..FF19 (10 chars)
+FF21..FF26 (6 chars)
+FF41..FF46 (6 chars)
+
+*******************************************
+
+Property dump for: 0x20000030 (Decimal Digit)
+
+0030..0039 (10 chars)
+0660..0669 (10 chars)
+06F0..06F9 (10 chars)
+0966..096F (10 chars)
+09E6..09EF (10 chars)
+0A66..0A6F (10 chars)
+0AE6..0AEF (10 chars)
+0B66..0B6F (10 chars)
+0BE7..0BEF (9 chars)
+0C66..0C6F (10 chars)
+0CE6..0CEF (10 chars)
+0D66..0D6F (10 chars)
+0E50..0E59 (10 chars)
+0ED0..0ED9 (10 chars)
+0F20..0F29 (10 chars)
+1040..1049 (10 chars)
+1369..1371 (9 chars)
+17E0..17E9 (10 chars)
+1810..1819 (10 chars)
+FF10..FF19 (10 chars)
+
+*******************************************
+
+Property dump for: 0x20000010 (Numeric)
+
+0030..0039 (10 chars)
+00B2..00B3 (2 chars)
+00B9
+00BC..00BE (3 chars)
+0660..0669 (10 chars)
+06F0..06F9 (10 chars)
+0966..096F (10 chars)
+09E6..09EF (10 chars)
+09F4..09F9 (6 chars)
+0A66..0A6F (10 chars)
+0AE6..0AEF (10 chars)
+0B66..0B6F (10 chars)
+0BE7..0BF2 (12 chars)
+0C66..0C6F (10 chars)
+0CE6..0CEF (10 chars)
+0D66..0D6F (10 chars)
+0E50..0E59 (10 chars)
+0ED0..0ED9 (10 chars)
+0F20..0F33 (20 chars)
+1040..1049 (10 chars)
+1369..137C (20 chars)
+16EE..16F0 (3 chars)
+17E0..17E9 (10 chars)
+1810..1819 (10 chars)
+2070
+2074..2079 (6 chars)
+2080..2089 (10 chars)
+2153..2183 (49 chars)
+2460..249B (60 chars)
+24EA
+2776..2793 (30 chars)
+3007
+3021..3029 (9 chars)
+3038..303A (3 chars)
+3192..3195 (4 chars)
+3220..3229 (10 chars)
+3280..3289 (10 chars)
+FF10..FF19 (10 chars)
+
+*******************************************
+
+Property dump for: 0x20000001 (Alphabetic)
+
+0041..005A (26 chars)
+0061..007A (26 chars)
+00AA
+00B5
+00BA
+00C0..00D6 (23 chars)
+00D8..00F6 (31 chars)
+00F8..021F (296 chars)
+0222..0233 (18 chars)
+0250..02AD (94 chars)
+02B0..02B8 (9 chars)
+02BB..02C1 (7 chars)
+02E0..02E4 (5 chars)
+02EE
+0345
+037A
+0386
+0388..038A (3 chars)
+038C
+038E..03A1 (20 chars)
+03A3..03CE (44 chars)
+03D0..03D7 (8 chars)
+03DA..03F3 (26 chars)
+0400..0481 (130 chars)
+048C..04C4 (57 chars)
+04C7..04C8 (2 chars)
+04CB..04CC (2 chars)
+04D0..04F5 (38 chars)
+04F8..04F9 (2 chars)
+0531..0556 (38 chars)
+0559
+0561..0587 (39 chars)
+05D0..05EA (27 chars)
+05F0..05F2 (3 chars)
+0621..063A (26 chars)
+0641..0655 (21 chars)
+0670..06D3 (100 chars)
+06D5..06DC (8 chars)
+06E1..06E8 (8 chars)
+06ED
+06FA..06FC (3 chars)
+0710..072C (29 chars)
+0730..073F (16 chars)
+0780..07B0 (49 chars)
+0901..0903 (3 chars)
+0905..0939 (53 chars)
+093D..094C (16 chars)
+0950
+0958..0963 (12 chars)
+0981..0983 (3 chars)
+0985..098C (8 chars)
+098F..0990 (2 chars)
+0993..09A8 (22 chars)
+09AA..09B0 (7 chars)
+09B2
+09B6..09B9 (4 chars)
+09BE..09C4 (7 chars)
+09C7..09C8 (2 chars)
+09CB..09CC (2 chars)
+09D7
+09DC..09DD (2 chars)
+09DF..09E3 (5 chars)
+09F0..09F1 (2 chars)
+0A02
+0A05..0A0A (6 chars)
+0A0F..0A10 (2 chars)
+0A13..0A28 (22 chars)
+0A2A..0A30 (7 chars)
+0A32..0A33 (2 chars)
+0A35..0A36 (2 chars)
+0A38..0A39 (2 chars)
+0A3E..0A42 (5 chars)
+0A47..0A48 (2 chars)
+0A4B..0A4C (2 chars)
+0A59..0A5C (4 chars)
+0A5E
+0A70..0A74 (5 chars)
+0A81..0A83 (3 chars)
+0A85..0A8B (7 chars)
+0A8D
+0A8F..0A91 (3 chars)
+0A93..0AA8 (22 chars)
+0AAA..0AB0 (7 chars)
+0AB2..0AB3 (2 chars)
+0AB5..0AB9 (5 chars)
+0ABD..0AC5 (9 chars)
+0AC7..0AC9 (3 chars)
+0ACB..0ACC (2 chars)
+0AD0
+0AE0
+0B01..0B03 (3 chars)
+0B05..0B0C (8 chars)
+0B0F..0B10 (2 chars)
+0B13..0B28 (22 chars)
+0B2A..0B30 (7 chars)
+0B32..0B33 (2 chars)
+0B36..0B39 (4 chars)
+0B3D..0B43 (7 chars)
+0B47..0B48 (2 chars)
+0B4B..0B4C (2 chars)
+0B56..0B57 (2 chars)
+0B5C..0B5D (2 chars)
+0B5F..0B61 (3 chars)
+0B82..0B83 (2 chars)
+0B85..0B8A (6 chars)
+0B8E..0B90 (3 chars)
+0B92..0B95 (4 chars)
+0B99..0B9A (2 chars)
+0B9C
+0B9E..0B9F (2 chars)
+0BA3..0BA4 (2 chars)
+0BA8..0BAA (3 chars)
+0BAE..0BB5 (8 chars)
+0BB7..0BB9 (3 chars)
+0BBE..0BC2 (5 chars)
+0BC6..0BC8 (3 chars)
+0BCA..0BCC (3 chars)
+0BD7
+0C01..0C03 (3 chars)
+0C05..0C0C (8 chars)
+0C0E..0C10 (3 chars)
+0C12..0C28 (23 chars)
+0C2A..0C33 (10 chars)
+0C35..0C39 (5 chars)
+0C3E..0C44 (7 chars)
+0C46..0C48 (3 chars)
+0C4A..0C4C (3 chars)
+0C55..0C56 (2 chars)
+0C60..0C61 (2 chars)
+0C82..0C83 (2 chars)
+0C85..0C8C (8 chars)
+0C8E..0C90 (3 chars)
+0C92..0CA8 (23 chars)
+0CAA..0CB3 (10 chars)
+0CB5..0CB9 (5 chars)
+0CBE..0CC4 (7 chars)
+0CC6..0CC8 (3 chars)
+0CCA..0CCC (3 chars)
+0CD5..0CD6 (2 chars)
+0CDE
+0CE0..0CE1 (2 chars)
+0D02..0D03 (2 chars)
+0D05..0D0C (8 chars)
+0D0E..0D10 (3 chars)
+0D12..0D28 (23 chars)
+0D2A..0D39 (16 chars)
+0D3E..0D43 (6 chars)
+0D46..0D48 (3 chars)
+0D4A..0D4C (3 chars)
+0D57
+0D60..0D61 (2 chars)
+0D82..0D83 (2 chars)
+0D85..0D96 (18 chars)
+0D9A..0DB1 (24 chars)
+0DB3..0DBB (9 chars)
+0DBD
+0DC0..0DC6 (7 chars)
+0DCF..0DD4 (6 chars)
+0DD6
+0DD8..0DDF (8 chars)
+0DF2..0DF3 (2 chars)
+0E01..0E3A (58 chars)
+0E40..0E45 (6 chars)
+0E47
+0E4D
+0E81..0E82 (2 chars)
+0E84
+0E87..0E88 (2 chars)
+0E8A
+0E8D
+0E94..0E97 (4 chars)
+0E99..0E9F (7 chars)
+0EA1..0EA3 (3 chars)
+0EA5
+0EA7
+0EAA..0EAB (2 chars)
+0EAD..0EB9 (13 chars)
+0EBB..0EBD (3 chars)
+0EC0..0EC4 (5 chars)
+0ECD
+0EDC..0EDD (2 chars)
+0F00
+0F40..0F47 (8 chars)
+0F49..0F6A (34 chars)
+0F71..0F81 (17 chars)
+0F88..0F8B (4 chars)
+0F90..0F97 (8 chars)
+0F99..0FBC (36 chars)
+1000..1021 (34 chars)
+1023..1027 (5 chars)
+1029..102A (2 chars)
+102C..1032 (7 chars)
+1036
+1038
+1050..1059 (10 chars)
+10A0..10C5 (38 chars)
+10D0..10F6 (39 chars)
+1100..1159 (90 chars)
+115F..11A2 (68 chars)
+11A8..11F9 (82 chars)
+1200..1206 (7 chars)
+1208..1246 (63 chars)
+1248
+124A..124D (4 chars)
+1250..1256 (7 chars)
+1258
+125A..125D (4 chars)
+1260..1286 (39 chars)
+1288
+128A..128D (4 chars)
+1290..12AE (31 chars)
+12B0
+12B2..12B5 (4 chars)
+12B8..12BE (7 chars)
+12C0
+12C2..12C5 (4 chars)
+12C8..12CE (7 chars)
+12D0..12D6 (7 chars)
+12D8..12EE (23 chars)
+12F0..130E (31 chars)
+1310
+1312..1315 (4 chars)
+1318..131E (7 chars)
+1320..1346 (39 chars)
+1348..135A (19 chars)
+13A0..13F4 (85 chars)
+1401..166C (620 chars)
+166F..1676 (8 chars)
+1681..169A (26 chars)
+16A0..16EA (75 chars)
+1780..17C8 (73 chars)
+1820..1842 (35 chars)
+1844..1877 (52 chars)
+1880..18A9 (42 chars)
+1E00..1E9B (156 chars)
+1EA0..1EF9 (90 chars)
+1F00..1F15 (22 chars)
+1F18..1F1D (6 chars)
+1F20..1F45 (38 chars)
+1F48..1F4D (6 chars)
+1F50..1F57 (8 chars)
+1F59
+1F5B
+1F5D
+1F5F..1F7D (31 chars)
+1F80..1FB4 (53 chars)
+1FB6..1FBC (7 chars)
+1FBE
+1FC2..1FC4 (3 chars)
+1FC6..1FCC (7 chars)
+1FD0..1FD3 (4 chars)
+1FD6..1FDB (6 chars)
+1FE0..1FEC (13 chars)
+1FF2..1FF4 (3 chars)
+1FF6..1FFC (7 chars)
+207F
+2102
+2107
+210A..2113 (10 chars)
+2115
+2119..211D (5 chars)
+2124
+2126
+2128
+212A..212D (4 chars)
+212F..2131 (3 chars)
+2133..2139 (7 chars)
+2160..2183 (36 chars)
+3041..3094 (84 chars)
+30A1..30FA (90 chars)
+3105..312C (40 chars)
+3131..318E (94 chars)
+31A0..31B7 (24 chars)
+A000..A48C (1165 chars)
+AC00..D7A3 (11172 chars)
+FB00..FB06 (7 chars)
+FB13..FB17 (5 chars)
+FB1D
+FB1F..FB28 (10 chars)
+FB2A..FB36 (13 chars)
+FB38..FB3C (5 chars)
+FB3E
+FB40..FB41 (2 chars)
+FB43..FB44 (2 chars)
+FB46..FBB1 (108 chars)
+FBD3..FD3D (363 chars)
+FD50..FD8F (64 chars)
+FD92..FDC7 (54 chars)
+FDF0..FDFB (12 chars)
+FE70..FE72 (3 chars)
+FE74
+FE76..FEFC (135 chars)
+FF21..FF3A (26 chars)
+FF41..FF5A (26 chars)
+FF66..FF6F (10 chars)
+FF71..FF9D (45 chars)
+FFA0..FFBE (31 chars)
+FFC2..FFC7 (6 chars)
+FFCA..FFCF (6 chars)
+FFD2..FFD7 (6 chars)
+FFDA..FFDC (3 chars)
+
+*******************************************
+
+Property dump for: 0x20000002 (Ideographic)
+
+3006..3007 (2 chars)
+3021..3029 (9 chars)
+3038..303A (3 chars)
+3400..4DB5 (6582 chars)
+4E00..9FA5 (20902 chars)
+F900..FA2D (302 chars)
+
+*******************************************
+
+Property dump for: 0x20010000 (Diacritic)
+
+005E
+0060
+00A8
+00AF
+00B4
+00B7..00B8 (2 chars)
+02B0..02EE (63 chars)
+0300..034E (79 chars)
+0360..0362 (3 chars)
+0374..0375 (2 chars)
+037A
+0384..0385 (2 chars)
+0483..0486 (4 chars)
+0559
+0591..05A1 (17 chars)
+05A3..05B9 (23 chars)
+05BB..05BD (3 chars)
+05BF
+05C1..05C2 (2 chars)
+05C4
+06DF..06E0 (2 chars)
+06E5..06E6 (2 chars)
+06EA..06EC (3 chars)
+0740..074A (11 chars)
+093C
+094D
+0951..0954 (4 chars)
+09BC
+09CD
+0A3C
+0A4D
+0ABC
+0ACD
+0B3C
+0B4D
+0BCD
+0C4D
+0CCD
+0D4D
+0DCA
+0E48..0E4C (5 chars)
+0E4E
+0EC8..0ECC (5 chars)
+0F18..0F19 (2 chars)
+0F35
+0F37
+0F39
+0F3E..0F3F (2 chars)
+0F82..0F84 (3 chars)
+0F86..0F87 (2 chars)
+0FC6
+1037
+1039
+17C9..17D3 (11 chars)
+1FBD
+1FBF..1FC1 (3 chars)
+1FCD..1FCF (3 chars)
+1FDD..1FDF (3 chars)
+1FED..1FEF (3 chars)
+1FFD..1FFE (2 chars)
+302A..302F (6 chars)
+3099..309C (4 chars)
+30FC
+FB1E
+FE20..FE23 (4 chars)
+FF3E
+FF40
+FF70
+FF9E..FF9F (2 chars)
+FFE3
+
+*******************************************
+
+Property dump for: 0x20000040 (Extender)
+
+00B7
+02D0..02D1 (2 chars)
+0640
+0E46
+0EC6
+1843
+3005
+3031..3035 (5 chars)
+309D..309E (2 chars)
+30FC..30FE (3 chars)
+FF70
+
+*******************************************
+
+Property dump for: 0x20020000 (Identifier Part)
+
+0030..0039 (10 chars)
+0041..005A (26 chars)
+005F
+0061..007A (26 chars)
+00AA
+00B5
+00BA
+00C0..00D6 (23 chars)
+00D8..00F6 (31 chars)
+00F8..021F (296 chars)
+0222..0233 (18 chars)
+0250..02AD (94 chars)
+02B0..02B8 (9 chars)
+02BB..02C1 (7 chars)
+02D0..02D1 (2 chars)
+02E0..02E4 (5 chars)
+02EE
+0300..034E (79 chars)
+0360..0362 (3 chars)
+037A
+0386
+0388..038A (3 chars)
+038C
+038E..03A1 (20 chars)
+03A3..03CE (44 chars)
+03D0..03D7 (8 chars)
+03DA..03F3 (26 chars)
+0400..0481 (130 chars)
+0483..0486 (4 chars)
+048C..04C4 (57 chars)
+04C7..04C8 (2 chars)
+04CB..04CC (2 chars)
+04D0..04F5 (38 chars)
+04F8..04F9 (2 chars)
+0531..0556 (38 chars)
+0559
+0561..0587 (39 chars)
+0591..05A1 (17 chars)
+05A3..05B9 (23 chars)
+05BB..05BD (3 chars)
+05BF
+05C1..05C2 (2 chars)
+05C4
+05D0..05EA (27 chars)
+05F0..05F2 (3 chars)
+0621..063A (26 chars)
+0640..0655 (22 chars)
+0660..0669 (10 chars)
+0670..06D3 (100 chars)
+06D5..06DC (8 chars)
+06DF..06E8 (10 chars)
+06EA..06ED (4 chars)
+06F0..06FC (13 chars)
+0710..072C (29 chars)
+0730..074A (27 chars)
+0780..07B0 (49 chars)
+0901..0903 (3 chars)
+0905..0939 (53 chars)
+093C..094D (18 chars)
+0950..0954 (5 chars)
+0958..0963 (12 chars)
+0966..096F (10 chars)
+0981..0983 (3 chars)
+0985..098C (8 chars)
+098F..0990 (2 chars)
+0993..09A8 (22 chars)
+09AA..09B0 (7 chars)
+09B2
+09B6..09B9 (4 chars)
+09BC
+09BE..09C4 (7 chars)
+09C7..09C8 (2 chars)
+09CB..09CD (3 chars)
+09D7
+09DC..09DD (2 chars)
+09DF..09E3 (5 chars)
+09E6..09F1 (12 chars)
+0A02
+0A05..0A0A (6 chars)
+0A0F..0A10 (2 chars)
+0A13..0A28 (22 chars)
+0A2A..0A30 (7 chars)
+0A32..0A33 (2 chars)
+0A35..0A36 (2 chars)
+0A38..0A39 (2 chars)
+0A3C
+0A3E..0A42 (5 chars)
+0A47..0A48 (2 chars)
+0A4B..0A4D (3 chars)
+0A59..0A5C (4 chars)
+0A5E
+0A66..0A74 (15 chars)
+0A81..0A83 (3 chars)
+0A85..0A8B (7 chars)
+0A8D
+0A8F..0A91 (3 chars)
+0A93..0AA8 (22 chars)
+0AAA..0AB0 (7 chars)
+0AB2..0AB3 (2 chars)
+0AB5..0AB9 (5 chars)
+0ABC..0AC5 (10 chars)
+0AC7..0AC9 (3 chars)
+0ACB..0ACD (3 chars)
+0AD0
+0AE0
+0AE6..0AEF (10 chars)
+0B01..0B03 (3 chars)
+0B05..0B0C (8 chars)
+0B0F..0B10 (2 chars)
+0B13..0B28 (22 chars)
+0B2A..0B30 (7 chars)
+0B32..0B33 (2 chars)
+0B36..0B39 (4 chars)
+0B3C..0B43 (8 chars)
+0B47..0B48 (2 chars)
+0B4B..0B4D (3 chars)
+0B56..0B57 (2 chars)
+0B5C..0B5D (2 chars)
+0B5F..0B61 (3 chars)
+0B66..0B6F (10 chars)
+0B82..0B83 (2 chars)
+0B85..0B8A (6 chars)
+0B8E..0B90 (3 chars)
+0B92..0B95 (4 chars)
+0B99..0B9A (2 chars)
+0B9C
+0B9E..0B9F (2 chars)
+0BA3..0BA4 (2 chars)
+0BA8..0BAA (3 chars)
+0BAE..0BB5 (8 chars)
+0BB7..0BB9 (3 chars)
+0BBE..0BC2 (5 chars)
+0BC6..0BC8 (3 chars)
+0BCA..0BCD (4 chars)
+0BD7
+0BE7..0BEF (9 chars)
+0C01..0C03 (3 chars)
+0C05..0C0C (8 chars)
+0C0E..0C10 (3 chars)
+0C12..0C28 (23 chars)
+0C2A..0C33 (10 chars)
+0C35..0C39 (5 chars)
+0C3E..0C44 (7 chars)
+0C46..0C48 (3 chars)
+0C4A..0C4D (4 chars)
+0C55..0C56 (2 chars)
+0C60..0C61 (2 chars)
+0C66..0C6F (10 chars)
+0C82..0C83 (2 chars)
+0C85..0C8C (8 chars)
+0C8E..0C90 (3 chars)
+0C92..0CA8 (23 chars)
+0CAA..0CB3 (10 chars)
+0CB5..0CB9 (5 chars)
+0CBE..0CC4 (7 chars)
+0CC6..0CC8 (3 chars)
+0CCA..0CCD (4 chars)
+0CD5..0CD6 (2 chars)
+0CDE
+0CE0..0CE1 (2 chars)
+0CE6..0CEF (10 chars)
+0D02..0D03 (2 chars)
+0D05..0D0C (8 chars)
+0D0E..0D10 (3 chars)
+0D12..0D28 (23 chars)
+0D2A..0D39 (16 chars)
+0D3E..0D43 (6 chars)
+0D46..0D48 (3 chars)
+0D4A..0D4D (4 chars)
+0D57
+0D60..0D61 (2 chars)
+0D66..0D6F (10 chars)
+0D82..0D83 (2 chars)
+0D85..0D96 (18 chars)
+0D9A..0DB1 (24 chars)
+0DB3..0DBB (9 chars)
+0DBD
+0DC0..0DC6 (7 chars)
+0DCA
+0DCF..0DD4 (6 chars)
+0DD6
+0DD8..0DDF (8 chars)
+0DF2..0DF3 (2 chars)
+0E01..0E3A (58 chars)
+0E40..0E4E (15 chars)
+0E50..0E59 (10 chars)
+0E81..0E82 (2 chars)
+0E84
+0E87..0E88 (2 chars)
+0E8A
+0E8D
+0E94..0E97 (4 chars)
+0E99..0E9F (7 chars)
+0EA1..0EA3 (3 chars)
+0EA5
+0EA7
+0EAA..0EAB (2 chars)
+0EAD..0EB9 (13 chars)
+0EBB..0EBD (3 chars)
+0EC0..0EC4 (5 chars)
+0EC6
+0EC8..0ECD (6 chars)
+0ED0..0ED9 (10 chars)
+0EDC..0EDD (2 chars)
+0F00
+0F18..0F19 (2 chars)
+0F20..0F29 (10 chars)
+0F35
+0F37
+0F39
+0F3E..0F47 (10 chars)
+0F49..0F6A (34 chars)
+0F71..0F84 (20 chars)
+0F86..0F8B (6 chars)
+0F90..0F97 (8 chars)
+0F99..0FBC (36 chars)
+0FC6
+1000..1021 (34 chars)
+1023..1027 (5 chars)
+1029..102A (2 chars)
+102C..1032 (7 chars)
+1036..1039 (4 chars)
+1040..1049 (10 chars)
+1050..1059 (10 chars)
+10A0..10C5 (38 chars)
+10D0..10F6 (39 chars)
+1100..1159 (90 chars)
+115F..11A2 (68 chars)
+11A8..11F9 (82 chars)
+1200..1206 (7 chars)
+1208..1246 (63 chars)
+1248
+124A..124D (4 chars)
+1250..1256 (7 chars)
+1258
+125A..125D (4 chars)
+1260..1286 (39 chars)
+1288
+128A..128D (4 chars)
+1290..12AE (31 chars)
+12B0
+12B2..12B5 (4 chars)
+12B8..12BE (7 chars)
+12C0
+12C2..12C5 (4 chars)
+12C8..12CE (7 chars)
+12D0..12D6 (7 chars)
+12D8..12EE (23 chars)
+12F0..130E (31 chars)
+1310
+1312..1315 (4 chars)
+1318..131E (7 chars)
+1320..1346 (39 chars)
+1348..135A (19 chars)
+1369..1371 (9 chars)
+13A0..13F4 (85 chars)
+1401..166C (620 chars)
+166F..1676 (8 chars)
+1681..169A (26 chars)
+16A0..16EA (75 chars)
+1780..17D3 (84 chars)
+17E0..17E9 (10 chars)
+1810..1819 (10 chars)
+1820..1877 (88 chars)
+1880..18A9 (42 chars)
+1E00..1E9B (156 chars)
+1EA0..1EF9 (90 chars)
+1F00..1F15 (22 chars)
+1F18..1F1D (6 chars)
+1F20..1F45 (38 chars)
+1F48..1F4D (6 chars)
+1F50..1F57 (8 chars)
+1F59
+1F5B
+1F5D
+1F5F..1F7D (31 chars)
+1F80..1FB4 (53 chars)
+1FB6..1FBC (7 chars)
+1FBE
+1FC2..1FC4 (3 chars)
+1FC6..1FCC (7 chars)
+1FD0..1FD3 (4 chars)
+1FD6..1FDB (6 chars)
+1FE0..1FEC (13 chars)
+1FF2..1FF4 (3 chars)
+1FF6..1FFC (7 chars)
+203F..2040 (2 chars)
+207F
+20D0..20DC (13 chars)
+20E1
+2102
+2107
+210A..2113 (10 chars)
+2115
+2119..211D (5 chars)
+2124
+2126
+2128
+212A..212D (4 chars)
+212F..2131 (3 chars)
+2133..2139 (7 chars)
+2160..2183 (36 chars)
+3005..3007 (3 chars)
+3021..302F (15 chars)
+3031..3035 (5 chars)
+3038..303A (3 chars)
+3041..3094 (84 chars)
+3099..309A (2 chars)
+309D..309E (2 chars)
+30A1..30FE (94 chars)
+3105..312C (40 chars)
+3131..318E (94 chars)
+31A0..31B7 (24 chars)
+3400..4DB5 (6582 chars)
+4E00..9FA5 (20902 chars)
+A000..A48C (1165 chars)
+AC00..D7A3 (11172 chars)
+F900..FA2D (302 chars)
+FB00..FB06 (7 chars)
+FB13..FB17 (5 chars)
+FB1D..FB28 (12 chars)
+FB2A..FB36 (13 chars)
+FB38..FB3C (5 chars)
+FB3E
+FB40..FB41 (2 chars)
+FB43..FB44 (2 chars)
+FB46..FBB1 (108 chars)
+FBD3..FD3D (363 chars)
+FD50..FD8F (64 chars)
+FD92..FDC7 (54 chars)
+FDF0..FDFB (12 chars)
+FE20..FE23 (4 chars)
+FE33..FE34 (2 chars)
+FE4D..FE4F (3 chars)
+FE70..FE72 (3 chars)
+FE74
+FE76..FEFC (135 chars)
+FF10..FF19 (10 chars)
+FF21..FF3A (26 chars)
+FF3F
+FF41..FF5A (26 chars)
+FF65..FFBE (90 chars)
+FFC2..FFC7 (6 chars)
+FFCA..FFCF (6 chars)
+FFD2..FFD7 (6 chars)
+FFDA..FFDC (3 chars)
+
+*******************************************
+
+Property dump for: 0x10000080 (Ignorable Control)
+
+0001..0008 (8 chars)
+000E..001B (14 chars)
+007F..0084 (6 chars)
+0086..009F (26 chars)
+070F
+180B..180E (4 chars)
+200C..200F (4 chars)
+202A..202E (5 chars)
+206A..206F (6 chars)
+FEFF
+FFF9..FFFB (3 chars)
+
+*******************************************
+
+Property dump for: 0x01000000 (Bidi: Left-to-Right)
+
+0041..005A (26 chars)
+0061..007A (26 chars)
+00AA
+00B5
+00BA
+00C0..00D6 (23 chars)
+00D8..00F6 (31 chars)
+00F8..021F (296 chars)
+0222..0233 (18 chars)
+0250..02AD (94 chars)
+02B0..02B8 (9 chars)
+02BB..02C1 (7 chars)
+02D0..02D1 (2 chars)
+02E0..02E4 (5 chars)
+02EE
+037A
+0386
+0388..038A (3 chars)
+038C
+038E..03A1 (20 chars)
+03A3..03CE (44 chars)
+03D0..03D7 (8 chars)
+03DA..03F3 (26 chars)
+0400..0482 (131 chars)
+048C..04C4 (57 chars)
+04C7..04C8 (2 chars)
+04CB..04CC (2 chars)
+04D0..04F5 (38 chars)
+04F8..04F9 (2 chars)
+0531..0556 (38 chars)
+0559..055F (7 chars)
+0561..0587 (39 chars)
+0589
+0903
+0905..0939 (53 chars)
+093D..0940 (4 chars)
+0949..094C (4 chars)
+0950
+0958..0961 (10 chars)
+0964..0970 (13 chars)
+0982..0983 (2 chars)
+0985..098C (8 chars)
+098F..0990 (2 chars)
+0993..09A8 (22 chars)
+09AA..09B0 (7 chars)
+09B2
+09B6..09B9 (4 chars)
+09BE..09C0 (3 chars)
+09C7..09C8 (2 chars)
+09CB..09CC (2 chars)
+09D7
+09DC..09DD (2 chars)
+09DF..09E1 (3 chars)
+09E6..09F1 (12 chars)
+09F4..09FA (7 chars)
+0A05..0A0A (6 chars)
+0A0F..0A10 (2 chars)
+0A13..0A28 (22 chars)
+0A2A..0A30 (7 chars)
+0A32..0A33 (2 chars)
+0A35..0A36 (2 chars)
+0A38..0A39 (2 chars)
+0A3E..0A40 (3 chars)
+0A59..0A5C (4 chars)
+0A5E
+0A66..0A6F (10 chars)
+0A72..0A74 (3 chars)
+0A83
+0A85..0A8B (7 chars)
+0A8D
+0A8F..0A91 (3 chars)
+0A93..0AA8 (22 chars)
+0AAA..0AB0 (7 chars)
+0AB2..0AB3 (2 chars)
+0AB5..0AB9 (5 chars)
+0ABD..0AC0 (4 chars)
+0AC9
+0ACB..0ACC (2 chars)
+0AD0
+0AE0
+0AE6..0AEF (10 chars)
+0B02..0B03 (2 chars)
+0B05..0B0C (8 chars)
+0B0F..0B10 (2 chars)
+0B13..0B28 (22 chars)
+0B2A..0B30 (7 chars)
+0B32..0B33 (2 chars)
+0B36..0B39 (4 chars)
+0B3D..0B3E (2 chars)
+0B40
+0B47..0B48 (2 chars)
+0B4B..0B4C (2 chars)
+0B57
+0B5C..0B5D (2 chars)
+0B5F..0B61 (3 chars)
+0B66..0B70 (11 chars)
+0B83
+0B85..0B8A (6 chars)
+0B8E..0B90 (3 chars)
+0B92..0B95 (4 chars)
+0B99..0B9A (2 chars)
+0B9C
+0B9E..0B9F (2 chars)
+0BA3..0BA4 (2 chars)
+0BA8..0BAA (3 chars)
+0BAE..0BB5 (8 chars)
+0BB7..0BB9 (3 chars)
+0BBE..0BBF (2 chars)
+0BC1..0BC2 (2 chars)
+0BC6..0BC8 (3 chars)
+0BCA..0BCC (3 chars)
+0BD7
+0BE7..0BF2 (12 chars)
+0C01..0C03 (3 chars)
+0C05..0C0C (8 chars)
+0C0E..0C10 (3 chars)
+0C12..0C28 (23 chars)
+0C2A..0C33 (10 chars)
+0C35..0C39 (5 chars)
+0C41..0C44 (4 chars)
+0C60..0C61 (2 chars)
+0C66..0C6F (10 chars)
+0C82..0C83 (2 chars)
+0C85..0C8C (8 chars)
+0C8E..0C90 (3 chars)
+0C92..0CA8 (23 chars)
+0CAA..0CB3 (10 chars)
+0CB5..0CB9 (5 chars)
+0CBE
+0CC0..0CC4 (5 chars)
+0CC7..0CC8 (2 chars)
+0CCA..0CCB (2 chars)
+0CD5..0CD6 (2 chars)
+0CDE
+0CE0..0CE1 (2 chars)
+0CE6..0CEF (10 chars)
+0D02..0D03 (2 chars)
+0D05..0D0C (8 chars)
+0D0E..0D10 (3 chars)
+0D12..0D28 (23 chars)
+0D2A..0D39 (16 chars)
+0D3E..0D40 (3 chars)
+0D46..0D48 (3 chars)
+0D4A..0D4C (3 chars)
+0D57
+0D60..0D61 (2 chars)
+0D66..0D6F (10 chars)
+0D82..0D83 (2 chars)
+0D85..0D96 (18 chars)
+0D9A..0DB1 (24 chars)
+0DB3..0DBB (9 chars)
+0DBD
+0DC0..0DC6 (7 chars)
+0DCF..0DD1 (3 chars)
+0DD8..0DDF (8 chars)
+0DF2..0DF4 (3 chars)
+0E01..0E30 (48 chars)
+0E32..0E33 (2 chars)
+0E40..0E46 (7 chars)
+0E4F..0E5B (13 chars)
+0E81..0E82 (2 chars)
+0E84
+0E87..0E88 (2 chars)
+0E8A
+0E8D
+0E94..0E97 (4 chars)
+0E99..0E9F (7 chars)
+0EA1..0EA3 (3 chars)
+0EA5
+0EA7
+0EAA..0EAB (2 chars)
+0EAD..0EB0 (4 chars)
+0EB2..0EB3 (2 chars)
+0EBD
+0EC0..0EC4 (5 chars)
+0EC6
+0ED0..0ED9 (10 chars)
+0EDC..0EDD (2 chars)
+0F00..0F17 (24 chars)
+0F1A..0F34 (27 chars)
+0F36
+0F38
+0F3E..0F47 (10 chars)
+0F49..0F6A (34 chars)
+0F7F
+0F85
+0F88..0F8B (4 chars)
+0FBE..0FC5 (8 chars)
+0FC7..0FCC (6 chars)
+0FCF
+1000..1021 (34 chars)
+1023..1027 (5 chars)
+1029..102A (2 chars)
+102C
+1031
+1038
+1040..1057 (24 chars)
+10A0..10C5 (38 chars)
+10D0..10F6 (39 chars)
+10FB
+1100..1159 (90 chars)
+115F..11A2 (68 chars)
+11A8..11F9 (82 chars)
+1200..1206 (7 chars)
+1208..1246 (63 chars)
+1248
+124A..124D (4 chars)
+1250..1256 (7 chars)
+1258
+125A..125D (4 chars)
+1260..1286 (39 chars)
+1288
+128A..128D (4 chars)
+1290..12AE (31 chars)
+12B0
+12B2..12B5 (4 chars)
+12B8..12BE (7 chars)
+12C0
+12C2..12C5 (4 chars)
+12C8..12CE (7 chars)
+12D0..12D6 (7 chars)
+12D8..12EE (23 chars)
+12F0..130E (31 chars)
+1310
+1312..1315 (4 chars)
+1318..131E (7 chars)
+1320..1346 (39 chars)
+1348..135A (19 chars)
+1361..137C (28 chars)
+13A0..13F4 (85 chars)
+1401..1676 (630 chars)
+1681..169A (26 chars)
+16A0..16F0 (81 chars)
+1780..17B6 (55 chars)
+17BE..17C5 (8 chars)
+17C7..17C8 (2 chars)
+17D4..17DA (7 chars)
+17DC
+17E0..17E9 (10 chars)
+1810..1819 (10 chars)
+1820..1877 (88 chars)
+1880..18A8 (41 chars)
+1E00..1E9B (156 chars)
+1EA0..1EF9 (90 chars)
+1F00..1F15 (22 chars)
+1F18..1F1D (6 chars)
+1F20..1F45 (38 chars)
+1F48..1F4D (6 chars)
+1F50..1F57 (8 chars)
+1F59
+1F5B
+1F5D
+1F5F..1F7D (31 chars)
+1F80..1FB4 (53 chars)
+1FB6..1FBC (7 chars)
+1FBE
+1FC2..1FC4 (3 chars)
+1FC6..1FCC (7 chars)
+1FD0..1FD3 (4 chars)
+1FD6..1FDB (6 chars)
+1FE0..1FEC (13 chars)
+1FF2..1FF4 (3 chars)
+1FF6..1FFC (7 chars)
+200E
+207F
+2102
+2107
+210A..2113 (10 chars)
+2115
+2119..211D (5 chars)
+2124
+2126
+2128
+212A..212D (4 chars)
+212F..2131 (3 chars)
+2133..2139 (7 chars)
+2160..2183 (36 chars)
+2336..237A (69 chars)
+2395
+249C..24E9 (78 chars)
+3005..3007 (3 chars)
+3021..3029 (9 chars)
+3031..3035 (5 chars)
+3038..303A (3 chars)
+3041..3094 (84 chars)
+309D..309E (2 chars)
+30A1..30FA (90 chars)
+30FC..30FE (3 chars)
+3105..312C (40 chars)
+3131..318E (94 chars)
+3190..31B7 (40 chars)
+3200..321C (29 chars)
+3220..3243 (36 chars)
+3260..327B (28 chars)
+327F..32B0 (50 chars)
+32C0..32CB (12 chars)
+32D0..32FE (47 chars)
+3300..3376 (119 chars)
+337B..33DD (99 chars)
+33E0..33FE (31 chars)
+3400..4DB5 (6582 chars)
+4E00..9FA5 (20902 chars)
+A000..A48C (1165 chars)
+AC00..D7A3 (11172 chars)
+D800..F7FF (8192 chars)
+F900..FA2D (302 chars)
+FB00..FB06 (7 chars)
+FB13..FB17 (5 chars)
+FF21..FF3A (26 chars)
+FF41..FF5A (26 chars)
+FF66..FFBE (89 chars)
+FFC2..FFC7 (6 chars)
+FFCA..FFCF (6 chars)
+FFD2..FFD7 (6 chars)
+FFDA..FFDC (3 chars)
+
+*******************************************
+
+Property dump for: 0x02000000 (Bidi: (Hebrew) Right-to-Left)
+
+05BE
+05C0
+05C3
+05D0..05EA (27 chars)
+05F0..05F4 (5 chars)
+200F
+FB1D
+FB1F..FB28 (10 chars)
+FB2A..FB36 (13 chars)
+FB38..FB3C (5 chars)
+FB3E
+FB40..FB41 (2 chars)
+FB43..FB44 (2 chars)
+FB46..FB4F (10 chars)
+
+*******************************************
+
+Property dump for: 0x0B000000 (Bidi: Arabic Right-to-Left)
+
+061B
+061F
+0621..063A (26 chars)
+0640..064A (11 chars)
+066D
+0671..06D5 (101 chars)
+06E5..06E6 (2 chars)
+06FA..06FE (5 chars)
+0700..070D (14 chars)
+0710
+0712..072C (27 chars)
+0780..07A5 (38 chars)
+FB50..FBB1 (98 chars)
+FBD3..FD3D (363 chars)
+FD50..FD8F (64 chars)
+FD92..FDC7 (54 chars)
+FDF0..FDFB (12 chars)
+FE70..FE72 (3 chars)
+FE74
+FE76..FEFC (135 chars)
+
+*******************************************
+
+Property dump for: 0x03000000 (Bidi: European Digit)
+
+0030..0039 (10 chars)
+00B2..00B3 (2 chars)
+00B9
+06F0..06F9 (10 chars)
+2070
+2074..2079 (6 chars)
+2080..2089 (10 chars)
+2460..249B (60 chars)
+24EA
+FF10..FF19 (10 chars)
+
+*******************************************
+
+Property dump for: 0x04000000 (Bidi: Eur Num Separator)
+
+002F
+FF0F
+
+*******************************************
+
+Property dump for: 0x05000000 (Bidi: Eur Num Terminator)
+
+0023..0025 (3 chars)
+002B
+002D
+00A2..00A5 (4 chars)
+00B0..00B1 (2 chars)
+066A
+09F2..09F3 (2 chars)
+0E3F
+17DB
+2030..2034 (5 chars)
+207A..207B (2 chars)
+208A..208B (2 chars)
+20A0..20AF (16 chars)
+212E
+2212..2213 (2 chars)
+FB29
+FE5F
+FE62..FE63 (2 chars)
+FE69..FE6A (2 chars)
+FF03..FF05 (3 chars)
+FF0B
+FF0D
+FFE0..FFE1 (2 chars)
+FFE5..FFE6 (2 chars)
+
+*******************************************
+
+Property dump for: 0x06000000 (Bidi: Arabic Digit)
+
+0660..0669 (10 chars)
+066B..066C (2 chars)
+
+*******************************************
+
+Property dump for: 0x07000000 (Bidi: Common Separator)
+
+002C
+002E
+003A
+00A0
+060C
+FE50
+FE52
+FE55
+FF0C
+FF0E
+FF1A
+
+*******************************************
+
+Property dump for: 0x08000000 (Bidi: Block Separator)
+
+000A
+000D
+001C..001E (3 chars)
+0085
+2029
+
+*******************************************
+
+Property dump for: 0x09000000 (Bidi: Segment Separator)
+
+0009
+000B
+001F
+
+*******************************************
+
+Property dump for: 0x0A000000 (Bidi: Whitespace)
+
+000C
+0020
+1680
+2000..200A (11 chars)
+2028
+202F
+3000
+
+*******************************************
+
+Property dump for: 0x0C000000 (Bidi: Non-spacing Mark)
+
+0300..034E (79 chars)
+0360..0362 (3 chars)
+0483..0486 (4 chars)
+0488..0489 (2 chars)
+0591..05A1 (17 chars)
+05A3..05B9 (23 chars)
+05BB..05BD (3 chars)
+05BF
+05C1..05C2 (2 chars)
+05C4
+064B..0655 (11 chars)
+0670
+06D6..06E4 (15 chars)
+06E7..06E8 (2 chars)
+06EA..06ED (4 chars)
+0711
+0730..074A (27 chars)
+07A6..07B0 (11 chars)
+0901..0902 (2 chars)
+093C
+0941..0948 (8 chars)
+094D
+0951..0954 (4 chars)
+0962..0963 (2 chars)
+0981
+09BC
+09C1..09C4 (4 chars)
+09CD
+09E2..09E3 (2 chars)
+0A02
+0A3C
+0A41..0A42 (2 chars)
+0A47..0A48 (2 chars)
+0A4B..0A4D (3 chars)
+0A70..0A71 (2 chars)
+0A81..0A82 (2 chars)
+0ABC
+0AC1..0AC5 (5 chars)
+0AC7..0AC8 (2 chars)
+0ACD
+0B01
+0B3C
+0B3F
+0B41..0B43 (3 chars)
+0B4D
+0B56
+0B82
+0BC0
+0BCD
+0C3E..0C40 (3 chars)
+0C46..0C48 (3 chars)
+0C4A..0C4D (4 chars)
+0C55..0C56 (2 chars)
+0CBF
+0CC6
+0CCC..0CCD (2 chars)
+0D41..0D43 (3 chars)
+0D4D
+0DCA
+0DD2..0DD4 (3 chars)
+0DD6
+0E31
+0E34..0E3A (7 chars)
+0E47..0E4E (8 chars)
+0EB1
+0EB4..0EB9 (6 chars)
+0EBB..0EBC (2 chars)
+0EC8..0ECD (6 chars)
+0F18..0F19 (2 chars)
+0F35
+0F37
+0F39
+0F71..0F7E (14 chars)
+0F80..0F84 (5 chars)
+0F86..0F87 (2 chars)
+0F90..0F97 (8 chars)
+0F99..0FBC (36 chars)
+0FC6
+102D..1030 (4 chars)
+1032
+1036..1037 (2 chars)
+1039
+1058..1059 (2 chars)
+17B7..17BD (7 chars)
+17C6
+17C9..17D3 (11 chars)
+18A9
+20D0..20E3 (20 chars)
+302A..302F (6 chars)
+3099..309A (2 chars)
+F8F0..F8FF (16 chars)
+FB1E
+FE20..FE23 (4 chars)
+
+*******************************************
+
+Property dump for: 0x0D000000 (Bidi: Boundary Neutral)
+
+0000..0008 (9 chars)
+000E..001B (14 chars)
+007F..0084 (6 chars)
+0086..009F (26 chars)
+070F
+180B..180E (4 chars)
+200B..200D (3 chars)
+206A..206F (6 chars)
+FEFF
+FFF9..FFFB (3 chars)
+
+*******************************************
+
+Property dump for: 0x0E000000 (Bidi: PDF)
+
+202C
+
+*******************************************
+
+Property dump for: 0x0F000000 (Bidi: Embedding or Override)
+
+202A..202B (2 chars)
+202D..202E (2 chars)
+
+*******************************************
+
+Property dump for: 0x80000009 (Bidi: Other Neutral)
+
+0021..0022 (2 chars)
+0026..002A (5 chars)
+003B..0040 (6 chars)
+005B..0060 (6 chars)
+007B..007E (4 chars)
+00A1
+00A6..00A9 (4 chars)
+00AB..00AF (5 chars)
+00B4
+00B6..00B8 (3 chars)
+00BB..00BF (5 chars)
+00D7
+00F7
+02B9..02BA (2 chars)
+02C2..02CF (14 chars)
+02D2..02DF (14 chars)
+02E5..02ED (9 chars)
+0374..0375 (2 chars)
+037E
+0384..0385 (2 chars)
+0387
+058A
+06E9
+0F3A..0F3D (4 chars)
+169B..169C (2 chars)
+1800..180A (11 chars)
+1FBD
+1FBF..1FC1 (3 chars)
+1FCD..1FCF (3 chars)
+1FDD..1FDF (3 chars)
+1FED..1FEF (3 chars)
+1FFD..1FFE (2 chars)
+2010..2027 (24 chars)
+2035..2046 (18 chars)
+2048..204D (6 chars)
+207C..207E (3 chars)
+208C..208E (3 chars)
+2100..2101 (2 chars)
+2103..2106 (4 chars)
+2108..2109 (2 chars)
+2114
+2116..2118 (3 chars)
+211E..2123 (6 chars)
+2125
+2127
+2129
+2132
+213A
+2153..215F (13 chars)
+2190..21F3 (100 chars)
+2200..2211 (18 chars)
+2214..22F1 (222 chars)
+2300..2335 (54 chars)
+237B
+237D..2394 (24 chars)
+2396..239A (5 chars)
+2400..2426 (39 chars)
+2440..244A (11 chars)
+2500..2595 (150 chars)
+25A0..25F7 (88 chars)
+2600..2613 (20 chars)
+2619..2671 (89 chars)
+2701..2704 (4 chars)
+2706..2709 (4 chars)
+270C..2727 (28 chars)
+2729..274B (35 chars)
+274D
+274F..2752 (4 chars)
+2756
+2758..275E (7 chars)
+2761..2767 (7 chars)
+2776..2794 (31 chars)
+2798..27AF (24 chars)
+27B1..27BE (14 chars)
+2800..28FF (256 chars)
+2E80..2E99 (26 chars)
+2E9B..2EF3 (89 chars)
+2F00..2FD5 (214 chars)
+2FF0..2FFB (12 chars)
+3001..3004 (4 chars)
+3008..3020 (25 chars)
+3030
+3036..3037 (2 chars)
+303E..303F (2 chars)
+309B..309C (2 chars)
+30FB
+A490..A4A1 (18 chars)
+A4A4..A4B3 (16 chars)
+A4B5..A4C0 (12 chars)
+A4C2..A4C4 (3 chars)
+A4C6
+FD3E..FD3F (2 chars)
+FE30..FE44 (21 chars)
+FE49..FE4F (7 chars)
+FE51
+FE54
+FE56..FE5E (9 chars)
+FE60..FE61 (2 chars)
+FE64..FE66 (3 chars)
+FE68
+FE6B
+FF01..FF02 (2 chars)
+FF06..FF0A (5 chars)
+FF1B..FF20 (6 chars)
+FF3B..FF40 (6 chars)
+FF5B..FF5E (4 chars)
+FF61..FF65 (5 chars)
+FFE2..FFE4 (3 chars)
+FFE8..FFEE (7 chars)
+FFFC..FFFD (2 chars)
+
+*******************************************
+
+Property dump for: 0x80000005 (Private Use)
+
+E000..F8FF (6400 chars)
+
+*******************************************
+
+Property dump for: 0x80000000 (Uppercase)
+
+0041..005A (26 chars)
+00C0..00D6 (23 chars)
+00D8..00DE (7 chars)
+0100
+0102
+0104
+0106
+0108
+010A
+010C
+010E
+0110
+0112
+0114
+0116
+0118
+011A
+011C
+011E
+0120
+0122
+0124
+0126
+0128
+012A
+012C
+012E
+0130
+0132
+0134
+0136
+0139
+013B
+013D
+013F
+0141
+0143
+0145
+0147
+014A
+014C
+014E
+0150
+0152
+0154
+0156
+0158
+015A
+015C
+015E
+0160
+0162
+0164
+0166
+0168
+016A
+016C
+016E
+0170
+0172
+0174
+0176
+0178..0179 (2 chars)
+017B
+017D
+0181..0182 (2 chars)
+0184
+0186..0187 (2 chars)
+0189..018B (3 chars)
+018E..0191 (4 chars)
+0193..0194 (2 chars)
+0196..0198 (3 chars)
+019C..019D (2 chars)
+019F..01A0 (2 chars)
+01A2
+01A4
+01A6..01A7 (2 chars)
+01A9
+01AC
+01AE..01AF (2 chars)
+01B1..01B3 (3 chars)
+01B5
+01B7..01B8 (2 chars)
+01BC
+01C4
+01C7
+01CA
+01CD
+01CF
+01D1
+01D3
+01D5
+01D7
+01D9
+01DB
+01DE
+01E0
+01E2
+01E4
+01E6
+01E8
+01EA
+01EC
+01EE
+01F1
+01F4
+01F6..01F8 (3 chars)
+01FA
+01FC
+01FE
+0200
+0202
+0204
+0206
+0208
+020A
+020C
+020E
+0210
+0212
+0214
+0216
+0218
+021A
+021C
+021E
+0222
+0224
+0226
+0228
+022A
+022C
+022E
+0230
+0232
+0386
+0388..038A (3 chars)
+038C
+038E..038F (2 chars)
+0391..03A1 (17 chars)
+03A3..03AB (9 chars)
+03D2..03D4 (3 chars)
+03DA
+03DC
+03DE
+03E0
+03E2
+03E4
+03E6
+03E8
+03EA
+03EC
+03EE
+0400..042F (48 chars)
+0460
+0462
+0464
+0466
+0468
+046A
+046C
+046E
+0470
+0472
+0474
+0476
+0478
+047A
+047C
+047E
+0480
+048C
+048E
+0490
+0492
+0494
+0496
+0498
+049A
+049C
+049E
+04A0
+04A2
+04A4
+04A6
+04A8
+04AA
+04AC
+04AE
+04B0
+04B2
+04B4
+04B6
+04B8
+04BA
+04BC
+04BE
+04C0..04C1 (2 chars)
+04C3
+04C7
+04CB
+04D0
+04D2
+04D4
+04D6
+04D8
+04DA
+04DC
+04DE
+04E0
+04E2
+04E4
+04E6
+04E8
+04EA
+04EC
+04EE
+04F0
+04F2
+04F4
+04F8
+0531..0556 (38 chars)
+10A0..10C5 (38 chars)
+1E00
+1E02
+1E04
+1E06
+1E08
+1E0A
+1E0C
+1E0E
+1E10
+1E12
+1E14
+1E16
+1E18
+1E1A
+1E1C
+1E1E
+1E20
+1E22
+1E24
+1E26
+1E28
+1E2A
+1E2C
+1E2E
+1E30
+1E32
+1E34
+1E36
+1E38
+1E3A
+1E3C
+1E3E
+1E40
+1E42
+1E44
+1E46
+1E48
+1E4A
+1E4C
+1E4E
+1E50
+1E52
+1E54
+1E56
+1E58
+1E5A
+1E5C
+1E5E
+1E60
+1E62
+1E64
+1E66
+1E68
+1E6A
+1E6C
+1E6E
+1E70
+1E72
+1E74
+1E76
+1E78
+1E7A
+1E7C
+1E7E
+1E80
+1E82
+1E84
+1E86
+1E88
+1E8A
+1E8C
+1E8E
+1E90
+1E92
+1E94
+1EA0
+1EA2
+1EA4
+1EA6
+1EA8
+1EAA
+1EAC
+1EAE
+1EB0
+1EB2
+1EB4
+1EB6
+1EB8
+1EBA
+1EBC
+1EBE
+1EC0
+1EC2
+1EC4
+1EC6
+1EC8
+1ECA
+1ECC
+1ECE
+1ED0
+1ED2
+1ED4
+1ED6
+1ED8
+1EDA
+1EDC
+1EDE
+1EE0
+1EE2
+1EE4
+1EE6
+1EE8
+1EEA
+1EEC
+1EEE
+1EF0
+1EF2
+1EF4
+1EF6
+1EF8
+1F08..1F0F (8 chars)
+1F18..1F1D (6 chars)
+1F28..1F2F (8 chars)
+1F38..1F3F (8 chars)
+1F48..1F4D (6 chars)
+1F59
+1F5B
+1F5D
+1F5F
+1F68..1F6F (8 chars)
+1FB8..1FBB (4 chars)
+1FC8..1FCB (4 chars)
+1FD8..1FDB (4 chars)
+1FE8..1FEC (5 chars)
+1FF8..1FFB (4 chars)
+2102
+2107
+210B..210D (3 chars)
+2110..2112 (3 chars)
+2115
+2119..211D (5 chars)
+2124
+2126
+2128
+212A..212D (4 chars)
+2130..2131 (2 chars)
+2133
+2160..216F (16 chars)
+24B6..24CF (26 chars)
+FF21..FF3A (26 chars)
+
+*******************************************
+
+Property dump for: 0x80000001 (Lowercase)
+
+0061..007A (26 chars)
+00AA
+00B5
+00BA
+00DF..00F6 (24 chars)
+00F8..00FF (8 chars)
+0101
+0103
+0105
+0107
+0109
+010B
+010D
+010F
+0111
+0113
+0115
+0117
+0119
+011B
+011D
+011F
+0121
+0123
+0125
+0127
+0129
+012B
+012D
+012F
+0131
+0133
+0135
+0137..0138 (2 chars)
+013A
+013C
+013E
+0140
+0142
+0144
+0146
+0148..0149 (2 chars)
+014B
+014D
+014F
+0151
+0153
+0155
+0157
+0159
+015B
+015D
+015F
+0161
+0163
+0165
+0167
+0169
+016B
+016D
+016F
+0171
+0173
+0175
+0177
+017A
+017C
+017E..0180 (3 chars)
+0183
+0185
+0188
+018C..018D (2 chars)
+0192
+0195
+0199..019B (3 chars)
+019E
+01A1
+01A3
+01A5
+01A8
+01AA..01AB (2 chars)
+01AD
+01B0
+01B4
+01B6
+01B9..01BA (2 chars)
+01BD..01BF (3 chars)
+01C6
+01C9
+01CC
+01CE
+01D0
+01D2
+01D4
+01D6
+01D8
+01DA
+01DC..01DD (2 chars)
+01DF
+01E1
+01E3
+01E5
+01E7
+01E9
+01EB
+01ED
+01EF..01F0 (2 chars)
+01F3
+01F5
+01F9
+01FB
+01FD
+01FF
+0201
+0203
+0205
+0207
+0209
+020B
+020D
+020F
+0211
+0213
+0215
+0217
+0219
+021B
+021D
+021F
+0223
+0225
+0227
+0229
+022B
+022D
+022F
+0231
+0233
+0250..02AD (94 chars)
+02B0..02B8 (9 chars)
+02C0..02C1 (2 chars)
+02E0..02E4 (5 chars)
+0390
+03AC..03CE (35 chars)
+03D0..03D1 (2 chars)
+03D5..03D7 (3 chars)
+03DB
+03DD
+03DF
+03E1
+03E3
+03E5
+03E7
+03E9
+03EB
+03ED
+03EF..03F3 (5 chars)
+0430..045F (48 chars)
+0461
+0463
+0465
+0467
+0469
+046B
+046D
+046F
+0471
+0473
+0475
+0477
+0479
+047B
+047D
+047F
+0481
+048D
+048F
+0491
+0493
+0495
+0497
+0499
+049B
+049D
+049F
+04A1
+04A3
+04A5
+04A7
+04A9
+04AB
+04AD
+04AF
+04B1
+04B3
+04B5
+04B7
+04B9
+04BB
+04BD
+04BF
+04C2
+04C4
+04C8
+04CC
+04D1
+04D3
+04D5
+04D7
+04D9
+04DB
+04DD
+04DF
+04E1
+04E3
+04E5
+04E7
+04E9
+04EB
+04ED
+04EF
+04F1
+04F3
+04F5
+04F9
+0561..0587 (39 chars)
+1E01
+1E03
+1E05
+1E07
+1E09
+1E0B
+1E0D
+1E0F
+1E11
+1E13
+1E15
+1E17
+1E19
+1E1B
+1E1D
+1E1F
+1E21
+1E23
+1E25
+1E27
+1E29
+1E2B
+1E2D
+1E2F
+1E31
+1E33
+1E35
+1E37
+1E39
+1E3B
+1E3D
+1E3F
+1E41
+1E43
+1E45
+1E47
+1E49
+1E4B
+1E4D
+1E4F
+1E51
+1E53
+1E55
+1E57
+1E59
+1E5B
+1E5D
+1E5F
+1E61
+1E63
+1E65
+1E67
+1E69
+1E6B
+1E6D
+1E6F
+1E71
+1E73
+1E75
+1E77
+1E79
+1E7B
+1E7D
+1E7F
+1E81
+1E83
+1E85
+1E87
+1E89
+1E8B
+1E8D
+1E8F
+1E91
+1E93
+1E95..1E9B (7 chars)
+1EA1
+1EA3
+1EA5
+1EA7
+1EA9
+1EAB
+1EAD
+1EAF
+1EB1
+1EB3
+1EB5
+1EB7
+1EB9
+1EBB
+1EBD
+1EBF
+1EC1
+1EC3
+1EC5
+1EC7
+1EC9
+1ECB
+1ECD
+1ECF
+1ED1
+1ED3
+1ED5
+1ED7
+1ED9
+1EDB
+1EDD
+1EDF
+1EE1
+1EE3
+1EE5
+1EE7
+1EE9
+1EEB
+1EED
+1EEF
+1EF1
+1EF3
+1EF5
+1EF7
+1EF9
+1F00..1F07 (8 chars)
+1F10..1F15 (6 chars)
+1F20..1F27 (8 chars)
+1F30..1F37 (8 chars)
+1F40..1F45 (6 chars)
+1F50..1F57 (8 chars)
+1F60..1F67 (8 chars)
+1F70..1F7D (14 chars)
+1F80..1F87 (8 chars)
+1F90..1F97 (8 chars)
+1FA0..1FA7 (8 chars)
+1FB0..1FB4 (5 chars)
+1FB6..1FB7 (2 chars)
+1FBE
+1FC2..1FC4 (3 chars)
+1FC6..1FC7 (2 chars)
+1FD0..1FD3 (4 chars)
+1FD6..1FD7 (2 chars)
+1FE0..1FE7 (8 chars)
+1FF2..1FF4 (3 chars)
+1FF6..1FF7 (2 chars)
+207F
+210A
+210E..210F (2 chars)
+2113
+212F
+2134
+2139
+2170..217F (16 chars)
+24D0..24E9 (26 chars)
+FB00..FB06 (7 chars)
+FB13..FB17 (5 chars)
+FF41..FF5A (26 chars)
+
+*******************************************
+
+Property dump for: 0x80000002 (Titlecase)
+
+01C5
+01C8
+01CB
+01F2
+1F88..1F8F (8 chars)
+1F98..1F9F (8 chars)
+1FA8..1FAF (8 chars)
+1FBC
+1FCC
+1FFC
+
+*******************************************
+
+Property dump for: 0x80000006 (Low Surrogate)
+
+DC00..DFFF (1024 chars)
+
+*******************************************
+
+Property dump for: 0x80000007 (High Surrogate)
+
+D800..DB7F (896 chars)
+
+*******************************************
+
+Property dump for: 0x80000008 (Private Use High Surrogate)
+
+DB80..DBFF (128 chars)
+
+*******************************************
+
+Property dump for: 0x00000000 (Unassigned Code Value)
+
+0220..0221 (2 chars)
+0234..024F (28 chars)
+02AE..02AF (2 chars)
+02EF..02FF (17 chars)
+034F..035F (17 chars)
+0363..0373 (17 chars)
+0376..0379 (4 chars)
+037B..037D (3 chars)
+037F..0383 (5 chars)
+038B
+038D
+03A2
+03CF
+03D8..03D9 (2 chars)
+03F4..03FF (12 chars)
+0487
+048A..048B (2 chars)
+04C5..04C6 (2 chars)
+04C9..04CA (2 chars)
+04CD..04CF (3 chars)
+04F6..04F7 (2 chars)
+04FA..0530 (55 chars)
+0557..0558 (2 chars)
+0560
+0588
+058B..0590 (6 chars)
+05A2
+05BA
+05C5..05CF (11 chars)
+05EB..05EF (5 chars)
+05F5..060B (23 chars)
+060D..061A (14 chars)
+061C..061E (3 chars)
+0620
+063B..063F (5 chars)
+0656..065F (10 chars)
+066E..066F (2 chars)
+06EE..06EF (2 chars)
+06FF
+070E
+072D..072F (3 chars)
+074B..077F (53 chars)
+07B1..0900 (336 chars)
+0904
+093A..093B (2 chars)
+094E..094F (2 chars)
+0955..0957 (3 chars)
+0971..0980 (16 chars)
+0984
+098D..098E (2 chars)
+0991..0992 (2 chars)
+09A9
+09B1
+09B3..09B5 (3 chars)
+09BA..09BB (2 chars)
+09BD
+09C5..09C6 (2 chars)
+09C9..09CA (2 chars)
+09CE..09D6 (9 chars)
+09D8..09DB (4 chars)
+09DE
+09E4..09E5 (2 chars)
+09FB..0A01 (7 chars)
+0A03..0A04 (2 chars)
+0A0B..0A0E (4 chars)
+0A11..0A12 (2 chars)
+0A29
+0A31
+0A34
+0A37
+0A3A..0A3B (2 chars)
+0A3D
+0A43..0A46 (4 chars)
+0A49..0A4A (2 chars)
+0A4E..0A58 (11 chars)
+0A5D
+0A5F..0A65 (7 chars)
+0A75..0A80 (12 chars)
+0A84
+0A8C
+0A8E
+0A92
+0AA9
+0AB1
+0AB4
+0ABA..0ABB (2 chars)
+0AC6
+0ACA
+0ACE..0ACF (2 chars)
+0AD1..0ADF (15 chars)
+0AE1..0AE5 (5 chars)
+0AF0..0B00 (17 chars)
+0B04
+0B0D..0B0E (2 chars)
+0B11..0B12 (2 chars)
+0B29
+0B31
+0B34..0B35 (2 chars)
+0B3A..0B3B (2 chars)
+0B44..0B46 (3 chars)
+0B49..0B4A (2 chars)
+0B4E..0B55 (8 chars)
+0B58..0B5B (4 chars)
+0B5E
+0B62..0B65 (4 chars)
+0B71..0B81 (17 chars)
+0B84
+0B8B..0B8D (3 chars)
+0B91
+0B96..0B98 (3 chars)
+0B9B
+0B9D
+0BA0..0BA2 (3 chars)
+0BA5..0BA7 (3 chars)
+0BAB..0BAD (3 chars)
+0BB6
+0BBA..0BBD (4 chars)
+0BC3..0BC5 (3 chars)
+0BC9
+0BCE..0BD6 (9 chars)
+0BD8..0BE6 (15 chars)
+0BF3..0C00 (14 chars)
+0C04
+0C0D
+0C11
+0C29
+0C34
+0C3A..0C3D (4 chars)
+0C45
+0C49
+0C4E..0C54 (7 chars)
+0C57..0C5F (9 chars)
+0C62..0C65 (4 chars)
+0C70..0C81 (18 chars)
+0C84
+0C8D
+0C91
+0CA9
+0CB4
+0CBA..0CBD (4 chars)
+0CC5
+0CC9
+0CCE..0CD4 (7 chars)
+0CD7..0CDD (7 chars)
+0CDF
+0CE2..0CE5 (4 chars)
+0CF0..0D01 (18 chars)
+0D04
+0D0D
+0D11
+0D29
+0D3A..0D3D (4 chars)
+0D44..0D45 (2 chars)
+0D49
+0D4E..0D56 (9 chars)
+0D58..0D5F (8 chars)
+0D62..0D65 (4 chars)
+0D70..0D81 (18 chars)
+0D84
+0D97..0D99 (3 chars)
+0DB2
+0DBC
+0DBE..0DBF (2 chars)
+0DC7..0DC9 (3 chars)
+0DCB..0DCE (4 chars)
+0DD5
+0DD7
+0DE0..0DF1 (18 chars)
+0DF5..0E00 (12 chars)
+0E3B..0E3E (4 chars)
+0E5C..0E80 (37 chars)
+0E83
+0E85..0E86 (2 chars)
+0E89
+0E8B..0E8C (2 chars)
+0E8E..0E93 (6 chars)
+0E98
+0EA0
+0EA4
+0EA6
+0EA8..0EA9 (2 chars)
+0EAC
+0EBA
+0EBE..0EBF (2 chars)
+0EC5
+0EC7
+0ECE..0ECF (2 chars)
+0EDA..0EDB (2 chars)
+0EDE..0EFF (34 chars)
+0F48
+0F6B..0F70 (6 chars)
+0F8C..0F8F (4 chars)
+0F98
+0FBD
+0FCD..0FCE (2 chars)
+0FD0..0FFF (48 chars)
+1022
+1028
+102B
+1033..1035 (3 chars)
+103A..103F (6 chars)
+105A..109F (70 chars)
+10C6..10CF (10 chars)
+10F7..10FA (4 chars)
+10FC..10FF (4 chars)
+115A..115E (5 chars)
+11A3..11A7 (5 chars)
+11FA..11FF (6 chars)
+1207
+1247
+1249
+124E..124F (2 chars)
+1257
+1259
+125E..125F (2 chars)
+1287
+1289
+128E..128F (2 chars)
+12AF
+12B1
+12B6..12B7 (2 chars)
+12BF
+12C1
+12C6..12C7 (2 chars)
+12CF
+12D7
+12EF
+130F
+1311
+1316..1317 (2 chars)
+131F
+1347
+135B..1360 (6 chars)
+137D..139F (35 chars)
+13F5..1400 (12 chars)
+1677..167F (9 chars)
+169D..169F (3 chars)
+16F1..177F (143 chars)
+17DD..17DF (3 chars)
+17EA..17FF (22 chars)
+180F
+181A..181F (6 chars)
+1878..187F (8 chars)
+18AA..1DFF (1366 chars)
+1E9C..1E9F (4 chars)
+1EFA..1EFF (6 chars)
+1F16..1F17 (2 chars)
+1F1E..1F1F (2 chars)
+1F46..1F47 (2 chars)
+1F4E..1F4F (2 chars)
+1F58
+1F5A
+1F5C
+1F5E
+1F7E..1F7F (2 chars)
+1FB5
+1FC5
+1FD4..1FD5 (2 chars)
+1FDC
+1FF0..1FF1 (2 chars)
+1FF5
+1FFF
+2047
+204E..2069 (28 chars)
+2071..2073 (3 chars)
+208F..209F (17 chars)
+20B0..20CF (32 chars)
+20E4..20FF (28 chars)
+213B..2152 (24 chars)
+2184..218F (12 chars)
+21F4..21FF (12 chars)
+22F2..22FF (14 chars)
+237C
+239B..23FF (101 chars)
+2427..243F (25 chars)
+244B..245F (21 chars)
+24EB..24FF (21 chars)
+2596..259F (10 chars)
+25F8..25FF (8 chars)
+2614..2618 (5 chars)
+2672..2700 (143 chars)
+2705
+270A..270B (2 chars)
+2728
+274C
+274E
+2753..2755 (3 chars)
+2757
+275F..2760 (2 chars)
+2768..2775 (14 chars)
+2795..2797 (3 chars)
+27B0
+27BF..27FF (65 chars)
+2900..2E7F (1408 chars)
+2E9A
+2EF4..2EFF (12 chars)
+2FD6..2FEF (26 chars)
+2FFC..2FFF (4 chars)
+303B..303D (3 chars)
+3040
+3095..3098 (4 chars)
+309F..30A0 (2 chars)
+30FF..3104 (6 chars)
+312D..3130 (4 chars)
+318F
+31B8..31FF (72 chars)
+321D..321F (3 chars)
+3244..325F (28 chars)
+327C..327E (3 chars)
+32B1..32BF (15 chars)
+32CC..32CF (4 chars)
+32FF
+3377..337A (4 chars)
+33DE..33DF (2 chars)
+33FF
+4DB6..4DFF (74 chars)
+9FA6..9FFF (90 chars)
+A48D..A48F (3 chars)
+A4A2..A4A3 (2 chars)
+A4B4
+A4C1
+A4C5
+A4C7..ABFF (1849 chars)
+D7A4..D7FF (92 chars)
+FA2E..FAFF (210 chars)
+FB07..FB12 (12 chars)
+FB18..FB1C (5 chars)
+FB37
+FB3D
+FB3F
+FB42
+FB45
+FBB2..FBD2 (33 chars)
+FD40..FD4F (16 chars)
+FD90..FD91 (2 chars)
+FDC8..FDEF (40 chars)
+FDFC..FE1F (36 chars)
+FE24..FE2F (12 chars)
+FE45..FE48 (4 chars)
+FE53
+FE67
+FE6C..FE6F (4 chars)
+FE73
+FE75
+FEFD..FEFE (2 chars)
+FF00
+FF5F..FF60 (2 chars)
+FFBF..FFC1 (3 chars)
+FFC8..FFC9 (2 chars)
+FFD0..FFD1 (2 chars)
+FFD8..FFD9 (2 chars)
+FFDD..FFDF (3 chars)
+FFE7
+FFEF..FFF8 (10 chars)
+
diff --git a/lib/unicode/ReadMe.txt b/lib/unicode/ReadMe.txt
new file mode 100644
index 0000000000..889c32572c
--- /dev/null
+++ b/lib/unicode/ReadMe.txt
@@ -0,0 +1,28 @@
+June 23, 1999
+
+This directory contains the initial release for Unicode 3.0.
+
+This release consists of corrections and additions to the
+Unicode Character Database, to match the publication of
+The Unicode Standard, Version 3.0.
+
+Detailed documentation of the files constituting the
+Unicode Character Database (contributory data files for
+the standard itself) can now be found in
+UnicodeCharacterDatabase.html.
+
+--------------------------------------------------------------------------
+NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE NOTE
+
+The files have been copied 1999-Sep-14 from
+
+ ftp://ftp.unicode.org/Public/3.0-Update/
+
+and renamed to better fit 8.3 filename limitations.
+
+For example, the UnicodeCharacterDatabase.html referred above is
+now called Unicode.html.
+
+jhi@iki.fi
+
+
diff --git a/lib/unicode/SpecCase.txt b/lib/unicode/SpecCase.txt
new file mode 100644
index 0000000000..af002ef4cf
--- /dev/null
+++ b/lib/unicode/SpecCase.txt
@@ -0,0 +1,219 @@
+# SpecialCasing-2.txt
+#
+# Special Casing Properties
+#
+# This file is a supplement to the UnicodeData file.
+# It contains additional information about the casing of Unicode characters.
+# (For compatibility, the UnicodeData.txt file only contains case mappings for
+# characters where they are 1-1, and does not have locale-specific mappings.)
+# These are informative character properties.
+#
+# Send comments to mark@unicode.org
+#
+# ================================================================================
+# Format
+# ================================================================================
+# The entries in this file are in the following machine-readable format:
+#
+# <entry> := <case_mapping> <condition_list>? (<s>* "#" <comment>)?
+#
+# <case_mapping> := <source> <sep> <lower> <sep> <title> <sep> <upper> <sep>
+#
+# <source> := <code_point>
+# <sep> := <s>* ";" <s>*
+# <lower> := <code_point_list>
+# <title> := <code_point_list>
+# <upper> := <code_point_list>
+# <code_point_list> := <code_point> (<s>+ <code_point>)*
+# <code_point> := <hex><hex><hex><hex>
+# <hex> := [0-1A-Fa-f]
+# <s> := <space>
+#
+# <condition_list> := <locale>? (<s>+ <context>)*
+# <locale> := <ISO_3166_code> ( "_" <ISO_639_code> )? ( "_" <variant> )?
+# <ISO_3166_code> := 2-letter country code,
+# as in http://www.unicode.org/unicode/onlinedat/countries.html
+# <ISO_639_code> := 2-letter code,
+# as in http://www.unicode.org/unicode/onlinedat/languages.html
+# <context> := "FINAL" | "NON_FINAL" | "MODERN" | "NON_MODERN"
+#
+# A condition list overrides the normal behavior if any of the listed conditions is true.
+# FINAL: The letter is not followed by a letter of category L* (e.g. Ll, Lt, Lu, Lm, or Lo).
+# MODERN: The mapping is only used for modern text.
+# Conditions preceded by "NON_" represent the negation of the condition
+#
+# New contexts may be added in the future.
+# Parsers of this file must be prepared to deal with that situation.
+# Additional whitespace around elements is optional. Blank lines are ignored in parsing.
+# On any line, all text following "#" is a comment, and are ignored in parsing.
+# ================================================================================
+
+# ================================================================================
+# Unconditional mappings
+# ================================================================================
+
+# The German es-zed is special--the normal mapping is to SS.
+# Note: the titlecase should never occur in practice. It is equal to titlecase(uppercase(<es-zed>))
+
+00DF; 00DF; 0053 0073; 0053 0053; # LATIN SMALL LETTER SHARP S
+
+# Ligatures
+
+FB00; FB00; 0046 0066; 0046 0046; # LATIN SMALL LIGATURE FF
+FB01; FB01; 0046 0069; 0046 0049; # LATIN SMALL LIGATURE FI
+FB02; FB02; 0046 006C; 0046 004C; # LATIN SMALL LIGATURE FL
+FB03; FB03; 0046 0066 0069; 0046 0046 0049; # LATIN SMALL LIGATURE FFI
+FB04; FB04; 0046 0066 006C; 0046 0046 004C; # LATIN SMALL LIGATURE FFL
+FB05; FB05; 0053 0074; 0053 0054; # LATIN SMALL LIGATURE LONG S T
+FB06; FB06; 0053 0074; 0053 0054; # LATIN SMALL LIGATURE ST
+
+0587; 0587; 0535 0582; 0535 0552; # ARMENIAN SMALL LIGATURE ECH YIWN
+FB13; FB13; 0544 0576; 0544 0546; # ARMENIAN SMALL LIGATURE MEN NOW
+FB14; FB14; 0544 0565; 0544 0535; # ARMENIAN SMALL LIGATURE MEN ECH
+FB15; FB15; 0544 056B; 0544 053B; # ARMENIAN SMALL LIGATURE MEN INI
+FB16; FB16; 054E 0576; 054E 0546; # ARMENIAN SMALL LIGATURE VEW NOW
+FB17; FB17; 0544 056D; 0544 053D; # ARMENIAN SMALL LIGATURE MEN XEH
+
+# No corresponding uppercase precomposed character
+
+0149; 0149; 02BC 006E; 02BC 004E; # LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
+0390; 0390; 0399 0308 0301; 0399 0308 0301; # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+03B0; 03B0; 03A5 0308 0301; 03A5 0308 0301; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+01F0; 01F0; 004A 030C; 004A 030C; # LATIN SMALL LETTER J WITH CARON
+1E96; 1E96; 0048 0331; 0048 0331; # LATIN SMALL LETTER H WITH LINE BELOW
+1E97; 1E97; 0054 0308; 0054 0308; # LATIN SMALL LETTER T WITH DIAERESIS
+1E98; 1E98; 0057 030A; 0057 030A; # LATIN SMALL LETTER W WITH RING ABOVE
+1E99; 1E99; 0059 030A; 0059 030A; # LATIN SMALL LETTER Y WITH RING ABOVE
+1E9A; 1E9A; 0041 02BE; 0041 02BE; # LATIN SMALL LETTER A WITH RIGHT HALF RING
+1F50; 1F50; 03A5 0313; 03A5 0313; # GREEK SMALL LETTER UPSILON WITH PSILI
+1F52; 1F52; 03A5 0313 0300; 03A5 0313 0300; # GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA
+1F54; 1F54; 03A5 0313 0301; 03A5 0313 0301; # GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA
+1F56; 1F56; 03A5 0313 0342; 03A5 0313 0342; # GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI
+1FB6; 1FB6; 0391 0342; 0391 0342; # GREEK SMALL LETTER ALPHA WITH PERISPOMENI
+1FC6; 1FC6; 0397 0342; 0397 0342; # GREEK SMALL LETTER ETA WITH PERISPOMENI
+1FD2; 1FD2; 0399 0308 0300; 0399 0308 0300; # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA
+1FD3; 1FD3; 0399 0308 0301; 0399 0308 0301; # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA
+1FD6; 1FD6; 0399 0342; 0399 0342; # GREEK SMALL LETTER IOTA WITH PERISPOMENI
+1FD7; 1FD7; 0399 0308 0342; 0399 0308 0342; # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI
+1FE2; 1FE2; 03A5 0308 0300; 03A5 0308 0300; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA
+1FE3; 1FE3; 03A5 0308 0301; 03A5 0308 0301; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA
+1FE4; 1FE4; 03A1 0313; 03A1 0313; # GREEK SMALL LETTER RHO WITH PSILI
+1FE6; 1FE6; 03A5 0342; 03A5 0342; # GREEK SMALL LETTER UPSILON WITH PERISPOMENI
+1FE7; 1FE7; 03A5 0308 0342; 03A5 0308 0342; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI
+1FF6; 1FF6; 03A9 0342; 03A9 0342; # GREEK SMALL LETTER OMEGA WITH PERISPOMENI
+
+# IMPORTANT-when capitalizing iota-subscript (0345)
+# It MUST be in normalized form--moved to the end of any sequence of combining marks.
+# This is because logically it represents a following base character!
+# E.g. <iota_subscript> (<Mn> | <Mc> | <Me>)+ => (<Mn> | <Mc> | <Me>)+ <iota_subscript>
+# It should never be the first character in a word, so in titlecasing it can be left as is.
+
+# The following cases are already in the UnicodeData file, so are only commented here.
+
+# 0345; 0345; 0345; 0399; # COMBINING GREEK YPOGEGRAMMENI
+
+# All letters with YPOGEGRAMMENI (iota-subscript) or PROSGEGRAMMENI (iota adscript)
+# have special uppercases.
+# Note: characters with PROSGEGRAMMENI are actually titlecase, not uppercase!
+
+1F80; 1F80; 1F88; 1F08 0399; # GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI
+1F81; 1F81; 1F89; 1F09 0399; # GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI
+1F82; 1F82; 1F8A; 1F0A 0399; # GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1F83; 1F83; 1F8B; 1F0B 0399; # GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1F84; 1F84; 1F8C; 1F0C 0399; # GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1F85; 1F85; 1F8D; 1F0D 0399; # GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1F86; 1F86; 1F8E; 1F0E 0399; # GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1F87; 1F87; 1F8F; 1F0F 0399; # GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1F88; 1F80; 1F88; 1F08 0399; # GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI
+1F89; 1F81; 1F89; 1F09 0399; # GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI
+1F8A; 1F82; 1F8A; 1F0A 0399; # GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1F8B; 1F83; 1F8B; 1F0B 0399; # GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1F8C; 1F84; 1F8C; 1F0C 0399; # GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1F8D; 1F85; 1F8D; 1F0D 0399; # GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1F8E; 1F86; 1F8E; 1F0E 0399; # GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1F8F; 1F87; 1F8F; 1F0F 0399; # GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1F90; 1F90; 1F98; 1F28 0399; # GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI
+1F91; 1F91; 1F99; 1F29 0399; # GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI
+1F92; 1F92; 1F9A; 1F2A 0399; # GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1F93; 1F93; 1F9B; 1F2B 0399; # GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1F94; 1F94; 1F9C; 1F2C 0399; # GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1F95; 1F95; 1F9D; 1F2D 0399; # GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1F96; 1F96; 1F9E; 1F2E 0399; # GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1F97; 1F97; 1F9F; 1F2F 0399; # GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1F98; 1F90; 1F98; 1F28 0399; # GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI
+1F99; 1F91; 1F99; 1F29 0399; # GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI
+1F9A; 1F92; 1F9A; 1F2A 0399; # GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1F9B; 1F93; 1F9B; 1F2B 0399; # GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1F9C; 1F94; 1F9C; 1F2C 0399; # GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1F9D; 1F95; 1F9D; 1F2D 0399; # GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1F9E; 1F96; 1F9E; 1F2E 0399; # GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1F9F; 1F97; 1F9F; 1F2F 0399; # GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+1FA0; 1FA0; 1FA8; 1F68 0399; # GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI
+1FA1; 1FA1; 1FA9; 1F69 0399; # GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI
+1FA2; 1FA2; 1FAA; 1F6A 0399; # GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI
+1FA3; 1FA3; 1FAB; 1F6B 0399; # GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI
+1FA4; 1FA4; 1FAC; 1F6C 0399; # GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI
+1FA5; 1FA5; 1FAD; 1F6D 0399; # GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI
+1FA6; 1FA6; 1FAE; 1F6E 0399; # GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI
+1FA7; 1FA7; 1FAF; 1F6F 0399; # GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI
+1FA8; 1FA0; 1FA8; 1F68 0399; # GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI
+1FA9; 1FA1; 1FA9; 1F69 0399; # GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI
+1FAA; 1FA2; 1FAA; 1F6A 0399; # GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI
+1FAB; 1FA3; 1FAB; 1F6B 0399; # GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI
+1FAC; 1FA4; 1FAC; 1F6C 0399; # GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI
+1FAD; 1FA5; 1FAD; 1F6D 0399; # GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI
+1FAE; 1FA6; 1FAE; 1F6E 0399; # GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
+1FAF; 1FA7; 1FAF; 1F6F 0399; # GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
+
+1FB3; 1FB3; 1FBC; 0391 0399; # GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI
+1FBC; 1FB3; 1FBC; 0391 0399; # GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI
+1FC3; 1FC3; 1FCC; 0397 0399; # GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI
+1FCC; 1FC3; 1FCC; 0397 0399; # GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI
+1FF3; 1FF3; 1FFC; 03A9 0399; # GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI
+1FFC; 1FF3; 1FFC; 03A9 0399; # GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI
+
+# Some characters with YPOGEGRAMMENI are also have no corresponding titlecases
+
+1FB2; 1FB2; 1FBA 0345; 1FBA 0399; # GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI
+1FB4; 1FB4; 0386 0345; 0386 0399; # GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI
+1FC2; 1FC2; 1FCA 0345; 1FCA 0399; # GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI
+1FC4; 1FC4; 0389 0345; 0389 0399; # GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI
+1FF2; 1FF2; 1FFA 0345; 1FFA 0399; # GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI
+1FF4; 1FF4; 038F 0345; 038F 0399; # GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI
+
+1FB7; 1FB7; 0391 0342 0345; 0391 0342 0399; # GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI
+1FC7; 1FC7; 0397 0342 0345; 0397 0342 0399; # GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI
+1FF7; 1FF7; 03A9 0342 0345; 03A9 0342 0399; # GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI
+
+# ================================================================================
+# Conditional mappings
+# ================================================================================
+
+# Special case for final form of sigma
+
+03A3; 03C2; 03A3; 03A3; FINAL; # GREEK CAPITAL LETTER SIGMA
+
+# Note: the following cases for non-final are already in the UnicodeData file.
+
+# 03A3; 03C3; 03A3; 03A3; # GREEK CAPITAL LETTER SIGMA
+# 03C3; 03C3; 03A3; 03A3; # GREEK SMALL LETTER SIGMA
+# 03C2; 03C2; 03A3; 03A3; # GREEK SMALL LETTER FINAL SIGMA
+
+# Note: the following cases are not included, since they would normalize in lowercasing
+
+# 03C3; 03C2; 03A3; 03A3; FINAL; # GREEK SMALL LETTER SIGMA
+# 03C2; 03C3; 03A3; 03A3; NON_FINAL; # GREEK SMALL LETTER FINAL SIGMA
+
+# ================================================================================
+# Locale-sensitive mappings
+# ================================================================================
+
+# Turkish
+
+0049; 0131; 0049; 0049; TR; # LATIN CAPITAL LETTER I
+0069; 0069; 0130; 0130; TR; # LATIN SMALL LETTER I
+
+# Note: the following cases are already in the UnicodeData file.
+
+# 0131; 0131; 0049; 0049; TR; # LATIN SMALL LETTER DOTLESS I
+# 0130; 0069; 0130; 0130; TR; # LATIN CAPITAL LETTER I WITH DOT ABOVE
diff --git a/lib/unicode/UnicodeData-Latest.txt b/lib/unicode/UnicodeData-Latest.txt
index a4e4be5e4e..6a54d3d74e 100644
--- a/lib/unicode/UnicodeData-Latest.txt
+++ b/lib/unicode/UnicodeData-Latest.txt
@@ -92,9 +92,9 @@
005B;LEFT SQUARE BRACKET;Ps;0;ON;;;;;Y;OPENING SQUARE BRACKET;;;;
005C;REVERSE SOLIDUS;Po;0;ON;;;;;N;BACKSLASH;;;;
005D;RIGHT SQUARE BRACKET;Pe;0;ON;;;;;Y;CLOSING SQUARE BRACKET;;;;
-005E;CIRCUMFLEX ACCENT;Sk;0;ON;<compat> 0020 0302;;;;N;SPACING CIRCUMFLEX;;;;
-005F;LOW LINE;Pc;0;ON;<compat> 0020 0332;;;;N;SPACING UNDERSCORE;;;;
-0060;GRAVE ACCENT;Sk;0;ON;<compat> 0020 0300;;;;N;SPACING GRAVE;;;;
+005E;CIRCUMFLEX ACCENT;Sk;0;ON;;;;;N;SPACING CIRCUMFLEX;;;;
+005F;LOW LINE;Pc;0;ON;;;;;N;SPACING UNDERSCORE;;;;
+0060;GRAVE ACCENT;Sk;0;ON;;;;;N;SPACING GRAVE;;;;
0061;LATIN SMALL LETTER A;Ll;0;L;;;;;N;;;0041;;0041
0062;LATIN SMALL LETTER B;Ll;0;L;;;;;N;;;0042;;0042
0063;LATIN SMALL LETTER C;Ll;0;L;;;;;N;;;0043;;0043
@@ -424,7 +424,7 @@
01A7;LATIN CAPITAL LETTER TONE TWO;Lu;0;L;;;;;N;;;;01A8;
01A8;LATIN SMALL LETTER TONE TWO;Ll;0;L;;;;;N;;;01A7;;01A7
01A9;LATIN CAPITAL LETTER ESH;Lu;0;L;;;;;N;;;;0283;
-01AA;LATIN LETTER REVERSED ESH LOOP;Lo;0;L;;;;;N;;;;;
+01AA;LATIN LETTER REVERSED ESH LOOP;Ll;0;L;;;;;N;;;;;
01AB;LATIN SMALL LETTER T WITH PALATAL HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER T PALATAL HOOK;;;;
01AC;LATIN CAPITAL LETTER T WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER T HOOK;;;01AD;
01AD;LATIN SMALL LETTER T WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER T HOOK;;01AC;;01AC
@@ -444,7 +444,7 @@
01BB;LATIN LETTER TWO WITH STROKE;Lo;0;L;;;;;N;LATIN LETTER TWO BAR;;;;
01BC;LATIN CAPITAL LETTER TONE FIVE;Lu;0;L;;;;;N;;;;01BD;
01BD;LATIN SMALL LETTER TONE FIVE;Ll;0;L;;;;;N;;;01BC;;01BC
-01BE;LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE;Lo;0;L;;;;;N;LATIN LETTER INVERTED GLOTTAL STOP BAR;;;;
+01BE;LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE;Ll;0;L;;;;;N;LATIN LETTER INVERTED GLOTTAL STOP BAR;;;;
01BF;LATIN LETTER WYNN;Ll;0;L;;;;;N;;;01F7;;01F7
01C0;LATIN LETTER DENTAL CLICK;Lo;0;L;;;;;N;LATIN LETTER PIPE;;;;
01C1;LATIN LETTER LATERAL CLICK;Lo;0;L;;;;;N;LATIN LETTER DOUBLE PIPE;;;;
@@ -908,7 +908,7 @@
03F0;GREEK KAPPA SYMBOL;Ll;0;L;<compat> 03BA;;;;N;GREEK SMALL LETTER SCRIPT KAPPA;;039A;;039A
03F1;GREEK RHO SYMBOL;Ll;0;L;<compat> 03C1;;;;N;GREEK SMALL LETTER TAILED RHO;;03A1;;03A1
03F2;GREEK LUNATE SIGMA SYMBOL;Ll;0;L;<compat> 03C2;;;;N;GREEK SMALL LETTER LUNATE SIGMA;;03A3;;03A3
-03F3;GREEK LETTER YOT;Lo;0;L;;;;;N;;;;;
+03F3;GREEK LETTER YOT;Ll;0;L;;;;;N;;;;;
0400;CYRILLIC CAPITAL LETTER IE WITH GRAVE;Lu;0;L;0415 0300;;;;N;;;;0450;
0401;CYRILLIC CAPITAL LETTER IO;Lu;0;L;0415 0308;;;;N;;;;0451;
0402;CYRILLIC CAPITAL LETTER DJE;Lu;0;L;;;;;N;;Serbocroatian;;0452;
@@ -1098,7 +1098,7 @@
04BD;CYRILLIC SMALL LETTER ABKHASIAN CHE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER IE HOOK;;04BC;;04BC
04BE;CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER IE HOOK OGONEK;;;04BF;
04BF;CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER IE HOOK OGONEK;;04BE;;04BE
-04C0;CYRILLIC LETTER PALOCHKA;Lo;0;L;;;;;N;CYRILLIC LETTER I;;;;
+04C0;CYRILLIC LETTER PALOCHKA;Lu;0;L;;;;;N;CYRILLIC LETTER I;;;;
04C1;CYRILLIC CAPITAL LETTER ZHE WITH BREVE;Lu;0;L;0416 0306;;;;N;CYRILLIC CAPITAL LETTER SHORT ZHE;;;04C2;
04C2;CYRILLIC SMALL LETTER ZHE WITH BREVE;Ll;0;L;0436 0306;;;;N;CYRILLIC SMALL LETTER SHORT ZHE;;04C1;;04C1
04C3;CYRILLIC CAPITAL LETTER KA WITH HOOK;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER KA HOOK;;;04C4;
@@ -2495,7 +2495,7 @@
0E30;THAI CHARACTER SARA A;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA A;;;;
0E31;THAI CHARACTER MAI HAN-AKAT;Mn;0;NSM;;;;;N;THAI VOWEL SIGN MAI HAN-AKAT;;;;
0E32;THAI CHARACTER SARA AA;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA AA;;;;
-0E33;THAI CHARACTER SARA AM;Lo;0;L;0E4D 0E32;;;;N;THAI VOWEL SIGN SARA AM;;;;
+0E33;THAI CHARACTER SARA AM;Lo;0;L;<compat> 0E4D 0E32;;;;N;THAI VOWEL SIGN SARA AM;;;;
0E34;THAI CHARACTER SARA I;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA I;;;;
0E35;THAI CHARACTER SARA II;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA II;;;;
0E36;THAI CHARACTER SARA UE;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA UE;;;;
@@ -2517,7 +2517,7 @@
0E4A;THAI CHARACTER MAI TRI;Mn;107;NSM;;;;;N;THAI TONE MAI TRI;;;;
0E4B;THAI CHARACTER MAI CHATTAWA;Mn;107;NSM;;;;;N;THAI TONE MAI CHATTAWA;;;;
0E4C;THAI CHARACTER THANTHAKHAT;Mn;0;NSM;;;;;N;THAI THANTHAKHAT;;;;
-0E4D;THAI CHARACTER NIKHAHIT;Mn;107;NSM;;;;;N;THAI NIKKHAHIT;nikkhahit;;;
+0E4D;THAI CHARACTER NIKHAHIT;Mn;0;NSM;;;;;N;THAI NIKKHAHIT;nikkhahit;;;
0E4E;THAI CHARACTER YAMAKKAN;Mn;0;NSM;;;;;N;THAI YAMAKKAN;;;;
0E4F;THAI CHARACTER FONGMAN;Po;0;L;;;;;N;THAI FONGMAN;;;;
0E50;THAI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
@@ -2563,7 +2563,7 @@
0EB0;LAO VOWEL SIGN A;Lo;0;L;;;;;N;;;;;
0EB1;LAO VOWEL SIGN MAI KAN;Mn;0;NSM;;;;;N;;;;;
0EB2;LAO VOWEL SIGN AA;Lo;0;L;;;;;N;;;;;
-0EB3;LAO VOWEL SIGN AM;Lo;0;L;0ECD 0EB2;;;;N;;;;;
+0EB3;LAO VOWEL SIGN AM;Lo;0;L;<compat> 0ECD 0EB2;;;;N;;;;;
0EB4;LAO VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;;
0EB5;LAO VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;;
0EB6;LAO VOWEL SIGN Y;Mn;0;NSM;;;;;N;;;;;
@@ -2584,7 +2584,7 @@
0ECA;LAO TONE MAI TI;Mn;122;NSM;;;;;N;;;;;
0ECB;LAO TONE MAI CATAWA;Mn;122;NSM;;;;;N;;;;;
0ECC;LAO CANCELLATION MARK;Mn;0;NSM;;;;;N;;;;;
-0ECD;LAO NIGGAHITA;Mn;122;NSM;;;;;N;;;;;
+0ECD;LAO NIGGAHITA;Mn;0;NSM;;;;;N;;;;;
0ED0;LAO DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;;
0ED1;LAO DIGIT ONE;Nd;0;L;;1;1;1;N;;;;;
0ED2;LAO DIGIT TWO;Nd;0;L;;2;2;2;N;;;;;
@@ -4465,7 +4465,7 @@
1803;MONGOLIAN FULL STOP;Po;0;ON;;;;;N;;;;;
1804;MONGOLIAN COLON;Po;0;ON;;;;;N;;;;;
1805;MONGOLIAN FOUR DOTS;Po;0;ON;;;;;N;;;;;
-1806;MONGOLIAN TODO SOFT HYPHEN;Po;0;ON;;;;;N;;;;;
+1806;MONGOLIAN TODO SOFT HYPHEN;Pd;0;ON;;;;;N;;;;;
1807;MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER;Po;0;ON;;;;;N;;;;;
1808;MONGOLIAN MANCHU COMMA;Po;0;ON;;;;;N;;;;;
1809;MONGOLIAN MANCHU FULL STOP;Po;0;ON;;;;;N;;;;;
@@ -5140,7 +5140,7 @@
202C;POP DIRECTIONAL FORMATTING;Cf;0;PDF;;;;;N;;;;;
202D;LEFT-TO-RIGHT OVERRIDE;Cf;0;LRO;;;;;N;;;;;
202E;RIGHT-TO-LEFT OVERRIDE;Cf;0;RLO;;;;;N;;;;;
-202F;NARROW NO-BREAK SPACE;Zs;0;CS;<noBreak> 0020;;;;N;;;;;
+202F;NARROW NO-BREAK SPACE;Zs;0;WS;<noBreak> 0020;;;;N;;;;;
2030;PER MILLE SIGN;Po;0;ET;;;;;N;;;;;
2031;PER TEN THOUSAND SIGN;Po;0;ET;;;;;N;;;;;
2032;PRIME;Po;0;ET;;;;;N;;;;;
@@ -5358,19 +5358,19 @@
2197;NORTH EAST ARROW;So;0;ON;;;;;N;UPPER RIGHT ARROW;;;;
2198;SOUTH EAST ARROW;So;0;ON;;;;;N;LOWER RIGHT ARROW;;;;
2199;SOUTH WEST ARROW;So;0;ON;;;;;N;LOWER LEFT ARROW;;;;
-219A;LEFTWARDS ARROW WITH STROKE;So;0;ON;2190 0338;;;;N;LEFT ARROW WITH STROKE;;;;
-219B;RIGHTWARDS ARROW WITH STROKE;So;0;ON;2192 0338;;;;N;RIGHT ARROW WITH STROKE;;;;
+219A;LEFTWARDS ARROW WITH STROKE;Sm;0;ON;2190 0338;;;;N;LEFT ARROW WITH STROKE;;;;
+219B;RIGHTWARDS ARROW WITH STROKE;Sm;0;ON;2192 0338;;;;N;RIGHT ARROW WITH STROKE;;;;
219C;LEFTWARDS WAVE ARROW;So;0;ON;;;;;N;LEFT WAVE ARROW;;;;
219D;RIGHTWARDS WAVE ARROW;So;0;ON;;;;;N;RIGHT WAVE ARROW;;;;
219E;LEFTWARDS TWO HEADED ARROW;So;0;ON;;;;;N;LEFT TWO HEADED ARROW;;;;
219F;UPWARDS TWO HEADED ARROW;So;0;ON;;;;;N;UP TWO HEADED ARROW;;;;
-21A0;RIGHTWARDS TWO HEADED ARROW;So;0;ON;;;;;N;RIGHT TWO HEADED ARROW;;;;
+21A0;RIGHTWARDS TWO HEADED ARROW;Sm;0;ON;;;;;N;RIGHT TWO HEADED ARROW;;;;
21A1;DOWNWARDS TWO HEADED ARROW;So;0;ON;;;;;N;DOWN TWO HEADED ARROW;;;;
21A2;LEFTWARDS ARROW WITH TAIL;So;0;ON;;;;;N;LEFT ARROW WITH TAIL;;;;
-21A3;RIGHTWARDS ARROW WITH TAIL;So;0;ON;;;;;N;RIGHT ARROW WITH TAIL;;;;
+21A3;RIGHTWARDS ARROW WITH TAIL;Sm;0;ON;;;;;N;RIGHT ARROW WITH TAIL;;;;
21A4;LEFTWARDS ARROW FROM BAR;So;0;ON;;;;;N;LEFT ARROW FROM BAR;;;;
21A5;UPWARDS ARROW FROM BAR;So;0;ON;;;;;N;UP ARROW FROM BAR;;;;
-21A6;RIGHTWARDS ARROW FROM BAR;So;0;ON;;;;;N;RIGHT ARROW FROM BAR;;;;
+21A6;RIGHTWARDS ARROW FROM BAR;Sm;0;ON;;;;;N;RIGHT ARROW FROM BAR;;;;
21A7;DOWNWARDS ARROW FROM BAR;So;0;ON;;;;;N;DOWN ARROW FROM BAR;;;;
21A8;UP DOWN ARROW WITH BASE;So;0;ON;;;;;N;;;;;
21A9;LEFTWARDS ARROW WITH HOOK;So;0;ON;;;;;N;LEFT ARROW WITH HOOK;;;;
@@ -5378,7 +5378,7 @@
21AB;LEFTWARDS ARROW WITH LOOP;So;0;ON;;;;;N;LEFT ARROW WITH LOOP;;;;
21AC;RIGHTWARDS ARROW WITH LOOP;So;0;ON;;;;;N;RIGHT ARROW WITH LOOP;;;;
21AD;LEFT RIGHT WAVE ARROW;So;0;ON;;;;;N;;;;;
-21AE;LEFT RIGHT ARROW WITH STROKE;So;0;ON;2194 0338;;;;N;;;;;
+21AE;LEFT RIGHT ARROW WITH STROKE;Sm;0;ON;2194 0338;;;;N;;;;;
21AF;DOWNWARDS ZIGZAG ARROW;So;0;ON;;;;;N;DOWN ZIGZAG ARROW;;;;
21B0;UPWARDS ARROW WITH TIP LEFTWARDS;So;0;ON;;;;;N;UP ARROW WITH TIP LEFT;;;;
21B1;UPWARDS ARROW WITH TIP RIGHTWARDS;So;0;ON;;;;;N;UP ARROW WITH TIP RIGHT;;;;
@@ -5410,8 +5410,8 @@
21CB;LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON;So;0;ON;;;;;N;LEFT HARPOON OVER RIGHT HARPOON;;;;
21CC;RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON;So;0;ON;;;;;N;RIGHT HARPOON OVER LEFT HARPOON;;;;
21CD;LEFTWARDS DOUBLE ARROW WITH STROKE;So;0;ON;21D0 0338;;;;N;LEFT DOUBLE ARROW WITH STROKE;;;;
-21CE;LEFT RIGHT DOUBLE ARROW WITH STROKE;So;0;ON;21D4 0338;;;;N;;;;;
-21CF;RIGHTWARDS DOUBLE ARROW WITH STROKE;So;0;ON;21D2 0338;;;;N;RIGHT DOUBLE ARROW WITH STROKE;;;;
+21CE;LEFT RIGHT DOUBLE ARROW WITH STROKE;Sm;0;ON;21D4 0338;;;;N;;;;;
+21CF;RIGHTWARDS DOUBLE ARROW WITH STROKE;Sm;0;ON;21D2 0338;;;;N;RIGHT DOUBLE ARROW WITH STROKE;;;;
21D0;LEFTWARDS DOUBLE ARROW;So;0;ON;;;;;N;LEFT DOUBLE ARROW;;;;
21D1;UPWARDS DOUBLE ARROW;So;0;ON;;;;;N;UP DOUBLE ARROW;;;;
21D2;RIGHTWARDS DOUBLE ARROW;Sm;0;ON;;;;;N;RIGHT DOUBLE ARROW;;;;
@@ -5838,7 +5838,7 @@
2392;PASSIVE-PULL-UP-OUTPUT SYMBOL;So;0;ON;;;;;N;;;;;
2393;DIRECT CURRENT SYMBOL FORM TWO;So;0;ON;;;;;N;;;;;
2394;SOFTWARE-FUNCTION SYMBOL;So;0;ON;;;;;N;;;;;
-2395;APL FUNCTIONAL SYMBOL QUAD;So;0;ON;;;;;N;;;;;
+2395;APL FUNCTIONAL SYMBOL QUAD;So;0;L;;;;;N;;;;;
2396;DECIMAL SEPARATOR KEY SYMBOL;So;0;ON;;;;;N;;;;;
2397;PREVIOUS PAGE;So;0;ON;;;;;N;;;;;
2398;NEXT PAGE;So;0;ON;;;;;N;;;;;
@@ -6206,7 +6206,7 @@
25B4;BLACK UP-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;BLACK UP POINTING SMALL TRIANGLE;;;;
25B5;WHITE UP-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;WHITE UP POINTING SMALL TRIANGLE;;;;
25B6;BLACK RIGHT-POINTING TRIANGLE;So;0;ON;;;;;N;BLACK RIGHT POINTING TRIANGLE;;;;
-25B7;WHITE RIGHT-POINTING TRIANGLE;So;0;ON;;;;;N;WHITE RIGHT POINTING TRIANGLE;;;;
+25B7;WHITE RIGHT-POINTING TRIANGLE;Sm;0;ON;;;;;N;WHITE RIGHT POINTING TRIANGLE;;;;
25B8;BLACK RIGHT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;BLACK RIGHT POINTING SMALL TRIANGLE;;;;
25B9;WHITE RIGHT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;WHITE RIGHT POINTING SMALL TRIANGLE;;;;
25BA;BLACK RIGHT-POINTING POINTER;So;0;ON;;;;;N;BLACK RIGHT POINTING POINTER;;;;
@@ -6216,7 +6216,7 @@
25BE;BLACK DOWN-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;BLACK DOWN POINTING SMALL TRIANGLE;;;;
25BF;WHITE DOWN-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;WHITE DOWN POINTING SMALL TRIANGLE;;;;
25C0;BLACK LEFT-POINTING TRIANGLE;So;0;ON;;;;;N;BLACK LEFT POINTING TRIANGLE;;;;
-25C1;WHITE LEFT-POINTING TRIANGLE;So;0;ON;;;;;N;WHITE LEFT POINTING TRIANGLE;;;;
+25C1;WHITE LEFT-POINTING TRIANGLE;Sm;0;ON;;;;;N;WHITE LEFT POINTING TRIANGLE;;;;
25C2;BLACK LEFT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;BLACK LEFT POINTING SMALL TRIANGLE;;;;
25C3;WHITE LEFT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;WHITE LEFT POINTING SMALL TRIANGLE;;;;
25C4;BLACK LEFT-POINTING POINTER;So;0;ON;;;;;N;BLACK LEFT POINTING POINTER;;;;
@@ -6377,7 +6377,7 @@
266C;BEAMED SIXTEENTH NOTES;So;0;ON;;;;;N;BARRED SIXTEENTH NOTES;;;;
266D;MUSIC FLAT SIGN;So;0;ON;;;;;N;FLAT;;;;
266E;MUSIC NATURAL SIGN;So;0;ON;;;;;N;NATURAL;;;;
-266F;MUSIC SHARP SIGN;So;0;ON;;;;;N;SHARP;;;;
+266F;MUSIC SHARP SIGN;Sm;0;ON;;;;;N;SHARP;;;;
2670;WEST SYRIAC CROSS;So;0;ON;;;;;N;;;;;
2671;EAST SYRIAC CROSS;So;0;ON;;;;;N;;;;;
2701;UPPER BLADE SCISSORS;So;0;ON;;;;;N;;;;;
@@ -9176,56 +9176,56 @@ A489;YI SYLLABLE YY;Lo;0;L;;;;;N;;;;;
A48A;YI SYLLABLE YYP;Lo;0;L;;;;;N;;;;;
A48B;YI SYLLABLE YYRX;Lo;0;L;;;;;N;;;;;
A48C;YI SYLLABLE YYR;Lo;0;L;;;;;N;;;;;
-A490;YI RADICAL QOT;Lo;0;L;;;;;N;;;;;
-A491;YI RADICAL LI;Lo;0;L;;;;;N;;;;;
-A492;YI RADICAL KIT;Lo;0;L;;;;;N;;;;;
-A493;YI RADICAL NYIP;Lo;0;L;;;;;N;;;;;
-A494;YI RADICAL CYP;Lo;0;L;;;;;N;;;;;
-A495;YI RADICAL SSI;Lo;0;L;;;;;N;;;;;
-A496;YI RADICAL GGOP;Lo;0;L;;;;;N;;;;;
-A497;YI RADICAL GEP;Lo;0;L;;;;;N;;;;;
-A498;YI RADICAL MI;Lo;0;L;;;;;N;;;;;
-A499;YI RADICAL HXIT;Lo;0;L;;;;;N;;;;;
-A49A;YI RADICAL LYR;Lo;0;L;;;;;N;;;;;
-A49B;YI RADICAL BBUT;Lo;0;L;;;;;N;;;;;
-A49C;YI RADICAL MOP;Lo;0;L;;;;;N;;;;;
-A49D;YI RADICAL YO;Lo;0;L;;;;;N;;;;;
-A49E;YI RADICAL PUT;Lo;0;L;;;;;N;;;;;
-A49F;YI RADICAL HXUO;Lo;0;L;;;;;N;;;;;
-A4A0;YI RADICAL TAT;Lo;0;L;;;;;N;;;;;
-A4A1;YI RADICAL GA;Lo;0;L;;;;;N;;;;;
-A4A4;YI RADICAL DDUR;Lo;0;L;;;;;N;;;;;
-A4A5;YI RADICAL BUR;Lo;0;L;;;;;N;;;;;
-A4A6;YI RADICAL GGUO;Lo;0;L;;;;;N;;;;;
-A4A7;YI RADICAL NYOP;Lo;0;L;;;;;N;;;;;
-A4A8;YI RADICAL TU;Lo;0;L;;;;;N;;;;;
-A4A9;YI RADICAL OP;Lo;0;L;;;;;N;;;;;
-A4AA;YI RADICAL JJUT;Lo;0;L;;;;;N;;;;;
-A4AB;YI RADICAL ZOT;Lo;0;L;;;;;N;;;;;
-A4AC;YI RADICAL PYT;Lo;0;L;;;;;N;;;;;
-A4AD;YI RADICAL HMO;Lo;0;L;;;;;N;;;;;
-A4AE;YI RADICAL YIT;Lo;0;L;;;;;N;;;;;
-A4AF;YI RADICAL VUR;Lo;0;L;;;;;N;;;;;
-A4B0;YI RADICAL SHY;Lo;0;L;;;;;N;;;;;
-A4B1;YI RADICAL VEP;Lo;0;L;;;;;N;;;;;
-A4B2;YI RADICAL ZA;Lo;0;L;;;;;N;;;;;
-A4B3;YI RADICAL JO;Lo;0;L;;;;;N;;;;;
-A4B5;YI RADICAL JJY;Lo;0;L;;;;;N;;;;;
-A4B6;YI RADICAL GOT;Lo;0;L;;;;;N;;;;;
-A4B7;YI RADICAL JJIE;Lo;0;L;;;;;N;;;;;
-A4B8;YI RADICAL WO;Lo;0;L;;;;;N;;;;;
-A4B9;YI RADICAL DU;Lo;0;L;;;;;N;;;;;
-A4BA;YI RADICAL SHUR;Lo;0;L;;;;;N;;;;;
-A4BB;YI RADICAL LIE;Lo;0;L;;;;;N;;;;;
-A4BC;YI RADICAL CY;Lo;0;L;;;;;N;;;;;
-A4BD;YI RADICAL CUOP;Lo;0;L;;;;;N;;;;;
-A4BE;YI RADICAL CIP;Lo;0;L;;;;;N;;;;;
-A4BF;YI RADICAL HXOP;Lo;0;L;;;;;N;;;;;
-A4C0;YI RADICAL SHAT;Lo;0;L;;;;;N;;;;;
-A4C2;YI RADICAL SHOP;Lo;0;L;;;;;N;;;;;
-A4C3;YI RADICAL CHE;Lo;0;L;;;;;N;;;;;
-A4C4;YI RADICAL ZZIET;Lo;0;L;;;;;N;;;;;
-A4C6;YI RADICAL KE;Lo;0;L;;;;;N;;;;;
+A490;YI RADICAL QOT;So;0;ON;;;;;N;;;;;
+A491;YI RADICAL LI;So;0;ON;;;;;N;;;;;
+A492;YI RADICAL KIT;So;0;ON;;;;;N;;;;;
+A493;YI RADICAL NYIP;So;0;ON;;;;;N;;;;;
+A494;YI RADICAL CYP;So;0;ON;;;;;N;;;;;
+A495;YI RADICAL SSI;So;0;ON;;;;;N;;;;;
+A496;YI RADICAL GGOP;So;0;ON;;;;;N;;;;;
+A497;YI RADICAL GEP;So;0;ON;;;;;N;;;;;
+A498;YI RADICAL MI;So;0;ON;;;;;N;;;;;
+A499;YI RADICAL HXIT;So;0;ON;;;;;N;;;;;
+A49A;YI RADICAL LYR;So;0;ON;;;;;N;;;;;
+A49B;YI RADICAL BBUT;So;0;ON;;;;;N;;;;;
+A49C;YI RADICAL MOP;So;0;ON;;;;;N;;;;;
+A49D;YI RADICAL YO;So;0;ON;;;;;N;;;;;
+A49E;YI RADICAL PUT;So;0;ON;;;;;N;;;;;
+A49F;YI RADICAL HXUO;So;0;ON;;;;;N;;;;;
+A4A0;YI RADICAL TAT;So;0;ON;;;;;N;;;;;
+A4A1;YI RADICAL GA;So;0;ON;;;;;N;;;;;
+A4A4;YI RADICAL DDUR;So;0;ON;;;;;N;;;;;
+A4A5;YI RADICAL BUR;So;0;ON;;;;;N;;;;;
+A4A6;YI RADICAL GGUO;So;0;ON;;;;;N;;;;;
+A4A7;YI RADICAL NYOP;So;0;ON;;;;;N;;;;;
+A4A8;YI RADICAL TU;So;0;ON;;;;;N;;;;;
+A4A9;YI RADICAL OP;So;0;ON;;;;;N;;;;;
+A4AA;YI RADICAL JJUT;So;0;ON;;;;;N;;;;;
+A4AB;YI RADICAL ZOT;So;0;ON;;;;;N;;;;;
+A4AC;YI RADICAL PYT;So;0;ON;;;;;N;;;;;
+A4AD;YI RADICAL HMO;So;0;ON;;;;;N;;;;;
+A4AE;YI RADICAL YIT;So;0;ON;;;;;N;;;;;
+A4AF;YI RADICAL VUR;So;0;ON;;;;;N;;;;;
+A4B0;YI RADICAL SHY;So;0;ON;;;;;N;;;;;
+A4B1;YI RADICAL VEP;So;0;ON;;;;;N;;;;;
+A4B2;YI RADICAL ZA;So;0;ON;;;;;N;;;;;
+A4B3;YI RADICAL JO;So;0;ON;;;;;N;;;;;
+A4B5;YI RADICAL JJY;So;0;ON;;;;;N;;;;;
+A4B6;YI RADICAL GOT;So;0;ON;;;;;N;;;;;
+A4B7;YI RADICAL JJIE;So;0;ON;;;;;N;;;;;
+A4B8;YI RADICAL WO;So;0;ON;;;;;N;;;;;
+A4B9;YI RADICAL DU;So;0;ON;;;;;N;;;;;
+A4BA;YI RADICAL SHUR;So;0;ON;;;;;N;;;;;
+A4BB;YI RADICAL LIE;So;0;ON;;;;;N;;;;;
+A4BC;YI RADICAL CY;So;0;ON;;;;;N;;;;;
+A4BD;YI RADICAL CUOP;So;0;ON;;;;;N;;;;;
+A4BE;YI RADICAL CIP;So;0;ON;;;;;N;;;;;
+A4BF;YI RADICAL HXOP;So;0;ON;;;;;N;;;;;
+A4C0;YI RADICAL SHAT;So;0;ON;;;;;N;;;;;
+A4C2;YI RADICAL SHOP;So;0;ON;;;;;N;;;;;
+A4C3;YI RADICAL CHE;So;0;ON;;;;;N;;;;;
+A4C4;YI RADICAL ZZIET;So;0;ON;;;;;N;;;;;
+A4C6;YI RADICAL KE;So;0;ON;;;;;N;;;;;
AC00;<Hangul Syllable, First>;Lo;0;L;;;;;N;;;;;
D7A3;<Hangul Syllable, Last>;Lo;0;L;;;;;N;;;;;
D800;<Non Private Use High Surrogate, First>;Cs;0;L;;;;;N;;;;;
diff --git a/lib/unicode/arabshp.txt b/lib/unicode/arabshp.txt
deleted file mode 100755
index 82f22200d6..0000000000
--- a/lib/unicode/arabshp.txt
+++ /dev/null
@@ -1,134 +0,0 @@
-# Unicode; Name; Link; Link Group
-0622; MADDAH ON ALEF; R; ALEF
-0623; HAMZAH ON ALEF; R; ALEF
-0624; HAMZAH ON WAW; R; WAW
-0625; HAMZAH UNDER ALEF; R; ALEF
-0626; HAMZAH ON YA; D; YA
-0627; ALEF; R; ALEF
-0628; BAA; D; BAA
-0629; TAA MARBUTAH; R; TAA MARBUTAH
-062A; TAA; D; BAA
-062B; THAA; D; BAA
-062C; JEEM; D; HAA
-062D; HAA; D; HAA
-062E; KHAA; D; HAA
-062F; DAL; R; DAL
-0630; THAL; R; DAL
-0631; RA; R; RA
-0632; ZAIN; R; RA
-0633; SEEN; D; SEEN
-0634; SHEEN; D; SEEN
-0635; SAD; D; SAD
-0636; DAD; D; SAD
-0637; TAH; D; TAH
-0638; DHAH; D; TAH
-0639; AIN; D; AIN
-063A; GHAIN; D; AIN
-0640; TATWEEL; C; <no shaping>
-0641; FA; D; FA
-0642; QAF; D; QAF
-0643; CAF; D; CAF
-0644; LAM; D; LAM
-0645; MEEM; D; MEEM
-0646; NOON; D; NOON
-0647; HA; D; HA
-0648; WAW; R; WAW
-0649; ALEF MAQSURAH; R; ALEF MAQSURAH
-064A; YA; D; YA
-0671; HAMZAT WASL ON ALEF; U; <no shaping>
-0672; WAVY HAMZAH ON ALEF; R; ALEF
-0673; WAVY HAMZAH UNDER ALEF; R; ALEF
-0674; HIGH HAMZAH; U; <no shaping>
-0675; HIGH HAMZAH ALEF; R; ALEF
-0676; HIGH HAMZAH WAW; R; WAW
-0677; HIGH HAMZAH WAW WITH DAMMAH; R; WAW
-0678; HIGH HAMZAH YA; D; YA
-0679; TAA WITH SMALL TAH; D; BAA
-067A; TAA WITH 2 DOTS VERTICAL ABOVE; D; BAA
-067B; BAA WITH 2 DOTS VERTICAL BELOW; D; BAA
-067C; TAA WITH RING; D; BAA
-067D; TAA WITH 3 DOTS ABOVE DOWNWARD; D; BAA
-067E; TAA WITH 3 DOTS BELOW; D; BAA
-067F; TAA WITH 4 DOTS ABOVE; D; BAA
-0680; BAA WITH 4 DOTS BELOW; D; BAA
-0681; HAMZAH ON HAA; D; HAA
-0682; HAA WITH 2 DOTS VERTICAL ABOVE; D; HAA
-0683; HAA WITH MIDDLE 2 DOTS; D; HAA
-0684; HAA WITH MIDDLE 2 DOTS VERTICAL; D; HAA
-0685; HAA WITH 3 DOTS ABOVE; D; HAA
-0686; HAA WITH MIDDLE 3 DOTS DOWNWARD; D; HAA
-0687; HAA WITH MIDDLE 4 DOTS; D; HAA
-0688; DAL WITH SMALL TAH; R; DAL
-0689; DAL WITH RING; R; DAL
-068A; DAL WITH DOT BELOW; R; DAL
-068B; DAL WITH DOT BELOW AND SMALL TAH; R; DAL
-068C; DAL WITH 2 DOTS ABOVE; R; DAL
-068D; DAL WITH 2 DOTS BELOW; R; DAL
-068E; DAL WITH 3 DOTS ABOVE; R; DAL
-068F; DAL WITH 3 DOTS ABOVE DOWNWARD; R; DAL
-0690; DAL WITH 4 DOTS ABOVE; R; DAL
-0691; RA WITH SMALL TAH; R; RA
-0692; RA WITH SMALL V; R; RA
-0693; RA WITH RING; R; RA
-0694; RA WITH DOT BELOW; R; RA
-0695; RA WITH SMALL V BELOW; R; RA
-0696; RA WITH DOT BELOW AND DOT ABOVE; R; RA
-0697; RA WITH 2 DOTS ABOVE; R; RA
-0698; RA WITH 3 DOTS ABOVE; R; RA
-0699; RA WITH 4 DOTS ABOVE; R; RA
-069A; SEEN WITH DOT BELOW AND DOT ABOVE; D; SEEN
-069B; SEEN WITH 3 DOTS BELOW; D; SEEN
-069C; SEEN WITH 3 DOTS BELOW AND 3 DOTS ABOVE; D; SEEN
-069D; SAD WITH 2 DOTS BELOW; D; SAD
-069E; SAD WITH 3 DOTS ABOVE; D; SAD
-069F; TAH WITH 3 DOTS ABOVE; D; TAH
-06A0; AIN WITH 3 DOTS ABOVE; D; AIN
-06A1; DOTLESS FA; D; FA
-06A2; FA WITH DOT MOVED BELOW; D; FA
-06A3; FA WITH DOT BELOW; D; FA
-06A4; FA WITH 3 DOTS ABOVE; D; FA
-06A5; FA WITH 3 DOTS BELOW; D; FA
-06A6; FA WITH 4 DOTS ABOVE; D; FA
-06A7; QAF WITH DOT ABOVE; D; QAF
-06A8; QAF WITH 3 DOTS ABOVE; D; QAF
-06A9; OPEN CAF; D; GAF
-06AA; SWASH CAF; D; SWASH CAF
-06AB; CAF WITH RING; D; GAF
-06AC; CAF WITH DOT ABOVE; D; CAF
-06AD; CAF WITH 3 DOTS ABOVE; D; CAF
-06AE; CAF WITH 3 DOTS BELOW; D; CAF
-06AF; GAF; D; GAF
-06B0; GAF WITH RING; D; GAF
-06B1; GAF WITH 2 DOTS ABOVE; D; GAF
-06B2; GAF WITH 2 DOTS BELOW; D; GAF
-06B3; GAF WITH 2 DOTS VERTICAL BELOW; D; GAF
-06B4; GAF WITH 3 DOTS ABOVE; D; GAF
-06B5; LAM WITH SMALL V; D; LAM
-06B6; LAM WITH DOT ABOVE; D; LAM
-06B7; LAM WITH 3 DOTS ABOVE; D; LAM
-06BA; DOTLESS NOON; D; NOON
-06BB; DOTLESS NOON WITH SMALL TAH; D; NOON
-06BC; NOON WITH RING; D; NOON
-06BD; NOON WITH 3 DOTS ABOVE; D; NOON
-06BE; KNOTTED HA; D; KNOTTED HA
-06C0; HAMZAH ON HA; R; TAA MARBUTAH
-06C1; HA GOAL; D; HA GOAL
-06C2; HAMZAH ON HA GOAL; R; HAMZAH ON HA GOAL
-06C3; TAA MARBUTAH GOAL; R; HAMZAH ON HA GOAL
-06C4; WAW WITH RING; R; WAW
-06C5; WAW WITH BAR; R; WAW
-06C6; WAW WITH SMALL V; R; WAW
-06C7; WAW WITH DAMMAH; R; WAW
-06C8; WAW WITH ALEF ABOVE; R; WAW
-06C9; WAW WITH INVERTED SMALL V; R; WAW
-06CA; WAW WITH 2 DOTS ABOVE; R; WAW
-06CB; WAW WITH 3 DOTS ABOVE; R; WAW
-06CC; DOTLESS YA; D; YA
-06CD; YA WITH TAIL; R; ALEF MAQSURAH
-06CE; YA WITH SMALL V; D; YA
-06D0; YA WITH 2 DOTS VERTICAL BELOW; D; YA
-06D1; YA WITH 3 DOTS BELOW; D; YA
-06D2; YA BARREE; R; YA BARREE
-06D3; HAMZAH ON YA BARREE; R; YA BARREE
-06D5; AE; U; <no shaping>
-
diff --git a/lib/unicode/mktables.PL b/lib/unicode/mktables.PL
index 801dbffcf9..9458a95838 100755
--- a/lib/unicode/mktables.PL
+++ b/lib/unicode/mktables.PL
@@ -193,7 +193,7 @@ END
exit if @ARGV and not grep { $_ eq Block } @ARGV;
print "Block\n";
-open(UD, 'blocks.txt') or die "Can't open blocks.txt: $!\n";
+open(UD, 'Blocks.txt') or die "Can't open blocks.txt: $!\n";
open(OUT, ">Block.pl") or die "Can't create $table.pl: $!\n";
print OUT <<"END";
return <<'END';
@@ -229,12 +229,12 @@ sub proplist {
my $split;
if ($table =~ /^Arab/) {
- open(UD, "arabshp.txt") or warn "Can't open $table: $!";
+ open(UD, "ArabShap.txt") or warn "Can't open $table: $!";
$split = '($code, $name, $link, $linkgroup) = split(/; */);';
}
elsif ($table =~ /^Jamo/) {
- open(UD, "jamo2.txt") or warn "Can't open $table: $!";
+ open(UD, "Jamo-2.txt") or warn "Can't open $table: $!";
$split = '($code, $short, $name) = split(/; */); $code =~ s/^U\+//;';
}
diff --git a/lib/unicode/props2.txt b/lib/unicode/props2.txt
deleted file mode 100755
index 3909bff394..0000000000
--- a/lib/unicode/props2.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-# Alphabetic
-0041..005A, 0061..007A, 00AA , 00B5 , 00BA , 00C0..00D6,
-00D8..00F6, 00F8..01F5, 01FA..0217, 0250..02A8, 02B0..02B8, 02BB..02C1,
-02E0..02E4, 037A , 0386 , 0388..038A, 038C , 038E..03A1,
-03A3..03CE, 03D0..03D6, 03DA , 03DC , 03DE , 03E0 ,
-03E2..03F3, 0401..040C, 040E..044F, 0451..045C, 045E..0481, 0490..04C4,
-04C7..04C8, 04CB..04CC, 04D0..04EB, 04EE..04F5, 04F8..04F9, 0531..0556,
-0559..055A, 0561..0587, 05D0..05EA, 05F0..05F2, 0621..063A, 0641..0652,
-0670..06B7, 06BA..06BE, 06C0..06CE, 06D0..06D3, 06D5..06DC, 06E1..06E8,
-06ED , 0901..0903, 0905..0939, 093D..094C, 0958..0963, 0981..0983,
-0985..098C, 098F..0990, 0993..09A8, 09AA..09B0, 09B2 , 09B6..09B9,
-09BE..09C4, 09C7..09C8, 09CB..09CC, 09D7 , 09DC..09DD, 09DF..09E3,
-09F0..09F1, 0A02 , 0A05..0A0A, 0A0F..0A10, 0A13..0A28, 0A2A..0A30,
-0A32..0A33, 0A35..0A36, 0A38..0A39, 0A3E..0A42, 0A47..0A48, 0A4B..0A4C,
-0A8F..0A91, 0A93..0AA8, 0AAA..0AB0, 0AB2..0AB3, 0AB5..0AB9, 0ABD..0AC5,
-0AC7..0AC9, 0ACB..0ACC, 0AE0 , 0B01..0B03, 0B05..0B0C, 0B0F..0B10,
-0B13..0B28, 0B2A..0B30, 0B32..0B33, 0B36..0B39, 0B3D..0B43, 0B47..0B48,
-0B4B..0B4C, 0B56..0B57, 0B5C..0B5D, 0B5F..0B61, 0B82..0B83, 0B85..0B8A,
-0B8E..0B90, 0B92..0B95, 0B99..0B9A, 0B9C , 0B9E..0B9F, 0BA3..0BA4,
-0BA8..0BAA, 0BAE..0BB5, 0BB7..0BB9, 0BBE..0BC2, 0BC6..0BC8, 0BCA..0BCC,
-0BD7 , 0C01..0C03, 0C05..0C0C, 0C0E..0C10, 0C12..0C28, 0C2A..0C33,
-0C35..0C39, 0C3E..0C44, 0C46..0C48, 0C4A..0C4C, 0C55..0C56, 0C60..0C61,
-0C82..0C83, 0C85..0C8C, 0C8E..0C90, 0C92..0CA8, 0CAA..0CB3, 0CB5..0CB9,
-0CBE..0CC4, 0CC6..0CC8, 0CCA..0CCC, 0CD5..0CD6, 0CDE , 0CE0..0CE1,
-0D02..0D03, 0D05..0D0C, 0D0E..0D10, 0D12..0D28, 0D2A..0D39, 0D3E..0D43,
-0D46..0D48, 0D4A..0D4C, 0D57 , 0D60..0D61, 0E01..0E2E, 0E30..0E3A,
-0E40..0E45, 0E47 , 0E4D , 0E81..0E82, 0E84 , 0E87..0E88,
-0E8A , 0E8D , 0E94..0E97, 0E99..0E9F, 0EA1..0EA3, 0EA5 ,
-0EA7 , 0EAA..0EAB, 0EAD..0EAE, 0EB0..0EB9, 0EBB..0EBD, 0EC0..0EC4,
-0ECD , 0EDC..0EDD, 0F40..0F47, 0F49..0F69, 0F71..0F81, 0F90..0F95,
-0F97 , 0F99..0FAD, 0FB1..0FB7, 0FB9 , 10A0..10C5, 10D0..10F6,
-1100..1159, 115F..11A2, 11A8..11F9, 1E00..1E9B, 1EA0..1EF9, 1F00..1F15,
-1F18..1F1D, 1F20..1F45, 1F48..1F4D, 1F50..1F57, 1F59 , 1F5B ,
-1F5D , 1F5F..1F7D, 1F80..1FB4, 1FB6..1FBC, 1FBE , 1FC2..1FC4,
-1FC6..1FCC, 1FD0..1FD3, 1FD6..1FDB, 1FE0..1FEC, 1FF2..1FF4, 1FF6..1FFC,
-207F , 2102 , 2107 , 210A..2113, 2115 , 2118..211D,
-2124 , 2126 , 2128 , 212A..212D, 212F..2131, 2133..2138,
-2160..2182, 3041..3094, 30A1..30FA, 3105..312C, 3131..318E, AC00..D7A3,
-FB00..FB06, FB13..FB17, FB1F..FB28, FB2A..FB36, FB38..FB3C, FB3E ,
-FB40..FB41, FB43..FB44, FB46..FBB1, FBD3..FD3D, FD50..FD8F, FD92..FDC7,
-FDF0..FDFB, FE70..FE72, FE74 , FE76..FEFC, FF21..FF3A, FF41..FF5A,
-FF66..FF6F, FF71..FF9D, FFA0..FFBE, FFC2..FFC7, FFCA..FFCF, FFD2..FFD7,
-FFDA..FFDC
-
-# Ideographic
-4E00..9FA5, F900..FA2D, 3007, 3021..3029
-
-# Mathematical
-0028..002B, 002D, 002F, 003C..003E, 005B..005E, 007B..007E, 00AC, 00B1,
-00D7, 00F7, 20A6, 2032..2034, 2044, 20D2..20E1, 2190..2194, 21D2, 21D4,
-2200..22F1, 2308..230B, 2320..2321, 2329..232A
diff --git a/lib/unicode/readme.txt b/lib/unicode/readme.txt
deleted file mode 100755
index 5f908d3067..0000000000
--- a/lib/unicode/readme.txt
+++ /dev/null
@@ -1,301 +0,0 @@
-
-UNICODE 2.0 CHARACTER DATABASE
-
-Copyright (c) 1991-1996 Unicode, Inc.
-All Rights reserved.
-
-DISCLAIMER
-
-The Unicode Character Database "UNIDATA2.TXT" is provided as-is by
-Unicode, Inc. (The Unicode Consortium). No claims are made as to fitness for any
-particular purpose. No warranties of any kind are expressed or implied. The
-recipient agrees to determine applicability of information provided. If this
-file has been purchased on magnetic or optical media from Unicode, Inc.,
-the sole remedy for any claim will be exchange of defective media within
-90 days of receipt.
-
-This disclaimer is applicable for all other data files accompanying the
-Unicode Character Database, some of which have been compiled by the
-Unicode Consortium, and some of which have been supplied by other vendors.
-
-LIMITATIONS ON RIGHTS TO REDISTRIBUTE THIS DATA
-
-Recipient is granted the right to make copies in any form for internal
-distribution and to freely use the information supplied in the creation of
-products supporting the Unicode (TM) Standard. This file can be redistributed
-to third parties or other organizations (whether for profit or not) as long
-as this notice and the disclaimer notice are retained.
-
-EXPLANATORY INFORMATION
-
-The Unicode Character Database defines the default Unicode character
-properties, and internal mappings. Particular implementations may choose to
-override the properties and mappings that are not normative. If that is done,
-it is up to the implementer to establish a protocol to convey that
-information. For more information about character properties and mappings,
-see "The Unicode Standard, Worldwide Character Encoding, Version 2.0",
-published by Addison-Wesley. For information about other data files
-accompanying the Unicode Character Database, see the section of the
-Unicode Standard they were extracted from, or the explanatory readme
-files and/or header sections with those files.
-
-The Unicode Character Database is a plain ASCII text file consisting of lines
-containing fields terminated by semicolons. Each line represents the data for
-one encoded character in the Unicode Standard, Version 2.0. Every encoded
-character has a data entry, with the exception of certain special ranges, as
-detailed below.
-
-There are five special ranges of characters that are represented only by
-their start and end characters, since the properties in the file are uniform,
-except for code values (which are all sequential and assigned). The names of CJK
-ideograph characters and Hangul syllable characters are algorithmically
-derivable. (See the Unicode Standard for more information). Surrogate
-characters and private use characters have no names.
-
-The exact ranges represented by start and end characters are:
-
- The CJK Ideographs Area (U+4E00 - U+9FFF)
- The Hangul Syllables Area (U+AC00 - U+D7A3)
- The Surrogates Area (U+D800 - U+DFFF)
- The Private Use Area (U+E000 - U+F8FF)
- CJK Compatibility Ideographs (U+F900 - U+FAFF)
-
-The following table describes the format and meaning of each field in a
-data entry in the Unicode Character Database. Fields which contain
-normative information are so indicated.
-
-Field Explanation
------ -----------
-
- 0 Code value in 4-digit hexadecimal format.
- This field is normative.
-
- 1 Unicode 2.0 Character Name. These names match exactly the
- names published in Chapter 7 of the Unicode Standard.
- This field is normative.
-
- 2 General Category. This is a useful breakdown into various "character
- types" which can be used as a default categorization in implementations.
- Some of the values are normative, and some are informative.
- See below for a brief explanation.
-
- 3 Canonical Combining Classes. The classes used for the
- Canonical Ordering Algorithm in the Unicode Standard. These
- classes are also printed in Chapter 4 of the Unicode Standard.
- This field is normative. See below for a brief explanation.
-
- 4 Bidirectional Category. See the list below for an explanation of the
- abbreviations used in this field. These are the categories required
- by the Bidirectional Behavior Algorithm in the Unicode Standard.
- These categories are summarized in Chapter 4 of the Unicode Standard.
- This field is normative.
-
- 5 Character Decomposition. In the Unicode Standard, Version 2.0, not all of
- the decompositions are full decompositions. Recursive
- application of look-up for decompositions will, in all cases, lead to
- a maximal decomposition. The decompositions match exactly the
- decompositions published with the character names in Chapter 7
- of the Unicode Standard. This field is normative.
-
- 6 Decimal digit value. This is a numeric field. If the character
- has the decimal digit property, as specified in Chapter 4 of
- the Unicode Standard, the value of that digit is represented
- with an integer value in this field. This field is normative.
-
- 7 Digit value. This is a numeric field. If the character represents a
- digit, not necessarily a decimal digit, the value is here. This
- covers digits which do not form decimal radix forms, such as the
- compatibility superscript digits. This field is informative.
-
- 8 Numeric value. This is a numeric field. If the character has the
- numeric property, as specified in Chapter 4 of the Unicode
- Standard, the value of that character is represented with an
- integer or rational number in this field. This includes fractions as,
- e.g., "1/5" for U+2155 VULGAR FRACTION ONE FIFTH.
- Also included are numerical values for compatibility characters
- such as circled numbers. This field is normative.
-
- 9 If the characters has been identified as a "mirrored" character in
- bidirectional text, this field has the value "Y"; otherwise "N".
- The list of mirrored characters is also printed in Chapter 4 of
- the Unicode Standard. This field is normative.
-
- 10 Unicode 1.0 Name. This is the old name as published in Unicode 1.0.
- This name is only provided when it is significantly different from
- the Unicode 2.0 name for the character. This field is informative.
-
- 11 10646 Comment field. This field is informative.
-
- 12 Upper case equivalent mapping. If a character is part of an
- alphabet with case distinctions, and has an upper case equivalent,
- then the upper case equivalent is in this field. See the explanation
- below on case distinctions. These mappings are always one-to-one,
- not one-to-many or many-to-one. This field is informative.
-
- 13 Lower case equivalent mapping. Similar to 12. This field is informative.
-
- 14 Title case equivalent mapping. Similar to 12. This field is informative.
-
-GENERAL CATEGORY
-
-The values in this field are abbreviations for the following. Some of the
-values are normative, and some are informative. For more information, see
-the Unicode Standard.
-
-Normative
- Mn = Mark, Non-Spacing
- Mc = Mark, Combining
- Nd = Number, Decimal Digit
- No = Number, Other
- Zs = Separator, Space
- Zl = Separator, Line
- Zp = Separator, Paragraph
- Cc = Other, Control or Format
- Co = Other, Private Use
- Cn = Other, Not Assigned
-
-Informative
- Lu = Letter, Uppercase
- Ll = Letter, Lowercase
- Lt = Letter, Titlecase
- Lm = Letter, Modifier
- Lo = Letter, Other
- Pd = Punctuation, Dash
- Ps = Punctuation, Open
- Pe = Punctuation, Close
- Po = Punctuation, Other
- Sm = Symbol, Math
- Sc = Symbol, Currency
- So = Symbol, Other
-
-BIDIRECTIONAL PROPERTIES
-
-Please refer to the Unicode Standard for an explanation of the algorithm for
-Bidirectional Behavior and an explanation of the sigificance of these categories.
-These values are normative.
-
-Strong types:
- L Left-Right; Most alphabetic, syllabic, and logographic
- characters (e.g., CJK ideographs)
- R Right-Left; Arabic, Hebrew, and
- punctuation specific to those scripts
-Weak types:
- EN European Number
- ES European Number Separator
- ET European Number Terminator
- AN Arabic Number
- CS Common Number Separator
-
-Separators:
- B Block Separator
- S Segment Separator
-
-Neutrals:
- WS Whitespace
- ON Other Neutrals ; All other characters: punctuation, symbols
-
-CHARACTER DECOMPOSITION TAGS
-
-The decomposition is a normative property of a character. The tags supplied
-with certain decompositions generally indicate formatting information.
-Where no such tag is given, the decomposition is designated as canonical.
-Conversely, the presence of a formatting tag also indicates
-that the decomposition is a compatibility decomposition and not a canonical
-decomposition. In the absence of other formatting information in a
-compatibility decomposition, the tag <compat> is used to distinguish it from
-canonical decompositions.
-
-In some instances a canonical decomposition or a compatibility decomposition
-may consist of a single character. For a canonical decomposition, this
-indicates that the character is a canonical equivalent of another single
-character. For a compatibility decomposition, this indicates that the
-character is a compatibility equivalent of another single character.
-
-The compatibility formatting tags used are:
-
- <font> A font variant (e.g. a blackletter form).
- <noBreak> A no-break version of a space or hyphen.
- <initial> An initial presentation form (Arabic).
- <medial> A medial presentation form (Arabic).
- <final> A final presentation form (Arabic).
- <isolated> An isolated presentation form (Arabic).
- <circle> An encircled form.
- <super> A superscript form.
- <sub> A subscript form.
- <vertical> A vertical layout presentation form.
- <wide> A wide (or zenkaku) compatibility character.
- <narrow> A narrow (or hankaku) compatibility character.
- <small> A small variant form (CNS compatibility).
- <square> A CJK squared font variant.
- <compat> Otherwise unspecified compatibility character.
-
-CANONICAL COMBINING CLASSES
-
- 0: Spacing, enclosing, reordrant, and surrounding
- 1: Overlays and interior
- 6: Tibetan subjoined Letters
- 7: Nuktas
- 8: Hiragana/Katakana voiced marks
- 9: Viramas
- 10: Start of fixed position classes
-199: End of fixed position classes
-200: Below left attached
-202: Below attached
-204: Below right attached
-208: Left attached (reordrant around single base character)
-210: Right attached
-212: Above left attached
-214: Above attached
-216: Above right attached
-218: Below left
-220: Below
-222: Below right
-224: Left (reordrant around single base character)
-226: Right
-228: Above left
-230: Above
-232: Above right
-234: Double above
-
-Note: some of the combining classes in this list do not currently have
-members but are specified here for completeness.
-
-CASE MAPPINGS
-
-In addition to uppercase and lowercase, because of the inclusion of certain
-composite characters for compatibility, such as "01F1;LATIN CAPITAL LETTER
-DZ", there is a third case, called titlecase, which is used where the first
-character of a word is to be capitalized (e.g. UPPERCASE, Titlecase,
-lowercase). An example of such a character is "01F2;LATIN CAPITAL LETTER D
-WITH SMALL LETTER Z".
-
-The uppercase, titlecase and lowercase fields are only included for characters
-that have a single corresponding character of that type. Composite characters
-(such as "339D;SQUARE CM") that do not have a single corresponding character
-of that type can be cased by decomposition.
-
-The case mapping is an informative, default mapping. Certain languages, such
-as Turkish, German, French, or Greek may have small deviations from the
-default mappings listed in the Unicode Character Database.
-
-MODIFICATION HISTORY
-
-Some of the modifications made in updating the Unicode Character Database
-for the Unicode Standard, Version 2.0 are:
-* Fixed decompositions with TONOS to use correct NSM: 030D.
-* Removed old Hangul Syllables; mapping to new characters are
- in a separate table.
-* Marked compability decompositions with additional tags.
-* Changed old tag names for clarity.
-* Revision of decompositions to use first-level decomposition, instead
- of maximal decomposition.
-* Correction of all known errors in decompositions from earlier versions.
-* Added control code names (as old Unicode names).
-* Added Hangul Jamo decompositions.
-* Added Number category to match properties list in book.
-* Fixed categories of Koranic Arabic marks.
-* Fixed categories of precomposed characters to match decomposition where possible.
-* Added Hebrew cantillation marks and the Tibetan script.
-* Added place holders for ranges such as CJK Ideographic Area and the
- Private Use Area.
-* Eliminated "Nd" as a category.
diff --git a/malloc.c b/malloc.c
index 908d7a7d85..778f70e749 100644
--- a/malloc.c
+++ b/malloc.c
@@ -384,13 +384,11 @@
#define u_char unsigned char
#define u_int unsigned int
-
-#ifdef HAS_QUAD
-# define u_bigint UV /* Needs to eat *void. */
-#else /* needed? */
-# define u_bigint unsigned long /* Needs to eat *void. */
-#endif
-
+/*
+ * I removed the definition of u_bigint which appeared to be u_bigint = UV
+ * u_bigint was only used in TWOK_MASKED and TWOK_SHIFT
+ * where I have used PTR2UV. RMB
+ */
#define u_short unsigned short
/* 286 and atarist like big chunks, which gives too much overhead. */
@@ -516,9 +514,9 @@ static u_short buck_size[MAX_BUCKET_BY_TABLE + 1] =
# define MAX_PACKED (MAX_PACKED_POW2 * BUCKETS_PER_POW2 + BUCKET_POW2_SHIFT)
# define MAX_POW2_ALGO ((1<<(MAX_PACKED_POW2 + 1)) - M_OVERHEAD)
# define TWOK_MASK ((1<<LOG_OF_MIN_ARENA) - 1)
-# define TWOK_MASKED(x) ((u_bigint)PTR_CAST(x) & ~TWOK_MASK)
-# define TWOK_SHIFT(x) ((u_bigint)PTR_CAST(x) & TWOK_MASK)
-# define OV_INDEXp(block) ((u_char*)PTR_CAST(TWOK_MASKED(block)))
+# define TWOK_MASKED(x) (PTR2UV(x) & ~TWOK_MASK)
+# define TWOK_SHIFT(x) (PTR2UV(x) & TWOK_MASK)
+# define OV_INDEXp(block) (INT2PTR(u_char*,TWOK_MASKED(block)))
# define OV_INDEX(block) (*OV_INDEXp(block))
# define OV_MAGIC(block,bucket) (*(OV_INDEXp(block) + \
(TWOK_SHIFT(block)>> \
@@ -781,7 +779,7 @@ emergency_sbrk(MEM_SIZE size)
/* Got it, now detach SvPV: */
pv = SvPV(sv, n_a);
/* Check alignment: */
- if (((UV)PTR_CAST (pv - sizeof(union overhead))) & (NEEDED_ALIGNMENT - 1)) {
+ if ((PTR2UV(pv) - sizeof(union overhead)) & (NEEDED_ALIGNMENT - 1)) {
PerlIO_puts(PerlIO_stderr(),"Bad alignment of $^M!\n");
return (char *)-1; /* die die die */
}
@@ -924,7 +922,7 @@ Perl_malloc(register size_t nbytes)
/* remove from linked list */
#if defined(RCHECK)
- if (((UV)PTR_CAST p) & (MEM_ALIGNBYTES - 1))
+ if ((PTR2UV(p)) & (MEM_ALIGNBYTES - 1))
PerlIO_printf(PerlIO_stderr(), "Corrupt malloc ptr 0x%lx at 0x%lx\n",
(unsigned long)*((int*)p),(unsigned long)p);
#endif
@@ -1121,8 +1119,8 @@ getpages(int needed, int *nblksp, int bucket)
# ifndef I286 /* The sbrk(0) call on the I286 always returns the next segment */
/* WANTED_ALIGNMENT may be more than NEEDED_ALIGNMENT, but this may
improve performance of memory access. */
- if ((UV)PTR_CAST cp & (WANTED_ALIGNMENT - 1)) { /* Not aligned. */
- slack = WANTED_ALIGNMENT - ((UV)PTR_CAST cp & (WANTED_ALIGNMENT - 1));
+ if (PTR2UV(cp) & (WANTED_ALIGNMENT - 1)) { /* Not aligned. */
+ slack = WANTED_ALIGNMENT - (PTR2UV(cp) & (WANTED_ALIGNMENT - 1));
add += slack;
}
# endif
@@ -1183,16 +1181,16 @@ getpages(int needed, int *nblksp, int bucket)
*/
# if NEEDED_ALIGNMENT > MEM_ALIGNBYTES
- if ((UV)PTR_CAST ovp & (NEEDED_ALIGNMENT - 1))
+ if (PTR2UV(ovp) & (NEEDED_ALIGNMENT - 1))
fatalcroak("Misalignment of sbrk()\n");
else
# endif
#ifndef I286 /* Again, this should always be ok on an 80286 */
- if ((UV)PTR_CAST ovp & (MEM_ALIGNBYTES - 1)) {
+ if (PTR2UV(ovp) & (MEM_ALIGNBYTES - 1)) {
DEBUG_m(PerlIO_printf(Perl_debug_log,
"fixing sbrk(): %d bytes off machine alignement\n",
- (int)((UV)PTR_CAST ovp & (MEM_ALIGNBYTES - 1))));
- ovp = (union overhead *)PTR_CAST (((UV)PTR_CAST ovp + MEM_ALIGNBYTES) &
+ (int)(PTR2UV(ovp) & (MEM_ALIGNBYTES - 1))));
+ ovp = INT2PTR(union overhead *,(PTR2UV(ovp) + MEM_ALIGNBYTES) &
(MEM_ALIGNBYTES - 1));
(*nblksp)--;
# if defined(DEBUGGING_MSTATS)
diff --git a/objXSUB.h b/objXSUB.h
index 437a219a70..9f6bc55ca0 100644
--- a/objXSUB.h
+++ b/objXSUB.h
@@ -130,10 +130,6 @@
#define PL_dowarn (*Perl_Idowarn_ptr(aTHXo))
#undef PL_e_script
#define PL_e_script (*Perl_Ie_script_ptr(aTHXo))
-#undef PL_efloatbuf
-#define PL_efloatbuf (*Perl_Iefloatbuf_ptr(aTHXo))
-#undef PL_efloatsize
-#define PL_efloatsize (*Perl_Iefloatsize_ptr(aTHXo))
#undef PL_egid
#define PL_egid (*Perl_Iegid_ptr(aTHXo))
#undef PL_endav
@@ -580,6 +576,10 @@
#define PL_dirty (*Perl_Tdirty_ptr(aTHXo))
#undef PL_dumpindent
#define PL_dumpindent (*Perl_Tdumpindent_ptr(aTHXo))
+#undef PL_efloatbuf
+#define PL_efloatbuf (*Perl_Tefloatbuf_ptr(aTHXo))
+#undef PL_efloatsize
+#define PL_efloatsize (*Perl_Tefloatsize_ptr(aTHXo))
#undef PL_extralen
#define PL_extralen (*Perl_Textralen_ptr(aTHXo))
#undef PL_firstgv
@@ -2878,6 +2878,14 @@
#define Perl_sv_2pv pPerl->Perl_sv_2pv
#undef sv_2pv
#define sv_2pv Perl_sv_2pv
+#undef Perl_sv_2pvutf8
+#define Perl_sv_2pvutf8 pPerl->Perl_sv_2pvutf8
+#undef sv_2pvutf8
+#define sv_2pvutf8 Perl_sv_2pvutf8
+#undef Perl_sv_2pvbyte
+#define Perl_sv_2pvbyte pPerl->Perl_sv_2pvbyte
+#undef sv_2pvbyte
+#define sv_2pvbyte Perl_sv_2pvbyte
#undef Perl_sv_2uv
#define Perl_sv_2uv pPerl->Perl_sv_2uv
#undef sv_2uv
@@ -2898,6 +2906,14 @@
#define Perl_sv_pvn pPerl->Perl_sv_pvn
#undef sv_pvn
#define sv_pvn Perl_sv_pvn
+#undef Perl_sv_pvutf8n
+#define Perl_sv_pvutf8n pPerl->Perl_sv_pvutf8n
+#undef sv_pvutf8n
+#define sv_pvutf8n Perl_sv_pvutf8n
+#undef Perl_sv_pvbyten
+#define Perl_sv_pvbyten pPerl->Perl_sv_pvbyten
+#undef sv_pvbyten
+#define sv_pvbyten Perl_sv_pvbyten
#undef Perl_sv_true
#define Perl_sv_true pPerl->Perl_sv_true
#undef sv_true
@@ -3056,6 +3072,14 @@
#define Perl_sv_pvn_force pPerl->Perl_sv_pvn_force
#undef sv_pvn_force
#define sv_pvn_force Perl_sv_pvn_force
+#undef Perl_sv_pvutf8n_force
+#define Perl_sv_pvutf8n_force pPerl->Perl_sv_pvutf8n_force
+#undef sv_pvutf8n_force
+#define sv_pvutf8n_force Perl_sv_pvutf8n_force
+#undef Perl_sv_pvbyten_force
+#define Perl_sv_pvbyten_force pPerl->Perl_sv_pvbyten_force
+#undef sv_pvbyten_force
+#define sv_pvbyten_force Perl_sv_pvbyten_force
#undef Perl_sv_reftype
#define Perl_sv_reftype pPerl->Perl_sv_reftype
#undef sv_reftype
@@ -3489,10 +3513,26 @@
#define Perl_sv_2pv_nolen pPerl->Perl_sv_2pv_nolen
#undef sv_2pv_nolen
#define sv_2pv_nolen Perl_sv_2pv_nolen
+#undef Perl_sv_2pvutf8_nolen
+#define Perl_sv_2pvutf8_nolen pPerl->Perl_sv_2pvutf8_nolen
+#undef sv_2pvutf8_nolen
+#define sv_2pvutf8_nolen Perl_sv_2pvutf8_nolen
+#undef Perl_sv_2pvbyte_nolen
+#define Perl_sv_2pvbyte_nolen pPerl->Perl_sv_2pvbyte_nolen
+#undef sv_2pvbyte_nolen
+#define sv_2pvbyte_nolen Perl_sv_2pvbyte_nolen
#undef Perl_sv_pv
#define Perl_sv_pv pPerl->Perl_sv_pv
#undef sv_pv
#define sv_pv Perl_sv_pv
+#undef Perl_sv_pvutf8
+#define Perl_sv_pvutf8 pPerl->Perl_sv_pvutf8
+#undef sv_pvutf8
+#define sv_pvutf8 Perl_sv_pvutf8
+#undef Perl_sv_pvbyte
+#define Perl_sv_pvbyte pPerl->Perl_sv_pvbyte
+#undef sv_pvbyte
+#define sv_pvbyte Perl_sv_pvbyte
#undef Perl_sv_force_normal
#define Perl_sv_force_normal pPerl->Perl_sv_force_normal
#undef sv_force_normal
diff --git a/opcode.h b/opcode.h
index 952763861c..b4d653774b 100644
--- a/opcode.h
+++ b/opcode.h
@@ -385,7 +385,7 @@ EXT char *PL_op_desc[] = {
"private variable",
"private array",
"private hash",
- "private something",
+ "private value",
"push regexp",
"ref-to-glob cast",
"scalar deref",
@@ -397,80 +397,80 @@ EXT char *PL_op_desc[] = {
"single ref constructor",
"reference-type operator",
"bless",
- "backticks",
+ "backticks (``, qx)",
"glob",
"<HANDLE>",
"append I/O operator",
- "regexp comp once",
- "regexp reset interpolation flag",
+ "regexp internal guard",
+ "regexp internal reset",
"regexp compilation",
- "pattern match",
- "pattern quote",
- "substitution",
- "substitution cont",
- "character translation",
+ "pattern match (m//)",
+ "pattern quote (qr//)",
+ "substitution (s///)",
+ "substitution iterator",
+ "transliteration (tr///)",
"scalar assignment",
"list assignment",
"chop",
"scalar chop",
- "safe chop",
- "scalar safe chop",
+ "chomp",
+ "scalar chomp",
"defined operator",
"undef operator",
"study",
"match position",
- "preincrement",
- "integer preincrement",
- "predecrement",
- "integer predecrement",
- "postincrement",
- "integer postincrement",
- "postdecrement",
- "integer postdecrement",
- "exponentiation",
- "multiplication",
- "integer multiplication",
- "division",
- "integer division",
- "modulus",
- "integer modulus",
- "repeat",
- "addition",
- "integer addition",
- "subtraction",
- "integer subtraction",
- "concatenation",
+ "preincrement (++)",
+ "integer preincrement (++)",
+ "predecrement (--)",
+ "integer predecrement (--)",
+ "postincrement (++)",
+ "integer postincrement (++)",
+ "postdecrement (--)",
+ "integer postdecrement (--)",
+ "exponentiation (**)",
+ "multiplication (*)",
+ "integer multiplication (*)",
+ "division (/)",
+ "integer division (/)",
+ "modulus (%)",
+ "integer modulus (%)",
+ "repeat (x)",
+ "addition (+)",
+ "integer addition (+)",
+ "subtraction (-)",
+ "integer subtraction (-)",
+ "concatenation (.)",
"string",
- "left bitshift",
- "right bitshift",
- "numeric lt",
- "integer lt",
- "numeric gt",
- "integer gt",
- "numeric le",
- "integer le",
- "numeric ge",
- "integer ge",
- "numeric eq",
- "integer eq",
- "numeric ne",
- "integer ne",
- "spaceship operator",
- "integer spaceship",
+ "left bitshift (<<)",
+ "right bitshift (>>)",
+ "numeric lt (<)",
+ "integer lt (<)",
+ "numeric gt (>)",
+ "integer gt (>)",
+ "numeric le (<=)",
+ "integer le (<=)",
+ "numeric ge (>=)",
+ "integer ge (>=)",
+ "numeric eq (==)",
+ "integer eq (==)",
+ "numeric ne (!=)",
+ "integer ne (!=)",
+ "numeric comparison (<=>)",
+ "integer comparison (<=>)",
"string lt",
"string gt",
"string le",
"string ge",
"string eq",
"string ne",
- "string comparison",
- "bitwise and",
- "bitwise xor",
- "bitwise or",
- "negate",
- "integer negate",
+ "string comparison (cmp)",
+ "bitwise and (&)",
+ "bitwise xor (^)",
+ "bitwise or (|)",
+ "negation (-)",
+ "integer negation (-)",
"not",
- "1's complement",
+ "1's complement (~)",
"atan2",
"sin",
"cos",
@@ -493,22 +493,22 @@ EXT char *PL_op_desc[] = {
"ord",
"chr",
"crypt",
- "upper case first",
- "lower case first",
- "upper case",
- "lower case",
- "quote metachars",
- "array deref",
- "known array element",
+ "ucfirst",
+ "lcfirst",
+ "uc",
+ "lc",
+ "quotemeta",
+ "array dereference",
+ "constant array element",
"array element",
"array slice",
"each",
"values",
"keys",
"delete",
- "exists operator",
- "hash deref",
- "hash elem",
+ "exists",
+ "hash dereference",
+ "hash element",
"hash slice",
"unpack",
"pack",
@@ -516,8 +516,8 @@ EXT char *PL_op_desc[] = {
"join",
"list",
"list slice",
- "anonymous list",
- "anonymous hash",
+ "anonymous list ([])",
+ "anonymous hash ({})",
"splice",
"push",
"pop",
@@ -532,12 +532,12 @@ EXT char *PL_op_desc[] = {
"flipflop",
"range (or flip)",
"range (or flop)",
- "logical and",
- "logical or",
+ "logical and (&&)",
+ "logical or (||)",
"logical xor",
"conditional expression",
- "logical and assignment",
- "logical or assignment",
+ "logical and assignment (&&=)",
+ "logical or assignment (||=)",
"method lookup",
"subroutine entry",
"subroutine exit",
@@ -545,7 +545,7 @@ EXT char *PL_op_desc[] = {
"caller",
"warn",
"die",
- "reset",
+ "symbol reset",
"line sequence",
"next statement",
"debug next statement",
@@ -684,10 +684,10 @@ EXT char *PL_op_desc[] = {
"semop",
"require",
"do 'file'",
- "eval string",
- "eval exit",
- "eval block",
- "eval block exit",
+ "eval 'string'",
+ "eval 'string' exit",
+ "eval {block}",
+ "eval {block} exit",
"gethostbyname",
"gethostbyaddr",
"gethostent",
@@ -721,7 +721,7 @@ EXT char *PL_op_desc[] = {
"getlogin",
"syscall",
"lock",
- "per-thread variable",
+ "per-thread value",
"set statement info",
"method with known name",
};
diff --git a/opcode.pl b/opcode.pl
index 8eadbe7e7f..9e96cd1765 100755
--- a/opcode.pl
+++ b/opcode.pl
@@ -88,7 +88,12 @@ EXT char *PL_op_desc[] = {
END
for (@ops) {
- print qq(\t"$desc{$_}",\n);
+ my($safe_desc) = $desc{$_};
+
+ # Have to escape double quotes and escape characters.
+ $safe_desc =~ s/(^|[^\\])([\\"])/$1\\$2/g;
+
+ print qq(\t"$safe_desc",\n);
}
print <<END;
@@ -333,7 +338,7 @@ gelem glob elem ck_null d2 S S
padsv private variable ck_null ds0
padav private array ck_null d0
padhv private hash ck_null d0
-padany private something ck_null d0
+padany private value ck_null d0
pushre push regexp ck_null d/
@@ -352,7 +357,7 @@ bless bless ck_fun s@ S S?
# Pushy I/O.
-backtick backticks ck_null t%
+backtick backticks (``, qx) ck_null t%
# glob defaults its first arg to $_
glob glob ck_glob t@ S? S?
readline <HANDLE> ck_null t%
@@ -360,14 +365,14 @@ rcatline append I/O operator ck_null t%
# Bindable operators.
-regcmaybe regexp comp once ck_fun s1 S
-regcreset regexp reset interpolation flag ck_fun s1 S
+regcmaybe regexp internal guard ck_fun s1 S
+regcreset regexp internal reset ck_fun s1 S
regcomp regexp compilation ck_null s| S
-match pattern match ck_match d/
-qr pattern quote ck_match s/
-subst substitution ck_null dis/ S
-substcont substitution cont ck_null dis|
-trans character translation ck_null is" S
+match pattern match (m//) ck_match d/
+qr pattern quote (qr//) ck_match s/
+subst substitution (s///) ck_null dis/ S
+substcont substitution iterator ck_null dis|
+trans transliteration (tr///) ck_null is" S
# Lvalue operators.
# sassign is special-cased for op class
@@ -377,58 +382,58 @@ aassign list assignment ck_null t2 L L
chop chop ck_spair mTs% L
schop scalar chop ck_null sTu% S?
-chomp safe chop ck_spair mTs% L
-schomp scalar safe chop ck_null sTu% S?
+chomp chomp ck_spair mTs% L
+schomp scalar chomp ck_null sTu% S?
defined defined operator ck_defined isu% S?
undef undef operator ck_lfun s% S?
study study ck_fun su% S?
pos match position ck_lfun stu% S?
-preinc preincrement ck_lfun dIs1 S
-i_preinc integer preincrement ck_lfun dis1 S
-predec predecrement ck_lfun dIs1 S
-i_predec integer predecrement ck_lfun dis1 S
-postinc postincrement ck_lfun dIsT1 S
-i_postinc integer postincrement ck_lfun disT1 S
-postdec postdecrement ck_lfun dIsT1 S
-i_postdec integer postdecrement ck_lfun disT1 S
+preinc preincrement (++) ck_lfun dIs1 S
+i_preinc integer preincrement (++) ck_lfun dis1 S
+predec predecrement (--) ck_lfun dIs1 S
+i_predec integer predecrement (--) ck_lfun dis1 S
+postinc postincrement (++) ck_lfun dIsT1 S
+i_postinc integer postincrement (++) ck_lfun disT1 S
+postdec postdecrement (--) ck_lfun dIsT1 S
+i_postdec integer postdecrement (--) ck_lfun disT1 S
# Ordinary operators.
-pow exponentiation ck_null fsT2 S S
-
-multiply multiplication ck_null IfsT2 S S
-i_multiply integer multiplication ck_null ifsT2 S S
-divide division ck_null IfsT2 S S
-i_divide integer division ck_null ifsT2 S S
-modulo modulus ck_null IifsT2 S S
-i_modulo integer modulus ck_null ifsT2 S S
-repeat repeat ck_repeat mt2 L S
-
-add addition ck_null IfsT2 S S
-i_add integer addition ck_null ifsT2 S S
-subtract subtraction ck_null IfsT2 S S
-i_subtract integer subtraction ck_null ifsT2 S S
-concat concatenation ck_concat fsT2 S S
+pow exponentiation (**) ck_null fsT2 S S
+
+multiply multiplication (*) ck_null IfsT2 S S
+i_multiply integer multiplication (*) ck_null ifsT2 S S
+divide division (/) ck_null IfsT2 S S
+i_divide integer division (/) ck_null ifsT2 S S
+modulo modulus (%) ck_null IifsT2 S S
+i_modulo integer modulus (%) ck_null ifsT2 S S
+repeat repeat (x) ck_repeat mt2 L S
+
+add addition (+) ck_null IfsT2 S S
+i_add integer addition (+) ck_null ifsT2 S S
+subtract subtraction (-) ck_null IfsT2 S S
+i_subtract integer subtraction (-) ck_null ifsT2 S S
+concat concatenation (.) ck_concat fsT2 S S
stringify string ck_fun fsT@ S
-left_shift left bitshift ck_bitop fsT2 S S
-right_shift right bitshift ck_bitop fsT2 S S
-
-lt numeric lt ck_null Iifs2 S S
-i_lt integer lt ck_null ifs2 S S
-gt numeric gt ck_null Iifs2 S S
-i_gt integer gt ck_null ifs2 S S
-le numeric le ck_null Iifs2 S S
-i_le integer le ck_null ifs2 S S
-ge numeric ge ck_null Iifs2 S S
-i_ge integer ge ck_null ifs2 S S
-eq numeric eq ck_null Iifs2 S S
-i_eq integer eq ck_null ifs2 S S
-ne numeric ne ck_null Iifs2 S S
-i_ne integer ne ck_null ifs2 S S
-ncmp spaceship operator ck_null Iifst2 S S
-i_ncmp integer spaceship ck_null ifst2 S S
+left_shift left bitshift (<<) ck_bitop fsT2 S S
+right_shift right bitshift (>>) ck_bitop fsT2 S S
+
+lt numeric lt (<) ck_null Iifs2 S S
+i_lt integer lt (<) ck_null ifs2 S S
+gt numeric gt (>) ck_null Iifs2 S S
+i_gt integer gt (>) ck_null ifs2 S S
+le numeric le (<=) ck_null Iifs2 S S
+i_le integer le (<=) ck_null ifs2 S S
+ge numeric ge (>=) ck_null Iifs2 S S
+i_ge integer ge (>=) ck_null ifs2 S S
+eq numeric eq (==) ck_null Iifs2 S S
+i_eq integer eq (==) ck_null ifs2 S S
+ne numeric ne (!=) ck_null Iifs2 S S
+i_ne integer ne (!=) ck_null ifs2 S S
+ncmp numeric comparison (<=>) ck_null Iifst2 S S
+i_ncmp integer comparison (<=>) ck_null ifst2 S S
slt string lt ck_scmp ifs2 S S
sgt string gt ck_scmp ifs2 S S
@@ -436,16 +441,16 @@ sle string le ck_scmp ifs2 S S
sge string ge ck_scmp ifs2 S S
seq string eq ck_null ifs2 S S
sne string ne ck_null ifs2 S S
-scmp string comparison ck_scmp ifst2 S S
+scmp string comparison (cmp) ck_scmp ifst2 S S
-bit_and bitwise and ck_bitop fsT2 S S
-bit_xor bitwise xor ck_bitop fsT2 S S
-bit_or bitwise or ck_bitop fsT2 S S
+bit_and bitwise and (&) ck_bitop fsT2 S S
+bit_xor bitwise xor (^) ck_bitop fsT2 S S
+bit_or bitwise or (|) ck_bitop fsT2 S S
-negate negate ck_null IfsT1 S
-i_negate integer negate ck_null ifsT1 S
+negate negation (-) ck_null IfsT1 S
+i_negate integer negation (-) ck_null ifsT1 S
not not ck_null ifs1 S
-complement 1's complement ck_bitop fsT1 S
+complement 1's complement (~) ck_bitop fsT1 S
# High falutin' math.
@@ -479,16 +484,16 @@ formline formline ck_fun ms@ S L
ord ord ck_fun ifsTu% S?
chr chr ck_fun fsTu% S?
crypt crypt ck_fun fsT@ S S
-ucfirst upper case first ck_fun_locale fstu% S?
-lcfirst lower case first ck_fun_locale fstu% S?
-uc upper case ck_fun_locale fstu% S?
-lc lower case ck_fun_locale fstu% S?
-quotemeta quote metachars ck_fun fsTu% S?
+ucfirst ucfirst ck_fun_locale fstu% S?
+lcfirst lcfirst ck_fun_locale fstu% S?
+uc uc ck_fun_locale fstu% S?
+lc lc ck_fun_locale fstu% S?
+quotemeta quotemeta ck_fun fsTu% S?
# Arrays.
-rv2av array deref ck_rvconst dt1
-aelemfast known array element ck_null s* A S
+rv2av array dereference ck_rvconst dt1
+aelemfast constant array element ck_null s* A S
aelem array element ck_null s2 A S
aslice array slice ck_null m@ A L
@@ -498,9 +503,9 @@ each each ck_fun % H
values values ck_fun t% H
keys keys ck_fun t% H
delete delete ck_delete % S
-exists exists operator ck_exists is% S
-rv2hv hash deref ck_rvconst dt1
-helem hash elem ck_null s2@ H S
+exists exists ck_exists is% S
+rv2hv hash dereference ck_rvconst dt1
+helem hash element ck_null s2@ H S
hslice hash slice ck_null m@ H L
# Explosives and implosives.
@@ -514,8 +519,8 @@ join join ck_join msT@ S L
list list ck_null m@ L
lslice list slice ck_null 2 H L L
-anonlist anonymous list ck_fun ms@ L
-anonhash anonymous hash ck_fun ms@ L
+anonlist anonymous list ([]) ck_fun ms@ L
+anonhash anonymous hash ({}) ck_fun ms@ L
splice splice ck_fun m@ A S? S? L
push push ck_fun imsT@ A L
@@ -539,12 +544,12 @@ flop range (or flop) ck_null 1
# Control.
-and logical and ck_null |
-or logical or ck_null |
-xor logical xor ck_null fs2 S S
-cond_expr conditional expression ck_null d|
-andassign logical and assignment ck_null s|
-orassign logical or assignment ck_null s|
+and logical and (&&) ck_null |
+or logical or (||) ck_null |
+xor logical xor ck_null fs2 S S
+cond_expr conditional expression ck_null d|
+andassign logical and assignment (&&=) ck_null s|
+orassign logical or assignment (||=) ck_null s|
method method lookup ck_method d1
entersub subroutine entry ck_subr dmt1 L
@@ -553,7 +558,7 @@ leavesublv lvalue subroutine exit ck_null 1
caller caller ck_fun t% S?
warn warn ck_fun imst@ L
die die ck_fun dimst@ L
-reset reset ck_fun is% S?
+reset symbol reset ck_fun is% S?
lineseq line sequence ck_null @
nextstate next statement ck_null s;
@@ -575,8 +580,8 @@ goto goto ck_null ds}
exit exit ck_fun ds% S?
# continued below
-#nswitch numeric switch ck_null d
-#cswitch character switch ck_null d
+#nswitch numeric switch ck_null d
+#cswitch character switch ck_null d
# I/O.
@@ -743,11 +748,11 @@ semop semop ck_fun imst@ S S
require require ck_require du% S?
dofile do 'file' ck_fun d1 S
-entereval eval string ck_eval d% S
-leaveeval eval exit ck_null 1 S
+entereval eval 'string' ck_eval d% S
+leaveeval eval 'string' exit ck_null 1 S
#evalonce eval constant string ck_null d1 S
-entertry eval block ck_null |
-leavetry eval block exit ck_null @
+entertry eval {block} ck_null |
+leavetry eval {block} exit ck_null @
# Get system info.
@@ -789,7 +794,7 @@ syscall syscall ck_fun imst@ S L
# For multi-threading
lock lock ck_rfun s% S
-threadsv per-thread variable ck_null ds0
+threadsv per-thread value ck_null ds0
# Control (contd.)
setstate set statement info ck_null s;
diff --git a/perl.c b/perl.c
index ed88bc3eb4..de91ed456f 100644
--- a/perl.c
+++ b/perl.c
@@ -409,6 +409,11 @@ perl_destruct(pTHXx)
Safefree(PL_screamnext);
PL_screamnext = 0;
+ /* float buffer */
+ Safefree(PL_efloatbuf);
+ PL_efloatbuf = Nullch;
+ PL_efloatsize = 0;
+
/* startup and shutdown function lists */
SvREFCNT_dec(PL_beginav);
SvREFCNT_dec(PL_endav);
diff --git a/perl.h b/perl.h
index 94af360796..1375770acb 100644
--- a/perl.h
+++ b/perl.h
@@ -389,7 +389,7 @@ register struct op *Perl_op asm(stringify(OP_IN_REGISTER));
/* HP-UX 10.X CMA (Common Multithreaded Architecure) insists that
pthread.h must be included before all other header files.
*/
-#if defined(USE_THREADS) && defined(PTHREAD_H_FIRST)
+#if defined(USE_THREADS) && defined(PTHREAD_H_FIRST) && defined(I_PTHREAD)
# include <pthread.h>
#endif
@@ -1046,17 +1046,31 @@ Free_t Perl_mfree (Malloc_t where);
#define IV_DIG (BIT_DIGITS(IVSIZE * 8))
#define UV_DIG (BIT_DIGITS(UVSIZE * 8))
-#if (IVSIZE > PTRSIZE) || (UVSIZE > PTRSIZE)
+/*
+ * The macros INT2PTR and NUM2PTR are (despite their names)
+ * bi-directional: they will convert int/float to or from pointers.
+ * However the conversion to int/float are named explicitly:
+ * PTR2IV, PTR2UV, PTR2NV.
+ *
+ * For int conversions we do not need two casts if pointers are
+ * the same size as IV and UV. Otherwise we need an explicit
+ * cast (PTRV) to avoid compiler warnings.
+ */
+#if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE)
+# define PTRV UV
+# define INT2PTR(any,d) (any)(d)
+#else
# if PTRSIZE == LONGSIZE
-# define PTRV unsigned long
+# define PTRV unsigned long
# else
-# define PTRV unsigned
+# define PTRV unsigned
# endif
-# define PTR_CAST (PTRV)
-#else
-# define PTRV UV
-# define PTR_CAST
+# define INT2PTR(any,d) (any)(PTRV)(d)
#endif
+#define NUM2PTR(any,d) (any)(PTRV)(d)
+#define PTR2IV(p) INT2PTR(IV,p)
+#define PTR2UV(p) INT2PTR(UV,p)
+#define PTR2NV(p) NUM2PTR(NV,p)
#ifdef USE_LONG_DOUBLE
# if defined(HAS_LONG_DOUBLE) && (LONG_DOUBLESIZE > DOUBLESIZE)
@@ -1602,7 +1616,9 @@ typedef mutex_t perl_mutex;
typedef condition_t perl_cond;
typedef void * perl_key;
# else /* Posix threads */
-# include <pthread.h>
+# ifdef I_PTHREAD
+# include <pthread.h>
+# endif
typedef pthread_t perl_os_thread;
typedef pthread_mutex_t perl_mutex;
typedef pthread_cond_t perl_cond;
@@ -2517,7 +2533,7 @@ enum { /* pass one of these to get_vtbl */
#define HINT_STRICT_REFS 0x00000002
/* #define HINT_notused4 0x00000004 */
#define HINT_UTF8 0x00000008
-/* #define HINT_notused10 0x00000010 */
+#define HINT_BYTE 0x00000010
/* Note: 20,40,80 used for NATIVE_HINTS */
#define HINT_BLOCK_SCOPE 0x00000100
diff --git a/perlapi.c b/perlapi.c
index f04706c9cd..7013fd4978 100644
--- a/perlapi.c
+++ b/perlapi.c
@@ -3648,6 +3648,20 @@ Perl_sv_2pv(pTHXo_ SV* sv, STRLEN* lp)
return ((CPerlObj*)pPerl)->Perl_sv_2pv(sv, lp);
}
+#undef Perl_sv_2pvutf8
+char*
+Perl_sv_2pvutf8(pTHXo_ SV* sv, STRLEN* lp)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_2pvutf8(sv, lp);
+}
+
+#undef Perl_sv_2pvbyte
+char*
+Perl_sv_2pvbyte(pTHXo_ SV* sv, STRLEN* lp)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_2pvbyte(sv, lp);
+}
+
#undef Perl_sv_2uv
UV
Perl_sv_2uv(pTHXo_ SV* sv)
@@ -3683,6 +3697,20 @@ Perl_sv_pvn(pTHXo_ SV *sv, STRLEN *len)
return ((CPerlObj*)pPerl)->Perl_sv_pvn(sv, len);
}
+#undef Perl_sv_pvutf8n
+char*
+Perl_sv_pvutf8n(pTHXo_ SV *sv, STRLEN *len)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_pvutf8n(sv, len);
+}
+
+#undef Perl_sv_pvbyten
+char*
+Perl_sv_pvbyten(pTHXo_ SV *sv, STRLEN *len)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_pvbyten(sv, len);
+}
+
#undef Perl_sv_true
I32
Perl_sv_true(pTHXo_ SV *sv)
@@ -3961,6 +3989,20 @@ Perl_sv_pvn_force(pTHXo_ SV* sv, STRLEN* lp)
return ((CPerlObj*)pPerl)->Perl_sv_pvn_force(sv, lp);
}
+#undef Perl_sv_pvutf8n_force
+char*
+Perl_sv_pvutf8n_force(pTHXo_ SV* sv, STRLEN* lp)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_pvutf8n_force(sv, lp);
+}
+
+#undef Perl_sv_pvbyten_force
+char*
+Perl_sv_pvbyten_force(pTHXo_ SV* sv, STRLEN* lp)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_pvbyten_force(sv, lp);
+}
+
#undef Perl_sv_reftype
char*
Perl_sv_reftype(pTHXo_ SV* sv, int ob)
@@ -4134,16 +4176,16 @@ Perl_sv_usepvn(pTHXo_ SV* sv, char* ptr, STRLEN len)
#undef Perl_sv_vcatpvfn
void
-Perl_sv_vcatpvfn(pTHXo_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *used_locale)
+Perl_sv_vcatpvfn(pTHXo_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *maybe_tainted)
{
- ((CPerlObj*)pPerl)->Perl_sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale);
+ ((CPerlObj*)pPerl)->Perl_sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, maybe_tainted);
}
#undef Perl_sv_vsetpvfn
void
-Perl_sv_vsetpvfn(pTHXo_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *used_locale)
+Perl_sv_vsetpvfn(pTHXo_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *maybe_tainted)
{
- ((CPerlObj*)pPerl)->Perl_sv_vsetpvfn(sv, pat, patlen, args, svargs, svmax, used_locale);
+ ((CPerlObj*)pPerl)->Perl_sv_vsetpvfn(sv, pat, patlen, args, svargs, svmax, maybe_tainted);
}
#undef Perl_swash_init
@@ -4745,6 +4787,20 @@ Perl_sv_2pv_nolen(pTHXo_ SV* sv)
return ((CPerlObj*)pPerl)->Perl_sv_2pv_nolen(sv);
}
+#undef Perl_sv_2pvutf8_nolen
+char*
+Perl_sv_2pvutf8_nolen(pTHXo_ SV* sv)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_2pvutf8_nolen(sv);
+}
+
+#undef Perl_sv_2pvbyte_nolen
+char*
+Perl_sv_2pvbyte_nolen(pTHXo_ SV* sv)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_2pvbyte_nolen(sv);
+}
+
#undef Perl_sv_pv
char*
Perl_sv_pv(pTHXo_ SV *sv)
@@ -4752,6 +4808,20 @@ Perl_sv_pv(pTHXo_ SV *sv)
return ((CPerlObj*)pPerl)->Perl_sv_pv(sv);
}
+#undef Perl_sv_pvutf8
+char*
+Perl_sv_pvutf8(pTHXo_ SV *sv)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_pvutf8(sv);
+}
+
+#undef Perl_sv_pvbyte
+char*
+Perl_sv_pvbyte(pTHXo_ SV *sv)
+{
+ return ((CPerlObj*)pPerl)->Perl_sv_pvbyte(sv);
+}
+
#undef Perl_sv_force_normal
void
Perl_sv_force_normal(pTHXo_ SV *sv)
diff --git a/pod/perldata.pod b/pod/perldata.pod
index f4c660d622..067c6d9bd5 100644
--- a/pod/perldata.pod
+++ b/pod/perldata.pod
@@ -327,15 +327,24 @@ The special literals __FILE__, __LINE__, and __PACKAGE__
represent the current filename, line number, and package name at that
point in your program. They may be used only as separate tokens; they
will not be interpolated into strings. If there is no current package
-(due to an empty C<package;> directive), __PACKAGE__ is the undefined value.
-
-The tokens __END__ and __DATA__ may be used to indicate the logical
-end of the script before the actual end of file. Any following
-text is ignored, but may be read via a DATA filehandle: main::DATA
-for __END__, or PACKNAME::DATA (where PACKNAME is the current
-package) for __DATA__. The two control characters ^D and ^Z are
-synonyms for __END__ in the main program, __DATA__ in a separate
-module. See L<SelfLoader> for more description of __DATA__, and
+(due to an empty C<package;> directive), __PACKAGE__ is the undefined
+value.
+
+The two control characters ^D and ^Z, and the tokens __END__ and __DATA__
+may be used to indicate the logical end of the script before the actual
+end of file. Any following text is ignored.
+
+Text after __DATA__ but may be read via the filehandle C<PACKNAME::DATA>,
+where C<PACKNAME> is the package that was current when the __DATA__
+token was encountered. The filehandle is left open pointing to the
+contents after __DATA__. It is the program's responsibility to
+C<close DATA> when it is done reading from it. For compatibility with
+older scripts written before __DATA__ was introduced, __END__ behaves
+like __DATA__ in the toplevel script (but not in files loaded with
+C<require> or C<do>) and leaves the remaining contents of the
+file accessible via C<main::DATA>.
+
+See L<SelfLoader> for more description of __DATA__, and
an example of its use. Note that you cannot read from the DATA
filehandle in a BEGIN block: the BEGIN block is executed as soon
as it is seen (during compilation), at which point the corresponding
diff --git a/pod/perldelta.pod b/pod/perldelta.pod
index 94b4635e7b..772a464293 100644
--- a/pod/perldelta.pod
+++ b/pod/perldelta.pod
@@ -150,15 +150,17 @@ use "quads" (64-integers) as follows:
=over 4
-=item constants in the code
+=item constants (decimal, hexadecimal, octal, binary) in the code
=item arguments to oct() and hex()
-=item arguments to print(), printf() and sprintf()
+=item arguments to print(), printf() and sprintf() (flag prefixes ll, L, q)
-=item pack() and unpack() "q" format
+=item printed as such
-=item in basic arithmetics
+=item pack() and unpack() "q" and "Q" formats
+
+=item in basic arithmetics: + - * / %
=item vec() (but see the below note about bit arithmetics)
@@ -167,7 +169,9 @@ use "quads" (64-integers) as follows:
Note that unless you have the case (a) you will have to configure
and compile Perl using the -Duse64bits Configure flag.
-Unfortunately bit arithmetics (&, |, ^, ~, <<, >>) are not 64-bit clean.
+Unfortunately bit arithmetics (&, |, ^, ~, <<, >>) for numbers are not
+64-bit clean, they are explictly forced to be 32-bit. Bit arithmetics
+for bit vectors (created by vec()) are not limited in their width.
Last but not least: note that due to Perl's habit of always using
floating point numbers the quads are still not true integers.
@@ -181,18 +185,25 @@ start losing precision (their lower digits).
If you have filesystems that support "large files" (files larger than
2 gigabytes), you may now also be able to create and access them from Perl.
-Note that in addition to requiring a proper file system to do this you
-may also need to adjust your per-process (or even your per-system)
-maximum filesize limits before running Perl scripts that try to handle
-large files, especially if you intend to write such files.
-
-Adjusting your file system/system limits is outside the scope of Perl.
-For process limits, you may try to increase the limits using your
-shell's limit/ulimit command before running Perl. The BSD::Resource
-extension (not included with the standard Perl distribution) may also
-be of use.
+Note that in addition to requiring a proper file system to do large
+files you may also need to adjust your per-process (or your
+per-system, or per-process-group, or per-user-group) maximum filesize
+limits before running Perl scripts that try to handle large files,
+especially if you intend to write such files.
+
+Finally, in addition to your process/process group maximum filesize
+limits, you may have quota limits on your filesystems that stop you
+(your user id or your user group id) from using large files.
+
+Adjusting your process/user/group/file system/operating system limits
+is outside the scope of Perl core language. For process limits, you
+may try increasing the limits using your shell's limits/limit/ulimit
+command before running Perl. The BSD::Resource extension (not
+included with the standard Perl distribution) may also be of use, it
+offers the getrlimit/setrlimit interface that can be used to adjust
+process resource usage limits, including the maximum filesize limit.
-(Large file support is also related to 64-bit support, for obvious reasons)
+(Large file support is related to 64-bit support, for obvious reasons.)
=head2 Better syntax checks on parenthesized unary operators
@@ -527,7 +538,9 @@ runtime error.
The timelocal() and timegm() functions used to silently return bogus
results when the date exceeded the machine's integer range. They
-now consistently croak() if the date falls in an unsupported range.
+now consistently croak() if the date falls in an unsupported range--
+but on the other hand they now accept "out-of-limits" day-of-month
+to make "Julian date" conversions easier.
=item Win32
@@ -704,6 +717,16 @@ elements of a subroutine attribute list. If the previous attribute
had a parenthesised parameter list, perhaps that list was terminated
too soon.
+=item Possible Y2K bug: %s
+
+(W) You are concatenating the number 19 with another number, which
+could be a potential Year 2000 problem.
+
+=item Possible Y2K bug: %s
+
+(W) You are concatenating the number 19 with another number, which
+could be a potential Year 2000 problem.
+
=item Unterminated attribute parameter in subroutine attribute list
(F) The lexer saw an opening (left) parenthesis character while parsing a
@@ -750,6 +773,13 @@ because many scripts assume to find Perl in /usr/bin/perl.
You can use "Configure -Dusesocks" which causes Perl to probe
for the SOCKS proxy protocol library, http://www.socks.nec.com/
+=head2 -A flag
+
+You can "post-edit" the Configure variables using the Configure -A
+flag. The editing happens immediately after the platform specific
+hints files have been processed but before the actual configuration
+process starts. Run Configure -h to find out the full -A syntax.
+
=head1 BUGS
If you find what you think is a bug, you might check the headers of
diff --git a/pod/perldiag.pod b/pod/perldiag.pod
index 1c07a31fa6..607a410e38 100644
--- a/pod/perldiag.pod
+++ b/pod/perldiag.pod
@@ -1240,6 +1240,10 @@ just use C<if (%hash) { # not empty }> for example.
C<FOO> is too long for Perl to handle. You have to be seriously
twisted to write code that triggers this error.
+=item Did not produce a valid header
+
+See Server error.
+
=item Did you mean &%s instead?
(W) You probably referred to an imported subroutine &FOO as $FOO or some such.
@@ -1266,6 +1270,10 @@ to define the subroutine or package before the current location. You
can use an empty "sub foo;" or "package FOO;" to enter a "forward"
declaration.
+=item Document contains no data
+
+See Server error.
+
=item Don't know how to handle magic of type '%s'
(P) The internal handling of magical variables has been cursed.
@@ -1742,6 +1750,10 @@ See L<perlsub/"Lvalue subroutines">.
(F) An attempt was made to specify an entry in an overloading table that
doesn't resolve to a valid subroutine. See L<overload>.
+=item Method %s not permitted
+
+See Server error.
+
=item Might be a runaway multi-line %s string starting on line %d
(S) An advisory indicating that the previous error may have been caused
@@ -2348,6 +2360,11 @@ perspective, it's probably not what you intended.
(F) Your C compiler uses POSIX getpgrp(), which takes no argument, unlike
the BSD version, which takes a pid.
+=item Possible Y2K bug: %s
+
+(W) You are concatenating the number 19 with another number, which
+could be a potential Year 2000 problem.
+
=item Possible attempt to put comments in qw() list
(W) qw() lists contain items separated by whitespace; as with literal
@@ -2415,6 +2432,10 @@ and list operators. (The old open was a little of both.) You must
put parentheses around the filehandle, or use the new "or" operator
instead of "||".
+=item Premature end of script headers
+
+See Server error.
+
=item print on closed filehandle %s
(W) The filehandle you're printing on got itself closed sometime before now.
@@ -2608,7 +2629,12 @@ See L<perlre>.
=item Server error
-Also known as "500 Server error".
+This is the error message generally seen in a browser window when trying
+to run a CGI program (including SSI) over the web. The actual error
+text varies widely from server to server. The most frequently-seen
+variants are "500 Server error", "Method (something) not permitted",
+"Document contains no data", "Premature end of script headers", and
+"Did not produce a valid header".
B<This is a CGI error, not a Perl error>.
@@ -3310,6 +3336,12 @@ variables.
of Perl. Check the #! line, or manually feed your script into
Perl yourself.
+=item Version number must be a constant number
+
+(P) The attempt to translate a C<use Module n.n LIST> statement into
+its equivalent C<BEGIN> block found an internal inconsistency with
+the version number.
+
=item perl: warning: Setting locale failed.
(S) The whole warning message will look something like:
diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod
index 0d47260e10..995a671110 100644
--- a/pod/perlfunc.pod
+++ b/pod/perlfunc.pod
@@ -4120,6 +4120,13 @@ If C<use locale> is in effect, the character used for the decimal
point in formatted real numbers is affected by the LC_NUMERIC locale.
See L<perllocale>.
+To cope with broken systems that allow the standard locales to be
+overridden by malicious users, the return value may be tainted
+if any of the floating point formats are used and the conversion
+yields something that doesn't look like a normal C-locale floating
+point number. This happens regardless of whether C<use locale> is
+in effect or not.
+
If Perl understands "quads" (64-bit integers) (this requires
either that the platform natively supports quads or that Perl
has been specifically compiled to support quads), the characters
diff --git a/pod/perlguts.pod b/pod/perlguts.pod
index 93d4bd70c4..af12297ec3 100644
--- a/pod/perlguts.pod
+++ b/pod/perlguts.pod
@@ -3649,24 +3649,26 @@ Like C<sv_usepvn>, but also handles 'set' magic.
void sv_usepvn_mg (SV* sv, char* ptr, STRLEN len)
-=item sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale)
+=item sv_vcatpvfn
Processes its arguments like C<vsprintf> and appends the formatted output
to an SV. Uses an array of SVs if the C style variable argument list is
-missing (NULL). Indicates if locale information has been used for formatting.
+missing (NULL). When running with taint checks enabled, indicates via
+C<maybe_tainted> if results are untrustworthy (often due to the use of
+locales).
void sv_catpvfn (SV* sv, const char* pat, STRLEN patlen,
va_list *args, SV **svargs, I32 svmax,
- bool *used_locale);
+ bool *maybe_tainted);
-=item sv_vsetpvfn(sv, pat, patlen, args, svargs, svmax, used_locale)
+=item sv_vsetpvfn
Works like C<vcatpvfn> but copies the text into the SV instead of
appending it.
void sv_setpvfn (SV* sv, const char* pat, STRLEN patlen,
va_list *args, SV **svargs, I32 svmax,
- bool *used_locale);
+ bool *maybe_tainted);
=item SvUV
diff --git a/pod/perlhist.pod b/pod/perlhist.pod
index 6a171d36f4..f39117e7e4 100644
--- a/pod/perlhist.pod
+++ b/pod/perlhist.pod
@@ -119,16 +119,16 @@ the strings?).
5.000alpha4 1993-???-??
5.000alpha5 1993-???-??
5.000alpha6 1994-Mar-18
- 5.003alpha7 1994-Mar-25
+ 5.000alpha7 1994-Mar-25
Andy 5.000alpha8 1994-Apr-04
Larry 5.000alpha9 1994-May-05 ext appears.
- 5.000alpha10 1994-???-??
- 5.000alpha11 1994-???-??
+ 5.000alpha10 1994-Jun-11
+ 5.000alpha11 1994-Jul-01
Andy 5.000a11a 1994-Jul-07 To fit 14.
5.000a11b 1994-Jul-14
5.000a11c 1994-Jul-19
5.000a11d 1994-Jul-22
- Larry 5.000alpha12 1994-???-??
+ Larry 5.000alpha12 1994-Aug-04
Andy 5.000a12a 1994-Aug-08
5.000a12b 1994-Aug-15
5.000a12c 1994-Aug-22
@@ -137,8 +137,8 @@ the strings?).
5.000a12f 1994-Aug-24
5.000a12g 1994-Aug-24
5.000a12h 1994-Aug-24
- Larry 5.000beta1 1994-???-??
- Andy 5.000b1a 1994-???-??
+ Larry 5.000beta1 1994-Aug-30
+ Andy 5.000b1a 1994-Sep-06
Larry 5.000beta2 1994-Sep-14 Core slushified.
Andy 5.000b2a 1994-Sep-14
5.000b2b 1994-Sep-17
@@ -152,6 +152,7 @@ the strings?).
5.000b3f 1994-Sep-30
5.000b3g 1994-Oct-04
Andy 5.000b3h 1994-Oct-07
+ Larry? 5.000gamma 1994-Oct-13?
Larry 5.000 1994-Oct-17
@@ -167,8 +168,9 @@ the strings?).
5.000j 1995-Feb-07
5.000k 1995-Feb-11
5.000l 1995-Feb-21
- 5.000m 1995-???-??
+ 5.000m 1995-Feb-28
5.000n 1995-Mar-07
+ 5.000o 1995-Mar-13?
Larry 5.001 1995-Mar-13
@@ -187,7 +189,7 @@ the strings?).
5.001m 1995-Jul-02 Very stable.
5.001n 1995-Oct-31 Very unstable.
5.002beta1 1995-Nov-21
- 5.002b1a 1995-Nov-??
+ 5.002b1a 1995-Dec-04
5.002b1b 1995-Dec-04
5.002b1c 1995-Dec-04
5.002b1d 1995-Dec-04
@@ -549,7 +551,7 @@ Jarkko Hietaniemi <F<jhi@iki.fi>>.
Thanks to the collective memory of the Perlfolk. In addition to the
Keepers of the Pumpkin also Alan Champion, Andreas König, John
-Macdonald, Matthias Neeracher, Michael Peppler, Randal Schwartz, and
-Paul D. Smith sent corrections and additions.
+Macdonald, Matthias Neeracher, Jeff Okamoto, Michael Peppler,
+Randal Schwartz, and Paul D. Smith sent corrections and additions.
=cut
diff --git a/pod/perllexwarn.pod b/pod/perllexwarn.pod
index 8dbae0ddbc..32fc21084e 100644
--- a/pod/perllexwarn.pod
+++ b/pod/perllexwarn.pod
@@ -313,6 +313,10 @@ produce a fatal error.
The experimental features need bottomed out.
+ perldiag.pod
+ Need to add warning class information and notes on
+ how to use the class info with the warnings pragma.
+
perl5db.pl
The debugger saves and restores C<$^W> at runtime. I haven't checked
whether the debugger will still work with the lexical warnings
diff --git a/pod/perlsyn.pod b/pod/perlsyn.pod
index 680ecb9ad9..0dd842d2a2 100644
--- a/pod/perlsyn.pod
+++ b/pod/perlsyn.pod
@@ -155,7 +155,7 @@ C<if> an C<else> goes with. If you use C<unless> in place of C<if>,
the sense of the test is reversed.
The C<while> statement executes the block as long as the expression is
-true (does not evaluate to the null string (C<""> or C<0> or C<"0">).
+true (does not evaluate to the null string C<""> or C<0> or C<"0">).
The LABEL is optional, and if present, consists of an identifier followed
by a colon. The LABEL identifies the loop for the loop control
statements C<next>, C<last>, and C<redo>.
diff --git a/pp.c b/pp.c
index 6b71e8c883..07bb33d367 100644
--- a/pp.c
+++ b/pp.c
@@ -1778,9 +1778,9 @@ S_seed(pTHX)
# endif
#endif
u += SEED_C3 * (U32)getpid();
- u += SEED_C4 * (U32)(UV)PTR_CAST PL_stack_sp;
+ u += SEED_C4 * (U32)PTR2UV(PL_stack_sp);
#ifndef PLAN9 /* XXX Plan9 assembler chokes on this; fix needed */
- u += SEED_C5 * (U32)(UV)PTR_CAST &when;
+ u += SEED_C5 * (U32)PTR2UV(&when);
#endif
return u;
}
diff --git a/pp_ctl.c b/pp_ctl.c
index 7a65ec0186..c9afbb6601 100644
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -223,12 +223,12 @@ Perl_rxres_save(pTHX_ void **rsp, REGEXP *rx)
*rsp = (void*)p;
}
- *p++ = (UV)PTR_CAST (RX_MATCH_COPIED(rx) ? rx->subbeg : Nullch);
+ *p++ = PTR2UV(RX_MATCH_COPIED(rx) ? rx->subbeg : Nullch);
RX_MATCH_COPIED_off(rx);
*p++ = rx->nparens;
- *p++ = (UV)PTR_CAST rx->subbeg;
+ *p++ = PTR2UV(rx->subbeg);
*p++ = (UV)rx->sublen;
for (i = 0; i <= rx->nparens; ++i) {
*p++ = (UV)rx->startp[i];
@@ -249,7 +249,7 @@ Perl_rxres_restore(pTHX_ void **rsp, REGEXP *rx)
rx->nparens = *p++;
- rx->subbeg = (char*)PTR_CAST (*p++);
+ rx->subbeg = INT2PTR(char*,*p++);
rx->sublen = (I32)(*p++);
for (i = 0; i <= rx->nparens; ++i) {
rx->startp[i] = (I32)(*p++);
@@ -263,7 +263,7 @@ Perl_rxres_free(pTHX_ void **rsp)
UV *p = (UV*)*rsp;
if (p) {
- Safefree((char*)PTR_CAST (*p));
+ Safefree(INT2PTR(char*,*p));
Safefree(p);
*rsp = Null(void*);
}
@@ -2199,7 +2199,7 @@ PP(pp_goto)
CV *gotocv;
if (PERLDB_SUB_NN) {
- SvIVX(sv) = (IV)PTR_CAST cv; /* Already upgraded, saved */
+ SvIVX(sv) = PTR2IV(cv); /* Already upgraded, saved */
} else {
save_item(sv);
gv_efullname3(sv, CvGV(cv), Nullch);
diff --git a/pp_hot.c b/pp_hot.c
index de0434e0f7..389d5107a9 100644
--- a/pp_hot.c
+++ b/pp_hot.c
@@ -29,7 +29,6 @@
#include <sys/file.h>
#endif
-#define HOP(pos,off) (IN_UTF8 ? utf8_hop(pos, off) : (pos + off))
/* Hot code. */
@@ -164,8 +163,21 @@ PP(pp_concat)
s = SvPV_force(TARG, len);
}
s = SvPV(right,len);
- if (SvOK(TARG))
+ if (SvOK(TARG)) {
+#if defined(PERL_Y2KWARN)
+ if ((SvIOK(right) || SvNOK(right)) && ckWARN(WARN_MISC)) {
+ STRLEN n;
+ char *s = SvPV(TARG,n);
+ if (n >= 2 && s[n-2] == '1' && s[n-1] == '9'
+ && (n == 2 || !isDIGIT(s[n-3])))
+ {
+ Perl_warner(aTHX_ WARN_MISC, "Possible Y2K bug: %s",
+ "about to append an integer to '19'");
+ }
+ }
+#endif
sv_catpvn(TARG,s,len);
+ }
else
sv_setpvn(TARG,s,len); /* suppress warning */
SETTARG;
@@ -2112,7 +2124,7 @@ S_get_db_sub(pTHX_ SV **svp, CV *cv)
SvUPGRADE(dbsv, SVt_PVIV);
SvIOK_on(dbsv);
SAVEIV(SvIVX(dbsv));
- SvIVX(dbsv) = (IV)PTR_CAST cv; /* Do it the quickest way */
+ SvIVX(dbsv) = PTR2IV(cv); /* Do it the quickest way */
}
if (CvXSUB(cv))
diff --git a/pp_sys.c b/pp_sys.c
index 5271a861ea..2a0ec38fcd 100644
--- a/pp_sys.c
+++ b/pp_sys.c
@@ -22,6 +22,11 @@
/* Shadow password support for solaris - pdo@cs.umd.edu
* Not just Solaris: at least HP-UX, IRIX, Linux.
* the API is from SysV. --jhi */
+#ifdef __hpux__
+/* There is a MAXINT coming from <shadow.h> <- <hpsecurity.h> <- <values.h>
+ * and another MAXINT from "perl.h" <- <sys/param.h>. */
+#undef MAXINT
+#endif
#include <shadow.h>
#endif
@@ -1898,7 +1903,7 @@ PP(pp_ioctl)
}
else {
retval = SvIV(argsv);
- s = (char*)PTR_CAST retval; /* ouch */
+ s = INT2PTR(char*,retval); /* ouch */
}
TAINT_PROPER(optype == OP_IOCTL ? "ioctl" : "fcntl");
diff --git a/proto.h b/proto.h
index ddb31429fa..9ca65d934a 100644
--- a/proto.h
+++ b/proto.h
@@ -560,11 +560,15 @@ VIRTUAL IV Perl_sv_2iv(pTHX_ SV* sv);
VIRTUAL SV* Perl_sv_2mortal(pTHX_ SV* sv);
VIRTUAL NV Perl_sv_2nv(pTHX_ SV* sv);
VIRTUAL char* Perl_sv_2pv(pTHX_ SV* sv, STRLEN* lp);
+VIRTUAL char* Perl_sv_2pvutf8(pTHX_ SV* sv, STRLEN* lp);
+VIRTUAL char* Perl_sv_2pvbyte(pTHX_ SV* sv, STRLEN* lp);
VIRTUAL UV Perl_sv_2uv(pTHX_ SV* sv);
VIRTUAL IV Perl_sv_iv(pTHX_ SV* sv);
VIRTUAL UV Perl_sv_uv(pTHX_ SV* sv);
VIRTUAL NV Perl_sv_nv(pTHX_ SV* sv);
VIRTUAL char* Perl_sv_pvn(pTHX_ SV *sv, STRLEN *len);
+VIRTUAL char* Perl_sv_pvutf8n(pTHX_ SV *sv, STRLEN *len);
+VIRTUAL char* Perl_sv_pvbyten(pTHX_ SV *sv, STRLEN *len);
VIRTUAL I32 Perl_sv_true(pTHX_ SV *sv);
VIRTUAL void Perl_sv_add_arena(pTHX_ char* ptr, U32 size, U32 flags);
VIRTUAL int Perl_sv_backoff(pTHX_ SV* sv);
@@ -606,6 +610,8 @@ VIRTUAL char* Perl_sv_peek(pTHX_ SV* sv);
VIRTUAL void Perl_sv_pos_u2b(pTHX_ SV* sv, I32* offsetp, I32* lenp);
VIRTUAL void Perl_sv_pos_b2u(pTHX_ SV* sv, I32* offsetp);
VIRTUAL char* Perl_sv_pvn_force(pTHX_ SV* sv, STRLEN* lp);
+VIRTUAL char* Perl_sv_pvutf8n_force(pTHX_ SV* sv, STRLEN* lp);
+VIRTUAL char* Perl_sv_pvbyten_force(pTHX_ SV* sv, STRLEN* lp);
VIRTUAL char* Perl_sv_reftype(pTHX_ SV* sv, int ob);
VIRTUAL void Perl_sv_replace(pTHX_ SV* sv, SV* nsv);
VIRTUAL void Perl_sv_report_used(pTHX);
@@ -630,8 +636,8 @@ VIRTUAL void Perl_sv_unref(pTHX_ SV* sv);
VIRTUAL void Perl_sv_untaint(pTHX_ SV* sv);
VIRTUAL bool Perl_sv_upgrade(pTHX_ SV* sv, U32 mt);
VIRTUAL void Perl_sv_usepvn(pTHX_ SV* sv, char* ptr, STRLEN len);
-VIRTUAL void Perl_sv_vcatpvfn(pTHX_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *used_locale);
-VIRTUAL void Perl_sv_vsetpvfn(pTHX_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *used_locale);
+VIRTUAL void Perl_sv_vcatpvfn(pTHX_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *maybe_tainted);
+VIRTUAL void Perl_sv_vsetpvfn(pTHX_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *maybe_tainted);
VIRTUAL SV* Perl_swash_init(pTHX_ char* pkg, char* name, SV* listsv, I32 minbits, I32 none);
VIRTUAL UV Perl_swash_fetch(pTHX_ SV *sv, U8 *ptr);
VIRTUAL void Perl_taint_env(pTHX);
@@ -724,7 +730,11 @@ VIRTUAL void* Perl_default_protect(pTHX_ int *excpt, protect_body_t body, ...);
VIRTUAL void* Perl_vdefault_protect(pTHX_ int *excpt, protect_body_t body, va_list *args);
VIRTUAL void Perl_reginitcolors(pTHX);
VIRTUAL char* Perl_sv_2pv_nolen(pTHX_ SV* sv);
+VIRTUAL char* Perl_sv_2pvutf8_nolen(pTHX_ SV* sv);
+VIRTUAL char* Perl_sv_2pvbyte_nolen(pTHX_ SV* sv);
VIRTUAL char* Perl_sv_pv(pTHX_ SV *sv);
+VIRTUAL char* Perl_sv_pvutf8(pTHX_ SV *sv);
+VIRTUAL char* Perl_sv_pvbyte(pTHX_ SV *sv);
VIRTUAL void Perl_sv_force_normal(pTHX_ SV *sv);
VIRTUAL void Perl_tmps_grow(pTHX_ I32 n);
VIRTUAL SV* Perl_sv_rvweaken(pTHX_ SV *sv);
diff --git a/regexec.c b/regexec.c
index 3fb1826e19..d55c5beee4 100644
--- a/regexec.c
+++ b/regexec.c
@@ -278,7 +278,16 @@ S_cache_re(pTHX_ regexp *prog)
/* A failure to find a constant substring means that there is no need to make
an expensive call to REx engine, thus we celebrate a failure. Similarly,
finding a substring too deep into the string means that less calls to
- regtry() should be needed. */
+ regtry() should be needed.
+
+ REx compiler's optimizer found 4 possible hints:
+ a) Anchored substring;
+ b) Fixed substring;
+ c) Whether we are anchored (beginning-of-line or \G);
+ d) First node (of those at offset 0) which may distingush positions;
+ We use 'a', 'b', multiline-part of 'c', and try to find a position in the
+ string which does not contradict any of them.
+ */
char *
Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
@@ -293,6 +302,9 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
I32 ml_anch;
char *tmp;
register char *other_last = Nullch;
+#ifdef DEBUGGING
+ char *i_strpos = strpos;
+#endif
DEBUG_r( if (!PL_colorset) reginitcolors() );
DEBUG_r(PerlIO_printf(Perl_debug_log,
@@ -420,7 +432,7 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
goto fail_finish;
/* Finish the diagnostic message */
- DEBUG_r(PerlIO_printf(Perl_debug_log, "%ld...\n", (long)(s - strpos)) );
+ DEBUG_r(PerlIO_printf(Perl_debug_log, "%ld...\n", (long)(s - i_strpos)) );
/* Got a candidate. Check MBOL anchoring, and the *other* substr.
Start with the other substr.
@@ -431,11 +443,13 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
*/
if (prog->float_substr && prog->anchored_substr) {
- /* Take into account the anchored substring. */
+ /* Take into account the "other" substring. */
/* XXXX May be hopelessly wrong for UTF... */
if (!other_last)
other_last = strpos - 1;
if (check == prog->float_substr) {
+ do_other_anchored:
+ {
char *last = s - start_shift, *last1, *last2;
char *s1 = s;
@@ -446,7 +460,7 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
|| (PL_bostr = strpos, /* Used in regcopmaybe() */
(t = reghopmaybe_c(s, -(prog->check_offset_max)))
&& t > strpos)))
- ;
+ /* EMPTY */;
else
t = strpos;
t += prog->anchored_offset;
@@ -478,7 +492,7 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
}
DEBUG_r(PerlIO_printf(Perl_debug_log,
", trying floating at offset %ld...\n",
- (long)(s1 + 1 - strpos)));
+ (long)(s1 + 1 - i_strpos)));
PL_regeol = strend; /* Used in HOP() */
other_last = last1 + prog->anchored_offset;
s = HOPc(last, 1);
@@ -486,14 +500,15 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
}
else {
DEBUG_r(PerlIO_printf(Perl_debug_log, " at offset %ld...\n",
- (long)(s - strpos)));
+ (long)(s - i_strpos)));
t = s - prog->anchored_offset;
other_last = s - 1;
+ s = s1;
if (t == strpos)
goto try_at_start;
- s = s1;
goto try_at_offset;
}
+ }
}
else { /* Take into account the floating substring. */
char *last, *last1;
@@ -529,7 +544,7 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
}
DEBUG_r(PerlIO_printf(Perl_debug_log,
", trying anchored starting at offset %ld...\n",
- (long)(s1 + 1 - strpos)));
+ (long)(s1 + 1 - i_strpos)));
other_last = last;
PL_regeol = strend; /* Used in HOP() */
s = HOPc(t, 1);
@@ -537,11 +552,11 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
}
else {
DEBUG_r(PerlIO_printf(Perl_debug_log, " at offset %ld...\n",
- (long)(s - strpos)));
+ (long)(s - i_strpos)));
other_last = s - 1;
+ s = s1;
if (t == strpos)
goto try_at_start;
- s = s1;
goto try_at_offset;
}
}
@@ -559,18 +574,36 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
cannot start at strpos. */
try_at_offset:
if (ml_anch && t[-1] != '\n') {
- find_anchor: /* Eventually fbm_*() should handle this */
+ /* Eventually fbm_*() should handle this, but often
+ anchored_offset is not 0, so this check will not be wasted. */
+ /* XXXX In the code below we prefer to look for "^" even in
+ presence of anchored substrings. And we search even
+ beyond the found float position. These pessimizations
+ are historical artefacts only. */
+ find_anchor:
while (t < strend - prog->minlen) {
if (*t == '\n') {
if (t < s - prog->check_offset_min) {
+ if (prog->anchored_substr) {
+ /* We definitely contradict the found anchored
+ substr. Due to the above check we do not
+ contradict "check" substr.
+ Thus we can arrive here only if check substr
+ is float. Redo checking for "other"=="fixed".
+ */
+ strpos = t + 1;
+ DEBUG_r(PerlIO_printf(Perl_debug_log, "Found /%s^%s/m at offset %ld, rescanning for anchored from offset %ld...\n",
+ PL_colors[0],PL_colors[1], (long)(strpos - i_strpos), (long)(strpos - i_strpos + prog->anchored_offset)));
+ goto do_other_anchored;
+ }
s = t + 1;
DEBUG_r(PerlIO_printf(Perl_debug_log, "Found /%s^%s/m at offset %ld...\n",
- PL_colors[0],PL_colors[1], (long)(s - strpos)));
+ PL_colors[0],PL_colors[1], (long)(s - i_strpos)));
goto set_useful;
}
DEBUG_r(PerlIO_printf(Perl_debug_log, "Found /%s^%s/m, restarting at offset %ld...\n",
- PL_colors[0],PL_colors[1], (long)(t + 1 - strpos)));
- s = t + 1;
+ PL_colors[0],PL_colors[1], (long)(t + 1 - i_strpos)));
+ strpos = s = t + 1;
goto restart;
}
t++;
@@ -596,8 +629,12 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
t = strpos;
goto find_anchor;
}
+ DEBUG_r( if (ml_anch)
+ PerlIO_printf(Perl_debug_log, "Does not contradict /%s^%s/m...\n",
+ PL_colors[0],PL_colors[1]);
+ );
success_at_start:
- if (!(prog->reganch & ROPT_NAUGHTY)
+ if (!(prog->reganch & ROPT_NAUGHTY) /* XXXX If strpos moved? */
&& --BmUSEFUL(prog->check_substr) < 0
&& prog->check_substr == prog->float_substr) { /* boo */
/* If flags & SOMETHING - do not do it many times on the same match */
@@ -612,7 +649,7 @@ Perl_re_intuit_start(pTHX_ regexp *prog, SV *sv, char *strpos,
}
DEBUG_r(PerlIO_printf(Perl_debug_log, "%sGuessed:%s match at offset %ld\n",
- PL_colors[4], PL_colors[5], (long)(s - strpos)) );
+ PL_colors[4], PL_colors[5], (long)(s - i_strpos)) );
return s;
fail_finish: /* Substring not found */
@@ -642,7 +679,6 @@ Perl_regexec_flags(pTHX_ register regexp *prog, char *stringarg, register char *
register I32 tmp;
I32 minlen; /* must match at least this many chars */
I32 dontbother = 0; /* how many characters not to try at end */
- CURCUR cc;
I32 start_shift = 0; /* Offset of the start to find
constant substr. */ /* CC */
I32 end_shift = 0; /* Same for the end. */ /* CC */
@@ -650,9 +686,7 @@ Perl_regexec_flags(pTHX_ register regexp *prog, char *stringarg, register char *
char *scream_olds;
SV* oreplsv = GvSV(PL_replgv);
- cc.cur = 0;
- cc.oldcc = 0;
- PL_regcc = &cc;
+ PL_regcc = 0;
cache_re(prog);
#ifdef DEBUGGING
@@ -758,9 +792,12 @@ Perl_regexec_flags(pTHX_ register regexp *prog, char *stringarg, register char *
end = HOPc(strend, -dontbother) - 1;
/* for multiline we only have to try after newlines */
if (prog->check_substr) {
+ if (s == startpos)
+ goto after_try;
while (1) {
if (regtry(prog, s))
goto got_it;
+ after_try:
if (s >= end)
goto phooey;
s = re_intuit_start(prog, sv, s + 1, strend, flags, NULL);
@@ -2109,7 +2146,6 @@ S_regmatch(pTHX_ regnode *prog)
regexp *re;
MAGIC *mg = Null(MAGIC*);
re_cc_state state;
- CURCUR cctmp;
CHECKPOINT cp, lastcp;
if(SvROK(ret) || SvRMAGICAL(ret)) {
@@ -2152,9 +2188,7 @@ S_regmatch(pTHX_ regnode *prog)
state.cc = PL_regcc;
state.re = PL_reg_re;
- cctmp.cur = 0;
- cctmp.oldcc = 0;
- PL_regcc = &cctmp;
+ PL_regcc = 0;
cp = regcppush(0); /* Save *all* the positions. */
REGCP_SET;
@@ -2168,6 +2202,20 @@ S_regmatch(pTHX_ regnode *prog)
PL_reg_maxiter = 0;
if (regmatch(re->program + 1)) {
+ /* Even though we succeeded, we need to restore
+ global variables, since we may be wrapped inside
+ SUSPEND, thus the match may be not finished yet. */
+
+ /* XXXX Do this only if SUSPENDed? */
+ PL_reg_call_cc = state.prev;
+ PL_regcc = state.cc;
+ PL_reg_re = state.re;
+ cache_re(PL_reg_re);
+
+ /* XXXX This is too dramatic a measure... */
+ PL_reg_maxiter = 0;
+
+ /* These are needed even if not SUSPEND. */
ReREFCNT_dec(re);
regcpblow(cp);
sayYES;
@@ -2227,6 +2275,81 @@ S_regmatch(pTHX_ regnode *prog)
case LOGICAL:
logical = scan->flags;
break;
+/*******************************************************************
+ PL_regcc contains infoblock about the innermost (...)* loop, and
+ a pointer to the next outer infoblock.
+
+ Here is how Y(A)*Z is processed (if it is compiled into CURLYX/WHILEM):
+
+ 1) After matching X, regnode for CURLYX is processed;
+
+ 2) This regnode creates infoblock on the stack, and calls
+ regmatch() recursively with the starting point at WHILEM node;
+
+ 3) Each hit of WHILEM node tries to match A and Z (in the order
+ depending on the current iteration, min/max of {min,max} and
+ greediness). The information about where are nodes for "A"
+ and "Z" is read from the infoblock, as is info on how many times "A"
+ was already matched, and greediness.
+
+ 4) After A matches, the same WHILEM node is hit again.
+
+ 5) Each time WHILEM is hit, PL_regcc is the infoblock created by CURLYX
+ of the same pair. Thus when WHILEM tries to match Z, it temporarily
+ resets PL_regcc, since this Y(A)*Z can be a part of some other loop:
+ as in (Y(A)*Z)*. If Z matches, the automaton will hit the WHILEM node
+ of the external loop.
+
+ Currently present infoblocks form a tree with a stem formed by PL_curcc
+ and whatever it mentions via ->next, and additional attached trees
+ corresponding to temporarily unset infoblocks as in "5" above.
+
+ In the following picture infoblocks for outer loop of
+ (Y(A)*?Z)*?T are denoted O, for inner I. NULL starting block
+ is denoted by x. The matched string is YAAZYAZT. Temporarily postponed
+ infoblocks are drawn below the "reset" infoblock.
+
+ In fact in the picture below we do not show failed matches for Z and T
+ by WHILEM blocks. [We illustrate minimal matches, since for them it is
+ more obvious *why* one needs to *temporary* unset infoblocks.]
+
+ Matched REx position InfoBlocks Comment
+ (Y(A)*?Z)*?T x
+ Y(A)*?Z)*?T x <- O
+ Y (A)*?Z)*?T x <- O
+ Y A)*?Z)*?T x <- O <- I
+ YA )*?Z)*?T x <- O <- I
+ YA A)*?Z)*?T x <- O <- I
+ YAA )*?Z)*?T x <- O <- I
+ YAA Z)*?T x <- O # Temporary unset I
+ I
+
+ YAAZ Y(A)*?Z)*?T x <- O
+ I
+
+ YAAZY (A)*?Z)*?T x <- O
+ I
+
+ YAAZY A)*?Z)*?T x <- O <- I
+ I
+
+ YAAZYA )*?Z)*?T x <- O <- I
+ I
+
+ YAAZYA Z)*?T x <- O # Temporary unset I
+ I,I
+
+ YAAZYAZ )*?T x <- O
+ I,I
+
+ YAAZYAZ T x # Temporary unset O
+ O
+ I,I
+
+ YAAZYAZT x
+ O
+ I,I
+ *******************************************************************/
case CURLYX: {
CURCUR cc;
CHECKPOINT cp = PL_savestack_ix;
@@ -2279,7 +2402,8 @@ S_regmatch(pTHX_ regnode *prog)
if (locinput == cc->lastloc && n >= cc->min) {
PL_regcc = cc->oldcc;
- ln = PL_regcc->cur;
+ if (PL_regcc)
+ ln = PL_regcc->cur;
DEBUG_r(
PerlIO_printf(Perl_debug_log,
"%*s empty match detected, try continuation...\n",
@@ -2292,7 +2416,8 @@ S_regmatch(pTHX_ regnode *prog)
"%*s failed...\n",
REPORT_CODE_OFF+PL_regindent*2, "")
);
- PL_regcc->cur = ln;
+ if (PL_regcc)
+ PL_regcc->cur = ln;
PL_regcc = cc;
sayNO;
}
@@ -2363,7 +2488,8 @@ S_regmatch(pTHX_ regnode *prog)
if (cc->minmod) {
PL_regcc = cc->oldcc;
- ln = PL_regcc->cur;
+ if (PL_regcc)
+ ln = PL_regcc->cur;
cp = regcppush(cc->parenfloor);
REGCP_SET;
if (regmatch(cc->next)) {
@@ -2372,7 +2498,8 @@ S_regmatch(pTHX_ regnode *prog)
}
REGCP_UNWIND;
regcppop();
- PL_regcc->cur = ln;
+ if (PL_regcc)
+ PL_regcc->cur = ln;
PL_regcc = cc;
if (n >= cc->max) { /* Maximum greed exceeded? */
@@ -2443,14 +2570,16 @@ S_regmatch(pTHX_ regnode *prog)
/* Failed deeper matches of scan, so see if this one works. */
PL_regcc = cc->oldcc;
- ln = PL_regcc->cur;
+ if (PL_regcc)
+ ln = PL_regcc->cur;
if (regmatch(cc->next))
sayYES;
DEBUG_r(
PerlIO_printf(Perl_debug_log, "%*s failed...\n",
REPORT_CODE_OFF+PL_regindent*2, "")
);
- PL_regcc->cur = ln;
+ if (PL_regcc)
+ PL_regcc->cur = ln;
PL_regcc = cc;
cc->cur = n - 1;
cc->lastloc = lastloc;
diff --git a/sv.c b/sv.c
index 956f3b961a..6327ef02fc 100644
--- a/sv.c
+++ b/sv.c
@@ -612,8 +612,8 @@ Perl_sv_upgrade(pTHX_ register SV *sv, U32 mt)
pv = (char*)SvRV(sv);
cur = 0;
len = 0;
- iv = (IV)PTR_CAST pv;
- nv = (NV)(PTRV)pv;
+ iv = PTR2IV(pv);
+ nv = PTR2NV(pv);
del_XRV(SvANY(sv));
magic = 0;
stash = 0;
@@ -1034,10 +1034,12 @@ S_not_a_number(pTHX_ SV *sv)
*d = '\0';
if (PL_op)
- Perl_warner(aTHX_ WARN_NUMERIC, "Argument \"%s\" isn't numeric in %s", tmpbuf,
- PL_op_name[PL_op->op_type]);
+ Perl_warner(aTHX_ WARN_NUMERIC,
+ "Argument \"%s\" isn't numeric in %s", tmpbuf,
+ PL_op_desc[PL_op->op_type]);
else
- Perl_warner(aTHX_ WARN_NUMERIC, "Argument \"%s\" isn't numeric", tmpbuf);
+ Perl_warner(aTHX_ WARN_NUMERIC,
+ "Argument \"%s\" isn't numeric", tmpbuf);
}
/* the number can be converted to integer with atol() or atoll() */
@@ -1077,7 +1079,7 @@ Perl_sv_2iv(pTHX_ register SV *sv)
SV* tmpstr;
if (SvAMAGIC(sv) && (tmpstr=AMG_CALLun(sv, numer)))
return SvIV(tmpstr);
- return (IV)PTR_CAST SvRV(sv);
+ return PTR2IV(SvRV(sv));
}
if (SvREADONLY(sv) && !SvOK(sv)) {
dTHR;
@@ -1113,7 +1115,7 @@ Perl_sv_2iv(pTHX_ register SV *sv)
#ifdef IV_IS_QUAD
DEBUG_c(PerlIO_printf(Perl_debug_log,
"0x%" PERL_PRIx64 " 2iv(%" PERL_PRIu64 " => %" PERL_PRId64 ") (as unsigned)\n",
- (UV)PTR_CAST sv,
+ PTR2UV(sv),
(UV)SvUVX(sv), (IV)SvUVX(sv)));
#else
DEBUG_c(PerlIO_printf(Perl_debug_log,
@@ -1222,7 +1224,7 @@ Perl_sv_2uv(pTHX_ register SV *sv)
SV* tmpstr;
if (SvAMAGIC(sv) && (tmpstr=AMG_CALLun(sv, numer)))
return SvUV(tmpstr);
- return (UV)PTR_CAST SvRV(sv);
+ return PTR2UV(SvRV(sv));
}
if (SvREADONLY(sv) && !SvOK(sv)) {
dTHR;
@@ -1393,7 +1395,7 @@ Perl_sv_2nv(pTHX_ register SV *sv)
SV* tmpstr;
if (SvAMAGIC(sv) && (tmpstr=AMG_CALLun(sv,numer)))
return SvNV(tmpstr);
- return (NV)(PTRV)SvRV(sv);
+ return PTR2NV(SvRV(sv));
}
if (SvREADONLY(sv) && !SvOK(sv)) {
dTHR;
@@ -1777,7 +1779,7 @@ Perl_sv_2pv(pTHX_ register SV *sv, STRLEN *lp)
else
sv_setpv(tsv, s);
#ifdef IV_IS_QUAD
- Perl_sv_catpvf(aTHX_ tsv, "(0x%" PERL_PRIx64")", (UV)PTR_CAST sv);
+ Perl_sv_catpvf(aTHX_ tsv, "(0x%" PERL_PRIx64")", PTR2UV(sv));
#else
Perl_sv_catpvf(aTHX_ tsv, "(0x%lx)", (unsigned long)sv);
#endif
@@ -3691,7 +3693,7 @@ Perl_sv_inc(pTHX_ register SV *sv)
IV i;
if (SvAMAGIC(sv) && AMG_CALLun(sv,inc))
return;
- i = (IV)PTR_CAST SvRV(sv);
+ i = PTR2IV(SvRV(sv));
sv_unref(sv);
sv_setiv(sv, i);
}
@@ -3791,7 +3793,7 @@ Perl_sv_dec(pTHX_ register SV *sv)
IV i;
if (SvAMAGIC(sv) && AMG_CALLun(sv,dec))
return;
- i = (IV)PTR_CAST SvRV(sv);
+ i = PTR2IV(SvRV(sv));
sv_unref(sv);
sv_setiv(sv, i);
}
@@ -4395,7 +4397,7 @@ Perl_sv_setref_pv(pTHX_ SV *rv, const char *classname, void *pv)
SvSETMAGIC(rv);
}
else
- sv_setiv(newSVrv(rv,classname), (IV)PTR_CAST pv);
+ sv_setiv(newSVrv(rv,classname), PTR2IV(pv));
return rv;
}
@@ -4645,14 +4647,14 @@ Perl_sv_vcatpvf_mg(pTHX_ SV *sv, const char* pat, va_list* args)
}
void
-Perl_sv_vsetpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV **svargs, I32 svmax, bool *used_locale)
+Perl_sv_vsetpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV **svargs, I32 svmax, bool *maybe_tainted)
{
sv_setpvn(sv, "", 0);
- sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale);
+ sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, maybe_tainted);
}
void
-Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV **svargs, I32 svmax, bool *used_locale)
+Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV **svargs, I32 svmax, bool *maybe_tainted)
{
dTHR;
char *p;
@@ -4898,9 +4900,9 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV
case 'p':
if (args)
- uv = (UV)PTR_CAST va_arg(*args, void*);
+ uv = PTR2UV(va_arg(*args, void*));
else
- uv = (svix < svmax) ? (UV)PTR_CAST svargs[svix++] : 0;
+ uv = (svix < svmax) ? PTR2UV(svargs[svix++]) : 0;
base = 16;
goto integer;
@@ -5033,10 +5035,25 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV
dig = uv & 1;
*--eptr = '0' + dig;
} while (uv >>= 1);
- if (alt && *eptr != '0')
- *--eptr = '0';
+ if (alt) {
+ esignbuf[esignlen++] = '0';
+ esignbuf[esignlen++] = 'b';
+ }
break;
default: /* it had better be ten or less */
+#if defined(PERL_Y2KWARN)
+ if (ckWARN(WARN_MISC)) {
+ STRLEN n;
+ char *s = SvPV(sv,n);
+ if (n >= 2 && s[n-2] == '1' && s[n-1] == '9'
+ && (n == 2 || !isDIGIT(s[n-3])))
+ {
+ Perl_warner(aTHX_ WARN_MISC,
+ "Possible Y2K bug: %%%c %s",
+ c, "format string following '19'");
+ }
+ }
+#endif
do {
dig = uv % base;
*--eptr = '0' + dig;
@@ -5086,6 +5103,7 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV
Safefree(PL_efloatbuf);
PL_efloatsize = need + 20; /* more fudge */
New(906, PL_efloatbuf, PL_efloatsize, char);
+ PL_efloatbuf[0] = '\0';
}
eptr = ebuf + sizeof ebuf;
@@ -5125,15 +5143,36 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV
eptr = PL_efloatbuf;
elen = strlen(PL_efloatbuf);
-#ifdef LC_NUMERIC
+#ifdef USE_LOCALE_NUMERIC
/*
* User-defined locales may include arbitrary characters.
- * And, unfortunately, some system may alloc the "C" locale
- * to be overridden by a malicious user.
+ * And, unfortunately, some (broken) systems may allow the
+ * "C" locale to be overridden by a malicious user.
+ * XXX This is an extreme way to cope with broken systems.
*/
- if (used_locale)
- *used_locale = TRUE;
-#endif /* LC_NUMERIC */
+ if (maybe_tainted && PL_tainting) {
+ /* safe if it matches /[-+]?\d*(\.\d*)?([eE][-+]?\d*)?/ */
+ if (*eptr == '-' || *eptr == '+')
+ ++eptr;
+ while (isDIGIT(*eptr))
+ ++eptr;
+ if (*eptr == '.') {
+ ++eptr;
+ while (isDIGIT(*eptr))
+ ++eptr;
+ }
+ if (*eptr == 'e' || *eptr == 'E') {
+ ++eptr;
+ if (*eptr == '-' || *eptr == '+')
+ ++eptr;
+ while (isDIGIT(*eptr))
+ ++eptr;
+ }
+ if (*eptr)
+ *maybe_tainted = TRUE; /* results are suspect */
+ eptr = PL_efloatbuf;
+ }
+#endif /* USE_LOCALE_NUMERIC */
break;
diff --git a/sv.h b/sv.h
index 1aab997470..f6e3c39b4a 100644
--- a/sv.h
+++ b/sv.h
@@ -137,13 +137,16 @@ struct io {
#define SVf_BREAK 0x00400000 /* refcnt is artificially low */
#define SVf_READONLY 0x00800000 /* may not be modified */
-#define SVf_THINKFIRST (SVf_READONLY|SVf_ROK|SVf_FAKE)
#define SVp_IOK 0x01000000 /* has valid non-public integer value */
#define SVp_NOK 0x02000000 /* has valid non-public numeric value */
#define SVp_POK 0x04000000 /* has valid non-public pointer value */
#define SVp_SCREAM 0x08000000 /* has been studied? */
+#define SVf_UTF8 0x20000000 /* SvPVX is UTF-8 encoded */
+
+#define SVf_THINKFIRST (SVf_READONLY|SVf_ROK|SVf_FAKE|SVf_UTF8)
+
#define SVf_OK (SVf_IOK|SVf_NOK|SVf_POK|SVf_ROK| \
SVp_IOK|SVp_NOK|SVp_POK)
@@ -367,12 +370,16 @@ struct xpvio {
#define SvNOK_only(sv) (SvOK_off(sv), \
SvFLAGS(sv) |= (SVf_NOK|SVp_NOK))
+#define SvUTF8(sv) (SvFLAGS(sv) & SVf_ISUTF8)
+#define SvUTF8_on(sv) (SvFLAGS(sv) |= (SVf_ISUTF8))
+#define SvUTF8_off(sv) (SvFLAGS(sv) &= ~(SVf_ISUTF8))
+
#define SvPOK(sv) (SvFLAGS(sv) & SVf_POK)
#define SvPOK_on(sv) (SvFLAGS(sv) |= (SVf_POK|SVp_POK))
#define SvPOK_off(sv) (SvFLAGS(sv) &= ~(SVf_POK|SVp_POK))
#define SvPOK_only(sv) (SvFLAGS(sv) &= ~(SVf_OK|SVf_AMAGIC|SVf_IVisUV), \
SvFLAGS(sv) |= (SVf_POK|SVp_POK))
-
+
#define SvOOK(sv) (SvFLAGS(sv) & SVf_OOK)
#define SvOOK_on(sv) (SvIOK_off(sv), SvFLAGS(sv) |= SVf_OOK)
#define SvOOK_off(sv) (SvOOK(sv) && sv_backoff(sv))
@@ -542,11 +549,26 @@ struct xpvio {
#define SvPV_force(sv, lp) sv_pvn_force(sv, &lp)
#define SvPV(sv, lp) sv_pvn(sv, &lp)
#define SvPV_nolen(sv) sv_pv(sv)
+
+#define SvPVutf8_force(sv, lp) sv_pvutf8n_force(sv, &lp)
+#define SvPVutf8(sv, lp) sv_pvutf8n(sv, &lp)
+#define SvPVutf8_nolen(sv) sv_pvutf8(sv)
+
+#define SvPVbyte_force(sv, lp) sv_pvbyte_force(sv, &lp)
+#define SvPVbyte(sv, lp) sv_pvbyten(sv, &lp)
+#define SvPVbyte_nolen(sv) sv_pvbyte(sv)
+
+#define SvPVx(sv, lp) sv_pvn(sv, &lp)
+#define SvPVx_force(sv, lp) sv_pvn_force(sv, &lp)
+#define SvPVutf8x(sv, lp) sv_pvutf8n(sv, &lp)
+#define SvPVutf8x_force(sv, lp) sv_pvutf8n_force(sv, &lp)
+#define SvPVbytex(sv, lp) sv_pvbyten(sv, &lp)
+#define SvPVbytex_force(sv, lp) sv_pvbyten_force(sv, &lp)
+
#define SvIVx(sv) sv_iv(sv)
#define SvUVx(sv) sv_uv(sv)
#define SvNVx(sv) sv_nv(sv)
-#define SvPVx(sv, lp) sv_pvn(sv, &lp)
-#define SvPVx_force(sv, lp) sv_pvn_force(sv, &lp)
+
#define SvTRUEx(sv) sv_true(sv)
#define SvIV(sv) SvIVx(sv)
@@ -569,7 +591,9 @@ struct xpvio {
#undef SvPV
#define SvPV(sv, lp) \
- (SvPOK(sv) ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv(sv, &lp))
+ ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
+ ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv(sv, &lp))
+
#undef SvPV_force
#define SvPV_force(sv, lp) \
@@ -578,19 +602,70 @@ struct xpvio {
#undef SvPV_nolen
#define SvPV_nolen(sv) \
- (SvPOK(sv) ? SvPVX(sv) : sv_2pv_nolen(sv))
+ ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
+ ? SvPVX(sv) : sv_2pv_nolen(sv))
+
+#undef SvPVutf8
+#define SvPVutf8(sv, lp) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK|SVf_UTF8) \
+ ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pvutf8(sv, &lp))
+
+#undef SvPVutf8_force
+#define SvPVutf8_force(sv, lp) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == (SVf_POK||SVf_UTF8) \
+ ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_pvutf8n_force(sv, &lp))
+
+#undef SvPVutf8_nolen
+#define SvPVutf8_nolen(sv) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK||SVf_UTF8)\
+ ? SvPVX(sv) : sv_2pvutf8_nolen(sv))
+
+#undef SvPVutf8
+#define SvPVutf8(sv, lp) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK|SVf_UTF8) \
+ ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pvutf8(sv, &lp))
+
+#undef SvPVutf8_force
+#define SvPVutf8_force(sv, lp) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == (SVf_POK||SVf_UTF8) \
+ ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_pvutf8n_force(sv, &lp))
+
+#undef SvPVutf8_nolen
+#define SvPVutf8_nolen(sv) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK|SVf_UTF8)\
+ ? SvPVX(sv) : sv_2pvutf8_nolen(sv))
+
+#undef SvPVbyte
+#define SvPVbyte(sv, lp) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK) \
+ ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pvbyte(sv, &lp))
+
+#undef SvPVbyte_force
+#define SvPVbyte_force(sv, lp) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8|SVf_THINKFIRST)) == (SVf_POK) \
+ ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_pvbyte_force(sv, &lp))
+
+#undef SvPVbyte_nolen
+#define SvPVbyte_nolen(sv) \
+ ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK)\
+ ? SvPVX(sv) : sv_2pvbyte_nolen(sv))
+
#ifdef __GNUC__
# undef SvIVx
# undef SvUVx
# undef SvNVx
# undef SvPVx
+# undef SvPVutf8x
+# undef SvPVbytex
# undef SvTRUE
# undef SvTRUEx
# define SvIVx(sv) ({SV *nsv = (SV*)(sv); SvIV(nsv); })
# define SvUVx(sv) ({SV *nsv = (SV*)(sv); SvUV(nsv); })
# define SvNVx(sv) ({SV *nsv = (SV*)(sv); SvNV(nsv); })
# define SvPVx(sv, lp) ({SV *nsv = (sv); SvPV(nsv, lp); })
+# define SvPVutf8x(sv, lp) ({SV *nsv = (sv); SvPVutf8(nsv, lp); })
+# define SvPVbytex(sv, lp) ({SV *nsv = (sv); SvPVbyte(nsv, lp); })
# define SvTRUE(sv) ( \
!sv \
? 0 \
@@ -618,12 +693,16 @@ struct xpvio {
# undef SvUVx
# undef SvNVx
# undef SvPVx
+# undef SvPVutf8x
+# undef SvPVbytex
# undef SvTRUE
# undef SvTRUEx
# define SvIVx(sv) ((PL_Sv = (sv)), SvIV(PL_Sv))
# define SvUVx(sv) ((PL_Sv = (sv)), SvUV(PL_Sv))
# define SvNVx(sv) ((PL_Sv = (sv)), SvNV(PL_Sv))
# define SvPVx(sv, lp) ((PL_Sv = (sv)), SvPV(PL_Sv, lp))
+# define SvPVutf8x(sv, lp) ((PL_Sv = (sv)), SvPVutf8(PL_Sv, lp))
+# define SvPVutf8x(sv, lp) ((PL_Sv = (sv)), SvPVbyte(PL_Sv, lp))
# define SvTRUE(sv) ( \
!sv \
? 0 \
diff --git a/t/io/dup.t b/t/io/dup.t
index 9ad823fff7..af13d4d8f7 100755
--- a/t/io/dup.t
+++ b/t/io/dup.t
@@ -2,7 +2,7 @@
# $RCSfile: dup.t,v $$Revision: 4.1 $$Date: 92/08/07 18:27:27 $
-print "1..7\n";
+print "1..6\n";
print "ok 1\n";
@@ -38,16 +38,3 @@ unlink 'Io.dup';
print STDOUT "ok 6\n";
-# 7 # 19990811 mjd@plover.com
-my ($out1, $out2) = ("Line 1\n", "Line 2\n");
-open(W, "> Io.dup") || die "Can't open stdout";
-print W $out1, $out2;
-close W;
-open(R1, "< Io.dup") || die "Can't read temp file";
-$in1 = <R1>;
-open(R2, "<&R1") || die "Can't dup";
-$in2 = <R2>;
-print "not " unless $in1 eq $out1 && $in2 eq $out2;
-print "ok 7\n";
-
-unlink("Io.dup");
diff --git a/t/io/open.t b/t/io/open.t
index 12d32f474c..418edacf39 100755
--- a/t/io/open.t
+++ b/t/io/open.t
@@ -3,6 +3,7 @@
# $RCSfile$
$| = 1;
$^W = 1;
+$Is_VMS = $^O eq 'VMS';
print "1..32\n";
@@ -78,7 +79,8 @@ print "ok 23\n";
unlink("afile");
}
-{
+if ($Is_VMS) { for (24..46) { print "ok $_ # skipped: not Unix fork\n"; } }
+else {
print "# \$!='$!'\nnot " unless open(my $f, '-|', <<'EOC');
./perl -e "print qq(a row\n); print qq(another row\n)"
EOC
@@ -89,7 +91,8 @@ print "ok 25\n";
print "not " unless close($f);
print "ok 26\n";
}
-{
+if ($Is_VMS) { for (27..30) { print "OK $_ # skipped: not Unix fork\n"; } }
+else {
print "# \$!='$!'\nnot " unless open(my $f, '|-', <<'EOC');
./perl -pe "s/^not //"
EOC
diff --git a/t/lib/bigfloatpm.t b/t/lib/bigfltpm.t
index 42cd9583d1..42cd9583d1 100755
--- a/t/lib/bigfloatpm.t
+++ b/t/lib/bigfltpm.t
diff --git a/t/lib/db-btree.t b/t/lib/db-btree.t
index cea8163a46..b13e50eab7 100755
--- a/t/lib/db-btree.t
+++ b/t/lib/db-btree.t
@@ -82,6 +82,8 @@ sub docat_del
}
+$db185mode = ($DB_File::db_version == 1 && ! $DB_File::db_185_compat) ;
+
my $Dfile = "dbbtree.tmp";
unlink $Dfile;
@@ -933,7 +935,7 @@ EOM
unlink $filename ;
}
- ok(150, docat_del($file) eq ($DB_File::db_version == 1 ? <<'EOM' : <<'EOM') ) ;
+ ok(150, docat_del($file) eq ($db185mode ? <<'EOM' : <<'EOM') ) ;
Smith -> John
Wall -> Brick
Wall -> Brick
@@ -987,7 +989,7 @@ EOM
untie %h ;
}
- ok(151, docat_del($file) eq ($DB_File::db_version == 1 ? <<'EOM' : <<'EOM') ) ;
+ ok(151, docat_del($file) eq ($db185mode == 1 ? <<'EOM' : <<'EOM') ) ;
Smith -> John
Wall -> Brick
Wall -> Brick
diff --git a/t/lib/syslfs.t b/t/lib/syslfs.t
index 4d38a8e779..4619e111dc 100644
--- a/t/lib/syslfs.t
+++ b/t/lib/syslfs.t
@@ -30,13 +30,15 @@ sub explain {
print <<EOM;
#
# If the lfs (large file support: large meaning larger than two gigabytes)
-# tests are skipped or fail, it may mean either that your process is not
-# allowed to write large files or that the file system you are running
-# the tests on doesn't support large files, or both. You may also need
-# to reconfigure your kernel. (This is all very system-dependent.)
+# tests are skipped or fail, it may mean either that your process
+# (or process group) is not allowed to write large files (resource
+# limits) or that the file system you are running the tests on doesn't
+# let your user/group have large files (quota) or the filesystem simply
+# doesn't support large files. You may even need to reconfigure your kernel.
+# (This is all very operating system and site-dependent.)
#
# Perl may still be able to support large files, once you have
-# such a process and such a (file) system.
+# such a process, enough quota, and such a (file) system.
#
EOM
}
@@ -47,6 +49,13 @@ if ($^O eq 'win32' || $^O eq 'vms') {
bye();
}
+# Known haves that have problems running this test
+# (for example because they do not support sparse files, like UNICOS)
+if ($^O eq 'unicos') {
+ print "1..0\n# large files known to work but unable to test them here\n";
+ bye();
+}
+
# Then try to deduce whether we have sparse files.
# We'll start off by creating a one megabyte file which has
@@ -66,7 +75,7 @@ my @s;
print "# @s\n";
-my $BLOCKSIZE = 512; # is this really correct everywhere?
+my $BLOCKSIZE = $s[11] || 512;
unless (@s == 13 &&
$s[7] == 1_000_003 &&
@@ -79,19 +88,29 @@ unless (@s == 13 &&
# By now we better be sure that we do have sparse files:
# if we are not, the following will hog 5 gigabytes of disk. Ooops.
+$ENV{LC_ALL} = "C";
+
sysopen(BIG, "big", O_WRONLY|O_CREAT|O_TRUNC) or
do { warn "sysopen failed: $!\n"; bye };
sysseek(BIG, 5_000_000_000, SEEK_SET);
+
# The syswrite will fail if there are are filesize limitations (process or fs).
-unless(syswrite(BIG, "big") == 3) {
- $ENV{LC_ALL} = "C";
- if ($! =~/File too large/) {
- print "1..0\n# writing past 2GB failed\n";
- explain();
- bye();
+my $syswrite = syswrite(BIG, "big") == 3;
+my $close = close BIG if $syswrite;
+unless($syswrite && $close) {
+ unless ($syswrite) {
+ print "# syswrite failed: $!\n"
+ } else {
+ print "# close failed: $!\n"
+ }
+ if ($! =~/too large/i) {
+ print "1..0\n# writing past 2GB failed: process limits?\n";
+ } elsif ($! =~ /quota/i) {
+ print "1..0\n# filesystem quota limits?\n";
}
+ explain();
+ bye();
}
-close BIG;
@s = stat("big");
diff --git a/t/op/arith.t b/t/op/arith.t
index f1bd827f9b..fe2f0f458b 100755
--- a/t/op/arith.t
+++ b/t/op/arith.t
@@ -10,7 +10,14 @@ try 1, 13 % 4 == 1;
try 2, -13 % 4 == 3;
try 3, 13 % -4 == -3;
try 4, -13 % -4 == -1;
-try 5, abs( 13e21 % 4e21 - 1e21) < 1e6;
-try 6, abs(-13e21 % 4e21 - 3e21) < 1e6;
-try 7, abs( 13e21 % -4e21 - -3e21) < 1e6;
-try 8, abs(-13e21 % -4e21 - -1e21) < 1e6;
+
+my $limit = 1e6;
+
+# Division (and modulo) of floating point numbers
+# seem to be rather sloppy in Cray.
+$limit = 1e8 if $^O eq 'unicos';
+
+try 5, abs( 13e21 % 4e21 - 1e21) < $limit;
+try 6, abs(-13e21 % 4e21 - 3e21) < $limit;
+try 7, abs( 13e21 % -4e21 - -3e21) < $limit;
+try 8, abs(-13e21 % -4e21 - -1e21) < $limit;
diff --git a/t/op/groups.t b/t/op/groups.t
index f46af93bd3..a8f9fe816c 100755
--- a/t/op/groups.t
+++ b/t/op/groups.t
@@ -79,11 +79,11 @@ if ($groups =~ /groups=(.+)( [ug]id=|$)/) {
# prefer names over numbers
for (@g0) {
# 42(zot me)
- if (/^(\d+)(?:\(([^)]+)\))?$/) {
+ if (/^(\d+)(?:\(([^)]+)\))?/) {
push @g1, ($2 || $1);
}
# zot me(42)
- elsif (/^([^(]*)\((\d+)\)$/) {
+ elsif (/^([^(]*)\((\d+)\)/) {
push @g1, ($1 || $2);
}
else {
diff --git a/t/op/lfs.t b/t/op/lfs.t
index ae6aac6079..129752b6b1 100644
--- a/t/op/lfs.t
+++ b/t/op/lfs.t
@@ -29,13 +29,15 @@ sub explain {
print <<EOM;
#
# If the lfs (large file support: large meaning larger than two gigabytes)
-# tests are skipped or fail, it may mean either that your process is not
-# allowed to write large files or that the file system you are running
-# the tests on doesn't support large files, or both. You may also need
-# to reconfigure your kernel. (This is all very system-dependent.)
+# tests are skipped or fail, it may mean either that your process
+# (or process group) is not allowed to write large files (resource
+# limits) or that the file system you are running the tests on doesn't
+# let your user/group have large files (quota) or the filesystem simply
+# doesn't support large files. You may even need to reconfigure your kernel.
+# (This is all very operating system and site-dependent.)
#
# Perl may still be able to support large files, once you have
-# such a process and such a (file) system.
+# such a process, enough quota, and such a (file) system.
#
EOM
}
@@ -46,6 +48,13 @@ if ($^O eq 'win32' || $^O eq 'vms') {
bye();
}
+# Known haves that have problems running this test
+# (for example because they do not support sparse files, like UNICOS)
+if ($^O eq 'unicos') {
+ print "1..0\n# large files known to work but unable to test them here\n";
+ bye();
+}
+
# Then try to deduce whether we have sparse files.
# Let's not depend on Fcntl or any other extension.
@@ -69,7 +78,7 @@ my @s;
print "# @s\n";
-my $BLOCKSIZE = 512; # is this really correct everywhere?
+my $BLOCKSIZE = $s[11] || 512;
unless (@s == 13 &&
$s[7] == 1_000_003 &&
@@ -82,19 +91,28 @@ unless (@s == 13 &&
# By now we better be sure that we do have sparse files:
# if we are not, the following will hog 5 gigabytes of disk. Ooops.
+$ENV{LC_ALL} = "C";
+
open(BIG, ">big") or do { warn "open failed: $!\n"; bye };
binmode BIG;
seek(BIG, 5_000_000_000, $SEEK_SET);
+
# Either the print or (more likely, thanks to buffering) the close will
# fail if there are are filesize limitations (process or fs).
my $print = print BIG "big";
my $close = close BIG if $print;
unless ($print && $close) {
- $ENV{LC_ALL} = "C";
- if ($! =~/File too large/) {
- print "1..0\n# writing past 2GB failed\n";
- explain();
+ unless ($print) {
+ print "# print failed: $!\n"
+ } else {
+ print "# close failed: $!\n"
+ }
+ if ($! =~/too large/i) {
+ print "1..0\n# writing past 2GB failed: process limits?\n";
+ } elsif ($! =~ /quota/i) {
+ print "1..0\n# filesystem quota limits?\n";
}
+ explain();
bye();
}
diff --git a/t/op/misc.t b/t/op/misc.t
index 926c7f38d0..adfcd174fc 100755
--- a/t/op/misc.t
+++ b/t/op/misc.t
@@ -104,7 +104,7 @@ EXPECT
########
%@x=0;
EXPECT
-Can't modify hash deref in repeat at - line 1, near "0;"
+Can't modify hash dereference in repeat (x) at - line 1, near "0;"
Execution of - aborted due to compilation errors.
########
$_="foo";
diff --git a/t/op/pat.t b/t/op/pat.t
index 6312c75cea..89cc2bb0a9 100755
--- a/t/op/pat.t
+++ b/t/op/pat.t
@@ -4,7 +4,7 @@
# the format supported by op/regexp.t. If you want to add a test
# that does fit that format, add it to op/re_tests, not here.
-print "1..188\n";
+print "1..192\n";
BEGIN {
chdir 't' if -d 't';
@@ -865,3 +865,25 @@ print "not " unless("@a" eq ",f,,o,,o, ,b,,a,,r,");
print "ok $test\n";
$test++;
+$brackets = qr{
+ { (?> [^{}]+ | (?p{ $brackets }) )* }
+ }x;
+
+"{{}" =~ $brackets;
+print "ok $test\n"; # Did we survive?
+$test++;
+
+"something { long { and } hairy" =~ $brackets;
+print "ok $test\n"; # Did we survive?
+$test++;
+
+"something { long { and } hairy" =~ m/((?p{ $brackets }))/;
+print "not " unless $1 eq "{ and }";
+print "ok $test\n";
+$test++;
+
+$_ = "a-a\nxbb";
+pos=1;
+m/^-.*bb/mg and print "not ";
+print "ok $test\n";
+$test++;
diff --git a/t/op/sprintf.t b/t/op/sprintf.t
index ef5b94cb11..70e55cb6cb 100755
--- a/t/op/sprintf.t
+++ b/t/op/sprintf.t
@@ -14,8 +14,8 @@ $SIG{__WARN__} = sub {
};
$w = 0;
-$x = sprintf("%3s %-4s%%foo %.0d%5d %#x%c%3.1f %b","hi",123,0,456,0,ord('A'),3.0999,11);
-if ($x eq ' hi 123 %foo 456 0A3.1 1011' && $w == 0) {
+$x = sprintf("%3s %-4s%%foo %.0d%5d %#x%c%3.1f %b %x %X %#b %#x %#X","hi",123,0,456,0,ord('A'),3.0999,11,171,171,11,171,171);
+if ($x eq ' hi 123 %foo 456 0A3.1 1011 ab AB 0b1011 0xab 0XAB' && $w == 0) {
print "ok 1\n";
} else {
print "not ok 1 '$x'\n";
diff --git a/t/pragma/locale.t b/t/pragma/locale.t
index 82adcf3fb8..c453c47bd1 100755
--- a/t/pragma/locale.t
+++ b/t/pragma/locale.t
@@ -78,9 +78,9 @@ check_taint 7, "\L$a";
check_taint 8, lcfirst($a);
check_taint 9, "\l$a";
-check_taint 10, sprintf('%e', 123.456);
-check_taint 11, sprintf('%f', 123.456);
-check_taint 12, sprintf('%g', 123.456);
+check_taint_not 10, sprintf('%e', 123.456);
+check_taint_not 11, sprintf('%f', 123.456);
+check_taint_not 12, sprintf('%g', 123.456);
check_taint_not 13, sprintf('%d', 123.456);
check_taint_not 14, sprintf('%x', 123.456);
diff --git a/t/pragma/warn/op b/t/pragma/warn/op
index e50420a8f6..950c0c8ffd 100644
--- a/t/pragma/warn/op
+++ b/t/pragma/warn/op
@@ -247,7 +247,7 @@ eval { getgrgid 1 }; # OP_GGRGID
eval { getpwnam 1 }; # OP_GPWNAM
eval { getpwuid 1 }; # OP_GPWUID
EXPECT
-Useless use of repeat in void context at - line 3.
+Useless use of repeat (x) in void context at - line 3.
Useless use of wantarray in void context at - line 5.
Useless use of reference-type operator in void context at - line 12.
Useless use of reference constructor in void context at - line 13.
@@ -263,7 +263,7 @@ Useless use of rindex in void context at - line 22.
Useless use of sprintf in void context at - line 23.
Useless use of array element in void context at - line 24.
Useless use of array slice in void context at - line 26.
-Useless use of hash elem in void context at - line 29.
+Useless use of hash element in void context at - line 29.
Useless use of hash slice in void context at - line 30.
Useless use of unpack in void context at - line 31.
Useless use of pack in void context at - line 32.
@@ -590,19 +590,19 @@ my $a ; my @a = () ; my %a = () ; my $b = \@a ; my $c = \%a ;
%$c =~ tr/a/b/ ;
}
EXPECT
-Applying pattern match to @array will act on scalar(@array) at - line 5.
-Applying substitution to @array will act on scalar(@array) at - line 6.
-Can't modify private array in substitution at - line 6, near "s/a/b/ ;"
-Applying character translation to @array will act on scalar(@array) at - line 7.
-Applying pattern match to @array will act on scalar(@array) at - line 8.
-Applying substitution to @array will act on scalar(@array) at - line 9.
-Applying character translation to @array will act on scalar(@array) at - line 10.
-Applying pattern match to %hash will act on scalar(%hash) at - line 11.
-Applying substitution to %hash will act on scalar(%hash) at - line 12.
-Applying character translation to %hash will act on scalar(%hash) at - line 13.
-Applying pattern match to %hash will act on scalar(%hash) at - line 14.
-Applying substitution to %hash will act on scalar(%hash) at - line 15.
-Applying character translation to %hash will act on scalar(%hash) at - line 16.
+Applying pattern match (m//) to @array will act on scalar(@array) at - line 5.
+Applying substitution (s///) to @array will act on scalar(@array) at - line 6.
+Can't modify private array in substitution (s///) at - line 6, near "s/a/b/ ;"
+Applying transliteration (tr///) to @array will act on scalar(@array) at - line 7.
+Applying pattern match (m//) to @array will act on scalar(@array) at - line 8.
+Applying substitution (s///) to @array will act on scalar(@array) at - line 9.
+Applying transliteration (tr///) to @array will act on scalar(@array) at - line 10.
+Applying pattern match (m//) to %hash will act on scalar(%hash) at - line 11.
+Applying substitution (s///) to %hash will act on scalar(%hash) at - line 12.
+Applying transliteration (tr///) to %hash will act on scalar(%hash) at - line 13.
+Applying pattern match (m//) to %hash will act on scalar(%hash) at - line 14.
+Applying substitution (s///) to %hash will act on scalar(%hash) at - line 15.
+Applying transliteration (tr///) to %hash will act on scalar(%hash) at - line 16.
BEGIN not safe after errors--compilation aborted at - line 18.
########
# op.c
@@ -627,7 +627,7 @@ print (ABC || 1) ;
no warnings 'syntax' ;
print (ABC || 1) ;
EXPECT
-Probable precedence problem on logical or at - line 3.
+Probable precedence problem on logical or (||) at - line 3.
########
--FILE-- abc
diff --git a/t/pragma/warn/pp_hot b/t/pragma/warn/pp_hot
index 6bd315148f..9a4b0a0708 100644
--- a/t/pragma/warn/pp_hot
+++ b/t/pragma/warn/pp_hot
@@ -36,11 +36,13 @@
glob failed (child exited with status %d%s) [Perl_do_readline] <<TODO
Deep recursion on subroutine \"%s\" [Perl_sub_crush_depth]
- sub fred { fred() if $a++ < 200} fred()
+ sub fred { fred() if $a++ < 200} fred()
Deep recursion on anonymous subroutine [Perl_sub_crush_depth]
- $a = sub { &$a if $a++ < 200} &$a
+ $a = sub { &$a if $a++ < 200} &$a
+ Possible Y2K bug: about to append an integer to '19' [pp_concat]
+ $x = "19$yy\n";
__END__
# pp_hot.c [pp_print]
@@ -189,4 +191,25 @@ $b = sub
&$b ;
EXPECT
-
+########
+# pp_hot.c [pp_concat]
+use warnings 'misc';
+use Config;
+BEGIN {
+ unless ($Config{ccflags} =~ /Y2KWARN/) {
+ print "SKIPPED\n# perl not built with -DPERL_Y2KWARN";
+ exit 0;
+ }
+}
+my $x;
+my $yy = 78;
+$x = "19$yy\n";
+$x = "19" . $yy . "\n";
+$x = "319$yy\n";
+$x = "319" . $yy . "\n";
+no warnings 'misc';
+$x = "19$yy\n";
+$x = "19" . $yy . "\n";
+EXPECT
+Possible Y2K bug: about to append an integer to '19' at - line 12.
+Possible Y2K bug: about to append an integer to '19' at - line 13.
diff --git a/t/pragma/warn/sv b/t/pragma/warn/sv
index bac2c42545..c02ff01b82 100644
--- a/t/pragma/warn/sv
+++ b/t/pragma/warn/sv
@@ -32,6 +32,8 @@
Undefined value assigned to typeglob
+ Possible Y2K bug: %d format string following '19'
+
Reference is already weak [Perl_sv_rvweaken] <<TODO
Mandatory Warnings
@@ -187,7 +189,7 @@ my $b = 1 + $a;
no warnings 'numeric' ;
my $c = 1 + $a;
EXPECT
-Argument "def" isn't numeric in add at - line 6.
+Argument "def" isn't numeric in addition (+) at - line 6.
########
# sv.c
use warnings 'numeric' ;
@@ -195,7 +197,7 @@ my $x = 1 + "def" ;
no warnings 'numeric' ;
my $z = 1 + "def" ;
EXPECT
-Argument "def" isn't numeric in add at - line 3.
+Argument "def" isn't numeric in addition (+) at - line 3.
########
# sv.c
use warnings 'numeric' ;
@@ -204,7 +206,7 @@ my $x = 1 + $a ;
no warnings 'numeric' ;
my $y = 1 + $a ;
EXPECT
-Argument "def" isn't numeric in add at - line 4.
+Argument "def" isn't numeric in addition (+) at - line 4.
########
# sv.c
use warnings 'numeric' ; use integer ;
@@ -213,7 +215,7 @@ my $x = 1 + $a ;
no warnings 'numeric' ;
my $z = 1 + $a ;
EXPECT
-Argument "def" isn't numeric in i_add at - line 4.
+Argument "def" isn't numeric in integer addition (+) at - line 4.
########
# sv.c
use warnings 'numeric' ;
@@ -221,7 +223,7 @@ my $x = 1 & "def" ;
no warnings 'numeric' ;
my $z = 1 & "def" ;
EXPECT
-Argument "def" isn't numeric in bit_and at - line 3.
+Argument "def" isn't numeric in bitwise and (&) at - line 3.
########
# sv.c
use warnings 'redefine' ;
@@ -280,3 +282,37 @@ EXPECT
\xff will produce malformed UTF-8 character; use \x{ff} for that at - line 6.
Malformed UTF-8 character at - line 6.
Malformed UTF-8 character at - line 10.
+########
+# sv.c
+use warnings 'misc';
+use Config;
+BEGIN {
+ unless ($Config{ccflags} =~ /Y2KWARN/) {
+ print "SKIPPED\n# perl not built with -DPERL_Y2KWARN";
+ exit 0;
+ }
+ $|=1;
+}
+my $x;
+my $yy = 78;
+$x = printf "19%02d\n", $yy;
+$x = sprintf "#19%02d\n", $yy;
+$x = printf " 19%02d\n", 78;
+$x = sprintf "19%02d\n", 78;
+$x = printf "319%02d\n", $yy;
+$x = sprintf "319%02d\n", $yy;
+no warnings 'misc';
+$x = printf "19%02d\n", $yy;
+$x = sprintf "19%02d\n", $yy;
+$x = printf "19%02d\n", 78;
+$x = sprintf "19%02d\n", 78;
+EXPECT
+Possible Y2K bug: %d format string following '19' at - line 16.
+Possible Y2K bug: %d format string following '19' at - line 13.
+1978
+Possible Y2K bug: %d format string following '19' at - line 14.
+Possible Y2K bug: %d format string following '19' at - line 15.
+ 1978
+31978
+1978
+1978
diff --git a/thrdvar.h b/thrdvar.h
index 4434b5ddb2..06bcb5b4e7 100644
--- a/thrdvar.h
+++ b/thrdvar.h
@@ -119,6 +119,10 @@ PERLVAR(Tfirstgv, GV *) /* $a */
PERLVAR(Tsecondgv, GV *) /* $b */
PERLVAR(Tsortcxix, I32) /* from pp_ctl.c */
+/* float buffer */
+PERLVAR(Tefloatbuf, char*)
+PERLVAR(Tefloatsize, STRLEN)
+
/* regex stuff */
PERLVAR(Tscreamfirst, I32 *)
diff --git a/toke.c b/toke.c
index df965a38f9..3c098a2fd4 100644
--- a/toke.c
+++ b/toke.c
@@ -213,8 +213,12 @@ S_no_op(pTHX_ char *what, char *s)
char *oldbp = PL_bufptr;
bool is_first = (PL_oldbufptr == PL_linestart);
- assert(s >= oldbp);
- PL_bufptr = s;
+ if (!s)
+ s = oldbp;
+ else {
+ assert(s >= oldbp);
+ PL_bufptr = s;
+ }
yywarn(Perl_form(aTHX_ "%s found where operator expected", what));
if (is_first)
Perl_warn(aTHX_ "\t(Missing semicolon on previous line?)\n");
diff --git a/utf8.h b/utf8.h
index 698c687c1c..e71264c35c 100644
--- a/utf8.h
+++ b/utf8.h
@@ -27,5 +27,6 @@ EXTCONST unsigned char PL_utf8skip[];
END_EXTERN_C
#define IN_UTF8 (PL_curcop->op_private & HINT_UTF8)
+#define IN_BYTE (PL_curcop->op_private & HINT_BYTE)
#define UTF8SKIP(s) PL_utf8skip[*(U8*)s]
diff --git a/vms/descrip_mms.template b/vms/descrip_mms.template
index 7d86f246f4..3f91940900 100644
--- a/vms/descrip_mms.template
+++ b/vms/descrip_mms.template
@@ -59,8 +59,8 @@ OBJVAL = $(MMS$TARGET_NAME)$(O)
PERL_VERSION = ~PV~
.ifdef MALLOC
-MALLOC_O = ,malloc$(O)
-MALLOC_C = ,malloc$(C)
+MALLOC_O = malloc$(O)
+MALLOC_C = malloc$(C)
.endif
.ifdef DECC_SOCKETS
@@ -176,17 +176,15 @@ SOCKLIB = SocketShr/Share
# these files in the current default directory.
SOCKC = sockadapt.c
SOCKH = sockadapt.h
-SOCKCLIS = ,$(SOCKC)
-SOCKHLIS = ,$(SOCKH)
-SOCKOBJ = ,sockadapt$(O)
+SOCKARCH = $(ARCHCORE)$(SOCKH)
+SOCKOBJ = sockadapt$(O)
SOCKPM = [.lib]Socket.pm
.else
SOCKDEF =
SOCKLIB =
SOCKC =
SOCKH =
-SOCKCLIS =
-SOCKHLIS =
+SOCKARCH =
SOCKOBJ =
SOCKPM =
.endif
@@ -278,44 +276,42 @@ FULLLIBS2 = $(LIBS2)|$(THRLIBS1)|$(THRLIBS2)
#### End of system configuration section. ####
-
-h1 = EXTERN.h, INTERN.h, XSUB.h, av.h, config.h, cop.h, cv.h
-h2 = embed.h, form.h, gv.h, handy.h, hv.h, keywords.h, mg.h, op.h, thread.h
-h3 = opcode.h, patchlevel.h, perl.h, perly.h, pp.h, proto.h, regcomp.h
-h4 = regexp.h, scope.h, sv.h, vmsish.h, util.h, perlsdio.h, perlio.h
-h5 = embedvar.h, intrpvar.h, perlvars.h, thrdvar.h, iperlsys.h
-h6 = pp_proto.h, regnodes.h, warning.h
-h = $(h1), $(h2), $(h3), $(h4), $(h5), $(h6) $(SOCKHLIS) $(THREADH)
-
-c1 = av.c, scope.c, op.c, doop.c, doio.c, dump.c, hv.c, mg.c, universal.c, perlio.c, utf8.c
-c2 = perl.c, perly.c, pp.c, pp_hot.c, pp_ctl.c, pp_sys.c, regcomp.c, regexec.c $(MALLOC_C)
-c3 = gv.c, sv.c, taint.c, toke.c, utf8.c, util.c, deb.c, run.c, globals.c, vms.c $(SOCKCLIS)
-
-c = $(c1), $(c2), $(c3), miniperlmain.c, perlmain.c
-
-obj1 = perl$(O), gv$(O), toke$(O), perly$(O), op$(O), regcomp$(O), dump$(O), utf8$(O), util$(O), mg$(O), perlio$(O) $(MALLOC_O)
-obj2 = hv$(O), av$(O), run$(O), pp_hot$(O), sv$(O), pp$(O), scope$(O), pp_ctl$(O), pp_sys$(O), utf8$(O)
-obj3 = doop$(O), doio$(O), regexec$(O), taint$(O), deb$(O), universal$(O), globals$(O), vms$(O) $(SOCKOBJ)
-
-obj = $(obj1), $(obj2), $(obj3)
-
-ac1 = $(ARCHCORE)EXTERN.h $(ARCHCORE)INTERN.h $(ARCHCORE)XSUB.h $(ARCHCORE)av.h
-ac2 = $(ARCHCORE)config.h $(ARCHCORE)cop.h $(ARCHCORE)cv.h $(ARCHCORE)embed.h
-ac3 = $(ARCHCORE)form.h $(ARCHCORE)gv.h $(ARCHCORE)handy.h $(ARCHCORE)hv.h $(ARCHCORE)utf8.h
-ac4 = $(ARCHCORE)keywords.h $(ARCHCORE)mg.h $(ARCHCORE)op.h $(ARCHCORE)opcode.h
-ac5 = $(ARCHCORE)patchlevel.h $(ARCHCORE)perl.h $(ARCHCORE)perly.h $(ARCHCORE)thread.h $(ARCHCORE)iperlsys.h
-ac6 = $(ARCHCORE)pp.h $(ARCHCORE)pp_proto.h $(ARCHCORE)proto.h $(ARCHCORE)regcomp.h $(ARCHCORE)perlsdio.h $(ARCHCORE)perlio.h
-ac7 = $(ARCHCORE)regexp.h $(ARCHCORE)scope.h $(ARCHCORE)sv.h $(ARCHCORE)util.h
-ac8 = $(ARCHCORE)embedvar.h $(ARCHCORE)intrpvar.h $(ARCHCORE)perlvars.h $(ARCHCORE)thrdvar.h
-ac9 = $(ARCHCORE)vmsish.h $(ARCHCORE)warning.h $(ARCHCORE)$(DBG)libperl$(OLB) $(ARCHCORE)perlshr_attr.opt
-ac10 = $(ARCHCORE)$(DBG)perlshr_bld.opt
-ac11 = $(ARCHCORE)cc_runtime.h
-.ifdef SOCKET
-acs = $(ARCHCORE)$(SOCKH)
-.else
-acs =
-.endif
-
+c0 = $(MALLOC_C) $(SOCKC) av.c deb.c doio.c doop.c dump.c globals.c gv.c
+c1 = hv.c mg.c miniperlmain.c op.c perl.c perlio.c perly.c pp.c pp_ctl.c
+c2 = pp_hot.c pp_sys.c regcomp.c regexec.c run.c scope.c sockadapt.c sv.c
+c3 = taint.c toke.c universal.c utf8.c util.c vms.c
+c = $(c0) $(c1) $(c2) $(c3)
+
+obj0 = $(MALLOC_O) $(SOCKOBJ) av$(O) deb$(O) doio$(O) doop$(O) dump$(O)
+obj1 = globals$(O) gv$(O) hv$(O) mg$(O) miniperlmain$(O) op$(O) perl$(O)
+obj2 = perlio$(O) perly$(O) pp$(O) pp_ctl$(O) pp_hot$(O) pp_sys$(O)
+obj3 = regcomp$(O) regexec$(O) run$(O) scope$(O) sockadapt$(O) sv$(O)
+obj4 = taint$(O) toke$(O) universal$(O) utf8$(O) util$(O) vms$(O)
+obj = $(obj0) $(obj1) $(obj2) $(obj3) $(obj4)
+
+h0 = $(SOCKH) av.h cc_runtime.h config.h cop.h cv.h embed.h embedvar.h
+h1 = extern.h $(THREADH) form.h gv.h handy.h hv.h intern.h intrpvar.h
+h2 = iperlsys.h keywords.h mg.h nostdio.h op.h opcode.h patchlevel.h perl.h
+h3 = perlio.h perlsdio.h perlvars.h perly.h pp.h pp_proto.h proto.h
+h4 = regcomp.h regexp.h regnodes.h scope.h sv.h thrdvar.h
+h5 = thread.h utf8.h util.h vmsish.h warnings.h xsub.h opnames.h
+h = $(h0) $(h1) $(h2) $(h3) $(h4) $(h5)
+
+ac0 = $(SOCKARCH) $(ARCHCORE)av.h $(ARCHCORE)cc_runtime.h
+ac1 = $(ARCHCORE)config.h $(ARCHCORE)cop.h $(ARCHCORE)cv.h $(ARCHCORE)embed.h
+ac2 = $(ARCHCORE)embedvar.h $(ARCHCORE)extern.h $(acth)
+ac3 = $(ARCHCORE)form.h $(ARCHCORE)gv.h $(ARCHCORE)handy.h $(ARCHCORE)hv.h
+ac4 = $(ARCHCORE)intern.h $(ARCHCORE)intrpvar.h $(ARCHCORE)iperlsys.h
+ac5 = $(ARCHCORE)keywords.h $(ARCHCORE)mg.h $(ARCHCORE)nostdio.h
+ac6 = $(ARCHCORE)op.h $(ARCHCORE)opcode.h $(ARCHCORE)patchlevel.h
+ac7 = $(ARCHCORE)perl.h $(ARCHCORE)perlio.h $(ARCHCORE)perlsdio.h
+ac8 = $(ARCHCORE)perlvars.h $(ARCHCORE)perly.h $(ARCHCORE)pp.h
+ac9 = $(ARCHCORE)pp_proto.h $(ARCHCORE)proto.h $(ARCHCORE)regcomp.h
+ac10 = $(ARCHCORE)regexp.h $(ARCHCORE)regnodes.h $(ARCHCORE)scope.h
+ac11 = $(ARCHCORE)sv.h $(ARCHCORE)thrdvar.h $(ARCHCORE)opnames.h
+ac12 = $(ARCHCORE)thread.h $(ARCHCORE)utf8.h $(ARCHCORE)util.h
+ac13 = $(ARCHCORE)vmsish.h $(ARCHCORE)warnings.h $(ARCHCORE)xsub.h
+ac = $(ac0) $(ac1) $(ac2) $(ac3) $(ac4) $(ac5) $(ac6) $(ac7) $(ac8) $(ac9) $(ac10) $(ac11) $(ac12) $(ac13)
CRTL = []crtl.opt
CRTLOPTS =,$(CRTL)/Options
@@ -395,7 +391,6 @@ $(DBG)libperl$(OLB) : $(obj)
perlmain.c : miniperlmain.c $(MINIPERL_EXE) [.vms]writemain.pl
$(MINIPERL) [.VMS]Writemain.pl "$(EXT)"
-
.ifdef __DEBUG__
# Link an extra perl that doesn't invoke the debugger
perl : $(DBG)perl$(E)
@@ -528,7 +523,7 @@ dynext : $(LIBPREREQ) $(DBG)perlshr$(E)
# Accomodate buggy cpp in some version of DECC, which chokes on illegal
# filespec "y.tab.c", and broken gcc cpp, which doesn't start #include ""
# search in same dir as source file
-[.x2p]a2p$(O) : [.x2p]a2p.c $(MINIPERL_EXE)
+[.x2p]a2p$(O) : [.x2p]a2p.c [.x2p]a2py.c [.x2p]INTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h config.h handy.h vmsish.h $(SOCKH) $(MINIPERL_EXE)
$(MINIPERL) -pe "s/^#line\s+(\d+)\s+\Q""y.tab.c""/#line $1 ""y_tab.c""/;" $(MMS$SOURCE) >$(MMS$TARGET_NAME)_vms.c
$(CC) $(X2PCFLAGS) /Object=$(MMS$TARGET)/Include=([.x2p],[]) $(MMS$TARGET_NAME)_vms.c
Delete/Log/NoConfirm $(MMS$TARGET_NAME)_vms.c;
@@ -738,7 +733,7 @@ printconfig :
vmsish.h : $(SOCKH)
-$(SOCKOBJ) : $(SOCKC) EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h perlio.h
+$(SOCKOBJ) : $(SOCKC) EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h opnames.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h perlio.h
$(SOCKC) : [.vms]$(SOCKC)
Copy/Log/NoConfirm [.vms]$(SOCKC) []$(SOCKC)
@@ -750,10 +745,20 @@ $(SOCKH) : [.vms]$(SOCKH)
Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
.endif
-# The following three header files are generated automatically
-# keywords.h : keywords.pl
-# opcode.h : opcode.pl
-# embed.h : embed.pl global.sym interp.sym
+# The following files are generated automatically
+# keywords.h: keywords.pl
+# opcode.h: opcode.pl
+# opnames.h: opcode.pl
+# pp_proto.h: opcode.pl
+# pp.sym: opcode.pl
+# embed.h: embed.pl [* needs pp.sym generated by opcode.pl! *]
+# embedvar.h: embed.pl [* needs pp.sym generated by opcode.pl! *]
+# ext/ByteLoader/byterun.h: bytecode.pl
+# ext/ByteLoader/byterun.c: bytecode.pl
+# ext/B/Asmdata.pm: bytecode.pl
+# global.sym: embed.pl
+# regnodes.h: regcomp.pl
+# warnings.h lib/warnings.pm: warnings.pl
# The correct versions should be already supplied with the perl kit,
# in case you don't have perl available.
# To force them to run, type
@@ -764,7 +769,7 @@ regen_headers :
$(INSTPERL) embed.pl
$(INSTPERL) bytecode.pl
$(INSTPERL) regcomp.pl
- $(INSTPERL) warning.pl
+ $(INSTPERL) warnings.pl
# VMS uses modified perly.[ch] with tags for globaldefs if using DEC compiler
perly.c : [.vms]perly_c.vms
@@ -806,16 +811,15 @@ archify : all
# CORE subset for MakeMaker, so we can build Perl without sources
# Should move to VMS installperl when we get one
-$(ARCHCORE)EXTERN.h : EXTERN.h
- @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
- Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)INTERN.h : INTERN.h
+.ifdef SOCKET
+$(ARCHCORE)$(sockh) : $(sockh)
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)XSUB.h : XSUB.h
+.endif
+$(ARCHCORE)av.h : av.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)av.h : av.h
+$(ARCHCORE)cc_runtime.h : cc_runtime.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)config.h : config.h
@@ -824,9 +828,6 @@ $(ARCHCORE)config.h : config.h
$(ARCHCORE)cop.h : cop.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)cc_runtime.h : cc_runtime.h
- @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
- Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)cv.h : cv.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
@@ -836,6 +837,9 @@ $(ARCHCORE)embed.h : embed.h
$(ARCHCORE)embedvar.h : embedvar.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
+$(ARCHCORE)extern.h : extern.h
+ @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
+ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
.ifdef FAKETHREADED
$(ARCHCORE)fakethr.h : fakethr.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
@@ -853,36 +857,45 @@ $(ARCHCORE)handy.h : handy.h
$(ARCHCORE)hv.h : hv.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
+$(ARCHCORE)intern.h : intern.h
+ @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
+ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)intrpvar.h : intrpvar.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
+$(ARCHCORE)iperlsys.h : iperlsys.h
+ @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
+ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)keywords.h : keywords.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)mg.h : mg.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
+$(ARCHCORE)nostdio.h : nostdio.h
+ @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
+ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)op.h : op.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)opcode.h : opcode.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
+$(ARCHCORE)opnames.h : opnames.h
+ @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
+ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)patchlevel.h : patchlevel.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)perl.h : perl.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)iperlsys.h : iperlsys.h
+$(ARCHCORE)perlio.h : perlio.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)perlsdio.h : perlsdio.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)perlio.h : perlio.h
- @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
- Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)perlvars.h : perlvars.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
@@ -904,6 +917,9 @@ $(ARCHCORE)regcomp.h : regcomp.h
$(ARCHCORE)regexp.h : regexp.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
+$(ARCHCORE)regnodes.h : regnodes.h
+ @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
+ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)scope.h : scope.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
@@ -916,23 +932,21 @@ $(ARCHCORE)thrdvar.h : thrdvar.h
$(ARCHCORE)thread.h : thread.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)util.h : util.h
+$(ARCHCORE)utf8.h : utf8.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)utf8.h : utf8.h
+$(ARCHCORE)util.h : util.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
$(ARCHCORE)vmsish.h : vmsish.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-$(ARCHCORE)warning.h : warning.h
+$(ARCHCORE)warnings.h : warnings.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-.ifdef SOCKET
-$(ARCHCORE)$(SOCKH) : $(SOCKH)
+$(ARCHCORE)xsub.h : xsub.h
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
-.endif
$(ARCHCORE)$(DBG)libperl$(OLB) : $(DBG)libperl$(OLB) $(DBG)perlshr_xtras.ts
@ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
@@ -953,112 +967,81 @@ $(ARCHAUTO)time.stamp :
#util$(O) : util.c
# $(CC) $(CORECFLAGS) $(MMS$SOURCE)
# AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
-av$(O) : av.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+.ifdef SOCKET
+$(SOCKOBJ) : $(SOCKC) extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-deb$(O) : deb.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+.endif
+av$(O) : av.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-doio$(O) : doio.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+deb$(O) : deb.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-doop$(O) : doop.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+doio$(O) : doio.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-dump$(O) : dump.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+doop$(O) : doop.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-globals$(O) : globals.c INTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+dump$(O) : dump.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h regcomp.h regnodes.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-gv$(O) : gv.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+globals$(O) : globals.c intern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-hv$(O) : hv.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+gv$(O) : gv.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-malloc$(O) : malloc.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+hv$(O) : hv.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-mg$(O) : mg.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+mg$(O) : mg.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-miniperlmain$(O) : miniperlmain.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+miniperlmain$(O) : miniperlmain.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-op$(O) : op.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+op$(O) : op.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-perl$(O) : perl.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h patchlevel.h iperlsys.h pp_proto.h warning.h
+perl$(O) : perl.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h intrpvar.h thrdvar.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-perlio$(O) : perlio.c config.h EXTERN.h perl.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+perlio$(O) : perlio.c config.h extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-perlmain$(O) : perlmain.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+perlmain$(O) : perlmain.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-perly$(O) : perly.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+perly$(O) : perly.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-pp$(O) : pp.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+pp$(O) : pp.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-pp_ctl$(O) : pp_ctl.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+pp_ctl$(O) : pp_ctl.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-pp_hot$(O) : pp_hot.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+pp_hot$(O) : pp_hot.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-pp_sys$(O) : pp_sys.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+pp_sys$(O) : pp_sys.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-regcomp$(O) : regcomp.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h INTERN.h regcomp.h regnodes.h iperlsys.h pp_proto.h warning.h
+regcomp$(O) : regcomp.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h intern.h regcomp.h regnodes.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-regexec$(O) : regexec.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h regcomp.h regnodes.h iperlsys.h pp_proto.h warning.h
+regexec$(O) : regexec.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h regcomp.h regnodes.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-run$(O) : run.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+run$(O) : run.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-scope$(O) : scope.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+scope$(O) : scope.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-sv$(O) : sv.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+sv$(O) : sv.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-taint$(O) : taint.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+taint$(O) : taint.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-toke$(O) : toke.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h keywords.h iperlsys.h pp_proto.h warning.h
+toke$(O) : toke.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h keywords.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-universal$(O) : universal.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h XSUB.h iperlsys.h pp_proto.h warning.h
+universal$(O) : universal.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h xsub.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-utf8$(O) : utf8.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+utf8$(O) : utf8.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-util$(O) : util.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h iperlsys.h pp_proto.h warning.h
+util$(O) : util.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-
-vms$(O) : vms.c EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h XSUB.h iperlsys.h pp_proto.h warning.h
+vms$(O) : vms.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h xsub.h
$(CC) $(CORECFLAGS) $(MMS$SOURCE)
-#[.x2p]a2p$(O) : [.x2p]a2p.c [.x2p]a2py.c [.x2p]INTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h config.h handy.h
-# $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
-
-[.x2p]hash$(O) : [.x2p]hash.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h
+[.x2p]hash$(O) : [.x2p]hash.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h vmsish.h $(SOCKH)
$(CC) $(X2PCFLAGS) $(MMS$SOURCE)
-[.x2p]str$(O) : [.x2p]str.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h
+[.x2p]str$(O) : [.x2p]str.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h vmsish.h $(SOCKH)
$(CC) $(X2PCFLAGS) $(MMS$SOURCE)
-[.x2p]util$(O) : [.x2p]util.c [.x2p]EXTERN.h [.x2p]INTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h
+[.x2p]util$(O) : [.x2p]util.c [.x2p]EXTERN.h [.x2p]INTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h vmsish.h $(SOCKH)
$(CC) $(X2PCFLAGS) $(MMS$SOURCE)
-[.x2p]walk$(O) : [.x2p]walk.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h
+[.x2p]walk$(O) : [.x2p]walk.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h vmsish.h $(SOCKH)
$(CC) $(X2PCFLAGS) $(MMS$SOURCE)
# End of automatically generated make dependencies
@@ -1121,7 +1104,9 @@ clean : tidy
- If F$Search(F$Parse("Sys$Disk:[]","$(SOCKH)")).nes."" Then Delete/NoConfirm/Log $(SOCKH);*
- If F$Search(F$Parse("Sys$Disk:[]","$(SOCKC)")).nes."" Then Delete/NoConfirm/Log $(SOCKC);*
- If F$Search("perly.c").nes."" Then Delete/NoConfirm/Log perly.c;*
+ - Copy [.vms]perly_c.vms []perly.c
- If F$Search("perly.h").nes."" Then Delete/NoConfirm/Log perly.h;*
+ - Copy [.vms]perly_h.vms []perly.h
- If F$Search("VMSish.H").nes."" Then Delete/NoConfirm/Log VMSish.H;*
- If F$Search("VMS.C") .nes."" Then Delete/NoConfirm/Log VMS.C;*
- If F$Search("Perlmain.C") .nes."" Then Delete/NoConfirm/Log Perlmain.C;*
@@ -1129,6 +1114,7 @@ clean : tidy
- If F$Search("*.TS").nes."" Then Delete/NoConfirm/Log *.TS;*
- If F$Search("[.Ext.DynaLoader]DL_VMS$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS$(O);*
- If F$Search("[.Ext.DynaLoader]DL_VMS.C").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C;*
+ - If F$Search("[.Ext.DynaLoader]DynaLoader.pm").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DynaLoader.pm;*
- If F$Search("[.Ext.Socket]Socket$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket$(O);*
- If F$Search("[.Ext.Socket]Socket.C").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket.C;*
- If F$Search("[.VMS.Ext...]*.C").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*.C;*
@@ -1141,6 +1127,7 @@ realclean : clean
- If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*
- If F$Search("Config.H").nes."" Then Delete/NoConfirm/Log Config.H;*
- If F$Search("Config.SH").nes."" Then Delete/NoConfirm/Log Config.SH;*
+ - $(MINIPERL) -e "use File::Path; rmtree(\@ARGV,1,0);" config
- If F$Search("Descrip.MMS").nes."" Then Delete/NoConfirm/Log Descrip.MMS;*
- If F$Search("Build_Ext.Com").nes."" Then Delete/NoConfirm/Log Build_Ext.Com;*
- $(MINIPERL) -e "use File::Path; rmtree(['lib/auto','lib/VMS','lib/$(ARCH)'],1,0);"
@@ -1148,6 +1135,7 @@ realclean : clean
- If F$Search("[.Lib]Socket.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Socket.pm;*
- If F$Search("[.Lib]Config.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Config.pm;*
- If F$Search("[.Lib]*.com").nes."" Then Delete/NoConfirm/Log [.Lib]*.com;*
+ - If F$Search("[.pod]*.com").nes."" Then Delete/NoConfirm/Log [.pod]*.com;*
- If F$Search("[.utils]*.com").nes."" Then Delete/NoConfirm/Log [.utils]*.com;*
- If F$Search("[.x2p]*.com").nes."" Then Delete/NoConfirm/Log [.x2p]*.com;*
- If F$Search("$(ARCHDIR)Config.pm").nes."" Then Delete/NoConfirm/Log $(ARCHDIR)Config.pm;*
@@ -1158,6 +1146,7 @@ realclean : clean
- If F$Search("[.lib.pod]pod2*.com").nes."" Then Delete/NoConfirm/Log [.lib.pod]pod2*.com;*
- If F$Search("[.t.lib]vms*.t").nes."" Then Delete/NoConfirm/Log [.t.lib]vms*.t;*
- If F$Search("[...]*$(E)").nes."" Then Delete/NoConfirm/Log [...]*$(E);*
+ - If F$Search("[.vms]Perl_Setup.Com").nes."" Then Delete/NoConfirm/Log [.vms]Perl_Setup.Com;*
cleansrc : clean
!GROK!THIS!
diff --git a/vms/gen_shrfls.pl b/vms/gen_shrfls.pl
index ef76a683e6..caba95c04b 100644
--- a/vms/gen_shrfls.pl
+++ b/vms/gen_shrfls.pl
@@ -190,7 +190,7 @@ sub scan_func {
my($line) = @_;
print "\tchecking for global routine\n" if $debug > 1;
- if ( $line =~ /(\w+)\s+\(/ ) {
+ if ( $line =~ /(\w+)\s*\(/ ) {
print "\troutine name is \\$1\\\n" if $debug > 1;
if ($1 eq 'main' || $1 eq 'perl_init_ext') {
print "\tskipped\n" if $debug > 1;
@@ -199,13 +199,6 @@ sub scan_func {
}
}
-open FUNCS, "LIBR/CROSS=SYMB LIBPERL.OLB/OUT=SYS\$OUTPUT |";
-foreach (<FUNCS>) {
- chomp;
- next unless /(perl_\w+)/i;
- $fcns{uc($1)}++;
-}
-
# Go add some right up front if we need 'em
if ($use_mymalloc) {
$fcns{uc('Perl_malloc')}++;
@@ -214,8 +207,6 @@ if ($use_mymalloc) {
$fcns{uc('Perl_mfree')}++;
}
-delete $fcns{PERL_DESTRUCT_LEVEL} if exists $fcns{PERL_DESTRUCT_LEVEL};
-
$used_expectation_enum = $used_opcode_enum = 0; # avoid warnings
if ($docc) {
open(CPP,"${cc_cmd}/NoObj/PreProc=Sys\$Output ${dir}perl.h|")
@@ -318,21 +309,6 @@ if ($isvax) {
print MAR "\t.title perlshr_gbl$marord\n";
}
-($ver, $sub) = $] =~ /\.(\d\d\d)(\d\d)/;
-$gsmatch = ($sub >= 50) ? "equal" : "lequal"; # Force an equal match for
- # dev, but be more forgiving
- # for releases
-
-# Build up a major ID. Since it can only be 8 bits, we encode the version
-# number in the top four bits and use the bottom four for build options
-# that'll cause incompatibilities
-$ver *=16;
-$ver += 8 if $debugging_enabled; # If DEBUGGING is set
-$ver += 4 if $use_threads; # if we're threaded
-$ver += 2 if $use_mymalloc; # if we're using perl's malloc
-
-print OPTBLD "GSMATCH=$gsmatch,$ver,$sub\n";
-
unless ($isgcc) {
print OPTBLD "PSECT_ATTR=\$GLOBAL_RO_VARS,PIC,NOEXE,RD,NOWRT,SHR\n";
print OPTBLD "PSECT_ATTR=\$GLOBAL_RW_VARS,PIC,NOEXE,RD,WRT,NOSHR\n";
@@ -418,9 +394,26 @@ if ($isvax) {
# Initial hack to permit building of compatible shareable images for a
# given version of Perl.
if ($ENV{PERLSHR_USE_GSMATCH}) {
- my $major = int($] * 1000) & 0xFF; # range 0..255
- my $minor = int(($] * 1000 - $major) * 100 + 0.5) & 0xFF; # range 0..255
- print OPTBLD "GSMATCH=LEQUAL,$major,$minor\n";
+ if ($ENV{PERLSHR_USE_GSMATCH} eq 'INCLUDE_COMPILE_OPTIONS') {
+ # Build up a major ID. Since it can only be 8 bits, we encode the version
+ # number in the top four bits and use the bottom four for build options
+ # that'll cause incompatibilities
+ ($ver, $sub) = $] =~ /\.(\d\d\d)(\d\d)/;
+ $gsmatch = ($sub >= 50) ? "equal" : "lequal"; # Force an equal match for
+ # dev, but be more forgiving
+ # for releases
+
+ $ver *=16;
+ $ver += 8 if $debugging_enabled; # If DEBUGGING is set
+ $ver += 4 if $use_threads; # if we're threaded
+ $ver += 2 if $use_mymalloc; # if we're using perl's malloc
+ print OPTBLD "GSMATCH=$gsmatch,$ver,$sub\n";
+ }
+ else {
+ my $major = int($] * 1000) & 0xFF; # range 0..255
+ my $minor = int(($] * 1000 - $major) * 100 + 0.5) & 0xFF; # range 0..255
+ print OPTBLD "GSMATCH=LEQUAL,$major,$minor\n";
+ }
print OPTBLD 'CLUSTER=$$TRANSFER_VECTOR,,',
map(",$_$objsuffix",@symfiles), "\n";
}
diff --git a/vms/perly_c.vms b/vms/perly_c.vms
index ad94f1e3ee..08fa561bee 100644
--- a/vms/perly_c.vms
+++ b/vms/perly_c.vms
@@ -48,7 +48,7 @@ typedef union {
#define YYLEX_PARAM (&yychar)
#endif
-#line 52 "perly.c"
+#line 51 "perly.c"
#define YYERRCODE 256
static short yylhs[] = { -1,
50, 0, 8, 6, 9, 7, 10, 10, 10, 11,
@@ -1368,7 +1368,7 @@ static char *yyrule[] = {
#endif
#define yyparse() Perl_yyparse(pTHX)
-#line 1372 "perly.c"
+#line 1371 "perly.c"
#define YYABORT goto yyabort
#define YYACCEPT goto yyaccept
#define YYERROR goto yyerrlab
@@ -2410,7 +2410,7 @@ case 193:
#line 723 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
-#line 2414 "perly.c"
+#line 2412 "perly.c"
}
yyssp -= yym;
yystate = *yyssp;
diff --git a/vms/subconfigure.com b/vms/subconfigure.com
index 86f4c36319..febce77ad0 100644
--- a/vms/subconfigure.com
+++ b/vms/subconfigure.com
@@ -63,6 +63,7 @@ $ myname = myhostname
$ if "''myname'" .eqs. "" THEN myname = f$trnlnm("SYS$NODE")
$!
$! ##ADD NEW CONSTANTS HERE##
+$ perl_d_llseek="undef"
$ perl_d_madvise="undef"
$ perl_selectminbits=32
$ perl_d_msync="undef"
@@ -444,7 +445,6 @@ $ perl_sPRIu64 = ""
$ perl_sPRIo64 = ""
$ perl_sPRIx64 = ""
$ ENDIF
-$ perl_d_llsekk="undef"
$!
$!
$! Now some that we build up
@@ -3312,7 +3312,7 @@ $ WC "d_chown='" + perl_d_chown + "'"
$ WC "d_chroot='" + perl_d_chroot + "'"
$ WC "d_cuserid='" + perl_d_cuserid + "'"
$ WC "d_dbl_dig='" + perl_d_dbl_dig + "'"
-$ WC "d_ldbl_dig='" + perl_d_dbl_dig + "'"
+$ WC "d_ldbl_dig='" + perl_d_ldbl_dig + "'"
$ WC "d_difftime='" + perl_d_difftime + "'"
$ WC "d_fork='" + perl_d_fork + "'"
$ WC "d_getlogin='" + perl_d_getlogin + "'"
@@ -3576,7 +3576,7 @@ $!
$ Close CONFIGSH
$
$! Okay, we've gotten here. Build munchconfig and run it
-$ 'Perl_CC'/debug munchconfig.c
+$ 'Perl_CC' munchconfig.c
$ If (Needs_Opt.eqs."Yes")
$ THEN
$ open/write OPTCHAN []munchconfig.opt
diff --git a/vms/vms.c b/vms/vms.c
index 29634a59b3..ab24000153 100644
--- a/vms/vms.c
+++ b/vms/vms.c
@@ -2,8 +2,8 @@
*
* VMS-specific routines for perl5
*
- * Last revised: 24-Apr-1999 by Charles Bailey bailey@newman.upenn.edu
- * Version: 5.5.58
+ * Last revised: 15-Aug-1999 by Charles Bailey bailey@newman.upenn.edu
+ * Version: 5.5.60
*/
#include <acedef.h>
@@ -95,6 +95,10 @@ static bool will_taint = FALSE; /* tainting active, but no PL_curinterp yet */
/* munching */
static int no_translate_barewords;
+/* True if we shouldn't treat barewords as logicals during directory */
+/* munching */
+static int no_translate_barewords;
+
/*{{{int vmstrnenv(const char *lnm, char *eqv, unsigned long int idx, struct dsc$descriptor_s **tabvec, unsigned long int flags) */
int
vmstrnenv(const char *lnm, char *eqv, unsigned long int idx,
diff --git a/vms/vmsish.h b/vms/vmsish.h
index 1f7e2c93fa..261a506987 100644
--- a/vms/vmsish.h
+++ b/vms/vmsish.h
@@ -75,8 +75,8 @@
/* getenv used for regular logical names */
# define getenv(v) my_getenv(v,TRUE)
#endif
-#if defined(getenv_len)
-#undef getenv_len
+#ifdef getenv_len
+# undef getenv_len
#endif
#define getenv_len(v,l) my_getenv_len(v,l,TRUE)
diff --git a/win32/config_sh.PL b/win32/config_sh.PL
index fc0daf05bc..3edc20bdac 100644
--- a/win32/config_sh.PL
+++ b/win32/config_sh.PL
@@ -36,12 +36,13 @@ while (<>)
{
s/~([\w_]+)~/$opt{$1}/g;
if (/^([\w_]+)=(.*)$/) {
+ my($k,$v) = ($1,$2);
# this depends on cf_time being empty in the template (or we'll get a loop)
- if ($1 eq 'cf_time') {
- $_ = "$1='" . localtime(time) . "'\n" if $2 =~ /^\s*'\s*'/;
+ if ($k eq 'cf_time') {
+ $_ = "$k='" . localtime(time) . "'\n" if $v =~ /^\s*'\s*'/;
}
- elsif (exists $opt{$1}) {
- $_ = "$1='$opt{$1}'\n";
+ elsif (exists $opt{$k}) {
+ $_ = "$k='$opt{$k}'\n";
}
}
print;