diff --git a/perl-5.10.0-CVE-2008-2827.patch b/perl-5.10.0-CVE-2008-2827.patch new file mode 100644 index 0000000..7e2539f --- /dev/null +++ b/perl-5.10.0-CVE-2008-2827.patch @@ -0,0 +1,16 @@ +diff -up perl-5.10.0/lib/File/Path.pm.cve perl-5.10.0/lib/File/Path.pm +--- perl-5.10.0/lib/File/Path.pm.cve 2007-12-18 11:47:07.000000000 +0100 ++++ perl-5.10.0/lib/File/Path.pm 2008-06-24 13:25:53.000000000 +0200 +@@ -351,10 +351,8 @@ sub _rmtree { + } + + my $nperm = $perm & 07777 | 0600; +- if ($nperm != $perm and not chmod $nperm, $root) { +- if ($Force_Writeable) { +- _error($arg, "cannot make file writeable", $canon); +- } ++ if ($Force_Writeable && $nperm != $perm and not chmod $nperm, $root) { ++ _error($arg, "cannot make file writeable", $canon); + } + print "unlink $canon\n" if $arg->{verbose}; + # delete all versions under VMS diff --git a/perl-5.6.0-buildroot.patch b/perl-5.6.0-buildroot.patch deleted file mode 100644 index dfe2ffc..0000000 --- a/perl-5.6.0-buildroot.patch +++ /dev/null @@ -1,14 +0,0 @@ -Without this patch, you see weird things like substitutions that turn -/var/tmp/nstroot/usr/share/man/man1 to /var/tmp/ntsroot/usr/share/man/$(PREFIX), -which is bad. - ---- perl-5.6.0/lib/ExtUtils/MM_Unix.pm Sat Jun 17 16:57:55 2000 -+++ perl-5.6.0/lib/ExtUtils/MM_Unix.pm Sat Jun 17 16:57:43 2000 -@@ -3097,6 +3097,7 @@ - - sub prefixify { - my($self,$var,$sprefix,$rprefix) = @_; -+ return if (length($sprefix) <= 0); - $self->{uc $var} ||= $Config{lc $var}; - $self->{uc $var} = VMS::Filespec::unixpath($self->{uc $var}) if $Is_VMS; - $self->{uc $var} =~ s/\Q$sprefix\E/$rprefix/s; diff --git a/perl-5.7.3-syslog.patch b/perl-5.7.3-syslog.patch deleted file mode 100644 index 7a28e72..0000000 --- a/perl-5.7.3-syslog.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- perl-5.7.3/perl.c.syslog Thu May 23 22:26:46 2002 -+++ perl-5.7.3/perl.c Thu May 23 22:28:55 2002 -@@ -21,6 +21,10 @@ - #include - #endif - -+#ifdef I_SYSLOG -+#include -+#endif -+ - #if !defined(STANDARD_C) && !defined(HAS_GETENV_PROTOTYPE) && !defined(PERL_MICRO) - char *getenv (char *); /* Usually in */ - #endif -@@ -3017,6 +3021,16 @@ - if (tmpstatbuf.st_dev != PL_statbuf.st_dev || - tmpstatbuf.st_ino != PL_statbuf.st_ino) { - (void)PerlIO_close(PL_rsfp); -+#ifdef I_SYSLOG -+ openlog("suidperl", LOG_CONS | LOG_PID | LOG_NDELAY, LOG_AUTHPRIV); -+ syslog(LOG_ALERT, "User %ld tried to run dev %ld ino %ld in " -+ "place of dev %ld ino %ld!", PL_uid, -+ (long)tmpstatbuf.st_dev, (long)tmpstatbuf.st_ino, -+ (long)PL_statbuf.st_dev, (long)PL_statbuf.st_ino); -+ syslog(LOG_ALERT, "Filename of setuid script was %s, uid %" -+ Uid_t_f" gid %"Gid_t_f".", CopFILE(PL_curcop), -+ PL_statbuf.st_uid, PL_statbuf.st_gid); -+#endif - Perl_croak(aTHX_ "Permission denied\n"); - } - if ( diff --git a/perl-5.8.0-links.patch b/perl-5.8.0-links.patch deleted file mode 100644 index 74cc979..0000000 --- a/perl-5.8.0-links.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- perl-5.8.0/lib/CPAN/FirstTime.pm.links 2002-08-15 14:58:47.000000000 -0400 -+++ perl-5.8.0/lib/CPAN/FirstTime.pm 2002-08-15 14:59:07.000000000 -0400 -@@ -258,7 +258,7 @@ - my(@path) = split /$Config{'path_sep'}/, $ENV{'PATH'}; - local $^W = $old_warn; - my $progname; -- for $progname (qw/gzip tar unzip make lynx wget ncftpget ncftp ftp gpg/){ -+ for $progname (qw/gzip tar unzip make links wget ncftpget ncftp ftp gpg/){ - if ($^O eq 'MacOS') { - $CPAN::Config->{$progname} = 'not_here'; - next; ---- perl-5.8.0/lib/CPAN.pm.links 2002-08-15 14:58:37.000000000 -0400 -+++ perl-5.8.0/lib/CPAN.pm 2002-08-15 15:00:08.000000000 -0400 -@@ -2528,7 +2528,7 @@ - - $self->debug("localizing funkyftpwise[$url]") if $CPAN::DEBUG; - my($f,$funkyftp); -- for $f ('lynx','ncftpget','ncftp','wget') { -+ for $f ('links','ncftpget','ncftp','wget') { - next unless exists $CPAN::Config->{$f}; - $funkyftp = $CPAN::Config->{$f}; - next unless defined $funkyftp; -@@ -2537,7 +2537,7 @@ - ($asl_ungz = $aslocal) =~ s/\.gz//; - $asl_gz = "$asl_ungz.gz"; - my($src_switch) = ""; -- if ($f eq "lynx"){ -+ if ($f eq "links"){ - $src_switch = " -source"; - } elsif ($f eq "ncftp"){ - $src_switch = " -c"; -@@ -2561,7 +2561,7 @@ - my($wstatus); - if (($wstatus = system($system)) == 0 - && -- ($f eq "lynx" ? -+ ($f eq "links" ? - -s $asl_ungz # lynx returns 0 when it fails somewhere - : 1 - ) diff --git a/perl-5.8.0-nondbm.patch b/perl-5.8.0-nondbm.patch deleted file mode 100644 index 8ecccb9..0000000 --- a/perl-5.8.0-nondbm.patch +++ /dev/null @@ -1,52 +0,0 @@ ---- perl-5.7.3/Configure.ndbm Mon May 27 13:27:19 2002 -+++ perl-5.7.3/Configure Mon May 27 13:28:15 2002 -@@ -1204,7 +1204,7 @@ - - : List of libraries we want. - : If anyone needs -lnet, put it in a hint file. --libswanted='sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl' -+libswanted='sfio socket bind inet nsl nm gdbm dbm db malloc dl' - libswanted="$libswanted dld ld sun m c cposix posix" - libswanted="$libswanted ndir dir crypt sec" - libswanted="$libswanted ucb bsd BSD PW x util" -@@ -18695,40 +18695,6 @@ - set mntent.h i_mntent - eval $inhdr - --: see if ndbm.h is available --set ndbm.h t_ndbm --eval $inhdr -- --case "$t_ndbm" in --$undef) -- # Some Linux distributions such as RedHat 7.1 put the -- # ndbm.h header in /usr/include/gdbm/ndbm.h. -- if $test -f /usr/include/gdbm/ndbm.h; then -- echo ' found.' -- ccflags="$ccflags -I/usr/include/gdbm" -- cppflags="$cppflags -I/usr/include/gdbm" -- t_ndbm=$define -- fi -- ;; --esac -- --case "$t_ndbm" in --$define) -- : see if dbm_open exists -- set dbm_open d_dbm_open -- eval $inlibc -- case "$d_dbm_open" in -- $undef) -- t_ndbm="$undef" -- echo "We won't be including " -- ;; -- esac -- ;; --esac --val="$t_ndbm" --set i_ndbm --eval $setvar -- - : see if net/errno.h is available - val='' - set net/errno.h val diff --git a/perl-5.8.0-nptlhint.patch b/perl-5.8.0-nptlhint.patch deleted file mode 100644 index fbab567..0000000 --- a/perl-5.8.0-nptlhint.patch +++ /dev/null @@ -1,15 +0,0 @@ -Remove the THREADS_HAVE_PIDS hint for NTPL-enabled Linux -systems. Otherwise ppids are cached too aggressively, -resulting in broken behavior. - ---- perl-5.8.0/hints/linux.sh.nptl 2004-12-01 12:38:16.021664783 -0500 -+++ perl-5.8.0/hints/linux.sh 2004-12-01 12:38:28.213470553 -0500 -@@ -249,7 +249,7 @@ - cat > UU/usethreads.cbu <<'EOCBU' - case "$usethreads" in - $define|true|[yY]*) -- ccflags="-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS $ccflags" -+ ccflags="-D_REENTRANT -D_GNU_SOURCE $ccflags" - set `echo X "$libswanted "| sed -e 's/ c / pthread c /'` - shift - libswanted="$*" diff --git a/perl-5.8.0-rmtree.patch b/perl-5.8.0-rmtree.patch deleted file mode 100644 index 340b2a4..0000000 --- a/perl-5.8.0-rmtree.patch +++ /dev/null @@ -1,35 +0,0 @@ -Fix for CAN-2004-0452. Change chmod's to make files writable/executable -by the current user only and not by the entire world. chmod's necessary -in the first place but at least this makes them less dangerous. If, for -some reason the rm process dies halfway through, at worst some files and -dirs were revoked from others, not made available. - ---- perl-5.8.0/lib/File/Path.pm.chmod 2004-11-23 10:41:57.594065752 -0500 -+++ perl-5.8.0/lib/File/Path.pm 2004-11-23 10:43:41.453380351 -0500 -@@ -184,7 +184,7 @@ - # it's also intended to change it to writable in case we have - # to recurse in which case we are better than rm -rf for - # subtrees with strange permissions -- chmod(0777, ($Is_VMS ? VMS::Filespec::fileify($root) : $root)) -+ chmod(0700, ($Is_VMS ? VMS::Filespec::fileify($root) : $root)) - or carp "Can't make directory $root read+writeable: $!" - unless $safe; - -@@ -218,7 +218,7 @@ - print "skipped $root\n" if $verbose; - next; - } -- chmod 0777, $root -+ chmod 0700, $root - or carp "Can't make directory $root writeable: $!" - if $force_writeable; - print "rmdir $root\n" if $verbose; -@@ -240,7 +240,7 @@ - print "skipped $root\n" if $verbose; - next; - } -- chmod 0666, $root -+ chmod 0600, $root - or carp "Can't make file $root writeable: $!" - if $force_writeable; - print "unlink $root\n" if $verbose; diff --git a/perl-5.8.0-rpath-make.patch b/perl-5.8.0-rpath-make.patch deleted file mode 100644 index 20dd318..0000000 --- a/perl-5.8.0-rpath-make.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- perl-5.8.0/Makefile.SH.makerpath 2002-12-31 10:15:21.000000000 -0500 -+++ perl-5.8.0/Makefile.SH 2002-12-31 10:34:13.000000000 -0500 -@@ -110,6 +110,9 @@ - case "$osname" in - os390) test -f /bin/env && ldlibpth="/bin/env $ldlibpth" - ;; -+linux*) -+ ldlibpth="LD_PRELOAD=`pwd`/libperl.so $ldlibpth" -+ ;; - esac - - : Prepare dependency lists for Makefile. diff --git a/perl-5.8.0-sharedlinker.patch b/perl-5.8.0-sharedlinker.patch deleted file mode 100644 index e822b76..0000000 --- a/perl-5.8.0-sharedlinker.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- perl-5.8.0/Makefile.SH.sharedlinker Tue Jun 18 12:36:27 2002 -+++ perl-5.8.0/Makefile.SH Tue Jun 18 12:37:31 2002 -@@ -61,6 +61,9 @@ - netbsd*|freebsd[234]*|openbsd*) - linklibperl="-L. -lperl" - ;; -+ linux*) -+ shrpldflags="$shrpldflags $ldflags $perllibs $cryptlib" -+ ;; - aix*) - shrpldflags="-H512 -T512 -bhalt:4 -bM:SRE -bE:perl.exp" - case "$osvers" in diff --git a/perl-5.8.1-fpic.patch b/perl-5.8.1-fpic.patch deleted file mode 100644 index 1929cae..0000000 --- a/perl-5.8.1-fpic.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.1-RC4/Configure.fpic 2003-08-02 00:47:58.000000000 -0400 -+++ perl-5.8.1-RC4/Configure 2003-08-02 00:50:08.000000000 -0400 -@@ -7501,7 +7501,7 @@ - ;; - *) case "$osname" in - darwin) dflt='none' ;; -- svr4*|esix*|solaris|nonstopux) dflt='-fPIC' ;; -+ linux*|svr4*|esix*|solaris|nonstopux) dflt='-fPIC' ;; - *) dflt='-fpic' ;; - esac ;; - esac ;; diff --git a/perl-5.8.1-lpthread-link.patch b/perl-5.8.1-lpthread-link.patch deleted file mode 100644 index 3de4046..0000000 --- a/perl-5.8.1-lpthread-link.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.1-RC4/ext/threads/Makefile.PL.lpthread Wed Aug 6 20:09:07 2003 -+++ perl-5.8.1-RC4/ext/threads/Makefile.PL Wed Aug 6 20:09:22 2003 -@@ -10,7 +10,7 @@ - (ABSTRACT_FROM => 'threads.pm', # retrieve abstract from module - AUTHOR => 'Artur Bergman ') : ()), - 'MAN3PODS' => {}, # Pods will be built by installman -- 'LIBS' => [''], # e.g., '-lm' -+ 'LIBS' => ['-lpthread'], # e.g., '-lm' - 'DEFINE' => '', # e.g., '-DHAVE_SOMETHING' - # Insert -I. if you add *.h files later: - # 'INC' => '', # e.g., '-I/usr/include/other' diff --git a/perl-5.8.3-empty-rpath.patch b/perl-5.8.3-empty-rpath.patch deleted file mode 100644 index 0630cd6..0000000 --- a/perl-5.8.3-empty-rpath.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- perl-5.8.3/lib/ExtUtils/MM_Unix.pm.orig 2004-03-05 15:04:56.000000000 +0000 -+++ perl-5.8.3/lib/ExtUtils/MM_Unix.pm 2004-03-05 15:05:20.000000000 +0000 -@@ -1135,7 +1135,7 @@ - } - - push(@m, --' LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) '.$ldrun.' $(LDDLFLAGS) '.$ldfrom. -+' $(LD) '.$ldrun.' $(LDDLFLAGS) '.$ldfrom. - ' $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) $(PERL_ARCHIVE) '.$libs.' $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) $(INST_DYNAMIC_FIX)'); - push @m, ' - $(CHMOD) $(PERM_RWX) $@ - diff --git a/perl-5.8.3-fullinc.patch b/perl-5.8.3-fullinc.patch deleted file mode 100644 index 1ea6fc6..0000000 --- a/perl-5.8.3-fullinc.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- perl-5.8.3/perl.c.fullinc 2004-02-15 10:39:38.947636711 -0500 -+++ perl-5.8.3/perl.c 2004-02-15 10:40:27.399370941 -0500 -@@ -4163,23 +4163,17 @@ - libdir, - (int)PERL_REVISION, (int)PERL_VERSION, - (int)PERL_SUBVERSION, ARCHNAME); -- if (PerlLIO_stat(SvPVX(subdir), &tmpstatbuf) >= 0 && -- S_ISDIR(tmpstatbuf.st_mode)) -- av_push(GvAVn(PL_incgv), newSVsv(subdir)); -+ av_push(GvAVn(PL_incgv), newSVsv(subdir)); - - /* .../version if -d .../version */ - Perl_sv_setpvf(aTHX_ subdir, "%"SVf PERL_ARCH_FMT_PATH, libdir, - (int)PERL_REVISION, (int)PERL_VERSION, - (int)PERL_SUBVERSION); -- if (PerlLIO_stat(SvPVX(subdir), &tmpstatbuf) >= 0 && -- S_ISDIR(tmpstatbuf.st_mode)) -- av_push(GvAVn(PL_incgv), newSVsv(subdir)); -+ av_push(GvAVn(PL_incgv), newSVsv(subdir)); - - /* .../archname if -d .../archname */ - Perl_sv_setpvf(aTHX_ subdir, "%"SVf PERL_ARCH_FMT, libdir, ARCHNAME); -- if (PerlLIO_stat(SvPVX(subdir), &tmpstatbuf) >= 0 && -- S_ISDIR(tmpstatbuf.st_mode)) -- av_push(GvAVn(PL_incgv), newSVsv(subdir)); -+ av_push(GvAVn(PL_incgv), newSVsv(subdir)); - } - - #ifdef PERL_INC_VERSION_LIST -@@ -4187,9 +4181,7 @@ - for (incver = incverlist; *incver; incver++) { - /* .../xxx if -d .../xxx */ - Perl_sv_setpvf(aTHX_ subdir, "%"SVf PERL_ARCH_FMT, libdir, *incver); -- if (PerlLIO_stat(SvPVX(subdir), &tmpstatbuf) >= 0 && -- S_ISDIR(tmpstatbuf.st_mode)) -- av_push(GvAVn(PL_incgv), newSVsv(subdir)); -+ av_push(GvAVn(PL_incgv), newSVsv(subdir)); - } - } - #endif diff --git a/perl-5.8.3-perlbug-tag.patch b/perl-5.8.3-perlbug-tag.patch deleted file mode 100644 index bef3ca9..0000000 --- a/perl-5.8.3-perlbug-tag.patch +++ /dev/null @@ -1,52 +0,0 @@ ---- perl-5.8.0/utils/perlbug.PL.perlbug 2004-10-05 12:07:54.423998839 -0400 -+++ perl-5.8.0/utils/perlbug.PL 2004-10-05 12:08:37.607393368 -0400 -@@ -27,8 +27,6 @@ - open PATCH_LEVEL, "<" . catfile(updir, "patchlevel.h") - or die "Can't open patchlevel.h: $!"; - --my $patchlevel_date = (stat PATCH_LEVEL)[9]; -- - while () { - last if $_ =~ /^\s*static\s+char.*?local_patches\[\]\s*=\s*{\s*$/; - } -@@ -64,9 +62,8 @@ - eval 'exec $Config{perlpath} -S \$0 \${1+"\$@"}' - if \$running_under_some_shell; - --my \$config_tag1 = '$extract_version - $Config{cf_time}'; -+my \$config_tag1 = '$extract_version'; - --my \$patchlevel_date = $patchlevel_date; - my \$patch_tags = '$patch_tags'; - my \@patches = ( - $patch_desc -@@ -275,17 +272,6 @@ - $ok = 0; - if ($::opt_o) { - if ($::opt_o eq 'k' or $::opt_o eq 'kay') { -- my $age = time - $patchlevel_date; -- if ($::opt_o eq 'k' and $age > 60 * 24 * 60 * 60 ) { -- my $date = localtime $patchlevel_date; -- print <<"EOF"; --"perlbug -ok" and "perlbug -nok" do not report on Perl versions which --are more than 60 days old. This Perl version was constructed on --$date. If you really want to report this, use --"perlbug -okay" or "perlbug -nokay". --EOF -- exit(); -- } - # force these options - unless ($::opt_n) { - $::opt_S = 1; # don't prompt for send -@@ -592,9 +578,8 @@ - print OUT <), -+ qq(), - "submit()"); - - is(submit(-name => 'foo', - -value => 'bar'), -- qq(), -+ qq(), - "submit(-name,-value)"); - - is(submit({-name => 'foo', - -value => 'bar'}), -- qq(), -+ qq(), - "submit({-name,-value})"); - - is(textfield(-name => 'weather'), -- qq(), -+ qq(), - "textfield({-name})"); - - is(textfield(-name => 'weather', - -value => 'nice'), -- qq(), -+ qq(), - "textfield({-name,-value})"); - - is(textfield(-name => 'weather', - -value => 'nice', - -override => 1), -- qq(), -+ qq(), - "textfield({-name,-value,-override})"); - - is(checkbox(-name => 'weather', - -value => 'nice'), -- qq(), -+ qq(), - "checkbox()"); - - is(checkbox(-name => 'weather', - -value => 'nice', - -label => 'forecast'), -- qq(), -+ qq(), - "checkbox()"); - - is(checkbox(-name => 'weather', -@@ -77,41 +77,41 @@ - -label => 'forecast', - -checked => 1, - -override => 1), -- qq(), -+ qq(), - "checkbox()"); - - is(checkbox(-name => 'weather', - -value => 'dull', - -label => 'forecast'), -- qq(), -+ qq(), - "checkbox()"); - - is(radio_group(-name => 'game'), -- qq( ), -+ qq( ), - 'radio_group()'); - - is(radio_group(-name => 'game', - -labels => {'chess' => 'ping pong'}), -- qq( ), -+ qq( ), - 'radio_group()'); - - is(checkbox_group(-name => 'game', - -Values => [qw/checkers chess cribbage/]), -- qq( ), -+ qq( ), - 'checkbox_group()'); - - is(checkbox_group(-name => 'game', - '-values' => [qw/checkers chess cribbage/], - '-defaults' => ['cribbage'], - -override=>1), -- qq( ), -+ qq( ), - 'checkbox_group()'); - - is(popup_menu(-name => 'game', - '-values' => [qw/checkers chess cribbage/], - -default => 'cribbage', - -override => 1), -- ' - - - -diff -ruN perl-5.8.6-cgi308/lib/CGI.pm perl-5.8.6-cgi310/lib/CGI.pm ---- perl-5.8.6-cgi308/lib/CGI.pm 2005-05-15 01:20:29.955110056 +0100 -+++ perl-5.8.6-cgi310/lib/CGI.pm 2005-05-13 22:46:21.000000000 +0100 -@@ -18,8 +18,8 @@ - # The most recent version and complete docs are available at: - # http://stein.cshl.org/WWW/software/CGI/ - --$CGI::revision = '$Id: CGI.pm,v 1.179 2005/04/07 22:40:37 lstein Exp $'; --$CGI::VERSION=3.08; -+$CGI::revision = '$Id: CGI.pm,v 1.181 2005/05/13 21:45:26 lstein Exp $'; -+$CGI::VERSION='3.10'; - - # HARD-CODED LOCATION FOR FILE UPLOAD TEMPORARY FILES. - # UNCOMMENT THIS ONLY IF YOU KNOW WHAT YOU'RE DOING. -@@ -179,11 +179,12 @@ - if (exists $ENV{MOD_PERL}) { - # mod_perl handlers may run system() on scripts using CGI.pm; - # Make sure so we don't get fooled by inherited $ENV{MOD_PERL} -- if ($ENV{MOD_PERL_API_VERSION} == 2) { -+ if (exists $ENV{MOD_PERL_API_VERSION} && $ENV{MOD_PERL_API_VERSION} == 2) { - $MOD_PERL = 2; - require Apache2::Response; - require Apache2::RequestRec; - require Apache2::RequestUtil; -+ require Apache2::RequestIO; - require APR::Pool; - } else { - $MOD_PERL = 1; -@@ -888,6 +889,7 @@ - - sub element_tab { - my ($self,$new_value) = self_or_default(@_); -+ $self->{'.etab'} ||= 1; - $self->{'.etab'} = $new_value if defined $new_value; - $self->{'.etab'}++; - } diff --git a/perl-5.8.6-filter-simple-update.patch b/perl-5.8.6-filter-simple-update.patch deleted file mode 100644 index dccea31..0000000 --- a/perl-5.8.6-filter-simple-update.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ruN Filter-Simple-0.78/lib/Filter/Simple.pm Filter-Simple-0.79/lib/Filter/Simple.pm ---- Filter-Simple-0.78/lib/Filter/Simple.pm 2002-05-17 00:38:58.000000000 +0100 -+++ Filter-Simple-0.79/lib/Filter/Simple.pm 2003-09-20 21:02:17.000000000 +0100 -@@ -4,7 +4,7 @@ - - use vars qw{ $VERSION @EXPORT }; - --$VERSION = '0.78'; -+$VERSION = '0.79'; - - use Filter::Util::Call; - use Carp; diff --git a/perl-5.8.6-findbin-selinux.patch b/perl-5.8.6-findbin-selinux.patch deleted file mode 100644 index 51d83e3..0000000 --- a/perl-5.8.6-findbin-selinux.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -ruN perl-5.8.6-orig/lib/FindBin.pm perl-5.8.6/lib/FindBin.pm ---- perl-5.8.6-orig/lib/FindBin.pm 2003-12-27 14:52:04.000000000 +0000 -+++ perl-5.8.6/lib/FindBin.pm 2005-05-16 04:15:54.000000000 +0100 -@@ -179,7 +179,12 @@ - } - - # Get absolute paths to directories -- $Bin = abs_path($Bin) if($Bin); -+ if ($Bin) -+ { -+ my $BinOld = $Bin; -+ $Bin = abs_path($Bin); -+ defined $Bin or $Bin = File::Spec->canonpath($BinOld); -+ } - $RealBin = abs_path($RealBin) if($RealBin); - } - } diff --git a/perl-5.8.7-172396.patch b/perl-5.8.7-172396.patch deleted file mode 100644 index 4e26516..0000000 --- a/perl-5.8.7-172396.patch +++ /dev/null @@ -1,115 +0,0 @@ ---- perl-5.8.8/config_h.SH.bz172396 2005-10-31 13:13:05.000000000 -0500 -+++ perl-5.8.8/config_h.SH 2006-05-11 16:20:36.000000000 -0400 -@@ -1912,7 +1912,18 @@ - */ - #$d_localtime_r HAS_LOCALTIME_R /**/ - #define LOCALTIME_R_PROTO $localtime_r_proto /**/ -- -+/* LOCALTIME_R_NEEDS_TZSET : -+ * many libc's localtime_r implementations do not call tzset, -+ * making them differ from localtime(), and making timezone -+ * changes using $ENV{TZ} without explicitly calling tzset -+ * impossible. This symbol makes us call tzset before localtime_r: -+ */ -+#$d_localtime_r_needs_tzset LOCALTIME_R_NEEDS_TZSET /**/ -+#ifdef LOCALTIME_R_NEEDS_TZSET -+#define L_R_TZSET tzset(), -+#else -+#define L_R_TZSET -+#endif - /* HAS_LONG_DOUBLE: - * This symbol will be defined if the C compiler supports long - * doubles. ---- perl-5.8.8/reentr.inc.bz172396 2006-05-11 16:20:36.000000000 -0400 -+++ perl-5.8.8/reentr.inc 2006-05-11 16:20:36.000000000 -0400 -@@ -1368,10 +1368,10 @@ - #ifdef HAS_LOCALTIME_R - # undef localtime - # if !defined(localtime) && LOCALTIME_R_PROTO == REENTRANT_PROTO_S_TS --# define localtime(a) (localtime_r(a, &PL_reentrant_buffer->_localtime_struct) ? &PL_reentrant_buffer->_localtime_struct : 0) -+# define localtime(a) ( L_R_TZSET localtime_r(a, &PL_reentrant_buffer->_localtime_struct) ? &PL_reentrant_buffer->_localtime_struct : 0) - # endif - # if !defined(localtime) && LOCALTIME_R_PROTO == REENTRANT_PROTO_I_TS --# define localtime(a) (localtime_r(a, &PL_reentrant_buffer->_localtime_struct) == 0 ? &PL_reentrant_buffer->_localtime_struct : 0) -+# define localtime(a) ( L_R_TZSET localtime_r(a, &PL_reentrant_buffer->_localtime_struct) == 0 ? &PL_reentrant_buffer->_localtime_struct : 0) - # endif - #endif /* HAS_LOCALTIME_R */ - ---- perl-5.8.8/Configure.bz172396 2006-05-11 16:20:36.000000000 -0400 -+++ perl-5.8.8/Configure 2006-05-11 16:21:47.000000000 -0400 -@@ -542,6 +542,7 @@ - d_libm_lib_version='' - d_link='' - d_localtime_r='' -+d_localtime_r_needs_tzset='' - localtime_r_proto='' - d_locconv='' - d_lockf='' -@@ -14261,7 +14262,59 @@ - *) localtime_r_proto=0 - ;; - esac -+: see if localtime_r calls tzset -+case "$localtime_r_proto" in -+REENTRANT_PROTO*) -+ $cat >try.c < -+#include -+#include -+#include -+#include -+int main() -+{ -+ time_t t = time(0L); -+ char w_tz[]="TZ=GMT+5", -+ e_tz[]="TZ=GMT-5", -+ *tz_e = (char*)malloc(16), -+ *tz_w = (char*)malloc(16); -+ struct tm tm_e, tm_w; -+ memset(&tm_e,'\0',sizeof(struct tm)); -+ memset(&tm_w,'\0',sizeof(struct tm)); -+ strcpy(tz_e,e_tz); -+ strcpy(tz_w,w_tz); - -+ putenv(tz_e); -+ localtime_r(&t, &tm_e); -+ -+ putenv(tz_w); -+ localtime_r(&t, &tm_w); -+ -+ if( memcmp(&tm_e, &tm_w, sizeof(struct tm)) == 0 ) -+ return 1; -+ return 0; -+} -+EOCP -+ set try -+ if eval $compile; then -+ if ./try; then -+ d_localtime_r_needs_tzset=undef; -+ else -+ d_localtime_r_needs_tzset=define; -+ fi; -+ rm -f ./try; -+ else -+ d_localtime_r_needs_tzset=undef; -+ fi; -+ rm -f try.c; -+ ;; -+ *) -+ d_localtime_r_needs_tzset=undef; -+ ;; -+esac - : see if localeconv exists - set localeconv d_locconv - eval $inlibc -@@ -21220,6 +21273,7 @@ - d_libm_lib_version='$d_libm_lib_version' - d_link='$d_link' - d_localtime_r='$d_localtime_r' -+d_localtime_r_needs_tzset='$d_localtime_r_needs_tzset' - d_locconv='$d_locconv' - d_lockf='$d_lockf' - d_longdbl='$d_longdbl' diff --git a/perl-5.8.7-25084.patch b/perl-5.8.7-25084.patch deleted file mode 100644 index a7460d5..0000000 --- a/perl-5.8.7-25084.patch +++ /dev/null @@ -1,1269 +0,0 @@ ---- perl-5.8.7/reentr.inc.25084 2005-05-13 15:59:00.000000000 -0400 -+++ perl-5.8.7/reentr.inc 2005-11-02 15:50:31.000000000 -0500 -@@ -146,34 +146,34 @@ - # undef getgrent - # if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_I_SBWR - # ifdef PERL_CORE --# define getgrent() (((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))) -+# define getgrent() (((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));}) -+# define getgrent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));}) - # else - # define getgrent() Perl_reentr_getgrent() - static struct group* Perl_reentr_getgrent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0)); -+ return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0)); - } - # endif - # endif - # endif - # if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_I_SBIR - # ifdef PERL_CORE --# define getgrent() (((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))) -+# define getgrent() (((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));}) -+# define getgrent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));}) - # else - # define getgrent() Perl_reentr_getgrent() - static struct group* Perl_reentr_getgrent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0)); -+ return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0)); - } - # endif - # endif -@@ -186,34 +186,34 @@ - # endif - # if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_I_SBI - # ifdef PERL_CORE --# define getgrent() (((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))) -+# define getgrent() (((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));}) -+# define getgrent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));}) - # else - # define getgrent() Perl_reentr_getgrent() - static struct group* Perl_reentr_getgrent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0)); -+ return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0)); - } - # endif - # endif - # endif - # if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_I_SBIH - # ifdef PERL_CORE --# define getgrent() (((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))) -+# define getgrent() (((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));}) -+# define getgrent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));}) - # else - # define getgrent() Perl_reentr_getgrent() - static struct group* Perl_reentr_getgrent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0)); -+ return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrent") : 0)); - } - # endif - # endif -@@ -224,51 +224,51 @@ - # undef getgrgid - # if !defined(getgrgid) && GETGRGID_R_PROTO == REENTRANT_PROTO_I_TSBWR - # ifdef PERL_CORE --# define getgrgid(a) (((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))) -+# define getgrgid(a) (((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrgid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));}) -+# define getgrgid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));}) - # else - # define getgrgid(a) Perl_reentr_getgrgid(a) - static struct group* Perl_reentr_getgrgid(gid_t a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0)); - } - # endif - # endif - # endif - # if !defined(getgrgid) && GETGRGID_R_PROTO == REENTRANT_PROTO_I_TSBIR - # ifdef PERL_CORE --# define getgrgid(a) (((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))) -+# define getgrgid(a) (((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrgid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));}) -+# define getgrgid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));}) - # else - # define getgrgid(a) Perl_reentr_getgrgid(a) - static struct group* Perl_reentr_getgrgid(gid_t a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0)); - } - # endif - # endif - # endif - # if !defined(getgrgid) && GETGRGID_R_PROTO == REENTRANT_PROTO_I_TSBI - # ifdef PERL_CORE --# define getgrgid(a) (((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))) -+# define getgrgid(a) (((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrgid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));}) -+# define getgrgid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));}) - # else - # define getgrgid(a) Perl_reentr_getgrgid(a) - static struct group* Perl_reentr_getgrgid(gid_t a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0)); - } - # endif - # endif -@@ -282,34 +282,34 @@ - # undef getgrnam - # if !defined(getgrnam) && GETGRNAM_R_PROTO == REENTRANT_PROTO_I_CSBWR - # ifdef PERL_CORE --# define getgrnam(a) (((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))) -+# define getgrnam(a) (((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));}) -+# define getgrnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));}) - # else - # define getgrnam(a) Perl_reentr_getgrnam(a) - static struct group* Perl_reentr_getgrnam(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0)); - } - # endif - # endif - # endif - # if !defined(getgrnam) && GETGRNAM_R_PROTO == REENTRANT_PROTO_I_CSBIR - # ifdef PERL_CORE --# define getgrnam(a) (((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))) -+# define getgrnam(a) (((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));}) -+# define getgrnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));}) - # else - # define getgrnam(a) Perl_reentr_getgrnam(a) - static struct group* Perl_reentr_getgrnam(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0)); - } - # endif - # endif -@@ -319,17 +319,17 @@ - # endif - # if !defined(getgrnam) && GETGRNAM_R_PROTO == REENTRANT_PROTO_I_CSBI - # ifdef PERL_CORE --# define getgrnam(a) (((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))) -+# define getgrnam(a) (((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getgrnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));}) -+# define getgrnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));}) - # else - # define getgrnam(a) Perl_reentr_getgrnam(a) - static struct group* Perl_reentr_getgrnam(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0)); - } - # endif - # endif -@@ -343,17 +343,17 @@ - # undef gethostbyaddr - # if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_CWISBWRE - # ifdef PERL_CORE --# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) -+# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) -+# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) - # else - # define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c) - static struct hostent* Perl_reentr_gethostbyaddr(const char* a, size_t b, int c) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); -+ return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); - } - # endif - # endif -@@ -378,68 +378,68 @@ - # endif - # if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_CWISD - # ifdef PERL_CORE --# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) -+# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) -+# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) - # else - # define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c) - static struct hostent* Perl_reentr_gethostbyaddr(const char* a, size_t b, int c) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); -+ return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); - } - # endif - # endif - # endif - # if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_CIISD - # ifdef PERL_CORE --# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) -+# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) -+# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) - # else - # define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c) - static struct hostent* Perl_reentr_gethostbyaddr(const char* a, int b, int c) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); -+ return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); - } - # endif - # endif - # endif - # if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_CII - # ifdef PERL_CORE --# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) -+# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) -+# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) - # else - # define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c) - static struct hostent* Perl_reentr_gethostbyaddr(const char* a, int b, int c) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); -+ return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); - } - # endif - # endif - # endif - # if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_TsISBWRE - # ifdef PERL_CORE --# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) -+# define gethostbyaddr(a, b, c) (((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) -+# define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));}) - # else - # define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c) - static struct hostent* Perl_reentr_gethostbyaddr(const void* a, socklen_t b, int c) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); -+ return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0)); - } - # endif - # endif -@@ -450,17 +450,17 @@ - # undef gethostbyname - # if !defined(gethostbyname) && GETHOSTBYNAME_R_PROTO == REENTRANT_PROTO_I_CSBWRE - # ifdef PERL_CORE --# define gethostbyname(a) (((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0))) -+# define gethostbyname(a) (((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0));}) -+# define gethostbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0));}) - # else - # define gethostbyname(a) Perl_reentr_gethostbyname(a) - static struct hostent* Perl_reentr_gethostbyname(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0)); -+ return ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0)); - } - # endif - # endif -@@ -470,17 +470,17 @@ - # endif - # if !defined(gethostbyname) && GETHOSTBYNAME_R_PROTO == REENTRANT_PROTO_I_CSD - # ifdef PERL_CORE --# define gethostbyname(a) (((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0))) -+# define gethostbyname(a) (((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0));}) -+# define gethostbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0));}) - # else - # define gethostbyname(a) Perl_reentr_gethostbyname(a) - static struct hostent* Perl_reentr_gethostbyname(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0)); -+ return ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0)); - } - # endif - # endif -@@ -491,34 +491,34 @@ - # undef gethostent - # if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SBWRE - # ifdef PERL_CORE --# define gethostent() (((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))) -+# define gethostent() (((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));}) -+# define gethostent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));}) - # else - # define gethostent() Perl_reentr_gethostent() - static struct hostent* Perl_reentr_gethostent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0)); -+ return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0)); - } - # endif - # endif - # endif - # if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SBIE - # ifdef PERL_CORE --# define gethostent() (((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))) -+# define gethostent() (((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));}) -+# define gethostent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));}) - # else - # define gethostent() Perl_reentr_gethostent() - static struct hostent* Perl_reentr_gethostent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0)); -+ return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0)); - } - # endif - # endif -@@ -531,34 +531,34 @@ - # endif - # if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SBI - # ifdef PERL_CORE --# define gethostent() (((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))) -+# define gethostent() (((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));}) -+# define gethostent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));}) - # else - # define gethostent() Perl_reentr_gethostent() - static struct hostent* Perl_reentr_gethostent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0)); -+ return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0)); - } - # endif - # endif - # endif - # if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SD - # ifdef PERL_CORE --# define gethostent() (((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))) -+# define gethostent() (((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define gethostent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));}) -+# define gethostent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));}) - # else - # define gethostent() Perl_reentr_gethostent() - static struct hostent* Perl_reentr_gethostent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0)); -+ return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0)); - } - # endif - # endif -@@ -569,34 +569,34 @@ - # undef getlogin - # if !defined(getlogin) && GETLOGIN_R_PROTO == REENTRANT_PROTO_I_BW - # ifdef PERL_CORE --# define getlogin() (((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0))) -+# define getlogin() (((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : ((PL_REENTRANT_RETINT == ERANGE) ? (char*)Perl_reentrant_retry("getlogin") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getlogin() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0));}) -+# define getlogin() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : ((PL_REENTRANT_RETINT == ERANGE) ? (char*)Perl_reentrant_retry("getlogin") : 0));}) - # else - # define getlogin() Perl_reentr_getlogin() - static char* Perl_reentr_getlogin() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0)); -+ return ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : ((PL_REENTRANT_RETINT == ERANGE) ? (char*)Perl_reentrant_retry("getlogin") : 0)); - } - # endif - # endif - # endif - # if !defined(getlogin) && GETLOGIN_R_PROTO == REENTRANT_PROTO_I_BI - # ifdef PERL_CORE --# define getlogin() (((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0))) -+# define getlogin() (((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : ((PL_REENTRANT_RETINT == ERANGE) ? (char*)Perl_reentrant_retry("getlogin") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getlogin() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0));}) -+# define getlogin() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : ((PL_REENTRANT_RETINT == ERANGE) ? (char*)Perl_reentrant_retry("getlogin") : 0));}) - # else - # define getlogin() Perl_reentr_getlogin() - static char* Perl_reentr_getlogin() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0)); -+ return ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : ((PL_REENTRANT_RETINT == ERANGE) ? (char*)Perl_reentrant_retry("getlogin") : 0)); - } - # endif - # endif -@@ -613,34 +613,34 @@ - # undef getnetbyaddr - # if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_UISBWRE - # ifdef PERL_CORE --# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) -+# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) -+# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) - # else - # define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b) - static struct netent* Perl_reentr_getnetbyaddr(unsigned long a, int b) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); - } - # endif - # endif - # endif - # if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_LISBI - # ifdef PERL_CORE --# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) -+# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) -+# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) - # else - # define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b) - static struct netent* Perl_reentr_getnetbyaddr(long a, int b) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); - } - # endif - # endif -@@ -653,68 +653,68 @@ - # endif - # if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_TISD - # ifdef PERL_CORE --# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) -+# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) -+# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) - # else - # define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b) - static struct netent* Perl_reentr_getnetbyaddr(in_addr_t a, int b) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); - } - # endif - # endif - # endif - # if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_LISD - # ifdef PERL_CORE --# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) -+# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) -+# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) - # else - # define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b) - static struct netent* Perl_reentr_getnetbyaddr(long a, int b) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); - } - # endif - # endif - # endif - # if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_IISD - # ifdef PERL_CORE --# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) -+# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) -+# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) - # else - # define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b) - static struct netent* Perl_reentr_getnetbyaddr(int a, int b) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); - } - # endif - # endif - # endif - # if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_uISBWRE - # ifdef PERL_CORE --# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) -+# define getnetbyaddr(a, b) (((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) -+# define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));}) - # else - # define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b) - static struct netent* Perl_reentr_getnetbyaddr(uint32_t a, int b) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0)); - } - # endif - # endif -@@ -725,34 +725,34 @@ - # undef getnetbyname - # if !defined(getnetbyname) && GETNETBYNAME_R_PROTO == REENTRANT_PROTO_I_CSBWRE - # ifdef PERL_CORE --# define getnetbyname(a) (((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))) -+# define getnetbyname(a) (((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));}) -+# define getnetbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));}) - # else - # define getnetbyname(a) Perl_reentr_getnetbyname(a) - static struct netent* Perl_reentr_getnetbyname(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0)); - } - # endif - # endif - # endif - # if !defined(getnetbyname) && GETNETBYNAME_R_PROTO == REENTRANT_PROTO_I_CSBI - # ifdef PERL_CORE --# define getnetbyname(a) (((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))) -+# define getnetbyname(a) (((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));}) -+# define getnetbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));}) - # else - # define getnetbyname(a) Perl_reentr_getnetbyname(a) - static struct netent* Perl_reentr_getnetbyname(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0)); - } - # endif - # endif -@@ -762,17 +762,17 @@ - # endif - # if !defined(getnetbyname) && GETNETBYNAME_R_PROTO == REENTRANT_PROTO_I_CSD - # ifdef PERL_CORE --# define getnetbyname(a) (((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))) -+# define getnetbyname(a) (((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));}) -+# define getnetbyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));}) - # else - # define getnetbyname(a) Perl_reentr_getnetbyname(a) - static struct netent* Perl_reentr_getnetbyname(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0)); - } - # endif - # endif -@@ -783,34 +783,34 @@ - # undef getnetent - # if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_I_SBWRE - # ifdef PERL_CORE --# define getnetent() (((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))) -+# define getnetent() (((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));}) -+# define getnetent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));}) - # else - # define getnetent() Perl_reentr_getnetent() - static struct netent* Perl_reentr_getnetent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0)); -+ return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0)); - } - # endif - # endif - # endif - # if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_I_SBIE - # ifdef PERL_CORE --# define getnetent() (((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))) -+# define getnetent() (((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));}) -+# define getnetent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));}) - # else - # define getnetent() Perl_reentr_getnetent() - static struct netent* Perl_reentr_getnetent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0)); -+ return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0)); - } - # endif - # endif -@@ -823,34 +823,34 @@ - # endif - # if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_I_SBI - # ifdef PERL_CORE --# define getnetent() (((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))) -+# define getnetent() (((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));}) -+# define getnetent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));}) - # else - # define getnetent() Perl_reentr_getnetent() - static struct netent* Perl_reentr_getnetent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0)); -+ return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0)); - } - # endif - # endif - # endif - # if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_I_SD - # ifdef PERL_CORE --# define getnetent() (((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))) -+# define getnetent() (((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getnetent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));}) -+# define getnetent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));}) - # else - # define getnetent() Perl_reentr_getnetent() - static struct netent* Perl_reentr_getnetent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0)); -+ return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0)); - } - # endif - # endif -@@ -861,17 +861,17 @@ - # undef getprotobyname - # if !defined(getprotobyname) && GETPROTOBYNAME_R_PROTO == REENTRANT_PROTO_I_CSBWR - # ifdef PERL_CORE --# define getprotobyname(a) (((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0))) -+# define getprotobyname(a) (((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getprotobyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0));}) -+# define getprotobyname(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0));}) - # else - # define getprotobyname(a) Perl_reentr_getprotobyname(a) - static struct protoent* Perl_reentr_getprotobyname(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0)); - } - # endif - # endif -@@ -881,17 +881,17 @@ - # endif - # if !defined(getprotobyname) && GETPROTOBYNAME_R_PROTO == REENTRANT_PROTO_I_CSD - # ifdef PERL_CORE --# define getprotobyname(a) (REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)), ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0))) -+# define getprotobyname(a) (REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)), ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getprotobyname(a) ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0));}) -+# define getprotobyname(a) ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0));}) - # else - # define getprotobyname(a) Perl_reentr_getprotobyname(a) - static struct protoent* Perl_reentr_getprotobyname(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); -- return ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0)); - } - # endif - # endif -@@ -902,17 +902,17 @@ - # undef getprotobynumber - # if !defined(getprotobynumber) && GETPROTOBYNUMBER_R_PROTO == REENTRANT_PROTO_I_ISBWR - # ifdef PERL_CORE --# define getprotobynumber(a) (((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0))) -+# define getprotobynumber(a) (((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getprotobynumber(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0));}) -+# define getprotobynumber(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0));}) - # else - # define getprotobynumber(a) Perl_reentr_getprotobynumber(a) - static struct protoent* Perl_reentr_getprotobynumber(int a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0)); - } - # endif - # endif -@@ -922,17 +922,17 @@ - # endif - # if !defined(getprotobynumber) && GETPROTOBYNUMBER_R_PROTO == REENTRANT_PROTO_I_ISD - # ifdef PERL_CORE --# define getprotobynumber(a) (REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)), ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0))) -+# define getprotobynumber(a) (REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)), ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getprotobynumber(a) ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0));}) -+# define getprotobynumber(a) ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0));}) - # else - # define getprotobynumber(a) Perl_reentr_getprotobynumber(a) - static struct protoent* Perl_reentr_getprotobynumber(int a) { - dTHX; - int PL_REENTRANT_RETINT; - REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); -- return ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0)); - } - # endif - # endif -@@ -943,34 +943,34 @@ - # undef getprotoent - # if !defined(getprotoent) && GETPROTOENT_R_PROTO == REENTRANT_PROTO_I_SBWR - # ifdef PERL_CORE --# define getprotoent() (((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))) -+# define getprotoent() (((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getprotoent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));}) -+# define getprotoent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));}) - # else - # define getprotoent() Perl_reentr_getprotoent() - static struct protoent* Perl_reentr_getprotoent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0)); -+ return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0)); - } - # endif - # endif - # endif - # if !defined(getprotoent) && GETPROTOENT_R_PROTO == REENTRANT_PROTO_I_SBI - # ifdef PERL_CORE --# define getprotoent() (((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))) -+# define getprotoent() (((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getprotoent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));}) -+# define getprotoent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));}) - # else - # define getprotoent() Perl_reentr_getprotoent() - static struct protoent* Perl_reentr_getprotoent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0)); -+ return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0)); - } - # endif - # endif -@@ -980,17 +980,17 @@ - # endif - # if !defined(getprotoent) && GETPROTOENT_R_PROTO == REENTRANT_PROTO_I_SD - # ifdef PERL_CORE --# define getprotoent() (REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)), ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))) -+# define getprotoent() (REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)), ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getprotoent() ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));}) -+# define getprotoent() ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));}) - # else - # define getprotoent() Perl_reentr_getprotoent() - static struct protoent* Perl_reentr_getprotoent() { - dTHX; - int PL_REENTRANT_RETINT; - REENTR_MEMZERO(&PL_reentrant_buffer->_protoent_data, sizeof(PL_reentrant_buffer->_protoent_data)); -- return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0)); -+ return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0)); - } - # endif - # endif -@@ -1001,34 +1001,34 @@ - # undef getpwent - # if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_I_SBWR - # ifdef PERL_CORE --# define getpwent() (((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))) -+# define getpwent() (((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));}) -+# define getpwent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));}) - # else - # define getpwent() Perl_reentr_getpwent() - static struct passwd* Perl_reentr_getpwent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0)); -+ return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0)); - } - # endif - # endif - # endif - # if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_I_SBIR - # ifdef PERL_CORE --# define getpwent() (((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))) -+# define getpwent() (((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));}) -+# define getpwent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));}) - # else - # define getpwent() Perl_reentr_getpwent() - static struct passwd* Perl_reentr_getpwent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0)); -+ return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0)); - } - # endif - # endif -@@ -1041,34 +1041,34 @@ - # endif - # if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_I_SBI - # ifdef PERL_CORE --# define getpwent() (((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))) -+# define getpwent() (((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));}) -+# define getpwent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));}) - # else - # define getpwent() Perl_reentr_getpwent() - static struct passwd* Perl_reentr_getpwent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0)); -+ return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0)); - } - # endif - # endif - # endif - # if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_I_SBIH - # ifdef PERL_CORE --# define getpwent() (((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))) -+# define getpwent() (((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));}) -+# define getpwent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));}) - # else - # define getpwent() Perl_reentr_getpwent() - static struct passwd* Perl_reentr_getpwent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0)); -+ return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0)); - } - # endif - # endif -@@ -1079,34 +1079,34 @@ - # undef getpwnam - # if !defined(getpwnam) && GETPWNAM_R_PROTO == REENTRANT_PROTO_I_CSBWR - # ifdef PERL_CORE --# define getpwnam(a) (((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))) -+# define getpwnam(a) (((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));}) -+# define getpwnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));}) - # else - # define getpwnam(a) Perl_reentr_getpwnam(a) - static struct passwd* Perl_reentr_getpwnam(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0)); - } - # endif - # endif - # endif - # if !defined(getpwnam) && GETPWNAM_R_PROTO == REENTRANT_PROTO_I_CSBIR - # ifdef PERL_CORE --# define getpwnam(a) (((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))) -+# define getpwnam(a) (((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));}) -+# define getpwnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));}) - # else - # define getpwnam(a) Perl_reentr_getpwnam(a) - static struct passwd* Perl_reentr_getpwnam(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0)); - } - # endif - # endif -@@ -1116,17 +1116,17 @@ - # endif - # if !defined(getpwnam) && GETPWNAM_R_PROTO == REENTRANT_PROTO_I_CSBI - # ifdef PERL_CORE --# define getpwnam(a) (((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))) -+# define getpwnam(a) (((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));}) -+# define getpwnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));}) - # else - # define getpwnam(a) Perl_reentr_getpwnam(a) - static struct passwd* Perl_reentr_getpwnam(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0)); - } - # endif - # endif -@@ -1137,51 +1137,51 @@ - # undef getpwuid - # if !defined(getpwuid) && GETPWUID_R_PROTO == REENTRANT_PROTO_I_TSBWR - # ifdef PERL_CORE --# define getpwuid(a) (((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))) -+# define getpwuid(a) (((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwuid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));}) -+# define getpwuid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));}) - # else - # define getpwuid(a) Perl_reentr_getpwuid(a) - static struct passwd* Perl_reentr_getpwuid(uid_t a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0)); - } - # endif - # endif - # endif - # if !defined(getpwuid) && GETPWUID_R_PROTO == REENTRANT_PROTO_I_TSBIR - # ifdef PERL_CORE --# define getpwuid(a) (((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))) -+# define getpwuid(a) (((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwuid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));}) -+# define getpwuid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));}) - # else - # define getpwuid(a) Perl_reentr_getpwuid(a) - static struct passwd* Perl_reentr_getpwuid(uid_t a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0)); - } - # endif - # endif - # endif - # if !defined(getpwuid) && GETPWUID_R_PROTO == REENTRANT_PROTO_I_TSBI - # ifdef PERL_CORE --# define getpwuid(a) (((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))) -+# define getpwuid(a) (((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getpwuid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));}) -+# define getpwuid(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));}) - # else - # define getpwuid(a) Perl_reentr_getpwuid(a) - static struct passwd* Perl_reentr_getpwuid(uid_t a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0)); - } - # endif - # endif -@@ -1195,17 +1195,17 @@ - # undef getservbyname - # if !defined(getservbyname) && GETSERVBYNAME_R_PROTO == REENTRANT_PROTO_I_CCSBWR - # ifdef PERL_CORE --# define getservbyname(a, b) (((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0))) -+# define getservbyname(a, b) (((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getservbyname(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0));}) -+# define getservbyname(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0));}) - # else - # define getservbyname(a, b) Perl_reentr_getservbyname(a, b) - static struct servent* Perl_reentr_getservbyname(const char* a, const char* b) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0)); - } - # endif - # endif -@@ -1215,17 +1215,17 @@ - # endif - # if !defined(getservbyname) && GETSERVBYNAME_R_PROTO == REENTRANT_PROTO_I_CCSD - # ifdef PERL_CORE --# define getservbyname(a, b) (REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)), ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0))) -+# define getservbyname(a, b) (REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)), ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getservbyname(a, b) ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0));}) -+# define getservbyname(a, b) ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0));}) - # else - # define getservbyname(a, b) Perl_reentr_getservbyname(a, b) - static struct servent* Perl_reentr_getservbyname(const char* a, const char* b) { - dTHX; - int PL_REENTRANT_RETINT; - REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); -- return ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0)); - } - # endif - # endif -@@ -1236,17 +1236,17 @@ - # undef getservbyport - # if !defined(getservbyport) && GETSERVBYPORT_R_PROTO == REENTRANT_PROTO_I_ICSBWR - # ifdef PERL_CORE --# define getservbyport(a, b) (((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0))) -+# define getservbyport(a, b) (((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getservbyport(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0));}) -+# define getservbyport(a, b) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0));}) - # else - # define getservbyport(a, b) Perl_reentr_getservbyport(a, b) - static struct servent* Perl_reentr_getservbyport(int a, const char* b) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0)); - } - # endif - # endif -@@ -1256,17 +1256,17 @@ - # endif - # if !defined(getservbyport) && GETSERVBYPORT_R_PROTO == REENTRANT_PROTO_I_ICSD - # ifdef PERL_CORE --# define getservbyport(a, b) (REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)), ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0))) -+# define getservbyport(a, b) (REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)), ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getservbyport(a, b) ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0));}) -+# define getservbyport(a, b) ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0));}) - # else - # define getservbyport(a, b) Perl_reentr_getservbyport(a, b) - static struct servent* Perl_reentr_getservbyport(int a, const char* b) { - dTHX; - int PL_REENTRANT_RETINT; - REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); -- return ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0)); -+ return ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0)); - } - # endif - # endif -@@ -1277,34 +1277,34 @@ - # undef getservent - # if !defined(getservent) && GETSERVENT_R_PROTO == REENTRANT_PROTO_I_SBWR - # ifdef PERL_CORE --# define getservent() (((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))) -+# define getservent() (((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getservent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));}) -+# define getservent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));}) - # else - # define getservent() Perl_reentr_getservent() - static struct servent* Perl_reentr_getservent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0)); -+ return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0)); - } - # endif - # endif - # endif - # if !defined(getservent) && GETSERVENT_R_PROTO == REENTRANT_PROTO_I_SBI - # ifdef PERL_CORE --# define getservent() (((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))) -+# define getservent() (((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getservent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));}) -+# define getservent() ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));}) - # else - # define getservent() Perl_reentr_getservent() - static struct servent* Perl_reentr_getservent() { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0)); -+ return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0)); - } - # endif - # endif -@@ -1314,17 +1314,17 @@ - # endif - # if !defined(getservent) && GETSERVENT_R_PROTO == REENTRANT_PROTO_I_SD - # ifdef PERL_CORE --# define getservent() (REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)), ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))) -+# define getservent() (REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)), ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getservent() ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));}) -+# define getservent() ({int PL_REENTRANT_RETINT; REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));}) - # else - # define getservent() Perl_reentr_getservent() - static struct servent* Perl_reentr_getservent() { - dTHX; - int PL_REENTRANT_RETINT; - REENTR_MEMZERO(&PL_reentrant_buffer->_servent_data, sizeof(PL_reentrant_buffer->_servent_data)); -- return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0)); -+ return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : ((PL_REENTRANT_RETINT == ERANGE) ? (struct servent*)Perl_reentrant_retry("getservent") : 0)); - } - # endif - # endif -@@ -1335,17 +1335,17 @@ - # undef getspnam - # if !defined(getspnam) && GETSPNAM_R_PROTO == REENTRANT_PROTO_I_CSBWR - # ifdef PERL_CORE --# define getspnam(a) (((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0))) -+# define getspnam(a) (((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0))) - # else - # if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC) --# define getspnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0));}) -+# define getspnam(a) ({int PL_REENTRANT_RETINT; ; ((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0));}) - # else - # define getspnam(a) Perl_reentr_getspnam(a) - static struct spwd* Perl_reentr_getspnam(const char* a) { - dTHX; - int PL_REENTRANT_RETINT; - ; -- return ((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0)); -+ return ((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : ((PL_REENTRANT_RETINT == ERANGE) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0)); - } - # endif - # endif ---- perl-5.8.7/reentr.pl.25084 2005-05-13 15:58:38.000000000 -0400 -+++ perl-5.8.7/reentr.pl 2005-11-02 15:52:29.000000000 -0500 -@@ -702,7 +702,7 @@ - if ($func =~ /^get/) { - my $rv = $v ? ", $v" : ""; - if ($r eq 'I') { -- $call = qq[((PL_REENTRANT_RETINT = $call)$test ? $true : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? ($seenm{$func}{$seenr{$func}})Perl_reentrant_retry("$func"$rv) : 0))]; -+ $call = qq[((PL_REENTRANT_RETINT = $call)$test ? $true : ((PL_REENTRANT_RETINT == ERANGE) ? ($seenm{$func}{$seenr{$func}})Perl_reentrant_retry("$func"$rv) : 0))]; - my $arg = join(", ", map { $seenm{$func}{substr($a,$_,1)}." ".$v[$_] } 0..$seenu{$func}-1); - my $ret = $seenr{$func} eq 'V' ? "" : "return "; - my $memzero_ = $memzero ? "$memzero, " : ""; diff --git a/perl-5.8.7-CAN-2004-0976.patch b/perl-5.8.7-CAN-2004-0976.patch deleted file mode 100644 index ae13fe3..0000000 --- a/perl-5.8.7-CAN-2004-0976.patch +++ /dev/null @@ -1,184 +0,0 @@ ---- perl-5.8.7/utils/c2ph.PL.CAN-2004-0976 2004-10-19 15:45:42.000000000 -0400 -+++ perl-5.8.7/utils/c2ph.PL 2005-11-08 12:53:30.000000000 -0500 -@@ -1320,7 +1320,7 @@ - $intrinsics{$_[1]} = $template{$_[0]}; - } - close(PIPE) || die "couldn't read intrinsics!"; -- unlink($TMP, '$SAFEDIR/a.out'); -+ unlink($TMP, "$SAFEDIR/a.out"); - print STDERR "done\n" if $trace; - } - ---- perl-5.8.7/lib/Memoize/t/tie_storable.t.CAN-2004-0976 2002-07-12 15:56:19.000000000 -0400 -+++ perl-5.8.7/lib/Memoize/t/tie_storable.t 2005-11-08 13:06:13.000000000 -0500 -@@ -33,14 +33,7 @@ - - print "1..4\n"; - -- --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import(); --} else { -- *catfile = sub { join '/', @_ }; --} --$tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --$file = catfile($tmpdir, "storable$$"); -+$file = "storable$$"; - 1 while unlink $file; - tryout('Memoize::Storable', $file, 1); # Test 1..4 - 1 while unlink $file; ---- perl-5.8.7/lib/Memoize/t/tie_ndbm.t.CAN-2004-0976 2005-04-22 07:36:58.000000000 -0400 -+++ perl-5.8.7/lib/Memoize/t/tie_ndbm.t 2005-11-08 13:04:45.000000000 -0500 -@@ -28,14 +28,7 @@ - - print "1..4\n"; - -- --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import(); --} else { -- *catfile = sub { join '/', @_ }; --} --$tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --$file = catfile($tmpdir, "md$$"); -+$file = "md$$"; - 1 while unlink $file, "$file.dir", "$file.pag", "$file.db"; - tryout('Memoize::NDBM_File', $file, 1); # Test 1..4 - 1 while unlink $file, "$file.dir", "$file.pag", "$file.db"; ---- perl-5.8.7/lib/Memoize/t/tie.t.CAN-2004-0976 2002-07-12 15:56:19.000000000 -0400 -+++ perl-5.8.7/lib/Memoize/t/tie.t 2005-11-08 13:03:20.000000000 -0500 -@@ -29,14 +29,7 @@ - $_[0]+1; - } - --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import('tmpdir', 'catfile'); -- $tmpdir = tmpdir(); --} else { -- *catfile = sub { join '/', @_ }; -- $tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --} --$file = catfile($tmpdir, "md$$"); -+$file = "md$$"; - @files = ($file, "$file.db", "$file.dir", "$file.pag"); - 1 while unlink @files; - ---- perl-5.8.7/lib/Memoize/t/tie_sdbm.t.CAN-2004-0976 2002-07-12 15:56:19.000000000 -0400 -+++ perl-5.8.7/lib/Memoize/t/tie_sdbm.t 2005-11-08 13:05:32.000000000 -0500 -@@ -28,14 +28,7 @@ - - print "1..4\n"; - --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import('tmpdir', 'catfile'); -- $tmpdir = tmpdir(); --} else { -- *catfile = sub { join '/', @_ }; -- $tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --} --$file = catfile($tmpdir, "md$$"); -+$file = "md$$"; - 1 while unlink $file, "$file.dir", "$file.pag"; - tryout('Memoize::SDBM_File', $file, 1); # Test 1..4 - 1 while unlink $file, "$file.dir", "$file.pag"; ---- perl-5.8.7/lib/Memoize/t/tie_gdbm.t.CAN-2004-0976 2002-07-12 15:56:19.000000000 -0400 -+++ perl-5.8.7/lib/Memoize/t/tie_gdbm.t 2005-11-08 13:04:03.000000000 -0500 -@@ -26,13 +26,7 @@ - - print "1..4\n"; - --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import(); --} else { -- *catfile = sub { join '/', @_ }; --} --$tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --$file = catfile($tmpdir, "md$$"); -+$file = "md$$"; - 1 while unlink $file, "$file.dir", "$file.pag"; - tryout('GDBM_File', $file, 1); # Test 1..4 - 1 while unlink $file, "$file.dir", "$file.pag"; ---- perl-5.8.7/lib/ExtUtils/instmodsh.CAN-2004-0976 2004-01-05 17:34:59.000000000 -0500 -+++ perl-5.8.7/lib/ExtUtils/instmodsh 2005-11-08 12:42:25.000000000 -0500 -@@ -2,6 +2,7 @@ - - use strict; - use IO::File; -+use File::Temp; - use ExtUtils::Packlist; - use ExtUtils::Installed; - -@@ -58,15 +59,14 @@ - $reply =~ /^t\s*/ and do - { - my $file = (split(' ', $reply))[1]; -- my $tmp = "/tmp/inst.$$"; -- if (my $fh = IO::File->new($tmp, "w")) -- { -- $fh->print(join("\n", $Inst->files($module))); -- $fh->close(); -- system("tar cvf $file -I $tmp"); -- unlink($tmp); -- last CASE; -- } -+ my ($fh, $tmp) = File::Temp::tempfile(UNLINK => 1); -+ $fh->print(join("\n", $Inst->files($module))); -+ $fh->close(); -+ # This used to use -I which is wrong for GNU tar. -+ system("tar cvf $file -T $tmp"); -+ unlink($tmp); -+ last CASE; -+ } - else { print("Can't open $file: $!\n"); } - last CASE; - }; ---- perl-5.8.7/lib/ExtUtils/MakeMaker.pm.CAN-2004-0976 2004-01-05 17:34:59.000000000 -0500 -+++ perl-5.8.7/lib/ExtUtils/MakeMaker.pm 2005-11-08 13:07:36.000000000 -0500 -@@ -1013,7 +1013,7 @@ - The Makefile to be produced may be altered by adding arguments of the - form C. E.g. - -- perl Makefile.PL PREFIX=/tmp/myperl5 -+ perl Makefile.PL PREFIX=~/myperl5 - - Other interesting targets in the generated Makefile are - -@@ -1355,13 +1355,13 @@ - - This is the root directory into which the code will be installed. It - I. For example, if your code --would normally go into /usr/local/lib/perl you could set DESTDIR=/tmp/ --and installation would go into /tmp/usr/local/lib/perl. -+would normally go into /usr/local/lib/perl you could set DESTDIR=~/myperl/ -+and installation would go into ~/myperl/usr/local/lib/perl. - - This is primarily of use for people who repackage Perl modules. - - NOTE: Due to the nature of make, it is important that you put the trailing --slash on your DESTDIR. "/tmp/" not "/tmp". -+slash on your DESTDIR. "~/myperl/" not "~/myperl". - - =item DIR - ---- perl-5.8.7/lib/CGI/Cookie.pm.CAN-2004-0976 2005-05-16 04:41:03.000000000 -0400 -+++ perl-5.8.7/lib/CGI/Cookie.pm 2005-11-08 14:56:15.141710000 -0500 -@@ -407,7 +407,7 @@ - You may also retrieve cookies that were stored in some external - form using the parse() class method: - -- $COOKIES = `cat /usr/tmp/Cookie_stash`; -+ $COOKIES = `cat /var/run/www/Cookie_stash`; - %cookies = parse CGI::Cookie($COOKIES); - - If you are in a mod_perl environment, you can save some overhead by ---- perl-5.8.7/lib/Shell.pm.CAN-2004-0976 2004-06-01 05:42:17.000000000 -0400 -+++ perl-5.8.7/lib/Shell.pm 2005-11-08 15:01:36.434664000 -0500 -@@ -127,7 +127,7 @@ - use Shell qw(cat ps cp); - $passwd = cat('new; diff --git a/perl-5.8.7-CVE-2005-3962-bz174684.patch b/perl-5.8.7-CVE-2005-3962-bz174684.patch deleted file mode 100644 index a886c5f..0000000 --- a/perl-5.8.7-CVE-2005-3962-bz174684.patch +++ /dev/null @@ -1,474 +0,0 @@ ---- perl-5.8.7/t/lib/warnings/sv.CVE-2005-3962-bz174684 2004-03-18 07:51:14.000000000 -0500 -+++ perl-5.8.7/t/lib/warnings/sv 2005-12-14 12:40:55.000000000 -0500 -@@ -301,12 +301,12 @@ - printf F "%\x02" ; - $a = sprintf "%\x02" ; - EXPECT --Invalid conversion in sprintf: "%z" at - line 5. --Invalid conversion in sprintf: end of string at - line 7. --Invalid conversion in sprintf: "%\002" at - line 9. - Invalid conversion in printf: "%z" at - line 4. -+Invalid conversion in sprintf: "%z" at - line 5. - Invalid conversion in printf: end of string at - line 6. -+Invalid conversion in sprintf: end of string at - line 7. - Invalid conversion in printf: "%\002" at - line 8. -+Invalid conversion in sprintf: "%\002" at - line 9. - ######## - # sv.c - use warnings 'misc' ; ---- perl-5.8.7/t/op/sprintf.t.CVE-2005-3962-bz174684 2003-09-01 03:41:07.000000000 -0400 -+++ perl-5.8.7/t/op/sprintf.t 2005-12-14 12:53:09.000000000 -0500 -@@ -385,3 +385,8 @@ - >%4$K %d< >[45, 67]< >%4$K 45 INVALID< - >%d %K %d< >[23, 45]< >23 %K 45 INVALID< - >%*v*999\$d %d %d< >[11, 22, 33]< >%*v*999\$d 11 22 INVALID< -+>%#b< >0< >0< -+>%#o< >0< >0< -+>%#x< >0< >0< -+>%2918905856$v2d< >''< >< -+>%*2918905856$v2d< >''< > UNINIT< ---- perl-5.8.7/t/op/sprintf2.t.CVE-2005-3962-bz174684 2004-02-09 16:37:13.000000000 -0500 -+++ perl-5.8.7/t/op/sprintf2.t 2005-12-14 12:50:39.000000000 -0500 -@@ -6,7 +6,7 @@ - require './test.pl'; - } - --plan tests => 3; -+plan tests => 7 + 256; - - is( - sprintf("%.40g ",0.01), -@@ -26,3 +26,43 @@ - q(width calculation under utf8 upgrade) - ); - } -+ -+# Used to mangle PL_sv_undef -+fresh_perl_is( -+ 'print sprintf "xxx%n\n"; print undef', -+ 'Modification of a read-only value attempted at - line 1.', -+ { switches => [ '-w' ] }, -+ q(%n should not be able to modify read-only constants), -+); -+ -+# check %NNN$ for range bounds, especially negative 2's complement -+{ -+ my ($warn, $bad) = (0,0); -+ local $SIG{__WARN__} = sub { -+ if ($_[0] =~ /uninitialized/) { -+ $warn++ -+ } -+ else { -+ $bad++ -+ } -+ }; -+ my $result = sprintf join('', map("%$_\$s%" . ~$_ . '$s', 1..20)), -+ qw(a b c d); -+ is($result, "abcd", "only four valid values"); -+ is($warn, 36, "expected warnings"); -+ is($bad, 0, "unexpected warnings"); -+} -+{ -+ foreach my $ord (0 .. 255) { -+ my $bad = 0; -+ local $SIG{__WARN__} = sub { -+ unless ($_[0] =~ /^Invalid conversion in sprintf/ || -+ $_[0] =~ /^Use of uninitialized value in sprintf/) { -+ warn $_[0]; -+ $bad++; -+ } -+ }; -+ my $r = eval {sprintf '%v' . chr $ord}; -+ is ($bad, 0, "pattern '%v' . chr $ord"); -+ } -+} ---- perl-5.8.7/opcode.h.CVE-2005-3962-bz174684 2005-05-27 12:29:50.000000000 -0400 -+++ perl-5.8.7/opcode.h 2005-12-14 12:40:55.000000000 -0500 -@@ -1585,7 +1585,7 @@ - 0x0022281c, /* vec */ - 0x0122291c, /* index */ - 0x0122291c, /* rindex */ -- 0x0004280f, /* sprintf */ -+ 0x0004280d, /* sprintf - WAS 0x0004280f before patch #26283 */ - 0x00042805, /* formline */ - 0x0001379e, /* ord */ - 0x0001378e, /* chr */ ---- perl-5.8.7/op.c.CVE-2005-3962-bz174684 2005-04-22 10:12:32.000000000 -0400 -+++ perl-5.8.7/op.c 2005-12-14 12:40:55.000000000 -0500 -@@ -2076,7 +2076,9 @@ - /* XXX might want a ck_negate() for this */ - cUNOPo->op_first->op_private &= ~OPpCONST_STRICT; - break; -- case OP_SPRINTF: -+/* Removed as part of fix for CVE-2005-3962 / Upstream patch 26283 : -+ * case OP_SPRINTF: -+ */ - case OP_UCFIRST: - case OP_LCFIRST: - case OP_UC: ---- perl-5.8.7/makedef.pl.CVE-2005-3962-bz174684 2005-05-09 09:27:41.000000000 -0400 -+++ perl-5.8.7/makedef.pl 2005-12-14 12:40:55.000000000 -0500 -@@ -635,11 +635,13 @@ - )]; - } - --if ($define{'PERL_MALLOC_WRAP'}) { -- emit_symbols [qw( -- PL_memory_wrap -- )]; --} -+# Removed as part of fix for CVE-2005-3962 / CVE-2005-3962 / -+# Upstream patch #26283 -+# if ($define{'PERL_MALLOC_WRAP'}) { -+# emit_symbols [qw( -+# PL_memory_wrap -+# )]; -+#} - - unless ($define{'USE_5005THREADS'} || $define{'USE_ITHREADS'}) { - skip_symbols [qw( ---- perl-5.8.7/ext/Sys/Syslog/Syslog.pm.CVE-2005-3962-bz174684 2005-04-22 07:53:56.000000000 -0400 -+++ perl-5.8.7/ext/Sys/Syslog/Syslog.pm 2005-12-14 12:40:55.000000000 -0500 -@@ -1,14 +1,13 @@ - package Sys::Syslog; - require 5.006; - require Exporter; --require DynaLoader; - use Carp; - use strict; - --our @ISA = qw(Exporter DynaLoader); -+our @ISA = qw(Exporter); - our @EXPORT = qw(openlog closelog setlogmask syslog); - our @EXPORT_OK = qw(setlogsock); --our $VERSION = '0.06'; -+our $VERSION = '0.08'; - - # it would be nice to try stream/unix first, since that will be - # most efficient. However streams are dodgy - see _syslog_send_stream -@@ -54,26 +53,38 @@ - - =item openlog $ident, $logopt, $facility - -+Opens the syslog. - I<$ident> is prepended to every message. I<$logopt> contains zero or - more of the words I, I, I. The cons option is - ignored, since the failover mechanism will drop down to the console - automatically if all other media fail. I<$facility> specifies the - part of the system to report about, for example LOG_USER or LOG_LOCAL0: - see your C documentation for the facilities available in --your system. -+your system. This function will croak if it can't connect to the syslog -+daemon. - - B - -+=item syslog $priority, $message -+ - =item syslog $priority, $format, @args - --If I<$priority> permits, logs I<($format, @args)> --printed as by C, with the addition that I<%m> --is replaced with C<"$!"> (the latest error message). -+If I<$priority> permits, logs I<$message> or I -+with the addition that I<%m> in $message or $format is replaced with -+C<"$!"> (the latest error message). - - If you didn't use openlog() before using syslog(), syslog will try to - guess the I<$ident> by extracting the shortest prefix of I<$format> - that ends in a ":". - -+Note that Sys::Syslog version v0.07 and older passed the $message as -+the formatting string to sprintf() even when no formatting arguments -+were provided. If the code calling syslog() might execute with older -+versions of this module, make sure to call the function as -+syslog($priority, "%s", $message) instead of syslog($priority, -+$message). This protects against hostile formatting sequences that -+might show up if $message contains tainted data. -+ - =item setlogmask $mask_priority - - Sets log mask I<$mask_priority> and returns the old mask. -@@ -175,7 +186,8 @@ - goto &$AUTOLOAD; - } - --bootstrap Sys::Syslog $VERSION; -+require XSLoader; -+XSLoader::load('Sys::Syslog', $VERSION); - - our $maskpri = &LOG_UPTO(&LOG_DEBUG); - -@@ -316,9 +328,16 @@ - - $whoami .= "[$$]" if our $lo_pid; - -- $mask =~ s/(?$whoami: $message\0"; ---- perl-5.8.7/opcode.pl.CVE-2005-3962-bz174684 2004-12-01 08:54:30.000000000 -0500 -+++ perl-5.8.7/opcode.pl 2005-12-14 12:40:55.000000000 -0500 -@@ -606,7 +606,7 @@ - index index ck_index isT@ S S S? - rindex rindex ck_index isT@ S S S? - --sprintf sprintf ck_fun mfst@ S L -+sprintf sprintf ck_fun mst@ S L - formline formline ck_fun ms@ S L - ord ord ck_fun ifsTu% S? - chr chr ck_fun fsTu% S? ---- perl-5.8.7/handy.h.CVE-2005-3962-bz174684 2005-04-20 12:33:28.000000000 -0400 -+++ perl-5.8.7/handy.h 2005-12-14 12:40:55.000000000 -0500 -@@ -598,91 +598,65 @@ - - =cut */ - --#ifndef lint -- - #define NEWSV(x,len) newSV(len) - - #ifdef PERL_MALLOC_WRAP - #define MEM_WRAP_CHECK(n,t) \ -- (void)((n)>((MEM_SIZE)~0)/sizeof(t)?(Perl_croak_nocontext(PL_memory_wrap),0):0) -+ (void)((sizeof(t)>1?(n):1)>((MEM_SIZE)~0)/sizeof(t)?(Perl_croak_nocontext(PL_memory_wrap),0):0) - #define MEM_WRAP_CHECK_1(n,t,a) \ -- (void)((n)>((MEM_SIZE)~0)/sizeof(t)?(Perl_croak_nocontext(a),0):0) -+ (void)((sizeof(t)>1?(n):1)>((MEM_SIZE)~0)/sizeof(t)?(Perl_croak_nocontext(a),0):0) - #define MEM_WRAP_CHECK_2(n,t,a,b) \ -- (void)((n)>((MEM_SIZE)~0)/sizeof(t)?(Perl_croak_nocontext(a,b),0):0) -+ (void)((sizeof(t)>1?(n):1)>((MEM_SIZE)~0)/sizeof(t)?(Perl_croak_nocontext(a,b),0):0) -+#define MEM_WRAP_CHECK_(n,t) MEM_WRAP_CHECK(n,t), - --#define New(x,v,n,t) (v = (MEM_WRAP_CHECK(n,t), (t*)safemalloc((MEM_SIZE)((n)*sizeof(t))))) --#define Newc(x,v,n,t,c) (v = (MEM_WRAP_CHECK(n,t), (c*)safemalloc((MEM_SIZE)((n)*sizeof(t))))) --#define Newz(x,v,n,t) (v = (MEM_WRAP_CHECK(n,t), (t*)safemalloc((MEM_SIZE)((n)*sizeof(t))))), \ -- memzero((char*)(v), (n)*sizeof(t)) --#define Renew(v,n,t) \ -- (v = (MEM_WRAP_CHECK(n,t), (t*)saferealloc((Malloc_t)(v),(MEM_SIZE)((n)*sizeof(t))))) --#define Renewc(v,n,t,c) \ -- (v = (MEM_WRAP_CHECK(n,t), (c*)saferealloc((Malloc_t)(v),(MEM_SIZE)((n)*sizeof(t))))) --#define Safefree(d) safefree((Malloc_t)(d)) -- --#define Move(s,d,n,t) (MEM_WRAP_CHECK(n,t), (void)memmove((char*)(d),(char*)(s), (n) * sizeof(t))) --#define Copy(s,d,n,t) (MEM_WRAP_CHECK(n,t), (void)memcpy((char*)(d),(char*)(s), (n) * sizeof(t))) --#define Zero(d,n,t) (MEM_WRAP_CHECK(n,t), (void)memzero((char*)(d), (n) * sizeof(t))) -- --#define MoveD(s,d,n,t) (MEM_WRAP_CHECK(n,t), memmove((char*)(d),(char*)(s), (n) * sizeof(t))) --#define CopyD(s,d,n,t) (MEM_WRAP_CHECK(n,t), memcpy((char*)(d),(char*)(s), (n) * sizeof(t))) --#ifdef HAS_MEMSET --#define ZeroD(d,n,t) (MEM_WRAP_CHECK(n,t), memzero((char*)(d), (n) * sizeof(t))) --#else --/* Using bzero(), which returns void. */ --#define ZeroD(d,n,t) (MEM_WRAP_CHECK(n,t), memzero((char*)(d), (n) * sizeof(t)),d) --#endif -- --#define Poison(d,n,t) (MEM_WRAP_CHECK(n,t), (void)memset((char*)(d), 0xAB, (n) * sizeof(t))) -+#define PERL_STRLEN_ROUNDUP(n) ((void)(((n) > (MEM_SIZE)~0 - 2 * PERL_STRLEN_ROUNDUP_QUANTUM) ? (Perl_croak_nocontext(PL_memory_wrap),0):0),((n-1+PERL_STRLEN_ROUNDUP_QUANTUM)&~((MEM_SIZE)PERL_STRLEN_ROUNDUP_QUANTUM-1))) - - #else - - #define MEM_WRAP_CHECK(n,t) - #define MEM_WRAP_CHECK_1(n,t,a) - #define MEM_WRAP_CHECK_2(n,t,a,b) -+#define MEM_WRAP_CHECK_(n,t) -+ -+#define PERL_STRLEN_ROUNDUP(n) (((n-1+PERL_STRLEN_ROUNDUP_QUANTUM)&~((MEM_SIZE)PERL_STRLEN_ROUNDUP_QUANTUM-1))) - --#define New(x,v,n,t) (v = (t*)safemalloc((MEM_SIZE)((n)*sizeof(t)))) --#define Newc(x,v,n,t,c) (v = (c*)safemalloc((MEM_SIZE)((n)*sizeof(t)))) --#define Newz(x,v,n,t) (v = (t*)safemalloc((MEM_SIZE)((n)*sizeof(t)))), \ -+#endif -+ -+#define Newx(v,n,t) (v = (MEM_WRAP_CHECK_(n,t) (t*)safemalloc((MEM_SIZE)((n)*sizeof(t))))) -+#define Newxc(v,n,t,c) (v = (MEM_WRAP_CHECK_(n,t) (c*)safemalloc((MEM_SIZE)((n)*sizeof(t))))) -+#define Newxz(v,n,t) (v = (MEM_WRAP_CHECK_(n,t) (t*)safemalloc((MEM_SIZE)((n)*sizeof(t))))), \ - memzero((char*)(v), (n)*sizeof(t)) -+/* pre 5.9.x compatibility */ -+#define New(x,v,n,t) Newx(v,n,t) -+#define Newc(x,v,n,t,c) Newxc(v,n,t,c) -+#define Newz(x,v,n,t) Newxz(v,n,t) -+ - #define Renew(v,n,t) \ -- (v = (t*)saferealloc((Malloc_t)(v),(MEM_SIZE)((n)*sizeof(t)))) -+ (v = (MEM_WRAP_CHECK_(n,t) (t*)saferealloc((Malloc_t)(v),(MEM_SIZE)((n)*sizeof(t))))) - #define Renewc(v,n,t,c) \ -- (v = (c*)saferealloc((Malloc_t)(v),(MEM_SIZE)((n)*sizeof(t)))) --#define Safefree(d) safefree((Malloc_t)(d)) -- --#define Move(s,d,n,t) (void)memmove((char*)(d),(char*)(s), (n) * sizeof(t)) --#define Copy(s,d,n,t) (void)memcpy((char*)(d),(char*)(s), (n) * sizeof(t)) --#define Zero(d,n,t) (void)memzero((char*)(d), (n) * sizeof(t)) -+ (v = (MEM_WRAP_CHECK_(n,t) (c*)saferealloc((Malloc_t)(v),(MEM_SIZE)((n)*sizeof(t))))) - --#define MoveD(s,d,n,t) memmove((char*)(d),(char*)(s), (n) * sizeof(t)) --#define CopyD(s,d,n,t) memcpy((char*)(d),(char*)(s), (n) * sizeof(t)) --#ifdef HAS_MEMSET --#define ZeroD(d,n,t) memzero((char*)(d), (n) * sizeof(t)) -+#ifdef PERL_POISON -+#define Safefree(d) \ -+ (d ? (void)(safefree((Malloc_t)(d)), Poison(&(d), 1, Malloc_t)) : (void) 0) - #else --#define ZeroD(d,n,t) ((void)memzero((char*)(d), (n) * sizeof(t)),d) -+#define Safefree(d) safefree((Malloc_t)(d)) - #endif - --#define Poison(d,n,t) (void)memset((char*)(d), 0xAB, (n) * sizeof(t)) -+#define Move(s,d,n,t) (MEM_WRAP_CHECK_(n,t) (void)memmove((char*)(d),(const char*)(s), (n) * sizeof(t))) -+#define Copy(s,d,n,t) (MEM_WRAP_CHECK_(n,t) (void)memcpy((char*)(d),(const char*)(s), (n) * sizeof(t))) -+#define Zero(d,n,t) (MEM_WRAP_CHECK_(n,t) (void)memzero((char*)(d), (n) * sizeof(t))) - -+#define MoveD(s,d,n,t) (MEM_WRAP_CHECK_(n,t) memmove((char*)(d),(const char*)(s), (n) * sizeof(t))) -+#define CopyD(s,d,n,t) (MEM_WRAP_CHECK_(n,t) memcpy((char*)(d),(const char*)(s), (n) * sizeof(t))) -+#ifdef HAS_MEMSET -+#define ZeroD(d,n,t) (MEM_WRAP_CHECK_(n,t) memzero((char*)(d), (n) * sizeof(t))) -+#else -+/* Using bzero(), which returns void. */ -+#define ZeroD(d,n,t) (MEM_WRAP_CHECK_(n,t) memzero((char*)(d), (n) * sizeof(t)),d) - #endif - --#else /* lint */ -- --#define New(x,v,n,s) (v = Null(s *)) --#define Newc(x,v,n,s,c) (v = Null(s *)) --#define Newz(x,v,n,s) (v = Null(s *)) --#define Renew(v,n,s) (v = Null(s *)) --#define Move(s,d,n,t) --#define Copy(s,d,n,t) --#define Zero(d,n,t) --#define MoveD(s,d,n,t) d --#define CopyD(s,d,n,t) d --#define ZeroD(d,n,t) d --#define Poison(d,n,t) --#define Safefree(d) (d) = (d) -- --#endif /* lint */ -+#define Poison(d,n,t) (MEM_WRAP_CHECK_(n,t) (void)memset((char*)(d), 0xAB, (n) * sizeof(t))) - - #ifdef USE_STRUCT_COPY - #define StructCopy(s,d,t) (*((t*)(d)) = *((t*)(s))) ---- perl-5.8.7/perl.h.CVE-2005-3962-bz174684 2005-12-14 12:40:55.000000000 -0500 -+++ perl-5.8.7/perl.h 2005-12-14 12:40:55.000000000 -0500 -@@ -720,6 +720,13 @@ - - #define MEM_SIZE Size_t - -+/* Round all values passed to malloc up, by default to a multiple of -+ sizeof(size_t) -+*/ -+#ifndef PERL_STRLEN_ROUNDUP_QUANTUM -+#define PERL_STRLEN_ROUNDUP_QUANTUM Size_t_size -+#endif -+ - #if defined(STANDARD_C) && defined(I_STDDEF) - # include - # define STRUCT_OFFSET(s,m) offsetof(s,m) -@@ -3332,10 +3339,8 @@ - INIT("\"my\" variable %s can't be in a package"); - EXTCONST char PL_no_localize_ref[] - INIT("Can't localize through a reference"); --#ifdef PERL_MALLOC_WRAP - EXTCONST char PL_memory_wrap[] - INIT("panic: memory wrap"); --#endif - - EXTCONST char PL_uuemap[65] - INIT("`!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"); ---- perl-5.8.7/sv.c.CVE-2005-3962-bz174684 2005-05-27 06:38:11.000000000 -0400 -+++ perl-5.8.7/sv.c 2005-12-14 12:48:45.000000000 -0500 -@@ -8589,9 +8589,12 @@ - if (vectorarg) { - if (args) - vecsv = va_arg(*args, SV*); -- else -- vecsv = (evix ? evix <= svmax : svix < svmax) ? -- svargs[evix ? evix-1 : svix++] : &PL_sv_undef; -+ else if (evix) { -+ vecsv = (evix > 0 && evix <= svmax) -+ ? svargs[evix-1] : &PL_sv_undef; -+ } else { -+ vecsv = svix < svmax ? svargs[svix++] : &PL_sv_undef; -+ } - dotstr = SvPVx(vecsv, dotstrlen); - if (DO_UTF8(vecsv)) - is_utf8 = TRUE; -@@ -8601,12 +8604,13 @@ - vecstr = (U8*)SvPVx(vecsv,veclen); - vec_utf8 = DO_UTF8(vecsv); - } -- else if (efix ? efix <= svmax : svix < svmax) { -+ else if (efix ? (efix > 0 && efix <= svmax) : svix < svmax) { - vecsv = svargs[efix ? efix-1 : svix++]; - vecstr = (U8*)SvPVx(vecsv,veclen); - vec_utf8 = DO_UTF8(vecsv); - } - else { -+ vecsv = &PL_sv_undef; - vecstr = (U8*)""; - veclen = 0; - } -@@ -8707,9 +8711,15 @@ - - if (vectorize) - argsv = vecsv; -- else if (!args) -- argsv = (efix ? efix <= svmax : svix < svmax) ? -- svargs[efix ? efix-1 : svix++] : &PL_sv_undef; -+ else if (!args) { -+ if (efix) { -+ const I32 i = efix-1; -+ argsv = (i >= 0 && i < svmax) ? svargs[i] : &PL_sv_undef; -+ } else { -+ argsv = (svix >= 0 && svix < svmax) -+ ? svargs[svix++] : &PL_sv_undef; -+ } -+ } - - switch (c = *q++) { - -@@ -8972,6 +8982,8 @@ - *--eptr = '0'; - break; - case 2: -+ if (!uv) -+ alt = FALSE; - do { - dig = uv & 1; - *--eptr = '0' + dig; -@@ -9274,6 +9286,8 @@ - - /* calculate width before utf8_upgrade changes it */ - have = esignlen + zeros + elen; -+ if (have < zeros) -+ Perl_croak_nocontext(PL_memory_wrap); - - if (is_utf8 != has_utf8) { - if (is_utf8) { -@@ -9301,6 +9315,9 @@ - need = (have > width ? have : width); - gap = need - have; - -+ if (need >= (((STRLEN)~0) - SvCUR(sv) - dotstrlen - 1)) -+ Perl_croak_nocontext(PL_memory_wrap); -+ - SvGROW(sv, SvCUR(sv) + need + dotstrlen + 1); - p = SvEND(sv); - if (esignlen && fill == '0') { ---- perl-5.8.7/globvar.sym.CVE-2005-3962-bz174684 2000-08-14 11:22:14.000000000 -0400 -+++ perl-5.8.7/globvar.sym 2005-12-14 12:51:12.000000000 -0500 -@@ -66,3 +66,4 @@ - vtbl_collxfrm - vtbl_amagic - vtbl_amagicelem -+memory_wrap diff --git a/perl-5.8.7-IOC_SIZE.patch b/perl-5.8.7-IOC_SIZE.patch deleted file mode 100644 index 145d244..0000000 --- a/perl-5.8.7-IOC_SIZE.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- perl-5.8.7/perl.h.IOC_SIZE 2005-05-07 16:11:45.000000000 -0400 -+++ perl-5.8.7/perl.h 2005-10-25 16:56:10.000000000 -0400 -@@ -2508,11 +2508,17 @@ - - #ifndef IOCPARM_LEN - # ifdef IOCPARM_MASK -- /* on BSDish systes we're safe */ -+ /* on BSDish systems we're safe */ - # define IOCPARM_LEN(x) (((x) >> 16) & IOCPARM_MASK) - # else -- /* otherwise guess at what's safe */ --# define IOCPARM_LEN(x) 256 -+# ifdef _IOC_SIZE -+ /* on Linux systems we're safe */ -+# define IOCPARM_LEN(x) _IOC_SIZE(x) -+# else -+ /* otherwise guess at what's safe (we're UNSAFE!) */ -+# warning "unsafe assumption of IOCPARM_LEN=256" -+# define IOCPARM_LEN(x) 256 -+# endif - # endif - #endif - diff --git a/perl-5.8.7-MM_Unix-rpath-136009.patch b/perl-5.8.7-MM_Unix-rpath-136009.patch deleted file mode 100644 index c0c0989..0000000 --- a/perl-5.8.7-MM_Unix-rpath-136009.patch +++ /dev/null @@ -1,38 +0,0 @@ ---- perl-5.8.7/lib/ExtUtils/MM_Unix.pm.136009 2005-11-08 20:08:30.000000000 -0500 -+++ perl-5.8.7/lib/ExtUtils/MM_Unix.pm 2005-11-09 12:54:41.000000000 -0500 -@@ -413,11 +413,18 @@ - }; - my($tmp); - for $tmp (qw/ -- EXTRALIBS LDLOADLIBS BSLOADLIBS LD_RUN_PATH -+ EXTRALIBS LDLOADLIBS BSLOADLIBS - /) { - next unless defined $self->{$tmp}; - push @m, "$tmp = $self->{$tmp}\n"; - } -+ # don't set LD_RUN_PATH if empty -+ for $tmp (qw/ -+ LD_RUN_PATH -+ /) { -+ next unless $self->{$tmp}; -+ push @m, "$tmp = $self->{$tmp}\n"; -+ } - return join "", @m; - } - -@@ -1134,9 +1141,13 @@ - } - } - -+ my $ld_run_path_shell = ""; -+ if ($self->{LD_RUN_PATH} ne "") { -+ $ld_run_path_shell = 'LD_RUN_PATH="$(LD_RUN_PATH)" '; -+ } - push(@m, --' $(LD) '.$ldrun.' $(LDDLFLAGS) '.$ldfrom. --' $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) $(PERL_ARCHIVE) '.$libs.' $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) $(INST_DYNAMIC_FIX)'); -+ ' '.$ld_run_path_shell.'$(LD) '.$ldrun.' $(LDDLFLAGS) '.$ldfrom. -+ ' $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) $(PERL_ARCHIVE) '.$libs.' $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) $(INST_DYNAMIC_FIX)'); - push @m, ' - $(CHMOD) $(PERM_RWX) $@ - '; diff --git a/perl-5.8.7-USE_MM_LD_RUN_PATH.patch b/perl-5.8.7-USE_MM_LD_RUN_PATH.patch deleted file mode 100644 index 9a434ac..0000000 --- a/perl-5.8.7-USE_MM_LD_RUN_PATH.patch +++ /dev/null @@ -1,115 +0,0 @@ ---- perl-5.8.7/lib/ExtUtils/MakeMaker.pm.USE_MM_LD_RUN_PATH 2005-12-08 15:10:24.000000000 -0500 -+++ perl-5.8.7/lib/ExtUtils/MakeMaker.pm 2005-12-08 19:36:26.000000000 -0500 -@@ -226,7 +226,7 @@ - PERL_SRC PERM_RW PERM_RWX - PL_FILES PM PM_FILTER PMLIBDIRS POLLUTE PPM_INSTALL_EXEC - PPM_INSTALL_SCRIPT PREREQ_FATAL PREREQ_PM PREREQ_PRINT PRINT_PREREQ -- SKIP TYPEMAPS VERSION VERSION_FROM XS XSOPT XSPROTOARG -+ SKIP TYPEMAPS USE_MM_LD_RUN_PATH VERSION VERSION_FROM XS XSOPT XSPROTOARG - XS_VERSION clean depend dist dynamic_lib linkext macro realclean - tool_autosplit - -@@ -362,7 +362,27 @@ - print join(" ", map { "perl($_)>=$self->{PREREQ_PM}->{$_} " } - sort keys %{$self->{PREREQ_PM}}), "\n"; - exit 0; -- } -+ } -+ -+ # USE_MM_LD_RUN_PATH - another RedHatism to disable automatic RPATH generation -+ if ( ( ! $self->{USE_MM_LD_RUN_PATH} ) -+ &&( ("@ARGV" =~ /\bUSE_MM_LD_RUN_PATH(=([01]))?\b/) -+ ||( exists( $ENV{USE_MM_LD_RUN_PATH} ) -+ &&( $ENV{USE_MM_LD_RUN_PATH} =~ /([01])?$/ ) -+ ) -+ ) -+ ) -+ { -+ my $v = $1; -+ if( $v ) -+ { -+ $v = ($v=~/=([01])$/)[0]; -+ }else -+ { -+ $v = 1; -+ }; -+ $self->{USE_MM_LD_RUN_PATH}=$v; -+ } - - print STDOUT "MakeMaker (v$VERSION)\n" if $Verbose; - if (-f "MANIFEST" && ! -f "Makefile"){ -@@ -2007,6 +2027,40 @@ - precedence, even if it isn't listed in TYPEMAPS. The default system - typemap has lowest precedence. - -+=item USE_MM_LD_RUN_PATH -+ -+boolean -+The Red Hat perl MakeMaker distribution differs from the standard -+upstream release in that it disables use of the MakeMaker generated -+LD_RUN_PATH by default, UNLESS this attribute is specified , or the -+USE_MM_LD_RUN_PATH environment variable is set during the MakeMaker run. -+ -+The upstream MakeMaker will set the ld(1) environment variable LD_RUN_PATH -+to the concatenation of every -L ld(1) option directory in which a -l ld(1) -+option library is found, which is used as the ld(1) -rpath option if none -+is specified. This means that, if your application builds shared libraries -+and your MakeMaker application links to them, that the absolute paths of the -+libraries in the build tree will be inserted into the RPATH header of all -+MakeMaker generated binaries, and that such binaries will be unable to link -+to these libraries if they do not still reside in the build tree directories -+(unlikely) or in the system library directories (/lib or /usr/lib), regardless -+of any LD_LIBRARY_PATH setting. So if you specified -L../mylib -lmylib , and -+ your 'libmylib.so' gets installed into /some_directory_other_than_usr_lib, -+ your MakeMaker application will be unable to link to it, even if LD_LIBRARY_PATH -+is set to include /some_directory_other_than_usr_lib, because RPATH overrides -+LD_LIBRARY_PATH. -+ -+So for Red Hat MakeMaker builds LD_RUN_PATH is NOT generated by default for -+every link. You can still use explicit -rpath ld options or the LD_RUN_PATH -+environment variable during the build to generate an RPATH for the binaries. -+ -+You can set the USE_MM_LD_RUN_PATH attribute to 1 on the MakeMaker command -+line or in the WriteMakefile arguments to enable generation of LD_RUN_PATH -+for every link command. -+ -+USE_MM_LD_RUN_PATH will default to 1 (LD_RUN_PATH will be used) IF the -+$USE_MM_LD_RUN_PATH environment variable is set during a MakeMaker run. -+ - =item VENDORPREFIX - - Like PERLPREFIX, but only for the vendor install locations. ---- perl-5.8.7/lib/ExtUtils/MM_Unix.pm.USE_MM_LD_RUN_PATH 2005-12-08 15:10:24.000000000 -0500 -+++ perl-5.8.7/lib/ExtUtils/MM_Unix.pm 2005-12-08 18:35:13.000000000 -0500 -@@ -1142,7 +1142,7 @@ - } - - my $ld_run_path_shell = ""; -- if ($self->{LD_RUN_PATH} ne "") { -+ if (($self->{LD_RUN_PATH} ne "") && ($self->{USE_MM_LD_RUN_PATH})) { - $ld_run_path_shell = 'LD_RUN_PATH="$(LD_RUN_PATH)" '; - } - push(@m, ---- perl-5.8.7/lib/ExtUtils/Liblist.pm.USE_MM_LD_RUN_PATH 2003-04-07 14:58:17.000000000 -0400 -+++ perl-5.8.7/lib/ExtUtils/Liblist.pm 2005-12-08 19:39:28.000000000 -0500 -@@ -51,6 +51,8 @@ - specifics below. The list of the filenames is returned only if - $need_names argument is true. - -+NOTE: if the LD_RUN_PATH me -+ - Dependent libraries can be linked in one of three ways: - - =over 2 -@@ -87,6 +89,11 @@ - in LDLOADLIBS. It is passed as an environment variable to the process - that links the shared library. - -+Red Hat extension: This generation of LD_RUN_PATH is disabled by default. -+To use the generated LD_RUN_PATH for all links, set the USE_MM_LD_RUN_PATH -+MakeMaker object attribute / argument, (or set the $USE_MM_LD_RUN_PATH -+environment variable). -+ - =head2 BSLOADLIBS - - List of those libraries that are needed but can be linked in diff --git a/perl-5.8.7-bz172236.patch b/perl-5.8.7-bz172236.patch deleted file mode 100644 index bcc4e8a..0000000 --- a/perl-5.8.7-bz172236.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- perl-5.8.7/utils/h2ph.PL.bz172236 2005-04-04 17:47:17.000000000 -0400 -+++ perl-5.8.7/utils/h2ph.PL 2005-11-01 17:42:36.000000000 -0500 -@@ -734,9 +734,15 @@ - # non-GCC?) C compilers, but gcc uses an additional include directory. - sub inc_dirs - { -- my $from_gcc = `$Config{cc} -v 2>&1`; -- $from_gcc =~ s:^Reading specs from (.*?)/specs\b.*:$1/include:s; -- -+ my $from_gcc = `LC_ALL=C $Config{cc} -v 2>&1`; -+ if( !( $from_gcc =~ s:^Reading specs from (.*?)/specs\b.*:$1/include:s ) ) -+ { # gcc-4+ : -+ $from_gcc = `LC_ALL=C $Config{cc} -print-search-dirs 2>&1`; -+ if ( !($from_gcc =~ s/^install:\s*([^\s]+[^\s\/])([\s\/]*).*$/$1\/include/s) ) -+ { -+ $from_gcc = ''; -+ }; -+ }; - length($from_gcc) ? ($from_gcc, $Config{usrinc}) : ($Config{usrinc}); - } - diff --git a/perl-5.8.7-bz172587.patch b/perl-5.8.7-bz172587.patch deleted file mode 100644 index 01b0d16..0000000 --- a/perl-5.8.7-bz172587.patch +++ /dev/null @@ -1,114 +0,0 @@ ---- perl-5.8.7/pp_sort.c.bz172587 2005-04-08 05:31:47.000000000 -0400 -+++ perl-5.8.7/pp_sort.c 2005-11-07 12:57:07.000000000 -0500 -@@ -1510,6 +1510,7 @@ - - if (gimme != G_ARRAY) { - SP = MARK; -+ EXTEND(SP,1); - RETPUSHUNDEF; - } - ---- perl-5.8.7/pp_hot.c.bz172587 2005-04-22 10:12:27.000000000 -0400 -+++ perl-5.8.7/pp_hot.c 2005-11-07 12:55:16.000000000 -0500 -@@ -639,12 +639,12 @@ - } - } - SP = ORIGMARK; -- PUSHs(&PL_sv_yes); -+ XPUSHs(&PL_sv_yes); - RETURN; - - just_say_no: - SP = ORIGMARK; -- PUSHs(&PL_sv_undef); -+ XPUSHs(&PL_sv_undef); - RETURN; - } - ---- perl-5.8.7/pp_sys.c.bz172587 2005-04-27 18:12:46.000000000 -0400 -+++ perl-5.8.7/pp_sys.c 2005-11-07 13:03:39.000000000 -0500 -@@ -429,13 +429,16 @@ - SV *tmpsv; - char *tmps; - STRLEN len; -- if (SP - MARK != 1) { -+ if (SP - MARK > 1) { - dTARGET; - do_join(TARG, &PL_sv_no, MARK, SP); - tmpsv = TARG; - SP = MARK + 1; -- } -- else { -+ } -+ else if (SP == MARK ) { -+ tmpsv = &PL_sv_no; -+ EXTEND(SP, 1); -+ } else { - tmpsv = TOPs; - } - tmps = SvPV(tmpsv, len); -@@ -3517,7 +3520,7 @@ - I32 value = (I32)apply(PL_op->op_type, MARK, SP); - - SP = MARK; -- PUSHi(value); -+ XPUSHi(value); - RETURN; - #else - DIE(aTHX_ PL_no_func, "chown"); -@@ -4127,7 +4130,7 @@ - if (errno != EAGAIN) { - value = -1; - SP = ORIGMARK; -- PUSHi(value); -+ XPUSHi(value); - if (did_pipes) { - PerlLIO_close(pp[0]); - PerlLIO_close(pp[1]); -@@ -4176,7 +4179,7 @@ - STATUS_CURRENT = -1; - } - } -- PUSHi(STATUS_CURRENT); -+ XPUSHi(STATUS_CURRENT); - RETURN; - } - if (did_pipes) { -@@ -4222,7 +4225,7 @@ - STATUS_NATIVE_SET(value); - do_execfree(); - SP = ORIGMARK; -- PUSHi(result ? value : STATUS_CURRENT); -+ XPUSHi(result ? value : STATUS_CURRENT); - #endif /* !FORK or VMS */ - RETURN; - } -@@ -4275,7 +4278,7 @@ - } - - SP = ORIGMARK; -- PUSHi(value); -+ XPUSHi(value); - RETURN; - } - ---- perl-5.8.7/pp.c.bz172587 2005-05-16 11:30:13.000000000 -0400 -+++ perl-5.8.7/pp.c 2005-11-07 12:56:32.000000000 -0500 -@@ -721,7 +721,7 @@ - while (MARK < SP) - do_chop(TARG, *++MARK); - SP = ORIGMARK; -- PUSHTARG; -+ XPUSHTARG; - RETURN; - } - -@@ -739,7 +739,7 @@ - - while (SP > MARK) - count += do_chomp(POPs); -- PUSHi(count); -+ XPUSHi(count); - RETURN; - } - diff --git a/perl-5.8.7-bz172739_obz36521.patch b/perl-5.8.7-bz172739_obz36521.patch deleted file mode 100644 index 648d09e..0000000 --- a/perl-5.8.7-bz172739_obz36521.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.7/util.c.25160 2005-05-30 08:44:15.000000000 -0400 -+++ perl-5.8.7/util.c 2005-11-08 18:58:36.000000000 -0500 -@@ -1290,6 +1290,8 @@ - SV *msg; - - ENTER; -+ SAVESPTR(PL_warnhook); -+ PL_warnhook = Nullsv; - save_re_context(); - msg = newSVpvn(message, msglen); - SvFLAGS(msg) |= utf8; diff --git a/perl-5.8.7-incpush.patch b/perl-5.8.7-incpush.patch deleted file mode 100644 index 647f994..0000000 --- a/perl-5.8.7-incpush.patch +++ /dev/null @@ -1,63 +0,0 @@ ---- perl-5.8.7/perl.c.orig 2005-04-22 17:14:27.000000000 +0300 -+++ perl-5.8.7/perl.c 2005-06-17 22:31:31.000000000 +0300 -@@ -109,6 +109,7 @@ - #endif - - static I32 read_e_script(pTHX_ int idx, SV *buf_sv, int maxlen); -+STATIC void incpush_oldversion(pTHX_ char *dir); - - #ifdef IAMSUID - #ifndef DOSUID -@@ -4435,6 +4436,7 @@ - * DLL-based path intuition to work correctly */ - # if !defined(WIN32) - incpush(SITEARCH_EXP, FALSE, FALSE, TRUE); -+ incpush_oldversion(aTHX_ SITEARCH_EXP); - # endif - #endif - -@@ -4456,6 +4458,7 @@ - * DLL-based path intuition to work correctly */ - # if !defined(WIN32) - incpush(PERL_VENDORARCH_EXP, FALSE, FALSE, TRUE); -+ incpush_oldversion(aTHX_ PERL_VENDORARCH_EXP); - # endif - #endif - -@@ -4497,6 +4500,36 @@ - # define PERLLIB_MANGLE(s,n) (s) - #endif - -+#define VERSION_DIRECTORY_STRING "/5.8.7" -+STATIC void -+incpush_oldversion(pTHX_ char *dir) -+{ -+#ifdef PERL_INC_VERSION_LIST -+ const char *incverlist[] = { PERL_INC_VERSION_LIST }; -+ const char **incver; -+ const char *verdir; -+ -+ verdir = strstr(dir, VERSION_DIRECTORY_STRING); -+ if (!verdir) -+ return; -+ -+ for (incver = incverlist; *incver; incver++) { -+ char *new_dir = malloc(strlen(dir) + strlen(*incver) + 2); -+ char *p = new_dir; -+ -+ strcpy(new_dir, dir); -+ p += verdir - dir + 1; /* advance to char following '/' in VERSION_DIRECTORY_STRING */ -+ memcpy(p, *incver, strlen(*incver)); /* copy incver there instead */ -+ p += strlen(*incver); /* advance past version we just copied */ -+ strcpy(p, verdir + strlen(VERSION_DIRECTORY_STRING)); /* and copy the rest of the original dir */ -+ -+ incpush(new_dir, FALSE, FALSE, FALSE); -+ free(new_dir); -+ } -+#endif -+} -+ -+ - /* Push a directory onto @INC if it exists. - Generate a new SV if we do this, to save needing to copy the SV we push - onto @INC */ diff --git a/perl-5.8.7-no-debugging.patch b/perl-5.8.7-no-debugging.patch deleted file mode 100644 index d3ab2c6..0000000 --- a/perl-5.8.7-no-debugging.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- perl-5.8.7/Configure.orig 2005-08-28 18:48:03.000000000 -0400 -+++ perl-5.8.7/Configure 2005-08-28 18:49:28.000000000 -0400 -@@ -4707,9 +4707,6 @@ - case "$gccversion" in - 1*) dflt='-fpcc-struct-return' ;; - esac -- case "$optimize" in -- *-g*) dflt="$dflt -DDEBUGGING";; -- esac - case "$gccversion" in - 2*) if test -d /etc/conf/kconfig.d && - $contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1 diff --git a/perl-5.8.8-CAN-2004-0976.patch b/perl-5.8.8-CAN-2004-0976.patch deleted file mode 100644 index 33cdea9..0000000 --- a/perl-5.8.8-CAN-2004-0976.patch +++ /dev/null @@ -1,122 +0,0 @@ ---- perl-5.8.8-RC1/utils/c2ph.PL.CAN-2004-0976 2004-10-19 15:45:42.000000000 -0400 -+++ perl-5.8.8-RC1/utils/c2ph.PL 2006-01-20 15:51:09.000000000 -0500 -@@ -1320,7 +1320,7 @@ - $intrinsics{$_[1]} = $template{$_[0]}; - } - close(PIPE) || die "couldn't read intrinsics!"; -- unlink($TMP, '$SAFEDIR/a.out'); -+ unlink($TMP, "$SAFEDIR/a.out"); - print STDERR "done\n" if $trace; - } - ---- perl-5.8.8-RC1/lib/CGI/Cookie.pm.CAN-2004-0976 2006-01-08 11:39:14.000000000 -0500 -+++ perl-5.8.8-RC1/lib/CGI/Cookie.pm 2006-01-20 15:51:09.000000000 -0500 -@@ -407,7 +407,7 @@ - You may also retrieve cookies that were stored in some external - form using the parse() class method: - -- $COOKIES = `cat /usr/tmp/Cookie_stash`; -+ $COOKIES = `cat /var/run/www/Cookie_stash`; - %cookies = parse CGI::Cookie($COOKIES); - - If you are in a mod_perl environment, you can save some overhead by ---- perl-5.8.8-RC1/lib/Memoize/t/tie_storable.t.CAN-2004-0976 2002-07-12 15:56:19.000000000 -0400 -+++ perl-5.8.8-RC1/lib/Memoize/t/tie_storable.t 2006-01-20 15:51:09.000000000 -0500 -@@ -33,14 +33,7 @@ - - print "1..4\n"; - -- --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import(); --} else { -- *catfile = sub { join '/', @_ }; --} --$tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --$file = catfile($tmpdir, "storable$$"); -+$file = "storable$$"; - 1 while unlink $file; - tryout('Memoize::Storable', $file, 1); # Test 1..4 - 1 while unlink $file; ---- perl-5.8.8-RC1/lib/Memoize/t/tie_ndbm.t.CAN-2004-0976 2005-04-22 07:36:58.000000000 -0400 -+++ perl-5.8.8-RC1/lib/Memoize/t/tie_ndbm.t 2006-01-20 15:51:09.000000000 -0500 -@@ -28,14 +28,7 @@ - - print "1..4\n"; - -- --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import(); --} else { -- *catfile = sub { join '/', @_ }; --} --$tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --$file = catfile($tmpdir, "md$$"); -+$file = "md$$"; - 1 while unlink $file, "$file.dir", "$file.pag", "$file.db"; - tryout('Memoize::NDBM_File', $file, 1); # Test 1..4 - 1 while unlink $file, "$file.dir", "$file.pag", "$file.db"; ---- perl-5.8.8-RC1/lib/Memoize/t/tie.t.CAN-2004-0976 2002-07-12 15:56:19.000000000 -0400 -+++ perl-5.8.8-RC1/lib/Memoize/t/tie.t 2006-01-20 15:51:09.000000000 -0500 -@@ -29,14 +29,7 @@ - $_[0]+1; - } - --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import('tmpdir', 'catfile'); -- $tmpdir = tmpdir(); --} else { -- *catfile = sub { join '/', @_ }; -- $tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --} --$file = catfile($tmpdir, "md$$"); -+$file = "md$$"; - @files = ($file, "$file.db", "$file.dir", "$file.pag"); - 1 while unlink @files; - ---- perl-5.8.8-RC1/lib/Memoize/t/tie_sdbm.t.CAN-2004-0976 2002-07-12 15:56:19.000000000 -0400 -+++ perl-5.8.8-RC1/lib/Memoize/t/tie_sdbm.t 2006-01-20 15:51:09.000000000 -0500 -@@ -28,14 +28,7 @@ - - print "1..4\n"; - --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import('tmpdir', 'catfile'); -- $tmpdir = tmpdir(); --} else { -- *catfile = sub { join '/', @_ }; -- $tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --} --$file = catfile($tmpdir, "md$$"); -+$file = "md$$"; - 1 while unlink $file, "$file.dir", "$file.pag"; - tryout('Memoize::SDBM_File', $file, 1); # Test 1..4 - 1 while unlink $file, "$file.dir", "$file.pag"; ---- perl-5.8.8-RC1/lib/Memoize/t/tie_gdbm.t.CAN-2004-0976 2002-07-12 15:56:19.000000000 -0400 -+++ perl-5.8.8-RC1/lib/Memoize/t/tie_gdbm.t 2006-01-20 15:51:09.000000000 -0500 -@@ -26,13 +26,7 @@ - - print "1..4\n"; - --if (eval {require File::Spec::Functions}) { -- File::Spec::Functions->import(); --} else { -- *catfile = sub { join '/', @_ }; --} --$tmpdir = $ENV{TMP} || $ENV{TMPDIR} || '/tmp'; --$file = catfile($tmpdir, "md$$"); -+$file = "md$$"; - 1 while unlink $file, "$file.dir", "$file.pag"; - tryout('GDBM_File', $file, 1); # Test 1..4 - 1 while unlink $file, "$file.dir", "$file.pag"; ---- perl-5.8.8-RC1/lib/Shell.pm.CAN-2004-0976 2004-06-01 05:42:17.000000000 -0400 -+++ perl-5.8.8-RC1/lib/Shell.pm 2006-01-20 15:51:09.000000000 -0500 -@@ -127,7 +127,7 @@ - use Shell qw(cat ps cp); - $passwd = cat('new; diff --git a/perl-5.8.8-DB_File-1.815.patch b/perl-5.8.8-DB_File-1.815.patch deleted file mode 100644 index 20a48d2..0000000 --- a/perl-5.8.8-DB_File-1.815.patch +++ /dev/null @@ -1,110 +0,0 @@ -diff -up perl-5.8.8/ext/DB_File/Changes.BAD perl-5.8.8/ext/DB_File/Changes ---- perl-5.8.8/ext/DB_File/Changes.BAD 2007-10-01 12:31:56.000000000 -0400 -+++ perl-5.8.8/ext/DB_File/Changes 2007-10-01 12:32:19.000000000 -0400 -@@ -1,5 +1,12 @@ - - -+1.815 4 February 2007 -+ -+ * A few casting cleanups for building with C++ from Steve Peters. -+ -+ * Fixed problem with recno which happened if you changed directory after -+ opening the database. Problem reported by Andrew Pam. -+ - 1.814 11 November 2005 - - * Fix from Dominic Dunlop to tidy up an OS-X specific warning in -diff -up perl-5.8.8/ext/DB_File/DB_File.pm.BAD perl-5.8.8/ext/DB_File/DB_File.pm ---- perl-5.8.8/ext/DB_File/DB_File.pm.BAD 2007-10-01 12:32:36.000000000 -0400 -+++ perl-5.8.8/ext/DB_File/DB_File.pm 2007-10-01 12:33:41.000000000 -0400 -@@ -1,10 +1,10 @@ - # DB_File.pm -- Perl 5 interface to Berkeley DB - # - # written by Paul Marquess (pmqs@cpan.org) --# last modified 11th November 2005 --# version 1.814 -+# last modified 4th February 2007 -+# version 1.815 - # --# Copyright (c) 1995-2005 Paul Marquess. All rights reserved. -+# Copyright (c) 1995-2007 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. - -@@ -165,7 +165,7 @@ our ($db_version, $use_XSLoader, $splice - use Carp; - - --$VERSION = "1.814" ; -+$VERSION = "1.815" ; - - { - local $SIG{__WARN__} = sub {$splice_end_array = "@_";}; -@@ -260,6 +260,10 @@ sub tie_hash_or_array - my (@arg) = @_ ; - my $tieHASH = ( (caller(1))[3] =~ /TIEHASH/ ) ; - -+ use File::Spec; -+ $arg[1] = File::Spec->rel2abs($arg[1]) -+ if defined $arg[1] ; -+ - $arg[4] = tied %{ $arg[4] } - if @arg >= 5 && ref $arg[4] && $arg[4] =~ /=HASH/ && tied %{ $arg[4] } ; - -diff -up perl-5.8.8/ext/DB_File/DB_File.xs.BAD perl-5.8.8/ext/DB_File/DB_File.xs ---- perl-5.8.8/ext/DB_File/DB_File.xs.BAD 2007-10-01 12:33:52.000000000 -0400 -+++ perl-5.8.8/ext/DB_File/DB_File.xs 2007-10-01 12:35:50.000000000 -0400 -@@ -3,8 +3,8 @@ - DB_File.xs -- Perl 5 interface to Berkeley DB - - written by Paul Marquess -- last modified 11th November 2005 -- version 1.814 -+ last modified 4th February 2007 -+ version 1.815 - - All comments/suggestions/problems are welcome - -@@ -114,6 +114,7 @@ - 1.812 - no change - 1.813 - no change - 1.814 - no change -+ 1.814 - C++ casting fixes - - */ - -@@ -410,12 +411,12 @@ typedef struct { - typedef DB_File_type * DB_File ; - typedef DBT DBTKEY ; - --#define my_sv_setpvn(sv, d, s) sv_setpvn(sv, (s ? d : (void*)""), s) -+#define my_sv_setpvn(sv, d, s) sv_setpvn(sv, (s ? d : (const char *)""), s) - - #define OutputValue(arg, name) \ - { if (RETVAL == 0) { \ - SvGETMAGIC(arg) ; \ -- my_sv_setpvn(arg, name.data, name.size) ; \ -+ my_sv_setpvn(arg, (const char *)name.data, name.size) ; \ - TAINT; \ - SvTAINTED_on(arg); \ - SvUTF8_off(arg); \ -@@ -428,7 +429,7 @@ typedef DBT DBTKEY ; - { \ - SvGETMAGIC(arg) ; \ - if (db->type != DB_RECNO) { \ -- my_sv_setpvn(arg, name.data, name.size); \ -+ my_sv_setpvn(arg, (const char *)name.data, name.size); \ - } \ - else \ - sv_setiv(arg, (I32)*(I32*)name.data - 1); \ -@@ -597,8 +598,8 @@ const DBT * key2 ; - - PUSHMARK(SP) ; - EXTEND(SP,2) ; -- PUSHs(sv_2mortal(newSVpvn(data1,key1->size))); -- PUSHs(sv_2mortal(newSVpvn(data2,key2->size))); -+ PUSHs(sv_2mortal(newSVpvn((const char*)data1,key1->size))); -+ PUSHs(sv_2mortal(newSVpvn((const char*)data2,key2->size))); - PUTBACK ; - - count = perl_call_sv(CurrentDB->compare, G_SCALAR); diff --git a/perl-5.8.8-R-switch.patch b/perl-5.8.8-R-switch.patch deleted file mode 100644 index 0bef7d2..0000000 --- a/perl-5.8.8-R-switch.patch +++ /dev/null @@ -1,135 +0,0 @@ ---- perl-5.8.8/pod/perlrun.pod.-R-switch 2006-01-13 11:29:17.000000000 -0500 -+++ perl-5.8.8/pod/perlrun.pod 2006-06-02 00:29:17.000000000 -0400 -@@ -11,6 +11,7 @@ - S<[ B<-I>I ] [ B<-m>[B<->]I ] [ B<-M>[B<->]I<'module...'> ] [ B<-f> ]> - S<[ B<-C [I] >]> - S<[ B<-P> ]> -+ S<[ B<-R> ]> - S<[ B<-S> ]> - S<[ B<-x>[I] ]> - S<[ B<-i>[I] ]> -@@ -813,6 +814,26 @@ - before being searched for on the PATH. On Unix platforms, the - program will be searched for strictly on the PATH. - -+=item B<-R> -+X<-R> -+ -+Disables the Red Hat module compatibility default search path. -+ -+By default, the Red Hat perl distribution will prepend to the default -+search path (@INC) the -V:archname subdirectory of each member of -+the -V:inc_version_list under the perl vendor and site installation -+directories. -+i.e. in shell notation: -+ {-V:vendorlib_stem,-V:sitelib_stem}/{-V:inc_version_list}/-V:archname -+where inc_version_list includes every previous perl version shipped -+by Red Hat, to provide compatibility for binary modules installed under -+previous perl versions. This can be quite a long list of directories -+to search, which can slow down module loading. You can disable searching -+these previous perl version architecture specific directories by specifying -+the -R switch - then the default search path will be as for the default -+upstream perl release. -+ -+ - =item B<-t> - X<-t> - ---- perl-5.8.8/proto.h.-R-switch 2006-06-01 19:13:32.000000000 -0400 -+++ perl-5.8.8/proto.h 2006-06-01 23:15:04.000000000 -0400 -@@ -1620,7 +1620,7 @@ - STATIC void S_init_ids(pTHX); - STATIC void S_init_lexer(pTHX); - STATIC void S_init_main_stash(pTHX); --STATIC void S_init_perllib(pTHX); -+STATIC void S_init_perllib(pTHX,bool rhi); - STATIC void S_init_postdump_symbols(pTHX_ int argc, char **argv, char **env); - STATIC void S_init_predump_symbols(pTHX); - STATIC void S_my_exit_jump(pTHX) ---- perl-5.8.8/embed.fnc.-R-switch 2006-06-01 19:13:32.000000000 -0400 -+++ perl-5.8.8/embed.fnc 2006-06-01 23:21:25.000000000 -0400 -@@ -1080,7 +1080,7 @@ - s |void |init_ids - s |void |init_lexer - s |void |init_main_stash --s |void |init_perllib -+s |void |init_perllib |bool redhat_incpush - s |void |init_postdump_symbols|int argc|NN char **argv|NULLOK char **env - s |void |init_predump_symbols - rs |void |my_exit_jump ---- perl-5.8.8/embed.h.-R-switch 2006-06-01 19:13:32.000000000 -0400 -+++ perl-5.8.8/embed.h 2006-06-01 23:13:11.000000000 -0400 -@@ -3170,7 +3170,7 @@ - #define init_ids() S_init_ids(aTHX) - #define init_lexer() S_init_lexer(aTHX) - #define init_main_stash() S_init_main_stash(aTHX) --#define init_perllib() S_init_perllib(aTHX) -+#define init_perllib(rhi) S_init_perllib(aTHX,rhi) - #define init_postdump_symbols(a,b,c) S_init_postdump_symbols(aTHX_ a,b,c) - #define init_predump_symbols() S_init_predump_symbols(aTHX) - #define my_exit_jump() S_my_exit_jump(aTHX) ---- perl-5.8.8/perl.c.-R-switch 2006-06-01 23:08:08.000000000 -0400 -+++ perl-5.8.8/perl.c 2006-06-02 00:00:23.000000000 -0400 -@@ -1649,6 +1649,7 @@ - #ifdef USE_SITECUSTOMIZE - bool minus_f = FALSE; - #endif -+ bool redhat_incpush = TRUE; - - PL_fdscript = -1; - PL_suidscript = -1; -@@ -1770,11 +1771,15 @@ - PL_preprocess = TRUE; - s++; - goto reswitch; -+ case 'R': -+ redhat_incpush = FALSE; -+ s++; -+ goto reswitch; - case 'S': - forbid_setid("-S"); - dosearch = TRUE; - s++; -- goto reswitch; -+ goto reswitch; - case 'V': - { - SV *opts_prog; -@@ -2062,7 +2067,7 @@ - scriptname = "-"; - } - -- init_perllib(); -+ init_perllib(redhat_incpush); - - open_script(scriptname,dosearch,sv); - -@@ -4736,7 +4741,7 @@ - } - - STATIC void --S_init_perllib(pTHX) -+S_init_perllib(pTHX, bool redhat_incpush) - { - char *s; - if (!PL_tainting) { -@@ -4803,7 +4808,8 @@ - * DLL-based path intuition to work correctly */ - # if !defined(WIN32) - incpush(SITEARCH_EXP, FALSE, FALSE, TRUE); -- incpush_oldversion(aTHX_ SITEARCH_EXP); -+ if ( redhat_incpush ) -+ incpush_oldversion(aTHX_ SITEARCH_EXP); - # endif - #endif - -@@ -4825,7 +4831,8 @@ - * DLL-based path intuition to work correctly */ - # if !defined(WIN32) - incpush(PERL_VENDORARCH_EXP, FALSE, FALSE, TRUE); -- incpush_oldversion(aTHX_ PERL_VENDORARCH_EXP); -+ if ( redhat_incpush ) -+ incpush_oldversion(aTHX_ PERL_VENDORARCH_EXP); - # endif - #endif - diff --git a/perl-5.8.8-U27116.patch b/perl-5.8.8-U27116.patch deleted file mode 100644 index 758c7ec..0000000 --- a/perl-5.8.8-U27116.patch +++ /dev/null @@ -1,44 +0,0 @@ ---- perl-5.8.8/t/op/index.t.U27116 2005-10-31 09:11:17.000000000 -0500 -+++ perl-5.8.8/t/op/index.t 2006-06-01 18:20:53.000000000 -0400 -@@ -7,7 +7,7 @@ - - use strict; - require './test.pl'; --plan( tests => 58 ); -+plan( tests => 66 ); - - my $foo = 'Now is the time for all good men to come to the aid of their country.'; - -@@ -121,3 +121,15 @@ - is (index($text, $search_octets), -1); - is (rindex($text, $search_octets), -1); - } -+ -+foreach my $utf8 ('', ', utf-8') { -+ foreach my $arraybase (0, 1, -1, -2) { -+ my $expect_pos = 2 + $arraybase; -+ -+ my $prog = "\$[ = $arraybase; \$big = \"N\\xabN\\xab\"; "; -+ $prog .= '$big .= chr 256; chop $big; ' if $utf8; -+ $prog .= 'print rindex $big, "N", 2 + $['; -+ -+ fresh_perl_is($prog, $expect_pos, {}, "\$[ = $arraybase$utf8"); -+ } -+} ---- perl-5.8.8/pp.c.U27116 2006-06-01 17:04:25.000000000 -0400 -+++ perl-5.8.8/pp.c 2006-06-01 18:19:16.000000000 -0400 -@@ -3258,9 +3258,13 @@ - if (MAXARG < 3) - offset = blen; - else { -+ /* arybase is in characters, like offset, so combine prior to the -+ UTF-8 to bytes calculation. */ -+ offset -= arybase; - if (offset > 0 && big_utf8) - sv_pos_u2b(big, &offset, 0); -- offset = offset - arybase + llen; -+ /* llen is in bytes. */ -+ offset += llen; - } - if (offset < 0) - offset = 0; diff --git a/perl-5.8.8-U27329.patch b/perl-5.8.8-U27329.patch deleted file mode 100644 index 349a85c..0000000 --- a/perl-5.8.8-U27329.patch +++ /dev/null @@ -1,112 +0,0 @@ ---- perl-5.8.8/t/op/lc.t.U27329 2005-11-07 09:22:36.000000000 -0500 -+++ perl-5.8.8/t/op/lc.t 2006-06-01 22:02:13.000000000 -0400 -@@ -6,7 +6,7 @@ - require './test.pl'; - } - --plan tests => 59; -+plan tests => 77; - - $a = "HELLO.* world"; - $b = "hello.* WORLD"; -@@ -163,3 +163,38 @@ - is($a, v10, "[perl #18857]"); - } - } -+ -+ -+# [perl #38619] Bug in lc and uc (interaction between UTF-8, substr, and lc/uc) -+ -+for ("a\x{100}", "xyz\x{100}") { -+ is(substr(uc($_), 0), uc($_), "[perl #38619] uc"); -+} -+for ("A\x{100}", "XYZ\x{100}") { -+ is(substr(lc($_), 0), lc($_), "[perl #38619] lc"); -+} -+for ("a\x{100}", "ßyz\x{100}") { # ß to Ss (different length) -+ is(substr(ucfirst($_), 0), ucfirst($_), "[perl #38619] ucfirst"); -+} -+ -+# Related to [perl #38619] -+# the original report concerns PERL_MAGIC_utf8. -+# these cases concern PERL_MAGIC_regex_global. -+ -+for (map { $_ } "a\x{100}", "abc\x{100}", "\x{100}") { -+ chop; # get ("a", "abc", "") in utf8 -+ my $return = uc($_) =~ /\G(.?)/g; -+ my $result = $return ? $1 : "not"; -+ my $expect = (uc($_) =~ /(.?)/g)[0]; -+ is($return, 1, "[perl #38619]"); -+ is($result, $expect, "[perl #38619]"); -+} -+ -+for (map { $_ } "A\x{100}", "ABC\x{100}", "\x{100}") { -+ chop; # get ("A", "ABC", "") in utf8 -+ my $return = lc($_) =~ /\G(.?)/g; -+ my $result = $return ? $1 : "not"; -+ my $expect = (lc($_) =~ /(.?)/g)[0]; -+ is($return, 1, "[perl #38619]"); -+ is($result, $expect, "[perl #38619]"); -+} ---- perl-5.8.8/pp.c.U27329 2006-06-01 21:30:14.000000000 -0400 -+++ perl-5.8.8/pp.c 2006-06-01 21:53:37.000000000 -0400 -@@ -3447,7 +3447,8 @@ - if (slen > ulen) - sv_catpvn(TARG, (char*)(s + ulen), slen - ulen); - SvUTF8_on(TARG); -- SETs(TARG); -+ sv = TARG; -+ SETs(sv); - } - else { - s = (U8*)SvPV_force_nomg(sv, slen); -@@ -3502,7 +3503,8 @@ - if (slen > ulen) - sv_catpvn(TARG, (char*)(s + ulen), slen - ulen); - SvUTF8_on(TARG); -- SETs(TARG); -+ sv = TARG; -+ SETs(sv); - } - else { - s = (U8*)SvPV_force_nomg(sv, slen); -@@ -3552,7 +3554,8 @@ - if (!len) { - SvUTF8_off(TARG); /* decontaminate */ - sv_setpvn(TARG, "", 0); -- SETs(TARG); -+ sv = TARG; -+ SETs(sv); - } - else { - STRLEN min = len + 1; -@@ -3585,7 +3588,8 @@ - *d = '\0'; - SvUTF8_on(TARG); - SvCUR_set(TARG, d - (U8*)SvPVX_const(TARG)); -- SETs(TARG); -+ sv = TARG; -+ SETs(sv); - } - } - else { -@@ -3636,7 +3640,8 @@ - if (!len) { - SvUTF8_off(TARG); /* decontaminate */ - sv_setpvn(TARG, "", 0); -- SETs(TARG); -+ sv = TARG; -+ SETs(sv); - } - else { - STRLEN min = len + 1; -@@ -3688,7 +3693,8 @@ - *d = '\0'; - SvUTF8_on(TARG); - SvCUR_set(TARG, d - (U8*)SvPVX_const(TARG)); -- SETs(TARG); -+ sv = TARG; -+ SETs(sv); - } - } - else { diff --git a/perl-5.8.8-U27391.patch b/perl-5.8.8-U27391.patch deleted file mode 100644 index daf9709..0000000 --- a/perl-5.8.8-U27391.patch +++ /dev/null @@ -1,495 +0,0 @@ ---- perl-5.8.8/t/op/bop.t.U27391 2006-01-06 17:44:14.000000000 -0500 -+++ perl-5.8.8/t/op/bop.t 2006-06-01 18:43:20.000000000 -0400 -@@ -15,7 +15,7 @@ - # If you find tests are failing, please try adding names to tests to track - # down where the failure is, and supply your new names as a patch. - # (Just-in-time test naming) --plan tests => 49; -+plan tests => 148; - - # numerics - ok ((0xdead & 0xbeef) == 0x9ead); -@@ -197,3 +197,149 @@ - $b &= "b"; - ok($b =~ /b+$/, 'Unicode "b" is NUL-terminated'); - } -+ -+require "./test.pl"; -+curr_test(50); -+ -+# double magic tests -+ -+sub TIESCALAR { bless { value => $_[1], orig => $_[1] } } -+sub STORE { $_[0]{store}++; $_[0]{value} = $_[1] } -+sub FETCH { $_[0]{fetch}++; $_[0]{value} } -+sub stores { tied($_[0])->{value} = tied($_[0])->{orig}; -+ delete(tied($_[0])->{store}) || 0 } -+sub fetches { delete(tied($_[0])->{fetch}) || 0 } -+ -+# numeric double magic tests -+ -+tie $x, "main", 1; -+tie $y, "main", 3; -+ -+is(($x | $y), 3); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x & $y), 1); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x ^ $y), 2); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x |= $y), 3); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(($x &= $y), 1); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(($x ^= $y), 2); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(~~$y, 3); -+is(fetches($y), 1); -+is(stores($y), 0); -+ -+{ use integer; -+ -+is(($x | $y), 3); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x & $y), 1); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x ^ $y), 2); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x |= $y), 3); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(($x &= $y), 1); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(($x ^= $y), 2); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(~$y, -4); -+is(fetches($y), 1); -+is(stores($y), 0); -+ -+} # end of use integer; -+ -+# stringwise double magic tests -+ -+tie $x, "main", "a"; -+tie $y, "main", "c"; -+ -+is(($x | $y), ("a" | "c")); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x & $y), ("a" & "c")); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x ^ $y), ("a" ^ "c")); -+is(fetches($x), 1); -+is(fetches($y), 1); -+is(stores($x), 0); -+is(stores($y), 0); -+ -+is(($x |= $y), ("a" | "c")); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(($x &= $y), ("a" & "c")); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(($x ^= $y), ("a" ^ "c")); -+is(fetches($x), 2); -+is(fetches($y), 1); -+is(stores($x), 1); -+is(stores($y), 0); -+ -+is(~~$y, "c"); -+is(fetches($y), 1); -+is(stores($y), 0); ---- perl-5.8.8/pp.c.U27391 2006-06-01 18:19:16.000000000 -0400 -+++ perl-5.8.8/pp.c 2006-06-01 18:43:19.000000000 -0400 -@@ -2229,13 +2229,15 @@ - dSP; dATARGET; tryAMAGICbin(band,opASSIGN); - { - dPOPTOPssrl; -+ if (SvGMAGICAL(left)) mg_get(left); -+ if (SvGMAGICAL(right)) mg_get(right); - if (SvNIOKp(left) || SvNIOKp(right)) { - if (PL_op->op_private & HINT_INTEGER) { -- const IV i = SvIV(left) & SvIV(right); -+ const IV i = SvIV_nomg(left) & SvIV_nomg(right); - SETi(i); - } - else { -- const UV u = SvUV(left) & SvUV(right); -+ const UV u = SvUV_nomg(left) & SvUV_nomg(right); - SETu(u); - } - } -@@ -2252,13 +2254,15 @@ - dSP; dATARGET; tryAMAGICbin(bxor,opASSIGN); - { - dPOPTOPssrl; -+ if (SvGMAGICAL(left)) mg_get(left); -+ if (SvGMAGICAL(right)) mg_get(right); - if (SvNIOKp(left) || SvNIOKp(right)) { - if (PL_op->op_private & HINT_INTEGER) { -- const IV i = (USE_LEFT(left) ? SvIV(left) : 0) ^ SvIV(right); -+ const IV i = (USE_LEFT(left) ? SvIV_nomg(left) : 0) ^ SvIV_nomg(right); - SETi(i); - } - else { -- const UV u = (USE_LEFT(left) ? SvUV(left) : 0) ^ SvUV(right); -+ const UV u = (USE_LEFT(left) ? SvUV_nomg(left) : 0) ^ SvUV_nomg(right); - SETu(u); - } - } -@@ -2275,13 +2279,15 @@ - dSP; dATARGET; tryAMAGICbin(bor,opASSIGN); - { - dPOPTOPssrl; -+ if (SvGMAGICAL(left)) mg_get(left); -+ if (SvGMAGICAL(right)) mg_get(right); - if (SvNIOKp(left) || SvNIOKp(right)) { - if (PL_op->op_private & HINT_INTEGER) { -- const IV i = (USE_LEFT(left) ? SvIV(left) : 0) | SvIV(right); -+ const IV i = (USE_LEFT(left) ? SvIV_nomg(left) : 0) | SvIV_nomg(right); - SETi(i); - } - else { -- const UV u = (USE_LEFT(left) ? SvUV(left) : 0) | SvUV(right); -+ const UV u = (USE_LEFT(left) ? SvUV_nomg(left) : 0) | SvUV_nomg(right); - SETu(u); - } - } -@@ -2376,13 +2382,15 @@ - dSP; dTARGET; tryAMAGICun(compl); - { - dTOPss; -+ if (SvGMAGICAL(sv)) -+ mg_get(sv); - if (SvNIOKp(sv)) { - if (PL_op->op_private & HINT_INTEGER) { -- const IV i = ~SvIV(sv); -+ const IV i = ~SvIV_nomg(sv); - SETi(i); - } - else { -- const UV u = ~SvUV(sv); -+ const UV u = ~SvUV_nomg(sv); - SETu(u); - } - } -@@ -2392,7 +2400,7 @@ - STRLEN len; - - (void)SvPV_nomg_const(sv,len); /* force check for uninit var */ -- SvSetSV(TARG, sv); -+ sv_setsv_nomg(TARG, sv); - tmps = (U8*)SvPV_force(TARG, len); - anum = len; - if (SvUTF8(TARG)) { ---- perl-5.8.8/global.sym.U27391 2006-01-31 10:50:34.000000000 -0500 -+++ perl-5.8.8/global.sym 2006-06-01 18:43:19.000000000 -0400 -@@ -432,6 +432,7 @@ - Perl_sv_2cv - Perl_sv_2io - Perl_sv_2iv -+Perl_sv_2iv_flags - Perl_sv_2mortal - Perl_sv_2nv - Perl_sv_2pv -@@ -439,6 +440,7 @@ - Perl_sv_2pvbyte - Perl_sv_pvn_nomg - Perl_sv_2uv -+Perl_sv_2uv_flags - Perl_sv_iv - Perl_sv_uv - Perl_sv_nv ---- perl-5.8.8/proto.h.U27391 2006-01-31 10:50:34.000000000 -0500 -+++ perl-5.8.8/proto.h 2006-06-01 18:43:19.000000000 -0400 -@@ -1139,14 +1139,16 @@ - PERL_CALLCONV bool Perl_sv_2bool(pTHX_ SV* sv); - PERL_CALLCONV CV* Perl_sv_2cv(pTHX_ SV* sv, HV** st, GV** gvp, I32 lref); - PERL_CALLCONV IO* Perl_sv_2io(pTHX_ SV* sv); --PERL_CALLCONV IV Perl_sv_2iv(pTHX_ SV* sv); -+/* PERL_CALLCONV IV sv_2iv(pTHX_ SV* sv); */ -+PERL_CALLCONV IV Perl_sv_2iv_flags(pTHX_ SV* sv, I32 flags); - PERL_CALLCONV SV* Perl_sv_2mortal(pTHX_ SV* sv); - PERL_CALLCONV NV Perl_sv_2nv(pTHX_ SV* sv); - /* PERL_CALLCONV char* sv_2pv(pTHX_ SV* sv, STRLEN* lp); */ - PERL_CALLCONV char* Perl_sv_2pvutf8(pTHX_ SV* sv, STRLEN* lp); - PERL_CALLCONV char* Perl_sv_2pvbyte(pTHX_ SV* sv, STRLEN* lp); - PERL_CALLCONV char* Perl_sv_pvn_nomg(pTHX_ SV* sv, STRLEN* lp); --PERL_CALLCONV UV Perl_sv_2uv(pTHX_ SV* sv); -+/* PERL_CALLCONV UV sv_2uv(pTHX_ SV* sv); */ -+PERL_CALLCONV UV Perl_sv_2uv_flags(pTHX_ SV* sv, I32 flags); - PERL_CALLCONV IV Perl_sv_iv(pTHX_ SV* sv); - PERL_CALLCONV UV Perl_sv_uv(pTHX_ SV* sv); - PERL_CALLCONV NV Perl_sv_nv(pTHX_ SV* sv); ---- perl-5.8.8/embed.fnc.U27391 2006-01-31 09:40:27.000000000 -0500 -+++ perl-5.8.8/embed.fnc 2006-06-01 18:43:19.000000000 -0400 -@@ -727,14 +727,16 @@ - Apd |bool |sv_2bool |NN SV* sv - Apd |CV* |sv_2cv |NULLOK SV* sv|NN HV** st|NN GV** gvp|I32 lref - Apd |IO* |sv_2io |NN SV* sv --Apd |IV |sv_2iv |NN SV* sv -+Amb |IV |sv_2iv |NN SV* sv -+Apd |IV |sv_2iv_flags |NN SV* sv|I32 flags - Apd |SV* |sv_2mortal |NULLOK SV* sv - Apd |NV |sv_2nv |NN SV* sv - Amb |char* |sv_2pv |NN SV* sv|NULLOK STRLEN* lp - Apd |char* |sv_2pvutf8 |NN SV* sv|NULLOK STRLEN* lp - Apd |char* |sv_2pvbyte |NN SV* sv|NULLOK STRLEN* lp - Ap |char* |sv_pvn_nomg |NN SV* sv|NULLOK STRLEN* lp --Apd |UV |sv_2uv |NN SV* sv -+Amb |UV |sv_2uv |NN SV* sv -+Apd |UV |sv_2uv_flags |NN SV* sv|I32 flags - Apd |IV |sv_iv |NN SV* sv - Apd |UV |sv_uv |NN SV* sv - Apd |NV |sv_nv |NN SV* sv ---- perl-5.8.8/embed.h.U27391 2006-01-31 10:50:34.000000000 -0500 -+++ perl-5.8.8/embed.h 2006-06-01 18:43:19.000000000 -0400 -@@ -780,13 +780,13 @@ - #define sv_2bool Perl_sv_2bool - #define sv_2cv Perl_sv_2cv - #define sv_2io Perl_sv_2io --#define sv_2iv Perl_sv_2iv -+#define sv_2iv_flags Perl_sv_2iv_flags - #define sv_2mortal Perl_sv_2mortal - #define sv_2nv Perl_sv_2nv - #define sv_2pvutf8 Perl_sv_2pvutf8 - #define sv_2pvbyte Perl_sv_2pvbyte - #define sv_pvn_nomg Perl_sv_pvn_nomg --#define sv_2uv Perl_sv_2uv -+#define sv_2uv_flags Perl_sv_2uv_flags - #define sv_iv Perl_sv_iv - #define sv_uv Perl_sv_uv - #define sv_nv Perl_sv_nv -@@ -2831,13 +2831,13 @@ - #define sv_2bool(a) Perl_sv_2bool(aTHX_ a) - #define sv_2cv(a,b,c,d) Perl_sv_2cv(aTHX_ a,b,c,d) - #define sv_2io(a) Perl_sv_2io(aTHX_ a) --#define sv_2iv(a) Perl_sv_2iv(aTHX_ a) -+#define sv_2iv_flags(a,b) Perl_sv_2iv_flags(aTHX_ a,b) - #define sv_2mortal(a) Perl_sv_2mortal(aTHX_ a) - #define sv_2nv(a) Perl_sv_2nv(aTHX_ a) - #define sv_2pvutf8(a,b) Perl_sv_2pvutf8(aTHX_ a,b) - #define sv_2pvbyte(a,b) Perl_sv_2pvbyte(aTHX_ a,b) - #define sv_pvn_nomg(a,b) Perl_sv_pvn_nomg(aTHX_ a,b) --#define sv_2uv(a) Perl_sv_2uv(aTHX_ a) -+#define sv_2uv_flags(a,b) Perl_sv_2uv_flags(aTHX_ a,b) - #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) ---- perl-5.8.8/sv.h.U27391 2006-01-02 09:51:46.000000000 -0500 -+++ perl-5.8.8/sv.h 2006-06-01 18:43:20.000000000 -0400 -@@ -953,6 +953,9 @@ - =for apidoc Am|char*|SvPVx|SV* sv|STRLEN len - A version of C which guarantees to evaluate sv only once. - -+=for apidoc Am|char*|SvPV_nomg|SV* sv|STRLEN len -+Like C but doesn't process magic. -+ - =for apidoc Am|char*|SvPV_nolen|SV* sv - Returns a pointer to the string in the SV, or a stringified form of - the SV if the SV does not contain a string. The SV may cache the -@@ -962,6 +965,9 @@ - Coerces the given SV to an integer and returns it. See C for a - version which guarantees to evaluate sv only once. - -+=for apidoc Am|IV|SvIV_nomg|SV* sv -+Like C but doesn't process magic. -+ - =for apidoc Am|IV|SvIVx|SV* sv - Coerces the given SV to an integer and returns it. Guarantees to evaluate - sv only once. Use the more efficient C otherwise. -@@ -978,6 +984,9 @@ - Coerces the given SV to an unsigned integer and returns it. See C - for a version which guarantees to evaluate sv only once. - -+=for apidoc Am|UV|SvUV_nomg|SV* sv -+Like C but doesn't process magic. -+ - =for apidoc Am|UV|SvUVx|SV* sv - Coerces the given SV to an unsigned integer and returns it. Guarantees to - evaluate sv only once. Use the more efficient C otherwise. -@@ -1050,6 +1059,9 @@ - #define SvUV(sv) (SvIOK(sv) ? SvUVX(sv) : sv_2uv(sv)) - #define SvNV(sv) (SvNOK(sv) ? SvNVX(sv) : sv_2nv(sv)) - -+#define SvIV_nomg(sv) (SvIOK(sv) ? SvIVX(sv) : sv_2iv_flags(sv, 0)) -+#define SvUV_nomg(sv) (SvIOK(sv) ? SvUVX(sv) : sv_2uv_flags(sv, 0)) -+ - /* ----*/ - - #define SvPV(sv, lp) SvPV_flags(sv, lp, SV_GMAGIC) -@@ -1251,6 +1263,8 @@ - #define sv_2pv_nomg(sv, lp) sv_2pv_flags(sv, lp, 0) - #define sv_pvn_force(sv, lp) sv_pvn_force_flags(sv, lp, SV_GMAGIC) - #define sv_utf8_upgrade(sv) sv_utf8_upgrade_flags(sv, SV_GMAGIC) -+#define sv_2iv(sv) sv_2iv_flags(sv, SV_GMAGIC) -+#define sv_2uv(sv) sv_2uv_flags(sv, SV_GMAGIC) - - /* Should be named SvCatPVN_utf8_upgrade? */ - #define sv_catpvn_utf8_upgrade(dsv, sstr, slen, nsv) \ ---- perl-5.8.8/sv.c.U27391 2006-01-16 07:22:21.000000000 -0500 -+++ perl-5.8.8/sv.c 2006-06-01 18:43:19.000000000 -0400 -@@ -2062,22 +2062,34 @@ - } - #endif /* !NV_PRESERVES_UV*/ - -+/* sv_2iv() is now a macro using Perl_sv_2iv_flags(); -+ * this function provided for binary compatibility only -+ */ -+ -+IV -+Perl_sv_2iv(pTHX_ register SV *sv) -+{ -+ return sv_2iv_flags(sv, SV_GMAGIC); -+} -+ - /* --=for apidoc sv_2iv -+=for apidoc sv_2iv_flags - --Return the integer value of an SV, doing any necessary string conversion, --magic etc. Normally used via the C and C macros. -+Return the integer value of an SV, doing any necessary string -+conversion. If flags includes SV_GMAGIC, does an mg_get() first. -+Normally used via the C and C macros. - - =cut - */ - - IV --Perl_sv_2iv(pTHX_ register SV *sv) -+Perl_sv_2iv_flags(pTHX_ register SV *sv, I32 flags) - { - if (!sv) - return 0; - if (SvGMAGICAL(sv)) { -- mg_get(sv); -+ if (flags & SV_GMAGIC) -+ mg_get(sv); - if (SvIOKp(sv)) - return SvIVX(sv); - if (SvNOKp(sv)) { -@@ -2361,23 +2373,34 @@ - return SvIsUV(sv) ? (IV)SvUVX(sv) : SvIVX(sv); - } - -+/* sv_2uv() is now a macro using Perl_sv_2uv_flags(); -+ * this function provided for binary compatibility only -+ */ -+ -+UV -+Perl_sv_2uv(pTHX_ register SV *sv) -+{ -+ return sv_2uv_flags(sv, SV_GMAGIC); -+} -+ - /* --=for apidoc sv_2uv -+=for apidoc sv_2uv_flags - - Return the unsigned integer value of an SV, doing any necessary string --conversion, magic etc. Normally used via the C and C --macros. -+conversion. If flags includes SV_GMAGIC, does an mg_get() first. -+Normally used via the C and C macros. - - =cut - */ - - UV --Perl_sv_2uv(pTHX_ register SV *sv) -+Perl_sv_2uv_flags(pTHX_ register SV *sv, I32 flags) - { - if (!sv) - return 0; - if (SvGMAGICAL(sv)) { -- mg_get(sv); -+ if (flags & SV_GMAGIC) -+ mg_get(sv); - if (SvIOKp(sv)) - return SvUVX(sv); - if (SvNOKp(sv)) ---- perl-5.8.8/doop.c.U27391 2006-01-08 15:58:53.000000000 -0500 -+++ perl-5.8.8/doop.c 2006-06-01 18:43:19.000000000 -0400 -@@ -1171,8 +1171,8 @@ - - if (sv != left || (optype != OP_BIT_AND && !SvOK(sv) && !SvGMAGICAL(sv))) - sv_setpvn(sv, "", 0); /* avoid undef warning on |= and ^= */ -- lsave = lc = SvPV_const(left, leftlen); -- rsave = rc = SvPV_const(right, rightlen); -+ lsave = lc = SvPV_nomg_const(left, leftlen); -+ rsave = rc = SvPV_nomg_const(right, rightlen); - len = leftlen < rightlen ? leftlen : rightlen; - lensave = len; - if ((left_utf || right_utf) && (sv == left || sv == right)) { -@@ -1180,9 +1180,7 @@ - Newxz(dc, needlen + 1, char); - } - else if (SvOK(sv) || SvTYPE(sv) > SVt_PVMG) { -- /* Fix this to nong when change 22613 is integrated. -- (Which in turn awaits merging sv_2iv and sv_2uv) */ -- dc = SvPV_force_nolen(sv); -+ dc = SvPV_force_nomg_nolen(sv); - if (SvLEN(sv) < (STRLEN)(len + 1)) { - dc = SvGROW(sv, (STRLEN)(len + 1)); - (void)memzero(dc + SvCUR(sv), len - SvCUR(sv) + 1); diff --git a/perl-5.8.8-U27426.patch b/perl-5.8.8-U27426.patch deleted file mode 100644 index b811d7d..0000000 --- a/perl-5.8.8-U27426.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- perl-5.8.8/perl.c.U27426 2006-06-01 17:04:25.000000000 -0400 -+++ perl-5.8.8/perl.c 2006-06-01 19:00:57.000000000 -0400 -@@ -3076,8 +3076,7 @@ - PL_minus_F = TRUE; - PL_splitstr = ++s; - while (*s && !isSPACE(*s)) ++s; -- *s = '\0'; -- PL_splitstr = savepv(PL_splitstr); -+ PL_splitstr = savepvn(PL_splitstr, s - PL_splitstr); - return s; - case 'a': - PL_minus_a = TRUE; diff --git a/perl-5.8.8-U27509.patch b/perl-5.8.8-U27509.patch deleted file mode 100644 index f2ccb14..0000000 --- a/perl-5.8.8-U27509.patch +++ /dev/null @@ -1,1109 +0,0 @@ ---- perl-5.8.8/lib/overload.t.U27509 2005-04-22 10:56:23.000000000 -0400 -+++ perl-5.8.8/lib/overload.t 2006-06-01 19:13:32.000000000 -0400 -@@ -46,92 +46,64 @@ - - package main; - --our $test = 0; - $| = 1; --print "1..",&last,"\n"; -+use Test::More tests => 508; - --sub test { -- $test++; -- if (@_ > 1) { -- my $comment = ""; -- $comment = " # " . $_ [2] if @_ > 2; -- if ($_[0] eq $_[1]) { -- print "ok $test$comment\n"; -- return 1; -- } else { -- $comment .= ": '$_[0]' ne '$_[1]'"; -- print "not ok $test$comment\n"; -- return 0; -- } -- } else { -- if (shift) { -- print "ok $test\n"; -- return 1; -- } else { -- print "not ok $test\n"; -- return 0; -- } -- } --} - - $a = new Oscalar "087"; - $b= "$a"; - --# All test numbers in comments are off by 1. --# So much for hard-wiring them in :-) To fix this: --test(1); # 1 -- --test ($b eq $a); # 2 --test ($b eq "087"); # 3 --test (ref $a eq "Oscalar"); # 4 --test ($a eq $a); # 5 --test ($a eq "087"); # 6 -+is($b, $a); -+is($b, "087"); -+is(ref $a, "Oscalar"); -+is($a, $a); -+is($a, "087"); - - $c = $a + 7; - --test (ref $c eq "Oscalar"); # 7 --test (!($c eq $a)); # 8 --test ($c eq "94"); # 9 -+is(ref $c, "Oscalar"); -+isnt($c, $a); -+is($c, "94"); - - $b=$a; - --test (ref $a eq "Oscalar"); # 10 -+is(ref $a, "Oscalar"); - - $b++; - --test (ref $b eq "Oscalar"); # 11 --test ( $a eq "087"); # 12 --test ( $b eq "88"); # 13 --test (ref $a eq "Oscalar"); # 14 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "88"); -+is(ref $a, "Oscalar"); - - $c=$b; - $c-=$a; - --test (ref $c eq "Oscalar"); # 15 --test ( $a eq "087"); # 16 --test ( $c eq "1"); # 17 --test (ref $a eq "Oscalar"); # 18 -+is(ref $c, "Oscalar"); -+is($a, "087"); -+is($c, "1"); -+is(ref $a, "Oscalar"); - - $b=1; - $b+=$a; - --test (ref $b eq "Oscalar"); # 19 --test ( $a eq "087"); # 20 --test ( $b eq "88"); # 21 --test (ref $a eq "Oscalar"); # 22 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "88"); -+is(ref $a, "Oscalar"); - - eval q[ package Oscalar; use overload ('++' => sub { $ {$_[0]}++;$_[0] } ) ]; - - $b=$a; - --test (ref $a eq "Oscalar"); # 23 -+is(ref $a, "Oscalar"); - - $b++; - --test (ref $b eq "Oscalar"); # 24 --test ( $a eq "087"); # 25 --test ( $b eq "88"); # 26 --test (ref $a eq "Oscalar"); # 27 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "88"); -+is(ref $a, "Oscalar"); - - package Oscalar; - $dummy=bless \$dummy; # Now cache of method should be reloaded -@@ -140,10 +112,10 @@ - $b=$a; - $b++; - --test (ref $b eq "Oscalar"); # 28 --test ( $a eq "087"); # 29 --test ( $b eq "88"); # 30 --test (ref $a eq "Oscalar"); # 31 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "88"); -+is(ref $a, "Oscalar"); - - undef $b; # Destroying updates tables too... - -@@ -151,14 +123,14 @@ - - $b=$a; - --test (ref $a eq "Oscalar"); # 32 -+is(ref $a, "Oscalar"); - - $b++; - --test (ref $b eq "Oscalar"); # 33 --test ( $a eq "087"); # 34 --test ( $b eq "88"); # 35 --test (ref $a eq "Oscalar"); # 36 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "88"); -+is(ref $a, "Oscalar"); - - package Oscalar; - $dummy=bless \$dummy; # Now cache of method should be reloaded -@@ -166,21 +138,21 @@ - - $b++; - --test (ref $b eq "Oscalar"); # 37 --test ( $a eq "087"); # 38 --test ( $b eq "90"); # 39 --test (ref $a eq "Oscalar"); # 40 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "90"); -+is(ref $a, "Oscalar"); - - $b=$a; - $b++; - --test (ref $b eq "Oscalar"); # 41 --test ( $a eq "087"); # 42 --test ( $b eq "89"); # 43 --test (ref $a eq "Oscalar"); # 44 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "89"); -+is(ref $a, "Oscalar"); - - --test ($b? 1:0); # 45 -+ok($b? 1:0); - - eval q[ package Oscalar; use overload ('=' => sub {$main::copies++; - package Oscalar; -@@ -189,44 +161,44 @@ - - $b=new Oscalar "$a"; - --test (ref $b eq "Oscalar"); # 46 --test ( $a eq "087"); # 47 --test ( $b eq "087"); # 48 --test (ref $a eq "Oscalar"); # 49 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "087"); -+is(ref $a, "Oscalar"); - - $b++; - --test (ref $b eq "Oscalar"); # 50 --test ( $a eq "087"); # 51 --test ( $b eq "89"); # 52 --test (ref $a eq "Oscalar"); # 53 --test ($copies == 0); # 54 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "89"); -+is(ref $a, "Oscalar"); -+is($copies, undef); - - $b+=1; - --test (ref $b eq "Oscalar"); # 55 --test ( $a eq "087"); # 56 --test ( $b eq "90"); # 57 --test (ref $a eq "Oscalar"); # 58 --test ($copies == 0); # 59 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "90"); -+is(ref $a, "Oscalar"); -+is($copies, undef); - - $b=$a; - $b+=1; - --test (ref $b eq "Oscalar"); # 60 --test ( $a eq "087"); # 61 --test ( $b eq "88"); # 62 --test (ref $a eq "Oscalar"); # 63 --test ($copies == 0); # 64 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "88"); -+is(ref $a, "Oscalar"); -+is($copies, undef); - - $b=$a; - $b++; - --test (ref $b eq "Oscalar") || print ref $b,"=ref(b)\n"; # 65 --test ( $a eq "087"); # 66 --test ( $b eq "89"); # 67 --test (ref $a eq "Oscalar"); # 68 --test ($copies == 1); # 69 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "89"); -+is(ref $a, "Oscalar"); -+is($copies, 1); - - eval q[package Oscalar; use overload ('+=' => sub {$ {$_[0]} += 3*$_[1]; - $_[0] } ) ]; -@@ -235,34 +207,34 @@ - $b=$a; - $b+=1; - --test (ref $b eq "Oscalar"); # 70 --test ( $a eq "087"); # 71 --test ( $b eq "90"); # 72 --test (ref $a eq "Oscalar"); # 73 --test ($copies == 2); # 74 -+is(ref $b, "Oscalar"); -+is($a, "087"); -+is($b, "90"); -+is(ref $a, "Oscalar"); -+is($copies, 2); - - $b+=$b; - --test (ref $b eq "Oscalar"); # 75 --test ( $b eq "360"); # 76 --test ($copies == 2); # 77 -+is(ref $b, "Oscalar"); -+is($b, "360"); -+is($copies, 2); - $b=-$b; - --test (ref $b eq "Oscalar"); # 78 --test ( $b eq "-360"); # 79 --test ($copies == 2); # 80 -+is(ref $b, "Oscalar"); -+is($b, "-360"); -+is($copies, 2); - - $b=abs($b); - --test (ref $b eq "Oscalar"); # 81 --test ( $b eq "360"); # 82 --test ($copies == 2); # 83 -+is(ref $b, "Oscalar"); -+is($b, "360"); -+is($copies, 2); - - $b=abs($b); - --test (ref $b eq "Oscalar"); # 84 --test ( $b eq "360"); # 85 --test ($copies == 2); # 86 -+is(ref $b, "Oscalar"); -+is($b, "360"); -+is($copies, 2); - - eval q[package Oscalar; - use overload ('x' => sub {new Oscalar ( $_[2] ? "_.$_[1]._" x $ {$_[0]} -@@ -270,7 +242,7 @@ - - $a=new Oscalar "yy"; - $a x= 3; --test ($a eq "_.yy.__.yy.__.yy._"); # 87 -+is($a, "_.yy.__.yy.__.yy._"); - - eval q[package Oscalar; - use overload ('.' => sub {new Oscalar ( $_[2] ? -@@ -279,7 +251,7 @@ - - $a=new Oscalar "xx"; - --test ("b${a}c" eq "_._.b.__.xx._.__.c._"); # 88 -+is("b${a}c", "_._.b.__.xx._.__.c._"); - - # Check inheritance of overloading; - { -@@ -288,26 +260,26 @@ - } - - $aI = new OscalarI "$a"; --test (ref $aI eq "OscalarI"); # 89 --test ("$aI" eq "xx"); # 90 --test ($aI eq "xx"); # 91 --test ("b${aI}c" eq "_._.b.__.xx._.__.c._"); # 92 -+is(ref $aI, "OscalarI"); -+is("$aI", "xx"); -+is($aI, "xx"); -+is("b${aI}c", "_._.b.__.xx._.__.c._"); - - # Here we test blessing to a package updates hash - - eval "package Oscalar; no overload '.'"; - --test ("b${a}" eq "_.b.__.xx._"); # 93 -+is("b${a}", "_.b.__.xx._"); - $x="1"; - bless \$x, Oscalar; --test ("b${a}c" eq "bxxc"); # 94 -+is("b${a}c", "bxxc"); - new Oscalar 1; --test ("b${a}c" eq "bxxc"); # 95 -+is("b${a}c", "bxxc"); - - # Negative overloading: - - $na = eval { ~$a }; --test($@ =~ /no method found/); # 96 -+like($@, qr/no method found/); - - # Check AUTOLOADING: - -@@ -318,32 +290,32 @@ - eval "package Oscalar; sub comple; use overload '~' => 'comple'"; - - $na = eval { ~$a }; # Hash was not updated --test($@ =~ /no method found/); # 97 -+like($@, qr/no method found/); - - bless \$x, Oscalar; - - $na = eval { ~$a }; # Hash updated - warn "`$na', $@" if $@; --test !$@; # 98 --test($na eq '_!_xx_!_'); # 99 -+ok !$@; -+is($na, '_!_xx_!_'); - - $na = 0; - - $na = eval { ~$aI }; # Hash was not updated --test($@ =~ /no method found/); # 100 -+like($@, qr/no method found/); - - bless \$x, OscalarI; - - $na = eval { ~$aI }; - print $@; - --test !$@; # 101 --test($na eq '_!_xx_!_'); # 102 -+ok(!$@); -+is($na, '_!_xx_!_'); - - eval "package Oscalar; sub rshft; use overload '>>' => 'rshft'"; - - $na = eval { $aI >> 1 }; # Hash was not updated --test($@ =~ /no method found/); # 103 -+like($@, qr/no method found/); - - bless \$x, OscalarI; - -@@ -352,20 +324,20 @@ - $na = eval { $aI >> 1 }; - print $@; - --test !$@; # 104 --test($na eq '_!_xx_!_'); # 105 -+ok(!$@); -+is($na, '_!_xx_!_'); - - # warn overload::Method($a, '0+'), "\n"; --test (overload::Method($a, '0+') eq \&Oscalar::numify); # 106 --test (overload::Method($aI,'0+') eq \&Oscalar::numify); # 107 --test (overload::Overloaded($aI)); # 108 --test (!overload::Overloaded('overload')); # 109 -+is(overload::Method($a, '0+'), \&Oscalar::numify); -+is(overload::Method($aI,'0+'), \&Oscalar::numify); -+ok(overload::Overloaded($aI)); -+ok(!overload::Overloaded('overload')); - --test (! defined overload::Method($aI, '<<')); # 110 --test (! defined overload::Method($a, '<')); # 111 -+ok(! defined overload::Method($aI, '<<')); -+ok(! defined overload::Method($a, '<')); - --test (overload::StrVal($aI) =~ /^OscalarI=SCALAR\(0x[\da-fA-F]+\)$/); # 112 --test (overload::StrVal(\$aI) eq "@{[\$aI]}"); # 113 -+like (overload::StrVal($aI), qr/^OscalarI=SCALAR\(0x[\da-fA-F]+\)$/); -+is(overload::StrVal(\$aI), "@{[\$aI]}"); - - # Check overloading by methods (specified deep in the ISA tree). - { -@@ -379,16 +351,16 @@ - $aII = \$aaII; - bless $aII, 'OscalarII'; - bless \$fake, 'OscalarI'; # update the hash --test(($aI | 3) eq '_<<_xx_<<_'); # 114 -+is(($aI | 3), '_<<_xx_<<_'); - # warn $aII << 3; --test(($aII << 3) eq '_<<_087_<<_'); # 115 -+is(($aII << 3), '_<<_087_<<_'); - - { - BEGIN { $int = 7; overload::constant 'integer' => sub {$int++; shift}; } - $out = 2**10; - } --test($int, 9); # 116 --test($out, 1024); # 117 -+is($int, 9); -+is($out, 1024); - - $foo = 'foo'; - $foo1 = 'f\'o\\o'; -@@ -402,15 +374,15 @@ - /b\b$foo.\./; - } - --test($out, 'foo'); # 118 --test($out, $foo); # 119 --test($out1, 'f\'o\\o'); # 120 --test($out1, $foo1); # 121 --test($out2, "a\afoo,\,"); # 122 --test("@q", "foo q f'o\\\\o q a\\a qq ,\\, qq"); # 123 --test($q, 11); # 124 --test("@qr", "b\\b qq .\\. qq"); # 125 --test($qr, 9); # 126 -+is($out, 'foo'); -+is($out, $foo); -+is($out1, 'f\'o\\o'); -+is($out1, $foo1); -+is($out2, "a\afoo,\,"); -+is("@q", "foo q f'o\\\\o q a\\a qq ,\\, qq"); -+is($q, 11); -+is("@qr", "b\\b qq .\\. qq"); -+is($qr, 9); - - { - $_ = '!!foo!<-.>!'; -@@ -433,19 +405,19 @@ - tr/A-Z/a-z/; - } - --test($out, '__'); # 117 --test($out1, '__'); # 128 --test($out2, "__foo_<,\,>_"); # 129 --test("@q1", "foo q f'o\\\\o q a\\a qq ,\\, qq oups -+is($out, '__'); -+is($out1, '__'); -+is($out2, "__foo_<,\,>_"); -+is("@q1", "foo q f'o\\\\o q a\\a qq ,\\, qq oups - qq oups1 -- q second part q tail here s A-Z tr a-z tr"); # 130 --test("@qr1", "b\\b qq .\\. qq try it q first part q yet another qq"); # 131 --test($res, 1); # 132 --test($a, "__"); # 133 --test($b, "__"); # 134 --test($c, "bareword"); # 135 -+ q second part q tail here s A-Z tr a-z tr"); -+is("@qr1", "b\\b qq .\\. qq try it q first part q yet another qq"); -+is($res, 1); -+is($a, "__"); -+is($b, "__"); -+is($c, "bareword"); - - { - package symbolic; # Primitive symbolic calculator -@@ -513,24 +485,24 @@ - { - my $foo = new symbolic 11; - my $baz = $foo++; -- test( (sprintf "%d", $foo), '12'); -- test( (sprintf "%d", $baz), '11'); -+ is((sprintf "%d", $foo), '12'); -+ is((sprintf "%d", $baz), '11'); - my $bar = $foo; - $baz = ++$foo; -- test( (sprintf "%d", $foo), '13'); -- test( (sprintf "%d", $bar), '12'); -- test( (sprintf "%d", $baz), '13'); -+ is((sprintf "%d", $foo), '13'); -+ is((sprintf "%d", $bar), '12'); -+ is((sprintf "%d", $baz), '13'); - my $ban = $foo; - $baz = ($foo += 1); -- test( (sprintf "%d", $foo), '14'); -- test( (sprintf "%d", $bar), '12'); -- test( (sprintf "%d", $baz), '14'); -- test( (sprintf "%d", $ban), '13'); -+ is((sprintf "%d", $foo), '14'); -+ is((sprintf "%d", $bar), '12'); -+ is((sprintf "%d", $baz), '14'); -+ is((sprintf "%d", $ban), '13'); - $baz = 0; - $baz = $foo++; -- test( (sprintf "%d", $foo), '15'); -- test( (sprintf "%d", $baz), '14'); -- test( "$foo", '[++ [+= [++ [++ [n 11] 1] 1] 1] 1]'); -+ is((sprintf "%d", $foo), '15'); -+ is((sprintf "%d", $baz), '14'); -+ is("$foo", '[++ [+= [++ [++ [n 11] 1] 1] 1] 1]'); - } - - { -@@ -543,8 +515,8 @@ - $side = (sqrt(1 + $side**2) - 1)/$side; - } - my $pi = $side*(2**($iter+2)); -- test "$side", '[/ [- [sqrt [+ 1 [** [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]] 2]]] 1] [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]]]'; -- test( (sprintf "%f", $pi), '3.182598'); -+ is("$side", '[/ [- [sqrt [+ 1 [** [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]] 2]]] 1] [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]]]'); -+ is((sprintf "%f", $pi), '3.182598'); - } - - { -@@ -556,8 +528,8 @@ - $side = (sqrt(1 + $side**2) - 1)/$side; - } - my $pi = $side*(2**($iter+2)); -- test "$side", '[/ [- [sqrt [+ 1 [** [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]] 2]]] 1] [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]]]'; -- test( (sprintf "%f", $pi), '3.182598'); -+ is("$side", '[/ [- [sqrt [+ 1 [** [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]] 2]]] 1] [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]]]'); -+ is((sprintf "%f", $pi), '3.182598'); - } - - { -@@ -565,9 +537,9 @@ - symbolic->vars($a, $b); - my $c = sqrt($a**2 + $b**2); - $a = 3; $b = 4; -- test( (sprintf "%d", $c), '5'); -+ is((sprintf "%d", $c), '5'); - $a = 12; $b = 5; -- test( (sprintf "%d", $c), '13'); -+ is((sprintf "%d", $c), '13'); - } - - { -@@ -634,24 +606,24 @@ - { - my $foo = new symbolic1 11; - my $baz = $foo++; -- test( (sprintf "%d", $foo), '12'); -- test( (sprintf "%d", $baz), '11'); -+ is((sprintf "%d", $foo), '12'); -+ is((sprintf "%d", $baz), '11'); - my $bar = $foo; - $baz = ++$foo; -- test( (sprintf "%d", $foo), '13'); -- test( (sprintf "%d", $bar), '12'); -- test( (sprintf "%d", $baz), '13'); -+ is((sprintf "%d", $foo), '13'); -+ is((sprintf "%d", $bar), '12'); -+ is((sprintf "%d", $baz), '13'); - my $ban = $foo; - $baz = ($foo += 1); -- test( (sprintf "%d", $foo), '14'); -- test( (sprintf "%d", $bar), '12'); -- test( (sprintf "%d", $baz), '14'); -- test( (sprintf "%d", $ban), '13'); -+ is((sprintf "%d", $foo), '14'); -+ is((sprintf "%d", $bar), '12'); -+ is((sprintf "%d", $baz), '14'); -+ is((sprintf "%d", $ban), '13'); - $baz = 0; - $baz = $foo++; -- test( (sprintf "%d", $foo), '15'); -- test( (sprintf "%d", $baz), '14'); -- test( "$foo", '[++ [+= [++ [++ [n 11] 1] 1] 1] 1]'); -+ is((sprintf "%d", $foo), '15'); -+ is((sprintf "%d", $baz), '14'); -+ is("$foo", '[++ [+= [++ [++ [n 11] 1] 1] 1] 1]'); - } - - { -@@ -664,8 +636,8 @@ - $side = (sqrt(1 + $side**2) - 1)/$side; - } - my $pi = $side*(2**($iter+2)); -- test "$side", '[/ [- [sqrt [+ 1 [** [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]] 2]]] 1] [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]]]'; -- test( (sprintf "%f", $pi), '3.182598'); -+ is("$side", '[/ [- [sqrt [+ 1 [** [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]] 2]]] 1] [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]]]'); -+ is((sprintf "%f", $pi), '3.182598'); - } - - { -@@ -677,8 +649,8 @@ - $side = (sqrt(1 + $side**2) - 1)/$side; - } - my $pi = $side*(2**($iter+2)); -- test "$side", '[/ [- [sqrt [+ 1 [** [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]] 2]]] 1] [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]]]'; -- test( (sprintf "%f", $pi), '3.182598'); -+ is("$side", '[/ [- [sqrt [+ 1 [** [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]] 2]]] 1] [/ [- [sqrt [+ 1 [** [n 1] 2]]] 1] [n 1]]]'); -+ is((sprintf "%f", $pi), '3.182598'); - } - - { -@@ -686,9 +658,9 @@ - symbolic1->vars($a, $b); - my $c = sqrt($a**2 + $b**2); - $a = 3; $b = 4; -- test( (sprintf "%d", $c), '5'); -+ is((sprintf "%d", $c), '5'); - $a = 12; $b = 5; -- test( (sprintf "%d", $c), '13'); -+ is((sprintf "%d", $c), '13'); - } - - { -@@ -702,9 +674,9 @@ - - { - my $seven = new two_face ("vii", 7); -- test( (sprintf "seven=$seven, seven=%d, eight=%d", $seven, $seven+1), -+ is((sprintf "seven=$seven, seven=%d, eight=%d", $seven, $seven+1), - 'seven=vii, seven=7, eight=8'); -- test( scalar ($seven =~ /i/), '1') -+ is(scalar ($seven =~ /i/), '1'); - } - - { -@@ -717,7 +689,7 @@ - my @arr = map sorting->new($_), 0..12; - my @sorted1 = sort @arr; - my @sorted2 = map $$_, @sorted1; -- test "@sorted2", '0 10 7 4 1 11 8 5 12 2 9 6 3'; -+ is("@sorted2", '0 10 7 4 1 11 8 5 12 2 9 6 3'); - } - { - package iterator; -@@ -728,21 +700,21 @@ - - # XXX iterator overload not intended to work with CORE::GLOBAL? - if (defined &CORE::GLOBAL::glob) { -- test '1', '1'; # 175 -- test '1', '1'; # 176 -- test '1', '1'; # 177 -+ is('1', '1'); -+ is('1', '1'); -+ is('1', '1'); - } - else { - my $iter = iterator->new(5); - my $acc = ''; - my $out; - $acc .= " $out" while $out = <${iter}>; -- test $acc, ' 5 4 3 2 1 0'; # 175 -+ is($acc, ' 5 4 3 2 1 0'); - $iter = iterator->new(5); -- test scalar <${iter}>, '5'; # 176 -+ is(scalar <${iter}>, '5'); - $acc = ''; - $acc .= " $out" while $out = <$iter>; -- test $acc, ' 4 3 2 1 0'; # 177 -+ is($acc, ' 4 3 2 1 0'); - } - { - package deref; -@@ -773,53 +745,53 @@ - # Hash: - my @cont = sort %$deref; - if ("\t" eq "\011") { # ascii -- test "@cont", '23 5 fake foo'; # 178 -+ is("@cont", '23 5 fake foo'); - } - else { # ebcdic alpha-numeric sort order -- test "@cont", 'fake foo 23 5'; # 178 -+ is("@cont", 'fake foo 23 5'); - } - my @keys = sort keys %$deref; -- test "@keys", 'fake foo'; # 179 -+ is("@keys", 'fake foo'); - my @val = sort values %$deref; -- test "@val", '23 5'; # 180 -- test $deref->{foo}, 5; # 181 -- test defined $deref->{bar}, ''; # 182 -+ is("@val", '23 5'); -+ is($deref->{foo}, 5); -+ is(defined $deref->{bar}, ''); - my $key; - @keys = (); - push @keys, $key while $key = each %$deref; - @keys = sort @keys; -- test "@keys", 'fake foo'; # 183 -- test exists $deref->{bar}, ''; # 184 -- test exists $deref->{foo}, 1; # 185 -+ is("@keys", 'fake foo'); -+ is(exists $deref->{bar}, ''); -+ is(exists $deref->{foo}, 1); - # Code: -- test $deref->(5), 39; # 186 -- test &$deref(6), 40; # 187 -+ is($deref->(5), 39); -+ is(&$deref(6), 40); - sub xxx_goto { goto &$deref } -- test xxx_goto(7), 41; # 188 -+ is(xxx_goto(7), 41); - my $srt = bless { c => sub {$b <=> $a} - }, 'deref'; - *srt = \&$srt; - my @sorted = sort srt 11, 2, 5, 1, 22; -- test "@sorted", '22 11 5 2 1'; # 189 -+ is("@sorted", '22 11 5 2 1'); - # Scalar -- test $$deref, 123; # 190 -+ is($$deref, 123); - # Code - @sorted = sort $srt 11, 2, 5, 1, 22; -- test "@sorted", '22 11 5 2 1'; # 191 -+ is("@sorted", '22 11 5 2 1'); - # Array -- test "@$deref", '11 12 13'; # 192 -- test $#$deref, '2'; # 193 -+ is("@$deref", '11 12 13'); -+ is($#$deref, '2'); - my $l = @$deref; -- test $l, 3; # 194 -- test $deref->[2], '13'; # 195 -+ is($l, 3); -+ is($deref->[2], '13'); - $l = pop @$deref; -- test $l, 13; # 196 -+ is($l, 13); - $l = 1; -- test $deref->[$l], '12'; # 197 -+ is($deref->[$l], '12'); - # Repeated dereference - my $double = bless { h => $deref, - }, 'deref'; -- test $double->{foo}, 5; # 198 -+ is($double->{foo}, 5); - } - - { -@@ -856,9 +828,9 @@ - - my $bar = new two_refs 3,4,5,6; - $bar->[2] = 11; --test $bar->{two}, 11; # 199 -+is($bar->{two}, 11); - $bar->{three} = 13; --test $bar->[3], 13; # 200 -+is($bar->[3], 13); - - { - package two_refs_o; -@@ -867,9 +839,9 @@ - - $bar = new two_refs_o 3,4,5,6; - $bar->[2] = 11; --test $bar->{two}, 11; # 201 -+is($bar->{two}, 11); - $bar->{three} = 13; --test $bar->[3], 13; # 202 -+is($bar->[3], 13); - - { - package two_refs1; -@@ -909,9 +881,9 @@ - - $bar = new two_refs_o 3,4,5,6; - $bar->[2] = 11; --test $bar->{two}, 11; # 203 -+is($bar->{two}, 11); - $bar->{three} = 13; --test $bar->[3], 13; # 204 -+is($bar->[3], 13); - - { - package two_refs1_o; -@@ -920,9 +892,9 @@ - - $bar = new two_refs1_o 3,4,5,6; - $bar->[2] = 11; --test $bar->{two}, 11; # 205 -+is($bar->{two}, 11); - $bar->{three} = 13; --test $bar->[3], 13; # 206 -+is($bar->[3], 13); - - { - package B; -@@ -932,12 +904,12 @@ - my $aaa; - { my $bbbb = 0; $aaa = bless \$bbbb, B } - --test !$aaa, 1; # 207 -+is !$aaa, 1; - - unless ($aaa) { -- test 'ok', 'ok'; # 208 -+ pass(); - } else { -- test 'is not', 'ok'; # 208 -+ fail(); - } - - # check that overload isn't done twice by join -@@ -945,7 +917,7 @@ - package Join; - use overload '""' => sub { $c++ }; - my $x = join '', bless([]), 'pq', bless([]); -- main::test $x, '0pq1'; # 209 -+ main::is $x, '0pq1'; - }; - - # Test module-specific warning -@@ -954,10 +926,10 @@ - my $a = "" ; - local $SIG{__WARN__} = sub {$a = $_[0]} ; - $x = eval ' overload::constant "integer" ; ' ; -- test($a eq "") ; # 210 -+ is($a, ""); - use warnings 'overload' ; - $x = eval ' overload::constant "integer" ; ' ; -- test($a =~ /^Odd number of arguments for overload::constant at/) ; # 211 -+ like($a, qr/^Odd number of arguments for overload::constant at/); - } - - { -@@ -965,10 +937,10 @@ - my $a = "" ; - local $SIG{__WARN__} = sub {$a = $_[0]} ; - $x = eval ' overload::constant "fred" => sub {} ; ' ; -- test($a eq "") ; # 212 -+ is($a, ""); - use warnings 'overload' ; - $x = eval ' overload::constant "fred" => sub {} ; ' ; -- test($a =~ /^`fred' is not an overloadable type at/); # 213 -+ like($a, qr/^`fred' is not an overloadable type at/); - } - - { -@@ -976,10 +948,10 @@ - my $a = "" ; - local $SIG{__WARN__} = sub {$a = $_[0]} ; - $x = eval ' overload::constant "integer" => 1; ' ; -- test($a eq "") ; # 214 -+ is($a, ""); - use warnings 'overload' ; - $x = eval ' overload::constant "integer" => 1; ' ; -- test($a =~ /^`1' is not a code reference at/); # 215 -+ like($a, qr/^`1' is not a code reference at/); - } - - { -@@ -1005,13 +977,13 @@ - - my $x = new noov_int 11; - my $int_x = int $x; -- main::test("$int_x" eq 20); # 216 -+ main::is("$int_x", 20); - $x = new ov_int1 31; - $int_x = int $x; -- main::test("$int_x" eq 131); # 217 -+ main::is("$int_x", 131); - $x = new ov_int2 51; - $int_x = int $x; -- main::test("$int_x" eq 1054); # 218 -+ main::is("$int_x", 1054); - } - - # make sure that we don't inifinitely recurse -@@ -1023,9 +995,10 @@ - 'bool' => sub { shift }, - fallback => 1; - my $x = bless([]); -- main::test("$x" =~ /Recurse=ARRAY/); # 219 -- main::test($x); # 220 -- main::test($x+0 =~ /Recurse=ARRAY/); # 221 -+ # For some reason beyond me these have to be oks rather than likes. -+ main::ok("$x" =~ /Recurse=ARRAY/); -+ main::ok($x); -+ main::ok($x+0 =~ qr/Recurse=ARRAY/); - } - - # BugID 20010422.003 -@@ -1056,7 +1029,7 @@ - my $r = Foo->new(8); - $r = Foo->new(0); - --test(($r || 0) == 0); # 222 -+is(($r || 0), 0); - - package utf8_o; - -@@ -1076,8 +1049,8 @@ - - - my $utfvar = new utf8_o 200.2.1; --test("$utfvar" eq 200.2.1); # 223 - stringify --test("a$utfvar" eq "a".200.2.1); # 224 - overload via sv_2pv_flags -+is("$utfvar", 200.2.1); # 223 - stringify -+is("a$utfvar", "a".200.2.1); # 224 - overload via sv_2pv_flags - - # 225..227 -- more %{} tests. Hangs in 5.6.0, okay in later releases. - # Basically this example implements strong encapsulation: if Hderef::import() -@@ -1093,9 +1066,9 @@ - package main; - my $a = Foo->new; - $a->xet('b', 42); --test ($a->xet('b'), 42); --test (!defined eval { $a->{b} }); --test ($@ =~ /zap/); -+is ($a->xet('b'), 42); -+ok (!defined eval { $a->{b} }); -+like ($@, qr/zap/); - - { - package t229; -@@ -1110,7 +1083,7 @@ - my $y = $x; - eval { $y++ }; - } -- main::test (!$warn); -+ main::ok (!$warn); - } - - { -@@ -1120,9 +1093,9 @@ - $out1 = 0; - $out2 = 1; - } -- test($int, 2, "#24313"); # 230 -- test($out1, 17, "#24313"); # 231 -- test($out2, 17, "#24313"); # 232 -+ is($int, 2, "#24313"); # 230 -+ is($out1, 17, "#24313"); # 231 -+ is($out2, 17, "#24313"); # 232 - } - - { -@@ -1146,16 +1119,16 @@ - my $o = bless [], 'perl31793'; - my $of = bless [], 'perl31793_fb'; - my $no = bless [], 'no_overload'; -- test (overload::StrVal(\"scalar") =~ /^SCALAR\(0x[0-9a-f]+\)$/); -- test (overload::StrVal([]) =~ /^ARRAY\(0x[0-9a-f]+\)$/); -- test (overload::StrVal({}) =~ /^HASH\(0x[0-9a-f]+\)$/); -- test (overload::StrVal(sub{1}) =~ /^CODE\(0x[0-9a-f]+\)$/); -- test (overload::StrVal(\*GLOB) =~ /^GLOB\(0x[0-9a-f]+\)$/); -- test (overload::StrVal(\$o) =~ /^REF\(0x[0-9a-f]+\)$/); -- test (overload::StrVal(qr/a/) =~ /^Regexp=SCALAR\(0x[0-9a-f]+\)$/); -- test (overload::StrVal($o) =~ /^perl31793=ARRAY\(0x[0-9a-f]+\)$/); -- test (overload::StrVal($of) =~ /^perl31793_fb=ARRAY\(0x[0-9a-f]+\)$/); -- test (overload::StrVal($no) =~ /^no_overload=ARRAY\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal(\"scalar"), qr/^SCALAR\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal([]), qr/^ARRAY\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal({}), qr/^HASH\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal(sub{1}), qr/^CODE\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal(\*GLOB), qr/^GLOB\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal(\$o), qr/^REF\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal(qr/a/), qr/^Regexp=SCALAR\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal($o), qr/^perl31793=ARRAY\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal($of), qr/^perl31793_fb=ARRAY\(0x[0-9a-f]+\)$/); -+ like(overload::StrVal($no), qr/^no_overload=ARRAY\(0x[0-9a-f]+\)$/); - } - - # These are all check that overloaded values rather than reference addressess -@@ -1174,9 +1147,102 @@ - die if $@; - my $expect = eval $rcode; - die if $@; -- test ($got, $expect, $ocode) or print "# $rcode\n"; -+ is ($got, $expect, $ocode) or print "# $rcode\n"; - } - } - } --# Last test is: --sub last {493} -+{ -+ # check that overloading works in regexes -+ { -+ package Foo493; -+ use overload -+ '""' => sub { "^$_[0][0]\$" }, -+ '.' => sub { -+ bless [ -+ $_[2] -+ ? (ref $_[1] ? $_[1][0] : $_[1]) . ':' .$_[0][0] -+ : $_[0][0] . ':' . (ref $_[1] ? $_[1][0] : $_[1]) -+ ], 'Foo493' -+ }; -+ } -+ -+ my $a = bless [ "a" ], 'Foo493'; -+ like('a', qr/$a/); -+ like('x:a', qr/x$a/); -+ like('x:a:=', qr/x$a=$/); -+ like('x:a:a:=', qr/x$a$a=$/); -+ -+} -+ -+{ -+ package Sklorsh; -+ use overload -+ bool => sub { shift->is_cool }; -+ -+ sub is_cool { -+ $_[0]->{name} eq 'cool'; -+ } -+ -+ sub delete { -+ undef %{$_[0]}; -+ bless $_[0], 'Brap'; -+ return 1; -+ } -+ -+ sub delete_with_self { -+ my $self = shift; -+ undef %$self; -+ bless $self, 'Brap'; -+ return 1; -+ } -+ -+ package Brap; -+ -+ 1; -+ -+ package main; -+ -+ my $obj; -+ $obj = bless {name => 'cool'}, 'Sklorsh'; -+ $obj->delete; -+ ok(eval {if ($obj) {1}; 1}, $@ || 'reblessed into nonexist namespace'); -+ -+ $obj = bless {name => 'cool'}, 'Sklorsh'; -+ $obj->delete_with_self; -+ ok (eval {if ($obj) {1}; 1}, $@); -+ -+ my $a = $b = {name => 'hot'}; -+ bless $b, 'Sklorsh'; -+ is(ref $a, 'Sklorsh'); -+ is(ref $b, 'Sklorsh'); -+ ok(!$b, "Expect overloaded boolean"); -+ ok(!$a, "Expect overloaded boolean"); -+} -+{ -+ use Scalar::Util 'weaken'; -+ -+ package Shklitza; -+ use overload '""' => sub {"CLiK KLAK"}; -+ -+ package Ksshfwoom; -+ -+ package main; -+ -+ my ($obj, $ref); -+ $obj = bless do {my $a; \$a}, 'Shklitza'; -+ $ref = $obj; -+ -+ is ($obj, "CLiK KLAK"); -+ is ($ref, "CLiK KLAK"); -+ -+ weaken $ref; -+ is ($ref, "CLiK KLAK"); -+ -+ bless $obj, 'Ksshfwoom'; -+ -+ like ($obj, qr/^Ksshfwoom=/); -+ like ($ref, qr/^Ksshfwoom=/); -+ -+ undef $obj; -+ is ($ref, undef); -+} diff --git a/perl-5.8.8-U27512.patch b/perl-5.8.8-U27512.patch deleted file mode 100644 index fe6770b..0000000 --- a/perl-5.8.8-U27512.patch +++ /dev/null @@ -1,115 +0,0 @@ ---- perl-5.8.8/sv.c.U27512 2006-06-01 18:43:19.000000000 -0400 -+++ perl-5.8.8/sv.c 2006-06-01 19:13:32.000000000 -0400 -@@ -7993,6 +7993,52 @@ - return rv; - } - -+/* This is a hack to cope with reblessing from class with overloading magic to -+ one without (or the other way). Search for every reference pointing to the -+ object. Can't use S_visit() because we would need to pass a parameter to -+ our function. */ -+static void -+S_reset_amagic(pTHX_ SV *rv, const bool on) { -+ /* It is assumed that you've already turned magic on/off on rv */ -+ SV* sva; -+ SV *const target = SvRV(rv); -+ /* Less 1 for the reference we've already dealt with. */ -+ U32 how_many = SvREFCNT(target) - 1; -+ MAGIC *mg; -+ -+ if (SvMAGICAL(target) && (mg = mg_find(target, PERL_MAGIC_backref))) { -+ /* Back referneces also need to be found, but aren't part of the -+ target's reference count. */ -+ how_many += 1 + av_len((AV*)mg->mg_obj); -+ } -+ -+ if (!how_many) { -+ /* There was only 1 reference to this object. */ -+ return; -+ } -+ -+ for (sva = PL_sv_arenaroot; sva; sva = (SV*)SvANY(sva)) { -+ register const SV * const svend = &sva[SvREFCNT(sva)]; -+ register SV* sv; -+ for (sv = sva + 1; sv < svend; ++sv) { -+ if (SvTYPE(sv) != SVTYPEMASK -+ && (sv->sv_flags & SVf_ROK) == SVf_ROK -+ && SvREFCNT(sv) -+ && SvRV(sv) == target -+ && sv != rv) { -+ if (on) -+ SvAMAGIC_on(sv); -+ else -+ SvAMAGIC_off(sv); -+ if (--how_many == 0) { -+ /* We have found them all. */ -+ return; -+ } -+ } -+ } -+ } -+} -+ - /* - =for apidoc sv_bless - -@@ -8025,10 +8071,17 @@ - (void)SvUPGRADE(tmpRef, SVt_PVMG); - SvSTASH_set(tmpRef, (HV*)SvREFCNT_inc(stash)); - -- if (Gv_AMG(stash)) -- SvAMAGIC_on(sv); -- else -- SvAMAGIC_off(sv); -+ if (Gv_AMG(stash)) { -+ if (!SvAMAGIC(sv)) { -+ SvAMAGIC_on(sv); -+ S_reset_amagic(aTHX_ sv, TRUE); -+ } -+ } else { -+ if (SvAMAGIC(sv)) { -+ SvAMAGIC_off(sv); -+ S_reset_amagic(aTHX_ sv, FALSE); -+ } -+ } - - if(SvSMAGICAL(tmpRef)) - if(mg_find(tmpRef, PERL_MAGIC_ext) || mg_find(tmpRef, PERL_MAGIC_uvar)) ---- perl-5.8.8/proto.h.U27512 2006-06-01 18:43:19.000000000 -0400 -+++ perl-5.8.8/proto.h 2006-06-01 19:13:32.000000000 -0400 -@@ -1875,6 +1875,7 @@ - # - STATIC bool S_utf8_mg_pos(pTHX_ SV *sv, MAGIC **mgp, STRLEN **cachep, I32 i, I32 *offsetp, I32 uoff, const U8 **sp, const U8 *start, const U8 *send); - STATIC bool S_utf8_mg_pos_init(pTHX_ SV *sv, MAGIC **mgp, STRLEN **cachep, I32 i, I32 offsetp, const U8 *s, const U8 *start); -+STATIC void S_reset_amagic(pTHX_ SV *rv, const bool on); - #endif - - #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) ---- perl-5.8.8/embed.h.U27512 2006-06-01 18:43:19.000000000 -0400 -+++ perl-5.8.8/embed.h 2006-06-01 19:13:32.000000000 -0400 -@@ -1348,6 +1348,7 @@ - #ifdef PERL_CORE - #define utf8_mg_pos S_utf8_mg_pos - #define utf8_mg_pos_init S_utf8_mg_pos_init -+#define reset_amagic S_reset_amagic - #endif - #endif - #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) -@@ -3390,6 +3391,7 @@ - #ifdef PERL_CORE - #define utf8_mg_pos(a,b,c,d,e,f,g,h,i) S_utf8_mg_pos(aTHX_ a,b,c,d,e,f,g,h,i) - #define utf8_mg_pos_init(a,b,c,d,e,f,g) S_utf8_mg_pos_init(aTHX_ a,b,c,d,e,f,g) -+#define reset_amagic(a,b) S_reset_amagic(aTHX_ a,b) - #endif - #endif - #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) ---- perl-5.8.8/embed.fnc.U27512 2006-06-01 18:43:19.000000000 -0400 -+++ perl-5.8.8/embed.fnc 2006-06-01 19:13:32.000000000 -0400 -@@ -1276,6 +1276,7 @@ - s |bool |utf8_mg_pos_init |NN SV *sv|NN MAGIC **mgp \ - |NN STRLEN **cachep|I32 i|I32 offsetp \ - |NN const U8 *s|NN const U8 *start -+s |void |reset_amagic |NN SV *rv|const bool on - #endif - - #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) diff --git a/perl-5.8.8-U27604.patch b/perl-5.8.8-U27604.patch deleted file mode 100644 index a089961..0000000 --- a/perl-5.8.8-U27604.patch +++ /dev/null @@ -1,128 +0,0 @@ ---- /dev/null 2006-06-01 12:59:27.771303750 -0400 -+++ perl-5.8.8/t/op/regexp_qr.t 2006-06-01 19:24:53.000000000 -0400 -@@ -0,0 +1,10 @@ -+#!./perl -+ -+$qr = 1; -+for $file ('./op/regexp.t', './t/op/regexp.t', ':op:regexp.t') { -+ if (-r $file) { -+ do $file; -+ exit; -+ } -+} -+die "Cannot find ./op/regexp.t or ./t/op/regexp.t\n"; ---- perl-5.8.8/t/op/regexp.t.U27604 2001-10-27 14:09:24.000000000 -0400 -+++ perl-5.8.8/t/op/regexp.t 2006-06-01 19:24:53.000000000 -0400 -@@ -49,6 +49,7 @@ - $bang = sprintf "\\%03o", ord "!"; # \41 would not be portable. - $ffff = chr(0xff) x 2; - $nulnul = "\0" x 2; -+$OP = $qr ? 'qr' : 'm'; - - $| = 1; - print "1..$numtests\n# $iters iterations\n"; -@@ -73,7 +74,7 @@ - $result =~ s/B//i unless $skip; - for $study ('', 'study \$subject') { - $c = $iters; -- eval "$study; \$match = (\$subject =~ m$pat) while \$c--; \$got = \"$repl\";"; -+ eval "$study; \$match = (\$subject =~ $OP$pat) while \$c--; \$got = \"$repl\";"; - chomp( $err = $@ ); - if ($result eq 'c') { - if ($err !~ m!^\Q$expect!) { print "not ok $. (compile) $input => `$err'\n"; next TEST } ---- perl-5.8.8/regexec.c.U27604 2006-01-08 15:59:30.000000000 -0500 -+++ perl-5.8.8/regexec.c 2006-06-01 19:24:53.000000000 -0400 -@@ -412,6 +412,7 @@ - I32 ml_anch; - register char *other_last = Nullch; /* other substr checked before this */ - char *check_at = Nullch; /* check substr found at this pos */ -+ const I32 multiline = PL_multiline | (prog->reganch & PMf_MULTILINE); - #ifdef DEBUGGING - const char * const i_strpos = strpos; - SV * const dsv = PERL_DEBUG_PAD_ZERO(0); -@@ -473,7 +474,7 @@ - if (prog->reganch & ROPT_ANCH) { /* Match at beg-of-str or after \n */ - ml_anch = !( (prog->reganch & ROPT_ANCH_SINGLE) - || ( (prog->reganch & ROPT_ANCH_BOL) -- && !PL_multiline ) ); /* Check after \n? */ -+ && !multiline ) ); /* Check after \n? */ - - if (!ml_anch) { - if ( !(prog->reganch & (ROPT_ANCH_GPOS /* Checked by the caller */ -@@ -568,11 +569,11 @@ - else if (prog->reganch & ROPT_CANY_SEEN) - s = fbm_instr((U8*)(s + start_shift), - (U8*)(strend - end_shift), -- check, PL_multiline ? FBMrf_MULTILINE : 0); -+ check, multiline ? FBMrf_MULTILINE : 0); - else - s = fbm_instr(HOP3(s, start_shift, strend), - HOP3(strend, -end_shift, strbeg), -- check, PL_multiline ? FBMrf_MULTILINE : 0); -+ check, multiline ? FBMrf_MULTILINE : 0); - - /* Update the count-of-usability, remove useless subpatterns, - unshift s. */ -@@ -643,7 +644,7 @@ - HOP3(HOP3(last1, prog->anchored_offset, strend) - + SvCUR(must), -(SvTAIL(must)!=0), strbeg), - must, -- PL_multiline ? FBMrf_MULTILINE : 0 -+ multiline ? FBMrf_MULTILINE : 0 - ); - DEBUG_r(PerlIO_printf(Perl_debug_log, - "%s anchored substr \"%s%.*s%s\"%s", -@@ -704,7 +705,7 @@ - s = fbm_instr((unsigned char*)s, - (unsigned char*)last + SvCUR(must) - - (SvTAIL(must)!=0), -- must, PL_multiline ? FBMrf_MULTILINE : 0); -+ must, multiline ? FBMrf_MULTILINE : 0); - /* FIXME - DEBUG_EXECUTE_r if that is merged to maint */ - DEBUG_r(PerlIO_printf(Perl_debug_log, "%s floating substr \"%s%.*s%s\"%s", - (s ? "Found" : "Contradicts"), -@@ -1639,6 +1640,7 @@ - char *scream_olds; - SV* oreplsv = GvSV(PL_replgv); - const bool do_utf8 = DO_UTF8(sv); -+ const I32 multiline = PL_multiline | (prog->reganch & PMf_MULTILINE); - #ifdef DEBUGGING - SV *dsv0 = PERL_DEBUG_PAD_ZERO(0); - SV *dsv1 = PERL_DEBUG_PAD_ZERO(1); -@@ -1756,7 +1758,7 @@ - if (prog->reganch & (ROPT_ANCH & ~ROPT_ANCH_GPOS)) { - if (s == startpos && regtry(prog, startpos)) - goto got_it; -- else if (PL_multiline || (prog->reganch & ROPT_IMPLICIT) -+ else if (multiline || (prog->reganch & ROPT_IMPLICIT) - || (prog->reganch & ROPT_ANCH_MBOL)) /* XXXX SBOL? */ - { - char *end; -@@ -1889,7 +1891,7 @@ - end_shift, &scream_pos, 0)) - : (s = fbm_instr((unsigned char*)HOP3(s, back_min, strend), - (unsigned char*)strend, must, -- PL_multiline ? FBMrf_MULTILINE : 0))) ) { -+ multiline ? FBMrf_MULTILINE : 0))) ) { - /* we may be pointing at the wrong string */ - if ((flags & REXEC_SCREAM) && RX_MATCH_COPIED(prog)) - s = strbeg + (s - SvPVX_const(sv)); -@@ -1990,7 +1992,7 @@ - if (SvTAIL(float_real)) { - if (memEQ(strend - len + 1, little, len - 1)) - last = strend - len + 1; -- else if (!PL_multiline) -+ else if (!multiline) - last = memEQ(strend - len, little, len) - ? strend - len : Nullch; - else ---- perl-5.8.8/MANIFEST.U27604 2006-01-31 18:27:53.000000000 -0500 -+++ perl-5.8.8/MANIFEST 2006-06-01 19:24:52.000000000 -0400 -@@ -2802,6 +2802,7 @@ - t/op/ref.t See if refs and objects work - t/op/regexp_noamp.t See if regular expressions work with optimizations - t/op/regexp.t See if regular expressions work -+t/op/regexp_qr.t See if regular expressions work as qr// - t/op/regmesg.t See if one can get regular expression errors - t/op/repeat.t See if x operator works - t/op/re_tests Regular expressions for regexp.t diff --git a/perl-5.8.8-U27605.patch b/perl-5.8.8-U27605.patch deleted file mode 100644 index c084fea..0000000 --- a/perl-5.8.8-U27605.patch +++ /dev/null @@ -1,41 +0,0 @@ ---- perl-5.8.8/mg.c.U27605 2006-01-27 15:23:21.000000000 -0500 -+++ perl-5.8.8/mg.c 2006-06-01 19:37:17.000000000 -0400 -@@ -2520,10 +2520,10 @@ - #endif - /* PL_origalen is set in perl_parse(). */ - s = SvPV_force(sv,len); -- if (len >= (STRLEN)PL_origalen) { -- /* Longer than original, will be truncated. */ -- Copy(s, PL_origargv[0], PL_origalen, char); -- PL_origargv[0][PL_origalen - 1] = 0; -+ if (len >= (STRLEN)PL_origalen-1) { -+ /* Longer than original, will be truncated. We assume that -+ * PL_origalen bytes are available. */ -+ Copy(s, PL_origargv[0], PL_origalen-1, char); - } - else { - /* Shorter than original, will be padded. */ -@@ -2536,9 +2536,10 @@ - * --jhi */ - (int)' ', - PL_origalen - len - 1); -- for (i = 1; i < PL_origargc; i++) -- PL_origargv[i] = 0; - } -+ PL_origargv[0][PL_origalen-1] = 0; -+ for (i = 1; i < PL_origargc; i++) -+ PL_origargv[i] = 0; - UNLOCK_DOLLARZERO_MUTEX; - break; - #endif ---- perl-5.8.8/perl.c.U27605 2006-06-01 19:00:57.000000000 -0400 -+++ perl-5.8.8/perl.c 2006-06-01 19:37:17.000000000 -0400 -@@ -1561,7 +1561,7 @@ - } - } - } -- PL_origalen = s - PL_origargv[0]; -+ PL_origalen = s - PL_origargv[0] + 1; - } - - if (PL_do_undump) { diff --git a/perl-5.8.8-U27914.patch b/perl-5.8.8-U27914.patch deleted file mode 100644 index 8bc3816..0000000 --- a/perl-5.8.8-U27914.patch +++ /dev/null @@ -1,61 +0,0 @@ ---- perl-5.8.8/t/op/local.t.U27914 2006-01-03 10:11:35.000000000 -0500 -+++ perl-5.8.8/t/op/local.t 2006-06-01 19:49:54.000000000 -0400 -@@ -4,7 +4,7 @@ - chdir 't' if -d 't'; - require './test.pl'; - } --plan tests => 81; -+plan tests => 85; - - my $list_assignment_supported = 1; - -@@ -313,3 +313,19 @@ - { local @x{c,d,e}; } - ok(! exists $x{c}); - } -+ -+# local() and readonly magic variables -+ -+eval { local $1 = 1 }; -+like($@, qr/Modification of a read-only value attempted/); -+ -+eval { for ($1) { local $_ = 1 } }; -+like($@, qr/Modification of a read-only value attempted/); -+ -+# make sure $1 is still read-only -+eval { for ($1) { local $_ = 1 } }; -+is($@, ""); -+ -+# The s/// adds 'g' magic to $_, but it should remain non-readonly -+eval { for("a") { for $x (1,2) { local $_="b"; s/(.*)/+$1/ } } }; -+is($@, ""); ---- perl-5.8.8/scope.c.U27914 2005-09-30 09:56:51.000000000 -0400 -+++ perl-5.8.8/scope.c 2006-06-01 19:49:54.000000000 -0400 -@@ -205,9 +205,9 @@ - register SV * const sv = *sptr = NEWSV(0,0); - - if (SvTYPE(osv) >= SVt_PVMG && SvMAGIC(osv) && SvTYPE(osv) != SVt_PVGV) { -+ MAGIC *mg; - sv_upgrade(sv, SvTYPE(osv)); - if (SvGMAGICAL(osv)) { -- MAGIC* mg; - const bool oldtainted = PL_tainted; - mg_get(osv); /* note, can croak! */ - if (PL_tainting && PL_tainted && -@@ -220,6 +220,16 @@ - PL_tainted = oldtainted; - } - SvMAGIC_set(sv, SvMAGIC(osv)); -+ /* if it's a special scalar or if it has no 'set' magic, -+ * propagate the SvREADONLY flag. --rgs 20030922 */ -+ for (mg = SvMAGIC(sv); mg; mg = mg->mg_moremagic) { -+ if (mg->mg_type == '\0' -+ || !(mg->mg_virtual && mg->mg_virtual->svt_set)) -+ { -+ SvFLAGS(sv) |= SvREADONLY(osv); -+ break; -+ } -+ } - SvFLAGS(sv) |= SvMAGICAL(osv); - /* XXX SvMAGIC() is *shared* between osv and sv. This can - * lead to coredumps when both SVs are destroyed without one diff --git a/perl-5.8.8-U28775.patch b/perl-5.8.8-U28775.patch deleted file mode 100644 index effacc4..0000000 --- a/perl-5.8.8-U28775.patch +++ /dev/null @@ -1,325 +0,0 @@ ---- perl-5.8.8/ext/B/B/Deparse.pm-28 -+++ perl-5.8.8/ext/B/B/Deparse.pm -@@ -19,7 +19,7 @@ - CVf_METHOD CVf_LOCKED CVf_LVALUE CVf_ASSERTION - PMf_KEEP PMf_GLOBAL PMf_CONTINUE PMf_EVAL PMf_ONCE PMf_SKIPWHITE - PMf_MULTILINE PMf_SINGLELINE PMf_FOLD PMf_EXTENDED); --$VERSION = 0.71; -+$VERSION = 0.71_01; - use strict; - use vars qw/$AUTOLOAD/; - use warnings (); -@@ -1711,6 +1711,32 @@ - return $self->{'curcv'}->PADLIST->ARRAYelt(1)->ARRAYelt($targ); - } - -+sub anon_hash_or_list { -+ my $self = shift; -+ my $op = shift; -+ -+ my($pre, $post) = @{{"anonlist" => ["[","]"], -+ "anonhash" => ["{","}"]}->{$op->name}}; -+ my($expr, @exprs); -+ $op = $op->first->sibling; # skip pushmark -+ for (; !null($op); $op = $op->sibling) { -+ $expr = $self->deparse($op, 6); -+ push @exprs, $expr; -+ } -+ return $pre . join(", ", @exprs) . $post; -+} -+ -+sub pp_anonlist { -+ my ($self, $op) = @_; -+ if ($op->flags & OPf_SPECIAL) { -+ return $self->anon_hash_or_list($op); -+ } -+ warn "Unexpected op pp_" . $op->name() . " without OPf_SPECIAL"; -+ return 'XXX'; -+} -+ -+*pp_anonhash = \&pp_anonlist; -+ - sub pp_refgen { - my $self = shift; - my($op, $cx) = @_; -@@ -1718,15 +1744,7 @@ - if ($kid->name eq "null") { - $kid = $kid->first; - if ($kid->name eq "anonlist" || $kid->name eq "anonhash") { -- my($pre, $post) = @{{"anonlist" => ["[","]"], -- "anonhash" => ["{","}"]}->{$kid->name}}; -- my($expr, @exprs); -- $kid = $kid->first->sibling; # skip pushmark -- for (; !null($kid); $kid = $kid->sibling) { -- $expr = $self->deparse($kid, 6); -- push @exprs, $expr; -- } -- return $pre . join(", ", @exprs) . $post; -+ return $self->anon_hash_or_list($op); - } elsif (!null($kid->sibling) and - $kid->sibling->name eq "anoncode") { - return "sub " . - ---- perl-5.8.8/ext/B/t/concise-xs.t.orig 2007-06-22 13:35:00.000000000 -0400 -+++ perl-5.8.8/ext/B/t/concise-xs.t 2007-06-22 13:35:22.000000000 -0400 -@@ -95,7 +95,7 @@ - # One 5.009-only test to go when no 6; is integrated (25344) - use Test::More tests => ( 1 * !!$Config::Config{useithreads} - + 1 * ($] > 5.009) -- + 778); -+ + 781); - - require_ok("B::Concise"); - - ---- perl-5.8.8/ext/B/t/f_map.t-7 -+++ perl-5.8.8/ext/B/t/f_map.t -@@ -512,14 +512,13 @@ - # 9 <#> gvsv[*_] s - # a <1> lc[t4] sK/1 - # b <$> const[IV 1] s --# c <@> anonhash sKRM/1 --# d <1> srefgen sK/1 -+# c <@> anonhash sK*/1 - # goto 7 --# e <0> pushmark s --# f <#> gv[*hashes] s --# g <1> rv2av[t2] lKRM*/1 --# h <2> aassign[t8] KS/COMMON --# i <1> leavesub[1 ref] K/REFC,1 -+# d <0> pushmark s -+# e <#> gv[*hashes] s -+# f <1> rv2av[t2] lKRM*/1 -+# g <2> aassign[t8] KS/COMMON -+# h <1> leavesub[1 ref] K/REFC,1 - EOT_EOT - # 1 <;> nextstate(main 601 (eval 32):1) v - # 2 <0> pushmark s -@@ -532,12 +531,11 @@ - # 9 <$> gvsv(*_) s - # a <1> lc[t2] sK/1 - # b <$> const(IV 1) s --# c <@> anonhash sKRM/1 --# d <1> srefgen sK/1 -+# c <@> anonhash sK*/1 - # goto 7 --# e <0> pushmark s --# f <$> gv(*hashes) s --# g <1> rv2av[t1] lKRM*/1 --# h <2> aassign[t5] KS/COMMON --# i <1> leavesub[1 ref] K/REFC,1 -+# d <0> pushmark s -+# e <$> gv(*hashes) s -+# f <1> rv2av[t1] lKRM*/1 -+# g <2> aassign[t5] KS/COMMON -+# h <1> leavesub[1 ref] K/REFC,1 - EONT_EONT - ---- perl-5.8.8/ext/B/t/f_sort.t-9 -+++ perl-5.8.8/ext/B/t/f_sort.t -@@ -516,25 +516,24 @@ - # e match(/"=(\\d+)"/) l/RTIME - # f <#> gvsv[*_] s - # g <1> uc[t17] sK/1 --# h <@> anonlist sKRM/1 --# i <1> srefgen sK/1 --# j <@> leave lKP -+# h <@> anonlist sK*/1 -+# i <@> leave lKP - # goto 9 --# k <@> sort lKMS* --# l <@> mapstart lK* --# m <|> mapwhile(other->n)[t26] lK --# n <#> gv[*_] s --# o <1> rv2sv sKM/DREFAV,1 --# p <1> rv2av[t4] sKR/1 --# q <$> const[IV 0] s --# r <2> aelem sK/2 -+# j <@> sort lKMS* -+# k <@> mapstart lK* -+# l <|> mapwhile(other->m)[t26] lK -+# m <#> gv[*_] s -+# n <1> rv2sv sKM/DREFAV,1 -+# o <1> rv2av[t4] sKR/1 -+# p <$> const[IV 0] s -+# q <2> aelem sK/2 - # - <@> scope lK --# goto m --# s <0> pushmark s --# t <#> gv[*new] s --# u <1> rv2av[t2] lKRM*/1 --# v <2> aassign[t27] KS/COMMON --# w <1> leavesub[1 ref] K/REFC,1 -+# goto l -+# r <0> pushmark s -+# s <#> gv[*new] s -+# t <1> rv2av[t2] lKRM*/1 -+# u <2> aassign[t27] KS/COMMON -+# v <1> leavesub[1 ref] K/REFC,1 - EOT_EOT - # 1 <;> nextstate(main 609 (eval 34):3) v - # 2 <0> pushmark s -@@ -552,25 +551,24 @@ - # e match(/"=(\\d+)"/) l/RTIME - # f <$> gvsv(*_) s - # g <1> uc[t9] sK/1 --# h <@> anonlist sKRM/1 --# i <1> srefgen sK/1 --# j <@> leave lKP -+# h <@> anonlist sK*/1 -+# i <@> leave lKP - # goto 9 --# k <@> sort lKMS* --# l <@> mapstart lK* --# m <|> mapwhile(other->n)[t12] lK --# n <$> gv(*_) s --# o <1> rv2sv sKM/DREFAV,1 --# p <1> rv2av[t2] sKR/1 --# q <$> const(IV 0) s --# r <2> aelem sK/2 -+# j <@> sort lKMS* -+# k <@> mapstart lK* -+# l <|> mapwhile(other->m)[t12] lK -+# m <$> gv(*_) s -+# n <1> rv2sv sKM/DREFAV,1 -+# o <1> rv2av[t2] sKR/1 -+# p <$> const(IV 0) s -+# q <2> aelem sK/2 - # - <@> scope lK --# goto m --# s <0> pushmark s --# t <$> gv(*new) s --# u <1> rv2av[t1] lKRM*/1 --# v <2> aassign[t13] KS/COMMON --# w <1> leavesub[1 ref] K/REFC,1 -+# goto l -+# r <0> pushmark s -+# s <$> gv(*new) s -+# t <1> rv2av[t1] lKRM*/1 -+# u <2> aassign[t13] KS/COMMON -+# v <1> leavesub[1 ref] K/REFC,1 - EONT_EONT - - - ---- perl-5.8.8/ext/Devel/Peek/t/Peek.t-8 -+++ perl-5.8.8/ext/Devel/Peek/t/Peek.t -@@ -165,7 +165,7 @@ - FLAGS = \\(ROK\\) - RV = $ADDR - SV = PVAV\\($ADDR\\) at $ADDR -- REFCNT = 2 -+ REFCNT = 1 - FLAGS = \\(\\) - IV = 0 - NV = 0 -@@ -188,7 +188,7 @@ - FLAGS = \\(ROK\\) - RV = $ADDR - SV = PVHV\\($ADDR\\) at $ADDR -- REFCNT = 2 -+ REFCNT = 1 - FLAGS = \\(SHAREKEYS\\) - IV = 1 - NV = $FLOAT -@@ -284,7 +284,7 @@ - FLAGS = \\(ROK\\) - RV = $ADDR - SV = PVHV\\($ADDR\\) at $ADDR -- REFCNT = 2 -+ REFCNT = 1 - FLAGS = \\(OBJECT,SHAREKEYS\\) - IV = 0 - NV = 0 -@@ -353,7 +353,7 @@ - FLAGS = \\(ROK\\) - RV = $ADDR - SV = PVHV\\($ADDR\\) at $ADDR -- REFCNT = 2 -+ REFCNT = 1 - FLAGS = \\(SHAREKEYS,HASKFLAGS\\) - UV = 1 - NV = $FLOAT -@@ -379,7 +379,7 @@ - FLAGS = \\(ROK\\) - RV = $ADDR - SV = PVHV\\($ADDR\\) at $ADDR -- REFCNT = 2 -+ REFCNT = 1 - FLAGS = \\(SHAREKEYS,HASKFLAGS\\) - UV = 1 - NV = 0 - ---- perl-5.8.8/op.c-137 -+++ perl-5.8.8/op.c -@@ -2230,6 +2230,8 @@ - pp_pushmark(); - CALLRUNOPS(aTHX); - PL_op = curop; -+ assert (!(curop->op_flags & OPf_SPECIAL)); -+ assert(curop->op_type == OP_RANGE); - pp_anonlist(); - PL_tmps_floor = oldtmps_floor; - -@@ -4861,15 +4863,13 @@ - OP * - Perl_newANONLIST(pTHX_ OP *o) - { -- return newUNOP(OP_REFGEN, 0, -- mod(list(convert(OP_ANONLIST, 0, o)), OP_REFGEN)); -+ return convert(OP_ANONLIST, OPf_SPECIAL, o); - } - - OP * - Perl_newANONHASH(pTHX_ OP *o) - { -- return newUNOP(OP_REFGEN, 0, -- mod(list(convert(OP_ANONHASH, 0, o)), OP_REFGEN)); -+ return convert(OP_ANONHASH, OPf_SPECIAL, o); - } - - OP * - ---- perl-5.8.8/op.h-26 -+++ perl-5.8.8/op.h -@@ -103,5 +103,7 @@ - * (runtime property) */ - /* On OP_AELEMFAST, indiciates pad var */ -+ /* On OP_ANONHASH and OP_ANONLIST, create a -+ reference to the new anon hash or array */ - - /* old names; don't use in new code, but don't break them, either */ - #define OPf_LIST OPf_WANT_LIST - ---- perl-5.8.8/pp.c-101 -+++ perl-5.8.8/pp.c -@@ -4036,16 +4036,17 @@ - { - dSP; dMARK; dORIGMARK; - const I32 items = SP - MARK; -- SV * const av = sv_2mortal((SV*)av_make(items, MARK+1)); -+ SV * const av = (SV *) av_make(items, MARK+1); - SP = ORIGMARK; /* av_make() might realloc stack_sp */ -- XPUSHs(av); -+ XPUSHs(sv_2mortal((PL_op->op_flags & OPf_SPECIAL) -+ ? newRV_noinc(av) : av)); - RETURN; - } - - PP(pp_anonhash) - { - dSP; dMARK; dORIGMARK; -- HV* const hv = (HV*)sv_2mortal((SV*)newHV()); -+ HV* const hv = newHV(); - - while (MARK < SP) { - SV * const key = *++MARK; -@@ -4057,7 +4058,8 @@ - (void)hv_store_ent(hv,key,val,0); - } - SP = ORIGMARK; -- XPUSHs((SV*)hv); -+ XPUSHs(sv_2mortal((PL_op->op_flags & OPf_SPECIAL) -+ ? newRV_noinc((SV*) hv) : (SV*)hv)); - RETURN; - } diff --git a/perl-5.8.8-U34297_C28006.patch b/perl-5.8.8-U34297_C28006.patch deleted file mode 100644 index 556cb66..0000000 --- a/perl-5.8.8-U34297_C28006.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- perl-5.8.8/pp.c.U34297_C28006 2006-07-13 12:40:37.000000000 -0400 -+++ perl-5.8.8/pp.c 2006-07-13 13:03:19.000000000 -0400 -@@ -2949,7 +2949,22 @@ - dSP; dTARGET; - SV *sv = TOPs; - -- if (DO_UTF8(sv)) -+ if (SvAMAGIC(sv)) { -+ /* For an overloaded scalar, we can't know in advance if it's going to -+ be UTF-8 or not. Also, we can't call sv_len_utf8 as it likes to -+ cache the length. Maybe that should be a documented feature of it. -+ */ -+ STRLEN len; -+ const char *const p = SvPV_const(sv, len); -+ -+ if (DO_UTF8(sv)) { -+ SETi(utf8_length((U8*)p, (U8*)p + len)); -+ } -+ else -+ SETi(len); -+ -+ } -+ else if (DO_UTF8(sv)) - SETi(sv_len_utf8(sv)); - else - SETi(sv_len(sv)); diff --git a/perl-5.8.8-USE_MM_LD_RUN_PATH.patch b/perl-5.8.8-USE_MM_LD_RUN_PATH.patch deleted file mode 100644 index 51489b5..0000000 --- a/perl-5.8.8-USE_MM_LD_RUN_PATH.patch +++ /dev/null @@ -1,123 +0,0 @@ ---- perl-5.8.8-RC1/lib/ExtUtils/MakeMaker.pm.USE_MM_LD_RUN_PATH 2006-01-20 15:51:09.000000000 -0500 -+++ perl-5.8.8-RC1/lib/ExtUtils/MakeMaker.pm 2006-01-20 16:25:43.000000000 -0500 -@@ -233,7 +233,7 @@ - PERL_SRC PERM_RW PERM_RWX - PL_FILES PM PM_FILTER PMLIBDIRS POLLUTE PPM_INSTALL_EXEC - PPM_INSTALL_SCRIPT PREREQ_FATAL PREREQ_PM PREREQ_PRINT PRINT_PREREQ -- SIGN SKIP TYPEMAPS VERSION VERSION_FROM XS XSOPT XSPROTOARG -+ SKIP TYPEMAPS USE_MM_LD_RUN_PATH VERSION VERSION_FROM XS XSOPT XSPROTOARG - XS_VERSION clean depend dist dynamic_lib linkext macro realclean - tool_autosplit - -@@ -369,7 +369,27 @@ - print join(" ", map { "perl($_)>=$self->{PREREQ_PM}->{$_} " } - sort keys %{$self->{PREREQ_PM}}), "\n"; - exit 0; -- } -+ } -+ -+ # USE_MM_LD_RUN_PATH - another RedHatism to disable automatic RPATH generation -+ if ( ( ! $self->{USE_MM_LD_RUN_PATH} ) -+ &&( ("@ARGV" =~ /\bUSE_MM_LD_RUN_PATH(=([01]))?\b/) -+ ||( exists( $ENV{USE_MM_LD_RUN_PATH} ) -+ &&( $ENV{USE_MM_LD_RUN_PATH} =~ /([01])?$/ ) -+ ) -+ ) -+ ) -+ { -+ my $v = $1; -+ if( $v ) -+ { -+ $v = ($v=~/=([01])$/)[0]; -+ }else -+ { -+ $v = 1; -+ }; -+ $self->{USE_MM_LD_RUN_PATH}=$v; -+ }; - - print STDOUT "MakeMaker (v$VERSION)\n" if $Verbose; - if (-f "MANIFEST" && ! -f "Makefile"){ -@@ -1373,13 +1393,13 @@ - - This is the root directory into which the code will be installed. It - I. For example, if your code --would normally go into F you could set DESTDIR=~/tmp/ --and installation would go into F<~/tmp/usr/local/lib/perl>. -+would normally go into /usr/local/lib/perl you could set DESTDIR=~/myperl/ -+and installation would go into ~/myperl/usr/local/lib/perl. - - This is primarily of use for people who repackage Perl modules. - - NOTE: Due to the nature of make, it is important that you put the trailing --slash on your DESTDIR. F<~/tmp/> not F<~/tmp>. -+slash on your DESTDIR. F<"~/myperl/"> not F<"~/myperl">. - - =item DIR - -@@ -2057,6 +2077,40 @@ - precedence, even if it isn't listed in TYPEMAPS. The default system - typemap has lowest precedence. - -+=item USE_MM_LD_RUN_PATH -+ -+boolean -+The Red Hat perl MakeMaker distribution differs from the standard -+upstream release in that it disables use of the MakeMaker generated -+LD_RUN_PATH by default, UNLESS this attribute is specified , or the -+USE_MM_LD_RUN_PATH environment variable is set during the MakeMaker run. -+ -+The upstream MakeMaker will set the ld(1) environment variable LD_RUN_PATH -+to the concatenation of every -L ld(1) option directory in which a -l ld(1) -+option library is found, which is used as the ld(1) -rpath option if none -+is specified. This means that, if your application builds shared libraries -+and your MakeMaker application links to them, that the absolute paths of the -+libraries in the build tree will be inserted into the RPATH header of all -+MakeMaker generated binaries, and that such binaries will be unable to link -+to these libraries if they do not still reside in the build tree directories -+(unlikely) or in the system library directories (/lib or /usr/lib), regardless -+of any LD_LIBRARY_PATH setting. So if you specified -L../mylib -lmylib , and -+ your 'libmylib.so' gets installed into /some_directory_other_than_usr_lib, -+ your MakeMaker application will be unable to link to it, even if LD_LIBRARY_PATH -+is set to include /some_directory_other_than_usr_lib, because RPATH overrides -+LD_LIBRARY_PATH. -+ -+So for Red Hat MakeMaker builds LD_RUN_PATH is NOT generated by default for -+every link. You can still use explicit -rpath ld options or the LD_RUN_PATH -+environment variable during the build to generate an RPATH for the binaries. -+ -+You can set the USE_MM_LD_RUN_PATH attribute to 1 on the MakeMaker command -+line or in the WriteMakefile arguments to enable generation of LD_RUN_PATH -+for every link command. -+ -+USE_MM_LD_RUN_PATH will default to 1 (LD_RUN_PATH will be used) IF the -+$USE_MM_LD_RUN_PATH environment variable is set during a MakeMaker run. -+ - =item VENDORPREFIX - - Like PERLPREFIX, but only for the vendor install locations. ---- perl-5.8.8-RC1/lib/ExtUtils/MM_Unix.pm.USE_MM_LD_RUN_PATH 2005-10-21 10:11:03.000000000 -0400 -+++ perl-5.8.8-RC1/lib/ExtUtils/MM_Unix.pm 2006-01-20 16:20:25.000000000 -0500 -@@ -941,7 +941,7 @@ - } - - my $ld_run_path_shell = ""; -- if ($self->{LD_RUN_PATH} ne "") { -+ if (($self->{LD_RUN_PATH} ne "") && ($self->{USE_MM_LD_RUN_PATH})) { - $ld_run_path_shell = 'LD_RUN_PATH="$(LD_RUN_PATH)" '; - } - ---- perl-5.8.8-RC1/lib/ExtUtils/Liblist.pm.USE_MM_LD_RUN_PATH 2003-04-07 14:58:17.000000000 -0400 -+++ perl-5.8.8-RC1/lib/ExtUtils/Liblist.pm 2006-01-20 16:21:57.000000000 -0500 -@@ -87,6 +87,11 @@ - in LDLOADLIBS. It is passed as an environment variable to the process - that links the shared library. - -+Red Hat extension: This generation of LD_RUN_PATH is disabled by default. -+To use the generated LD_RUN_PATH for all links, set the USE_MM_LD_RUN_PATH -+MakeMaker object attribute / argument, (or set the $USE_MM_LD_RUN_PATH -+environment variable). -+ - =head2 BSLOADLIBS - - List of those libraries that are needed but can be linked in diff --git a/perl-5.8.8-bug24254.patch b/perl-5.8.8-bug24254.patch deleted file mode 100644 index 8411403..0000000 --- a/perl-5.8.8-bug24254.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -up perl-5.8.8/cop.h.BAD perl-5.8.8/cop.h ---- perl-5.8.8/cop.h.BAD 2007-10-18 09:54:16.000000000 -0400 -+++ perl-5.8.8/cop.h 2007-10-18 09:56:17.000000000 -0400 -@@ -286,9 +286,14 @@ struct block_loop { - #define POPLOOP(cx) \ - SvREFCNT_dec(cx->blk_loop.iterlval); \ - if (CxITERVAR(cx)) { \ -- SV **s_v_p = CxITERVAR(cx); \ -- sv_2mortal(*s_v_p); \ -- *s_v_p = cx->blk_loop.itersave; \ -+ if (SvPADMY(cx->blk_loop.itersave)) { \ -+ SV **s_v_p = CxITERVAR(cx); \ -+ sv_2mortal(*s_v_p); \ -+ *s_v_p = cx->blk_loop.itersave; \ -+ } \ -+ else { \ -+ SvREFCNT_dec(cx->blk_loop.itersave); \ -+ } \ - } \ - if (cx->blk_loop.iterary && cx->blk_loop.iterary != PL_curstack)\ - SvREFCNT_dec(cx->blk_loop.iterary); -diff -up perl-5.8.8/t/op/local.t.BAD perl-5.8.8/t/op/local.t ---- perl-5.8.8/t/op/local.t.BAD 2007-10-18 10:53:10.000000000 -0400 -+++ perl-5.8.8/t/op/local.t 2007-10-18 10:53:44.000000000 -0400 -@@ -324,7 +324,7 @@ like($@, qr/Modification of a read-only - - # make sure $1 is still read-only - eval { for ($1) { local $_ = 1 } }; --is($@, ""); -+like($@, qr/Modification of a read-only value attempted/); - - # The s/// adds 'g' magic to $_, but it should remain non-readonly - eval { for("a") { for $x (1,2) { local $_="b"; s/(.*)/+$1/ } } }; -diff -up perl-5.8.8/op.c.BAD perl-5.8.8/op.c diff --git a/perl-5.8.8-bz178343.patch b/perl-5.8.8-bz178343.patch deleted file mode 100644 index 9243f14..0000000 --- a/perl-5.8.8-bz178343.patch +++ /dev/null @@ -1,53 +0,0 @@ ---- perl-5.8.8-RC1/Configure.bz178343 2006-01-30 19:42:47.000000000 -0500 -+++ perl-5.8.8-RC1/Configure 2006-01-30 20:04:53.000000000 -0500 -@@ -20279,6 +20279,17 @@ - chmod +x Cppsym.try - $eunicefix Cppsym.try - ./Cppsym < Cppsym.know > Cppsym.true -+: Add in any cpp "predefined macros" : -+tHdrH=`mktemp ./XXXXXX` -+rm -f $tHdrH'.h' $tHdrH -+touch $tHdrH'.h' -+if cpp -dM $tHdrH'.h' > $tHdrH'_cppsym.h' && [ -s $tHdrH'_cppsym.h' ] ; then -+ sed 's/#define[\ \ ]*//;s/[\ \ ].*$//' < $tHdrH'_cppsym.h' > $tHdrH'_cppsym.real'; -+ if [ -s $tHdrH'_cppsym.real' ]; then -+ cat $tHdrH'_cppsym.real' Cppsym.know | sort | uniq | ./Cppsym | sort | uniq > Cppsym.true -+ fi -+fi -+rm -f $tHdrH'.h' $tHdrH'_cppsym.h' $tHdrH'_cppsym.real' - : now check the C compiler for additional symbols - postprocess_cc_v='' - case "$osname" in ---- perl-5.8.8-RC1/utils/h2ph.PL.bz178343 2006-01-13 12:56:47.000000000 -0500 -+++ perl-5.8.8-RC1/utils/h2ph.PL 2006-01-30 20:01:15.000000000 -0500 -@@ -778,8 +778,16 @@ - if ($opt_D) { - print PREAMBLE "# $_=$define{$_}\n"; - } -- -- if ($define{$_} =~ /^(\d+)U?L{0,2}$/i) { -+ if ($define{$_} =~ /^\((.*)\)$/) { -+ # parenthesized value: d=(v) -+ $define{$_} = $1; -+ }; -+ if ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/ ) { -+ # float: -+ print PREAMBLE -+ "unless (defined &$_) { sub $_() { $1 } }\n\n"; -+ } elsif ($define{$_} =~ /^([+-]?\d+)U?L{0,2}$/i) { -+ # integer: - print PREAMBLE - "unless (defined &$_) { sub $_() { $1 } }\n\n"; - } elsif ($define{$_} =~ /^\w+$/) { -@@ -805,9 +813,8 @@ - @Config{'ccsymbols', 'cppsymbols', 'cppccsymbols'}; - - # Split compiler pre-definitions into `key=value' pairs: -- foreach (split /\s+/, $allsymbols) { -- /(.+?)=(.+)/ and $define{$1} = $2; -- -+ while( $allsymbols=~/([^\s]+)=((\\\s|[^\s])+)/g ) { -+ $define{$1} = $2; - if ($opt_D) { - print STDERR "$_: $1 -> $2\n"; - } diff --git a/perl-5.8.8-bz183553_ubz38657.patch b/perl-5.8.8-bz183553_ubz38657.patch deleted file mode 100644 index 232858f..0000000 --- a/perl-5.8.8-bz183553_ubz38657.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.8/perl.c.bz183553_ubz38657 2006-02-27 12:51:49.000000000 -0500 -+++ perl-5.8.8/perl.c 2006-03-01 17:18:41.000000000 -0500 -@@ -3110,7 +3110,7 @@ - sv_catpv(sv, start); - else { - sv_catpvn(sv, start, s-start); -- Perl_sv_catpvf(aTHX_ sv, " split(/,/,q%c%s%c)", 0, ++s, 0); -+ Perl_sv_catpvf(aTHX_ sv, " split(/,/,q(%s))", ++s); - } - s += strlen(s); - my_setenv("PERL5DB", (char *)SvPV_nolen_const(sv)); diff --git a/perl-5.8.8-bz188441.patch b/perl-5.8.8-bz188441.patch deleted file mode 100644 index 639b2b5..0000000 --- a/perl-5.8.8-bz188441.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.8/lib/CGI.pm.bz188441 2006-01-08 11:40:30.000000000 -0500 -+++ perl-5.8.8/lib/CGI.pm 2006-04-12 18:49:26.000000000 -0400 -@@ -2650,7 +2650,7 @@ - return $url if $base; - $url .= $uri; - } elsif ($relative) { -- ($url) = $script_name =~ m!([^/]+)$!; -+ ($url) = $uri =~ m!([^/]+)$!; - } elsif ($absolute) { - $url = $uri; - } diff --git a/perl-5.8.8-bz191416.patch b/perl-5.8.8-bz191416.patch deleted file mode 100644 index f9b9eb0..0000000 --- a/perl-5.8.8-bz191416.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- perl-5.8.8/t/lib/h2ph.pht.bz191416 2004-12-27 14:55:34.000000000 -0500 -+++ perl-5.8.8/t/lib/h2ph.pht 2006-05-11 15:12:10.000000000 -0400 -@@ -28,21 +28,21 @@ - eval q((($a) < ($b) ? ($a) : ($b))); - }' unless defined(&MIN); - } -- if(!(defined (defined(&__SOMETHING_MORE_IMPORTANT) ? &__SOMETHING_MORE_IMPORTANT : 0))) { -+ if(!(defined (defined(&__SOMETHING_MORE_IMPORTANT) ? &__SOMETHING_MORE_IMPORTANT : undef))) { - } -- elsif(!(defined (defined(&__SOMETHING_REALLY_REALLY_IMPORTANT) ? &__SOMETHING_REALLY_REALLY_IMPORTANT : 0))) { -+ elsif(!(defined (defined(&__SOMETHING_REALLY_REALLY_IMPORTANT) ? &__SOMETHING_REALLY_REALLY_IMPORTANT : undef))) { - die("Nup, can't go on"); - } else { - eval 'sub EVERYTHING_IS_OK () {1;}' unless defined(&EVERYTHING_IS_OK); - } - undef(&WHATEVER) if defined(&WHATEVER); -- if((!((defined (defined(&__SOMETHING_TRIVIAL) ? &__SOMETHING_TRIVIAL : 0) && defined (defined(&__SOMETHING_LESS_SO) ? &__SOMETHING_LESS_SO : 0))) || defined (defined(&__SOMETHING_OVERPOWERING) ? &__SOMETHING_OVERPOWERING : 0))) { -+ if((!((defined (defined(&__SOMETHING_TRIVIAL) ? &__SOMETHING_TRIVIAL : undef) && defined (defined(&__SOMETHING_LESS_SO) ? &__SOMETHING_LESS_SO : undef))) || defined (defined(&__SOMETHING_OVERPOWERING) ? &__SOMETHING_OVERPOWERING : undef))) { - eval 'sub WHATEVER () {6;}' unless defined(&WHATEVER); - } -- elsif(!(defined (defined(&__SOMETHING_TRIVIAL) ? &__SOMETHING_TRIVIAL : 0)) ) { -+ elsif(!(defined (defined(&__SOMETHING_TRIVIAL) ? &__SOMETHING_TRIVIAL : undef)) ) { - eval 'sub WHATEVER () {7;}' unless defined(&WHATEVER); - } -- elsif(!(defined (defined(&__SOMETHING_LESS_SO) ? &__SOMETHING_LESS_SO : 0)) ) { -+ elsif(!(defined (defined(&__SOMETHING_LESS_SO) ? &__SOMETHING_LESS_SO : undef)) ) { - eval 'sub WHATEVER () {8;}' unless defined(&WHATEVER); - } else { - eval 'sub WHATEVER () {1000;}' unless defined(&WHATEVER); ---- perl-5.8.8/utils/h2ph.PL.bz191416 2006-05-11 15:10:52.000000000 -0400 -+++ perl-5.8.8/utils/h2ph.PL 2006-05-11 15:11:49.000000000 -0400 -@@ -514,7 +514,7 @@ - } - } else { - if ($inif && $new !~ /defined\s*\($/) { -- $new .= '(defined(&' . $id . ') ? &' . $id . ' : 0)'; -+ $new .= '(defined(&' . $id . ') ? &' . $id . ' : undef)'; - } elsif (/^\[/) { - $new .= " \$$id"; - } else { diff --git a/perl-5.8.8-bz199736.patch b/perl-5.8.8-bz199736.patch deleted file mode 100644 index 92d8bc3..0000000 --- a/perl-5.8.8-bz199736.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.8/ext/B/B/C.pm.bz199736 2006-01-13 09:47:39.000000000 -0500 -+++ perl-5.8.8/ext/B/B/C.pm 2006-07-21 20:25:39.000000000 -0400 -@@ -647,7 +647,7 @@ - return $sym if defined $sym; - my $val= $sv->NVX; - $val .= '.00' if $val =~ /^-?\d+$/; -- $xpvnvsect->add(sprintf("0, 0, 0, %d, %s", $sv->IVX, $val)); -+ $xpvnvsect->add(sprintf("0, 0, 0, %d, %s", $sv->NVX, $val)); - $svsect->add(sprintf("&xpvnv_list[%d], %lu, 0x%x", - $xpvnvsect->index, $sv->REFCNT , $sv->FLAGS)); - return savesym($sv, sprintf("&sv_list[%d]", $svsect->index)); diff --git a/perl-5.8.8-bz204679.patch b/perl-5.8.8-bz204679.patch deleted file mode 100644 index d02baa4..0000000 --- a/perl-5.8.8-bz204679.patch +++ /dev/null @@ -1,18547 +0,0 @@ -diff -r -u perl-5.8.8/lib/Unicode/UCD.t perl-5.8.8.patched/lib/Unicode/UCD.t ---- perl-5.8.8/lib/Unicode/UCD.t 2005-04-08 07:30:37.000000000 -0400 -+++ perl-5.8.8.patched/lib/Unicode/UCD.t 2006-09-15 14:12:05.487141000 -0400 -@@ -238,7 +238,7 @@ - ok( charinrange($ranges, "13f4")); - ok(!charinrange($ranges, "13f5")); - --is(Unicode::UCD::UnicodeVersion, '4.1.0', 'UnicodeVersion'); -+is(Unicode::UCD::UnicodeVersion, '5.0.0', 'UnicodeVersion'); - - use Unicode::UCD qw(compexcl); - -@@ -309,7 +309,7 @@ - { - my $r1 = charscript('Latin'); - my $n1 = @$r1; -- is($n1, 29, "29 ranges in Latin script (Unicode 4.1.0)"); -+ is($n1, 35, "number of ranges in Latin script (Unicode 5.0.0)"); - shift @$r1 while @$r1; - my $r2 = charscript('Latin'); - is(@$r2, $n1, "modifying results should not mess up internal caches"); -diff -r -u perl-5.8.8/lib/unicore/ArabicShaping.txt perl-5.8.8.patched/lib/unicore/ArabicShaping.txt ---- perl-5.8.8/lib/unicore/ArabicShaping.txt 2005-04-08 07:30:38.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/ArabicShaping.txt 2006-09-15 14:12:05.488140000 -0400 -@@ -1,10 +1,10 @@ --# ArabicShaping-4.1.0.txt --# Date: 2005-03-17, 15:21:00 PST [KW] -+# ArabicShaping-5.0.0.txt -+# Date: 2006-07-14, 11:23:00 PST [KW] - # - # This file is a normative contributory data file in the - # Unicode Character Database. - # --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # - # This file defines the shaping classes for Arabic and Syriac -@@ -293,7 +293,46 @@ - 076C; REH WITH HAMZA ABOVE; R; REH - 076D; SEEN WITH 2 DOTS VERTICALLY ABOVE; D; SEEN - -+# N'Ko Characters -+ -+07CA; NKO A; D; No_Joining_Group -+07CB; NKO EE; D; No_Joining_Group -+07CC; NKO I; D; No_Joining_Group -+07CD; NKO E; D; No_Joining_Group -+07CE; NKO U; D; No_Joining_Group -+07CF; NKO OO; D; No_Joining_Group -+07D0; NKO O; D; No_Joining_Group -+07D1; NKO DAGBASINNA; D; No_Joining_Group -+07D2; NKO N; D; No_Joining_Group -+07D3; NKO BA; D; No_Joining_Group -+07D4; NKO PA; D; No_Joining_Group -+07D5; NKO TA; D; No_Joining_Group -+07D6; NKO JA; D; No_Joining_Group -+07D7; NKO CHA; D; No_Joining_Group -+07D8; NKO DA; D; No_Joining_Group -+07D9; NKO RA; D; No_Joining_Group -+07DA; NKO RRA; D; No_Joining_Group -+07DB; NKO SA; D; No_Joining_Group -+07DC; NKO GBA; D; No_Joining_Group -+07DD; NKO FA; D; No_Joining_Group -+07DE; NKO KA; D; No_Joining_Group -+07DF; NKO LA; D; No_Joining_Group -+07E0; NKO NA WOLOSO; D; No_Joining_Group -+07E1; NKO MA; D; No_Joining_Group -+07E2; NKO NYA; D; No_Joining_Group -+07E3; NKO NA; D; No_Joining_Group -+07E4; NKO HA; D; No_Joining_Group -+07E5; NKO WA; D; No_Joining_Group -+07E6; NKO YA; D; No_Joining_Group -+07E7; NKO NYA WOLOSO; D; No_Joining_Group -+07E8; NKO JONA JA; D; No_Joining_Group -+07E9; NKO JONA CHA; D; No_Joining_Group -+07EA; NKO JONA RA; D; No_Joining_Group -+07FA; NKO LAJANYALAN; C; No_Joining_Group -+ - # Other - - 200D; ZERO WIDTH JOINER; C; No_Joining_Group - 200C; ZERO WIDTH NON-JOINER; U; No_Joining_Group -+ -+# EOF -diff -r -u perl-5.8.8/lib/unicore/BidiMirroring.txt perl-5.8.8.patched/lib/unicore/BidiMirroring.txt ---- perl-5.8.8/lib/unicore/BidiMirroring.txt 2005-04-08 07:30:39.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/BidiMirroring.txt 2006-09-15 14:12:05.489140000 -0400 -@@ -1,18 +1,18 @@ --# BidiMirroring-4.1.0.txt --# Date: 2005-03-17, 15:21:00 PST [KW] -+# BidiMirroring-5.0.0.txt -+# Date: 2006-02-16, 16:11:00 PST [KW] - # - # Bidi_Mirroring_Glyph Property - # - # This file is an informative contributory data file in the - # Unicode Character Database. - # --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # - # This data file lists characters that have the mirrored property - # where there is another Unicode character that typically has a glyph - # that is the mirror image of the original character's glyph. --# The repertoire covered by the file is Unicode 4.1.0. -+# The repertoire covered by the file is Unicode 5.0.0. - # - # The file contains a list of lines with mappings from one code point - # to another one for character-based mirroring. -@@ -32,7 +32,7 @@ - # at http://www.unicode.org/unicode/reports/tr9/ - # - # This file was originally created by Markus Scherer. --# Extended for Unicode 3.2, 4.0, and 4.1 by Ken Whistler. -+# Extended for Unicode 3.2, 4.0, 4.1, and 5.0 by Ken Whistler. - # - # ############################################################ - -@@ -46,6 +46,16 @@ - 007D; 007B # RIGHT CURLY BRACKET - 00AB; 00BB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK - 00BB; 00AB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -+0F3A; 0F3B # TIBETAN MARK GUG RTAGS GYON -+0F3B; 0F3A # TIBETAN MARK GUG RTAGS GYAS -+0F3C; 0F3D # TIBETAN MARK ANG KHANG GYON -+0F3D; 0F3C # TIBETAN MARK ANG KHANG GYAS -+169B; 169C # OGHAM FEATHER MARK -+169C; 169B # OGHAM REVERSED FEATHER MARK -+2018; 2019 # [BEST FIT] LEFT SINGLE QUOTATION MARK -+2019; 2018 # [BEST FIT] RIGHT SINGLE QUOTATION MARK -+201C; 201D # [BEST FIT] LEFT DOUBLE QUOTATION MARK -+201D; 201C # [BEST FIT] RIGHT DOUBLE QUOTATION MARK - 2039; 203A # SINGLE LEFT-POINTING ANGLE QUOTATION MARK - 203A; 2039 # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK - 2045; 2046 # LEFT SQUARE BRACKET WITH QUILL -@@ -356,6 +366,16 @@ - 3019; 3018 # RIGHT WHITE TORTOISE SHELL BRACKET - 301A; 301B # LEFT WHITE SQUARE BRACKET - 301B; 301A # RIGHT WHITE SQUARE BRACKET -+301D; 301E # REVERSED DOUBLE PRIME QUOTATION MARK -+301E; 301D # DOUBLE PRIME QUOTATION MARK -+FE59; FE5A # SMALL LEFT PARENTHESIS -+FE5A; FE59 # SMALL RIGHT PARENTHESIS -+FE5B; FE5C # SMALL LEFT CURLY BRACKET -+FE5C; FE5B # SMALL RIGHT CURLY BRACKET -+FE5D; FE5E # SMALL LEFT TORTOISE SHELL BRACKET -+FE5E; FE5D # SMALL RIGHT TORTOISE SHELL BRACKET -+FE64; FE65 # SMALL LESS-THAN SIGN -+FE65; FE64 # SMALL GREATER-THAN SIGN - FF08; FF09 # FULLWIDTH LEFT PARENTHESIS - FF09; FF08 # FULLWIDTH RIGHT PARENTHESIS - FF1C; FF1E # FULLWIDTH LESS-THAN SIGN -@@ -373,6 +393,10 @@ - # For these characters it is up to the rendering system - # to provide mirrored glyphs. - -+# 201A; SINGLE LOW-9 QUOTATION MARK -+# 201B; SINGLE HIGH-REVERSED-9 QUOTATION MARK -+# 201E; DOUBLE LOW-9 QUOTATION MARK -+# 201F; DOUBLE HIGH-REVERSED-9 QUOTATION MARK - # 2140; DOUBLE-STRUCK N-ARY SUMMATION - # 2201; COMPLEMENT - # 2202; PARTIAL DIFFERENTIAL -@@ -548,3 +572,11 @@ - # 2AF3; PARALLEL WITH TILDE OPERATOR - # 2AFB; TRIPLE SOLIDUS BINARY RELATION - # 2AFD; DOUBLE SOLIDUS OPERATOR -+# 301F; LOW DOUBLE PRIME QUOTATION MARK -+# 1D6DB; MATHEMATICAL BOLD PARTIAL DIFFERENTIAL -+# 1D715; MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL -+# 1D74F; MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL -+# 1D789; MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL -+# 1D7C3; MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL -+ -+# EOF -diff -r -u perl-5.8.8/lib/unicore/Blocks.txt perl-5.8.8.patched/lib/unicore/Blocks.txt ---- perl-5.8.8/lib/unicore/Blocks.txt 2005-04-08 07:30:40.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/Blocks.txt 2006-09-15 14:12:05.494139000 -0400 -@@ -1,8 +1,8 @@ --# Blocks-4.1.0.txt --# Date: 2005-1-31, 16:50 [KW] -+# Blocks-5.0.0.txt -+# Date: 2006-02-15, 15:40:00 [KW] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - # -@@ -24,6 +24,8 @@ - # have the value No_Block. - - # Property: Block -+# -+# @missing: 0000..10FFFF; No_Block - - 0000..007F; Basic Latin - 0080..00FF; Latin-1 Supplement -@@ -41,6 +43,7 @@ - 0700..074F; Syriac - 0750..077F; Arabic Supplement - 0780..07BF; Thaana -+07C0..07FF; NKo - 0900..097F; Devanagari - 0980..09FF; Bengali - 0A00..0A7F; Gurmukhi -@@ -74,6 +77,7 @@ - 1980..19DF; New Tai Lue - 19E0..19FF; Khmer Symbols - 1A00..1A1F; Buginese -+1B00..1B7F; Balinese - 1D00..1D7F; Phonetic Extensions - 1D80..1DBF; Phonetic Extensions Supplement - 1DC0..1DFF; Combining Diacritical Marks Supplement -@@ -104,6 +108,7 @@ - 2A00..2AFF; Supplemental Mathematical Operators - 2B00..2BFF; Miscellaneous Symbols and Arrows - 2C00..2C5F; Glagolitic -+2C60..2C7F; Latin Extended-C - 2C80..2CFF; Coptic - 2D00..2D2F; Georgian Supplement - 2D30..2D7F; Tifinagh -@@ -129,7 +134,9 @@ - A000..A48F; Yi Syllables - A490..A4CF; Yi Radicals - A700..A71F; Modifier Tone Letters -+A720..A7FF; Latin Extended-D - A800..A82F; Syloti Nagri -+A840..A87F; Phags-pa - AC00..D7AF; Hangul Syllables - D800..DB7F; High Surrogates - DB80..DBFF; High Private Use Surrogates -@@ -158,11 +165,15 @@ - 10450..1047F; Shavian - 10480..104AF; Osmanya - 10800..1083F; Cypriot Syllabary -+10900..1091F; Phoenician - 10A00..10A5F; Kharoshthi -+12000..123FF; Cuneiform -+12400..1247F; Cuneiform Numbers and Punctuation - 1D000..1D0FF; Byzantine Musical Symbols - 1D100..1D1FF; Musical Symbols - 1D200..1D24F; Ancient Greek Musical Notation - 1D300..1D35F; Tai Xuan Jing Symbols -+1D360..1D37F; Counting Rod Numerals - 1D400..1D7FF; Mathematical Alphanumeric Symbols - 20000..2A6DF; CJK Unified Ideographs Extension B - 2F800..2FA1F; CJK Compatibility Ideographs Supplement -@@ -170,3 +181,5 @@ - E0100..E01EF; Variation Selectors Supplement - F0000..FFFFF; Supplementary Private Use Area-A - 100000..10FFFF; Supplementary Private Use Area-B -+ -+# EOF -\ No newline at end of file -diff -r -u perl-5.8.8/lib/unicore/CaseFolding.txt perl-5.8.8.patched/lib/unicore/CaseFolding.txt ---- perl-5.8.8/lib/unicore/CaseFolding.txt 2005-04-08 07:30:41.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/CaseFolding.txt 2006-09-15 14:12:05.496139000 -0400 -@@ -1,8 +1,8 @@ --# CaseFolding-4.1.0.txt --# Date: 2005-03-26, 00:24:43 GMT [MD] -+# CaseFolding-5.0.0.txt -+# Date: 2006-03-03, 08:22:43 GMT [MD] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - # -@@ -272,9 +272,19 @@ - 022E; C; 022F; # LATIN CAPITAL LETTER O WITH DOT ABOVE - 0230; C; 0231; # LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON - 0232; C; 0233; # LATIN CAPITAL LETTER Y WITH MACRON -+023A; C; 2C65; # LATIN CAPITAL LETTER A WITH STROKE - 023B; C; 023C; # LATIN CAPITAL LETTER C WITH STROKE - 023D; C; 019A; # LATIN CAPITAL LETTER L WITH BAR --0241; C; 0294; # LATIN CAPITAL LETTER GLOTTAL STOP -+023E; C; 2C66; # LATIN CAPITAL LETTER T WITH DIAGONAL STROKE -+0241; C; 0242; # LATIN CAPITAL LETTER GLOTTAL STOP -+0243; C; 0180; # LATIN CAPITAL LETTER B WITH STROKE -+0244; C; 0289; # LATIN CAPITAL LETTER U BAR -+0245; C; 028C; # LATIN CAPITAL LETTER TURNED V -+0246; C; 0247; # LATIN CAPITAL LETTER E WITH STROKE -+0248; C; 0249; # LATIN CAPITAL LETTER J WITH STROKE -+024A; C; 024B; # LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL -+024C; C; 024D; # LATIN CAPITAL LETTER R WITH STROKE -+024E; C; 024F; # LATIN CAPITAL LETTER Y WITH STROKE - 0345; C; 03B9; # COMBINING GREEK YPOGEGRAMMENI - 0386; C; 03AC; # GREEK CAPITAL LETTER ALPHA WITH TONOS - 0388; C; 03AD; # GREEK CAPITAL LETTER EPSILON WITH TONOS -@@ -335,6 +345,9 @@ - 03F7; C; 03F8; # GREEK CAPITAL LETTER SHO - 03F9; C; 03F2; # GREEK CAPITAL LUNATE SIGMA SYMBOL - 03FA; C; 03FB; # GREEK CAPITAL LETTER SAN -+03FD; C; 037B; # GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL -+03FE; C; 037C; # GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL -+03FF; C; 037D; # GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL - 0400; C; 0450; # CYRILLIC CAPITAL LETTER IE WITH GRAVE - 0401; C; 0451; # CYRILLIC CAPITAL LETTER IO - 0402; C; 0452; # CYRILLIC CAPITAL LETTER DJE -@@ -427,6 +440,7 @@ - 04BA; C; 04BB; # CYRILLIC CAPITAL LETTER SHHA - 04BC; C; 04BD; # CYRILLIC CAPITAL LETTER ABKHASIAN CHE - 04BE; C; 04BF; # CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER -+04C0; C; 04CF; # CYRILLIC LETTER PALOCHKA - 04C1; C; 04C2; # CYRILLIC CAPITAL LETTER ZHE WITH BREVE - 04C3; C; 04C4; # CYRILLIC CAPITAL LETTER KA WITH HOOK - 04C5; C; 04C6; # CYRILLIC CAPITAL LETTER EL WITH TAIL -@@ -455,6 +469,9 @@ - 04F4; C; 04F5; # CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS - 04F6; C; 04F7; # CYRILLIC CAPITAL LETTER GHE WITH DESCENDER - 04F8; C; 04F9; # CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS -+04FA; C; 04FB; # CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK -+04FC; C; 04FD; # CYRILLIC CAPITAL LETTER HA WITH HOOK -+04FE; C; 04FF; # CYRILLIC CAPITAL LETTER HA WITH STROKE - 0500; C; 0501; # CYRILLIC CAPITAL LETTER KOMI DE - 0502; C; 0503; # CYRILLIC CAPITAL LETTER KOMI DJE - 0504; C; 0505; # CYRILLIC CAPITAL LETTER KOMI ZJE -@@ -463,6 +480,8 @@ - 050A; C; 050B; # CYRILLIC CAPITAL LETTER KOMI NJE - 050C; C; 050D; # CYRILLIC CAPITAL LETTER KOMI SJE - 050E; C; 050F; # CYRILLIC CAPITAL LETTER KOMI TJE -+0510; C; 0511; # CYRILLIC CAPITAL LETTER REVERSED ZE -+0512; C; 0513; # CYRILLIC CAPITAL LETTER EL WITH HOOK - 0531; C; 0561; # ARMENIAN CAPITAL LETTER AYB - 0532; C; 0562; # ARMENIAN CAPITAL LETTER BEN - 0533; C; 0563; # ARMENIAN CAPITAL LETTER GIM -@@ -845,6 +864,7 @@ - 2126; C; 03C9; # OHM SIGN - 212A; C; 006B; # KELVIN SIGN - 212B; C; 00E5; # ANGSTROM SIGN -+2132; C; 214E; # TURNED CAPITAL F - 2160; C; 2170; # ROMAN NUMERAL ONE - 2161; C; 2171; # ROMAN NUMERAL TWO - 2162; C; 2172; # ROMAN NUMERAL THREE -@@ -861,6 +881,7 @@ - 216D; C; 217D; # ROMAN NUMERAL ONE HUNDRED - 216E; C; 217E; # ROMAN NUMERAL FIVE HUNDRED - 216F; C; 217F; # ROMAN NUMERAL ONE THOUSAND -+2183; C; 2184; # ROMAN NUMERAL REVERSED ONE HUNDRED - 24B6; C; 24D0; # CIRCLED LATIN CAPITAL LETTER A - 24B7; C; 24D1; # CIRCLED LATIN CAPITAL LETTER B - 24B8; C; 24D2; # CIRCLED LATIN CAPITAL LETTER C -@@ -934,6 +955,14 @@ - 2C2C; C; 2C5C; # GLAGOLITIC CAPITAL LETTER SHTAPIC - 2C2D; C; 2C5D; # GLAGOLITIC CAPITAL LETTER TROKUTASTI A - 2C2E; C; 2C5E; # GLAGOLITIC CAPITAL LETTER LATINATE MYSLITE -+2C60; C; 2C61; # LATIN CAPITAL LETTER L WITH DOUBLE BAR -+2C62; C; 026B; # LATIN CAPITAL LETTER L WITH MIDDLE TILDE -+2C63; C; 1D7D; # LATIN CAPITAL LETTER P WITH STROKE -+2C64; C; 027D; # LATIN CAPITAL LETTER R WITH TAIL -+2C67; C; 2C68; # LATIN CAPITAL LETTER H WITH DESCENDER -+2C69; C; 2C6A; # LATIN CAPITAL LETTER K WITH DESCENDER -+2C6B; C; 2C6C; # LATIN CAPITAL LETTER Z WITH DESCENDER -+2C75; C; 2C76; # LATIN CAPITAL LETTER HALF H - 2C80; C; 2C81; # COPTIC CAPITAL LETTER ALFA - 2C82; C; 2C83; # COPTIC CAPITAL LETTER VIDA - 2C84; C; 2C85; # COPTIC CAPITAL LETTER GAMMA -diff -r -u perl-5.8.8/lib/unicore/CompositionExclusions.txt perl-5.8.8.patched/lib/unicore/CompositionExclusions.txt ---- perl-5.8.8/lib/unicore/CompositionExclusions.txt 2005-04-08 07:30:41.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/CompositionExclusions.txt 2006-09-15 14:12:05.500138000 -0400 -@@ -1,20 +1,26 @@ --# CompositionExclusions-4.1.0.txt --# Date: 2005-03-17, 15:21:00 PST [KW] -+# CompositionExclusions-5.0.0.txt -+# Date: 2006-05-23, 12:42:00 PST [KW] - # --# This file lists the characters from the UAX #15 Composition Exclusion Table. -+# This file lists the characters for the Composition Exclusion Table -+# defined in UAX #15, Unicode Normalization Forms. - # - # This file is a normative contributory data file in the - # Unicode Character Database. - # --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # - # For more information, see - # http://www.unicode.org/unicode/reports/tr15/#Primary Exclusion List Table --# ================================================ -+# -+# For a full derivation of composition exclusions, see the derived property -+# Full_Composition_Exclusion in DerivedNormalizationProps.txt -+# - -+# ================================================ - # (1) Script Specifics --# This list of characters cannot be derived from the UnicodeData file. -+# -+# This list of characters cannot be derived from the UnicodeData.txt file. - # ================================================ - - 0958 # DEVANAGARI LETTER QA -@@ -89,8 +95,14 @@ - - # ================================================ - # (2) Post Composition Version precomposed characters -+# - # These characters cannot be derived solely from the UnicodeData.txt file - # in this version of Unicode. -+# -+# Note that characters added to the standard after the -+# Composition Version and which have canonical decomposition mappings -+# are not automatically added to this list of Post Composition -+# Version precomposed characters. - # ================================================ - - 2ADC # FORKING -@@ -112,10 +124,13 @@ - - # ================================================ - # (3) Singleton Decompositions --# These characters can be derived from the UnicodeData file -+# -+# These characters can be derived from the UnicodeData.txt file - # by including all characters whose canonical decomposition - # consists of a single character. -+# - # These characters are simply quoted here for reference. -+# See also Full_Composition_Exclusion in DerivedNormalizationProps.txt - # ================================================ - - # 0340..0341 [2] COMBINING GRAVE TONE MARK..COMBINING ACUTE TONE MARK -@@ -163,11 +178,14 @@ - - # ================================================ - # (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 non-zero - # combining class. -+# - # These characters are simply quoted here for reference. -+# See also Full_Composition_Exclusion in DerivedNormalizationProps.txt - # ================================================ - - # 0344 COMBINING GREEK DIALYTIKA TONOS -diff -r -u perl-5.8.8/lib/unicore/EastAsianWidth.txt perl-5.8.8.patched/lib/unicore/EastAsianWidth.txt ---- perl-5.8.8/lib/unicore/EastAsianWidth.txt 2005-04-08 07:30:45.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/EastAsianWidth.txt 2006-09-15 14:12:05.526134000 -0400 -@@ -1,12 +1,12 @@ --# EastAsianWidth-4.1.0.txt --# Date: 2005-03-17, 15:21:00 PST [KW] -+# EastAsianWidth-5.0.0.txt -+# Date: 2006-02-15, 14:39:00 PST [KW] - # - # East Asian Width Properties - # - # This file is an informative contributory data file in the - # Unicode Character Database. - # --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # - # The format is two fields separated by a semicolon. -@@ -22,6 +22,8 @@ - # in identifying the characters. - # - # See UAX #11: East Asian Character Width, for more information. -+# -+# @missing: 0000..10FFFF; N - 0000;N # - 0001;N # - 0002;N # -@@ -600,6 +602,20 @@ - 023F;N # LATIN SMALL LETTER S WITH SWASH TAIL - 0240;N # LATIN SMALL LETTER Z WITH SWASH TAIL - 0241;N # LATIN CAPITAL LETTER GLOTTAL STOP -+0242;N # LATIN SMALL LETTER GLOTTAL STOP -+0243;N # LATIN CAPITAL LETTER B WITH STROKE -+0244;N # LATIN CAPITAL LETTER U BAR -+0245;N # LATIN CAPITAL LETTER TURNED V -+0246;N # LATIN CAPITAL LETTER E WITH STROKE -+0247;N # LATIN SMALL LETTER E WITH STROKE -+0248;N # LATIN CAPITAL LETTER J WITH STROKE -+0249;N # LATIN SMALL LETTER J WITH STROKE -+024A;N # LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL -+024B;N # LATIN SMALL LETTER Q WITH HOOK TAIL -+024C;N # LATIN CAPITAL LETTER R WITH STROKE -+024D;N # LATIN SMALL LETTER R WITH STROKE -+024E;N # LATIN CAPITAL LETTER Y WITH STROKE -+024F;N # LATIN SMALL LETTER Y WITH STROKE - 0250;N # LATIN SMALL LETTER TURNED A - 0251;A # LATIN SMALL LETTER ALPHA - 0252;N # LATIN SMALL LETTER TURNED ALPHA -@@ -891,6 +907,9 @@ - 0374;N # GREEK NUMERAL SIGN - 0375;N # GREEK LOWER NUMERAL SIGN - 037A;N # GREEK YPOGEGRAMMENI -+037B;N # GREEK SMALL REVERSED LUNATE SIGMA SYMBOL -+037C;N # GREEK SMALL DOTTED LUNATE SIGMA SYMBOL -+037D;N # GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL - 037E;N # GREEK QUESTION MARK - 0384;N # GREEK TONOS - 0385;N # GREEK DIALYTIKA TONOS -@@ -1218,6 +1237,7 @@ - 04CC;N # CYRILLIC SMALL LETTER KHAKASSIAN CHE - 04CD;N # CYRILLIC CAPITAL LETTER EM WITH TAIL - 04CE;N # CYRILLIC SMALL LETTER EM WITH TAIL -+04CF;N # CYRILLIC SMALL LETTER PALOCHKA - 04D0;N # CYRILLIC CAPITAL LETTER A WITH BREVE - 04D1;N # CYRILLIC SMALL LETTER A WITH BREVE - 04D2;N # CYRILLIC CAPITAL LETTER A WITH DIAERESIS -@@ -1260,6 +1280,12 @@ - 04F7;N # CYRILLIC SMALL LETTER GHE WITH DESCENDER - 04F8;N # CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS - 04F9;N # CYRILLIC SMALL LETTER YERU WITH DIAERESIS -+04FA;N # CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK -+04FB;N # CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK -+04FC;N # CYRILLIC CAPITAL LETTER HA WITH HOOK -+04FD;N # CYRILLIC SMALL LETTER HA WITH HOOK -+04FE;N # CYRILLIC CAPITAL LETTER HA WITH STROKE -+04FF;N # CYRILLIC SMALL LETTER HA WITH STROKE - 0500;N # CYRILLIC CAPITAL LETTER KOMI DE - 0501;N # CYRILLIC SMALL LETTER KOMI DE - 0502;N # CYRILLIC CAPITAL LETTER KOMI DJE -@@ -1276,6 +1302,10 @@ - 050D;N # CYRILLIC SMALL LETTER KOMI SJE - 050E;N # CYRILLIC CAPITAL LETTER KOMI TJE - 050F;N # CYRILLIC SMALL LETTER KOMI TJE -+0510;N # CYRILLIC CAPITAL LETTER REVERSED ZE -+0511;N # CYRILLIC SMALL LETTER REVERSED ZE -+0512;N # CYRILLIC CAPITAL LETTER EL WITH HOOK -+0513;N # CYRILLIC SMALL LETTER EL WITH HOOK - 0531;N # ARMENIAN CAPITAL LETTER AYB - 0532;N # ARMENIAN CAPITAL LETTER BEN - 0533;N # ARMENIAN CAPITAL LETTER GIM -@@ -1403,6 +1433,7 @@ - 05B7;N # HEBREW POINT PATAH - 05B8;N # HEBREW POINT QAMATS - 05B9;N # HEBREW POINT HOLAM -+05BA;N # HEBREW POINT HOLAM HASER FOR VAV - 05BB;N # HEBREW POINT QUBUTS - 05BC;N # HEBREW POINT DAGESH OR MAPIQ - 05BD;N # HEBREW POINT METEG -@@ -1840,6 +1871,65 @@ - 07AF;N # THAANA OABOAFILI - 07B0;N # THAANA SUKUN - 07B1;N # THAANA LETTER NAA -+07C0;N # NKO DIGIT ZERO -+07C1;N # NKO DIGIT ONE -+07C2;N # NKO DIGIT TWO -+07C3;N # NKO DIGIT THREE -+07C4;N # NKO DIGIT FOUR -+07C5;N # NKO DIGIT FIVE -+07C6;N # NKO DIGIT SIX -+07C7;N # NKO DIGIT SEVEN -+07C8;N # NKO DIGIT EIGHT -+07C9;N # NKO DIGIT NINE -+07CA;N # NKO LETTER A -+07CB;N # NKO LETTER EE -+07CC;N # NKO LETTER I -+07CD;N # NKO LETTER E -+07CE;N # NKO LETTER U -+07CF;N # NKO LETTER OO -+07D0;N # NKO LETTER O -+07D1;N # NKO LETTER DAGBASINNA -+07D2;N # NKO LETTER N -+07D3;N # NKO LETTER BA -+07D4;N # NKO LETTER PA -+07D5;N # NKO LETTER TA -+07D6;N # NKO LETTER JA -+07D7;N # NKO LETTER CHA -+07D8;N # NKO LETTER DA -+07D9;N # NKO LETTER RA -+07DA;N # NKO LETTER RRA -+07DB;N # NKO LETTER SA -+07DC;N # NKO LETTER GBA -+07DD;N # NKO LETTER FA -+07DE;N # NKO LETTER KA -+07DF;N # NKO LETTER LA -+07E0;N # NKO LETTER NA WOLOSO -+07E1;N # NKO LETTER MA -+07E2;N # NKO LETTER NYA -+07E3;N # NKO LETTER NA -+07E4;N # NKO LETTER HA -+07E5;N # NKO LETTER WA -+07E6;N # NKO LETTER YA -+07E7;N # NKO LETTER NYA WOLOSO -+07E8;N # NKO LETTER JONA JA -+07E9;N # NKO LETTER JONA CHA -+07EA;N # NKO LETTER JONA RA -+07EB;N # NKO COMBINING SHORT HIGH TONE -+07EC;N # NKO COMBINING SHORT LOW TONE -+07ED;N # NKO COMBINING SHORT RISING TONE -+07EE;N # NKO COMBINING LONG DESCENDING TONE -+07EF;N # NKO COMBINING LONG HIGH TONE -+07F0;N # NKO COMBINING LONG LOW TONE -+07F1;N # NKO COMBINING LONG RISING TONE -+07F2;N # NKO COMBINING NASALIZATION MARK -+07F3;N # NKO COMBINING DOUBLE DOT ABOVE -+07F4;N # NKO HIGH TONE APOSTROPHE -+07F5;N # NKO LOW TONE APOSTROPHE -+07F6;N # NKO SYMBOL OO DENNEN -+07F7;N # NKO SYMBOL GBAKURUNEN -+07F8;N # NKO COMMA -+07F9;N # NKO EXCLAMATION MARK -+07FA;N # NKO LAJANYALAN - 0901;N # DEVANAGARI SIGN CANDRABINDU - 0902;N # DEVANAGARI SIGN ANUSVARA - 0903;N # DEVANAGARI SIGN VISARGA -@@ -1945,7 +2035,11 @@ - 096E;N # DEVANAGARI DIGIT EIGHT - 096F;N # DEVANAGARI DIGIT NINE - 0970;N # DEVANAGARI ABBREVIATION SIGN -+097B;N # DEVANAGARI LETTER GGA -+097C;N # DEVANAGARI LETTER JJA - 097D;N # DEVANAGARI LETTER GLOTTAL STOP -+097E;N # DEVANAGARI LETTER DDDA -+097F;N # DEVANAGARI LETTER BBA - 0981;N # BENGALI SIGN CANDRABINDU - 0982;N # BENGALI SIGN ANUSVARA - 0983;N # BENGALI SIGN VISARGA -@@ -2501,6 +2595,8 @@ - 0CDE;N # KANNADA LETTER FA - 0CE0;N # KANNADA LETTER VOCALIC RR - 0CE1;N # KANNADA LETTER VOCALIC LL -+0CE2;N # KANNADA VOWEL SIGN VOCALIC L -+0CE3;N # KANNADA VOWEL SIGN VOCALIC LL - 0CE6;N # KANNADA DIGIT ZERO - 0CE7;N # KANNADA DIGIT ONE - 0CE8;N # KANNADA DIGIT TWO -@@ -2511,6 +2607,8 @@ - 0CED;N # KANNADA DIGIT SEVEN - 0CEE;N # KANNADA DIGIT EIGHT - 0CEF;N # KANNADA DIGIT NINE -+0CF1;N # KANNADA SIGN JIHVAMULIYA -+0CF2;N # KANNADA SIGN UPADHMANIYA - 0D02;N # MALAYALAM SIGN ANUSVARA - 0D03;N # MALAYALAM SIGN VISARGA - 0D05;N # MALAYALAM LETTER A -@@ -5217,6 +5315,127 @@ - 1A1B;N # BUGINESE VOWEL SIGN AE - 1A1E;N # BUGINESE PALLAWA - 1A1F;N # BUGINESE END OF SECTION -+1B00;N # BALINESE SIGN ULU RICEM -+1B01;N # BALINESE SIGN ULU CANDRA -+1B02;N # BALINESE SIGN CECEK -+1B03;N # BALINESE SIGN SURANG -+1B04;N # BALINESE SIGN BISAH -+1B05;N # BALINESE LETTER AKARA -+1B06;N # BALINESE LETTER AKARA TEDUNG -+1B07;N # BALINESE LETTER IKARA -+1B08;N # BALINESE LETTER IKARA TEDUNG -+1B09;N # BALINESE LETTER UKARA -+1B0A;N # BALINESE LETTER UKARA TEDUNG -+1B0B;N # BALINESE LETTER RA REPA -+1B0C;N # BALINESE LETTER RA REPA TEDUNG -+1B0D;N # BALINESE LETTER LA LENGA -+1B0E;N # BALINESE LETTER LA LENGA TEDUNG -+1B0F;N # BALINESE LETTER EKARA -+1B10;N # BALINESE LETTER AIKARA -+1B11;N # BALINESE LETTER OKARA -+1B12;N # BALINESE LETTER OKARA TEDUNG -+1B13;N # BALINESE LETTER KA -+1B14;N # BALINESE LETTER KA MAHAPRANA -+1B15;N # BALINESE LETTER GA -+1B16;N # BALINESE LETTER GA GORA -+1B17;N # BALINESE LETTER NGA -+1B18;N # BALINESE LETTER CA -+1B19;N # BALINESE LETTER CA LACA -+1B1A;N # BALINESE LETTER JA -+1B1B;N # BALINESE LETTER JA JERA -+1B1C;N # BALINESE LETTER NYA -+1B1D;N # BALINESE LETTER TA LATIK -+1B1E;N # BALINESE LETTER TA MURDA MAHAPRANA -+1B1F;N # BALINESE LETTER DA MURDA ALPAPRANA -+1B20;N # BALINESE LETTER DA MURDA MAHAPRANA -+1B21;N # BALINESE LETTER NA RAMBAT -+1B22;N # BALINESE LETTER TA -+1B23;N # BALINESE LETTER TA TAWA -+1B24;N # BALINESE LETTER DA -+1B25;N # BALINESE LETTER DA MADU -+1B26;N # BALINESE LETTER NA -+1B27;N # BALINESE LETTER PA -+1B28;N # BALINESE LETTER PA KAPAL -+1B29;N # BALINESE LETTER BA -+1B2A;N # BALINESE LETTER BA KEMBANG -+1B2B;N # BALINESE LETTER MA -+1B2C;N # BALINESE LETTER YA -+1B2D;N # BALINESE LETTER RA -+1B2E;N # BALINESE LETTER LA -+1B2F;N # BALINESE LETTER WA -+1B30;N # BALINESE LETTER SA SAGA -+1B31;N # BALINESE LETTER SA SAPA -+1B32;N # BALINESE LETTER SA -+1B33;N # BALINESE LETTER HA -+1B34;N # BALINESE SIGN REREKAN -+1B35;N # BALINESE VOWEL SIGN TEDUNG -+1B36;N # BALINESE VOWEL SIGN ULU -+1B37;N # BALINESE VOWEL SIGN ULU SARI -+1B38;N # BALINESE VOWEL SIGN SUKU -+1B39;N # BALINESE VOWEL SIGN SUKU ILUT -+1B3A;N # BALINESE VOWEL SIGN RA REPA -+1B3B;N # BALINESE VOWEL SIGN RA REPA TEDUNG -+1B3C;N # BALINESE VOWEL SIGN LA LENGA -+1B3D;N # BALINESE VOWEL SIGN LA LENGA TEDUNG -+1B3E;N # BALINESE VOWEL SIGN TALING -+1B3F;N # BALINESE VOWEL SIGN TALING REPA -+1B40;N # BALINESE VOWEL SIGN TALING TEDUNG -+1B41;N # BALINESE VOWEL SIGN TALING REPA TEDUNG -+1B42;N # BALINESE VOWEL SIGN PEPET -+1B43;N # BALINESE VOWEL SIGN PEPET TEDUNG -+1B44;N # BALINESE ADEG ADEG -+1B45;N # BALINESE LETTER KAF SASAK -+1B46;N # BALINESE LETTER KHOT SASAK -+1B47;N # BALINESE LETTER TZIR SASAK -+1B48;N # BALINESE LETTER EF SASAK -+1B49;N # BALINESE LETTER VE SASAK -+1B4A;N # BALINESE LETTER ZAL SASAK -+1B4B;N # BALINESE LETTER ASYURA SASAK -+1B50;N # BALINESE DIGIT ZERO -+1B51;N # BALINESE DIGIT ONE -+1B52;N # BALINESE DIGIT TWO -+1B53;N # BALINESE DIGIT THREE -+1B54;N # BALINESE DIGIT FOUR -+1B55;N # BALINESE DIGIT FIVE -+1B56;N # BALINESE DIGIT SIX -+1B57;N # BALINESE DIGIT SEVEN -+1B58;N # BALINESE DIGIT EIGHT -+1B59;N # BALINESE DIGIT NINE -+1B5A;N # BALINESE PANTI -+1B5B;N # BALINESE PAMADA -+1B5C;N # BALINESE WINDU -+1B5D;N # BALINESE CARIK PAMUNGKAH -+1B5E;N # BALINESE CARIK SIKI -+1B5F;N # BALINESE CARIK PAREREN -+1B60;N # BALINESE PAMENENG -+1B61;N # BALINESE MUSICAL SYMBOL DONG -+1B62;N # BALINESE MUSICAL SYMBOL DENG -+1B63;N # BALINESE MUSICAL SYMBOL DUNG -+1B64;N # BALINESE MUSICAL SYMBOL DANG -+1B65;N # BALINESE MUSICAL SYMBOL DANG SURANG -+1B66;N # BALINESE MUSICAL SYMBOL DING -+1B67;N # BALINESE MUSICAL SYMBOL DAENG -+1B68;N # BALINESE MUSICAL SYMBOL DEUNG -+1B69;N # BALINESE MUSICAL SYMBOL DAING -+1B6A;N # BALINESE MUSICAL SYMBOL DANG GEDE -+1B6B;N # BALINESE MUSICAL SYMBOL COMBINING TEGEH -+1B6C;N # BALINESE MUSICAL SYMBOL COMBINING ENDEP -+1B6D;N # BALINESE MUSICAL SYMBOL COMBINING KEMPUL -+1B6E;N # BALINESE MUSICAL SYMBOL COMBINING KEMPLI -+1B6F;N # BALINESE MUSICAL SYMBOL COMBINING JEGOGAN -+1B70;N # BALINESE MUSICAL SYMBOL COMBINING KEMPUL WITH JEGOGAN -+1B71;N # BALINESE MUSICAL SYMBOL COMBINING KEMPLI WITH JEGOGAN -+1B72;N # BALINESE MUSICAL SYMBOL COMBINING BENDE -+1B73;N # BALINESE MUSICAL SYMBOL COMBINING GONG -+1B74;N # BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG -+1B75;N # BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DAG -+1B76;N # BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TUK -+1B77;N # BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TAK -+1B78;N # BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PANG -+1B79;N # BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PUNG -+1B7A;N # BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLAK -+1B7B;N # BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLUK -+1B7C;N # BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING - 1D00;N # LATIN LETTER SMALL CAPITAL A - 1D01;N # LATIN LETTER SMALL CAPITAL AE - 1D02;N # LATIN SMALL LETTER TURNED AE -@@ -5413,6 +5632,15 @@ - 1DC1;N # COMBINING DOTTED ACUTE ACCENT - 1DC2;N # COMBINING SNAKE BELOW - 1DC3;N # COMBINING SUSPENSION MARK -+1DC4;N # COMBINING MACRON-ACUTE -+1DC5;N # COMBINING GRAVE-MACRON -+1DC6;N # COMBINING MACRON-GRAVE -+1DC7;N # COMBINING ACUTE-MACRON -+1DC8;N # COMBINING GRAVE-ACUTE-GRAVE -+1DC9;N # COMBINING ACUTE-GRAVE-ACUTE -+1DCA;N # COMBINING LATIN SMALL LETTER R BELOW -+1DFE;N # COMBINING LEFT ARROWHEAD ABOVE -+1DFF;N # COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW - 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 -@@ -6082,6 +6310,10 @@ - 20E9;N # COMBINING WIDE BRIDGE ABOVE - 20EA;N # COMBINING LEFTWARDS ARROW OVERLAY - 20EB;N # COMBINING LONG DOUBLE SOLIDUS OVERLAY -+20EC;N # COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS -+20ED;N # COMBINING LEFTWARDS HARPOON WITH BARB DOWNWARDS -+20EE;N # COMBINING LEFT ARROW BELOW -+20EF;N # COMBINING RIGHT ARROW BELOW - 2100;N # ACCOUNT OF - 2101;N # ADDRESSED TO THE SUBJECT - 2102;N # DOUBLE-STRUCK CAPITAL C -@@ -6159,6 +6391,8 @@ - 214A;N # PROPERTY LINE - 214B;N # TURNED AMPERSAND - 214C;N # PER SIGN -+214D;N # AKTIESELSKAB -+214E;N # TURNED SMALL F - 2153;A # VULGAR FRACTION ONE THIRD - 2154;A # VULGAR FRACTION TWO THIRDS - 2155;N # VULGAR FRACTION ONE FIFTH -@@ -6208,6 +6442,7 @@ - 2181;N # ROMAN NUMERAL FIVE THOUSAND - 2182;N # ROMAN NUMERAL TEN THOUSAND - 2183;N # ROMAN NUMERAL REVERSED ONE HUNDRED -+2184;N # LATIN SMALL LETTER REVERSED C - 2190;A # LEFTWARDS ARROW - 2191;A # UPWARDS ARROW - 2192;A # RIGHTWARDS ARROW -@@ -6796,6 +7031,18 @@ - 23D9;N # METRICAL PENTASEME - 23DA;N # EARTH GROUND - 23DB;N # FUSE -+23DC;N # TOP PARENTHESIS -+23DD;N # BOTTOM PARENTHESIS -+23DE;N # TOP CURLY BRACKET -+23DF;N # BOTTOM CURLY BRACKET -+23E0;N # TOP TORTOISE SHELL BRACKET -+23E1;N # BOTTOM TORTOISE SHELL BRACKET -+23E2;N # WHITE TRAPEZIUM -+23E3;N # BENZENE RING WITH CIRCLE -+23E4;N # STRAIGHTNESS -+23E5;N # FLATNESS -+23E6;N # AC CURRENT -+23E7;N # ELECTRICAL INTERSECTION - 2400;N # SYMBOL FOR NULL - 2401;N # SYMBOL FOR START OF HEADING - 2402;N # SYMBOL FOR START OF TEXT -@@ -7437,6 +7684,7 @@ - 26AF;N # UNMARRIED PARTNERSHIP SYMBOL - 26B0;N # COFFIN - 26B1;N # FUNERAL URN -+26B2;N # NEUTER - 2701;N # UPPER BLADE SCISSORS - 2702;N # BLACK SCISSORS - 2703;N # LOWER BLADE SCISSORS -@@ -7618,6 +7866,10 @@ - 27C4;N # OPEN SUPERSET - 27C5;N # LEFT S-SHAPED BAG DELIMITER - 27C6;N # RIGHT S-SHAPED BAG DELIMITER -+27C7;N # OR WITH DOT INSIDE -+27C8;N # REVERSE SOLIDUS PRECEDING SUBSET -+27C9;N # SUPERSET PRECEDING SOLIDUS -+27CA;N # VERTICAL BAR WITH HORIZONTAL STROKE - 27D0;N # WHITE DIAMOND WITH CENTRED DOT - 27D1;N # AND WITH DOT - 27D2;N # ELEMENT OF OPENING UPWARDS -@@ -8450,6 +8702,17 @@ - 2B11;N # LEFTWARDS ARROW WITH TIP UPWARDS - 2B12;N # SQUARE WITH TOP HALF BLACK - 2B13;N # SQUARE WITH BOTTOM HALF BLACK -+2B14;N # SQUARE WITH UPPER RIGHT DIAGONAL HALF BLACK -+2B15;N # SQUARE WITH LOWER LEFT DIAGONAL HALF BLACK -+2B16;N # DIAMOND WITH LEFT HALF BLACK -+2B17;N # DIAMOND WITH RIGHT HALF BLACK -+2B18;N # DIAMOND WITH TOP HALF BLACK -+2B19;N # DIAMOND WITH BOTTOM HALF BLACK -+2B1A;N # DOTTED SQUARE -+2B20;N # WHITE PENTAGON -+2B21;N # WHITE HEXAGON -+2B22;N # BLACK HEXAGON -+2B23;N # HORIZONTAL BLACK HEXAGON - 2C00;N # GLAGOLITIC CAPITAL LETTER AZU - 2C01;N # GLAGOLITIC CAPITAL LETTER BUKY - 2C02;N # GLAGOLITIC CAPITAL LETTER VEDE -@@ -8544,6 +8807,23 @@ - 2C5C;N # GLAGOLITIC SMALL LETTER SHTAPIC - 2C5D;N # GLAGOLITIC SMALL LETTER TROKUTASTI A - 2C5E;N # GLAGOLITIC SMALL LETTER LATINATE MYSLITE -+2C60;N # LATIN CAPITAL LETTER L WITH DOUBLE BAR -+2C61;N # LATIN SMALL LETTER L WITH DOUBLE BAR -+2C62;N # LATIN CAPITAL LETTER L WITH MIDDLE TILDE -+2C63;N # LATIN CAPITAL LETTER P WITH STROKE -+2C64;N # LATIN CAPITAL LETTER R WITH TAIL -+2C65;N # LATIN SMALL LETTER A WITH STROKE -+2C66;N # LATIN SMALL LETTER T WITH DIAGONAL STROKE -+2C67;N # LATIN CAPITAL LETTER H WITH DESCENDER -+2C68;N # LATIN SMALL LETTER H WITH DESCENDER -+2C69;N # LATIN CAPITAL LETTER K WITH DESCENDER -+2C6A;N # LATIN SMALL LETTER K WITH DESCENDER -+2C6B;N # LATIN CAPITAL LETTER Z WITH DESCENDER -+2C6C;N # LATIN SMALL LETTER Z WITH DESCENDER -+2C74;N # LATIN SMALL LETTER V WITH CURL -+2C75;N # LATIN CAPITAL LETTER HALF H -+2C76;N # LATIN SMALL LETTER HALF H -+2C77;N # LATIN SMALL LETTER TAILLESS PHI - 2C80;N # COPTIC CAPITAL LETTER ALFA - 2C81;N # COPTIC SMALL LETTER ALFA - 2C82;N # COPTIC CAPITAL LETTER VIDA -@@ -11463,6 +11743,12 @@ - A714;N # MODIFIER LETTER MID LEFT-STEM TONE BAR - A715;N # MODIFIER LETTER LOW LEFT-STEM TONE BAR - A716;N # MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR -+A717;N # MODIFIER LETTER DOT VERTICAL BAR -+A718;N # MODIFIER LETTER DOT SLASH -+A719;N # MODIFIER LETTER DOT HORIZONTAL BAR -+A71A;N # MODIFIER LETTER LOWER RIGHT CORNER ANGLE -+A720;N # MODIFIER LETTER STRESS AND HIGH TONE -+A721;N # MODIFIER LETTER STRESS AND LOW TONE - A800;N # SYLOTI NAGRI LETTER A - A801;N # SYLOTI NAGRI LETTER I - A802;N # SYLOTI NAGRI SIGN DVISVARA -@@ -11507,6 +11793,62 @@ - A829;N # SYLOTI NAGRI POETRY MARK-2 - A82A;N # SYLOTI NAGRI POETRY MARK-3 - A82B;N # SYLOTI NAGRI POETRY MARK-4 -+A840;N # PHAGS-PA LETTER KA -+A841;N # PHAGS-PA LETTER KHA -+A842;N # PHAGS-PA LETTER GA -+A843;N # PHAGS-PA LETTER NGA -+A844;N # PHAGS-PA LETTER CA -+A845;N # PHAGS-PA LETTER CHA -+A846;N # PHAGS-PA LETTER JA -+A847;N # PHAGS-PA LETTER NYA -+A848;N # PHAGS-PA LETTER TA -+A849;N # PHAGS-PA LETTER THA -+A84A;N # PHAGS-PA LETTER DA -+A84B;N # PHAGS-PA LETTER NA -+A84C;N # PHAGS-PA LETTER PA -+A84D;N # PHAGS-PA LETTER PHA -+A84E;N # PHAGS-PA LETTER BA -+A84F;N # PHAGS-PA LETTER MA -+A850;N # PHAGS-PA LETTER TSA -+A851;N # PHAGS-PA LETTER TSHA -+A852;N # PHAGS-PA LETTER DZA -+A853;N # PHAGS-PA LETTER WA -+A854;N # PHAGS-PA LETTER ZHA -+A855;N # PHAGS-PA LETTER ZA -+A856;N # PHAGS-PA LETTER SMALL A -+A857;N # PHAGS-PA LETTER YA -+A858;N # PHAGS-PA LETTER RA -+A859;N # PHAGS-PA LETTER LA -+A85A;N # PHAGS-PA LETTER SHA -+A85B;N # PHAGS-PA LETTER SA -+A85C;N # PHAGS-PA LETTER HA -+A85D;N # PHAGS-PA LETTER A -+A85E;N # PHAGS-PA LETTER I -+A85F;N # PHAGS-PA LETTER U -+A860;N # PHAGS-PA LETTER E -+A861;N # PHAGS-PA LETTER O -+A862;N # PHAGS-PA LETTER QA -+A863;N # PHAGS-PA LETTER XA -+A864;N # PHAGS-PA LETTER FA -+A865;N # PHAGS-PA LETTER GGA -+A866;N # PHAGS-PA LETTER EE -+A867;N # PHAGS-PA SUBJOINED LETTER WA -+A868;N # PHAGS-PA SUBJOINED LETTER YA -+A869;N # PHAGS-PA LETTER TTA -+A86A;N # PHAGS-PA LETTER TTHA -+A86B;N # PHAGS-PA LETTER DDA -+A86C;N # PHAGS-PA LETTER NNA -+A86D;N # PHAGS-PA LETTER ALTERNATE YA -+A86E;N # PHAGS-PA LETTER VOICELESS SHA -+A86F;N # PHAGS-PA LETTER VOICED HA -+A870;N # PHAGS-PA LETTER ASPIRATED FA -+A871;N # PHAGS-PA SUBJOINED LETTER RA -+A872;N # PHAGS-PA SUPERFIXED LETTER RA -+A873;N # PHAGS-PA LETTER CANDRABINDU -+A874;N # PHAGS-PA SINGLE HEAD MARK -+A875;N # PHAGS-PA DOUBLE HEAD MARK -+A876;N # PHAGS-PA MARK SHAD -+A877;N # PHAGS-PA MARK DOUBLE SHAD - AC00..D7A3;W # .. - D800..DB7F;N # .. - DB80..DBFF;N # .. -@@ -13800,6 +14142,33 @@ - 10838;N # CYPRIOT SYLLABLE XE - 1083C;N # CYPRIOT SYLLABLE ZA - 1083F;N # CYPRIOT SYLLABLE ZO -+10900;N # PHOENICIAN LETTER ALF -+10901;N # PHOENICIAN LETTER BET -+10902;N # PHOENICIAN LETTER GAML -+10903;N # PHOENICIAN LETTER DELT -+10904;N # PHOENICIAN LETTER HE -+10905;N # PHOENICIAN LETTER WAU -+10906;N # PHOENICIAN LETTER ZAI -+10907;N # PHOENICIAN LETTER HET -+10908;N # PHOENICIAN LETTER TET -+10909;N # PHOENICIAN LETTER YOD -+1090A;N # PHOENICIAN LETTER KAF -+1090B;N # PHOENICIAN LETTER LAMD -+1090C;N # PHOENICIAN LETTER MEM -+1090D;N # PHOENICIAN LETTER NUN -+1090E;N # PHOENICIAN LETTER SEMK -+1090F;N # PHOENICIAN LETTER AIN -+10910;N # PHOENICIAN LETTER PE -+10911;N # PHOENICIAN LETTER SADE -+10912;N # PHOENICIAN LETTER QOF -+10913;N # PHOENICIAN LETTER ROSH -+10914;N # PHOENICIAN LETTER SHIN -+10915;N # PHOENICIAN LETTER TAU -+10916;N # PHOENICIAN NUMBER ONE -+10917;N # PHOENICIAN NUMBER TEN -+10918;N # PHOENICIAN NUMBER TWENTY -+10919;N # PHOENICIAN NUMBER ONE HUNDRED -+1091F;N # PHOENICIAN WORD SEPARATOR - 10A00;N # KHAROSHTHI LETTER A - 10A01;N # KHAROSHTHI VOWEL SIGN I - 10A02;N # KHAROSHTHI VOWEL SIGN U -@@ -13865,6 +14234,988 @@ - 10A56;N # KHAROSHTHI PUNCTUATION DANDA - 10A57;N # KHAROSHTHI PUNCTUATION DOUBLE DANDA - 10A58;N # KHAROSHTHI PUNCTUATION LINES -+12000;N # CUNEIFORM SIGN A -+12001;N # CUNEIFORM SIGN A TIMES A -+12002;N # CUNEIFORM SIGN A TIMES BAD -+12003;N # CUNEIFORM SIGN A TIMES GAN2 TENU -+12004;N # CUNEIFORM SIGN A TIMES HA -+12005;N # CUNEIFORM SIGN A TIMES IGI -+12006;N # CUNEIFORM SIGN A TIMES LAGAR GUNU -+12007;N # CUNEIFORM SIGN A TIMES MUSH -+12008;N # CUNEIFORM SIGN A TIMES SAG -+12009;N # CUNEIFORM SIGN A2 -+1200A;N # CUNEIFORM SIGN AB -+1200B;N # CUNEIFORM SIGN AB TIMES ASH2 -+1200C;N # CUNEIFORM SIGN AB TIMES DUN3 GUNU -+1200D;N # CUNEIFORM SIGN AB TIMES GAL -+1200E;N # CUNEIFORM SIGN AB TIMES GAN2 TENU -+1200F;N # CUNEIFORM SIGN AB TIMES HA -+12010;N # CUNEIFORM SIGN AB TIMES IGI GUNU -+12011;N # CUNEIFORM SIGN AB TIMES IMIN -+12012;N # CUNEIFORM SIGN AB TIMES LAGAB -+12013;N # CUNEIFORM SIGN AB TIMES SHESH -+12014;N # CUNEIFORM SIGN AB TIMES U PLUS U PLUS U -+12015;N # CUNEIFORM SIGN AB GUNU -+12016;N # CUNEIFORM SIGN AB2 -+12017;N # CUNEIFORM SIGN AB2 TIMES BALAG -+12018;N # CUNEIFORM SIGN AB2 TIMES GAN2 TENU -+12019;N # CUNEIFORM SIGN AB2 TIMES ME PLUS EN -+1201A;N # CUNEIFORM SIGN AB2 TIMES SHA3 -+1201B;N # CUNEIFORM SIGN AB2 TIMES TAK4 -+1201C;N # CUNEIFORM SIGN AD -+1201D;N # CUNEIFORM SIGN AK -+1201E;N # CUNEIFORM SIGN AK TIMES ERIN2 -+1201F;N # CUNEIFORM SIGN AK TIMES SHITA PLUS GISH -+12020;N # CUNEIFORM SIGN AL -+12021;N # CUNEIFORM SIGN AL TIMES AL -+12022;N # CUNEIFORM SIGN AL TIMES DIM2 -+12023;N # CUNEIFORM SIGN AL TIMES GISH -+12024;N # CUNEIFORM SIGN AL TIMES HA -+12025;N # CUNEIFORM SIGN AL TIMES KAD3 -+12026;N # CUNEIFORM SIGN AL TIMES KI -+12027;N # CUNEIFORM SIGN AL TIMES SHE -+12028;N # CUNEIFORM SIGN AL TIMES USH -+12029;N # CUNEIFORM SIGN ALAN -+1202A;N # CUNEIFORM SIGN ALEPH -+1202B;N # CUNEIFORM SIGN AMAR -+1202C;N # CUNEIFORM SIGN AMAR TIMES SHE -+1202D;N # CUNEIFORM SIGN AN -+1202E;N # CUNEIFORM SIGN AN OVER AN -+1202F;N # CUNEIFORM SIGN AN THREE TIMES -+12030;N # CUNEIFORM SIGN AN PLUS NAGA OPPOSING AN PLUS NAGA -+12031;N # CUNEIFORM SIGN AN PLUS NAGA SQUARED -+12032;N # CUNEIFORM SIGN ANSHE -+12033;N # CUNEIFORM SIGN APIN -+12034;N # CUNEIFORM SIGN ARAD -+12035;N # CUNEIFORM SIGN ARAD TIMES KUR -+12036;N # CUNEIFORM SIGN ARKAB -+12037;N # CUNEIFORM SIGN ASAL2 -+12038;N # CUNEIFORM SIGN ASH -+12039;N # CUNEIFORM SIGN ASH ZIDA TENU -+1203A;N # CUNEIFORM SIGN ASH KABA TENU -+1203B;N # CUNEIFORM SIGN ASH OVER ASH TUG2 OVER TUG2 TUG2 OVER TUG2 PAP -+1203C;N # CUNEIFORM SIGN ASH OVER ASH OVER ASH -+1203D;N # CUNEIFORM SIGN ASH OVER ASH OVER ASH CROSSING ASH OVER ASH OVER ASH -+1203E;N # CUNEIFORM SIGN ASH2 -+1203F;N # CUNEIFORM SIGN ASHGAB -+12040;N # CUNEIFORM SIGN BA -+12041;N # CUNEIFORM SIGN BAD -+12042;N # CUNEIFORM SIGN BAG3 -+12043;N # CUNEIFORM SIGN BAHAR2 -+12044;N # CUNEIFORM SIGN BAL -+12045;N # CUNEIFORM SIGN BAL OVER BAL -+12046;N # CUNEIFORM SIGN BALAG -+12047;N # CUNEIFORM SIGN BAR -+12048;N # CUNEIFORM SIGN BARA2 -+12049;N # CUNEIFORM SIGN BI -+1204A;N # CUNEIFORM SIGN BI TIMES A -+1204B;N # CUNEIFORM SIGN BI TIMES GAR -+1204C;N # CUNEIFORM SIGN BI TIMES IGI GUNU -+1204D;N # CUNEIFORM SIGN BU -+1204E;N # CUNEIFORM SIGN BU OVER BU AB -+1204F;N # CUNEIFORM SIGN BU OVER BU UN -+12050;N # CUNEIFORM SIGN BU CROSSING BU -+12051;N # CUNEIFORM SIGN BULUG -+12052;N # CUNEIFORM SIGN BULUG OVER BULUG -+12053;N # CUNEIFORM SIGN BUR -+12054;N # CUNEIFORM SIGN BUR2 -+12055;N # CUNEIFORM SIGN DA -+12056;N # CUNEIFORM SIGN DAG -+12057;N # CUNEIFORM SIGN DAG KISIM5 TIMES A PLUS MASH -+12058;N # CUNEIFORM SIGN DAG KISIM5 TIMES AMAR -+12059;N # CUNEIFORM SIGN DAG KISIM5 TIMES BALAG -+1205A;N # CUNEIFORM SIGN DAG KISIM5 TIMES BI -+1205B;N # CUNEIFORM SIGN DAG KISIM5 TIMES GA -+1205C;N # CUNEIFORM SIGN DAG KISIM5 TIMES GA PLUS MASH -+1205D;N # CUNEIFORM SIGN DAG KISIM5 TIMES GI -+1205E;N # CUNEIFORM SIGN DAG KISIM5 TIMES GIR2 -+1205F;N # CUNEIFORM SIGN DAG KISIM5 TIMES GUD -+12060;N # CUNEIFORM SIGN DAG KISIM5 TIMES HA -+12061;N # CUNEIFORM SIGN DAG KISIM5 TIMES IR -+12062;N # CUNEIFORM SIGN DAG KISIM5 TIMES IR PLUS LU -+12063;N # CUNEIFORM SIGN DAG KISIM5 TIMES KAK -+12064;N # CUNEIFORM SIGN DAG KISIM5 TIMES LA -+12065;N # CUNEIFORM SIGN DAG KISIM5 TIMES LU -+12066;N # CUNEIFORM SIGN DAG KISIM5 TIMES LU PLUS MASH2 -+12067;N # CUNEIFORM SIGN DAG KISIM5 TIMES LUM -+12068;N # CUNEIFORM SIGN DAG KISIM5 TIMES NE -+12069;N # CUNEIFORM SIGN DAG KISIM5 TIMES PAP PLUS PAP -+1206A;N # CUNEIFORM SIGN DAG KISIM5 TIMES SI -+1206B;N # CUNEIFORM SIGN DAG KISIM5 TIMES TAK4 -+1206C;N # CUNEIFORM SIGN DAG KISIM5 TIMES U2 PLUS GIR2 -+1206D;N # CUNEIFORM SIGN DAG KISIM5 TIMES USH -+1206E;N # CUNEIFORM SIGN DAM -+1206F;N # CUNEIFORM SIGN DAR -+12070;N # CUNEIFORM SIGN DARA3 -+12071;N # CUNEIFORM SIGN DARA4 -+12072;N # CUNEIFORM SIGN DI -+12073;N # CUNEIFORM SIGN DIB -+12074;N # CUNEIFORM SIGN DIM -+12075;N # CUNEIFORM SIGN DIM TIMES SHE -+12076;N # CUNEIFORM SIGN DIM2 -+12077;N # CUNEIFORM SIGN DIN -+12078;N # CUNEIFORM SIGN DIN KASKAL U GUNU DISH -+12079;N # CUNEIFORM SIGN DISH -+1207A;N # CUNEIFORM SIGN DU -+1207B;N # CUNEIFORM SIGN DU OVER DU -+1207C;N # CUNEIFORM SIGN DU GUNU -+1207D;N # CUNEIFORM SIGN DU SHESHIG -+1207E;N # CUNEIFORM SIGN DUB -+1207F;N # CUNEIFORM SIGN DUB TIMES ESH2 -+12080;N # CUNEIFORM SIGN DUB2 -+12081;N # CUNEIFORM SIGN DUG -+12082;N # CUNEIFORM SIGN DUGUD -+12083;N # CUNEIFORM SIGN DUH -+12084;N # CUNEIFORM SIGN DUN -+12085;N # CUNEIFORM SIGN DUN3 -+12086;N # CUNEIFORM SIGN DUN3 GUNU -+12087;N # CUNEIFORM SIGN DUN3 GUNU GUNU -+12088;N # CUNEIFORM SIGN DUN4 -+12089;N # CUNEIFORM SIGN DUR2 -+1208A;N # CUNEIFORM SIGN E -+1208B;N # CUNEIFORM SIGN E TIMES PAP -+1208C;N # CUNEIFORM SIGN E OVER E NUN OVER NUN -+1208D;N # CUNEIFORM SIGN E2 -+1208E;N # CUNEIFORM SIGN E2 TIMES A PLUS HA PLUS DA -+1208F;N # CUNEIFORM SIGN E2 TIMES GAR -+12090;N # CUNEIFORM SIGN E2 TIMES MI -+12091;N # CUNEIFORM SIGN E2 TIMES SAL -+12092;N # CUNEIFORM SIGN E2 TIMES SHE -+12093;N # CUNEIFORM SIGN E2 TIMES U -+12094;N # CUNEIFORM SIGN EDIN -+12095;N # CUNEIFORM SIGN EGIR -+12096;N # CUNEIFORM SIGN EL -+12097;N # CUNEIFORM SIGN EN -+12098;N # CUNEIFORM SIGN EN TIMES GAN2 -+12099;N # CUNEIFORM SIGN EN TIMES GAN2 TENU -+1209A;N # CUNEIFORM SIGN EN TIMES ME -+1209B;N # CUNEIFORM SIGN EN CROSSING EN -+1209C;N # CUNEIFORM SIGN EN OPPOSING EN -+1209D;N # CUNEIFORM SIGN EN SQUARED -+1209E;N # CUNEIFORM SIGN EREN -+1209F;N # CUNEIFORM SIGN ERIN2 -+120A0;N # CUNEIFORM SIGN ESH2 -+120A1;N # CUNEIFORM SIGN EZEN -+120A2;N # CUNEIFORM SIGN EZEN TIMES A -+120A3;N # CUNEIFORM SIGN EZEN TIMES A PLUS LAL -+120A4;N # CUNEIFORM SIGN EZEN TIMES A PLUS LAL TIMES LAL -+120A5;N # CUNEIFORM SIGN EZEN TIMES AN -+120A6;N # CUNEIFORM SIGN EZEN TIMES BAD -+120A7;N # CUNEIFORM SIGN EZEN TIMES DUN3 GUNU -+120A8;N # CUNEIFORM SIGN EZEN TIMES DUN3 GUNU GUNU -+120A9;N # CUNEIFORM SIGN EZEN TIMES HA -+120AA;N # CUNEIFORM SIGN EZEN TIMES HA GUNU -+120AB;N # CUNEIFORM SIGN EZEN TIMES IGI GUNU -+120AC;N # CUNEIFORM SIGN EZEN TIMES KASKAL -+120AD;N # CUNEIFORM SIGN EZEN TIMES KASKAL SQUARED -+120AE;N # CUNEIFORM SIGN EZEN TIMES KU3 -+120AF;N # CUNEIFORM SIGN EZEN TIMES LA -+120B0;N # CUNEIFORM SIGN EZEN TIMES LAL TIMES LAL -+120B1;N # CUNEIFORM SIGN EZEN TIMES LI -+120B2;N # CUNEIFORM SIGN EZEN TIMES LU -+120B3;N # CUNEIFORM SIGN EZEN TIMES U2 -+120B4;N # CUNEIFORM SIGN EZEN TIMES UD -+120B5;N # CUNEIFORM SIGN GA -+120B6;N # CUNEIFORM SIGN GA GUNU -+120B7;N # CUNEIFORM SIGN GA2 -+120B8;N # CUNEIFORM SIGN GA2 TIMES A PLUS DA PLUS HA -+120B9;N # CUNEIFORM SIGN GA2 TIMES A PLUS HA -+120BA;N # CUNEIFORM SIGN GA2 TIMES A PLUS IGI -+120BB;N # CUNEIFORM SIGN GA2 TIMES AB2 TENU PLUS TAB -+120BC;N # CUNEIFORM SIGN GA2 TIMES AN -+120BD;N # CUNEIFORM SIGN GA2 TIMES ASH -+120BE;N # CUNEIFORM SIGN GA2 TIMES ASH2 PLUS GAL -+120BF;N # CUNEIFORM SIGN GA2 TIMES BAD -+120C0;N # CUNEIFORM SIGN GA2 TIMES BAR PLUS RA -+120C1;N # CUNEIFORM SIGN GA2 TIMES BUR -+120C2;N # CUNEIFORM SIGN GA2 TIMES BUR PLUS RA -+120C3;N # CUNEIFORM SIGN GA2 TIMES DA -+120C4;N # CUNEIFORM SIGN GA2 TIMES DI -+120C5;N # CUNEIFORM SIGN GA2 TIMES DIM TIMES SHE -+120C6;N # CUNEIFORM SIGN GA2 TIMES DUB -+120C7;N # CUNEIFORM SIGN GA2 TIMES EL -+120C8;N # CUNEIFORM SIGN GA2 TIMES EL PLUS LA -+120C9;N # CUNEIFORM SIGN GA2 TIMES EN -+120CA;N # CUNEIFORM SIGN GA2 TIMES EN TIMES GAN2 TENU -+120CB;N # CUNEIFORM SIGN GA2 TIMES GAN2 TENU -+120CC;N # CUNEIFORM SIGN GA2 TIMES GAR -+120CD;N # CUNEIFORM SIGN GA2 TIMES GI -+120CE;N # CUNEIFORM SIGN GA2 TIMES GI4 -+120CF;N # CUNEIFORM SIGN GA2 TIMES GI4 PLUS A -+120D0;N # CUNEIFORM SIGN GA2 TIMES GIR2 PLUS SU -+120D1;N # CUNEIFORM SIGN GA2 TIMES HA PLUS LU PLUS ESH2 -+120D2;N # CUNEIFORM SIGN GA2 TIMES HAL -+120D3;N # CUNEIFORM SIGN GA2 TIMES HAL PLUS LA -+120D4;N # CUNEIFORM SIGN GA2 TIMES HI PLUS LI -+120D5;N # CUNEIFORM SIGN GA2 TIMES HUB2 -+120D6;N # CUNEIFORM SIGN GA2 TIMES IGI GUNU -+120D7;N # CUNEIFORM SIGN GA2 TIMES ISH PLUS HU PLUS ASH -+120D8;N # CUNEIFORM SIGN GA2 TIMES KAK -+120D9;N # CUNEIFORM SIGN GA2 TIMES KASKAL -+120DA;N # CUNEIFORM SIGN GA2 TIMES KID -+120DB;N # CUNEIFORM SIGN GA2 TIMES KID PLUS LAL -+120DC;N # CUNEIFORM SIGN GA2 TIMES KU3 PLUS AN -+120DD;N # CUNEIFORM SIGN GA2 TIMES LA -+120DE;N # CUNEIFORM SIGN GA2 TIMES ME PLUS EN -+120DF;N # CUNEIFORM SIGN GA2 TIMES MI -+120E0;N # CUNEIFORM SIGN GA2 TIMES NUN -+120E1;N # CUNEIFORM SIGN GA2 TIMES NUN OVER NUN -+120E2;N # CUNEIFORM SIGN GA2 TIMES PA -+120E3;N # CUNEIFORM SIGN GA2 TIMES SAL -+120E4;N # CUNEIFORM SIGN GA2 TIMES SAR -+120E5;N # CUNEIFORM SIGN GA2 TIMES SHE -+120E6;N # CUNEIFORM SIGN GA2 TIMES SHE PLUS TUR -+120E7;N # CUNEIFORM SIGN GA2 TIMES SHID -+120E8;N # CUNEIFORM SIGN GA2 TIMES SUM -+120E9;N # CUNEIFORM SIGN GA2 TIMES TAK4 -+120EA;N # CUNEIFORM SIGN GA2 TIMES U -+120EB;N # CUNEIFORM SIGN GA2 TIMES UD -+120EC;N # CUNEIFORM SIGN GA2 TIMES UD PLUS DU -+120ED;N # CUNEIFORM SIGN GA2 OVER GA2 -+120EE;N # CUNEIFORM SIGN GABA -+120EF;N # CUNEIFORM SIGN GABA CROSSING GABA -+120F0;N # CUNEIFORM SIGN GAD -+120F1;N # CUNEIFORM SIGN GAD OVER GAD GAR OVER GAR -+120F2;N # CUNEIFORM SIGN GAL -+120F3;N # CUNEIFORM SIGN GAL GAD OVER GAD GAR OVER GAR -+120F4;N # CUNEIFORM SIGN GALAM -+120F5;N # CUNEIFORM SIGN GAM -+120F6;N # CUNEIFORM SIGN GAN -+120F7;N # CUNEIFORM SIGN GAN2 -+120F8;N # CUNEIFORM SIGN GAN2 TENU -+120F9;N # CUNEIFORM SIGN GAN2 OVER GAN2 -+120FA;N # CUNEIFORM SIGN GAN2 CROSSING GAN2 -+120FB;N # CUNEIFORM SIGN GAR -+120FC;N # CUNEIFORM SIGN GAR3 -+120FD;N # CUNEIFORM SIGN GASHAN -+120FE;N # CUNEIFORM SIGN GESHTIN -+120FF;N # CUNEIFORM SIGN GESHTIN TIMES KUR -+12100;N # CUNEIFORM SIGN GI -+12101;N # CUNEIFORM SIGN GI TIMES E -+12102;N # CUNEIFORM SIGN GI TIMES U -+12103;N # CUNEIFORM SIGN GI CROSSING GI -+12104;N # CUNEIFORM SIGN GI4 -+12105;N # CUNEIFORM SIGN GI4 OVER GI4 -+12106;N # CUNEIFORM SIGN GI4 CROSSING GI4 -+12107;N # CUNEIFORM SIGN GIDIM -+12108;N # CUNEIFORM SIGN GIR2 -+12109;N # CUNEIFORM SIGN GIR2 GUNU -+1210A;N # CUNEIFORM SIGN GIR3 -+1210B;N # CUNEIFORM SIGN GIR3 TIMES A PLUS IGI -+1210C;N # CUNEIFORM SIGN GIR3 TIMES GAN2 TENU -+1210D;N # CUNEIFORM SIGN GIR3 TIMES IGI -+1210E;N # CUNEIFORM SIGN GIR3 TIMES LU PLUS IGI -+1210F;N # CUNEIFORM SIGN GIR3 TIMES PA -+12110;N # CUNEIFORM SIGN GISAL -+12111;N # CUNEIFORM SIGN GISH -+12112;N # CUNEIFORM SIGN GISH CROSSING GISH -+12113;N # CUNEIFORM SIGN GISH TIMES BAD -+12114;N # CUNEIFORM SIGN GISH TIMES TAK4 -+12115;N # CUNEIFORM SIGN GISH TENU -+12116;N # CUNEIFORM SIGN GU -+12117;N # CUNEIFORM SIGN GU CROSSING GU -+12118;N # CUNEIFORM SIGN GU2 -+12119;N # CUNEIFORM SIGN GU2 TIMES KAK -+1211A;N # CUNEIFORM SIGN GU2 TIMES KAK TIMES IGI GUNU -+1211B;N # CUNEIFORM SIGN GU2 TIMES NUN -+1211C;N # CUNEIFORM SIGN GU2 TIMES SAL PLUS TUG2 -+1211D;N # CUNEIFORM SIGN GU2 GUNU -+1211E;N # CUNEIFORM SIGN GUD -+1211F;N # CUNEIFORM SIGN GUD TIMES A PLUS KUR -+12120;N # CUNEIFORM SIGN GUD TIMES KUR -+12121;N # CUNEIFORM SIGN GUD OVER GUD LUGAL -+12122;N # CUNEIFORM SIGN GUL -+12123;N # CUNEIFORM SIGN GUM -+12124;N # CUNEIFORM SIGN GUM TIMES SHE -+12125;N # CUNEIFORM SIGN GUR -+12126;N # CUNEIFORM SIGN GUR7 -+12127;N # CUNEIFORM SIGN GURUN -+12128;N # CUNEIFORM SIGN GURUSH -+12129;N # CUNEIFORM SIGN HA -+1212A;N # CUNEIFORM SIGN HA TENU -+1212B;N # CUNEIFORM SIGN HA GUNU -+1212C;N # CUNEIFORM SIGN HAL -+1212D;N # CUNEIFORM SIGN HI -+1212E;N # CUNEIFORM SIGN HI TIMES ASH -+1212F;N # CUNEIFORM SIGN HI TIMES ASH2 -+12130;N # CUNEIFORM SIGN HI TIMES BAD -+12131;N # CUNEIFORM SIGN HI TIMES DISH -+12132;N # CUNEIFORM SIGN HI TIMES GAD -+12133;N # CUNEIFORM SIGN HI TIMES KIN -+12134;N # CUNEIFORM SIGN HI TIMES NUN -+12135;N # CUNEIFORM SIGN HI TIMES SHE -+12136;N # CUNEIFORM SIGN HI TIMES U -+12137;N # CUNEIFORM SIGN HU -+12138;N # CUNEIFORM SIGN HUB2 -+12139;N # CUNEIFORM SIGN HUB2 TIMES AN -+1213A;N # CUNEIFORM SIGN HUB2 TIMES HAL -+1213B;N # CUNEIFORM SIGN HUB2 TIMES KASKAL -+1213C;N # CUNEIFORM SIGN HUB2 TIMES LISH -+1213D;N # CUNEIFORM SIGN HUB2 TIMES UD -+1213E;N # CUNEIFORM SIGN HUL2 -+1213F;N # CUNEIFORM SIGN I -+12140;N # CUNEIFORM SIGN I A -+12141;N # CUNEIFORM SIGN IB -+12142;N # CUNEIFORM SIGN IDIM -+12143;N # CUNEIFORM SIGN IDIM OVER IDIM BUR -+12144;N # CUNEIFORM SIGN IDIM OVER IDIM SQUARED -+12145;N # CUNEIFORM SIGN IG -+12146;N # CUNEIFORM SIGN IGI -+12147;N # CUNEIFORM SIGN IGI DIB -+12148;N # CUNEIFORM SIGN IGI RI -+12149;N # CUNEIFORM SIGN IGI OVER IGI SHIR OVER SHIR UD OVER UD -+1214A;N # CUNEIFORM SIGN IGI GUNU -+1214B;N # CUNEIFORM SIGN IL -+1214C;N # CUNEIFORM SIGN IL TIMES GAN2 TENU -+1214D;N # CUNEIFORM SIGN IL2 -+1214E;N # CUNEIFORM SIGN IM -+1214F;N # CUNEIFORM SIGN IM TIMES TAK4 -+12150;N # CUNEIFORM SIGN IM CROSSING IM -+12151;N # CUNEIFORM SIGN IM OPPOSING IM -+12152;N # CUNEIFORM SIGN IM SQUARED -+12153;N # CUNEIFORM SIGN IMIN -+12154;N # CUNEIFORM SIGN IN -+12155;N # CUNEIFORM SIGN IR -+12156;N # CUNEIFORM SIGN ISH -+12157;N # CUNEIFORM SIGN KA -+12158;N # CUNEIFORM SIGN KA TIMES A -+12159;N # CUNEIFORM SIGN KA TIMES AD -+1215A;N # CUNEIFORM SIGN KA TIMES AD PLUS KU3 -+1215B;N # CUNEIFORM SIGN KA TIMES ASH2 -+1215C;N # CUNEIFORM SIGN KA TIMES BAD -+1215D;N # CUNEIFORM SIGN KA TIMES BALAG -+1215E;N # CUNEIFORM SIGN KA TIMES BAR -+1215F;N # CUNEIFORM SIGN KA TIMES BI -+12160;N # CUNEIFORM SIGN KA TIMES ERIN2 -+12161;N # CUNEIFORM SIGN KA TIMES ESH2 -+12162;N # CUNEIFORM SIGN KA TIMES GA -+12163;N # CUNEIFORM SIGN KA TIMES GAL -+12164;N # CUNEIFORM SIGN KA TIMES GAN2 TENU -+12165;N # CUNEIFORM SIGN KA TIMES GAR -+12166;N # CUNEIFORM SIGN KA TIMES GAR PLUS SHA3 PLUS A -+12167;N # CUNEIFORM SIGN KA TIMES GI -+12168;N # CUNEIFORM SIGN KA TIMES GIR2 -+12169;N # CUNEIFORM SIGN KA TIMES GISH PLUS SAR -+1216A;N # CUNEIFORM SIGN KA TIMES GISH CROSSING GISH -+1216B;N # CUNEIFORM SIGN KA TIMES GU -+1216C;N # CUNEIFORM SIGN KA TIMES GUR7 -+1216D;N # CUNEIFORM SIGN KA TIMES IGI -+1216E;N # CUNEIFORM SIGN KA TIMES IM -+1216F;N # CUNEIFORM SIGN KA TIMES KAK -+12170;N # CUNEIFORM SIGN KA TIMES KI -+12171;N # CUNEIFORM SIGN KA TIMES KID -+12172;N # CUNEIFORM SIGN KA TIMES LI -+12173;N # CUNEIFORM SIGN KA TIMES LU -+12174;N # CUNEIFORM SIGN KA TIMES ME -+12175;N # CUNEIFORM SIGN KA TIMES ME PLUS DU -+12176;N # CUNEIFORM SIGN KA TIMES ME PLUS GI -+12177;N # CUNEIFORM SIGN KA TIMES ME PLUS TE -+12178;N # CUNEIFORM SIGN KA TIMES MI -+12179;N # CUNEIFORM SIGN KA TIMES MI PLUS NUNUZ -+1217A;N # CUNEIFORM SIGN KA TIMES NE -+1217B;N # CUNEIFORM SIGN KA TIMES NUN -+1217C;N # CUNEIFORM SIGN KA TIMES PI -+1217D;N # CUNEIFORM SIGN KA TIMES RU -+1217E;N # CUNEIFORM SIGN KA TIMES SA -+1217F;N # CUNEIFORM SIGN KA TIMES SAR -+12180;N # CUNEIFORM SIGN KA TIMES SHA -+12181;N # CUNEIFORM SIGN KA TIMES SHE -+12182;N # CUNEIFORM SIGN KA TIMES SHID -+12183;N # CUNEIFORM SIGN KA TIMES SHU -+12184;N # CUNEIFORM SIGN KA TIMES SIG -+12185;N # CUNEIFORM SIGN KA TIMES SUHUR -+12186;N # CUNEIFORM SIGN KA TIMES TAR -+12187;N # CUNEIFORM SIGN KA TIMES U -+12188;N # CUNEIFORM SIGN KA TIMES U2 -+12189;N # CUNEIFORM SIGN KA TIMES UD -+1218A;N # CUNEIFORM SIGN KA TIMES UMUM TIMES PA -+1218B;N # CUNEIFORM SIGN KA TIMES USH -+1218C;N # CUNEIFORM SIGN KA TIMES ZI -+1218D;N # CUNEIFORM SIGN KA2 -+1218E;N # CUNEIFORM SIGN KA2 CROSSING KA2 -+1218F;N # CUNEIFORM SIGN KAB -+12190;N # CUNEIFORM SIGN KAD2 -+12191;N # CUNEIFORM SIGN KAD3 -+12192;N # CUNEIFORM SIGN KAD4 -+12193;N # CUNEIFORM SIGN KAD5 -+12194;N # CUNEIFORM SIGN KAD5 OVER KAD5 -+12195;N # CUNEIFORM SIGN KAK -+12196;N # CUNEIFORM SIGN KAK TIMES IGI GUNU -+12197;N # CUNEIFORM SIGN KAL -+12198;N # CUNEIFORM SIGN KAL TIMES BAD -+12199;N # CUNEIFORM SIGN KAL CROSSING KAL -+1219A;N # CUNEIFORM SIGN KAM2 -+1219B;N # CUNEIFORM SIGN KAM4 -+1219C;N # CUNEIFORM SIGN KASKAL -+1219D;N # CUNEIFORM SIGN KASKAL LAGAB TIMES U OVER LAGAB TIMES U -+1219E;N # CUNEIFORM SIGN KASKAL OVER KASKAL LAGAB TIMES U OVER LAGAB TIMES U -+1219F;N # CUNEIFORM SIGN KESH2 -+121A0;N # CUNEIFORM SIGN KI -+121A1;N # CUNEIFORM SIGN KI TIMES BAD -+121A2;N # CUNEIFORM SIGN KI TIMES U -+121A3;N # CUNEIFORM SIGN KI TIMES UD -+121A4;N # CUNEIFORM SIGN KID -+121A5;N # CUNEIFORM SIGN KIN -+121A6;N # CUNEIFORM SIGN KISAL -+121A7;N # CUNEIFORM SIGN KISH -+121A8;N # CUNEIFORM SIGN KISIM5 -+121A9;N # CUNEIFORM SIGN KISIM5 OVER KISIM5 -+121AA;N # CUNEIFORM SIGN KU -+121AB;N # CUNEIFORM SIGN KU OVER HI TIMES ASH2 KU OVER HI TIMES ASH2 -+121AC;N # CUNEIFORM SIGN KU3 -+121AD;N # CUNEIFORM SIGN KU4 -+121AE;N # CUNEIFORM SIGN KU4 VARIANT FORM -+121AF;N # CUNEIFORM SIGN KU7 -+121B0;N # CUNEIFORM SIGN KUL -+121B1;N # CUNEIFORM SIGN KUL GUNU -+121B2;N # CUNEIFORM SIGN KUN -+121B3;N # CUNEIFORM SIGN KUR -+121B4;N # CUNEIFORM SIGN KUR OPPOSING KUR -+121B5;N # CUNEIFORM SIGN KUSHU2 -+121B6;N # CUNEIFORM SIGN KWU318 -+121B7;N # CUNEIFORM SIGN LA -+121B8;N # CUNEIFORM SIGN LAGAB -+121B9;N # CUNEIFORM SIGN LAGAB TIMES A -+121BA;N # CUNEIFORM SIGN LAGAB TIMES A PLUS DA PLUS HA -+121BB;N # CUNEIFORM SIGN LAGAB TIMES A PLUS GAR -+121BC;N # CUNEIFORM SIGN LAGAB TIMES A PLUS LAL -+121BD;N # CUNEIFORM SIGN LAGAB TIMES AL -+121BE;N # CUNEIFORM SIGN LAGAB TIMES AN -+121BF;N # CUNEIFORM SIGN LAGAB TIMES ASH ZIDA TENU -+121C0;N # CUNEIFORM SIGN LAGAB TIMES BAD -+121C1;N # CUNEIFORM SIGN LAGAB TIMES BI -+121C2;N # CUNEIFORM SIGN LAGAB TIMES DAR -+121C3;N # CUNEIFORM SIGN LAGAB TIMES EN -+121C4;N # CUNEIFORM SIGN LAGAB TIMES GA -+121C5;N # CUNEIFORM SIGN LAGAB TIMES GAR -+121C6;N # CUNEIFORM SIGN LAGAB TIMES GUD -+121C7;N # CUNEIFORM SIGN LAGAB TIMES GUD PLUS GUD -+121C8;N # CUNEIFORM SIGN LAGAB TIMES HA -+121C9;N # CUNEIFORM SIGN LAGAB TIMES HAL -+121CA;N # CUNEIFORM SIGN LAGAB TIMES HI TIMES NUN -+121CB;N # CUNEIFORM SIGN LAGAB TIMES IGI GUNU -+121CC;N # CUNEIFORM SIGN LAGAB TIMES IM -+121CD;N # CUNEIFORM SIGN LAGAB TIMES IM PLUS HA -+121CE;N # CUNEIFORM SIGN LAGAB TIMES IM PLUS LU -+121CF;N # CUNEIFORM SIGN LAGAB TIMES KI -+121D0;N # CUNEIFORM SIGN LAGAB TIMES KIN -+121D1;N # CUNEIFORM SIGN LAGAB TIMES KU3 -+121D2;N # CUNEIFORM SIGN LAGAB TIMES KUL -+121D3;N # CUNEIFORM SIGN LAGAB TIMES KUL PLUS HI PLUS A -+121D4;N # CUNEIFORM SIGN LAGAB TIMES LAGAB -+121D5;N # CUNEIFORM SIGN LAGAB TIMES LISH -+121D6;N # CUNEIFORM SIGN LAGAB TIMES LU -+121D7;N # CUNEIFORM SIGN LAGAB TIMES LUL -+121D8;N # CUNEIFORM SIGN LAGAB TIMES ME -+121D9;N # CUNEIFORM SIGN LAGAB TIMES ME PLUS EN -+121DA;N # CUNEIFORM SIGN LAGAB TIMES MUSH -+121DB;N # CUNEIFORM SIGN LAGAB TIMES NE -+121DC;N # CUNEIFORM SIGN LAGAB TIMES SHE PLUS SUM -+121DD;N # CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH PLUS ERIN2 -+121DE;N # CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH TENU -+121DF;N # CUNEIFORM SIGN LAGAB TIMES SHU2 -+121E0;N # CUNEIFORM SIGN LAGAB TIMES SHU2 PLUS SHU2 -+121E1;N # CUNEIFORM SIGN LAGAB TIMES SUM -+121E2;N # CUNEIFORM SIGN LAGAB TIMES TAG -+121E3;N # CUNEIFORM SIGN LAGAB TIMES TAK4 -+121E4;N # CUNEIFORM SIGN LAGAB TIMES TE PLUS A PLUS SU PLUS NA -+121E5;N # CUNEIFORM SIGN LAGAB TIMES U -+121E6;N # CUNEIFORM SIGN LAGAB TIMES U PLUS A -+121E7;N # CUNEIFORM SIGN LAGAB TIMES U PLUS U PLUS U -+121E8;N # CUNEIFORM SIGN LAGAB TIMES U2 PLUS ASH -+121E9;N # CUNEIFORM SIGN LAGAB TIMES UD -+121EA;N # CUNEIFORM SIGN LAGAB TIMES USH -+121EB;N # CUNEIFORM SIGN LAGAB SQUARED -+121EC;N # CUNEIFORM SIGN LAGAR -+121ED;N # CUNEIFORM SIGN LAGAR TIMES SHE -+121EE;N # CUNEIFORM SIGN LAGAR TIMES SHE PLUS SUM -+121EF;N # CUNEIFORM SIGN LAGAR GUNU -+121F0;N # CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE -+121F1;N # CUNEIFORM SIGN LAHSHU -+121F2;N # CUNEIFORM SIGN LAL -+121F3;N # CUNEIFORM SIGN LAL TIMES LAL -+121F4;N # CUNEIFORM SIGN LAM -+121F5;N # CUNEIFORM SIGN LAM TIMES KUR -+121F6;N # CUNEIFORM SIGN LAM TIMES KUR PLUS RU -+121F7;N # CUNEIFORM SIGN LI -+121F8;N # CUNEIFORM SIGN LIL -+121F9;N # CUNEIFORM SIGN LIMMU2 -+121FA;N # CUNEIFORM SIGN LISH -+121FB;N # CUNEIFORM SIGN LU -+121FC;N # CUNEIFORM SIGN LU TIMES BAD -+121FD;N # CUNEIFORM SIGN LU2 -+121FE;N # CUNEIFORM SIGN LU2 TIMES AL -+121FF;N # CUNEIFORM SIGN LU2 TIMES BAD -+12200;N # CUNEIFORM SIGN LU2 TIMES ESH2 -+12201;N # CUNEIFORM SIGN LU2 TIMES ESH2 TENU -+12202;N # CUNEIFORM SIGN LU2 TIMES GAN2 TENU -+12203;N # CUNEIFORM SIGN LU2 TIMES HI TIMES BAD -+12204;N # CUNEIFORM SIGN LU2 TIMES IM -+12205;N # CUNEIFORM SIGN LU2 TIMES KAD2 -+12206;N # CUNEIFORM SIGN LU2 TIMES KAD3 -+12207;N # CUNEIFORM SIGN LU2 TIMES KAD3 PLUS ASH -+12208;N # CUNEIFORM SIGN LU2 TIMES KI -+12209;N # CUNEIFORM SIGN LU2 TIMES LA PLUS ASH -+1220A;N # CUNEIFORM SIGN LU2 TIMES LAGAB -+1220B;N # CUNEIFORM SIGN LU2 TIMES ME PLUS EN -+1220C;N # CUNEIFORM SIGN LU2 TIMES NE -+1220D;N # CUNEIFORM SIGN LU2 TIMES NU -+1220E;N # CUNEIFORM SIGN LU2 TIMES SI PLUS ASH -+1220F;N # CUNEIFORM SIGN LU2 TIMES SIK2 PLUS BU -+12210;N # CUNEIFORM SIGN LU2 TIMES TUG2 -+12211;N # CUNEIFORM SIGN LU2 TENU -+12212;N # CUNEIFORM SIGN LU2 CROSSING LU2 -+12213;N # CUNEIFORM SIGN LU2 OPPOSING LU2 -+12214;N # CUNEIFORM SIGN LU2 SQUARED -+12215;N # CUNEIFORM SIGN LU2 SHESHIG -+12216;N # CUNEIFORM SIGN LU3 -+12217;N # CUNEIFORM SIGN LUGAL -+12218;N # CUNEIFORM SIGN LUGAL OVER LUGAL -+12219;N # CUNEIFORM SIGN LUGAL OPPOSING LUGAL -+1221A;N # CUNEIFORM SIGN LUGAL SHESHIG -+1221B;N # CUNEIFORM SIGN LUH -+1221C;N # CUNEIFORM SIGN LUL -+1221D;N # CUNEIFORM SIGN LUM -+1221E;N # CUNEIFORM SIGN LUM OVER LUM -+1221F;N # CUNEIFORM SIGN LUM OVER LUM GAR OVER GAR -+12220;N # CUNEIFORM SIGN MA -+12221;N # CUNEIFORM SIGN MA TIMES TAK4 -+12222;N # CUNEIFORM SIGN MA GUNU -+12223;N # CUNEIFORM SIGN MA2 -+12224;N # CUNEIFORM SIGN MAH -+12225;N # CUNEIFORM SIGN MAR -+12226;N # CUNEIFORM SIGN MASH -+12227;N # CUNEIFORM SIGN MASH2 -+12228;N # CUNEIFORM SIGN ME -+12229;N # CUNEIFORM SIGN MES -+1222A;N # CUNEIFORM SIGN MI -+1222B;N # CUNEIFORM SIGN MIN -+1222C;N # CUNEIFORM SIGN MU -+1222D;N # CUNEIFORM SIGN MU OVER MU -+1222E;N # CUNEIFORM SIGN MUG -+1222F;N # CUNEIFORM SIGN MUG GUNU -+12230;N # CUNEIFORM SIGN MUNSUB -+12231;N # CUNEIFORM SIGN MURGU2 -+12232;N # CUNEIFORM SIGN MUSH -+12233;N # CUNEIFORM SIGN MUSH TIMES A -+12234;N # CUNEIFORM SIGN MUSH TIMES KUR -+12235;N # CUNEIFORM SIGN MUSH TIMES ZA -+12236;N # CUNEIFORM SIGN MUSH OVER MUSH -+12237;N # CUNEIFORM SIGN MUSH OVER MUSH TIMES A PLUS NA -+12238;N # CUNEIFORM SIGN MUSH CROSSING MUSH -+12239;N # CUNEIFORM SIGN MUSH3 -+1223A;N # CUNEIFORM SIGN MUSH3 TIMES A -+1223B;N # CUNEIFORM SIGN MUSH3 TIMES A PLUS DI -+1223C;N # CUNEIFORM SIGN MUSH3 TIMES DI -+1223D;N # CUNEIFORM SIGN MUSH3 GUNU -+1223E;N # CUNEIFORM SIGN NA -+1223F;N # CUNEIFORM SIGN NA2 -+12240;N # CUNEIFORM SIGN NAGA -+12241;N # CUNEIFORM SIGN NAGA INVERTED -+12242;N # CUNEIFORM SIGN NAGA TIMES SHU TENU -+12243;N # CUNEIFORM SIGN NAGA OPPOSING NAGA -+12244;N # CUNEIFORM SIGN NAGAR -+12245;N # CUNEIFORM SIGN NAM NUTILLU -+12246;N # CUNEIFORM SIGN NAM -+12247;N # CUNEIFORM SIGN NAM2 -+12248;N # CUNEIFORM SIGN NE -+12249;N # CUNEIFORM SIGN NE TIMES A -+1224A;N # CUNEIFORM SIGN NE TIMES UD -+1224B;N # CUNEIFORM SIGN NE SHESHIG -+1224C;N # CUNEIFORM SIGN NI -+1224D;N # CUNEIFORM SIGN NI TIMES E -+1224E;N # CUNEIFORM SIGN NI2 -+1224F;N # CUNEIFORM SIGN NIM -+12250;N # CUNEIFORM SIGN NIM TIMES GAN2 TENU -+12251;N # CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU -+12252;N # CUNEIFORM SIGN NINDA2 -+12253;N # CUNEIFORM SIGN NINDA2 TIMES AN -+12254;N # CUNEIFORM SIGN NINDA2 TIMES ASH -+12255;N # CUNEIFORM SIGN NINDA2 TIMES ASH PLUS ASH -+12256;N # CUNEIFORM SIGN NINDA2 TIMES GUD -+12257;N # CUNEIFORM SIGN NINDA2 TIMES ME PLUS GAN2 TENU -+12258;N # CUNEIFORM SIGN NINDA2 TIMES NE -+12259;N # CUNEIFORM SIGN NINDA2 TIMES NUN -+1225A;N # CUNEIFORM SIGN NINDA2 TIMES SHE -+1225B;N # CUNEIFORM SIGN NINDA2 TIMES SHE PLUS A AN -+1225C;N # CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH -+1225D;N # CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH PLUS ASH -+1225E;N # CUNEIFORM SIGN NINDA2 TIMES U2 PLUS ASH -+1225F;N # CUNEIFORM SIGN NINDA2 TIMES USH -+12260;N # CUNEIFORM SIGN NISAG -+12261;N # CUNEIFORM SIGN NU -+12262;N # CUNEIFORM SIGN NU11 -+12263;N # CUNEIFORM SIGN NUN -+12264;N # CUNEIFORM SIGN NUN LAGAR TIMES GAR -+12265;N # CUNEIFORM SIGN NUN LAGAR TIMES MASH -+12266;N # CUNEIFORM SIGN NUN LAGAR TIMES SAL -+12267;N # CUNEIFORM SIGN NUN LAGAR TIMES SAL OVER NUN LAGAR TIMES SAL -+12268;N # CUNEIFORM SIGN NUN LAGAR TIMES USH -+12269;N # CUNEIFORM SIGN NUN TENU -+1226A;N # CUNEIFORM SIGN NUN OVER NUN -+1226B;N # CUNEIFORM SIGN NUN CROSSING NUN -+1226C;N # CUNEIFORM SIGN NUN CROSSING NUN LAGAR OVER LAGAR -+1226D;N # CUNEIFORM SIGN NUNUZ -+1226E;N # CUNEIFORM SIGN NUNUZ AB2 TIMES ASHGAB -+1226F;N # CUNEIFORM SIGN NUNUZ AB2 TIMES BI -+12270;N # CUNEIFORM SIGN NUNUZ AB2 TIMES DUG -+12271;N # CUNEIFORM SIGN NUNUZ AB2 TIMES GUD -+12272;N # CUNEIFORM SIGN NUNUZ AB2 TIMES IGI GUNU -+12273;N # CUNEIFORM SIGN NUNUZ AB2 TIMES KAD3 -+12274;N # CUNEIFORM SIGN NUNUZ AB2 TIMES LA -+12275;N # CUNEIFORM SIGN NUNUZ AB2 TIMES NE -+12276;N # CUNEIFORM SIGN NUNUZ AB2 TIMES SILA3 -+12277;N # CUNEIFORM SIGN NUNUZ AB2 TIMES U2 -+12278;N # CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI -+12279;N # CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI U -+1227A;N # CUNEIFORM SIGN PA -+1227B;N # CUNEIFORM SIGN PAD -+1227C;N # CUNEIFORM SIGN PAN -+1227D;N # CUNEIFORM SIGN PAP -+1227E;N # CUNEIFORM SIGN PESH2 -+1227F;N # CUNEIFORM SIGN PI -+12280;N # CUNEIFORM SIGN PI TIMES A -+12281;N # CUNEIFORM SIGN PI TIMES AB -+12282;N # CUNEIFORM SIGN PI TIMES BI -+12283;N # CUNEIFORM SIGN PI TIMES BU -+12284;N # CUNEIFORM SIGN PI TIMES E -+12285;N # CUNEIFORM SIGN PI TIMES I -+12286;N # CUNEIFORM SIGN PI TIMES IB -+12287;N # CUNEIFORM SIGN PI TIMES U -+12288;N # CUNEIFORM SIGN PI TIMES U2 -+12289;N # CUNEIFORM SIGN PI CROSSING PI -+1228A;N # CUNEIFORM SIGN PIRIG -+1228B;N # CUNEIFORM SIGN PIRIG TIMES KAL -+1228C;N # CUNEIFORM SIGN PIRIG TIMES UD -+1228D;N # CUNEIFORM SIGN PIRIG TIMES ZA -+1228E;N # CUNEIFORM SIGN PIRIG OPPOSING PIRIG -+1228F;N # CUNEIFORM SIGN RA -+12290;N # CUNEIFORM SIGN RAB -+12291;N # CUNEIFORM SIGN RI -+12292;N # CUNEIFORM SIGN RU -+12293;N # CUNEIFORM SIGN SA -+12294;N # CUNEIFORM SIGN SAG NUTILLU -+12295;N # CUNEIFORM SIGN SAG -+12296;N # CUNEIFORM SIGN SAG TIMES A -+12297;N # CUNEIFORM SIGN SAG TIMES DU -+12298;N # CUNEIFORM SIGN SAG TIMES DUB -+12299;N # CUNEIFORM SIGN SAG TIMES HA -+1229A;N # CUNEIFORM SIGN SAG TIMES KAK -+1229B;N # CUNEIFORM SIGN SAG TIMES KUR -+1229C;N # CUNEIFORM SIGN SAG TIMES LUM -+1229D;N # CUNEIFORM SIGN SAG TIMES MI -+1229E;N # CUNEIFORM SIGN SAG TIMES NUN -+1229F;N # CUNEIFORM SIGN SAG TIMES SAL -+122A0;N # CUNEIFORM SIGN SAG TIMES SHID -+122A1;N # CUNEIFORM SIGN SAG TIMES TAB -+122A2;N # CUNEIFORM SIGN SAG TIMES U2 -+122A3;N # CUNEIFORM SIGN SAG TIMES UB -+122A4;N # CUNEIFORM SIGN SAG TIMES UM -+122A5;N # CUNEIFORM SIGN SAG TIMES UR -+122A6;N # CUNEIFORM SIGN SAG TIMES USH -+122A7;N # CUNEIFORM SIGN SAG OVER SAG -+122A8;N # CUNEIFORM SIGN SAG GUNU -+122A9;N # CUNEIFORM SIGN SAL -+122AA;N # CUNEIFORM SIGN SAL LAGAB TIMES ASH2 -+122AB;N # CUNEIFORM SIGN SANGA2 -+122AC;N # CUNEIFORM SIGN SAR -+122AD;N # CUNEIFORM SIGN SHA -+122AE;N # CUNEIFORM SIGN SHA3 -+122AF;N # CUNEIFORM SIGN SHA3 TIMES A -+122B0;N # CUNEIFORM SIGN SHA3 TIMES BAD -+122B1;N # CUNEIFORM SIGN SHA3 TIMES GISH -+122B2;N # CUNEIFORM SIGN SHA3 TIMES NE -+122B3;N # CUNEIFORM SIGN SHA3 TIMES SHU2 -+122B4;N # CUNEIFORM SIGN SHA3 TIMES TUR -+122B5;N # CUNEIFORM SIGN SHA3 TIMES U -+122B6;N # CUNEIFORM SIGN SHA3 TIMES U PLUS A -+122B7;N # CUNEIFORM SIGN SHA6 -+122B8;N # CUNEIFORM SIGN SHAB6 -+122B9;N # CUNEIFORM SIGN SHAR2 -+122BA;N # CUNEIFORM SIGN SHE -+122BB;N # CUNEIFORM SIGN SHE HU -+122BC;N # CUNEIFORM SIGN SHE OVER SHE GAD OVER GAD GAR OVER GAR -+122BD;N # CUNEIFORM SIGN SHE OVER SHE TAB OVER TAB GAR OVER GAR -+122BE;N # CUNEIFORM SIGN SHEG9 -+122BF;N # CUNEIFORM SIGN SHEN -+122C0;N # CUNEIFORM SIGN SHESH -+122C1;N # CUNEIFORM SIGN SHESH2 -+122C2;N # CUNEIFORM SIGN SHESHLAM -+122C3;N # CUNEIFORM SIGN SHID -+122C4;N # CUNEIFORM SIGN SHID TIMES A -+122C5;N # CUNEIFORM SIGN SHID TIMES IM -+122C6;N # CUNEIFORM SIGN SHIM -+122C7;N # CUNEIFORM SIGN SHIM TIMES A -+122C8;N # CUNEIFORM SIGN SHIM TIMES BAL -+122C9;N # CUNEIFORM SIGN SHIM TIMES BULUG -+122CA;N # CUNEIFORM SIGN SHIM TIMES DIN -+122CB;N # CUNEIFORM SIGN SHIM TIMES GAR -+122CC;N # CUNEIFORM SIGN SHIM TIMES IGI -+122CD;N # CUNEIFORM SIGN SHIM TIMES IGI GUNU -+122CE;N # CUNEIFORM SIGN SHIM TIMES KUSHU2 -+122CF;N # CUNEIFORM SIGN SHIM TIMES LUL -+122D0;N # CUNEIFORM SIGN SHIM TIMES MUG -+122D1;N # CUNEIFORM SIGN SHIM TIMES SAL -+122D2;N # CUNEIFORM SIGN SHINIG -+122D3;N # CUNEIFORM SIGN SHIR -+122D4;N # CUNEIFORM SIGN SHIR TENU -+122D5;N # CUNEIFORM SIGN SHIR OVER SHIR BUR OVER BUR -+122D6;N # CUNEIFORM SIGN SHITA -+122D7;N # CUNEIFORM SIGN SHU -+122D8;N # CUNEIFORM SIGN SHU OVER INVERTED SHU -+122D9;N # CUNEIFORM SIGN SHU2 -+122DA;N # CUNEIFORM SIGN SHUBUR -+122DB;N # CUNEIFORM SIGN SI -+122DC;N # CUNEIFORM SIGN SI GUNU -+122DD;N # CUNEIFORM SIGN SIG -+122DE;N # CUNEIFORM SIGN SIG4 -+122DF;N # CUNEIFORM SIGN SIG4 OVER SIG4 SHU2 -+122E0;N # CUNEIFORM SIGN SIK2 -+122E1;N # CUNEIFORM SIGN SILA3 -+122E2;N # CUNEIFORM SIGN SU -+122E3;N # CUNEIFORM SIGN SU OVER SU -+122E4;N # CUNEIFORM SIGN SUD -+122E5;N # CUNEIFORM SIGN SUD2 -+122E6;N # CUNEIFORM SIGN SUHUR -+122E7;N # CUNEIFORM SIGN SUM -+122E8;N # CUNEIFORM SIGN SUMASH -+122E9;N # CUNEIFORM SIGN SUR -+122EA;N # CUNEIFORM SIGN SUR9 -+122EB;N # CUNEIFORM SIGN TA -+122EC;N # CUNEIFORM SIGN TA ASTERISK -+122ED;N # CUNEIFORM SIGN TA TIMES HI -+122EE;N # CUNEIFORM SIGN TA TIMES MI -+122EF;N # CUNEIFORM SIGN TA GUNU -+122F0;N # CUNEIFORM SIGN TAB -+122F1;N # CUNEIFORM SIGN TAB OVER TAB NI OVER NI DISH OVER DISH -+122F2;N # CUNEIFORM SIGN TAB SQUARED -+122F3;N # CUNEIFORM SIGN TAG -+122F4;N # CUNEIFORM SIGN TAG TIMES BI -+122F5;N # CUNEIFORM SIGN TAG TIMES GUD -+122F6;N # CUNEIFORM SIGN TAG TIMES SHE -+122F7;N # CUNEIFORM SIGN TAG TIMES SHU -+122F8;N # CUNEIFORM SIGN TAG TIMES TUG2 -+122F9;N # CUNEIFORM SIGN TAG TIMES UD -+122FA;N # CUNEIFORM SIGN TAK4 -+122FB;N # CUNEIFORM SIGN TAR -+122FC;N # CUNEIFORM SIGN TE -+122FD;N # CUNEIFORM SIGN TE GUNU -+122FE;N # CUNEIFORM SIGN TI -+122FF;N # CUNEIFORM SIGN TI TENU -+12300;N # CUNEIFORM SIGN TIL -+12301;N # CUNEIFORM SIGN TIR -+12302;N # CUNEIFORM SIGN TIR TIMES TAK4 -+12303;N # CUNEIFORM SIGN TIR OVER TIR -+12304;N # CUNEIFORM SIGN TIR OVER TIR GAD OVER GAD GAR OVER GAR -+12305;N # CUNEIFORM SIGN TU -+12306;N # CUNEIFORM SIGN TUG2 -+12307;N # CUNEIFORM SIGN TUK -+12308;N # CUNEIFORM SIGN TUM -+12309;N # CUNEIFORM SIGN TUR -+1230A;N # CUNEIFORM SIGN TUR OVER TUR ZA OVER ZA -+1230B;N # CUNEIFORM SIGN U -+1230C;N # CUNEIFORM SIGN U GUD -+1230D;N # CUNEIFORM SIGN U U U -+1230E;N # CUNEIFORM SIGN U OVER U PA OVER PA GAR OVER GAR -+1230F;N # CUNEIFORM SIGN U OVER U SUR OVER SUR -+12310;N # CUNEIFORM SIGN U OVER U U REVERSED OVER U REVERSED -+12311;N # CUNEIFORM SIGN U2 -+12312;N # CUNEIFORM SIGN UB -+12313;N # CUNEIFORM SIGN UD -+12314;N # CUNEIFORM SIGN UD KUSHU2 -+12315;N # CUNEIFORM SIGN UD TIMES BAD -+12316;N # CUNEIFORM SIGN UD TIMES MI -+12317;N # CUNEIFORM SIGN UD TIMES U PLUS U PLUS U -+12318;N # CUNEIFORM SIGN UD TIMES U PLUS U PLUS U GUNU -+12319;N # CUNEIFORM SIGN UD GUNU -+1231A;N # CUNEIFORM SIGN UD SHESHIG -+1231B;N # CUNEIFORM SIGN UD SHESHIG TIMES BAD -+1231C;N # CUNEIFORM SIGN UDUG -+1231D;N # CUNEIFORM SIGN UM -+1231E;N # CUNEIFORM SIGN UM TIMES LAGAB -+1231F;N # CUNEIFORM SIGN UM TIMES ME PLUS DA -+12320;N # CUNEIFORM SIGN UM TIMES SHA3 -+12321;N # CUNEIFORM SIGN UM TIMES U -+12322;N # CUNEIFORM SIGN UMBIN -+12323;N # CUNEIFORM SIGN UMUM -+12324;N # CUNEIFORM SIGN UMUM TIMES KASKAL -+12325;N # CUNEIFORM SIGN UMUM TIMES PA -+12326;N # CUNEIFORM SIGN UN -+12327;N # CUNEIFORM SIGN UN GUNU -+12328;N # CUNEIFORM SIGN UR -+12329;N # CUNEIFORM SIGN UR CROSSING UR -+1232A;N # CUNEIFORM SIGN UR SHESHIG -+1232B;N # CUNEIFORM SIGN UR2 -+1232C;N # CUNEIFORM SIGN UR2 TIMES A PLUS HA -+1232D;N # CUNEIFORM SIGN UR2 TIMES A PLUS NA -+1232E;N # CUNEIFORM SIGN UR2 TIMES AL -+1232F;N # CUNEIFORM SIGN UR2 TIMES HA -+12330;N # CUNEIFORM SIGN UR2 TIMES NUN -+12331;N # CUNEIFORM SIGN UR2 TIMES U2 -+12332;N # CUNEIFORM SIGN UR2 TIMES U2 PLUS ASH -+12333;N # CUNEIFORM SIGN UR2 TIMES U2 PLUS BI -+12334;N # CUNEIFORM SIGN UR4 -+12335;N # CUNEIFORM SIGN URI -+12336;N # CUNEIFORM SIGN URI3 -+12337;N # CUNEIFORM SIGN URU -+12338;N # CUNEIFORM SIGN URU TIMES A -+12339;N # CUNEIFORM SIGN URU TIMES ASHGAB -+1233A;N # CUNEIFORM SIGN URU TIMES BAR -+1233B;N # CUNEIFORM SIGN URU TIMES DUN -+1233C;N # CUNEIFORM SIGN URU TIMES GA -+1233D;N # CUNEIFORM SIGN URU TIMES GAL -+1233E;N # CUNEIFORM SIGN URU TIMES GAN2 TENU -+1233F;N # CUNEIFORM SIGN URU TIMES GAR -+12340;N # CUNEIFORM SIGN URU TIMES GU -+12341;N # CUNEIFORM SIGN URU TIMES HA -+12342;N # CUNEIFORM SIGN URU TIMES IGI -+12343;N # CUNEIFORM SIGN URU TIMES IM -+12344;N # CUNEIFORM SIGN URU TIMES ISH -+12345;N # CUNEIFORM SIGN URU TIMES KI -+12346;N # CUNEIFORM SIGN URU TIMES LUM -+12347;N # CUNEIFORM SIGN URU TIMES MIN -+12348;N # CUNEIFORM SIGN URU TIMES PA -+12349;N # CUNEIFORM SIGN URU TIMES SHE -+1234A;N # CUNEIFORM SIGN URU TIMES SIG4 -+1234B;N # CUNEIFORM SIGN URU TIMES TU -+1234C;N # CUNEIFORM SIGN URU TIMES U PLUS GUD -+1234D;N # CUNEIFORM SIGN URU TIMES UD -+1234E;N # CUNEIFORM SIGN URU TIMES URUDA -+1234F;N # CUNEIFORM SIGN URUDA -+12350;N # CUNEIFORM SIGN URUDA TIMES U -+12351;N # CUNEIFORM SIGN USH -+12352;N # CUNEIFORM SIGN USH TIMES A -+12353;N # CUNEIFORM SIGN USH TIMES KU -+12354;N # CUNEIFORM SIGN USH TIMES KUR -+12355;N # CUNEIFORM SIGN USH TIMES TAK4 -+12356;N # CUNEIFORM SIGN USHX -+12357;N # CUNEIFORM SIGN USH2 -+12358;N # CUNEIFORM SIGN USHUMX -+12359;N # CUNEIFORM SIGN UTUKI -+1235A;N # CUNEIFORM SIGN UZ3 -+1235B;N # CUNEIFORM SIGN UZ3 TIMES KASKAL -+1235C;N # CUNEIFORM SIGN UZU -+1235D;N # CUNEIFORM SIGN ZA -+1235E;N # CUNEIFORM SIGN ZA TENU -+1235F;N # CUNEIFORM SIGN ZA SQUARED TIMES KUR -+12360;N # CUNEIFORM SIGN ZAG -+12361;N # CUNEIFORM SIGN ZAMX -+12362;N # CUNEIFORM SIGN ZE2 -+12363;N # CUNEIFORM SIGN ZI -+12364;N # CUNEIFORM SIGN ZI OVER ZI -+12365;N # CUNEIFORM SIGN ZI3 -+12366;N # CUNEIFORM SIGN ZIB -+12367;N # CUNEIFORM SIGN ZIB KABA TENU -+12368;N # CUNEIFORM SIGN ZIG -+12369;N # CUNEIFORM SIGN ZIZ2 -+1236A;N # CUNEIFORM SIGN ZU -+1236B;N # CUNEIFORM SIGN ZU5 -+1236C;N # CUNEIFORM SIGN ZU5 TIMES A -+1236D;N # CUNEIFORM SIGN ZUBUR -+1236E;N # CUNEIFORM SIGN ZUM -+12400;N # CUNEIFORM NUMERIC SIGN TWO ASH -+12401;N # CUNEIFORM NUMERIC SIGN THREE ASH -+12402;N # CUNEIFORM NUMERIC SIGN FOUR ASH -+12403;N # CUNEIFORM NUMERIC SIGN FIVE ASH -+12404;N # CUNEIFORM NUMERIC SIGN SIX ASH -+12405;N # CUNEIFORM NUMERIC SIGN SEVEN ASH -+12406;N # CUNEIFORM NUMERIC SIGN EIGHT ASH -+12407;N # CUNEIFORM NUMERIC SIGN NINE ASH -+12408;N # CUNEIFORM NUMERIC SIGN THREE DISH -+12409;N # CUNEIFORM NUMERIC SIGN FOUR DISH -+1240A;N # CUNEIFORM NUMERIC SIGN FIVE DISH -+1240B;N # CUNEIFORM NUMERIC SIGN SIX DISH -+1240C;N # CUNEIFORM NUMERIC SIGN SEVEN DISH -+1240D;N # CUNEIFORM NUMERIC SIGN EIGHT DISH -+1240E;N # CUNEIFORM NUMERIC SIGN NINE DISH -+1240F;N # CUNEIFORM NUMERIC SIGN FOUR U -+12410;N # CUNEIFORM NUMERIC SIGN FIVE U -+12411;N # CUNEIFORM NUMERIC SIGN SIX U -+12412;N # CUNEIFORM NUMERIC SIGN SEVEN U -+12413;N # CUNEIFORM NUMERIC SIGN EIGHT U -+12414;N # CUNEIFORM NUMERIC SIGN NINE U -+12415;N # CUNEIFORM NUMERIC SIGN ONE GESH2 -+12416;N # CUNEIFORM NUMERIC SIGN TWO GESH2 -+12417;N # CUNEIFORM NUMERIC SIGN THREE GESH2 -+12418;N # CUNEIFORM NUMERIC SIGN FOUR GESH2 -+12419;N # CUNEIFORM NUMERIC SIGN FIVE GESH2 -+1241A;N # CUNEIFORM NUMERIC SIGN SIX GESH2 -+1241B;N # CUNEIFORM NUMERIC SIGN SEVEN GESH2 -+1241C;N # CUNEIFORM NUMERIC SIGN EIGHT GESH2 -+1241D;N # CUNEIFORM NUMERIC SIGN NINE GESH2 -+1241E;N # CUNEIFORM NUMERIC SIGN ONE GESHU -+1241F;N # CUNEIFORM NUMERIC SIGN TWO GESHU -+12420;N # CUNEIFORM NUMERIC SIGN THREE GESHU -+12421;N # CUNEIFORM NUMERIC SIGN FOUR GESHU -+12422;N # CUNEIFORM NUMERIC SIGN FIVE GESHU -+12423;N # CUNEIFORM NUMERIC SIGN TWO SHAR2 -+12424;N # CUNEIFORM NUMERIC SIGN THREE SHAR2 -+12425;N # CUNEIFORM NUMERIC SIGN THREE SHAR2 VARIANT FORM -+12426;N # CUNEIFORM NUMERIC SIGN FOUR SHAR2 -+12427;N # CUNEIFORM NUMERIC SIGN FIVE SHAR2 -+12428;N # CUNEIFORM NUMERIC SIGN SIX SHAR2 -+12429;N # CUNEIFORM NUMERIC SIGN SEVEN SHAR2 -+1242A;N # CUNEIFORM NUMERIC SIGN EIGHT SHAR2 -+1242B;N # CUNEIFORM NUMERIC SIGN NINE SHAR2 -+1242C;N # CUNEIFORM NUMERIC SIGN ONE SHARU -+1242D;N # CUNEIFORM NUMERIC SIGN TWO SHARU -+1242E;N # CUNEIFORM NUMERIC SIGN THREE SHARU -+1242F;N # CUNEIFORM NUMERIC SIGN THREE SHARU VARIANT FORM -+12430;N # CUNEIFORM NUMERIC SIGN FOUR SHARU -+12431;N # CUNEIFORM NUMERIC SIGN FIVE SHARU -+12432;N # CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS DISH -+12433;N # CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS MIN -+12434;N # CUNEIFORM NUMERIC SIGN ONE BURU -+12435;N # CUNEIFORM NUMERIC SIGN TWO BURU -+12436;N # CUNEIFORM NUMERIC SIGN THREE BURU -+12437;N # CUNEIFORM NUMERIC SIGN THREE BURU VARIANT FORM -+12438;N # CUNEIFORM NUMERIC SIGN FOUR BURU -+12439;N # CUNEIFORM NUMERIC SIGN FIVE BURU -+1243A;N # CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH16 -+1243B;N # CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH21 -+1243C;N # CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU -+1243D;N # CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU4 -+1243E;N # CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU A -+1243F;N # CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU B -+12440;N # CUNEIFORM NUMERIC SIGN SIX VARIANT FORM ASH9 -+12441;N # CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN3 -+12442;N # CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN A -+12443;N # CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN B -+12444;N # CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU -+12445;N # CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU3 -+12446;N # CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU -+12447;N # CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU3 -+12448;N # CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU4 -+12449;N # CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU A -+1244A;N # CUNEIFORM NUMERIC SIGN TWO ASH TENU -+1244B;N # CUNEIFORM NUMERIC SIGN THREE ASH TENU -+1244C;N # CUNEIFORM NUMERIC SIGN FOUR ASH TENU -+1244D;N # CUNEIFORM NUMERIC SIGN FIVE ASH TENU -+1244E;N # CUNEIFORM NUMERIC SIGN SIX ASH TENU -+1244F;N # CUNEIFORM NUMERIC SIGN ONE BAN2 -+12450;N # CUNEIFORM NUMERIC SIGN TWO BAN2 -+12451;N # CUNEIFORM NUMERIC SIGN THREE BAN2 -+12452;N # CUNEIFORM NUMERIC SIGN FOUR BAN2 -+12453;N # CUNEIFORM NUMERIC SIGN FOUR BAN2 VARIANT FORM -+12454;N # CUNEIFORM NUMERIC SIGN FIVE BAN2 -+12455;N # CUNEIFORM NUMERIC SIGN FIVE BAN2 VARIANT FORM -+12456;N # CUNEIFORM NUMERIC SIGN NIGIDAMIN -+12457;N # CUNEIFORM NUMERIC SIGN NIGIDAESH -+12458;N # CUNEIFORM NUMERIC SIGN ONE ESHE3 -+12459;N # CUNEIFORM NUMERIC SIGN TWO ESHE3 -+1245A;N # CUNEIFORM NUMERIC SIGN ONE THIRD DISH -+1245B;N # CUNEIFORM NUMERIC SIGN TWO THIRDS DISH -+1245C;N # CUNEIFORM NUMERIC SIGN FIVE SIXTHS DISH -+1245D;N # CUNEIFORM NUMERIC SIGN ONE THIRD VARIANT FORM A -+1245E;N # CUNEIFORM NUMERIC SIGN TWO THIRDS VARIANT FORM A -+1245F;N # CUNEIFORM NUMERIC SIGN ONE EIGHTH ASH -+12460;N # CUNEIFORM NUMERIC SIGN ONE QUARTER ASH -+12461;N # CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE SIXTH -+12462;N # CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER -+12470;N # CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER -+12471;N # CUNEIFORM PUNCTUATION SIGN VERTICAL COLON -+12472;N # CUNEIFORM PUNCTUATION SIGN DIAGONAL COLON -+12473;N # CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON - 1D000;N # BYZANTINE MUSICAL SYMBOL PSILI - 1D001;N # BYZANTINE MUSICAL SYMBOL DASEIA - 1D002;N # BYZANTINE MUSICAL SYMBOL PERISPOMENI -@@ -14487,6 +15838,24 @@ - 1D354;N # TETRAGRAM FOR DIFFICULTIES - 1D355;N # TETRAGRAM FOR LABOURING - 1D356;N # TETRAGRAM FOR FOSTERING -+1D360;N # COUNTING ROD UNIT DIGIT ONE -+1D361;N # COUNTING ROD UNIT DIGIT TWO -+1D362;N # COUNTING ROD UNIT DIGIT THREE -+1D363;N # COUNTING ROD UNIT DIGIT FOUR -+1D364;N # COUNTING ROD UNIT DIGIT FIVE -+1D365;N # COUNTING ROD UNIT DIGIT SIX -+1D366;N # COUNTING ROD UNIT DIGIT SEVEN -+1D367;N # COUNTING ROD UNIT DIGIT EIGHT -+1D368;N # COUNTING ROD UNIT DIGIT NINE -+1D369;N # COUNTING ROD TENS DIGIT ONE -+1D36A;N # COUNTING ROD TENS DIGIT TWO -+1D36B;N # COUNTING ROD TENS DIGIT THREE -+1D36C;N # COUNTING ROD TENS DIGIT FOUR -+1D36D;N # COUNTING ROD TENS DIGIT FIVE -+1D36E;N # COUNTING ROD TENS DIGIT SIX -+1D36F;N # COUNTING ROD TENS DIGIT SEVEN -+1D370;N # COUNTING ROD TENS DIGIT EIGHT -+1D371;N # COUNTING ROD TENS DIGIT NINE - 1D400;N # MATHEMATICAL BOLD CAPITAL A - 1D401;N # MATHEMATICAL BOLD CAPITAL B - 1D402;N # MATHEMATICAL BOLD CAPITAL C -@@ -15431,6 +16800,8 @@ - 1D7C7;N # MATHEMATICAL SANS-SERIF BOLD ITALIC PHI SYMBOL - 1D7C8;N # MATHEMATICAL SANS-SERIF BOLD ITALIC RHO SYMBOL - 1D7C9;N # MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL -+1D7CA;N # MATHEMATICAL BOLD CAPITAL DIGAMMA -+1D7CB;N # MATHEMATICAL BOLD SMALL DIGAMMA - 1D7CE;N # MATHEMATICAL BOLD DIGIT ZERO - 1D7CF;N # MATHEMATICAL BOLD DIGIT ONE - 1D7D0;N # MATHEMATICAL BOLD DIGIT TWO -@@ -16366,3 +17737,5 @@ - E01EF;A # VARIATION SELECTOR-256 - F0000..FFFFD;A # .. - 100000..10FFFD;A # .. -+ -+# EOF -\ No newline at end of file -diff -r -u perl-5.8.8/lib/unicore/HangulSyllableType.txt perl-5.8.8.patched/lib/unicore/HangulSyllableType.txt ---- perl-5.8.8/lib/unicore/HangulSyllableType.txt 2005-04-08 07:30:46.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/HangulSyllableType.txt 2006-09-15 14:12:05.528134000 -0400 -@@ -1,8 +1,8 @@ --# HangulSyllableType-4.1.0.txt --# Date: 2004-12-11, 05:44:43 GMT [MD] -+# HangulSyllableType-5.0.0.txt -+# Date: 2006-03-09, 23:14:14 GMT [MD] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - -@@ -13,6 +13,8 @@ - # All code points not explicitly listed for Hangul_Syllable_Type - # have the value Not_Applicable (NA). - -+# @missing: 0000..10FFFF; Not_Applicable -+ - # ================================================ - - # Hangul_Syllable_Type=Leading_Jamo -@@ -849,3 +851,5 @@ - D789..D7A3 ; LVT # Lo [27] HANGUL SYLLABLE HIG..HANGUL SYLLABLE HIH - - # Total code points: 10773 -+ -+# EOF -diff -r -u perl-5.8.8/lib/unicore/Index.txt perl-5.8.8.patched/lib/unicore/Index.txt ---- perl-5.8.8/lib/unicore/Index.txt 2004-03-31 07:25:15.000000000 -0500 -+++ perl-5.8.8.patched/lib/unicore/Index.txt 2006-09-15 14:12:05.539132000 -0400 -@@ -1,10 +1,29 @@ --8859-1 (Latin-1), Based on ISO 00A0 --8859-2, -3, -4, -9 (European Latin), Based on ISO 0100 --8859-5 (Cyrillic), Based on ISO 0400 --8859-6 (Arabic), Based on ISO 0600 --8859-7 (Greek), Based on ISO 0370 --8859-8 (Hebrew), Based on ISO 05D0 -+A WITH ACUTE, LATIN CAPITAL LETTER 00C1 -+A WITH ACUTE, LATIN SMALL LETTER 00E1 -+A WITH BREVE, LATIN SMALL LETTER 0103 -+A WITH CARON, LATIN SMALL LETTER 01CE -+A WITH CIRCUMFLEX, LATIN CAPITAL LETTER 00C2 -+A WITH CIRCUMFLEX, LATIN SMALL LETTER 00E2 -+A WITH DIAERESIS, LATIN CAPITAL LETTER 00C4 -+A WITH DIAERESIS, LATIN SMALL LETTER 00E4 -+A WITH DOT ABOVE, LATIN SMALL LETTER 0227 -+A WITH DOT BELOW, LATIN SMALL LETTER 1EA1 -+A WITH DOUBLE GRAVE, LATIN SMALL LETTER 0201 -+A WITH GRAVE, LATIN CAPITAL LETTER 00C0 -+A WITH GRAVE, LATIN SMALL LETTER 00E0 -+A WITH HOOK ABOVE, LATIN SMALL LETTER 1EA3 -+A WITH INVERTED BREVE, LATIN SMALL LETTER 0203 -+A WITH MACRON, LATIN SMALL LETTER 0101 -+A WITH OGONEK, LATIN SMALL LETTER 0105 -+A WITH RIGHT HALF RING, LATIN SMALL LETTER 1E9A -+A WITH RING ABOVE, LATIN CAPITAL LETTER 00C5 -+A WITH RING ABOVE, LATIN SMALL LETTER 00E5 -+A WITH RING BELOW, LATIN SMALL LETTER 1E01 -+A WITH STROKE, LATIN CAPITAL LETTER 023A -+A WITH TILDE, LATIN CAPITAL LETTER 00C3 -+A WITH TILDE, LATIN SMALL LETTER 00E3 - A, COMBINING LATIN SMALL LETTER 0363 -+A, LATIN LETTER SMALL CAPITAL 1D00 - a, latin small letter script 0251 - A, LATIN SMALL LETTER TURNED 0250 - ABBREVIATION MARK, ARMENIAN 055F -@@ -12,11 +31,15 @@ - ABBREVIATION SIGN, DEVANAGARI 0970 - Abbreviations, Squared Latin 3371 - Aboriginal Syllabics, Unified Canadian 1400 -+ABOVE RIGHT, COMBINING COMMA 0315 -+ABOVE RIGHT, COMBINING DOT 0358 - above, cedilla 0312 - ABOVE, COMBINING ALMOST EQUAL TO 034C -+ABOVE, COMBINING ANTICLOCKWISE ARROW 20D4 - ABOVE, COMBINING BRIDGE 0346 - ABOVE, COMBINING CLOCKWISE ARROW 20D5 - ABOVE, COMBINING COMMA 0313 -+above, combining counterclockwise arrow 20D4 - ABOVE, COMBINING DOT 0307 - ABOVE, COMBINING DOUBLE VERTICAL LINE 030E - ABOVE, COMBINING FOUR DOTS 20DC -@@ -24,25 +47,36 @@ - ABOVE, COMBINING HOOK 0309 - ABOVE, COMBINING LEFT ANGLE 031A - ABOVE, COMBINING LEFT ARROW 20D6 -+ABOVE, COMBINING LEFT HALF RING 0351 - 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 ARROWHEAD 0350 -+ABOVE, COMBINING RIGHT HALF RING 0357 -+ABOVE, COMBINING RIGHT HARPOON 20D1 - ABOVE, COMBINING RING 030A - ABOVE, COMBINING THREE DOTS 20DB - ABOVE, COMBINING TURNED COMMA 0312 - ABOVE, COMBINING VERTICAL LINE 030D - ABOVE, COMBINING WIDE BRIDGE 20E9 - ABOVE, COMBINING X 033D -+ABOVE, COMBINING ZIGZAG 035B - ABOVE, DOT 02D9 - above, double dot 0308 - ABOVE, RING 02DA --above, vee 030C --ABOVE RIGHT, COMBINING COMMA 0315 -+above, v 030C - absolute continuity 2AA1 -+absolute value 007C -+abstract syntax bracket, left 301A -+abstract syntax bracket, right 301B -+abz�glich 2052 -+AC CURRENT 23E6 -+ACCENT BELOW, COMBINING ACUTE 0317 -+ACCENT BELOW, COMBINING CIRCUMFLEX 032D -+ACCENT BELOW, COMBINING GRAVE 0316 - ACCENT, ACUTE 00B4 --ACCENT, ALMOST EQUAL TO WITH CIRCUMFLEX 2A6F --ACCENT, CIRCLED MULTIPLICATION SIGN WITH CIRCUMFLEX 2A36 - ACCENT, CIRCUMFLEX 005E - ACCENT, COMBINING ACUTE 0301 - ACCENT, COMBINING CIRCUMFLEX 0302 -@@ -57,79 +91,73 @@ - ACCENT, MODIFIER LETTER GRAVE 02CB - ACCENT, MODIFIER LETTER LOW ACUTE 02CF - ACCENT, MODIFIER LETTER LOW GRAVE 02CE -+accent, spacing acute 00B4 -+accent, spacing circumflex 005E -+accent, spacing grave 0060 - accent, swedish grave 02DF --ACCENT ABOVE, PLUS SIGN WITH CIRCUMFLEX 2A23 --ACCENT BELOW, COMBINING ACUTE 0317 --ACCENT BELOW, COMBINING CIRCUMFLEX 032D --ACCENT BELOW, COMBINING GRAVE 0316 - ACCOUNT OF 2100 --acknowledge 0006 --acknowledge, graphic for negative 237B --acknowledge, negative 0015 -+ACKNOWLEDGE 0006 -+ACKNOWLEDGE, NEGATIVE 0015 - ACKNOWLEDGE, SYMBOL FOR 2406 - ACKNOWLEDGE, SYMBOL FOR NEGATIVE 2415 --ACTIVATE ARABIC FORM SHAPING 206D --ACTIVATE SYMMETRIC SWAPPING 206B -+acrophonic symbol three, epidaurean 205D - actuarial bend 20E7 --acute, spacing 00B4 - ACUTE ACCENT 00B4 -+ACUTE ACCENT BELOW, COMBINING 0317 - ACUTE ACCENT, COMBINING 0301 - ACUTE ACCENT, COMBINING DOUBLE 030B --ACUTE ACCENT, DEVANAGARI 0954 - ACUTE ACCENT, DOUBLE 02DD - ACUTE ACCENT, MODIFIER LETTER 02CA - ACUTE ACCENT, MODIFIER LETTER LOW 02CF --ACUTE ACCENT BELOW, COMBINING 0317 --ACUTE ANGLE 299F -+acute accent, spacing 00B4 - ACUTE TONE MARK, COMBINING 0341 -+ADDAK, GURMUKHI 0A71 - ADDRESSED TO THE SUBJECT 2101 --Addu dialect, consonant for 0780 -+ADI SHAKTI 262C -+AE, LATIN CAPITAL LETTER 00C6 -+ae, latin capital ligature 00C6 -+AE, LATIN LETTER SMALL CAPITAL 1D01 - AE, LATIN SMALL LETTER 00E6 --Aegean Numbers 10100 --AEGEAN CHECK MARK 10102 -+AE, LATIN SMALL LETTER TURNED 1D02 -+ae, latin small ligature 00E6 - AEGEAN WORD SEPARATOR DOT 10101 - AEGEAN WORD SEPARATOR LINE 10100 --Ainu, Phonetic Extensions For 31F0 -+AESCULAPIUS, STAFF OF 2695 -+AFGHANI SIGN 060B -+African Letters for Clicks 01C0 -+AIN, LATIN LETTER 1D25 -+Ainu, Katakana Extensions for 31F0 - AIRPLANE 2708 -+AKTIESELSKAB 214D -+AL-LAKUNA, SINHALA SIGN 0DCA - aldus leaf 2766 - ALEF SYMBOL 2135 --ALL, FOR 2200 -+ALEMBIC 2697 - ALL AROUND-PROFILE 232E - ALL EQUAL TO 224C -+ALL, FOR 2200 - ALMOST EQUAL TO 2248 --ALMOST EQUAL TO, PRECEDES ABOVE 2AB7 --ALMOST EQUAL TO, PRECEDES ABOVE NOT 2AB9 --ALMOST EQUAL TO, SUBSET OF ABOVE 2AC9 --ALMOST EQUAL TO, SUCCEEDS ABOVE 2AB8 --ALMOST EQUAL TO, SUCCEEDS ABOVE NOT 2ABA --ALMOST EQUAL TO, SUPERSET OF ABOVE 2ACA - ALMOST EQUAL TO ABOVE, COMBINING 034C --ALMOST EQUAL TO WITH CIRCUMFLEX ACCENT 2A6F -+ALMOST EQUAL TO, NOT 2249 - ALPHA, LATIN SMALL LETTER 0251 - ALPHA, LATIN SMALL LETTER TURNED 0252 - Alphabetic Presentation Forms FB00 -+Alphanumeric Symbols, Mathematical 1D400 - Alphanumerics, Enclosed 2460 - alternating current 223F --ALTERNATION MARK, PART 303D - ALTERNATIVE KEY SYMBOL 2387 - ALVEOLAR CLICK, LATIN LETTER 01C2 --always (modal operator) 25FB --always (modal operator), was 27E4 --always be (modal operator), will 27E5 --AMALGAMATION OR COPRODUCT 2A3F -+always 25FB - AMPERSAND 0026 - AMPERSAND, TURNED 214B -+ANCHOR 2693 -+ANCHOR, INTERLINEAR ANNOTATION FFF9 - AND, CURLY LOGICAL 22CF - AND, LOGICAL 2227 - AND, N-ARY LOGICAL 22C0 --andrew's, cross st. 2613 - Ands and Ors, Logical 2A51 -+ANGKHANKHU, THAI CHARACTER 0E5A - ANGLE 2220 --ANGLE, ACUTE 299F --ANGLE, MEASURED 2221 --ANGLE, RIGHT 221F --ANGLE, SPHERICAL 2222 --ANGLE, TURNED 29A2 - ANGLE ABOVE, COMBINING LEFT 031A - angle arc 2222 - ANGLE BELOW, COMBINING LEFT 0349 -@@ -138,197 +166,256 @@ - ANGLE BRACKET, LEFT-POINTING 2329 - ANGLE BRACKET, MATHEMATICAL LEFT 27E8 - ANGLE BRACKET, MATHEMATICAL LEFT DOUBLE 27EA -+ANGLE BRACKET, MATHEMATICAL RIGHT 27E9 -+ANGLE BRACKET, MATHEMATICAL RIGHT DOUBLE 27EB -+ANGLE BRACKET, RIGHT 3009 -+ANGLE BRACKET, RIGHT DOUBLE 300B - ANGLE BRACKET, RIGHT-POINTING 232A --ANGLE OPENING LEFT, SPHERICAL 29A0 --ANGLE OPENING UP, SPHERICAL 29A1 -+Angle Brackets, CJK 3008 - ANGLE QUOTATION MARK, LEFT-POINTING DOUBLE 00AB - ANGLE QUOTATION MARK, RIGHT-POINTING DOUBLE 00BB - ANGLE QUOTATION MARK, SINGLE LEFT-POINTING 2039 - ANGLE QUOTATION MARK, SINGLE RIGHT-POINTING 203A - Angle Quotation Marks, Ornamental 276E - ANGLE WITH ARC, RIGHT 22BE --ANGLE WITH DOWNWARDS ZIGZAG ARROW, RIGHT 237C -+ANGLE, MEASURED 2221 -+ANGLE, RIGHT 221F -+ANGLE, SPHERICAL 2222 - angled dash 00AC -+Angles 221F - Angles and Measured Angles 299B - ANGSTROM SIGN 212B - ANKH 2625 -+ANNOTATION ANCHOR, INTERLINEAR FFF9 -+ANNOTATION SEPARATOR, INTERLINEAR FFFA -+Annotation Signs, Arabic Koranic 06D6 -+Annotation Signs, Arabic Qur'anic 06D6 -+ANNOTATION TERMINATOR, INTERLINEAR FFFB - Annotation, Interlinear FFF9 --Annotation, Kanbun Ideographic 3190 --Annotation Signs, Koranic 06D6 -+Annotation, Japanese Kanbun Ideographic 3190 - ANNUITY SYMBOL, COMBINING 20E7 --ano teleia 00B7 -+ano teleia, greek 00B7 -+ANTICLOCKWISE ARROW ABOVE, COMBINING 20D4 -+ANTICLOCKWISE CONTOUR INTEGRAL 2233 - ANTICLOCKWISE INTEGRATION 2A11 --ANTICLOCKWISE-ROTATED DIVISION SIGN, CIRCLED 29BC --ANTIRESTRICTION, Z NOTATION DOMAIN 2A64 --ANTIRESTRICTION, Z NOTATION RANGE 2A65 --APL 2336 -+ANTICLOCKWISE RING OVERLAY, COMBINING 20DA -+antisigma, claudian 2183 -+anunasika, devanagari 0901 -+ANUSVARA, DEVANAGARI SIGN 0902 -+anusvara, khmer 17C6 -+anusvara, tibetan 0F7E -+apl downstile 230A - APL Functional Symbols 2336 - apl jot 2218 - apl overbar 00AF --apl quote 0022 -+apl quote 0027 - apl stile 2223 - 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, neutral 02BC - apostrophe-quote 0027 -+apostrophic c 2183 -+APPLICATION PROGRAM COMMAND 009F - APPLICATION, FUNCTION 2061 --application program command 009F - APPROACHES THE LIMIT 2250 --APPROXIMATE, GREATER-THAN AND NOT 2A8A --APPROXIMATE, GREATER-THAN OR 2A86 --APPROXIMATE, LESS-THAN AND NOT 2A89 --APPROXIMATE, LESS-THAN OR 2A85 --APPROXIMATELY EQUAL OR EQUAL TO 2A70 - APPROXIMATELY EQUAL TO 2245 - approximately equal to 2257 - AQUARIUS 2652 - Arabic 0600 --Arabic, Extended 0671 -+Arabic Alphabet 0621 -+Arabic Combining Marks 0653 - ARABIC COMMA 060C -+Arabic Contextual Form Glyphs FB50 -+Arabic Contextual Form Glyphs FE80 -+ARABIC DATE SEPARATOR 060D - ARABIC DECIMAL SEPARATOR 066B --ARABIC END OF AYAH 06DD --ARABIC FIVE POINTED STAR 066D --ARABIC FOOTNOTE MARKER 0602 --ARABIC FORM SHAPING, ACTIVATE 206D --ARABIC FORM SHAPING, INHIBIT 206C -+Arabic Extensions 0671 - ARABIC FULL STOP 06D4 -+Arabic Harakat 064B - Arabic Honorifics 0610 --ARABIC LETTER DOTLESS BEH 066E --ARABIC LETTER DOTLESS QAF 066F --Arabic Letters 0627 --ARABIC NUMBER SIGN 0600 --ARABIC PERCENT SIGN 066A --Arabic Points 064B -+arabic kashida 0640 -+Arabic Koranic Annotation Signs 06D6 -+arabic letter hamzah on ha 06C0 -+ARABIC LETTER HEH WITH YEH ABOVE 06C0 -+Arabic Letters, Extended 0671 -+Arabic Letters, Extended 0750 -+ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM FDFD -+Arabic Ligatures FBEA -+arabic phrase separator 066C -+Arabic Points, Glyphs for Spacing Forms of FE70 - Arabic Presentation Forms-A FB50 - Arabic Presentation Forms-B FE70 -+Arabic Punctuation 060C - ARABIC QUESTION MARK 061F -+Arabic Qur'anic Annotation Signs 06D6 - ARABIC SEMICOLON 061B --ARABIC SIGN SAFHA 0603 --ARABIC SIGN SANAH 0601 --Arabic Poetic Marks 0610 - Arabic Subtending Marks 0600 --ARABIC TAIL FRAGMENT FE73 -+Arabic Supplement 0750 -+ARABIC TATWEEL 0640 - ARABIC THOUSANDS SEPARATOR 066C - Arabic-Indic Digits 0660 --Arabic-Indic Digits for Persian and Urdu, Eastern 06F0 -+Arabic-Indic Digits, 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 -+Area, Asian Scripts AC00 -+Area, CJK Ideographs 3400 -+Area, CJK Phonetics and Symbols 2E80 -+Area, Compatibility and Specials F900 -+Area, General Scripts 0000 -+Area, Korean Hangul Syllables AC00 -+Area, Private Use E000 -+Area, Supplementary CJK Ideographs 20000 -+Area, Supplementary General Scripts 10000 -+Area, Surrogates D800 -+Area, Symbols 2000 -+Area-A, Supplementary Private Use FFF80 -+Area-B, Supplementary Private Use 10FF80 -+argentinian former currency 20B3 - ARIES 2648 --Armenian 0530 - ARMENIAN ABBREVIATION MARK 055F -+Armenian Alphabet 0530 - ARMENIAN APOSTROPHE 055A -+armenian batsaganchakan nshan 055C -+armenian bowt 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 HYPHEN 058A - Armenian Ligatures FB13 -+armenian patiw 055F - ARMENIAN QUESTION MARK 055E -+armenian shesht 055B - Armenian Small Letters 0561 --ARROW, BLACK CIRCLE WITH DOWN 29ED --ARROW, BLACK DIAMOND WITH DOWN 29EA --arrow, colon right 29F4 --ARROW, ELECTRIC 2301 --ARROW, RIGHT ANGLE WITH DOWNWARDS ZIGZAG 237C --ARROW, WHITE CIRCLE WITH DOWN 29EC -+armenian vertsaket 0589 -+armenian yentamna 058A -+ARROW ABOVE, COMBINING ANTICLOCKWISE 20D4 - ARROW ABOVE, COMBINING CLOCKWISE 20D5 -+arrow above, combining counterclockwise 20D4 - ARROW ABOVE, COMBINING LEFT 20D6 - ARROW ABOVE, COMBINING LEFT RIGHT 20E1 -+ARROW ABOVE, COMBINING RIGHT 20D7 - ARROW BELOW, COMBINING DOUBLE RIGHTWARDS 0362 -+ARROW BELOW, COMBINING LEFT 20EE - ARROW BELOW, COMBINING LEFT RIGHT 034D -+ARROW BELOW, COMBINING RIGHT 20EF - ARROW BELOW, COMBINING UPWARDS 034E - Arrow Dingbats 2794 -+arrow indicator, backward 25C5 -+arrow indicator, forward 25BB - ARROW OVERLAY, COMBINING LEFTWARDS 20EA --ARROW THROUGH CIRCLE, UP 29BD --ARROW WITH HOOK, INTEGRAL WITH LEFTWARDS 2A17 -+ARROW, DOWNWARDS 2193 -+ARROW, ELECTRIC 2301 -+ARROW, LEFTWARDS 2190 -+ARROW, RIGHTWARDS 2192 -+ARROW, UPWARDS 2191 -+ARROWHEAD ABOVE, COMBINING RIGHT 0350 -+ARROWHEAD BELOW, COMBINING LEFT 0354 -+ARROWHEAD BELOW, COMBINING RIGHT 0355 -+ARROWHEAD, DOWN 2304 - ARROWHEAD, UP 2303 - Arrowheads, Modifier Letter 02C2 - Arrows 2190 -+Arrows, Dingbat 2794 -+Arrows, Double 21CD - Arrows, Long 27F5 --Arrows, Other White and Black 2B00 --arrows extension 23AF --Arrows-A, Supplemental 27F0 -+Arrows, Miscellaneous 2B00 -+Arrows-A Supplement 27F0 - Arrows-B, Supplemental 2900 - ASCENDING NODE 260A --ASCII 0020 - ASCII C0 Control Codes 0000 - ASCII Digits 0030 -+ASCII Punctuation and Symbols 0020 - ASCII Variants, Fullwidth FF01 - ash 00E6 -+Asian Scripts Area AC00 - ASSERTION 22A6 - ASTERISK 002A --ASTERISK, EQUALS WITH 2A6E --ASTERISK, LOW 204E --ASTERISK, SQUARED 29C6 -+ASTERISK BELOW, COMBINING 0359 - Asterisk Dingbats 2722 - ASTERISK OPERATOR 2217 - ASTERISK OPERATOR, CIRCLED 229B -+ASTERISK, LOW 204E -+Asterisks 2722 - ASTERISKS ALIGNED VERTICALLY, TWO 2051 --Asterisks and Snowflakes, Stars, 2721 - ASTERISM 2042 -+Astrological Signs, Tibetan 0F15 - Astrological Symbols 263D -+Astrological Symbols, Weather and 2600 - asymptotic to 2248 - ASYMPTOTICALLY EQUAL TO 2243 -+ASYMPTOTICALLY EQUAL TO, NOT 2244 -+at sign 0040 - AT, COMMERCIAL 0040 --AVERAGE WITH SLASH, INTEGRAL 2A0F --AYAH, ARABIC END OF 06DD -+ATOM SYMBOL 269B -+AUSTRAL SIGN 20B3 -+AVAGRAHA, DEVANAGARI SIGN 093D -+aytham, tamil 0B83 -+B WITH DOT ABOVE, LATIN SMALL LETTER 1E03 -+B WITH DOT BELOW, LATIN SMALL LETTER 1E05 -+B WITH HOOK, LATIN CAPITAL LETTER 0181 -+B WITH HOOK, LATIN SMALL LETTER 0253 -+B WITH LINE BELOW, LATIN SMALL LETTER 1E07 -+B WITH STROKE, LATIN CAPITAL LETTER 0243 -+B WITH STROKE, LATIN SMALL LETTER 0180 -+B WITH TOPBAR, LATIN SMALL LETTER 0183 - B, LATIN LETTER SMALL CAPITAL 0299 -+B, LATIN LETTER SMALL CAPITAL BARRED 1D03 - B, SCRIPT CAPITAL 212C - baby gamma, latin small letter 0264 - backslash 005C - BACKSLASH, COMBINING ENCLOSING CIRCLE 20E0 --backspace 0008 -+BACKSPACE 0008 - BACKSPACE, SYMBOL FOR 2408 -+backward arrow indicator 25C5 - backward difference 2207 --bag bracket, z notation left 27E6 -+BACKWARD, PARTIAL LINE 008C -+bag addition 228E -+bag bracket, left 27E6 -+bag bracket, right 27E7 -+bag count, infix 266F - BAG MEMBERSHIP, Z NOTATION 22FF --bag subtraction, z notation 2A41 -+bag subtraction 2A41 - BAHT, THAI CURRENCY SYMBOL 0E3F -+Balinese 1B00 -+Balinese Digits 1B50 -+Balinese Musical Symbols 1B61 - BALLOT BOX 2610 - BALLOT BOX WITH CHECK 2611 - BALLOT BOX WITH X 2612 - BALLOT X 2717 - BALLOT X, HEAVY 2718 - bang 0021 --bar, broken vertical 00A6 --BAR, CIRCLED VERTICAL 29B6 -+Bar Dingbats, Vertical 2758 -+Bar Symbols, Error 29EE -+BAR, BROKEN 00A6 - BAR, HORIZONTAL 2015 --BAR, N-ARY WHITE VERTICAL 2AFF - bar, vertical 007C - BAR, WHITE VERTICAL 2AFE --BAR BINARY RELATION, TRIPLE VERTICAL 2AF4 --BAR DELIMITER, TRIPLE VERTICAL 2980 --Bar Dingbats, Vertical 2758 --BAR OPERATOR, LARGE TRIPLE VERTICAL 2AFC --Bar Symbols, Error 29EE --BAR WITH DOUBLE VERTICAL STROKE, TRIPLE HORIZONTAL 2A68 --BAR WITH HORIZONTAL STROKE, TRIPLE VERTICAL 2AF5 --BAR WITH TRIPLE VERTICAL STROKE, TRIPLE HORIZONTAL 2A69 -+BARRED B, LATIN LETTER SMALL CAPITAL 1D03 - barred o, latin capital letter 019F - BARRED O, LATIN SMALL LETTER 0275 --Basic Latin, C0 Controls and 0000 --Basic Russian Alphabet 0410 -+base 22A5 -+batsaganchakan nshan, armenian 055C -+battleground symbol 2694 - BEAMED EIGHTH NOTES 266B - BEAMED SIXTEENTH NOTES 266C - BECAUSE 2235 --beginning of line 2310 --bell 0007 --BELL, SYMBOL FOR 2407 -+BELL 0007 - BELL SYMBOL 237E -+BELL, SYMBOL FOR 2407 - BELOW, COMBINING ACUTE ACCENT 0317 -+BELOW, COMBINING ASTERISK 0359 - BELOW, COMBINING BREVE 032E - BELOW, COMBINING BRIDGE 032A - BELOW, COMBINING CARON 032C -@@ -336,14 +423,20 @@ - BELOW, COMBINING COMMA 0326 - BELOW, COMBINING DIAERESIS 0324 - BELOW, COMBINING DOT 0323 -+BELOW, COMBINING DOUBLE BREVE 035C -+BELOW, COMBINING DOUBLE MACRON 035F - BELOW, COMBINING DOUBLE RIGHTWARDS ARROW 0362 -+BELOW, COMBINING DOUBLE RING 035A - BELOW, COMBINING DOUBLE VERTICAL LINE 0348 -+BELOW, COMBINING DOWN TACK 031E - 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 ARROW 20EE -+BELOW, COMBINING LEFT ARROWHEAD 0354 - BELOW, COMBINING LEFT HALF RING 031C - BELOW, COMBINING LEFT RIGHT ARROW 034D - BELOW, COMBINING LEFT TACK 0318 -@@ -352,7 +445,10 @@ - BELOW, COMBINING PALATALIZED HOOK 0321 - BELOW, COMBINING PLUS SIGN 031F - BELOW, COMBINING RETROFLEX HOOK 0322 -+BELOW, COMBINING RIGHT ARROW 20EF -+BELOW, COMBINING RIGHT ARROWHEAD 0355 - BELOW, COMBINING RIGHT HALF RING 0339 -+BELOW, COMBINING RIGHT TACK 0319 - BELOW, COMBINING RING 0325 - BELOW, COMBINING SEAGULL 033C - BELOW, COMBINING SQUARE 033B -@@ -360,54 +456,52 @@ - BELOW, COMBINING UP TACK 031D - BELOW, COMBINING UPWARDS ARROW 034E - BELOW, COMBINING VERTICAL LINE 0329 --below, greek non-spacing iota 0345 -+BELOW, COMBINING X 0353 -+BELT, LATIN SMALL LETTER L WITH 026C - bend, actuarial 20E7 - Bengali 0980 -+Bengali Consonants 0995 - Bengali Currency Signs 09F2 -+Bengali Dependent Vowel Signs 09BE - Bengali Digits 09E6 --Bengali Letters 0985 -+bengali hasant 09CD -+Bengali Independent Vowels 0985 -+BENGALI ISSHAR 09FA - BENGALI RUPEE MARK 09F2 - BENGALI RUPEE SIGN 09F3 - BENZENE RING 232C - bernoulli function 212C - BET SYMBOL 2136 --Betty BOOP 263A -+BETA SYMBOL, GREEK 03D0 -+beta, curled 03D0 - BETWEEN 226C - BEVERAGE, HOT 2615 --BIDENTAL PERCUSSIVE, LATIN LETTER 02AD --Bidirectional Formatting Controls 202A --Big 5, Duplicates from FA0C -+Bidirectional Format Characters 202A -+Big 5, Duplicate Characters from FA0C - BIG REVERSE SOLIDUS 29F9 - BIG SOLIDUS 29F8 --bijection, z notation 2917 --bijective mapping 2916 -+bijection 2916 - BILABIAL CLICK, LATIN LETTER 0298 - BILABIAL PERCUSSIVE, LATIN LETTER 02AC --BINARY RELATION, TRIPLE SOLIDUS 2AFB --BINARY RELATION, TRIPLE VERTICAL BAR 2AF4 -+bindu, devanagari 0902 - BIOHAZARD SIGN 2623 --BLACK, BOWTIE WITH LEFT HALF 29D1 --BLACK, BOWTIE WITH RIGHT HALF 29D2 --BLACK, DOWN-POINTING TRIANGLE WITH LEFT HALF 29E8 --BLACK, DOWN-POINTING TRIANGLE WITH RIGHT HALF 29E9 --BLACK, TIMES WITH LEFT HALF 29D4 --BLACK, TIMES WITH RIGHT HALF 29D5 --BLACK BOWTIE 29D3 --BLACK CIRCLE WITH DOWN ARROW 29ED --BLACK CIRCLE WITH TWO WHITE DOTS 2689 --BLACK CIRCLE WITH WHITE DOT RIGHT 2688 --Black Circled Numbers, White On 24EB --BLACK DIAMOND WITH DOWN ARROW 29EA -+BIRGA, MONGOLIAN 1800 -+BISMILLAH AR-RAHMAN AR-RAHEEM, ARABIC LIGATURE FDFD -+BLACK CIRCLE 25CF -+BLACK CIRCLE, MEDIUM 26AB - BLACK FLAG 2691 - BLACK HOURGLASS 29D7 - BLACK LEFT POINTING INDEX 261A - BLACK LEFTWARDS BULLET 204C - BLACK LENTICULAR BRACKET, LEFT 3010 -+BLACK LENTICULAR BRACKET, RIGHT 3011 - BLACK LOZENGE 29EB - BLACK MEDIUM SMALL SQUARE 25FE - BLACK MEDIUM SQUARE 25FC - BLACK NIB 2712 - BLACK PARALLELOGRAM 25B0 -+BLACK RIGHT POINTING INDEX 261B -+BLACK RIGHTWARDS BULLET 204D - BLACK SCISSORS 2702 - BLACK SHOGI PIECE 2617 - black small circle 2022 -@@ -415,122 +509,182 @@ - BLACK STAR 2605 - BLACK SUN WITH RAYS 2600 - BLACK TELEPHONE 260E --BLACK TRIANGLE, PLUS SIGN WITH 2A28 --BLACK UNIVERSAL RECYCLING SYMBOL 267B - BLACK-LETTER CAPITAL C 212D - BLACK-LETTER CAPITAL H 210C - BLACK-LETTER CAPITAL I 2111 - BLACK-LETTER CAPITAL R 211C - BLACK-LETTER CAPITAL Z 2128 -+Black-letter Mathematical Symbols 1D504 - BLANK SYMBOL 2422 --block, end of transmission 0017 --BLOCK, SYMBOL FOR END OF TRANSMISSION 2417 - Block Elements 2580 -+BLOCK, END OF TRANSMISSION 0017 -+BLOCK, FULL 2588 -+BLOCK, SYMBOL FOR END OF TRANSMISSION 2417 -+Bohairic Coptic 2C80 -+Bold Digits 1D7CE -+Bold Digits, Sans-serif 1D7EC -+Bold Fraktur Mathematical Symbols 1D56C -+Bold Greek Mathematical Symbols 1D6A8 -+Bold Greek Mathematical Symbols, Sans-serif 1D756 -+Bold Italic Greek Mathematical Symbols 1D71C -+Bold Italic Greek Mathematical Symbols, Sans-serif 1D790 -+Bold Italic Mathematical Symbols 1D468 -+Bold Italic Mathematical Symbols, Sans-serif 1D63C -+Bold Mathematical Symbols 1D400 -+Bold Mathematical Symbols, Sans-serif 1D5D4 -+Bold Script Mathematical Symbols 1D4D0 - bom FEFF -+Bopomofo Extensions, Chinese 31A0 - Bopomofo, Chinese 3100 --Bopomofo Extended for Minnan and Hakka, Chinese 31A0 -+bottom 22A5 -+bowt, armenian 055D - BOWTIE 22C8 --bowtie, large 2A1D - Bowtie Symbols 29D1 -+bowtie, large 2A1D -+bowtie, vertical 29D6 -+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 --Box Drawing 2500 --BOX LINE, LEFT VERTICAL 23B8 --BOX LINE, RIGHT VERTICAL 23B9 --BOX OPERATOR, SQUARE LEFT OPEN 2ACD --BOX OPERATOR, SQUARE RIGHT OPEN 2ACE --BOX WITH CHECK, BALLOT 2611 --BOX WITH X, BALLOT 2612 --bra 27E6 -+bra 27E8 - brace, closing 007D - brace, opening 007B --bracket, z notation left bag 27E6 -+Bracket Pieces 239B -+Bracket Pieces 23B0 -+Bracket Variants for Vertical Text 23DC -+BRACKET WITH QUILL, LEFT SQUARE 2045 -+BRACKET WITH QUILL, RIGHT SQUARE 2046 - bracket, closing curly 007D - bracket, closing square 005D -+bracket, left abstract syntax 301A - BRACKET, LEFT ANGLE 3008 -+bracket, left bag 27E6 - BRACKET, LEFT BLACK LENTICULAR 3010 -+bracket, left chevron 27EA - BRACKET, LEFT CORNER 300C - BRACKET, LEFT CURLY 007B - BRACKET, LEFT DOUBLE ANGLE 300A -+bracket, left sequence 27E8 - BRACKET, LEFT SQUARE 005B - BRACKET, LEFT TORTOISE SHELL 3014 - BRACKET, LEFT WHITE CORNER 300E -+BRACKET, LEFT WHITE CURLY 2983 - BRACKET, LEFT WHITE LENTICULAR 3016 - BRACKET, LEFT WHITE SQUARE 301A - BRACKET, LEFT WHITE TORTOISE SHELL 3018 - BRACKET, LEFT-POINTING ANGLE 2329 -+BRACKET, MATHEMATICAL LEFT ANGLE 27E8 -+BRACKET, MATHEMATICAL LEFT DOUBLE ANGLE 27EA -+BRACKET, MATHEMATICAL RIGHT ANGLE 27E9 -+BRACKET, MATHEMATICAL RIGHT DOUBLE ANGLE 27EB - bracket, opening curly 007B - bracket, opening square 005B -+bracket, right abstract syntax 301B -+BRACKET, RIGHT ANGLE 3009 -+bracket, right bag 27E7 -+BRACKET, RIGHT BLACK LENTICULAR 3011 -+bracket, right chevron 27EB -+BRACKET, RIGHT CORNER 300D - BRACKET, RIGHT CURLY 007D -+BRACKET, RIGHT DOUBLE ANGLE 300B -+bracket, right sequence 27E9 - BRACKET, RIGHT SQUARE 005D --Bracket Pieces 239B --Bracket Pieces 23B0 --BRACKET WITH QUILL, LEFT SQUARE 2045 -+BRACKET, RIGHT TORTOISE SHELL 3015 -+BRACKET, RIGHT WHITE CORNER 300F -+BRACKET, RIGHT WHITE CURLY 2984 -+BRACKET, RIGHT WHITE LENTICULAR 3017 -+BRACKET, RIGHT WHITE SQUARE 301B -+BRACKET, RIGHT WHITE TORTOISE SHELL 3019 -+BRACKET, RIGHT-POINTING ANGLE 232A - Brackets 2983 - Brackets, CJK Angle 3008 --Brackets, Corner 2308 - Brackets, CJK Corner 300C --Brackets, CJK 3010 --Brackets, CJK 3014 --Brackets, Fullwidth FF5F -+Brackets, Corner 2308 - Brackets, Mathematical 27E6 - Brackets, Ornamental 2768 --Brackets, Ornamental 2770 - Brackets, Vertical 23B4 - Braille Patterns 2800 - brazilian currency 20A2 --break here, no 0083 --break permitted here 0082 --breathing, rough 0314 --breathing, smooth 0313 -+BREAK HERE, NO 0083 -+BREAK PERMITTED HERE 0082 -+breathing mark, greek rough 0314 -+breathing mark, greek smooth 0313 - BREVE 02D8 -+BREVE BELOW, COMBINING 032E -+BREVE BELOW, COMBINING DOUBLE 035C -+BREVE BELOW, COMBINING INVERTED 032F - BREVE, COMBINING 0306 -+BREVE, COMBINING DOUBLE 035D - BREVE, COMBINING DOUBLE INVERTED 0361 - BREVE, COMBINING INVERTED 0311 --BREVE BELOW, COMBINING 032E --BREVE BELOW, COMBINING INVERTED 032F - BRIDGE ABOVE, COMBINING 0346 - BRIDGE ABOVE, COMBINING WIDE 20E9 - BRIDGE BELOW, COMBINING 032A - BRIDGE BELOW, COMBINING INVERTED 033A -+BROKEN BAR 00A6 - broken vertical bar 00A6 -+Buginese 1A00 - Buhid 1740 - BULLET 2022 -+BULLET OPERATOR 2219 - BULLET, BLACK LEFTWARDS 204C -+BULLET, BLACK RIGHTWARDS 204D - BULLET, HYPHEN 2043 - BULLET, REVERSED ROTATED FLORAL HEART 2619 --bullet, tainome (japanese, a kind of) 25C9 -+bullet, tainome japanese 25C9 - BULLET, TRIANGULAR 2023 - BULLET, WHITE 25E6 --BULLET OPERATOR 2219 - BULLSEYE 25CE - bullseye, latin letter 0298 --BUMPY ABOVE, EQUALS SIGN WITH 2AAE --BY, MEASURED 225E -+buried symbol 26B0 -+Burmese 1000 - by definition, equal to 225C - BY DEFINITION, EQUAL TO 225D -+BY, MEASURED 225E - byte order mark FEFF -+Byzantine Musical Symbols 1D000 -+C WITH ACUTE, LATIN SMALL LETTER 0107 -+C WITH CARON, LATIN SMALL LETTER 010D -+C WITH CEDILLA, LATIN CAPITAL LETTER 00C7 -+C WITH CEDILLA, LATIN SMALL LETTER 00E7 -+C WITH CIRCUMFLEX, LATIN SMALL LETTER 0109 -+C WITH CURL, LATIN SMALL LETTER 0255 -+C WITH DOT ABOVE, LATIN SMALL LETTER 010B -+C WITH HOOK, LATIN SMALL LETTER 0188 -+C WITH STROKE, LATIN CAPITAL LETTER 023B -+C WITH STROKE, LATIN SMALL LETTER 023C -+c, apostrophic 2183 - C, BLACK-LETTER CAPITAL 212D - C, COMBINING LATIN SMALL LETTER 0368 - C, DOUBLE-STRUCK CAPITAL 2102 -+C, LATIN LETTER SMALL CAPITAL 1D04 - C, LATIN LETTER STRETCHED 0297 --C0 Controls and Basic Latin 0000 --C1 Controls and Latin-1 Supplement 0080 -+C, LATIN SMALL LETTER REVERSED 2184 -+C0 Control Codes, ASCII 0000 -+C1 Control Codes 0080 - CADA UNA 2106 - CADUCEUS 2624 -+Cambodian 1780 - Canadian Aboriginal Syllabics, Unified 1400 --cancel 0018 -+CANADIAN SYLLABICS FULL STOP 166E -+Canadian Syllabics Punctuation 166D -+CANCEL 0018 -+CANCEL CHARACTER 0094 -+CANCEL TAG E007F - CANCEL, SYMBOL FOR 2418 --cancel character 0094 -+CANCELLATION MARK, LAO 0ECC - CANCER 264B - CANDRABINDU, COMBINING 0310 -+CANDRABINDU, DEVANAGARI SIGN 0901 - Cantillation Marks, Hebrew 0591 -+Cantillation Signs, Tibetan 0FC0 - cap 2229 - CAP, SQUARE 2293 - Capital Letters, Armenian 0531 --Capital Letters, Cyrillic 0401 -+Capital Letters, Cyrillic 0400 - Capital Letters, Georgian 10A0 - Capital Letters, Greek 0391 - Capital Letters, Latin 0041 -@@ -538,80 +692,80 @@ - caps lock 21EA - 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, first transfinite 2135 -+cardinal, fourth transfinite 2138 -+cardinal, second transfinite 2136 -+cardinal, third transfinite 2137 - CARE OF 2105 - caret 028C - CARET 2038 - CARET INSERTION POINT 2041 - CARON 02C7 --CARON, COMBINING 030C - CARON BELOW, COMBINING 032C --carriage return 000D --carriage return 21B5 -+CARON, COMBINING 030C -+CARRIAGE RETURN 000D - CARRIAGE RETURN, SYMBOL FOR 240D -+cartesian product 00D7 - CAUTION SIGN 2621 -+CEDI SIGN 20B5 - CEDILLA 00B8 -+cedilla above 0312 - CEDILLA, COMBINING 0327 -+CEDILLA, LATIN CAPITAL LETTER C WITH 00C7 -+CEDILLA, LATIN SMALL LETTER C WITH 00E7 - cedilla, spacing 00B8 --cedilla above 0312 - CEILING, LEFT 2308 -+CEILING, RIGHT 2309 - CELSIUS, DEGREE 2103 - CENT SIGN 00A2 -+center 2385 - centigrade, degrees 2103 - CENTRE LINE SYMBOL 2104 --CENTRED LEFT HALF RING, MODIFIER LETTER 02D3 - CENTRELINE LOW LINE FE4E - CENTRELINE OVERLINE FE4A - cgj 034F --character introducer, single 009A --character tabulation set 0088 --character tabulation with justification 0089 -+chandrakkala, malayalam 0D4D -+CHARACTER INTRODUCER, SINGLE 009A -+CHARACTER TABULATION 0009 -+CHARACTER TABULATION SET 0088 -+CHARACTER TABULATION WITH JUSTIFICATION 0089 - CHARACTER TIE 2040 - Chart Components, Form and 2500 --CHECK, BALLOT BOX WITH 2611 - CHECK MARK 2713 --CHECK MARK, AEGEAN 10102 - CHECK MARK, HEAVY 2714 - CHECK MARK, NOT 237B -+CHECK, BALLOT BOX WITH 2611 - Cherokee 13A0 --Chess Pieces 2654 -+Chess Symbols 2654 - Chess Symbols, Japanese 2616 -+chevron bracket, left 27EA -+chevron bracket, right 27EB - chevrons 00AB - CHI RHO 2627 - Chinese Bopomofo 3100 --Chinese Bopomofo Extended for Minnan and Hakka 31A0 -+Chinese Bopomofo Extensions 31A0 -+chinese fifth or neutral tone, mandarin 02D9 -+chinese first tone, mandarin 02C9 -+chinese fourth tone, mandarin 02CB -+chinese second tone, mandarin 02CA -+chinese third tone, mandarin 02C7 -+Chinese, Corner Tone Marks for A700 - choice, dijkstra 2AFE - choice, n-ary dijkstra 2AFF -+christogram 2627 -+CIRCLE BACKSLASH, COMBINING ENCLOSING 20E0 -+Circle Symbols 29B5 - CIRCLE, BLACK 25CF - circle, black small 2022 - CIRCLE, COMBINING ENCLOSING 20DD - CIRCLE, DOTTED 25CC - circle, jis composition 20DD - CIRCLE, LARGE 25EF --CIRCLE, MULTIPLICATION SIGN IN DOUBLE 2A37 --CIRCLE, MULTIPLICATION SIGN IN LEFT HALF 2A34 --CIRCLE, MULTIPLICATION SIGN IN RIGHT HALF 2A35 --CIRCLE, PLUS SIGN IN LEFT HALF 2A2D --CIRCLE, PLUS SIGN IN RIGHT HALF 2A2E --CIRCLE, SQUARED SMALL 29C7 --CIRCLE ABOVE, PLUS SIGN WITH SMALL 2A22 --CIRCLE ABOVE, UP TACK WITH 27DF --CIRCLE ABOVE, VERTICAL LINE WITH 2AEF --CIRCLE BACKSLASH, COMBINING ENCLOSING 20E0 --CIRCLE BELOW, DOWN TACK WITH 2AF1 --CIRCLE BELOW, VERTICAL LINE WITH 2AF0 --CIRCLE DIVIDED BY HORIZONTAL BAR AND TOP HALF DIVIDED BY VERTICAL BAR 29BA --CIRCLE INSIDE, GREATER-THAN WITH 2A7A --CIRCLE INSIDE, LESS-THAN WITH 2A79 --Circle Symbols 29B5 --CIRCLE WITH DOT RIGHT, WHITE 2686 --CIRCLE WITH DOWN ARROW, BLACK 29ED --CIRCLE WITH DOWN ARROW, WHITE 29EC --CIRCLE WITH TWO DOTS, WHITE 2687 --CIRCLE WITH TWO WHITE DOTS, BLACK 2689 --CIRCLE WITH WHITE DOT RIGHT, BLACK 2688 -+CIRCLE, MEDIUM BLACK 26AB -+CIRCLE, MEDIUM SMALL WHITE 26AC -+CIRCLE, MEDIUM WHITE 26AA -+CIRCLE, SHADOWED WHITE 274D -+CIRCLE, WHITE 25CB - CIRCLED ASTERISK OPERATOR 229B - CIRCLED DASH 229D - CIRCLED DIGIT ZERO 24EA -@@ -623,17 +777,16 @@ - CIRCLED EQUALS 229C - Circled Ideographs 3280 - Circled Inverse Numbers 2776 --Circled Japanese Katakana 32D0 -+Circled Katakana 32D0 - Circled Korean Hangul Elements 3260 - Circled Korean Hangul Syllables 326E - Circled Latin Letters 24B6 - CIRCLED MINUS 2296 --CIRCLED MULTIPLICATION SIGN WITH CIRCUMFLEX ACCENT 2A36 - Circled Numbers 2460 - Circled Numbers 3251 - Circled Numbers 32B1 - Circled Numbers, Double 24F5 --Circled Numbers, White On Black 24EB -+Circled Numbers, White on Black 24EB - CIRCLED PLUS 2295 - CIRCLED PLUS OPERATOR, N-ARY 2A01 - CIRCLED POSTAL MARK 3036 -@@ -641,26 +794,35 @@ - CIRCLED TIMES 2297 - CIRCLED TIMES OPERATOR, N-ARY 2A02 - Circles 25CB --CIRCULATION FUNCTION 2A10 --circumflex, spacing 005E - CIRCUMFLEX ACCENT 005E --CIRCUMFLEX ACCENT, ALMOST EQUAL TO WITH 2A6F --CIRCUMFLEX ACCENT, CIRCLED MULTIPLICATION SIGN WITH 2A36 -+CIRCUMFLEX ACCENT BELOW, COMBINING 032D - CIRCUMFLEX ACCENT, COMBINING 0302 - CIRCUMFLEX ACCENT, MODIFIER LETTER 02C6 --CIRCUMFLEX ACCENT ABOVE, PLUS SIGN WITH 2A23 --CIRCUMFLEX ACCENT BELOW, COMBINING 032D -+circumflex accent, spacing 005E -+CJK Angle Brackets 3008 - CJK Compatibility 3300 - CJK Compatibility Forms FE30 - CJK Compatibility Ideographs F900 --CJK Compatibility Ideographs, IBM FA0E -+CJK Compatibility Ideographs Supplement 2F800 -+CJK Corner Brackets 300C -+CJK Diacritics 302A -+CJK Ideographic Description Characters 2FF0 - CJK Ideographs Area 3400 --CJK Letters and Ideographs, Enclosed 3200 --CJK Phonetics and Symbols Area 2E00 -+CJK Ideographs Area, Supplementary 20000 -+CJK Ideographs, Parenthesized 3220 -+CJK Kangxi Radicals 2F00 -+CJK Letters and Months, Enclosed 3200 -+CJK Phonetics and Symbols Area 2E80 -+CJK Punctuation, Halfwidth FF61 -+CJK Quotation Marks 300C - CJK Radicals Supplement 2E80 -+CJK Strokes 31C0 - CJK Symbols and Punctuation 3000 - CJK Unified Ideographs 4E00 - CJK Unified Ideographs Extension A 3400 -+CJK Unified Ideographs Extension B 20000 -+claudian antisigma 2183 -+claudian digamma inversum 2133 - clear key 2327 - CLEAR SCREEN SYMBOL 239A - clear weather 2600 -@@ -669,6 +831,7 @@ - CLICK, LATIN LETTER DENTAL 01C0 - CLICK, LATIN LETTER LATERAL 01C1 - CLICK, LATIN LETTER RETROFLEX 01C3 -+Clicks, African Letters for 01C0 - CLOCKWISE ARROW ABOVE, COMBINING 20D5 - CLOCKWISE CONTOUR INTEGRAL 2232 - CLOCKWISE INTEGRAL 2231 -@@ -677,17 +840,10 @@ - Clones of Diacritics, Spacing 02D8 - CLOSE UP 2050 - closed epsilon, latin small letter 029A --CLOSED INTERSECTION WITH SERIFS 2A4D - 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 --CLOSED SUBSET 2ACF --CLOSED SUBSET OR EQUAL TO 2AD1 --CLOSED SUPERSET 2AD0 --CLOSED SUPERSET OR EQUAL TO 2AD2 --CLOSED UNION WITH SERIFS 2A4C --CLOSED UNION WITH SERIFS AND SMASH PRODUCT 2A50 - closing brace 007D - closing curly bracket 007D - CLOSING MARK, IDEOGRAPHIC 3006 -@@ -695,25 +851,29 @@ - closing square bracket 005D - CLOUD 2601 - cloudy weather 2601 --Codes, Process Internal FDD0 --coffee 2615 -+CNS�11643-1992, Duplicate Characters from 2F800 -+coffee, cup of 2615 -+COFFIN 26B0 - COLON 003A -+COLON EQUALS 2254 -+colon right arrow 29F4 -+COLON SIGN 20A1 -+COLON, EQUALS 2255 - COLON, ETHIOPIC 1365 -+COLON, ETHIOPIC PREFACE 1366 - COLON, MODIFIER LETTER HALF TRIANGULAR 02D1 - COLON, MODIFIER LETTER TRIANGULAR 02D0 - COLON, MONGOLIAN 1804 - COLON, Z NOTATION TYPE 2982 --COLON EQUAL, DOUBLE 2A74 --COLON EQUALS 2254 --COLON OPERATOR, TRIPLE 2AF6 --colon right arrow 29F4 --COLON SIGN 20A1 - COMBINING ACUTE ACCENT 0301 - COMBINING ACUTE ACCENT BELOW 0317 - COMBINING ACUTE TONE MARK 0341 - COMBINING ALMOST EQUAL TO ABOVE 034C - Combining Alphabet, Korean Hangul Jamo 1100 - COMBINING ANNUITY SYMBOL 20E7 -+COMBINING ANTICLOCKWISE ARROW ABOVE 20D4 -+COMBINING ANTICLOCKWISE RING OVERLAY 20DA -+COMBINING ASTERISK BELOW 0359 - COMBINING BREVE 0306 - COMBINING BREVE BELOW 032E - COMBINING BRIDGE ABOVE 0346 -@@ -730,20 +890,27 @@ - COMBINING COMMA ABOVE 0313 - COMBINING COMMA ABOVE RIGHT 0315 - COMBINING COMMA BELOW 0326 -+combining counterclockwise arrow above 20D4 -+combining counterclockwise ring overlay 20DA - Combining Diacritical Marks 0300 - Combining Diacritical Marks for Symbols 20D0 - COMBINING DIAERESIS 0308 - COMBINING DIAERESIS BELOW 0324 - COMBINING DOT ABOVE 0307 -+COMBINING DOT ABOVE RIGHT 0358 - COMBINING DOT BELOW 0323 - COMBINING DOUBLE ACUTE ACCENT 030B -+COMBINING DOUBLE BREVE 035D -+COMBINING DOUBLE BREVE BELOW 035C - COMBINING DOUBLE GRAVE ACCENT 030F - COMBINING DOUBLE INVERTED BREVE 0361 - COMBINING DOUBLE LOW LINE 0333 -+COMBINING DOUBLE MACRON 035E -+COMBINING DOUBLE MACRON BELOW 035F - COMBINING DOUBLE OVERLINE 033F - COMBINING DOUBLE RIGHTWARDS ARROW BELOW 0362 -+COMBINING DOUBLE RING BELOW 035A - COMBINING DOUBLE TILDE 0360 --COMBINING DOUBLE TILDE LEFT HALF FE22 - COMBINING DOUBLE VERTICAL LINE ABOVE 030E - COMBINING DOUBLE VERTICAL LINE BELOW 0348 - COMBINING DOUBLE VERTICAL STROKE OVERLAY 20E6 -@@ -756,6 +923,7 @@ - COMBINING ENCLOSING SQUARE 20DE - COMBINING ENCLOSING UPWARD POINTING TRIANGLE 20E4 - COMBINING EQUALS SIGN BELOW 0347 -+COMBINING FERMATA 0352 - COMBINING FOUR DOTS ABOVE 20DC - COMBINING GRAPHEME JOINER 034F - COMBINING GRAVE ACCENT 0300 -@@ -774,24 +942,30 @@ - COMBINING INVERTED BREVE BELOW 032F - COMBINING INVERTED BRIDGE BELOW 033A - COMBINING INVERTED DOUBLE ARCH BELOW 032B --COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK 3099 -+combining japanese daku-on 3099 -+combining japanese han-daku-on 309A - Combining Latin Small Letters 0363 - COMBINING LEFT ANGLE ABOVE 031A - COMBINING LEFT ANGLE BELOW 0349 - COMBINING LEFT ARROW ABOVE 20D6 -+COMBINING LEFT ARROW BELOW 20EE -+COMBINING LEFT ARROWHEAD BELOW 0354 -+COMBINING LEFT HALF RING ABOVE 0351 - 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 LEFTWARDS ARROW OVERLAY 20EA --COMBINING LIGATURE LEFT HALF FE20 -+COMBINING LEFTWARDS HARPOON WITH BARB DOWNWARDS 20ED -+COMBINING LONG DOUBLE SOLIDUS OVERLAY 20EB - COMBINING LONG SOLIDUS OVERLAY 0338 - COMBINING LONG STROKE OVERLAY 0336 - COMBINING LONG VERTICAL LINE OVERLAY 20D2 - COMBINING LOW LINE 0332 - COMBINING MACRON 0304 - COMBINING MACRON BELOW 0331 -+Combining Marks, Arabic 0653 - COMBINING MINUS SIGN BELOW 0320 - COMBINING NOT TILDE ABOVE 034A - COMBINING OGONEK 0328 -@@ -801,7 +975,15 @@ - COMBINING RETROFLEX HOOK BELOW 0322 - COMBINING REVERSE SOLIDUS OVERLAY 20E5 - COMBINING REVERSED COMMA ABOVE 0314 -+COMBINING RIGHT ARROW ABOVE 20D7 -+COMBINING RIGHT ARROW BELOW 20EF -+COMBINING RIGHT ARROWHEAD ABOVE 0350 -+COMBINING RIGHT ARROWHEAD BELOW 0355 -+COMBINING RIGHT HALF RING ABOVE 0357 - COMBINING RIGHT HALF RING BELOW 0339 -+COMBINING RIGHT HARPOON ABOVE 20D1 -+COMBINING RIGHT TACK BELOW 0319 -+COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS 20EC - COMBINING RING ABOVE 030A - COMBINING RING BELOW 0325 - COMBINING RING OVERLAY 20D8 -@@ -823,22 +1005,14 @@ - COMBINING VERTICAL TILDE 033E - COMBINING WIDE BRIDGE ABOVE 20E9 - COMBINING X ABOVE 033D -+COMBINING X BELOW 0353 -+COMBINING ZIGZAG ABOVE 035B - COMET 2604 - COMMA 002C --COMMA, ARABIC 060C --COMMA, ARMENIAN 055D --COMMA, ETHIOPIC 1363 --comma, georgian 00B7 --COMMA, IDEOGRAPHIC 3001 --comma, invisible 2063 --COMMA, MODIFIER LETTER REVERSED 02BD --COMMA, MODIFIER LETTER TURNED 02BB --COMMA, MONGOLIAN 1802 -+COMMA ABOVE RIGHT, COMBINING 0315 - COMMA ABOVE, COMBINING 0313 - COMMA ABOVE, COMBINING REVERSED 0314 - COMMA ABOVE, COMBINING TURNED 0312 --COMMA ABOVE, MINUS SIGN WITH 2A29 --COMMA ABOVE RIGHT, COMBINING 0315 - COMMA BELOW, COMBINING 0326 - comma quotation mark, double 201D - comma quotation mark, double reversed 201F -@@ -848,94 +1022,103 @@ - comma quotation mark, single 2019 - comma quotation mark, single reversed 201B - comma quotation mark, single turned 2018 --command, application program 009F --command, operating system 009D -+COMMA, ARABIC 060C -+COMMA, ARMENIAN 055D -+COMMA, ETHIOPIC 1363 -+comma, georgian 00B7 -+COMMA, IDEOGRAPHIC 3001 -+comma, invisible 2063 -+COMMA, MODIFIER LETTER REVERSED 02BD -+COMMA, MODIFIER LETTER TURNED 02BB -+COMMA, MONGOLIAN 1802 -+COMMA, MONGOLIAN MANCHU 1808 - command key 2318 -+COMMAND, APPLICATION PROGRAM 009F -+COMMAND, OPERATING SYSTEM 009D - COMMERCIAL AT 0040 - COMMERCIAL MINUS SIGN 2052 - compass 263C --Compatibility, CJK 3300 - Compatibility and Specials Area F900 - Compatibility Forms, CJK FE30 -+Compatibility Ideographs Supplement, CJK 2F800 - Compatibility Ideographs, CJK F900 --Compatibility Ideographs, IBM CJK FA0E -+Compatibility Ideographs, DPRK FA70 -+Compatibility Ideographs, JIS X 0213 FA30 - Compatibility Jamo, Korean Hangul 3130 -+Compatibility, CJK 3300 - COMPLEMENT 2201 --complex numbers, the set of 2102 -+complex numbers 2102 - component, radial 27DF - Components, Form and Chart 2500 - composite function 2218 --COMPOSITION, Z NOTATION RELATIONAL 2A3E --COMPOSITION, Z NOTATION SCHEMA 2A1F - composition circle, jis 20DD - COMPOSITION SYMBOL 2384 --concatenation, z notation sequence 2040 --CONCAVE-SIDED DIAMOND, WHITE 27E1 --CONCAVE-SIDED DIAMOND WITH LEFTWARDS TICK, WHITE 27E2 --CONCAVE-SIDED DIAMOND WITH RIGHTWARDS TICK, WHITE 27E3 --conductance 2127 --CONGRUENT WITH DOT ABOVE 2A6D -+concatenation, sequence 2040 - CONICAL TAPER 2332 - CONJUGATE MATRIX, HERMITIAN 22B9 - conjunction 2227 - CONJUNCTION 260C --CONSECUTIVE EQUALS SIGNS, THREE 2A76 --CONSECUTIVE EQUALS SIGNS, TWO 2A75 --consonant for Addu dialect 0780 -+constant pi, mathematical 03C0 -+CONSTANT, EULER 2107 -+CONSTANT, PLANCK 210E -+constantine's cross 2627 - CONTAINS AS MEMBER 220B - CONTAINS AS MEMBER, SMALL 220D - CONTAINS AS NORMAL SUBGROUP 22B3 --CONTAINS WITH LONG HORIZONTAL STROKE 22FA --CONTAINS WITH OVERBAR 22FD --CONTAINS WITH OVERBAR, SMALL 22FE --CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE 22FB --CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE, SMALL 22FC -+Contextual Form Glyphs, Arabic FB50 -+Contextual Form Glyphs, Arabic FE80 - continuity, absolute 2AA1 - CONTINUOUS UNDERLINE SYMBOL 2381 - continuum, second transfinite cardinal 2136 - CONTOUR INTEGRAL 222E -+CONTOUR INTEGRAL, ANTICLOCKWISE 2233 - CONTOUR INTEGRAL, CLOCKWISE 2232 --CONTOURED OUTLINE, SQUARE WITH 29E0 -+contour integral, counterclockwise 2233 - contraction operator 20E9 --control, graphic for 2388 --Control, Syriac Format 070F --Control Code Graphics 25F0 -+control 2388 -+Control Code Graphics, Quadrant 25F0 - Control Codes, ASCII C0 0000 -+Control Codes, C0 0000 - Control Codes, C1 0080 - Control Codes, Graphic Pictures for 2400 --Control Codes, Graphics for 237B --control sequence introducer 009B --control string, device 0090 --Controls, Bidirectional Formatting 202A -+Control Codes, Graphics for 237D -+CONTROL SEQUENCE INTRODUCER 009B -+Controls, Bidirectional Format 202A - Controls, Mongolian Format 180B --Controls and Basic Latin, C0 0000 --Controls and Latin-1 Supplement, C1 0080 --COPRODUCT, AMALGAMATION OR 2A3F -+coproduct sign 2210 - COPRODUCT, N-ARY 2210 --Coptic, Greek and 0370 --Coptic-unique Letters 03E2 --COPYRIGHT, SOUND RECORDING 2117 -+Coptic Letters Derived from Demotic 03E2 -+Coptic, Bohairic 2C80 -+Coptic, Extended 2CB2 - COPYRIGHT SIGN 00A9 --CORNER, TOP LEFT 231C --CORNER BRACKET, LEFT 300C --CORNER BRACKET, LEFT WHITE 300E --Corner brackets 2308 --Corner brackets, CJK 300C --CORNER WITH DOT, LOWER RIGHT 27D3 --CORNER WITH DOT, UPPER LEFT 27D4 --corners, Quine 231C --CORPORATION, SQUARE 337F -+COPYRIGHT, SOUND RECORDING 2117 -+Corner Brackets 2308 -+Corner Brackets, CJK 300C -+Corner Tone Marks for Chinese A700 -+Corners, Quine 231C - 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 integration 2A11 -+counterclockwise ring overlay, combining 20DA - COUNTERSINK 2335 - cr 000D -+CREDIT SIGN, TAMIL 0BF7 -+cremated symbol 26B1 - CRESCENT, STAR AND 262A --Croatian, Additions for Slovenian and 0200 - Croatian Digraphs Matching Serbian Cyrillic Letters 01C4 --CROP, TOP LEFT 230F -+Crops 230C -+CROSS ACCENT, MODIFIER LETTER 02DF -+Cross Dingbats 2719 -+CROSS OF JERUSALEM 2629 -+CROSS OF LORRAINE 2628 -+cross ratio 211E -+cross, constantine's 2627 -+CROSS, DOTTED 205C - CROSS, EAST SYRIAC 2671 - CROSS, LATIN 271D - cross, long 2020 -@@ -943,32 +1126,41 @@ - CROSS, ORTHODOX 2626 - cross, st. andrew's 2613 - CROSS, WEST SYRIAC 2670 --CROSS ACCENT, MODIFIER LETTER 02DF --Cross Dingbats 2719 --CROSS OF JERUSALEM 2629 --CROSS OF LORRAINE 2628 --CROSS PRODUCT, VECTOR OR 2A2F --cross ratio 211E --CROSSBONES, SKULL AND 2620 -+CROSSED SWORDS 2694 -+Crosses 2719 - crosshatch 0023 - CRUZEIRO SIGN 20A2 - CUBE ROOT 221B - cubed 00B3 -+Cuneiform 12000 -+Cuneiform Numbers and Punctuation 12400 - cup 222A -+cup of coffee 2615 -+cup of tea 2615 - CUP, SQUARE 2294 -+curled beta 03D0 - curly bracket, closing 007D - CURLY BRACKET, LEFT 007B -+CURLY BRACKET, LEFT WHITE 2983 - curly bracket, opening 007B - CURLY BRACKET, RIGHT 007D -+CURLY BRACKET, RIGHT WHITE 2984 - CURLY LOGICAL AND 22CF - CURLY LOGICAL OR 22CE -+CURRENCY SIGN 00A4 -+Currency Signs, Bengali 09F2 -+CURRENCY SYMBOL BAHT, THAI 0E3F -+CURRENCY SYMBOL RIEL, KHMER 17DB -+currency symbol, florin 0192 -+Currency Symbols 20A0 -+currency, argentinian former 20B3 - currency, brazilian 20A2 - currency, costa rican 20A1 - currency, el salvadorian 20A1 - currency, euro european 20AC - currency, french 20A3 -+currency, ghana 20B5 - currency, greek 20AF --currency, hebrew 20AA - currency, indian 20A8 - currency, iranian FDFC - currency, israeli 20AA -@@ -977,38 +1169,53 @@ - currency, laotian 20AD - currency, mongolian 20AE - currency, nigerian 20A6 -+currency, paraguayan 20B2 - currency, phillipine 20B1 - currency, spanish 20A7 - currency, turkish 20A4 -+currency, ukrainian 20B4 - currency, vietnamese 20AB --CURRENCY SIGN 00A4 --Currency Signs, Bengali 09F2 --currency symbol, florin 0192 --CURRENCY SYMBOL BAHT, THAI 0E3F --Currency Symbols 20A0 --current, alternating 223F - CURRENT SYMBOL FORM TWO, DIRECT 2393 -+CURRENT, AC 23E6 -+current, alternating 223F -+cursor down, fast 21A1 -+cursor left, fast 219E -+cursor right, fast 21A0 -+cursor up, fast 219F - cycle 223C - CYLINDRICITY 232D - Cypriot Syllabary 10800 - Cyrillic 0400 --Cyrillic, Extended 048C --Cyrillic Capital Letters 0401 -+Cyrillic Capital Letters 0400 - Cyrillic Combining Characters 0483 - Cyrillic Extensions 0450 -+Cyrillic Extensions 048A - Cyrillic Historic Letters 0460 --Cyrillic Komi Letters 0500 - Cyrillic Small Letters 0430 --Cyrillic Supplementary 0500 -+Cyrillic Supplement 0500 -+d retroflex hook, latin small letter 0256 -+D WITH CARON, LATIN SMALL LETTER 010F -+D WITH CEDILLA, LATIN SMALL LETTER 1E11 -+D WITH CIRCUMFLEX BELOW, LATIN SMALL LETTER 1E13 -+D WITH CURL, LATIN SMALL LETTER 0221 -+D WITH DOT ABOVE, LATIN SMALL LETTER 1E0B -+D WITH DOT BELOW, LATIN SMALL LETTER 1E0D -+D WITH HOOK, LATIN CAPITAL LETTER 018A -+D WITH HOOK, LATIN SMALL LETTER 0257 -+D WITH LINE BELOW, LATIN SMALL LETTER 1E0F -+D WITH STROKE, LATIN SMALL LETTER 0111 -+D WITH TAIL, LATIN SMALL LETTER 0256 -+D WITH TOPBAR, LATIN SMALL LETTER 018C -+d'alembertian 29E0 - D, COMBINING LATIN SMALL LETTER 0369 - D, DOUBLE-STRUCK ITALIC CAPITAL 2145 - D, DOUBLE-STRUCK ITALIC SMALL 2146 - D, LATIN CAPITAL LETTER AFRICAN 0189 --d retroflex hook, latin small letter 0256 --D WITH TAIL, LATIN SMALL LETTER 0256 -+D, LATIN LETTER SMALL CAPITAL 1D05 - DAGGER 2020 - DAGGER, DOUBLE 2021 --d'alembertian 29E0 -+daku-on, combining japanese 3099 -+daku-on, japanese 309B - DALET SYMBOL 2138 - DANDA, DEVANAGARI 0964 - DANDA, DEVANAGARI DOUBLE 0965 -@@ -1017,7 +1224,6 @@ - DASH, EM 2014 - DASH, EN 2013 - DASH, FIGURE 2012 --dash, long 2015 - dash, quotation 2015 - DASH, SWUNG 2053 - DASH, WAVE 301C -@@ -1025,35 +1231,33 @@ - DASHED LOW LINE FE4D - DASHED OVERLINE FE49 - Dashes 2010 --dasia 0314 --data link escape 0010 -+dasia, greek 0314 -+DATA LINK ESCAPE 0010 - DATA LINK ESCAPE, SYMBOL FOR 2410 - Database Theory Operators 27D5 - DAVID, STAR OF 2721 --Days, Telegraph Symbols for 33E0 - DAY SIGN, TAMIL 0BF3 -+Days, Ideographic Telegraph Symbols for 33E0 -+DB DIGRAPH, LATIN SMALL LETTER 0238 -+DEBIT SIGN, TAMIL 0BF6 - decimal point 002E - decimal separator 002C --DECIMAL SEPARATOR, ARABIC 066B - DECIMAL SEPARATOR KEY SYMBOL 2396 --deergh viram 0965 --definition, equal to by 225C --DEFINITION, EQUAL TO BY 225D -+DECIMAL SEPARATOR, ARABIC 066B -+deergh viram, devanagari 0965 - DEGREE CELSIUS 2103 - DEGREE FAHRENHEIT 2109 - DEGREE SIGN 00B0 - degrees centigrade 2103 --degrees kelvin 212A - del 2207 --delete 007F --DELETE, SYMBOL FOR 2421 --delete, undoable 2425 -+DELETE 007F - DELETE FORM TWO, SYMBOL FOR 2425 - delete to the left key 232B - delete to the right key 2326 --DELIMITER, TRIPLE VERTICAL BAR 2980 --DELTA, LATIN SMALL LETTER TURNED 018D -+DELETE, SYMBOL FOR 2421 - DELTA EQUAL TO 225C -+DELTA, LATIN SMALL LETTER TURNED 018D -+Demotic, Coptic Letters Derived from 03E2 - DENTAL CLICK, LATIN LETTER 01C0 - Dentistry Notation Symbols 23BE - depth symbol 21A7 -@@ -1062,106 +1266,117 @@ - derivative, fourth 20DC - derivative, third 20DB - DESCENDING NODE 260B --Description Characters, Ideographic 2FF0 -+Deseret 10400 - Devanagari 0900 -+devanagari bindu 0902 -+Devanagari Consonants 0915 - DEVANAGARI DANDA 0964 -+devanagari deergh viram 0965 -+Devanagari Dependent Vowel Signs 093E - Devanagari Digits 0966 - DEVANAGARI DOUBLE DANDA 0965 --Devanagari Letters 0905 -+Devanagari Extensions 0951 -+Devanagari Independent Vowels 0904 - DEVANAGARI OM 0950 --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 -+devanagari purna viram 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 -+Device Controls 0011 -+Device Controls, Symbols for 2411 - DHARMA, WHEEL OF 2638 --Diacritic-vowel Combinations, Pinyin 01CD --Diacritical Marks, Combining 0300 -+diacritic, finite function 20E6 - Diacritical Marks for Symbols, Combining 20D0 --Diacritics, Double 0360 -+Diacritical Marks, Combining 0300 -+Diacritics for Greek 0342 -+Diacritics for IPA 0346 -+Diacritics for Uralic Phonetic Alphabet 0350 -+Diacritics, CJK 302A -+Diacritics, Double 035C - Diacritics, Enclosing 20DD - Diacritics, Medieval Superscript Letter 0363 -+Diacritics, Ordinary 0300 - Diacritics, Overstruck 0334 - Diacritics, Spacing Clones of 02D8 --Diacritics for Greek 0342 --Diacritics for IPA 0346 - DIAERESIS 00A8 -+DIAERESIS BELOW, COMBINING 0324 - DIAERESIS, COMBINING 0308 --diaeresis, greek capital letter upsilon hook 03D4 - diaeresis, spacing 00A8 --DIAERESIS AND HOOK SYMBOL, GREEK UPSILON WITH 03D4 --DIAERESIS BELOW, COMBINING 0324 -+DIAGONAL ELLIPSIS, DOWN RIGHT 22F1 - DIAGONAL ELLIPSIS, UP RIGHT 22F0 --DIAGONAL SLASH, SQUARED FALLING 29C5 --DIAGONAL SLASH, SQUARED RISING 29C4 --dialytika 0308 - DIALYTIKA TONOS, COMBINING GREEK 0344 -+dialytika, greek 0308 - DIAMETER SIGN 2300 --diameter symbol 2205 --DIAMOND, COMBINING ENCLOSING 20DF --DIAMOND, WHITE CONCAVE-SIDED 27E1 - DIAMOND OPERATOR 22C4 --DIAMOND WITH CENTRED DOT, WHITE 27D0 --DIAMOND WITH DOWN ARROW, BLACK 29EA --DIAMOND WITH LEFTWARDS TICK, WHITE CONCAVE-SIDED 27E2 --DIAMOND WITH RIGHTWARDS TICK, WHITE CONCAVE-SIDED 27E3 -+DIAMOND, COMBINING ENCLOSING 20DF - Diamonds 25C6 - Dice 2680 -+Dictionary and Map Symbols 2690 - diesis 2021 -+difference between 223C -+DIFFERENCE BETWEEN 224F -+difference or sum, positive 2A24 - difference, backward 2207 - difference, forward 2206 --difference, sum or positive 2A26 -+difference, sum or positive 2A26 -+difference, symmetric 2206 - difference, symmetric 2238 - difference, symmetric 2296 --difference between 223C --DIFFERENCE BETWEEN 224F --difference or sum, positive 2A24 - DIFFERENTIAL, PARTIAL 2202 --DIGIT SHAPES, NATIONAL 206E --DIGIT SHAPES, NOMINAL 206F -+digamma inversum, claudian 2133 -+DIGIT ZERO, CIRCLED 24EA -+Digits Minus Half, Tibetan 0F2A -+Digits Symbols, Mathematical 1D7CE - Digits, Arabic-Indic 0660 - Digits, ASCII 0030 -+Digits, Balinese 1B50 - Digits, Bengali 09E6 -+Digits, Bold 1D7CE - Digits, Devanagari 0966 - Digits, Dingbat Circled 2776 -+Digits, Double-struck 1D7D8 -+Digits, Eastern Arabic-Indic 06F0 - Digits, Ethiopic 1369 - Digits, Gujarati 0AE6 - Digits, Gurmukhi 0A66 - Digits, Kannada 0CE6 -+Digits, Kharoshthi 10A40 - Digits, Khmer 17E0 - Digits, Lao 0ED0 -+Digits, Limbu 1946 - Digits, Malayalam 0D66 - Digits, Mongolian 1810 -+Digits, Monospace 1D7F6 - Digits, Myanmar 1040 -+Digits, New Tai Lue 19D0 - Digits, Oriya 0B66 - Digits, Osmanya 104A0 -+Digits, Sans-serif 1D7E2 -+Digits, Sans-serif Bold 1D7EC - Digits, Subscript 2080 - Digits, Superscript 2070 - Digits, Tamil 0BE7 - Digits, Telugu 0C66 - Digits, Thai 0E50 - Digits, Tibetan 0F20 --Digits for Persian and Urdu, Eastern Arabic-Indic 06F0 --DIGRAPH KOTO, KATAKANA 30FF --DIGRAPH YORI, HIRAGANA 309F -+Digram Symbols, Yijing / I Ching Monogram and 268A -+Digraphs Matching Serbian Cyrillic Letters, Croatian 01C4 - Digraphs, Phonetic 02A3 - Digraphs, Yiddish 05F0 --Digraphs Matching Serbian Cyrillic Letters, Croatian 01C4 --Digram Symbols, Yijing Monogram and 268A --Digram Symbols, Tai Xuan Jing 1D301 - dijkstra choice 2AFE - dijkstra choice, n-ary 2AFF - DIMENSION ORIGIN 2331 -+Dingbat Arrows 2794 - Dingbat Circled Digits 2776 - Dingbats 2700 -+Dingbats Series 100, ITC Zapf 2700 - Dingbats, Arrow 2794 - Dingbats, Asterisk 2722 - Dingbats, Cross 2719 --Dingbats, Drop-Shadowed 274D -+Dingbats, Drop-shadowed 274D - Dingbats, Hazard 2620 - Dingbats, Heart 2763 - Dingbats, Miscellaneous 2600 -@@ -1176,77 +1391,90 @@ - Dingbats, Warning 2620 - Dingbats, Weather 2600 - Dingbats, Zapf 2700 --Dingbats Series 100, ITC Zapf 2700 - DIRECT CURRENT SYMBOL FORM TWO 2393 - direct product 2299 - direct sum 2295 -+Directional Format Characters 202A - DIRECTIONAL FORMATTING, POP 202C --Directional Formatting Controls 202A - DISCONTINUOUS UNDERLINE SYMBOL 2382 - discretionary hyphen 00AD - disjunction 2228 - DITTO MARK 3003 --DIVIDED BY HORIZONTAL BAR AND TOP HALF DIVIDED BY VERTICAL BAR, CIRCLE 29BA --DIVIDED BY HORIZONTAL RULE, LOZENGE 27E0 --DIVIDED BY VERTICAL BAR, CIRCLE DIVIDED BY HORIZONTAL BAR AND TOP HALF 29BA - DIVIDES 2223 --Divination Lore, Khmer Symbols for 17F0 -+Divination, Khmer Numeric Symbols for 17F0 - DIVISION SIGN 00F7 --DIVISION SIGN, CIRCLED 2A38 --DIVISION SIGN, CIRCLED ANTICLOCKWISE-ROTATED 29BC - Division Sign Operators, Multiplication and 2A2F -+DIVISION SIGN, CIRCLED 2A38 - DIVISION SLASH 2215 - DIVISION SLASH, CIRCLED 2298 - DIVISION TIMES 22C7 --DOES NOT DIVIDE WITH REVERSED NEGATION SLASH 2AEE -+DIVORCE SYMBOL 26AE -+DOES NOT CONTAIN AS MEMBER 220C -+DOES NOT DIVIDE 2224 -+DOES NOT EXIST, THERE 2204 - does not yield 22A3 - DOLLAR SIGN 0024 --DOMAIN ANTIRESTRICTION, Z NOTATION 2A64 -+domain restriction 25C1 - DONG SIGN 20AB - dot 002E --DOT, AEGEAN LINE SEPARATOR 10101 --dot, greek middle 00B7 --DOT, KATAKANA MIDDLE 30FB --DOT, MIDDLE 00B7 --DOT, SESAME FE45 --DOT, WHITE SESAME FE46 - DOT ABOVE 02D9 -+DOT ABOVE RIGHT, COMBINING 0358 - DOT ABOVE, COMBINING 0307 - dot above, double 0308 --DOT ABOVE, LATIN CAPITAL LETTER I WITH 0130 - DOT BELOW, COMBINING 0323 -+DOT BELOW, MYANMAR SIGN 1037 -+DOT LEADER, ONE 2024 -+dot leader, three 2026 -+DOT LEADER, TWO 2025 - DOT MINUS 2238 - DOT OPERATOR 22C5 - DOT OPERATOR, CIRCLED 2299 --DOT OPERATOR, N-ARY CIRCLED 2A00 - DOT OPERATOR, SQUARED 22A1 - DOT PLUS 2214 --DOTLESS BEH, ARABIC LETTER 066E -+DOT PUNCTUATION, FIVE 2059 -+DOT PUNCTUATION, FOUR 2058 -+DOT PUNCTUATION, THREE 2056 -+DOT PUNCTUATION, TWO 205A -+dot, greek middle 00B7 -+DOT, KATAKANA MIDDLE 30FB -+dot, latin capital letter i 0130 -+DOT, MIDDLE 00B7 -+DOT, SESAME FE45 -+DOT, VERTICAL LINE WITH MIDDLE 237F -+DOT, WHITE SESAME FE46 - DOTLESS I, LATIN SMALL LETTER 0131 --DOTLESS QAF, ARABIC LETTER 066F -+DOTLESS J WITH STROKE, LATIN SMALL LETTER 025F -+DOTLESS J, LATIN SMALL LETTER 0237 -+Dotless Mathematical Symbols 1D6A4 - DOTS ABOVE, COMBINING FOUR 20DC - DOTS ABOVE, COMBINING THREE 20DB -+DOTS, MONGOLIAN FOUR 1805 -+DOTS, VERTICAL FOUR 205E - DOTTED CIRCLE 25CC -+DOTTED CROSS 205C - DOTTED FENCE 2999 -+Dotted Mathematical Operators 2234 - DOUBLE ACUTE ACCENT 02DD - DOUBLE ACUTE ACCENT, COMBINING 030B - DOUBLE ANGLE BRACKET, LEFT 300A -+DOUBLE ANGLE BRACKET, MATHEMATICAL LEFT 27EA -+DOUBLE ANGLE BRACKET, MATHEMATICAL RIGHT 27EB -+DOUBLE ANGLE BRACKET, RIGHT 300B - 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 CIRCLE, MULTIPLICATION SIGN IN 2A37 -+Double Arrows 21CD -+DOUBLE BREVE BELOW, COMBINING 035C -+DOUBLE BREVE, COMBINING 035D - Double Circled Numbers 24F5 --DOUBLE COLON EQUAL 2A74 - double comma quotation mark 201D - double comma quotation mark, low 201E - DOUBLE DAGGER 2021 - DOUBLE DANDA, DEVANAGARI 0965 - double derivative 0308 --Double Diacritics 0360 -+Double Diacritics 035C - double dot above 0308 --DOUBLE DOWN TACK 2AEA - DOUBLE EXCLAMATION MARK 203C - DOUBLE GRAVE ACCENT, COMBINING 030F - DOUBLE HIGH-REVERSED-9 QUOTATION MARK 201F -@@ -1254,133 +1482,137 @@ - DOUBLE INTEGRAL 222C - DOUBLE INTERSECTION 22D2 - DOUBLE INVERTED BREVE, COMBINING 0361 --DOUBLE LEFT TURNSTILE, DOUBLE VERTICAL BAR 2AE5 --DOUBLE LEFT TURNSTILE, VERTICAL BAR 2AE4 - DOUBLE LOGICAL AND 2A53 - DOUBLE LOGICAL OR 2A54 - DOUBLE LOW LINE 2017 - DOUBLE LOW LINE, COMBINING 0333 - DOUBLE LOW-9 QUOTATION MARK 201E --DOUBLE NESTED GREATER-THAN 2AA2 --DOUBLE NESTED LESS-THAN 2AA1 --DOUBLE NESTED LESS-THAN WITH UNDERBAR 2AA3 --double obelisk 2021 --DOUBLE OVERBAR, LOGICAL AND WITH 2A5E --DOUBLE OVERBAR, LOGICAL OR WITH 2A62 -+DOUBLE MACRON BELOW, COMBINING 035F -+DOUBLE MACRON, COMBINING 035E -+Double Operators 22D0 - DOUBLE OVERLINE, COMBINING 033F - double pipe 01C1 - DOUBLE PLUS 29FA - DOUBLE PRECEDES 2ABB - DOUBLE PRIME 2033 --DOUBLE PRIME, MODIFIER LETTER 02BA --DOUBLE PRIME, REVERSED 2036 - DOUBLE PRIME QUOTATION MARK 301E - DOUBLE PRIME QUOTATION MARK, LOW 301F - DOUBLE PRIME QUOTATION MARK, REVERSED 301D -+DOUBLE PRIME, MODIFIER LETTER 02BA -+DOUBLE PRIME, REVERSED 2036 -+Double Punctuation for Vertical Text 2047 - DOUBLE PUNCTUATION, PHILIPPINE 1736 --Double punctuation for vertical text 2047 - DOUBLE QUESTION MARK 2047 - DOUBLE QUOTATION MARK, LEFT 201C - DOUBLE QUOTATION MARK, RIGHT 201D - double reversed comma quotation mark 201F - DOUBLE RIGHTWARDS ARROW BELOW, COMBINING 0362 -+DOUBLE RING BELOW, COMBINING 035A -+double slash overlay, long 20EB - DOUBLE SOLIDUS OPERATOR 2AFD --DOUBLE SQUARE INTERSECTION 2A4E --DOUBLE SQUARE UNION 2A4F --DOUBLE STROKE, INTEGRAL WITH 2A0E --DOUBLE STROKE NOT SIGN 2AEC --DOUBLE STROKE NOT SIGN, REVERSED 2AED -+DOUBLE SOLIDUS OVERLAY, COMBINING LONG 20EB - DOUBLE SUBSET 22D0 - DOUBLE SUCCEEDS 2ABC - DOUBLE SUPERSET 22D1 - DOUBLE TILDE, COMBINING 0360 --DOUBLE TILDE LEFT HALF, COMBINING FE22 - double turned comma quotation mark 201C --DOUBLE TURNSTILE, LEFT AND RIGHT 27DA --DOUBLE UNDERBAR, LOGICAL AND WITH 2A60 --DOUBLE UNDERBAR, LOGICAL OR WITH 2A63 - double underline 0333 - double underscore 0333 - double underscore, spacing 2017 - DOUBLE UNION 22D3 --DOUBLE UP TACK 2AEB --DOUBLE VERTICAL, LONG DASH FROM LEFT MEMBER OF 2AE6 --DOUBLE VERTICAL BAR DOUBLE LEFT TURNSTILE 2AE5 --DOUBLE VERTICAL BAR LEFT TURNSTILE 2AE3 - DOUBLE VERTICAL LINE 2016 - DOUBLE VERTICAL LINE ABOVE, COMBINING 030E - DOUBLE VERTICAL LINE BELOW, COMBINING 0348 --DOUBLE VERTICAL STROKE, RIGHTWARDS ARROW WITH TAIL WITH 2915 --DOUBLE VERTICAL STROKE, TRIPLE HORIZONTAL BAR WITH 2A68 - DOUBLE VERTICAL STROKE OVERLAY, COMBINING 20E6 - DOUBLE WAVY OVERLINE FE4C --DOUBLE WIGGLY FENCE, LEFT 29DA --DOUBLE WIGGLY FENCE, RIGHT 29DB - double-barred pipe 01C2 --DOUBLE-ENDED MULTIMAP 29DF --DOUBLE-STRUCK CAPITAL C 2102 --DOUBLE-STRUCK CAPITAL H 210D --DOUBLE-STRUCK CAPITAL N 2115 --DOUBLE-STRUCK CAPITAL P 2119 --DOUBLE-STRUCK CAPITAL Q 211A --DOUBLE-STRUCK CAPITAL R 211D --DOUBLE-STRUCK CAPITAL Z 2124 -+Double-struck Digits 1D7D8 -+Double-struck Greek Letters 213C - Double-struck Greek Letters 213D --Double-Struck Italic Mathematical Symbols 2145 --DOUBLE-STRUCK N-ARY SUMMATION 2140 --down, page 21DF -+Double-struck Italic Mathematical Symbols 2145 -+Double-struck Mathematical Symbols 1D538 -+DOWN ARROWHEAD 2304 -+DOWN POINTING INDEX, WHITE 261F -+DOWN RIGHT DIAGONAL ELLIPSIS 22F1 - DOWN TACK 22A4 - DOWN TACK BELOW, COMBINING 031E --DOWN-POINTING TRIANGLE WITH LEFT HALF BLACK 29E8 --DOWN-POINTING TRIANGLE WITH RIGHT HALF BLACK 29E9 -+down, page 21DF -+downstile, apl 230A -+DOWNWARDS ARROW 2193 -+DPRK Compatibility Ideographs FA70 - DRACHMA SIGN 20AF - Drafting Symbols 232D - dram 0292 - drop 264F --Duplicates from Big 5 FA0C -+Drop-shadowed Dingbats 274D -+Duplicate Characters from Big 5 FA0C -+Duplicate Characters from CNS�11643-1992 2F800 -+E WITH ACUTE, LATIN CAPITAL LETTER 00C9 -+E WITH ACUTE, LATIN SMALL LETTER 00E9 -+E WITH BREVE, LATIN SMALL LETTER 0115 -+E WITH CARON, LATIN SMALL LETTER 011B -+E WITH CEDILLA, LATIN SMALL LETTER 0229 -+E WITH CIRCUMFLEX BELOW, LATIN SMALL LETTER 1E19 -+E WITH CIRCUMFLEX, LATIN CAPITAL LETTER 00CA -+E WITH CIRCUMFLEX, LATIN SMALL LETTER 00EA -+E WITH DIAERESIS, LATIN CAPITAL LETTER 00CB -+E WITH DIAERESIS, LATIN SMALL LETTER 00EB -+E WITH DOT ABOVE, LATIN SMALL LETTER 0117 -+E WITH DOT BELOW, LATIN SMALL LETTER 1EB9 -+E WITH DOUBLE GRAVE, LATIN SMALL LETTER 0205 -+E WITH GRAVE, LATIN CAPITAL LETTER 00C8 -+E WITH GRAVE, LATIN SMALL LETTER 00E8 -+E WITH HOOK ABOVE, LATIN SMALL LETTER 1EBB -+E WITH HOOK, LATIN SMALL LETTER REVERSED OPEN 025D -+E WITH INVERTED BREVE, LATIN SMALL LETTER 0207 -+E WITH MACRON, LATIN SMALL LETTER 0113 -+E WITH OGONEK, LATIN SMALL LETTER 0119 -+E WITH STROKE, LATIN CAPITAL LETTER 0246 -+E WITH STROKE, LATIN SMALL LETTER 0247 -+E WITH TILDE BELOW, LATIN SMALL LETTER 1E1B -+E WITH TILDE, LATIN SMALL LETTER 1EBD - E, COMBINING LATIN SMALL LETTER 0364 - E, DOUBLE-STRUCK ITALIC SMALL 2147 - E, LATIN CAPITAL LETTER OPEN 0190 - E, LATIN CAPITAL LETTER REVERSED 018E - e, latin capital letter turned 018E -+E, LATIN LETTER SMALL CAPITAL 1D07 - E, LATIN SMALL LETTER CLOSED OPEN 029A - E, LATIN SMALL LETTER CLOSED REVERSED OPEN 025E -+e, latin small letter o 0153 - 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, LATIN SMALL LETTER TURNED OPEN 1D08 - E, SCRIPT CAPITAL 2130 - E, SCRIPT SMALL 212F - EARTH 2641 --Eastern Arabic-Indic Digits for Persian and Urdu 06F0 --ecu 20A0 -+EARTH GROUND 23DA -+EAST SYRIAC CROSS 2671 -+Eastern Arabic-Indic Digits 06F0 -+Editorial Symbols, New Testament 2E00 -+egressive airflow 2191 - EIGHTH NOTE 266A - EIGHTH NOTES, BEAMED 266B - Eighths, Fractions 215B --EJECT SYMBOL 23CF -+eject media 23CF - EK ONKAR, GURMUKHI 0A74 - el salvadorian currency 20A1 - ELECTRIC ARROW 2301 --electro-magnetic force, emf 2130 -+ELECTRICAL INTERSECTION 23E7 - electrolysis 21AF --Electrotechnical Symbols from IR 181 238D --element, unique 2129 -+electromotive force 2130 -+Electrotechnical Symbols 238D - ELEMENT OF 2208 - ELEMENT OF, NOT AN 2209 - ELEMENT OF, SMALL 220A --ELEMENT OF OPENING DOWNWARDS 2AD9 --ELEMENT OF OPENING UPWARDS 27D2 --ELEMENT OF WITH DOT ABOVE 22F5 --ELEMENT OF WITH LONG HORIZONTAL STROKE 22F2 --ELEMENT OF WITH OVERBAR 22F6 --ELEMENT OF WITH OVERBAR, SMALL 22F7 --ELEMENT OF WITH TWO HORIZONTAL STROKES 22F9 --ELEMENT OF WITH UNDERBAR 22F8 --ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE 22F3 --ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE, SMALL 22F4 --ell, mathematical symbol 2113 -+element, unique 2129 -+ELLIPSIS, DOWN RIGHT DIAGONAL 22F1 - ELLIPSIS, HORIZONTAL 2026 -+ELLIPSIS, LAO 0EAF - ELLIPSIS, MIDLINE HORIZONTAL 22EF -+ELLIPSIS, MONGOLIAN 1801 - ELLIPSIS, UP RIGHT DIAGONAL 22F0 - ELLIPSIS, VERTICAL 22EE - elliptic function, weierstrass 2118 -@@ -1399,9 +1631,10 @@ - EN QUAD 2000 - EN SPACE 2002 - Enclosed Alphanumerics 2460 --Enclosed CJK Letters and Ideographs 3200 --ENCLOSING CIRCLE, COMBINING 20DD -+Enclosed CJK Letters and Months 3200 -+Enclosed Mathematical Operators 2295 - ENCLOSING CIRCLE BACKSLASH, COMBINING 20E0 -+ENCLOSING CIRCLE, COMBINING 20DD - Enclosing Diacritics 20DD - ENCLOSING DIAMOND, COMBINING 20DF - ENCLOSING KEYCAP, COMBINING 20E3 -@@ -1409,26 +1642,33 @@ - ENCLOSING SQUARE, COMBINING 20DE - ENCLOSING UPWARD POINTING TRIANGLE, COMBINING 20E4 - end 21F2 --end of guarded area 0097 --end of medium 0019 --end of medium, graphic for 237F -+END OF GUARDED AREA 0097 -+end of line 000A -+END OF MEDIUM 0019 -+end of medium, symbol for 237F - END OF MEDIUM, SYMBOL FOR 2419 - END OF PROOF 220E --end of selected area 0087 --end of text 0003 -+END OF SELECTED AREA 0087 -+END OF TEXT 0003 - END OF TEXT, SYMBOL FOR 2403 --end of transmission 0004 --end of transmission, graphic for 2301 --END OF TRANSMISSION, SYMBOL FOR 2404 --end of transmission block 0017 -+END OF TRANSMISSION 0004 -+END OF TRANSMISSION BLOCK 0017 - END OF TRANSMISSION BLOCK, SYMBOL FOR 2417 -+end of transmission symbol 2301 -+END OF TRANSMISSION, SYMBOL FOR 2404 - ENG, LATIN SMALL LETTER 014B -+enn, tamil 0BFA - enotikon, greek 203F --enquiry 0005 -+ENQUIRY 0005 - ENQUIRY, SYMBOL FOR 2405 - enter key 2324 - ENTER SYMBOL 2386 -+entity ⧜, isotech 29DC - ENVELOPE 2709 -+eol 000A -+epidaurean acrophonic symbol three 205D -+EPSILON SYMBOL, GREEK LUNATE 03F5 -+EPSILON SYMBOL, GREEK REVERSED LUNATE 03F6 - epsilon, latin capital letter 0190 - epsilon, latin small letter 025B - epsilon, latin small letter closed 029A -@@ -1436,180 +1676,107 @@ - epsilon, reversed straight 03F6 - epsilon, reversed straight 220D - epsilon, straight 03F5 --epsilon, straight 220A --EPSILON SYMBOL, GREEK LUNATE 03F5 --EPSILON SYMBOL, GREEK REVERSED LUNATE 03F6 --EQUAL, DOUBLE COLON 2A74 --EQUAL, GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE 2A92 --EQUAL, GREATER-THAN ABOVE SIMILAR OR 2A8E --EQUAL, GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED 2A94 --EQUAL, GREATER-THAN CLOSED BY CURVE ABOVE SLANTED 2AA9 --EQUAL, LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE 2A91 --EQUAL, LESS-THAN ABOVE SIMILAR OR 2A8D --EQUAL, LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED 2A93 --EQUAL, LESS-THAN CLOSED BY CURVE ABOVE SLANTED 2AA8 --EQUAL ABOVE GREATER-THAN, LESS-THAN ABOVE DOUBLE-LINE 2A8B --EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL, LESS-THAN ABOVE SLANTED 2A93 --EQUAL ABOVE LESS-THAN, GREATER-THAN ABOVE DOUBLE-LINE 2A8C --EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL, GREATER-THAN ABOVE SLANTED 2A94 --EQUAL OR EQUAL TO, APPROXIMATELY 2A70 -+EQUAL TO ABOVE, COMBINING ALMOST 034C -+equal to by definition 225C -+EQUAL TO BY DEFINITION 225D - EQUAL TO, ALL 224C - EQUAL TO, ALMOST 2248 - EQUAL TO, APPROXIMATELY 2245 - equal to, approximately 2257 --EQUAL TO, APPROXIMATELY EQUAL OR 2A70 - EQUAL TO, ASYMPTOTICALLY 2243 --EQUAL TO, CLOSED SUBSET OR 2AD1 --EQUAL TO, CLOSED SUPERSET OR 2AD2 - EQUAL TO, DELTA 225C --EQUAL TO, DOUBLE-LINE SLANTED GREATER-THAN OR 2AFA --EQUAL TO, DOUBLE-LINE SLANTED LESS-THAN OR 2AF9 - EQUAL TO, GEOMETRICALLY 2251 --EQUAL TO, GREATER-THAN AND SINGLE-LINE NOT 2A88 - EQUAL TO, GREATER-THAN OR 2265 --EQUAL TO, GREATER-THAN OR SLANTED 2A7E --EQUAL TO, LARGER THAN OR 2AAD --EQUAL TO, LESS-THAN AND SINGLE-LINE NOT 2A87 - EQUAL TO, LESS-THAN OR 2264 --EQUAL TO, LESS-THAN OR SLANTED 2A7D - EQUAL TO, NOT 2260 --EQUAL TO, PRECEDES ABOVE ALMOST 2AB7 --EQUAL TO, PRECEDES ABOVE NOT 2AB5 --EQUAL TO, PRECEDES ABOVE NOT ALMOST 2AB9 --EQUAL TO, PRECEDES ABOVE SINGLE-LINE NOT 2AB1 - EQUAL TO, QUESTIONED 225F - EQUAL TO, RING 2257 - EQUAL TO, RING IN 2256 --EQUAL TO, SMALLER THAN OR 2AAC --EQUAL TO, SUBSET OF ABOVE ALMOST 2AC9 --EQUAL TO, SUBSET OF ABOVE NOT 2ACB --EQUAL TO, SUCCEEDS ABOVE ALMOST 2AB8 --EQUAL TO, SUCCEEDS ABOVE NOT 2AB6 --EQUAL TO, SUCCEEDS ABOVE NOT ALMOST 2ABA --EQUAL TO, SUCCEEDS ABOVE SINGLE-LINE NOT 2AB2 --EQUAL TO, SUPERSET OF ABOVE ALMOST 2ACA --EQUAL TO, SUPERSET OF ABOVE NOT 2ACC --EQUAL TO ABOVE, COMBINING ALMOST 034C --equal to by definition 225C --EQUAL TO BY DEFINITION 225D --EQUAL TO OR GREATER-THAN, DOUBLE-LINE 2A9A --EQUAL TO OR GREATER-THAN, DOUBLE-LINE SLANTED 2A9C --EQUAL TO OR GREATER-THAN, SLANTED 2A96 --EQUAL TO OR GREATER-THAN WITH DOT INSIDE, SLANTED 2A98 --EQUAL TO OR LESS-THAN, DOUBLE-LINE 2A99 --EQUAL TO OR LESS-THAN, DOUBLE-LINE SLANTED 2A9B --EQUAL TO OR LESS-THAN, SLANTED 2A95 --EQUAL TO OR LESS-THAN WITH DOT INSIDE, SLANTED 2A97 --EQUAL TO WITH CIRCUMFLEX ACCENT, ALMOST 2A6F --EQUAL TO WITH DOT ABOVE, GREATER-THAN OR SLANTED 2A82 --EQUAL TO WITH DOT ABOVE, LESS-THAN OR SLANTED 2A81 --EQUAL TO WITH DOT ABOVE, SUBSET OF OR 2AC3 --EQUAL TO WITH DOT ABOVE, SUPERSET OF OR 2AC4 --EQUAL TO WITH DOT ABOVE LEFT, GREATER-THAN OR SLANTED 2A84 --EQUAL TO WITH DOT ABOVE RIGHT, LESS-THAN OR SLANTED 2A83 --EQUAL TO WITH DOT INSIDE, GREATER-THAN OR SLANTED 2A80 --EQUAL TO WITH DOT INSIDE, LESS-THAN OR SLANTED 2A7F --EQUALS, CIRCLED 229C --EQUALS, REVERSED TILDE 22CD --EQUALS, STAR 225B -+Equality and Inequality Signs 2243 -+Equality and Inequality Signs 22D5 - EQUALS COLON 2255 - EQUALS SIGN 003D --EQUALS SIGN, PLUS SIGN ABOVE 2A72 --EQUALS SIGN, PRECEDES ABOVE 2AB3 --EQUALS SIGN, PRECEDES ABOVE SINGLE-LINE 2AAF --EQUALS SIGN, SIMILAR ABOVE GREATER-THAN ABOVE 2AA0 --EQUALS SIGN, SIMILAR ABOVE LESS-THAN ABOVE 2A9F --EQUALS SIGN, SUBSCRIPT 208C --EQUALS SIGN, SUBSET OF ABOVE 2AC5 --EQUALS SIGN, SUCCEEDS ABOVE 2AB4 --EQUALS SIGN, SUCCEEDS ABOVE SINGLE-LINE 2AB0 --EQUALS SIGN, SUPERSCRIPT 207C --EQUALS SIGN, SUPERSET OF ABOVE 2AC6 --EQUALS SIGN ABOVE PLUS SIGN 2A71 --EQUALS SIGN ABOVE TILDE OPERATOR 2A73 --EQUALS SIGN AND SLANTED PARALLEL 29E3 --EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE 29E4 - EQUALS SIGN BELOW, COMBINING 0347 --EQUALS SIGN WITH BUMPY ABOVE 2AAE --EQUALS SIGN WITH DOT BELOW 2A66 --EQUALS SIGN WITH TWO DOTS ABOVE AND TWO DOTS BELOW 2A77 --EQUALS SIGNS, THREE CONSECUTIVE 2A76 --EQUALS SIGNS, TWO CONSECUTIVE 2A75 --EQUALS WITH ASTERISK 2A6E -+EQUALS, CIRCLED 229C -+EQUALS, COLON 2254 -+equals, nearly 2252 -+EQUALS, REVERSED TILDE 22CD -+EQUALS, STAR 225B - equiangular 225C - EQUIANGULAR TO 225A --equivalent, tautological 29E6 - EQUIVALENT TO 224D - EQUIVALENT TO, GEOMETRICALLY 224E - EQUIVALENT TO, STRICTLY 2263 --EQUIVALENT WITH FOUR DOTS ABOVE 2A78 -+equivalent, tautological 29E6 - Era Names, Japanese 337B - ERASE TO THE LEFT 232B - ERASE TO THE RIGHT 2326 - error 212F - Error Bar Symbols 29EE --escape 001B --escape, data link 0010 -+ESCAPE 001B -+escape 238B -+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 - ESH, LATIN SMALL LETTER SQUAT REVERSED 0285 --ESH LOOP, LATIN LETTER REVERSED 01AA - ESTIMATED SYMBOL 212E - ESTIMATES 2259 - eszett 00DF - ET, TIRONIAN SIGN 204A -+ETH, LATIN CAPITAL LETTER 00D0 -+ETH, LATIN LETTER SMALL CAPITAL 1D06 - ETH, LATIN SMALL LETTER 00F0 - ethel 0153 --Ethiopic 1200 - ETHIOPIC COLON 1365 - ETHIOPIC COMMA 1363 - Ethiopic Digits 1369 -+Ethiopic Extended 2D80 - ETHIOPIC FULL STOP 1362 -+Ethiopic Numbers 1369 -+ETHIOPIC PARAGRAPH SEPARATOR 1368 -+ETHIOPIC PREFACE COLON 1366 -+Ethiopic Punctuation 1361 - ETHIOPIC QUESTION MARK 1367 - ETHIOPIC SEMICOLON 1364 -+Ethiopic Supplement 1380 -+Ethiopic Syllables 1200 - ETHIOPIC WORDSPACE 1361 - EULER CONSTANT 2107 -+euro european currency 20AC - EURO SIGN 20AC - European Latin 0100 - european paragraph sign 00A7 - european section sign 00B6 - EXCESS 2239 - EXCLAMATION MARK 0021 -+EXCLAMATION MARK ORNAMENT, HEAVY 2762 - EXCLAMATION MARK, ARMENIAN 055C - EXCLAMATION MARK, DOUBLE 203C - EXCLAMATION MARK, INVERTED 00A1 - exclamation mark, latin letter 01C3 -+EXCLAMATION MARK, LIMBU 1944 - EXCLAMATION MARK, QUESTION 2048 --EXCLAMATION MARK ORNAMENT, HEAVY 2762 - EXCLAMATION QUESTION MARK 2049 -+EXIST, THERE DOES NOT 2204 -+existential quantifier 2203 - EXISTS, THERE 2203 --Extended Additional, Latin 1E00 --Extended Arabic 0671 --Extended Cyrillic 048C --Extended for Minnan and Hakka, Chinese Bopomofo 31A0 --Extended Greek 1F00 --Extended-A, Latin 0100 --Extended-B, Latin 0180 --extension, arrows 23AF --EXTENSION, HORIZONTAL LINE 23AF --EXTENSION, INTEGRAL 23AE --EXTENSION, VERTICAL LINE 23D0 --Extension A, CJK Unified Ideographs 3400 --Extensions, Cyrillic 0450 --Extensions, IPA 0250 --Extensions, Katakana Phonetic 31F0 --Extensions, Special Characters 23AE --Extensions for Sanskrit and Tibetan, Mongolian 1880 --Extensions for Vietnamese, Latin 1EA0 -+exponent, natural 212F -+Extensions for Ainu, Katakana 31F0 -+EZH REVERSED, LATIN SMALL LETTER 01B9 -+EZH WITH CARON, LATIN SMALL LETTER 01EF - EZH, LATIN CAPITAL LETTER 01B7 -+EZH, LATIN LETTER SMALL CAPITAL 1D23 - EZH, LATIN SMALL LETTER 0292 --EZH REVERSED, LATIN SMALL LETTER 01B9 -+F WITH DOT ABOVE, LATIN SMALL LETTER 1E1F -+F WITH HOOK, LATIN SMALL LETTER 0192 -+f, latin small letter script 0192 - F, SCRIPT CAPITAL 2131 - F, TURNED CAPITAL 2132 --F WITH HOOK, LATIN SMALL LETTER 0192 -+F, TURNED SMALL 214E - FACE, BLACK SMILING 263B - FACE, POSTAL MARK 3020 - FACE, WHITE FROWNING 2639 -@@ -1617,229 +1784,293 @@ - FACSIMILE SIGN 213B - factorial 0021 - FAHRENHEIT, DEGREE 2109 --FALLING DIAGONAL SLASH, SQUARED 29C5 --FALLING DOTS, MINUS SIGN WITH 2A2B -+fast cursor down 21A1 -+fast cursor left 219E -+fast cursor right 21A0 -+fast cursor up 219F - feet 2032 - FEMALE SIGN 2640 - FEMININE ORDINAL INDICATOR 00AA - FENCE, DOTTED 2999 --FENCE, LEFT DOUBLE WIGGLY 29DA --FENCE, LEFT WIGGLY 29D8 --FENCE, RIGHT DOUBLE WIGGLY 29DB --FENCE, RIGHT WIGGLY 29D9 - Fences 2999 --Fences 29D8 -+Fences, Wiggly 29D8 -+FERMATA, COMBINING 0352 -+ff 000C - Fifths, Fractions 2155 - FIGURE DASH 2012 - FIGURE SPACE 2007 - file separator 001C - FILE SEPARATOR, SYMBOL FOR 241C -+FILL SPACE, IDEOGRAPHIC HALF 303F -+FILLER, HANGUL 3164 - Finger Dingbats, Pointing Index 261A --finite function, z notation 20E6 --finite function, z notation 21FB --finite injection, z notation 2915 --FINITE PART INTEGRAL 2A0D --finite relation, z notation 21FC --finite surjection, z notation 2901 --finite surjective injection, z notation 2918 -+finite function 21FB -+finite function diacritic 20E6 -+finite injection 2915 -+finite relation 21FC -+finite surjection 2901 -+finite surjective injection 2918 - FIRST QUARTER MOON 263D --first transfinite cardinal (countable) 2135 - Fish Tails 297C - FISHEYE 25C9 - fist 261E --FIVE, LATIN SMALL LETTER TONE 01BD --FIVE POINTED STAR, ARABIC 066D -+FIVE DOT PUNCTUATION 2059 - FLAG, BLACK 2691 -+FLAG, WHITE 2690 - FLAT SIGN, MUSIC 266D -+FLATNESS 23E5 -+FLEUR-DE-LIS 269C - FLOOR, LEFT 230A -+FLOOR, RIGHT 230B - FLORAL HEART BULLET, REVERSED ROTATED 2619 - florin currency symbol 0192 - folder 0192 --FOOT, SQUARE 23CD --FOONOTE MARKER, ARABIC 0602 -+FONGMAN, THAI CHARACTER 0E4F - FOR ALL 2200 - FORCES 22A9 --FORKING 2ADC -+Forfeda Supplement, Ogham 1695 - Forks 2AD9 - Form and Chart Components 2500 --form feed 000C -+FORM FEED 000C - form feed 21A1 - FORM FEED, SYMBOL FOR 240C --Format Control, Syriac 070F -+Format Characters 200C -+Format Characters, Directional 202A - Format Controls, Mongolian 180B - FORMATTING, POP DIRECTIONAL 202C --Formatting Characters 200C --Formatting Characters 2028 --Formatting Controls, Bidirectional 202A -+forward arrow indicator 25BB - forward difference 2206 -+FOUR DOT MARK 205B -+FOUR DOT PUNCTUATION 2058 - FOUR DOTS ABOVE, COMBINING 20DC -+FOUR DOTS, MONGOLIAN 1805 -+FOUR DOTS, VERTICAL 205E - FOUR-PER-EM SPACE 2005 - fourier transform 2131 - fourth derivative 20DC - FOURTH ROOT 221C --fourth transfinite cardinal 2138 -+fourth tone, mandarin chinese 02CB - Fourths, Fractions 00BC - FRACTION NUMERATOR ONE 215F - FRACTION ONE HALF, VULGAR 00BD - FRACTION ONE QUARTER, VULGAR 00BC - FRACTION SLASH 2044 - FRACTION THREE QUARTERS, VULGAR 00BE --Fractions 2153 --FRAGMENT, ARABIC TAIL FE73 -+Fractions Eighths 215B -+Fractions Fifths 2155 -+Fractions Fourths 00BC -+Fractions Quarters 00BC -+Fractions Sixths 2159 -+Fractions Thirds 2153 -+Fractions, Vulgar 2153 -+Fraktur Mathematical Symbols 1D504 -+Fraktur Mathematical Symbols, Bold 1D56C - framus, white 29D6 - FRANC SIGN, FRENCH 20A3 - FRICATIVE, LATIN LETTER PHARYNGEAL VOICED 0295 - FROWN 2322 - FROWNING FACE, WHITE 2639 - FULL BLOCK 2588 --FULL OUTER JOIN 27D7 - FULL STOP 002E - FULL STOP, ARABIC 06D4 - FULL STOP, ARMENIAN 0589 -+FULL STOP, CANADIAN SYLLABICS 166E - FULL STOP, ETHIOPIC 1362 - full stop, georgian 0589 - FULL STOP, IDEOGRAPHIC 3002 - FULL STOP, MONGOLIAN 1803 -+FULL STOP, MONGOLIAN MANCHU 1809 - Fullwidth ASCII Variants FF01 --Fullwidth Brackets FF5F - Fullwidth Forms, Halfwidth and FF00 - Fullwidth Symbol Variants FFE0 --FUNCTION, CIRCULATION 2A10 --function, gamma 0393 --function, z notation finite 20E6 --function, z notation finite 21FB --function, z notation partial 21F8 - FUNCTION APPLICATION 2061 - function symbol 0192 --fvs 180B -+function, bernoulli 212C -+function, composite 2218 -+function, finite 21FB -+function, gamma 0393 -+function, partial 21F8 -+function, total 2192 -+function, weierstrass elliptic 2118 -+Functional Symbols, APL 2336 -+FUNERAL URN 26B1 -+FUSE 23DB -+fvs1 180B -+G WITH ACUTE, LATIN SMALL LETTER 01F5 -+G WITH BREVE, LATIN SMALL LETTER 011F -+G WITH CARON, LATIN SMALL LETTER 01E7 -+G WITH CEDILLA, LATIN SMALL LETTER 0123 -+G WITH CIRCUMFLEX, LATIN SMALL LETTER 011D -+G WITH DOT ABOVE, LATIN SMALL LETTER 0121 -+G WITH HOOK, LATIN CAPITAL LETTER 0193 -+G WITH HOOK, LATIN LETTER SMALL CAPITAL 029B -+G WITH HOOK, LATIN SMALL LETTER 0260 -+G WITH MACRON, LATIN SMALL LETTER 1E21 -+G WITH STROKE, LATIN SMALL LETTER 01E5 - G, LATIN LETTER SMALL CAPITAL 0262 - G, LATIN SMALL LETTER SCRIPT 0261 - G, SCRIPT SMALL 210A - G, TURNED SANS-SERIF CAPITAL 2141 - game 2141 -+gamma function 0393 - GAMMA, DOUBLE-STRUCK CAPITAL 213E - GAMMA, DOUBLE-STRUCK SMALL 213D - GAMMA, LATIN CAPITAL LETTER 0194 - GAMMA, LATIN SMALL LETTER 0263 - gamma, latin small letter baby 0264 - GAMMA, MODIFIER LETTER SMALL 02E0 --gamma function 0393 --GB 2312 (Chinese), Based on 3100 -+GEAR 2699 - GEMINI 264A -+Gender Symbols 26A2 -+Genealogical Symbols 26AD - General Punctuation 2000 - General Scripts Area 0000 --GENERIC MATERIALS, RECYCLING SYMBOL FOR 267A --Generic punctuation for Philippine scripts 1735 -+General Scripts Area, Supplementary 10000 -+generalized intersection 22C2 -+generalized union 22C3 - GEOMETRIC PROPORTION 223A - Geometric Shapes 25A0 - GEOMETRICALLY EQUAL TO 2251 - GEOMETRICALLY EQUIVALENT TO 224E - Georgian 10A0 -+Georgian Alphabet 10D0 - Georgian Capital Letters 10A0 - georgian comma 00B7 -+Georgian Extensions 10F1 - georgian full stop 0589 -+Georgian Khutsuri 10A0 -+Georgian Mkhedruli 10D0 - GEORGIAN PARAGRAPH SEPARATOR 10FB - Georgian Small Letters 10D0 --german mark 2133 -+Georgian Supplement 2D00 -+german mark pre-wwii 2133 - GERMAN PENNY SIGN 20B0 - GETA MARK 3013 -+ghana currency 20B5 - GIMEL SYMBOL 2137 -+Glagolitic 2C00 - GLEICH STARK 29E6 - glottal stop 02BC -+GLOTTAL STOP, LATIN CAPITAL LETTER 0241 - GLOTTAL STOP, LATIN LETTER 0294 - GLOTTAL STOP, LATIN LETTER INVERTED 0296 - glottal stop, latin letter reversed 0295 -+GLOTTAL STOP, LATIN SMALL LETTER 0242 - GLOTTAL STOP, MODIFIER LETTER 02C0 - GLOTTAL STOP, MODIFIER LETTER REVERSED 02C1 - GLOTTAL STOP, MODIFIER LETTER SMALL REVERSED 02E4 - Go Markers 2686 --Golden Number Runes 16EE -+Golden Numbers, Runic 16EE -+Gothic 10330 - GRAPHEME JOINER, COMBINING 034F - Graphic Characters, Terminal 23B7 - Graphic Characters, Terminal 2596 - Graphic Pictures for Control Codes 2400 --Graphics, Control Code 25F0 --Graphics, Scan Lines For Terminal 23BA --Graphics for Control Codes 237B --grave, spacing 0060 -+Graphics for Control Codes 237D -+Graphics, Quadrant Control Code 25F0 - GRAVE ACCENT 0060 -+GRAVE ACCENT BELOW, COMBINING 0316 - GRAVE ACCENT, COMBINING 0300 - GRAVE ACCENT, COMBINING DOUBLE 030F --GRAVE ACCENT, DEVANAGARI 0953 - GRAVE ACCENT, MODIFIER LETTER 02CB - GRAVE ACCENT, MODIFIER LETTER LOW 02CE -+grave accent, spacing 0060 - grave accent, swedish 02DF --GRAVE ACCENT BELOW, COMBINING 0316 - GRAVE TONE MARK, COMBINING 0340 --GREATER-THAN, CIRCLED 29C1 --GREATER-THAN, DOUBLE NESTED 2AA2 --GREATER-THAN, DOUBLE-LINE EQUAL TO OR 2A9A --GREATER-THAN, DOUBLE-LINE SLANTED EQUAL TO OR 2A9C --GREATER-THAN, LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE 2A8B --GREATER-THAN, LESS-THAN ABOVE SIMILAR ABOVE 2A8F --GREATER-THAN, MUCH 226B --GREATER-THAN, SIMILAR OR 2A9E --GREATER-THAN, SLANTED EQUAL TO OR 2A96 --GREATER-THAN, TRIPLE NESTED 2AF8 --GREATER-THAN, VERY MUCH 22D9 --GREATER-THAN ABOVE DOUBLE-LINE EQUAL, LESS-THAN ABOVE 2A91 --GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN 2A8C --GREATER-THAN ABOVE EQUALS SIGN, SIMILAR ABOVE 2AA0 --GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE EQUAL 2A92 --GREATER-THAN ABOVE SIMILAR ABOVE LESS-THAN 2A90 --GREATER-THAN ABOVE SIMILAR OR EQUAL 2A8E --GREATER-THAN ABOVE SLANTED EQUAL, LESS-THAN ABOVE SLANTED EQUAL ABOVE 2A93 --GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL 2A94 --GREATER-THAN AND NOT APPROXIMATE 2A8A --GREATER-THAN AND SINGLE-LINE NOT EQUAL TO 2A88 --GREATER-THAN BESIDE LESS-THAN 2AA5 --GREATER-THAN CLOSED BY CURVE 2AA7 --GREATER-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL 2AA9 --GREATER-THAN OR APPROXIMATE 2A86 - GREATER-THAN OR EQUAL TO 2265 --GREATER-THAN OR EQUAL TO, DOUBLE-LINE SLANTED 2AFA --GREATER-THAN OR SLANTED EQUAL TO 2A7E --GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE 2A82 --GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT 2A84 --GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE 2A80 --GREATER-THAN OVERLAPPING LESS-THAN 2AA4 - GREATER-THAN SIGN 003E --GREATER-THAN WITH CIRCLE INSIDE 2A7A --GREATER-THAN WITH DOT INSIDE, SLANTED EQUAL TO OR 2A98 --GREATER-THAN WITH QUESTION MARK ABOVE 2A7C --Greek, Diacritics for 0342 --Greek, Extended 1F00 --Greek and Coptic 0370 -+GREATER-THAN, MUCH 226B -+GREATER-THAN, VERY MUCH 22D9 -+Greek 0370 -+Greek Alphabet 0391 -+greek ano teleia 00B7 -+Greek Archaic Letters 03D8 -+GREEK BETA SYMBOL 03D0 - Greek Capital Letters 0391 - greek currency 20AF -+greek dasia 0314 -+greek dialytika 0308 - GREEK DIALYTIKA TONOS, COMBINING 0344 - greek enotikon 203F -+Greek Extended 1F00 -+greek iota subscript 0345 - GREEK KORONIS, COMBINING 0343 -+Greek Letters, Double-struck 213C -+GREEK LUNATE EPSILON SYMBOL 03F5 -+GREEK LUNATE SIGMA SYMBOL 03F2 -+Greek Mathematical Symbols 1D6A8 -+Greek Mathematical Symbols, Bold 1D6A8 -+Greek Mathematical Symbols, Bold Italic 1D71C -+Greek Mathematical Symbols, Italic 1D6E2 -+Greek Mathematical Symbols, Sans-serif Bold 1D756 -+Greek Mathematical Symbols, Sans-serif Bold Italic 1D790 - greek middle dot 00B7 -+Greek Musical Notation, Ancient 1D200 - greek non-spacing iota below 0345 -+Greek Numbers, Ancient 10140 -+greek old testament 1D516 -+greek oxia 0301 -+greek pentonkion 2059 - GREEK PERISPOMENI, COMBINING 0342 -+GREEK PHI SYMBOL 03D5 -+GREEK PI SYMBOL 03D6 -+greek psili 0313 -+Greek Punctuation and Signs 0374 -+greek question mark 003B - GREEK QUESTION MARK 037E -+GREEK REVERSED LUNATE EPSILON SYMBOL 03F6 -+greek rough breathing mark 0314 - GREEK SMALL LETTER IOTA, TURNED 2129 -+greek small letter lunate sigma 03F2 -+GREEK SMALL LETTER PI 03C0 - Greek Small Letters 03B1 --Greek Symbols 03D0 -+greek smooth breathing mark 0313 -+Greek Textual Symbols, Ancient 2E0E -+GREEK THETA SYMBOL 03D1 -+greek tonos 0301 -+greek varia 0300 -+Greek Variant Letterforms 03D0 -+greek vrachy 0306 - GREEK YPOGEGRAMMENI, COMBINING 0345 -+Greek, Diacritics for 0342 -+Greek, Precomposed Polytonic 1F00 -+GROUND, EARTH 23DA - group lock 21F0 - group separator 001D - GROUP SEPARATOR, SYMBOL FOR 241D --guarded area, end of 0097 --guarded area, start of 0096 --gui icons 231A -+GUARANI SIGN 20B2 -+GUARDED AREA, END OF 0097 -+GUARDED AREA, START OF 0096 - guillemet, left pointing 00AB - guillemet, left pointing single 2039 - guillemet, right pointing 00BB - guillemet, right pointing single 203A - Gujarati 0A80 -+Gujarati Consonants 0A95 -+Gujarati Dependent Vowel Signs 0ABE - Gujarati Digits 0AE6 --Gujarati Letters 0A85 -+Gujarati Independent Vowels 0A85 - GUJARATI RUPEE SIGN 0AF1 - Gurmukhi 0A00 -+GURMUKHI ADDAK 0A71 -+Gurmukhi Consonants 0A15 -+Gurmukhi Dependent Vowel Signs 0A3E - Gurmukhi Digits 0A66 --Gurmukhi Letters 0A05 -+GURMUKHI EK ONKAR 0A74 -+Gurmukhi Independent Vowels 0A05 -+gurmukhi khanda 262C -+GURMUKHI TIPPI 0A70 -+H WITH BREVE BELOW, LATIN SMALL LETTER 1E2B -+H WITH CARON, LATIN SMALL LETTER 021F -+H WITH CEDILLA, LATIN SMALL LETTER 1E29 -+H WITH CIRCUMFLEX, LATIN SMALL LETTER 0125 -+H WITH DIAERESIS, LATIN SMALL LETTER 1E27 -+H WITH DOT ABOVE, LATIN SMALL LETTER 1E23 -+H WITH DOT BELOW, LATIN SMALL LETTER 1E25 -+H WITH FISHHOOK, LATIN SMALL LETTER TURNED 02AE -+H WITH HOOK, LATIN SMALL LETTER 0266 -+H WITH LINE BELOW, LATIN SMALL LETTER 1E96 -+H WITH STROKE, LATIN SMALL LETTER 0127 - H, BLACK-LETTER CAPITAL 210C - H, COMBINING LATIN SMALL LETTER 036A - H, DOUBLE-STRUCK CAPITAL 210D -@@ -1850,34 +2081,38 @@ - 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, COMBINING DOUBLE TILDE LEFT FE22 --HALF, COMBINING LIGATURE LEFT FE20 --HALF, VULGAR FRACTION ONE 00BD --HALF CIRCLE, MULTIPLICATION SIGN IN LEFT 2A34 --HALF CIRCLE, MULTIPLICATION SIGN IN RIGHT 2A35 --HALF CIRCLE, PLUS SIGN IN LEFT 2A2D --HALF CIRCLE, PLUS SIGN IN RIGHT 2A2E -+halant 094D -+HALANTA, TIBETAN MARK 0F84 - HALF FILL SPACE, IDEOGRAPHIC 303F -+HALF INTEGRAL, BOTTOM 2321 - HALF INTEGRAL, TOP 2320 - Half Marks, Combining FE20 --HALF RING, MODIFIER LETTER CENTRED LEFT 02D3 --HALF RING, MODIFIER LETTER LEFT 02BF -+HALF RING ABOVE, COMBINING LEFT 0351 -+HALF RING ABOVE, COMBINING RIGHT 0357 - 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 TRIANGULAR COLON, MODIFIER LETTER 02D1 -+HALF, VULGAR FRACTION ONE 00BD - Halfwidth and Fullwidth Forms FF00 -+Halfwidth CJK Punctuation FF61 - Halfwidth Japanese Katakana Variants FF61 - Halfwidth Korean Hangul Variants FFA0 --hamiltonian function 210B -+Halfwidth Symbol Variants FFE8 -+hamilton operator 25BD -+HAMMER AND PICK 2692 - HAMMER AND SICKLE 262D -+hamzah on ha, arabic letter 06C0 - Han Ideographs 4E00 -+han-daku-on, combining japanese 309A -+han-daku-on, japanese 309C -+Hand Symbols, Pointing 261A - HAND, VICTORY 270C - HAND, WRITING 270D --Hand Symbols, Pointing 261A --Hangul, Based on KS C 5601 (Korean) 3130 -+Hangul Archaic Letters, Korean 3165 - HANGUL CHOSEONG FILLER 115F - Hangul Compatibility Jamo, Korean 3130 - Hangul Elements, Circled Korean 3260 -@@ -1885,127 +2120,174 @@ - HANGUL FILLER 3164 - Hangul Jamo Combining Alphabet, Korean 1100 - HANGUL JUNGSEONG FILLER 1160 -+Hangul Syllables Area, Korean AC00 - Hangul Syllables, Circled Korean 326E - Hangul Syllables, Parenthesized Korean 320E --Hangul Syllables Area, Korean AC00 - Hangul Variants, Halfwidth Korean FFA0 --Hangzhou-style Numerals 3021 -+Hangzhou Numerals 3021 - Hanunoo 1720 --HANUNOO SIGN PAMUDPOD 1734 --Hanun�o-specific punctuation 1734 -+Harakat, Arabic 064B -+harbor symbol 2693 - HARPOON ABOVE, COMBINING LEFT 20D0 --hasant 09CD -+HARPOON ABOVE, COMBINING RIGHT 20D1 -+HARPOON WITH BARB DOWNWARDS, COMBINING LEFTWARDS 20ED -+HARPOON WITH BARB DOWNWARDS, COMBINING RIGHTWARDS 20EC -+Harpoons 21BC -+Harpoons, Miscellaneous 294A -+hartsakan nshan, armenian 055E -+hasant, bengali 09CD -+HASANTA, SYLOTI NAGRI SIGN A806 - hash 0023 - hat 0302 - hat 2229 - have a nice day! 263A - Hazard Dingbats 2620 --heading, start of 0001 -+Head Marks, Tibetan 0F01 -+HEADING, START OF 0001 - HEADING, SYMBOL FOR START OF 2401 -+HEART BULLET, REVERSED ROTATED FLORAL 2619 -+Heart Dingbats 2763 - Heart Ornaments 2763 - HEAVY BALLOT X 2718 - HEAVY CHECK MARK 2714 -+HEAVY EXCLAMATION MARK ORNAMENT 2762 - HEAVY MULTIPLICATION X 2716 -+HEAVY SPARKLE 2748 - Hebrew 0590 -+Hebrew Alphabet 05D0 - Hebrew Cantillation Marks 0591 --hebrew currency 20AA --Hebrew Letters 05D0 --Hebrew Points 05B0 -+Hebrew Letterlike Mathematical Symbols 2135 -+Hebrew Points and Punctuation 05B0 - Hebrew Presentation Forms FB1D -+hedera 2767 -+HEH WITH YEH ABOVE, ARABIC LETTER 06C0 - HELM SYMBOL 2388 -+HERMES, STAFF OF 269A - HERMITIAN CONJUGATE MATRIX 22B9 --Hexagram Symbols, Yijing 4DC0 --hiding, z notation schema 29F9 -+Hexagram Symbols, Yijing / I Ching 4DC0 - High Surrogates D800 - HIGH VOLTAGE SIGN 26A1 - HIGH-REVERSED-9 QUOTATION MARK, DOUBLE 201F - HIGH-REVERSED-9 QUOTATION MARK, SINGLE 201B - higher rank than 227B - hilbert space 210C --Hiragana, Based on JIS X 0208 (Japanese) 3040 --HIRAGANA DIGRAPH YORI 309F -+Hiragana 3040 - HIRAGANA ITERATION MARK 309D -+HIRAGANA LETTER SMALL KA 3095 -+HIRAGANA LETTER SMALL KE 3096 -+Hiragana Supplement 3095 -+HIRAGANA VOICED ITERATION MARK 309E - histogram marker 25AE --Historic Letters, Cyrillic 0460 -+holler 2365 - home 21B8 - home 21F1 - HOMOTHETIC 223B - HOMOTHETIC ABOVE, COMBINING 034B --Honorific Signs, Arabic 0610 --HOOK, MODIFIER LETTER RHOTIC 02DE --hook, nasal 0328 -+Honorifics, Arabic 0610 - HOOK ABOVE, COMBINING 0309 - HOOK BELOW, COMBINING PALATALIZED 0321 - HOOK BELOW, COMBINING RETROFLEX 0322 -+HOOK, MODIFIER LETTER RHOTIC 02DE -+hook, nasal 0328 -+hoot 2364 - HORIZONTAL BAR 2015 --HORIZONTAL BAR, CIRCLE WITH 29B5 --HORIZONTAL BAR WITH DOUBLE VERTICAL STROKE, TRIPLE 2A68 --HORIZONTAL BAR WITH TRIPLE VERTICAL STROKE, TRIPLE 2A69 - HORIZONTAL ELLIPSIS 2026 - HORIZONTAL ELLIPSIS, MIDLINE 22EF --HORIZONTAL LINE EXTENSION 23AF --HORIZONTAL RULE, LOZENGE DIVIDED BY 27E0 -+Horizontal Scan Lines 23BA - horizontal tabulation 0009 - HORIZONTAL TABULATION, SYMBOL FOR 2409 - HORN, COMBINING 031B --HORN, LATIN SMALL LETTER RAMS 0264 - HOT BEVERAGE 2615 - HOT SPRINGS 2668 - HOURGLASS 231B - HOURGLASS, BLACK 29D7 --HOURGLASS, WHITE 29D6 --Hours, Telegraph Symbols for 3358 -+Hours, Ideographic Telegraph Symbols for 3358 - HOUSE 2302 -+HRYVNIA SIGN 20B4 -+ht 0009 - 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, KATAKANA-HIRAGANA DOUBLE 30A0 -+HYPHEN, MONGOLIAN TODO SOFT 1806 - HYPHEN, NON-BREAKING 2011 -+hyphen, papyrological 035C - HYPHEN, SOFT 00AD --HYPHEN BULLET 2043 --hyphen or minus sign 002D - HYPHEN-MINUS 002D - HYPHENATION POINT 2027 - hyphus 002D - HYSTERESIS SYMBOL 238E -+i bar, latin capital letter 0197 -+I Ching / Yijing Hexagram Symbols 4DC0 -+I Ching / Yijing Monogram and Digram Symbols 268A -+I Ching / Yijing Trigram Symbols 2630 -+i dot, latin capital letter 0130 -+I WITH ACUTE, LATIN CAPITAL LETTER 00CD -+I WITH ACUTE, LATIN SMALL LETTER 00ED -+I WITH BREVE, LATIN SMALL LETTER 012D -+I WITH CARON, LATIN SMALL LETTER 01D0 -+I WITH CIRCUMFLEX, LATIN CAPITAL LETTER 00CE -+I WITH CIRCUMFLEX, LATIN SMALL LETTER 00EE -+I WITH DIAERESIS, LATIN CAPITAL LETTER 00CF -+I WITH DIAERESIS, LATIN SMALL LETTER 00EF -+I WITH DOT ABOVE, LATIN CAPITAL LETTER 0130 -+I WITH DOT BELOW, LATIN SMALL LETTER 1ECB -+I WITH DOUBLE GRAVE, LATIN SMALL LETTER 0209 -+I WITH GRAVE, LATIN CAPITAL LETTER 00CC -+I WITH GRAVE, LATIN SMALL LETTER 00EC -+I WITH HOOK ABOVE, LATIN SMALL LETTER 1EC9 -+I WITH INVERTED BREVE, LATIN SMALL LETTER 020B -+I WITH MACRON, LATIN SMALL LETTER 012B -+I WITH OGONEK, LATIN SMALL LETTER 012F -+I WITH STROKE, LATIN CAPITAL LETTER 0197 -+I WITH STROKE, LATIN SMALL LETTER 0268 -+I WITH TILDE BELOW, LATIN SMALL LETTER 1E2D -+I WITH TILDE, LATIN SMALL LETTER 0129 - I, BLACK-LETTER CAPITAL 2111 - I, COMBINING LATIN SMALL LETTER 0365 - I, DOUBLE-STRUCK ITALIC SMALL 2148 - I, LATIN LETTER SMALL CAPITAL 026A - I, LATIN SMALL LETTER DOTLESS 0131 -+I, LATIN SMALL LETTER TURNED 1D09 -+I, LATIN SUBSCRIPT SMALL LETTER 1D62 - I, SCRIPT CAPITAL 2110 - I, SUPERSCRIPT LATIN SMALL LETTER 2071 --I WITH DOT ABOVE, LATIN CAPITAL LETTER 0130 --IBM CJK Compatibility Ideographs FA0E --icons, gui 231A --identical and parallel to 2A68 - IDENTICAL TO 2261 --IDENTICAL TO AND SLANTED PARALLEL 29E5 --IDENTICAL WITH DOT ABOVE 2A67 -+IDENTICAL TO, NOT 2262 -+Ideograms, Linear B 10080 - Ideographic Annotation, Japanese Kanbun 3190 - IDEOGRAPHIC CLOSING MARK 3006 - IDEOGRAPHIC COMMA 3001 --Ideographic Description Characters 2FF0 -+Ideographic Description Characters, CJK 2FF0 - IDEOGRAPHIC FULL STOP 3002 - IDEOGRAPHIC HALF FILL SPACE 303F - IDEOGRAPHIC ITERATION MARK 3005 - IDEOGRAPHIC ITERATION MARK, VERTICAL 303B - IDEOGRAPHIC NUMBER ZERO 3007 - IDEOGRAPHIC SPACE 3000 -+Ideographic Telegraph Symbols for Days 33E0 -+Ideographic Telegraph Symbols for Hours 3358 -+Ideographic Telegraph Symbols for Months 32C0 - Ideographic Tone Marks 302A -+IDEOGRAPHIC VARIATION INDICATOR 303E -+Ideographs Area, CJK 3400 -+Ideographs Area, Supplementary CJK 20000 -+Ideographs Extension A, CJK Unified 3400 -+Ideographs Extension B, CJK Unified 20000 -+Ideographs Supplement, CJK Compatibility 2F800 - Ideographs, Circled 3280 - Ideographs, CJK Compatibility F900 - Ideographs, CJK Unified 4E00 --Ideographs, Enclosed CJK Letters and 3200 -+Ideographs, DPRK Compatibility FA70 - Ideographs, Han 4E00 --Ideographs, IBM CJK Compatibility FA0E --Ideographs, Parenthesized 3220 --Ideographs Area, CJK 3400 --Ideographs Extension A, CJK Unified 3400 -+Ideographs, JIS X 0213 Compatibility FA30 -+Ideographs, Parenthesized CJK 3220 - IDLE, SYMBOL FOR SYNCHRONOUS 2416 --idle, synchronous 0016 -+IDLE, SYNCHRONOUS 0016 - IJ, LATIN SMALL LIGATURE 0133 - IMAGE OF 22B7 - IMAGE OF, SQUARE 228F -@@ -2014,65 +2296,84 @@ - inches 2033 - included in set 2282 - includes in set 2283 --INCOMPLETE INFINITY 29DC - incorporated, japanese 337F --INCREASES AS 29E1 - INCREMENT 2206 - independence 2AEB - independent 2ADD - independent, not 2ADC --index 0084 - Index Finger Dingbats, Pointing 261A -+INDEX, BLACK LEFT POINTING 261A -+INDEX, BLACK RIGHT POINTING 261B -+INDEX, WHITE DOWN POINTING 261F -+INDEX, WHITE LEFT POINTING 261C -+INDEX, WHITE RIGHT POINTING 261E -+INDEX, WHITE UP POINTING 261D - indian currency 20A8 --inferior order to, of 2134 -+indicator, backward arrow 25C5 -+indicator, forward arrow 25BB -+Inequality Signs, Equality and 2243 -+Inequality Signs, Equality and 22D5 - INFINITY 221E --INFINITY, INCOMPLETE 29DC --INFINITY, TIE OVER 29DD --INFINITY NEGATED WITH VERTICAL BAR 29DE -+infix bag count 266F -+INFORMATION SEPARATOR FOUR 001C -+INFORMATION SEPARATOR ONE 001F -+INFORMATION SEPARATOR THREE 001D -+INFORMATION SEPARATOR TWO 001E - INFORMATION SOURCE 2139 --INHIBIT ARABIC FORM SHAPING 206C --INHIBIT SYMMETRIC SWAPPING 206A --injection, z notation finite 2915 --injection, z notation finite surjective 2918 --injection, z notation partial 2914 --injection, z notation surjective 2917 -+ingressive airflow 2193 -+injection, finite 2915 -+injection, finite surjective 2918 -+injection, partial 2914 -+injection, surjective 2917 -+injection, total 21A3 - INSERTION POINT, CARET 2041 - INSERTION SYMBOL 2380 --integers, the set of 2124 -+integers 2124 - INTEGRAL 222B -+INTEGRAL OPERATOR, QUATERNION 2A16 -+Integral Signs 222B -+INTEGRAL, ANTICLOCKWISE CONTOUR 2233 -+INTEGRAL, BOTTOM HALF 2321 - INTEGRAL, CLOCKWISE 2231 - INTEGRAL, CLOCKWISE CONTOUR 2232 - INTEGRAL, CONTOUR 222E -+integral, counterclockwise contour 2233 - INTEGRAL, DOUBLE 222C -+integral, lower 2A1C - integral, riemann 211B - INTEGRAL, SURFACE 222F - INTEGRAL, TOP HALF 2320 - INTEGRAL, TRIPLE 222D -+integral, upper 2A1B - INTEGRAL, VOLUME 2230 - Integrals, Summations and 2A0A -+INTEGRATION, ANTICLOCKWISE 2A11 -+integration, counterclockwise 2A11 - INTERCALATE 22BA -+INTEREST SIGN, PLACE OF 2318 - INTERIOR PRODUCT 2A3C - INTERIOR PRODUCT, RIGHTHAND 2A3D - interleave 2AF4 - Interlinear Annotation FFF9 --Internal Codes, Process FDD0 --International Phonetic Alphabet 0250 -+INTERLINEAR ANNOTATION ANCHOR FFF9 -+INTERLINEAR ANNOTATION SEPARATOR FFFA -+INTERLINEAR ANNOTATION TERMINATOR FFFB - INTERROBANG 203D -+interrupt 238A - INTERSECTION 2229 - INTERSECTION, DOUBLE 22D2 --INTERSECTION, INTEGRAL WITH 2A19 -+INTERSECTION, ELECTRICAL 23E7 -+intersection, generalized 22C2 - INTERSECTION, N-ARY 22C2 - intersection, proper 22D4 --INTERSECTION, TRANSVERSAL 2ADB --INTERSECTION OPERATOR, N-ARY SQUARE 2A05 --INTERSECTION WITH DOT 2A40 - Intersections and Unions 2A40 --introducer, control sequence 009B --introducer, single character 009A -+INTERSYLLABIC TSHEG, TIBETAN MARK 0F0B -+INTRODUCER, CONTROL SEQUENCE 009B -+INTRODUCER, SINGLE CHARACTER 009A - Inverse Numbers, Circled 2776 -+INVERTED BREVE BELOW, COMBINING 032F - INVERTED BREVE, COMBINING 0311 - INVERTED BREVE, COMBINING DOUBLE 0361 --INVERTED BREVE BELOW, COMBINING 032F - INVERTED BRIDGE BELOW, COMBINING 033A - INVERTED DOUBLE ARCH BELOW, COMBINING 032B - INVERTED EXCLAMATION MARK 00A1 -@@ -2083,170 +2384,284 @@ - INVERTED R, LATIN LETTER SMALL CAPITAL 0281 - INVERTED R, MODIFIER LETTER SMALL CAPITAL 02B6 - INVERTED UNDERTIE 2054 --Invisible Operators 2063 -+invisible comma 2063 -+INVISIBLE SEPARATOR 2063 -+INVISIBLE TIMES 2062 -+iota below, greek non-spacing 0345 -+iota subscript, greek 0345 - IOTA, LATIN CAPITAL LETTER 0196 - IOTA, LATIN SMALL LETTER 0269 - IOTA, TURNED GREEK SMALL LETTER 2129 --iota below, greek non-spacing 0345 --IPA, Diacritics for 0346 - IPA Extensions 0250 --IR 181, Electrotechnical Symbols from 238D --iran, symbol of 262B -+IPA, Diacritics for 0346 -+iranian currency FDFC - 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 --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 --ISO 9995-7, Keyboard Symbols from 2380 --ISO 9995-7, Keyboard Symbols from 2396 -+isotech entity ⧜ 29DC - israeli currency 20AA -+ISSHAR, BENGALI 09FA -+ISSHAR, ORIYA 0B70 - italian currency 20A4 --Italic Mathematical Symbols, Double-Struck 2145 -+italian lira 00A3 -+Italic Greek Mathematical Symbols 1D6E2 -+Italic Greek Mathematical Symbols, Bold 1D71C -+Italic Greek Mathematical Symbols, Sans-serif Bold 1D790 -+Italic Mathematical Symbols 1D434 -+Italic Mathematical Symbols, Bold 1D468 -+Italic Mathematical Symbols, Sans-serif 1D608 -+Italic Mathematical Symbols, Sans-serif Bold 1D63C -+Italic, Old 10300 - ITC Zapf Dingbats Series 100 2700 - ITERATION MARK, HIRAGANA 309D -+ITERATION MARK, HIRAGANA VOICED 309E - ITERATION MARK, IDEOGRAPHIC 3005 - ITERATION MARK, KATAKANA 30FD -+ITERATION MARK, KATAKANA VOICED 30FE - ITERATION MARK, VERTICAL IDEOGRAPHIC 303B - ivy leaf 2767 -+izafet 06C0 -+J WITH CARON, LATIN SMALL LETTER 01F0 -+J WITH CIRCUMFLEX, LATIN SMALL LETTER 0135 -+J WITH CROSSED-TAIL, LATIN SMALL LETTER 029D -+J WITH STROKE, LATIN CAPITAL LETTER 0248 -+J WITH STROKE, LATIN SMALL LETTER 0249 -+J WITH STROKE, LATIN SMALL LETTER DOTLESS 025F - J, DOUBLE-STRUCK ITALIC SMALL 2149 -+J, LATIN LETTER SMALL CAPITAL 1D0A -+J, LATIN SMALL LETTER DOTLESS 0237 - J, MODIFIER LETTER SMALL 02B2 - jack 2749 --Jamo, Korean Hangul Compatibility 3130 - Jamo Combining Alphabet, Korean Hangul 1100 -+Jamo, Korean Hangul Compatibility 3130 -+japanese bullet, tainome 25C9 - Japanese Chess Symbols 2616 - Japanese Era Names 337B - Japanese Hiragana 3040 - japanese incorporated 337F - JAPANESE INDUSTRIAL STANDARD SYMBOL 3004 --Japanese Kanbun (Ideographic Annotation) 3190 -+Japanese Kanbun Ideographic Annotation 3190 - Japanese Katakana 30A0 --Japanese Katakana, Circled 32D0 - Japanese Katakana Variants, Halfwidth FF61 - Japanese Katakana Words, Squared 3300 -+Japanese Katakana, Circled 32D0 - japanese kome 203B - JERUSALEM, CROSS OF 2629 - jis composition circle 20DD --JIS X 0208, Based on 3040 - JIS X 0213 Compatibility Ideographs FA30 - JOIN 2A1D --JOIN, FULL OUTER 27D7 --JOIN, LEFT OUTER 27D5 --JOIN, RIGHT OUTER 27D6 - JOINER, COMBINING GRAPHEME 034F - JOINER, WORD 2060 - JOINER, ZERO WIDTH 200D -+jolly roger 2620 - jot, apl 2218 - JUPITER 2643 --justification, character tabulation with 0089 -+jurisprudence symbol 2696 -+K WITH ACUTE, LATIN SMALL LETTER 1E31 -+K WITH CARON, LATIN SMALL LETTER 01E9 -+K WITH CEDILLA, LATIN SMALL LETTER 0137 -+K WITH DOT BELOW, LATIN SMALL LETTER 1E33 -+K WITH HOOK, LATIN SMALL LETTER 0199 -+K WITH LINE BELOW, LATIN SMALL LETTER 1E35 -+K, LATIN LETTER SMALL CAPITAL 1D0B - K, LATIN SMALL LETTER TURNED 029E -+KA, HIRAGANA LETTER SMALL 3095 - kabusiki-gaisya 337F - Kana Repeat Marks 3031 --Kanbun (Ideographic Annotation), Japanese 3190 --Kangxi Radicals 2F00 -+Kanbun Ideographic Annotation, Japanese 3190 -+Kangxi Radicals, CJK 2F00 - Kannada 0C80 -+Kannada Consonants 0C95 -+Kannada Dependent Vowel Signs 0CBE - Kannada Digits 0CE6 --Kannada Letters 0C85 --Katakana, Circled Japanese 32D0 --Katakana, Japanese 30A0 -+Kannada Independent Vowels 0C85 -+kashida, arabic 0640 -+Katakana 30A0 - KATAKANA DIGRAPH KOTO 30FF -+Katakana Extensions for Ainu 31F0 - KATAKANA ITERATION MARK 30FD - KATAKANA MIDDLE DOT 30FB - Katakana Phonetic Extensions 31F0 - Katakana Variants, Halfwidth Japanese FF61 --Katakana Words, Squared Japanese 3300 -+KATAKANA VOICED ITERATION MARK 30FE -+Katakana Words, Squared 3300 -+Katakana, Circled 32D0 - KATAKANA-HIRAGANA DOUBLE HYPHEN 30A0 - KATAKANA-HIRAGANA PROLONGED SOUND MARK 30FC --KATAKANA-HIRAGANA VOICED SOUND MARK 309B --KATAKANA-HIRAGANA VOICED SOUND MARK, COMBINING 3099 - KELVIN SIGN 212A --ket 27E7 -+ket 27E9 - key, clear 2327 - key, command 2318 - key, delete to the left 232B - key, delete to the right 2326 - key, enter 2324 - KEY, OPTION 2325 --KEY SYMBOL, ALTERNATIVE 2387 --KEY SYMBOL, DECIMAL SEPARATOR 2396 - KEYBOARD 2328 -+keyboard symbol for no break space 237D -+Keyboard Symbols 21E6 - Keyboard Symbols 2324 --Keyboard Symbols from ISO 9995-7 2380 --Keyboard Symbols from ISO 9995-7 2396 --Keyboard and UI Symbols 23CE -+Keyboard Symbols 2380 -+Keyboard Symbols 2396 - KEYCAP, COMBINING ENCLOSING 20E3 -+khanda, gurmukhi 262C -+Kharoshthi 10A00 -+Kharoshthi Digits 10A40 - Khmer 1780 -+khmer anusvara 17C6 -+Khmer Consonants 1780 -+KHMER CURRENCY SYMBOL RIEL 17DB -+Khmer Dependent Vowel Signs 17B6 - Khmer Digits 17E0 --Khmer Lunar Date Symbols 19E0 -+Khmer Independent Vowels 17A5 -+Khmer Numeric Symbols for Divination 17F0 -+KHMER SIGN NIKAHIT 17C6 -+KHMER SIGN REAHMUK 17C7 -+Khmer Signs 17C6 -+khmer srak ah 17C7 -+khmer srak am 17C6 - Khmer Symbols 19E0 --Khmer Symbols for Divination Lore 17F0 -+khmer visarga 17C7 -+KHOMUT, THAI CHARACTER 0E5B -+Khutsuri, Georgian 10A0 -+killer, myanmar 1039 - KIP SIGN 20AD -+kissen 2311 - kome, japanese 203B --Komi Letters, Cyrillic 0500 --Koranic Annotation Signs 06D6 -+Komi Letters 0500 -+Koranic Annotation Signs, Arabic 06D6 -+Korean Combining Alphabet 1100 - korean currency 20A9 -+Korean Hangul Archaic Letters 3165 - Korean Hangul Compatibility Jamo 3130 - Korean Hangul Elements, Circled 3260 - Korean Hangul Elements, Parenthesized 3200 - Korean Hangul Jamo Combining Alphabet 1100 -+Korean Hangul Syllables AC00 - Korean Hangul Syllables, Circled 326E - Korean Hangul Syllables, Parenthesized 320E --Korean Hangul Syllables Area AC00 - Korean Hangul Variants, Halfwidth FFA0 - KOREAN STANDARD SYMBOL 327F - KORONIS, COMBINING GREEK 0343 - KOTO, KATAKANA DIGRAPH 30FF - KRA, LATIN SMALL LETTER 0138 --KS C 5601 (Korean Hangul), Based on 3130 -+L B BAR SYMBOL 2114 -+L WITH ACUTE, LATIN SMALL LETTER 013A -+L WITH BAR, LATIN CAPITAL LETTER 023D -+L WITH BAR, LATIN SMALL LETTER 019A -+L WITH BELT, LATIN SMALL LETTER 026C -+L WITH CARON, LATIN SMALL LETTER 013E -+L WITH CEDILLA, LATIN SMALL LETTER 013C -+L WITH CIRCUMFLEX BELOW, LATIN SMALL LETTER 1E3D -+L WITH CURL, LATIN SMALL LETTER 0234 -+L WITH DOT BELOW, LATIN SMALL LETTER 1E37 -+L WITH LINE BELOW, LATIN SMALL LETTER 1E3B -+L WITH MIDDLE DOT, LATIN SMALL LETTER 0140 -+L WITH MIDDLE TILDE, LATIN SMALL LETTER 026B -+L WITH RETROFLEX HOOK, LATIN SMALL LETTER 026D -+L WITH STROKE, LATIN LETTER SMALL CAPITAL 1D0C -+L WITH STROKE, LATIN SMALL LETTER 0142 - L, LATIN LETTER SMALL CAPITAL 029F - L, MODIFIER LETTER SMALL 02E1 - L, REVERSED SANS-SERIF CAPITAL 2143 - L, SCRIPT CAPITAL 2112 - L, SCRIPT SMALL 2113 - L, TURNED SANS-SERIF CAPITAL 2142 --L B BAR SYMBOL 2114 --L WITH MIDDLE DOT, LATIN SMALL LETTER 0140 --L WITH MIDDLE TILDE, LATIN SMALL LETTER 026B - lambda bar, latin letter 019B -+LANGUAGE TAG E0001 - Lao 0E80 -+LAO CANCELLATION MARK 0ECC -+Lao Consonants 0E81 - Lao Digits 0ED0 --Lao Letters 0E81 -+LAO ELLIPSIS 0EAF -+Lao Marks and Signs 0EC8 -+LAO NIGGAHITA 0ECD -+Lao Vowels 0EB0 - laotian currency 20AD - laplace operator 2206 --laplace operator 2207 --laplace symbol 2112 --LARGE AND, SLOPING 2A58 -+laplace transform 2112 - large bowtie 2A1D --LARGE DOWN TACK 27D9 --LARGE LEFT TRIANGLE OPERATOR 2A1E --LARGE OR, SLOPING 2A57 --LARGE TRIPLE VERTICAL BAR OPERATOR 2AFC --LARGE UP TACK 27D8 --LARGER THAN 2AAB --LARGER THAN OR EQUAL TO 2AAD -+LARGE CIRCLE 25EF -+Large Operators 29F8 - LAST QUARTER MOON 263E - LATERAL CLICK, LATIN LETTER 01C1 --Latin, Based on ISO 8859-2, -3, -4, -9 (European) 0100 --Latin, C0 Controls and Basic 0000 --Latin, European 0100 - Latin Abbreviations, Squared 3371 --LATIN CAPITAL LETTER N WITH LONG RIGHT LEG 0220 --Latin Capital Letters 0041 -+Latin Abbreviations, Squared 3380 - LATIN CROSS 271D - Latin Extended Additional 1E00 - Latin Extended-A 0100 - Latin Extended-B 0180 --Latin Extensions for Vietnamese 1EA0 -+Latin Extended-C 2C60 -+Latin Extended-D A720 -+Latin Extensions 1D00 -+LATIN LETTER AIN 1D25 -+LATIN LETTER ALVEOLAR CLICK 01C2 -+LATIN LETTER BIDENTAL PERCUSSIVE 02AD -+LATIN LETTER BILABIAL CLICK 0298 -+LATIN LETTER BILABIAL PERCUSSIVE 02AC -+latin letter bullseye 0298 -+LATIN LETTER DENTAL CLICK 01C0 -+latin letter exclamation mark 01C3 -+LATIN LETTER GLOTTAL STOP 0294 -+LATIN LETTER INVERTED GLOTTAL STOP 0296 -+latin letter lambda bar 019B -+LATIN LETTER LATERAL CLICK 01C1 -+LATIN LETTER PHARYNGEAL VOICED FRICATIVE 0295 -+LATIN LETTER RETROFLEX CLICK 01C3 -+LATIN LETTER REVERSED ESH LOOP 01AA -+latin letter reversed glottal stop 0295 -+LATIN LETTER STRETCHED C 0297 -+LATIN LETTER VOICED LARYNGEAL SPIRANT 1D24 -+LATIN LETTER WYNN 01BF -+LATIN LETTER YR 01A6 - Latin Letters, Circled 24B6 - Latin Letters, Parenthesized 249C - Latin Letters, Phonetic Modifiers Derived from 02B0 - Latin Ligatures FB00 -+Latin Lowercase Alphabet 0061 -+LATIN SMALL LETTER AE 00E6 -+LATIN SMALL LETTER ALPHA 0251 -+latin small letter baby gamma 0264 -+latin small letter closed epsilon 029A -+LATIN SMALL LETTER CLOSED OMEGA 0277 -+latin small letter closed reversed epsilon 025E -+LATIN SMALL LETTER DB DIGRAPH 0238 -+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 EZH WITH CARON 01EF -+LATIN SMALL LETTER GAMMA 0263 -+LATIN SMALL LETTER GLOTTAL STOP 0242 -+LATIN SMALL LETTER HV 0195 -+LATIN SMALL LETTER IOTA 0269 -+LATIN SMALL LETTER KRA 0138 -+LATIN SMALL LETTER LEZH 026E -+LATIN SMALL LETTER OI 01A3 -+LATIN SMALL LETTER OU 0223 -+LATIN SMALL LETTER PHI 0278 -+LATIN SMALL LETTER QP DIGRAPH 0239 -+LATIN SMALL LETTER RAMS HORN 0264 -+LATIN SMALL LETTER SCHWA 0259 -+LATIN SMALL LETTER SQUAT REVERSED ESH 0285 -+LATIN SMALL LETTER THORN 00FE -+LATIN SMALL LETTER TONE SIX 0185 -+LATIN SMALL LETTER TURNED AE 1D02 -+LATIN SMALL LETTER TURNED ALPHA 0252 -+LATIN SMALL LETTER TURNED DELTA 018D -+LATIN SMALL LETTER TURNED OE 1D14 -+LATIN SMALL LETTER UPSILON 028A -+LATIN SMALL LETTER YOGH 021D - Latin Small Letters 0061 - Latin Small Letters, Combining 0363 --Latin-1, ISO 8859-1 aka 00A0 --Latin-1 Supplement, C1 Controls and 0080 -+latin small ligature ae 00E6 -+LATIN SMALL LIGATURE IJ 0133 -+LATIN SMALL LIGATURE OE 0153 -+Latin Superscript Modifier Letters 02B0 -+Latin Uppercase Alphabet 0041 -+Latin, Basic 0000 -+Latin, European 0100 -+Latin-1 Punctuation and Symbols 00A0 -+Latin-1 Supplement 00A0 - lazy s 223D - LAZY S, INVERTED 223E - LEADER, ONE DOT 2024 -@@ -2254,72 +2669,122 @@ - LEADER, TWO DOT 2025 - leaf, aldus 2766 - leaf, ivy 2767 -+left abstract syntax bracket 301A -+LEFT ANGLE ABOVE, COMBINING 031A -+LEFT ANGLE BELOW, COMBINING 0349 -+LEFT ANGLE BRACKET 3008 -+LEFT ANGLE BRACKET, MATHEMATICAL 27E8 -+LEFT ARROW ABOVE, COMBINING 20D6 -+LEFT ARROW BELOW, COMBINING 20EE -+LEFT ARROWHEAD BELOW, COMBINING 0354 -+left bag bracket 27E6 -+LEFT BLACK LENTICULAR BRACKET 3010 -+LEFT CEILING 2308 -+left chevron bracket 27EA -+LEFT CORNER BRACKET 300C -+LEFT CURLY BRACKET 007B -+LEFT DOUBLE ANGLE BRACKET 300A -+LEFT DOUBLE ANGLE BRACKET, MATHEMATICAL 27EA -+LEFT DOUBLE QUOTATION MARK 201C -+LEFT FLOOR 230A -+LEFT HALF RING ABOVE, COMBINING 0351 -+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 HARPOON ABOVE, COMBINING 20D0 -+LEFT HOOK, LATIN CAPITAL LETTER N WITH 019D -+LEFT HOOK, LATIN SMALL LETTER N WITH 0272 -+left key, delete to the 232B -+left moustache 23B0 -+LEFT NORMAL FACTOR SEMIDIRECT PRODUCT 22C9 -+LEFT PARENTHESIS 0028 -+LEFT PARENTHESIS, ORNATE FD3E -+left pointing guillemet 00AB -+LEFT POINTING INDEX, BLACK 261A -+LEFT POINTING INDEX, WHITE 261C -+left pointing single guillemet 2039 -+LEFT RIGHT ARROW ABOVE, COMBINING 20E1 -+LEFT RIGHT ARROW BELOW, COMBINING 034D -+LEFT SEMIDIRECT PRODUCT 22CB -+left sequence bracket 27E8 -+LEFT SINGLE QUOTATION MARK 2018 -+LEFT SQUARE BRACKET 005B -+LEFT SQUARE BRACKET WITH QUILL 2045 -+LEFT TACK 22A3 -+LEFT TACK BELOW, COMBINING 0318 -+LEFT TORTOISE SHELL BRACKET 3014 -+LEFT WHITE CORNER BRACKET 300E -+LEFT WHITE CURLY BRACKET 2983 -+LEFT WHITE LENTICULAR BRACKET 3016 -+LEFT WHITE PARENTHESIS 2985 -+LEFT WHITE SQUARE BRACKET 301A -+LEFT WHITE TORTOISE SHELL BRACKET 3018 -+LEFT, ERASE TO THE 232B -+left, fast cursor 219E -+LEFT-POINTING ANGLE BRACKET 2329 -+LEFT-POINTING ANGLE QUOTATION MARK, SINGLE 2039 -+LEFT-POINTING DOUBLE ANGLE QUOTATION MARK 00AB - LEFT-TO-RIGHT EMBEDDING 202A - LEFT-TO-RIGHT MARK 200E - LEFT-TO-RIGHT OVERRIDE 202D - leftward tab 21E4 --LEG, LATIN CAPITAL LETTER N WITH LONG RIGHT 0220 -+LEFTWARDS ARROW 2190 -+LEFTWARDS ARROW OVERLAY, COMBINING 20EA -+LEFTWARDS BULLET, BLACK 204C -+LEFTWARDS HARPOON WITH BARB DOWNWARDS, COMBINING 20ED - LENTICULAR BRACKET, LEFT BLACK 3010 - LENTICULAR BRACKET, LEFT WHITE 3016 -+LENTICULAR BRACKET, RIGHT BLACK 3011 -+LENTICULAR BRACKET, RIGHT WHITE 3017 - LEO 264C --LESS-THAN, CIRCLED 29C0 --LESS-THAN, DOUBLE NESTED 2AA1 --LESS-THAN, DOUBLE-LINE EQUAL TO OR 2A99 --LESS-THAN, DOUBLE-LINE SLANTED EQUAL TO OR 2A9B --LESS-THAN, GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE 2A8C --LESS-THAN, GREATER-THAN ABOVE SIMILAR ABOVE 2A90 --LESS-THAN, GREATER-THAN BESIDE 2AA5 --LESS-THAN, GREATER-THAN OVERLAPPING 2AA4 --LESS-THAN, MUCH 226A --LESS-THAN, SIMILAR OR 2A9D --LESS-THAN, SLANTED EQUAL TO OR 2A95 --LESS-THAN, TRIPLE NESTED 2AF7 --LESS-THAN, VERY MUCH 22D8 --LESS-THAN ABOVE DOUBLE-LINE EQUAL, GREATER-THAN ABOVE 2A92 --LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN 2A8B --LESS-THAN ABOVE EQUALS SIGN, SIMILAR ABOVE 2A9F --LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE EQUAL 2A91 --LESS-THAN ABOVE SIMILAR ABOVE GREATER-THAN 2A8F --LESS-THAN ABOVE SIMILAR OR EQUAL 2A8D --LESS-THAN ABOVE SLANTED EQUAL, GREATER-THAN ABOVE SLANTED EQUAL ABOVE 2A94 --LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL 2A93 --LESS-THAN AND NOT APPROXIMATE 2A89 --LESS-THAN AND SINGLE-LINE NOT EQUAL TO 2A87 --LESS-THAN CLOSED BY CURVE 2AA6 --LESS-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL 2AA8 --LESS-THAN OR APPROXIMATE 2A85 - LESS-THAN OR EQUAL TO 2264 --LESS-THAN OR EQUAL TO, DOUBLE-LINE SLANTED 2AF9 --LESS-THAN OR SLANTED EQUAL TO 2A7D --LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE 2A81 --LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT 2A83 --LESS-THAN OR SLANTED EQUAL TO WITH DOT INSIDE 2A7F - LESS-THAN SIGN 003C --LESS-THAN WITH CIRCLE INSIDE 2A79 --LESS-THAN WITH DOT INSIDE, SLANTED EQUAL TO OR 2A97 --LESS-THAN WITH QUESTION MARK ABOVE 2A7B --LESS-THAN WITH UNDERBAR, DOUBLE NESTED 2AA3 -+LESS-THAN, MUCH 226A -+LESS-THAN, VERY MUCH 22D8 -+Letterlike Mathematical Symbols, Hebrew 2135 - Letterlike Symbols 2100 - level 2 lock 21EB - level 3 lock 21EF - level 3 select 21EE - LEZH, LATIN SMALL LETTER 026E - lf 000A --LIABILITY SIGN, LIMITED 32CF - LIBRA 264E -+ligature ae, latin capital 00C6 - ligature ae, latin small 00E6 - LIGATURE IJ, LATIN SMALL 0133 --LIGATURE LEFT HALF, COMBINING FE20 - LIGATURE OE, LATIN SMALL 0153 - ligature tie 0361 -+ligature tie below 035C -+Ligatures, Arabic FBEA - Ligatures, Armenian FB13 - Ligatures, Latin FB00 - LIGHTNING 2607 --LIMIT, APPROACHES THE 2250 - Limbu 1900 - Limbu Digits 1946 --LIMITED LIABILITY SIGN 32CF --LINE, AEGEAN WORD SEPARATOR 10100 -+LIMBU EXCLAMATION MARK 1944 -+LIMBU QUESTION MARK 1945 -+Limbu Signs 1939 -+LIMIT, APPROACHES THE 2250 -+LINE ABOVE, COMBINING DOUBLE VERTICAL 030E -+LINE ABOVE, COMBINING VERTICAL 030D -+LINE BACKWARD, PARTIAL 008C -+LINE BELOW, COMBINING DOUBLE VERTICAL 0348 -+LINE BELOW, COMBINING VERTICAL 0329 -+LINE FEED 000A -+line feed 21B4 -+LINE FEED, REVERSE 008D -+LINE FEED, SYMBOL FOR 240A -+LINE FORWARD, PARTIAL 008B -+line marker 2319 -+Line Operators, Vertical 2AEE -+LINE OVERLAY, COMBINING LONG VERTICAL 20D2 -+LINE OVERLAY, COMBINING SHORT VERTICAL 20D3 -+LINE SEPARATOR 2028 -+LINE SYMBOL, CENTRE 2104 -+LINE TABULATION 000B -+LINE TABULATION SET 008A -+LINE WITH MIDDLE DOT, VERTICAL 237F - line, beginning of 2310 - LINE, CENTRELINE LOW FE4E - LINE, COMBINING DOUBLE LOW 0333 -@@ -2327,67 +2792,39 @@ - LINE, DASHED LOW FE4D - LINE, DOUBLE LOW 2017 - LINE, DOUBLE VERTICAL 2016 -+line, end of 000A - LINE, LOW 005F - LINE, MODIFIER LETTER LOW VERTICAL 02CC - LINE, MODIFIER LETTER VERTICAL 02C8 --line, new 21B5 --line, next 0085 -+line, new 000A -+LINE, NEXT 0085 -+LINE, PROPERTY 214A - LINE, VERTICAL 007C - LINE, WAVY 2307 - LINE, WAVY LOW FE4F --LINE ABOVE, COMBINING DOUBLE VERTICAL 030E --LINE ABOVE, COMBINING VERTICAL 030D --LINE BELOW, COMBINING DOUBLE VERTICAL 0348 --LINE BELOW, COMBINING VERTICAL 0329 --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 - Linear B Ideograms 10080 - Linear B Syllabary 10000 --Lines For Terminal Graphics, Scan 23BA --Lira, Italian 00A3 -+Lines, Horizontal Scan 23BA -+Lines, Vertical 2223 - LIRA SIGN 20A4 -+lira, italian 00A3 -+lira, turkish 00A3 - liter 2113 --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 -+Logic Operators, Modal 27D8 - Logic Operators, Modal 27E0 - LOGICAL AND 2227 - LOGICAL AND, CURLY 22CF --LOGICAL AND, INTERSECTION WITH 2A44 - LOGICAL AND, N-ARY 22C0 --LOGICAL AND OPERATOR, TWO 2A07 - Logical Ands and Ors 2A51 - LOGICAL OR 2228 - LOGICAL OR, CURLY 22CE - LOGICAL OR, N-ARY 22C1 --LOGICAL OR, UNION WITH 2A45 --LOGICAL OR OPERATOR, TWO 2A08 - long 0304 - Long Arrows 27F5 --long cross 2020 --long dash 2015 --LONG DASH FROM LEFT MEMBER OF DOUBLE VERTICAL 2AE6 --LONG HORIZONTAL STROKE, CONTAINS WITH 22FA --LONG HORIZONTAL STROKE, ELEMENT OF WITH 22F2 --LONG LEFT TACK 27DE --LONG RIGHT LEG, LATIN CAPITAL LETTER N WITH 0220 --LONG RIGHT TACK 27DD -+long double slash overlay 20EB - LONG S, LATIN SMALL LETTER 017F - long slash overlay 0338 - LONG SOLIDUS OVERLAY, COMBINING 0338 -@@ -2412,73 +2849,133 @@ - LOW VERTICAL LINE, MODIFIER LETTER 02CC - LOW-9 QUOTATION MARK, DOUBLE 201E - LOW-9 QUOTATION MARK, SINGLE 201A -+lower integral 2A1C - lower rank than 227A -+Lowercase Alphabet, Latin 0061 - LOZENGE 25CA - LOZENGE, BLACK 29EB - LOZENGE, SQUARE 2311 --LOZENGE DIVIDED BY HORIZONTAL RULE 27E0 - lre 202A - lrm 200E - lro 202D -+LUNATE EPSILON SYMBOL, GREEK 03F5 -+LUNATE EPSILON SYMBOL, GREEK REVERSED 03F6 -+LUNATE SIGMA SYMBOL, GREEK 03F2 -+M WITH ACUTE, LATIN SMALL LETTER 1E3F -+M WITH DOT ABOVE, LATIN SMALL LETTER 1E41 -+M WITH DOT BELOW, LATIN SMALL LETTER 1E43 -+M WITH HOOK, LATIN SMALL LETTER 0271 -+M WITH LONG LEG, LATIN SMALL LETTER TURNED 0270 - M, COMBINING LATIN SMALL LETTER 036B - M, LATIN CAPITAL LETTER TURNED 019C -+M, LATIN LETTER SMALL CAPITAL 1D0D -+M, LATIN SMALL LETTER SIDEWAYS TURNED 1D1F - M, LATIN SMALL LETTER TURNED 026F - M, SCRIPT CAPITAL 2133 - m-matrix 2133 -+maatham, tamil 0BF4 - MACRON 00AF -+MACRON BELOW, COMBINING 0331 -+MACRON BELOW, COMBINING DOUBLE 035F - MACRON, COMBINING 0304 -+MACRON, COMBINING DOUBLE 035E - MACRON, MODIFIER LETTER 02C9 - MACRON, MODIFIER LETTER LOW 02CD - macron, spacing 00AF --MACRON BELOW, COMBINING 0331 - Malayalam 0D00 -+malayalam chandrakkala 0D4D -+Malayalam Consonants 0D15 -+Malayalam Dependent Vowel Signs 0D3E - Malayalam Digits 0D66 --Malayalam Letters 0D05 -+Malayalam Independent Vowels 0D05 -+MALAYALAM SIGN VIRAMA 0D4D -+malayalam vowel half-u 0D4D - MALE SIGN 2642 - MALTESE CROSS 2720 --Manchu Letters, Mongolian 1873 --Map Markers 2690 --mapping, bijective 2916 -+MANCHU COMMA, MONGOLIAN 1808 -+MANCHU FULL STOP, MONGOLIAN 1809 -+mandarin chinese fifth or neutral tone 02D9 -+mandarin chinese first tone 02C9 -+mandarin chinese fourth tone 02CB -+mandarin chinese second tone 02CA -+mandarin chinese third tone 02C7 -+Map Symbols, Dictionary and 2690 -+maplet 21A6 - maps from 27FB - maps from 2906 - maps to 27FC - maps to 2905 - maps to 2907 --mark, german 2133 -+mark pre-wwii, german 2133 - marker, histogram 25AE -+marker, line 2319 - Markers, Go 2686 --Markers, Map 2690 -+Marks, Combining Diacritical 0300 -+Marks, Combining Half FE20 -+MARRIAGE SYMBOL 26AD - mars 2642 - MASCULINE ORDINAL INDICATOR 00BA - MASU MARK 303C --MATERIALS, RECYCLING SYMBOL FOR GENERIC 267A -+Mathematical Alphanumeric Symbols 1D400 - Mathematical Brackets 27E6 -+mathematical constant 3.141592... pi 03C0 -+Mathematical Digits Symbols 1D7CE - Mathematical Operators 2200 -+Mathematical Operators, Dotted 2234 -+Mathematical Operators, Enclosed 2295 - Mathematical Operators, Supplemental 2A00 -+Mathematical Operators, Tilde 223B - MATHEMATICAL SPACE, MEDIUM 205F --Mathematical Symbols, Double-Struck Italic 2145 -+Mathematical Symbols 27C0 -+Mathematical Symbols 2980 -+Mathematical Symbols, Black-letter 1D504 -+Mathematical Symbols, Bold Fraktur 1D56C -+Mathematical Symbols, Bold Greek 1D6A8 -+Mathematical Symbols, Bold Italic 1D468 -+Mathematical Symbols, Bold Italic Greek 1D71C -+Mathematical Symbols, Bold Script 1D4D0 -+Mathematical Symbols, Dotless 1D6A4 -+Mathematical Symbols, Double-struck 1D538 -+Mathematical Symbols, Fraktur 1D504 -+Mathematical Symbols, Greek 1D6A8 -+Mathematical Symbols, Hebrew Letterlike 2135 -+Mathematical Symbols, Italic 1D434 -+Mathematical Symbols, Italic Greek 1D6E2 -+Mathematical Symbols, Monospace 1D670 -+Mathematical Symbols, Sans-serif 1D5A0 -+Mathematical Symbols, Sans-serif Bold 1D5D4 -+Mathematical Symbols, Sans-serif Bold Greek 1D756 -+Mathematical Symbols, Sans-serif Bold Italic 1D63C -+Mathematical Symbols, Sans-serif Bold Italic Greek 1D790 -+Mathematical Symbols, Sans-serif Italic 1D608 -+Mathematical Symbols, Script 1D49C - Mathematical Symbols-A, Miscellaneous 27C0 - Mathematical Symbols-B, Miscellaneous 2980 - MATRIX, HERMITIAN CONJUGATE 22B9 - MEASURED ANGLE 2221 - Measured Angles, Angles and 299B - MEASURED BY 225E -+med avdrag av 2052 - Medieval Superscript Letter Diacritics 0363 --medium, end of 0019 --MEDIUM, SYMBOL FOR END OF 2419 -+MEDIUM BLACK CIRCLE 26AB - MEDIUM MATHEMATICAL SPACE 205F - MEDIUM SMALL SQUARE, BLACK 25FE --MEDIUM SMALL SQUARE, WHITE 25FD -+MEDIUM SMALL WHITE CIRCLE 26AC - MEDIUM SQUARE, BLACK 25FC --MEDIUM SQUARE, WHITE 25FB -+MEDIUM WHITE CIRCLE 26AA -+MEDIUM, END OF 0019 -+MEDIUM, SYMBOL FOR END OF 2419 - MEMBER, CONTAINS AS 220B -+MEMBER, DOES NOT CONTAIN AS 220C - MEMBER, SMALL CONTAINS AS 220D --MEMBER OF DOUBLE VERTICAL, LONG DASH FROM LEFT 2AE6 -+Membership Signs, Set 2208 - MEMBERSHIP, Z NOTATION BAG 22FF - MERCURY 263F - merge 2A07 --message, privacy 009E --message waiting 0095 -+merpadi, tamil 0BF8 -+MESSAGE WAITING 0095 -+MESSAGE, PRIVACY 009E -+Metrical Symbols 23D1 - mho 2127 - MICRO SIGN 00B5 - mid space 2005 -@@ -2495,341 +2992,401 @@ - MILLE SIGN, PER 2030 - milreis 0024 - minim 264F --minim (alternate glyph) 264D --Minnan and Hakka, Chinese Bopomofo Extended for 31A0 --MINUS, CIRCLED 2296 --MINUS, DOT 2238 --MINUS, SET 2216 --MINUS, SQUARED 229F --MINUS, SUBSCRIPT 208B --MINUS, SUPERSCRIPT 207B -+minim alternate glyph 264D -+mining symbol 2692 - MINUS SIGN 2212 -+MINUS SIGN BELOW, COMBINING 0320 -+Minus Sign Operators, Plus and 2A22 - MINUS SIGN, COMMERCIAL 2052 - minus sign, hyphen or 002D - MINUS SIGN, MODIFIER LETTER 02D7 --MINUS SIGN, UNION WITH 2A41 --MINUS SIGN BELOW, COMBINING 0320 --MINUS SIGN IN TRIANGLE 2A3A --Minus Sign Operators, Plus and 2A22 --MINUS SIMILAR, SIMILAR 2A6C - MINUS TILDE 2242 -+MINUS, CIRCLED 2296 -+MINUS, DOT 2238 -+MINUS, SET 2216 -+MINUS, SQUARED 229F - MINUS-OR-PLUS SIGN 2213 - minutes 2032 - MINY 29FF --Miscellaneous Mathematical Symbols-A 27C0 --Miscellaneous Mathematical Symbols-B 2980 --Miscellaneous Symbols 2600 --Miscellaneous Symbols and Arrows 2B00 --Miscellaneous Technical 2300 --MISRA, ARABIC SIGN 060F -+Mkhedruli, Georgian 10D0 - mmsp 205F - Modal Logic Operators 27E0 - MODELS 22A7 -+Modifier Letter Extensions 1D2C -+Modifier Letters, Latin Superscript 02B0 - Modifier Letters, Spacing 02B0 --MODULO TWO SUM 2A0A -+Modifier Tone Letters A700 -+Modifiers Derived from Latin Letters, Phonetic 02B0 -+Modifiers, Phonetic 02B9 -+Modifiers, UPA 02EF - Mongolian 1800 -+Mongolian Basic Letters 1820 -+MONGOLIAN BIRGA 1800 - MONGOLIAN COLON 1804 - MONGOLIAN COMMA 1802 - mongolian currency 20AE - Mongolian Digits 1810 --Mongolian Extensions for Sanskrit and Tibetan 1880 -+MONGOLIAN ELLIPSIS 1801 -+Mongolian Extensions 1843 - Mongolian Format Controls 180B -+MONGOLIAN FOUR DOTS 1805 -+MONGOLIAN FREE VARIATION SELECTOR ONE 180B -+MONGOLIAN FREE VARIATION SELECTOR THREE 180D -+MONGOLIAN FREE VARIATION SELECTOR TWO 180C - MONGOLIAN FULL STOP 1803 --Mongolian Manchu Letters 1873 --Mongolian Sibe Letters 185D --Mongolian Todo Letters 1843 --Monogram and Digram Symbols, Yijing 268C --Monogram Symbol, Tai Xuan Jing 1D300 -+MONGOLIAN MANCHU COMMA 1808 -+MONGOLIAN MANCHU FULL STOP 1809 -+MONGOLIAN NIRUGU 180A -+Mongolian Punctuation 1800 -+MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER 1807 -+MONGOLIAN TODO SOFT HYPHEN 1806 -+MONGOLIAN VOWEL SEPARATOR 180E -+Monogram and Digram Symbols, Yijing / I Ching 268A -+Monospace Digits 1D7F6 -+Monospace Mathematical Symbols 1D670 - MONOSTABLE SYMBOL 238D - MONTH SIGN, TAMIL 0BF4 - Months, Enclosed CJK Letters and 3200 --Months, Telegraph Symbols for 32C0 -+Months, Ideographic Telegraph Symbols for 32C0 - MOON, FIRST QUARTER 263D - MOON, LAST QUARTER 263E - most positive 223E -+moustache, left 23B0 -+moustache, right 23B1 - MUCH GREATER-THAN 226B - MUCH GREATER-THAN, VERY 22D9 - MUCH LESS-THAN 226A - MUCH LESS-THAN, VERY 22D8 - MULTIMAP 22B8 --MULTIMAP, DOUBLE-ENDED 29DF --MULTIMAP, LEFT 27DC --MULTIPLICATION, MULTISET 228D - Multiplication and Division Sign Operators 2A2F - MULTIPLICATION SIGN 00D7 --MULTIPLICATION SIGN BELOW, SUBSET WITH 2AC1 --MULTIPLICATION SIGN BELOW, SUPERSET WITH 2AC2 - 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 -+Musical Notation, Ancient Greek 1D200 -+Musical Symbols 1D100 -+Musical Symbols, Balinese 1B61 -+Musical Symbols, Basic 2669 -+Musical Symbols, Byzantine 1D000 - mutton 2003 - mutton quad 2001 --mvs 180E - Myanmar 1000 -+Myanmar Consonants 1000 -+Myanmar Dependent Vowel Signs 102C - Myanmar Digits 1040 -+Myanmar Independent Vowels 1021 -+myanmar killer 1039 -+MYANMAR SIGN VIRAMA 1039 -+Myanmar Signs 1036 -+N WITH ACUTE, LATIN SMALL LETTER 0144 -+N WITH CARON, LATIN SMALL LETTER 0148 -+N WITH CEDILLA, LATIN SMALL LETTER 0146 -+N WITH CIRCUMFLEX BELOW, LATIN SMALL LETTER 1E4B -+N WITH CURL, LATIN SMALL LETTER 0235 -+N WITH DOT ABOVE, LATIN SMALL LETTER 1E45 -+N WITH DOT BELOW, LATIN SMALL LETTER 1E47 -+N WITH GRAVE, LATIN SMALL LETTER 01F9 -+N WITH LEFT HOOK, LATIN CAPITAL LETTER 019D -+N WITH LEFT HOOK, LATIN SMALL LETTER 0272 -+N WITH LINE BELOW, LATIN SMALL LETTER 1E49 -+N WITH LONG RIGHT LEG, LATIN CAPITAL LETTER 0220 -+N WITH LONG RIGHT LEG, LATIN SMALL LETTER 019E -+N WITH RETROFLEX HOOK, LATIN SMALL LETTER 0273 -+N WITH TILDE, LATIN CAPITAL LETTER 00D1 -+N WITH TILDE, LATIN SMALL LETTER 00F1 - N, DOUBLE-STRUCK CAPITAL 2115 - N, LATIN LETTER SMALL CAPITAL 0274 --N WITH LONG RIGHT LEG, LATIN CAPITAL LETTER 0220 -+N, LATIN LETTER SMALL CAPITAL REVERSED 1D0E - N-ARY COPRODUCT 2210 - n-ary dijkstra choice 2AFF - N-ARY INTERSECTION 22C2 - N-ARY LOGICAL AND 22C0 - N-ARY LOGICAL OR 22C1 -+N-ary Operators 22C0 - N-ary Operators 2A00 - N-ARY PRODUCT 220F - N-ARY SUMMATION 2211 - N-ARY SUMMATION, DOUBLE-STRUCK 2140 -+N-ARY TIMES OPERATOR 2A09 - N-ARY UNION 22C3 - N-ARY WHITE VERTICAL BAR 2AFF -+naal, tamil 0BF3 - NABLA 2207 - NAIRA SIGN 20A6 - NAND 22BC --nang 0323 - NARROW NO-BREAK SPACE 202F - nasal hook 0328 --NATIONAL DIGIT SHAPES 206E -+natural exponent 212F - natural number 2115 - NATURAL SIGN, MUSIC 266E --nbsp 0080 -+nbsp 00A0 -+nearly equals 2252 - necessarily satisfies 2AF1 --NEGATED WITH VERTICAL BAR, INFINITY 29DE --negation 20D3 --NEGATION SLASH, DOES NOT DIVIDE WITH REVERSED 2AEE --negative acknowledge 0015 --negative acknowledge, graphic for 237B -+NEGATIVE ACKNOWLEDGE 0015 - NEGATIVE ACKNOWLEDGE, SYMBOL FOR 2415 -+nel 0085 - NEPTUNE 2646 --never (modal operator) 27E1 --never (modal operator), was 27E2 --never be (modal operator), will 27E3 --new line 21B5 -+NEUTER 26B2 -+neutral quotation mark 0022 -+neutral single quotation mark 0027 -+neutral tone, mandarin chinese fifth or 02D9 -+new line 000A - NEW SHEQEL SIGN 20AA -+New Tai Lue 1980 -+New Tai Lue Digits 19D0 -+New Testament Editorial Symbols 2E00 -+new testament majority text 1D510 - NEWLINE, SYMBOL FOR 2424 --next line 0085 -+NEXT LINE 0085 - NEXT PAGE 2398 - NIB, BLACK 2712 -+NIB, WHITE 2711 - nigerian currency 20A6 -+NIGGAHITA, LAO 0ECD -+NIKAHIT, KHMER SIGN 17C6 -+NIKHAHIT, THAI CHARACTER 0E4D - nim-addition 2A27 -+NIRUGU, MONGOLIAN 180A -+NKo 07C0 -+nl 000A - nnbsp 202F --no break here 0083 --no break space, graphic for 237D -+no 20E0 -+NO BREAK HERE 0083 -+no break space, keyboard symbol for 237D - NO-BREAK SPACE 00A0 - NO-BREAK SPACE, NARROW 202F - NO-BREAK SPACE, ZERO WIDTH FEFF - NODE, ASCENDING 260A - NODE, DESCENDING 260B --NOMINAL DIGIT SHAPES 206F - NON-BREAKING HYPHEN 2011 - non-breaking space 00A0 - NON-JOINER, ZERO WIDTH 200C -+non-spacing iota below, greek 0345 - non-theorem 22A3 --Noncharacters FDD0 --Noncharacters FFFE --Noncharacters 1FFFE --Noncharacters 2FFFE --Noncharacters 3FFFE --Noncharacters 4FFFE --Noncharacters 5FFFE --Noncharacters 6FFFE --Noncharacters 7FFFE --Noncharacters 8FFFE --Noncharacters 9FFFE --Noncharacters AFFFE --Noncharacters BFFFE --Noncharacters CFFFE --Noncharacters DFFFE --Noncharacters EFFFE --Noncharacters FFFFE --Noncharacters 10FFFE --NONFORKING 2ADD -+Noncharacters *FFFE -+Noncharacters *FFFF -+Noncharacters FDD* -+Noncharacters FDE* - NOR 22BD --NORMAL SUBGROUP, CONTAINS AS 22B3 -+NORMAL FACTOR SEMIDIRECT PRODUCT, LEFT 22C9 -+NORMAL FACTOR SEMIDIRECT PRODUCT, RIGHT 22CA - NORMAL SUBGROUP OF 22B2 -+Normal Subgroup Signs 22EA -+NORMAL SUBGROUP, CONTAINS AS 22B3 - not 223C --Not a Character FFFE --Not a Character FFFF --NOT ALMOST EQUAL TO, PRECEDES ABOVE 2AB9 --NOT ALMOST EQUAL TO, SUCCEEDS ABOVE 2ABA -+NOT A SUBSET OF 2284 -+NOT A SUPERSET OF 2285 -+NOT ALMOST EQUAL TO 2249 - NOT AN ELEMENT OF 2209 --NOT APPROXIMATE, GREATER-THAN AND 2A8A --NOT APPROXIMATE, LESS-THAN AND 2A89 -+NOT ASYMPTOTICALLY EQUAL TO 2244 - NOT CHECK MARK 237B --NOT DIVIDE WITH REVERSED NEGATION SLASH, DOES 2AEE - NOT EQUAL TO 2260 --NOT EQUAL TO, GREATER-THAN AND SINGLE-LINE 2A88 --NOT EQUAL TO, LESS-THAN AND SINGLE-LINE 2A87 --NOT EQUAL TO, PRECEDES ABOVE 2AB5 --NOT EQUAL TO, PRECEDES ABOVE SINGLE-LINE 2AB1 --NOT EQUAL TO, SUBSET OF ABOVE 2ACB --NOT EQUAL TO, SUCCEEDS ABOVE 2AB6 --NOT EQUAL TO, SUCCEEDS ABOVE SINGLE-LINE 2AB2 --NOT EQUAL TO, SUPERSET OF ABOVE 2ACC -+NOT IDENTICAL TO 2262 - not independent 2ADC -+NOT PARALLEL TO 2226 - NOT SIGN 00AC --NOT SIGN, DOUBLE STROKE 2AEC - NOT SIGN, REVERSED 2310 --NOT SIGN, REVERSED DOUBLE STROKE 2AED - 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 --null 0000 --NULL, SYMBOL FOR 2400 -+NUKTA, DEVANAGARI SIGN 093C -+NULL 0000 - null set 2205 --number, natural 2115 -+NULL, SYMBOL FOR 2400 - Number Forms 2150 --Number Runes, Golden 16EE - NUMBER SIGN 0023 --NUBMER SIGN, ARABIC 0600 --NUMBER SIGN, TAMIl 0BFA -+NUMBER SIGN, TAMIL 0BFA - number symbol, real 210A - NUMBER ZERO, IDEOGRAPHIC 3007 --Numbers, Aegean 10100 -+number, natural 2115 -+Numbers and Punctuation, Cuneiform 12400 -+Numbers Followed by Period 2488 -+Numbers, Ancient Greek 10140 - Numbers, Circled 2460 - Numbers, Circled 3251 - Numbers, Circled 32B1 - Numbers, Circled Inverse 2776 -+numbers, complex 2102 - Numbers, Double Circled 24F5 -+Numbers, Ethiopic 1369 - Numbers, Parenthesized 2474 --numbers, the set of complex 2102 --numbers, the set of rational 211A --numbers, the set of real 211D --Numbers, White On Black Circled 24EB --Numbers Period 2488 --Numerals, Hangzhou-style 3021 -+numbers, rational 211A -+numbers, real 211D -+Numbers, Runic Golden 16EE -+Numbers, Tamil 0BE7 -+Numbers, White on Black Circled 24EB -+Numerals, Hangzhou 3021 - Numerals, Old Italic 10320 - Numerals, Roman 2160 -+Numerals, Suzhou 3021 - NUMERATOR ONE, FRACTION 215F -+Numeric Symbols for Divination, Khmer 17F0 - numerics lock 21ED - NUMERO SIGN 2116 - nut 2002 -+o bar, latin capital letter 019F -+o bar, latin small letter 0275 -+o e, latin small letter 0153 -+o slash, latin capital letter 00D8 -+o slash, latin small letter 00F8 -+O WITH ACUTE, LATIN CAPITAL LETTER 00D3 -+O WITH ACUTE, LATIN SMALL LETTER 00F3 -+O WITH BREVE, LATIN SMALL LETTER 014F -+O WITH CARON, LATIN SMALL LETTER 01D2 -+O WITH CIRCUMFLEX, LATIN CAPITAL LETTER 00D4 -+O WITH CIRCUMFLEX, LATIN SMALL LETTER 00F4 -+O WITH DIAERESIS, LATIN CAPITAL LETTER 00D6 -+O WITH DIAERESIS, LATIN SMALL LETTER 00F6 -+O WITH DOT ABOVE, LATIN SMALL LETTER 022F -+O WITH DOT BELOW, LATIN SMALL LETTER 1ECD -+O WITH DOUBLE ACUTE, LATIN SMALL LETTER 0151 -+O WITH DOUBLE GRAVE, LATIN SMALL LETTER 020D -+O WITH GRAVE, LATIN CAPITAL LETTER 00D2 -+O WITH GRAVE, LATIN SMALL LETTER 00F2 -+O WITH HOOK ABOVE, LATIN SMALL LETTER 1ECF -+O WITH HORN, LATIN SMALL LETTER 01A1 -+O WITH INVERTED BREVE, LATIN SMALL LETTER 020F -+O WITH MACRON, LATIN SMALL LETTER 014D -+O WITH MIDDLE TILDE, LATIN CAPITAL LETTER 019F -+O WITH OGONEK, LATIN SMALL LETTER 01EB -+O WITH STROKE, LATIN CAPITAL LETTER 00D8 -+O WITH STROKE, LATIN SMALL LETTER 00F8 -+O WITH STROKE, LATIN SMALL LETTER SIDEWAYS 1D13 -+O WITH TILDE, LATIN CAPITAL LETTER 00D5 -+O WITH TILDE, LATIN SMALL LETTER 00F5 - O, COMBINING LATIN SMALL LETTER 0366 - o, latin capital letter barred 019F - O, LATIN CAPITAL LETTER OPEN 0186 -+O, LATIN LETTER SMALL CAPITAL 1D0F -+O, LATIN LETTER SMALL CAPITAL OPEN 1D10 - O, LATIN SMALL LETTER BARRED 0275 -+O, LATIN SMALL LETTER BOTTOM HALF 1D17 - O, LATIN SMALL LETTER OPEN 0254 -+O, LATIN SMALL LETTER SIDEWAYS 1D11 -+O, LATIN SMALL LETTER SIDEWAYS OPEN 1D12 -+O, LATIN SMALL LETTER TOP HALF 1D16 - O, SCRIPT SMALL 2134 --o bar 019F --o bar 0275 --o e, latin small letter 0153 --O WITH MIDDLE TILDE, LATIN CAPITAL LETTER 019F --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 LETTER TURNED 1D14 - OE, LATIN SMALL LIGATURE 0153 - Ogham 1680 -+Ogham Forfeda Supplement 1695 -+Ogham Punctuation 169B - OGHAM SPACE MARK 1680 -+Ogham Traditional Letters 1681 - OGONEK 02DB - OGONEK, COMBINING 0328 - OHM SIGN 2126 - OHM SIGN, INVERTED 2127 - OI, LATIN SMALL LETTER 01A3 -+Old Italic 10300 -+Old Persian 103A0 -+old testament, greek 1D516 - OM, DEVANAGARI 0950 -+OM, TIBETAN SYLLABLE 0F00 -+omega pi 03D6 - OMEGA, LATIN SMALL LETTER CLOSED 0277 --ONE, FRACTION NUMERATOR 215F --ONE, SUPERSCRIPT 00B9 - ONE DOT LEADER 2024 - ONE HALF, VULGAR FRACTION 00BD - ONE QUARTER, VULGAR FRACTION 00BC -+ONE, FRACTION NUMERATOR 215F -+ONE, SUPERSCRIPT 00B9 - OPEN BOX 2423 - OPEN BOX, SHOULDERED 237D -+OPEN E WITH HOOK, LATIN SMALL LETTER REVERSED 025D - 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 E, LATIN SMALL LETTER TURNED 1D08 - OPEN O, LATIN CAPITAL LETTER 0186 -+OPEN O, LATIN LETTER SMALL CAPITAL 1D10 - OPEN O, LATIN SMALL LETTER 0254 -+OPEN O, LATIN SMALL LETTER SIDEWAYS 1D12 - 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 --OPERATOR, CIRCLED DOT 2299 --OPERATOR, CIRCLED RING 229A --OPERATOR, DIAMOND 22C4 --OPERATOR, DOT 22C5 --OPERATOR, RING 2218 --OPERATOR, SQUARED DOT 22A1 --OPERATOR, STAR 22C6 --OPERATOR, TILDE 223C -+OPERATING SYSTEM COMMAND 009D -+Operators Supplement, Mathematical 2A00 - Operators, Database Theory 27D5 --Operators, Invisible 2063 -+Operators, Dotted Mathematical 2234 -+Operators, Double 22D0 -+Operators, Enclosed Mathematical 2295 -+Operators, Invisible 2061 -+Operators, Large 29F8 - Operators, Mathematical 2200 - Operators, Modal Logic 27E0 - Operators, Multiplication and Division Sign 2A2F --Operators, N-Ary 2A00 -+Operators, N-ary 22C0 -+Operators, N-ary 2A00 - Operators, Plus and Minus Sign 2A22 --Operators, Relational 2A66 --Operators, Specialized plus sign 29FA -+Operators, Relational 29E3 -+Operators, Specialized Plus Sign 29FA - Operators, Supplemental Mathematical 2A00 -+Operators, Tilde Mathematical 223B - Operators, Vertical Line 2AEE - OPPOSITION 260D --Optical Character Recognition (OCR) 2440 -+Optical Character Recognition, OCR 2440 - OPTION KEY 2325 - OR, CURLY LOGICAL 22CE - OR, DOUBLE LOGICAL 2A54 - OR, LOGICAL 2228 - OR, N-ARY LOGICAL 22C1 --OR, SLOPING LARGE 2A57 --OR, TWO INTERSECTING LOGICAL 2A56 --OR, UNION WITH LOGICAL 2A45 --OR OPERATOR, TWO LOGICAL 2A08 --OR WITH DOT ABOVE, LOGICAL 2A52 --OR WITH DOUBLE OVERBAR, LOGICAL 2A62 --OR WITH DOUBLE UNDERBAR, LOGICAL 2A63 --OR WITH HORIZONTAL DASH, LOGICAL 2A5D --OR WITH MIDDLE STEM, LOGICAL 2A5B - order 2134 -+Order Relation Precedence Signs 227A -+Order Relation Precedence Signs 22DE - ORDINAL INDICATOR, FEMININE 00AA - ORDINAL INDICATOR, MASCULINE 00BA - ordinarily satisfies 2AE2 -+Ordinary Diacritics 0300 - ORIGIN, DIMENSION 2331 - ORIGINAL OF 22B6 - ORIGINAL OF, SQUARE 2290 - Oriya 0B00 -+Oriya Consonants 0B15 -+Oriya Dependent Vowel Signs 0B3E - Oriya Digits 0B66 --Oriya Letters 0B05 -+Oriya Independent Vowels 0B05 -+ORIYA ISSHAR 0B70 - Ornamental Angle Quotation Marks 276E - Ornamental Brackets 2768 --Ornamental Brackets 2770 - Ornaments, Heart 2763 - Ornaments, Punctuation 275B -+Ornaments, Quotation Mark 275B - ORNATE LEFT PARENTHESIS FD3E --ors, logical ands and 2A51 -+ORNATE RIGHT PARENTHESIS FD3F -+Ors, Logical Ands and 2A51 - ORTHODOX CROSS 2626 - orthogonal to 22A5 - Osmanya 10480 - Osmanya Digits 104A0 -+OU, LATIN LETTER SMALL CAPITAL 1D15 - OU, LATIN SMALL LETTER 0223 - OUNCE SIGN 2125 --OUTER JOIN, FULL 27D7 --OUTER JOIN, LEFT 27D5 --OUTER JOIN, RIGHT 27D6 --OUTLINE, SQUARE WITH CONTOURED 29E0 --OVER INFINITY, TIE 29DD --OVER TOP SQUARE BRACKET, BOTTOM SQUARE BRACKET 23B6 - overbar, apl 00AF --OVERLAPPING LESS-THAN, GREATER-THAN 2AA4 --OVERLAPPING LOGICAL AND, LOGICAL OR 2A59 -+OVERLAY, COMBINING ANTICLOCKWISE RING 20DA - OVERLAY, COMBINING CLOCKWISE RING 20D9 -+overlay, combining counterclockwise ring 20DA - OVERLAY, COMBINING DOUBLE VERTICAL STROKE 20E6 - OVERLAY, COMBINING LEFTWARDS ARROW 20EA -+OVERLAY, COMBINING LONG DOUBLE SOLIDUS 20EB - OVERLAY, COMBINING LONG SOLIDUS 0338 - OVERLAY, COMBINING LONG STROKE 0336 - OVERLAY, COMBINING LONG VERTICAL LINE 20D2 -@@ -2839,6 +3396,7 @@ - OVERLAY, COMBINING SHORT STROKE 0335 - OVERLAY, COMBINING SHORT VERTICAL LINE 20D3 - OVERLAY, COMBINING TILDE 0334 -+overlay, long double slash 20EB - overlay, long slash 0338 - overlay, short slash 0337 - overline 00AF -@@ -2855,162 +3413,173 @@ - overscore, spacing 203E - Overscores and Underscores FE49 - Overstruck Diacritics 0334 --oxia 0301 -+oxia, greek 0301 -+P WITH ACUTE, LATIN SMALL LETTER 1E55 -+P WITH DOT ABOVE, LATIN SMALL LETTER 1E57 -+P WITH HOOK, LATIN SMALL LETTER 01A5 - P, DOUBLE-STRUCK CAPITAL 2119 -+P, LATIN LETTER SMALL CAPITAL 1D18 - P, SCRIPT CAPITAL 2118 --PAGE, NEXT 2398 --PAGE, PREVIOUS 2397 - page down 21DF - page up 21DE -+PAGE, NEXT 2398 -+PAGE, PREVIOUS 2397 -+PALATAL HOOK, LATIN SMALL LETTER T WITH 01AB - PALATALIZED HOOK BELOW, COMBINING 0321 -+PALUTA, TIBETAN MARK 0F85 - PAMUDPOD, HANUNOO SIGN 1734 -+PAPER SIGN, PERMANENT 267E - PAPER SYMBOL, PARTIALLY-RECYCLED 267D - PAPER SYMBOL, RECYCLED 267C -+papyrological hyphen 035C - PARAGRAPH SEPARATOR 2029 -+PARAGRAPH SEPARATOR, ETHIOPIC 1368 - PARAGRAPH SEPARATOR, GEORGIAN 10FB - paragraph separator, urdu 203B - paragraph sign 00B6 --paragraph sign, european 00A7 - PARAGRAPH SIGN ORNAMENT, CURVED STEM 2761 --PARALLEL, CIRCLED 29B7 --PARALLEL, EQUALS SIGN AND SLANTED 29E3 --PARALLEL, IDENTICAL TO AND SLANTED 29E5 -+paragraph sign, european 00A7 -+paraguayan currency 20B2 - PARALLEL TO 2225 --parallel to, identical and 2A68 --PARALLEL WITH HORIZONTAL STROKE 2AF2 --PARALLEL WITH TILDE ABOVE, EQUALS SIGN AND SLANTED 29E4 --PARALLEL WITH TILDE OPERATOR 2AF3 -+PARALLEL TO, NOT 2226 - PARALLELOGRAM, BLACK 25B0 - parenthesis, closing 0029 - PARENTHESIS, LEFT 0028 -+PARENTHESIS, LEFT WHITE 2985 - parenthesis, opening 0028 - PARENTHESIS, ORNATE LEFT FD3E -+PARENTHESIS, ORNATE RIGHT FD3F - PARENTHESIS, RIGHT 0029 --PARENTHESIS, SUBSCRIPT LEFT 208D --PARENTHESIS, SUPERSCRIPT LEFT 207D --Parenthesized Ideographs 3220 -+PARENTHESIS, RIGHT WHITE 2986 -+Parenthesized CJK Ideographs 3220 - Parenthesized Korean Hangul Elements 3200 - Parenthesized Korean Hangul Syllables 320E - Parenthesized Latin Letters 249C - Parenthesized Numbers 2474 --PART ALTERNATION MARK 303D --PART INTEGRAL, FINITE 2A0D - parted rule 00A6 - PARTIAL DIFFERENTIAL 2202 --partial function, z notation 21F8 --partial injection, z notation 2914 --partial line down 008B --partial line up 008C --partial relation, z notation 21F9 --partial surjection, z notation 2900 -+partial function 21F8 -+partial injection 2914 -+PARTIAL LINE BACKWARD 008C -+PARTIAL LINE FORWARD 008B -+partial relation 21F9 -+partial surjection 2900 - PARTIALLY-RECYCLED PAPER SYMBOL 267D --PARTNERSHIP SIGN 3250 --Parts, Summation Sign 23B2 -+PARTNERSHIP SYMBOL, UNMARRIED 26AF -+patiw, armenian 055F -+patru, tamil 0BF6 -+pause 2389 - pdf 202C - PEACE SYMBOL 262E --PENCIL, UPPER RIGHT 2710 -+PENCIL 270F - Pencil Dingbats 270E -+PENCIL, LOWER RIGHT 270E -+PENCIL, UPPER RIGHT 2710 - PENNY SIGN, GERMAN 20B0 --per 2118 -+pentonkion, greek 2059 - PER MILLE SIGN 2030 -+PER SIGN 214C - PER TEN THOUSAND SIGN 2031 -+per thousand 2030 - PERCENT SIGN 0025 --PERCENT SIGN, ARABIC 066A - PERCUSSIVE, LATIN LETTER BIDENTAL 02AD - PERCUSSIVE, LATIN LETTER BILABIAL 02AC - period 002E -+Period, Numbers Followed by 2488 - PERISPOMENI, COMBINING GREEK 0342 -+PERMANENT PAPER SIGN 267E - perpendicular 22A5 --PERPENDICULAR, CIRCLED 29B9 --PERPENDICULAR WITH S 2AE1 --Persian and Urdu, Eastern Arabic-Indic Digits for 06F0 -+Persian, Old 103A0 - PERSPECTIVE 2306 - PESETA SIGN 20A7 - PESO SIGN 20B1 -+Phags-pa A840 - PHARYNGEAL VOICED FRICATIVE, LATIN LETTER 0295 -+PHI SYMBOL, GREEK 03D5 - PHI, LATIN SMALL LETTER 0278 --Philippine Scripts, Generic Punctuation For 1735 --Phonetic Alphabet, International 0250 -+PHILIPPINE DOUBLE PUNCTUATION 1736 -+PHILIPPINE SINGLE PUNCTUATION 1735 -+phillipine currency 20B1 -+Phoenician 10900 -+Phonetic Digraphs 02A3 - Phonetic Extensions 1D00 - Phonetic Extensions, Katakana 31F0 --Phonetic Extensions, non-IPA 1D00 --Phonetic Extensions for Ainu 31F0 -+Phonetic Modifiers 02B9 - Phonetic Modifiers Derived from Latin Letters 02B0 --Phonetics and Symbols Area, CJK 2E00 -+Phonetics and Symbols Area, CJK 2E80 - phonorecord sign 2117 -+phul 2055 -+PI SYMBOL, GREEK 03D6 - PI, DOUBLE-STRUCK CAPITAL 213F --pi, mathematical constant 03C0 -+PI, DOUBLE-STRUCK SMALL 213C -+PI, GREEK SMALL LETTER 03C0 -+pi, mathematical constant 3.141592... 03C0 - Pictures for Control Codes, Graphic 2400 --Pieces, Bracket 239B --Pieces, Bracket 23B0 - PILCROW SIGN 00B6 - PILCROW SIGN, REVERSED 204B --Pinyin Diacritic-vowel Combinations 01CD -+pillow 2311 - pipe 01C0 - pipe, double 01C1 - pipe, double-barred 01C2 --PIPING, Z NOTATION SCHEMA 2A20 - PISCES 2653 -+piska 2052 - PITCHFORK 22D4 --PITCHFORK WITH TEE TOP 2ADA - PLACE OF INTEREST SIGN 2318 - plaintiff 226C - PLANCK CONSTANT 210E - PLANCK CONSTANT OVER TWO PI 210F - Planet Symbols 263F -+Plastics Recycling Symbols 2673 - Playing Card Suits 2660 -+Plus and Minus Sign Operators 2A22 -+PLUS SIGN 002B -+PLUS SIGN BELOW, COMBINING 031F -+Plus Sign Operators, Specialized 29FA -+PLUS SIGN, MODIFIER LETTER 02D6 - PLUS, CIRCLED 2295 - PLUS, DOT 2214 - PLUS, DOUBLE 29FA --PLUS, N-ARY UNION OPERATOR WITH 2A04 - PLUS, SQUARED 229E - PLUS, TRIPLE 29FB --Plus and Minus Sign Operators 2A22 --PLUS OPERATOR, N-ARY CIRCLED 2A01 --PLUS SIGN 002B --PLUS SIGN, EQUALS SIGN ABOVE 2A71 --PLUS SIGN, MODIFIER LETTER 02D6 --PLUS SIGN, SUBSCRIPT 208A --PLUS SIGN, SUPERSCRIPT 207A --PLUS SIGN ABOVE EQUALS SIGN 2A72 --PLUS SIGN BELOW, COMBINING 031F --PLUS SIGN BELOW, SUBSET WITH 2ABF --PLUS SIGN BELOW, SUPERSET WITH 2AC0 --PLUS SIGN IN LEFT HALF CIRCLE 2A2D --PLUS SIGN IN RIGHT HALF CIRCLE 2A2E --PLUS SIGN IN TRIANGLE 2A39 --Plus Sign Operators, Specialized 29FA - PLUS-MINUS SIGN 00B1 - PLUTO 2647 --POETIC VERSE SIGN, ARABIC 060E --POINT OPERATOR, INTEGRAL AROUND A 2A15 -+point, decimal 002E -+POINT, HYPHENATION 2027 - Pointers 25BA --Points, Arabic 064B -+Pointing Hand Symbols 261A -+Pointing Index Finger Dingbats 261A -+POINTING INDEX, BLACK LEFT 261A -+POINTING INDEX, BLACK RIGHT 261B -+POINTING INDEX, WHITE DOWN 261F -+POINTING INDEX, WHITE LEFT 261C -+POINTING INDEX, WHITE RIGHT 261E -+POINTING INDEX, WHITE UP 261D -+Points and Punctuation, Hebrew 05B0 - Points, Hebrew 05B0 -+Points, Syriac 0730 - poison 2620 --Political Symbols, Religious and 2626 -+Political Symbols, Religious and 2625 -+Polygonal Symbols 2B12 -+Polytonic Greek, Precomposed 1F00 - POP DIRECTIONAL FORMATTING 202C - POSITION INDICATOR 2316 --positive, most 223E --positive difference, sum or 2A26 - positive difference or sum 2A24 -+positive difference, sum or 2A26 -+positive, most 223E - POSTAL MARK 3012 --POSTAL MARK, CIRCLED 3036 - POSTAL MARK FACE 3020 -+POSTAL MARK, CIRCLED 3036 - pound sign 0023 - POUND SIGN 00A3 - pound sterling 00A3 - pounds 2114 --power set 2118 -+power set 1D4AB -+Precedence Signs, Order Relation 227A -+Precedence Signs, Order Relation 22DE - PRECEDES 227A --PRECEDES, DOUBLE 2ABB --PRECEDES ABOVE ALMOST EQUAL TO 2AB7 --PRECEDES ABOVE EQUALS SIGN 2AB3 --PRECEDES ABOVE NOT ALMOST EQUAL TO 2AB9 --PRECEDES ABOVE NOT EQUAL TO 2AB5 --PRECEDES ABOVE SINGLE-LINE EQUALS SIGN 2AAF --PRECEDES ABOVE SINGLE-LINE NOT EQUAL TO 2AB1 - PRECEDES UNDER RELATION 22B0 -+PRECEDES, DOUBLE 2ABB -+Precomposed Polytonic Greek 1F00 - PRESCRIPTION TAKE 211E - Presentation Forms, Alphabetic FB00 - Presentation Forms, Hebrew FB1D -@@ -3018,6 +3587,9 @@ - Presentation Forms-B, Arabic FE70 - PREVIOUS PAGE 2397 - PRIME 2032 -+PRIME QUOTATION MARK, DOUBLE 301E -+PRIME QUOTATION MARK, LOW DOUBLE 301F -+PRIME QUOTATION MARK, REVERSED DOUBLE 301D - PRIME, DOUBLE 2033 - PRIME, MODIFIER LETTER 02B9 - PRIME, MODIFIER LETTER DOUBLE 02BA -@@ -3026,71 +3598,90 @@ - PRIME, REVERSED DOUBLE 2036 - PRIME, REVERSED TRIPLE 2037 - PRIME, TRIPLE 2034 --PRIME QUOTATION MARK, DOUBLE 301E --PRIME QUOTATION MARK, LOW DOUBLE 301F --PRIME QUOTATION MARK, REVERSED DOUBLE 301D - PRINT SCREEN SYMBOL 2399 --privacy message 009E -+PRIVACY MESSAGE 009E - Private Use Area E000 - Private Use Area-A, Supplementary F0000 - Private Use Area-B, Supplementary 100000 --private use one 0091 --private use two 0092 --PRODUCT, CLOSED UNION WITH SERIFS AND SMASH 2A50 -+PRIVATE USE ONE 0091 -+PRIVATE USE TWO 0092 -+product sign 220F -+product, cartesian 00D7 - product, direct 2299 - PRODUCT, INTERIOR 2A3C -+PRODUCT, LEFT NORMAL FACTOR SEMIDIRECT 22C9 - PRODUCT, LEFT SEMIDIRECT 22CB - PRODUCT, N-ARY 220F -+PRODUCT, RIGHT NORMAL FACTOR SEMIDIRECT 22CA -+PRODUCT, RIGHT SEMIDIRECT 22CC - PRODUCT, RIGHTHAND INTERIOR 2A3D - PRODUCT, SHUFFLE 29E2 - PRODUCT, SMASH 2A33 - product, tensor 2297 - PRODUCT, VECTOR OR CROSS 2A2F - PRODUCT, WREATH 2240 --PRODUCT WITH BOTTOM CLOSED, SEMIDIRECT 2A32 --PROFILE, ALL AROUND- 232E -+PROGRAM COMMAND, APPLICATION 009F - prohibition 20E0 --PROJECTION, Z NOTATION SCHEMA 2A21 - PROJECTIVE 2305 - PROOF, END OF 220E -+proper intersection 22D4 - PROPERTY LINE 214A - PROPORTION 2237 - PROPORTION, GEOMETRIC 223A - PROPORTIONAL TO 221D --proportional to, varies with 223C -+proportional to 223C - proves 22A2 --psili 0313 -+psili, greek 0313 - published 2117 - pullback 27D3 -+Punctuation and Signs, Greek 0374 -+Punctuation and Signs, Myanmar 104A -+Punctuation and Signs, Syriac 0700 -+Punctuation and Symbols, ASCII 0020 -+Punctuation and Symbols, Latin-1 00A0 -+Punctuation for Vertical Text, Double 2047 -+Punctuation Ornaments 275B -+PUNCTUATION SPACE 2008 -+Punctuation, Arabic 060C -+Punctuation, Canadian Syllabics 166D - Punctuation, CJK Symbols and 3000 -+Punctuation, Cuneiform Numbers and 12400 -+Punctuation, Ethiopic 1361 - Punctuation, General 2000 --Punctuation, Hanun�o-Specific 1734 --Punctuation, Katakana 30A0 -+Punctuation, Halfwidth CJK FF61 -+Punctuation, Hebrew Points and 05B0 -+Punctuation, Mongolian 1800 -+Punctuation, Ogham 169B - PUNCTUATION, PHILIPPINE DOUBLE 1736 - PUNCTUATION, PHILIPPINE SINGLE 1735 --Punctuation For Philippine Scripts, Generic 1735 --Punctuation For Vertical Text, Double 2047 --Punctuation Ornaments 275B --PUNCTUATION SPACE 2008 -+Punctuation, Runic 16EB -+Punctuation, Supplemental 2E00 - punt, irish 00A3 --purna viram 0964 -+purna viram, devanagari 0964 - pushout 27D4 -+puspika 2055 -+Q WITH HOOK TAIL, LATIN CAPITAL LETTER SMALL 024A -+Q WITH HOOK TAIL, LATIN SMALL LETTER 024B -+Q WITH HOOK, LATIN SMALL LETTER 02A0 - Q, DOUBLE-STRUCK CAPITAL 211A - Q, ROTATED CAPITAL 213A --QAF, ARABIC LETTER DOTLESS 066F --qed 220E -+q.e.d. 220E -+QP DIGRAPH, LATIN SMALL LETTER 0239 - QUAD, EM 2001 - QUAD, EN 2000 - quad, mutton 2001 --Quadrants 2596 -+Quadrant Control Code Graphics 25F0 - quadrature 25A1 --QUADRUPLE INTEGRAL OPERATOR 2A0C - QUADRUPLE PRIME 2057 - quantic 226C -+quantifier, existential 2203 -+quantifier, universal 2200 - QUARTER MOON, FIRST 263D - QUARTER MOON, LAST 263E - QUARTER NOTE 2669 -+QUARTER, VULGAR FRACTION ONE 00BC - Quarters, Fractions 00BC -+QUARTERS, VULGAR FRACTION THREE 00BE - QUATERNION INTEGRAL OPERATOR 2A16 - QUESTION EXCLAMATION MARK 2048 - QUESTION MARK 003F -@@ -3099,15 +3690,19 @@ - QUESTION MARK, DOUBLE 2047 - QUESTION MARK, ETHIOPIC 1367 - QUESTION MARK, EXCLAMATION 2049 -+question mark, greek 003B - QUESTION MARK, GREEK 037E - QUESTION MARK, INVERTED 00BF --QUESTION MARK ABOVE, GREATER-THAN WITH 2A7C --QUESTION MARK ABOVE, LESS-THAN WITH 2A7B -+QUESTION MARK, LIMBU 1945 -+question mark, turned 00BF - QUESTIONED EQUAL TO 225F - QUILL, LEFT SQUARE BRACKET WITH 2045 -+QUILL, RIGHT SQUARE BRACKET WITH 2046 - Quine Corners 231C - 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 - QUOTATION MARK, DOUBLE LOW-9 201E -@@ -3120,6 +3715,8 @@ - quotation mark, low double comma 201E - QUOTATION MARK, LOW DOUBLE PRIME 301F - quotation mark, low single comma 201A -+quotation mark, neutral 0022 -+quotation mark, neutral single 0027 - QUOTATION MARK, REVERSED DOUBLE PRIME 301D - QUOTATION MARK, RIGHT DOUBLE 201D - QUOTATION MARK, RIGHT SINGLE 2019 -@@ -3131,189 +3728,305 @@ - quotation mark, single reversed comma 201B - QUOTATION MARK, SINGLE RIGHT-POINTING ANGLE 203A - quotation mark, single turned comma 2018 --Quotation Mark Ornaments 275B -+Quotation Marks 2018 -+Quotation Marks, CJK 300C - Quotation Marks, Ornamental Angle 276E --quote, apl 0022 -+quote, apl 0027 -+Qur'anic Annotation Signs, Arabic 06D6 -+R WITH ACUTE, LATIN SMALL LETTER 0155 -+R WITH CARON, LATIN SMALL LETTER 0159 -+R WITH CEDILLA, LATIN SMALL LETTER 0157 -+R WITH DOT ABOVE, LATIN SMALL LETTER 1E59 -+R WITH DOT BELOW, LATIN SMALL LETTER 1E5B -+R WITH DOUBLE GRAVE, LATIN SMALL LETTER 0211 -+R WITH FISHHOOK, LATIN SMALL LETTER 027E -+R WITH FISHHOOK, LATIN SMALL LETTER REVERSED 027F -+R WITH HOOK, LATIN SMALL LETTER TURNED 027B -+R WITH INVERTED BREVE, LATIN SMALL LETTER 0213 -+R WITH LINE BELOW, LATIN SMALL LETTER 1E5F -+R WITH LONG LEG, LATIN SMALL LETTER 027C -+R WITH LONG LEG, LATIN SMALL LETTER TURNED 027A -+R WITH STROKE, LATIN CAPITAL LETTER 024C -+R WITH STROKE, LATIN SMALL LETTER 024D -+R WITH TAIL, LATIN SMALL LETTER 027D - R, BLACK-LETTER CAPITAL 211C - R, COMBINING LATIN SMALL LETTER 036C - R, DOUBLE-STRUCK CAPITAL 211D - R, LATIN LETTER SMALL CAPITAL 0280 - R, LATIN LETTER SMALL CAPITAL INVERTED 0281 -+R, LATIN LETTER SMALL CAPITAL REVERSED 1D19 -+R, LATIN LETTER SMALL CAPITAL TURNED 1D1A - R, LATIN SMALL LETTER TURNED 0279 -+R, LATIN SUBSCRIPT SMALL LETTER 1D63 - R, MODIFIER LETTER SMALL 02B3 - R, MODIFIER LETTER SMALL CAPITAL INVERTED 02B6 - R, MODIFIER LETTER SMALL TURNED 02B4 - R, SCRIPT CAPITAL 211B - radial component 27DF - radical sign 221A --Radicals, Kangxi 2F00 --Radicals, Yi A490 - Radicals Supplement, CJK 2E80 -+Radicals, CJK Kangxi 2F00 -+Radicals, Yi A490 - RADIOACTIVE SIGN 2622 - RAIN DROPS, UMBRELLA WITH 2614 - rainy weather 2602 - RAMS HORN, LATIN SMALL LETTER 0264 --RANGE ANTIRESTRICTION, Z NOTATION 2A65 -+range restriction 25B7 - RATIO 2236 - ratio, cross 211E --rational numbers, the set of 211A -+rational numbers 211A -+REAHMUK, KHMER SIGN 17C7 - real number symbol 210A --real numbers, the set of 211D -+real numbers 211D - real part 211C - recipe 211E - record separator 001E - RECORD SEPARATOR, SYMBOL FOR 241E - RECORDER, TELEPHONE 2315 - RECORDING COPYRIGHT, SOUND 2117 -+RECTANGLE BOX, X IN A 2327 - Rectangles 25AC --RECTANGULAR PATH AROUND POLE, LINE INTEGRATION WITH 2A12 - RECYCLED PAPER SYMBOL 267C --RECYCLING SYMBOL, BLACK UNIVERSAL 267B -+RECYCLED PAPER SYMBOL, PARTIALLY- 267D - RECYCLING SYMBOL, UNIVERSAL 2672 --RECYCLING SYMBOL FOR GENERIC MATERIALS 267A - Recycling Symbols 2672 --Recycling Symbols For Plastics 2673 -+Recycling Symbols, Plastics 2673 - reduces to 22A6 - reducible 22A2 - REFERENCE MARK 203B -+REGISTERED SIGN 00AE - registered trade mark sign 00AE --RELATION, TRIPLE SOLIDUS BINARY 2AFB --RELATION, TRIPLE VERTICAL BAR BINARY 2AF4 --relation, z notation finite 21FC --relation, z notation partial 21F9 --RELATIONAL COMPOSITION, Z NOTATION 2A3E --Relational Operators 2A66 --Relations 29E3 --Relations 2AF7 --Relations, Subset and superset 2ABD -+relation 2194 -+relation, finite 21FC -+relation, partial 21F9 -+Relational Operators 29E3 -+Relations, Subset and Superset 2ABD - Religious and Political Symbols 2626 - Repeat Marks, Kana 3031 - REPLACEMENT CHARACTER FFFD - REPLACEMENT CHARACTER, OBJECT FFFC --resistance 2126 - RESPONSE 211F -+restriction, domain 25C1 -+restriction, range 25B7 - results in 22A8 - RETROFLEX CLICK, LATIN LETTER 01C3 --retroflex hook, latin small letter d 0256 - RETROFLEX HOOK BELOW, COMBINING 0322 --return, carriage 000D --return, carriage 21B5 --RETURN, SYMBOL FOR CARRIAGE 240D -+RETROFLEX HOOK, LATIN CAPITAL LETTER T WITH 01AE -+retroflex hook, latin small letter d 0256 -+RETROFLEX HOOK, LATIN SMALL LETTER L WITH 026D -+RETROFLEX HOOK, LATIN SMALL LETTER N WITH 0273 -+RETROFLEX HOOK, LATIN SMALL LETTER T WITH 0288 -+RETROFLEX HOOK, LATIN SMALL LETTER Z WITH 0290 - RETURN SYMBOL 23CE --reverse line feed 008D -+RETURN, CARRIAGE 000D -+RETURN, SYMBOL FOR CARRIAGE 240D -+REVERSE LINE FEED 008D - REVERSE SOLIDUS 005C --REVERSE SOLIDUS, BIG 29F9 --REVERSE SOLIDUS, CIRCLED 29B8 - REVERSE SOLIDUS OPERATOR 29F5 - REVERSE SOLIDUS OVERLAY, COMBINING 20E5 --REVERSE SOLIDUS WITH HORIZONTAL STROKE 29F7 -+REVERSE SOLIDUS, BIG 29F9 - reverse turnstile 22A3 --REVERSED, LATIN SMALL LETTER EZH 01B9 --REVERSED COMMA, MODIFIER LETTER 02BD -+REVERSED C, LATIN SMALL LETTER 2184 - REVERSED COMMA ABOVE, COMBINING 0314 - reversed comma quotation mark, double 201F - reversed comma quotation mark, single 201B -+REVERSED COMMA, MODIFIER LETTER 02BD - REVERSED DOUBLE PRIME 2036 - REVERSED DOUBLE PRIME QUOTATION MARK 301D --REVERSED DOUBLE STROKE NOT SIGN 2AED - REVERSED E, LATIN CAPITAL LETTER 018E - REVERSED E, LATIN SMALL LETTER 0258 - reversed epsilon, latin small letter closed 025E --REVERSED ESH, LATIN SMALL LETTER SQUAT 0285 - 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 NEGATION SLASH, DOES NOT DIVIDE WITH 2AEE -+REVERSED LUNATE EPSILON SYMBOL, GREEK 03F6 -+REVERSED N, LATIN LETTER SMALL CAPITAL 1D0E - REVERSED NOT SIGN 2310 -+REVERSED OPEN E WITH HOOK, LATIN SMALL LETTER 025D - REVERSED OPEN E, LATIN SMALL LETTER 025C - REVERSED OPEN E, LATIN SMALL LETTER CLOSED 025E - REVERSED PILCROW SIGN 204B - REVERSED PRIME 2035 -+REVERSED R WITH FISHHOOK, LATIN SMALL LETTER 027F -+REVERSED R, LATIN LETTER SMALL CAPITAL 1D19 -+REVERSED ROTATED FLORAL HEART BULLET 2619 - REVERSED SANS-SERIF CAPITAL L 2143 - REVERSED SEMICOLON 204F --reversed straight epsilon 220D -+reversed straight epsilon 03F6 - REVERSED TILDE 223D - REVERSED TILDE EQUALS 22CD - REVERSED TRIPLE PRIME 2037 -+REVERSED, LATIN SMALL LETTER EZH 01B9 - RHOTIC HOOK, MODIFIER LETTER 02DE -+RIAL SIGN FDFC -+RIEL, KHMER CURRENCY SYMBOL 17DB - riemann integral 211B -+right abstract syntax bracket 301B - RIGHT ANGLE 221F -+RIGHT ANGLE BRACKET 3009 -+RIGHT ANGLE BRACKET, MATHEMATICAL 27E9 - RIGHT ANGLE WITH ARC 22BE -+RIGHT ARROW ABOVE, COMBINING 20D7 -+RIGHT ARROW ABOVE, COMBINING LEFT 20E1 -+RIGHT ARROW BELOW, COMBINING 20EF -+RIGHT ARROW BELOW, COMBINING LEFT 034D -+right arrow, colon 29F4 -+RIGHT ARROWHEAD ABOVE, COMBINING 0350 -+RIGHT ARROWHEAD BELOW, COMBINING 0355 -+right bag bracket 27E7 -+RIGHT BLACK LENTICULAR BRACKET 3011 -+RIGHT CEILING 2309 -+right chevron bracket 27EB -+RIGHT CORNER BRACKET 300D -+RIGHT CURLY BRACKET 007D -+RIGHT DIAGONAL ELLIPSIS, DOWN 22F1 -+RIGHT DIAGONAL ELLIPSIS, UP 22F0 -+RIGHT DOUBLE ANGLE BRACKET 300B -+RIGHT DOUBLE ANGLE BRACKET, MATHEMATICAL 27EB -+RIGHT DOUBLE QUOTATION MARK 201D -+RIGHT FLOOR 230B -+RIGHT HALF RING ABOVE, COMBINING 0357 -+RIGHT HALF RING BELOW, COMBINING 0339 -+right half ring, armenian modifier letter 055A -+RIGHT HARPOON ABOVE, COMBINING 20D1 -+right key, delete to the 2326 -+right moustache 23B1 -+RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT 22CA -+RIGHT PARENTHESIS 0029 -+RIGHT PARENTHESIS, ORNATE FD3F -+RIGHT PENCIL, LOWER 270E -+RIGHT PENCIL, UPPER 2710 -+right pointing guillemet 00BB -+RIGHT POINTING INDEX, BLACK 261B -+RIGHT POINTING INDEX, WHITE 261E -+right pointing single guillemet 203A -+RIGHT SEMIDIRECT PRODUCT 22CC -+right sequence bracket 27E9 -+RIGHT SINGLE QUOTATION MARK 2019 -+RIGHT SQUARE BRACKET 005D -+RIGHT SQUARE BRACKET WITH QUILL 2046 -+RIGHT TACK 22A2 -+RIGHT TACK BELOW, COMBINING 0319 -+RIGHT TORTOISE SHELL BRACKET 3015 - RIGHT TRIANGLE 22BF -+RIGHT WHITE CORNER BRACKET 300F -+RIGHT WHITE CURLY BRACKET 2984 -+RIGHT WHITE LENTICULAR BRACKET 3017 -+RIGHT WHITE PARENTHESIS 2986 -+RIGHT WHITE SQUARE BRACKET 301B -+RIGHT WHITE TORTOISE SHELL BRACKET 3019 -+RIGHT, COMBINING COMMA ABOVE 0315 -+RIGHT, COMBINING DOT ABOVE 0358 -+RIGHT, ERASE TO THE 2326 -+right, fast cursor 21A0 -+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 - RIGHTHAND INTERIOR PRODUCT 2A3D --RING, BENZENE 232C --RING, MODIFIER LETTER CENTRED LEFT HALF 02D3 --RING, MODIFIER LETTER LEFT HALF 02BF -+rightward tab 21E5 -+RIGHTWARDS ARROW 2192 -+RIGHTWARDS ARROW BELOW, COMBINING DOUBLE 0362 -+RIGHTWARDS BULLET, BLACK 204D -+RIGHTWARDS HARPOON WITH BARB DOWNWARDS, COMBINING 20EC - RING ABOVE 02DA - RING ABOVE, COMBINING 030A -+RING ABOVE, COMBINING LEFT HALF 0351 -+RING ABOVE, COMBINING RIGHT HALF 0357 -+RING ABOVE, LATIN CAPITAL LETTER A WITH 00C5 -+RING ABOVE, LATIN SMALL LETTER A WITH 00E5 - RING BELOW, COMBINING 0325 -+RING BELOW, COMBINING DOUBLE 035A - RING BELOW, COMBINING LEFT HALF 031C - RING BELOW, COMBINING RIGHT HALF 0339 -+RING BELOW, LATIN SMALL LETTER A WITH 1E01 - RING EQUAL TO 2257 - 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 --RISING DIAGONAL SLASH, SQUARED 29C4 --RISING DOTS, MINUS SIGN WITH 2A2C --RISING DOTS, TILDE OPERATOR WITH 2A6B -+ring overlay, combining counterclockwise 20DA -+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 -+RJES SU NGA RO, TIBETAN SIGN 0F7E - rle 202B - rlm 200F - rlo 202E -+RNAM BCAD, TIBETAN SIGN 0F7F - 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, LOZENGE DIVIDED BY HORIZONTAL 27E0 -+rough breathing mark, greek 0314 - rule, parted 00A6 - RULE-DELAYED 29F4 --Runes, Golden Number 16EE - Runic 16A0 -+Runic Golden Numbers 16EE -+Runic Punctuation 16EB - RUNOUT, TOTAL 2330 -+rupai, tamil 0BF9 - RUPEE MARK, BENGALI 09F2 - RUPEE SIGN 20A8 - RUPEE SIGN, BENGALI 09F3 - RUPEE SIGN, GUJARATI 0AF1 - RUPEE SIGN, TAMIL 0BF9 --Russian Alphabet, Basic 0410 -+Russian Alphabet 0410 -+S WITH ACUTE, LATIN SMALL LETTER 015B -+S WITH CARON, LATIN SMALL LETTER 0161 -+S WITH CEDILLA, LATIN SMALL LETTER 015F -+S WITH CIRCUMFLEX, LATIN SMALL LETTER 015D -+S WITH COMMA BELOW, LATIN SMALL LETTER 0219 -+S WITH DOT ABOVE, LATIN SMALL LETTER 1E61 -+S WITH DOT ABOVE, LATIN SMALL LETTER LONG 1E9B -+S WITH DOT BELOW, LATIN SMALL LETTER 1E63 -+S WITH HOOK, LATIN SMALL LETTER 0282 -+S WITH SWASH TAIL, LATIN SMALL LETTER 023F - S, INVERTED LAZY 223E - S, LATIN SMALL LETTER LONG 017F - S, LATIN SMALL LETTER SHARP 00DF - s, lazy 223D - S, MODIFIER LETTER SMALL 02E2 --S, PERPENDICULAR WITH 2AE1 --S IN TRIANGLE 29CC --SAFHA, ARABIC SIGN 0603 - SAGITTARIUS 2650 - SALTIRE 2613 --sam 070F --SANAH, ARABIC SIGN 0601 -+sam, syriac 070F -+Sans-serif Bold Digits 1D7EC -+Sans-serif Bold Greek Mathematical Symbols 1D756 -+Sans-serif Bold Italic Greek Mathematical Symbols 1D790 -+Sans-serif Bold Italic Mathematical Symbols 1D63C -+Sans-serif Bold Mathematical Symbols 1D5D4 - SANS-SERIF CAPITAL G, TURNED 2141 - SANS-SERIF CAPITAL L, REVERSED 2143 - SANS-SERIF CAPITAL L, TURNED 2142 - SANS-SERIF CAPITAL Y, TURNED 2144 --Sanskrit and Tibetan, Mongolian Extensions for 1880 -+Sans-serif Digits 1D7E2 -+Sans-serif Italic Mathematical Symbols 1D608 -+Sans-serif Mathematical Symbols 1D5A0 - satisfies 22A8 - satisfies, necessarily 2AF1 - satisfies, ordinarily 2AE2 -+saturating subtraction 2238 - SATURN 2644 --SCHEMA COMPOSITION, Z NOTATION 2A1F --schema hiding, z notation 29F9 --SCHEMA PIPING, Z NOTATION 2A20 --SCHEMA PROJECTION, Z NOTATION 2A21 -+SCALES 2696 -+Scan Lines, Horizontal 23BA -+schema hiding 29F9 - SCHWA, LATIN CAPITAL LETTER 018F - SCHWA, LATIN SMALL LETTER 0259 --Scissors Dingbats 2701 -+SCISSORS, BLACK 2702 -+SCISSORS, UPPER BLADE 2701 -+SCISSORS, WHITE 2704 - SCORPIUS 264F -+SCREEN SYMBOL, CLEAR 239A -+SCREEN SYMBOL, PRINT 2399 - SCREEN, COMBINING ENCLOSING 20E2 - script a, latin small letter 0251 - SCRIPT CAPITAL B 212C -@@ -3327,122 +4040,120 @@ - SCRIPT CAPITAL R 211B - script f, latin small letter 0192 - SCRIPT G, LATIN SMALL LETTER 0261 -+Script Mathematical Symbols 1D49C -+Script Mathematical Symbols, Bold 1D4D0 - SCRIPT SMALL E 212F - SCRIPT SMALL G 210A - SCRIPT SMALL L 2113 - SCRIPT SMALL O 2134 -+script theta 03D1 - 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 -+second tone, mandarin chinese 02CA - seconds 2033 - SECTION SIGN 00A7 - section sign, european 00B6 - SECTOR 2314 - SEGMENT 2313 --selected area, end of 0087 --selected area, start of 0086 -+SELECTED AREA, END OF 0087 -+SELECTED AREA, START OF 0086 -+Selectors Supplement, Variation E0100 - Selectors, Variation FE00 --SEMICIRCULAR PATH AROUND POLE, LINE INTEGRATION WITH 2A13 - SEMICOLON 003B - SEMICOLON, ARABIC 061B - SEMICOLON, ETHIOPIC 1364 - SEMICOLON, REVERSED 204F - SEMIDIRECT PRODUCT, LEFT 22CB --SEMIDIRECT PRODUCT WITH BOTTOM CLOSED 2A32 -+SEMIDIRECT PRODUCT, LEFT NORMAL FACTOR 22C9 -+SEMIDIRECT PRODUCT, RIGHT 22CC -+SEMIDIRECT PRODUCT, RIGHT NORMAL FACTOR 22CA - SEPARATOR DOT, AEGEAN WORD 10101 --SEPARATOR LINE, AEGEAN WORD 10100 -+SEPARATOR KEY SYMBOL, DECIMAL 2396 -+SEPARATOR LINE, AEGEAN WORD 10100 -+SEPARATOR, ARABIC DATE 060D - SEPARATOR, ARABIC DECIMAL 066B -+separator, arabic phrase 066C - SEPARATOR, ARABIC THOUSANDS 066C - separator, decimal 002C - separator, devanagari phrase 0964 -+SEPARATOR, ETHIOPIC PARAGRAPH 1368 - separator, file 001C - SEPARATOR, GEORGIAN PARAGRAPH 10FB - separator, group 001D -+SEPARATOR, INTERLINEAR ANNOTATION FFFA - SEPARATOR, INVISIBLE 2063 - SEPARATOR, LINE 2028 -+SEPARATOR, MONGOLIAN VOWEL 180E - SEPARATOR, PARAGRAPH 2029 - 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 --SEPARATOR KEY SYMBOL, DECIMAL 2396 --sequence concatenation, z notation 2040 --sequence introducer, control 009B --Serbian Cyrillic Letters, Croatian Digraphs Matching 01C4 --SERIFS, CLOSED INTERSECTION WITH 2A4D --SERIFS, CLOSED UNION WITH 2A4C --SERIFS AND SMASH PRODUCT, CLOSED UNION WITH 2A50 --SERIFS AT BOTTOM, TRIANGLE WITH 29CD -+septuagint 1D516 -+sequence bracket, left 27E8 -+sequence bracket, right 27E9 -+sequence concatenation 2040 -+SEQUENCE INTRODUCER, CONTROL 009B - SERVICE MARK 2120 - SESAME DOT FE45 - SESAME DOT, WHITE FE46 --SET, EMPTY 2205 --set, included in 2282 --set, includes in 2283 --set, null 2205 --set, power 2118 -+Set Membership Signs 2208 - SET MINUS 2216 - 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 TRANSMIT STATE 0093 -+SET, EMPTY 2205 -+set, included in 2282 -+set, includes in 2283 -+set, null 2205 -+set, power 1D4AB - Sets, Empty 29B0 - sextile 2736 - Shade Characters 2591 -+SHADOWED WHITE CIRCLE 274D -+SHAMROCK 2618 - shamrock 2663 - Shapes, Geometric 25A0 - SHARP S, LATIN SMALL LETTER 00DF - SHARP SIGN, MUSIC 266F - Shavian 10450 - SHEQEL SIGN, NEW 20AA -+shesht, armenian 055B - shift 21E7 --shift in 000F -+SHIFT IN 000F - SHIFT IN, SYMBOL FOR 240F --shift out 000E -+SHIFT OUT 000E - SHIFT OUT, SYMBOL FOR 240E --shilling 002F - SHOGI PIECE, BLACK 2617 - SHOGI PIECE, WHITE 2616 - short 0306 --SHORT DOWN TACK 2ADF --SHORT DOWN TACK, SHORT UP TACK ABOVE 2AE9 --SHORT DOWN TACK WITH OVERBAR 2AE7 --SHORT I WITH TAIL, CYRILLIC CAPITAL LETTER 048A --SHORT I WITH TAIL, CYRILLIC SMALL LETTER 048B --SHORT LEFT TACK 2ADE - short slash overlay 0337 - SHORT SOLIDUS OVERLAY, COMBINING 0337 - SHORT STROKE OVERLAY, COMBINING 0335 --SHORT UP TACK 2AE0 --SHORT UP TACK ABOVE SHORT DOWN TACK 2AE9 --SHORT UP TACK WITH UNDERBAR 2AE8 - SHORT VERTICAL LINE OVERLAY, COMBINING 20D3 - SHOULDERED OPEN BOX 237D -+showery weather 2614 - SHUFFLE PRODUCT 29E2 - shy 00AD --Sibe Letters, Mongolian 185D -+SIBE SYLLABLE BOUNDARY MARKER, MONGOLIAN 1807 - Sidelining Emphasis Marks FE45 --SIMILAR, SIMILAR MINUS 2A6C --SIMILAR ABOVE GREATER-THAN, LESS-THAN ABOVE 2A8F --SIMILAR ABOVE GREATER-THAN ABOVE EQUALS SIGN 2AA0 --SIMILAR ABOVE LESS-THAN, GREATER-THAN ABOVE 2A90 --SIMILAR ABOVE LESS-THAN ABOVE EQUALS SIGN 2A9F --SIMILAR MINUS SIMILAR 2A6C --SIMILAR OR EQUAL, GREATER-THAN ABOVE 2A8E --SIMILAR OR EQUAL, LESS-THAN ABOVE 2A8D --SIMILAR OR GREATER-THAN 2A9E --SIMILAR OR LESS-THAN 2A9D -+SIDEWAYS DIAERESIZED U, LATIN SMALL LETTER 1D1E -+SIDEWAYS O WITH STROKE, LATIN SMALL LETTER 1D13 -+SIDEWAYS O, LATIN SMALL LETTER 1D11 -+SIDEWAYS OPEN O, LATIN SMALL LETTER 1D12 -+SIDEWAYS TURNED M, LATIN SMALL LETTER 1D1F -+SIDEWAYS U, LATIN SMALL LETTER 1D1D -+SIGMA SYMBOL, GREEK LUNATE 03F2 -+sigma, greek small letter lunate 03F2 -+Signs, Warning 2620 -+Signs, Warning 26A0 - similar to 223C - SINE WAVE 223F --single character introducer 009A -+SINGLE CHARACTER INTRODUCER 009A - single comma quotation mark 2019 - single comma quotation mark, low 201A - single guillemet, left pointing 2039 -@@ -3452,112 +4163,104 @@ - SINGLE LOW-9 QUOTATION MARK 201A - SINGLE PUNCTUATION, PHILIPPINE 1735 - SINGLE QUOTATION MARK, LEFT 2018 -+single quotation mark, neutral 0027 - 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 SHIFT THREE 008F -+SINGLE SHIFT TWO 008E - single turned comma quotation mark 2018 - Sinhala 0D80 -+Sinhala Consonants 0D9A -+Sinhala Dependent Vowel Signs 0DCF -+Sinhala Independent Vowels 0D85 -+SINHALA SIGN AL-LAKUNA 0DCA -+sinhala virama 0DCA - SIX-PER-EM SPACE 2006 - SIXTEENTH NOTES, BEAMED 266C - Sixths, Fractions 2159 - SKULL AND CROSSBONES 2620 - slash 002F -+slash overlay, long 0338 -+slash overlay, long double 20EB -+slash overlay, short 0337 - SLASH, CIRCLED DIVISION 2298 - SLASH, DIVISION 2215 --SLASH, DOES NOT DIVIDE WITH REVERSED NEGATION 2AEE - SLASH, FRACTION 2044 --SLASH, INTEGRAL AVERAGE WITH 2A0F --SLASH, SQUARED FALLING DIAGONAL 29C5 --SLASH, SQUARED RISING DIAGONAL 29C4 --slash overlay, long 0338 --slash overlay, short 0337 -+slash, latin capital letter o 00D8 -+slash, latin small letter o 00F8 - SLOPE 2333 --SLOPING LARGE AND 2A58 --SLOPING LARGE OR 2A57 --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 AE, LATIN LETTER 1D01 -+SMALL CAPITAL ETH, LATIN LETTER 1D06 -+SMALL CAPITAL EZH, LATIN LETTER 1D23 - SMALL CAPITAL OE, LATIN LETTER 0276 --SMALL CAPITAL R, LATIN LETTER 0280 --SMALL CAPITAL Y, LATIN LETTER 028F -+SMALL CAPITAL OU, LATIN LETTER 1D15 - small circle, black 2022 --SMALL CIRCLE, SQUARED 29C7 --SMALL CIRCLE ABOVE, PLUS SIGN WITH 2A22 --SMALL CIRCLE TO THE RIGHT, CIRCLE WITH 29C2 - SMALL CONTAINS AS MEMBER 220D --SMALL CONTAINS WITH OVERBAR 22FE --SMALL CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE 22FC --SMALL D, DOUBLE-STRUCK ITALIC 2146 --SMALL E, DOUBLE-STRUCK ITALIC 2147 - SMALL ELEMENT OF 220A --SMALL ELEMENT OF WITH OVERBAR 22F7 --SMALL ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE 22F4 - Small Form Variants FE50 - SMALL GAMMA, DOUBLE-STRUCK 213D --SMALL I, DOUBLE-STRUCK ITALIC 2148 --SMALL J, DOUBLE-STRUCK ITALIC 2149 -+SMALL GAMMA, MODIFIER LETTER 02E0 -+SMALL KA, HIRAGANA LETTER 3095 -+SMALL KE, HIRAGANA LETTER 3096 - Small Letters, Armenian 0561 - Small Letters, Combining Latin 0363 - Small Letters, Cyrillic 0430 - Small Letters, Georgian 10D0 - Small Letters, Greek 03B1 - Small Letters, Latin 0061 -+small ligature ae, latin 00E6 -+SMALL LIGATURE IJ, LATIN 0133 -+SMALL LIGATURE OE, LATIN 0153 -+SMALL PI, DOUBLE-STRUCK 213C -+SMALL REVERSED GLOTTAL STOP, MODIFIER LETTER 02E4 - SMALL SQUARE, BLACK MEDIUM 25FE --SMALL SQUARE, WHITE MEDIUM 25FD --SMALL VEE WITH UNDERBAR 2A61 --SMALLER THAN 2AAA --SMALLER THAN OR EQUAL TO 2AAC -+SMALL TILDE 02DC -+SMALL WHITE CIRCLE, MEDIUM 26AC - SMASH PRODUCT 2A33 --SMASH PRODUCT, CLOSED UNION WITH SERIFS AND 2A50 - SMILE 2323 - SMILING FACE, BLACK 263B - SMILING FACE, WHITE 263A --smooth breathing 0313 -+smirk 2368 -+smooth breathing mark, greek 0313 - Snowflake Dingbats 2744 --Snowflakes, Stars, Asterisks and 2721 -+Snowflakes 2721 - SNOWMAN 2603 - snowy weather 2603 - SOFT HYPHEN 00AD -+SOFT HYPHEN, MONGOLIAN TODO 1806 - SOFTWARE-FUNCTION SYMBOL 2394 - solid 2588 - SOLIDUS 002F - solidus 2044 --SOLIDUS, BIG 29F8 --SOLIDUS, BIG REVERSE 29F9 --SOLIDUS, CIRCLED REVERSE 29B8 --SOLIDUS, REVERSE 005C --SOLIDUS BINARY RELATION, TRIPLE 2AFB - SOLIDUS OPERATOR, DOUBLE 2AFD - SOLIDUS OPERATOR, REVERSE 29F5 - SOLIDUS OVERLAY, COMBINING LONG 0338 -+SOLIDUS OVERLAY, COMBINING LONG DOUBLE 20EB - SOLIDUS OVERLAY, COMBINING REVERSE 20E5 - SOLIDUS OVERLAY, COMBINING SHORT 0337 --SOLIDUS WITH HORIZONTAL STROKE, REVERSE 29F7 --SOLIDUS WITH OVERBAR 29F6 -+SOLIDUS, BIG 29F8 -+SOLIDUS, BIG REVERSE 29F9 -+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, hilbert 210C - SPACE, IDEOGRAPHIC 3000 -+SPACE, IDEOGRAPHIC HALF FILL 303F -+space, keyboard symbol for no break 237D - SPACE, MEDIUM MATHEMATICAL 205F - space, mid 2005 - SPACE, NARROW NO-BREAK 202F - SPACE, NO-BREAK 00A0 -+space, non-breaking 00A0 - SPACE, PUNCTUATION 2008 - SPACE, SIX-PER-EM 2006 - SPACE, SYMBOL FOR 2420 -@@ -3566,59 +4269,46 @@ - SPACE, THREE-PER-EM 2004 - SPACE, ZERO WIDTH 200B - SPACE, ZERO WIDTH NO-BREAK FEFF --SPACE MARK, OGHAM 1680 - Spaces 2000 --spacing acute 00B4 -+spacing acute accent 00B4 - spacing cedilla 00B8 --spacing circumflex 005E -+spacing circumflex accent 005E - Spacing Clones of Diacritics 02D8 - spacing diaeresis 00A8 - spacing double underscore 2017 --spacing grave 0060 -+spacing grave accent 0060 - spacing macron 00AF - Spacing Modifier Letters 02B0 - spacing overscore 203E -+spacing tilde 007E - spacing underscore 005F - spanish currency 20A7 --Special character extensions 23AE --Specialized plus sign operators 29FA -+SPARKLE 2747 -+SPARKLE, HEAVY 2748 - Specials FFF0 - Specials Area, Compatibility and F900 - SPHERICAL ANGLE 2222 --SPHERICAL ANGLE OPENING LEFT 29A0 --SPHERICAL ANGLE OPENING UP 29A1 --SPOT, Z NOTATION 2981 --SQUARE, BLACK MEDIUM 25FC --SQUARE, BLACK MEDIUM SMALL 25FE --SQUARE, COMBINING ENCLOSING 20DE --SQUARE, VIEWDATA 2317 --SQUARE, WHITE MEDIUM 25FB --SQUARE, WHITE MEDIUM SMALL 25FD - SQUARE BELOW, COMBINING 033B -+SQUARE BRACKET WITH QUILL, LEFT 2045 -+SQUARE BRACKET WITH QUILL, RIGHT 2046 - square bracket, closing 005D - SQUARE BRACKET, LEFT 005B - SQUARE BRACKET, LEFT WHITE 301A - square bracket, opening 005B - SQUARE BRACKET, RIGHT 005D --SQUARE BRACKET WITH QUILL, LEFT 2045 -+SQUARE BRACKET, RIGHT WHITE 301B - SQUARE CAP 2293 --SQUARE CORPORATION 337F - SQUARE CUP 2294 - SQUARE FOOT 23CD - SQUARE IMAGE OF 228F --SQUARE INTERSECTION, DOUBLE 2A4E --SQUARE INTERSECTION OPERATOR, N-ARY 2A05 --SQUARE LEFT OPEN BOX OPERATOR 2ACD - SQUARE LOZENGE 2311 - SQUARE ORIGINAL OF 2290 --SQUARE RIGHT OPEN BOX OPERATOR 2ACE - SQUARE ROOT 221A - Square Symbols 29C4 --SQUARE UNION, DOUBLE 2A4F --SQUARE UNION OPERATOR, N-ARY 2A06 --SQUARE WITH CONTOURED OUTLINE 29E0 --SQUARE WITH LEFTWARDS TICK, WHITE 27E4 --SQUARE WITH RIGHTWARDS TICK, WHITE 27E5 -+SQUARE, BLACK MEDIUM 25FC -+SQUARE, BLACK MEDIUM SMALL 25FE -+SQUARE, COMBINING ENCLOSING 20DE -+SQUARE, VIEWDATA 2317 - squared 00B2 - SQUARED DOT OPERATOR 22A1 - Squared Japanese Katakana Words 3300 -@@ -3628,407 +4318,565 @@ - SQUARED TIMES 22A0 - Squares 25A0 - SQUAT REVERSED ESH, LATIN SMALL LETTER 0285 -+srak ah, khmer 17C7 -+srak am, khmer 17C6 -+srog med, tibetan 0F84 - st. andrew's cross 2613 -+STAFF OF AESCULAPIUS 2695 -+STAFF OF HERMES 269A - star 002A --STAR, ARABIC FIVE POINTED 066D --STAR, BLACK 2605 - STAR AND CRESCENT 262A - Star Dingbats 2726 - STAR EQUALS 225B - STAR OF DAVID 2721 - STAR OPERATOR 22C6 -+STAR, ARABIC FIVE POINTED 066D -+STAR, BLACK 2605 -+STAR, WHITE 2606 - starburst 273A --STARK, GLEICH 29E6 --Stars, Asterisks and Snowflakes 2721 --start of guarded area 0096 --start of heading 0001 -+Stars 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 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 -+straight epsilon 03F5 -+straight epsilon, reversed 03F6 -+STRAIGHTNESS 23E4 - stress mark 0301 - STRETCHED C, LATIN LETTER 0297 - STRICTLY EQUIVALENT TO 2263 --string, device control 0090 --string, start of 0098 --string terminator 009C -+STRING TERMINATOR 009C -+STRING, DEVICE CONTROL 0090 -+STRING, START OF 0098 -+STROKE OVERLAY, COMBINING DOUBLE VERTICAL 20E6 - STROKE OVERLAY, COMBINING LONG 0336 - STROKE OVERLAY, COMBINING SHORT 0335 --SUBGROUP, CONTAINS AS NORMAL 22B3 -+STROKE, LATIN CAPITAL LETTER O WITH 00D8 -+STROKE, LATIN SMALL LETTER O WITH 00F8 -+Strokes, CJK 31C0 - SUBGROUP OF, NORMAL 22B2 --subscript, iota 0345 -+Subgroup Signs, Normal 22EA -+SUBGROUP, CONTAINS AS NORMAL 22B3 -+Subjoined Consonants, Tibetan 0F90 - Subscript Digits 2080 --SUBSCRIPT EQUALS SIGN 208C --SUBSCRIPT LEFT PARENTHESIS 208D --SUBSCRIPT MINUS 208B --SUBSCRIPT PLUS SIGN 208A --SUBSCRIPT TWO, PLUS SIGN WITH 2A27 -+subscript, greek iota 0345 - Subscripts 2080 --SUBSET, DOUBLE 22D0 - Subset and Superset Relations 2ABD - SUBSET OF 2282 --substitute 001A --SUBSTITUTE, SYMBOL FOR 241A -+SUBSET OF, NOT A 2284 -+Subset Signs, Superset and 2282 -+SUBSET, DOUBLE 22D0 -+SUBSTITUTE 001A - SUBSTITUTE FORM TWO, SYMBOL FOR 2426 -+SUBSTITUTE, SYMBOL FOR 241A - Subtending Marks, Arabic 0600 --subtraction, z notation bag 2A41 -+subtraction, bag 2A41 -+subtraction, saturating 2238 - SUCCEEDS 227B --SUCCEEDS, DOUBLE 2ABC --SUCCEEDS ABOVE ALMOST EQUAL TO 2AB8 --SUCCEEDS ABOVE EQUALS SIGN 2AB4 --SUCCEEDS ABOVE NOT ALMOST EQUAL TO 2ABA --SUCCEEDS ABOVE NOT EQUAL TO 2AB6 --SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN 2AB0 --SUCCEEDS ABOVE SINGLE-LINE NOT EQUAL TO 2AB2 - SUCCEEDS UNDER RELATION 22B1 -+SUCCEEDS, DOUBLE 2ABC - such that 220B - such that 2223 - Suits, Playing Card 2660 -+sum or positive difference 2A26 - sum, direct 2295 --SUM, MODULO TWO 2A0A - sum, positive difference or 2A24 --sum or positive difference 2A26 -+summation sign 2211 -+Summation Sign Parts 23B2 - SUMMATION, DOUBLE-STRUCK N-ARY 2140 - SUMMATION, N-ARY 2211 --SUMMATION BOTTOM 23B3 --Summation Sign Parts 23B2 --SUMMATION TOP 23B2 - Summations and Integrals 2A0A - SUN 2609 - SUN WITH RAYS, BLACK 2600 --SUPERIMPOSED X, CIRCLE WITH 29BB --SUPERSCRIPT ALEF, ARABIC LETTER 0670 -+SUN WITH RAYS, WHITE 263C -+sunna, telugu 0C02 - Superscript Digits 2070 --SUPERSCRIPT EQUALS SIGN 207C --SUPERSCRIPT LATIN SMALL LETTER I 2071 --SUPERSCRIPT LEFT PARENTHESIS 207D - Superscript Letter Diacritics, Medieval 0363 --SUPERSCRIPT MINUS 207B -+Superscript Modifier Letters, Latin 02B0 - SUPERSCRIPT ONE 00B9 --SUPERSCRIPT PLUS SIGN 207A - SUPERSCRIPT THREE 00B3 - SUPERSCRIPT TWO 00B2 - SUPERSCRIPT ZERO 2070 - Superscripts 2070 --Superscripts and Subscripts 2070 --SUPERSET, DOUBLE 22D1 -+Superset and Subset Signs 2282 - SUPERSET OF 2283 -+SUPERSET OF, NOT A 2285 - Superset Relations, Subset and 2ABD --Supplemental Arrows-A 27F0 -+SUPERSET, DOUBLE 22D1 - Supplemental Arrows-B 2900 - Supplemental Mathematical Operators 2A00 --Supplementary, Cyrillic 0500 -+Supplemental Punctuation 2E00 -+Supplementary CJK Ideographs Area 20000 -+Supplementary General Scripts Area 10000 - Supplementary Private Use Area-A F0000 - Supplementary Private Use Area-B 100000 - SURFACE INTEGRAL 222F --surjection, z notation finite 2901 --surjection, z notation partial 2900 --surjective injection, z notation 2917 --surjective injection, z notation finite 2918 -+surjection, finite 2901 -+surjection, partial 2900 -+surjection, total 21A0 -+surjective injection 2917 -+surjective injection, finite 2918 -+Surrogates Area D800 - Surrogates, High D800 - Surrogates, Low DC00 --Surrogates Area D800 -+Suzhou Numerals 3021 -+SWASH TAIL, LATIN SMALL LETTER S WITH 023F -+SWASH TAIL, LATIN SMALL LETTER Z WITH 0240 - swedish grave accent 02DF -+SWORDS, CROSSED 2694 - SWUNG DASH 2053 -+Syllabary, Cypriot 10800 -+Syllabary, Linear B 10000 -+SYLLABICS FULL STOP, CANADIAN 166E -+Syllabics Punctuation, Canadian 166D - Syllabics, Unified Canadian Aboriginal 1400 -+Syllables, Cherokee 13A0 -+Syllables, Circled Korean Hangul 326E -+Syllables, Ethiopic 1200 -+Syllables, Korean Hangul AC00 -+Syllables, Parenthesized Korean Hangul 320E - Syllables, Yi A000 --Syllables Area, Korean Hangul AC00 -+Syloti Nagri A800 - Symbol Variants, Fullwidth FFE0 -+Symbol Variants, Halfwidth FFE8 -+Symbols and Punctuation, CJK 3000 -+Symbols Area 2000 -+Symbols Area, CJK Phonetics and 2E80 -+Symbols for Days, Ideographic Telegraph 33E0 -+Symbols for Divination, Khmer Numeric 17F0 -+Symbols for Hours, Ideographic Telegraph 3358 -+Symbols for Months, Ideographic Telegraph 32C0 -+Symbols, Ancient Greek Textual 2E0E -+Symbols, APL Functional 2336 -+Symbols, ASCII Punctuation and 0020 -+Symbols, Astrological 263D -+Symbols, Balinese Musical 1B61 -+Symbols, Basic Musical 2669 - Symbols, Bowtie 29D1 -+Symbols, Byzantine Musical 1D000 -+Symbols, Chess 2654 - Symbols, Circle 29B5 - Symbols, Combining Diacritical Marks for 20D0 -+Symbols, Currency 20A0 - Symbols, Dentistry Notation 23BE --Symbols, Double-Struck Italic Mathematical 2145 -+Symbols, Diacritical Marks for 20D0 -+Symbols, Dictionary and Map 2690 -+Symbols, Drafting 232D -+Symbols, Electrotechnical 238D - Symbols, Error Bar 29EE --Symbols, Greek 03D0 -+Symbols, Gender 26A2 -+Symbols, Genealogical 26AD -+Symbols, Greek Mathematical 1D6A8 -+Symbols, Hebrew Letterlike Mathematical 2135 -+Symbols, I Ching / Yijing Hexagram 4DC0 -+Symbols, I Ching / Yijing Monogram and Digram 268A -+Symbols, I Ching / Yijing Trigram 2630 - Symbols, Japanese Chess 2616 -+Symbols, Keyboard 21E6 -+Symbols, Keyboard 2324 -+Symbols, Keyboard 2380 -+Symbols, Keyboard 2396 -+Symbols, Khmer 19E0 -+Symbols, Latin-1 Punctuation and 00A0 - Symbols, Letterlike 2100 -+Symbols, Mathematical 27C0 -+Symbols, Mathematical 2980 -+Symbols, Mathematical Alphanumeric 1D400 -+Symbols, Mathematical Digits 1D7CE -+Symbols, Metrical 23D1 - Symbols, Miscellaneous 2600 -+Symbols, Musical 1D100 -+Symbols, New Testament Editorial 2E00 -+Symbols, Planet 263F -+Symbols, Plastics Recycling 2673 -+Symbols, Playing Card 2660 -+Symbols, Pointing Hand 261A -+Symbols, Polygonal 2B12 - Symbols, Recycling 2672 -+Symbols, Religious and Political 2625 - Symbols, Square 29C4 -+Symbols, Tai Xuan Jing 1D300 -+Symbols, Tamil 0BF3 -+Symbols, Tibetan 0FC4 - Symbols, Triangle 29CA --Symbols and Arrows, Miscellaneous 2B00 --Symbols and Punctuation, CJK 3000 --Symbols Area 2000 --Symbols Area, CJK Phonetics and 2E00 --Symbols for Control Codes, Graphic 2400 --Symbols For Plastics, Recycling 2673 -+Symbols, Weather and Astrological 2600 -+Symbols, Yijing / I Ching Hexagram 4DC0 -+Symbols, Yijing / I Ching Monogram and Digram 268A -+Symbols, Yijing / I Ching Trigram 2630 -+Symbols, Zodiacal 2648 - Symbols-A, Miscellaneous Mathematical 27C0 - Symbols-B, Miscellaneous Mathematical 2980 -+symmetric difference 2206 - 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 ABBREVIATION MARK 070F - SYRIAC CROSS, EAST 2671 - SYRIAC CROSS, WEST 2670 --Syriac Format Control 070F -+Syriac Letters 0710 -+Syriac Punctuation and Signs 0700 -+syriac sam 070F -+T WITH CARON, LATIN SMALL LETTER 0165 -+T WITH CEDILLA, LATIN SMALL LETTER 0163 -+T WITH CIRCUMFLEX BELOW, LATIN SMALL LETTER 1E71 -+T WITH COMMA BELOW, LATIN SMALL LETTER 021B -+T WITH CURL, LATIN SMALL LETTER 0236 -+T WITH DIAERESIS, LATIN SMALL LETTER 1E97 -+T WITH DIAGONAL STROKE, LATIN CAPITAL LETTER 023E -+T WITH DOT ABOVE, LATIN SMALL LETTER 1E6B -+T WITH DOT BELOW, LATIN SMALL LETTER 1E6D -+T WITH HOOK, LATIN SMALL LETTER 01AD -+T WITH LINE BELOW, LATIN SMALL LETTER 1E6F -+T WITH PALATAL HOOK, LATIN SMALL LETTER 01AB -+T WITH RETROFLEX HOOK, LATIN CAPITAL LETTER 01AE -+T WITH RETROFLEX HOOK, LATIN SMALL LETTER 0288 -+T WITH STROKE, LATIN SMALL LETTER 0167 - T, COMBINING LATIN SMALL LETTER 036D -+T, LATIN LETTER SMALL CAPITAL 1D1B - T, LATIN SMALL LETTER TURNED 0287 - tab 0009 -+tab with shift tab 21B9 - tab, leftward 21E4 - tab, rightward 21E5 --tab, symbol for 2409 --tab with shift tab 21B9 -+TABULATION SET, CHARACTER 0088 -+TABULATION SET, LINE 008A -+TABULATION WITH JUSTIFICATION, CHARACTER 0089 -+TABULATION, CHARACTER 0009 - tabulation, horizontal 0009 -+TABULATION, LINE 000B - TABULATION, SYMBOL FOR HORIZONTAL 2409 - TABULATION, SYMBOL FOR VERTICAL 240B - tabulation, vertical 000B --tabulation set, character 0088 --tabulation set, line 008A --tabulation with justification, character 0089 -+TACK BELOW, COMBINING DOWN 031E -+TACK BELOW, COMBINING LEFT 0318 -+TACK BELOW, COMBINING RIGHT 0319 -+TACK BELOW, COMBINING UP 031D -+TACK, DOWN 22A4 - TACK, LEFT 22A3 - TACK, MODIFIER LETTER UP 02D4 - TACK, RIGHT 22A2 - TACK, UP 22A5 --TACK BELOW, COMBINING LEFT 0318 --TACK BELOW, COMBINING UP 031D -+Tacks and Turnstiles 22A2 - Tacks and Turnstiles 27D8 - Tacks and Turnstiles 2ADE - Tagalog 1700 - TAGALOG SIGN VIRAMA 1714 - Tagbanwa 1760 -+Tags E0000 - Tai Le 1950 -+Tai Lue Digits, New 19D0 -+Tai Lue, New 1980 - Tai Xuan Jing Symbols 1D300 --TAIL FRAGMENT, ARABIC FE73 - Tails, Fish 297C --tainome (japanese, a kind of bullet) 25C9 -+tainome japanese bullet 25C9 - TAKE, PRESCRIPTION 211E - Tamil 0B80 -+TAMIL AS ABOVE SIGN 0BF8 -+tamil aytham 0B83 -+Tamil Consonants 0B95 -+TAMIL CREDIT SIGN 0BF7 -+TAMIL DAY SIGN 0BF3 -+TAMIL DEBIT SIGN 0BF6 -+Tamil Dependent Vowel Signs 0BBE - Tamil Digits 0BE7 --Tamil Letters 0B85 --TAMIL RUPEE SIGN 0BF9 -+tamil enn 0BFA -+Tamil Independent Vowels 0B85 -+tamil maatham 0BF4 -+tamil merpadi 0BF8 -+TAMIL MONTH SIGN 0BF4 -+tamil naal 0BF3 - TAMIL NUMBER SIGN 0BFA -+Tamil Numbers 0BE7 -+tamil patru 0BF6 -+tamil rupai 0BF9 -+TAMIL RUPEE SIGN 0BF9 -+TAMIL SIGN VISARGA 0B83 - Tamil Symbols 0BF3 -+tamil varavu 0BF7 -+tamil varudam 0BF5 -+TAMIL YEAR SIGN 0BF5 - TAPE DRIVE 2707 - TAPER, CONICAL 2332 -+TATWEEL, ARABIC 0640 - TAURUS 2649 - tautological equivalent 29E6 - tautology 22A8 --tea 2615 -+tea, cup of 2615 - Technical, Miscellaneous 2300 --TEE TOP, PITCHFORK WITH 2ADA --Telegraph Symbols for Days 33E0 --Telegraph Symbols for Hours 3358 --Telegraph Symbols for Months 32C0 --TELEPHONE, BLACK 260E -+Telegraph Symbols for Days, Ideographic 33E0 -+Telegraph Symbols for Hours, Ideographic 3358 -+Telegraph Symbols for Months, Ideographic 32C0 - TELEPHONE LOCATION SIGN 2706 - TELEPHONE RECORDER 2315 - TELEPHONE SIGN 2121 -+TELEPHONE, BLACK 260E -+TELEPHONE, WHITE 260F - Telugu 0C00 -+Telugu Consonants 0C15 -+Telugu Dependent Vowel Signs 0C3E - Telugu Digits 0C66 --Telugu Letters 0C05 -+Telugu Independent Vowels 0C05 -+TELUGU SIGN ANUSVARA 0C02 -+telugu sunna 0C02 - TEN THOUSAND SIGN, PER 2031 --tensor 20E1 - tensor product 2297 --Terminal graphic characters 23B7 -+Terminal Graphic Characters 23B7 - Terminal Graphic Characters 2596 --Terminal Graphics, Scan Lines For 23BA --terminator, string 009C --Tetragram Symbols, Tai Xuan Jing 1D306 --text, end of 0003 --text, start of 0002 -+TERMINATOR, INTERLINEAR ANNOTATION FFFB -+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 ANGKHANKHU 0E5A -+THAI CHARACTER FONGMAN 0E4F -+THAI CHARACTER KHOMUT 0E5B -+THAI CHARACTER NIKHAHIT 0E4D -+THAI CHARACTER THANTHAKHAT 0E4C -+THAI CHARACTER YAMAKKAN 0E4E -+Thai Consonants 0E01 - THAI CURRENCY SYMBOL BAHT 0E3F - Thai Digits 0E50 --Thai Letters 0E01 -+Thai Marks and Signs 0E48 -+Thai Vowels 0E30 -+THANTHAKHAT, THAI CHARACTER 0E4C -+THERE DOES NOT EXIST 2204 - THERE EXISTS 2203 - THEREFORE 2234 - THERMODYNAMIC 29E7 -+THETA SYMBOL, GREEK 03D1 -+theta, script 03D1 - thick space 2004 - THIN SPACE 2009 - third derivative 20DB --third transfinite cardinal (functions of a real variable) 2137 -+third tone, mandarin chinese 02C7 - Thirds, Fractions 2153 - THORN, LATIN CAPITAL LETTER 00DE - THORN, LATIN SMALL LETTER 00FE - THOUSANDS SEPARATOR, ARABIC 066C --THOUSANDS SIGN, CYRILLIC 0482 --THREE, SUPERSCRIPT 00B3 - three dot leader 2026 -+THREE DOT PUNCTUATION 2056 - THREE DOTS ABOVE, COMBINING 20DB - THREE QUARTERS, VULGAR FRACTION 00BE -+THREE, SUPERSCRIPT 00B3 - THREE-PER-EM SPACE 2004 - THUNDERSTORM 2608 - Tibetan 0F00 --Tibetan, Mongolian Extensions for Sanskrit and 1880 -+tibetan anusvara 0F7E -+Tibetan Astrological Signs 0F15 -+Tibetan Cantillation Signs 0FC0 -+Tibetan Consonants 0F40 -+Tibetan Dependent Vowel Signs 0F71 - Tibetan Digits 0F20 --Tibetan Letters 0F40 --TICK, WHITE CONCAVE-SIDED DIAMOND WITH LEFTWARDS 27E2 --TICK, WHITE CONCAVE-SIDED DIAMOND WITH RIGHTWARDS 27E3 --TICK, WHITE SQUARE WITH LEFTWARDS 27E4 --TICK, WHITE SQUARE WITH RIGHTWARDS 27E5 -+Tibetan Digits Minus Half 0F2A -+Tibetan Head Marks 0F01 -+TIBETAN KU RU KHA 0FBE -+TIBETAN KU RU KHA BZHI MIG CAN 0FBF -+TIBETAN MARK DELIMITER TSHEG BSTAR 0F0C -+TIBETAN MARK HALANTA 0F84 -+TIBETAN MARK INTERSYLLABIC TSHEG 0F0B -+TIBETAN MARK PALUTA 0F85 -+Tibetan Marks and Signs 0F08 -+Tibetan Marks and Signs 0F34 -+Tibetan Marks and Signs 0F82 -+Tibetan Marks and Signs 0FBE -+TIBETAN SIGN RJES SU NGA RO 0F7E -+TIBETAN SIGN RNAM BCAD 0F7F -+tibetan srog med 0F84 -+Tibetan Subjoined Consonants 0F90 -+TIBETAN SYLLABLE OM 0F00 -+Tibetan Symbols 0FC4 -+tibetan visarga 0F7F -+Tibetan Vocalic Modification 0F7E -+tie below, ligature 035C - TIE, CHARACTER 2040 - tie, ligature 0361 --TIE OVER INFINITY 29DD -+Tifinagh 2D30 - TILDE 007E -+TILDE ABOVE, COMBINING NOT 034A -+TILDE BELOW, COMBINING 0330 -+TILDE EQUALS, REVERSED 22CD -+Tilde Mathematical Operators 223B -+TILDE OPERATOR 223C -+TILDE OVERLAY, COMBINING 0334 - tilde, apl 223C - TILDE, COMBINING 0303 - TILDE, COMBINING DOUBLE 0360 - TILDE, COMBINING VERTICAL 033E - TILDE, MINUS 2242 -+TILDE, NOT 2241 - TILDE, REVERSED 223D - TILDE, SMALL 02DC -+tilde, spacing 007E - TILDE, TRIPLE 224B --TILDE ABOVE, COMBINING NOT 034A --TILDE BELOW, COMBINING 0330 --TILDE EQUALS, REVERSED 22CD --TILDE LEFT HALF, COMBINING DOUBLE FE22 --TILDE OPERATOR 223C --TILDE OPERATOR, EQUALS SIGN ABOVE 2A73 --TILDE OPERATOR, PARALLEL WITH 2AF3 --TILDE OPERATOR, SUBSET OF ABOVE 2AC7 --TILDE OPERATOR, SUPERSET OF ABOVE 2AC8 --TILDE OPERATOR WITH DOT ABOVE 2A6A --TILDE OPERATOR WITH RISING DOTS 2A6B --TILDE OVERLAY, COMBINING 0334 -+TIMES OPERATOR, N-ARY 2A09 - TIMES, CIRCLED 2297 - TIMES, DIVISION 22C7 - TIMES, INVISIBLE 2062 - TIMES, SQUARED 22A0 --TIMES OPERATOR, N-ARY 2A09 --TIMES OPERATOR, N-ARY CIRCLED 2A02 --TIMES SIGN, INTEGRAL WITH 2A18 --TIMES WITH LEFT HALF BLACK 29D4 --TIMES WITH RIGHT HALF BLACK 29D5 - TINY 29FE -+TIPPI, GURMUKHI 0A70 - TIRONIAN SIGN ET 204A --TIS 620-2529 (Thai), Based on 0E01 --Todo Letters, Mongolian 1843 --Tone Bar Letters 02E5 --TONE FIVE, LATIN SMALL LETTER 01BD -+TODO SOFT HYPHEN, MONGOLIAN 1806 -+Tone Letters 02E5 -+Tone Letters, Modifier A700 - TONE MARK, COMBINING ACUTE 0341 - TONE MARK, COMBINING GRAVE 0340 -+Tone Marks for Chinese, Corner A700 - Tone Marks, Ideographic 302A --Tone Marks, Vietnamese 0340 --TONE SIX, LATIN SMALL LETTER 0185 --TONE TWO, LATIN SMALL LETTER 01A8 --tonos 0301 -+tone, mandarin chinese fifth or neutral 02D9 -+tone, mandarin chinese first 02C9 -+tone, mandarin chinese fourth 02CB -+tone, mandarin chinese second 02CA -+tone, mandarin chinese third 02C7 - TONOS, COMBINING GREEK DIALYTIKA 0344 -+tonos, greek 0301 -+top 22A4 - TOP HALF INTEGRAL 2320 --TOP LEFT CORNER 231C --TOP LEFT CROP 230F - TORTOISE SHELL BRACKET, LEFT 3014 - TORTOISE SHELL BRACKET, LEFT WHITE 3018 -+TORTOISE SHELL BRACKET, RIGHT 3015 -+TORTOISE SHELL BRACKET, RIGHT WHITE 3019 -+total function 2192 -+total injection 21A3 - TOTAL RUNOUT 2330 -+total surjection 21A0 - TRADE MARK SIGN 2122 - trade mark sign, registered 00AE -+transfinite cardinal, first 2135 - transfinite cardinal, fourth 2138 --transfinite cardinal (countable), first 2135 --transfinite cardinal (functions of a real variable), third 2137 --transfinite cardinal (the continuum), second 2136 --transmission, end of 0004 --transmission, graphic for end of 2301 --TRANSMISSION, SYMBOL FOR END OF 2404 --transmission block, end of 0017 -+transfinite cardinal, second 2136 -+transfinite cardinal, third 2137 -+transform, fourier 2131 -+TRANSMISSION BLOCK, END OF 0017 - TRANSMISSION BLOCK, SYMBOL FOR END OF 2417 --transmit state, set 0093 --TRANSVERSAL INTERSECTION 2ADB -+transmission symbol, end of 2301 -+TRANSMISSION, END OF 0004 -+TRANSMISSION, SYMBOL FOR END OF 2404 -+TRANSMIT STATE, SET 0093 -+TRAPEZIUM, WHITE 23E2 -+Triangle Symbols 29CA - TRIANGLE, COMBINING ENCLOSING UPWARD POINTING 20E4 --TRIANGLE, LOWER LEFT 25FA --TRIANGLE, LOWER RIGHT 25FF --TRIANGLE, MINUS SIGN IN 2A3A --TRIANGLE, MULTIPLICATION SIGN IN 2A3B --TRIANGLE, PLUS SIGN IN 2A39 --TRIANGLE, PLUS SIGN WITH BLACK 2A28 - TRIANGLE, RIGHT 22BF --TRIANGLE, UPPER LEFT 25F8 --TRIANGLE, UPPER RIGHT 25F9 --TRIANGLE, VERTICAL BAR BESIDE RIGHT 29D0 --TRIANGLE OPERATOR, LARGE LEFT 2A1E --Triangle symbols 29CA --TRIANGLE WITH LEFT HALF BLACK, DOWN-POINTING 29E8 --TRIANGLE WITH RIGHT HALF BLACK, DOWN-POINTING 29E9 - Triangles 25B2 - TRIANGULAR BULLET 2023 - TRIANGULAR COLON, MODIFIER LETTER 02D0 - TRIANGULAR COLON, MODIFIER LETTER HALF 02D1 --Trigram Symbols, Yijing 2630 -+TRICOLON 205D -+Trigram Symbols, Yijing / I Ching 2630 - trine 25B3 --TRIPLE COLON OPERATOR 2AF6 --TRIPLE HORIZONTAL BAR WITH DOUBLE VERTICAL STROKE 2A68 --TRIPLE HORIZONTAL BAR WITH TRIPLE VERTICAL STROKE 2A69 - TRIPLE INTEGRAL 222D --TRIPLE NESTED GREATER-THAN 2AF8 --TRIPLE NESTED LESS-THAN 2AF7 - TRIPLE PLUS 29FB - TRIPLE PRIME 2034 - TRIPLE PRIME, REVERSED 2037 --TRIPLE RIGHT TURNSTILE, VERTICAL BAR 2AE2 --TRIPLE SOLIDUS BINARY RELATION 2AFB - TRIPLE TILDE 224B - TRIPLE UNDERDOT, COMBINING 20E8 --TRIPLE VERTICAL BAR BINARY RELATION 2AF4 --TRIPLE VERTICAL BAR DELIMITER 2980 --TRIPLE VERTICAL BAR OPERATOR, LARGE 2AFC --TRIPLE VERTICAL BAR WITH HORIZONTAL STROKE 2AF5 --TRIPLE VERTICAL STROKE, TRIPLE HORIZONTAL BAR WITH 2A69 - TRUE 22A8 -+TSHEG BSTAR, TIBETAN MARK DELIMITER 0F0C -+TSHEG, TIBETAN MARK INTERSYLLABIC 0F0B - TUGRIK SIGN 20AE - turbofan 274B - turkish currency 20A4 -+turkish lira 00A3 - TURNED A, LATIN SMALL LETTER 0250 -+TURNED AE, LATIN SMALL LETTER 1D02 - TURNED ALPHA, LATIN SMALL LETTER 0252 - TURNED AMPERSAND 214B --TURNED ANGLE 29A2 - TURNED CAPITAL F 2132 --TURNED COMMA, MODIFIER LETTER 02BB - TURNED COMMA ABOVE, COMBINING 0312 - 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 SMALL LETTER 01DD - TURNED GREEK SMALL LETTER IOTA 2129 -+TURNED H WITH FISHHOOK, LATIN SMALL LETTER 02AE - TURNED H, LATIN SMALL LETTER 0265 -+TURNED I, LATIN SMALL LETTER 1D09 - TURNED K, LATIN SMALL LETTER 029E -+TURNED M WITH LONG LEG, LATIN SMALL LETTER 0270 - TURNED M, LATIN CAPITAL LETTER 019C - TURNED M, LATIN SMALL LETTER 026F -+TURNED M, LATIN SMALL LETTER SIDEWAYS 1D1F - TURNED NOT SIGN 2319 -+TURNED OE, LATIN SMALL LETTER 1D14 -+TURNED OPEN E, LATIN SMALL LETTER 1D08 - turned question mark 00BF -+TURNED R WITH HOOK, LATIN SMALL LETTER 027B -+TURNED R WITH LONG LEG, LATIN SMALL LETTER 027A -+TURNED R, LATIN LETTER SMALL CAPITAL 1D1A - TURNED R, LATIN SMALL LETTER 0279 - TURNED R, MODIFIER LETTER SMALL 02B4 - TURNED SANS-SERIF CAPITAL G 2141 - TURNED SANS-SERIF CAPITAL L 2142 - TURNED SANS-SERIF CAPITAL Y 2144 -+TURNED SMALL F 214E - TURNED T, LATIN SMALL LETTER 0287 -+TURNED V, LATIN CAPITAL LETTER 0245 - TURNED V, LATIN SMALL LETTER 028C - TURNED W, LATIN SMALL LETTER 028D - TURNED Y, LATIN SMALL LETTER 028E - turnstile 22A2 - turnstile, reverse 22A3 -+Turnstiles, Tacks and 22A2 - Turnstiles, Tacks and 27D8 - Turnstiles, Tacks and 2ADE --TWO, SUPERSCRIPT 00B2 -+TWO ASTERISKS ALIGNED VERTICALLY 2051 - TWO DOT LEADER 2025 --TWO-HEADED ARROW FROM BAR, RIGHTWARDS 2905 --TWO-HEADED ARROW WITH TAIL, RIGHTWARDS 2916 --TWO-HEADED ARROW WITH TAIL WITH VERTICAL STROKE, RIGHTWARDS 2917 --TYPE COLON, Z NOTATION 2982 -+TWO DOT PUNCTUATION 205A -+TWO, SUPERSCRIPT 00B2 -+U BAR, LATIN CAPITAL LETTER 0244 -+U BAR, LATIN SMALL LETTER 0289 -+U WITH ACUTE, LATIN CAPITAL LETTER 00DA -+U WITH ACUTE, LATIN SMALL LETTER 00FA -+U WITH BREVE, LATIN SMALL LETTER 016D -+U WITH CARON, LATIN SMALL LETTER 01D4 -+U WITH CIRCUMFLEX BELOW, LATIN SMALL LETTER 1E77 -+U WITH CIRCUMFLEX, LATIN CAPITAL LETTER 00DB -+U WITH CIRCUMFLEX, LATIN SMALL LETTER 00FB -+U WITH DIAERESIS BELOW, LATIN SMALL LETTER 1E73 -+U WITH DIAERESIS, LATIN CAPITAL LETTER 00DC -+U WITH DIAERESIS, LATIN SMALL LETTER 00FC -+U WITH DOT BELOW, LATIN SMALL LETTER 1EE5 -+U WITH DOUBLE ACUTE, LATIN SMALL LETTER 0171 -+U WITH DOUBLE GRAVE, LATIN SMALL LETTER 0215 -+U WITH GRAVE, LATIN CAPITAL LETTER 00D9 -+U WITH GRAVE, LATIN SMALL LETTER 00F9 -+U WITH HOOK ABOVE, LATIN SMALL LETTER 1EE7 -+U WITH HORN, LATIN SMALL LETTER 01B0 -+U WITH INVERTED BREVE, LATIN SMALL LETTER 0217 -+U WITH MACRON, LATIN SMALL LETTER 016B -+U WITH OGONEK, LATIN SMALL LETTER 0173 -+U WITH RING ABOVE, LATIN SMALL LETTER 016F -+U WITH TILDE BELOW, LATIN SMALL LETTER 1E75 -+U WITH TILDE, LATIN SMALL LETTER 0169 - U, COMBINING LATIN SMALL LETTER 0367 -+U, LATIN LETTER SMALL CAPITAL 1D1C -+U, LATIN SMALL LETTER SIDEWAYS 1D1D -+U, LATIN SMALL LETTER SIDEWAYS DIAERESIZED 1D1E -+U, LATIN SUBSCRIPT SMALL LETTER 1D64 - Ugaritic 10380 -+ukrainian currency 20B4 - UMBRELLA 2602 - UMBRELLA WITH RAIN DROPS 2614 - umlaut 0308 - UNASPIRATED, MODIFIER LETTER 02ED - UNDERDOT, COMBINING TRIPLE 20E8 - underline 0332 --underline, double 0333 - UNDERLINE SYMBOL, CONTINUOUS 2381 - UNDERLINE SYMBOL, DISCONTINUOUS 2382 -+underline, double 0333 - underscore 0332 - underscore, double 0333 - underscore, spacing 005F -@@ -4037,271 +4885,307 @@ - UNDERTIE 203F - UNDERTIE, INVERTED 2054 - UNDO SYMBOL 238C --undoable delete 2425 -+Unified Canadian Aboriginal Syllabics 1400 -+Unified Ideographs Extension A, CJK 3400 -+Unified Ideographs Extension B, CJK 20000 -+Unified Ideographs, CJK 4E00 - UNION 222A - UNION, DOUBLE 22D3 --UNION, DOUBLE SQUARE 2A4F --UNION, INTEGRAL WITH 2A1A --UNION, INTERSECTION ABOVE 2A47 --UNION, INTERSECTION ABOVE BAR ABOVE 2A49 -+union, generalized 22C3 - UNION, MULTISET 228E - UNION, N-ARY 22C3 --UNION, UNION BESIDE AND JOINED WITH 2A4A --UNION ABOVE BAR ABOVE INTERSECTION 2A48 --UNION ABOVE INTERSECTION 2A46 --UNION BESIDE AND JOINED WITH UNION 2A4A --UNION OPERATOR, N-ARY SQUARE 2A06 --UNION OPERATOR WITH DOT, N-ARY 2A03 --UNION OPERATOR WITH PLUS, N-ARY 2A04 --UNION WITH LOGICAL OR 2A45 --UNION WITH MINUS SIGN 2A41 --UNION WITH OVERBAR 2A42 --UNION WITH SERIFS, CLOSED 2A4C --UNION WITH SERIFS AND SMASH PRODUCT, CLOSED 2A50 - Unions, Intersections and 2A40 - unique element 2129 - unit separator 001F - UNIT SEPARATOR, SYMBOL FOR 241F -+universal quantifier 2200 - UNIVERSAL RECYCLING SYMBOL 2672 --UNIVERSAL RECYCLING SYMBOL, BLACK 267B --up, page 21DE -+UNMARRIED PARTNERSHIP SYMBOL 26AF - UP ARROWHEAD 2303 --UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS 2324 -+UP POINTING INDEX, WHITE 261D - UP RIGHT DIAGONAL ELLIPSIS 22F0 - UP TACK 22A5 --UP TACK, MODIFIER LETTER 02D4 - UP TACK BELOW, COMBINING 031D -+UP TACK, MODIFIER LETTER 02D4 -+UP, CLOSE 2050 -+up, fast cursor 219F -+up, page 21DE - UPA Modifiers 02EF - UPPER BLADE SCISSORS 2701 -+upper integral 2A1B - UPPER RIGHT PENCIL 2710 -+Uppercase Alphabet, Latin 0041 - UPSILON, LATIN CAPITAL LETTER 01B1 - UPSILON, LATIN SMALL LETTER 028A - upstile, apl 2308 -+UPWARD POINTING TRIANGLE, COMBINING ENCLOSING 20E4 -+UPWARDS ARROW 2191 - UPWARDS ARROW BELOW, COMBINING 034E -+Uralic Phonetic Alphabet, Diacritics for 0350 - URANUS 2645 --Urdu, Eastern Arabic-Indic Digits for Persian and 06F0 - urdu paragraph separator 203B -+URN, FUNERAL 26B1 -+v above 030C -+V WITH DOT BELOW, LATIN SMALL LETTER 1E7F -+V WITH HOOK, LATIN CAPITAL LETTER 01B2 -+V WITH HOOK, LATIN SMALL LETTER 028B -+V WITH TILDE, LATIN SMALL LETTER 1E7D - V, COMBINING LATIN SMALL LETTER 036E - v, latin capital letter script 01B2 -+V, LATIN CAPITAL LETTER TURNED 0245 -+V, LATIN LETTER SMALL CAPITAL 1D20 - v, latin small letter script 028B - V, LATIN SMALL LETTER TURNED 028C --V WITH HOOK, LATIN CAPITAL LETTER 01B2 -+V, LATIN SUBSCRIPT SMALL LETTER 1D65 - valentine 2665 - valid 22A8 --varia 0300 -+varavu, tamil 0BF7 -+varia, greek 0300 -+VARIATION INDICATOR, IDEOGRAPHIC 303E -+VARIATION SELECTOR ONE, MONGOLIAN FREE 180B -+VARIATION SELECTOR THREE, MONGOLIAN FREE 180D -+VARIATION SELECTOR TWO, MONGOLIAN FREE 180C -+VARIATION SELECTOR-1 FE00 - Variation Selectors FE00 - Variation Selectors Supplement E0100 --varies with (proportional to) 223C --vector 20D0 --vector 20D6 -+varies with 223C -+varudam, tamil 0BF5 -+vector 20D1 -+vector 20D7 - VECTOR OR CROSS PRODUCT 2A2F - vector pointing into page 2295 - vector pointing into page 2297 - vector pointing out of page 2299 - vee 2228 --vee above 030C --VEE WITH UNDERBAR, SMALL 2A61 - venus 2640 - VERSICLE 2123 --VERTICAL, LONG DASH FROM LEFT MEMBER OF DOUBLE 2AE6 - vertical bar 007C -+VERTICAL BAR DELIMITER, TRIPLE 2980 -+Vertical Bar Dingbats 2758 - vertical bar, broken 00A6 --VERTICAL BAR, CIRCLED 29B6 - VERTICAL BAR, N-ARY WHITE 2AFF - VERTICAL BAR, WHITE 2AFE --VERTICAL BAR BINARY RELATION, TRIPLE 2AF4 --VERTICAL BAR DELIMITER, TRIPLE 2980 --Vertical Bar Dingbats 2758 --VERTICAL BAR OPERATOR, LARGE TRIPLE 2AFC --VERTICAL BAR WITH HORIZONTAL STROKE, TRIPLE 2AF5 - vertical bowtie 29D6 --VERTICAL BOX LINE, LEFT 23B8 --VERTICAL BOX LINE, RIGHT 23B9 --Vertical brackets 23B4 -+Vertical Brackets 23B4 - VERTICAL ELLIPSIS 22EE -+Vertical Form Variants FE30 -+VERTICAL FOUR DOTS 205E - VERTICAL IDEOGRAPHIC ITERATION MARK 303B --VERTICAL KANA REPEAT MARK 3031 - VERTICAL LINE 007C --VERTICAL LINE, DOUBLE 2016 --VERTICAL LINE, MODIFIER LETTER 02C8 --VERTICAL LINE, MODIFIER LETTER LOW 02CC - VERTICAL LINE ABOVE, COMBINING 030D - VERTICAL LINE ABOVE, COMBINING DOUBLE 030E - VERTICAL LINE BELOW, COMBINING 0329 - VERTICAL LINE BELOW, COMBINING DOUBLE 0348 --VERTICAL LINE EXTENSION 23D0 - Vertical Line Operators 2AEE - VERTICAL LINE OVERLAY, COMBINING LONG 20D2 - VERTICAL LINE OVERLAY, COMBINING SHORT 20D3 --VERTICAL LINE WITH CIRCLE ABOVE 2AEF --VERTICAL LINE WITH CIRCLE BELOW 2AF0 - VERTICAL LINE WITH MIDDLE DOT 237F -+VERTICAL LINE, DOUBLE 2016 -+VERTICAL LINE, MODIFIER LETTER 02C8 -+VERTICAL LINE, MODIFIER LETTER LOW 02CC -+Vertical Lines 2223 - VERTICAL STROKE OVERLAY, COMBINING DOUBLE 20E6 - vertical tabulation 000B - VERTICAL TABULATION, SYMBOL FOR 240B --Vertical Text, Double Punctuation For 2047 -+Vertical Text, Bracket Variants for 23DC -+Vertical Text, Double Punctuation for 2047 - VERTICAL TILDE, COMBINING 033E -+Vertical Variants, Glyphs for FE10 - Vertical Variants, Glyphs for FE30 --VERTICAL ZIGZAG LINE 299A -+vertsaket, armenian 0589 - VERY MUCH GREATER-THAN 22D9 - VERY MUCH LESS-THAN 22D8 - VICTORY HAND 270C --Vietnamese, Latin Extensions for 1EA0 - vietnamese currency 20AB --Vietnamese Tone Marks 0340 - VIEWDATA SQUARE 2317 - vinculum 0305 --viram, deergh 0965 --viram, purna 0964 --VIRAMA, BENGALI SIGN 09CD -+viram, devanagari deergh 0965 -+viram, devanagari purna 0964 - VIRAMA, DEVANAGARI SIGN 094D --VIRAMA, GUJARATI SIGN 0ACD --VIRAMA, GURMUKHI SIGN 0A4D --VIRAMA, KANNADA SIGN 0CCD - VIRAMA, MALAYALAM SIGN 0D4D --VIRAMA, ORIYA SIGN 0B4D -+VIRAMA, MYANMAR SIGN 1039 -+virama, sinhala 0DCA - VIRAMA, TAGALOG SIGN 1714 --VIRAMA, TAMIL SIGN 0BCD --VIRAMA, TELUGU SIGN 0C4D - VIRGO 264D - virgule 002F -+VISARGA, DEVANAGARI SIGN 0903 -+visarga, khmer 17C7 -+VISARGA, TAMIL SIGN 0B83 -+visarga, tibetan 0F7F - VOICED FRICATIVE, LATIN LETTER PHARYNGEAL 0295 --VOICED SOUND MARK, COMBINING KATAKANA-HIRAGANA 3099 --VOICED SOUND MARK, KATAKANA-HIRAGANA 309B -+VOICED ITERATION MARK, HIRAGANA 309E -+VOICED ITERATION MARK, KATAKANA 30FE - VOICING, MODIFIER LETTER 02EC --VOLUME INTEGRAL 2230 - VOLTAGE SIGN, HIGH 26A1 --vrachy 0306 --VS1 FE00 -+VOLUME INTEGRAL 2230 -+vrachy, greek 0306 -+vs1 FE00 -+vs17 E0100 -+vt 000B -+VULGAR FRACTION ONE HALF 00BD -+VULGAR FRACTION ONE QUARTER 00BC -+VULGAR FRACTION THREE QUARTERS 00BE -+Vulgar Fractions 2153 -+W WITH ACUTE, LATIN SMALL LETTER 1E83 -+W WITH CIRCUMFLEX, LATIN SMALL LETTER 0175 -+W WITH DIAERESIS, LATIN SMALL LETTER 1E85 -+W WITH DOT ABOVE, LATIN SMALL LETTER 1E87 -+W WITH DOT BELOW, LATIN SMALL LETTER 1E89 -+W WITH GRAVE, LATIN SMALL LETTER 1E81 -+W WITH RING ABOVE, LATIN SMALL LETTER 1E98 -+W, LATIN LETTER SMALL CAPITAL 1D21 - W, LATIN SMALL LETTER TURNED 028D - W, MODIFIER LETTER SMALL 02B7 -+WAITING, MESSAGE 0095 - WARNING SIGN 26A0 - Warning Signs 2620 --Warning Signs 26A0 - WATCH 231A --WAVE, SINE 223F - WAVE DASH 301C -+WAVE, SINE 223F - WAVY DASH 3030 - WAVY LINE 2307 - WAVY LOW LINE FE4F - WAVY OVERLINE FE4B - WAVY OVERLINE, DOUBLE FE4C - Weather and Astrological Symbols 2600 -+weather, clear 2600 -+weather, cloudy 2601 -+weather, rainy 2602 -+weather, showery 2614 -+weather, snowy 2603 - wedge 028C - wedge 2227 - weierstrass elliptic function 2118 -+WEST SYRIAC CROSS 2670 - WHEEL OF DHARMA 2638 --WHITE BULLET, CIRCLED 29BE --WHITE CIRCLE WITH DOT RIGHT 2686 --WHITE CIRCLE WITH DOWN ARROW 29EC --WHITE CIRCLE WITH TWO DOTS 2687 --WHITE CONCAVE-SIDED DIAMOND 27E1 --WHITE CONCAVE-SIDED DIAMOND WITH LEFTWARDS TICK 27E2 --WHITE CONCAVE-SIDED DIAMOND WITH RIGHTWARDS TICK 27E3 --WHITE DIAMOND WITH CENTRED DOT 27D0 --WHITE DOT RIGHT, BLACK CIRCLE WITH 2688 --WHITE DOTS, BLACK CIRCLE WITH TWO 2689 -+WHEELCHAIR SYMBOL 267F -+WHITE BULLET 25E6 -+WHITE CIRCLE 25CB -+WHITE CIRCLE, MEDIUM 26AA -+WHITE CIRCLE, MEDIUM SMALL 26AC -+WHITE CIRCLE, SHADOWED 274D -+WHITE CORNER BRACKET, LEFT 300E -+WHITE CORNER BRACKET, RIGHT 300F -+WHITE CURLY BRACKET, LEFT 2983 -+WHITE CURLY BRACKET, RIGHT 2984 -+WHITE DOWN POINTING INDEX 261F - WHITE FLAG 2690 - white framus 29D6 --WHITE HOURGLASS 29D6 --WHITE MEDIUM SMALL SQUARE 25FD --WHITE MEDIUM SQUARE 25FB --White On Black Circled Numbers 24EB -+WHITE FROWNING FACE 2639 -+WHITE LEFT POINTING INDEX 261C -+WHITE LENTICULAR BRACKET, LEFT 3016 -+WHITE LENTICULAR BRACKET, RIGHT 3017 -+WHITE NIB 2711 -+White on Black Circled Numbers 24EB -+WHITE PARENTHESIS, LEFT 2985 -+WHITE PARENTHESIS, RIGHT 2986 -+WHITE RIGHT POINTING INDEX 261E -+WHITE SCISSORS 2704 - WHITE SESAME DOT FE46 - WHITE SHOGI PIECE 2616 --WHITE SQUARE WITH LEFTWARDS TICK 27E4 --WHITE SQUARE WITH RIGHTWARDS TICK 27E5 -+WHITE SMILING FACE 263A -+WHITE SQUARE BRACKET, LEFT 301A -+WHITE SQUARE BRACKET, RIGHT 301B -+WHITE STAR 2606 -+WHITE SUN WITH RAYS 263C -+WHITE TELEPHONE 260F -+WHITE TORTOISE SHELL BRACKET, LEFT 3018 -+WHITE TORTOISE SHELL BRACKET, RIGHT 3019 -+WHITE TRAPEZIUM 23E2 -+WHITE UP POINTING INDEX 261D - WHITE VERTICAL BAR 2AFE - WHITE VERTICAL BAR, N-ARY 2AFF - WIDE BRIDGE ABOVE, COMBINING 20E9 --WIGGLY FENCE, LEFT 29D8 --WIGGLY FENCE, LEFT DOUBLE 29DA --WIGGLY FENCE, RIGHT 29D9 --WIGGLY FENCE, RIGHT DOUBLE 29DB -+Wiggly Fences 29D8 - wj 2060 - WON SIGN 20A9 --WORD DIVIDER, UGARITIC 1039F - WORD JOINER 2060 - Word Separators, Aegean 10100 --Words, Squared Japanese Katakana 3300 -+Words, Squared Katakana 3300 - WORDSPACE, ETHIOPIC 1361 -+working day symbol 2692 - WREATH PRODUCT 2240 - WRITING HAND 270D - WYNN, LATIN CAPITAL LETTER 01F7 - WYNN, LATIN LETTER 01BF -+X ABOVE, COMBINING 033D -+X BELOW, COMBINING 0353 -+X IN A RECTANGLE BOX 2327 -+X WITH DIAERESIS, LATIN SMALL LETTER 1E8D -+X WITH DOT ABOVE, LATIN SMALL LETTER 1E8B - X, BALLOT 2717 - X, BALLOT BOX WITH 2612 --X, CIRCLE WITH SUPERIMPOSED 29BB - X, COMBINING LATIN SMALL LETTER 036F - X, HEAVY BALLOT 2718 - X, HEAVY MULTIPLICATION 2716 - X, MODIFIER LETTER SMALL 02E3 - X, MULTIPLICATION 2715 --X ABOVE, COMBINING 033D --X IN A RECTANGLE BOX 2327 - XOR 22BB -+Y WITH ACUTE, LATIN CAPITAL LETTER 00DD -+Y WITH ACUTE, LATIN SMALL LETTER 00FD -+Y WITH CIRCUMFLEX, LATIN SMALL LETTER 0177 -+Y WITH DIAERESIS, LATIN CAPITAL LETTER 0178 -+Y WITH DIAERESIS, LATIN SMALL LETTER 00FF -+Y WITH DOT ABOVE, LATIN SMALL LETTER 1E8F -+Y WITH DOT BELOW, LATIN SMALL LETTER 1EF5 -+Y WITH GRAVE, LATIN SMALL LETTER 1EF3 -+Y WITH HOOK ABOVE, LATIN SMALL LETTER 1EF7 -+Y WITH HOOK, LATIN SMALL LETTER 01B4 -+Y WITH MACRON, LATIN SMALL LETTER 0233 -+Y WITH RING ABOVE, LATIN SMALL LETTER 1E99 -+Y WITH STROKE, LATIN CAPITAL LETTER 024E -+Y WITH STROKE, LATIN SMALL LETTER 024F -+Y WITH TILDE, LATIN SMALL LETTER 1EF9 - Y, LATIN LETTER SMALL CAPITAL 028F - Y, LATIN SMALL LETTER TURNED 028E - Y, MODIFIER LETTER SMALL 02B8 - Y, TURNED SANS-SERIF CAPITAL 2144 --YANG, YIN 262F -+YAMAKKAN, THAI CHARACTER 0E4E -+YEAR SIGN, TAMIL 0BF5 - YEN SIGN 00A5 -+yentamna, armenian 058A - Yi Radicals A490 - Yi Syllables A000 - Yiddish Digraphs 05F0 -+yield, does not 22A3 - yields 22A2 --Yijing Monogram and Digram Symbols 268A --Yijing Hexagram Symbols 4DC0 --Yijing Trigram Symbols 2630 -+Yijing / I Ching Hexagram Symbols 4DC0 -+Yijing / I Ching Monogram and Digram Symbols 268A -+Yijing / I Ching 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 - YR, LATIN LETTER 01A6 - yuan sign 00A5 --Z, BLACK-LETTER CAPITAL 2128 --Z, DOUBLE-STRUCK CAPITAL 2124 -+z bar, latin small letter 01B6 - Z NOTATION BAG MEMBERSHIP 22FF --z notation bag subtraction 2A41 --z notation bijection 2917 --Z Notation Binding Brackets 2989 --Z NOTATION DOMAIN ANTIRESTRICTION 2A64 --z notation finite function 20E6 --z notation finite function 21FB --z notation finite injection 2915 --z notation finite relation 21FC --z notation finite surjection 2901 --z notation finite surjective injection 2918 --Z Notation Image Brackets 2987 --z notation left bag bracket 27E6 --z notation partial function 21F8 --z notation partial injection 2914 --z notation partial relation 21F9 --z notation partial surjection 2900 --Z NOTATION RANGE ANTIRESTRICTION 2A65 --Z NOTATION RELATIONAL COMPOSITION 2A3E --Z NOTATION SCHEMA COMPOSITION 2A1F --z notation schema hiding 29F9 --Z NOTATION SCHEMA PIPING 2A20 --Z NOTATION SCHEMA PROJECTION 2A21 --z notations sequence concatenation 2040 - Z NOTATION SPOT 2981 --z notation surjective injection 2917 - Z NOTATION TYPE COLON 2982 -+Z WITH ACUTE, LATIN SMALL LETTER 017A -+Z WITH CARON, LATIN SMALL LETTER 017E -+Z WITH CIRCUMFLEX, LATIN SMALL LETTER 1E91 -+Z WITH CURL, LATIN SMALL LETTER 0291 -+Z WITH DOT ABOVE, LATIN SMALL LETTER 017C -+Z WITH DOT BELOW, LATIN SMALL LETTER 1E93 -+Z WITH HOOK, LATIN SMALL LETTER 0225 -+Z WITH LINE BELOW, LATIN SMALL LETTER 1E95 -+Z WITH RETROFLEX HOOK, LATIN SMALL LETTER 0290 -+Z WITH STROKE, LATIN SMALL LETTER 01B6 -+Z WITH SWASH TAIL, LATIN SMALL LETTER 0240 -+Z, BLACK-LETTER CAPITAL 2128 -+Z, DOUBLE-STRUCK CAPITAL 2124 -+Z, LATIN LETTER SMALL CAPITAL 1D22 - Zapf Dingbats Series 100, ITC 2700 --ZERO, CIRCLED DIGIT 24EA --ZERO, IDEOGRAPHIC NUMBER 3007 --ZERO, SUPERSCRIPT 2070 - ZERO WIDTH JOINER 200D - ZERO WIDTH NO-BREAK SPACE FEFF - ZERO WIDTH NON-JOINER 200C - ZERO WIDTH SPACE 200B --ZIGZAG ARROW, RIGHT ANGLE WITH DOWNWARDS 237C --ZIGZAG LINE, VERTICAL 299A -+ZERO, CIRCLED DIGIT 24EA -+ZERO, IDEOGRAPHIC NUMBER 3007 -+ZERO, SUPERSCRIPT 2070 -+ZIGZAG ABOVE, COMBINING 035B - Zodiacal Symbols 2648 - zwj 200D - zwnbsp FEFF - zwnj 200C - zwsp 200B -- -diff -r -u perl-5.8.8/lib/unicore/Jamo.txt perl-5.8.8.patched/lib/unicore/Jamo.txt ---- perl-5.8.8/lib/unicore/Jamo.txt 2005-04-08 07:30:47.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/Jamo.txt 2006-09-15 14:12:05.540132000 -0400 -@@ -1,8 +1,8 @@ --# Jamo-4.1.0.txt --# Date: 2004-12-09, 17:48 PST [KW] -+# Jamo-5.0.0.txt -+# Date: 2006-07-14, 11:22 PST [KW] - # - # Unicode Character Database --# Copyright (c) 1991-2004 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - # -diff -r -u perl-5.8.8/lib/unicore/LineBreak.txt perl-5.8.8.patched/lib/unicore/LineBreak.txt ---- perl-5.8.8/lib/unicore/LineBreak.txt 2005-04-08 07:30:50.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/LineBreak.txt 2006-09-15 14:12:05.553130000 -0400 -@@ -1,5 +1,5 @@ --# LineBreak-4.1.0.txt --# Date: 2005-03-17, 15:21:00 PST [KW] -+# LineBreak-5.0.0.txt -+# Date: 2006-05-23, 11:43:00 PST [KW] - # - # Line Break Properties - # -@@ -7,7 +7,7 @@ - # Unicode Character Database. - # It contains both normative and informative data. - # --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # - # The format is two fields separated by a semicolon. -@@ -29,6 +29,8 @@ - # in identifying the characters. - # - # See UAX #14: Line Breaking Properties, for more information -+# -+# @missing: 0000..10FFFF; XX - 0000;CM # - 0001;CM # - 0002;CM # -@@ -40,7 +42,7 @@ - 0008;CM # - 0009;BA # - 000A;LF # --000B;CM # -+000B;BK # - 000C;BK # - 000D;CR # - 000E;CM # -@@ -607,6 +609,20 @@ - 023F;AL # LATIN SMALL LETTER S WITH SWASH TAIL - 0240;AL # LATIN SMALL LETTER Z WITH SWASH TAIL - 0241;AL # LATIN CAPITAL LETTER GLOTTAL STOP -+0242;AL # LATIN SMALL LETTER GLOTTAL STOP -+0243;AL # LATIN CAPITAL LETTER B WITH STROKE -+0244;AL # LATIN CAPITAL LETTER U BAR -+0245;AL # LATIN CAPITAL LETTER TURNED V -+0246;AL # LATIN CAPITAL LETTER E WITH STROKE -+0247;AL # LATIN SMALL LETTER E WITH STROKE -+0248;AL # LATIN CAPITAL LETTER J WITH STROKE -+0249;AL # LATIN SMALL LETTER J WITH STROKE -+024A;AL # LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL -+024B;AL # LATIN SMALL LETTER Q WITH HOOK TAIL -+024C;AL # LATIN CAPITAL LETTER R WITH STROKE -+024D;AL # LATIN SMALL LETTER R WITH STROKE -+024E;AL # LATIN CAPITAL LETTER Y WITH STROKE -+024F;AL # LATIN SMALL LETTER Y WITH STROKE - 0250;AL # LATIN SMALL LETTER TURNED A - 0251;AL # LATIN SMALL LETTER ALPHA - 0252;AL # LATIN SMALL LETTER TURNED ALPHA -@@ -875,7 +891,7 @@ - 0359;CM # COMBINING ASTERISK BELOW - 035A;CM # COMBINING DOUBLE RING BELOW - 035B;CM # COMBINING ZIGZAG ABOVE --035C;CM # COMBINING DOUBLE BREVE BELOW -+035C;GL # COMBINING DOUBLE BREVE BELOW - 035D;GL # COMBINING DOUBLE BREVE - 035E;GL # COMBINING DOUBLE MACRON - 035F;GL # COMBINING DOUBLE MACRON BELOW -@@ -898,6 +914,9 @@ - 0374;AL # GREEK NUMERAL SIGN - 0375;AL # GREEK LOWER NUMERAL SIGN - 037A;AL # GREEK YPOGEGRAMMENI -+037B;AL # GREEK SMALL REVERSED LUNATE SIGMA SYMBOL -+037C;AL # GREEK SMALL DOTTED LUNATE SIGMA SYMBOL -+037D;AL # GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL - 037E;IS # GREEK QUESTION MARK - 0384;AL # GREEK TONOS - 0385;AL # GREEK DIALYTIKA TONOS -@@ -1225,6 +1244,7 @@ - 04CC;AL # CYRILLIC SMALL LETTER KHAKASSIAN CHE - 04CD;AL # CYRILLIC CAPITAL LETTER EM WITH TAIL - 04CE;AL # CYRILLIC SMALL LETTER EM WITH TAIL -+04CF;AL # CYRILLIC SMALL LETTER PALOCHKA - 04D0;AL # CYRILLIC CAPITAL LETTER A WITH BREVE - 04D1;AL # CYRILLIC SMALL LETTER A WITH BREVE - 04D2;AL # CYRILLIC CAPITAL LETTER A WITH DIAERESIS -@@ -1267,6 +1287,12 @@ - 04F7;AL # CYRILLIC SMALL LETTER GHE WITH DESCENDER - 04F8;AL # CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS - 04F9;AL # CYRILLIC SMALL LETTER YERU WITH DIAERESIS -+04FA;AL # CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK -+04FB;AL # CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK -+04FC;AL # CYRILLIC CAPITAL LETTER HA WITH HOOK -+04FD;AL # CYRILLIC SMALL LETTER HA WITH HOOK -+04FE;AL # CYRILLIC CAPITAL LETTER HA WITH STROKE -+04FF;AL # CYRILLIC SMALL LETTER HA WITH STROKE - 0500;AL # CYRILLIC CAPITAL LETTER KOMI DE - 0501;AL # CYRILLIC SMALL LETTER KOMI DE - 0502;AL # CYRILLIC CAPITAL LETTER KOMI DJE -@@ -1283,6 +1309,10 @@ - 050D;AL # CYRILLIC SMALL LETTER KOMI SJE - 050E;AL # CYRILLIC CAPITAL LETTER KOMI TJE - 050F;AL # CYRILLIC SMALL LETTER KOMI TJE -+0510;AL # CYRILLIC CAPITAL LETTER REVERSED ZE -+0511;AL # CYRILLIC SMALL LETTER REVERSED ZE -+0512;AL # CYRILLIC CAPITAL LETTER EL WITH HOOK -+0513;AL # CYRILLIC SMALL LETTER EL WITH HOOK - 0531;AL # ARMENIAN CAPITAL LETTER AYB - 0532;AL # ARMENIAN CAPITAL LETTER BEN - 0533;AL # ARMENIAN CAPITAL LETTER GIM -@@ -1410,10 +1440,11 @@ - 05B7;CM # HEBREW POINT PATAH - 05B8;CM # HEBREW POINT QAMATS - 05B9;CM # HEBREW POINT HOLAM -+05BA;CM # HEBREW POINT HOLAM HASER FOR VAV - 05BB;CM # HEBREW POINT QUBUTS - 05BC;CM # HEBREW POINT DAGESH OR MAPIQ - 05BD;CM # HEBREW POINT METEG --05BE;AL # HEBREW PUNCTUATION MAQAF -+05BE;BA # HEBREW PUNCTUATION MAQAF - 05BF;CM # HEBREW POINT RAFE - 05C0;AL # HEBREW PUNCTUATION PASEQ - 05C1;CM # HEBREW POINT SHIN DOT -@@ -1847,6 +1878,65 @@ - 07AF;CM # THAANA OABOAFILI - 07B0;CM # THAANA SUKUN - 07B1;AL # THAANA LETTER NAA -+07C0;NU # NKO DIGIT ZERO -+07C1;NU # NKO DIGIT ONE -+07C2;NU # NKO DIGIT TWO -+07C3;NU # NKO DIGIT THREE -+07C4;NU # NKO DIGIT FOUR -+07C5;NU # NKO DIGIT FIVE -+07C6;NU # NKO DIGIT SIX -+07C7;NU # NKO DIGIT SEVEN -+07C8;NU # NKO DIGIT EIGHT -+07C9;NU # NKO DIGIT NINE -+07CA;AL # NKO LETTER A -+07CB;AL # NKO LETTER EE -+07CC;AL # NKO LETTER I -+07CD;AL # NKO LETTER E -+07CE;AL # NKO LETTER U -+07CF;AL # NKO LETTER OO -+07D0;AL # NKO LETTER O -+07D1;AL # NKO LETTER DAGBASINNA -+07D2;AL # NKO LETTER N -+07D3;AL # NKO LETTER BA -+07D4;AL # NKO LETTER PA -+07D5;AL # NKO LETTER TA -+07D6;AL # NKO LETTER JA -+07D7;AL # NKO LETTER CHA -+07D8;AL # NKO LETTER DA -+07D9;AL # NKO LETTER RA -+07DA;AL # NKO LETTER RRA -+07DB;AL # NKO LETTER SA -+07DC;AL # NKO LETTER GBA -+07DD;AL # NKO LETTER FA -+07DE;AL # NKO LETTER KA -+07DF;AL # NKO LETTER LA -+07E0;AL # NKO LETTER NA WOLOSO -+07E1;AL # NKO LETTER MA -+07E2;AL # NKO LETTER NYA -+07E3;AL # NKO LETTER NA -+07E4;AL # NKO LETTER HA -+07E5;AL # NKO LETTER WA -+07E6;AL # NKO LETTER YA -+07E7;AL # NKO LETTER NYA WOLOSO -+07E8;AL # NKO LETTER JONA JA -+07E9;AL # NKO LETTER JONA CHA -+07EA;AL # NKO LETTER JONA RA -+07EB;CM # NKO COMBINING SHORT HIGH TONE -+07EC;CM # NKO COMBINING SHORT LOW TONE -+07ED;CM # NKO COMBINING SHORT RISING TONE -+07EE;CM # NKO COMBINING LONG DESCENDING TONE -+07EF;CM # NKO COMBINING LONG HIGH TONE -+07F0;CM # NKO COMBINING LONG LOW TONE -+07F1;CM # NKO COMBINING LONG RISING TONE -+07F2;CM # NKO COMBINING NASALIZATION MARK -+07F3;CM # NKO COMBINING DOUBLE DOT ABOVE -+07F4;AL # NKO HIGH TONE APOSTROPHE -+07F5;AL # NKO LOW TONE APOSTROPHE -+07F6;AL # NKO SYMBOL OO DENNEN -+07F7;AL # NKO SYMBOL GBAKURUNEN -+07F8;IS # NKO COMMA -+07F9;EX # NKO EXCLAMATION MARK -+07FA;AL # NKO LAJANYALAN - 0901;CM # DEVANAGARI SIGN CANDRABINDU - 0902;CM # DEVANAGARI SIGN ANUSVARA - 0903;CM # DEVANAGARI SIGN VISARGA -@@ -1952,7 +2042,11 @@ - 096E;NU # DEVANAGARI DIGIT EIGHT - 096F;NU # DEVANAGARI DIGIT NINE - 0970;AL # DEVANAGARI ABBREVIATION SIGN -+097B;AL # DEVANAGARI LETTER GGA -+097C;AL # DEVANAGARI LETTER JJA - 097D;AL # DEVANAGARI LETTER GLOTTAL STOP -+097E;AL # DEVANAGARI LETTER DDDA -+097F;AL # DEVANAGARI LETTER BBA - 0981;CM # BENGALI SIGN CANDRABINDU - 0982;CM # BENGALI SIGN ANUSVARA - 0983;CM # BENGALI SIGN VISARGA -@@ -2508,6 +2602,8 @@ - 0CDE;AL # KANNADA LETTER FA - 0CE0;AL # KANNADA LETTER VOCALIC RR - 0CE1;AL # KANNADA LETTER VOCALIC LL -+0CE2;CM # KANNADA VOWEL SIGN VOCALIC L -+0CE3;CM # KANNADA VOWEL SIGN VOCALIC LL - 0CE6;NU # KANNADA DIGIT ZERO - 0CE7;NU # KANNADA DIGIT ONE - 0CE8;NU # KANNADA DIGIT TWO -@@ -2518,6 +2614,8 @@ - 0CED;NU # KANNADA DIGIT SEVEN - 0CEE;NU # KANNADA DIGIT EIGHT - 0CEF;NU # KANNADA DIGIT NINE -+0CF1;AL # KANNADA SIGN JIHVAMULIYA -+0CF2;AL # KANNADA SIGN UPADHMANIYA - 0D02;CM # MALAYALAM SIGN ANUSVARA - 0D03;CM # MALAYALAM SIGN VISARGA - 0D05;AL # MALAYALAM LETTER A -@@ -2724,16 +2822,16 @@ - 0E2E;SA # THAI CHARACTER HO NOKHUK - 0E2F;SA # THAI CHARACTER PAIYANNOI - 0E30;SA # THAI CHARACTER SARA A --0E31;CM # THAI CHARACTER MAI HAN-AKAT -+0E31;SA # 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 -+0E34;SA # THAI CHARACTER SARA I -+0E35;SA # THAI CHARACTER SARA II -+0E36;SA # THAI CHARACTER SARA UE -+0E37;SA # THAI CHARACTER SARA UEE -+0E38;SA # THAI CHARACTER SARA U -+0E39;SA # THAI CHARACTER SARA UU -+0E3A;SA # THAI CHARACTER PHINTHU - 0E3F;PR # THAI CURRENCY SYMBOL BAHT - 0E40;SA # THAI CHARACTER SARA E - 0E41;SA # THAI CHARACTER SARA AE -@@ -2742,14 +2840,14 @@ - 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 -+0E47;SA # THAI CHARACTER MAITAIKHU -+0E48;SA # THAI CHARACTER MAI EK -+0E49;SA # THAI CHARACTER MAI THO -+0E4A;SA # THAI CHARACTER MAI TRI -+0E4B;SA # THAI CHARACTER MAI CHATTAWA -+0E4C;SA # THAI CHARACTER THANTHAKHAT -+0E4D;SA # THAI CHARACTER NIKHAHIT -+0E4E;SA # THAI CHARACTER YAMAKKAN - 0E4F;AL # THAI CHARACTER FONGMAN - 0E50;NU # THAI DIGIT ZERO - 0E51;NU # THAI DIGIT ONE -@@ -2792,17 +2890,17 @@ - 0EAE;SA # LAO LETTER HO TAM - 0EAF;SA # LAO ELLIPSIS - 0EB0;SA # LAO VOWEL SIGN A --0EB1;CM # LAO VOWEL SIGN MAI KAN -+0EB1;SA # 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 -+0EB4;SA # LAO VOWEL SIGN I -+0EB5;SA # LAO VOWEL SIGN II -+0EB6;SA # LAO VOWEL SIGN Y -+0EB7;SA # LAO VOWEL SIGN YY -+0EB8;SA # LAO VOWEL SIGN U -+0EB9;SA # LAO VOWEL SIGN UU -+0EBB;SA # LAO VOWEL SIGN MAI KON -+0EBC;SA # LAO SEMIVOWEL SIGN LO - 0EBD;SA # LAO SEMIVOWEL SIGN NYO - 0EC0;SA # LAO VOWEL SIGN E - 0EC1;SA # LAO VOWEL SIGN EI -@@ -2810,12 +2908,12 @@ - 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 -+0EC8;SA # LAO TONE MAI EK -+0EC9;SA # LAO TONE MAI THO -+0ECA;SA # LAO TONE MAI TI -+0ECB;SA # LAO TONE MAI CATAWA -+0ECC;SA # LAO CANCELLATION MARK -+0ECD;SA # LAO NIGGAHITA - 0ED0;NU # LAO DIGIT ZERO - 0ED1;NU # LAO DIGIT ONE - 0ED2;NU # LAO DIGIT TWO -@@ -3064,17 +3162,17 @@ - 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 -+102C;SA # MYANMAR VOWEL SIGN AA -+102D;SA # MYANMAR VOWEL SIGN I -+102E;SA # MYANMAR VOWEL SIGN II -+102F;SA # MYANMAR VOWEL SIGN U -+1030;SA # MYANMAR VOWEL SIGN UU -+1031;SA # MYANMAR VOWEL SIGN E -+1032;SA # MYANMAR VOWEL SIGN AI -+1036;SA # MYANMAR SIGN ANUSVARA -+1037;SA # MYANMAR SIGN DOT BELOW -+1038;SA # MYANMAR SIGN VISARGA -+1039;SA # MYANMAR SIGN VIRAMA - 1040;NU # MYANMAR DIGIT ZERO - 1041;NU # MYANMAR DIGIT ONE - 1042;NU # MYANMAR DIGIT TWO -@@ -3097,10 +3195,10 @@ - 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 -+1056;SA # MYANMAR VOWEL SIGN VOCALIC R -+1057;SA # MYANMAR VOWEL SIGN VOCALIC RR -+1058;SA # MYANMAR VOWEL SIGN VOCALIC L -+1059;SA # MYANMAR VOWEL SIGN VOCALIC LL - 10A0;AL # GEORGIAN CAPITAL LETTER AN - 10A1;AL # GEORGIAN CAPITAL LETTER BAN - 10A2;AL # GEORGIAN CAPITAL LETTER GAN -@@ -4672,8 +4770,8 @@ - 1732;CM # HANUNOO VOWEL SIGN I - 1733;CM # HANUNOO VOWEL SIGN U - 1734;CM # HANUNOO SIGN PAMUDPOD --1735;AL # PHILIPPINE SINGLE PUNCTUATION --1736;AL # PHILIPPINE DOUBLE PUNCTUATION -+1735;BA # PHILIPPINE SINGLE PUNCTUATION -+1736;BA # PHILIPPINE DOUBLE PUNCTUATION - 1740;AL # BUHID LETTER A - 1741;AL # BUHID LETTER I - 1742;AL # BUHID LETTER U -@@ -4766,46 +4864,46 @@ - 17B3;SA # KHMER INDEPENDENT VOWEL QAU - 17B4;SA # KHMER VOWEL INHERENT AQ - 17B5;SA # 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 -+17B6;SA # KHMER VOWEL SIGN AA -+17B7;SA # KHMER VOWEL SIGN I -+17B8;SA # KHMER VOWEL SIGN II -+17B9;SA # KHMER VOWEL SIGN Y -+17BA;SA # KHMER VOWEL SIGN YY -+17BB;SA # KHMER VOWEL SIGN U -+17BC;SA # KHMER VOWEL SIGN UU -+17BD;SA # KHMER VOWEL SIGN UA -+17BE;SA # KHMER VOWEL SIGN OE -+17BF;SA # KHMER VOWEL SIGN YA -+17C0;SA # KHMER VOWEL SIGN IE -+17C1;SA # KHMER VOWEL SIGN E -+17C2;SA # KHMER VOWEL SIGN AE -+17C3;SA # KHMER VOWEL SIGN AI -+17C4;SA # KHMER VOWEL SIGN OO -+17C5;SA # KHMER VOWEL SIGN AU -+17C6;SA # KHMER SIGN NIKAHIT -+17C7;SA # KHMER SIGN REAHMUK -+17C8;SA # KHMER SIGN YUUKALEAPINTU -+17C9;SA # KHMER SIGN MUUSIKATOAN -+17CA;SA # KHMER SIGN TRIISAP -+17CB;SA # KHMER SIGN BANTOC -+17CC;SA # KHMER SIGN ROBAT -+17CD;SA # KHMER SIGN TOANDAKHIAT -+17CE;SA # KHMER SIGN KAKABAT -+17CF;SA # KHMER SIGN AHSDA -+17D0;SA # KHMER SIGN SAMYOK SANNYA -+17D1;SA # KHMER SIGN VIRIAM -+17D2;SA # KHMER SIGN COENG -+17D3;SA # KHMER SIGN BATHAMASAT - 17D4;BA # KHMER SIGN KHAN - 17D5;BA # KHMER SIGN BARIYOOSAN - 17D6;NS # KHMER SIGN CAMNUC PII KUUH --17D7;NS # KHMER SIGN LEK TOO -+17D7;SA # KHMER SIGN LEK TOO - 17D8;BA # KHMER SIGN BEYYAL --17D9;NS # KHMER SIGN PHNAEK MUAN -+17D9;AL # KHMER SIGN PHNAEK MUAN - 17DA;BA # KHMER SIGN KOOMUUT - 17DB;PR # KHMER CURRENCY SYMBOL RIEL --17DC;AL # KHMER SIGN AVAKRAHASANYA --17DD;CM # KHMER SIGN ATTHACAN -+17DC;SA # KHMER SIGN AVAKRAHASANYA -+17DD;SA # KHMER SIGN ATTHACAN - 17E0;NU # KHMER DIGIT ZERO - 17E1;NU # KHMER DIGIT ONE - 17E2;NU # KHMER DIGIT TWO -@@ -5047,109 +5145,109 @@ - 194D;NU # LIMBU DIGIT SEVEN - 194E;NU # LIMBU DIGIT EIGHT - 194F;NU # LIMBU DIGIT NINE --1950;AL # TAI LE LETTER KA --1951;AL # TAI LE LETTER XA --1952;AL # TAI LE LETTER NGA --1953;AL # TAI LE LETTER TSA --1954;AL # TAI LE LETTER SA --1955;AL # TAI LE LETTER YA --1956;AL # TAI LE LETTER TA --1957;AL # TAI LE LETTER THA --1958;AL # TAI LE LETTER LA --1959;AL # TAI LE LETTER PA --195A;AL # TAI LE LETTER PHA --195B;AL # TAI LE LETTER MA --195C;AL # TAI LE LETTER FA --195D;AL # TAI LE LETTER VA --195E;AL # TAI LE LETTER HA --195F;AL # TAI LE LETTER QA --1960;AL # TAI LE LETTER KHA --1961;AL # TAI LE LETTER TSHA --1962;AL # TAI LE LETTER NA --1963;AL # TAI LE LETTER A --1964;AL # TAI LE LETTER I --1965;AL # TAI LE LETTER EE --1966;AL # TAI LE LETTER EH --1967;AL # TAI LE LETTER U --1968;AL # TAI LE LETTER OO --1969;AL # TAI LE LETTER O --196A;AL # TAI LE LETTER UE --196B;AL # TAI LE LETTER E --196C;AL # TAI LE LETTER AUE --196D;AL # TAI LE LETTER AI --1970;AL # TAI LE LETTER TONE-2 --1971;AL # TAI LE LETTER TONE-3 --1972;AL # TAI LE LETTER TONE-4 --1973;AL # TAI LE LETTER TONE-5 --1974;AL # TAI LE LETTER TONE-6 --1980;AL # NEW TAI LUE LETTER HIGH QA --1981;AL # NEW TAI LUE LETTER LOW QA --1982;AL # NEW TAI LUE LETTER HIGH KA --1983;AL # NEW TAI LUE LETTER HIGH XA --1984;AL # NEW TAI LUE LETTER HIGH NGA --1985;AL # NEW TAI LUE LETTER LOW KA --1986;AL # NEW TAI LUE LETTER LOW XA --1987;AL # NEW TAI LUE LETTER LOW NGA --1988;AL # NEW TAI LUE LETTER HIGH TSA --1989;AL # NEW TAI LUE LETTER HIGH SA --198A;AL # NEW TAI LUE LETTER HIGH YA --198B;AL # NEW TAI LUE LETTER LOW TSA --198C;AL # NEW TAI LUE LETTER LOW SA --198D;AL # NEW TAI LUE LETTER LOW YA --198E;AL # NEW TAI LUE LETTER HIGH TA --198F;AL # NEW TAI LUE LETTER HIGH THA --1990;AL # NEW TAI LUE LETTER HIGH NA --1991;AL # NEW TAI LUE LETTER LOW TA --1992;AL # NEW TAI LUE LETTER LOW THA --1993;AL # NEW TAI LUE LETTER LOW NA --1994;AL # NEW TAI LUE LETTER HIGH PA --1995;AL # NEW TAI LUE LETTER HIGH PHA --1996;AL # NEW TAI LUE LETTER HIGH MA --1997;AL # NEW TAI LUE LETTER LOW PA --1998;AL # NEW TAI LUE LETTER LOW PHA --1999;AL # NEW TAI LUE LETTER LOW MA --199A;AL # NEW TAI LUE LETTER HIGH FA --199B;AL # NEW TAI LUE LETTER HIGH VA --199C;AL # NEW TAI LUE LETTER HIGH LA --199D;AL # NEW TAI LUE LETTER LOW FA --199E;AL # NEW TAI LUE LETTER LOW VA --199F;AL # NEW TAI LUE LETTER LOW LA --19A0;AL # NEW TAI LUE LETTER HIGH HA --19A1;AL # NEW TAI LUE LETTER HIGH DA --19A2;AL # NEW TAI LUE LETTER HIGH BA --19A3;AL # NEW TAI LUE LETTER LOW HA --19A4;AL # NEW TAI LUE LETTER LOW DA --19A5;AL # NEW TAI LUE LETTER LOW BA --19A6;AL # NEW TAI LUE LETTER HIGH KVA --19A7;AL # NEW TAI LUE LETTER HIGH XVA --19A8;AL # NEW TAI LUE LETTER LOW KVA --19A9;AL # NEW TAI LUE LETTER LOW XVA --19B0;CM # NEW TAI LUE VOWEL SIGN VOWEL SHORTENER --19B1;CM # NEW TAI LUE VOWEL SIGN AA --19B2;CM # NEW TAI LUE VOWEL SIGN II --19B3;CM # NEW TAI LUE VOWEL SIGN U --19B4;CM # NEW TAI LUE VOWEL SIGN UU --19B5;CM # NEW TAI LUE VOWEL SIGN E --19B6;CM # NEW TAI LUE VOWEL SIGN AE --19B7;CM # NEW TAI LUE VOWEL SIGN O --19B8;CM # NEW TAI LUE VOWEL SIGN OA --19B9;CM # NEW TAI LUE VOWEL SIGN UE --19BA;CM # NEW TAI LUE VOWEL SIGN AY --19BB;CM # NEW TAI LUE VOWEL SIGN AAY --19BC;CM # NEW TAI LUE VOWEL SIGN UY --19BD;CM # NEW TAI LUE VOWEL SIGN OY --19BE;CM # NEW TAI LUE VOWEL SIGN OAY --19BF;CM # NEW TAI LUE VOWEL SIGN UEY --19C0;CM # NEW TAI LUE VOWEL SIGN IY --19C1;AL # NEW TAI LUE LETTER FINAL V --19C2;AL # NEW TAI LUE LETTER FINAL NG --19C3;AL # NEW TAI LUE LETTER FINAL N --19C4;AL # NEW TAI LUE LETTER FINAL M --19C5;AL # NEW TAI LUE LETTER FINAL K --19C6;AL # NEW TAI LUE LETTER FINAL D --19C7;AL # NEW TAI LUE LETTER FINAL B --19C8;CM # NEW TAI LUE TONE MARK-1 --19C9;CM # NEW TAI LUE TONE MARK-2 -+1950;SA # TAI LE LETTER KA -+1951;SA # TAI LE LETTER XA -+1952;SA # TAI LE LETTER NGA -+1953;SA # TAI LE LETTER TSA -+1954;SA # TAI LE LETTER SA -+1955;SA # TAI LE LETTER YA -+1956;SA # TAI LE LETTER TA -+1957;SA # TAI LE LETTER THA -+1958;SA # TAI LE LETTER LA -+1959;SA # TAI LE LETTER PA -+195A;SA # TAI LE LETTER PHA -+195B;SA # TAI LE LETTER MA -+195C;SA # TAI LE LETTER FA -+195D;SA # TAI LE LETTER VA -+195E;SA # TAI LE LETTER HA -+195F;SA # TAI LE LETTER QA -+1960;SA # TAI LE LETTER KHA -+1961;SA # TAI LE LETTER TSHA -+1962;SA # TAI LE LETTER NA -+1963;SA # TAI LE LETTER A -+1964;SA # TAI LE LETTER I -+1965;SA # TAI LE LETTER EE -+1966;SA # TAI LE LETTER EH -+1967;SA # TAI LE LETTER U -+1968;SA # TAI LE LETTER OO -+1969;SA # TAI LE LETTER O -+196A;SA # TAI LE LETTER UE -+196B;SA # TAI LE LETTER E -+196C;SA # TAI LE LETTER AUE -+196D;SA # TAI LE LETTER AI -+1970;SA # TAI LE LETTER TONE-2 -+1971;SA # TAI LE LETTER TONE-3 -+1972;SA # TAI LE LETTER TONE-4 -+1973;SA # TAI LE LETTER TONE-5 -+1974;SA # TAI LE LETTER TONE-6 -+1980;SA # NEW TAI LUE LETTER HIGH QA -+1981;SA # NEW TAI LUE LETTER LOW QA -+1982;SA # NEW TAI LUE LETTER HIGH KA -+1983;SA # NEW TAI LUE LETTER HIGH XA -+1984;SA # NEW TAI LUE LETTER HIGH NGA -+1985;SA # NEW TAI LUE LETTER LOW KA -+1986;SA # NEW TAI LUE LETTER LOW XA -+1987;SA # NEW TAI LUE LETTER LOW NGA -+1988;SA # NEW TAI LUE LETTER HIGH TSA -+1989;SA # NEW TAI LUE LETTER HIGH SA -+198A;SA # NEW TAI LUE LETTER HIGH YA -+198B;SA # NEW TAI LUE LETTER LOW TSA -+198C;SA # NEW TAI LUE LETTER LOW SA -+198D;SA # NEW TAI LUE LETTER LOW YA -+198E;SA # NEW TAI LUE LETTER HIGH TA -+198F;SA # NEW TAI LUE LETTER HIGH THA -+1990;SA # NEW TAI LUE LETTER HIGH NA -+1991;SA # NEW TAI LUE LETTER LOW TA -+1992;SA # NEW TAI LUE LETTER LOW THA -+1993;SA # NEW TAI LUE LETTER LOW NA -+1994;SA # NEW TAI LUE LETTER HIGH PA -+1995;SA # NEW TAI LUE LETTER HIGH PHA -+1996;SA # NEW TAI LUE LETTER HIGH MA -+1997;SA # NEW TAI LUE LETTER LOW PA -+1998;SA # NEW TAI LUE LETTER LOW PHA -+1999;SA # NEW TAI LUE LETTER LOW MA -+199A;SA # NEW TAI LUE LETTER HIGH FA -+199B;SA # NEW TAI LUE LETTER HIGH VA -+199C;SA # NEW TAI LUE LETTER HIGH LA -+199D;SA # NEW TAI LUE LETTER LOW FA -+199E;SA # NEW TAI LUE LETTER LOW VA -+199F;SA # NEW TAI LUE LETTER LOW LA -+19A0;SA # NEW TAI LUE LETTER HIGH HA -+19A1;SA # NEW TAI LUE LETTER HIGH DA -+19A2;SA # NEW TAI LUE LETTER HIGH BA -+19A3;SA # NEW TAI LUE LETTER LOW HA -+19A4;SA # NEW TAI LUE LETTER LOW DA -+19A5;SA # NEW TAI LUE LETTER LOW BA -+19A6;SA # NEW TAI LUE LETTER HIGH KVA -+19A7;SA # NEW TAI LUE LETTER HIGH XVA -+19A8;SA # NEW TAI LUE LETTER LOW KVA -+19A9;SA # NEW TAI LUE LETTER LOW XVA -+19B0;SA # NEW TAI LUE VOWEL SIGN VOWEL SHORTENER -+19B1;SA # NEW TAI LUE VOWEL SIGN AA -+19B2;SA # NEW TAI LUE VOWEL SIGN II -+19B3;SA # NEW TAI LUE VOWEL SIGN U -+19B4;SA # NEW TAI LUE VOWEL SIGN UU -+19B5;SA # NEW TAI LUE VOWEL SIGN E -+19B6;SA # NEW TAI LUE VOWEL SIGN AE -+19B7;SA # NEW TAI LUE VOWEL SIGN O -+19B8;SA # NEW TAI LUE VOWEL SIGN OA -+19B9;SA # NEW TAI LUE VOWEL SIGN UE -+19BA;SA # NEW TAI LUE VOWEL SIGN AY -+19BB;SA # NEW TAI LUE VOWEL SIGN AAY -+19BC;SA # NEW TAI LUE VOWEL SIGN UY -+19BD;SA # NEW TAI LUE VOWEL SIGN OY -+19BE;SA # NEW TAI LUE VOWEL SIGN OAY -+19BF;SA # NEW TAI LUE VOWEL SIGN UEY -+19C0;SA # NEW TAI LUE VOWEL SIGN IY -+19C1;SA # NEW TAI LUE LETTER FINAL V -+19C2;SA # NEW TAI LUE LETTER FINAL NG -+19C3;SA # NEW TAI LUE LETTER FINAL N -+19C4;SA # NEW TAI LUE LETTER FINAL M -+19C5;SA # NEW TAI LUE LETTER FINAL K -+19C6;SA # NEW TAI LUE LETTER FINAL D -+19C7;SA # NEW TAI LUE LETTER FINAL B -+19C8;SA # NEW TAI LUE TONE MARK-1 -+19C9;SA # NEW TAI LUE TONE MARK-2 - 19D0;NU # NEW TAI LUE DIGIT ZERO - 19D1;NU # NEW TAI LUE DIGIT ONE - 19D2;NU # NEW TAI LUE DIGIT TWO -@@ -5160,8 +5258,8 @@ - 19D7;NU # NEW TAI LUE DIGIT SEVEN - 19D8;NU # NEW TAI LUE DIGIT EIGHT - 19D9;NU # NEW TAI LUE DIGIT NINE --19DE;AL # NEW TAI LUE SIGN LAE --19DF;AL # NEW TAI LUE SIGN LAEV -+19DE;SA # NEW TAI LUE SIGN LAE -+19DF;SA # NEW TAI LUE SIGN LAEV - 19E0;AL # KHMER SYMBOL PATHAMASAT - 19E1;AL # KHMER SYMBOL MUOY KOET - 19E2;AL # KHMER SYMBOL PII KOET -@@ -5224,6 +5322,127 @@ - 1A1B;CM # BUGINESE VOWEL SIGN AE - 1A1E;BA # BUGINESE PALLAWA - 1A1F;AL # BUGINESE END OF SECTION -+1B00;CM # BALINESE SIGN ULU RICEM -+1B01;CM # BALINESE SIGN ULU CANDRA -+1B02;CM # BALINESE SIGN CECEK -+1B03;CM # BALINESE SIGN SURANG -+1B04;CM # BALINESE SIGN BISAH -+1B05;AL # BALINESE LETTER AKARA -+1B06;AL # BALINESE LETTER AKARA TEDUNG -+1B07;AL # BALINESE LETTER IKARA -+1B08;AL # BALINESE LETTER IKARA TEDUNG -+1B09;AL # BALINESE LETTER UKARA -+1B0A;AL # BALINESE LETTER UKARA TEDUNG -+1B0B;AL # BALINESE LETTER RA REPA -+1B0C;AL # BALINESE LETTER RA REPA TEDUNG -+1B0D;AL # BALINESE LETTER LA LENGA -+1B0E;AL # BALINESE LETTER LA LENGA TEDUNG -+1B0F;AL # BALINESE LETTER EKARA -+1B10;AL # BALINESE LETTER AIKARA -+1B11;AL # BALINESE LETTER OKARA -+1B12;AL # BALINESE LETTER OKARA TEDUNG -+1B13;AL # BALINESE LETTER KA -+1B14;AL # BALINESE LETTER KA MAHAPRANA -+1B15;AL # BALINESE LETTER GA -+1B16;AL # BALINESE LETTER GA GORA -+1B17;AL # BALINESE LETTER NGA -+1B18;AL # BALINESE LETTER CA -+1B19;AL # BALINESE LETTER CA LACA -+1B1A;AL # BALINESE LETTER JA -+1B1B;AL # BALINESE LETTER JA JERA -+1B1C;AL # BALINESE LETTER NYA -+1B1D;AL # BALINESE LETTER TA LATIK -+1B1E;AL # BALINESE LETTER TA MURDA MAHAPRANA -+1B1F;AL # BALINESE LETTER DA MURDA ALPAPRANA -+1B20;AL # BALINESE LETTER DA MURDA MAHAPRANA -+1B21;AL # BALINESE LETTER NA RAMBAT -+1B22;AL # BALINESE LETTER TA -+1B23;AL # BALINESE LETTER TA TAWA -+1B24;AL # BALINESE LETTER DA -+1B25;AL # BALINESE LETTER DA MADU -+1B26;AL # BALINESE LETTER NA -+1B27;AL # BALINESE LETTER PA -+1B28;AL # BALINESE LETTER PA KAPAL -+1B29;AL # BALINESE LETTER BA -+1B2A;AL # BALINESE LETTER BA KEMBANG -+1B2B;AL # BALINESE LETTER MA -+1B2C;AL # BALINESE LETTER YA -+1B2D;AL # BALINESE LETTER RA -+1B2E;AL # BALINESE LETTER LA -+1B2F;AL # BALINESE LETTER WA -+1B30;AL # BALINESE LETTER SA SAGA -+1B31;AL # BALINESE LETTER SA SAPA -+1B32;AL # BALINESE LETTER SA -+1B33;AL # BALINESE LETTER HA -+1B34;CM # BALINESE SIGN REREKAN -+1B35;CM # BALINESE VOWEL SIGN TEDUNG -+1B36;CM # BALINESE VOWEL SIGN ULU -+1B37;CM # BALINESE VOWEL SIGN ULU SARI -+1B38;CM # BALINESE VOWEL SIGN SUKU -+1B39;CM # BALINESE VOWEL SIGN SUKU ILUT -+1B3A;CM # BALINESE VOWEL SIGN RA REPA -+1B3B;CM # BALINESE VOWEL SIGN RA REPA TEDUNG -+1B3C;CM # BALINESE VOWEL SIGN LA LENGA -+1B3D;CM # BALINESE VOWEL SIGN LA LENGA TEDUNG -+1B3E;CM # BALINESE VOWEL SIGN TALING -+1B3F;CM # BALINESE VOWEL SIGN TALING REPA -+1B40;CM # BALINESE VOWEL SIGN TALING TEDUNG -+1B41;CM # BALINESE VOWEL SIGN TALING REPA TEDUNG -+1B42;CM # BALINESE VOWEL SIGN PEPET -+1B43;CM # BALINESE VOWEL SIGN PEPET TEDUNG -+1B44;CM # BALINESE ADEG ADEG -+1B45;AL # BALINESE LETTER KAF SASAK -+1B46;AL # BALINESE LETTER KHOT SASAK -+1B47;AL # BALINESE LETTER TZIR SASAK -+1B48;AL # BALINESE LETTER EF SASAK -+1B49;AL # BALINESE LETTER VE SASAK -+1B4A;AL # BALINESE LETTER ZAL SASAK -+1B4B;AL # BALINESE LETTER ASYURA SASAK -+1B50;NU # BALINESE DIGIT ZERO -+1B51;NU # BALINESE DIGIT ONE -+1B52;NU # BALINESE DIGIT TWO -+1B53;NU # BALINESE DIGIT THREE -+1B54;NU # BALINESE DIGIT FOUR -+1B55;NU # BALINESE DIGIT FIVE -+1B56;NU # BALINESE DIGIT SIX -+1B57;NU # BALINESE DIGIT SEVEN -+1B58;NU # BALINESE DIGIT EIGHT -+1B59;NU # BALINESE DIGIT NINE -+1B5A;BA # BALINESE PANTI -+1B5B;BA # BALINESE PAMADA -+1B5C;BA # BALINESE WINDU -+1B5D;BA # BALINESE CARIK PAMUNGKAH -+1B5E;BA # BALINESE CARIK SIKI -+1B5F;BA # BALINESE CARIK PAREREN -+1B60;BA # BALINESE PAMENENG -+1B61;AL # BALINESE MUSICAL SYMBOL DONG -+1B62;AL # BALINESE MUSICAL SYMBOL DENG -+1B63;AL # BALINESE MUSICAL SYMBOL DUNG -+1B64;AL # BALINESE MUSICAL SYMBOL DANG -+1B65;AL # BALINESE MUSICAL SYMBOL DANG SURANG -+1B66;AL # BALINESE MUSICAL SYMBOL DING -+1B67;AL # BALINESE MUSICAL SYMBOL DAENG -+1B68;AL # BALINESE MUSICAL SYMBOL DEUNG -+1B69;AL # BALINESE MUSICAL SYMBOL DAING -+1B6A;AL # BALINESE MUSICAL SYMBOL DANG GEDE -+1B6B;CM # BALINESE MUSICAL SYMBOL COMBINING TEGEH -+1B6C;CM # BALINESE MUSICAL SYMBOL COMBINING ENDEP -+1B6D;CM # BALINESE MUSICAL SYMBOL COMBINING KEMPUL -+1B6E;CM # BALINESE MUSICAL SYMBOL COMBINING KEMPLI -+1B6F;CM # BALINESE MUSICAL SYMBOL COMBINING JEGOGAN -+1B70;CM # BALINESE MUSICAL SYMBOL COMBINING KEMPUL WITH JEGOGAN -+1B71;CM # BALINESE MUSICAL SYMBOL COMBINING KEMPLI WITH JEGOGAN -+1B72;CM # BALINESE MUSICAL SYMBOL COMBINING BENDE -+1B73;CM # BALINESE MUSICAL SYMBOL COMBINING GONG -+1B74;AL # BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG -+1B75;AL # BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DAG -+1B76;AL # BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TUK -+1B77;AL # BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TAK -+1B78;AL # BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PANG -+1B79;AL # BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PUNG -+1B7A;AL # BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLAK -+1B7B;AL # BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLUK -+1B7C;AL # BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING - 1D00;AL # LATIN LETTER SMALL CAPITAL A - 1D01;AL # LATIN LETTER SMALL CAPITAL AE - 1D02;AL # LATIN SMALL LETTER TURNED AE -@@ -5420,6 +5639,15 @@ - 1DC1;CM # COMBINING DOTTED ACUTE ACCENT - 1DC2;CM # COMBINING SNAKE BELOW - 1DC3;CM # COMBINING SUSPENSION MARK -+1DC4;CM # COMBINING MACRON-ACUTE -+1DC5;CM # COMBINING GRAVE-MACRON -+1DC6;CM # COMBINING MACRON-GRAVE -+1DC7;CM # COMBINING ACUTE-MACRON -+1DC8;CM # COMBINING GRAVE-ACUTE-GRAVE -+1DC9;CM # COMBINING ACUTE-GRAVE-ACUTE -+1DCA;CM # COMBINING LATIN SMALL LETTER R BELOW -+1DFE;CM # COMBINING LEFT ARROWHEAD ABOVE -+1DFF;CM # COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW - 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 -@@ -5960,7 +6188,7 @@ - 203A;QU # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK - 203B;AI # REFERENCE MARK - 203C;NS # DOUBLE EXCLAMATION MARK --203D;AL # INTERROBANG -+203D;NS # INTERROBANG - 203E;AL # OVERLINE - 203F;AL # UNDERTIE - 2040;AL # CHARACTER TIE -@@ -5970,9 +6198,9 @@ - 2044;IS # FRACTION SLASH - 2045;OP # LEFT SQUARE BRACKET WITH QUILL - 2046;CL # RIGHT SQUARE BRACKET WITH QUILL --2047;AL # DOUBLE QUESTION MARK --2048;AL # QUESTION EXCLAMATION MARK --2049;AL # EXCLAMATION QUESTION MARK -+2047;NS # DOUBLE QUESTION MARK -+2048;NS # QUESTION EXCLAMATION MARK -+2049;NS # EXCLAMATION QUESTION MARK - 204A;AL # TIRONIAN SIGN ET - 204B;AL # REVERSED PILCROW SIGN - 204C;AL # BLACK LEFTWARDS BULLET -@@ -6089,6 +6317,10 @@ - 20E9;CM # COMBINING WIDE BRIDGE ABOVE - 20EA;CM # COMBINING LEFTWARDS ARROW OVERLAY - 20EB;CM # COMBINING LONG DOUBLE SOLIDUS OVERLAY -+20EC;CM # COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS -+20ED;CM # COMBINING LEFTWARDS HARPOON WITH BARB DOWNWARDS -+20EE;CM # COMBINING LEFT ARROW BELOW -+20EF;CM # COMBINING RIGHT ARROW BELOW - 2100;AL # ACCOUNT OF - 2101;AL # ADDRESSED TO THE SUBJECT - 2102;AL # DOUBLE-STRUCK CAPITAL C -@@ -6166,6 +6398,8 @@ - 214A;AL # PROPERTY LINE - 214B;AL # TURNED AMPERSAND - 214C;AL # PER SIGN -+214D;AL # AKTIESELSKAB -+214E;AL # TURNED SMALL F - 2153;AL # VULGAR FRACTION ONE THIRD - 2154;AI # VULGAR FRACTION TWO THIRDS - 2155;AI # VULGAR FRACTION ONE FIFTH -@@ -6215,6 +6449,7 @@ - 2181;AL # ROMAN NUMERAL FIVE THOUSAND - 2182;AL # ROMAN NUMERAL TEN THOUSAND - 2183;AL # ROMAN NUMERAL REVERSED ONE HUNDRED -+2184;AL # LATIN SMALL LETTER REVERSED C - 2190;AI # LEFTWARDS ARROW - 2191;AI # UPWARDS ARROW - 2192;AI # RIGHTWARDS ARROW -@@ -6763,9 +6998,9 @@ - 23B1;AL # UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION - 23B2;AL # SUMMATION TOP - 23B3;AL # SUMMATION BOTTOM --23B4;OP # TOP SQUARE BRACKET --23B5;CL # BOTTOM SQUARE BRACKET --23B6;QU # BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET -+23B4;AL # TOP SQUARE BRACKET -+23B5;AL # BOTTOM SQUARE BRACKET -+23B6;AL # BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET - 23B7;AL # RADICAL SYMBOL BOTTOM - 23B8;AL # LEFT VERTICAL BOX LINE - 23B9;AL # RIGHT VERTICAL BOX LINE -@@ -6803,6 +7038,18 @@ - 23D9;AL # METRICAL PENTASEME - 23DA;AL # EARTH GROUND - 23DB;AL # FUSE -+23DC;AL # TOP PARENTHESIS -+23DD;AL # BOTTOM PARENTHESIS -+23DE;AL # TOP CURLY BRACKET -+23DF;AL # BOTTOM CURLY BRACKET -+23E0;AL # TOP TORTOISE SHELL BRACKET -+23E1;AL # BOTTOM TORTOISE SHELL BRACKET -+23E2;AL # WHITE TRAPEZIUM -+23E3;AL # BENZENE RING WITH CIRCLE -+23E4;AL # STRAIGHTNESS -+23E5;AL # FLATNESS -+23E6;AL # AC CURRENT -+23E7;AL # ELECTRICAL INTERSECTION - 2400;AL # SYMBOL FOR NULL - 2401;AL # SYMBOL FOR START OF HEADING - 2402;AL # SYMBOL FOR START OF TEXT -@@ -7444,6 +7691,7 @@ - 26AF;AL # UNMARRIED PARTNERSHIP SYMBOL - 26B0;AL # COFFIN - 26B1;AL # FUNERAL URN -+26B2;AL # NEUTER - 2701;AL # UPPER BLADE SCISSORS - 2702;AL # BLACK SCISSORS - 2703;AL # LOWER BLADE SCISSORS -@@ -7625,6 +7873,10 @@ - 27C4;AL # OPEN SUPERSET - 27C5;OP # LEFT S-SHAPED BAG DELIMITER - 27C6;CL # RIGHT S-SHAPED BAG DELIMITER -+27C7;AL # OR WITH DOT INSIDE -+27C8;AL # REVERSE SOLIDUS PRECEDING SUBSET -+27C9;AL # SUPERSET PRECEDING SOLIDUS -+27CA;AL # VERTICAL BAR WITH HORIZONTAL STROKE - 27D0;AL # WHITE DIAMOND WITH CENTRED DOT - 27D1;AL # AND WITH DOT - 27D2;AL # ELEMENT OF OPENING UPWARDS -@@ -8457,6 +8709,17 @@ - 2B11;AL # LEFTWARDS ARROW WITH TIP UPWARDS - 2B12;AL # SQUARE WITH TOP HALF BLACK - 2B13;AL # SQUARE WITH BOTTOM HALF BLACK -+2B14;AL # SQUARE WITH UPPER RIGHT DIAGONAL HALF BLACK -+2B15;AL # SQUARE WITH LOWER LEFT DIAGONAL HALF BLACK -+2B16;AL # DIAMOND WITH LEFT HALF BLACK -+2B17;AL # DIAMOND WITH RIGHT HALF BLACK -+2B18;AL # DIAMOND WITH TOP HALF BLACK -+2B19;AL # DIAMOND WITH BOTTOM HALF BLACK -+2B1A;AL # DOTTED SQUARE -+2B20;AL # WHITE PENTAGON -+2B21;AL # WHITE HEXAGON -+2B22;AL # BLACK HEXAGON -+2B23;AL # HORIZONTAL BLACK HEXAGON - 2C00;AL # GLAGOLITIC CAPITAL LETTER AZU - 2C01;AL # GLAGOLITIC CAPITAL LETTER BUKY - 2C02;AL # GLAGOLITIC CAPITAL LETTER VEDE -@@ -8551,6 +8814,23 @@ - 2C5C;AL # GLAGOLITIC SMALL LETTER SHTAPIC - 2C5D;AL # GLAGOLITIC SMALL LETTER TROKUTASTI A - 2C5E;AL # GLAGOLITIC SMALL LETTER LATINATE MYSLITE -+2C60;AL # LATIN CAPITAL LETTER L WITH DOUBLE BAR -+2C61;AL # LATIN SMALL LETTER L WITH DOUBLE BAR -+2C62;AL # LATIN CAPITAL LETTER L WITH MIDDLE TILDE -+2C63;AL # LATIN CAPITAL LETTER P WITH STROKE -+2C64;AL # LATIN CAPITAL LETTER R WITH TAIL -+2C65;AL # LATIN SMALL LETTER A WITH STROKE -+2C66;AL # LATIN SMALL LETTER T WITH DIAGONAL STROKE -+2C67;AL # LATIN CAPITAL LETTER H WITH DESCENDER -+2C68;AL # LATIN SMALL LETTER H WITH DESCENDER -+2C69;AL # LATIN CAPITAL LETTER K WITH DESCENDER -+2C6A;AL # LATIN SMALL LETTER K WITH DESCENDER -+2C6B;AL # LATIN CAPITAL LETTER Z WITH DESCENDER -+2C6C;AL # LATIN SMALL LETTER Z WITH DESCENDER -+2C74;AL # LATIN SMALL LETTER V WITH CURL -+2C75;AL # LATIN CAPITAL LETTER HALF H -+2C76;AL # LATIN SMALL LETTER HALF H -+2C77;AL # LATIN SMALL LETTER TAILLESS PHI - 2C80;AL # COPTIC CAPITAL LETTER ALFA - 2C81;AL # COPTIC SMALL LETTER ALFA - 2C82;AL # COPTIC CAPITAL LETTER VIDA -@@ -11470,6 +11750,12 @@ - A714;AL # MODIFIER LETTER MID LEFT-STEM TONE BAR - A715;AL # MODIFIER LETTER LOW LEFT-STEM TONE BAR - A716;AL # MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR -+A717;AL # MODIFIER LETTER DOT VERTICAL BAR -+A718;AL # MODIFIER LETTER DOT SLASH -+A719;AL # MODIFIER LETTER DOT HORIZONTAL BAR -+A71A;AL # MODIFIER LETTER LOWER RIGHT CORNER ANGLE -+A720;AL # MODIFIER LETTER STRESS AND HIGH TONE -+A721;AL # MODIFIER LETTER STRESS AND LOW TONE - A800;AL # SYLOTI NAGRI LETTER A - A801;AL # SYLOTI NAGRI LETTER I - A802;CM # SYLOTI NAGRI SIGN DVISVARA -@@ -11514,6 +11800,62 @@ - A829;AL # SYLOTI NAGRI POETRY MARK-2 - A82A;AL # SYLOTI NAGRI POETRY MARK-3 - A82B;AL # SYLOTI NAGRI POETRY MARK-4 -+A840;AL # PHAGS-PA LETTER KA -+A841;AL # PHAGS-PA LETTER KHA -+A842;AL # PHAGS-PA LETTER GA -+A843;AL # PHAGS-PA LETTER NGA -+A844;AL # PHAGS-PA LETTER CA -+A845;AL # PHAGS-PA LETTER CHA -+A846;AL # PHAGS-PA LETTER JA -+A847;AL # PHAGS-PA LETTER NYA -+A848;AL # PHAGS-PA LETTER TA -+A849;AL # PHAGS-PA LETTER THA -+A84A;AL # PHAGS-PA LETTER DA -+A84B;AL # PHAGS-PA LETTER NA -+A84C;AL # PHAGS-PA LETTER PA -+A84D;AL # PHAGS-PA LETTER PHA -+A84E;AL # PHAGS-PA LETTER BA -+A84F;AL # PHAGS-PA LETTER MA -+A850;AL # PHAGS-PA LETTER TSA -+A851;AL # PHAGS-PA LETTER TSHA -+A852;AL # PHAGS-PA LETTER DZA -+A853;AL # PHAGS-PA LETTER WA -+A854;AL # PHAGS-PA LETTER ZHA -+A855;AL # PHAGS-PA LETTER ZA -+A856;AL # PHAGS-PA LETTER SMALL A -+A857;AL # PHAGS-PA LETTER YA -+A858;AL # PHAGS-PA LETTER RA -+A859;AL # PHAGS-PA LETTER LA -+A85A;AL # PHAGS-PA LETTER SHA -+A85B;AL # PHAGS-PA LETTER SA -+A85C;AL # PHAGS-PA LETTER HA -+A85D;AL # PHAGS-PA LETTER A -+A85E;AL # PHAGS-PA LETTER I -+A85F;AL # PHAGS-PA LETTER U -+A860;AL # PHAGS-PA LETTER E -+A861;AL # PHAGS-PA LETTER O -+A862;AL # PHAGS-PA LETTER QA -+A863;AL # PHAGS-PA LETTER XA -+A864;AL # PHAGS-PA LETTER FA -+A865;AL # PHAGS-PA LETTER GGA -+A866;AL # PHAGS-PA LETTER EE -+A867;AL # PHAGS-PA SUBJOINED LETTER WA -+A868;AL # PHAGS-PA SUBJOINED LETTER YA -+A869;AL # PHAGS-PA LETTER TTA -+A86A;AL # PHAGS-PA LETTER TTHA -+A86B;AL # PHAGS-PA LETTER DDA -+A86C;AL # PHAGS-PA LETTER NNA -+A86D;AL # PHAGS-PA LETTER ALTERNATE YA -+A86E;AL # PHAGS-PA LETTER VOICELESS SHA -+A86F;AL # PHAGS-PA LETTER VOICED HA -+A870;AL # PHAGS-PA LETTER ASPIRATED FA -+A871;AL # PHAGS-PA SUBJOINED LETTER RA -+A872;AL # PHAGS-PA SUPERFIXED LETTER RA -+A873;AL # PHAGS-PA LETTER CANDRABINDU -+A874;BB # PHAGS-PA SINGLE HEAD MARK -+A875;BB # PHAGS-PA DOUBLE HEAD MARK -+A876;EX # PHAGS-PA MARK SHAD -+A877;EX # PHAGS-PA MARK DOUBLE SHAD - AC00;H2 # HANGUL SYLLABLE GA - AC01..AC1B;H3 # HANGUL SYLLABLE GAG..HANGUL SYLLABLE GAH - AC1C;H2 # HANGUL SYLLABLE GAE -@@ -14375,7 +14717,7 @@ - 103CD;AL # OLD PERSIAN SIGN DAHYAAUSH-2 - 103CE;AL # OLD PERSIAN SIGN BAGA - 103CF;AL # OLD PERSIAN SIGN BUUMISH --103D0;AL # OLD PERSIAN WORD DIVIDER -+103D0;BA # OLD PERSIAN WORD DIVIDER - 103D1;AL # OLD PERSIAN NUMBER ONE - 103D2;AL # OLD PERSIAN NUMBER TWO - 103D3;AL # OLD PERSIAN NUMBER TEN -@@ -14604,6 +14946,33 @@ - 10838;AL # CYPRIOT SYLLABLE XE - 1083C;AL # CYPRIOT SYLLABLE ZA - 1083F;AL # CYPRIOT SYLLABLE ZO -+10900;AL # PHOENICIAN LETTER ALF -+10901;AL # PHOENICIAN LETTER BET -+10902;AL # PHOENICIAN LETTER GAML -+10903;AL # PHOENICIAN LETTER DELT -+10904;AL # PHOENICIAN LETTER HE -+10905;AL # PHOENICIAN LETTER WAU -+10906;AL # PHOENICIAN LETTER ZAI -+10907;AL # PHOENICIAN LETTER HET -+10908;AL # PHOENICIAN LETTER TET -+10909;AL # PHOENICIAN LETTER YOD -+1090A;AL # PHOENICIAN LETTER KAF -+1090B;AL # PHOENICIAN LETTER LAMD -+1090C;AL # PHOENICIAN LETTER MEM -+1090D;AL # PHOENICIAN LETTER NUN -+1090E;AL # PHOENICIAN LETTER SEMK -+1090F;AL # PHOENICIAN LETTER AIN -+10910;AL # PHOENICIAN LETTER PE -+10911;AL # PHOENICIAN LETTER SADE -+10912;AL # PHOENICIAN LETTER QOF -+10913;AL # PHOENICIAN LETTER ROSH -+10914;AL # PHOENICIAN LETTER SHIN -+10915;AL # PHOENICIAN LETTER TAU -+10916;AL # PHOENICIAN NUMBER ONE -+10917;AL # PHOENICIAN NUMBER TEN -+10918;AL # PHOENICIAN NUMBER TWENTY -+10919;AL # PHOENICIAN NUMBER ONE HUNDRED -+1091F;BA # PHOENICIAN WORD SEPARATOR - 10A00;AL # KHAROSHTHI LETTER A - 10A01;CM # KHAROSHTHI VOWEL SIGN I - 10A02;CM # KHAROSHTHI VOWEL SIGN U -@@ -14669,6 +15038,988 @@ - 10A56;BA # KHAROSHTHI PUNCTUATION DANDA - 10A57;BA # KHAROSHTHI PUNCTUATION DOUBLE DANDA - 10A58;AL # KHAROSHTHI PUNCTUATION LINES -+12000;AL # CUNEIFORM SIGN A -+12001;AL # CUNEIFORM SIGN A TIMES A -+12002;AL # CUNEIFORM SIGN A TIMES BAD -+12003;AL # CUNEIFORM SIGN A TIMES GAN2 TENU -+12004;AL # CUNEIFORM SIGN A TIMES HA -+12005;AL # CUNEIFORM SIGN A TIMES IGI -+12006;AL # CUNEIFORM SIGN A TIMES LAGAR GUNU -+12007;AL # CUNEIFORM SIGN A TIMES MUSH -+12008;AL # CUNEIFORM SIGN A TIMES SAG -+12009;AL # CUNEIFORM SIGN A2 -+1200A;AL # CUNEIFORM SIGN AB -+1200B;AL # CUNEIFORM SIGN AB TIMES ASH2 -+1200C;AL # CUNEIFORM SIGN AB TIMES DUN3 GUNU -+1200D;AL # CUNEIFORM SIGN AB TIMES GAL -+1200E;AL # CUNEIFORM SIGN AB TIMES GAN2 TENU -+1200F;AL # CUNEIFORM SIGN AB TIMES HA -+12010;AL # CUNEIFORM SIGN AB TIMES IGI GUNU -+12011;AL # CUNEIFORM SIGN AB TIMES IMIN -+12012;AL # CUNEIFORM SIGN AB TIMES LAGAB -+12013;AL # CUNEIFORM SIGN AB TIMES SHESH -+12014;AL # CUNEIFORM SIGN AB TIMES U PLUS U PLUS U -+12015;AL # CUNEIFORM SIGN AB GUNU -+12016;AL # CUNEIFORM SIGN AB2 -+12017;AL # CUNEIFORM SIGN AB2 TIMES BALAG -+12018;AL # CUNEIFORM SIGN AB2 TIMES GAN2 TENU -+12019;AL # CUNEIFORM SIGN AB2 TIMES ME PLUS EN -+1201A;AL # CUNEIFORM SIGN AB2 TIMES SHA3 -+1201B;AL # CUNEIFORM SIGN AB2 TIMES TAK4 -+1201C;AL # CUNEIFORM SIGN AD -+1201D;AL # CUNEIFORM SIGN AK -+1201E;AL # CUNEIFORM SIGN AK TIMES ERIN2 -+1201F;AL # CUNEIFORM SIGN AK TIMES SHITA PLUS GISH -+12020;AL # CUNEIFORM SIGN AL -+12021;AL # CUNEIFORM SIGN AL TIMES AL -+12022;AL # CUNEIFORM SIGN AL TIMES DIM2 -+12023;AL # CUNEIFORM SIGN AL TIMES GISH -+12024;AL # CUNEIFORM SIGN AL TIMES HA -+12025;AL # CUNEIFORM SIGN AL TIMES KAD3 -+12026;AL # CUNEIFORM SIGN AL TIMES KI -+12027;AL # CUNEIFORM SIGN AL TIMES SHE -+12028;AL # CUNEIFORM SIGN AL TIMES USH -+12029;AL # CUNEIFORM SIGN ALAN -+1202A;AL # CUNEIFORM SIGN ALEPH -+1202B;AL # CUNEIFORM SIGN AMAR -+1202C;AL # CUNEIFORM SIGN AMAR TIMES SHE -+1202D;AL # CUNEIFORM SIGN AN -+1202E;AL # CUNEIFORM SIGN AN OVER AN -+1202F;AL # CUNEIFORM SIGN AN THREE TIMES -+12030;AL # CUNEIFORM SIGN AN PLUS NAGA OPPOSING AN PLUS NAGA -+12031;AL # CUNEIFORM SIGN AN PLUS NAGA SQUARED -+12032;AL # CUNEIFORM SIGN ANSHE -+12033;AL # CUNEIFORM SIGN APIN -+12034;AL # CUNEIFORM SIGN ARAD -+12035;AL # CUNEIFORM SIGN ARAD TIMES KUR -+12036;AL # CUNEIFORM SIGN ARKAB -+12037;AL # CUNEIFORM SIGN ASAL2 -+12038;AL # CUNEIFORM SIGN ASH -+12039;AL # CUNEIFORM SIGN ASH ZIDA TENU -+1203A;AL # CUNEIFORM SIGN ASH KABA TENU -+1203B;AL # CUNEIFORM SIGN ASH OVER ASH TUG2 OVER TUG2 TUG2 OVER TUG2 PAP -+1203C;AL # CUNEIFORM SIGN ASH OVER ASH OVER ASH -+1203D;AL # CUNEIFORM SIGN ASH OVER ASH OVER ASH CROSSING ASH OVER ASH OVER ASH -+1203E;AL # CUNEIFORM SIGN ASH2 -+1203F;AL # CUNEIFORM SIGN ASHGAB -+12040;AL # CUNEIFORM SIGN BA -+12041;AL # CUNEIFORM SIGN BAD -+12042;AL # CUNEIFORM SIGN BAG3 -+12043;AL # CUNEIFORM SIGN BAHAR2 -+12044;AL # CUNEIFORM SIGN BAL -+12045;AL # CUNEIFORM SIGN BAL OVER BAL -+12046;AL # CUNEIFORM SIGN BALAG -+12047;AL # CUNEIFORM SIGN BAR -+12048;AL # CUNEIFORM SIGN BARA2 -+12049;AL # CUNEIFORM SIGN BI -+1204A;AL # CUNEIFORM SIGN BI TIMES A -+1204B;AL # CUNEIFORM SIGN BI TIMES GAR -+1204C;AL # CUNEIFORM SIGN BI TIMES IGI GUNU -+1204D;AL # CUNEIFORM SIGN BU -+1204E;AL # CUNEIFORM SIGN BU OVER BU AB -+1204F;AL # CUNEIFORM SIGN BU OVER BU UN -+12050;AL # CUNEIFORM SIGN BU CROSSING BU -+12051;AL # CUNEIFORM SIGN BULUG -+12052;AL # CUNEIFORM SIGN BULUG OVER BULUG -+12053;AL # CUNEIFORM SIGN BUR -+12054;AL # CUNEIFORM SIGN BUR2 -+12055;AL # CUNEIFORM SIGN DA -+12056;AL # CUNEIFORM SIGN DAG -+12057;AL # CUNEIFORM SIGN DAG KISIM5 TIMES A PLUS MASH -+12058;AL # CUNEIFORM SIGN DAG KISIM5 TIMES AMAR -+12059;AL # CUNEIFORM SIGN DAG KISIM5 TIMES BALAG -+1205A;AL # CUNEIFORM SIGN DAG KISIM5 TIMES BI -+1205B;AL # CUNEIFORM SIGN DAG KISIM5 TIMES GA -+1205C;AL # CUNEIFORM SIGN DAG KISIM5 TIMES GA PLUS MASH -+1205D;AL # CUNEIFORM SIGN DAG KISIM5 TIMES GI -+1205E;AL # CUNEIFORM SIGN DAG KISIM5 TIMES GIR2 -+1205F;AL # CUNEIFORM SIGN DAG KISIM5 TIMES GUD -+12060;AL # CUNEIFORM SIGN DAG KISIM5 TIMES HA -+12061;AL # CUNEIFORM SIGN DAG KISIM5 TIMES IR -+12062;AL # CUNEIFORM SIGN DAG KISIM5 TIMES IR PLUS LU -+12063;AL # CUNEIFORM SIGN DAG KISIM5 TIMES KAK -+12064;AL # CUNEIFORM SIGN DAG KISIM5 TIMES LA -+12065;AL # CUNEIFORM SIGN DAG KISIM5 TIMES LU -+12066;AL # CUNEIFORM SIGN DAG KISIM5 TIMES LU PLUS MASH2 -+12067;AL # CUNEIFORM SIGN DAG KISIM5 TIMES LUM -+12068;AL # CUNEIFORM SIGN DAG KISIM5 TIMES NE -+12069;AL # CUNEIFORM SIGN DAG KISIM5 TIMES PAP PLUS PAP -+1206A;AL # CUNEIFORM SIGN DAG KISIM5 TIMES SI -+1206B;AL # CUNEIFORM SIGN DAG KISIM5 TIMES TAK4 -+1206C;AL # CUNEIFORM SIGN DAG KISIM5 TIMES U2 PLUS GIR2 -+1206D;AL # CUNEIFORM SIGN DAG KISIM5 TIMES USH -+1206E;AL # CUNEIFORM SIGN DAM -+1206F;AL # CUNEIFORM SIGN DAR -+12070;AL # CUNEIFORM SIGN DARA3 -+12071;AL # CUNEIFORM SIGN DARA4 -+12072;AL # CUNEIFORM SIGN DI -+12073;AL # CUNEIFORM SIGN DIB -+12074;AL # CUNEIFORM SIGN DIM -+12075;AL # CUNEIFORM SIGN DIM TIMES SHE -+12076;AL # CUNEIFORM SIGN DIM2 -+12077;AL # CUNEIFORM SIGN DIN -+12078;AL # CUNEIFORM SIGN DIN KASKAL U GUNU DISH -+12079;AL # CUNEIFORM SIGN DISH -+1207A;AL # CUNEIFORM SIGN DU -+1207B;AL # CUNEIFORM SIGN DU OVER DU -+1207C;AL # CUNEIFORM SIGN DU GUNU -+1207D;AL # CUNEIFORM SIGN DU SHESHIG -+1207E;AL # CUNEIFORM SIGN DUB -+1207F;AL # CUNEIFORM SIGN DUB TIMES ESH2 -+12080;AL # CUNEIFORM SIGN DUB2 -+12081;AL # CUNEIFORM SIGN DUG -+12082;AL # CUNEIFORM SIGN DUGUD -+12083;AL # CUNEIFORM SIGN DUH -+12084;AL # CUNEIFORM SIGN DUN -+12085;AL # CUNEIFORM SIGN DUN3 -+12086;AL # CUNEIFORM SIGN DUN3 GUNU -+12087;AL # CUNEIFORM SIGN DUN3 GUNU GUNU -+12088;AL # CUNEIFORM SIGN DUN4 -+12089;AL # CUNEIFORM SIGN DUR2 -+1208A;AL # CUNEIFORM SIGN E -+1208B;AL # CUNEIFORM SIGN E TIMES PAP -+1208C;AL # CUNEIFORM SIGN E OVER E NUN OVER NUN -+1208D;AL # CUNEIFORM SIGN E2 -+1208E;AL # CUNEIFORM SIGN E2 TIMES A PLUS HA PLUS DA -+1208F;AL # CUNEIFORM SIGN E2 TIMES GAR -+12090;AL # CUNEIFORM SIGN E2 TIMES MI -+12091;AL # CUNEIFORM SIGN E2 TIMES SAL -+12092;AL # CUNEIFORM SIGN E2 TIMES SHE -+12093;AL # CUNEIFORM SIGN E2 TIMES U -+12094;AL # CUNEIFORM SIGN EDIN -+12095;AL # CUNEIFORM SIGN EGIR -+12096;AL # CUNEIFORM SIGN EL -+12097;AL # CUNEIFORM SIGN EN -+12098;AL # CUNEIFORM SIGN EN TIMES GAN2 -+12099;AL # CUNEIFORM SIGN EN TIMES GAN2 TENU -+1209A;AL # CUNEIFORM SIGN EN TIMES ME -+1209B;AL # CUNEIFORM SIGN EN CROSSING EN -+1209C;AL # CUNEIFORM SIGN EN OPPOSING EN -+1209D;AL # CUNEIFORM SIGN EN SQUARED -+1209E;AL # CUNEIFORM SIGN EREN -+1209F;AL # CUNEIFORM SIGN ERIN2 -+120A0;AL # CUNEIFORM SIGN ESH2 -+120A1;AL # CUNEIFORM SIGN EZEN -+120A2;AL # CUNEIFORM SIGN EZEN TIMES A -+120A3;AL # CUNEIFORM SIGN EZEN TIMES A PLUS LAL -+120A4;AL # CUNEIFORM SIGN EZEN TIMES A PLUS LAL TIMES LAL -+120A5;AL # CUNEIFORM SIGN EZEN TIMES AN -+120A6;AL # CUNEIFORM SIGN EZEN TIMES BAD -+120A7;AL # CUNEIFORM SIGN EZEN TIMES DUN3 GUNU -+120A8;AL # CUNEIFORM SIGN EZEN TIMES DUN3 GUNU GUNU -+120A9;AL # CUNEIFORM SIGN EZEN TIMES HA -+120AA;AL # CUNEIFORM SIGN EZEN TIMES HA GUNU -+120AB;AL # CUNEIFORM SIGN EZEN TIMES IGI GUNU -+120AC;AL # CUNEIFORM SIGN EZEN TIMES KASKAL -+120AD;AL # CUNEIFORM SIGN EZEN TIMES KASKAL SQUARED -+120AE;AL # CUNEIFORM SIGN EZEN TIMES KU3 -+120AF;AL # CUNEIFORM SIGN EZEN TIMES LA -+120B0;AL # CUNEIFORM SIGN EZEN TIMES LAL TIMES LAL -+120B1;AL # CUNEIFORM SIGN EZEN TIMES LI -+120B2;AL # CUNEIFORM SIGN EZEN TIMES LU -+120B3;AL # CUNEIFORM SIGN EZEN TIMES U2 -+120B4;AL # CUNEIFORM SIGN EZEN TIMES UD -+120B5;AL # CUNEIFORM SIGN GA -+120B6;AL # CUNEIFORM SIGN GA GUNU -+120B7;AL # CUNEIFORM SIGN GA2 -+120B8;AL # CUNEIFORM SIGN GA2 TIMES A PLUS DA PLUS HA -+120B9;AL # CUNEIFORM SIGN GA2 TIMES A PLUS HA -+120BA;AL # CUNEIFORM SIGN GA2 TIMES A PLUS IGI -+120BB;AL # CUNEIFORM SIGN GA2 TIMES AB2 TENU PLUS TAB -+120BC;AL # CUNEIFORM SIGN GA2 TIMES AN -+120BD;AL # CUNEIFORM SIGN GA2 TIMES ASH -+120BE;AL # CUNEIFORM SIGN GA2 TIMES ASH2 PLUS GAL -+120BF;AL # CUNEIFORM SIGN GA2 TIMES BAD -+120C0;AL # CUNEIFORM SIGN GA2 TIMES BAR PLUS RA -+120C1;AL # CUNEIFORM SIGN GA2 TIMES BUR -+120C2;AL # CUNEIFORM SIGN GA2 TIMES BUR PLUS RA -+120C3;AL # CUNEIFORM SIGN GA2 TIMES DA -+120C4;AL # CUNEIFORM SIGN GA2 TIMES DI -+120C5;AL # CUNEIFORM SIGN GA2 TIMES DIM TIMES SHE -+120C6;AL # CUNEIFORM SIGN GA2 TIMES DUB -+120C7;AL # CUNEIFORM SIGN GA2 TIMES EL -+120C8;AL # CUNEIFORM SIGN GA2 TIMES EL PLUS LA -+120C9;AL # CUNEIFORM SIGN GA2 TIMES EN -+120CA;AL # CUNEIFORM SIGN GA2 TIMES EN TIMES GAN2 TENU -+120CB;AL # CUNEIFORM SIGN GA2 TIMES GAN2 TENU -+120CC;AL # CUNEIFORM SIGN GA2 TIMES GAR -+120CD;AL # CUNEIFORM SIGN GA2 TIMES GI -+120CE;AL # CUNEIFORM SIGN GA2 TIMES GI4 -+120CF;AL # CUNEIFORM SIGN GA2 TIMES GI4 PLUS A -+120D0;AL # CUNEIFORM SIGN GA2 TIMES GIR2 PLUS SU -+120D1;AL # CUNEIFORM SIGN GA2 TIMES HA PLUS LU PLUS ESH2 -+120D2;AL # CUNEIFORM SIGN GA2 TIMES HAL -+120D3;AL # CUNEIFORM SIGN GA2 TIMES HAL PLUS LA -+120D4;AL # CUNEIFORM SIGN GA2 TIMES HI PLUS LI -+120D5;AL # CUNEIFORM SIGN GA2 TIMES HUB2 -+120D6;AL # CUNEIFORM SIGN GA2 TIMES IGI GUNU -+120D7;AL # CUNEIFORM SIGN GA2 TIMES ISH PLUS HU PLUS ASH -+120D8;AL # CUNEIFORM SIGN GA2 TIMES KAK -+120D9;AL # CUNEIFORM SIGN GA2 TIMES KASKAL -+120DA;AL # CUNEIFORM SIGN GA2 TIMES KID -+120DB;AL # CUNEIFORM SIGN GA2 TIMES KID PLUS LAL -+120DC;AL # CUNEIFORM SIGN GA2 TIMES KU3 PLUS AN -+120DD;AL # CUNEIFORM SIGN GA2 TIMES LA -+120DE;AL # CUNEIFORM SIGN GA2 TIMES ME PLUS EN -+120DF;AL # CUNEIFORM SIGN GA2 TIMES MI -+120E0;AL # CUNEIFORM SIGN GA2 TIMES NUN -+120E1;AL # CUNEIFORM SIGN GA2 TIMES NUN OVER NUN -+120E2;AL # CUNEIFORM SIGN GA2 TIMES PA -+120E3;AL # CUNEIFORM SIGN GA2 TIMES SAL -+120E4;AL # CUNEIFORM SIGN GA2 TIMES SAR -+120E5;AL # CUNEIFORM SIGN GA2 TIMES SHE -+120E6;AL # CUNEIFORM SIGN GA2 TIMES SHE PLUS TUR -+120E7;AL # CUNEIFORM SIGN GA2 TIMES SHID -+120E8;AL # CUNEIFORM SIGN GA2 TIMES SUM -+120E9;AL # CUNEIFORM SIGN GA2 TIMES TAK4 -+120EA;AL # CUNEIFORM SIGN GA2 TIMES U -+120EB;AL # CUNEIFORM SIGN GA2 TIMES UD -+120EC;AL # CUNEIFORM SIGN GA2 TIMES UD PLUS DU -+120ED;AL # CUNEIFORM SIGN GA2 OVER GA2 -+120EE;AL # CUNEIFORM SIGN GABA -+120EF;AL # CUNEIFORM SIGN GABA CROSSING GABA -+120F0;AL # CUNEIFORM SIGN GAD -+120F1;AL # CUNEIFORM SIGN GAD OVER GAD GAR OVER GAR -+120F2;AL # CUNEIFORM SIGN GAL -+120F3;AL # CUNEIFORM SIGN GAL GAD OVER GAD GAR OVER GAR -+120F4;AL # CUNEIFORM SIGN GALAM -+120F5;AL # CUNEIFORM SIGN GAM -+120F6;AL # CUNEIFORM SIGN GAN -+120F7;AL # CUNEIFORM SIGN GAN2 -+120F8;AL # CUNEIFORM SIGN GAN2 TENU -+120F9;AL # CUNEIFORM SIGN GAN2 OVER GAN2 -+120FA;AL # CUNEIFORM SIGN GAN2 CROSSING GAN2 -+120FB;AL # CUNEIFORM SIGN GAR -+120FC;AL # CUNEIFORM SIGN GAR3 -+120FD;AL # CUNEIFORM SIGN GASHAN -+120FE;AL # CUNEIFORM SIGN GESHTIN -+120FF;AL # CUNEIFORM SIGN GESHTIN TIMES KUR -+12100;AL # CUNEIFORM SIGN GI -+12101;AL # CUNEIFORM SIGN GI TIMES E -+12102;AL # CUNEIFORM SIGN GI TIMES U -+12103;AL # CUNEIFORM SIGN GI CROSSING GI -+12104;AL # CUNEIFORM SIGN GI4 -+12105;AL # CUNEIFORM SIGN GI4 OVER GI4 -+12106;AL # CUNEIFORM SIGN GI4 CROSSING GI4 -+12107;AL # CUNEIFORM SIGN GIDIM -+12108;AL # CUNEIFORM SIGN GIR2 -+12109;AL # CUNEIFORM SIGN GIR2 GUNU -+1210A;AL # CUNEIFORM SIGN GIR3 -+1210B;AL # CUNEIFORM SIGN GIR3 TIMES A PLUS IGI -+1210C;AL # CUNEIFORM SIGN GIR3 TIMES GAN2 TENU -+1210D;AL # CUNEIFORM SIGN GIR3 TIMES IGI -+1210E;AL # CUNEIFORM SIGN GIR3 TIMES LU PLUS IGI -+1210F;AL # CUNEIFORM SIGN GIR3 TIMES PA -+12110;AL # CUNEIFORM SIGN GISAL -+12111;AL # CUNEIFORM SIGN GISH -+12112;AL # CUNEIFORM SIGN GISH CROSSING GISH -+12113;AL # CUNEIFORM SIGN GISH TIMES BAD -+12114;AL # CUNEIFORM SIGN GISH TIMES TAK4 -+12115;AL # CUNEIFORM SIGN GISH TENU -+12116;AL # CUNEIFORM SIGN GU -+12117;AL # CUNEIFORM SIGN GU CROSSING GU -+12118;AL # CUNEIFORM SIGN GU2 -+12119;AL # CUNEIFORM SIGN GU2 TIMES KAK -+1211A;AL # CUNEIFORM SIGN GU2 TIMES KAK TIMES IGI GUNU -+1211B;AL # CUNEIFORM SIGN GU2 TIMES NUN -+1211C;AL # CUNEIFORM SIGN GU2 TIMES SAL PLUS TUG2 -+1211D;AL # CUNEIFORM SIGN GU2 GUNU -+1211E;AL # CUNEIFORM SIGN GUD -+1211F;AL # CUNEIFORM SIGN GUD TIMES A PLUS KUR -+12120;AL # CUNEIFORM SIGN GUD TIMES KUR -+12121;AL # CUNEIFORM SIGN GUD OVER GUD LUGAL -+12122;AL # CUNEIFORM SIGN GUL -+12123;AL # CUNEIFORM SIGN GUM -+12124;AL # CUNEIFORM SIGN GUM TIMES SHE -+12125;AL # CUNEIFORM SIGN GUR -+12126;AL # CUNEIFORM SIGN GUR7 -+12127;AL # CUNEIFORM SIGN GURUN -+12128;AL # CUNEIFORM SIGN GURUSH -+12129;AL # CUNEIFORM SIGN HA -+1212A;AL # CUNEIFORM SIGN HA TENU -+1212B;AL # CUNEIFORM SIGN HA GUNU -+1212C;AL # CUNEIFORM SIGN HAL -+1212D;AL # CUNEIFORM SIGN HI -+1212E;AL # CUNEIFORM SIGN HI TIMES ASH -+1212F;AL # CUNEIFORM SIGN HI TIMES ASH2 -+12130;AL # CUNEIFORM SIGN HI TIMES BAD -+12131;AL # CUNEIFORM SIGN HI TIMES DISH -+12132;AL # CUNEIFORM SIGN HI TIMES GAD -+12133;AL # CUNEIFORM SIGN HI TIMES KIN -+12134;AL # CUNEIFORM SIGN HI TIMES NUN -+12135;AL # CUNEIFORM SIGN HI TIMES SHE -+12136;AL # CUNEIFORM SIGN HI TIMES U -+12137;AL # CUNEIFORM SIGN HU -+12138;AL # CUNEIFORM SIGN HUB2 -+12139;AL # CUNEIFORM SIGN HUB2 TIMES AN -+1213A;AL # CUNEIFORM SIGN HUB2 TIMES HAL -+1213B;AL # CUNEIFORM SIGN HUB2 TIMES KASKAL -+1213C;AL # CUNEIFORM SIGN HUB2 TIMES LISH -+1213D;AL # CUNEIFORM SIGN HUB2 TIMES UD -+1213E;AL # CUNEIFORM SIGN HUL2 -+1213F;AL # CUNEIFORM SIGN I -+12140;AL # CUNEIFORM SIGN I A -+12141;AL # CUNEIFORM SIGN IB -+12142;AL # CUNEIFORM SIGN IDIM -+12143;AL # CUNEIFORM SIGN IDIM OVER IDIM BUR -+12144;AL # CUNEIFORM SIGN IDIM OVER IDIM SQUARED -+12145;AL # CUNEIFORM SIGN IG -+12146;AL # CUNEIFORM SIGN IGI -+12147;AL # CUNEIFORM SIGN IGI DIB -+12148;AL # CUNEIFORM SIGN IGI RI -+12149;AL # CUNEIFORM SIGN IGI OVER IGI SHIR OVER SHIR UD OVER UD -+1214A;AL # CUNEIFORM SIGN IGI GUNU -+1214B;AL # CUNEIFORM SIGN IL -+1214C;AL # CUNEIFORM SIGN IL TIMES GAN2 TENU -+1214D;AL # CUNEIFORM SIGN IL2 -+1214E;AL # CUNEIFORM SIGN IM -+1214F;AL # CUNEIFORM SIGN IM TIMES TAK4 -+12150;AL # CUNEIFORM SIGN IM CROSSING IM -+12151;AL # CUNEIFORM SIGN IM OPPOSING IM -+12152;AL # CUNEIFORM SIGN IM SQUARED -+12153;AL # CUNEIFORM SIGN IMIN -+12154;AL # CUNEIFORM SIGN IN -+12155;AL # CUNEIFORM SIGN IR -+12156;AL # CUNEIFORM SIGN ISH -+12157;AL # CUNEIFORM SIGN KA -+12158;AL # CUNEIFORM SIGN KA TIMES A -+12159;AL # CUNEIFORM SIGN KA TIMES AD -+1215A;AL # CUNEIFORM SIGN KA TIMES AD PLUS KU3 -+1215B;AL # CUNEIFORM SIGN KA TIMES ASH2 -+1215C;AL # CUNEIFORM SIGN KA TIMES BAD -+1215D;AL # CUNEIFORM SIGN KA TIMES BALAG -+1215E;AL # CUNEIFORM SIGN KA TIMES BAR -+1215F;AL # CUNEIFORM SIGN KA TIMES BI -+12160;AL # CUNEIFORM SIGN KA TIMES ERIN2 -+12161;AL # CUNEIFORM SIGN KA TIMES ESH2 -+12162;AL # CUNEIFORM SIGN KA TIMES GA -+12163;AL # CUNEIFORM SIGN KA TIMES GAL -+12164;AL # CUNEIFORM SIGN KA TIMES GAN2 TENU -+12165;AL # CUNEIFORM SIGN KA TIMES GAR -+12166;AL # CUNEIFORM SIGN KA TIMES GAR PLUS SHA3 PLUS A -+12167;AL # CUNEIFORM SIGN KA TIMES GI -+12168;AL # CUNEIFORM SIGN KA TIMES GIR2 -+12169;AL # CUNEIFORM SIGN KA TIMES GISH PLUS SAR -+1216A;AL # CUNEIFORM SIGN KA TIMES GISH CROSSING GISH -+1216B;AL # CUNEIFORM SIGN KA TIMES GU -+1216C;AL # CUNEIFORM SIGN KA TIMES GUR7 -+1216D;AL # CUNEIFORM SIGN KA TIMES IGI -+1216E;AL # CUNEIFORM SIGN KA TIMES IM -+1216F;AL # CUNEIFORM SIGN KA TIMES KAK -+12170;AL # CUNEIFORM SIGN KA TIMES KI -+12171;AL # CUNEIFORM SIGN KA TIMES KID -+12172;AL # CUNEIFORM SIGN KA TIMES LI -+12173;AL # CUNEIFORM SIGN KA TIMES LU -+12174;AL # CUNEIFORM SIGN KA TIMES ME -+12175;AL # CUNEIFORM SIGN KA TIMES ME PLUS DU -+12176;AL # CUNEIFORM SIGN KA TIMES ME PLUS GI -+12177;AL # CUNEIFORM SIGN KA TIMES ME PLUS TE -+12178;AL # CUNEIFORM SIGN KA TIMES MI -+12179;AL # CUNEIFORM SIGN KA TIMES MI PLUS NUNUZ -+1217A;AL # CUNEIFORM SIGN KA TIMES NE -+1217B;AL # CUNEIFORM SIGN KA TIMES NUN -+1217C;AL # CUNEIFORM SIGN KA TIMES PI -+1217D;AL # CUNEIFORM SIGN KA TIMES RU -+1217E;AL # CUNEIFORM SIGN KA TIMES SA -+1217F;AL # CUNEIFORM SIGN KA TIMES SAR -+12180;AL # CUNEIFORM SIGN KA TIMES SHA -+12181;AL # CUNEIFORM SIGN KA TIMES SHE -+12182;AL # CUNEIFORM SIGN KA TIMES SHID -+12183;AL # CUNEIFORM SIGN KA TIMES SHU -+12184;AL # CUNEIFORM SIGN KA TIMES SIG -+12185;AL # CUNEIFORM SIGN KA TIMES SUHUR -+12186;AL # CUNEIFORM SIGN KA TIMES TAR -+12187;AL # CUNEIFORM SIGN KA TIMES U -+12188;AL # CUNEIFORM SIGN KA TIMES U2 -+12189;AL # CUNEIFORM SIGN KA TIMES UD -+1218A;AL # CUNEIFORM SIGN KA TIMES UMUM TIMES PA -+1218B;AL # CUNEIFORM SIGN KA TIMES USH -+1218C;AL # CUNEIFORM SIGN KA TIMES ZI -+1218D;AL # CUNEIFORM SIGN KA2 -+1218E;AL # CUNEIFORM SIGN KA2 CROSSING KA2 -+1218F;AL # CUNEIFORM SIGN KAB -+12190;AL # CUNEIFORM SIGN KAD2 -+12191;AL # CUNEIFORM SIGN KAD3 -+12192;AL # CUNEIFORM SIGN KAD4 -+12193;AL # CUNEIFORM SIGN KAD5 -+12194;AL # CUNEIFORM SIGN KAD5 OVER KAD5 -+12195;AL # CUNEIFORM SIGN KAK -+12196;AL # CUNEIFORM SIGN KAK TIMES IGI GUNU -+12197;AL # CUNEIFORM SIGN KAL -+12198;AL # CUNEIFORM SIGN KAL TIMES BAD -+12199;AL # CUNEIFORM SIGN KAL CROSSING KAL -+1219A;AL # CUNEIFORM SIGN KAM2 -+1219B;AL # CUNEIFORM SIGN KAM4 -+1219C;AL # CUNEIFORM SIGN KASKAL -+1219D;AL # CUNEIFORM SIGN KASKAL LAGAB TIMES U OVER LAGAB TIMES U -+1219E;AL # CUNEIFORM SIGN KASKAL OVER KASKAL LAGAB TIMES U OVER LAGAB TIMES U -+1219F;AL # CUNEIFORM SIGN KESH2 -+121A0;AL # CUNEIFORM SIGN KI -+121A1;AL # CUNEIFORM SIGN KI TIMES BAD -+121A2;AL # CUNEIFORM SIGN KI TIMES U -+121A3;AL # CUNEIFORM SIGN KI TIMES UD -+121A4;AL # CUNEIFORM SIGN KID -+121A5;AL # CUNEIFORM SIGN KIN -+121A6;AL # CUNEIFORM SIGN KISAL -+121A7;AL # CUNEIFORM SIGN KISH -+121A8;AL # CUNEIFORM SIGN KISIM5 -+121A9;AL # CUNEIFORM SIGN KISIM5 OVER KISIM5 -+121AA;AL # CUNEIFORM SIGN KU -+121AB;AL # CUNEIFORM SIGN KU OVER HI TIMES ASH2 KU OVER HI TIMES ASH2 -+121AC;AL # CUNEIFORM SIGN KU3 -+121AD;AL # CUNEIFORM SIGN KU4 -+121AE;AL # CUNEIFORM SIGN KU4 VARIANT FORM -+121AF;AL # CUNEIFORM SIGN KU7 -+121B0;AL # CUNEIFORM SIGN KUL -+121B1;AL # CUNEIFORM SIGN KUL GUNU -+121B2;AL # CUNEIFORM SIGN KUN -+121B3;AL # CUNEIFORM SIGN KUR -+121B4;AL # CUNEIFORM SIGN KUR OPPOSING KUR -+121B5;AL # CUNEIFORM SIGN KUSHU2 -+121B6;AL # CUNEIFORM SIGN KWU318 -+121B7;AL # CUNEIFORM SIGN LA -+121B8;AL # CUNEIFORM SIGN LAGAB -+121B9;AL # CUNEIFORM SIGN LAGAB TIMES A -+121BA;AL # CUNEIFORM SIGN LAGAB TIMES A PLUS DA PLUS HA -+121BB;AL # CUNEIFORM SIGN LAGAB TIMES A PLUS GAR -+121BC;AL # CUNEIFORM SIGN LAGAB TIMES A PLUS LAL -+121BD;AL # CUNEIFORM SIGN LAGAB TIMES AL -+121BE;AL # CUNEIFORM SIGN LAGAB TIMES AN -+121BF;AL # CUNEIFORM SIGN LAGAB TIMES ASH ZIDA TENU -+121C0;AL # CUNEIFORM SIGN LAGAB TIMES BAD -+121C1;AL # CUNEIFORM SIGN LAGAB TIMES BI -+121C2;AL # CUNEIFORM SIGN LAGAB TIMES DAR -+121C3;AL # CUNEIFORM SIGN LAGAB TIMES EN -+121C4;AL # CUNEIFORM SIGN LAGAB TIMES GA -+121C5;AL # CUNEIFORM SIGN LAGAB TIMES GAR -+121C6;AL # CUNEIFORM SIGN LAGAB TIMES GUD -+121C7;AL # CUNEIFORM SIGN LAGAB TIMES GUD PLUS GUD -+121C8;AL # CUNEIFORM SIGN LAGAB TIMES HA -+121C9;AL # CUNEIFORM SIGN LAGAB TIMES HAL -+121CA;AL # CUNEIFORM SIGN LAGAB TIMES HI TIMES NUN -+121CB;AL # CUNEIFORM SIGN LAGAB TIMES IGI GUNU -+121CC;AL # CUNEIFORM SIGN LAGAB TIMES IM -+121CD;AL # CUNEIFORM SIGN LAGAB TIMES IM PLUS HA -+121CE;AL # CUNEIFORM SIGN LAGAB TIMES IM PLUS LU -+121CF;AL # CUNEIFORM SIGN LAGAB TIMES KI -+121D0;AL # CUNEIFORM SIGN LAGAB TIMES KIN -+121D1;AL # CUNEIFORM SIGN LAGAB TIMES KU3 -+121D2;AL # CUNEIFORM SIGN LAGAB TIMES KUL -+121D3;AL # CUNEIFORM SIGN LAGAB TIMES KUL PLUS HI PLUS A -+121D4;AL # CUNEIFORM SIGN LAGAB TIMES LAGAB -+121D5;AL # CUNEIFORM SIGN LAGAB TIMES LISH -+121D6;AL # CUNEIFORM SIGN LAGAB TIMES LU -+121D7;AL # CUNEIFORM SIGN LAGAB TIMES LUL -+121D8;AL # CUNEIFORM SIGN LAGAB TIMES ME -+121D9;AL # CUNEIFORM SIGN LAGAB TIMES ME PLUS EN -+121DA;AL # CUNEIFORM SIGN LAGAB TIMES MUSH -+121DB;AL # CUNEIFORM SIGN LAGAB TIMES NE -+121DC;AL # CUNEIFORM SIGN LAGAB TIMES SHE PLUS SUM -+121DD;AL # CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH PLUS ERIN2 -+121DE;AL # CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH TENU -+121DF;AL # CUNEIFORM SIGN LAGAB TIMES SHU2 -+121E0;AL # CUNEIFORM SIGN LAGAB TIMES SHU2 PLUS SHU2 -+121E1;AL # CUNEIFORM SIGN LAGAB TIMES SUM -+121E2;AL # CUNEIFORM SIGN LAGAB TIMES TAG -+121E3;AL # CUNEIFORM SIGN LAGAB TIMES TAK4 -+121E4;AL # CUNEIFORM SIGN LAGAB TIMES TE PLUS A PLUS SU PLUS NA -+121E5;AL # CUNEIFORM SIGN LAGAB TIMES U -+121E6;AL # CUNEIFORM SIGN LAGAB TIMES U PLUS A -+121E7;AL # CUNEIFORM SIGN LAGAB TIMES U PLUS U PLUS U -+121E8;AL # CUNEIFORM SIGN LAGAB TIMES U2 PLUS ASH -+121E9;AL # CUNEIFORM SIGN LAGAB TIMES UD -+121EA;AL # CUNEIFORM SIGN LAGAB TIMES USH -+121EB;AL # CUNEIFORM SIGN LAGAB SQUARED -+121EC;AL # CUNEIFORM SIGN LAGAR -+121ED;AL # CUNEIFORM SIGN LAGAR TIMES SHE -+121EE;AL # CUNEIFORM SIGN LAGAR TIMES SHE PLUS SUM -+121EF;AL # CUNEIFORM SIGN LAGAR GUNU -+121F0;AL # CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE -+121F1;AL # CUNEIFORM SIGN LAHSHU -+121F2;AL # CUNEIFORM SIGN LAL -+121F3;AL # CUNEIFORM SIGN LAL TIMES LAL -+121F4;AL # CUNEIFORM SIGN LAM -+121F5;AL # CUNEIFORM SIGN LAM TIMES KUR -+121F6;AL # CUNEIFORM SIGN LAM TIMES KUR PLUS RU -+121F7;AL # CUNEIFORM SIGN LI -+121F8;AL # CUNEIFORM SIGN LIL -+121F9;AL # CUNEIFORM SIGN LIMMU2 -+121FA;AL # CUNEIFORM SIGN LISH -+121FB;AL # CUNEIFORM SIGN LU -+121FC;AL # CUNEIFORM SIGN LU TIMES BAD -+121FD;AL # CUNEIFORM SIGN LU2 -+121FE;AL # CUNEIFORM SIGN LU2 TIMES AL -+121FF;AL # CUNEIFORM SIGN LU2 TIMES BAD -+12200;AL # CUNEIFORM SIGN LU2 TIMES ESH2 -+12201;AL # CUNEIFORM SIGN LU2 TIMES ESH2 TENU -+12202;AL # CUNEIFORM SIGN LU2 TIMES GAN2 TENU -+12203;AL # CUNEIFORM SIGN LU2 TIMES HI TIMES BAD -+12204;AL # CUNEIFORM SIGN LU2 TIMES IM -+12205;AL # CUNEIFORM SIGN LU2 TIMES KAD2 -+12206;AL # CUNEIFORM SIGN LU2 TIMES KAD3 -+12207;AL # CUNEIFORM SIGN LU2 TIMES KAD3 PLUS ASH -+12208;AL # CUNEIFORM SIGN LU2 TIMES KI -+12209;AL # CUNEIFORM SIGN LU2 TIMES LA PLUS ASH -+1220A;AL # CUNEIFORM SIGN LU2 TIMES LAGAB -+1220B;AL # CUNEIFORM SIGN LU2 TIMES ME PLUS EN -+1220C;AL # CUNEIFORM SIGN LU2 TIMES NE -+1220D;AL # CUNEIFORM SIGN LU2 TIMES NU -+1220E;AL # CUNEIFORM SIGN LU2 TIMES SI PLUS ASH -+1220F;AL # CUNEIFORM SIGN LU2 TIMES SIK2 PLUS BU -+12210;AL # CUNEIFORM SIGN LU2 TIMES TUG2 -+12211;AL # CUNEIFORM SIGN LU2 TENU -+12212;AL # CUNEIFORM SIGN LU2 CROSSING LU2 -+12213;AL # CUNEIFORM SIGN LU2 OPPOSING LU2 -+12214;AL # CUNEIFORM SIGN LU2 SQUARED -+12215;AL # CUNEIFORM SIGN LU2 SHESHIG -+12216;AL # CUNEIFORM SIGN LU3 -+12217;AL # CUNEIFORM SIGN LUGAL -+12218;AL # CUNEIFORM SIGN LUGAL OVER LUGAL -+12219;AL # CUNEIFORM SIGN LUGAL OPPOSING LUGAL -+1221A;AL # CUNEIFORM SIGN LUGAL SHESHIG -+1221B;AL # CUNEIFORM SIGN LUH -+1221C;AL # CUNEIFORM SIGN LUL -+1221D;AL # CUNEIFORM SIGN LUM -+1221E;AL # CUNEIFORM SIGN LUM OVER LUM -+1221F;AL # CUNEIFORM SIGN LUM OVER LUM GAR OVER GAR -+12220;AL # CUNEIFORM SIGN MA -+12221;AL # CUNEIFORM SIGN MA TIMES TAK4 -+12222;AL # CUNEIFORM SIGN MA GUNU -+12223;AL # CUNEIFORM SIGN MA2 -+12224;AL # CUNEIFORM SIGN MAH -+12225;AL # CUNEIFORM SIGN MAR -+12226;AL # CUNEIFORM SIGN MASH -+12227;AL # CUNEIFORM SIGN MASH2 -+12228;AL # CUNEIFORM SIGN ME -+12229;AL # CUNEIFORM SIGN MES -+1222A;AL # CUNEIFORM SIGN MI -+1222B;AL # CUNEIFORM SIGN MIN -+1222C;AL # CUNEIFORM SIGN MU -+1222D;AL # CUNEIFORM SIGN MU OVER MU -+1222E;AL # CUNEIFORM SIGN MUG -+1222F;AL # CUNEIFORM SIGN MUG GUNU -+12230;AL # CUNEIFORM SIGN MUNSUB -+12231;AL # CUNEIFORM SIGN MURGU2 -+12232;AL # CUNEIFORM SIGN MUSH -+12233;AL # CUNEIFORM SIGN MUSH TIMES A -+12234;AL # CUNEIFORM SIGN MUSH TIMES KUR -+12235;AL # CUNEIFORM SIGN MUSH TIMES ZA -+12236;AL # CUNEIFORM SIGN MUSH OVER MUSH -+12237;AL # CUNEIFORM SIGN MUSH OVER MUSH TIMES A PLUS NA -+12238;AL # CUNEIFORM SIGN MUSH CROSSING MUSH -+12239;AL # CUNEIFORM SIGN MUSH3 -+1223A;AL # CUNEIFORM SIGN MUSH3 TIMES A -+1223B;AL # CUNEIFORM SIGN MUSH3 TIMES A PLUS DI -+1223C;AL # CUNEIFORM SIGN MUSH3 TIMES DI -+1223D;AL # CUNEIFORM SIGN MUSH3 GUNU -+1223E;AL # CUNEIFORM SIGN NA -+1223F;AL # CUNEIFORM SIGN NA2 -+12240;AL # CUNEIFORM SIGN NAGA -+12241;AL # CUNEIFORM SIGN NAGA INVERTED -+12242;AL # CUNEIFORM SIGN NAGA TIMES SHU TENU -+12243;AL # CUNEIFORM SIGN NAGA OPPOSING NAGA -+12244;AL # CUNEIFORM SIGN NAGAR -+12245;AL # CUNEIFORM SIGN NAM NUTILLU -+12246;AL # CUNEIFORM SIGN NAM -+12247;AL # CUNEIFORM SIGN NAM2 -+12248;AL # CUNEIFORM SIGN NE -+12249;AL # CUNEIFORM SIGN NE TIMES A -+1224A;AL # CUNEIFORM SIGN NE TIMES UD -+1224B;AL # CUNEIFORM SIGN NE SHESHIG -+1224C;AL # CUNEIFORM SIGN NI -+1224D;AL # CUNEIFORM SIGN NI TIMES E -+1224E;AL # CUNEIFORM SIGN NI2 -+1224F;AL # CUNEIFORM SIGN NIM -+12250;AL # CUNEIFORM SIGN NIM TIMES GAN2 TENU -+12251;AL # CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU -+12252;AL # CUNEIFORM SIGN NINDA2 -+12253;AL # CUNEIFORM SIGN NINDA2 TIMES AN -+12254;AL # CUNEIFORM SIGN NINDA2 TIMES ASH -+12255;AL # CUNEIFORM SIGN NINDA2 TIMES ASH PLUS ASH -+12256;AL # CUNEIFORM SIGN NINDA2 TIMES GUD -+12257;AL # CUNEIFORM SIGN NINDA2 TIMES ME PLUS GAN2 TENU -+12258;AL # CUNEIFORM SIGN NINDA2 TIMES NE -+12259;AL # CUNEIFORM SIGN NINDA2 TIMES NUN -+1225A;AL # CUNEIFORM SIGN NINDA2 TIMES SHE -+1225B;AL # CUNEIFORM SIGN NINDA2 TIMES SHE PLUS A AN -+1225C;AL # CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH -+1225D;AL # CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH PLUS ASH -+1225E;AL # CUNEIFORM SIGN NINDA2 TIMES U2 PLUS ASH -+1225F;AL # CUNEIFORM SIGN NINDA2 TIMES USH -+12260;AL # CUNEIFORM SIGN NISAG -+12261;AL # CUNEIFORM SIGN NU -+12262;AL # CUNEIFORM SIGN NU11 -+12263;AL # CUNEIFORM SIGN NUN -+12264;AL # CUNEIFORM SIGN NUN LAGAR TIMES GAR -+12265;AL # CUNEIFORM SIGN NUN LAGAR TIMES MASH -+12266;AL # CUNEIFORM SIGN NUN LAGAR TIMES SAL -+12267;AL # CUNEIFORM SIGN NUN LAGAR TIMES SAL OVER NUN LAGAR TIMES SAL -+12268;AL # CUNEIFORM SIGN NUN LAGAR TIMES USH -+12269;AL # CUNEIFORM SIGN NUN TENU -+1226A;AL # CUNEIFORM SIGN NUN OVER NUN -+1226B;AL # CUNEIFORM SIGN NUN CROSSING NUN -+1226C;AL # CUNEIFORM SIGN NUN CROSSING NUN LAGAR OVER LAGAR -+1226D;AL # CUNEIFORM SIGN NUNUZ -+1226E;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES ASHGAB -+1226F;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES BI -+12270;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES DUG -+12271;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES GUD -+12272;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES IGI GUNU -+12273;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES KAD3 -+12274;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES LA -+12275;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES NE -+12276;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES SILA3 -+12277;AL # CUNEIFORM SIGN NUNUZ AB2 TIMES U2 -+12278;AL # CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI -+12279;AL # CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI U -+1227A;AL # CUNEIFORM SIGN PA -+1227B;AL # CUNEIFORM SIGN PAD -+1227C;AL # CUNEIFORM SIGN PAN -+1227D;AL # CUNEIFORM SIGN PAP -+1227E;AL # CUNEIFORM SIGN PESH2 -+1227F;AL # CUNEIFORM SIGN PI -+12280;AL # CUNEIFORM SIGN PI TIMES A -+12281;AL # CUNEIFORM SIGN PI TIMES AB -+12282;AL # CUNEIFORM SIGN PI TIMES BI -+12283;AL # CUNEIFORM SIGN PI TIMES BU -+12284;AL # CUNEIFORM SIGN PI TIMES E -+12285;AL # CUNEIFORM SIGN PI TIMES I -+12286;AL # CUNEIFORM SIGN PI TIMES IB -+12287;AL # CUNEIFORM SIGN PI TIMES U -+12288;AL # CUNEIFORM SIGN PI TIMES U2 -+12289;AL # CUNEIFORM SIGN PI CROSSING PI -+1228A;AL # CUNEIFORM SIGN PIRIG -+1228B;AL # CUNEIFORM SIGN PIRIG TIMES KAL -+1228C;AL # CUNEIFORM SIGN PIRIG TIMES UD -+1228D;AL # CUNEIFORM SIGN PIRIG TIMES ZA -+1228E;AL # CUNEIFORM SIGN PIRIG OPPOSING PIRIG -+1228F;AL # CUNEIFORM SIGN RA -+12290;AL # CUNEIFORM SIGN RAB -+12291;AL # CUNEIFORM SIGN RI -+12292;AL # CUNEIFORM SIGN RU -+12293;AL # CUNEIFORM SIGN SA -+12294;AL # CUNEIFORM SIGN SAG NUTILLU -+12295;AL # CUNEIFORM SIGN SAG -+12296;AL # CUNEIFORM SIGN SAG TIMES A -+12297;AL # CUNEIFORM SIGN SAG TIMES DU -+12298;AL # CUNEIFORM SIGN SAG TIMES DUB -+12299;AL # CUNEIFORM SIGN SAG TIMES HA -+1229A;AL # CUNEIFORM SIGN SAG TIMES KAK -+1229B;AL # CUNEIFORM SIGN SAG TIMES KUR -+1229C;AL # CUNEIFORM SIGN SAG TIMES LUM -+1229D;AL # CUNEIFORM SIGN SAG TIMES MI -+1229E;AL # CUNEIFORM SIGN SAG TIMES NUN -+1229F;AL # CUNEIFORM SIGN SAG TIMES SAL -+122A0;AL # CUNEIFORM SIGN SAG TIMES SHID -+122A1;AL # CUNEIFORM SIGN SAG TIMES TAB -+122A2;AL # CUNEIFORM SIGN SAG TIMES U2 -+122A3;AL # CUNEIFORM SIGN SAG TIMES UB -+122A4;AL # CUNEIFORM SIGN SAG TIMES UM -+122A5;AL # CUNEIFORM SIGN SAG TIMES UR -+122A6;AL # CUNEIFORM SIGN SAG TIMES USH -+122A7;AL # CUNEIFORM SIGN SAG OVER SAG -+122A8;AL # CUNEIFORM SIGN SAG GUNU -+122A9;AL # CUNEIFORM SIGN SAL -+122AA;AL # CUNEIFORM SIGN SAL LAGAB TIMES ASH2 -+122AB;AL # CUNEIFORM SIGN SANGA2 -+122AC;AL # CUNEIFORM SIGN SAR -+122AD;AL # CUNEIFORM SIGN SHA -+122AE;AL # CUNEIFORM SIGN SHA3 -+122AF;AL # CUNEIFORM SIGN SHA3 TIMES A -+122B0;AL # CUNEIFORM SIGN SHA3 TIMES BAD -+122B1;AL # CUNEIFORM SIGN SHA3 TIMES GISH -+122B2;AL # CUNEIFORM SIGN SHA3 TIMES NE -+122B3;AL # CUNEIFORM SIGN SHA3 TIMES SHU2 -+122B4;AL # CUNEIFORM SIGN SHA3 TIMES TUR -+122B5;AL # CUNEIFORM SIGN SHA3 TIMES U -+122B6;AL # CUNEIFORM SIGN SHA3 TIMES U PLUS A -+122B7;AL # CUNEIFORM SIGN SHA6 -+122B8;AL # CUNEIFORM SIGN SHAB6 -+122B9;AL # CUNEIFORM SIGN SHAR2 -+122BA;AL # CUNEIFORM SIGN SHE -+122BB;AL # CUNEIFORM SIGN SHE HU -+122BC;AL # CUNEIFORM SIGN SHE OVER SHE GAD OVER GAD GAR OVER GAR -+122BD;AL # CUNEIFORM SIGN SHE OVER SHE TAB OVER TAB GAR OVER GAR -+122BE;AL # CUNEIFORM SIGN SHEG9 -+122BF;AL # CUNEIFORM SIGN SHEN -+122C0;AL # CUNEIFORM SIGN SHESH -+122C1;AL # CUNEIFORM SIGN SHESH2 -+122C2;AL # CUNEIFORM SIGN SHESHLAM -+122C3;AL # CUNEIFORM SIGN SHID -+122C4;AL # CUNEIFORM SIGN SHID TIMES A -+122C5;AL # CUNEIFORM SIGN SHID TIMES IM -+122C6;AL # CUNEIFORM SIGN SHIM -+122C7;AL # CUNEIFORM SIGN SHIM TIMES A -+122C8;AL # CUNEIFORM SIGN SHIM TIMES BAL -+122C9;AL # CUNEIFORM SIGN SHIM TIMES BULUG -+122CA;AL # CUNEIFORM SIGN SHIM TIMES DIN -+122CB;AL # CUNEIFORM SIGN SHIM TIMES GAR -+122CC;AL # CUNEIFORM SIGN SHIM TIMES IGI -+122CD;AL # CUNEIFORM SIGN SHIM TIMES IGI GUNU -+122CE;AL # CUNEIFORM SIGN SHIM TIMES KUSHU2 -+122CF;AL # CUNEIFORM SIGN SHIM TIMES LUL -+122D0;AL # CUNEIFORM SIGN SHIM TIMES MUG -+122D1;AL # CUNEIFORM SIGN SHIM TIMES SAL -+122D2;AL # CUNEIFORM SIGN SHINIG -+122D3;AL # CUNEIFORM SIGN SHIR -+122D4;AL # CUNEIFORM SIGN SHIR TENU -+122D5;AL # CUNEIFORM SIGN SHIR OVER SHIR BUR OVER BUR -+122D6;AL # CUNEIFORM SIGN SHITA -+122D7;AL # CUNEIFORM SIGN SHU -+122D8;AL # CUNEIFORM SIGN SHU OVER INVERTED SHU -+122D9;AL # CUNEIFORM SIGN SHU2 -+122DA;AL # CUNEIFORM SIGN SHUBUR -+122DB;AL # CUNEIFORM SIGN SI -+122DC;AL # CUNEIFORM SIGN SI GUNU -+122DD;AL # CUNEIFORM SIGN SIG -+122DE;AL # CUNEIFORM SIGN SIG4 -+122DF;AL # CUNEIFORM SIGN SIG4 OVER SIG4 SHU2 -+122E0;AL # CUNEIFORM SIGN SIK2 -+122E1;AL # CUNEIFORM SIGN SILA3 -+122E2;AL # CUNEIFORM SIGN SU -+122E3;AL # CUNEIFORM SIGN SU OVER SU -+122E4;AL # CUNEIFORM SIGN SUD -+122E5;AL # CUNEIFORM SIGN SUD2 -+122E6;AL # CUNEIFORM SIGN SUHUR -+122E7;AL # CUNEIFORM SIGN SUM -+122E8;AL # CUNEIFORM SIGN SUMASH -+122E9;AL # CUNEIFORM SIGN SUR -+122EA;AL # CUNEIFORM SIGN SUR9 -+122EB;AL # CUNEIFORM SIGN TA -+122EC;AL # CUNEIFORM SIGN TA ASTERISK -+122ED;AL # CUNEIFORM SIGN TA TIMES HI -+122EE;AL # CUNEIFORM SIGN TA TIMES MI -+122EF;AL # CUNEIFORM SIGN TA GUNU -+122F0;AL # CUNEIFORM SIGN TAB -+122F1;AL # CUNEIFORM SIGN TAB OVER TAB NI OVER NI DISH OVER DISH -+122F2;AL # CUNEIFORM SIGN TAB SQUARED -+122F3;AL # CUNEIFORM SIGN TAG -+122F4;AL # CUNEIFORM SIGN TAG TIMES BI -+122F5;AL # CUNEIFORM SIGN TAG TIMES GUD -+122F6;AL # CUNEIFORM SIGN TAG TIMES SHE -+122F7;AL # CUNEIFORM SIGN TAG TIMES SHU -+122F8;AL # CUNEIFORM SIGN TAG TIMES TUG2 -+122F9;AL # CUNEIFORM SIGN TAG TIMES UD -+122FA;AL # CUNEIFORM SIGN TAK4 -+122FB;AL # CUNEIFORM SIGN TAR -+122FC;AL # CUNEIFORM SIGN TE -+122FD;AL # CUNEIFORM SIGN TE GUNU -+122FE;AL # CUNEIFORM SIGN TI -+122FF;AL # CUNEIFORM SIGN TI TENU -+12300;AL # CUNEIFORM SIGN TIL -+12301;AL # CUNEIFORM SIGN TIR -+12302;AL # CUNEIFORM SIGN TIR TIMES TAK4 -+12303;AL # CUNEIFORM SIGN TIR OVER TIR -+12304;AL # CUNEIFORM SIGN TIR OVER TIR GAD OVER GAD GAR OVER GAR -+12305;AL # CUNEIFORM SIGN TU -+12306;AL # CUNEIFORM SIGN TUG2 -+12307;AL # CUNEIFORM SIGN TUK -+12308;AL # CUNEIFORM SIGN TUM -+12309;AL # CUNEIFORM SIGN TUR -+1230A;AL # CUNEIFORM SIGN TUR OVER TUR ZA OVER ZA -+1230B;AL # CUNEIFORM SIGN U -+1230C;AL # CUNEIFORM SIGN U GUD -+1230D;AL # CUNEIFORM SIGN U U U -+1230E;AL # CUNEIFORM SIGN U OVER U PA OVER PA GAR OVER GAR -+1230F;AL # CUNEIFORM SIGN U OVER U SUR OVER SUR -+12310;AL # CUNEIFORM SIGN U OVER U U REVERSED OVER U REVERSED -+12311;AL # CUNEIFORM SIGN U2 -+12312;AL # CUNEIFORM SIGN UB -+12313;AL # CUNEIFORM SIGN UD -+12314;AL # CUNEIFORM SIGN UD KUSHU2 -+12315;AL # CUNEIFORM SIGN UD TIMES BAD -+12316;AL # CUNEIFORM SIGN UD TIMES MI -+12317;AL # CUNEIFORM SIGN UD TIMES U PLUS U PLUS U -+12318;AL # CUNEIFORM SIGN UD TIMES U PLUS U PLUS U GUNU -+12319;AL # CUNEIFORM SIGN UD GUNU -+1231A;AL # CUNEIFORM SIGN UD SHESHIG -+1231B;AL # CUNEIFORM SIGN UD SHESHIG TIMES BAD -+1231C;AL # CUNEIFORM SIGN UDUG -+1231D;AL # CUNEIFORM SIGN UM -+1231E;AL # CUNEIFORM SIGN UM TIMES LAGAB -+1231F;AL # CUNEIFORM SIGN UM TIMES ME PLUS DA -+12320;AL # CUNEIFORM SIGN UM TIMES SHA3 -+12321;AL # CUNEIFORM SIGN UM TIMES U -+12322;AL # CUNEIFORM SIGN UMBIN -+12323;AL # CUNEIFORM SIGN UMUM -+12324;AL # CUNEIFORM SIGN UMUM TIMES KASKAL -+12325;AL # CUNEIFORM SIGN UMUM TIMES PA -+12326;AL # CUNEIFORM SIGN UN -+12327;AL # CUNEIFORM SIGN UN GUNU -+12328;AL # CUNEIFORM SIGN UR -+12329;AL # CUNEIFORM SIGN UR CROSSING UR -+1232A;AL # CUNEIFORM SIGN UR SHESHIG -+1232B;AL # CUNEIFORM SIGN UR2 -+1232C;AL # CUNEIFORM SIGN UR2 TIMES A PLUS HA -+1232D;AL # CUNEIFORM SIGN UR2 TIMES A PLUS NA -+1232E;AL # CUNEIFORM SIGN UR2 TIMES AL -+1232F;AL # CUNEIFORM SIGN UR2 TIMES HA -+12330;AL # CUNEIFORM SIGN UR2 TIMES NUN -+12331;AL # CUNEIFORM SIGN UR2 TIMES U2 -+12332;AL # CUNEIFORM SIGN UR2 TIMES U2 PLUS ASH -+12333;AL # CUNEIFORM SIGN UR2 TIMES U2 PLUS BI -+12334;AL # CUNEIFORM SIGN UR4 -+12335;AL # CUNEIFORM SIGN URI -+12336;AL # CUNEIFORM SIGN URI3 -+12337;AL # CUNEIFORM SIGN URU -+12338;AL # CUNEIFORM SIGN URU TIMES A -+12339;AL # CUNEIFORM SIGN URU TIMES ASHGAB -+1233A;AL # CUNEIFORM SIGN URU TIMES BAR -+1233B;AL # CUNEIFORM SIGN URU TIMES DUN -+1233C;AL # CUNEIFORM SIGN URU TIMES GA -+1233D;AL # CUNEIFORM SIGN URU TIMES GAL -+1233E;AL # CUNEIFORM SIGN URU TIMES GAN2 TENU -+1233F;AL # CUNEIFORM SIGN URU TIMES GAR -+12340;AL # CUNEIFORM SIGN URU TIMES GU -+12341;AL # CUNEIFORM SIGN URU TIMES HA -+12342;AL # CUNEIFORM SIGN URU TIMES IGI -+12343;AL # CUNEIFORM SIGN URU TIMES IM -+12344;AL # CUNEIFORM SIGN URU TIMES ISH -+12345;AL # CUNEIFORM SIGN URU TIMES KI -+12346;AL # CUNEIFORM SIGN URU TIMES LUM -+12347;AL # CUNEIFORM SIGN URU TIMES MIN -+12348;AL # CUNEIFORM SIGN URU TIMES PA -+12349;AL # CUNEIFORM SIGN URU TIMES SHE -+1234A;AL # CUNEIFORM SIGN URU TIMES SIG4 -+1234B;AL # CUNEIFORM SIGN URU TIMES TU -+1234C;AL # CUNEIFORM SIGN URU TIMES U PLUS GUD -+1234D;AL # CUNEIFORM SIGN URU TIMES UD -+1234E;AL # CUNEIFORM SIGN URU TIMES URUDA -+1234F;AL # CUNEIFORM SIGN URUDA -+12350;AL # CUNEIFORM SIGN URUDA TIMES U -+12351;AL # CUNEIFORM SIGN USH -+12352;AL # CUNEIFORM SIGN USH TIMES A -+12353;AL # CUNEIFORM SIGN USH TIMES KU -+12354;AL # CUNEIFORM SIGN USH TIMES KUR -+12355;AL # CUNEIFORM SIGN USH TIMES TAK4 -+12356;AL # CUNEIFORM SIGN USHX -+12357;AL # CUNEIFORM SIGN USH2 -+12358;AL # CUNEIFORM SIGN USHUMX -+12359;AL # CUNEIFORM SIGN UTUKI -+1235A;AL # CUNEIFORM SIGN UZ3 -+1235B;AL # CUNEIFORM SIGN UZ3 TIMES KASKAL -+1235C;AL # CUNEIFORM SIGN UZU -+1235D;AL # CUNEIFORM SIGN ZA -+1235E;AL # CUNEIFORM SIGN ZA TENU -+1235F;AL # CUNEIFORM SIGN ZA SQUARED TIMES KUR -+12360;AL # CUNEIFORM SIGN ZAG -+12361;AL # CUNEIFORM SIGN ZAMX -+12362;AL # CUNEIFORM SIGN ZE2 -+12363;AL # CUNEIFORM SIGN ZI -+12364;AL # CUNEIFORM SIGN ZI OVER ZI -+12365;AL # CUNEIFORM SIGN ZI3 -+12366;AL # CUNEIFORM SIGN ZIB -+12367;AL # CUNEIFORM SIGN ZIB KABA TENU -+12368;AL # CUNEIFORM SIGN ZIG -+12369;AL # CUNEIFORM SIGN ZIZ2 -+1236A;AL # CUNEIFORM SIGN ZU -+1236B;AL # CUNEIFORM SIGN ZU5 -+1236C;AL # CUNEIFORM SIGN ZU5 TIMES A -+1236D;AL # CUNEIFORM SIGN ZUBUR -+1236E;AL # CUNEIFORM SIGN ZUM -+12400;AL # CUNEIFORM NUMERIC SIGN TWO ASH -+12401;AL # CUNEIFORM NUMERIC SIGN THREE ASH -+12402;AL # CUNEIFORM NUMERIC SIGN FOUR ASH -+12403;AL # CUNEIFORM NUMERIC SIGN FIVE ASH -+12404;AL # CUNEIFORM NUMERIC SIGN SIX ASH -+12405;AL # CUNEIFORM NUMERIC SIGN SEVEN ASH -+12406;AL # CUNEIFORM NUMERIC SIGN EIGHT ASH -+12407;AL # CUNEIFORM NUMERIC SIGN NINE ASH -+12408;AL # CUNEIFORM NUMERIC SIGN THREE DISH -+12409;AL # CUNEIFORM NUMERIC SIGN FOUR DISH -+1240A;AL # CUNEIFORM NUMERIC SIGN FIVE DISH -+1240B;AL # CUNEIFORM NUMERIC SIGN SIX DISH -+1240C;AL # CUNEIFORM NUMERIC SIGN SEVEN DISH -+1240D;AL # CUNEIFORM NUMERIC SIGN EIGHT DISH -+1240E;AL # CUNEIFORM NUMERIC SIGN NINE DISH -+1240F;AL # CUNEIFORM NUMERIC SIGN FOUR U -+12410;AL # CUNEIFORM NUMERIC SIGN FIVE U -+12411;AL # CUNEIFORM NUMERIC SIGN SIX U -+12412;AL # CUNEIFORM NUMERIC SIGN SEVEN U -+12413;AL # CUNEIFORM NUMERIC SIGN EIGHT U -+12414;AL # CUNEIFORM NUMERIC SIGN NINE U -+12415;AL # CUNEIFORM NUMERIC SIGN ONE GESH2 -+12416;AL # CUNEIFORM NUMERIC SIGN TWO GESH2 -+12417;AL # CUNEIFORM NUMERIC SIGN THREE GESH2 -+12418;AL # CUNEIFORM NUMERIC SIGN FOUR GESH2 -+12419;AL # CUNEIFORM NUMERIC SIGN FIVE GESH2 -+1241A;AL # CUNEIFORM NUMERIC SIGN SIX GESH2 -+1241B;AL # CUNEIFORM NUMERIC SIGN SEVEN GESH2 -+1241C;AL # CUNEIFORM NUMERIC SIGN EIGHT GESH2 -+1241D;AL # CUNEIFORM NUMERIC SIGN NINE GESH2 -+1241E;AL # CUNEIFORM NUMERIC SIGN ONE GESHU -+1241F;AL # CUNEIFORM NUMERIC SIGN TWO GESHU -+12420;AL # CUNEIFORM NUMERIC SIGN THREE GESHU -+12421;AL # CUNEIFORM NUMERIC SIGN FOUR GESHU -+12422;AL # CUNEIFORM NUMERIC SIGN FIVE GESHU -+12423;AL # CUNEIFORM NUMERIC SIGN TWO SHAR2 -+12424;AL # CUNEIFORM NUMERIC SIGN THREE SHAR2 -+12425;AL # CUNEIFORM NUMERIC SIGN THREE SHAR2 VARIANT FORM -+12426;AL # CUNEIFORM NUMERIC SIGN FOUR SHAR2 -+12427;AL # CUNEIFORM NUMERIC SIGN FIVE SHAR2 -+12428;AL # CUNEIFORM NUMERIC SIGN SIX SHAR2 -+12429;AL # CUNEIFORM NUMERIC SIGN SEVEN SHAR2 -+1242A;AL # CUNEIFORM NUMERIC SIGN EIGHT SHAR2 -+1242B;AL # CUNEIFORM NUMERIC SIGN NINE SHAR2 -+1242C;AL # CUNEIFORM NUMERIC SIGN ONE SHARU -+1242D;AL # CUNEIFORM NUMERIC SIGN TWO SHARU -+1242E;AL # CUNEIFORM NUMERIC SIGN THREE SHARU -+1242F;AL # CUNEIFORM NUMERIC SIGN THREE SHARU VARIANT FORM -+12430;AL # CUNEIFORM NUMERIC SIGN FOUR SHARU -+12431;AL # CUNEIFORM NUMERIC SIGN FIVE SHARU -+12432;AL # CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS DISH -+12433;AL # CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS MIN -+12434;AL # CUNEIFORM NUMERIC SIGN ONE BURU -+12435;AL # CUNEIFORM NUMERIC SIGN TWO BURU -+12436;AL # CUNEIFORM NUMERIC SIGN THREE BURU -+12437;AL # CUNEIFORM NUMERIC SIGN THREE BURU VARIANT FORM -+12438;AL # CUNEIFORM NUMERIC SIGN FOUR BURU -+12439;AL # CUNEIFORM NUMERIC SIGN FIVE BURU -+1243A;AL # CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH16 -+1243B;AL # CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH21 -+1243C;AL # CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU -+1243D;AL # CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU4 -+1243E;AL # CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU A -+1243F;AL # CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU B -+12440;AL # CUNEIFORM NUMERIC SIGN SIX VARIANT FORM ASH9 -+12441;AL # CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN3 -+12442;AL # CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN A -+12443;AL # CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN B -+12444;AL # CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU -+12445;AL # CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU3 -+12446;AL # CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU -+12447;AL # CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU3 -+12448;AL # CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU4 -+12449;AL # CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU A -+1244A;AL # CUNEIFORM NUMERIC SIGN TWO ASH TENU -+1244B;AL # CUNEIFORM NUMERIC SIGN THREE ASH TENU -+1244C;AL # CUNEIFORM NUMERIC SIGN FOUR ASH TENU -+1244D;AL # CUNEIFORM NUMERIC SIGN FIVE ASH TENU -+1244E;AL # CUNEIFORM NUMERIC SIGN SIX ASH TENU -+1244F;AL # CUNEIFORM NUMERIC SIGN ONE BAN2 -+12450;AL # CUNEIFORM NUMERIC SIGN TWO BAN2 -+12451;AL # CUNEIFORM NUMERIC SIGN THREE BAN2 -+12452;AL # CUNEIFORM NUMERIC SIGN FOUR BAN2 -+12453;AL # CUNEIFORM NUMERIC SIGN FOUR BAN2 VARIANT FORM -+12454;AL # CUNEIFORM NUMERIC SIGN FIVE BAN2 -+12455;AL # CUNEIFORM NUMERIC SIGN FIVE BAN2 VARIANT FORM -+12456;AL # CUNEIFORM NUMERIC SIGN NIGIDAMIN -+12457;AL # CUNEIFORM NUMERIC SIGN NIGIDAESH -+12458;AL # CUNEIFORM NUMERIC SIGN ONE ESHE3 -+12459;AL # CUNEIFORM NUMERIC SIGN TWO ESHE3 -+1245A;AL # CUNEIFORM NUMERIC SIGN ONE THIRD DISH -+1245B;AL # CUNEIFORM NUMERIC SIGN TWO THIRDS DISH -+1245C;AL # CUNEIFORM NUMERIC SIGN FIVE SIXTHS DISH -+1245D;AL # CUNEIFORM NUMERIC SIGN ONE THIRD VARIANT FORM A -+1245E;AL # CUNEIFORM NUMERIC SIGN TWO THIRDS VARIANT FORM A -+1245F;AL # CUNEIFORM NUMERIC SIGN ONE EIGHTH ASH -+12460;AL # CUNEIFORM NUMERIC SIGN ONE QUARTER ASH -+12461;AL # CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE SIXTH -+12462;AL # CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER -+12470;BA # CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER -+12471;BA # CUNEIFORM PUNCTUATION SIGN VERTICAL COLON -+12472;BA # CUNEIFORM PUNCTUATION SIGN DIAGONAL COLON -+12473;BA # CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON - 1D000;AL # BYZANTINE MUSICAL SYMBOL PSILI - 1D001;AL # BYZANTINE MUSICAL SYMBOL DASEIA - 1D002;AL # BYZANTINE MUSICAL SYMBOL PERISPOMENI -@@ -15291,6 +16642,24 @@ - 1D354;AL # TETRAGRAM FOR DIFFICULTIES - 1D355;AL # TETRAGRAM FOR LABOURING - 1D356;AL # TETRAGRAM FOR FOSTERING -+1D360;AL # COUNTING ROD UNIT DIGIT ONE -+1D361;AL # COUNTING ROD UNIT DIGIT TWO -+1D362;AL # COUNTING ROD UNIT DIGIT THREE -+1D363;AL # COUNTING ROD UNIT DIGIT FOUR -+1D364;AL # COUNTING ROD UNIT DIGIT FIVE -+1D365;AL # COUNTING ROD UNIT DIGIT SIX -+1D366;AL # COUNTING ROD UNIT DIGIT SEVEN -+1D367;AL # COUNTING ROD UNIT DIGIT EIGHT -+1D368;AL # COUNTING ROD UNIT DIGIT NINE -+1D369;AL # COUNTING ROD TENS DIGIT ONE -+1D36A;AL # COUNTING ROD TENS DIGIT TWO -+1D36B;AL # COUNTING ROD TENS DIGIT THREE -+1D36C;AL # COUNTING ROD TENS DIGIT FOUR -+1D36D;AL # COUNTING ROD TENS DIGIT FIVE -+1D36E;AL # COUNTING ROD TENS DIGIT SIX -+1D36F;AL # COUNTING ROD TENS DIGIT SEVEN -+1D370;AL # COUNTING ROD TENS DIGIT EIGHT -+1D371;AL # COUNTING ROD TENS DIGIT NINE - 1D400;AL # MATHEMATICAL BOLD CAPITAL A - 1D401;AL # MATHEMATICAL BOLD CAPITAL B - 1D402;AL # MATHEMATICAL BOLD CAPITAL C -@@ -16235,6 +17604,8 @@ - 1D7C7;AL # MATHEMATICAL SANS-SERIF BOLD ITALIC PHI SYMBOL - 1D7C8;AL # MATHEMATICAL SANS-SERIF BOLD ITALIC RHO SYMBOL - 1D7C9;AL # MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL -+1D7CA;AL # MATHEMATICAL BOLD CAPITAL DIGAMMA -+1D7CB;AL # MATHEMATICAL BOLD SMALL DIGAMMA - 1D7CE;NU # MATHEMATICAL BOLD DIGIT ZERO - 1D7CF;NU # MATHEMATICAL BOLD DIGIT ONE - 1D7D0;NU # MATHEMATICAL BOLD DIGIT TWO -@@ -17167,3 +18538,5 @@ - E01EF;CM # VARIATION SELECTOR-256 - F0000..FFFFD;XX # .. - 100000..10FFFD;XX # .. -+ -+# EOF -\ No newline at end of file -diff -r -u perl-5.8.8/lib/unicore/mktables.lst perl-5.8.8.patched/lib/unicore/mktables.lst ---- perl-5.8.8/lib/unicore/mktables.lst 2005-04-25 09:36:30.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/mktables.lst 2006-09-15 14:16:49.355333000 -0400 -@@ -1,7 +1,7 @@ - # - # mktables.lst -- File list for mktables. - # --# Autogenerated on Sun Apr 24 21:25:22 2005 -+# Autogenerated on Thu Sep 14 02:24:16 2006 - # - # - First section is input files - # (mktables itself is automatically included) -@@ -25,6 +25,7 @@ - Jamo.txt - LineBreak.txt - NamedSequences.txt -+NamedSqProv.txt - NamesList.txt - NormalizationCorrections.txt - PropertyAliases.txt -@@ -118,6 +119,7 @@ - lib/gc_sc/ASCII.pl - lib/gc_sc/AsciiHex.pl - lib/gc_sc/Assigned.pl -+lib/gc_sc/Bali.pl - lib/gc_sc/Beng.pl - lib/gc_sc/BidiC.pl - lib/gc_sc/BidiCont.pl -@@ -154,9 +156,7 @@ - lib/gc_sc/Glag.pl - lib/gc_sc/Goth.pl - lib/gc_sc/Graph.pl --lib/gc_sc/Grapheme.pl - lib/gc_sc/Grek.pl --lib/gc_sc/GrLink.pl - lib/gc_sc/Gujr.pl - lib/gc_sc/Guru.pl - lib/gc_sc/Hang.pl -@@ -186,6 +186,7 @@ - lib/gc_sc/InArabic.pl - lib/gc_sc/InArmeni.pl - lib/gc_sc/InArrows.pl -+lib/gc_sc/InBaline.pl - lib/gc_sc/InBasicL.pl - lib/gc_sc/InBengal.pl - lib/gc_sc/InBlockE.pl -@@ -213,6 +214,9 @@ - lib/gc_sc/InCombin.pl - lib/gc_sc/InContro.pl - lib/gc_sc/InCoptic.pl -+lib/gc_sc/InCounti.pl -+lib/gc_sc/InCunei2.pl -+lib/gc_sc/InCuneif.pl - lib/gc_sc/InCurren.pl - lib/gc_sc/InCyprio.pl - lib/gc_sc/InCyril2.pl -@@ -258,6 +262,8 @@ - lib/gc_sc/InLatin1.pl - lib/gc_sc/InLatin2.pl - lib/gc_sc/InLatin3.pl -+lib/gc_sc/InLatin4.pl -+lib/gc_sc/InLatin5.pl - lib/gc_sc/InLatinE.pl - lib/gc_sc/InLetter.pl - lib/gc_sc/InLimbu.pl -@@ -277,6 +283,7 @@ - lib/gc_sc/InMusica.pl - lib/gc_sc/InMyanma.pl - lib/gc_sc/InNewTai.pl -+lib/gc_sc/InNko.pl - lib/gc_sc/InNumber.pl - lib/gc_sc/InOgham.pl - lib/gc_sc/InOldIta.pl -@@ -284,6 +291,8 @@ - lib/gc_sc/InOptica.pl - lib/gc_sc/InOriya.pl - lib/gc_sc/InOsmany.pl -+lib/gc_sc/InPhagsP.pl -+lib/gc_sc/InPhoeni.pl - lib/gc_sc/InPhone2.pl - lib/gc_sc/InPhonet.pl - lib/gc_sc/InPrivat.pl -@@ -354,6 +363,7 @@ - lib/gc_sc/NChar.pl - lib/gc_sc/Nd.pl - lib/gc_sc/NewTaiLu.pl -+lib/gc_sc/Nkoo.pl - lib/gc_sc/Nl.pl - lib/gc_sc/No.pl - lib/gc_sc/Nonchara.pl -@@ -387,6 +397,8 @@ - lib/gc_sc/Pd.pl - lib/gc_sc/Pe.pl - lib/gc_sc/Pf.pl -+lib/gc_sc/PhagsPa.pl -+lib/gc_sc/Phnx.pl - lib/gc_sc/Pi.pl - lib/gc_sc/Po.pl - lib/gc_sc/Print.pl -@@ -436,6 +448,7 @@ - lib/gc_sc/Word.pl - lib/gc_sc/WSpace.pl - lib/gc_sc/XDigit.pl -+lib/gc_sc/Xsux.pl - lib/gc_sc/Yiii.pl - lib/gc_sc/Z.pl - lib/gc_sc/Zl.pl -@@ -499,7 +512,7 @@ - To/Title.pl - To/Upper.pl - --# 22 input files --# 458 output files -+# 23 input files -+# 470 output files - - # End list -diff -r -u perl-5.8.8/lib/unicore/NamedSequences.txt perl-5.8.8.patched/lib/unicore/NamedSequences.txt ---- perl-5.8.8/lib/unicore/NamedSequences.txt 2005-04-02 12:57:27.000000000 -0500 -+++ perl-5.8.8.patched/lib/unicore/NamedSequences.txt 2006-09-15 14:12:05.555130000 -0400 -@@ -1,8 +1,8 @@ --# NamedSequences-4.1.0.txt --# Date: 2005-214, 13:10 PST [KW] -+# NamedSequences-5.0.0.txt -+# Date: 2006-05-23, 11:01 PST [KW] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - # -@@ -18,7 +18,6 @@ - - LATIN CAPITAL LETTER A WITH MACRON AND GRAVE;0100 0300 - LATIN SMALL LETTER A WITH MACRON AND GRAVE;0101 0300 --LATIN SMALL LETTER A WITH ACUTE AND OGONEK;00E1 0328 - LATIN CAPITAL LETTER E WITH VERTICAL LINE BELOW;0045 0329 - LATIN SMALL LETTER E WITH VERTICAL LINE BELOW;0065 0329 - LATIN CAPITAL LETTER E WITH VERTICAL LINE BELOW AND GRAVE;00C8 0329 -@@ -43,12 +42,6 @@ - LATIN SMALL LETTER S WITH VERTICAL LINE BELOW;0073 0329 - LATIN CAPITAL LETTER U WITH MACRON AND GRAVE;016A 0300 - LATIN SMALL LETTER U WITH MACRON AND GRAVE;016B 0300 --GURMUKHI HALF YA;0A2F 0A4D --GURMUKHI PARI CA;0A4D 0A1A --GURMUKHI PARI TA;0A4D 0A24 --GURMUKHI PARI NA;0A4D 0A28 --GURMUKHI PARI YA;0A4D 0A2F --GURMUKHI PARI VA;0A4D 0A35 - GEORGIAN LETTER U-BRJGU;10E3 0302 - KHMER CONSONANT SIGN COENG KA;17D2 1780 - KHMER CONSONANT SIGN COENG KHA;17D2 1781 -Only in perl-5.8.8.patched/lib/unicore: NamedSqProv.txt -diff -r -u perl-5.8.8/lib/unicore/NamesList.txt perl-5.8.8.patched/lib/unicore/NamesList.txt ---- perl-5.8.8/lib/unicore/NamesList.txt 2005-04-08 07:30:53.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/NamesList.txt 2006-09-15 14:12:05.580126000 -0400 -@@ -1,23 +1,16 @@ --@@@ The Unicode Standard 4.1 --@@@+ U41M050317.lst -- Draft Unicode 4.1 names list. -- Major merger of post-Unicode 4.0 additions with Amd1 name file (xia050208.lst). -- Accumulation of fixes post-Unicode 4.0. (5th collection) -- Add alias for 2D53. -- Corrected alias for 2697. -- Subdivided headers for Modifier Tone Letters. -- Add xrefs for 1DC0 and 1DC3. -- Updated annotation for 301C. -- Add xref to 2026 and 22EE for FE19. -+@@@ The Unicode Standard 5.0 -+@@@+ U50M060619.lst -+ Final Unicode 5.0 names list. - This file is semi-automatically derived from UnicodeData.txt and - a set of manually created annotations using a script to select - or suppress information from the data file. The rules used - for this process are aimed at readability for the human reader, - at the expense of some details; therefore, this file should not - be parsed for machine-readable information. --@+ Copyright (c) 1991-2005 Unicode, Inc. -+@+ Copyright (c) 1991-2006 Unicode, Inc. - For terms of use, see http://www.unicode.org/terms_of_use.html - @@ 0000 C0 Controls and Basic Latin (Basic Latin) 007F -+@@+ - @ C0 controls - @+ Alias names are those for ISO/IEC 6429:1992. Commonly used alternative aliases are also shown. - 0000 -@@ -93,7 +86,7 @@ - = INFORMATION SEPARATOR ONE - = unit separator (US) - @ ASCII punctuation and symbols --@+ Based on ISO/IEC 646 from here. -+@+ Based on ISO/IEC 646. - 0020 SPACE - * sometimes considered a control code - * other space characters: 2000-200A -@@ -120,11 +113,12 @@ - x (ditto mark - 3003) - 0023 NUMBER SIGN - = pound sign, hash, crosshatch, octothorpe -+ x (l b bar symbol - 2114) - x (music sharp sign - 266F) - 0024 DOLLAR SIGN - = milreis, escudo - * glyph may have one or two vertical bars -- * other currency symbol characters: 20A0-20AF -+ * other currency symbol characters: 20A0-20B5 - x (currency sign - 00A4) - 0025 PERCENT SIGN - x (arabic percent sign - 066A) -@@ -132,8 +126,10 @@ - x (per ten thousand sign - 2031) - x (commercial minus sign - 2052) - 0026 AMPERSAND -+ x (tironian sign et - 204A) -+ x (turned ampersand - 214B) - 0027 APOSTROPHE -- = APOSTROPHE-QUOTE -+ = apostrophe-quote (1.0) - = APL quote - * neutral (vertical) glyph with mixed usage - * 2019 is preferred for apostrophe -@@ -144,9 +140,9 @@ - x (combining acute accent - 0301) - x (prime - 2032) - 0028 LEFT PARENTHESIS -- = OPENING PARENTHESIS -+ = opening parenthesis (1.0) - 0029 RIGHT PARENTHESIS -- = CLOSING PARENTHESIS -+ = closing parenthesis (1.0) - * see discussion on semantics of paired bracketing characters - 002A ASTERISK - = star (on phone keypads) -@@ -169,14 +165,12 @@ - x (en dash - 2013) - x (minus sign - 2212) - 002E FULL STOP -- = PERIOD -- = dot, decimal point -+ = 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) -+ = slash, virgule - x (latin letter dental click - 01C0) - x (combining long solidus overlay - 0338) - x (fraction slash - 2044) -@@ -224,7 +218,7 @@ - x (question exclamation mark - 2048) - x (exclamation question mark - 2049) - 0040 COMMERCIAL AT -- = Klammeraffe (common, humorous slang German name) -+ = at sign - @ Uppercase Latin alphabet - 0041 LATIN CAPITAL LETTER A - 0042 LATIN CAPITAL LETTER B -@@ -240,7 +234,6 @@ - x (script capital f - 2131) - x (turned capital f - 2132) - 0047 LATIN CAPITAL LETTER G -- * invented circa 300 BCE by Spurius Carvilius Ruga, who added a stroke to the letter C - 0048 LATIN CAPITAL LETTER H - x (script capital h - 210B) - x (black-letter capital h - 210C) -@@ -283,22 +276,23 @@ - x (black-letter capital z - 2128) - @ ASCII punctuation and symbols - 005B LEFT SQUARE BRACKET -- = OPENING SQUARE BRACKET -- * other bracket characters: 3008-301B -+ = opening square bracket (1.0) -+ * other bracket characters: 27E6-27EB, 2983-2998, 3008-301B - 005C REVERSE SOLIDUS -- = BACKSLASH -+ = backslash - x (combining reverse solidus overlay - 20E5) - x (set minus - 2216) - 005D RIGHT SQUARE BRACKET -- = CLOSING SQUARE BRACKET -+ = closing square bracket (1.0) - 005E CIRCUMFLEX ACCENT - * this is a spacing character - x (modifier letter up arrowhead - 02C4) - x (modifier letter circumflex accent - 02C6) - x (combining circumflex accent - 0302) -+ x (caret - 2038) - x (up arrowhead - 2303) - 005F LOW LINE -- = SPACING UNDERSCORE -+ = spacing underscore (1.0) - * this is a spacing character - x (modifier letter low macron - 02CD) - x (combining macron below - 0331) -@@ -327,10 +321,14 @@ - 0069 LATIN SMALL LETTER I - * Turkish and Azerbaijani use 0130 for uppercase - x (latin small letter dotless i - 0131) -+ x (mathematical italic small dotless i - 1D6A4) - 006A LATIN SMALL LETTER J -+ x (latin small letter dotless j - 0237) -+ x (mathematical italic small dotless j - 1D6A5) - 006B LATIN SMALL LETTER K - 006C LATIN SMALL LETTER L - x (script small l - 2113) -+ x (mathematical script small l - 1D4C1) - 006D LATIN SMALL LETTER M - 006E LATIN SMALL LETTER N - x (superscript latin small letter n - 207F) -@@ -350,18 +348,18 @@ - x (latin small letter z with stroke - 01B6) - @ ASCII punctuation and symbols - 007B LEFT CURLY BRACKET -- = OPENING CURLY BRACKET -- = opening brace -+ = opening curly bracket (1.0) -+ = left brace - 007C VERTICAL LINE -- = VERTICAL BAR -+ = vertical bar - * used in pairs to indicate absolute value - x (latin letter dental click - 01C0) - x (hebrew punctuation paseq - 05C0) - x (divides - 2223) - x (light vertical bar - 2758) - 007D RIGHT CURLY BRACKET -- = CLOSING CURLY BRACKET -- = closing brace -+ = closing curly bracket (1.0) -+ = right brace - 007E TILDE - * this is a spacing character - x (small tilde - 02DC) -@@ -379,9 +377,12 @@ - 0081 - 0082 - = BREAK PERMITTED HERE -+ x (zero width space - 200B) - 0083 - = NO BREAK HERE -+ x (word joiner - 2060) - 0084 -+ * formerly known as INDEX - 0085 - = NEXT LINE (NEL) - 0086 -@@ -438,7 +439,7 @@ - @ Latin-1 punctuation and symbols - @+ Based on ISO/IEC 8859-1 (aka Latin-1) from here. - 00A0 NO-BREAK SPACE -- = NBSP -+ * commonly abbreviated as NBSP - x (space - 0020) - x (figure space - 2007) - x (narrow no-break space - 202F) -@@ -453,13 +454,13 @@ - = pound sterling, Irish punt, Italian lira, Turkish lira, etc. - x (lira sign - 20A4) - 00A4 CURRENCY SIGN -- * other currency symbol characters: 20A0-20AF -+ * other currency symbol characters: 20A0-20B5 - x (dollar sign - 0024) - 00A5 YEN SIGN - = yuan sign - * glyph may have one or two crossbars - 00A6 BROKEN BAR -- = BROKEN VERTICAL BAR -+ = broken vertical bar (1.0) - = parted rule (in typography) - 00A7 SECTION SIGN - * paragraph sign in some European usage -@@ -469,11 +470,12 @@ - # 0020 0308 - 00A9 COPYRIGHT SIGN - x (sound recording copyright - 2117) -+ x (circled latin capital letter c - 24B8) - 00AA FEMININE ORDINAL INDICATOR - * Spanish - # 0061 - 00AB LEFT-POINTING DOUBLE ANGLE QUOTATION MARK * -- = LEFT POINTING GUILLEMET -+ = left guillemet - = chevrons (in typography) - * usually opening, sometimes closing - x (much less-than - 226A) -@@ -482,11 +484,11 @@ - = angled dash (in typography) - x (reversed not sign - 2310) - 00AD SOFT HYPHEN -- = SHY - = discretionary hyphen -- x (mongolian todo soft hyphen - 1806) -+ * commonly abbreviated as SHY - 00AE REGISTERED SIGN -- = REGISTERED TRADE MARK SIGN -+ = registered trade mark sign (1.0) -+ x (circled latin capital letter r - 24C7) - 00AF MACRON - = overline, APL overbar - * this is a spacing character -@@ -521,7 +523,7 @@ - 00B5 MICRO SIGN - # 03BC greek small letter mu - 00B6 PILCROW SIGN -- = PARAGRAPH SIGN -+ = paragraph sign - * section sign in some European usage - x (reversed pilcrow sign - 204B) - x (curved stem paragraph sign ornament - 2761) -@@ -549,7 +551,7 @@ - * Spanish - # 006F - 00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK * -- = RIGHT POINTING GUILLEMET -+ = right guillemet - * usually closing, sometimes opening - x (much greater-than - 226B) - x (right double angle bracket - 300B) -@@ -582,7 +584,7 @@ - x (angstrom sign - 212B) - : 0041 030A - 00C6 LATIN CAPITAL LETTER AE (ash) * -- = LATIN CAPITAL LIGATURE AE -+ = latin capital ligature ae (1.0) - 00C7 LATIN CAPITAL LETTER C WITH CEDILLA - : 0043 0327 - 00C8 LATIN CAPITAL LETTER E WITH GRAVE -@@ -622,7 +624,7 @@ - = z notation Cartesian product - @ Letters - 00D8 LATIN CAPITAL LETTER O WITH STROKE -- = LATIN CAPITAL LETTER O SLASH -+ = o slash - x (empty set - 2205) - 00D9 LATIN CAPITAL LETTER U WITH GRAVE - : 0055 0300 -@@ -656,7 +658,7 @@ - * Danish, Norwegian, Swedish, Walloon - : 0061 030A - 00E6 LATIN SMALL LETTER AE (ash) * -- = LATIN SMALL LIGATURE AE -+ = latin small ligature ae (1.0) - = ash (from Old English �sc) - * Danish, Norwegian, Icelandic, Faroese, Old English, French, IPA - x (latin small ligature oe - 0153) -@@ -704,7 +706,7 @@ - x (divides - 2223) - @ Letters - 00F8 LATIN SMALL LETTER O WITH STROKE -- = LATIN SMALL LETTER O SLASH -+ = o slash - * Danish, Norwegian, Faroese, IPA - 00F9 LATIN SMALL LETTER U WITH GRAVE - * French, Italian -@@ -858,7 +860,7 @@ - * Lithuanian, ... - : 0069 0328 - 0130 LATIN CAPITAL LETTER I WITH DOT ABOVE -- = LATIN CAPITAL LETTER I DOT -+ = i dot - * Turkish, Azerbaijani - * lowercase is 0069 - x (latin capital letter i - 0049) -@@ -905,9 +907,11 @@ - * 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 -+ * Catalan legacy compatibility character for ISO 6937 -+ * preferred representation for Catalan: 006C 00B7 - # 006C 00B7 - 0141 LATIN CAPITAL LETTER L WITH STROKE -+ x (latin capital letter l with bar - 023D) - 0142 LATIN SMALL LETTER L WITH STROKE - * Polish, ... - x (latin small letter l with bar - 019A) -@@ -927,9 +931,10 @@ - * Czech, Slovak - : 006E 030C - 0149 LATIN SMALL LETTER N PRECEDED BY APOSTROPHE -- = LATIN SMALL LETTER APOSTROPHE N -+ = latin small letter apostrophe n (1.0) - * Afrikaans -- * this is not actually a single letter -+ * legacy compatibility character for ISO/IEC 6937 -+ * uppercase is 02BC 004E - # 02BC 006E - 014A LATIN CAPITAL LETTER ENG (Sami) - * glyph may also have appearance of large form of the small letter -@@ -952,7 +957,6 @@ - : 006F 030B - 0152 LATIN CAPITAL LIGATURE OE - 0153 LATIN SMALL LIGATURE OE -- = LATIN SMALL LETTER O E - = ethel (from Old English e�el) - * French, IPA, Old Icelandic, Old English, ... - x (latin small letter ae - 00E6) -@@ -965,7 +969,7 @@ - 0156 LATIN CAPITAL LETTER R WITH CEDILLA - : 0052 0327 - 0157 LATIN SMALL LETTER R WITH CEDILLA -- * Latvian -+ * Livonian - : 0072 0327 - 0158 LATIN CAPITAL LETTER R WITH CARON - : 0052 030C -@@ -1077,11 +1081,12 @@ - * in current use in Fraktur and Gaelic types - # 0073 latin small letter s - @@ 0180 Latin Extended-B 024F --@ Latin Extended-B -+@ Non-European and historic Latin - 0180 LATIN SMALL LETTER B WITH STROKE - * Americanist and Indo-Europeanist usage for phonetic beta - * Americanist orthographies use an alternate glyph with the stroke through the bowl - * Old Saxon -+ * uppercase is 0243 - x (greek small letter beta - 03B2) - x (blank symbol - 2422) - 0181 LATIN CAPITAL LETTER B WITH HOOK -@@ -1089,12 +1094,12 @@ - x (latin small letter b with hook - 0253) - 0182 LATIN CAPITAL LETTER B WITH TOPBAR - 0183 LATIN SMALL LETTER B WITH TOPBAR -- * Zhuang -+ * Zhuang (old orthography) - * former Soviet minority language scripts - x (cyrillic capital letter be - 0411) - 0184 LATIN CAPITAL LETTER TONE SIX - 0185 LATIN SMALL LETTER TONE SIX -- * Zhuang -+ * Zhuang (old orthography) - * Zhuang tone three is Cyrillic ze - * Zhuang tone four is Cyrillic che - x (latin small letter tone two - 01A8) -@@ -1120,12 +1125,13 @@ - 018B LATIN CAPITAL LETTER D WITH TOPBAR - 018C LATIN SMALL LETTER D WITH TOPBAR - * former-Soviet minority language scripts -+ * Zhuang (old orthography) - 018D LATIN SMALL LETTER TURNED DELTA - = reversed Polish-hook o - * archaic phonetic for labialized alveolar fricative - * recommended spellings 007A 02B7 or 007A 032B - 018E LATIN CAPITAL LETTER REVERSED E -- = LATIN CAPITAL LETTER TURNED E -+ = turned e - * Pan-Nigerian alphabet - * lowercase is 01DD - 018F LATIN CAPITAL LETTER SCHWA -@@ -1133,17 +1139,17 @@ - x (latin small letter schwa - 0259) - x (cyrillic capital letter schwa - 04D8) - 0190 LATIN CAPITAL LETTER OPEN E -- = LATIN CAPITAL LETTER EPSILON -+ = epsilon - * African - x (latin small letter open e - 025B) - x (euler constant - 2107) - 0191 LATIN CAPITAL LETTER F WITH HOOK - * African - 0192 LATIN SMALL LETTER F WITH HOOK -- = LATIN SMALL LETTER SCRIPT F -+ = script f - = Florin currency symbol (Netherlands) - = function symbol -- = abbreviation convention for folder -+ * used as abbreviation convention for folder - 0193 LATIN CAPITAL LETTER G WITH HOOK - * African - x (latin small letter g with hook - 0260) -@@ -1168,11 +1174,12 @@ - = barred l - * Americanist phonetic usage for 026C - x (latin small letter l with stroke - 0142) -+ x (latin capital letter l with bar - 023D) - 019B LATIN SMALL LETTER LAMBDA WITH STROKE - = barred lambda, lambda bar - * Americanist phonetic usage - 019C LATIN CAPITAL LETTER TURNED M -- * Zhuang -+ * Zhuang (old orthography) - x (latin small letter turned m - 026F) - 019D LATIN CAPITAL LETTER N WITH LEFT HOOK - * African -@@ -1193,8 +1200,9 @@ - * Vietnamese - : 006F 031B - 01A2 LATIN CAPITAL LETTER OI (gha) -+ % LATIN CAPITAL LETTER GHA - 01A3 LATIN SMALL LETTER OI (gha) -- = gha -+ % LATIN SMALL LETTER GHA - * Pan-Turkic Latin alphabets - 01A4 LATIN CAPITAL LETTER P WITH HOOK - 01A5 LATIN SMALL LETTER P WITH HOOK -@@ -1205,7 +1213,7 @@ - * lowercase is 0280 - 01A7 LATIN CAPITAL LETTER TONE TWO - 01A8 LATIN SMALL LETTER TONE TWO -- * Zhuang -+ * Zhuang (old orthography) - * typographically a reversed S - x (latin small letter tone six - 0185) - 01A9 LATIN CAPITAL LETTER ESH -@@ -1237,11 +1245,11 @@ - x (latin small letter upsilon - 028A) - x (inverted ohm sign - 2127) - 01B2 LATIN CAPITAL LETTER V WITH HOOK -- = LATIN CAPITAL LETTER SCRIPT V -+ = script v - * African - x (latin small letter v with hook - 028B) - 01B3 LATIN CAPITAL LETTER Y WITH HOOK -- * a glyph variant with hook at the right also occurs -+ * a glyph variant with hook at the left also occurs - 01B4 LATIN SMALL LETTER Y WITH HOOK - * Bini, Esoko, and other Edo languages in West Africa - 01B5 LATIN CAPITAL LETTER Z WITH STROKE -@@ -1271,7 +1279,7 @@ - * recommended spellings 0292 or 0064 007A - 01BC LATIN CAPITAL LETTER TONE FIVE - 01BD LATIN SMALL LETTER TONE FIVE -- * Zhuang -+ * Zhuang (old orthography) - x (latin small letter tone six - 0185) - 01BE LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE - * archaic phonetic for [ts] affricate -@@ -1303,7 +1311,7 @@ - * Khoisan tradition - x (not equal to - 2260) - 01C3 LATIN LETTER RETROFLEX CLICK -- = LATIN LETTER EXCLAMATION MARK -+ = latin letter exclamation mark (1.0) - * Khoisan tradition - * "q" in Zulu orthography - x (exclamation mark - 0021) -@@ -1371,7 +1379,7 @@ - 01DC LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE - * Pinyin fourth tone - : 00FC 0300 --@ Additions -+@ Phonetic and historic letters - 01DD LATIN SMALL LETTER TURNED E - * Pan-Nigerian alphabet - * all other usages of schwa are 0259 -@@ -1525,6 +1533,7 @@ - 021D LATIN SMALL LETTER YOGH - * Middle English, Scots - x (latin small letter ezh - 0292) -+ x (latin small letter insular g - 1D79) - x (ounce sign - 2125) - 021E LATIN CAPITAL LETTER H WITH CARON - : 0048 030C -@@ -1556,27 +1565,23 @@ - 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 -+ * also Cornish - : 0079 0304 - @ Additions for Sinology - 0234 LATIN SMALL LETTER L WITH CURL -@@ -1591,18 +1596,40 @@ - * used in Africanist linguistics - 023A LATIN CAPITAL LETTER A WITH STROKE - * Sencoten -+ * lowercase is 2C65 - 023B LATIN CAPITAL LETTER C WITH STROKE - * Sencoten - 023C LATIN SMALL LETTER C WITH STROKE - * used in Americanist linguistics - 023D LATIN CAPITAL LETTER L WITH BAR - * Sencoten -+ * lowercase is 019A - 023E LATIN CAPITAL LETTER T WITH DIAGONAL STROKE - * Sencoten -+ * lowercase is 2C66 - 023F LATIN SMALL LETTER S WITH SWASH TAIL - 0240 LATIN SMALL LETTER Z WITH SWASH TAIL - 0241 LATIN CAPITAL LETTER GLOTTAL STOP -- * lowercase is 0294 -+0242 LATIN SMALL LETTER GLOTTAL STOP -+ * casing use in Chipewyan, Dogrib, Slavey (Canadian aboriginal orthographies) -+ x (latin letter glottal stop - 0294) -+ x (modifier letter glottal stop - 02C0) -+0243 LATIN CAPITAL LETTER B WITH STROKE -+ * lowercase is 0180 -+0244 LATIN CAPITAL LETTER U BAR -+ * lowercase is 0289 -+0245 LATIN CAPITAL LETTER TURNED V -+ * lowercase is 028C -+0246 LATIN CAPITAL LETTER E WITH STROKE -+0247 LATIN SMALL LETTER E WITH STROKE -+0248 LATIN CAPITAL LETTER J WITH STROKE -+0249 LATIN SMALL LETTER J WITH STROKE -+024A LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL -+024B LATIN SMALL LETTER Q WITH HOOK TAIL -+024C LATIN CAPITAL LETTER R WITH STROKE -+024D LATIN SMALL LETTER R WITH STROKE -+024E LATIN CAPITAL LETTER Y WITH STROKE -+024F LATIN SMALL LETTER Y WITH STROKE - @@ 0250 IPA Extensions 02AF - @ IPA extensions - @+ IPA includes basic Latin letters and a number of Latin or Greek letters from other blocks. -@@ -1620,7 +1647,7 @@ - 0250 LATIN SMALL LETTER TURNED A - * low central unrounded vowel - 0251 LATIN SMALL LETTER ALPHA -- = LATIN SMALL LETTER SCRIPT A -+ = latin small letter script a (1.0) - * low back unrounded vowel - x (greek small letter alpha - 03B1) - 0252 LATIN SMALL LETTER TURNED ALPHA -@@ -1638,7 +1665,7 @@ - * used in transcription of Mandarin Chinese - * sound spelled with 015B in Polish - 0256 LATIN SMALL LETTER D WITH TAIL -- = LATIN SMALL LETTER D RETROFLEX HOOK -+ = d retroflex hook - * voiced retroflex stop - x (latin capital letter african d - 0189) - 0257 LATIN SMALL LETTER D WITH HOOK -@@ -1656,7 +1683,7 @@ - 025A LATIN SMALL LETTER SCHWA WITH HOOK - * rhotacized schwa - 025B LATIN SMALL LETTER OPEN E -- = LATIN SMALL LETTER EPSILON -+ = epsilon - * lower-mid front unrounded vowel - x (latin capital letter open e - 0190) - x (greek small letter epsilon - 03B5) -@@ -1665,7 +1692,7 @@ - 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 -+ = closed reversed epsilon - * lower-mid central rounded vowel - 025F LATIN SMALL LETTER DOTLESS J WITH STROKE - * voiced palatal stop -@@ -1685,7 +1712,7 @@ - x (latin capital letter gamma - 0194) - x (greek small letter gamma - 03B3) - 0264 LATIN SMALL LETTER RAMS HORN -- = LATIN SMALL LETTER BABY GAMMA -+ = latin small letter baby gamma (1.0) - * upper-mid back unrounded vowel - 0265 LATIN SMALL LETTER TURNED H - * voiced rounded palatal approximant -@@ -1702,7 +1729,7 @@ - 0269 LATIN SMALL LETTER IOTA - * semi-high front unrounded vowel - @+ * obsoleted by IPA in 1989 -- * preferred use is 026A LATIN LETTER SMALL CAPITAL I -+ * 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 -@@ -1711,6 +1738,7 @@ - x (latin capital letter i with stroke - 0197) - 026B LATIN SMALL LETTER L WITH MIDDLE TILDE - * velarized voiced alveolar lateral approximant -+ * uppercase is 2C62 - 026C LATIN SMALL LETTER L WITH BELT - * voiceless alveolar lateral fricative - 026D LATIN SMALL LETTER L WITH RETROFLEX HOOK -@@ -1765,6 +1793,7 @@ - * in current use in Gaelic types (as glyph variant of 0072) - 027D LATIN SMALL LETTER R WITH TAIL - * voiced retroflex flap -+ * uppercase is 2C64 - 027E LATIN SMALL LETTER R WITH FISHHOOK - * voiced alveolar flap or tap - 027F LATIN SMALL LETTER REVERSED R WITH FISHHOOK -@@ -1804,19 +1833,21 @@ - x (latin capital letter t with retroflex hook - 01AE) - 0289 LATIN SMALL LETTER U BAR - * high central rounded vowel -+ * uppercase is 0244 - 028A LATIN SMALL LETTER UPSILON - * semi-high back rounded vowel - * preferred IPA alternate to 0277 - x (latin capital letter upsilon - 01B1) - x (greek small letter upsilon - 03C5) - 028B LATIN SMALL LETTER V WITH HOOK -- = LATIN SMALL LETTER SCRIPT V -+ = latin small letter script v (1.0) - * voiced labiodental approximant - x (latin capital letter v with hook - 01B2) - x (greek small letter upsilon - 03C5) - 028C LATIN SMALL LETTER TURNED V - = caret, wedge - * lower-mid back unrounded vowel -+ * uppercase is 0245 - x (greek capital letter lamda - 039B) - x (caret - 2038) - x (logical and - 2227) -@@ -1843,10 +1874,12 @@ - 0293 LATIN SMALL LETTER EZH WITH CURL - * palatalized voiced postalveolar fricative - 0294 LATIN LETTER GLOTTAL STOP -- * uppercase is 0241 -+ * this is a caseless letter -+ * used in IPA, other phonetic notations, and those orthographies which use a caseless glottal stop -+ x (latin capital letter glottal stop - 0241) - x (modifier letter glottal stop - 02C0) - 0295 LATIN LETTER PHARYNGEAL VOICED FRICATIVE -- = LATIN LETTER REVERSED GLOTTAL STOP -+ = reversed glottal stop - * voiced pharyngeal fricative - * ain - x (latin small letter ezh reversed - 01B9) -@@ -1859,12 +1892,12 @@ - x (latin letter retroflex click - 01C3) - x (complement - 2201) - 0298 LATIN LETTER BILABIAL CLICK -- = LATIN LETTER BULLSEYE -+ = bullseye - x (circled dot operator - 2299) - 0299 LATIN LETTER SMALL CAPITAL B - * bilabial trill - 029A LATIN SMALL LETTER CLOSED OPEN E -- = LATIN SMALL LETTER CLOSED EPSILON -+ = closed epsilon - * lower-mid front rounded vowel - * non-IPA alternate for the preferred 0153 - 029B LATIN LETTER SMALL CAPITAL G WITH HOOK -@@ -1962,7 +1995,9 @@ - x (double prime - 2033) - 02BB MODIFIER LETTER TURNED COMMA - * typographical alternate for 02BD or 02BF -+ * used in Hawai`ian orthography as `okina (glottal stop) - x (combining turned comma above - 0312) -+ x (nko low tone apostrophe - 07F5) - x (left single quotation mark - 2018) - 02BC MODIFIER LETTER APOSTROPHE - = apostrophe -@@ -1974,6 +2009,7 @@ - x (combining comma above - 0313) - x (combining comma above right - 0315) - x (armenian apostrophe - 055A) -+ x (nko high tone apostrophe - 07F4) - x (right single quotation mark - 2019) - 02BD MODIFIER LETTER REVERSED COMMA - * weak aspiration -@@ -2154,6 +2190,7 @@ - 02FE MODIFIER LETTER OPEN SHELF - 02FF MODIFIER LETTER LOW LEFT ARROW - @@ 0300 Combining Diacritical Marks 036F -+@@+ - @ Ordinary diacritics - 0300 COMBINING GRAVE ACCENT (Varia) - = Greek varia -@@ -2284,6 +2321,7 @@ - x (modifier letter small h with hook - 02B1) - 0325 COMBINING RING BELOW - * IPA: voiceless -+ * vocalic (in Latin transliteration of Indic sonorants) - * Madurese - 0326 COMBINING COMMA BELOW - * Romanian, Latvian, Livonian -@@ -2347,11 +2385,10 @@ - x (combining cyrillic palatalization - 0484) - 033F COMBINING DOUBLE OVERLINE - @ Vietnamese tone marks (deprecated) -+@+ Vietnamese-specific accent placement should be handled by specialized rendering of 0300 and 0301. - 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 combining acute accent - @ Additions for Greek - 0342 COMBINING GREEK PERISPOMENI -@@ -2361,7 +2398,7 @@ - * use of this character is discouraged - : 0308 0301 - 0345 COMBINING GREEK YPOGEGRAMMENI -- = GREEK NON-SPACING IOTA BELOW -+ = greek non-spacing iota below (1.0) - = iota subscript - * note special casing issues - x (greek ypogegrammeni - 037A) -@@ -2389,9 +2426,9 @@ - * IPA: whistled articulation - @ Grapheme joiner - 034F COMBINING GRAPHEME JOINER -- = CGJ -+ * commonly abbreviated as CGJ - * has no visible glyph -- * indicates that adjoining characters are to be treated as a graphemic unit -+ * the name of this character is misleading; it does not actually join graphemes - @ Additions for the Uralic Phonetic Alphabet - 0350 COMBINING RIGHT ARROWHEAD ABOVE - 0351 COMBINING LEFT HALF RING ABOVE -@@ -2405,6 +2442,7 @@ - 0358 COMBINING DOT ABOVE RIGHT - * Latin transliterations of the Southern Min dialects of Chinese - 0359 COMBINING ASTERISK BELOW -+ x (low asterisk - 204E) - 035A COMBINING DOUBLE RING BELOW - * Kharoshthi transliteration - 035B COMBINING ZIGZAG ABOVE -@@ -2439,7 +2477,7 @@ - 036E COMBINING LATIN SMALL LETTER V - 036F COMBINING LATIN SMALL LETTER X - @@ 0370 Greek and Coptic 03FF --@ Based on ISO 8859-7 -+@ Numeral signs - 0374 GREEK NUMERAL SIGN (Dexia keraia) - = dexia keraia - * indicates numeric use of letters -@@ -2449,28 +2487,38 @@ - = aristeri keraia - * indicates numeric use of letters - x (modifier letter low acute accent - 02CF) -+@ Iota subscript - 037A GREEK YPOGEGRAMMENI - = iota subscript - x (combining greek ypogegrammeni - 0345) - # 0020 0345 -+@ Lowercase of editorial symbols -+037B GREEK SMALL REVERSED LUNATE SIGMA SYMBOL -+037C GREEK SMALL DOTTED LUNATE SIGMA SYMBOL -+037D GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL -+@ Punctuation - 037E GREEK QUESTION MARK (Erotimatiko) - = erotimatiko - * sentence-final punctuation - * 003B is the preferred character - x (question mark - 003F) - : 003B semicolon -+@ Spacing accent marks - 0384 GREEK TONOS - x (acute accent - 00B4) - x (combining vertical line above - 030D) - # 0020 0301 - 0385 GREEK DIALYTIKA TONOS - : 00A8 0301 -+@ Letter - 0386 GREEK CAPITAL LETTER ALPHA WITH TONOS - : 0391 0301 -+@ Punctuation - 0387 GREEK ANO TELEIA - * functions in Greek like a semicolon - * 00B7 is the preferred character - : 00B7 middle dot -+@ Letters - 0388 GREEK CAPITAL LETTER EPSILON WITH TONOS - : 0395 0301 - 0389 GREEK CAPITAL LETTER ETA WITH TONOS -@@ -2489,6 +2537,7 @@ - 0392 GREEK CAPITAL LETTER BETA - 0393 GREEK CAPITAL LETTER GAMMA - = gamma function -+ x (double-struck capital gamma - 213E) - 0394 GREEK CAPITAL LETTER DELTA - x (increment - 2206) - 0395 GREEK CAPITAL LETTER EPSILON -@@ -2504,6 +2553,7 @@ - 039E GREEK CAPITAL LETTER XI - 039F GREEK CAPITAL LETTER OMICRON - 03A0 GREEK CAPITAL LETTER PI -+ x (double-struck capital pi - 213F) - x (n-ary product - 220F) - 03A1 GREEK CAPITAL LETTER RHO - 03A3 GREEK CAPITAL LETTER SIGMA -@@ -2539,6 +2589,7 @@ - x (latin small letter b with stroke - 0180) - 03B3 GREEK SMALL LETTER GAMMA - x (latin small letter gamma - 0263) -+ x (double-struck small gamma - 213D) - 03B4 GREEK SMALL LETTER DELTA - 03B5 GREEK SMALL LETTER EPSILON - x (latin small letter open e - 025B) -@@ -2591,27 +2642,24 @@ - : 03C9 0301 - @ Variant letterforms - 03D0 GREEK BETA SYMBOL -- = GREEK SMALL LETTER CURLED BETA -+ = curled beta - # 03B2 greek small letter beta - 03D1 GREEK THETA SYMBOL -- = GREEK SMALL LETTER SCRIPT THETA -+ = script theta - * used as a 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 -- = GREEK CAPITAL LETTER UPSILON HOOK TONOS - : 03D2 0301 - 03D4 GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL -- = GREEK CAPITAL LETTER UPSILON HOOK DIAERESIS - : 03D2 0308 - 03D5 GREEK PHI SYMBOL - * used as a technical symbol, with a stroked glyph - * maps to "phi1" symbol entities - # 03C6 greek small letter phi - 03D6 GREEK PI SYMBOL -- = GREEK SMALL LETTER OMEGA PI -+ = omega pi - * used as a technical symbol - * a variant of pi, looking like omega - # 03C0 greek small letter pi -@@ -2655,15 +2703,15 @@ - 03EF COPTIC SMALL LETTER DEI - @ Variant letterforms - 03F0 GREEK KAPPA SYMBOL -- = GREEK SMALL LETTER SCRIPT KAPPA -+ = script kappa - * used as technical symbol - # 03BA greek small letter kappa - 03F1 GREEK RHO SYMBOL -- = GREEK SMALL LETTER TAILED RHO -+ = tailed rho - * used as technical symbol - # 03C1 greek small letter rho - 03F2 GREEK LUNATE SIGMA SYMBOL -- = GREEK SMALL LETTER LUNATE SIGMA -+ = greek small letter lunate sigma (1.0) - # 03C2 greek small letter final sigma - @ Additional letter - 03F3 GREEK LETTER YOT -@@ -2838,7 +2886,7 @@ - * Macedonian - : 043A 0301 - 045D CYRILLIC SMALL LETTER I WITH GRAVE -- * Macedonian -+ * Macedonian, Bulgarian - : 0438 0300 - 045E CYRILLIC SMALL LETTER SHORT U (Byelorussian) - * Byelorussian, Uzbek -@@ -2876,13 +2924,14 @@ - 0477 CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT - : 0475 030F - 0478 CYRILLIC CAPITAL LETTER UK -- * basic Old Cyrillic uk is unified with CYRILLIC LETTER U -+ * basic Old Cyrillic uk is unified with cyrillic letter u - x (cyrillic capital letter u - 0423) - 0479 CYRILLIC SMALL LETTER UK - 047A CYRILLIC CAPITAL LETTER ROUND OMEGA - 047B CYRILLIC SMALL LETTER ROUND OMEGA - 047C CYRILLIC CAPITAL LETTER OMEGA WITH TITLO - 047D CYRILLIC SMALL LETTER OMEGA WITH TITLO -+ * the exact identity of these broad omegas is unclear and may require revision of glyphs - 047E CYRILLIC CAPITAL LETTER OT - 047F CYRILLIC SMALL LETTER OT - 0480 CYRILLIC CAPITAL LETTER KOPPA -@@ -2897,6 +2946,7 @@ - 0486 COMBINING CYRILLIC PSILI PNEUMATA - x (combining comma above - 0313) - 0488 COMBINING CYRILLIC HUNDRED THOUSANDS SIGN -+ * use 20DD for ten thousands sign - 0489 COMBINING CYRILLIC MILLIONS SIGN - @ Extended Cyrillic - 048A CYRILLIC CAPITAL LETTER SHORT I WITH TAIL -@@ -2924,7 +2974,7 @@ - 0498 CYRILLIC CAPITAL LETTER ZE WITH DESCENDER - 0499 CYRILLIC SMALL LETTER ZE WITH DESCENDER - * Bashkir -- * reversed ogonek form of the descender is preferred -+ * letterforms with right hooks are preferred, although occasional variants with left hooks occur - 049A CYRILLIC CAPITAL LETTER KA WITH DESCENDER - 049B CYRILLIC SMALL LETTER KA WITH DESCENDER - * Abkhasian, Tajik, ... -@@ -2951,7 +3001,8 @@ - 04AA CYRILLIC CAPITAL LETTER ES WITH DESCENDER - 04AB CYRILLIC SMALL LETTER ES WITH DESCENDER - * Bashkir, Chuvash -- * reversed ogonek form of the descender is preferred -+ * letterforms with right hooks are preferred, although occasional variants with left hooks occur -+ * in Chuvashia, letterforms identical to or similar in form to 00E7 regularly occur - 04AC CYRILLIC CAPITAL LETTER TE WITH DESCENDER - 04AD CYRILLIC SMALL LETTER TE WITH DESCENDER - * Abkhasian -@@ -2988,7 +3039,7 @@ - * ogonek form preferred - 04C0 CYRILLIC LETTER PALOCHKA - * aspiration sign in many Caucasian languages -- * has no "lowercase form", i.e. is case-invariant -+ * is usually not cased, but the formal lowercase is 04CF - x (latin capital letter i - 0049) - x (cyrillic capital letter byelorussian-ukrainian i - 0406) - 04C1 CYRILLIC CAPITAL LETTER ZHE WITH BREVE -@@ -3013,6 +3064,7 @@ - 04CD CYRILLIC CAPITAL LETTER EM WITH TAIL - 04CE CYRILLIC SMALL LETTER EM WITH TAIL - * Kildin Sami -+04CF CYRILLIC SMALL LETTER PALOCHKA - 04D0 CYRILLIC CAPITAL LETTER A WITH BREVE - : 0410 0306 - 04D1 CYRILLIC SMALL LETTER A WITH BREVE -@@ -3094,6 +3146,13 @@ - : 042B 0308 - 04F9 CYRILLIC SMALL LETTER YERU WITH DIAERESIS - : 044B 0308 -+@ Additions for Nivkh -+04FA CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK -+04FB CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK -+04FC CYRILLIC CAPITAL LETTER HA WITH HOOK -+04FD CYRILLIC SMALL LETTER HA WITH HOOK -+04FE CYRILLIC CAPITAL LETTER HA WITH STROKE -+04FF CYRILLIC SMALL LETTER HA WITH STROKE - @@ 0500 Cyrillic Supplement 052F - @ Komi letters - 0500 CYRILLIC CAPITAL LETTER KOMI DE -@@ -3112,6 +3171,13 @@ - 050D CYRILLIC SMALL LETTER KOMI SJE - 050E CYRILLIC CAPITAL LETTER KOMI TJE - 050F CYRILLIC SMALL LETTER KOMI TJE -+@ Cyrillic extensions -+0510 CYRILLIC CAPITAL LETTER REVERSED ZE -+0511 CYRILLIC SMALL LETTER REVERSED ZE -+ * Enets, Khanty -+0512 CYRILLIC CAPITAL LETTER EL WITH HOOK -+0513 CYRILLIC SMALL LETTER EL WITH HOOK -+ * Chukchi, Itelmen, Khanty - @@ 0530 Armenian 058F - @ Uppercase letters - 0531 ARMENIAN CAPITAL LETTER AYB -@@ -3158,7 +3224,7 @@ - x (modifier letter left half ring - 02BF) - x (combining reversed comma above - 0314) - 055A ARMENIAN APOSTROPHE -- = ARMENIAN MODIFIER LETTER RIGHT HALF RING -+ = armenian modifier letter right half ring (1.0) - x (modifier letter apostrophe - 02BC) - x (modifier letter right half ring - 02BE) - x (combining comma above - 0313) -@@ -3285,6 +3351,7 @@ - 05B8 HEBREW POINT QAMATS - x (hebrew point qamats qatan - 05C7) - 05B9 HEBREW POINT HOLAM -+05BA HEBREW POINT HOLAM HASER FOR VAV - 05BB HEBREW POINT QUBUTS - 05BC HEBREW POINT DAGESH OR MAPIQ (or shuruq) - = shuruq -@@ -3359,6 +3426,7 @@ - 05F3 HEBREW PUNCTUATION GERESH - 05F4 HEBREW PUNCTUATION GERSHAYIM - @@ 0600 Arabic 06FF -+@@+ - @ Subtending marks - 0600 ARABIC NUMBER SIGN - 0601 ARABIC SIGN SANAH -@@ -3458,6 +3526,7 @@ - 0652 ARABIC SUKUN - * marks absence of a vowel after the base consonant - * used in some Korans to mark a long vowel as ignored -+ * can have a variety of shapes, including a circular one and a shape that looks like '06E1' - x (arabic small high dotless head of khah - 06E1) - @ Combining maddah and hamza - 0653 ARABIC MADDAH ABOVE -@@ -3547,7 +3616,7 @@ - 0680 ARABIC LETTER BEHEH - * Sindhi - 0681 ARABIC LETTER HAH WITH HAMZA ABOVE -- * Pashto letter "zhe" -+ * Pashto letter "dze" - 0682 ARABIC LETTER HAH WITH TWO DOTS VERTICAL ABOVE - * not used in modern Pashto - 0683 ARABIC LETTER NYEH -@@ -3574,6 +3643,7 @@ - * Sindhi - 068E ARABIC LETTER DUL - * older shape for DUL, now obsolete in Sindhi -+ * Burushaski - 068F ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS - * Sindhi - * current shape used for DUL -@@ -3605,7 +3675,7 @@ - 069D ARABIC LETTER SAD WITH TWO DOTS BELOW - * Turkic - 069E ARABIC LETTER SAD WITH THREE DOTS ABOVE -- * Berber -+ * Berber, Burushaski - 069F ARABIC LETTER TAH WITH THREE DOTS ABOVE - * old Hausa - 06A0 ARABIC LETTER AIN WITH THREE DOTS ABOVE -@@ -3672,7 +3742,7 @@ - * forms aspirate digraphs - 06BF ARABIC LETTER TCHEH WITH DOT ABOVE - 06C0 ARABIC LETTER HEH WITH YEH ABOVE -- = ARABIC LETTER HAMZAH ON HA -+ = arabic letter hamzah on ha (1.0) - = izafet - * Urdu - * actually a ligature, not an independent letter -@@ -3739,9 +3809,11 @@ - 06DD ARABIC END OF AYAH - 06DE ARABIC START OF RUB EL HIZB - 06DF ARABIC SMALL HIGH ROUNDED ZERO -+ * smaller than the typical circular shape used for 0652 - 06E0 ARABIC SMALL HIGH UPRIGHT RECTANGULAR ZERO - 06E1 ARABIC SMALL HIGH DOTLESS HEAD OF KHAH - = Arabic jazm -+ * presentation form of 0652, using font technology to select the variant is preferred - * used in some Korans to mark absence of a vowel - x (arabic sukun - 0652) - 06E2 ARABIC SMALL HIGH MEEM ISOLATED FORM -@@ -3752,6 +3824,7 @@ - 06E7 ARABIC SMALL HIGH YEH - 06E8 ARABIC SMALL HIGH NOON - 06E9 ARABIC PLACE OF SAJDAH -+ * there is a range of acceptable glyphs for this character - 06EA ARABIC EMPTY CENTRE LOW STOP - 06EB ARABIC EMPTY CENTRE HIGH STOP - 06EC ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE -@@ -3906,7 +3979,7 @@ - 074E SYRIAC LETTER SOGDIAN KHAPH - 074F SYRIAC LETTER SOGDIAN FE - @@ 0750 Arabic Supplement 077F --@ Extended Arabic letters -+@ Extended Arabic letters - @+ These are primarily used in Arabic-script orthographies of African languages. - 0750 ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW - 0751 ARABIC LETTER BEH WITH DOT BELOW AND THREE DOTS ABOVE -@@ -3932,7 +4005,7 @@ - * old Malay, preferred to 06AC - x (arabic letter kaf with dot above - 06AC) - 0763 ARABIC LETTER KEHEH WITH THREE DOTS ABOVE -- * Moroccan Arabic, Amazigh -+ * Moroccan Arabic, Amazigh, Burushaski - x (arabic letter ng - 06AD) - 0764 ARABIC LETTER KEHEH WITH THREE DOTS POINTING UPWARDS BELOW - 0765 ARABIC LETTER MEEM WITH DOT ABOVE -@@ -4005,7 +4078,86 @@ - 07B0 THAANA SUKUN - @ Consonant for Addu dialect - 07B1 THAANA LETTER NAA -+@@ 07C0 NKo 07FF -+@ Digits -+07C0 NKO DIGIT ZERO -+07C1 NKO DIGIT ONE -+07C2 NKO DIGIT TWO -+07C3 NKO DIGIT THREE -+07C4 NKO DIGIT FOUR -+07C5 NKO DIGIT FIVE -+07C6 NKO DIGIT SIX -+07C7 NKO DIGIT SEVEN -+07C8 NKO DIGIT EIGHT -+07C9 NKO DIGIT NINE -+@ Letters -+07CA NKO LETTER A -+07CB NKO LETTER EE -+07CC NKO LETTER I -+07CD NKO LETTER E -+07CE NKO LETTER U -+07CF NKO LETTER OO -+07D0 NKO LETTER O -+07D1 NKO LETTER DAGBASINNA -+07D2 NKO LETTER N -+07D3 NKO LETTER BA -+07D4 NKO LETTER PA -+07D5 NKO LETTER TA -+07D6 NKO LETTER JA -+07D7 NKO LETTER CHA -+07D8 NKO LETTER DA -+07D9 NKO LETTER RA -+07DA NKO LETTER RRA -+07DB NKO LETTER SA -+07DC NKO LETTER GBA -+07DD NKO LETTER FA -+07DE NKO LETTER KA -+07DF NKO LETTER LA -+07E0 NKO LETTER NA WOLOSO -+07E1 NKO LETTER MA -+07E2 NKO LETTER NYA -+07E3 NKO LETTER NA -+07E4 NKO LETTER HA -+07E5 NKO LETTER WA -+07E6 NKO LETTER YA -+07E7 NKO LETTER NYA WOLOSO -+@ Archaic letters -+07E8 NKO LETTER JONA JA -+07E9 NKO LETTER JONA CHA -+07EA NKO LETTER JONA RA -+ x (nko letter ra - 07D9) -+@ Tone marks -+07EB NKO COMBINING SHORT HIGH TONE -+ x (combining macron - 0304) -+07EC NKO COMBINING SHORT LOW TONE -+ x (combining tilde - 0303) -+07ED NKO COMBINING SHORT RISING TONE -+ x (combining dot above - 0307) -+07EE NKO COMBINING LONG DESCENDING TONE -+ x (combining circumflex accent - 0302) -+07EF NKO COMBINING LONG HIGH TONE -+07F0 NKO COMBINING LONG LOW TONE -+07F1 NKO COMBINING LONG RISING TONE -+07F2 NKO COMBINING NASALIZATION MARK -+ x (combining dot below - 0323) -+07F3 NKO COMBINING DOUBLE DOT ABOVE -+ x (combining diaeresis - 0308) -+07F4 NKO HIGH TONE APOSTROPHE -+ x (modifier letter apostrophe - 02BC) -+07F5 NKO LOW TONE APOSTROPHE -+ x (modifier letter turned comma - 02BB) -+@ Symbol -+07F6 NKO SYMBOL OO DENNEN -+@ Punctuation -+07F7 NKO SYMBOL GBAKURUNEN -+07F8 NKO COMMA -+07F9 NKO EXCLAMATION MARK -+@ Letter extender -+07FA NKO LAJANYALAN -+ x (low line - 005F) -+ x (arabic tatweel - 0640) - @@ 0900 Devanagari 097F -+@@+ - @ Based on ISCII 1988 - @ Various signs - 0901 DEVANAGARI SIGN CANDRABINDU -@@ -4130,11 +4282,13 @@ - : 092B 093C - 095F DEVANAGARI LETTER YYA - : 092F 093C --@ Generic additions -+@ Additional vowels for Sanskrit - 0960 DEVANAGARI LETTER VOCALIC RR - 0961 DEVANAGARI LETTER VOCALIC LL - 0962 DEVANAGARI VOWEL SIGN VOCALIC L - 0963 DEVANAGARI VOWEL SIGN VOCALIC LL -+@ Generic punctuation for scripts of India -+@+ Note that despite the fact that these characters have "DEVANAGARI" in their names, these punctuation marks are intended for common use for the scripts of India. - 0964 DEVANAGARI DANDA - = purna viram - * phrase separator -@@ -4153,10 +4307,18 @@ - 096F DEVANAGARI DIGIT NINE - @ Devanagari-specific additions - 0970 DEVANAGARI ABBREVIATION SIGN -+@ Sindhi implosives -+@+ These are added from Amendment 3 to 10646:2003. -+097B DEVANAGARI LETTER GGA -+097C DEVANAGARI LETTER JJA - @ Glottal stop - 097D DEVANAGARI LETTER GLOTTAL STOP - * used for writing Limbu in Devanagari - * a glyph variant has the connecting top bar -+@ Sindhi implosives -+@+ These are added from Amendment 3 to 10646:2003. -+097E DEVANAGARI LETTER DDDA -+097F DEVANAGARI LETTER BBA - @@ 0980 Bengali 09FF - @ Based on ISCII 1988 - @ Various signs -@@ -4247,11 +4409,17 @@ - : 09A2 09BC - 09DF BENGALI LETTER YYA - : 09AF 09BC --@ Generic additions -+@ Additional vowels for Sanskrit - 09E0 BENGALI LETTER VOCALIC RR - 09E1 BENGALI LETTER VOCALIC LL - 09E2 BENGALI VOWEL SIGN VOCALIC L - 09E3 BENGALI VOWEL SIGN VOCALIC LL -+@ Reserved -+@+ For viram punctuation, use the generic Indic 0964 and 0965. -+09E4 -+ x (devanagari danda - 0964) -+09E5 -+ x (devanagari double danda - 0965) - @ Digits - 09E6 BENGALI DIGIT ZERO - 09E7 BENGALI DIGIT ONE -@@ -4267,7 +4435,7 @@ - 09F0 BENGALI LETTER RA WITH MIDDLE DIAGONAL (Assamese) - * Assamese - 09F1 BENGALI LETTER RA WITH LOWER DIAGONAL (Assamese) -- = BENGALI LETTER VA WITH LOWER DIAGONAL -+ = bengali letter va with lower diagonal (1.0) - * Assamese - 09F2 BENGALI RUPEE MARK - 09F3 BENGALI RUPEE SIGN -@@ -4289,6 +4457,7 @@ - 0A03 GURMUKHI SIGN VISARGA - @ Independent vowels - 0A05 GURMUKHI LETTER A -+ = aira - 0A06 GURMUKHI LETTER AA - 0A07 GURMUKHI LETTER I - 0A08 GURMUKHI LETTER II -@@ -4336,18 +4505,28 @@ - 0A39 GURMUKHI LETTER HA - @ Various signs - 0A3C GURMUKHI SIGN NUKTA -+ = pairin bindi - * for extending the alphabet to new letters - @ Dependent vowel signs - 0A3E GURMUKHI VOWEL SIGN AA -+ = kanna - 0A3F GURMUKHI VOWEL SIGN I -+ = sihari - * stands to the left of the consonant - 0A40 GURMUKHI VOWEL SIGN II -+ = bihari - 0A41 GURMUKHI VOWEL SIGN U -+ = aunkar - 0A42 GURMUKHI VOWEL SIGN UU -+ = dulainkar - 0A47 GURMUKHI VOWEL SIGN EE -+ = lanvan - 0A48 GURMUKHI VOWEL SIGN AI -+ = dulanvan - 0A4B GURMUKHI VOWEL SIGN OO -+ = hora - 0A4C GURMUKHI VOWEL SIGN AU -+ = kanaura - @ Various signs - 0A4D GURMUKHI SIGN VIRAMA - @ Additional consonants -@@ -4360,6 +4539,12 @@ - 0A5C GURMUKHI LETTER RRA - 0A5E GURMUKHI LETTER FA - : 0A2B 0A3C -+@ Reserved -+@+ For viram punctuation, use the generic Indic 0964 and 0965. -+0A64 -+ x (devanagari danda - 0964) -+0A65 -+ x (devanagari double danda - 0965) - @ Digits - 0A66 GURMUKHI DIGIT ZERO - 0A67 GURMUKHI DIGIT ONE -@@ -4461,12 +4646,17 @@ - @ Various signs - 0ACD GUJARATI SIGN VIRAMA - 0AD0 GUJARATI OM --@ Generic addition -+@ Additional vowels for Sanskrit - 0AE0 GUJARATI LETTER VOCALIC RR --@ Additions for use with Sanskrit text - 0AE1 GUJARATI LETTER VOCALIC LL - 0AE2 GUJARATI VOWEL SIGN VOCALIC L - 0AE3 GUJARATI VOWEL SIGN VOCALIC LL -+@ Reserved -+@+ For viram punctuation, use the generic Indic 0964 and 0965. -+0AE4 -+ x (devanagari danda - 0964) -+0AE5 -+ x (devanagari double danda - 0965) - @ Digits - 0AE6 GUJARATI DIGIT ZERO - 0AE7 GUJARATI DIGIT ONE -@@ -4572,9 +4762,15 @@ - : 0B22 0B3C - 0B5F ORIYA LETTER YYA - = ya --@ Generic additions -+@ Additional vowels for Sanskrit - 0B60 ORIYA LETTER VOCALIC RR - 0B61 ORIYA LETTER VOCALIC LL -+@ Reserved -+@+ For viram punctuation, use the generic Indic 0964 and 0965. -+0B64 -+ x (devanagari danda - 0964) -+0B65 -+ x (devanagari double danda - 0965) - @ Digits - 0B66 ORIYA DIGIT ZERO - 0B67 ORIYA DIGIT ONE -@@ -4659,6 +4855,12 @@ - @ Various signs - 0BCD TAMIL SIGN VIRAMA - 0BD7 TAMIL AU LENGTH MARK -+@ Reserved -+@+ For viram punctuation, use the generic Indic 0964 and 0965. -+0BE4 -+ x (devanagari danda - 0964) -+0BE5 -+ x (devanagari double danda - 0965) - @ Digits - 0BE6 TAMIL DIGIT ZERO - 0BE7 TAMIL DIGIT ONE -@@ -4763,9 +4965,15 @@ - = halant (the preferred name) - 0C55 TELUGU LENGTH MARK - 0C56 TELUGU AI LENGTH MARK --@ Generic additions -+@ Additional vowels for Sanskrit - 0C60 TELUGU LETTER VOCALIC RR - 0C61 TELUGU LETTER VOCALIC LL -+@ Reserved -+@+ For viram punctuation, use the generic Indic 0964 and 0965. -+0C64 -+ x (devanagari danda - 0964) -+0C65 -+ x (devanagari double danda - 0965) - @ Digits - 0C66 TELUGU DIGIT ZERO - 0C67 TELUGU DIGIT ONE -@@ -4855,18 +5063,28 @@ - 0CCB KANNADA VOWEL SIGN OO - : 0CCA 0CD5 - 0CCC KANNADA VOWEL SIGN AU --@ Various signs -+@ Sign - 0CCD KANNADA SIGN VIRAMA - * preferred name is halant -+@ Various signs - 0CD5 KANNADA LENGTH MARK - 0CD6 KANNADA AI LENGTH MARK - @ Additional consonants - 0CDE KANNADA LETTER FA -+ % KANNADA LETTER LLLA - * obsolete historic letter - * name is a mistake for LLLA --@ Generic additions -+@ Additional vowels for Sanskrit - 0CE0 KANNADA LETTER VOCALIC RR - 0CE1 KANNADA LETTER VOCALIC LL -+0CE2 KANNADA VOWEL SIGN VOCALIC L -+0CE3 KANNADA VOWEL SIGN VOCALIC LL -+@ Reserved -+@+ For viram punctuation, use the generic Indic 0964 and 0965. -+0CE4 -+ x (devanagari danda - 0964) -+0CE5 -+ x (devanagari double danda - 0965) - @ Digits - 0CE6 KANNADA DIGIT ZERO - 0CE7 KANNADA DIGIT ONE -@@ -4878,6 +5096,9 @@ - 0CED KANNADA DIGIT SEVEN - 0CEE KANNADA DIGIT EIGHT - 0CEF KANNADA DIGIT NINE -+@ Various signs -+0CF1 KANNADA SIGN JIHVAMULIYA -+0CF2 KANNADA SIGN UPADHMANIYA - @@ 0D00 Malayalam 0D7F - @ Based on ISCII 1988 - @ Various signs -@@ -4971,16 +5192,25 @@ - 0D4B MALAYALAM VOWEL SIGN OO - : 0D47 0D3E - 0D4C MALAYALAM VOWEL SIGN AU -+ * archaic form of the /au/ dependent vowel -+ x (malayalam au length mark - 0D57) - : 0D46 0D57 - @ Various signs - 0D4D MALAYALAM SIGN VIRAMA - = chandrakkala (the preferred name) - = vowel half-u - 0D57 MALAYALAM AU LENGTH MARK -- * only a representation of the right half of 0D4C --@ Generic additions -+ * used alone to write the /au/ dependent vowel in modern texts -+ x (malayalam vowel sign au - 0D4C) -+@ Additional vowels for Sanskrit - 0D60 MALAYALAM LETTER VOCALIC RR - 0D61 MALAYALAM LETTER VOCALIC LL -+@ Reserved -+@+ For viram punctuation, use the generic Indic 0964 and 0965. -+0D64 -+ x (devanagari danda - 0964) -+0D65 -+ x (devanagari double danda - 0965) - @ Digits - 0D66 MALAYALAM DIGIT ZERO - 0D67 MALAYALAM DIGIT ONE -@@ -5171,6 +5401,7 @@ - @ Punctuation - 0DF4 SINHALA PUNCTUATION KUNDDALIYA - @@ 0E00 Thai 0E7F -+@@+ - @ Based on TIS 620-2533 - @ Consonants - 0E01 THAI CHARACTER KO KAI -@@ -5297,35 +5528,68 @@ - * used to mark end of chapter or document - x (khmer sign koomuut - 17DA) - @@ 0E80 Lao 0EFF --@ Based on TIS 620-2529 - @ Consonants - 0E81 LAO LETTER KO -+ = ko kay - 0E82 LAO LETTER KHO SUNG -+ = kho khay - 0E84 LAO LETTER KHO TAM -+ = kho khuay - 0E87 LAO LETTER NGO -+ = ngo ngu, ngo ngua - 0E88 LAO LETTER CO -+ = co cok, co cua - 0E8A LAO LETTER SO TAM -+ = so sang - 0E8D LAO LETTER NYO -+ = nyo nyung - 0E94 LAO LETTER DO -+ = do dek - 0E95 LAO LETTER TO -+ = to ta - 0E96 LAO LETTER THO SUNG -+ = tho thong - 0E97 LAO LETTER THO TAM -+ = tho thung - 0E99 LAO LETTER NO -+ = no nok - 0E9A LAO LETTER BO -+ = bo be, bo bet - 0E9B LAO LETTER PO -+ = po pa - 0E9C LAO LETTER PHO SUNG -+ = pho pheng - 0E9D LAO LETTER FO TAM -+ % LAO LETTER FO FON -+ = fo fa -+ * name is a mistake for fo sung - 0E9E LAO LETTER PHO TAM -+ = pho phu - 0E9F LAO LETTER FO SUNG -+ % LAO LETTER FO FAY -+ * name is a mistake for fo tam - 0EA1 LAO LETTER MO -+ = mo mew, mo ma - 0EA2 LAO LETTER YO -+ = yo ya - 0EA3 LAO LETTER LO LING -+ % LAO LETTER RO -+ = ro rot -+ * name is a mistake, lo ling is the mnemonic for 0EA5 - 0EA5 LAO LETTER LO LOOT -+ % LAO LETTER LO -+ = lo ling -+ * name is a mistake, lo loot is the mnemonic for 0EA3 - 0EA7 LAO LETTER WO -+ = wo wi - 0EAA LAO LETTER SO SUNG -+ = so sya - 0EAB LAO LETTER HO SUNG -+ = ho hay, ho han - 0EAD LAO LETTER O -+ = o o - 0EAE LAO LETTER HO TAM -+ = ho hya, ho hyan - @ Sign - 0EAF LAO ELLIPSIS - @ Vowels -@@ -5342,15 +5606,19 @@ - 0EB8 LAO VOWEL SIGN U - 0EB9 LAO VOWEL SIGN UU - 0EBB LAO VOWEL SIGN MAI KON -+ = mai kong - @ Signs - 0EBC LAO SEMIVOWEL SIGN LO - 0EBD LAO SEMIVOWEL SIGN NYO -+ = nyo fyang - @ Vowels - 0EC0 LAO VOWEL SIGN E - 0EC1 LAO VOWEL SIGN EI - 0EC2 LAO VOWEL SIGN O - 0EC3 LAO VOWEL SIGN AY -+ = mai muan - 0EC4 LAO VOWEL SIGN AI -+ = mai may - @ Sign - 0EC6 LAO KO LA - * repetition -@@ -5362,7 +5630,7 @@ - @ Signs - 0ECC LAO CANCELLATION MARK - 0ECD LAO NIGGAHITA -- * final nasal -+ * final nasal or long o vowel - @ Digits - 0ED0 LAO DIGIT ZERO - 0ED1 LAO DIGIT ONE -@@ -5684,6 +5952,7 @@ - 0FCF TIBETAN SIGN RDEL NAG GSUM (dena sum) - @ Marks - 0FD0 TIBETAN MARK BSKA- SHOG GI MGO RGYAN (ka shog gi go gyen) -+ % TIBETAN MARK BKA- SHOG GI MGO RGYAN - * used in Bhutan - 0FD1 TIBETAN MARK MNYAM YIG GI MGO RGYAN (nyam yig gi go gyen) - * used in Bhutan -@@ -6189,6 +6458,7 @@ - 11F8 HANGUL JONGSEONG HIEUH-PIEUP - 11F9 HANGUL JONGSEONG YEORINHIEUH - @@ 1200 Ethiopic 137F -+@@+ - @ Syllables - 1200 ETHIOPIC SYLLABLE HA - 1201 ETHIOPIC SYLLABLE HU -@@ -6551,7 +6821,7 @@ - 137B ETHIOPIC NUMBER HUNDRED - 137C ETHIOPIC NUMBER TEN THOUSAND - @@ 1380 Ethiopic Supplement 139F --@ Syllables for Sebatbeit -+@ Syllables for Sebatbeit - 1380 ETHIOPIC SYLLABLE SEBATBEIT MWA - 1381 ETHIOPIC SYLLABLE MWI - 1382 ETHIOPIC SYLLABLE MWEE -@@ -6568,7 +6838,7 @@ - 138D ETHIOPIC SYLLABLE PWI - 138E ETHIOPIC SYLLABLE PWEE - 138F ETHIOPIC SYLLABLE PWE --@ Tonal Marks -+@ Tonal marks - @+ Intended for use with a multiline scored layout - 1390 ETHIOPIC TONAL MARK YIZET - 1391 ETHIOPIC TONAL MARK DERET -@@ -7852,6 +8122,7 @@ - 17F8 KHMER SYMBOL LEK ATTAK PRAM-BEI - 17F9 KHMER SYMBOL LEK ATTAK PRAM-BUON - @@ 1800 Mongolian 18AF -+@@+ - @ Punctuation - 1800 MONGOLIAN BIRGA - x (tibetan mark initial yig mgo mdun ma - 0F04) -@@ -7870,13 +8141,13 @@ - 180A MONGOLIAN NIRUGU - @ Format controls - 180B MONGOLIAN FREE VARIATION SELECTOR ONE -- = FVS1 -+ * abbreviated FVS1 - 180C MONGOLIAN FREE VARIATION SELECTOR TWO -- = FVS2 -+ * abbreviated FVS2 - 180D MONGOLIAN FREE VARIATION SELECTOR THREE -- = FVS3 -+ * abbreviated FVS3 - 180E MONGOLIAN VOWEL SEPARATOR -- = MVS -+ * abbreviated MVS - @ Digits - 1810 MONGOLIAN DIGIT ZERO - 1811 MONGOLIAN DIGIT ONE -@@ -8131,6 +8402,7 @@ - 194E LIMBU DIGIT EIGHT - 194F LIMBU DIGIT NINE - @@ 1950 Tai Le 197F -+@+ Note the similarly named but distinct New Tai Lue script encoded at U+1980..U+19DF. - @ Consonants - 1950 TAI LE LETTER KA - 1951 TAI LE LETTER XA -@@ -8170,7 +8442,7 @@ - 1973 TAI LE LETTER TONE-5 - 1974 TAI LE LETTER TONE-6 - @@ 1980 New Tai Lue 19DF --@+ This script is also known as Xishuang Banna Dai. -+@+ Note the similarly named but distinct Tai Le script encoded at U+1950..U+197F. The New Tai Lue script is also known as Xishuang Banna Dai. - @ Consonants - 1980 NEW TAI LUE LETTER HIGH QA - 1981 NEW TAI LUE LETTER LOW QA -@@ -8299,7 +8571,7 @@ - 19FF KHMER SYMBOL DAP-PRAM ROC - @@ 1A00 Buginese 1A1F - @+ This script is also known as Lontara. --@ Consonants -+@ Consonants - 1A00 BUGINESE LETTER KA - 1A01 BUGINESE LETTER GA - 1A02 BUGINESE LETTER NGA -@@ -8323,19 +8595,224 @@ - 1A14 BUGINESE LETTER SA - 1A15 BUGINESE LETTER A - 1A16 BUGINESE LETTER HA --@ Vowels -+@ Vowels - 1A17 BUGINESE VOWEL SIGN I - 1A18 BUGINESE VOWEL SIGN U - 1A19 BUGINESE VOWEL SIGN E - 1A1A BUGINESE VOWEL SIGN O - 1A1B BUGINESE VOWEL SIGN AE --@ Various signs -+@ Various signs - 1A1E BUGINESE PALLAWA - 1A1F BUGINESE END OF SECTION -+@@ 1B00 Balinese 1B7F -+@ Various signs -+1B00 BALINESE SIGN ULU RICEM (ardhacandra) -+ = ardhacandra -+1B01 BALINESE SIGN ULU CANDRA (candrabindu) -+ = candrabindu -+1B02 BALINESE SIGN CECEK (anusvara) -+ = anusvara -+1B03 BALINESE SIGN SURANG (repha) -+ = repha -+1B04 BALINESE SIGN BISAH (visarga) -+ = visarga -+@ Independent vowels -+1B05 BALINESE LETTER AKARA (a) -+ = a -+1B06 BALINESE LETTER AKARA TEDUNG (aa) -+ = aa -+ : 1B05 1B35 -+1B07 BALINESE LETTER IKARA (i) -+ = i -+1B08 BALINESE LETTER IKARA TEDUNG (ii) -+ = ii -+ : 1B07 1B35 -+1B09 BALINESE LETTER UKARA (u) -+ = u -+1B0A BALINESE LETTER UKARA TEDUNG (uu) -+ = uu -+ : 1B09 1B35 -+1B0B BALINESE LETTER RA REPA (vocalic r) -+ = vocalic r -+1B0C BALINESE LETTER RA REPA TEDUNG (vocalic rr) -+ = vocalic rr -+ : 1B0B 1B35 -+1B0D BALINESE LETTER LA LENGA (vocalic l) -+ = vocalic l -+1B0E BALINESE LETTER LA LENGA TEDUNG (vocalic ll) -+ = vocalic ll -+ : 1B0D 1B35 -+1B0F BALINESE LETTER EKARA (e) -+ = e -+1B10 BALINESE LETTER AIKARA (ai) -+ = ai -+1B11 BALINESE LETTER OKARA (o) -+ = o -+1B12 BALINESE LETTER OKARA TEDUNG (au) -+ = au -+ : 1B11 1B35 -+@ Consonants -+1B13 BALINESE LETTER KA -+1B14 BALINESE LETTER KA MAHAPRANA (kha) -+ = kha -+1B15 BALINESE LETTER GA -+1B16 BALINESE LETTER GA GORA (gha) -+ = gha -+1B17 BALINESE LETTER NGA -+1B18 BALINESE LETTER CA -+1B19 BALINESE LETTER CA LACA (cha) -+ = cha -+1B1A BALINESE LETTER JA -+1B1B BALINESE LETTER JA JERA (jha) -+ = jha -+1B1C BALINESE LETTER NYA -+1B1D BALINESE LETTER TA LATIK (tta) -+ = tta -+1B1E BALINESE LETTER TA MURDA MAHAPRANA (ttha) -+ = ttha -+1B1F BALINESE LETTER DA MURDA ALPAPRANA (dda) -+ = dda -+1B20 BALINESE LETTER DA MURDA MAHAPRANA (ddha) -+ = ddha -+1B21 BALINESE LETTER NA RAMBAT (nna) -+ = nna -+1B22 BALINESE LETTER TA -+1B23 BALINESE LETTER TA TAWA (tha) -+ = tha -+1B24 BALINESE LETTER DA -+1B25 BALINESE LETTER DA MADU (dha) -+ = dha -+1B26 BALINESE LETTER NA -+1B27 BALINESE LETTER PA -+1B28 BALINESE LETTER PA KAPAL (pha) -+ = pha -+1B29 BALINESE LETTER BA -+1B2A BALINESE LETTER BA KEMBANG (bha) -+ = bha -+1B2B BALINESE LETTER MA -+1B2C BALINESE LETTER YA -+1B2D BALINESE LETTER RA -+1B2E BALINESE LETTER LA -+1B2F BALINESE LETTER WA -+1B30 BALINESE LETTER SA SAGA (sha) -+ = sha -+1B31 BALINESE LETTER SA SAPA (ssa) -+ = ssa -+1B32 BALINESE LETTER SA -+1B33 BALINESE LETTER HA -+@ Sign -+1B34 BALINESE SIGN REREKAN (nukta) -+ = nukta -+@ Dependent vowel signs -+1B35 BALINESE VOWEL SIGN TEDUNG (aa) -+ = aa -+1B36 BALINESE VOWEL SIGN ULU (i) -+ = i -+1B37 BALINESE VOWEL SIGN ULU SARI (ii) -+ = ii -+1B38 BALINESE VOWEL SIGN SUKU (u) -+ = u -+1B39 BALINESE VOWEL SIGN SUKU ILUT (uu) -+ = uu -+1B3A BALINESE VOWEL SIGN RA REPA (vocalic r) -+ = vocalic r -+1B3B BALINESE VOWEL SIGN RA REPA TEDUNG (vocalic rr) -+ = vocalic rr -+ : 1B3A 1B35 -+1B3C BALINESE VOWEL SIGN LA LENGA (vocalic l) -+ = vocalic l -+1B3D BALINESE VOWEL SIGN LA LENGA TEDUNG (vocalic ll) -+ = vocalic ll -+ : 1B3C 1B35 -+1B3E BALINESE VOWEL SIGN TALING (e) -+ = e -+1B3F BALINESE VOWEL SIGN TALING REPA (ai) -+ = ai -+1B40 BALINESE VOWEL SIGN TALING TEDUNG (o) -+ = o -+ : 1B3E 1B35 -+1B41 BALINESE VOWEL SIGN TALING REPA TEDUNG (au) -+ = au -+ : 1B3F 1B35 -+1B42 BALINESE VOWEL SIGN PEPET (ae) -+ = ae -+1B43 BALINESE VOWEL SIGN PEPET TEDUNG (oe) -+ = oe -+ : 1B42 1B35 -+@ Sign -+1B44 BALINESE ADEG ADEG (virama) -+ = virama -+@ Additional consonants -+1B45 BALINESE LETTER KAF SASAK -+1B46 BALINESE LETTER KHOT SASAK -+1B47 BALINESE LETTER TZIR SASAK -+1B48 BALINESE LETTER EF SASAK -+1B49 BALINESE LETTER VE SASAK -+1B4A BALINESE LETTER ZAL SASAK -+1B4B BALINESE LETTER ASYURA SASAK -+@ Digits -+1B50 BALINESE DIGIT ZERO -+1B51 BALINESE DIGIT ONE -+1B52 BALINESE DIGIT TWO -+1B53 BALINESE DIGIT THREE -+1B54 BALINESE DIGIT FOUR -+1B55 BALINESE DIGIT FIVE -+1B56 BALINESE DIGIT SIX -+1B57 BALINESE DIGIT SEVEN -+1B58 BALINESE DIGIT EIGHT -+1B59 BALINESE DIGIT NINE -+@ Punctuation -+1B5A BALINESE PANTI (section) -+ = section -+1B5B BALINESE PAMADA (honorific section) -+ = honorific section -+1B5C BALINESE WINDU (punctuation ring) -+ = punctuation ring -+1B5D BALINESE CARIK PAMUNGKAH (colon) -+ = colon -+1B5E BALINESE CARIK SIKI (danda) -+ = danda -+ x (devanagari danda - 0964) -+1B5F BALINESE CARIK PAREREN (double danda) -+ = double danda -+ x (devanagari double danda - 0965) -+1B60 BALINESE PAMENENG (line-breaking hyphen) -+ = line-breaking hyphen -+@ Musical symbols for notes -+1B61 BALINESE MUSICAL SYMBOL DONG -+1B62 BALINESE MUSICAL SYMBOL DENG -+1B63 BALINESE MUSICAL SYMBOL DUNG -+1B64 BALINESE MUSICAL SYMBOL DANG -+1B65 BALINESE MUSICAL SYMBOL DANG SURANG -+1B66 BALINESE MUSICAL SYMBOL DING -+1B67 BALINESE MUSICAL SYMBOL DAENG -+1B68 BALINESE MUSICAL SYMBOL DEUNG -+1B69 BALINESE MUSICAL SYMBOL DAING -+1B6A BALINESE MUSICAL SYMBOL DANG GEDE -+@ Diacritical marks for musical symbols -+1B6B BALINESE MUSICAL SYMBOL COMBINING TEGEH -+1B6C BALINESE MUSICAL SYMBOL COMBINING ENDEP -+1B6D BALINESE MUSICAL SYMBOL COMBINING KEMPUL -+1B6E BALINESE MUSICAL SYMBOL COMBINING KEMPLI -+1B6F BALINESE MUSICAL SYMBOL COMBINING JEGOGAN -+1B70 BALINESE MUSICAL SYMBOL COMBINING KEMPUL WITH JEGOGAN -+1B71 BALINESE MUSICAL SYMBOL COMBINING KEMPLI WITH JEGOGAN -+1B72 BALINESE MUSICAL SYMBOL COMBINING BENDE -+1B73 BALINESE MUSICAL SYMBOL COMBINING GONG -+@ Musical symbols -+1B74 BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG -+1B75 BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DAG -+1B76 BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TUK -+1B77 BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TAK -+1B78 BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PANG -+1B79 BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PUNG -+1B7A BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLAK -+1B7B BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLUK -+1B7C BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING - @@ 1D00 Phonetic Extensions 1D7F - @+ These are non-IPA phonetic extensions, mostly for the Uralic Phonetic Alphabet (UPA). --@+ The small capitals, superscript, and subscript forms are for phonetic representations where style variations are semantically important. --@+ For general text, use regular Latin, Greek or Cyrillic letters with markup instead. -+@+ The small capitals, superscript, and subscript forms are for phonetic representations where style variations are semantically important. -+@+ For general text, use regular Latin, Greek or Cyrillic letters with markup instead. - @ Latin letters - 1D00 LATIN LETTER SMALL CAPITAL A - 1D01 LATIN LETTER SMALL CAPITAL AE -@@ -8544,6 +9021,7 @@ - 1D79 LATIN SMALL LETTER INSULAR G - * older Irish phonetic notation - x (latin small letter g - 0067) -+ x (latin small letter yogh - 021D) - x (latin small letter script g - 0261) - x (latin small letter gamma - 0263) - 1D7A LATIN SMALL LETTER TH WITH STRIKETHROUGH -@@ -8555,6 +9033,7 @@ - * used by Russianists - 1D7D LATIN SMALL LETTER P WITH STROKE - * used by Americanists -+ * uppercase is 2C63 - 1D7E LATIN SMALL CAPITAL LETTER U WITH STROKE - * used by Americanists - 1D7F LATIN SMALL LETTER UPSILON WITH STROKE -@@ -8608,7 +9087,7 @@ - 1D99 LATIN SMALL LETTER U WITH RETROFLEX HOOK - 1D9A LATIN SMALL LETTER EZH WITH RETROFLEX HOOK - @ Modifier letters --@+ Other modifier letters can be found in the Spacing Modifer Letters, Phonetic Extensions, as well as Superscripts and Subscripts blocks. -+@+ Other modifier letters can be found in the Spacing Modifier Letters, Phonetic Extensions, as well as Superscripts and Subscripts blocks. - 1D9B MODIFIER LETTER SMALL TURNED ALPHA - # 0252 - 1D9C MODIFIER LETTER SMALL C -@@ -8685,6 +9164,7 @@ - # 03B8 - @@ 1DC0 Combining Diacritical Marks Supplement 1DFF - @ Used for Ancient Greek -+@+ These are used as editorial signs for Ancient Greek to indicate scribal deletion of erroneous accent marks. - 1DC0 COMBINING DOTTED GRAVE ACCENT - x (greek dialytika and varia - 1FED) - 1DC1 COMBINING DOTTED ACUTE ACCENT -@@ -8695,6 +9175,18 @@ - 1DC3 COMBINING SUSPENSION MARK - * Glagolitic - x (combining breve - 0306) -+@ Contour tone marks -+1DC4 COMBINING MACRON-ACUTE -+1DC5 COMBINING GRAVE-MACRON -+1DC6 COMBINING MACRON-GRAVE -+1DC7 COMBINING ACUTE-MACRON -+1DC8 COMBINING GRAVE-ACUTE-GRAVE -+1DC9 COMBINING ACUTE-GRAVE-ACUTE -+@ Miscellaneous mark -+1DCA COMBINING LATIN SMALL LETTER R BELOW -+@ Additional marks for UPA -+1DFE COMBINING LEFT ARROWHEAD ABOVE -+1DFF COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW - @@ 1E00 Latin Extended Additional 1EFF - @+ In this block the names "WITH LINE BELOW" refer to a macron below the letter. - @ Latin general use extensions -@@ -8818,6 +9310,8 @@ - : 004C 0323 - 1E37 LATIN SMALL LETTER L WITH DOT BELOW - * Indic transliteration -+ * see ISO 15919 on the use of dot below versus ring below in Indic transliteration -+ x (combining ring below - 0325) - : 006C 0323 - 1E38 LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON - : 1E36 0304 -@@ -8899,6 +9393,8 @@ - : 0052 0323 - 1E5B LATIN SMALL LETTER R WITH DOT BELOW - * Indic transliteration -+ * see ISO 15919 on the use of dot below versus ring below in Indic transliteration -+ x (combining ring below - 0325) - : 0072 0323 - 1E5C LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON - : 1E5A 0304 -@@ -9693,7 +10189,8 @@ - 1FFE GREEK DASIA - # 0020 0314 - @@ 2000 General Punctuation 206F --@+ For additional general punctuation characters see also Basic Latin, Latin-1, Supplemental Punctuation and CJK Symbols and Punctuation. -+@@+ -+@+ For additional general punctuation characters see also Basic Latin, Latin-1, Supplemental Punctuation and CJK Symbols and Punctuation. - @ Spaces - 2000 EN QUAD - : 2002 en space -@@ -9733,17 +10230,17 @@ - * in traditional typography, the thinnest space available - # 0020 space - 200B ZERO WIDTH SPACE -- = ZWSP -+ * commonly abbreviated ZWSP - * this character is intended for line break control; it has no width, but its presence between two characters does not prevent increased letter spacing in justification --@ Formatting characters -+@ Format characters - 200C ZERO WIDTH NON-JOINER -- = ZWNJ -+ * commonly abbreviated ZWNJ - 200D ZERO WIDTH JOINER -- = ZWJ -+ * commonly abbreviated ZWJ - 200E LEFT-TO-RIGHT MARK -- = LRM -+ * commonly abbreviated LRM - 200F RIGHT-TO-LEFT MARK -- = RLM -+ * commonly abbreviated RLM - @ Dashes - 2010 HYPHEN - x (hyphen-minus - 002D) -@@ -9758,7 +10255,7 @@ - * may be used in pairs to offset parenthetical text - x (katakana-hiragana prolonged sound mark - 30FC) - 2015 HORIZONTAL BAR -- = QUOTATION DASH -+ = quotation dash - * long dash introducing quoted text - @ General punctuation - 2016 DOUBLE VERTICAL LINE -@@ -9771,43 +10268,43 @@ - x (combining double low line - 0333) - # 0020 0333 - 2018 LEFT SINGLE QUOTATION MARK -- = SINGLE TURNED COMMA QUOTATION MARK -- * this is the preferred glyph (as opposed to 201B) -+ = single turned comma quotation mark -+ * this is the preferred character (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 -+ = single comma 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 -+ = low single comma quotation mark - * 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 -+ = single reversed comma quotation mark -+ * has same semantic as 2018, but differs in appearance - x (modifier letter reversed comma - 02BD) - 201C LEFT DOUBLE QUOTATION MARK -- = DOUBLE TURNED COMMA QUOTATION MARK -- * this is the preferred glyph (as opposed to 201F) -+ = double turned comma quotation mark -+ * this is the preferred character (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 -+ = double comma 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 -+ = low double comma quotation mark - * 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 -+ = double reversed comma quotation mark -+ * has same semantic as 201C, but differs in appearance - 2020 DAGGER - = obelisk, obelus, long cross - 2021 DOUBLE DAGGER -@@ -9836,23 +10333,23 @@ - x (presentation form for vertical horizontal ellipsis - FE19) - # 002E 002E 002E - 2027 HYPHENATION POINT --@ Formatting characters -+@ Format characters - 2028 LINE SEPARATOR - * may be used to represent this semantic unambiguously - 2029 PARAGRAPH SEPARATOR - * may be used to represent this semantic unambiguously - 202A LEFT-TO-RIGHT EMBEDDING -- = LRE -+ * commonly abbreviated LRE - 202B RIGHT-TO-LEFT EMBEDDING -- = RLE -+ * commonly abbreviated RLE - 202C POP DIRECTIONAL FORMATTING -- = PDF -+ * commonly abbreviated PDF - 202D LEFT-TO-RIGHT OVERRIDE -- = LRO -+ * commonly abbreviated LRO - 202E RIGHT-TO-LEFT OVERRIDE -- = RLO -+ * commonly abbreviated RLO - 202F NARROW NO-BREAK SPACE -- = NNBSP -+ * commonly abbreviated NNBSP - x (no-break space - 00A0) - # 0020 - @ General punctuation -@@ -9890,13 +10387,13 @@ - 2038 CARET - x (up arrowhead - 2303) - 2039 SINGLE LEFT-POINTING ANGLE QUOTATION MARK -- = LEFT POINTING SINGLE GUILLEMET -+ = left pointing single guillemet - * usually opening, sometimes closing - x (less-than sign - 003C) - x (left-pointing angle bracket - 2329) - x (left angle bracket - 3008) - 203A SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -- = RIGHT POINTING SINGLE GUILLEMET -+ = right pointing single guillemet - * usually closing, sometimes opening - x (greater-than sign - 003E) - x (right-pointing angle bracket - 232A) -@@ -9905,6 +10402,7 @@ - = Japanese kome - = Urdu paragraph separator - x (tibetan ku ru kha bzhi mig can - 0FBF) -+ x (cjk unified ideograph-200AD - 200AD) - @ Double punctuation for vertical text - 203C DOUBLE EXCLAMATION MARK - x (exclamation mark - 0021) -@@ -9914,7 +10412,7 @@ - x (exclamation mark - 0021) - x (question mark - 003F) - 203E OVERLINE -- = SPACING OVERSCORE -+ = spacing overscore - # 0020 0305 - 203F UNDERTIE (Enotikon) - = Greek enotikon -@@ -9943,13 +10441,15 @@ - # 0021 003F - @ General punctuation - 204A TIRONIAN SIGN ET -- * Irish Gaelic, ... -+ * Irish Gaelic, Old English, ... -+ x (ampersand - 0026) - 204B REVERSED PILCROW SIGN - x (pilcrow sign - 00B6) - 204C BLACK LEFTWARDS BULLET - 204D BLACK RIGHTWARDS BULLET - 204E LOW ASTERISK - x (asterisk - 002A) -+ x (combining asterisk below - 0359) - 204F REVERSED SEMICOLON - x (semicolon - 003B) - 2050 CLOSE UP -@@ -9978,6 +10478,8 @@ - 2058 FOUR DOT PUNCTUATION - 2059 FIVE DOT PUNCTUATION - = Greek pentonkion -+ = quincunx -+ x (die face-5 - 2684) - 205A TWO DOT PUNCTUATION - * historically used to indicate the end of a sentence or change of speaker - * extends from baseline to cap height -@@ -9998,12 +10500,12 @@ - * glyph extends the whole height of the line - @ Space - 205F MEDIUM MATHEMATICAL SPACE -- = MMSP -+ * abbreviated MMSP - * four-eighteenths of an em - # 0020 space --@ Formatting character -+@ Format character - 2060 WORD JOINER -- = WJ -+ * commonly abbreviated WJ - * a zero width non-breaking space (only) - * intended for disambiguation of functions for byte order mark - x (zero width no-break space - FEFF) -@@ -10114,6 +10616,10 @@ - x (thai currency symbol baht - 0E3F) - x (khmer currency symbol riel - 17DB) - x (script capital m - 2133) -+ x (cjk unified ideograph-5143 - 5143) -+ x (cjk unified ideograph-5186 - 5186) -+ x (cjk unified ideograph-5706 - 5706) -+ x (cjk unified ideograph-5713 - 5713) - x (rial sign - FDFC) - 20A0 EURO-CURRENCY SIGN - * intended for ECU, but not widely used -@@ -10198,6 +10704,7 @@ - @ Enclosing diacritics - 20DD COMBINING ENCLOSING CIRCLE - = JIS composition circle -+ = Cyrillic combining ten thousands sign - x (white circle - 25CB) - x (large circle - 25EF) - x (ideographic number zero - 3007) -@@ -10234,12 +10741,17 @@ - x (leftwards arrow - 2190) - 20EB COMBINING LONG DOUBLE SOLIDUS OVERLAY - = long double slash overlay -+20EC COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS -+20ED COMBINING LEFTWARDS HARPOON WITH BARB DOWNWARDS -+20EE COMBINING LEFT ARROW BELOW -+20EF COMBINING RIGHT ARROW BELOW - @@ 2100 Letterlike Symbols 214F - @ Letterlike symbols - @+ Some of the letterlike symbols are intended to complete the set of mathematical alphanumeric symbols starting at U+1D400. - 2100 ACCOUNT OF - # 0061 002F 0063 - 2101 ADDRESSED TO THE SUBJECT -+ x (aktieselskab - 214D) - # 0061 002F 0073 - 2102 DOUBLE-STRUCK CAPITAL C - = the set of complex numbers -@@ -10271,6 +10783,8 @@ - 210D DOUBLE-STRUCK CAPITAL H - # 0048 latin capital letter h - 210E PLANCK CONSTANT -+ = height, specific enthalpy, ... -+ * simply a mathematical italic h; this character's name results from legacy usage - # 0068 latin small letter h - 210F PLANCK CONSTANT OVER TWO PI - x (cyrillic small letter tshe - 045B) -@@ -10292,6 +10806,7 @@ - # 006C latin small letter l - 2114 L B BAR SYMBOL - = pounds -+ x (number sign - 0023) - 2115 DOUBLE-STRUCK CAPITAL N - = natural number - # 004E latin capital letter n -@@ -10301,6 +10816,7 @@ - = published - = phonorecord sign - x (copyright sign - 00A9) -+ x (circled latin capital letter p - 24C5) - 2118 SCRIPT CAPITAL P - = Weierstrass elliptic function - * actually this has the form of a lowercase calligraphic p, despite its name -@@ -10326,6 +10842,8 @@ - # 0053 004D - 2121 TELEPHONE SIGN - * typical forms for this symbol may use lower case, small caps or superscripted letter shapes -+ x (black telephone - 260E) -+ x (telephone location sign - 2706) - # 0054 0045 004C - 2122 TRADE MARK SIGN - # 0054 004D -@@ -10340,7 +10858,7 @@ - * preferred representation is 03A9 - : 03A9 greek capital letter omega - 2127 INVERTED OHM SIGN -- = MHO -+ = mho - * archaic unit of conductance (= the SI unit siemens) - * typographically a turned greek capital letter omega - x (latin capital letter upsilon - 01B1) -@@ -10375,10 +10893,13 @@ - = Fourier transform - # 0046 latin capital letter f - 2132 TURNED CAPITAL F -+ = Claudian digamma inversum -+ * lowercase is 214E - x (latin capital letter f - 0046) -+ x (greek letter digamma - 03DC) - 2133 SCRIPT CAPITAL M - = M-matrix (physics) -- = German Mark (not the current Deutsche Mark) -+ = German Mark currency symbol, before WWII - # 004D latin capital letter m - 2134 SCRIPT SMALL O - = order, of inferior order to -@@ -10424,7 +10945,7 @@ - 2142 TURNED SANS-SERIF CAPITAL L - 2143 REVERSED SANS-SERIF CAPITAL L - 2144 TURNED SANS-SERIF CAPITAL Y --@ Double-struck italic mathematical symbols -+@ Double-struck italic math symbols - @+ These stylized mathematical symbols are used in some documents to distinguish special mathematical usages from ordinary variables. - 2145 DOUBLE-STRUCK ITALIC CAPITAL D - * sometimes used for the differential -@@ -10448,6 +10969,13 @@ - x (ampersand - 0026) - 214C PER SIGN - * abbreviates the word 'per' -+214D AKTIESELSKAB -+ x (addressed to the subject - 2101) -+@ Lowercase Claudian letter -+@+ Claudian letters in inscriptions are uppercase, but may be transcribed by scholars in lowercase. -+214E TURNED SMALL F -+ * uppercase is 2132 -+ x (greek small letter digamma - 03DD) - @@ 2150 Number Forms 218F - @ Fractions - @+ Other fraction number forms are found in the Latin-1 Supplement block. -@@ -10550,9 +11078,16 @@ - 2182 ROMAN NUMERAL TEN THOUSAND - 2183 ROMAN NUMERAL REVERSED ONE HUNDRED - = apostrophic C -+ = Claudian antisigma - * used in combination with C and I to form large numbers -+ * lowercase is 2184 -+ x (greek capital reversed lunate sigma symbol - 03FD) -+@ Lowercase Claudian letter -+@+ Claudian letters in inscriptions are uppercase, but may be transcribed by scholars in lowercase. -+2184 LATIN SMALL LETTER REVERSED C -+ x (greek small reversed lunate sigma symbol - 037B) - @@ 2190 Arrows 21FF --@ Arrows -+@ Simple arrows - 2190 LEFTWARDS ARROW - x (combining leftwards arrow overlay - 20EA) - 2191 UPWARDS ARROW -@@ -10568,6 +11103,7 @@ - 2197 NORTH EAST ARROW - 2198 SOUTH EAST ARROW - 2199 SOUTH WEST ARROW -+@ Arrows with modifications - 219A LEFTWARDS ARROW WITH STROKE - * negation of 2190 - : 2190 0338 -@@ -10606,10 +11142,13 @@ - : 2194 0338 - 21AF DOWNWARDS ZIGZAG ARROW - = electrolysis -+@ Arrows with bent tips -+@+ Other arrows with bent tips to complete this set can be found in the Miscellaneous Symbols and Arrows block. - 21B0 UPWARDS ARROW WITH TIP LEFTWARDS - 21B1 UPWARDS ARROW WITH TIP RIGHTWARDS - 21B2 DOWNWARDS ARROW WITH TIP LEFTWARDS - 21B3 DOWNWARDS ARROW WITH TIP RIGHTWARDS -+@ Keyboard symbols and circle arrows - 21B4 RIGHTWARDS ARROW WITH CORNER DOWNWARDS - = line feed - 21B5 DOWNWARDS ARROW WITH CORNER LEFTWARDS -@@ -10623,6 +11162,7 @@ - = tab with shift tab - 21BA ANTICLOCKWISE OPEN CIRCLE ARROW - 21BB CLOCKWISE OPEN CIRCLE ARROW -+@ Harpoons - 21BC LEFTWARDS HARPOON WITH BARB UPWARDS - 21BD LEFTWARDS HARPOON WITH BARB DOWNWARDS - 21BE UPWARDS HARPOON WITH BARB RIGHTWARDS -@@ -10631,6 +11171,7 @@ - 21C1 RIGHTWARDS HARPOON WITH BARB DOWNWARDS - 21C2 DOWNWARDS HARPOON WITH BARB RIGHTWARDS - 21C3 DOWNWARDS HARPOON WITH BARB LEFTWARDS -+@ Paired arrows and harpoons - 21C4 RIGHTWARDS ARROW OVER LEFTWARDS ARROW - 21C5 UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW - 21C6 LEFTWARDS ARROW OVER RIGHTWARDS ARROW -@@ -10640,6 +11181,7 @@ - 21CA DOWNWARDS PAIRED ARROWS - 21CB LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON - 21CC RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON -+@ Double arrows - 21CD LEFTWARDS DOUBLE ARROW WITH STROKE - * negation of 21D0 - : 21D0 0338 -@@ -10659,6 +11201,7 @@ - 21D7 NORTH EAST DOUBLE ARROW - 21D8 SOUTH EAST DOUBLE ARROW - 21D9 SOUTH WEST DOUBLE ARROW -+@ Miscellaneous arrows and keyboard symbols - 21DA LEFTWARDS TRIPLE ARROW - 21DB RIGHTWARDS TRIPLE ARROW - 21DC LEFTWARDS SQUIGGLE ARROW -@@ -10675,6 +11218,7 @@ - = leftward tab - 21E5 RIGHTWARDS ARROW TO BAR - = rightward tab -+@ White arrows and keyboard symbols - 21E6 LEFTWARDS WHITE ARROW - 21E7 UPWARDS WHITE ARROW - = shift -@@ -10700,6 +11244,7 @@ - = end - 21F3 UP DOWN WHITE ARROW - = scrolling -+@ Miscellaneous arrows - 21F4 RIGHT ARROW WITH SMALL CIRCLE - 21F5 DOWNWARDS ARROW LEFTWARDS OF UPWARDS ARROW - 21F6 THREE RIGHTWARDS ARROWS -@@ -10717,6 +11262,7 @@ - 21FE RIGHTWARDS OPEN-HEADED ARROW - 21FF LEFT RIGHT OPEN-HEADED ARROW - @@ 2200 Mathematical Operators 22FF -+@@+ - @ Miscellaneous mathematical symbols - 2200 FOR ALL - = universal quantifier -@@ -10735,6 +11281,7 @@ - 2206 INCREMENT - = Laplace operator - = forward difference -+ = symmetric difference of sets - x (greek capital letter delta - 0394) - x (white up-pointing triangle - 25B3) - 2207 NABLA -@@ -10757,7 +11304,7 @@ - x (greek reversed lunate epsilon symbol - 03F6) - @ Miscellaneous mathematical symbol - 220E END OF PROOF -- = Q.E.D. -+ = q.e.d. - x (triangular bullet - 2023) - x (black vertical rectangle - 25AE) - @ N-ary operators -@@ -10769,6 +11316,7 @@ - 2211 N-ARY SUMMATION - = summation sign - x (greek capital letter sigma - 03A3) -+ x (double-struck n-ary summation - 2140) - @ Operators - 2212 MINUS SIGN - x (hyphen-minus - 002D) -@@ -10861,7 +11409,7 @@ - 2237 PROPORTION - @ Operator - 2238 DOT MINUS -- = symmetric difference -+ = saturating subtraction - @ Relation - 2239 EXCESS - @ Operator -@@ -11062,6 +11610,7 @@ - @ Miscellaneous mathematical symbols - 22A4 DOWN TACK - = top -+ x (raised interpolation marker - 2E06) - 22A5 UP TACK - = base, bottom - x (perpendicular - 27C2) -@@ -11265,7 +11814,7 @@ - 2317 VIEWDATA SQUARE - x (equal and parallel to - 22D5) - 2318 PLACE OF INTEREST SIGN -- = COMMAND KEY -+ = command key (1.0) - 2319 TURNED NOT SIGN - = line marker - @ GUI icons -@@ -11274,6 +11823,8 @@ - @ Quine corners - 231C TOP LEFT CORNER - * set of four "quine" corners, for quincuncial arrangement -+ * these are also used in mathematics in upper and lower pairs -+ x (right angle substitution marker - 2E00) - 231D TOP RIGHT CORNER - 231E BOTTOM LEFT CORNER - 231F BOTTOM RIGHT CORNER -@@ -11288,12 +11839,12 @@ - x (undertie - 203F) - @ Keyboard symbols - 2324 UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS -- = ENTER KEY -+ = enter key - 2325 OPTION KEY - 2326 ERASE TO THE RIGHT -- = DELETE TO THE RIGHT KEY -+ = delete to the right key - 2327 X IN A RECTANGLE BOX -- = CLEAR KEY -+ = clear key - 2328 KEYBOARD - @ Angle brackets - @+ These are discouraged for mathematical use because of their canonical equivalence to CJK punctuation. -@@ -11309,7 +11860,7 @@ - : 3009 right angle bracket - @ Keyboard symbol - 232B ERASE TO THE LEFT -- = DELETE TO THE LEFT KEY -+ = delete to the left key - @ Chemistry symbol - 232C BENZENE RING - @ Drafting symbols -@@ -11512,12 +12063,14 @@ - @ Summation sign parts - 23B2 SUMMATION TOP - 23B3 SUMMATION BOTTOM --@ Vertical brackets -+@ Horizontal brackets -+@+ These characters are also used as delimiters of vertical text in non-CJK terminal emulation. - 23B4 TOP SQUARE BRACKET - x (presentation form for vertical left square bracket - FE47) - 23B5 BOTTOM SQUARE BRACKET - x (presentation form for vertical right square bracket - FE48) - 23B6 BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET -+ * only used for terminal emulation - @ Terminal graphic characters - 23B7 RADICAL SYMBOL BOTTOM - 23B8 LEFT VERTICAL BOX LINE -@@ -11552,7 +12105,7 @@ - x (right ceiling - 2309) - 23CC DENTISTRY SYMBOL LIGHT VERTICAL AND BOTTOM LEFT - x (right floor - 230B) --@ Miscellaneous technical symbol -+@ Miscellaneous technical - 23CD SQUARE FOOT - @ Keyboard and UI symbols - 23CE RETURN SYMBOL -@@ -11577,9 +12130,32 @@ - x (combining greek musical tetraseme - 1D243) - 23D9 METRICAL PENTASEME - x (combining greek musical pentaseme - 1D244) --@ Electrotechnical symbols -+@ Electrotechnical symbols - 23DA EARTH GROUND - 23DB FUSE -+@ Horizontal brackets -+@+ These are intended for bracketing terms of mathematical expressions where their glyph extends to accommodate the width of the bracketed expression -+23DC TOP PARENTHESIS (mathematical use) -+ x (presentation form for vertical left parenthesis - FE35) -+23DD BOTTOM PARENTHESIS (mathematical use) -+ x (presentation form for vertical right parenthesis - FE36) -+23DE TOP CURLY BRACKET (mathematical use) -+ x (presentation form for vertical left curly bracket - FE37) -+23DF BOTTOM CURLY BRACKET (mathematical use) -+ x (presentation form for vertical right curly bracket - FE38) -+23E0 TOP TORTOISE SHELL BRACKET (mathematical use) -+ x (presentation form for vertical left tortoise shell bracket - FE39) -+23E1 BOTTOM TORTOISE SHELL BRACKET (mathematical use) -+ x (presentation form for vertical right tortoise shell bracket - FE3A) -+@ Miscellaneous technical -+23E2 WHITE TRAPEZIUM -+@ Chemistry symbol -+23E3 BENZENE RING WITH CIRCLE -+@ Miscellaneous technical -+23E4 STRAIGHTNESS -+23E5 FLATNESS -+23E6 AC CURRENT -+23E7 ELECTRICAL INTERSECTION - @@ 2400 Control Pictures 243F - @+ The diagonal lettering glyphs are only exemplary; alternate representations may be, and often are used in the visible display of control codes. - @ Graphic pictures for control codes -@@ -11834,6 +12410,7 @@ - 24B7 CIRCLED LATIN CAPITAL LETTER B - # 0042 - 24B8 CIRCLED LATIN CAPITAL LETTER C -+ x (copyright sign - 00A9) - # 0043 - 24B9 CIRCLED LATIN CAPITAL LETTER D - # 0044 -@@ -11860,10 +12437,12 @@ - 24C4 CIRCLED LATIN CAPITAL LETTER O - # 004F - 24C5 CIRCLED LATIN CAPITAL LETTER P -+ x (sound recording copyright - 2117) - # 0050 - 24C6 CIRCLED LATIN CAPITAL LETTER Q - # 0051 - 24C7 CIRCLED LATIN CAPITAL LETTER R -+ x (registered sign - 00AE) - # 0052 - 24C8 CIRCLED LATIN CAPITAL LETTER S - # 0053 -@@ -12151,6 +12730,7 @@ - 259F QUADRANT UPPER RIGHT AND LOWER LEFT AND LOWER RIGHT - @@ 25A0 Geometric Shapes 25FF - @ Geometric shapes -+@+ Other geometric shapes complementing this set are found in the Miscellaneous Symbols and Arrows block. - 25A0 BLACK SQUARE - = moding mark (in ideographic text) - x (full block - 2588) -@@ -12301,6 +12881,7 @@ - 25FF LOWER RIGHT TRIANGLE - x (right triangle - 22BF) - @@ 2600 Miscellaneous Symbols 26FF -+@@+ - @ Weather and astrological symbols - 2600 BLACK SUN WITH RAYS - = clear weather -@@ -12328,6 +12909,8 @@ - 260D OPPOSITION - @ Miscellaneous symbols - 260E BLACK TELEPHONE -+ x (telephone sign - 2121) -+ x (telephone location sign - 2706) - 260F WHITE TELEPHONE - 2610 BALLOT BOX - x (white square - 25A1) -@@ -12381,7 +12964,7 @@ - 2629 CROSS OF JERUSALEM - 262A STAR AND CRESCENT - 262B FARSI SYMBOL -- = SYMBOL OF IRAN -+ = symbol of iran (1.0) - 262C ADI SHAKTI - = Gurmukhi khanda - 262D HAMMER AND SICKLE -@@ -12465,7 +13048,7 @@ - x (white diamond - 25C7) - x (lozenge - 25CA) - 2663 BLACK CLUB SUIT -- = shamrock -+ x (shamrock - 2618) - 2664 WHITE SPADE SUIT - 2665 BLACK HEART SUIT - = valentine -@@ -12529,6 +13112,7 @@ - 2688 BLACK CIRCLE WITH WHITE DOT RIGHT - 2689 BLACK CIRCLE WITH TWO WHITE DOTS - @ Yijing monogram and digram symbols -+@+ These form a subset of the larger collection found in the Tai Xuan Jing Symbols block. - 268A MONOGRAM FOR YANG - 268B MONOGRAM FOR YIN - 268C DIGRAM FOR GREATER YANG -@@ -12610,6 +13194,8 @@ - x (white rectangle - 25AD) - 26B1 FUNERAL URN - = cremated (genealogy) -+@ Gender symbol -+26B2 NEUTER - @@ 2700 Dingbats 27BF - @+ ITC Zapf dingbats series 100 - @ Miscellaneous -@@ -12620,6 +13206,7 @@ - 2705 - x (black telephone - 260E) - 2706 TELEPHONE LOCATION SIGN -+ x (telephone sign - 2121) - 2707 TAPE DRIVE - 2708 AIRPLANE - 2709 ENVELOPE -@@ -12866,6 +13453,14 @@ - 27C4 OPEN SUPERSET - 27C5 LEFT S-SHAPED BAG DELIMITER - 27C6 RIGHT S-SHAPED BAG DELIMITER -+27C7 OR WITH DOT INSIDE -+27C8 REVERSE SOLIDUS PRECEDING SUBSET -+27C9 SUPERSET PRECEDING SOLIDUS -+@ Vertical line operator -+27CA VERTICAL BAR WITH HORIZONTAL STROKE -+ x (parallel with horizontal stroke - 2AF2) -+ x (triple vertical bar with horizontal stroke - 2AF5) -+@ Miscellaneous symbol - 27D0 WHITE DIAMOND WITH CENTRED DOT - @ Operators - 27D1 AND WITH DOT -@@ -12955,7 +13550,7 @@ - x (clockwise closed circle arrow - 2941) - 27F4 RIGHT ARROW WITH CIRCLED PLUS - @ Long arrows --@+ The long arrows are used for mapping whereas the short forms would be used in limits. They are also needed for MathML to complete mapping to the ASMA sets. -+@+ The long arrows are used for mapping whereas the short forms would be used in limits. They are also needed for MathML to complete mapping to the AMSA sets. - 27F5 LONG LEFTWARDS ARROW - x (leftwards arrow - 2190) - 27F6 LONG RIGHTWARDS ARROW -@@ -12981,8 +13576,10 @@ - 27FF LONG RIGHTWARDS SQUIGGLE ARROW - x (rightwards squiggle arrow - 21DD) - @@ 2800 Braille Patterns 28FF -+@+ When braille patterns are punched, the filled circles shown here correspond to punch impression. - @ Braille patterns - 2800 BRAILLE PATTERN BLANK -+ * while this character is imaged as a fixed-width blank in many fonts, it does not act as a space - 2801 BRAILLE PATTERN DOTS-1 - 2802 BRAILLE PATTERN DOTS-2 - 2803 BRAILLE PATTERN DOTS-12 -@@ -13239,7 +13836,7 @@ - 28FE BRAILLE PATTERN DOTS-2345678 - 28FF BRAILLE PATTERN DOTS-12345678 - @@ 2900 Supplemental Arrows-B 297F --@ Supplemental arrows -+@ Miscellaneous arrows - 2900 RIGHTWARDS TWO-HEADED ARROW WITH VERTICAL STROKE - = z notation partial surjection - 2901 RIGHTWARDS TWO-HEADED ARROW WITH DOUBLE VERTICAL STROKE -@@ -13282,10 +13879,12 @@ - = z notation surjective injection - 2918 RIGHTWARDS TWO-HEADED ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE - = z notation finite surjective injection -+@ Arrow tails - 2919 LEFTWARDS ARROW-TAIL - 291A RIGHTWARDS ARROW-TAIL - 291B LEFTWARDS DOUBLE ARROW-TAIL - 291C RIGHTWARDS DOUBLE ARROW-TAIL -+@ Miscellaneous arrows - 291D LEFTWARDS ARROW TO BLACK DIAMOND - 291E RIGHTWARDS ARROW TO BLACK DIAMOND - 291F LEFTWARDS ARROW FROM BAR TO BLACK DIAMOND -@@ -13296,6 +13895,7 @@ - 2924 NORTH EAST ARROW WITH HOOK - 2925 SOUTH EAST ARROW WITH HOOK - 2926 SOUTH WEST ARROW WITH HOOK -+@ Crossing arrows for knot theory - 2927 NORTH WEST ARROW AND NORTH EAST ARROW - 2928 NORTH EAST ARROW AND SOUTH EAST ARROW - 2929 SOUTH EAST ARROW AND SOUTH WEST ARROW -@@ -13308,6 +13908,7 @@ - 2930 RISING DIAGONAL CROSSING SOUTH EAST ARROW - 2931 NORTH EAST ARROW CROSSING NORTH WEST ARROW - 2932 NORTH WEST ARROW CROSSING NORTH EAST ARROW -+@ Miscellaneous curved arrows - 2933 WAVE ARROW POINTING DIRECTLY RIGHT - x (rightwards wave arrow - 219D) - 2934 ARROW POINTING RIGHTWARDS THEN CURVING UPWARDS -@@ -13326,6 +13927,7 @@ - x (combining anticlockwise ring overlay - 20DA) - 2941 CLOCKWISE CLOSED CIRCLE ARROW - x (combining clockwise ring overlay - 20D9) -+@ Arrows combined with operators - 2942 RIGHTWARDS ARROW ABOVE SHORT LEFTWARDS ARROW - 2943 LEFTWARDS ARROW ABOVE SHORT RIGHTWARDS ARROW - 2944 SHORT RIGHTWARDS ARROW ABOVE LEFTWARDS ARROW -@@ -13334,6 +13936,7 @@ - 2947 RIGHTWARDS ARROW THROUGH X - 2948 LEFT RIGHT ARROW THROUGH SMALL CIRCLE - 2949 UPWARDS TWO-HEADED ARROW FROM SMALL CIRCLE -+@ Double-barbed harpoons - 294A LEFT BARB UP RIGHT BARB DOWN HARPOON - 294B LEFT BARB DOWN RIGHT BARB UP HARPOON - 294C UP BARB RIGHT DOWN BARB LEFT HARPOON -@@ -13342,6 +13945,7 @@ - 294F UP BARB RIGHT DOWN BARB RIGHT HARPOON - 2950 LEFT BARB DOWN RIGHT BARB DOWN HARPOON - 2951 UP BARB LEFT DOWN BARB LEFT HARPOON -+@ Modified harpoons - 2952 LEFTWARDS HARPOON WITH BARB UP TO BAR - 2953 RIGHTWARDS HARPOON WITH BARB UP TO BAR - 2954 UPWARDS HARPOON WITH BARB RIGHT TO BAR -@@ -13358,6 +13962,7 @@ - 295F RIGHTWARDS HARPOON WITH BARB DOWN FROM BAR - 2960 UPWARDS HARPOON WITH BARB LEFT FROM BAR - 2961 DOWNWARDS HARPOON WITH BARB LEFT FROM BAR -+@ Paired harpoons - 2962 LEFTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB DOWN - 2963 UPWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT - 2964 RIGHTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB DOWN -@@ -13372,8 +13977,10 @@ - 296D RIGHTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH - 296E UPWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT - 296F DOWNWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT -+@ Miscellaneous arrow - 2970 RIGHT DOUBLE ARROW WITH ROUNDED HEAD - x (superset of - 2283) -+@ Arrows combined with relations - 2971 EQUALS SIGN ABOVE RIGHTWARDS ARROW - 2972 TILDE OPERATOR ABOVE RIGHTWARDS ARROW - 2973 LEFTWARDS ARROW ABOVE TILDE OPERATOR -@@ -13974,11 +14581,13 @@ - x (up tack with circle above - 27DF) - 2AF2 PARALLEL WITH HORIZONTAL STROKE - x (not parallel to - 2226) -+ x (vertical bar with horizontal stroke - 27CA) - 2AF3 PARALLEL WITH TILDE OPERATOR - 2AF4 TRIPLE VERTICAL BAR BINARY RELATION - = interleave - x (triple vertical bar delimiter - 2980) - 2AF5 TRIPLE VERTICAL BAR WITH HORIZONTAL STROKE -+ x (vertical bar with horizontal stroke - 27CA) - @ Miscellaneous mathematical operator - 2AF6 TRIPLE COLON OPERATOR - * logic -@@ -14024,6 +14633,7 @@ - 2B0C LEFT RIGHT BLACK ARROW - 2B0D UP DOWN BLACK ARROW - @ Arrows with bent tips -+@+ Other arrows with bent tips to complete this set can be found in the Arrows block. - 2B0E RIGHTWARDS ARROW WITH TIP DOWNWARDS - 2B0F RIGHTWARDS ARROW WITH TIP UPWARDS - 2B10 LEFTWARDS ARROW WITH TIP DOWNWARDS -@@ -14032,6 +14642,21 @@ - 2B12 SQUARE WITH TOP HALF BLACK - x (square with left half black - 25E7) - 2B13 SQUARE WITH BOTTOM HALF BLACK -+2B14 SQUARE WITH UPPER RIGHT DIAGONAL HALF BLACK -+2B15 SQUARE WITH LOWER LEFT DIAGONAL HALF BLACK -+@ Diamonds -+2B16 DIAMOND WITH LEFT HALF BLACK -+2B17 DIAMOND WITH RIGHT HALF BLACK -+2B18 DIAMOND WITH TOP HALF BLACK -+2B19 DIAMOND WITH BOTTOM HALF BLACK -+@ Square -+2B1A DOTTED SQUARE -+@ Pentagon -+2B20 WHITE PENTAGON -+@ Hexagons -+2B21 WHITE HEXAGON -+2B22 BLACK HEXAGON -+2B23 HORIZONTAL BLACK HEXAGON - @@ 2C00 Glagolitic 2C5F - @ Capital letters - 2C00 GLAGOLITIC CAPITAL LETTER AZU -@@ -14129,6 +14754,38 @@ - 2C5C GLAGOLITIC SMALL LETTER SHTAPIC - 2C5D GLAGOLITIC SMALL LETTER TROKUTASTI A - 2C5E GLAGOLITIC SMALL LETTER LATINATE MYSLITE -+@@ 2C60 Latin Extended-C 2C7F -+@ Orthographic Latin additions -+2C60 LATIN CAPITAL LETTER L WITH DOUBLE BAR -+2C61 LATIN SMALL LETTER L WITH DOUBLE BAR -+2C62 LATIN CAPITAL LETTER L WITH MIDDLE TILDE -+ * lowercase is 026B -+2C63 LATIN CAPITAL LETTER P WITH STROKE -+ * lowercase is 1D7D -+2C64 LATIN CAPITAL LETTER R WITH TAIL -+ * lowercase is 027D -+2C65 LATIN SMALL LETTER A WITH STROKE -+ * uppercase is 023A -+2C66 LATIN SMALL LETTER T WITH DIAGONAL STROKE -+ * uppercase is 023E -+@ Additions for Uighur -+2C67 LATIN CAPITAL LETTER H WITH DESCENDER -+2C68 LATIN SMALL LETTER H WITH DESCENDER -+2C69 LATIN CAPITAL LETTER K WITH DESCENDER -+2C6A LATIN SMALL LETTER K WITH DESCENDER -+2C6B LATIN CAPITAL LETTER Z WITH DESCENDER -+2C6C LATIN SMALL LETTER Z WITH DESCENDER -+@ Miscellaneous addition -+2C74 LATIN SMALL LETTER V WITH CURL -+@ Claudian letters -+@+ Claudian letters in inscriptions are uppercase, but may be transcribed by scholars in lowercase. -+2C75 LATIN CAPITAL LETTER HALF H -+ x (turned capital f - 2132) -+ x (roman numeral reversed one hundred - 2183) -+2C76 LATIN SMALL LETTER HALF H -+@ Addition for UPA -+2C77 LATIN SMALL LETTER TAILLESS PHI -+ * medium rounded o - @@ 2C80 Coptic 2CFF - @+ Other Coptic letters derived from Demotic are encoded in the Greek and Coptic block. - @ Bohairic Coptic letters -@@ -14445,12 +15102,14 @@ - @@ 2E00 Supplemental Punctuation 2E7F - @ New Testament editorial symbols - 2E00 RIGHT ANGLE SUBSTITUTION MARKER -+ x (top left corner - 231C) - 2E01 RIGHT ANGLE DOTTED SUBSTITUTION MARKER - 2E02 LEFT SUBSTITUTION BRACKET - 2E03 RIGHT SUBSTITUTION BRACKET - 2E04 LEFT DOTTED SUBSTITUTION BRACKET - 2E05 RIGHT DOTTED SUBSTITUTION BRACKET - 2E06 RAISED INTERPOLATION MARKER -+ x (down tack - 22A4) - 2E07 RAISED DOTTED INTERPOLATION MARKER - 2E08 DOTTED TRANSPOSITION MARKER - 2E09 LEFT TRANSPOSITION BRACKET -@@ -14472,7 +15131,9 @@ - * glyph variants may look like '00F7' or '2238' - x (commercial minus sign - 2052) - 2E14 DOWNWARDS ANCORA -+ * contrary to its formal name this symbol points upwards - 2E15 UPWARDS ANCORA -+ * contrary to its formal name this symbol points downwards - 2E16 DOTTED RIGHT-POINTING ANGLE - = diple periestigmene - @ Ancient Near-Eastern linguistic symbol -@@ -15201,6 +15862,7 @@ - 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) -@@ -15330,7 +15992,7 @@ - 303D PART ALTERNATION MARK - * marks the start of a song part in Japanese - @ Special CJK indicators --@+ These are visibly displayed graphic characters, not invisible formatting controls. -+@+ These are visibly displayed graphic characters, not invisible format control characters. - 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 -@@ -15767,7 +16429,7 @@ - # 1175 hangul jungseong i - @ Special character - 3164 HANGUL FILLER -- = HANGUL CAE OM -+ = cae om - # 1160 hangul jungseong filler - @ Archaic letters - 3165 HANGUL LETTER SSANGNIEUN -@@ -15859,9 +16521,9 @@ - @@ 3190 Kanbun 319F - @ Kanbun - 3190 IDEOGRAPHIC ANNOTATION LINKING MARK (Kanbun Tateten) -- = KANBUN TATETEN -+ = tateten - 3191 IDEOGRAPHIC ANNOTATION REVERSE MARK (Kaeriten) -- = KAERITEN RE -+ = kaeriten re - 3192 IDEOGRAPHIC ANNOTATION ONE MARK (Kaeriten) - # 4E00 - 3193 IDEOGRAPHIC ANNOTATION TWO MARK (Kaeriten) -@@ -17159,6 +17821,7 @@ - 4DFF HEXAGRAM FOR BEFORE COMPLETION - @@ 4E00 CJK Unified Ideographs 9FBB - @@ A000 Yi Syllables A48F -+@@+ - @ Syllables - A000 YI SYLLABLE IT - A001 YI SYLLABLE IX -@@ -17181,7 +17844,11 @@ - A012 YI SYLLABLE OP - A013 YI SYLLABLE EX - A014 YI SYLLABLE E -+@ Syllable iteration mark - A015 YI SYLLABLE WU -+ % YI SYLLABLE ITERATION MARK -+ * name is a misnomer -+@ Syllables - A016 YI SYLLABLE BIT - A017 YI SYLLABLE BIX - A018 YI SYLLABLE BI -@@ -18327,8 +18994,11 @@ - A48C YI SYLLABLE YYR - @@ A490 Yi Radicals A4CF - @ Yi radicals -+@+ Yi radicals are named based on the Yi syllable their shape is abstracted from. This is illustrated with crossreferences for the first two radicals. - A490 YI RADICAL QOT -+ x (yi syllable qot - A408) - A491 YI RADICAL LI -+ x (yi syllable li - A1B9) - A492 YI RADICAL KIT - A493 YI RADICAL NYIP - A494 YI RADICAL CYP -@@ -18409,6 +19079,15 @@ - A714 MODIFIER LETTER MID LEFT-STEM TONE BAR - A715 MODIFIER LETTER LOW LEFT-STEM TONE BAR - A716 MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR -+@ Chinantec tone marks -+A717 MODIFIER LETTER DOT VERTICAL BAR -+A718 MODIFIER LETTER DOT SLASH -+A719 MODIFIER LETTER DOT HORIZONTAL BAR -+A71A MODIFIER LETTER LOWER RIGHT CORNER ANGLE -+@@ A720 Latin Extended-D A7FF -+@ Additions for UPA -+A720 MODIFIER LETTER STRESS AND HIGH TONE -+A721 MODIFIER LETTER STRESS AND LOW TONE - @@ A800 Syloti Nagri A82F - @ Independent vowels and dvisvara - A800 SYLOTI NAGRI LETTER A -@@ -18449,23 +19128,189 @@ - A820 SYLOTI NAGRI LETTER RRO - A821 SYLOTI NAGRI LETTER SO - A822 SYLOTI NAGRI LETTER HO --@ Dependent vowel signs -+@ Dependent vowel signs - A823 SYLOTI NAGRI VOWEL SIGN A - A824 SYLOTI NAGRI VOWEL SIGN I - A825 SYLOTI NAGRI VOWEL SIGN U - A826 SYLOTI NAGRI VOWEL SIGN E - A827 SYLOTI NAGRI VOWEL SIGN OO --@ Poetry marks -+@ Poetry marks - A828 SYLOTI NAGRI POETRY MARK-1 - A829 SYLOTI NAGRI POETRY MARK-2 - A82A SYLOTI NAGRI POETRY MARK-3 - A82B SYLOTI NAGRI POETRY MARK-4 -+@@ A840 Phags-pa A87F -+@+ Phags-pa letters are used for Mongolian, Chinese, Uighur, Tibetan, and Sanskrit unless annotated with a more restricted list of languages. -+@ Consonants -+A840 PHAGS-PA LETTER KA -+ * Mongolian, Chinese, Tibetan, Sanskrit -+ x (tibetan letter ka - 0F40) -+A841 PHAGS-PA LETTER KHA -+ x (tibetan letter kha - 0F41) -+A842 PHAGS-PA LETTER GA -+ x (tibetan letter ga - 0F42) -+A843 PHAGS-PA LETTER NGA -+ * Mongolian, Chinese, Tibetan, Sanskrit -+ x (tibetan letter nga - 0F44) -+A844 PHAGS-PA LETTER CA -+ * Chinese, Tibetan -+ x (tibetan letter ca - 0F45) -+A845 PHAGS-PA LETTER CHA -+ * Mongolian, Chinese, Uighur, Tibetan -+ x (tibetan letter cha - 0F46) -+A846 PHAGS-PA LETTER JA -+ * Mongolian, Chinese, Uighur, Tibetan -+ x (tibetan letter ja - 0F47) -+A847 PHAGS-PA LETTER NYA -+ * Chinese, Tibetan, Sanskrit -+ x (tibetan letter nya - 0F49) -+A848 PHAGS-PA LETTER TA -+ * Mongolian, Chinese, Tibetan, Sanskrit -+ x (tibetan letter ta - 0F4F) -+A849 PHAGS-PA LETTER THA -+ x (tibetan letter tha - 0F50) -+A84A PHAGS-PA LETTER DA -+ x (tibetan letter da - 0F51) -+A84B PHAGS-PA LETTER NA -+ x (tibetan letter na - 0F53) -+A84C PHAGS-PA LETTER PA -+ * Mongolian, Chinese, Tibetan, Sanskrit -+ x (tibetan letter pa - 0F54) -+A84D PHAGS-PA LETTER PHA -+ * Chinese, Tibetan, Sanskrit -+ x (tibetan letter pha - 0F55) -+A84E PHAGS-PA LETTER BA -+ x (tibetan letter ba - 0F56) -+A84F PHAGS-PA LETTER MA -+ x (tibetan letter ma - 0F58) -+A850 PHAGS-PA LETTER TSA -+ * Chinese, Tibetan, Sanskrit -+ x (tibetan letter tsa - 0F59) -+A851 PHAGS-PA LETTER TSHA -+ * Mongolian, Chinese, Tibetan, Sanskrit -+ x (tibetan letter tsha - 0F5A) -+A852 PHAGS-PA LETTER DZA -+ * Chinese, Tibetan, Sanskrit -+ x (tibetan letter dza - 0F5B) -+A853 PHAGS-PA LETTER WA -+ x (tibetan letter wa - 0F5D) -+A854 PHAGS-PA LETTER ZHA -+ * Chinese, Tibetan -+ x (tibetan letter zha - 0F5E) -+A855 PHAGS-PA LETTER ZA -+ * Mongolian, Chinese, Tibetan -+ x (tibetan letter za - 0F5F) -+A856 PHAGS-PA LETTER SMALL A -+ x (tibetan letter -a - 0F60) -+A857 PHAGS-PA LETTER YA -+ x (tibetan letter ya - 0F61) -+A858 PHAGS-PA LETTER RA -+ * Mongolian, Uighur, Tibetan, Sanskrit -+ x (tibetan letter ra - 0F62) -+A859 PHAGS-PA LETTER LA -+ x (tibetan letter la - 0F63) -+A85A PHAGS-PA LETTER SHA -+ x (tibetan letter sha - 0F64) -+A85B PHAGS-PA LETTER SA -+ x (tibetan letter sa - 0F66) -+A85C PHAGS-PA LETTER HA -+ x (tibetan letter ha - 0F67) -+@ Letter A -+A85D PHAGS-PA LETTER A -+ x (tibetan letter a - 0F68) -+@ Vowels -+A85E PHAGS-PA LETTER I -+ x (tibetan vowel sign i - 0F72) -+A85F PHAGS-PA LETTER U -+ x (tibetan vowel sign u - 0F74) -+A860 PHAGS-PA LETTER E -+ x (tibetan vowel sign e - 0F7A) -+A861 PHAGS-PA LETTER O -+ x (tibetan vowel sign o - 0F7C) -+@ Consonants -+A862 PHAGS-PA LETTER QA -+ * Mongolian, Uighur -+A863 PHAGS-PA LETTER XA -+ * Mongolian, Chinese -+A864 PHAGS-PA LETTER FA -+ * Chinese, Uighur -+ x (phags-pa letter ha - A85C) -+A865 PHAGS-PA LETTER GGA -+ * language usage unknown -+ * created by reversal of A862 -+@ Vowel -+A866 PHAGS-PA LETTER EE -+ * Mongolian, Chinese, Uighur -+@ Subjoined Consonants -+A867 PHAGS-PA SUBJOINED LETTER WA -+ * Chinese, Tibetan, Sanskrit -+ x (tibetan subjoined letter wa - 0FAD) -+A868 PHAGS-PA SUBJOINED LETTER YA -+ * Chinese, Tibetan, Sanskrit -+ x (tibetan subjoined letter ya - 0FB1) -+@ Consonant additions for Sanskrit -+A869 PHAGS-PA LETTER TTA -+ * Sanskrit -+ x (tibetan letter tta - 0F4A) -+A86A PHAGS-PA LETTER TTHA -+ * Sanskrit -+ x (tibetan letter ttha - 0F4B) -+A86B PHAGS-PA LETTER DDA -+ * Sanskrit -+ x (tibetan letter dda - 0F4C) -+A86C PHAGS-PA LETTER NNA -+ * Sanskrit -+ x (tibetan letter nna - 0F4E) -+@ Alternate consonant forms for Chinese -+A86D PHAGS-PA LETTER ALTERNATE YA -+ * Chinese -+ x (phags-pa letter ya - A857) -+A86E PHAGS-PA LETTER VOICELESS SHA -+ * Chinese -+ x (phags-pa letter sha - A85A) -+A86F PHAGS-PA LETTER VOICED HA -+ * Chinese -+ x (phags-pa letter ha - A85C) -+A870 PHAGS-PA LETTER ASPIRATED FA -+ * Chinese -+ x (phags-pa letter fa - A864) -+@ Subjoined consonant -+A871 PHAGS-PA SUBJOINED LETTER RA -+ * Tibetan, Sanskrit -+ x (tibetan subjoined letter ra - 0FB2) -+@ Consonant addition for Tibetan -+A872 PHAGS-PA SUPERFIXED LETTER RA -+ * Tibetan -+ x (tibetan letter ra - 0F62) -+@ Candrabindu -+A873 PHAGS-PA LETTER CANDRABINDU -+ * Sanskrit -+ x (tibetan sign sna ldan - 0F83) -+ x (tibetan sign rjes su nga ro - 0F7E) -+ x (mongolian letter ali gali anusvara one - 1880) -+@ Head marks for Tibetan -+A874 PHAGS-PA SINGLE HEAD MARK -+ * Tibetan -+ * marks beginning of text -+ x (tibetan mark initial yig mgo mdun ma - 0F04) -+ x (mongolian birga - 1800) -+A875 PHAGS-PA DOUBLE HEAD MARK -+ * Tibetan -+ * marks beginning of text -+@ Punctuation for Tibetan -+A876 PHAGS-PA MARK SHAD -+ * Tibetan -+ x (tibetan mark shad - 0F0D) -+A877 PHAGS-PA MARK DOUBLE SHAD -+ * Tibetan -+ x (tibetan mark nyis shad - 0F0E) - @@ AC00 Hangul Syllables D7A3 - @@ D800 High Surrogates DB7F - @@ DB80 High Private Use Surrogates DBFF - @@ DC00 Low Surrogates DFFF - @@ E000 Private Use Area F8FF - @@ F900 CJK Compatibility Ideographs FAFF -+@@+ - @ Pronunciation variants from KS�X�1001:1998 - F900 CJK COMPATIBILITY IDEOGRAPH-F900 - : 8C48 -@@ -19004,7 +19849,7 @@ - : 898B - FA0B CJK COMPATIBILITY IDEOGRAPH-FA0B - : 5ED3 --@ Duplicates from Big 5 -+@ Duplicate characters from Big 5 - FA0C CJK COMPATIBILITY IDEOGRAPH-FA0C - : 5140 - FA0D CJK COMPATIBILITY IDEOGRAPH-FA0D -@@ -19531,7 +20376,7 @@ - FB4F HEBREW LIGATURE ALEF LAMED - # 05D0 05DC - @@ FB50 Arabic Presentation Forms-A FDFF --@+ Preferred characters are found in the Arabic block 0600 - 06FF. -+@+ Preferred characters are found in the Arabic block 0600 - 06FF. This block also contains 32 noncharacters in the range FDD0 - FDDF. - @ Glyphs for contextual forms of letters for Persian, Urdu, Sindhi, etc. - FB50 ARABIC LETTER ALEF WASLA ISOLATED FORM - # 0671 -@@ -20698,7 +21543,7 @@ - FDC7 ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM - # 0646 062C 064A - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - FDD0 - FDD1 - FDD2 -@@ -20763,7 +21608,7 @@ - FDFD ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM - @@ FE00 Variation Selectors FE0F - @ Variation selectors --@+ Combining characters; in conjunction with the preceding character these indicate a predetermined choice of variant glyph -+@+ Combining characters; in conjunction with the preceding character these indicate a predetermined choice of variant glyph - FE00 VARIATION SELECTOR-1 - * these are abbreviated VS1, and so on - FE01 VARIATION SELECTOR-2 -@@ -20808,6 +21653,8 @@ - FE17 PRESENTATION FORM FOR VERTICAL LEFT WHITE LENTICULAR BRACKET - # 3016 - FE18 PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET -+ % PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRACKET -+ * misspelling of "BRACKET" in character name is a known defect - # 3017 - FE19 PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS - x (vertical ellipsis - 22EE) -@@ -20831,16 +21678,22 @@ - FE34 PRESENTATION FORM FOR VERTICAL WAVY LOW LINE - # 005F - FE35 PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS -+ x (top parenthesis - 23DC) - # 0028 - FE36 PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS -+ x (bottom parenthesis - 23DD) - # 0029 - FE37 PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET -+ x (top curly bracket - 23DE) - # 007B - FE38 PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET -+ x (bottom curly bracket - 23DF) - # 007D - FE39 PRESENTATION FORM FOR VERTICAL LEFT TORTOISE SHELL BRACKET -+ x (top tortoise shell bracket - 23E0) - # 3014 - FE3A PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET -+ x (bottom tortoise shell bracket - 23E1) - # 3015 - FE3B PRESENTATION FORM FOR VERTICAL LEFT BLACK LENTICULAR BRACKET - # 3010 -@@ -20890,14 +21743,14 @@ - FE4F WAVY LOW LINE - # 005F low line - @@ FE50 Small Form Variants FE6F --@+ These characters are compatibility characters needed to map to CNS 11643. -+@+ Compatibility variants for CNS 11643. - @ Small form variants - FE50 SMALL COMMA - x (presentation form for vertical comma - FE10) - # 002C - FE51 SMALL IDEOGRAPHIC COMMA - x (presentation form for vertical ideographic comma - FE11) -- x (black sesame dot - FE45) -+ x (sesame dot - FE45) - # 3001 - FE52 SMALL FULL STOP - # 002E -@@ -20908,10 +21761,8 @@ - x (presentation form for vertical colon - FE13) - # 003A - FE56 SMALL QUESTION MARK -- x (presentation form for vertical question mark - FE16) - # 003F - FE57 SMALL EXCLAMATION MARK -- x (presentation form for vertical exclamation mark - FE15) - # 0021 - FE58 SMALL EM DASH - # 2014 -@@ -20952,6 +21803,7 @@ - FE6B SMALL COMMERCIAL AT - # 0040 - @@ FE70 Arabic Presentation Forms-B FEFF -+@+ Preferred characters are found in the Arabic block 0600 - 06FF. Some of these characters are used for Arabic mathematics where contextual shape variations are important semantically. - @ Glyphs for spacing forms of Arabic points - FE70 ARABIC FATHATAN ISOLATED FORM - # 0020 064B -@@ -21726,7 +22578,7 @@ - * 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 - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - FFFE - * the value FFFE is guaranteed not to be a Unicode character at all - * may be used to detect byte order by contrast with FEFF which is a character -@@ -21734,6 +22586,7 @@ - FFFF - * the value FFFF is guaranteed not to be a Unicode character at all - @@ 10000 Linear B Syllabary 1007F -+@@+ - @ Basic syllables - 10000 LINEAR B SYLLABLE B008 A - 10001 LINEAR B SYLLABLE B038 E -@@ -22517,6 +23370,60 @@ - 10838 CYPRIOT SYLLABLE XE - 1083C CYPRIOT SYLLABLE ZA - 1083F CYPRIOT SYLLABLE ZO -+@@ 10900 Phoenician 1091F -+@ Letters -+10900 PHOENICIAN LETTER ALF -+ x (hebrew letter alef - 05D0) -+10901 PHOENICIAN LETTER BET -+ x (hebrew letter bet - 05D1) -+10902 PHOENICIAN LETTER GAML -+ x (hebrew letter gimel - 05D2) -+10903 PHOENICIAN LETTER DELT -+ x (hebrew letter dalet - 05D3) -+10904 PHOENICIAN LETTER HE -+ x (hebrew letter he - 05D4) -+10905 PHOENICIAN LETTER WAU -+ x (hebrew letter vav - 05D5) -+10906 PHOENICIAN LETTER ZAI -+ x (hebrew letter zayin - 05D6) -+10907 PHOENICIAN LETTER HET -+ x (hebrew letter het - 05D7) -+10908 PHOENICIAN LETTER TET -+ x (hebrew letter tet - 05D8) -+10909 PHOENICIAN LETTER YOD -+ x (hebrew letter yod - 05D9) -+1090A PHOENICIAN LETTER KAF -+ x (hebrew letter kaf - 05DB) -+1090B PHOENICIAN LETTER LAMD -+ x (hebrew letter lamed - 05DC) -+1090C PHOENICIAN LETTER MEM -+ x (hebrew letter mem - 05DE) -+1090D PHOENICIAN LETTER NUN -+ x (hebrew letter nun - 05E0) -+1090E PHOENICIAN LETTER SEMK -+ x (hebrew letter samekh - 05E1) -+1090F PHOENICIAN LETTER AIN -+ x (hebrew letter ayin - 05E2) -+10910 PHOENICIAN LETTER PE -+ x (hebrew letter pe - 05E4) -+10911 PHOENICIAN LETTER SADE -+ x (hebrew letter tsadi - 05E6) -+10912 PHOENICIAN LETTER QOF -+ x (hebrew letter qof - 05E7) -+10913 PHOENICIAN LETTER ROSH -+ x (hebrew letter resh - 05E8) -+10914 PHOENICIAN LETTER SHIN -+ x (hebrew letter shin - 05E9) -+10915 PHOENICIAN LETTER TAU -+ x (hebrew letter tav - 05EA) -+@ Numbers -+10916 PHOENICIAN NUMBER ONE -+10917 PHOENICIAN NUMBER TEN -+10918 PHOENICIAN NUMBER TWENTY -+10919 PHOENICIAN NUMBER ONE HUNDRED -+@ Punctuation -+1091F PHOENICIAN WORD SEPARATOR -+ x (middle dot - 00B7) - @@ 10A00 Kharoshthi 10A5F - @ Vowels - 10A00 KHAROSHTHI LETTER A -@@ -22574,6 +23481,7 @@ - 10A3F KHAROSHTHI VIRAMA - = halant - * suppresses inherent vowel -+ * shape shown is arbitrary and is not visibly rendered - @ Digits - 10A40 KHAROSHTHI DIGIT ONE - 10A41 KHAROSHTHI DIGIT TWO -@@ -22594,8 +23502,1001 @@ - 10A56 KHAROSHTHI PUNCTUATION DANDA - 10A57 KHAROSHTHI PUNCTUATION DOUBLE DANDA - 10A58 KHAROSHTHI PUNCTUATION LINES -+@@ 12000 Cuneiform 123FF -+@ Signs -+12000 CUNEIFORM SIGN A -+12001 CUNEIFORM SIGN A TIMES A -+12002 CUNEIFORM SIGN A TIMES BAD -+12003 CUNEIFORM SIGN A TIMES GAN2 TENU -+12004 CUNEIFORM SIGN A TIMES HA -+12005 CUNEIFORM SIGN A TIMES IGI -+12006 CUNEIFORM SIGN A TIMES LAGAR GUNU -+12007 CUNEIFORM SIGN A TIMES MUSH -+12008 CUNEIFORM SIGN A TIMES SAG -+12009 CUNEIFORM SIGN A2 -+1200A CUNEIFORM SIGN AB -+1200B CUNEIFORM SIGN AB TIMES ASH2 -+1200C CUNEIFORM SIGN AB TIMES DUN3 GUNU -+1200D CUNEIFORM SIGN AB TIMES GAL -+1200E CUNEIFORM SIGN AB TIMES GAN2 TENU -+1200F CUNEIFORM SIGN AB TIMES HA -+12010 CUNEIFORM SIGN AB TIMES IGI GUNU -+12011 CUNEIFORM SIGN AB TIMES IMIN -+12012 CUNEIFORM SIGN AB TIMES LAGAB -+12013 CUNEIFORM SIGN AB TIMES SHESH -+12014 CUNEIFORM SIGN AB TIMES U PLUS U PLUS U -+12015 CUNEIFORM SIGN AB GUNU -+12016 CUNEIFORM SIGN AB2 -+12017 CUNEIFORM SIGN AB2 TIMES BALAG -+12018 CUNEIFORM SIGN AB2 TIMES GAN2 TENU -+12019 CUNEIFORM SIGN AB2 TIMES ME PLUS EN -+1201A CUNEIFORM SIGN AB2 TIMES SHA3 -+1201B CUNEIFORM SIGN AB2 TIMES TAK4 -+1201C CUNEIFORM SIGN AD -+1201D CUNEIFORM SIGN AK -+1201E CUNEIFORM SIGN AK TIMES ERIN2 -+1201F CUNEIFORM SIGN AK TIMES SHITA PLUS GISH -+12020 CUNEIFORM SIGN AL -+12021 CUNEIFORM SIGN AL TIMES AL -+12022 CUNEIFORM SIGN AL TIMES DIM2 -+12023 CUNEIFORM SIGN AL TIMES GISH -+12024 CUNEIFORM SIGN AL TIMES HA -+12025 CUNEIFORM SIGN AL TIMES KAD3 -+12026 CUNEIFORM SIGN AL TIMES KI -+12027 CUNEIFORM SIGN AL TIMES SHE -+12028 CUNEIFORM SIGN AL TIMES USH -+12029 CUNEIFORM SIGN ALAN -+1202A CUNEIFORM SIGN ALEPH -+1202B CUNEIFORM SIGN AMAR -+1202C CUNEIFORM SIGN AMAR TIMES SHE -+1202D CUNEIFORM SIGN AN -+1202E CUNEIFORM SIGN AN OVER AN -+1202F CUNEIFORM SIGN AN THREE TIMES -+12030 CUNEIFORM SIGN AN PLUS NAGA OPPOSING AN PLUS NAGA -+12031 CUNEIFORM SIGN AN PLUS NAGA SQUARED -+12032 CUNEIFORM SIGN ANSHE -+12033 CUNEIFORM SIGN APIN -+12034 CUNEIFORM SIGN ARAD -+12035 CUNEIFORM SIGN ARAD TIMES KUR -+12036 CUNEIFORM SIGN ARKAB -+12037 CUNEIFORM SIGN ASAL2 -+12038 CUNEIFORM SIGN ASH -+12039 CUNEIFORM SIGN ASH ZIDA TENU -+1203A CUNEIFORM SIGN ASH KABA TENU -+1203B CUNEIFORM SIGN ASH OVER ASH TUG2 OVER TUG2 TUG2 OVER TUG2 PAP -+1203C CUNEIFORM SIGN ASH OVER ASH OVER ASH -+1203D CUNEIFORM SIGN ASH OVER ASH OVER ASH CROSSING ASH OVER ASH OVER ASH -+1203E CUNEIFORM SIGN ASH2 -+1203F CUNEIFORM SIGN ASHGAB -+12040 CUNEIFORM SIGN BA -+12041 CUNEIFORM SIGN BAD -+12042 CUNEIFORM SIGN BAG3 -+12043 CUNEIFORM SIGN BAHAR2 -+12044 CUNEIFORM SIGN BAL -+12045 CUNEIFORM SIGN BAL OVER BAL -+12046 CUNEIFORM SIGN BALAG -+12047 CUNEIFORM SIGN BAR -+12048 CUNEIFORM SIGN BARA2 -+12049 CUNEIFORM SIGN BI -+1204A CUNEIFORM SIGN BI TIMES A -+1204B CUNEIFORM SIGN BI TIMES GAR -+1204C CUNEIFORM SIGN BI TIMES IGI GUNU -+1204D CUNEIFORM SIGN BU -+1204E CUNEIFORM SIGN BU OVER BU AB -+1204F CUNEIFORM SIGN BU OVER BU UN -+12050 CUNEIFORM SIGN BU CROSSING BU -+12051 CUNEIFORM SIGN BULUG -+12052 CUNEIFORM SIGN BULUG OVER BULUG -+12053 CUNEIFORM SIGN BUR -+12054 CUNEIFORM SIGN BUR2 -+12055 CUNEIFORM SIGN DA -+12056 CUNEIFORM SIGN DAG -+12057 CUNEIFORM SIGN DAG KISIM5 TIMES A PLUS MASH -+12058 CUNEIFORM SIGN DAG KISIM5 TIMES AMAR -+12059 CUNEIFORM SIGN DAG KISIM5 TIMES BALAG -+1205A CUNEIFORM SIGN DAG KISIM5 TIMES BI -+1205B CUNEIFORM SIGN DAG KISIM5 TIMES GA -+1205C CUNEIFORM SIGN DAG KISIM5 TIMES GA PLUS MASH -+1205D CUNEIFORM SIGN DAG KISIM5 TIMES GI -+1205E CUNEIFORM SIGN DAG KISIM5 TIMES GIR2 -+1205F CUNEIFORM SIGN DAG KISIM5 TIMES GUD -+12060 CUNEIFORM SIGN DAG KISIM5 TIMES HA -+12061 CUNEIFORM SIGN DAG KISIM5 TIMES IR -+12062 CUNEIFORM SIGN DAG KISIM5 TIMES IR PLUS LU -+12063 CUNEIFORM SIGN DAG KISIM5 TIMES KAK -+12064 CUNEIFORM SIGN DAG KISIM5 TIMES LA -+12065 CUNEIFORM SIGN DAG KISIM5 TIMES LU -+12066 CUNEIFORM SIGN DAG KISIM5 TIMES LU PLUS MASH2 -+12067 CUNEIFORM SIGN DAG KISIM5 TIMES LUM -+12068 CUNEIFORM SIGN DAG KISIM5 TIMES NE -+12069 CUNEIFORM SIGN DAG KISIM5 TIMES PAP PLUS PAP -+1206A CUNEIFORM SIGN DAG KISIM5 TIMES SI -+1206B CUNEIFORM SIGN DAG KISIM5 TIMES TAK4 -+1206C CUNEIFORM SIGN DAG KISIM5 TIMES U2 PLUS GIR2 -+1206D CUNEIFORM SIGN DAG KISIM5 TIMES USH -+1206E CUNEIFORM SIGN DAM -+1206F CUNEIFORM SIGN DAR -+12070 CUNEIFORM SIGN DARA3 -+12071 CUNEIFORM SIGN DARA4 -+12072 CUNEIFORM SIGN DI -+12073 CUNEIFORM SIGN DIB -+12074 CUNEIFORM SIGN DIM -+12075 CUNEIFORM SIGN DIM TIMES SHE -+12076 CUNEIFORM SIGN DIM2 -+12077 CUNEIFORM SIGN DIN -+12078 CUNEIFORM SIGN DIN KASKAL U GUNU DISH -+12079 CUNEIFORM SIGN DISH -+1207A CUNEIFORM SIGN DU -+1207B CUNEIFORM SIGN DU OVER DU -+1207C CUNEIFORM SIGN DU GUNU -+1207D CUNEIFORM SIGN DU SHESHIG -+1207E CUNEIFORM SIGN DUB -+1207F CUNEIFORM SIGN DUB TIMES ESH2 -+12080 CUNEIFORM SIGN DUB2 -+12081 CUNEIFORM SIGN DUG -+12082 CUNEIFORM SIGN DUGUD -+12083 CUNEIFORM SIGN DUH -+12084 CUNEIFORM SIGN DUN -+12085 CUNEIFORM SIGN DUN3 -+12086 CUNEIFORM SIGN DUN3 GUNU -+12087 CUNEIFORM SIGN DUN3 GUNU GUNU -+12088 CUNEIFORM SIGN DUN4 -+12089 CUNEIFORM SIGN DUR2 -+1208A CUNEIFORM SIGN E -+1208B CUNEIFORM SIGN E TIMES PAP -+1208C CUNEIFORM SIGN E OVER E NUN OVER NUN -+1208D CUNEIFORM SIGN E2 -+1208E CUNEIFORM SIGN E2 TIMES A PLUS HA PLUS DA -+1208F CUNEIFORM SIGN E2 TIMES GAR -+12090 CUNEIFORM SIGN E2 TIMES MI -+12091 CUNEIFORM SIGN E2 TIMES SAL -+12092 CUNEIFORM SIGN E2 TIMES SHE -+12093 CUNEIFORM SIGN E2 TIMES U -+12094 CUNEIFORM SIGN EDIN -+12095 CUNEIFORM SIGN EGIR -+12096 CUNEIFORM SIGN EL -+12097 CUNEIFORM SIGN EN -+12098 CUNEIFORM SIGN EN TIMES GAN2 -+12099 CUNEIFORM SIGN EN TIMES GAN2 TENU -+1209A CUNEIFORM SIGN EN TIMES ME -+1209B CUNEIFORM SIGN EN CROSSING EN -+1209C CUNEIFORM SIGN EN OPPOSING EN -+1209D CUNEIFORM SIGN EN SQUARED -+1209E CUNEIFORM SIGN EREN -+1209F CUNEIFORM SIGN ERIN2 -+120A0 CUNEIFORM SIGN ESH2 -+120A1 CUNEIFORM SIGN EZEN -+120A2 CUNEIFORM SIGN EZEN TIMES A -+120A3 CUNEIFORM SIGN EZEN TIMES A PLUS LAL -+120A4 CUNEIFORM SIGN EZEN TIMES A PLUS LAL TIMES LAL -+120A5 CUNEIFORM SIGN EZEN TIMES AN -+120A6 CUNEIFORM SIGN EZEN TIMES BAD -+120A7 CUNEIFORM SIGN EZEN TIMES DUN3 GUNU -+120A8 CUNEIFORM SIGN EZEN TIMES DUN3 GUNU GUNU -+120A9 CUNEIFORM SIGN EZEN TIMES HA -+120AA CUNEIFORM SIGN EZEN TIMES HA GUNU -+120AB CUNEIFORM SIGN EZEN TIMES IGI GUNU -+120AC CUNEIFORM SIGN EZEN TIMES KASKAL -+120AD CUNEIFORM SIGN EZEN TIMES KASKAL SQUARED -+120AE CUNEIFORM SIGN EZEN TIMES KU3 -+120AF CUNEIFORM SIGN EZEN TIMES LA -+120B0 CUNEIFORM SIGN EZEN TIMES LAL TIMES LAL -+120B1 CUNEIFORM SIGN EZEN TIMES LI -+120B2 CUNEIFORM SIGN EZEN TIMES LU -+120B3 CUNEIFORM SIGN EZEN TIMES U2 -+120B4 CUNEIFORM SIGN EZEN TIMES UD -+120B5 CUNEIFORM SIGN GA -+120B6 CUNEIFORM SIGN GA GUNU -+120B7 CUNEIFORM SIGN GA2 -+120B8 CUNEIFORM SIGN GA2 TIMES A PLUS DA PLUS HA -+120B9 CUNEIFORM SIGN GA2 TIMES A PLUS HA -+120BA CUNEIFORM SIGN GA2 TIMES A PLUS IGI -+120BB CUNEIFORM SIGN GA2 TIMES AB2 TENU PLUS TAB -+120BC CUNEIFORM SIGN GA2 TIMES AN -+120BD CUNEIFORM SIGN GA2 TIMES ASH -+120BE CUNEIFORM SIGN GA2 TIMES ASH2 PLUS GAL -+120BF CUNEIFORM SIGN GA2 TIMES BAD -+120C0 CUNEIFORM SIGN GA2 TIMES BAR PLUS RA -+120C1 CUNEIFORM SIGN GA2 TIMES BUR -+120C2 CUNEIFORM SIGN GA2 TIMES BUR PLUS RA -+120C3 CUNEIFORM SIGN GA2 TIMES DA -+120C4 CUNEIFORM SIGN GA2 TIMES DI -+120C5 CUNEIFORM SIGN GA2 TIMES DIM TIMES SHE -+120C6 CUNEIFORM SIGN GA2 TIMES DUB -+120C7 CUNEIFORM SIGN GA2 TIMES EL -+120C8 CUNEIFORM SIGN GA2 TIMES EL PLUS LA -+120C9 CUNEIFORM SIGN GA2 TIMES EN -+120CA CUNEIFORM SIGN GA2 TIMES EN TIMES GAN2 TENU -+120CB CUNEIFORM SIGN GA2 TIMES GAN2 TENU -+120CC CUNEIFORM SIGN GA2 TIMES GAR -+120CD CUNEIFORM SIGN GA2 TIMES GI -+120CE CUNEIFORM SIGN GA2 TIMES GI4 -+120CF CUNEIFORM SIGN GA2 TIMES GI4 PLUS A -+120D0 CUNEIFORM SIGN GA2 TIMES GIR2 PLUS SU -+120D1 CUNEIFORM SIGN GA2 TIMES HA PLUS LU PLUS ESH2 -+120D2 CUNEIFORM SIGN GA2 TIMES HAL -+120D3 CUNEIFORM SIGN GA2 TIMES HAL PLUS LA -+120D4 CUNEIFORM SIGN GA2 TIMES HI PLUS LI -+120D5 CUNEIFORM SIGN GA2 TIMES HUB2 -+120D6 CUNEIFORM SIGN GA2 TIMES IGI GUNU -+120D7 CUNEIFORM SIGN GA2 TIMES ISH PLUS HU PLUS ASH -+120D8 CUNEIFORM SIGN GA2 TIMES KAK -+120D9 CUNEIFORM SIGN GA2 TIMES KASKAL -+120DA CUNEIFORM SIGN GA2 TIMES KID -+120DB CUNEIFORM SIGN GA2 TIMES KID PLUS LAL -+120DC CUNEIFORM SIGN GA2 TIMES KU3 PLUS AN -+120DD CUNEIFORM SIGN GA2 TIMES LA -+120DE CUNEIFORM SIGN GA2 TIMES ME PLUS EN -+120DF CUNEIFORM SIGN GA2 TIMES MI -+120E0 CUNEIFORM SIGN GA2 TIMES NUN -+120E1 CUNEIFORM SIGN GA2 TIMES NUN OVER NUN -+120E2 CUNEIFORM SIGN GA2 TIMES PA -+120E3 CUNEIFORM SIGN GA2 TIMES SAL -+120E4 CUNEIFORM SIGN GA2 TIMES SAR -+120E5 CUNEIFORM SIGN GA2 TIMES SHE -+120E6 CUNEIFORM SIGN GA2 TIMES SHE PLUS TUR -+120E7 CUNEIFORM SIGN GA2 TIMES SHID -+120E8 CUNEIFORM SIGN GA2 TIMES SUM -+120E9 CUNEIFORM SIGN GA2 TIMES TAK4 -+120EA CUNEIFORM SIGN GA2 TIMES U -+120EB CUNEIFORM SIGN GA2 TIMES UD -+120EC CUNEIFORM SIGN GA2 TIMES UD PLUS DU -+120ED CUNEIFORM SIGN GA2 OVER GA2 -+120EE CUNEIFORM SIGN GABA -+120EF CUNEIFORM SIGN GABA CROSSING GABA -+120F0 CUNEIFORM SIGN GAD -+120F1 CUNEIFORM SIGN GAD OVER GAD GAR OVER GAR -+120F2 CUNEIFORM SIGN GAL -+120F3 CUNEIFORM SIGN GAL GAD OVER GAD GAR OVER GAR -+120F4 CUNEIFORM SIGN GALAM -+120F5 CUNEIFORM SIGN GAM -+120F6 CUNEIFORM SIGN GAN -+120F7 CUNEIFORM SIGN GAN2 -+120F8 CUNEIFORM SIGN GAN2 TENU -+120F9 CUNEIFORM SIGN GAN2 OVER GAN2 -+120FA CUNEIFORM SIGN GAN2 CROSSING GAN2 -+120FB CUNEIFORM SIGN GAR -+120FC CUNEIFORM SIGN GAR3 -+120FD CUNEIFORM SIGN GASHAN -+120FE CUNEIFORM SIGN GESHTIN -+120FF CUNEIFORM SIGN GESHTIN TIMES KUR -+12100 CUNEIFORM SIGN GI -+12101 CUNEIFORM SIGN GI TIMES E -+12102 CUNEIFORM SIGN GI TIMES U -+12103 CUNEIFORM SIGN GI CROSSING GI -+12104 CUNEIFORM SIGN GI4 -+12105 CUNEIFORM SIGN GI4 OVER GI4 -+12106 CUNEIFORM SIGN GI4 CROSSING GI4 -+12107 CUNEIFORM SIGN GIDIM -+12108 CUNEIFORM SIGN GIR2 -+12109 CUNEIFORM SIGN GIR2 GUNU -+1210A CUNEIFORM SIGN GIR3 -+1210B CUNEIFORM SIGN GIR3 TIMES A PLUS IGI -+1210C CUNEIFORM SIGN GIR3 TIMES GAN2 TENU -+1210D CUNEIFORM SIGN GIR3 TIMES IGI -+1210E CUNEIFORM SIGN GIR3 TIMES LU PLUS IGI -+1210F CUNEIFORM SIGN GIR3 TIMES PA -+12110 CUNEIFORM SIGN GISAL -+12111 CUNEIFORM SIGN GISH -+12112 CUNEIFORM SIGN GISH CROSSING GISH -+12113 CUNEIFORM SIGN GISH TIMES BAD -+12114 CUNEIFORM SIGN GISH TIMES TAK4 -+12115 CUNEIFORM SIGN GISH TENU -+12116 CUNEIFORM SIGN GU -+12117 CUNEIFORM SIGN GU CROSSING GU -+12118 CUNEIFORM SIGN GU2 -+12119 CUNEIFORM SIGN GU2 TIMES KAK -+1211A CUNEIFORM SIGN GU2 TIMES KAK TIMES IGI GUNU -+1211B CUNEIFORM SIGN GU2 TIMES NUN -+1211C CUNEIFORM SIGN GU2 TIMES SAL PLUS TUG2 -+1211D CUNEIFORM SIGN GU2 GUNU -+1211E CUNEIFORM SIGN GUD -+1211F CUNEIFORM SIGN GUD TIMES A PLUS KUR -+12120 CUNEIFORM SIGN GUD TIMES KUR -+12121 CUNEIFORM SIGN GUD OVER GUD LUGAL -+12122 CUNEIFORM SIGN GUL -+12123 CUNEIFORM SIGN GUM -+12124 CUNEIFORM SIGN GUM TIMES SHE -+12125 CUNEIFORM SIGN GUR -+12126 CUNEIFORM SIGN GUR7 -+12127 CUNEIFORM SIGN GURUN -+12128 CUNEIFORM SIGN GURUSH -+12129 CUNEIFORM SIGN HA -+1212A CUNEIFORM SIGN HA TENU -+1212B CUNEIFORM SIGN HA GUNU -+1212C CUNEIFORM SIGN HAL -+1212D CUNEIFORM SIGN HI -+1212E CUNEIFORM SIGN HI TIMES ASH -+1212F CUNEIFORM SIGN HI TIMES ASH2 -+12130 CUNEIFORM SIGN HI TIMES BAD -+12131 CUNEIFORM SIGN HI TIMES DISH -+12132 CUNEIFORM SIGN HI TIMES GAD -+12133 CUNEIFORM SIGN HI TIMES KIN -+12134 CUNEIFORM SIGN HI TIMES NUN -+12135 CUNEIFORM SIGN HI TIMES SHE -+12136 CUNEIFORM SIGN HI TIMES U -+12137 CUNEIFORM SIGN HU -+12138 CUNEIFORM SIGN HUB2 -+12139 CUNEIFORM SIGN HUB2 TIMES AN -+1213A CUNEIFORM SIGN HUB2 TIMES HAL -+1213B CUNEIFORM SIGN HUB2 TIMES KASKAL -+1213C CUNEIFORM SIGN HUB2 TIMES LISH -+1213D CUNEIFORM SIGN HUB2 TIMES UD -+1213E CUNEIFORM SIGN HUL2 -+1213F CUNEIFORM SIGN I -+12140 CUNEIFORM SIGN I A -+12141 CUNEIFORM SIGN IB -+12142 CUNEIFORM SIGN IDIM -+12143 CUNEIFORM SIGN IDIM OVER IDIM BUR -+12144 CUNEIFORM SIGN IDIM OVER IDIM SQUARED -+12145 CUNEIFORM SIGN IG -+12146 CUNEIFORM SIGN IGI -+12147 CUNEIFORM SIGN IGI DIB -+12148 CUNEIFORM SIGN IGI RI -+12149 CUNEIFORM SIGN IGI OVER IGI SHIR OVER SHIR UD OVER UD -+1214A CUNEIFORM SIGN IGI GUNU -+1214B CUNEIFORM SIGN IL -+1214C CUNEIFORM SIGN IL TIMES GAN2 TENU -+1214D CUNEIFORM SIGN IL2 -+1214E CUNEIFORM SIGN IM -+1214F CUNEIFORM SIGN IM TIMES TAK4 -+12150 CUNEIFORM SIGN IM CROSSING IM -+12151 CUNEIFORM SIGN IM OPPOSING IM -+12152 CUNEIFORM SIGN IM SQUARED -+12153 CUNEIFORM SIGN IMIN -+12154 CUNEIFORM SIGN IN -+12155 CUNEIFORM SIGN IR -+12156 CUNEIFORM SIGN ISH -+12157 CUNEIFORM SIGN KA -+12158 CUNEIFORM SIGN KA TIMES A -+12159 CUNEIFORM SIGN KA TIMES AD -+1215A CUNEIFORM SIGN KA TIMES AD PLUS KU3 -+1215B CUNEIFORM SIGN KA TIMES ASH2 -+1215C CUNEIFORM SIGN KA TIMES BAD -+1215D CUNEIFORM SIGN KA TIMES BALAG -+1215E CUNEIFORM SIGN KA TIMES BAR -+1215F CUNEIFORM SIGN KA TIMES BI -+12160 CUNEIFORM SIGN KA TIMES ERIN2 -+12161 CUNEIFORM SIGN KA TIMES ESH2 -+12162 CUNEIFORM SIGN KA TIMES GA -+12163 CUNEIFORM SIGN KA TIMES GAL -+12164 CUNEIFORM SIGN KA TIMES GAN2 TENU -+12165 CUNEIFORM SIGN KA TIMES GAR -+12166 CUNEIFORM SIGN KA TIMES GAR PLUS SHA3 PLUS A -+12167 CUNEIFORM SIGN KA TIMES GI -+12168 CUNEIFORM SIGN KA TIMES GIR2 -+12169 CUNEIFORM SIGN KA TIMES GISH PLUS SAR -+1216A CUNEIFORM SIGN KA TIMES GISH CROSSING GISH -+1216B CUNEIFORM SIGN KA TIMES GU -+1216C CUNEIFORM SIGN KA TIMES GUR7 -+1216D CUNEIFORM SIGN KA TIMES IGI -+1216E CUNEIFORM SIGN KA TIMES IM -+1216F CUNEIFORM SIGN KA TIMES KAK -+12170 CUNEIFORM SIGN KA TIMES KI -+12171 CUNEIFORM SIGN KA TIMES KID -+12172 CUNEIFORM SIGN KA TIMES LI -+12173 CUNEIFORM SIGN KA TIMES LU -+12174 CUNEIFORM SIGN KA TIMES ME -+12175 CUNEIFORM SIGN KA TIMES ME PLUS DU -+12176 CUNEIFORM SIGN KA TIMES ME PLUS GI -+12177 CUNEIFORM SIGN KA TIMES ME PLUS TE -+12178 CUNEIFORM SIGN KA TIMES MI -+12179 CUNEIFORM SIGN KA TIMES MI PLUS NUNUZ -+1217A CUNEIFORM SIGN KA TIMES NE -+1217B CUNEIFORM SIGN KA TIMES NUN -+1217C CUNEIFORM SIGN KA TIMES PI -+1217D CUNEIFORM SIGN KA TIMES RU -+1217E CUNEIFORM SIGN KA TIMES SA -+1217F CUNEIFORM SIGN KA TIMES SAR -+12180 CUNEIFORM SIGN KA TIMES SHA -+12181 CUNEIFORM SIGN KA TIMES SHE -+12182 CUNEIFORM SIGN KA TIMES SHID -+12183 CUNEIFORM SIGN KA TIMES SHU -+12184 CUNEIFORM SIGN KA TIMES SIG -+12185 CUNEIFORM SIGN KA TIMES SUHUR -+12186 CUNEIFORM SIGN KA TIMES TAR -+12187 CUNEIFORM SIGN KA TIMES U -+12188 CUNEIFORM SIGN KA TIMES U2 -+12189 CUNEIFORM SIGN KA TIMES UD -+1218A CUNEIFORM SIGN KA TIMES UMUM TIMES PA -+1218B CUNEIFORM SIGN KA TIMES USH -+1218C CUNEIFORM SIGN KA TIMES ZI -+1218D CUNEIFORM SIGN KA2 -+1218E CUNEIFORM SIGN KA2 CROSSING KA2 -+1218F CUNEIFORM SIGN KAB -+12190 CUNEIFORM SIGN KAD2 -+12191 CUNEIFORM SIGN KAD3 -+12192 CUNEIFORM SIGN KAD4 -+12193 CUNEIFORM SIGN KAD5 -+12194 CUNEIFORM SIGN KAD5 OVER KAD5 -+12195 CUNEIFORM SIGN KAK -+12196 CUNEIFORM SIGN KAK TIMES IGI GUNU -+12197 CUNEIFORM SIGN KAL -+12198 CUNEIFORM SIGN KAL TIMES BAD -+12199 CUNEIFORM SIGN KAL CROSSING KAL -+1219A CUNEIFORM SIGN KAM2 -+1219B CUNEIFORM SIGN KAM4 -+1219C CUNEIFORM SIGN KASKAL -+1219D CUNEIFORM SIGN KASKAL LAGAB TIMES U OVER LAGAB TIMES U -+1219E CUNEIFORM SIGN KASKAL OVER KASKAL LAGAB TIMES U OVER LAGAB TIMES U -+1219F CUNEIFORM SIGN KESH2 -+121A0 CUNEIFORM SIGN KI -+121A1 CUNEIFORM SIGN KI TIMES BAD -+121A2 CUNEIFORM SIGN KI TIMES U -+121A3 CUNEIFORM SIGN KI TIMES UD -+121A4 CUNEIFORM SIGN KID -+121A5 CUNEIFORM SIGN KIN -+121A6 CUNEIFORM SIGN KISAL -+121A7 CUNEIFORM SIGN KISH -+121A8 CUNEIFORM SIGN KISIM5 -+121A9 CUNEIFORM SIGN KISIM5 OVER KISIM5 -+121AA CUNEIFORM SIGN KU -+121AB CUNEIFORM SIGN KU OVER HI TIMES ASH2 KU OVER HI TIMES ASH2 -+121AC CUNEIFORM SIGN KU3 -+121AD CUNEIFORM SIGN KU4 -+121AE CUNEIFORM SIGN KU4 VARIANT FORM -+121AF CUNEIFORM SIGN KU7 -+121B0 CUNEIFORM SIGN KUL -+121B1 CUNEIFORM SIGN KUL GUNU -+121B2 CUNEIFORM SIGN KUN -+121B3 CUNEIFORM SIGN KUR -+121B4 CUNEIFORM SIGN KUR OPPOSING KUR -+121B5 CUNEIFORM SIGN KUSHU2 -+121B6 CUNEIFORM SIGN KWU318 -+121B7 CUNEIFORM SIGN LA -+121B8 CUNEIFORM SIGN LAGAB -+121B9 CUNEIFORM SIGN LAGAB TIMES A -+121BA CUNEIFORM SIGN LAGAB TIMES A PLUS DA PLUS HA -+121BB CUNEIFORM SIGN LAGAB TIMES A PLUS GAR -+121BC CUNEIFORM SIGN LAGAB TIMES A PLUS LAL -+121BD CUNEIFORM SIGN LAGAB TIMES AL -+121BE CUNEIFORM SIGN LAGAB TIMES AN -+121BF CUNEIFORM SIGN LAGAB TIMES ASH ZIDA TENU -+121C0 CUNEIFORM SIGN LAGAB TIMES BAD -+121C1 CUNEIFORM SIGN LAGAB TIMES BI -+121C2 CUNEIFORM SIGN LAGAB TIMES DAR -+121C3 CUNEIFORM SIGN LAGAB TIMES EN -+121C4 CUNEIFORM SIGN LAGAB TIMES GA -+121C5 CUNEIFORM SIGN LAGAB TIMES GAR -+121C6 CUNEIFORM SIGN LAGAB TIMES GUD -+121C7 CUNEIFORM SIGN LAGAB TIMES GUD PLUS GUD -+121C8 CUNEIFORM SIGN LAGAB TIMES HA -+121C9 CUNEIFORM SIGN LAGAB TIMES HAL -+121CA CUNEIFORM SIGN LAGAB TIMES HI TIMES NUN -+121CB CUNEIFORM SIGN LAGAB TIMES IGI GUNU -+121CC CUNEIFORM SIGN LAGAB TIMES IM -+121CD CUNEIFORM SIGN LAGAB TIMES IM PLUS HA -+121CE CUNEIFORM SIGN LAGAB TIMES IM PLUS LU -+121CF CUNEIFORM SIGN LAGAB TIMES KI -+121D0 CUNEIFORM SIGN LAGAB TIMES KIN -+121D1 CUNEIFORM SIGN LAGAB TIMES KU3 -+121D2 CUNEIFORM SIGN LAGAB TIMES KUL -+121D3 CUNEIFORM SIGN LAGAB TIMES KUL PLUS HI PLUS A -+121D4 CUNEIFORM SIGN LAGAB TIMES LAGAB -+121D5 CUNEIFORM SIGN LAGAB TIMES LISH -+121D6 CUNEIFORM SIGN LAGAB TIMES LU -+121D7 CUNEIFORM SIGN LAGAB TIMES LUL -+121D8 CUNEIFORM SIGN LAGAB TIMES ME -+121D9 CUNEIFORM SIGN LAGAB TIMES ME PLUS EN -+121DA CUNEIFORM SIGN LAGAB TIMES MUSH -+121DB CUNEIFORM SIGN LAGAB TIMES NE -+121DC CUNEIFORM SIGN LAGAB TIMES SHE PLUS SUM -+121DD CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH PLUS ERIN2 -+121DE CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH TENU -+121DF CUNEIFORM SIGN LAGAB TIMES SHU2 -+121E0 CUNEIFORM SIGN LAGAB TIMES SHU2 PLUS SHU2 -+121E1 CUNEIFORM SIGN LAGAB TIMES SUM -+121E2 CUNEIFORM SIGN LAGAB TIMES TAG -+121E3 CUNEIFORM SIGN LAGAB TIMES TAK4 -+121E4 CUNEIFORM SIGN LAGAB TIMES TE PLUS A PLUS SU PLUS NA -+121E5 CUNEIFORM SIGN LAGAB TIMES U -+121E6 CUNEIFORM SIGN LAGAB TIMES U PLUS A -+121E7 CUNEIFORM SIGN LAGAB TIMES U PLUS U PLUS U -+121E8 CUNEIFORM SIGN LAGAB TIMES U2 PLUS ASH -+121E9 CUNEIFORM SIGN LAGAB TIMES UD -+121EA CUNEIFORM SIGN LAGAB TIMES USH -+121EB CUNEIFORM SIGN LAGAB SQUARED -+121EC CUNEIFORM SIGN LAGAR -+121ED CUNEIFORM SIGN LAGAR TIMES SHE -+121EE CUNEIFORM SIGN LAGAR TIMES SHE PLUS SUM -+121EF CUNEIFORM SIGN LAGAR GUNU -+121F0 CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE -+121F1 CUNEIFORM SIGN LAHSHU -+121F2 CUNEIFORM SIGN LAL -+121F3 CUNEIFORM SIGN LAL TIMES LAL -+121F4 CUNEIFORM SIGN LAM -+121F5 CUNEIFORM SIGN LAM TIMES KUR -+121F6 CUNEIFORM SIGN LAM TIMES KUR PLUS RU -+121F7 CUNEIFORM SIGN LI -+121F8 CUNEIFORM SIGN LIL -+121F9 CUNEIFORM SIGN LIMMU2 -+121FA CUNEIFORM SIGN LISH -+121FB CUNEIFORM SIGN LU -+121FC CUNEIFORM SIGN LU TIMES BAD -+121FD CUNEIFORM SIGN LU2 -+121FE CUNEIFORM SIGN LU2 TIMES AL -+121FF CUNEIFORM SIGN LU2 TIMES BAD -+12200 CUNEIFORM SIGN LU2 TIMES ESH2 -+12201 CUNEIFORM SIGN LU2 TIMES ESH2 TENU -+12202 CUNEIFORM SIGN LU2 TIMES GAN2 TENU -+12203 CUNEIFORM SIGN LU2 TIMES HI TIMES BAD -+12204 CUNEIFORM SIGN LU2 TIMES IM -+12205 CUNEIFORM SIGN LU2 TIMES KAD2 -+12206 CUNEIFORM SIGN LU2 TIMES KAD3 -+12207 CUNEIFORM SIGN LU2 TIMES KAD3 PLUS ASH -+12208 CUNEIFORM SIGN LU2 TIMES KI -+12209 CUNEIFORM SIGN LU2 TIMES LA PLUS ASH -+1220A CUNEIFORM SIGN LU2 TIMES LAGAB -+1220B CUNEIFORM SIGN LU2 TIMES ME PLUS EN -+1220C CUNEIFORM SIGN LU2 TIMES NE -+1220D CUNEIFORM SIGN LU2 TIMES NU -+1220E CUNEIFORM SIGN LU2 TIMES SI PLUS ASH -+1220F CUNEIFORM SIGN LU2 TIMES SIK2 PLUS BU -+12210 CUNEIFORM SIGN LU2 TIMES TUG2 -+12211 CUNEIFORM SIGN LU2 TENU -+12212 CUNEIFORM SIGN LU2 CROSSING LU2 -+12213 CUNEIFORM SIGN LU2 OPPOSING LU2 -+12214 CUNEIFORM SIGN LU2 SQUARED -+12215 CUNEIFORM SIGN LU2 SHESHIG -+12216 CUNEIFORM SIGN LU3 -+12217 CUNEIFORM SIGN LUGAL -+12218 CUNEIFORM SIGN LUGAL OVER LUGAL -+12219 CUNEIFORM SIGN LUGAL OPPOSING LUGAL -+1221A CUNEIFORM SIGN LUGAL SHESHIG -+1221B CUNEIFORM SIGN LUH -+1221C CUNEIFORM SIGN LUL -+1221D CUNEIFORM SIGN LUM -+1221E CUNEIFORM SIGN LUM OVER LUM -+1221F CUNEIFORM SIGN LUM OVER LUM GAR OVER GAR -+12220 CUNEIFORM SIGN MA -+12221 CUNEIFORM SIGN MA TIMES TAK4 -+12222 CUNEIFORM SIGN MA GUNU -+12223 CUNEIFORM SIGN MA2 -+12224 CUNEIFORM SIGN MAH -+12225 CUNEIFORM SIGN MAR -+12226 CUNEIFORM SIGN MASH -+12227 CUNEIFORM SIGN MASH2 -+12228 CUNEIFORM SIGN ME -+12229 CUNEIFORM SIGN MES -+1222A CUNEIFORM SIGN MI -+1222B CUNEIFORM SIGN MIN -+1222C CUNEIFORM SIGN MU -+1222D CUNEIFORM SIGN MU OVER MU -+1222E CUNEIFORM SIGN MUG -+1222F CUNEIFORM SIGN MUG GUNU -+12230 CUNEIFORM SIGN MUNSUB -+12231 CUNEIFORM SIGN MURGU2 -+12232 CUNEIFORM SIGN MUSH -+12233 CUNEIFORM SIGN MUSH TIMES A -+12234 CUNEIFORM SIGN MUSH TIMES KUR -+12235 CUNEIFORM SIGN MUSH TIMES ZA -+12236 CUNEIFORM SIGN MUSH OVER MUSH -+12237 CUNEIFORM SIGN MUSH OVER MUSH TIMES A PLUS NA -+12238 CUNEIFORM SIGN MUSH CROSSING MUSH -+12239 CUNEIFORM SIGN MUSH3 -+1223A CUNEIFORM SIGN MUSH3 TIMES A -+1223B CUNEIFORM SIGN MUSH3 TIMES A PLUS DI -+1223C CUNEIFORM SIGN MUSH3 TIMES DI -+1223D CUNEIFORM SIGN MUSH3 GUNU -+1223E CUNEIFORM SIGN NA -+1223F CUNEIFORM SIGN NA2 -+12240 CUNEIFORM SIGN NAGA -+12241 CUNEIFORM SIGN NAGA INVERTED -+12242 CUNEIFORM SIGN NAGA TIMES SHU TENU -+12243 CUNEIFORM SIGN NAGA OPPOSING NAGA -+12244 CUNEIFORM SIGN NAGAR -+12245 CUNEIFORM SIGN NAM NUTILLU -+12246 CUNEIFORM SIGN NAM -+12247 CUNEIFORM SIGN NAM2 -+12248 CUNEIFORM SIGN NE -+12249 CUNEIFORM SIGN NE TIMES A -+1224A CUNEIFORM SIGN NE TIMES UD -+1224B CUNEIFORM SIGN NE SHESHIG -+1224C CUNEIFORM SIGN NI -+1224D CUNEIFORM SIGN NI TIMES E -+1224E CUNEIFORM SIGN NI2 -+1224F CUNEIFORM SIGN NIM -+12250 CUNEIFORM SIGN NIM TIMES GAN2 TENU -+12251 CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU -+12252 CUNEIFORM SIGN NINDA2 -+12253 CUNEIFORM SIGN NINDA2 TIMES AN -+12254 CUNEIFORM SIGN NINDA2 TIMES ASH -+12255 CUNEIFORM SIGN NINDA2 TIMES ASH PLUS ASH -+12256 CUNEIFORM SIGN NINDA2 TIMES GUD -+12257 CUNEIFORM SIGN NINDA2 TIMES ME PLUS GAN2 TENU -+12258 CUNEIFORM SIGN NINDA2 TIMES NE -+12259 CUNEIFORM SIGN NINDA2 TIMES NUN -+1225A CUNEIFORM SIGN NINDA2 TIMES SHE -+1225B CUNEIFORM SIGN NINDA2 TIMES SHE PLUS A AN -+1225C CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH -+1225D CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH PLUS ASH -+1225E CUNEIFORM SIGN NINDA2 TIMES U2 PLUS ASH -+1225F CUNEIFORM SIGN NINDA2 TIMES USH -+12260 CUNEIFORM SIGN NISAG -+12261 CUNEIFORM SIGN NU -+12262 CUNEIFORM SIGN NU11 -+12263 CUNEIFORM SIGN NUN -+12264 CUNEIFORM SIGN NUN LAGAR TIMES GAR -+12265 CUNEIFORM SIGN NUN LAGAR TIMES MASH -+12266 CUNEIFORM SIGN NUN LAGAR TIMES SAL -+12267 CUNEIFORM SIGN NUN LAGAR TIMES SAL OVER NUN LAGAR TIMES SAL -+12268 CUNEIFORM SIGN NUN LAGAR TIMES USH -+12269 CUNEIFORM SIGN NUN TENU -+1226A CUNEIFORM SIGN NUN OVER NUN -+1226B CUNEIFORM SIGN NUN CROSSING NUN -+1226C CUNEIFORM SIGN NUN CROSSING NUN LAGAR OVER LAGAR -+1226D CUNEIFORM SIGN NUNUZ -+1226E CUNEIFORM SIGN NUNUZ AB2 TIMES ASHGAB -+1226F CUNEIFORM SIGN NUNUZ AB2 TIMES BI -+12270 CUNEIFORM SIGN NUNUZ AB2 TIMES DUG -+12271 CUNEIFORM SIGN NUNUZ AB2 TIMES GUD -+12272 CUNEIFORM SIGN NUNUZ AB2 TIMES IGI GUNU -+12273 CUNEIFORM SIGN NUNUZ AB2 TIMES KAD3 -+12274 CUNEIFORM SIGN NUNUZ AB2 TIMES LA -+12275 CUNEIFORM SIGN NUNUZ AB2 TIMES NE -+12276 CUNEIFORM SIGN NUNUZ AB2 TIMES SILA3 -+12277 CUNEIFORM SIGN NUNUZ AB2 TIMES U2 -+12278 CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI -+12279 CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI U -+1227A CUNEIFORM SIGN PA -+1227B CUNEIFORM SIGN PAD -+1227C CUNEIFORM SIGN PAN -+1227D CUNEIFORM SIGN PAP -+1227E CUNEIFORM SIGN PESH2 -+1227F CUNEIFORM SIGN PI -+12280 CUNEIFORM SIGN PI TIMES A -+12281 CUNEIFORM SIGN PI TIMES AB -+12282 CUNEIFORM SIGN PI TIMES BI -+12283 CUNEIFORM SIGN PI TIMES BU -+12284 CUNEIFORM SIGN PI TIMES E -+12285 CUNEIFORM SIGN PI TIMES I -+12286 CUNEIFORM SIGN PI TIMES IB -+12287 CUNEIFORM SIGN PI TIMES U -+12288 CUNEIFORM SIGN PI TIMES U2 -+12289 CUNEIFORM SIGN PI CROSSING PI -+1228A CUNEIFORM SIGN PIRIG -+1228B CUNEIFORM SIGN PIRIG TIMES KAL -+1228C CUNEIFORM SIGN PIRIG TIMES UD -+1228D CUNEIFORM SIGN PIRIG TIMES ZA -+1228E CUNEIFORM SIGN PIRIG OPPOSING PIRIG -+1228F CUNEIFORM SIGN RA -+12290 CUNEIFORM SIGN RAB -+12291 CUNEIFORM SIGN RI -+12292 CUNEIFORM SIGN RU -+12293 CUNEIFORM SIGN SA -+12294 CUNEIFORM SIGN SAG NUTILLU -+12295 CUNEIFORM SIGN SAG -+12296 CUNEIFORM SIGN SAG TIMES A -+12297 CUNEIFORM SIGN SAG TIMES DU -+12298 CUNEIFORM SIGN SAG TIMES DUB -+12299 CUNEIFORM SIGN SAG TIMES HA -+1229A CUNEIFORM SIGN SAG TIMES KAK -+1229B CUNEIFORM SIGN SAG TIMES KUR -+1229C CUNEIFORM SIGN SAG TIMES LUM -+1229D CUNEIFORM SIGN SAG TIMES MI -+1229E CUNEIFORM SIGN SAG TIMES NUN -+1229F CUNEIFORM SIGN SAG TIMES SAL -+122A0 CUNEIFORM SIGN SAG TIMES SHID -+122A1 CUNEIFORM SIGN SAG TIMES TAB -+122A2 CUNEIFORM SIGN SAG TIMES U2 -+122A3 CUNEIFORM SIGN SAG TIMES UB -+122A4 CUNEIFORM SIGN SAG TIMES UM -+122A5 CUNEIFORM SIGN SAG TIMES UR -+122A6 CUNEIFORM SIGN SAG TIMES USH -+122A7 CUNEIFORM SIGN SAG OVER SAG -+122A8 CUNEIFORM SIGN SAG GUNU -+122A9 CUNEIFORM SIGN SAL -+122AA CUNEIFORM SIGN SAL LAGAB TIMES ASH2 -+122AB CUNEIFORM SIGN SANGA2 -+122AC CUNEIFORM SIGN SAR -+122AD CUNEIFORM SIGN SHA -+122AE CUNEIFORM SIGN SHA3 -+122AF CUNEIFORM SIGN SHA3 TIMES A -+122B0 CUNEIFORM SIGN SHA3 TIMES BAD -+122B1 CUNEIFORM SIGN SHA3 TIMES GISH -+122B2 CUNEIFORM SIGN SHA3 TIMES NE -+122B3 CUNEIFORM SIGN SHA3 TIMES SHU2 -+122B4 CUNEIFORM SIGN SHA3 TIMES TUR -+122B5 CUNEIFORM SIGN SHA3 TIMES U -+122B6 CUNEIFORM SIGN SHA3 TIMES U PLUS A -+122B7 CUNEIFORM SIGN SHA6 -+122B8 CUNEIFORM SIGN SHAB6 -+122B9 CUNEIFORM SIGN SHAR2 -+ * formed by making a circular indentation with the end of the stylus -+122BA CUNEIFORM SIGN SHE -+122BB CUNEIFORM SIGN SHE HU -+122BC CUNEIFORM SIGN SHE OVER SHE GAD OVER GAD GAR OVER GAR -+122BD CUNEIFORM SIGN SHE OVER SHE TAB OVER TAB GAR OVER GAR -+122BE CUNEIFORM SIGN SHEG9 -+122BF CUNEIFORM SIGN SHEN -+122C0 CUNEIFORM SIGN SHESH -+122C1 CUNEIFORM SIGN SHESH2 -+122C2 CUNEIFORM SIGN SHESHLAM -+122C3 CUNEIFORM SIGN SHID -+122C4 CUNEIFORM SIGN SHID TIMES A -+122C5 CUNEIFORM SIGN SHID TIMES IM -+122C6 CUNEIFORM SIGN SHIM -+122C7 CUNEIFORM SIGN SHIM TIMES A -+122C8 CUNEIFORM SIGN SHIM TIMES BAL -+122C9 CUNEIFORM SIGN SHIM TIMES BULUG -+122CA CUNEIFORM SIGN SHIM TIMES DIN -+122CB CUNEIFORM SIGN SHIM TIMES GAR -+122CC CUNEIFORM SIGN SHIM TIMES IGI -+122CD CUNEIFORM SIGN SHIM TIMES IGI GUNU -+122CE CUNEIFORM SIGN SHIM TIMES KUSHU2 -+122CF CUNEIFORM SIGN SHIM TIMES LUL -+122D0 CUNEIFORM SIGN SHIM TIMES MUG -+122D1 CUNEIFORM SIGN SHIM TIMES SAL -+122D2 CUNEIFORM SIGN SHINIG -+122D3 CUNEIFORM SIGN SHIR -+122D4 CUNEIFORM SIGN SHIR TENU -+122D5 CUNEIFORM SIGN SHIR OVER SHIR BUR OVER BUR -+122D6 CUNEIFORM SIGN SHITA -+122D7 CUNEIFORM SIGN SHU -+122D8 CUNEIFORM SIGN SHU OVER INVERTED SHU -+122D9 CUNEIFORM SIGN SHU2 -+122DA CUNEIFORM SIGN SHUBUR -+122DB CUNEIFORM SIGN SI -+122DC CUNEIFORM SIGN SI GUNU -+122DD CUNEIFORM SIGN SIG -+122DE CUNEIFORM SIGN SIG4 -+122DF CUNEIFORM SIGN SIG4 OVER SIG4 SHU2 -+122E0 CUNEIFORM SIGN SIK2 -+122E1 CUNEIFORM SIGN SILA3 -+122E2 CUNEIFORM SIGN SU -+122E3 CUNEIFORM SIGN SU OVER SU -+122E4 CUNEIFORM SIGN SUD -+122E5 CUNEIFORM SIGN SUD2 -+122E6 CUNEIFORM SIGN SUHUR -+122E7 CUNEIFORM SIGN SUM -+122E8 CUNEIFORM SIGN SUMASH -+122E9 CUNEIFORM SIGN SUR -+122EA CUNEIFORM SIGN SUR9 -+122EB CUNEIFORM SIGN TA -+122EC CUNEIFORM SIGN TA ASTERISK -+122ED CUNEIFORM SIGN TA TIMES HI -+122EE CUNEIFORM SIGN TA TIMES MI -+122EF CUNEIFORM SIGN TA GUNU -+122F0 CUNEIFORM SIGN TAB -+122F1 CUNEIFORM SIGN TAB OVER TAB NI OVER NI DISH OVER DISH -+122F2 CUNEIFORM SIGN TAB SQUARED -+122F3 CUNEIFORM SIGN TAG -+122F4 CUNEIFORM SIGN TAG TIMES BI -+122F5 CUNEIFORM SIGN TAG TIMES GUD -+122F6 CUNEIFORM SIGN TAG TIMES SHE -+122F7 CUNEIFORM SIGN TAG TIMES SHU -+122F8 CUNEIFORM SIGN TAG TIMES TUG2 -+122F9 CUNEIFORM SIGN TAG TIMES UD -+122FA CUNEIFORM SIGN TAK4 -+122FB CUNEIFORM SIGN TAR -+122FC CUNEIFORM SIGN TE -+122FD CUNEIFORM SIGN TE GUNU -+122FE CUNEIFORM SIGN TI -+122FF CUNEIFORM SIGN TI TENU -+12300 CUNEIFORM SIGN TIL -+12301 CUNEIFORM SIGN TIR -+12302 CUNEIFORM SIGN TIR TIMES TAK4 -+12303 CUNEIFORM SIGN TIR OVER TIR -+12304 CUNEIFORM SIGN TIR OVER TIR GAD OVER GAD GAR OVER GAR -+12305 CUNEIFORM SIGN TU -+12306 CUNEIFORM SIGN TUG2 -+12307 CUNEIFORM SIGN TUK -+12308 CUNEIFORM SIGN TUM -+12309 CUNEIFORM SIGN TUR -+1230A CUNEIFORM SIGN TUR OVER TUR ZA OVER ZA -+1230B CUNEIFORM SIGN U -+1230C CUNEIFORM SIGN U GUD -+1230D CUNEIFORM SIGN U U U -+1230E CUNEIFORM SIGN U OVER U PA OVER PA GAR OVER GAR -+1230F CUNEIFORM SIGN U OVER U SUR OVER SUR -+12310 CUNEIFORM SIGN U OVER U U REVERSED OVER U REVERSED -+12311 CUNEIFORM SIGN U2 -+12312 CUNEIFORM SIGN UB -+12313 CUNEIFORM SIGN UD -+12314 CUNEIFORM SIGN UD KUSHU2 -+12315 CUNEIFORM SIGN UD TIMES BAD -+12316 CUNEIFORM SIGN UD TIMES MI -+12317 CUNEIFORM SIGN UD TIMES U PLUS U PLUS U -+12318 CUNEIFORM SIGN UD TIMES U PLUS U PLUS U GUNU -+12319 CUNEIFORM SIGN UD GUNU -+1231A CUNEIFORM SIGN UD SHESHIG -+1231B CUNEIFORM SIGN UD SHESHIG TIMES BAD -+1231C CUNEIFORM SIGN UDUG -+1231D CUNEIFORM SIGN UM -+1231E CUNEIFORM SIGN UM TIMES LAGAB -+1231F CUNEIFORM SIGN UM TIMES ME PLUS DA -+12320 CUNEIFORM SIGN UM TIMES SHA3 -+12321 CUNEIFORM SIGN UM TIMES U -+12322 CUNEIFORM SIGN UMBIN -+12323 CUNEIFORM SIGN UMUM -+12324 CUNEIFORM SIGN UMUM TIMES KASKAL -+12325 CUNEIFORM SIGN UMUM TIMES PA -+12326 CUNEIFORM SIGN UN -+12327 CUNEIFORM SIGN UN GUNU -+12328 CUNEIFORM SIGN UR -+12329 CUNEIFORM SIGN UR CROSSING UR -+1232A CUNEIFORM SIGN UR SHESHIG -+1232B CUNEIFORM SIGN UR2 -+1232C CUNEIFORM SIGN UR2 TIMES A PLUS HA -+1232D CUNEIFORM SIGN UR2 TIMES A PLUS NA -+1232E CUNEIFORM SIGN UR2 TIMES AL -+1232F CUNEIFORM SIGN UR2 TIMES HA -+12330 CUNEIFORM SIGN UR2 TIMES NUN -+12331 CUNEIFORM SIGN UR2 TIMES U2 -+12332 CUNEIFORM SIGN UR2 TIMES U2 PLUS ASH -+12333 CUNEIFORM SIGN UR2 TIMES U2 PLUS BI -+12334 CUNEIFORM SIGN UR4 -+12335 CUNEIFORM SIGN URI -+12336 CUNEIFORM SIGN URI3 -+12337 CUNEIFORM SIGN URU -+12338 CUNEIFORM SIGN URU TIMES A -+12339 CUNEIFORM SIGN URU TIMES ASHGAB -+1233A CUNEIFORM SIGN URU TIMES BAR -+1233B CUNEIFORM SIGN URU TIMES DUN -+1233C CUNEIFORM SIGN URU TIMES GA -+1233D CUNEIFORM SIGN URU TIMES GAL -+1233E CUNEIFORM SIGN URU TIMES GAN2 TENU -+1233F CUNEIFORM SIGN URU TIMES GAR -+12340 CUNEIFORM SIGN URU TIMES GU -+12341 CUNEIFORM SIGN URU TIMES HA -+12342 CUNEIFORM SIGN URU TIMES IGI -+12343 CUNEIFORM SIGN URU TIMES IM -+12344 CUNEIFORM SIGN URU TIMES ISH -+12345 CUNEIFORM SIGN URU TIMES KI -+12346 CUNEIFORM SIGN URU TIMES LUM -+12347 CUNEIFORM SIGN URU TIMES MIN -+12348 CUNEIFORM SIGN URU TIMES PA -+12349 CUNEIFORM SIGN URU TIMES SHE -+1234A CUNEIFORM SIGN URU TIMES SIG4 -+1234B CUNEIFORM SIGN URU TIMES TU -+1234C CUNEIFORM SIGN URU TIMES U PLUS GUD -+1234D CUNEIFORM SIGN URU TIMES UD -+1234E CUNEIFORM SIGN URU TIMES URUDA -+1234F CUNEIFORM SIGN URUDA -+12350 CUNEIFORM SIGN URUDA TIMES U -+12351 CUNEIFORM SIGN USH -+12352 CUNEIFORM SIGN USH TIMES A -+12353 CUNEIFORM SIGN USH TIMES KU -+12354 CUNEIFORM SIGN USH TIMES KUR -+12355 CUNEIFORM SIGN USH TIMES TAK4 -+12356 CUNEIFORM SIGN USHX -+12357 CUNEIFORM SIGN USH2 -+12358 CUNEIFORM SIGN USHUMX -+12359 CUNEIFORM SIGN UTUKI -+1235A CUNEIFORM SIGN UZ3 -+1235B CUNEIFORM SIGN UZ3 TIMES KASKAL -+1235C CUNEIFORM SIGN UZU -+1235D CUNEIFORM SIGN ZA -+1235E CUNEIFORM SIGN ZA TENU -+1235F CUNEIFORM SIGN ZA SQUARED TIMES KUR -+12360 CUNEIFORM SIGN ZAG -+12361 CUNEIFORM SIGN ZAMX -+12362 CUNEIFORM SIGN ZE2 -+12363 CUNEIFORM SIGN ZI -+12364 CUNEIFORM SIGN ZI OVER ZI -+12365 CUNEIFORM SIGN ZI3 -+12366 CUNEIFORM SIGN ZIB -+12367 CUNEIFORM SIGN ZIB KABA TENU -+12368 CUNEIFORM SIGN ZIG -+12369 CUNEIFORM SIGN ZIZ2 -+1236A CUNEIFORM SIGN ZU -+1236B CUNEIFORM SIGN ZU5 -+1236C CUNEIFORM SIGN ZU5 TIMES A -+1236D CUNEIFORM SIGN ZUBUR -+1236E CUNEIFORM SIGN ZUM -+@@ 12400 Cuneiform Numbers and Punctuation 1247F -+@ Numeric signs -+12400 CUNEIFORM NUMERIC SIGN TWO ASH -+12401 CUNEIFORM NUMERIC SIGN THREE ASH -+12402 CUNEIFORM NUMERIC SIGN FOUR ASH -+12403 CUNEIFORM NUMERIC SIGN FIVE ASH -+12404 CUNEIFORM NUMERIC SIGN SIX ASH -+12405 CUNEIFORM NUMERIC SIGN SEVEN ASH -+12406 CUNEIFORM NUMERIC SIGN EIGHT ASH -+12407 CUNEIFORM NUMERIC SIGN NINE ASH -+12408 CUNEIFORM NUMERIC SIGN THREE DISH -+12409 CUNEIFORM NUMERIC SIGN FOUR DISH -+1240A CUNEIFORM NUMERIC SIGN FIVE DISH -+1240B CUNEIFORM NUMERIC SIGN SIX DISH -+1240C CUNEIFORM NUMERIC SIGN SEVEN DISH -+1240D CUNEIFORM NUMERIC SIGN EIGHT DISH -+1240E CUNEIFORM NUMERIC SIGN NINE DISH -+1240F CUNEIFORM NUMERIC SIGN FOUR U -+12410 CUNEIFORM NUMERIC SIGN FIVE U -+12411 CUNEIFORM NUMERIC SIGN SIX U -+12412 CUNEIFORM NUMERIC SIGN SEVEN U -+12413 CUNEIFORM NUMERIC SIGN EIGHT U -+12414 CUNEIFORM NUMERIC SIGN NINE U -+12415 CUNEIFORM NUMERIC SIGN ONE GESH2 -+12416 CUNEIFORM NUMERIC SIGN TWO GESH2 -+12417 CUNEIFORM NUMERIC SIGN THREE GESH2 -+12418 CUNEIFORM NUMERIC SIGN FOUR GESH2 -+12419 CUNEIFORM NUMERIC SIGN FIVE GESH2 -+1241A CUNEIFORM NUMERIC SIGN SIX GESH2 -+1241B CUNEIFORM NUMERIC SIGN SEVEN GESH2 -+1241C CUNEIFORM NUMERIC SIGN EIGHT GESH2 -+1241D CUNEIFORM NUMERIC SIGN NINE GESH2 -+1241E CUNEIFORM NUMERIC SIGN ONE GESHU -+1241F CUNEIFORM NUMERIC SIGN TWO GESHU -+12420 CUNEIFORM NUMERIC SIGN THREE GESHU -+12421 CUNEIFORM NUMERIC SIGN FOUR GESHU -+12422 CUNEIFORM NUMERIC SIGN FIVE GESHU -+12423 CUNEIFORM NUMERIC SIGN TWO SHAR2 -+12424 CUNEIFORM NUMERIC SIGN THREE SHAR2 -+12425 CUNEIFORM NUMERIC SIGN THREE SHAR2 VARIANT FORM -+12426 CUNEIFORM NUMERIC SIGN FOUR SHAR2 -+12427 CUNEIFORM NUMERIC SIGN FIVE SHAR2 -+12428 CUNEIFORM NUMERIC SIGN SIX SHAR2 -+12429 CUNEIFORM NUMERIC SIGN SEVEN SHAR2 -+1242A CUNEIFORM NUMERIC SIGN EIGHT SHAR2 -+1242B CUNEIFORM NUMERIC SIGN NINE SHAR2 -+1242C CUNEIFORM NUMERIC SIGN ONE SHARU -+1242D CUNEIFORM NUMERIC SIGN TWO SHARU -+1242E CUNEIFORM NUMERIC SIGN THREE SHARU -+1242F CUNEIFORM NUMERIC SIGN THREE SHARU VARIANT FORM -+12430 CUNEIFORM NUMERIC SIGN FOUR SHARU -+12431 CUNEIFORM NUMERIC SIGN FIVE SHARU -+12432 CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS DISH -+12433 CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS MIN -+12434 CUNEIFORM NUMERIC SIGN ONE BURU -+12435 CUNEIFORM NUMERIC SIGN TWO BURU -+12436 CUNEIFORM NUMERIC SIGN THREE BURU -+12437 CUNEIFORM NUMERIC SIGN THREE BURU VARIANT FORM -+12438 CUNEIFORM NUMERIC SIGN FOUR BURU -+12439 CUNEIFORM NUMERIC SIGN FIVE BURU -+1243A CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH16 -+1243B CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH21 -+1243C CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU -+1243D CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU4 -+1243E CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU A -+1243F CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU B -+12440 CUNEIFORM NUMERIC SIGN SIX VARIANT FORM ASH9 -+12441 CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN3 -+12442 CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN A -+12443 CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN B -+12444 CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU -+12445 CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU3 -+12446 CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU -+12447 CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU3 -+12448 CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU4 -+12449 CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU A -+1244A CUNEIFORM NUMERIC SIGN TWO ASH TENU -+1244B CUNEIFORM NUMERIC SIGN THREE ASH TENU -+1244C CUNEIFORM NUMERIC SIGN FOUR ASH TENU -+1244D CUNEIFORM NUMERIC SIGN FIVE ASH TENU -+1244E CUNEIFORM NUMERIC SIGN SIX ASH TENU -+1244F CUNEIFORM NUMERIC SIGN ONE BAN2 -+12450 CUNEIFORM NUMERIC SIGN TWO BAN2 -+12451 CUNEIFORM NUMERIC SIGN THREE BAN2 -+12452 CUNEIFORM NUMERIC SIGN FOUR BAN2 -+12453 CUNEIFORM NUMERIC SIGN FOUR BAN2 VARIANT FORM -+12454 CUNEIFORM NUMERIC SIGN FIVE BAN2 -+12455 CUNEIFORM NUMERIC SIGN FIVE BAN2 VARIANT FORM -+12456 CUNEIFORM NUMERIC SIGN NIGIDAMIN -+12457 CUNEIFORM NUMERIC SIGN NIGIDAESH -+12458 CUNEIFORM NUMERIC SIGN ONE ESHE3 -+12459 CUNEIFORM NUMERIC SIGN TWO ESHE3 -+@ Fractions -+1245A CUNEIFORM NUMERIC SIGN ONE THIRD DISH -+1245B CUNEIFORM NUMERIC SIGN TWO THIRDS DISH -+1245C CUNEIFORM NUMERIC SIGN FIVE SIXTHS DISH -+1245D CUNEIFORM NUMERIC SIGN ONE THIRD VARIANT FORM A -+1245E CUNEIFORM NUMERIC SIGN TWO THIRDS VARIANT FORM A -+1245F CUNEIFORM NUMERIC SIGN ONE EIGHTH ASH -+12460 CUNEIFORM NUMERIC SIGN ONE QUARTER ASH -+12461 CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE SIXTH -+12462 CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER -+@ Punctuation -+12470 CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER -+ x (ugaritic word divider - 1039F) -+ x (old persian word divider - 103D0) -+12471 CUNEIFORM PUNCTUATION SIGN VERTICAL COLON -+12472 CUNEIFORM PUNCTUATION SIGN DIAGONAL COLON -+12473 CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON - @@ 1D000 Byzantine Musical Symbols 1D0FF -+@@+ - @ Prosodies (Prosodics) -+@+ These three characters are not actually attested in musical contexts. - 1D000 BYZANTINE MUSICAL SYMBOL PSILI - 1D001 BYZANTINE MUSICAL SYMBOL DASEIA - 1D002 BYZANTINE MUSICAL SYMBOL PERISPOMENI -@@ -22756,8 +24657,11 @@ - 1D096 BYZANTINE MUSICAL SYMBOL TRIGORGON - 1D097 BYZANTINE MUSICAL SYMBOL ARGON - 1D098 BYZANTINE MUSICAL SYMBOL IMIDIARGON -+ * called diargon by some authorities - 1D099 BYZANTINE MUSICAL SYMBOL DIARGON -+ * called triargon by some authorities - @ Agogika (Conduits) -+@+ Glyphs shown for conduits reflect Greek practice, with chi as the base letter; different national traditions use glyphs with different base letters. - 1D09A BYZANTINE MUSICAL SYMBOL AGOGI POLI ARGI - 1D09B BYZANTINE MUSICAL SYMBOL AGOGI ARGOTERI - 1D09C BYZANTINE MUSICAL SYMBOL AGOGI ARGI -@@ -22786,8 +24690,12 @@ - 1D0B2 BYZANTINE MUSICAL SYMBOL MARTYRIA PROTOVARYS ICHOS - 1D0B3 BYZANTINE MUSICAL SYMBOL MARTYRIA PLAGIOS TETARTOS ICHOS - 1D0B4 BYZANTINE MUSICAL SYMBOL GORTHMIKON N APLOUN --@ Fthores (Destroyers) -+ * used in intonation formulas instead of nu, before phonemes a, i, o, u -+ x (greek small letter nu - 03BD) - 1D0B5 BYZANTINE MUSICAL SYMBOL GORTHMIKON N DIPLOUN -+ * used in intonation formulas instead of nu, before phoneme e -+ x (greek small letter nu - 03BD) -+@ Fthores (Destroyers) - 1D0B6 BYZANTINE MUSICAL SYMBOL ENARXIS KAI FTHORA VOU - 1D0B7 BYZANTINE MUSICAL SYMBOL IMIFONON - 1D0B8 BYZANTINE MUSICAL SYMBOL IMIFTHORON -@@ -22804,13 +24712,14 @@ - 1D0C3 BYZANTINE MUSICAL SYMBOL FTHORA MALAKON CHROMA DIFONIAS - 1D0C4 BYZANTINE MUSICAL SYMBOL FTHORA MALAKON CHROMA MONOFONIAS - 1D0C5 BYZANTINE MUSICAL SYMBOL FHTORA SKLIRON CHROMA VASIS -+ % BYZANTINE MUSICAL SYMBOL FTHORA SKLIRON CHROMA VASIS - * misspelling of "FTHORA" in character name is a known defect - 1D0C6 BYZANTINE MUSICAL SYMBOL FTHORA SKLIRON CHROMA SYNAFI - 1D0C7 BYZANTINE MUSICAL SYMBOL FTHORA NENANO - 1D0C8 BYZANTINE MUSICAL SYMBOL CHROA ZYGOS - 1D0C9 BYZANTINE MUSICAL SYMBOL CHROA KLITON --@ Alloioseis (Differentiators) - 1D0CA BYZANTINE MUSICAL SYMBOL CHROA SPATHI -+@ Alloioseis (Differentiators) - 1D0CB BYZANTINE MUSICAL SYMBOL FTHORA I YFESIS TETARTIMORION - 1D0CC BYZANTINE MUSICAL SYMBOL FTHORA ENARMONIOS ANTIFONIA - 1D0CD BYZANTINE MUSICAL SYMBOL YFESIS TRITIMORION -@@ -22825,10 +24734,12 @@ - 1D0D6 BYZANTINE MUSICAL SYMBOL YFESIS DIGRAMMOS EX DODEKATA - 1D0D7 BYZANTINE MUSICAL SYMBOL YFESIS TRIGRAMMOS OKTO DODEKATA - 1D0D8 BYZANTINE MUSICAL SYMBOL GENIKI DIESIS --@ Rythmika (Rhythmics) - 1D0D9 BYZANTINE MUSICAL SYMBOL GENIKI YFESIS -+@ Rythmika (Rhythmics) - 1D0DA BYZANTINE MUSICAL SYMBOL DIASTOLI APLI MIKRI -+ x (musical symbol short barline - 1D105) - 1D0DB BYZANTINE MUSICAL SYMBOL DIASTOLI APLI MEGALI -+ x (musical symbol single barline - 1D100) - 1D0DC BYZANTINE MUSICAL SYMBOL DIASTOLI DIPLI - 1D0DD BYZANTINE MUSICAL SYMBOL DIASTOLI THESEOS - 1D0DE BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS -@@ -22838,11 +24749,14 @@ - 1D0E2 BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS - 1D0E3 BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS DISIMOU - 1D0E4 BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS TRISIMOU --@ Grammata (Letters) - 1D0E5 BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS TETRASIMOU -+@ Grammata (Letters) -+@+ The first three characters are not actually attested in musical contexts. - 1D0E6 BYZANTINE MUSICAL SYMBOL DIGRAMMA GG - 1D0E7 BYZANTINE MUSICAL SYMBOL DIFTOGGOS OU -+ x (latin small letter ou - 0223) - 1D0E8 BYZANTINE MUSICAL SYMBOL STIGMA -+ x (greek small letter stigma - 03DB) - 1D0E9 BYZANTINE MUSICAL SYMBOL ARKTIKO PA - 1D0EA BYZANTINE MUSICAL SYMBOL ARKTIKO VOU - 1D0EB BYZANTINE MUSICAL SYMBOL ARKTIKO GA -@@ -22932,9 +24846,13 @@ - 1D139 MUSICAL SYMBOL QUINDICESIMA BASSA - @ Rests - 1D13A MUSICAL SYMBOL MULTI REST -+ = double whole-rest, breve rest - 1D13B MUSICAL SYMBOL WHOLE REST -+ = semibreve rest - 1D13C MUSICAL SYMBOL HALF REST -+ = minim rest - 1D13D MUSICAL SYMBOL QUARTER REST -+ = crochet rest - 1D13E MUSICAL SYMBOL EIGHTH REST - 1D13F MUSICAL SYMBOL SIXTEENTH REST - 1D140 MUSICAL SYMBOL THIRTY-SECOND REST -@@ -23214,7 +25132,7 @@ - 1D21D GREEK INSTRUMENTAL NOTATION SYMBOL-1 - * instrumental E - 1D21E GREEK INSTRUMENTAL NOTATION SYMBOL-2 -- * instrumental first sharp of e -+ * instrumental first sharp of E - 1D21F GREEK INSTRUMENTAL NOTATION SYMBOL-4 - * instrumental F - 1D220 GREEK INSTRUMENTAL NOTATION SYMBOL-5 -@@ -23296,14 +25214,25 @@ - x (metrical pentaseme - 23D9) - 1D245 GREEK MUSICAL LEIMMA - @@ 1D300 Tai Xuan Jing Symbols 1D35F -+@+ These symbols are an extension of the better-known Yijing symbols found in the Miscellaneous Symbols block. The names for the monogram and digram symbols here are not correct translations of the usual Chinese terminology. - @ Monogram --1D300 MONOGRAM FOR EARTH -+1D300 MONOGRAM FOR EARTH (ren) * -+ = ren -+ * usually associated with human (Chinese ren), rather than earth -+ x (monogram for yang - 268A) -+ x (monogram for yin - 268B) - @ Digrams --1D301 DIGRAM FOR HEAVENLY EARTH --1D302 DIGRAM FOR HUMAN EARTH --1D303 DIGRAM FOR EARTHLY HEAVEN --1D304 DIGRAM FOR EARTHLY HUMAN --1D305 DIGRAM FOR EARTH -+@+ The digrams extend the set of Yijing digrams; note that the Chinese aliases more correctly represent their interpretation. -+1D301 DIGRAM FOR HEAVENLY EARTH (tian ren) * -+ = tian ren -+1D302 DIGRAM FOR HUMAN EARTH (di ren) * -+ = di ren -+1D303 DIGRAM FOR EARTHLY HEAVEN (ren tian) * -+ = ren tian -+1D304 DIGRAM FOR EARTHLY HUMAN (ren di) * -+ = ren di -+1D305 DIGRAM FOR EARTH (ren ren) * -+ = ren ren - @ Tetragrams - 1D306 TETRAGRAM FOR CENTRE - 1D307 TETRAGRAM FOR FULL CIRCLE -@@ -23386,7 +25315,28 @@ - 1D354 TETRAGRAM FOR DIFFICULTIES - 1D355 TETRAGRAM FOR LABOURING - 1D356 TETRAGRAM FOR FOSTERING -+@@ 1D360 Counting Rod Numerals 1D37F -+@ Counting rod units -+1D360 COUNTING ROD UNIT DIGIT ONE -+1D361 COUNTING ROD UNIT DIGIT TWO -+1D362 COUNTING ROD UNIT DIGIT THREE -+1D363 COUNTING ROD UNIT DIGIT FOUR -+1D364 COUNTING ROD UNIT DIGIT FIVE -+1D365 COUNTING ROD UNIT DIGIT SIX -+1D366 COUNTING ROD UNIT DIGIT SEVEN -+1D367 COUNTING ROD UNIT DIGIT EIGHT -+1D368 COUNTING ROD UNIT DIGIT NINE -+1D369 COUNTING ROD TENS DIGIT ONE -+1D36A COUNTING ROD TENS DIGIT TWO -+1D36B COUNTING ROD TENS DIGIT THREE -+1D36C COUNTING ROD TENS DIGIT FOUR -+1D36D COUNTING ROD TENS DIGIT FIVE -+1D36E COUNTING ROD TENS DIGIT SIX -+1D36F COUNTING ROD TENS DIGIT SEVEN -+1D370 COUNTING ROD TENS DIGIT EIGHT -+1D371 COUNTING ROD TENS DIGIT NINE - @@ 1D400 Mathematical Alphanumeric Symbols 1D7FF -+@@+ - @+ To be used for mathematical variables where style variations are important semantically. For general text, use standard Latin and Greek letters with markup. - @ Bold symbols - 1D400 MATHEMATICAL BOLD CAPITAL A -@@ -25363,6 +27313,11 @@ - # 03F1 greek rho symbol - 1D7C9 MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL - # 03D6 greek pi symbol -+@ Additional bold Greek symbols -+1D7CA MATHEMATICAL BOLD CAPITAL DIGAMMA -+ # 03DC greek letter digamma -+1D7CB MATHEMATICAL BOLD SMALL DIGAMMA -+ # 03DD greek small letter digamma - @ Bold digits - 1D7CE MATHEMATICAL BOLD DIGIT ZERO - # 0030 digit zero -@@ -25470,7 +27425,7 @@ - # 0039 digit nine - @@ 1FF80 Unassigned 1FFFF - @ Not character codes --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 1FFFE - * the value 1FFFE is guaranteed not to be a Unicode character at all - 1FFFF -@@ -26575,84 +28530,84 @@ - : 2A600 - @@ 2FF80 Unassigned 2FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 2FFFE - * the value 2FFFE is guaranteed not to be a Unicode character at all - 2FFFF - * the value 2FFFF is guaranteed not to be a Unicode character at all - @@ 3FF80 Unassigned 3FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 3FFFE - * the value 3FFFE is guaranteed not to be a Unicode character at all - 3FFFF - * the value 3FFFF is guaranteed not to be a Unicode character at all - @@ 4FF80 Unassigned 4FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 4FFFE - * the value 4FFFE is guaranteed not to be a Unicode character at all - 4FFFF - * the value 4FFFF is guaranteed not to be a Unicode character at all - @@ 5FF80 Unassigned 5FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 5FFFE - * the value 5FFFE is guaranteed not to be a Unicode character at all - 5FFFF - * the value 5FFFF is guaranteed not to be a Unicode character at all - @@ 6FF80 Unassigned 6FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 6FFFE - * the value 6FFFE is guaranteed not to be a Unicode character at all - 6FFFF - * the value 6FFFF is guaranteed not to be a Unicode character at all - @@ 7FF80 Unassigned 7FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 7FFFE - * the value 7FFFE is guaranteed not to be a Unicode character at all - 7FFFF - * the value 7FFFF is guaranteed not to be a Unicode character at all - @@ 8FF80 Unassigned 8FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 8FFFE - * the value 8FFFE is guaranteed not to be a Unicode character at all - 8FFFF - * the value 8FFFF is guaranteed not to be a Unicode character at all - @@ 9FF80 Unassigned 9FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 9FFFE - * the value 9FFFE is guaranteed not to be a Unicode character at all - 9FFFF - * the value 9FFFF is guaranteed not to be a Unicode character at all - @@ AFF80 Unassigned AFFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - AFFFE - * the value AFFFE is guaranteed not to be a Unicode character at all - AFFFF - * the value AFFFF is guaranteed not to be a Unicode character at all - @@ BFF80 Unassigned BFFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - BFFFE - * the value BFFFE is guaranteed not to be a Unicode character at all - BFFFF - * the value BFFFF is guaranteed not to be a Unicode character at all - @@ CFF80 Unassigned CFFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - CFFFE - * the value CFFFE is guaranteed not to be a Unicode character at all - CFFFF - * the value CFFFF is guaranteed not to be a Unicode character at all - @@ DFF80 Unassigned DFFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - DFFFE - * the value DFFFE is guaranteed not to be a Unicode character at all - DFFFF -@@ -26758,7 +28713,7 @@ - E007E TAG TILDE - E007F CANCEL TAG - @@ E0100 Variation Selectors Supplement E01EF --@+ These complete the set started at FE00 to FE0F -+@+ These complete the set started at FE00 to FE0F - @ Variation selectors - E0100 VARIATION SELECTOR-17 - * these are abbreviated VS17, and so on -@@ -27003,21 +28958,21 @@ - E01EF VARIATION SELECTOR-256 - @@ EFF80 Unassigned EFFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - EFFFE - * the value EFFFE is guaranteed not to be a Unicode character at all - EFFFF - * the value EFFFF is guaranteed not to be a Unicode character at all - @@ FFF80 Supplementary Private Use Area-A FFFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - FFFFE - * the value FFFFE is guaranteed not to be a Unicode character at all - FFFFF - * the value FFFFF is guaranteed not to be a Unicode character at all - @@ 10FF80 Supplementary Private Use Area-B 10FFFF - @ Noncharacters --@+ These codes are intended for process internal uses, but are not permitted for interchange. -+@+ These codes are intended for process-internal uses, but are not permitted for interchange. - 10FFFE - * the value 10FFFE is guaranteed not to be a Unicode character at all - 10FFFF -diff -r -u perl-5.8.8/lib/unicore/NormalizationCorrections.txt perl-5.8.8.patched/lib/unicore/NormalizationCorrections.txt ---- perl-5.8.8/lib/unicore/NormalizationCorrections.txt 2005-04-08 07:30:54.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/NormalizationCorrections.txt 2006-09-15 14:12:05.581125000 -0400 -@@ -1,10 +1,10 @@ --# NormalizationCorrections-4.1.0.txt --# Date: 2005-03-17, 15:21:00 PST [KW] -+# NormalizationCorrections-5.0.0.txt -+# Date: 2006-07-14, 11:23:00 PDT [KW] - # - # This file is a normative contributory data file in the - # Unicode Character Database. - # --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # - # The normalization stabilization policy of the Unicode -@@ -30,10 +30,10 @@ - # will be made to keep the entries limited to just those fixes. - # - # Interpretation of the fields: --# Field 1: Unicode code point --# Field 2: Original (erroneous) decomposition --# Field 3: Corrected decomposition --# Field 4: Version of Unicode for which the correction was -+# Field 0: Unicode code point -+# Field 1: Original (erroneous) decomposition -+# Field 2: Corrected decomposition -+# Field 3: Version of Unicode for which the correction was - # entered into UnicodeData.txt, in n.n.n format. - # Comment: Indicates the Unicode Corrigendum which documents - # the correction -diff -r -u perl-5.8.8/lib/unicore/PropertyAliases.txt perl-5.8.8.patched/lib/unicore/PropertyAliases.txt ---- perl-5.8.8/lib/unicore/PropertyAliases.txt 2005-04-08 07:30:56.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/PropertyAliases.txt 2006-09-15 14:12:05.582125000 -0400 -@@ -1,10 +1,11 @@ --# PropertyAliases-4.1.0.txt --# Date: 2005-02-26, 11:13:41 GMT [MD] -+# PropertyAliases-5.0.0.txt -+# Date: 2006-03-03, 08:23:34 GMT [MD] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html -+# - # This file contains aliases for properties used in the UCD. - # These names can be used for XML formats of UCD data, for regular-expression - # property tests, and other programmatic textual descriptions of Unicode data. -@@ -161,3 +162,4 @@ - # ================================================ - # Total: 88 - -+# EOF -diff -r -u perl-5.8.8/lib/unicore/PropList.txt perl-5.8.8.patched/lib/unicore/PropList.txt ---- perl-5.8.8/lib/unicore/PropList.txt 2005-04-08 07:30:55.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/PropList.txt 2006-09-15 14:12:05.584125000 -0400 -@@ -1,8 +1,8 @@ --# PropList-4.1.0.txt --# Date: 2005-03-26, 00:34:40 GMT [MD] -+# PropList-5.0.0.txt -+# Date: 2006-06-07, 23:22:52 GMT [MD] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - -@@ -40,6 +40,7 @@ - - 002D ; Dash # Pd HYPHEN-MINUS - 058A ; Dash # Pd ARMENIAN HYPHEN -+05BE ; Dash # Po HEBREW PUNCTUATION MAQAF - 1806 ; Dash # Pd MONGOLIAN TODO SOFT HYPHEN - 2010..2015 ; Dash # Pd [6] HYPHEN..HORIZONTAL BAR - 2053 ; Dash # Po SWUNG DASH -@@ -55,7 +56,7 @@ - FE63 ; Dash # Pd SMALL HYPHEN-MINUS - FF0D ; Dash # Pd FULLWIDTH HYPHEN-MINUS - --# Total code points: 22 -+# Total code points: 23 - - # ================================================ - -@@ -121,6 +122,7 @@ - 06D4 ; Terminal_Punctuation # Po ARABIC FULL STOP - 0700..070A ; Terminal_Punctuation # Po [11] SYRIAC END OF PARAGRAPH..SYRIAC CONTRACTION - 070C ; Terminal_Punctuation # Po SYRIAC HARKLEAN METOBELUS -+07F8..07F9 ; Terminal_Punctuation # Po [2] NKO COMMA..NKO EXCLAMATION MARK - 0964..0965 ; Terminal_Punctuation # Po [2] DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA - 0E5A..0E5B ; Terminal_Punctuation # Po [2] THAI CHARACTER ANGKHANKHU..THAI CHARACTER KHOMUT - 0F08 ; Terminal_Punctuation # Po TIBETAN MARK SBRUL SHAD -@@ -134,9 +136,12 @@ - 1802..1805 ; Terminal_Punctuation # Po [4] MONGOLIAN COMMA..MONGOLIAN FOUR DOTS - 1808..1809 ; Terminal_Punctuation # Po [2] MONGOLIAN MANCHU COMMA..MONGOLIAN MANCHU FULL STOP - 1944..1945 ; Terminal_Punctuation # Po [2] LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK -+1B5A..1B5B ; Terminal_Punctuation # Po [2] BALINESE PANTI..BALINESE PAMADA -+1B5D..1B5F ; Terminal_Punctuation # Po [3] BALINESE CARIK PAMUNGKAH..BALINESE CARIK PAREREN - 203C..203D ; Terminal_Punctuation # Po [2] DOUBLE EXCLAMATION MARK..INTERROBANG - 2047..2049 ; Terminal_Punctuation # Po [3] DOUBLE QUESTION MARK..EXCLAMATION QUESTION MARK - 3001..3002 ; Terminal_Punctuation # Po [2] IDEOGRAPHIC COMMA..IDEOGRAPHIC FULL STOP -+A876..A877 ; Terminal_Punctuation # Po [2] PHAGS-PA MARK SHAD..PHAGS-PA MARK DOUBLE SHAD - FE50..FE52 ; Terminal_Punctuation # Po [3] SMALL COMMA..SMALL FULL STOP - FE54..FE57 ; Terminal_Punctuation # Po [4] SMALL SEMICOLON..SMALL EXCLAMATION MARK - FF01 ; Terminal_Punctuation # Po FULLWIDTH EXCLAMATION MARK -@@ -146,8 +151,12 @@ - FF1F ; Terminal_Punctuation # Po FULLWIDTH QUESTION MARK - FF61 ; Terminal_Punctuation # Po HALFWIDTH IDEOGRAPHIC FULL STOP - FF64 ; Terminal_Punctuation # Po HALFWIDTH IDEOGRAPHIC COMMA -+1039F ; Terminal_Punctuation # Po UGARITIC WORD DIVIDER -+103D0 ; Terminal_Punctuation # Po OLD PERSIAN WORD DIVIDER -+1091F ; Terminal_Punctuation # Po PHOENICIAN WORD SEPARATOR -+12470..12473 ; Terminal_Punctuation # Po [4] CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER..CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON - --# Total code points: 86 -+# Total code points: 102 - - # ================================================ - -@@ -167,6 +176,7 @@ - 20D0..20DC ; Other_Math # Mn [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE - 20E1 ; Other_Math # Mn COMBINING LEFT RIGHT ARROW ABOVE - 20E5..20E6 ; Other_Math # Mn [2] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING DOUBLE VERTICAL STROKE OVERLAY -+20EC..20EF ; Other_Math # Mn [4] COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS..COMBINING RIGHT ARROW BELOW - 2102 ; Other_Math # L& DOUBLE-STRUCK CAPITAL C - 210A..2113 ; Other_Math # L& [10] SCRIPT SMALL G..SCRIPT SMALL L - 2115 ; Other_Math # L& DOUBLE-STRUCK CAPITAL N -@@ -241,7 +251,7 @@ - 1D540..1D544 ; Other_Math # L& [5] MATHEMATICAL DOUBLE-STRUCK CAPITAL I..MATHEMATICAL DOUBLE-STRUCK CAPITAL M - 1D546 ; Other_Math # L& MATHEMATICAL DOUBLE-STRUCK CAPITAL O - 1D54A..1D550 ; Other_Math # L& [7] MATHEMATICAL DOUBLE-STRUCK CAPITAL S..MATHEMATICAL DOUBLE-STRUCK CAPITAL Y --1D552..1D6A3 ; Other_Math # L& [338] MATHEMATICAL DOUBLE-STRUCK SMALL A..MATHEMATICAL MONOSPACE SMALL Z -+1D552..1D6A5 ; Other_Math # L& [340] MATHEMATICAL DOUBLE-STRUCK SMALL A..MATHEMATICAL ITALIC SMALL DOTLESS J - 1D6A8..1D6C0 ; Other_Math # L& [25] MATHEMATICAL BOLD CAPITAL ALPHA..MATHEMATICAL BOLD CAPITAL OMEGA - 1D6C2..1D6DA ; Other_Math # L& [25] MATHEMATICAL BOLD SMALL ALPHA..MATHEMATICAL BOLD SMALL OMEGA - 1D6DC..1D6FA ; Other_Math # L& [31] MATHEMATICAL BOLD EPSILON SYMBOL..MATHEMATICAL ITALIC CAPITAL OMEGA -@@ -252,10 +262,10 @@ - 1D770..1D788 ; Other_Math # L& [25] MATHEMATICAL SANS-SERIF BOLD SMALL ALPHA..MATHEMATICAL SANS-SERIF BOLD SMALL OMEGA - 1D78A..1D7A8 ; Other_Math # L& [31] MATHEMATICAL SANS-SERIF BOLD EPSILON SYMBOL..MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMEGA - 1D7AA..1D7C2 ; Other_Math # L& [25] MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA..MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA --1D7C4..1D7C9 ; Other_Math # L& [6] MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL..MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL -+1D7C4..1D7CB ; Other_Math # L& [8] MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL..MATHEMATICAL BOLD SMALL DIGAMMA - 1D7CE..1D7FF ; Other_Math # Nd [50] MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE - --# Total code points: 1102 -+# Total code points: 1110 - - # ================================================ - -@@ -279,8 +289,7 @@ - # ================================================ - - 0345 ; Other_Alphabetic # Mn COMBINING GREEK YPOGEGRAMMENI --05B0..05B9 ; Other_Alphabetic # Mn [10] HEBREW POINT SHEVA..HEBREW POINT HOLAM --05BB..05BD ; Other_Alphabetic # Mn [3] HEBREW POINT QUBUTS..HEBREW POINT METEG -+05B0..05BD ; Other_Alphabetic # Mn [14] HEBREW POINT SHEVA..HEBREW POINT METEG - 05BF ; Other_Alphabetic # Mn HEBREW POINT RAFE - 05C1..05C2 ; Other_Alphabetic # Mn [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT - 05C4..05C5 ; Other_Alphabetic # Mn [2] HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT -@@ -357,6 +366,7 @@ - 0CCA..0CCB ; Other_Alphabetic # Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO - 0CCC ; Other_Alphabetic # Mn KANNADA VOWEL SIGN AU - 0CD5..0CD6 ; Other_Alphabetic # Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK -+0CE2..0CE3 ; Other_Alphabetic # Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL - 0D02..0D03 ; Other_Alphabetic # Mc [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA - 0D3E..0D40 ; Other_Alphabetic # Mc [3] MALAYALAM VOWEL SIGN AA..MALAYALAM VOWEL SIGN II - 0D41..0D43 ; Other_Alphabetic # Mn [3] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC R -@@ -411,6 +421,15 @@ - 19C8..19C9 ; Other_Alphabetic # Mc [2] NEW TAI LUE TONE MARK-1..NEW TAI LUE TONE MARK-2 - 1A17..1A18 ; Other_Alphabetic # Mn [2] BUGINESE VOWEL SIGN I..BUGINESE VOWEL SIGN U - 1A19..1A1B ; Other_Alphabetic # Mc [3] BUGINESE VOWEL SIGN E..BUGINESE VOWEL SIGN AE -+1B00..1B03 ; Other_Alphabetic # Mn [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG -+1B04 ; Other_Alphabetic # Mc BALINESE SIGN BISAH -+1B35 ; Other_Alphabetic # Mc BALINESE VOWEL SIGN TEDUNG -+1B36..1B3A ; Other_Alphabetic # Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA -+1B3B ; Other_Alphabetic # Mc BALINESE VOWEL SIGN RA REPA TEDUNG -+1B3C ; Other_Alphabetic # Mn BALINESE VOWEL SIGN LA LENGA -+1B3D..1B41 ; Other_Alphabetic # Mc [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG -+1B42 ; Other_Alphabetic # Mn BALINESE VOWEL SIGN PEPET -+1B43 ; Other_Alphabetic # Mc BALINESE VOWEL SIGN PEPET TEDUNG - 24B6..24E9 ; Other_Alphabetic # So [52] CIRCLED LATIN CAPITAL LETTER A..CIRCLED LATIN SMALL LETTER Z - A823..A824 ; Other_Alphabetic # Mc [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI VOWEL SIGN I - A825..A826 ; Other_Alphabetic # Mn [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E -@@ -420,7 +439,7 @@ - 10A05..10A06 ; Other_Alphabetic # Mn [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O - 10A0C..10A0F ; Other_Alphabetic # Mn [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA - --# Total code points: 488 -+# Total code points: 511 - - # ================================================ - -@@ -463,8 +482,7 @@ - 0483..0486 ; Diacritic # Mn [4] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC PSILI PNEUMATA - 0559 ; Diacritic # Lm ARMENIAN MODIFIER LETTER LEFT HALF RING - 0591..05A1 ; Diacritic # Mn [17] HEBREW ACCENT ETNAHTA..HEBREW ACCENT PAZER --05A3..05B9 ; Diacritic # Mn [23] HEBREW ACCENT MUNAH..HEBREW POINT HOLAM --05BB..05BD ; Diacritic # Mn [3] HEBREW POINT QUBUTS..HEBREW POINT METEG -+05A3..05BD ; Diacritic # Mn [27] HEBREW ACCENT MUNAH..HEBREW POINT METEG - 05BF ; Diacritic # Mn HEBREW POINT RAFE - 05C1..05C2 ; Diacritic # Mn [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT - 05C4 ; Diacritic # Mn HEBREW MARK UPPER DOT -@@ -475,6 +493,8 @@ - 06EA..06EC ; Diacritic # Mn [3] ARABIC EMPTY CENTRE LOW STOP..ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE - 0730..074A ; Diacritic # Mn [27] SYRIAC PTHAHA ABOVE..SYRIAC BARREKH - 07A6..07B0 ; Diacritic # Mn [11] THAANA ABAFILI..THAANA SUKUN -+07EB..07F3 ; Diacritic # Mn [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE -+07F4..07F5 ; Diacritic # Lm [2] NKO HIGH TONE APOSTROPHE..NKO LOW TONE APOSTROPHE - 093C ; Diacritic # Mn DEVANAGARI SIGN NUKTA - 094D ; Diacritic # Mn DEVANAGARI SIGN VIRAMA - 0951..0954 ; Diacritic # Mn [4] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI ACUTE ACCENT -@@ -508,8 +528,13 @@ - 17C9..17D3 ; Diacritic # Mn [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT - 17DD ; Diacritic # Mn KHMER SIGN ATTHACAN - 1939..193B ; Diacritic # Mn [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I -+1B34 ; Diacritic # Mn BALINESE SIGN REREKAN -+1B44 ; Diacritic # Mc BALINESE ADEG ADEG -+1B6B..1B73 ; Diacritic # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG - 1D2C..1D61 ; Diacritic # Lm [54] MODIFIER LETTER CAPITAL A..MODIFIER LETTER SMALL CHI - 1D62..1D6A ; Diacritic # L& [9] LATIN SUBSCRIPT SMALL LETTER I..GREEK SUBSCRIPT SMALL LETTER CHI -+1DC4..1DCA ; Diacritic # Mn [7] COMBINING MACRON-ACUTE..COMBINING LATIN SMALL LETTER R BELOW -+1DFE..1DFF ; Diacritic # Mn [2] COMBINING LEFT ARROWHEAD ABOVE..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW - 1FBD ; Diacritic # Sk GREEK KORONIS - 1FBF..1FC1 ; Diacritic # Sk [3] GREEK PSILI..GREEK DIALYTIKA AND PERISPOMENI - 1FCD..1FCF ; Diacritic # Sk [3] GREEK PSILI AND VARIA..GREEK PSILI AND PERISPOMENI -@@ -520,6 +545,8 @@ - 3099..309A ; Diacritic # Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK - 309B..309C ; Diacritic # Sk [2] KATAKANA-HIRAGANA VOICED SOUND MARK..KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK - 30FC ; Diacritic # Lm KATAKANA-HIRAGANA PROLONGED SOUND MARK -+A717..A71A ; Diacritic # Lm [4] MODIFIER LETTER DOT VERTICAL BAR..MODIFIER LETTER LOWER RIGHT CORNER ANGLE -+A720..A721 ; Diacritic # Sk [2] MODIFIER LETTER STRESS AND HIGH TONE..MODIFIER LETTER STRESS AND LOW TONE - FB1E ; Diacritic # Mn HEBREW POINT JUDEO-SPANISH VARIKA - FE20..FE23 ; Diacritic # Mn [4] COMBINING LIGATURE LEFT HALF..COMBINING DOUBLE TILDE RIGHT HALF - FF3E ; Diacritic # Sk FULLWIDTH CIRCUMFLEX ACCENT -@@ -533,13 +560,14 @@ - 1D185..1D18B ; Diacritic # Mn [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE - 1D1AA..1D1AD ; Diacritic # Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO - --# Total code points: 482 -+# Total code points: 520 - - # ================================================ - - 00B7 ; Extender # Po MIDDLE DOT - 02D0..02D1 ; Extender # Lm [2] MODIFIER LETTER TRIANGULAR COLON..MODIFIER LETTER HALF TRIANGULAR COLON - 0640 ; Extender # Lm ARABIC TATWEEL -+07FA ; Extender # Lm NKO LAJANYALAN - 0E46 ; Extender # Lm THAI CHARACTER MAIYAMOK - 0EC6 ; Extender # Lm LAO KO LA - 1843 ; Extender # Lm MONGOLIAN LETTER TODO LONG VOWEL SIGN -@@ -550,7 +578,7 @@ - A015 ; Extender # Lm YI SYLLABLE WU - FF70 ; Extender # Lm HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK - --# Total code points: 20 -+# Total code points: 21 - - # ================================================ - -@@ -620,27 +648,6 @@ - - # ================================================ - --034F ; Grapheme_Link # Mn COMBINING GRAPHEME JOINER --094D ; Grapheme_Link # Mn DEVANAGARI SIGN VIRAMA --09CD ; Grapheme_Link # Mn BENGALI SIGN VIRAMA --0A4D ; Grapheme_Link # Mn GURMUKHI SIGN VIRAMA --0ACD ; Grapheme_Link # Mn GUJARATI SIGN VIRAMA --0B4D ; Grapheme_Link # Mn ORIYA SIGN VIRAMA --0BCD ; Grapheme_Link # Mn TAMIL SIGN VIRAMA --0C4D ; Grapheme_Link # Mn TELUGU SIGN VIRAMA --0CCD ; Grapheme_Link # Mn KANNADA SIGN VIRAMA --0D4D ; Grapheme_Link # Mn MALAYALAM SIGN VIRAMA --0DCA ; Grapheme_Link # Mn SINHALA SIGN AL-LAKUNA --0E3A ; Grapheme_Link # Mn THAI CHARACTER PHINTHU --1039 ; Grapheme_Link # Mn MYANMAR SIGN VIRAMA --17D2 ; Grapheme_Link # Mn KHMER SIGN COENG --A806 ; Grapheme_Link # Mn SYLOTI NAGRI SIGN HASANTA --10A3F ; Grapheme_Link # Mn KHAROSHTHI VIRAMA -- --# Total code points: 16 -- --# ================================================ -- - 2FF0..2FF1 ; IDS_Binary_Operator # So [2] IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT..IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO BELOW - 2FF4..2FFB ; IDS_Binary_Operator # So [8] IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND..IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID - -@@ -703,6 +710,7 @@ - - 0069..006A ; Soft_Dotted # L& [2] LATIN SMALL LETTER I..LATIN SMALL LETTER J - 012F ; Soft_Dotted # L& LATIN SMALL LETTER I WITH OGONEK -+0249 ; Soft_Dotted # L& LATIN SMALL LETTER J WITH STROKE - 0268 ; Soft_Dotted # L& LATIN SMALL LETTER I WITH STROKE - 029D ; Soft_Dotted # L& LATIN SMALL LETTER J WITH CROSSED-TAIL - 02B2 ; Soft_Dotted # Lm MODIFIER LETTER SMALL J -@@ -731,7 +739,7 @@ - 1D65E..1D65F ; Soft_Dotted # L& [2] MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL I..MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL J - 1D692..1D693 ; Soft_Dotted # L& [2] MATHEMATICAL MONOSPACE SMALL I..MATHEMATICAL MONOSPACE SMALL J - --# Total code points: 44 -+# Total code points: 45 - - # ================================================ - -@@ -765,6 +773,7 @@ - 061F ; STerm # Po ARABIC QUESTION MARK - 06D4 ; STerm # Po ARABIC FULL STOP - 0700..0702 ; STerm # Po [3] SYRIAC END OF PARAGRAPH..SYRIAC SUBLINEAR FULL STOP -+07F9 ; STerm # Po NKO EXCLAMATION MARK - 0964..0965 ; STerm # Po [2] DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA - 104A..104B ; STerm # Po [2] MYANMAR SIGN LITTLE SECTION..MYANMAR SIGN SECTION - 1362 ; STerm # Po ETHIOPIC FULL STOP -@@ -773,9 +782,12 @@ - 1803 ; STerm # Po MONGOLIAN FULL STOP - 1809 ; STerm # Po MONGOLIAN MANCHU FULL STOP - 1944..1945 ; STerm # Po [2] LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK -+1B5A..1B5B ; STerm # Po [2] BALINESE PANTI..BALINESE PAMADA -+1B5E..1B5F ; STerm # Po [2] BALINESE CARIK SIKI..BALINESE CARIK PAREREN - 203C..203D ; STerm # Po [2] DOUBLE EXCLAMATION MARK..INTERROBANG - 2047..2049 ; STerm # Po [3] DOUBLE QUESTION MARK..EXCLAMATION QUESTION MARK - 3002 ; STerm # Po IDEOGRAPHIC FULL STOP -+A876..A877 ; STerm # Po [2] PHAGS-PA MARK SHAD..PHAGS-PA MARK DOUBLE SHAD - FE52 ; STerm # Po SMALL FULL STOP - FE56..FE57 ; STerm # Po [2] SMALL QUESTION MARK..SMALL EXCLAMATION MARK - FF01 ; STerm # Po FULLWIDTH EXCLAMATION MARK -@@ -783,7 +795,7 @@ - FF1F ; STerm # Po FULLWIDTH QUESTION MARK - FF61 ; STerm # Po HALFWIDTH IDEOGRAPHIC FULL STOP - --# Total code points: 36 -+# Total code points: 43 - - # ================================================ - -@@ -894,11 +906,10 @@ - 237C ; Pattern_Syntax # Sm RIGHT ANGLE WITH DOWNWARDS ZIGZAG ARROW - 237D..239A ; Pattern_Syntax # So [30] SHOULDERED OPEN BOX..CLEAR SCREEN SYMBOL - 239B..23B3 ; Pattern_Syntax # Sm [25] LEFT PARENTHESIS UPPER HOOK..SUMMATION BOTTOM --23B4 ; Pattern_Syntax # Ps TOP SQUARE BRACKET --23B5 ; Pattern_Syntax # Pe BOTTOM SQUARE BRACKET --23B6 ; Pattern_Syntax # Po BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET --23B7..23DB ; Pattern_Syntax # So [37] RADICAL SYMBOL BOTTOM..FUSE --23DC..23FF ; Pattern_Syntax # Cn [36] .. -+23B4..23DB ; Pattern_Syntax # So [40] TOP SQUARE BRACKET..FUSE -+23DC..23E1 ; Pattern_Syntax # Sm [6] TOP PARENTHESIS..BOTTOM TORTOISE SHELL BRACKET -+23E2..23E7 ; Pattern_Syntax # So [6] WHITE TRAPEZIUM..ELECTRICAL INTERSECTION -+23E8..23FF ; Pattern_Syntax # Cn [24] .. - 2400..2426 ; Pattern_Syntax # So [39] SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO - 2427..243F ; Pattern_Syntax # Cn [25] .. - 2440..244A ; Pattern_Syntax # So [11] OCR HOOK..OCR DOUBLE BACKSLASH -@@ -913,8 +924,8 @@ - 266F ; Pattern_Syntax # Sm MUSIC SHARP SIGN - 2670..269C ; Pattern_Syntax # So [45] WEST SYRIAC CROSS..FLEUR-DE-LIS - 269D..269F ; Pattern_Syntax # Cn [3] .. --26A0..26B1 ; Pattern_Syntax # So [18] WARNING SIGN..FUNERAL URN --26B2..2700 ; Pattern_Syntax # Cn [79] .. -+26A0..26B2 ; Pattern_Syntax # So [19] WARNING SIGN..NEUTER -+26B3..2700 ; Pattern_Syntax # Cn [78] .. - 2701..2704 ; Pattern_Syntax # So [4] UPPER BLADE SCISSORS..WHITE SCISSORS - 2705 ; Pattern_Syntax # Cn - 2706..2709 ; Pattern_Syntax # So [4] TELEPHONE LOCATION SIGN..ENVELOPE -@@ -955,7 +966,8 @@ - 27C0..27C4 ; Pattern_Syntax # Sm [5] THREE DIMENSIONAL ANGLE..OPEN SUPERSET - 27C5 ; Pattern_Syntax # Ps LEFT S-SHAPED BAG DELIMITER - 27C6 ; Pattern_Syntax # Pe RIGHT S-SHAPED BAG DELIMITER --27C7..27CF ; Pattern_Syntax # Cn [9] .. -+27C7..27CA ; Pattern_Syntax # Sm [4] OR WITH DOT INSIDE..VERTICAL BAR WITH HORIZONTAL STROKE -+27CB..27CF ; Pattern_Syntax # Cn [5] .. - 27D0..27E5 ; Pattern_Syntax # Sm [22] WHITE DIAMOND WITH CENTRED DOT..WHITE SQUARE WITH RIGHTWARDS TICK - 27E6 ; Pattern_Syntax # Ps MATHEMATICAL LEFT WHITE SQUARE BRACKET - 27E7 ; Pattern_Syntax # Pe MATHEMATICAL RIGHT WHITE SQUARE BRACKET -@@ -998,8 +1010,10 @@ - 29FC ; Pattern_Syntax # Ps LEFT-POINTING CURVED ANGLE BRACKET - 29FD ; Pattern_Syntax # Pe RIGHT-POINTING CURVED ANGLE BRACKET - 29FE..2AFF ; Pattern_Syntax # Sm [258] TINY..N-ARY WHITE VERTICAL BAR --2B00..2B13 ; Pattern_Syntax # So [20] NORTH EAST WHITE ARROW..SQUARE WITH BOTTOM HALF BLACK --2B14..2BFF ; Pattern_Syntax # Cn [236] .. -+2B00..2B1A ; Pattern_Syntax # So [27] NORTH EAST WHITE ARROW..DOTTED SQUARE -+2B1B..2B1F ; Pattern_Syntax # Cn [5] .. -+2B20..2B23 ; Pattern_Syntax # So [4] WHITE PENTAGON..HORIZONTAL BLACK HEXAGON -+2B24..2BFF ; Pattern_Syntax # Cn [220] .. - 2E00..2E01 ; Pattern_Syntax # Po [2] RIGHT ANGLE SUBSTITUTION MARKER..RIGHT ANGLE DOTTED SUBSTITUTION MARKER - 2E02 ; Pattern_Syntax # Pi LEFT SUBSTITUTION BRACKET - 2E03 ; Pattern_Syntax # Pf RIGHT SUBSTITUTION BRACKET -@@ -1047,3 +1061,5 @@ - FE45..FE46 ; Pattern_Syntax # Po [2] SESAME DOT..WHITE SESAME DOT - - # Total code points: 2760 -+ -+# EOF -diff -r -u perl-5.8.8/lib/unicore/PropValueAliases.txt perl-5.8.8.patched/lib/unicore/PropValueAliases.txt ---- perl-5.8.8/lib/unicore/PropValueAliases.txt 2005-04-08 07:30:55.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/PropValueAliases.txt 2006-09-15 14:12:05.585125000 -0400 -@@ -1,8 +1,8 @@ --# PropertyValueAliases-4.1.0.txt --# Date: 2005-03-28, 17:21:48 GMT [MD] -+# PropertyValueAliases-5.0.0.txt -+# Date: 2006-03-03, 08:23:34 GMT [MD] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - # -@@ -65,6 +65,7 @@ - age; n/a ; 3.2 - age; n/a ; 4.0 - age; n/a ; 4.1 -+age; n/a ; 5.0 - age; n/a ; unassigned - - # Bidi_Class (bc) -@@ -101,6 +102,7 @@ - blk; n/a ; Arabic_Supplement - blk; n/a ; Armenian - blk; n/a ; Arrows -+blk; n/a ; Balinese - blk; n/a ; Basic_Latin - blk; n/a ; Bengali - blk; n/a ; Block_Elements -@@ -128,6 +130,9 @@ - blk; n/a ; Combining_Half_Marks - blk; n/a ; Control_Pictures - blk; n/a ; Coptic -+blk; n/a ; Counting_Rod_Numerals -+blk; n/a ; Cuneiform -+blk; n/a ; Cuneiform_Numbers_and_Punctuation - blk; n/a ; Currency_Symbols - blk; n/a ; Cypriot_Syllabary - blk; n/a ; Cyrillic -@@ -173,6 +178,8 @@ - blk; n/a ; Latin-1_Supplement - blk; n/a ; Latin_Extended-A - blk; n/a ; Latin_Extended-B -+blk; n/a ; Latin_Extended-C -+blk; n/a ; Latin_Extended-D - blk; n/a ; Latin_Extended_Additional - blk; n/a ; Letterlike_Symbols - blk; n/a ; Limbu -@@ -192,6 +199,7 @@ - blk; n/a ; Musical_Symbols - blk; n/a ; Myanmar - blk; n/a ; New_Tai_Lue -+blk; n/a ; NKo - blk; n/a ; No_Block - blk; n/a ; Number_Forms - blk; n/a ; Ogham -@@ -200,6 +208,8 @@ - blk; n/a ; Optical_Character_Recognition - blk; n/a ; Oriya - blk; n/a ; Osmanya -+blk; n/a ; Phags-pa -+blk; n/a ; Phoenician - blk; n/a ; Phonetic_Extensions - blk; n/a ; Phonetic_Extensions_Supplement - blk; n/a ; Private_Use_Area -@@ -491,6 +501,7 @@ - - sc ; Arab ; Arabic - sc ; Armn ; Armenian -+sc ; Bali ; Balinese - sc ; Beng ; Bengali - sc ; Bopo ; Bopomofo - sc ; Brai ; Braille -@@ -528,9 +539,12 @@ - sc ; Mlym ; Malayalam - sc ; Mong ; Mongolian - sc ; Mymr ; Myanmar -+sc ; Nkoo ; Nko - sc ; Ogam ; Ogham - sc ; Orya ; Oriya - sc ; Osma ; Osmanya -+sc ; Phag ; Phags_Pa -+sc ; Phnx ; Phoenician - sc ; Qaai ; Inherited - sc ; Runr ; Runic - sc ; Shaw ; Shavian -@@ -549,8 +563,10 @@ - sc ; Tibt ; Tibetan - sc ; Ugar ; Ugaritic - sc ; Xpeo ; Old_Persian -+sc ; Xsux ; Cuneiform - sc ; Yiii ; Yi - sc ; Zyyy ; Common -+sc ; Zzzz ; Unknown - - # Sentence_Break (SB) - -@@ -576,3 +592,5 @@ - WB ; MN ; MidNum - WB ; NU ; Numeric - WB ; XX ; Other -+ -+# EOF -diff -r -u perl-5.8.8/lib/unicore/README.perl perl-5.8.8.patched/lib/unicore/README.perl ---- perl-5.8.8/lib/unicore/README.perl 2005-04-25 09:36:28.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/README.perl 2006-09-15 14:12:05.585125000 -0400 -@@ -1,20 +1,25 @@ - The *.txt files were copied from - -- http://www.unicode.org/Public/4.1.0/ucd -+ http://www.unicode.org/Public/5.0.0/ucd - --as of Unicode 4.1.0 (April 2005). -+as of Unicode 5.0.0 (July 2006). - --The two big files, NormalizationTest.txt (2.1 MB) and Unihan.txt --(26.7 MB) were not included due to space considerations. Also NOT -+The two big files, NormalizationTest.txt (2 MB) and Unihan.txt (28 MB, -+5.8 MB zip) were not included due to space considerations. Also NOT - included were any *.html files and the Derived*.txt files - - DerivedAge.txt - DerivedCoreProperties.txt - DerivedNormalizationProps.txt - -+or any files from subdirectories. -+ - To be 8.3-friendly, the lib/unicore/PropertyValueAliases.txt was --renamed to be lib/unicore/PropValueAliases.txt, since otherwise --it would have conflicted with lib/unicore/PropertyAliases.txt. -+renamed to be lib/unicore/PropValueAliases.txt and the -+lib/unicore/NamedSequencesProv.txt was renamed to be -+lib/unicore/NamedSqProv.txt, since otherwise they would have -+conflicted with lib/unicore/PropertyAliases.txt and -+lib/unicore/NamedSequences.txt. - - NOTE: If you modify the input file set you should also run - -diff -r -u perl-5.8.8/lib/unicore/Scripts.txt perl-5.8.8.patched/lib/unicore/Scripts.txt ---- perl-5.8.8/lib/unicore/Scripts.txt 2005-04-08 07:30:59.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/Scripts.txt 2006-09-15 14:12:05.588124000 -0400 -@@ -1,8 +1,8 @@ --# Scripts-4.1.0.txt --# Date: 2005-03-10, 01:56:19 GMT [MD] -+# Scripts-5.0.0.txt -+# Date: 2006-03-09, 23:14:25 GMT [MD] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - -@@ -11,7 +11,9 @@ - # Property: Script - - # All code points not explicitly listed for Script --# have the value Common (Zyyy). -+# have the value Unknown (Zzzz). -+ -+# @missing: 0000..10FFFF; Unknown - - # ================================================ - -@@ -90,6 +92,8 @@ - 10FB ; Common # Po GEORGIAN PARAGRAPH SEPARATOR - 16EB..16ED ; Common # Po [3] RUNIC SINGLE PUNCTUATION..RUNIC CROSS PUNCTUATION - 1735..1736 ; Common # Po [2] PHILIPPINE SINGLE PUNCTUATION..PHILIPPINE DOUBLE PUNCTUATION -+1802..1803 ; Common # Po [2] MONGOLIAN COMMA..MONGOLIAN FULL STOP -+1805 ; Common # Po MONGOLIAN FOUR DOTS - 2000..200A ; Common # Zs [11] EN QUAD..HAIR SPACE - 200B ; Common # Cf ZERO WIDTH SPACE - 200E..200F ; Common # Cf [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK -@@ -153,7 +157,6 @@ - 212C..212D ; Common # L& [2] SCRIPT CAPITAL B..BLACK-LETTER CAPITAL C - 212E ; Common # So ESTIMATED SYMBOL - 212F..2131 ; Common # L& [3] SCRIPT SMALL E..SCRIPT CAPITAL F --2132 ; Common # So TURNED CAPITAL F - 2133..2134 ; Common # L& [2] SCRIPT CAPITAL M..SCRIPT SMALL O - 2135..2138 ; Common # Lo [4] ALEF SYMBOL..DALET SYMBOL - 2139 ; Common # L& INFORMATION SOURCE -@@ -163,9 +166,10 @@ - 2145..2149 ; Common # L& [5] DOUBLE-STRUCK ITALIC CAPITAL D..DOUBLE-STRUCK ITALIC SMALL J - 214A ; Common # So PROPERTY LINE - 214B ; Common # Sm TURNED AMPERSAND --214C ; Common # So PER SIGN -+214C..214D ; Common # So [2] PER SIGN..AKTIESELSKAB - 2153..215F ; Common # No [13] VULGAR FRACTION ONE THIRD..FRACTION NUMERATOR ONE --2160..2183 ; Common # Nl [36] ROMAN NUMERAL ONE..ROMAN NUMERAL REVERSED ONE HUNDRED -+2160..2182 ; Common # Nl [35] ROMAN NUMERAL ONE..ROMAN NUMERAL TEN THOUSAND -+2183 ; Common # L& ROMAN NUMERAL REVERSED ONE HUNDRED - 2190..2194 ; Common # Sm [5] LEFTWARDS ARROW..LEFT RIGHT ARROW - 2195..2199 ; Common # So [5] UP DOWN ARROW..SOUTH WEST ARROW - 219A..219B ; Common # Sm [2] LEFTWARDS ARROW WITH STROKE..RIGHTWARDS ARROW WITH STROKE -@@ -196,10 +200,9 @@ - 237C ; Common # Sm RIGHT ANGLE WITH DOWNWARDS ZIGZAG ARROW - 237D..239A ; Common # So [30] SHOULDERED OPEN BOX..CLEAR SCREEN SYMBOL - 239B..23B3 ; Common # Sm [25] LEFT PARENTHESIS UPPER HOOK..SUMMATION BOTTOM --23B4 ; Common # Ps TOP SQUARE BRACKET --23B5 ; Common # Pe BOTTOM SQUARE BRACKET --23B6 ; Common # Po BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET --23B7..23DB ; Common # So [37] RADICAL SYMBOL BOTTOM..FUSE -+23B4..23DB ; Common # So [40] TOP SQUARE BRACKET..FUSE -+23DC..23E1 ; Common # Sm [6] TOP PARENTHESIS..BOTTOM TORTOISE SHELL BRACKET -+23E2..23E7 ; Common # So [6] WHITE TRAPEZIUM..ELECTRICAL INTERSECTION - 2400..2426 ; Common # So [39] SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO - 2440..244A ; Common # So [11] OCR HOOK..OCR DOUBLE BACKSLASH - 2460..249B ; Common # No [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP -@@ -214,7 +217,7 @@ - 2600..266E ; Common # So [111] BLACK SUN WITH RAYS..MUSIC NATURAL SIGN - 266F ; Common # Sm MUSIC SHARP SIGN - 2670..269C ; Common # So [45] WEST SYRIAC CROSS..FLEUR-DE-LIS --26A0..26B1 ; Common # So [18] WARNING SIGN..FUNERAL URN -+26A0..26B2 ; Common # So [19] WARNING SIGN..NEUTER - 2701..2704 ; Common # So [4] UPPER BLADE SCISSORS..WHITE SCISSORS - 2706..2709 ; Common # So [4] TELEPHONE LOCATION SIGN..ENVELOPE - 270C..2727 ; Common # So [28] VICTORY HAND..WHITE FOUR POINTED STAR -@@ -245,6 +248,7 @@ - 27C0..27C4 ; Common # Sm [5] THREE DIMENSIONAL ANGLE..OPEN SUPERSET - 27C5 ; Common # Ps LEFT S-SHAPED BAG DELIMITER - 27C6 ; Common # Pe RIGHT S-SHAPED BAG DELIMITER -+27C7..27CA ; Common # Sm [4] OR WITH DOT INSIDE..VERTICAL BAR WITH HORIZONTAL STROKE - 27D0..27E5 ; Common # Sm [22] WHITE DIAMOND WITH CENTRED DOT..WHITE SQUARE WITH RIGHTWARDS TICK - 27E6 ; Common # Ps MATHEMATICAL LEFT WHITE SQUARE BRACKET - 27E7 ; Common # Pe MATHEMATICAL RIGHT WHITE SQUARE BRACKET -@@ -285,7 +289,8 @@ - 29FC ; Common # Ps LEFT-POINTING CURVED ANGLE BRACKET - 29FD ; Common # Pe RIGHT-POINTING CURVED ANGLE BRACKET - 29FE..2AFF ; Common # Sm [258] TINY..N-ARY WHITE VERTICAL BAR --2B00..2B13 ; Common # So [20] NORTH EAST WHITE ARROW..SQUARE WITH BOTTOM HALF BLACK -+2B00..2B1A ; Common # So [27] NORTH EAST WHITE ARROW..DOTTED SQUARE -+2B20..2B23 ; Common # So [4] WHITE PENTAGON..HORIZONTAL BLACK HEXAGON - 2E00..2E01 ; Common # Po [2] RIGHT ANGLE SUBSTITUTION MARKER..RIGHT ANGLE DOTTED SUBSTITUTION MARKER - 2E02 ; Common # Pi LEFT SUBSTITUTION BRACKET - 2E03 ; Common # Pf RIGHT SUBSTITUTION BRACKET -@@ -355,7 +360,8 @@ - 3300..33FF ; Common # So [256] SQUARE APAATO..SQUARE GAL - 4DC0..4DFF ; Common # So [64] HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION - A700..A716 ; Common # Sk [23] MODIFIER LETTER CHINESE TONE YIN PING..MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR --E000..F8FF ; Common # Co [6400] .. -+A717..A71A ; Common # Lm [4] MODIFIER LETTER DOT VERTICAL BAR..MODIFIER LETTER LOWER RIGHT CORNER ANGLE -+A720..A721 ; Common # Sk [2] MODIFIER LETTER STRESS AND HIGH TONE..MODIFIER LETTER STRESS AND LOW TONE - FD3E ; Common # Ps ORNATE LEFT PARENTHESIS - FD3F ; Common # Pe ORNATE RIGHT PARENTHESIS - FDFD ; Common # So ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM -@@ -461,6 +467,7 @@ - 1D18C..1D1A9 ; Common # So [30] MUSICAL SYMBOL RINFORZANDO..MUSICAL SYMBOL DEGREE SLASH - 1D1AE..1D1DD ; Common # So [48] MUSICAL SYMBOL PEDAL MARK..MUSICAL SYMBOL PES SUBPUNCTIS - 1D300..1D356 ; Common # So [87] MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING -+1D360..1D371 ; Common # No [18] COUNTING ROD UNIT DIGIT ONE..COUNTING ROD TENS DIGIT NINE - 1D400..1D454 ; Common # L& [85] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G - 1D456..1D49C ; Common # L& [71] MATHEMATICAL ITALIC SMALL I..MATHEMATICAL SCRIPT CAPITAL A - 1D49E..1D49F ; Common # L& [2] MATHEMATICAL SCRIPT CAPITAL C..MATHEMATICAL SCRIPT CAPITAL D -@@ -500,15 +507,12 @@ - 1D7A9 ; Common # Sm MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA - 1D7AA..1D7C2 ; Common # L& [25] MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA..MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA - 1D7C3 ; Common # Sm MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL --1D7C4..1D7C9 ; Common # L& [6] MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL..MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL -+1D7C4..1D7CB ; Common # L& [8] MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL..MATHEMATICAL BOLD SMALL DIGAMMA - 1D7CE..1D7FF ; Common # Nd [50] MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE - E0001 ; Common # Cf LANGUAGE TAG - E0020..E007F ; Common # Cf [96] TAG SPACE..CANCEL TAG --F0000..FFFFD ; Common # Co [65534] .. --100000..10FFFD; Common # Co [65534] .. - --# The above property value applies to 878924 code points not listed here. --# Total code points: 1021355 -+# Total code points: 5020 - - # ================================================ - -@@ -522,8 +526,9 @@ - 01BB ; Latin # Lo LATIN LETTER TWO WITH STROKE - 01BC..01BF ; Latin # L& [4] LATIN CAPITAL LETTER TONE FIVE..LATIN LETTER WYNN - 01C0..01C3 ; Latin # Lo [4] LATIN LETTER DENTAL CLICK..LATIN LETTER RETROFLEX CLICK --01C4..0241 ; Latin # L& [126] LATIN CAPITAL LETTER DZ WITH CARON..LATIN CAPITAL LETTER GLOTTAL STOP --0250..02AF ; Latin # L& [96] LATIN SMALL LETTER TURNED A..LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL -+01C4..0293 ; Latin # L& [208] LATIN CAPITAL LETTER DZ WITH CARON..LATIN SMALL LETTER EZH WITH CURL -+0294 ; Latin # Lo LATIN LETTER GLOTTAL STOP -+0295..02AF ; Latin # L& [27] LATIN LETTER PHARYNGEAL VOICED FRICATIVE..LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL - 02B0..02B8 ; Latin # Lm [9] MODIFIER LETTER SMALL H..MODIFIER LETTER SMALL Y - 02E0..02E4 ; Latin # Lm [5] MODIFIER LETTER SMALL GAMMA..MODIFIER LETTER SMALL REVERSED GLOTTAL STOP - 1D00..1D25 ; Latin # L& [38] LATIN LETTER SMALL CAPITAL A..LATIN LETTER AIN -@@ -531,23 +536,29 @@ - 1D62..1D65 ; Latin # L& [4] LATIN SUBSCRIPT SMALL LETTER I..LATIN SUBSCRIPT SMALL LETTER V - 1D6B..1D77 ; Latin # L& [13] LATIN SMALL LETTER UE..LATIN SMALL LETTER TURNED G - 1D79..1D9A ; Latin # L& [34] LATIN SMALL LETTER INSULAR G..LATIN SMALL LETTER EZH WITH RETROFLEX HOOK --1D9B..1DBF ; Latin # Lm [37] MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL THETA -+1D9B..1DBE ; Latin # Lm [36] MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL EZH - 1E00..1E9B ; Latin # L& [156] LATIN CAPITAL LETTER A WITH RING BELOW..LATIN SMALL LETTER LONG S WITH DOT ABOVE - 1EA0..1EF9 ; Latin # L& [90] LATIN CAPITAL LETTER A WITH DOT BELOW..LATIN SMALL LETTER Y WITH TILDE - 2071 ; Latin # L& SUPERSCRIPT LATIN SMALL LETTER I - 207F ; Latin # L& SUPERSCRIPT LATIN SMALL LETTER N - 2090..2094 ; Latin # Lm [5] LATIN SUBSCRIPT SMALL LETTER A..LATIN SUBSCRIPT SMALL LETTER SCHWA - 212A..212B ; Latin # L& [2] KELVIN SIGN..ANGSTROM SIGN -+2132 ; Latin # L& TURNED CAPITAL F -+214E ; Latin # L& TURNED SMALL F -+2184 ; Latin # L& LATIN SMALL LETTER REVERSED C -+2C60..2C6C ; Latin # L& [13] LATIN CAPITAL LETTER L WITH DOUBLE BAR..LATIN SMALL LETTER Z WITH DESCENDER -+2C74..2C77 ; Latin # L& [4] LATIN SMALL LETTER V WITH CURL..LATIN SMALL LETTER TAILLESS PHI - FB00..FB06 ; Latin # L& [7] LATIN SMALL LIGATURE FF..LATIN SMALL LIGATURE ST - FF21..FF3A ; Latin # L& [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH LATIN CAPITAL LETTER Z - FF41..FF5A ; Latin # L& [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN SMALL LETTER Z - --# Total code points: 1037 -+# Total code points: 1070 - - # ================================================ - - 0374..0375 ; Greek # Sk [2] GREEK NUMERAL SIGN..GREEK LOWER NUMERAL SIGN - 037A ; Greek # Lm GREEK YPOGEGRAMMENI -+037B..037D ; Greek # L& [3] GREEK SMALL REVERSED LUNATE SIGMA SYMBOL..GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL - 0384..0385 ; Greek # Sk [2] GREEK TONOS..GREEK DIALYTIKA TONOS - 0386 ; Greek # L& GREEK CAPITAL LETTER ALPHA WITH TONOS - 0388..038A ; Greek # L& [3] GREEK CAPITAL LETTER EPSILON WITH TONOS..GREEK CAPITAL LETTER IOTA WITH TONOS -@@ -561,6 +572,7 @@ - 1D26..1D2A ; Greek # L& [5] GREEK LETTER SMALL CAPITAL GAMMA..GREEK LETTER SMALL CAPITAL PSI - 1D5D..1D61 ; Greek # Lm [5] MODIFIER LETTER SMALL BETA..MODIFIER LETTER SMALL CHI - 1D66..1D6A ; Greek # L& [5] GREEK SUBSCRIPT SMALL LETTER BETA..GREEK SUBSCRIPT SMALL LETTER CHI -+1DBF ; Greek # Lm MODIFIER LETTER SMALL THETA - 1F00..1F15 ; Greek # L& [22] GREEK SMALL LETTER ALPHA WITH PSILI..GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA - 1F18..1F1D ; Greek # L& [6] GREEK CAPITAL LETTER EPSILON WITH PSILI..GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA - 1F20..1F45 ; Greek # L& [38] GREEK SMALL LETTER ETA WITH PSILI..GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA -@@ -595,7 +607,7 @@ - 1D242..1D244 ; Greek # Mn [3] COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME - 1D245 ; Greek # So GREEK MUSICAL LEIMMA - --# Total code points: 502 -+# Total code points: 506 - - # ================================================ - -@@ -603,13 +615,11 @@ - 0482 ; Cyrillic # So CYRILLIC THOUSANDS SIGN - 0483..0486 ; Cyrillic # Mn [4] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC PSILI PNEUMATA - 0488..0489 ; Cyrillic # Me [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN --048A..04CE ; Cyrillic # L& [69] CYRILLIC CAPITAL LETTER SHORT I WITH TAIL..CYRILLIC SMALL LETTER EM WITH TAIL --04D0..04F9 ; Cyrillic # L& [42] CYRILLIC CAPITAL LETTER A WITH BREVE..CYRILLIC SMALL LETTER YERU WITH DIAERESIS --0500..050F ; Cyrillic # L& [16] CYRILLIC CAPITAL LETTER KOMI DE..CYRILLIC SMALL LETTER KOMI TJE -+048A..0513 ; Cyrillic # L& [138] CYRILLIC CAPITAL LETTER SHORT I WITH TAIL..CYRILLIC SMALL LETTER EL WITH HOOK - 1D2B ; Cyrillic # L& CYRILLIC LETTER SMALL CAPITAL EL - 1D78 ; Cyrillic # Lm MODIFIER LETTER CYRILLIC EN - --# Total code points: 266 -+# Total code points: 277 - - # ================================================ - -@@ -624,8 +634,7 @@ - - # ================================================ - --0591..05B9 ; Hebrew # Mn [41] HEBREW ACCENT ETNAHTA..HEBREW POINT HOLAM --05BB..05BD ; Hebrew # Mn [3] HEBREW POINT QUBUTS..HEBREW POINT METEG -+0591..05BD ; Hebrew # Mn [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG - 05BE ; Hebrew # Po HEBREW PUNCTUATION MAQAF - 05BF ; Hebrew # Mn HEBREW POINT RAFE - 05C0 ; Hebrew # Po HEBREW PUNCTUATION PASEQ -@@ -648,7 +657,7 @@ - FB43..FB44 ; Hebrew # Lo [2] HEBREW LETTER FINAL PE WITH DAGESH..HEBREW LETTER PE WITH DAGESH - FB46..FB4F ; Hebrew # Lo [10] HEBREW LETTER TSADI WITH DAGESH..HEBREW LIGATURE ALEF LAMED - --# Total code points: 132 -+# Total code points: 133 - - # ================================================ - -@@ -725,9 +734,9 @@ - 0958..0961 ; Devanagari # Lo [10] DEVANAGARI LETTER QA..DEVANAGARI LETTER VOCALIC LL - 0962..0963 ; Devanagari # Mn [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL - 0966..096F ; Devanagari # Nd [10] DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE --097D ; Devanagari # Lo DEVANAGARI LETTER GLOTTAL STOP -+097B..097F ; Devanagari # Lo [5] DEVANAGARI LETTER GGA..DEVANAGARI LETTER BBA - --# Total code points: 103 -+# Total code points: 107 - - # ================================================ - -@@ -904,9 +913,11 @@ - 0CD5..0CD6 ; Kannada # Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK - 0CDE ; Kannada # Lo KANNADA LETTER FA - 0CE0..0CE1 ; Kannada # Lo [2] KANNADA LETTER VOCALIC RR..KANNADA LETTER VOCALIC LL -+0CE2..0CE3 ; Kannada # Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL - 0CE6..0CEF ; Kannada # Nd [10] KANNADA DIGIT ZERO..KANNADA DIGIT NINE -+0CF1..0CF2 ; Kannada # So [2] KANNADA SIGN JIHVAMULIYA..KANNADA SIGN UPADHMANIYA - --# Total code points: 82 -+# Total code points: 86 - - # ================================================ - -@@ -1161,7 +1172,8 @@ - - # ================================================ - --1800..1805 ; Mongolian # Po [6] MONGOLIAN BIRGA..MONGOLIAN FOUR DOTS -+1800..1801 ; Mongolian # Po [2] MONGOLIAN BIRGA..MONGOLIAN ELLIPSIS -+1804 ; Mongolian # Po MONGOLIAN COLON - 1806 ; Mongolian # Pd MONGOLIAN TODO SOFT HYPHEN - 1807..180A ; Mongolian # Po [4] MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER..MONGOLIAN NIRUGU - 180B..180D ; Mongolian # Mn [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE -@@ -1173,7 +1185,7 @@ - 1880..18A8 ; Mongolian # Lo [41] MONGOLIAN LETTER ALI GALI ANUSVARA ONE..MONGOLIAN LETTER MANCHU ALI GALI BHA - 18A9 ; Mongolian # Mn MONGOLIAN LETTER ALI GALI DAGALGA - --# Total code points: 155 -+# Total code points: 152 - - # ================================================ - -@@ -1239,7 +1251,9 @@ - - # ================================================ - --10330..10349 ; Gothic # Lo [26] GOTHIC LETTER AHSA..GOTHIC LETTER OTHAL -+10330..10340 ; Gothic # Lo [17] GOTHIC LETTER AHSA..GOTHIC LETTER PAIRTHRA -+10341 ; Gothic # Nl GOTHIC LETTER NINETY -+10342..10349 ; Gothic # Lo [8] GOTHIC LETTER RAIDA..GOTHIC LETTER OTHAL - 1034A ; Gothic # Nl GOTHIC LETTER NINE HUNDRED - - # Total code points: 27 -@@ -1255,13 +1269,14 @@ - 0300..036F ; Inherited # Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X - 064B..0655 ; Inherited # Mn [11] ARABIC FATHATAN..ARABIC HAMZA BELOW - 0670 ; Inherited # Mn ARABIC LETTER SUPERSCRIPT ALEF --1DC0..1DC3 ; Inherited # Mn [4] COMBINING DOTTED GRAVE ACCENT..COMBINING SUSPENSION MARK -+1DC0..1DCA ; Inherited # Mn [11] COMBINING DOTTED GRAVE ACCENT..COMBINING LATIN SMALL LETTER R BELOW -+1DFE..1DFF ; Inherited # Mn [2] COMBINING LEFT ARROWHEAD ABOVE..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW - 200C..200D ; Inherited # Cf [2] ZERO WIDTH NON-JOINER..ZERO WIDTH JOINER - 20D0..20DC ; Inherited # Mn [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE - 20DD..20E0 ; Inherited # Me [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH - 20E1 ; Inherited # Mn COMBINING LEFT RIGHT ARROW ABOVE - 20E2..20E4 ; Inherited # Me [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE --20E5..20EB ; Inherited # Mn [7] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING LONG DOUBLE SOLIDUS OVERLAY -+20E5..20EF ; Inherited # Mn [11] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING RIGHT ARROW BELOW - 302A..302F ; Inherited # Mn [6] IDEOGRAPHIC LEVEL TONE MARK..HANGUL DOUBLE DOT TONE MARK - 3099..309A ; Inherited # Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK - FE00..FE0F ; Inherited # Mn [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16 -@@ -1272,7 +1287,7 @@ - 1D1AA..1D1AD ; Inherited # Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO - E0100..E01EF ; Inherited # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 - --# Total code points: 448 -+# Total code points: 461 - - # ================================================ - -@@ -1442,7 +1457,7 @@ - - 103A0..103C3 ; Old_Persian # Lo [36] OLD PERSIAN SIGN A..OLD PERSIAN SIGN HA - 103C8..103CF ; Old_Persian # Lo [8] OLD PERSIAN SIGN AURAMAZDAA..OLD PERSIAN SIGN BUUMISH --103D0 ; Old_Persian # So OLD PERSIAN WORD DIVIDER -+103D0 ; Old_Persian # Po OLD PERSIAN WORD DIVIDER - 103D1..103D5 ; Old_Persian # Nl [5] OLD PERSIAN NUMBER ONE..OLD PERSIAN NUMBER HUNDRED - - # Total code points: 50 -@@ -1462,3 +1477,62 @@ - 10A50..10A58 ; Kharoshthi # Po [9] KHAROSHTHI PUNCTUATION DOT..KHAROSHTHI PUNCTUATION LINES - - # Total code points: 65 -+ -+# ================================================ -+ -+1B00..1B03 ; Balinese # Mn [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG -+1B04 ; Balinese # Mc BALINESE SIGN BISAH -+1B05..1B33 ; Balinese # Lo [47] BALINESE LETTER AKARA..BALINESE LETTER HA -+1B34 ; Balinese # Mn BALINESE SIGN REREKAN -+1B35 ; Balinese # Mc BALINESE VOWEL SIGN TEDUNG -+1B36..1B3A ; Balinese # Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA -+1B3B ; Balinese # Mc BALINESE VOWEL SIGN RA REPA TEDUNG -+1B3C ; Balinese # Mn BALINESE VOWEL SIGN LA LENGA -+1B3D..1B41 ; Balinese # Mc [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG -+1B42 ; Balinese # Mn BALINESE VOWEL SIGN PEPET -+1B43..1B44 ; Balinese # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG -+1B45..1B4B ; Balinese # Lo [7] BALINESE LETTER KAF SASAK..BALINESE LETTER ASYURA SASAK -+1B50..1B59 ; Balinese # Nd [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE -+1B5A..1B60 ; Balinese # Po [7] BALINESE PANTI..BALINESE PAMENENG -+1B61..1B6A ; Balinese # So [10] BALINESE MUSICAL SYMBOL DONG..BALINESE MUSICAL SYMBOL DANG GEDE -+1B6B..1B73 ; Balinese # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG -+1B74..1B7C ; Balinese # So [9] BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING -+ -+# Total code points: 121 -+ -+# ================================================ -+ -+12000..1236E ; Cuneiform # Lo [879] CUNEIFORM SIGN A..CUNEIFORM SIGN ZUM -+12400..12462 ; Cuneiform # Nl [99] CUNEIFORM NUMERIC SIGN TWO ASH..CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER -+12470..12473 ; Cuneiform # Po [4] CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER..CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON -+ -+# Total code points: 982 -+ -+# ================================================ -+ -+10900..10915 ; Phoenician # Lo [22] PHOENICIAN LETTER ALF..PHOENICIAN LETTER TAU -+10916..10919 ; Phoenician # No [4] PHOENICIAN NUMBER ONE..PHOENICIAN NUMBER ONE HUNDRED -+1091F ; Phoenician # Po PHOENICIAN WORD SEPARATOR -+ -+# Total code points: 27 -+ -+# ================================================ -+ -+A840..A873 ; Phags_Pa # Lo [52] PHAGS-PA LETTER KA..PHAGS-PA LETTER CANDRABINDU -+A874..A877 ; Phags_Pa # Po [4] PHAGS-PA SINGLE HEAD MARK..PHAGS-PA MARK DOUBLE SHAD -+ -+# Total code points: 56 -+ -+# ================================================ -+ -+07C0..07C9 ; Nko # Nd [10] NKO DIGIT ZERO..NKO DIGIT NINE -+07CA..07EA ; Nko # Lo [33] NKO LETTER A..NKO LETTER JONA RA -+07EB..07F3 ; Nko # Mn [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE -+07F4..07F5 ; Nko # Lm [2] NKO HIGH TONE APOSTROPHE..NKO LOW TONE APOSTROPHE -+07F6 ; Nko # So NKO SYMBOL OO DENNEN -+07F7..07F9 ; Nko # Po [3] NKO SYMBOL GBAKURUNEN..NKO EXCLAMATION MARK -+07FA ; Nko # Lm NKO LAJANYALAN -+ -+# Total code points: 59 -+ -+# EOF -diff -r -u perl-5.8.8/lib/unicore/SpecialCasing.txt perl-5.8.8.patched/lib/unicore/SpecialCasing.txt ---- perl-5.8.8/lib/unicore/SpecialCasing.txt 2005-04-08 07:31:00.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/SpecialCasing.txt 2006-09-15 14:12:05.589124000 -0400 -@@ -1,8 +1,8 @@ --# SpecialCasing-4.1.0.txt --# Date: 2005-03-26, 00:35:45 GMT [MD] -+# SpecialCasing-5.0.0.txt -+# Date: 2006-03-03, 08:23:36 GMT [MD] - # - # Unicode Character Database --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # For documentation, see UCD.html - # -@@ -38,9 +38,10 @@ - # A locale ID is defined by taking any language tag as defined by - # RFC 3066 (or its successor), and replacing '-' by '_'. - # --# A context for a character C is defined by Section 3.13 Default Case Operations, --# on p. 89-90 of The Unicode Standard, Version 4.0, as amended by Unicode 4.1.0, --# as specified in http://www.unicode.org/versions/Unicode4.1.0/ -+# A context for a character C is defined by Section 3.13 Default Case -+# Operations, of The Unicode Standard, Version 5.0. -+# (This is identical to the context defined by Unicode 4.1.0, -+# as specified in http://www.unicode.org/versions/Unicode4.1.0/) - # - # Parsers of this file must be prepared to deal with future additions to this format: - # * Additional contexts -@@ -258,3 +259,6 @@ - # Note: the following case is already in the UnicodeData file. - - # 0131; 0131; 0049; 0049; tr; # LATIN SMALL LETTER DOTLESS I -+ -+# EOF -+ -diff -r -u perl-5.8.8/lib/unicore/StandardizedVariants.txt perl-5.8.8.patched/lib/unicore/StandardizedVariants.txt ---- perl-5.8.8/lib/unicore/StandardizedVariants.txt 2005-04-08 07:31:00.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/StandardizedVariants.txt 2006-09-15 14:12:05.589124000 -0400 -@@ -1,5 +1,5 @@ - # StandardizedVariants-4.1.0.txt --# Date: 2005-03-17, 15:21:00 PST [KW] -+# Date: 2006-01-16, 13:03:00 PST [KW] - # - # Specification of the variant sequences that are defined in the - # Unicode Standard. -@@ -7,7 +7,7 @@ - # This file is a normative contributory data file in the - # Unicode Character Database. - # --# Copyright (c) 1991-2005 Unicode, Inc. -+# Copyright (c) 1991-2006 Unicode, Inc. - # For terms of use, see http://www.unicode.org/terms_of_use.html - # - # Warning: Only the variation sequences specifically defined in this file -@@ -15,8 +15,8 @@ - # cannot change the visual appearance of the preceding base character from - # what it would have had in the absence of the variation selector. - # --# For more information, see Section 15.6, Variation Selectors, --# in The Unicode Standard, Version 4.0. -+# For more information, see Section 16.4, Variation Selectors, -+# in The Unicode Standard, Version 5.0. - # - # Format: - # Field 0: the variation sequence -@@ -31,7 +31,7 @@ - 2229 FE00; with serifs; # INTERSECTION - 222A FE00; with serifs; # UNION - 2268 FE00; with vertical stroke; # LESS-THAN BUT NOT EQUAL TO --2269 FE00; with vertical stroke; # GREATER-THAN AND NOT DOUBLE EQUAL -+2269 FE00; with vertical stroke; # GREATER-THAN BUT NOT EQUAL TO - 2272 FE00; following the slant of the lower leg; # LESS-THAN OR EQUIVALENT TO - 2273 FE00; following the slant of the lower leg; # GREATER-THAN OR EQUIVALENT TO - #2278 FE00; with vertical stroke; # NEITHER LESS-THAN NOR GREATER-THAN -@@ -54,7 +54,16 @@ - 2ACB FE00; with stroke through bottom members; # SUBSET OF ABOVE NOT EQUAL TO - 2ACC FE00; with stroke through bottom members; # SUPERSET OF ABOVE NOT EQUAL TO - --#Mongolian -+# Phags-pa -+ -+A856 FE00; phags-pa letter reversed shaping small a; # PHAGS-PA LETTER SMALL A -+A85C FE00; phags-pa letter reversed shaping ha; # PHAGS-PA LETTER HA -+A85E FE00; phags-pa letter reversed shaping i; # PHAGS-PA LETTER I -+A85F FE00; phags-pa letter reversed shaping u; # PHAGS-PA LETTER U -+A860 FE00; phags-pa letter reversed shaping e; # PHAGS-PA LETTER E -+A868 FE00; phags-pa letter reversed shaping subjoined ya; # PHAGS-PA SUBJOINED LETTER YA -+ -+# Mongolian - - 1820 180B; second form; isolate medial final # MONGOLIAN LETTER A - 1820 180C; third form; medial # MONGOLIAN LETTER A -diff -r -u perl-5.8.8/lib/unicore/UnicodeData.txt perl-5.8.8.patched/lib/unicore/UnicodeData.txt ---- perl-5.8.8/lib/unicore/UnicodeData.txt 2005-04-08 07:31:03.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/UnicodeData.txt 2006-09-15 14:12:05.606121000 -0400 -@@ -382,7 +382,7 @@ - 017D;LATIN CAPITAL LETTER Z WITH CARON;Lu;0;L;005A 030C;;;;N;LATIN CAPITAL LETTER Z HACEK;;;017E; - 017E;LATIN SMALL LETTER Z WITH CARON;Ll;0;L;007A 030C;;;;N;LATIN SMALL LETTER Z HACEK;;017D;;017D - 017F;LATIN SMALL LETTER LONG S;Ll;0;L; 0073;;;;N;;;0053;;0053 --0180;LATIN SMALL LETTER B WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER B BAR;;;; -+0180;LATIN SMALL LETTER B WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER B BAR;;0243;;0243 - 0181;LATIN CAPITAL LETTER B WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER B HOOK;;;0253; - 0182;LATIN CAPITAL LETTER B WITH TOPBAR;Lu;0;L;;;;;N;LATIN CAPITAL LETTER B TOPBAR;;;0183; - 0183;LATIN SMALL LETTER B WITH TOPBAR;Ll;0;L;;;;;N;LATIN SMALL LETTER B TOPBAR;;0182;;0182 -@@ -568,14 +568,28 @@ - 0237;LATIN SMALL LETTER DOTLESS J;Ll;0;L;;;;;N;;;;; - 0238;LATIN SMALL LETTER DB DIGRAPH;Ll;0;L;;;;;N;;;;; - 0239;LATIN SMALL LETTER QP DIGRAPH;Ll;0;L;;;;;N;;;;; --023A;LATIN CAPITAL LETTER A WITH STROKE;Lu;0;L;;;;;N;;;;; -+023A;LATIN CAPITAL LETTER A WITH STROKE;Lu;0;L;;;;;N;;;;2C65; - 023B;LATIN CAPITAL LETTER C WITH STROKE;Lu;0;L;;;;;N;;;;023C; - 023C;LATIN SMALL LETTER C WITH STROKE;Ll;0;L;;;;;N;;;023B;;023B - 023D;LATIN CAPITAL LETTER L WITH BAR;Lu;0;L;;;;;N;;;;019A; --023E;LATIN CAPITAL LETTER T WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;; -+023E;LATIN CAPITAL LETTER T WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;2C66; - 023F;LATIN SMALL LETTER S WITH SWASH TAIL;Ll;0;L;;;;;N;;;;; - 0240;LATIN SMALL LETTER Z WITH SWASH TAIL;Ll;0;L;;;;;N;;;;; --0241;LATIN CAPITAL LETTER GLOTTAL STOP;Lu;0;L;;;;;N;;;;0294; -+0241;LATIN CAPITAL LETTER GLOTTAL STOP;Lu;0;L;;;;;N;;;;0242; -+0242;LATIN SMALL LETTER GLOTTAL STOP;Ll;0;L;;;;;N;;;0241;;0241 -+0243;LATIN CAPITAL LETTER B WITH STROKE;Lu;0;L;;;;;N;;;;0180; -+0244;LATIN CAPITAL LETTER U BAR;Lu;0;L;;;;;N;;;;0289; -+0245;LATIN CAPITAL LETTER TURNED V;Lu;0;L;;;;;N;;;;028C; -+0246;LATIN CAPITAL LETTER E WITH STROKE;Lu;0;L;;;;;N;;;;0247; -+0247;LATIN SMALL LETTER E WITH STROKE;Ll;0;L;;;;;N;;;0246;;0246 -+0248;LATIN CAPITAL LETTER J WITH STROKE;Lu;0;L;;;;;N;;;;0249; -+0249;LATIN SMALL LETTER J WITH STROKE;Ll;0;L;;;;;N;;;0248;;0248 -+024A;LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL;Lu;0;L;;;;;N;;;;024B; -+024B;LATIN SMALL LETTER Q WITH HOOK TAIL;Ll;0;L;;;;;N;;;024A;;024A -+024C;LATIN CAPITAL LETTER R WITH STROKE;Lu;0;L;;;;;N;;;;024D; -+024D;LATIN SMALL LETTER R WITH STROKE;Ll;0;L;;;;;N;;;024C;;024C -+024E;LATIN CAPITAL LETTER Y WITH STROKE;Lu;0;L;;;;;N;;;;024F; -+024F;LATIN SMALL LETTER Y WITH STROKE;Ll;0;L;;;;;N;;;024E;;024E - 0250;LATIN SMALL LETTER TURNED A;Ll;0;L;;;;;N;;;;; - 0251;LATIN SMALL LETTER ALPHA;Ll;0;L;;;;;N;LATIN SMALL LETTER SCRIPT A;;;; - 0252;LATIN SMALL LETTER TURNED ALPHA;Ll;0;L;;;;;N;LATIN SMALL LETTER TURNED SCRIPT A;;;; -@@ -603,7 +617,7 @@ - 0268;LATIN SMALL LETTER I WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED I;;0197;;0197 - 0269;LATIN SMALL LETTER IOTA;Ll;0;L;;;;;N;;;0196;;0196 - 026A;LATIN LETTER SMALL CAPITAL I;Ll;0;L;;;;;N;;;;; --026B;LATIN SMALL LETTER L WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -+026B;LATIN SMALL LETTER L WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;2C62;;2C62 - 026C;LATIN SMALL LETTER L WITH BELT;Ll;0;L;;;;;N;LATIN SMALL LETTER L BELT;;;; - 026D;LATIN SMALL LETTER L WITH RETROFLEX HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER L RETROFLEX HOOK;;;; - 026E;LATIN SMALL LETTER LEZH;Ll;0;L;;;;;N;LATIN SMALL LETTER L YOGH;;;; -@@ -621,7 +635,7 @@ - 027A;LATIN SMALL LETTER TURNED R WITH LONG LEG;Ll;0;L;;;;;N;;;;; - 027B;LATIN SMALL LETTER TURNED R WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER TURNED R HOOK;;;; - 027C;LATIN SMALL LETTER R WITH LONG LEG;Ll;0;L;;;;;N;;;;; --027D;LATIN SMALL LETTER R WITH TAIL;Ll;0;L;;;;;N;LATIN SMALL LETTER R HOOK;;;; -+027D;LATIN SMALL LETTER R WITH TAIL;Ll;0;L;;;;;N;LATIN SMALL LETTER R HOOK;;2C64;;2C64 - 027E;LATIN SMALL LETTER R WITH FISHHOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER FISHHOOK R;;;; - 027F;LATIN SMALL LETTER REVERSED R WITH FISHHOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER REVERSED FISHHOOK R;;;; - 0280;LATIN LETTER SMALL CAPITAL R;Ll;0;L;;;;;N;;*;01A6;;01A6 -@@ -633,10 +647,10 @@ - 0286;LATIN SMALL LETTER ESH WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER ESH CURL;;;; - 0287;LATIN SMALL LETTER TURNED T;Ll;0;L;;;;;N;;;;; - 0288;LATIN SMALL LETTER T WITH RETROFLEX HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER T RETROFLEX HOOK;;01AE;;01AE --0289;LATIN SMALL LETTER U BAR;Ll;0;L;;;;;N;;;;; -+0289;LATIN SMALL LETTER U BAR;Ll;0;L;;;;;N;;;0244;;0244 - 028A;LATIN SMALL LETTER UPSILON;Ll;0;L;;;;;N;;;01B1;;01B1 - 028B;LATIN SMALL LETTER V WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER SCRIPT V;;01B2;;01B2 --028C;LATIN SMALL LETTER TURNED V;Ll;0;L;;;;;N;;;;; -+028C;LATIN SMALL LETTER TURNED V;Ll;0;L;;;;;N;;;0245;;0245 - 028D;LATIN SMALL LETTER TURNED W;Ll;0;L;;;;;N;;;;; - 028E;LATIN SMALL LETTER TURNED Y;Ll;0;L;;;;;N;;;;; - 028F;LATIN LETTER SMALL CAPITAL Y;Ll;0;L;;;;;N;;;;; -@@ -644,7 +658,7 @@ - 0291;LATIN SMALL LETTER Z WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER Z CURL;;;; - 0292;LATIN SMALL LETTER EZH;Ll;0;L;;;;;N;LATIN SMALL LETTER YOGH;;01B7;;01B7 - 0293;LATIN SMALL LETTER EZH WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER YOGH CURL;;;; --0294;LATIN LETTER GLOTTAL STOP;Ll;0;L;;;;;N;;;0241;;0241 -+0294;LATIN LETTER GLOTTAL STOP;Lo;0;L;;;;;N;;;;; - 0295;LATIN LETTER PHARYNGEAL VOICED FRICATIVE;Ll;0;L;;;;;N;LATIN LETTER REVERSED GLOTTAL STOP;;;; - 0296;LATIN LETTER INVERTED GLOTTAL STOP;Ll;0;L;;;;;N;;;;; - 0297;LATIN LETTER STRETCHED C;Ll;0;L;;;;;N;;;;; -@@ -867,6 +881,9 @@ - 0374;GREEK NUMERAL SIGN;Sk;0;ON;02B9;;;;N;GREEK UPPER NUMERAL SIGN;Dexia keraia;;; - 0375;GREEK LOWER NUMERAL SIGN;Sk;0;ON;;;;;N;;Aristeri keraia;;; - 037A;GREEK YPOGEGRAMMENI;Lm;0;L; 0020 0345;;;;N;GREEK SPACING IOTA BELOW;;;; -+037B;GREEK SMALL REVERSED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FD;;03FD -+037C;GREEK SMALL DOTTED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FE;;03FE -+037D;GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FF;;03FF - 037E;GREEK QUESTION MARK;Po;0;ON;003B;;;;N;;Erotimatiko;;; - 0384;GREEK TONOS;Sk;0;ON; 0020 0301;;;;N;GREEK SPACING TONOS;;;; - 0385;GREEK DIALYTIKA TONOS;Sk;0;ON;00A8 0301;;;;N;GREEK SPACING DIAERESIS TONOS;;;; -@@ -985,9 +1002,9 @@ - 03FA;GREEK CAPITAL LETTER SAN;Lu;0;L;;;;;N;;;;03FB; - 03FB;GREEK SMALL LETTER SAN;Ll;0;L;;;;;N;;;03FA;;03FA - 03FC;GREEK RHO WITH STROKE SYMBOL;Ll;0;L;;;;;N;;;;; --03FD;GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;; --03FE;GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;; --03FF;GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;; -+03FD;GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;037B; -+03FE;GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;037C; -+03FF;GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;037D; - 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; -@@ -1179,7 +1196,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;Lu;0;L;;;;;N;CYRILLIC LETTER I;;;; -+04C0;CYRILLIC LETTER PALOCHKA;Lu;0;L;;;;;N;CYRILLIC LETTER I;;;04CF; - 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; -@@ -1194,6 +1211,7 @@ - 04CC;CYRILLIC SMALL LETTER KHAKASSIAN CHE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER CHE WITH LEFT DESCENDER;;04CB;;04CB - 04CD;CYRILLIC CAPITAL LETTER EM WITH TAIL;Lu;0;L;;;;;N;;;;04CE; - 04CE;CYRILLIC SMALL LETTER EM WITH TAIL;Ll;0;L;;;;;N;;;04CD;;04CD -+04CF;CYRILLIC SMALL LETTER PALOCHKA;Ll;0;L;;;;;N;;;04C0;;04C0 - 04D0;CYRILLIC CAPITAL LETTER A WITH BREVE;Lu;0;L;0410 0306;;;;N;;;;04D1; - 04D1;CYRILLIC SMALL LETTER A WITH BREVE;Ll;0;L;0430 0306;;;;N;;;04D0;;04D0 - 04D2;CYRILLIC CAPITAL LETTER A WITH DIAERESIS;Lu;0;L;0410 0308;;;;N;;;;04D3; -@@ -1236,6 +1254,12 @@ - 04F7;CYRILLIC SMALL LETTER GHE WITH DESCENDER;Ll;0;L;;;;;N;;;04F6;;04F6 - 04F8;CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS;Lu;0;L;042B 0308;;;;N;;;;04F9; - 04F9;CYRILLIC SMALL LETTER YERU WITH DIAERESIS;Ll;0;L;044B 0308;;;;N;;;04F8;;04F8 -+04FA;CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK;Lu;0;L;;;;;N;;;;04FB; -+04FB;CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK;Ll;0;L;;;;;N;;;04FA;;04FA -+04FC;CYRILLIC CAPITAL LETTER HA WITH HOOK;Lu;0;L;;;;;N;;;;04FD; -+04FD;CYRILLIC SMALL LETTER HA WITH HOOK;Ll;0;L;;;;;N;;;04FC;;04FC -+04FE;CYRILLIC CAPITAL LETTER HA WITH STROKE;Lu;0;L;;;;;N;;;;04FF; -+04FF;CYRILLIC SMALL LETTER HA WITH STROKE;Ll;0;L;;;;;N;;;04FE;;04FE - 0500;CYRILLIC CAPITAL LETTER KOMI DE;Lu;0;L;;;;;N;;;;0501; - 0501;CYRILLIC SMALL LETTER KOMI DE;Ll;0;L;;;;;N;;;0500;;0500 - 0502;CYRILLIC CAPITAL LETTER KOMI DJE;Lu;0;L;;;;;N;;;;0503; -@@ -1252,6 +1276,10 @@ - 050D;CYRILLIC SMALL LETTER KOMI SJE;Ll;0;L;;;;;N;;;050C;;050C - 050E;CYRILLIC CAPITAL LETTER KOMI TJE;Lu;0;L;;;;;N;;;;050F; - 050F;CYRILLIC SMALL LETTER KOMI TJE;Ll;0;L;;;;;N;;;050E;;050E -+0510;CYRILLIC CAPITAL LETTER REVERSED ZE;Lu;0;L;;;;;N;;;;0511; -+0511;CYRILLIC SMALL LETTER REVERSED ZE;Ll;0;L;;;;;N;;;0510;;0510 -+0512;CYRILLIC CAPITAL LETTER EL WITH HOOK;Lu;0;L;;;;;N;;;;0513; -+0513;CYRILLIC SMALL LETTER EL WITH HOOK;Ll;0;L;;;;;N;;;0512;;0512 - 0531;ARMENIAN CAPITAL LETTER AYB;Lu;0;L;;;;;N;;;;0561; - 0532;ARMENIAN CAPITAL LETTER BEN;Lu;0;L;;;;;N;;;;0562; - 0533;ARMENIAN CAPITAL LETTER GIM;Lu;0;L;;;;;N;;;;0563; -@@ -1379,6 +1407,7 @@ - 05B7;HEBREW POINT PATAH;Mn;17;NSM;;;;;N;;;;; - 05B8;HEBREW POINT QAMATS;Mn;18;NSM;;;;;N;;;;; - 05B9;HEBREW POINT HOLAM;Mn;19;NSM;;;;;N;;;;; -+05BA;HEBREW POINT HOLAM HASER FOR VAV;Mn;19;NSM;;;;;N;;;;; - 05BB;HEBREW POINT QUBUTS;Mn;20;NSM;;;;;N;;;;; - 05BC;HEBREW POINT DAGESH OR MAPIQ;Mn;21;NSM;;;;;N;HEBREW POINT DAGESH;or shuruq;;; - 05BD;HEBREW POINT METEG;Mn;22;NSM;;;;;N;;*;;; -@@ -1816,6 +1845,65 @@ - 07AF;THAANA OABOAFILI;Mn;0;NSM;;;;;N;;;;; - 07B0;THAANA SUKUN;Mn;0;NSM;;;;;N;;;;; - 07B1;THAANA LETTER NAA;Lo;0;AL;;;;;N;;;;; -+07C0;NKO DIGIT ZERO;Nd;0;R;;0;0;0;N;;;;; -+07C1;NKO DIGIT ONE;Nd;0;R;;1;1;1;N;;;;; -+07C2;NKO DIGIT TWO;Nd;0;R;;2;2;2;N;;;;; -+07C3;NKO DIGIT THREE;Nd;0;R;;3;3;3;N;;;;; -+07C4;NKO DIGIT FOUR;Nd;0;R;;4;4;4;N;;;;; -+07C5;NKO DIGIT FIVE;Nd;0;R;;5;5;5;N;;;;; -+07C6;NKO DIGIT SIX;Nd;0;R;;6;6;6;N;;;;; -+07C7;NKO DIGIT SEVEN;Nd;0;R;;7;7;7;N;;;;; -+07C8;NKO DIGIT EIGHT;Nd;0;R;;8;8;8;N;;;;; -+07C9;NKO DIGIT NINE;Nd;0;R;;9;9;9;N;;;;; -+07CA;NKO LETTER A;Lo;0;R;;;;;N;;;;; -+07CB;NKO LETTER EE;Lo;0;R;;;;;N;;;;; -+07CC;NKO LETTER I;Lo;0;R;;;;;N;;;;; -+07CD;NKO LETTER E;Lo;0;R;;;;;N;;;;; -+07CE;NKO LETTER U;Lo;0;R;;;;;N;;;;; -+07CF;NKO LETTER OO;Lo;0;R;;;;;N;;;;; -+07D0;NKO LETTER O;Lo;0;R;;;;;N;;;;; -+07D1;NKO LETTER DAGBASINNA;Lo;0;R;;;;;N;;;;; -+07D2;NKO LETTER N;Lo;0;R;;;;;N;;;;; -+07D3;NKO LETTER BA;Lo;0;R;;;;;N;;;;; -+07D4;NKO LETTER PA;Lo;0;R;;;;;N;;;;; -+07D5;NKO LETTER TA;Lo;0;R;;;;;N;;;;; -+07D6;NKO LETTER JA;Lo;0;R;;;;;N;;;;; -+07D7;NKO LETTER CHA;Lo;0;R;;;;;N;;;;; -+07D8;NKO LETTER DA;Lo;0;R;;;;;N;;;;; -+07D9;NKO LETTER RA;Lo;0;R;;;;;N;;;;; -+07DA;NKO LETTER RRA;Lo;0;R;;;;;N;;;;; -+07DB;NKO LETTER SA;Lo;0;R;;;;;N;;;;; -+07DC;NKO LETTER GBA;Lo;0;R;;;;;N;;;;; -+07DD;NKO LETTER FA;Lo;0;R;;;;;N;;;;; -+07DE;NKO LETTER KA;Lo;0;R;;;;;N;;;;; -+07DF;NKO LETTER LA;Lo;0;R;;;;;N;;;;; -+07E0;NKO LETTER NA WOLOSO;Lo;0;R;;;;;N;;;;; -+07E1;NKO LETTER MA;Lo;0;R;;;;;N;;;;; -+07E2;NKO LETTER NYA;Lo;0;R;;;;;N;;;;; -+07E3;NKO LETTER NA;Lo;0;R;;;;;N;;;;; -+07E4;NKO LETTER HA;Lo;0;R;;;;;N;;;;; -+07E5;NKO LETTER WA;Lo;0;R;;;;;N;;;;; -+07E6;NKO LETTER YA;Lo;0;R;;;;;N;;;;; -+07E7;NKO LETTER NYA WOLOSO;Lo;0;R;;;;;N;;;;; -+07E8;NKO LETTER JONA JA;Lo;0;R;;;;;N;;;;; -+07E9;NKO LETTER JONA CHA;Lo;0;R;;;;;N;;;;; -+07EA;NKO LETTER JONA RA;Lo;0;R;;;;;N;;;;; -+07EB;NKO COMBINING SHORT HIGH TONE;Mn;230;NSM;;;;;N;;;;; -+07EC;NKO COMBINING SHORT LOW TONE;Mn;230;NSM;;;;;N;;;;; -+07ED;NKO COMBINING SHORT RISING TONE;Mn;230;NSM;;;;;N;;;;; -+07EE;NKO COMBINING LONG DESCENDING TONE;Mn;230;NSM;;;;;N;;;;; -+07EF;NKO COMBINING LONG HIGH TONE;Mn;230;NSM;;;;;N;;;;; -+07F0;NKO COMBINING LONG LOW TONE;Mn;230;NSM;;;;;N;;;;; -+07F1;NKO COMBINING LONG RISING TONE;Mn;230;NSM;;;;;N;;;;; -+07F2;NKO COMBINING NASALIZATION MARK;Mn;220;NSM;;;;;N;;;;; -+07F3;NKO COMBINING DOUBLE DOT ABOVE;Mn;230;NSM;;;;;N;;;;; -+07F4;NKO HIGH TONE APOSTROPHE;Lm;0;R;;;;;N;;;;; -+07F5;NKO LOW TONE APOSTROPHE;Lm;0;R;;;;;N;;;;; -+07F6;NKO SYMBOL OO DENNEN;So;0;ON;;;;;N;;;;; -+07F7;NKO SYMBOL GBAKURUNEN;Po;0;ON;;;;;N;;;;; -+07F8;NKO COMMA;Po;0;ON;;;;;N;;;;; -+07F9;NKO EXCLAMATION MARK;Po;0;ON;;;;;N;;;;; -+07FA;NKO LAJANYALAN;Lm;0;R;;;;;N;;;;; - 0901;DEVANAGARI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;; - 0902;DEVANAGARI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; - 0903;DEVANAGARI SIGN VISARGA;Mc;0;L;;;;;N;;;;; -@@ -1921,7 +2009,11 @@ - 096E;DEVANAGARI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; - 096F;DEVANAGARI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; - 0970;DEVANAGARI ABBREVIATION SIGN;Po;0;L;;;;;N;;;;; -+097B;DEVANAGARI LETTER GGA;Lo;0;L;;;;;N;;;;; -+097C;DEVANAGARI LETTER JJA;Lo;0;L;;;;;N;;;;; - 097D;DEVANAGARI LETTER GLOTTAL STOP;Lo;0;L;;;;;N;;;;; -+097E;DEVANAGARI LETTER DDDA;Lo;0;L;;;;;N;;;;; -+097F;DEVANAGARI LETTER BBA;Lo;0;L;;;;;N;;;;; - 0981;BENGALI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;; - 0982;BENGALI SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; - 0983;BENGALI SIGN VISARGA;Mc;0;L;;;;;N;;;;; -@@ -2477,6 +2569,8 @@ - 0CDE;KANNADA LETTER FA;Lo;0;L;;;;;N;;;;; - 0CE0;KANNADA LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; - 0CE1;KANNADA LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -+0CE2;KANNADA VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -+0CE3;KANNADA VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; - 0CE6;KANNADA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; - 0CE7;KANNADA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; - 0CE8;KANNADA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -@@ -2487,6 +2581,8 @@ - 0CED;KANNADA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; - 0CEE;KANNADA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; - 0CEF;KANNADA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -+0CF1;KANNADA SIGN JIHVAMULIYA;So;0;ON;;;;;N;;;;; -+0CF2;KANNADA SIGN UPADHMANIYA;So;0;ON;;;;;N;;;;; - 0D02;MALAYALAM SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; - 0D03;MALAYALAM SIGN VISARGA;Mc;0;L;;;;;N;;;;; - 0D05;MALAYALAM LETTER A;Lo;0;L;;;;;N;;;;; -@@ -2855,10 +2951,10 @@ - 0F37;TIBETAN MARK NGAS BZUNG SGOR RTAGS;Mn;220;NSM;;;;;N;TIBETAN UNDER RING;nge zung gor ta;;; - 0F38;TIBETAN MARK CHE MGO;So;0;L;;;;;N;;che go;;; - 0F39;TIBETAN MARK TSA -PHRU;Mn;216;NSM;;;;;N;TIBETAN LENITION MARK;tsa tru;;; --0F3A;TIBETAN MARK GUG RTAGS GYON;Ps;0;ON;;;;;N;;gug ta yun;;; --0F3B;TIBETAN MARK GUG RTAGS GYAS;Pe;0;ON;;;;;N;;gug ta ye;;; --0F3C;TIBETAN MARK ANG KHANG GYON;Ps;0;ON;;;;;N;TIBETAN LEFT BRACE;ang kang yun;;; --0F3D;TIBETAN MARK ANG KHANG GYAS;Pe;0;ON;;;;;N;TIBETAN RIGHT BRACE;ang kang ye;;; -+0F3A;TIBETAN MARK GUG RTAGS GYON;Ps;0;ON;;;;;Y;;gug ta yun;;; -+0F3B;TIBETAN MARK GUG RTAGS GYAS;Pe;0;ON;;;;;Y;;gug ta ye;;; -+0F3C;TIBETAN MARK ANG KHANG GYON;Ps;0;ON;;;;;Y;TIBETAN LEFT BRACE;ang kang yun;;; -+0F3D;TIBETAN MARK ANG KHANG GYAS;Pe;0;ON;;;;;Y;TIBETAN RIGHT BRACE;ang kang ye;;; - 0F3E;TIBETAN SIGN YAR TSHES;Mc;0;L;;;;;N;;yar tse;;; - 0F3F;TIBETAN SIGN MAR TSHES;Mc;0;L;;;;;N;;mar tse;;; - 0F40;TIBETAN LETTER KA;Lo;0;L;;;;;N;;;;; -@@ -4517,8 +4613,8 @@ - 1698;OGHAM LETTER IFIN;Lo;0;L;;;;;N;;;;; - 1699;OGHAM LETTER EAMHANCHOLL;Lo;0;L;;;;;N;;;;; - 169A;OGHAM LETTER PEITH;Lo;0;L;;;;;N;;;;; --169B;OGHAM FEATHER MARK;Ps;0;ON;;;;;N;;;;; --169C;OGHAM REVERSED FEATHER MARK;Pe;0;ON;;;;;N;;;;; -+169B;OGHAM FEATHER MARK;Ps;0;ON;;;;;Y;;;;; -+169C;OGHAM REVERSED FEATHER MARK;Pe;0;ON;;;;;Y;;;;; - 16A0;RUNIC LETTER FEHU FEOH FE F;Lo;0;L;;;;;N;;;;; - 16A1;RUNIC LETTER V;Lo;0;L;;;;;N;;;;; - 16A2;RUNIC LETTER URUZ UR U;Lo;0;L;;;;;N;;;;; -@@ -5193,6 +5289,127 @@ - 1A1B;BUGINESE VOWEL SIGN AE;Mc;0;L;;;;;N;;;;; - 1A1E;BUGINESE PALLAWA;Po;0;L;;;;;N;;;;; - 1A1F;BUGINESE END OF SECTION;Po;0;L;;;;;N;;;;; -+1B00;BALINESE SIGN ULU RICEM;Mn;0;NSM;;;;;N;;ardhacandra;;; -+1B01;BALINESE SIGN ULU CANDRA;Mn;0;NSM;;;;;N;;candrabindu;;; -+1B02;BALINESE SIGN CECEK;Mn;0;NSM;;;;;N;;anusvara;;; -+1B03;BALINESE SIGN SURANG;Mn;0;NSM;;;;;N;;repha;;; -+1B04;BALINESE SIGN BISAH;Mc;0;L;;;;;N;;visarga;;; -+1B05;BALINESE LETTER AKARA;Lo;0;L;;;;;N;;a;;; -+1B06;BALINESE LETTER AKARA TEDUNG;Lo;0;L;1B05 1B35;;;;N;;aa;;; -+1B07;BALINESE LETTER IKARA;Lo;0;L;;;;;N;;i;;; -+1B08;BALINESE LETTER IKARA TEDUNG;Lo;0;L;1B07 1B35;;;;N;;ii;;; -+1B09;BALINESE LETTER UKARA;Lo;0;L;;;;;N;;u;;; -+1B0A;BALINESE LETTER UKARA TEDUNG;Lo;0;L;1B09 1B35;;;;N;;uu;;; -+1B0B;BALINESE LETTER RA REPA;Lo;0;L;;;;;N;;vocalic r;;; -+1B0C;BALINESE LETTER RA REPA TEDUNG;Lo;0;L;1B0B 1B35;;;;N;;vocalic rr;;; -+1B0D;BALINESE LETTER LA LENGA;Lo;0;L;;;;;N;;vocalic l;;; -+1B0E;BALINESE LETTER LA LENGA TEDUNG;Lo;0;L;1B0D 1B35;;;;N;;vocalic ll;;; -+1B0F;BALINESE LETTER EKARA;Lo;0;L;;;;;N;;e;;; -+1B10;BALINESE LETTER AIKARA;Lo;0;L;;;;;N;;ai;;; -+1B11;BALINESE LETTER OKARA;Lo;0;L;;;;;N;;o;;; -+1B12;BALINESE LETTER OKARA TEDUNG;Lo;0;L;1B11 1B35;;;;N;;au;;; -+1B13;BALINESE LETTER KA;Lo;0;L;;;;;N;;;;; -+1B14;BALINESE LETTER KA MAHAPRANA;Lo;0;L;;;;;N;;kha;;; -+1B15;BALINESE LETTER GA;Lo;0;L;;;;;N;;;;; -+1B16;BALINESE LETTER GA GORA;Lo;0;L;;;;;N;;gha;;; -+1B17;BALINESE LETTER NGA;Lo;0;L;;;;;N;;;;; -+1B18;BALINESE LETTER CA;Lo;0;L;;;;;N;;;;; -+1B19;BALINESE LETTER CA LACA;Lo;0;L;;;;;N;;cha;;; -+1B1A;BALINESE LETTER JA;Lo;0;L;;;;;N;;;;; -+1B1B;BALINESE LETTER JA JERA;Lo;0;L;;;;;N;;jha;;; -+1B1C;BALINESE LETTER NYA;Lo;0;L;;;;;N;;;;; -+1B1D;BALINESE LETTER TA LATIK;Lo;0;L;;;;;N;;tta;;; -+1B1E;BALINESE LETTER TA MURDA MAHAPRANA;Lo;0;L;;;;;N;;ttha;;; -+1B1F;BALINESE LETTER DA MURDA ALPAPRANA;Lo;0;L;;;;;N;;dda;;; -+1B20;BALINESE LETTER DA MURDA MAHAPRANA;Lo;0;L;;;;;N;;ddha;;; -+1B21;BALINESE LETTER NA RAMBAT;Lo;0;L;;;;;N;;nna;;; -+1B22;BALINESE LETTER TA;Lo;0;L;;;;;N;;;;; -+1B23;BALINESE LETTER TA TAWA;Lo;0;L;;;;;N;;tha;;; -+1B24;BALINESE LETTER DA;Lo;0;L;;;;;N;;;;; -+1B25;BALINESE LETTER DA MADU;Lo;0;L;;;;;N;;dha;;; -+1B26;BALINESE LETTER NA;Lo;0;L;;;;;N;;;;; -+1B27;BALINESE LETTER PA;Lo;0;L;;;;;N;;;;; -+1B28;BALINESE LETTER PA KAPAL;Lo;0;L;;;;;N;;pha;;; -+1B29;BALINESE LETTER BA;Lo;0;L;;;;;N;;;;; -+1B2A;BALINESE LETTER BA KEMBANG;Lo;0;L;;;;;N;;bha;;; -+1B2B;BALINESE LETTER MA;Lo;0;L;;;;;N;;;;; -+1B2C;BALINESE LETTER YA;Lo;0;L;;;;;N;;;;; -+1B2D;BALINESE LETTER RA;Lo;0;L;;;;;N;;;;; -+1B2E;BALINESE LETTER LA;Lo;0;L;;;;;N;;;;; -+1B2F;BALINESE LETTER WA;Lo;0;L;;;;;N;;;;; -+1B30;BALINESE LETTER SA SAGA;Lo;0;L;;;;;N;;sha;;; -+1B31;BALINESE LETTER SA SAPA;Lo;0;L;;;;;N;;ssa;;; -+1B32;BALINESE LETTER SA;Lo;0;L;;;;;N;;;;; -+1B33;BALINESE LETTER HA;Lo;0;L;;;;;N;;;;; -+1B34;BALINESE SIGN REREKAN;Mn;7;NSM;;;;;N;;nukta;;; -+1B35;BALINESE VOWEL SIGN TEDUNG;Mc;0;L;;;;;N;;aa;;; -+1B36;BALINESE VOWEL SIGN ULU;Mn;0;NSM;;;;;N;;i;;; -+1B37;BALINESE VOWEL SIGN ULU SARI;Mn;0;NSM;;;;;N;;ii;;; -+1B38;BALINESE VOWEL SIGN SUKU;Mn;0;NSM;;;;;N;;u;;; -+1B39;BALINESE VOWEL SIGN SUKU ILUT;Mn;0;NSM;;;;;N;;uu;;; -+1B3A;BALINESE VOWEL SIGN RA REPA;Mn;0;NSM;;;;;N;;vocalic r;;; -+1B3B;BALINESE VOWEL SIGN RA REPA TEDUNG;Mc;0;L;1B3A 1B35;;;;N;;vocalic rr;;; -+1B3C;BALINESE VOWEL SIGN LA LENGA;Mn;0;NSM;;;;;N;;vocalic l;;; -+1B3D;BALINESE VOWEL SIGN LA LENGA TEDUNG;Mc;0;L;1B3C 1B35;;;;N;;vocalic ll;;; -+1B3E;BALINESE VOWEL SIGN TALING;Mc;0;L;;;;;N;;e;;; -+1B3F;BALINESE VOWEL SIGN TALING REPA;Mc;0;L;;;;;N;;ai;;; -+1B40;BALINESE VOWEL SIGN TALING TEDUNG;Mc;0;L;1B3E 1B35;;;;N;;o;;; -+1B41;BALINESE VOWEL SIGN TALING REPA TEDUNG;Mc;0;L;1B3F 1B35;;;;N;;au;;; -+1B42;BALINESE VOWEL SIGN PEPET;Mn;0;NSM;;;;;N;;ae;;; -+1B43;BALINESE VOWEL SIGN PEPET TEDUNG;Mc;0;L;1B42 1B35;;;;N;;oe;;; -+1B44;BALINESE ADEG ADEG;Mc;9;L;;;;;N;;virama;;; -+1B45;BALINESE LETTER KAF SASAK;Lo;0;L;;;;;N;;;;; -+1B46;BALINESE LETTER KHOT SASAK;Lo;0;L;;;;;N;;;;; -+1B47;BALINESE LETTER TZIR SASAK;Lo;0;L;;;;;N;;;;; -+1B48;BALINESE LETTER EF SASAK;Lo;0;L;;;;;N;;;;; -+1B49;BALINESE LETTER VE SASAK;Lo;0;L;;;;;N;;;;; -+1B4A;BALINESE LETTER ZAL SASAK;Lo;0;L;;;;;N;;;;; -+1B4B;BALINESE LETTER ASYURA SASAK;Lo;0;L;;;;;N;;;;; -+1B50;BALINESE DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -+1B51;BALINESE DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -+1B52;BALINESE DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -+1B53;BALINESE DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -+1B54;BALINESE DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -+1B55;BALINESE DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -+1B56;BALINESE DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -+1B57;BALINESE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -+1B58;BALINESE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -+1B59;BALINESE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -+1B5A;BALINESE PANTI;Po;0;L;;;;;N;;section;;; -+1B5B;BALINESE PAMADA;Po;0;L;;;;;N;;honorific section;;; -+1B5C;BALINESE WINDU;Po;0;L;;;;;N;;punctuation ring;;; -+1B5D;BALINESE CARIK PAMUNGKAH;Po;0;L;;;;;N;;colon;;; -+1B5E;BALINESE CARIK SIKI;Po;0;L;;;;;N;;danda;;; -+1B5F;BALINESE CARIK PAREREN;Po;0;L;;;;;N;;double danda;;; -+1B60;BALINESE PAMENENG;Po;0;L;;;;;N;;line-breaking hyphen;;; -+1B61;BALINESE MUSICAL SYMBOL DONG;So;0;L;;;;;N;;;;; -+1B62;BALINESE MUSICAL SYMBOL DENG;So;0;L;;;;;N;;;;; -+1B63;BALINESE MUSICAL SYMBOL DUNG;So;0;L;;;;;N;;;;; -+1B64;BALINESE MUSICAL SYMBOL DANG;So;0;L;;;;;N;;;;; -+1B65;BALINESE MUSICAL SYMBOL DANG SURANG;So;0;L;;;;;N;;;;; -+1B66;BALINESE MUSICAL SYMBOL DING;So;0;L;;;;;N;;;;; -+1B67;BALINESE MUSICAL SYMBOL DAENG;So;0;L;;;;;N;;;;; -+1B68;BALINESE MUSICAL SYMBOL DEUNG;So;0;L;;;;;N;;;;; -+1B69;BALINESE MUSICAL SYMBOL DAING;So;0;L;;;;;N;;;;; -+1B6A;BALINESE MUSICAL SYMBOL DANG GEDE;So;0;L;;;;;N;;;;; -+1B6B;BALINESE MUSICAL SYMBOL COMBINING TEGEH;Mn;230;NSM;;;;;N;;;;; -+1B6C;BALINESE MUSICAL SYMBOL COMBINING ENDEP;Mn;220;NSM;;;;;N;;;;; -+1B6D;BALINESE MUSICAL SYMBOL COMBINING KEMPUL;Mn;230;NSM;;;;;N;;;;; -+1B6E;BALINESE MUSICAL SYMBOL COMBINING KEMPLI;Mn;230;NSM;;;;;N;;;;; -+1B6F;BALINESE MUSICAL SYMBOL COMBINING JEGOGAN;Mn;230;NSM;;;;;N;;;;; -+1B70;BALINESE MUSICAL SYMBOL COMBINING KEMPUL WITH JEGOGAN;Mn;230;NSM;;;;;N;;;;; -+1B71;BALINESE MUSICAL SYMBOL COMBINING KEMPLI WITH JEGOGAN;Mn;230;NSM;;;;;N;;;;; -+1B72;BALINESE MUSICAL SYMBOL COMBINING BENDE;Mn;230;NSM;;;;;N;;;;; -+1B73;BALINESE MUSICAL SYMBOL COMBINING GONG;Mn;230;NSM;;;;;N;;;;; -+1B74;BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG;So;0;L;;;;;N;;;;; -+1B75;BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DAG;So;0;L;;;;;N;;;;; -+1B76;BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TUK;So;0;L;;;;;N;;;;; -+1B77;BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TAK;So;0;L;;;;;N;;;;; -+1B78;BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PANG;So;0;L;;;;;N;;;;; -+1B79;BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PUNG;So;0;L;;;;;N;;;;; -+1B7A;BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLAK;So;0;L;;;;;N;;;;; -+1B7B;BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLUK;So;0;L;;;;;N;;;;; -+1B7C;BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING;So;0;L;;;;;N;;;;; - 1D00;LATIN LETTER SMALL CAPITAL A;Ll;0;L;;;;;N;;;;; - 1D01;LATIN LETTER SMALL CAPITAL AE;Ll;0;L;;;;;N;;;;; - 1D02;LATIN SMALL LETTER TURNED AE;Ll;0;L;;;;;N;;;;; -@@ -5318,7 +5535,7 @@ - 1D7A;LATIN SMALL LETTER TH WITH STRIKETHROUGH;Ll;0;L;;;;;N;;;;; - 1D7B;LATIN SMALL CAPITAL LETTER I WITH STROKE;Ll;0;L;;;;;N;;;;; - 1D7C;LATIN SMALL LETTER IOTA WITH STROKE;Ll;0;L;;;;;N;;;;; --1D7D;LATIN SMALL LETTER P WITH STROKE;Ll;0;L;;;;;N;;;;; -+1D7D;LATIN SMALL LETTER P WITH STROKE;Ll;0;L;;;;;N;;;2C63;;2C63 - 1D7E;LATIN SMALL CAPITAL LETTER U WITH STROKE;Ll;0;L;;;;;N;;;;; - 1D7F;LATIN SMALL LETTER UPSILON WITH STROKE;Ll;0;L;;;;;N;;;;; - 1D80;LATIN SMALL LETTER B WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -@@ -5389,6 +5606,15 @@ - 1DC1;COMBINING DOTTED ACUTE ACCENT;Mn;230;NSM;;;;;N;;;;; - 1DC2;COMBINING SNAKE BELOW;Mn;220;NSM;;;;;N;;;;; - 1DC3;COMBINING SUSPENSION MARK;Mn;230;NSM;;;;;N;;;;; -+1DC4;COMBINING MACRON-ACUTE;Mn;230;NSM;;;;;N;;;;; -+1DC5;COMBINING GRAVE-MACRON;Mn;230;NSM;;;;;N;;;;; -+1DC6;COMBINING MACRON-GRAVE;Mn;230;NSM;;;;;N;;;;; -+1DC7;COMBINING ACUTE-MACRON;Mn;230;NSM;;;;;N;;;;; -+1DC8;COMBINING GRAVE-ACUTE-GRAVE;Mn;230;NSM;;;;;N;;;;; -+1DC9;COMBINING ACUTE-GRAVE-ACUTE;Mn;230;NSM;;;;;N;;;;; -+1DCA;COMBINING LATIN SMALL LETTER R BELOW;Mn;220;NSM;;;;;N;;;;; -+1DFE;COMBINING LEFT ARROWHEAD ABOVE;Mn;230;NSM;;;;;N;;;;; -+1DFF;COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW;Mn;220;NSM;;;;;N;;;;; - 1E00;LATIN CAPITAL LETTER A WITH RING BELOW;Lu;0;L;0041 0325;;;;N;;;;1E01; - 1E01;LATIN SMALL LETTER A WITH RING BELOW;Ll;0;L;0061 0325;;;;N;;;1E00;;1E00 - 1E02;LATIN CAPITAL LETTER B WITH DOT ABOVE;Lu;0;L;0042 0307;;;;N;;;;1E03; -@@ -5892,14 +6118,14 @@ - 2015;HORIZONTAL BAR;Pd;0;ON;;;;;N;QUOTATION DASH;;;; - 2016;DOUBLE VERTICAL LINE;Po;0;ON;;;;;N;DOUBLE VERTICAL BAR;;;; - 2017;DOUBLE LOW LINE;Po;0;ON; 0020 0333;;;;N;SPACING DOUBLE UNDERSCORE;;;; --2018;LEFT SINGLE QUOTATION MARK;Pi;0;ON;;;;;N;SINGLE TURNED COMMA QUOTATION MARK;;;; --2019;RIGHT SINGLE QUOTATION MARK;Pf;0;ON;;;;;N;SINGLE COMMA QUOTATION MARK;;;; --201A;SINGLE LOW-9 QUOTATION MARK;Ps;0;ON;;;;;N;LOW SINGLE COMMA QUOTATION MARK;;;; --201B;SINGLE HIGH-REVERSED-9 QUOTATION MARK;Pi;0;ON;;;;;N;SINGLE REVERSED COMMA QUOTATION MARK;;;; --201C;LEFT DOUBLE QUOTATION MARK;Pi;0;ON;;;;;N;DOUBLE TURNED COMMA QUOTATION MARK;;;; --201D;RIGHT DOUBLE QUOTATION MARK;Pf;0;ON;;;;;N;DOUBLE COMMA QUOTATION MARK;;;; --201E;DOUBLE LOW-9 QUOTATION MARK;Ps;0;ON;;;;;N;LOW DOUBLE COMMA QUOTATION MARK;;;; --201F;DOUBLE HIGH-REVERSED-9 QUOTATION MARK;Pi;0;ON;;;;;N;DOUBLE REVERSED COMMA QUOTATION MARK;;;; -+2018;LEFT SINGLE QUOTATION MARK;Pi;0;ON;;;;;Y;SINGLE TURNED COMMA QUOTATION MARK;;;; -+2019;RIGHT SINGLE QUOTATION MARK;Pf;0;ON;;;;;Y;SINGLE COMMA QUOTATION MARK;;;; -+201A;SINGLE LOW-9 QUOTATION MARK;Ps;0;ON;;;;;Y;LOW SINGLE COMMA QUOTATION MARK;;;; -+201B;SINGLE HIGH-REVERSED-9 QUOTATION MARK;Pi;0;ON;;;;;Y;SINGLE REVERSED COMMA QUOTATION MARK;;;; -+201C;LEFT DOUBLE QUOTATION MARK;Pi;0;ON;;;;;Y;DOUBLE TURNED COMMA QUOTATION MARK;;;; -+201D;RIGHT DOUBLE QUOTATION MARK;Pf;0;ON;;;;;Y;DOUBLE COMMA QUOTATION MARK;;;; -+201E;DOUBLE LOW-9 QUOTATION MARK;Ps;0;ON;;;;;Y;LOW DOUBLE COMMA QUOTATION MARK;;;; -+201F;DOUBLE HIGH-REVERSED-9 QUOTATION MARK;Pi;0;ON;;;;;Y;DOUBLE REVERSED COMMA QUOTATION MARK;;;; - 2020;DAGGER;Po;0;ON;;;;;N;;;;; - 2021;DOUBLE DAGGER;Po;0;ON;;;;;N;;;;; - 2022;BULLET;Po;0;ON;;;;;N;;;;; -@@ -6058,6 +6284,10 @@ - 20E9;COMBINING WIDE BRIDGE ABOVE;Mn;230;NSM;;;;;N;;;;; - 20EA;COMBINING LEFTWARDS ARROW OVERLAY;Mn;1;NSM;;;;;N;;;;; - 20EB;COMBINING LONG DOUBLE SOLIDUS OVERLAY;Mn;1;NSM;;;;;N;;;;; -+20EC;COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS;Mn;220;NSM;;;;;N;;;;; -+20ED;COMBINING LEFTWARDS HARPOON WITH BARB DOWNWARDS;Mn;220;NSM;;;;;N;;;;; -+20EE;COMBINING LEFT ARROW BELOW;Mn;220;NSM;;;;;N;;;;; -+20EF;COMBINING RIGHT ARROW BELOW;Mn;220;NSM;;;;;N;;;;; - 2100;ACCOUNT OF;So;0;ON; 0061 002F 0063;;;;N;;;;; - 2101;ADDRESSED TO THE SUBJECT;So;0;ON; 0061 002F 0073;;;;N;;;;; - 2102;DOUBLE-STRUCK CAPITAL C;Lu;0;L; 0043;;;;N;DOUBLE-STRUCK C;;;; -@@ -6108,7 +6338,7 @@ - 212F;SCRIPT SMALL E;Ll;0;L; 0065;;;;N;;;;; - 2130;SCRIPT CAPITAL E;Lu;0;L; 0045;;;;N;SCRIPT E;;;; - 2131;SCRIPT CAPITAL F;Lu;0;L; 0046;;;;N;SCRIPT F;;;; --2132;TURNED CAPITAL F;So;0;ON;;;;;N;TURNED F;;;; -+2132;TURNED CAPITAL F;Lu;0;L;;;;;N;TURNED F;;;214E; - 2133;SCRIPT CAPITAL M;Lu;0;L; 004D;;;;N;SCRIPT M;;;; - 2134;SCRIPT SMALL O;Ll;0;L; 006F;;;;N;;;;; - 2135;ALEF SYMBOL;Lo;0;L; 05D0;;;;N;FIRST TRANSFINITE CARDINAL;;;; -@@ -6135,6 +6365,8 @@ - 214A;PROPERTY LINE;So;0;ON;;;;;N;;;;; - 214B;TURNED AMPERSAND;Sm;0;ON;;;;;N;;;;; - 214C;PER SIGN;So;0;ON;;;;;N;;;;; -+214D;AKTIESELSKAB;So;0;ON;;;;;N;;;;; -+214E;TURNED SMALL F;Ll;0;L;;;;;N;;;2132;;2132 - 2153;VULGAR FRACTION ONE THIRD;No;0;ON; 0031 2044 0033;;;1/3;N;FRACTION ONE THIRD;;;; - 2154;VULGAR FRACTION TWO THIRDS;No;0;ON; 0032 2044 0033;;;2/3;N;FRACTION TWO THIRDS;;;; - 2155;VULGAR FRACTION ONE FIFTH;No;0;ON; 0031 2044 0035;;;1/5;N;FRACTION ONE FIFTH;;;; -@@ -6183,7 +6415,8 @@ - 2180;ROMAN NUMERAL ONE THOUSAND C D;Nl;0;L;;;;1000;N;;;;; - 2181;ROMAN NUMERAL FIVE THOUSAND;Nl;0;L;;;;5000;N;;;;; - 2182;ROMAN NUMERAL TEN THOUSAND;Nl;0;L;;;;10000;N;;;;; --2183;ROMAN NUMERAL REVERSED ONE HUNDRED;Nl;0;L;;;;;N;;;;; -+2183;ROMAN NUMERAL REVERSED ONE HUNDRED;Lu;0;L;;;;;N;;;;2184; -+2184;LATIN SMALL LETTER REVERSED C;Ll;0;L;;;;;N;;;2183;;2183 - 2190;LEFTWARDS ARROW;Sm;0;ON;;;;;N;LEFT ARROW;;;; - 2191;UPWARDS ARROW;Sm;0;ON;;;;;N;UP ARROW;;;; - 2192;RIGHTWARDS ARROW;Sm;0;ON;;;;;N;RIGHT ARROW;;;; -@@ -6732,9 +6965,9 @@ - 23B1;UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION;Sm;0;ON;;;;;N;;;;; - 23B2;SUMMATION TOP;Sm;0;ON;;;;;N;;;;; - 23B3;SUMMATION BOTTOM;Sm;0;ON;;;;;N;;;;; --23B4;TOP SQUARE BRACKET;Ps;0;ON;;;;;N;;;;; --23B5;BOTTOM SQUARE BRACKET;Pe;0;ON;;;;;N;;;;; --23B6;BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET;Po;0;ON;;;;;N;;;;; -+23B4;TOP SQUARE BRACKET;So;0;ON;;;;;N;;;;; -+23B5;BOTTOM SQUARE BRACKET;So;0;ON;;;;;N;;;;; -+23B6;BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET;So;0;ON;;;;;N;;;;; - 23B7;RADICAL SYMBOL BOTTOM;So;0;ON;;;;;N;;;;; - 23B8;LEFT VERTICAL BOX LINE;So;0;ON;;;;;N;;;;; - 23B9;RIGHT VERTICAL BOX LINE;So;0;ON;;;;;N;;;;; -@@ -6772,6 +7005,18 @@ - 23D9;METRICAL PENTASEME;So;0;ON;;;;;N;;;;; - 23DA;EARTH GROUND;So;0;ON;;;;;N;;;;; - 23DB;FUSE;So;0;ON;;;;;N;;;;; -+23DC;TOP PARENTHESIS;Sm;0;ON;;;;;N;;mathematical use;;; -+23DD;BOTTOM PARENTHESIS;Sm;0;ON;;;;;N;;mathematical use;;; -+23DE;TOP CURLY BRACKET;Sm;0;ON;;;;;N;;mathematical use;;; -+23DF;BOTTOM CURLY BRACKET;Sm;0;ON;;;;;N;;mathematical use;;; -+23E0;TOP TORTOISE SHELL BRACKET;Sm;0;ON;;;;;N;;mathematical use;;; -+23E1;BOTTOM TORTOISE SHELL BRACKET;Sm;0;ON;;;;;N;;mathematical use;;; -+23E2;WHITE TRAPEZIUM;So;0;ON;;;;;N;;;;; -+23E3;BENZENE RING WITH CIRCLE;So;0;ON;;;;;N;;;;; -+23E4;STRAIGHTNESS;So;0;ON;;;;;N;;;;; -+23E5;FLATNESS;So;0;ON;;;;;N;;;;; -+23E6;AC CURRENT;So;0;ON;;;;;N;;;;; -+23E7;ELECTRICAL INTERSECTION;So;0;ON;;;;;N;;;;; - 2400;SYMBOL FOR NULL;So;0;ON;;;;;N;GRAPHIC FOR NULL;;;; - 2401;SYMBOL FOR START OF HEADING;So;0;ON;;;;;N;GRAPHIC FOR START OF HEADING;;;; - 2402;SYMBOL FOR START OF TEXT;So;0;ON;;;;;N;GRAPHIC FOR START OF TEXT;;;; -@@ -7413,6 +7658,7 @@ - 26AF;UNMARRIED PARTNERSHIP SYMBOL;So;0;ON;;;;;N;;;;; - 26B0;COFFIN;So;0;ON;;;;;N;;;;; - 26B1;FUNERAL URN;So;0;ON;;;;;N;;;;; -+26B2;NEUTER;So;0;ON;;;;;N;;;;; - 2701;UPPER BLADE SCISSORS;So;0;ON;;;;;N;;;;; - 2702;BLACK SCISSORS;So;0;ON;;;;;N;;;;; - 2703;LOWER BLADE SCISSORS;So;0;ON;;;;;N;;;;; -@@ -7594,6 +7840,10 @@ - 27C4;OPEN SUPERSET;Sm;0;ON;;;;;Y;;;;; - 27C5;LEFT S-SHAPED BAG DELIMITER;Ps;0;ON;;;;;Y;;;;; - 27C6;RIGHT S-SHAPED BAG DELIMITER;Pe;0;ON;;;;;Y;;;;; -+27C7;OR WITH DOT INSIDE;Sm;0;ON;;;;;N;;;;; -+27C8;REVERSE SOLIDUS PRECEDING SUBSET;Sm;0;ON;;;;;N;;;;; -+27C9;SUPERSET PRECEDING SOLIDUS;Sm;0;ON;;;;;N;;;;; -+27CA;VERTICAL BAR WITH HORIZONTAL STROKE;Sm;0;ON;;;;;N;;;;; - 27D0;WHITE DIAMOND WITH CENTRED DOT;Sm;0;ON;;;;;N;;;;; - 27D1;AND WITH DOT;Sm;0;ON;;;;;N;;;;; - 27D2;ELEMENT OF OPENING UPWARDS;Sm;0;ON;;;;;N;;;;; -@@ -8426,6 +8676,17 @@ - 2B11;LEFTWARDS ARROW WITH TIP UPWARDS;So;0;ON;;;;;N;;;;; - 2B12;SQUARE WITH TOP HALF BLACK;So;0;ON;;;;;N;;;;; - 2B13;SQUARE WITH BOTTOM HALF BLACK;So;0;ON;;;;;N;;;;; -+2B14;SQUARE WITH UPPER RIGHT DIAGONAL HALF BLACK;So;0;ON;;;;;N;;;;; -+2B15;SQUARE WITH LOWER LEFT DIAGONAL HALF BLACK;So;0;ON;;;;;N;;;;; -+2B16;DIAMOND WITH LEFT HALF BLACK;So;0;ON;;;;;N;;;;; -+2B17;DIAMOND WITH RIGHT HALF BLACK;So;0;ON;;;;;N;;;;; -+2B18;DIAMOND WITH TOP HALF BLACK;So;0;ON;;;;;N;;;;; -+2B19;DIAMOND WITH BOTTOM HALF BLACK;So;0;ON;;;;;N;;;;; -+2B1A;DOTTED SQUARE;So;0;ON;;;;;N;;;;; -+2B20;WHITE PENTAGON;So;0;ON;;;;;N;;;;; -+2B21;WHITE HEXAGON;So;0;ON;;;;;N;;;;; -+2B22;BLACK HEXAGON;So;0;ON;;;;;N;;;;; -+2B23;HORIZONTAL BLACK HEXAGON;So;0;ON;;;;;N;;;;; - 2C00;GLAGOLITIC CAPITAL LETTER AZU;Lu;0;L;;;;;N;;;;2C30; - 2C01;GLAGOLITIC CAPITAL LETTER BUKY;Lu;0;L;;;;;N;;;;2C31; - 2C02;GLAGOLITIC CAPITAL LETTER VEDE;Lu;0;L;;;;;N;;;;2C32; -@@ -8520,6 +8781,23 @@ - 2C5C;GLAGOLITIC SMALL LETTER SHTAPIC;Ll;0;L;;;;;N;;;2C2C;;2C2C - 2C5D;GLAGOLITIC SMALL LETTER TROKUTASTI A;Ll;0;L;;;;;N;;;2C2D;;2C2D - 2C5E;GLAGOLITIC SMALL LETTER LATINATE MYSLITE;Ll;0;L;;;;;N;;;2C2E;;2C2E -+2C60;LATIN CAPITAL LETTER L WITH DOUBLE BAR;Lu;0;L;;;;;N;;;;2C61; -+2C61;LATIN SMALL LETTER L WITH DOUBLE BAR;Ll;0;L;;;;;N;;;2C60;;2C60 -+2C62;LATIN CAPITAL LETTER L WITH MIDDLE TILDE;Lu;0;L;;;;;N;;;;026B; -+2C63;LATIN CAPITAL LETTER P WITH STROKE;Lu;0;L;;;;;N;;;;1D7D; -+2C64;LATIN CAPITAL LETTER R WITH TAIL;Lu;0;L;;;;;N;;;;027D; -+2C65;LATIN SMALL LETTER A WITH STROKE;Ll;0;L;;;;;N;;;023A;;023A -+2C66;LATIN SMALL LETTER T WITH DIAGONAL STROKE;Ll;0;L;;;;;N;;;023E;;023E -+2C67;LATIN CAPITAL LETTER H WITH DESCENDER;Lu;0;L;;;;;N;;;;2C68; -+2C68;LATIN SMALL LETTER H WITH DESCENDER;Ll;0;L;;;;;N;;;2C67;;2C67 -+2C69;LATIN CAPITAL LETTER K WITH DESCENDER;Lu;0;L;;;;;N;;;;2C6A; -+2C6A;LATIN SMALL LETTER K WITH DESCENDER;Ll;0;L;;;;;N;;;2C69;;2C69 -+2C6B;LATIN CAPITAL LETTER Z WITH DESCENDER;Lu;0;L;;;;;N;;;;2C6C; -+2C6C;LATIN SMALL LETTER Z WITH DESCENDER;Ll;0;L;;;;;N;;;2C6B;;2C6B -+2C74;LATIN SMALL LETTER V WITH CURL;Ll;0;L;;;;;N;;;;; -+2C75;LATIN CAPITAL LETTER HALF H;Lu;0;L;;;;;N;;;;2C76; -+2C76;LATIN SMALL LETTER HALF H;Ll;0;L;;;;;N;;;2C75;;2C75 -+2C77;LATIN SMALL LETTER TAILLESS PHI;Ll;0;L;;;;;N;;;;; - 2C80;COPTIC CAPITAL LETTER ALFA;Lu;0;L;;;;;N;;;;2C81; - 2C81;COPTIC SMALL LETTER ALFA;Ll;0;L;;;;;N;;;2C80;;2C80 - 2C82;COPTIC CAPITAL LETTER VIDA;Lu;0;L;;;;;N;;;;2C83; -@@ -9202,9 +9480,9 @@ - 301A;LEFT WHITE SQUARE BRACKET;Ps;0;ON;;;;;Y;OPENING WHITE SQUARE BRACKET;;;; - 301B;RIGHT WHITE SQUARE BRACKET;Pe;0;ON;;;;;Y;CLOSING WHITE SQUARE BRACKET;;;; - 301C;WAVE DASH;Pd;0;ON;;;;;N;;;;; --301D;REVERSED DOUBLE PRIME QUOTATION MARK;Ps;0;ON;;;;;N;;;;; --301E;DOUBLE PRIME QUOTATION MARK;Pe;0;ON;;;;;N;;;;; --301F;LOW DOUBLE PRIME QUOTATION MARK;Pe;0;ON;;;;;N;;;;; -+301D;REVERSED DOUBLE PRIME QUOTATION MARK;Ps;0;ON;;;;;Y;;;;; -+301E;DOUBLE PRIME QUOTATION MARK;Pe;0;ON;;;;;Y;;;;; -+301F;LOW DOUBLE PRIME QUOTATION MARK;Pe;0;ON;;;;;Y;;;;; - 3020;POSTAL MARK FACE;So;0;ON;;;;;N;;;;; - 3021;HANGZHOU NUMERAL ONE;Nl;0;L;;;;1;N;;;;; - 3022;HANGZHOU NUMERAL TWO;Nl;0;L;;;;2;N;;;;; -@@ -11441,6 +11719,12 @@ - A714;MODIFIER LETTER MID LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; - A715;MODIFIER LETTER LOW LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; - A716;MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -+A717;MODIFIER LETTER DOT VERTICAL BAR;Lm;0;ON;;;;;N;;;;; -+A718;MODIFIER LETTER DOT SLASH;Lm;0;ON;;;;;N;;;;; -+A719;MODIFIER LETTER DOT HORIZONTAL BAR;Lm;0;ON;;;;;N;;;;; -+A71A;MODIFIER LETTER LOWER RIGHT CORNER ANGLE;Lm;0;ON;;;;;N;;;;; -+A720;MODIFIER LETTER STRESS AND HIGH TONE;Sk;0;ON;;;;;N;;;;; -+A721;MODIFIER LETTER STRESS AND LOW TONE;Sk;0;ON;;;;;N;;;;; - A800;SYLOTI NAGRI LETTER A;Lo;0;L;;;;;N;;;;; - A801;SYLOTI NAGRI LETTER I;Lo;0;L;;;;;N;;;;; - A802;SYLOTI NAGRI SIGN DVISVARA;Mc;0;NSM;;;;;N;;;;; -@@ -11485,6 +11769,62 @@ - A829;SYLOTI NAGRI POETRY MARK-2;So;0;ON;;;;;N;;;;; - A82A;SYLOTI NAGRI POETRY MARK-3;So;0;ON;;;;;N;;;;; - A82B;SYLOTI NAGRI POETRY MARK-4;So;0;ON;;;;;N;;;;; -+A840;PHAGS-PA LETTER KA;Lo;0;L;;;;;N;;;;; -+A841;PHAGS-PA LETTER KHA;Lo;0;L;;;;;N;;;;; -+A842;PHAGS-PA LETTER GA;Lo;0;L;;;;;N;;;;; -+A843;PHAGS-PA LETTER NGA;Lo;0;L;;;;;N;;;;; -+A844;PHAGS-PA LETTER CA;Lo;0;L;;;;;N;;;;; -+A845;PHAGS-PA LETTER CHA;Lo;0;L;;;;;N;;;;; -+A846;PHAGS-PA LETTER JA;Lo;0;L;;;;;N;;;;; -+A847;PHAGS-PA LETTER NYA;Lo;0;L;;;;;N;;;;; -+A848;PHAGS-PA LETTER TA;Lo;0;L;;;;;N;;;;; -+A849;PHAGS-PA LETTER THA;Lo;0;L;;;;;N;;;;; -+A84A;PHAGS-PA LETTER DA;Lo;0;L;;;;;N;;;;; -+A84B;PHAGS-PA LETTER NA;Lo;0;L;;;;;N;;;;; -+A84C;PHAGS-PA LETTER PA;Lo;0;L;;;;;N;;;;; -+A84D;PHAGS-PA LETTER PHA;Lo;0;L;;;;;N;;;;; -+A84E;PHAGS-PA LETTER BA;Lo;0;L;;;;;N;;;;; -+A84F;PHAGS-PA LETTER MA;Lo;0;L;;;;;N;;;;; -+A850;PHAGS-PA LETTER TSA;Lo;0;L;;;;;N;;;;; -+A851;PHAGS-PA LETTER TSHA;Lo;0;L;;;;;N;;;;; -+A852;PHAGS-PA LETTER DZA;Lo;0;L;;;;;N;;;;; -+A853;PHAGS-PA LETTER WA;Lo;0;L;;;;;N;;;;; -+A854;PHAGS-PA LETTER ZHA;Lo;0;L;;;;;N;;;;; -+A855;PHAGS-PA LETTER ZA;Lo;0;L;;;;;N;;;;; -+A856;PHAGS-PA LETTER SMALL A;Lo;0;L;;;;;N;;;;; -+A857;PHAGS-PA LETTER YA;Lo;0;L;;;;;N;;;;; -+A858;PHAGS-PA LETTER RA;Lo;0;L;;;;;N;;;;; -+A859;PHAGS-PA LETTER LA;Lo;0;L;;;;;N;;;;; -+A85A;PHAGS-PA LETTER SHA;Lo;0;L;;;;;N;;;;; -+A85B;PHAGS-PA LETTER SA;Lo;0;L;;;;;N;;;;; -+A85C;PHAGS-PA LETTER HA;Lo;0;L;;;;;N;;;;; -+A85D;PHAGS-PA LETTER A;Lo;0;L;;;;;N;;;;; -+A85E;PHAGS-PA LETTER I;Lo;0;L;;;;;N;;;;; -+A85F;PHAGS-PA LETTER U;Lo;0;L;;;;;N;;;;; -+A860;PHAGS-PA LETTER E;Lo;0;L;;;;;N;;;;; -+A861;PHAGS-PA LETTER O;Lo;0;L;;;;;N;;;;; -+A862;PHAGS-PA LETTER QA;Lo;0;L;;;;;N;;;;; -+A863;PHAGS-PA LETTER XA;Lo;0;L;;;;;N;;;;; -+A864;PHAGS-PA LETTER FA;Lo;0;L;;;;;N;;;;; -+A865;PHAGS-PA LETTER GGA;Lo;0;L;;;;;N;;;;; -+A866;PHAGS-PA LETTER EE;Lo;0;L;;;;;N;;;;; -+A867;PHAGS-PA SUBJOINED LETTER WA;Lo;0;L;;;;;N;;;;; -+A868;PHAGS-PA SUBJOINED LETTER YA;Lo;0;L;;;;;N;;;;; -+A869;PHAGS-PA LETTER TTA;Lo;0;L;;;;;N;;;;; -+A86A;PHAGS-PA LETTER TTHA;Lo;0;L;;;;;N;;;;; -+A86B;PHAGS-PA LETTER DDA;Lo;0;L;;;;;N;;;;; -+A86C;PHAGS-PA LETTER NNA;Lo;0;L;;;;;N;;;;; -+A86D;PHAGS-PA LETTER ALTERNATE YA;Lo;0;L;;;;;N;;;;; -+A86E;PHAGS-PA LETTER VOICELESS SHA;Lo;0;L;;;;;N;;;;; -+A86F;PHAGS-PA LETTER VOICED HA;Lo;0;L;;;;;N;;;;; -+A870;PHAGS-PA LETTER ASPIRATED FA;Lo;0;L;;;;;N;;;;; -+A871;PHAGS-PA SUBJOINED LETTER RA;Lo;0;L;;;;;N;;;;; -+A872;PHAGS-PA SUPERFIXED LETTER RA;Lo;0;L;;;;;N;;;;; -+A873;PHAGS-PA LETTER CANDRABINDU;Lo;0;L;;;;;N;;;;; -+A874;PHAGS-PA SINGLE HEAD MARK;Po;0;ON;;;;;N;;;;; -+A875;PHAGS-PA DOUBLE HEAD MARK;Po;0;ON;;;;;N;;;;; -+A876;PHAGS-PA MARK SHAD;Po;0;ON;;;;;N;;;;; -+A877;PHAGS-PA MARK DOUBLE SHAD;Po;0;ON;;;;;N;;;;; - AC00;;Lo;0;L;;;;;N;;;;; - D7A3;;Lo;0;L;;;;;N;;;;; - D800;;Cs;0;L;;;;;N;;;;; -@@ -12685,19 +13025,19 @@ - FE56;SMALL QUESTION MARK;Po;0;ON; 003F;;;;N;;;;; - FE57;SMALL EXCLAMATION MARK;Po;0;ON; 0021;;;;N;;;;; - FE58;SMALL EM DASH;Pd;0;ON; 2014;;;;N;;;;; --FE59;SMALL LEFT PARENTHESIS;Ps;0;ON; 0028;;;;N;SMALL OPENING PARENTHESIS;;;; --FE5A;SMALL RIGHT PARENTHESIS;Pe;0;ON; 0029;;;;N;SMALL CLOSING PARENTHESIS;;;; --FE5B;SMALL LEFT CURLY BRACKET;Ps;0;ON; 007B;;;;N;SMALL OPENING CURLY BRACKET;;;; --FE5C;SMALL RIGHT CURLY BRACKET;Pe;0;ON; 007D;;;;N;SMALL CLOSING CURLY BRACKET;;;; --FE5D;SMALL LEFT TORTOISE SHELL BRACKET;Ps;0;ON; 3014;;;;N;SMALL OPENING TORTOISE SHELL BRACKET;;;; --FE5E;SMALL RIGHT TORTOISE SHELL BRACKET;Pe;0;ON; 3015;;;;N;SMALL CLOSING TORTOISE SHELL BRACKET;;;; -+FE59;SMALL LEFT PARENTHESIS;Ps;0;ON; 0028;;;;Y;SMALL OPENING PARENTHESIS;;;; -+FE5A;SMALL RIGHT PARENTHESIS;Pe;0;ON; 0029;;;;Y;SMALL CLOSING PARENTHESIS;;;; -+FE5B;SMALL LEFT CURLY BRACKET;Ps;0;ON; 007B;;;;Y;SMALL OPENING CURLY BRACKET;;;; -+FE5C;SMALL RIGHT CURLY BRACKET;Pe;0;ON; 007D;;;;Y;SMALL CLOSING CURLY BRACKET;;;; -+FE5D;SMALL LEFT TORTOISE SHELL BRACKET;Ps;0;ON; 3014;;;;Y;SMALL OPENING TORTOISE SHELL BRACKET;;;; -+FE5E;SMALL RIGHT TORTOISE SHELL BRACKET;Pe;0;ON; 3015;;;;Y;SMALL CLOSING TORTOISE SHELL BRACKET;;;; - FE5F;SMALL NUMBER SIGN;Po;0;ET; 0023;;;;N;;;;; - FE60;SMALL AMPERSAND;Po;0;ON; 0026;;;;N;;;;; - FE61;SMALL ASTERISK;Po;0;ON; 002A;;;;N;;;;; - FE62;SMALL PLUS SIGN;Sm;0;ES; 002B;;;;N;;;;; - FE63;SMALL HYPHEN-MINUS;Pd;0;ES; 002D;;;;N;;;;; --FE64;SMALL LESS-THAN SIGN;Sm;0;ON; 003C;;;;N;;;;; --FE65;SMALL GREATER-THAN SIGN;Sm;0;ON; 003E;;;;N;;;;; -+FE64;SMALL LESS-THAN SIGN;Sm;0;ON; 003C;;;;Y;;;;; -+FE65;SMALL GREATER-THAN SIGN;Sm;0;ON; 003E;;;;Y;;;;; - FE66;SMALL EQUALS SIGN;Sm;0;ON; 003D;;;;N;;;;; - FE68;SMALL REVERSE SOLIDUS;Po;0;ON; 005C;;;;N;SMALL BACKSLASH;;;; - FE69;SMALL DOLLAR SIGN;Sc;0;ET; 0024;;;;N;;;;; -@@ -13469,7 +13809,7 @@ - 1033E;GOTHIC LETTER JER;Lo;0;L;;;;;N;;;;; - 1033F;GOTHIC LETTER URUS;Lo;0;L;;;;;N;;;;; - 10340;GOTHIC LETTER PAIRTHRA;Lo;0;L;;;;;N;;;;; --10341;GOTHIC LETTER NINETY;Lo;0;L;;;;;N;;;;; -+10341;GOTHIC LETTER NINETY;Nl;0;L;;;;90;N;;;;; - 10342;GOTHIC LETTER RAIDA;Lo;0;L;;;;;N;;;;; - 10343;GOTHIC LETTER SAUIL;Lo;0;L;;;;;N;;;;; - 10344;GOTHIC LETTER TEIWS;Lo;0;L;;;;;N;;;;; -@@ -13554,12 +13894,12 @@ - 103CD;OLD PERSIAN SIGN DAHYAAUSH-2;Lo;0;L;;;;;N;;;;; - 103CE;OLD PERSIAN SIGN BAGA;Lo;0;L;;;;;N;;;;; - 103CF;OLD PERSIAN SIGN BUUMISH;Lo;0;L;;;;;N;;;;; --103D0;OLD PERSIAN WORD DIVIDER;So;0;L;;;;;N;;;;; --103D1;OLD PERSIAN NUMBER ONE;Nl;0;ON;;;;1;N;;;;; --103D2;OLD PERSIAN NUMBER TWO;Nl;0;ON;;;;2;N;;;;; --103D3;OLD PERSIAN NUMBER TEN;Nl;0;ON;;;;10;N;;;;; --103D4;OLD PERSIAN NUMBER TWENTY;Nl;0;ON;;;;20;N;;;;; --103D5;OLD PERSIAN NUMBER HUNDRED;Nl;0;ON;;;;100;N;;;;; -+103D0;OLD PERSIAN WORD DIVIDER;Po;0;L;;;;;N;;;;; -+103D1;OLD PERSIAN NUMBER ONE;Nl;0;L;;;;1;N;;;;; -+103D2;OLD PERSIAN NUMBER TWO;Nl;0;L;;;;2;N;;;;; -+103D3;OLD PERSIAN NUMBER TEN;Nl;0;L;;;;10;N;;;;; -+103D4;OLD PERSIAN NUMBER TWENTY;Nl;0;L;;;;20;N;;;;; -+103D5;OLD PERSIAN NUMBER HUNDRED;Nl;0;L;;;;100;N;;;;; - 10400;DESERET CAPITAL LETTER LONG I;Lu;0;L;;;;;N;;;;10428; - 10401;DESERET CAPITAL LETTER LONG E;Lu;0;L;;;;;N;;;;10429; - 10402;DESERET CAPITAL LETTER LONG A;Lu;0;L;;;;;N;;;;1042A; -@@ -13783,6 +14123,33 @@ - 10838;CYPRIOT SYLLABLE XE;Lo;0;R;;;;;N;;;;; - 1083C;CYPRIOT SYLLABLE ZA;Lo;0;R;;;;;N;;;;; - 1083F;CYPRIOT SYLLABLE ZO;Lo;0;R;;;;;N;;;;; -+10900;PHOENICIAN LETTER ALF;Lo;0;R;;;;;N;;;;; -+10901;PHOENICIAN LETTER BET;Lo;0;R;;;;;N;;;;; -+10902;PHOENICIAN LETTER GAML;Lo;0;R;;;;;N;;;;; -+10903;PHOENICIAN LETTER DELT;Lo;0;R;;;;;N;;;;; -+10904;PHOENICIAN LETTER HE;Lo;0;R;;;;;N;;;;; -+10905;PHOENICIAN LETTER WAU;Lo;0;R;;;;;N;;;;; -+10906;PHOENICIAN LETTER ZAI;Lo;0;R;;;;;N;;;;; -+10907;PHOENICIAN LETTER HET;Lo;0;R;;;;;N;;;;; -+10908;PHOENICIAN LETTER TET;Lo;0;R;;;;;N;;;;; -+10909;PHOENICIAN LETTER YOD;Lo;0;R;;;;;N;;;;; -+1090A;PHOENICIAN LETTER KAF;Lo;0;R;;;;;N;;;;; -+1090B;PHOENICIAN LETTER LAMD;Lo;0;R;;;;;N;;;;; -+1090C;PHOENICIAN LETTER MEM;Lo;0;R;;;;;N;;;;; -+1090D;PHOENICIAN LETTER NUN;Lo;0;R;;;;;N;;;;; -+1090E;PHOENICIAN LETTER SEMK;Lo;0;R;;;;;N;;;;; -+1090F;PHOENICIAN LETTER AIN;Lo;0;R;;;;;N;;;;; -+10910;PHOENICIAN LETTER PE;Lo;0;R;;;;;N;;;;; -+10911;PHOENICIAN LETTER SADE;Lo;0;R;;;;;N;;;;; -+10912;PHOENICIAN LETTER QOF;Lo;0;R;;;;;N;;;;; -+10913;PHOENICIAN LETTER ROSH;Lo;0;R;;;;;N;;;;; -+10914;PHOENICIAN LETTER SHIN;Lo;0;R;;;;;N;;;;; -+10915;PHOENICIAN LETTER TAU;Lo;0;R;;;;;N;;;;; -+10916;PHOENICIAN NUMBER ONE;No;0;R;;;;1;N;;;;; -+10917;PHOENICIAN NUMBER TEN;No;0;R;;;;10;N;;;;; -+10918;PHOENICIAN NUMBER TWENTY;No;0;R;;;;20;N;;;;; -+10919;PHOENICIAN NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;; -+1091F;PHOENICIAN WORD SEPARATOR;Po;0;ON;;;;;N;;;;; - 10A00;KHAROSHTHI LETTER A;Lo;0;R;;;;;N;;;;; - 10A01;KHAROSHTHI VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; - 10A02;KHAROSHTHI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -@@ -13848,6 +14215,988 @@ - 10A56;KHAROSHTHI PUNCTUATION DANDA;Po;0;R;;;;;N;;;;; - 10A57;KHAROSHTHI PUNCTUATION DOUBLE DANDA;Po;0;R;;;;;N;;;;; - 10A58;KHAROSHTHI PUNCTUATION LINES;Po;0;R;;;;;N;;;;; -+12000;CUNEIFORM SIGN A;Lo;0;L;;;;;N;;;;; -+12001;CUNEIFORM SIGN A TIMES A;Lo;0;L;;;;;N;;;;; -+12002;CUNEIFORM SIGN A TIMES BAD;Lo;0;L;;;;;N;;;;; -+12003;CUNEIFORM SIGN A TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+12004;CUNEIFORM SIGN A TIMES HA;Lo;0;L;;;;;N;;;;; -+12005;CUNEIFORM SIGN A TIMES IGI;Lo;0;L;;;;;N;;;;; -+12006;CUNEIFORM SIGN A TIMES LAGAR GUNU;Lo;0;L;;;;;N;;;;; -+12007;CUNEIFORM SIGN A TIMES MUSH;Lo;0;L;;;;;N;;;;; -+12008;CUNEIFORM SIGN A TIMES SAG;Lo;0;L;;;;;N;;;;; -+12009;CUNEIFORM SIGN A2;Lo;0;L;;;;;N;;;;; -+1200A;CUNEIFORM SIGN AB;Lo;0;L;;;;;N;;;;; -+1200B;CUNEIFORM SIGN AB TIMES ASH2;Lo;0;L;;;;;N;;;;; -+1200C;CUNEIFORM SIGN AB TIMES DUN3 GUNU;Lo;0;L;;;;;N;;;;; -+1200D;CUNEIFORM SIGN AB TIMES GAL;Lo;0;L;;;;;N;;;;; -+1200E;CUNEIFORM SIGN AB TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+1200F;CUNEIFORM SIGN AB TIMES HA;Lo;0;L;;;;;N;;;;; -+12010;CUNEIFORM SIGN AB TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+12011;CUNEIFORM SIGN AB TIMES IMIN;Lo;0;L;;;;;N;;;;; -+12012;CUNEIFORM SIGN AB TIMES LAGAB;Lo;0;L;;;;;N;;;;; -+12013;CUNEIFORM SIGN AB TIMES SHESH;Lo;0;L;;;;;N;;;;; -+12014;CUNEIFORM SIGN AB TIMES U PLUS U PLUS U;Lo;0;L;;;;;N;;;;; -+12015;CUNEIFORM SIGN AB GUNU;Lo;0;L;;;;;N;;;;; -+12016;CUNEIFORM SIGN AB2;Lo;0;L;;;;;N;;;;; -+12017;CUNEIFORM SIGN AB2 TIMES BALAG;Lo;0;L;;;;;N;;;;; -+12018;CUNEIFORM SIGN AB2 TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+12019;CUNEIFORM SIGN AB2 TIMES ME PLUS EN;Lo;0;L;;;;;N;;;;; -+1201A;CUNEIFORM SIGN AB2 TIMES SHA3;Lo;0;L;;;;;N;;;;; -+1201B;CUNEIFORM SIGN AB2 TIMES TAK4;Lo;0;L;;;;;N;;;;; -+1201C;CUNEIFORM SIGN AD;Lo;0;L;;;;;N;;;;; -+1201D;CUNEIFORM SIGN AK;Lo;0;L;;;;;N;;;;; -+1201E;CUNEIFORM SIGN AK TIMES ERIN2;Lo;0;L;;;;;N;;;;; -+1201F;CUNEIFORM SIGN AK TIMES SHITA PLUS GISH;Lo;0;L;;;;;N;;;;; -+12020;CUNEIFORM SIGN AL;Lo;0;L;;;;;N;;;;; -+12021;CUNEIFORM SIGN AL TIMES AL;Lo;0;L;;;;;N;;;;; -+12022;CUNEIFORM SIGN AL TIMES DIM2;Lo;0;L;;;;;N;;;;; -+12023;CUNEIFORM SIGN AL TIMES GISH;Lo;0;L;;;;;N;;;;; -+12024;CUNEIFORM SIGN AL TIMES HA;Lo;0;L;;;;;N;;;;; -+12025;CUNEIFORM SIGN AL TIMES KAD3;Lo;0;L;;;;;N;;;;; -+12026;CUNEIFORM SIGN AL TIMES KI;Lo;0;L;;;;;N;;;;; -+12027;CUNEIFORM SIGN AL TIMES SHE;Lo;0;L;;;;;N;;;;; -+12028;CUNEIFORM SIGN AL TIMES USH;Lo;0;L;;;;;N;;;;; -+12029;CUNEIFORM SIGN ALAN;Lo;0;L;;;;;N;;;;; -+1202A;CUNEIFORM SIGN ALEPH;Lo;0;L;;;;;N;;;;; -+1202B;CUNEIFORM SIGN AMAR;Lo;0;L;;;;;N;;;;; -+1202C;CUNEIFORM SIGN AMAR TIMES SHE;Lo;0;L;;;;;N;;;;; -+1202D;CUNEIFORM SIGN AN;Lo;0;L;;;;;N;;;;; -+1202E;CUNEIFORM SIGN AN OVER AN;Lo;0;L;;;;;N;;;;; -+1202F;CUNEIFORM SIGN AN THREE TIMES;Lo;0;L;;;;;N;;;;; -+12030;CUNEIFORM SIGN AN PLUS NAGA OPPOSING AN PLUS NAGA;Lo;0;L;;;;;N;;;;; -+12031;CUNEIFORM SIGN AN PLUS NAGA SQUARED;Lo;0;L;;;;;N;;;;; -+12032;CUNEIFORM SIGN ANSHE;Lo;0;L;;;;;N;;;;; -+12033;CUNEIFORM SIGN APIN;Lo;0;L;;;;;N;;;;; -+12034;CUNEIFORM SIGN ARAD;Lo;0;L;;;;;N;;;;; -+12035;CUNEIFORM SIGN ARAD TIMES KUR;Lo;0;L;;;;;N;;;;; -+12036;CUNEIFORM SIGN ARKAB;Lo;0;L;;;;;N;;;;; -+12037;CUNEIFORM SIGN ASAL2;Lo;0;L;;;;;N;;;;; -+12038;CUNEIFORM SIGN ASH;Lo;0;L;;;;;N;;;;; -+12039;CUNEIFORM SIGN ASH ZIDA TENU;Lo;0;L;;;;;N;;;;; -+1203A;CUNEIFORM SIGN ASH KABA TENU;Lo;0;L;;;;;N;;;;; -+1203B;CUNEIFORM SIGN ASH OVER ASH TUG2 OVER TUG2 TUG2 OVER TUG2 PAP;Lo;0;L;;;;;N;;;;; -+1203C;CUNEIFORM SIGN ASH OVER ASH OVER ASH;Lo;0;L;;;;;N;;;;; -+1203D;CUNEIFORM SIGN ASH OVER ASH OVER ASH CROSSING ASH OVER ASH OVER ASH;Lo;0;L;;;;;N;;;;; -+1203E;CUNEIFORM SIGN ASH2;Lo;0;L;;;;;N;;;;; -+1203F;CUNEIFORM SIGN ASHGAB;Lo;0;L;;;;;N;;;;; -+12040;CUNEIFORM SIGN BA;Lo;0;L;;;;;N;;;;; -+12041;CUNEIFORM SIGN BAD;Lo;0;L;;;;;N;;;;; -+12042;CUNEIFORM SIGN BAG3;Lo;0;L;;;;;N;;;;; -+12043;CUNEIFORM SIGN BAHAR2;Lo;0;L;;;;;N;;;;; -+12044;CUNEIFORM SIGN BAL;Lo;0;L;;;;;N;;;;; -+12045;CUNEIFORM SIGN BAL OVER BAL;Lo;0;L;;;;;N;;;;; -+12046;CUNEIFORM SIGN BALAG;Lo;0;L;;;;;N;;;;; -+12047;CUNEIFORM SIGN BAR;Lo;0;L;;;;;N;;;;; -+12048;CUNEIFORM SIGN BARA2;Lo;0;L;;;;;N;;;;; -+12049;CUNEIFORM SIGN BI;Lo;0;L;;;;;N;;;;; -+1204A;CUNEIFORM SIGN BI TIMES A;Lo;0;L;;;;;N;;;;; -+1204B;CUNEIFORM SIGN BI TIMES GAR;Lo;0;L;;;;;N;;;;; -+1204C;CUNEIFORM SIGN BI TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+1204D;CUNEIFORM SIGN BU;Lo;0;L;;;;;N;;;;; -+1204E;CUNEIFORM SIGN BU OVER BU AB;Lo;0;L;;;;;N;;;;; -+1204F;CUNEIFORM SIGN BU OVER BU UN;Lo;0;L;;;;;N;;;;; -+12050;CUNEIFORM SIGN BU CROSSING BU;Lo;0;L;;;;;N;;;;; -+12051;CUNEIFORM SIGN BULUG;Lo;0;L;;;;;N;;;;; -+12052;CUNEIFORM SIGN BULUG OVER BULUG;Lo;0;L;;;;;N;;;;; -+12053;CUNEIFORM SIGN BUR;Lo;0;L;;;;;N;;;;; -+12054;CUNEIFORM SIGN BUR2;Lo;0;L;;;;;N;;;;; -+12055;CUNEIFORM SIGN DA;Lo;0;L;;;;;N;;;;; -+12056;CUNEIFORM SIGN DAG;Lo;0;L;;;;;N;;;;; -+12057;CUNEIFORM SIGN DAG KISIM5 TIMES A PLUS MASH;Lo;0;L;;;;;N;;;;; -+12058;CUNEIFORM SIGN DAG KISIM5 TIMES AMAR;Lo;0;L;;;;;N;;;;; -+12059;CUNEIFORM SIGN DAG KISIM5 TIMES BALAG;Lo;0;L;;;;;N;;;;; -+1205A;CUNEIFORM SIGN DAG KISIM5 TIMES BI;Lo;0;L;;;;;N;;;;; -+1205B;CUNEIFORM SIGN DAG KISIM5 TIMES GA;Lo;0;L;;;;;N;;;;; -+1205C;CUNEIFORM SIGN DAG KISIM5 TIMES GA PLUS MASH;Lo;0;L;;;;;N;;;;; -+1205D;CUNEIFORM SIGN DAG KISIM5 TIMES GI;Lo;0;L;;;;;N;;;;; -+1205E;CUNEIFORM SIGN DAG KISIM5 TIMES GIR2;Lo;0;L;;;;;N;;;;; -+1205F;CUNEIFORM SIGN DAG KISIM5 TIMES GUD;Lo;0;L;;;;;N;;;;; -+12060;CUNEIFORM SIGN DAG KISIM5 TIMES HA;Lo;0;L;;;;;N;;;;; -+12061;CUNEIFORM SIGN DAG KISIM5 TIMES IR;Lo;0;L;;;;;N;;;;; -+12062;CUNEIFORM SIGN DAG KISIM5 TIMES IR PLUS LU;Lo;0;L;;;;;N;;;;; -+12063;CUNEIFORM SIGN DAG KISIM5 TIMES KAK;Lo;0;L;;;;;N;;;;; -+12064;CUNEIFORM SIGN DAG KISIM5 TIMES LA;Lo;0;L;;;;;N;;;;; -+12065;CUNEIFORM SIGN DAG KISIM5 TIMES LU;Lo;0;L;;;;;N;;;;; -+12066;CUNEIFORM SIGN DAG KISIM5 TIMES LU PLUS MASH2;Lo;0;L;;;;;N;;;;; -+12067;CUNEIFORM SIGN DAG KISIM5 TIMES LUM;Lo;0;L;;;;;N;;;;; -+12068;CUNEIFORM SIGN DAG KISIM5 TIMES NE;Lo;0;L;;;;;N;;;;; -+12069;CUNEIFORM SIGN DAG KISIM5 TIMES PAP PLUS PAP;Lo;0;L;;;;;N;;;;; -+1206A;CUNEIFORM SIGN DAG KISIM5 TIMES SI;Lo;0;L;;;;;N;;;;; -+1206B;CUNEIFORM SIGN DAG KISIM5 TIMES TAK4;Lo;0;L;;;;;N;;;;; -+1206C;CUNEIFORM SIGN DAG KISIM5 TIMES U2 PLUS GIR2;Lo;0;L;;;;;N;;;;; -+1206D;CUNEIFORM SIGN DAG KISIM5 TIMES USH;Lo;0;L;;;;;N;;;;; -+1206E;CUNEIFORM SIGN DAM;Lo;0;L;;;;;N;;;;; -+1206F;CUNEIFORM SIGN DAR;Lo;0;L;;;;;N;;;;; -+12070;CUNEIFORM SIGN DARA3;Lo;0;L;;;;;N;;;;; -+12071;CUNEIFORM SIGN DARA4;Lo;0;L;;;;;N;;;;; -+12072;CUNEIFORM SIGN DI;Lo;0;L;;;;;N;;;;; -+12073;CUNEIFORM SIGN DIB;Lo;0;L;;;;;N;;;;; -+12074;CUNEIFORM SIGN DIM;Lo;0;L;;;;;N;;;;; -+12075;CUNEIFORM SIGN DIM TIMES SHE;Lo;0;L;;;;;N;;;;; -+12076;CUNEIFORM SIGN DIM2;Lo;0;L;;;;;N;;;;; -+12077;CUNEIFORM SIGN DIN;Lo;0;L;;;;;N;;;;; -+12078;CUNEIFORM SIGN DIN KASKAL U GUNU DISH;Lo;0;L;;;;;N;;;;; -+12079;CUNEIFORM SIGN DISH;Lo;0;L;;;;;N;;;;; -+1207A;CUNEIFORM SIGN DU;Lo;0;L;;;;;N;;;;; -+1207B;CUNEIFORM SIGN DU OVER DU;Lo;0;L;;;;;N;;;;; -+1207C;CUNEIFORM SIGN DU GUNU;Lo;0;L;;;;;N;;;;; -+1207D;CUNEIFORM SIGN DU SHESHIG;Lo;0;L;;;;;N;;;;; -+1207E;CUNEIFORM SIGN DUB;Lo;0;L;;;;;N;;;;; -+1207F;CUNEIFORM SIGN DUB TIMES ESH2;Lo;0;L;;;;;N;;;;; -+12080;CUNEIFORM SIGN DUB2;Lo;0;L;;;;;N;;;;; -+12081;CUNEIFORM SIGN DUG;Lo;0;L;;;;;N;;;;; -+12082;CUNEIFORM SIGN DUGUD;Lo;0;L;;;;;N;;;;; -+12083;CUNEIFORM SIGN DUH;Lo;0;L;;;;;N;;;;; -+12084;CUNEIFORM SIGN DUN;Lo;0;L;;;;;N;;;;; -+12085;CUNEIFORM SIGN DUN3;Lo;0;L;;;;;N;;;;; -+12086;CUNEIFORM SIGN DUN3 GUNU;Lo;0;L;;;;;N;;;;; -+12087;CUNEIFORM SIGN DUN3 GUNU GUNU;Lo;0;L;;;;;N;;;;; -+12088;CUNEIFORM SIGN DUN4;Lo;0;L;;;;;N;;;;; -+12089;CUNEIFORM SIGN DUR2;Lo;0;L;;;;;N;;;;; -+1208A;CUNEIFORM SIGN E;Lo;0;L;;;;;N;;;;; -+1208B;CUNEIFORM SIGN E TIMES PAP;Lo;0;L;;;;;N;;;;; -+1208C;CUNEIFORM SIGN E OVER E NUN OVER NUN;Lo;0;L;;;;;N;;;;; -+1208D;CUNEIFORM SIGN E2;Lo;0;L;;;;;N;;;;; -+1208E;CUNEIFORM SIGN E2 TIMES A PLUS HA PLUS DA;Lo;0;L;;;;;N;;;;; -+1208F;CUNEIFORM SIGN E2 TIMES GAR;Lo;0;L;;;;;N;;;;; -+12090;CUNEIFORM SIGN E2 TIMES MI;Lo;0;L;;;;;N;;;;; -+12091;CUNEIFORM SIGN E2 TIMES SAL;Lo;0;L;;;;;N;;;;; -+12092;CUNEIFORM SIGN E2 TIMES SHE;Lo;0;L;;;;;N;;;;; -+12093;CUNEIFORM SIGN E2 TIMES U;Lo;0;L;;;;;N;;;;; -+12094;CUNEIFORM SIGN EDIN;Lo;0;L;;;;;N;;;;; -+12095;CUNEIFORM SIGN EGIR;Lo;0;L;;;;;N;;;;; -+12096;CUNEIFORM SIGN EL;Lo;0;L;;;;;N;;;;; -+12097;CUNEIFORM SIGN EN;Lo;0;L;;;;;N;;;;; -+12098;CUNEIFORM SIGN EN TIMES GAN2;Lo;0;L;;;;;N;;;;; -+12099;CUNEIFORM SIGN EN TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+1209A;CUNEIFORM SIGN EN TIMES ME;Lo;0;L;;;;;N;;;;; -+1209B;CUNEIFORM SIGN EN CROSSING EN;Lo;0;L;;;;;N;;;;; -+1209C;CUNEIFORM SIGN EN OPPOSING EN;Lo;0;L;;;;;N;;;;; -+1209D;CUNEIFORM SIGN EN SQUARED;Lo;0;L;;;;;N;;;;; -+1209E;CUNEIFORM SIGN EREN;Lo;0;L;;;;;N;;;;; -+1209F;CUNEIFORM SIGN ERIN2;Lo;0;L;;;;;N;;;;; -+120A0;CUNEIFORM SIGN ESH2;Lo;0;L;;;;;N;;;;; -+120A1;CUNEIFORM SIGN EZEN;Lo;0;L;;;;;N;;;;; -+120A2;CUNEIFORM SIGN EZEN TIMES A;Lo;0;L;;;;;N;;;;; -+120A3;CUNEIFORM SIGN EZEN TIMES A PLUS LAL;Lo;0;L;;;;;N;;;;; -+120A4;CUNEIFORM SIGN EZEN TIMES A PLUS LAL TIMES LAL;Lo;0;L;;;;;N;;;;; -+120A5;CUNEIFORM SIGN EZEN TIMES AN;Lo;0;L;;;;;N;;;;; -+120A6;CUNEIFORM SIGN EZEN TIMES BAD;Lo;0;L;;;;;N;;;;; -+120A7;CUNEIFORM SIGN EZEN TIMES DUN3 GUNU;Lo;0;L;;;;;N;;;;; -+120A8;CUNEIFORM SIGN EZEN TIMES DUN3 GUNU GUNU;Lo;0;L;;;;;N;;;;; -+120A9;CUNEIFORM SIGN EZEN TIMES HA;Lo;0;L;;;;;N;;;;; -+120AA;CUNEIFORM SIGN EZEN TIMES HA GUNU;Lo;0;L;;;;;N;;;;; -+120AB;CUNEIFORM SIGN EZEN TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+120AC;CUNEIFORM SIGN EZEN TIMES KASKAL;Lo;0;L;;;;;N;;;;; -+120AD;CUNEIFORM SIGN EZEN TIMES KASKAL SQUARED;Lo;0;L;;;;;N;;;;; -+120AE;CUNEIFORM SIGN EZEN TIMES KU3;Lo;0;L;;;;;N;;;;; -+120AF;CUNEIFORM SIGN EZEN TIMES LA;Lo;0;L;;;;;N;;;;; -+120B0;CUNEIFORM SIGN EZEN TIMES LAL TIMES LAL;Lo;0;L;;;;;N;;;;; -+120B1;CUNEIFORM SIGN EZEN TIMES LI;Lo;0;L;;;;;N;;;;; -+120B2;CUNEIFORM SIGN EZEN TIMES LU;Lo;0;L;;;;;N;;;;; -+120B3;CUNEIFORM SIGN EZEN TIMES U2;Lo;0;L;;;;;N;;;;; -+120B4;CUNEIFORM SIGN EZEN TIMES UD;Lo;0;L;;;;;N;;;;; -+120B5;CUNEIFORM SIGN GA;Lo;0;L;;;;;N;;;;; -+120B6;CUNEIFORM SIGN GA GUNU;Lo;0;L;;;;;N;;;;; -+120B7;CUNEIFORM SIGN GA2;Lo;0;L;;;;;N;;;;; -+120B8;CUNEIFORM SIGN GA2 TIMES A PLUS DA PLUS HA;Lo;0;L;;;;;N;;;;; -+120B9;CUNEIFORM SIGN GA2 TIMES A PLUS HA;Lo;0;L;;;;;N;;;;; -+120BA;CUNEIFORM SIGN GA2 TIMES A PLUS IGI;Lo;0;L;;;;;N;;;;; -+120BB;CUNEIFORM SIGN GA2 TIMES AB2 TENU PLUS TAB;Lo;0;L;;;;;N;;;;; -+120BC;CUNEIFORM SIGN GA2 TIMES AN;Lo;0;L;;;;;N;;;;; -+120BD;CUNEIFORM SIGN GA2 TIMES ASH;Lo;0;L;;;;;N;;;;; -+120BE;CUNEIFORM SIGN GA2 TIMES ASH2 PLUS GAL;Lo;0;L;;;;;N;;;;; -+120BF;CUNEIFORM SIGN GA2 TIMES BAD;Lo;0;L;;;;;N;;;;; -+120C0;CUNEIFORM SIGN GA2 TIMES BAR PLUS RA;Lo;0;L;;;;;N;;;;; -+120C1;CUNEIFORM SIGN GA2 TIMES BUR;Lo;0;L;;;;;N;;;;; -+120C2;CUNEIFORM SIGN GA2 TIMES BUR PLUS RA;Lo;0;L;;;;;N;;;;; -+120C3;CUNEIFORM SIGN GA2 TIMES DA;Lo;0;L;;;;;N;;;;; -+120C4;CUNEIFORM SIGN GA2 TIMES DI;Lo;0;L;;;;;N;;;;; -+120C5;CUNEIFORM SIGN GA2 TIMES DIM TIMES SHE;Lo;0;L;;;;;N;;;;; -+120C6;CUNEIFORM SIGN GA2 TIMES DUB;Lo;0;L;;;;;N;;;;; -+120C7;CUNEIFORM SIGN GA2 TIMES EL;Lo;0;L;;;;;N;;;;; -+120C8;CUNEIFORM SIGN GA2 TIMES EL PLUS LA;Lo;0;L;;;;;N;;;;; -+120C9;CUNEIFORM SIGN GA2 TIMES EN;Lo;0;L;;;;;N;;;;; -+120CA;CUNEIFORM SIGN GA2 TIMES EN TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+120CB;CUNEIFORM SIGN GA2 TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+120CC;CUNEIFORM SIGN GA2 TIMES GAR;Lo;0;L;;;;;N;;;;; -+120CD;CUNEIFORM SIGN GA2 TIMES GI;Lo;0;L;;;;;N;;;;; -+120CE;CUNEIFORM SIGN GA2 TIMES GI4;Lo;0;L;;;;;N;;;;; -+120CF;CUNEIFORM SIGN GA2 TIMES GI4 PLUS A;Lo;0;L;;;;;N;;;;; -+120D0;CUNEIFORM SIGN GA2 TIMES GIR2 PLUS SU;Lo;0;L;;;;;N;;;;; -+120D1;CUNEIFORM SIGN GA2 TIMES HA PLUS LU PLUS ESH2;Lo;0;L;;;;;N;;;;; -+120D2;CUNEIFORM SIGN GA2 TIMES HAL;Lo;0;L;;;;;N;;;;; -+120D3;CUNEIFORM SIGN GA2 TIMES HAL PLUS LA;Lo;0;L;;;;;N;;;;; -+120D4;CUNEIFORM SIGN GA2 TIMES HI PLUS LI;Lo;0;L;;;;;N;;;;; -+120D5;CUNEIFORM SIGN GA2 TIMES HUB2;Lo;0;L;;;;;N;;;;; -+120D6;CUNEIFORM SIGN GA2 TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+120D7;CUNEIFORM SIGN GA2 TIMES ISH PLUS HU PLUS ASH;Lo;0;L;;;;;N;;;;; -+120D8;CUNEIFORM SIGN GA2 TIMES KAK;Lo;0;L;;;;;N;;;;; -+120D9;CUNEIFORM SIGN GA2 TIMES KASKAL;Lo;0;L;;;;;N;;;;; -+120DA;CUNEIFORM SIGN GA2 TIMES KID;Lo;0;L;;;;;N;;;;; -+120DB;CUNEIFORM SIGN GA2 TIMES KID PLUS LAL;Lo;0;L;;;;;N;;;;; -+120DC;CUNEIFORM SIGN GA2 TIMES KU3 PLUS AN;Lo;0;L;;;;;N;;;;; -+120DD;CUNEIFORM SIGN GA2 TIMES LA;Lo;0;L;;;;;N;;;;; -+120DE;CUNEIFORM SIGN GA2 TIMES ME PLUS EN;Lo;0;L;;;;;N;;;;; -+120DF;CUNEIFORM SIGN GA2 TIMES MI;Lo;0;L;;;;;N;;;;; -+120E0;CUNEIFORM SIGN GA2 TIMES NUN;Lo;0;L;;;;;N;;;;; -+120E1;CUNEIFORM SIGN GA2 TIMES NUN OVER NUN;Lo;0;L;;;;;N;;;;; -+120E2;CUNEIFORM SIGN GA2 TIMES PA;Lo;0;L;;;;;N;;;;; -+120E3;CUNEIFORM SIGN GA2 TIMES SAL;Lo;0;L;;;;;N;;;;; -+120E4;CUNEIFORM SIGN GA2 TIMES SAR;Lo;0;L;;;;;N;;;;; -+120E5;CUNEIFORM SIGN GA2 TIMES SHE;Lo;0;L;;;;;N;;;;; -+120E6;CUNEIFORM SIGN GA2 TIMES SHE PLUS TUR;Lo;0;L;;;;;N;;;;; -+120E7;CUNEIFORM SIGN GA2 TIMES SHID;Lo;0;L;;;;;N;;;;; -+120E8;CUNEIFORM SIGN GA2 TIMES SUM;Lo;0;L;;;;;N;;;;; -+120E9;CUNEIFORM SIGN GA2 TIMES TAK4;Lo;0;L;;;;;N;;;;; -+120EA;CUNEIFORM SIGN GA2 TIMES U;Lo;0;L;;;;;N;;;;; -+120EB;CUNEIFORM SIGN GA2 TIMES UD;Lo;0;L;;;;;N;;;;; -+120EC;CUNEIFORM SIGN GA2 TIMES UD PLUS DU;Lo;0;L;;;;;N;;;;; -+120ED;CUNEIFORM SIGN GA2 OVER GA2;Lo;0;L;;;;;N;;;;; -+120EE;CUNEIFORM SIGN GABA;Lo;0;L;;;;;N;;;;; -+120EF;CUNEIFORM SIGN GABA CROSSING GABA;Lo;0;L;;;;;N;;;;; -+120F0;CUNEIFORM SIGN GAD;Lo;0;L;;;;;N;;;;; -+120F1;CUNEIFORM SIGN GAD OVER GAD GAR OVER GAR;Lo;0;L;;;;;N;;;;; -+120F2;CUNEIFORM SIGN GAL;Lo;0;L;;;;;N;;;;; -+120F3;CUNEIFORM SIGN GAL GAD OVER GAD GAR OVER GAR;Lo;0;L;;;;;N;;;;; -+120F4;CUNEIFORM SIGN GALAM;Lo;0;L;;;;;N;;;;; -+120F5;CUNEIFORM SIGN GAM;Lo;0;L;;;;;N;;;;; -+120F6;CUNEIFORM SIGN GAN;Lo;0;L;;;;;N;;;;; -+120F7;CUNEIFORM SIGN GAN2;Lo;0;L;;;;;N;;;;; -+120F8;CUNEIFORM SIGN GAN2 TENU;Lo;0;L;;;;;N;;;;; -+120F9;CUNEIFORM SIGN GAN2 OVER GAN2;Lo;0;L;;;;;N;;;;; -+120FA;CUNEIFORM SIGN GAN2 CROSSING GAN2;Lo;0;L;;;;;N;;;;; -+120FB;CUNEIFORM SIGN GAR;Lo;0;L;;;;;N;;;;; -+120FC;CUNEIFORM SIGN GAR3;Lo;0;L;;;;;N;;;;; -+120FD;CUNEIFORM SIGN GASHAN;Lo;0;L;;;;;N;;;;; -+120FE;CUNEIFORM SIGN GESHTIN;Lo;0;L;;;;;N;;;;; -+120FF;CUNEIFORM SIGN GESHTIN TIMES KUR;Lo;0;L;;;;;N;;;;; -+12100;CUNEIFORM SIGN GI;Lo;0;L;;;;;N;;;;; -+12101;CUNEIFORM SIGN GI TIMES E;Lo;0;L;;;;;N;;;;; -+12102;CUNEIFORM SIGN GI TIMES U;Lo;0;L;;;;;N;;;;; -+12103;CUNEIFORM SIGN GI CROSSING GI;Lo;0;L;;;;;N;;;;; -+12104;CUNEIFORM SIGN GI4;Lo;0;L;;;;;N;;;;; -+12105;CUNEIFORM SIGN GI4 OVER GI4;Lo;0;L;;;;;N;;;;; -+12106;CUNEIFORM SIGN GI4 CROSSING GI4;Lo;0;L;;;;;N;;;;; -+12107;CUNEIFORM SIGN GIDIM;Lo;0;L;;;;;N;;;;; -+12108;CUNEIFORM SIGN GIR2;Lo;0;L;;;;;N;;;;; -+12109;CUNEIFORM SIGN GIR2 GUNU;Lo;0;L;;;;;N;;;;; -+1210A;CUNEIFORM SIGN GIR3;Lo;0;L;;;;;N;;;;; -+1210B;CUNEIFORM SIGN GIR3 TIMES A PLUS IGI;Lo;0;L;;;;;N;;;;; -+1210C;CUNEIFORM SIGN GIR3 TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+1210D;CUNEIFORM SIGN GIR3 TIMES IGI;Lo;0;L;;;;;N;;;;; -+1210E;CUNEIFORM SIGN GIR3 TIMES LU PLUS IGI;Lo;0;L;;;;;N;;;;; -+1210F;CUNEIFORM SIGN GIR3 TIMES PA;Lo;0;L;;;;;N;;;;; -+12110;CUNEIFORM SIGN GISAL;Lo;0;L;;;;;N;;;;; -+12111;CUNEIFORM SIGN GISH;Lo;0;L;;;;;N;;;;; -+12112;CUNEIFORM SIGN GISH CROSSING GISH;Lo;0;L;;;;;N;;;;; -+12113;CUNEIFORM SIGN GISH TIMES BAD;Lo;0;L;;;;;N;;;;; -+12114;CUNEIFORM SIGN GISH TIMES TAK4;Lo;0;L;;;;;N;;;;; -+12115;CUNEIFORM SIGN GISH TENU;Lo;0;L;;;;;N;;;;; -+12116;CUNEIFORM SIGN GU;Lo;0;L;;;;;N;;;;; -+12117;CUNEIFORM SIGN GU CROSSING GU;Lo;0;L;;;;;N;;;;; -+12118;CUNEIFORM SIGN GU2;Lo;0;L;;;;;N;;;;; -+12119;CUNEIFORM SIGN GU2 TIMES KAK;Lo;0;L;;;;;N;;;;; -+1211A;CUNEIFORM SIGN GU2 TIMES KAK TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+1211B;CUNEIFORM SIGN GU2 TIMES NUN;Lo;0;L;;;;;N;;;;; -+1211C;CUNEIFORM SIGN GU2 TIMES SAL PLUS TUG2;Lo;0;L;;;;;N;;;;; -+1211D;CUNEIFORM SIGN GU2 GUNU;Lo;0;L;;;;;N;;;;; -+1211E;CUNEIFORM SIGN GUD;Lo;0;L;;;;;N;;;;; -+1211F;CUNEIFORM SIGN GUD TIMES A PLUS KUR;Lo;0;L;;;;;N;;;;; -+12120;CUNEIFORM SIGN GUD TIMES KUR;Lo;0;L;;;;;N;;;;; -+12121;CUNEIFORM SIGN GUD OVER GUD LUGAL;Lo;0;L;;;;;N;;;;; -+12122;CUNEIFORM SIGN GUL;Lo;0;L;;;;;N;;;;; -+12123;CUNEIFORM SIGN GUM;Lo;0;L;;;;;N;;;;; -+12124;CUNEIFORM SIGN GUM TIMES SHE;Lo;0;L;;;;;N;;;;; -+12125;CUNEIFORM SIGN GUR;Lo;0;L;;;;;N;;;;; -+12126;CUNEIFORM SIGN GUR7;Lo;0;L;;;;;N;;;;; -+12127;CUNEIFORM SIGN GURUN;Lo;0;L;;;;;N;;;;; -+12128;CUNEIFORM SIGN GURUSH;Lo;0;L;;;;;N;;;;; -+12129;CUNEIFORM SIGN HA;Lo;0;L;;;;;N;;;;; -+1212A;CUNEIFORM SIGN HA TENU;Lo;0;L;;;;;N;;;;; -+1212B;CUNEIFORM SIGN HA GUNU;Lo;0;L;;;;;N;;;;; -+1212C;CUNEIFORM SIGN HAL;Lo;0;L;;;;;N;;;;; -+1212D;CUNEIFORM SIGN HI;Lo;0;L;;;;;N;;;;; -+1212E;CUNEIFORM SIGN HI TIMES ASH;Lo;0;L;;;;;N;;;;; -+1212F;CUNEIFORM SIGN HI TIMES ASH2;Lo;0;L;;;;;N;;;;; -+12130;CUNEIFORM SIGN HI TIMES BAD;Lo;0;L;;;;;N;;;;; -+12131;CUNEIFORM SIGN HI TIMES DISH;Lo;0;L;;;;;N;;;;; -+12132;CUNEIFORM SIGN HI TIMES GAD;Lo;0;L;;;;;N;;;;; -+12133;CUNEIFORM SIGN HI TIMES KIN;Lo;0;L;;;;;N;;;;; -+12134;CUNEIFORM SIGN HI TIMES NUN;Lo;0;L;;;;;N;;;;; -+12135;CUNEIFORM SIGN HI TIMES SHE;Lo;0;L;;;;;N;;;;; -+12136;CUNEIFORM SIGN HI TIMES U;Lo;0;L;;;;;N;;;;; -+12137;CUNEIFORM SIGN HU;Lo;0;L;;;;;N;;;;; -+12138;CUNEIFORM SIGN HUB2;Lo;0;L;;;;;N;;;;; -+12139;CUNEIFORM SIGN HUB2 TIMES AN;Lo;0;L;;;;;N;;;;; -+1213A;CUNEIFORM SIGN HUB2 TIMES HAL;Lo;0;L;;;;;N;;;;; -+1213B;CUNEIFORM SIGN HUB2 TIMES KASKAL;Lo;0;L;;;;;N;;;;; -+1213C;CUNEIFORM SIGN HUB2 TIMES LISH;Lo;0;L;;;;;N;;;;; -+1213D;CUNEIFORM SIGN HUB2 TIMES UD;Lo;0;L;;;;;N;;;;; -+1213E;CUNEIFORM SIGN HUL2;Lo;0;L;;;;;N;;;;; -+1213F;CUNEIFORM SIGN I;Lo;0;L;;;;;N;;;;; -+12140;CUNEIFORM SIGN I A;Lo;0;L;;;;;N;;;;; -+12141;CUNEIFORM SIGN IB;Lo;0;L;;;;;N;;;;; -+12142;CUNEIFORM SIGN IDIM;Lo;0;L;;;;;N;;;;; -+12143;CUNEIFORM SIGN IDIM OVER IDIM BUR;Lo;0;L;;;;;N;;;;; -+12144;CUNEIFORM SIGN IDIM OVER IDIM SQUARED;Lo;0;L;;;;;N;;;;; -+12145;CUNEIFORM SIGN IG;Lo;0;L;;;;;N;;;;; -+12146;CUNEIFORM SIGN IGI;Lo;0;L;;;;;N;;;;; -+12147;CUNEIFORM SIGN IGI DIB;Lo;0;L;;;;;N;;;;; -+12148;CUNEIFORM SIGN IGI RI;Lo;0;L;;;;;N;;;;; -+12149;CUNEIFORM SIGN IGI OVER IGI SHIR OVER SHIR UD OVER UD;Lo;0;L;;;;;N;;;;; -+1214A;CUNEIFORM SIGN IGI GUNU;Lo;0;L;;;;;N;;;;; -+1214B;CUNEIFORM SIGN IL;Lo;0;L;;;;;N;;;;; -+1214C;CUNEIFORM SIGN IL TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+1214D;CUNEIFORM SIGN IL2;Lo;0;L;;;;;N;;;;; -+1214E;CUNEIFORM SIGN IM;Lo;0;L;;;;;N;;;;; -+1214F;CUNEIFORM SIGN IM TIMES TAK4;Lo;0;L;;;;;N;;;;; -+12150;CUNEIFORM SIGN IM CROSSING IM;Lo;0;L;;;;;N;;;;; -+12151;CUNEIFORM SIGN IM OPPOSING IM;Lo;0;L;;;;;N;;;;; -+12152;CUNEIFORM SIGN IM SQUARED;Lo;0;L;;;;;N;;;;; -+12153;CUNEIFORM SIGN IMIN;Lo;0;L;;;;;N;;;;; -+12154;CUNEIFORM SIGN IN;Lo;0;L;;;;;N;;;;; -+12155;CUNEIFORM SIGN IR;Lo;0;L;;;;;N;;;;; -+12156;CUNEIFORM SIGN ISH;Lo;0;L;;;;;N;;;;; -+12157;CUNEIFORM SIGN KA;Lo;0;L;;;;;N;;;;; -+12158;CUNEIFORM SIGN KA TIMES A;Lo;0;L;;;;;N;;;;; -+12159;CUNEIFORM SIGN KA TIMES AD;Lo;0;L;;;;;N;;;;; -+1215A;CUNEIFORM SIGN KA TIMES AD PLUS KU3;Lo;0;L;;;;;N;;;;; -+1215B;CUNEIFORM SIGN KA TIMES ASH2;Lo;0;L;;;;;N;;;;; -+1215C;CUNEIFORM SIGN KA TIMES BAD;Lo;0;L;;;;;N;;;;; -+1215D;CUNEIFORM SIGN KA TIMES BALAG;Lo;0;L;;;;;N;;;;; -+1215E;CUNEIFORM SIGN KA TIMES BAR;Lo;0;L;;;;;N;;;;; -+1215F;CUNEIFORM SIGN KA TIMES BI;Lo;0;L;;;;;N;;;;; -+12160;CUNEIFORM SIGN KA TIMES ERIN2;Lo;0;L;;;;;N;;;;; -+12161;CUNEIFORM SIGN KA TIMES ESH2;Lo;0;L;;;;;N;;;;; -+12162;CUNEIFORM SIGN KA TIMES GA;Lo;0;L;;;;;N;;;;; -+12163;CUNEIFORM SIGN KA TIMES GAL;Lo;0;L;;;;;N;;;;; -+12164;CUNEIFORM SIGN KA TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+12165;CUNEIFORM SIGN KA TIMES GAR;Lo;0;L;;;;;N;;;;; -+12166;CUNEIFORM SIGN KA TIMES GAR PLUS SHA3 PLUS A;Lo;0;L;;;;;N;;;;; -+12167;CUNEIFORM SIGN KA TIMES GI;Lo;0;L;;;;;N;;;;; -+12168;CUNEIFORM SIGN KA TIMES GIR2;Lo;0;L;;;;;N;;;;; -+12169;CUNEIFORM SIGN KA TIMES GISH PLUS SAR;Lo;0;L;;;;;N;;;;; -+1216A;CUNEIFORM SIGN KA TIMES GISH CROSSING GISH;Lo;0;L;;;;;N;;;;; -+1216B;CUNEIFORM SIGN KA TIMES GU;Lo;0;L;;;;;N;;;;; -+1216C;CUNEIFORM SIGN KA TIMES GUR7;Lo;0;L;;;;;N;;;;; -+1216D;CUNEIFORM SIGN KA TIMES IGI;Lo;0;L;;;;;N;;;;; -+1216E;CUNEIFORM SIGN KA TIMES IM;Lo;0;L;;;;;N;;;;; -+1216F;CUNEIFORM SIGN KA TIMES KAK;Lo;0;L;;;;;N;;;;; -+12170;CUNEIFORM SIGN KA TIMES KI;Lo;0;L;;;;;N;;;;; -+12171;CUNEIFORM SIGN KA TIMES KID;Lo;0;L;;;;;N;;;;; -+12172;CUNEIFORM SIGN KA TIMES LI;Lo;0;L;;;;;N;;;;; -+12173;CUNEIFORM SIGN KA TIMES LU;Lo;0;L;;;;;N;;;;; -+12174;CUNEIFORM SIGN KA TIMES ME;Lo;0;L;;;;;N;;;;; -+12175;CUNEIFORM SIGN KA TIMES ME PLUS DU;Lo;0;L;;;;;N;;;;; -+12176;CUNEIFORM SIGN KA TIMES ME PLUS GI;Lo;0;L;;;;;N;;;;; -+12177;CUNEIFORM SIGN KA TIMES ME PLUS TE;Lo;0;L;;;;;N;;;;; -+12178;CUNEIFORM SIGN KA TIMES MI;Lo;0;L;;;;;N;;;;; -+12179;CUNEIFORM SIGN KA TIMES MI PLUS NUNUZ;Lo;0;L;;;;;N;;;;; -+1217A;CUNEIFORM SIGN KA TIMES NE;Lo;0;L;;;;;N;;;;; -+1217B;CUNEIFORM SIGN KA TIMES NUN;Lo;0;L;;;;;N;;;;; -+1217C;CUNEIFORM SIGN KA TIMES PI;Lo;0;L;;;;;N;;;;; -+1217D;CUNEIFORM SIGN KA TIMES RU;Lo;0;L;;;;;N;;;;; -+1217E;CUNEIFORM SIGN KA TIMES SA;Lo;0;L;;;;;N;;;;; -+1217F;CUNEIFORM SIGN KA TIMES SAR;Lo;0;L;;;;;N;;;;; -+12180;CUNEIFORM SIGN KA TIMES SHA;Lo;0;L;;;;;N;;;;; -+12181;CUNEIFORM SIGN KA TIMES SHE;Lo;0;L;;;;;N;;;;; -+12182;CUNEIFORM SIGN KA TIMES SHID;Lo;0;L;;;;;N;;;;; -+12183;CUNEIFORM SIGN KA TIMES SHU;Lo;0;L;;;;;N;;;;; -+12184;CUNEIFORM SIGN KA TIMES SIG;Lo;0;L;;;;;N;;;;; -+12185;CUNEIFORM SIGN KA TIMES SUHUR;Lo;0;L;;;;;N;;;;; -+12186;CUNEIFORM SIGN KA TIMES TAR;Lo;0;L;;;;;N;;;;; -+12187;CUNEIFORM SIGN KA TIMES U;Lo;0;L;;;;;N;;;;; -+12188;CUNEIFORM SIGN KA TIMES U2;Lo;0;L;;;;;N;;;;; -+12189;CUNEIFORM SIGN KA TIMES UD;Lo;0;L;;;;;N;;;;; -+1218A;CUNEIFORM SIGN KA TIMES UMUM TIMES PA;Lo;0;L;;;;;N;;;;; -+1218B;CUNEIFORM SIGN KA TIMES USH;Lo;0;L;;;;;N;;;;; -+1218C;CUNEIFORM SIGN KA TIMES ZI;Lo;0;L;;;;;N;;;;; -+1218D;CUNEIFORM SIGN KA2;Lo;0;L;;;;;N;;;;; -+1218E;CUNEIFORM SIGN KA2 CROSSING KA2;Lo;0;L;;;;;N;;;;; -+1218F;CUNEIFORM SIGN KAB;Lo;0;L;;;;;N;;;;; -+12190;CUNEIFORM SIGN KAD2;Lo;0;L;;;;;N;;;;; -+12191;CUNEIFORM SIGN KAD3;Lo;0;L;;;;;N;;;;; -+12192;CUNEIFORM SIGN KAD4;Lo;0;L;;;;;N;;;;; -+12193;CUNEIFORM SIGN KAD5;Lo;0;L;;;;;N;;;;; -+12194;CUNEIFORM SIGN KAD5 OVER KAD5;Lo;0;L;;;;;N;;;;; -+12195;CUNEIFORM SIGN KAK;Lo;0;L;;;;;N;;;;; -+12196;CUNEIFORM SIGN KAK TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+12197;CUNEIFORM SIGN KAL;Lo;0;L;;;;;N;;;;; -+12198;CUNEIFORM SIGN KAL TIMES BAD;Lo;0;L;;;;;N;;;;; -+12199;CUNEIFORM SIGN KAL CROSSING KAL;Lo;0;L;;;;;N;;;;; -+1219A;CUNEIFORM SIGN KAM2;Lo;0;L;;;;;N;;;;; -+1219B;CUNEIFORM SIGN KAM4;Lo;0;L;;;;;N;;;;; -+1219C;CUNEIFORM SIGN KASKAL;Lo;0;L;;;;;N;;;;; -+1219D;CUNEIFORM SIGN KASKAL LAGAB TIMES U OVER LAGAB TIMES U;Lo;0;L;;;;;N;;;;; -+1219E;CUNEIFORM SIGN KASKAL OVER KASKAL LAGAB TIMES U OVER LAGAB TIMES U;Lo;0;L;;;;;N;;;;; -+1219F;CUNEIFORM SIGN KESH2;Lo;0;L;;;;;N;;;;; -+121A0;CUNEIFORM SIGN KI;Lo;0;L;;;;;N;;;;; -+121A1;CUNEIFORM SIGN KI TIMES BAD;Lo;0;L;;;;;N;;;;; -+121A2;CUNEIFORM SIGN KI TIMES U;Lo;0;L;;;;;N;;;;; -+121A3;CUNEIFORM SIGN KI TIMES UD;Lo;0;L;;;;;N;;;;; -+121A4;CUNEIFORM SIGN KID;Lo;0;L;;;;;N;;;;; -+121A5;CUNEIFORM SIGN KIN;Lo;0;L;;;;;N;;;;; -+121A6;CUNEIFORM SIGN KISAL;Lo;0;L;;;;;N;;;;; -+121A7;CUNEIFORM SIGN KISH;Lo;0;L;;;;;N;;;;; -+121A8;CUNEIFORM SIGN KISIM5;Lo;0;L;;;;;N;;;;; -+121A9;CUNEIFORM SIGN KISIM5 OVER KISIM5;Lo;0;L;;;;;N;;;;; -+121AA;CUNEIFORM SIGN KU;Lo;0;L;;;;;N;;;;; -+121AB;CUNEIFORM SIGN KU OVER HI TIMES ASH2 KU OVER HI TIMES ASH2;Lo;0;L;;;;;N;;;;; -+121AC;CUNEIFORM SIGN KU3;Lo;0;L;;;;;N;;;;; -+121AD;CUNEIFORM SIGN KU4;Lo;0;L;;;;;N;;;;; -+121AE;CUNEIFORM SIGN KU4 VARIANT FORM;Lo;0;L;;;;;N;;;;; -+121AF;CUNEIFORM SIGN KU7;Lo;0;L;;;;;N;;;;; -+121B0;CUNEIFORM SIGN KUL;Lo;0;L;;;;;N;;;;; -+121B1;CUNEIFORM SIGN KUL GUNU;Lo;0;L;;;;;N;;;;; -+121B2;CUNEIFORM SIGN KUN;Lo;0;L;;;;;N;;;;; -+121B3;CUNEIFORM SIGN KUR;Lo;0;L;;;;;N;;;;; -+121B4;CUNEIFORM SIGN KUR OPPOSING KUR;Lo;0;L;;;;;N;;;;; -+121B5;CUNEIFORM SIGN KUSHU2;Lo;0;L;;;;;N;;;;; -+121B6;CUNEIFORM SIGN KWU318;Lo;0;L;;;;;N;;;;; -+121B7;CUNEIFORM SIGN LA;Lo;0;L;;;;;N;;;;; -+121B8;CUNEIFORM SIGN LAGAB;Lo;0;L;;;;;N;;;;; -+121B9;CUNEIFORM SIGN LAGAB TIMES A;Lo;0;L;;;;;N;;;;; -+121BA;CUNEIFORM SIGN LAGAB TIMES A PLUS DA PLUS HA;Lo;0;L;;;;;N;;;;; -+121BB;CUNEIFORM SIGN LAGAB TIMES A PLUS GAR;Lo;0;L;;;;;N;;;;; -+121BC;CUNEIFORM SIGN LAGAB TIMES A PLUS LAL;Lo;0;L;;;;;N;;;;; -+121BD;CUNEIFORM SIGN LAGAB TIMES AL;Lo;0;L;;;;;N;;;;; -+121BE;CUNEIFORM SIGN LAGAB TIMES AN;Lo;0;L;;;;;N;;;;; -+121BF;CUNEIFORM SIGN LAGAB TIMES ASH ZIDA TENU;Lo;0;L;;;;;N;;;;; -+121C0;CUNEIFORM SIGN LAGAB TIMES BAD;Lo;0;L;;;;;N;;;;; -+121C1;CUNEIFORM SIGN LAGAB TIMES BI;Lo;0;L;;;;;N;;;;; -+121C2;CUNEIFORM SIGN LAGAB TIMES DAR;Lo;0;L;;;;;N;;;;; -+121C3;CUNEIFORM SIGN LAGAB TIMES EN;Lo;0;L;;;;;N;;;;; -+121C4;CUNEIFORM SIGN LAGAB TIMES GA;Lo;0;L;;;;;N;;;;; -+121C5;CUNEIFORM SIGN LAGAB TIMES GAR;Lo;0;L;;;;;N;;;;; -+121C6;CUNEIFORM SIGN LAGAB TIMES GUD;Lo;0;L;;;;;N;;;;; -+121C7;CUNEIFORM SIGN LAGAB TIMES GUD PLUS GUD;Lo;0;L;;;;;N;;;;; -+121C8;CUNEIFORM SIGN LAGAB TIMES HA;Lo;0;L;;;;;N;;;;; -+121C9;CUNEIFORM SIGN LAGAB TIMES HAL;Lo;0;L;;;;;N;;;;; -+121CA;CUNEIFORM SIGN LAGAB TIMES HI TIMES NUN;Lo;0;L;;;;;N;;;;; -+121CB;CUNEIFORM SIGN LAGAB TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+121CC;CUNEIFORM SIGN LAGAB TIMES IM;Lo;0;L;;;;;N;;;;; -+121CD;CUNEIFORM SIGN LAGAB TIMES IM PLUS HA;Lo;0;L;;;;;N;;;;; -+121CE;CUNEIFORM SIGN LAGAB TIMES IM PLUS LU;Lo;0;L;;;;;N;;;;; -+121CF;CUNEIFORM SIGN LAGAB TIMES KI;Lo;0;L;;;;;N;;;;; -+121D0;CUNEIFORM SIGN LAGAB TIMES KIN;Lo;0;L;;;;;N;;;;; -+121D1;CUNEIFORM SIGN LAGAB TIMES KU3;Lo;0;L;;;;;N;;;;; -+121D2;CUNEIFORM SIGN LAGAB TIMES KUL;Lo;0;L;;;;;N;;;;; -+121D3;CUNEIFORM SIGN LAGAB TIMES KUL PLUS HI PLUS A;Lo;0;L;;;;;N;;;;; -+121D4;CUNEIFORM SIGN LAGAB TIMES LAGAB;Lo;0;L;;;;;N;;;;; -+121D5;CUNEIFORM SIGN LAGAB TIMES LISH;Lo;0;L;;;;;N;;;;; -+121D6;CUNEIFORM SIGN LAGAB TIMES LU;Lo;0;L;;;;;N;;;;; -+121D7;CUNEIFORM SIGN LAGAB TIMES LUL;Lo;0;L;;;;;N;;;;; -+121D8;CUNEIFORM SIGN LAGAB TIMES ME;Lo;0;L;;;;;N;;;;; -+121D9;CUNEIFORM SIGN LAGAB TIMES ME PLUS EN;Lo;0;L;;;;;N;;;;; -+121DA;CUNEIFORM SIGN LAGAB TIMES MUSH;Lo;0;L;;;;;N;;;;; -+121DB;CUNEIFORM SIGN LAGAB TIMES NE;Lo;0;L;;;;;N;;;;; -+121DC;CUNEIFORM SIGN LAGAB TIMES SHE PLUS SUM;Lo;0;L;;;;;N;;;;; -+121DD;CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH PLUS ERIN2;Lo;0;L;;;;;N;;;;; -+121DE;CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH TENU;Lo;0;L;;;;;N;;;;; -+121DF;CUNEIFORM SIGN LAGAB TIMES SHU2;Lo;0;L;;;;;N;;;;; -+121E0;CUNEIFORM SIGN LAGAB TIMES SHU2 PLUS SHU2;Lo;0;L;;;;;N;;;;; -+121E1;CUNEIFORM SIGN LAGAB TIMES SUM;Lo;0;L;;;;;N;;;;; -+121E2;CUNEIFORM SIGN LAGAB TIMES TAG;Lo;0;L;;;;;N;;;;; -+121E3;CUNEIFORM SIGN LAGAB TIMES TAK4;Lo;0;L;;;;;N;;;;; -+121E4;CUNEIFORM SIGN LAGAB TIMES TE PLUS A PLUS SU PLUS NA;Lo;0;L;;;;;N;;;;; -+121E5;CUNEIFORM SIGN LAGAB TIMES U;Lo;0;L;;;;;N;;;;; -+121E6;CUNEIFORM SIGN LAGAB TIMES U PLUS A;Lo;0;L;;;;;N;;;;; -+121E7;CUNEIFORM SIGN LAGAB TIMES U PLUS U PLUS U;Lo;0;L;;;;;N;;;;; -+121E8;CUNEIFORM SIGN LAGAB TIMES U2 PLUS ASH;Lo;0;L;;;;;N;;;;; -+121E9;CUNEIFORM SIGN LAGAB TIMES UD;Lo;0;L;;;;;N;;;;; -+121EA;CUNEIFORM SIGN LAGAB TIMES USH;Lo;0;L;;;;;N;;;;; -+121EB;CUNEIFORM SIGN LAGAB SQUARED;Lo;0;L;;;;;N;;;;; -+121EC;CUNEIFORM SIGN LAGAR;Lo;0;L;;;;;N;;;;; -+121ED;CUNEIFORM SIGN LAGAR TIMES SHE;Lo;0;L;;;;;N;;;;; -+121EE;CUNEIFORM SIGN LAGAR TIMES SHE PLUS SUM;Lo;0;L;;;;;N;;;;; -+121EF;CUNEIFORM SIGN LAGAR GUNU;Lo;0;L;;;;;N;;;;; -+121F0;CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE;Lo;0;L;;;;;N;;;;; -+121F1;CUNEIFORM SIGN LAHSHU;Lo;0;L;;;;;N;;;;; -+121F2;CUNEIFORM SIGN LAL;Lo;0;L;;;;;N;;;;; -+121F3;CUNEIFORM SIGN LAL TIMES LAL;Lo;0;L;;;;;N;;;;; -+121F4;CUNEIFORM SIGN LAM;Lo;0;L;;;;;N;;;;; -+121F5;CUNEIFORM SIGN LAM TIMES KUR;Lo;0;L;;;;;N;;;;; -+121F6;CUNEIFORM SIGN LAM TIMES KUR PLUS RU;Lo;0;L;;;;;N;;;;; -+121F7;CUNEIFORM SIGN LI;Lo;0;L;;;;;N;;;;; -+121F8;CUNEIFORM SIGN LIL;Lo;0;L;;;;;N;;;;; -+121F9;CUNEIFORM SIGN LIMMU2;Lo;0;L;;;;;N;;;;; -+121FA;CUNEIFORM SIGN LISH;Lo;0;L;;;;;N;;;;; -+121FB;CUNEIFORM SIGN LU;Lo;0;L;;;;;N;;;;; -+121FC;CUNEIFORM SIGN LU TIMES BAD;Lo;0;L;;;;;N;;;;; -+121FD;CUNEIFORM SIGN LU2;Lo;0;L;;;;;N;;;;; -+121FE;CUNEIFORM SIGN LU2 TIMES AL;Lo;0;L;;;;;N;;;;; -+121FF;CUNEIFORM SIGN LU2 TIMES BAD;Lo;0;L;;;;;N;;;;; -+12200;CUNEIFORM SIGN LU2 TIMES ESH2;Lo;0;L;;;;;N;;;;; -+12201;CUNEIFORM SIGN LU2 TIMES ESH2 TENU;Lo;0;L;;;;;N;;;;; -+12202;CUNEIFORM SIGN LU2 TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+12203;CUNEIFORM SIGN LU2 TIMES HI TIMES BAD;Lo;0;L;;;;;N;;;;; -+12204;CUNEIFORM SIGN LU2 TIMES IM;Lo;0;L;;;;;N;;;;; -+12205;CUNEIFORM SIGN LU2 TIMES KAD2;Lo;0;L;;;;;N;;;;; -+12206;CUNEIFORM SIGN LU2 TIMES KAD3;Lo;0;L;;;;;N;;;;; -+12207;CUNEIFORM SIGN LU2 TIMES KAD3 PLUS ASH;Lo;0;L;;;;;N;;;;; -+12208;CUNEIFORM SIGN LU2 TIMES KI;Lo;0;L;;;;;N;;;;; -+12209;CUNEIFORM SIGN LU2 TIMES LA PLUS ASH;Lo;0;L;;;;;N;;;;; -+1220A;CUNEIFORM SIGN LU2 TIMES LAGAB;Lo;0;L;;;;;N;;;;; -+1220B;CUNEIFORM SIGN LU2 TIMES ME PLUS EN;Lo;0;L;;;;;N;;;;; -+1220C;CUNEIFORM SIGN LU2 TIMES NE;Lo;0;L;;;;;N;;;;; -+1220D;CUNEIFORM SIGN LU2 TIMES NU;Lo;0;L;;;;;N;;;;; -+1220E;CUNEIFORM SIGN LU2 TIMES SI PLUS ASH;Lo;0;L;;;;;N;;;;; -+1220F;CUNEIFORM SIGN LU2 TIMES SIK2 PLUS BU;Lo;0;L;;;;;N;;;;; -+12210;CUNEIFORM SIGN LU2 TIMES TUG2;Lo;0;L;;;;;N;;;;; -+12211;CUNEIFORM SIGN LU2 TENU;Lo;0;L;;;;;N;;;;; -+12212;CUNEIFORM SIGN LU2 CROSSING LU2;Lo;0;L;;;;;N;;;;; -+12213;CUNEIFORM SIGN LU2 OPPOSING LU2;Lo;0;L;;;;;N;;;;; -+12214;CUNEIFORM SIGN LU2 SQUARED;Lo;0;L;;;;;N;;;;; -+12215;CUNEIFORM SIGN LU2 SHESHIG;Lo;0;L;;;;;N;;;;; -+12216;CUNEIFORM SIGN LU3;Lo;0;L;;;;;N;;;;; -+12217;CUNEIFORM SIGN LUGAL;Lo;0;L;;;;;N;;;;; -+12218;CUNEIFORM SIGN LUGAL OVER LUGAL;Lo;0;L;;;;;N;;;;; -+12219;CUNEIFORM SIGN LUGAL OPPOSING LUGAL;Lo;0;L;;;;;N;;;;; -+1221A;CUNEIFORM SIGN LUGAL SHESHIG;Lo;0;L;;;;;N;;;;; -+1221B;CUNEIFORM SIGN LUH;Lo;0;L;;;;;N;;;;; -+1221C;CUNEIFORM SIGN LUL;Lo;0;L;;;;;N;;;;; -+1221D;CUNEIFORM SIGN LUM;Lo;0;L;;;;;N;;;;; -+1221E;CUNEIFORM SIGN LUM OVER LUM;Lo;0;L;;;;;N;;;;; -+1221F;CUNEIFORM SIGN LUM OVER LUM GAR OVER GAR;Lo;0;L;;;;;N;;;;; -+12220;CUNEIFORM SIGN MA;Lo;0;L;;;;;N;;;;; -+12221;CUNEIFORM SIGN MA TIMES TAK4;Lo;0;L;;;;;N;;;;; -+12222;CUNEIFORM SIGN MA GUNU;Lo;0;L;;;;;N;;;;; -+12223;CUNEIFORM SIGN MA2;Lo;0;L;;;;;N;;;;; -+12224;CUNEIFORM SIGN MAH;Lo;0;L;;;;;N;;;;; -+12225;CUNEIFORM SIGN MAR;Lo;0;L;;;;;N;;;;; -+12226;CUNEIFORM SIGN MASH;Lo;0;L;;;;;N;;;;; -+12227;CUNEIFORM SIGN MASH2;Lo;0;L;;;;;N;;;;; -+12228;CUNEIFORM SIGN ME;Lo;0;L;;;;;N;;;;; -+12229;CUNEIFORM SIGN MES;Lo;0;L;;;;;N;;;;; -+1222A;CUNEIFORM SIGN MI;Lo;0;L;;;;;N;;;;; -+1222B;CUNEIFORM SIGN MIN;Lo;0;L;;;;;N;;;;; -+1222C;CUNEIFORM SIGN MU;Lo;0;L;;;;;N;;;;; -+1222D;CUNEIFORM SIGN MU OVER MU;Lo;0;L;;;;;N;;;;; -+1222E;CUNEIFORM SIGN MUG;Lo;0;L;;;;;N;;;;; -+1222F;CUNEIFORM SIGN MUG GUNU;Lo;0;L;;;;;N;;;;; -+12230;CUNEIFORM SIGN MUNSUB;Lo;0;L;;;;;N;;;;; -+12231;CUNEIFORM SIGN MURGU2;Lo;0;L;;;;;N;;;;; -+12232;CUNEIFORM SIGN MUSH;Lo;0;L;;;;;N;;;;; -+12233;CUNEIFORM SIGN MUSH TIMES A;Lo;0;L;;;;;N;;;;; -+12234;CUNEIFORM SIGN MUSH TIMES KUR;Lo;0;L;;;;;N;;;;; -+12235;CUNEIFORM SIGN MUSH TIMES ZA;Lo;0;L;;;;;N;;;;; -+12236;CUNEIFORM SIGN MUSH OVER MUSH;Lo;0;L;;;;;N;;;;; -+12237;CUNEIFORM SIGN MUSH OVER MUSH TIMES A PLUS NA;Lo;0;L;;;;;N;;;;; -+12238;CUNEIFORM SIGN MUSH CROSSING MUSH;Lo;0;L;;;;;N;;;;; -+12239;CUNEIFORM SIGN MUSH3;Lo;0;L;;;;;N;;;;; -+1223A;CUNEIFORM SIGN MUSH3 TIMES A;Lo;0;L;;;;;N;;;;; -+1223B;CUNEIFORM SIGN MUSH3 TIMES A PLUS DI;Lo;0;L;;;;;N;;;;; -+1223C;CUNEIFORM SIGN MUSH3 TIMES DI;Lo;0;L;;;;;N;;;;; -+1223D;CUNEIFORM SIGN MUSH3 GUNU;Lo;0;L;;;;;N;;;;; -+1223E;CUNEIFORM SIGN NA;Lo;0;L;;;;;N;;;;; -+1223F;CUNEIFORM SIGN NA2;Lo;0;L;;;;;N;;;;; -+12240;CUNEIFORM SIGN NAGA;Lo;0;L;;;;;N;;;;; -+12241;CUNEIFORM SIGN NAGA INVERTED;Lo;0;L;;;;;N;;;;; -+12242;CUNEIFORM SIGN NAGA TIMES SHU TENU;Lo;0;L;;;;;N;;;;; -+12243;CUNEIFORM SIGN NAGA OPPOSING NAGA;Lo;0;L;;;;;N;;;;; -+12244;CUNEIFORM SIGN NAGAR;Lo;0;L;;;;;N;;;;; -+12245;CUNEIFORM SIGN NAM NUTILLU;Lo;0;L;;;;;N;;;;; -+12246;CUNEIFORM SIGN NAM;Lo;0;L;;;;;N;;;;; -+12247;CUNEIFORM SIGN NAM2;Lo;0;L;;;;;N;;;;; -+12248;CUNEIFORM SIGN NE;Lo;0;L;;;;;N;;;;; -+12249;CUNEIFORM SIGN NE TIMES A;Lo;0;L;;;;;N;;;;; -+1224A;CUNEIFORM SIGN NE TIMES UD;Lo;0;L;;;;;N;;;;; -+1224B;CUNEIFORM SIGN NE SHESHIG;Lo;0;L;;;;;N;;;;; -+1224C;CUNEIFORM SIGN NI;Lo;0;L;;;;;N;;;;; -+1224D;CUNEIFORM SIGN NI TIMES E;Lo;0;L;;;;;N;;;;; -+1224E;CUNEIFORM SIGN NI2;Lo;0;L;;;;;N;;;;; -+1224F;CUNEIFORM SIGN NIM;Lo;0;L;;;;;N;;;;; -+12250;CUNEIFORM SIGN NIM TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+12251;CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU;Lo;0;L;;;;;N;;;;; -+12252;CUNEIFORM SIGN NINDA2;Lo;0;L;;;;;N;;;;; -+12253;CUNEIFORM SIGN NINDA2 TIMES AN;Lo;0;L;;;;;N;;;;; -+12254;CUNEIFORM SIGN NINDA2 TIMES ASH;Lo;0;L;;;;;N;;;;; -+12255;CUNEIFORM SIGN NINDA2 TIMES ASH PLUS ASH;Lo;0;L;;;;;N;;;;; -+12256;CUNEIFORM SIGN NINDA2 TIMES GUD;Lo;0;L;;;;;N;;;;; -+12257;CUNEIFORM SIGN NINDA2 TIMES ME PLUS GAN2 TENU;Lo;0;L;;;;;N;;;;; -+12258;CUNEIFORM SIGN NINDA2 TIMES NE;Lo;0;L;;;;;N;;;;; -+12259;CUNEIFORM SIGN NINDA2 TIMES NUN;Lo;0;L;;;;;N;;;;; -+1225A;CUNEIFORM SIGN NINDA2 TIMES SHE;Lo;0;L;;;;;N;;;;; -+1225B;CUNEIFORM SIGN NINDA2 TIMES SHE PLUS A AN;Lo;0;L;;;;;N;;;;; -+1225C;CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH;Lo;0;L;;;;;N;;;;; -+1225D;CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH PLUS ASH;Lo;0;L;;;;;N;;;;; -+1225E;CUNEIFORM SIGN NINDA2 TIMES U2 PLUS ASH;Lo;0;L;;;;;N;;;;; -+1225F;CUNEIFORM SIGN NINDA2 TIMES USH;Lo;0;L;;;;;N;;;;; -+12260;CUNEIFORM SIGN NISAG;Lo;0;L;;;;;N;;;;; -+12261;CUNEIFORM SIGN NU;Lo;0;L;;;;;N;;;;; -+12262;CUNEIFORM SIGN NU11;Lo;0;L;;;;;N;;;;; -+12263;CUNEIFORM SIGN NUN;Lo;0;L;;;;;N;;;;; -+12264;CUNEIFORM SIGN NUN LAGAR TIMES GAR;Lo;0;L;;;;;N;;;;; -+12265;CUNEIFORM SIGN NUN LAGAR TIMES MASH;Lo;0;L;;;;;N;;;;; -+12266;CUNEIFORM SIGN NUN LAGAR TIMES SAL;Lo;0;L;;;;;N;;;;; -+12267;CUNEIFORM SIGN NUN LAGAR TIMES SAL OVER NUN LAGAR TIMES SAL;Lo;0;L;;;;;N;;;;; -+12268;CUNEIFORM SIGN NUN LAGAR TIMES USH;Lo;0;L;;;;;N;;;;; -+12269;CUNEIFORM SIGN NUN TENU;Lo;0;L;;;;;N;;;;; -+1226A;CUNEIFORM SIGN NUN OVER NUN;Lo;0;L;;;;;N;;;;; -+1226B;CUNEIFORM SIGN NUN CROSSING NUN;Lo;0;L;;;;;N;;;;; -+1226C;CUNEIFORM SIGN NUN CROSSING NUN LAGAR OVER LAGAR;Lo;0;L;;;;;N;;;;; -+1226D;CUNEIFORM SIGN NUNUZ;Lo;0;L;;;;;N;;;;; -+1226E;CUNEIFORM SIGN NUNUZ AB2 TIMES ASHGAB;Lo;0;L;;;;;N;;;;; -+1226F;CUNEIFORM SIGN NUNUZ AB2 TIMES BI;Lo;0;L;;;;;N;;;;; -+12270;CUNEIFORM SIGN NUNUZ AB2 TIMES DUG;Lo;0;L;;;;;N;;;;; -+12271;CUNEIFORM SIGN NUNUZ AB2 TIMES GUD;Lo;0;L;;;;;N;;;;; -+12272;CUNEIFORM SIGN NUNUZ AB2 TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+12273;CUNEIFORM SIGN NUNUZ AB2 TIMES KAD3;Lo;0;L;;;;;N;;;;; -+12274;CUNEIFORM SIGN NUNUZ AB2 TIMES LA;Lo;0;L;;;;;N;;;;; -+12275;CUNEIFORM SIGN NUNUZ AB2 TIMES NE;Lo;0;L;;;;;N;;;;; -+12276;CUNEIFORM SIGN NUNUZ AB2 TIMES SILA3;Lo;0;L;;;;;N;;;;; -+12277;CUNEIFORM SIGN NUNUZ AB2 TIMES U2;Lo;0;L;;;;;N;;;;; -+12278;CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI;Lo;0;L;;;;;N;;;;; -+12279;CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI U;Lo;0;L;;;;;N;;;;; -+1227A;CUNEIFORM SIGN PA;Lo;0;L;;;;;N;;;;; -+1227B;CUNEIFORM SIGN PAD;Lo;0;L;;;;;N;;;;; -+1227C;CUNEIFORM SIGN PAN;Lo;0;L;;;;;N;;;;; -+1227D;CUNEIFORM SIGN PAP;Lo;0;L;;;;;N;;;;; -+1227E;CUNEIFORM SIGN PESH2;Lo;0;L;;;;;N;;;;; -+1227F;CUNEIFORM SIGN PI;Lo;0;L;;;;;N;;;;; -+12280;CUNEIFORM SIGN PI TIMES A;Lo;0;L;;;;;N;;;;; -+12281;CUNEIFORM SIGN PI TIMES AB;Lo;0;L;;;;;N;;;;; -+12282;CUNEIFORM SIGN PI TIMES BI;Lo;0;L;;;;;N;;;;; -+12283;CUNEIFORM SIGN PI TIMES BU;Lo;0;L;;;;;N;;;;; -+12284;CUNEIFORM SIGN PI TIMES E;Lo;0;L;;;;;N;;;;; -+12285;CUNEIFORM SIGN PI TIMES I;Lo;0;L;;;;;N;;;;; -+12286;CUNEIFORM SIGN PI TIMES IB;Lo;0;L;;;;;N;;;;; -+12287;CUNEIFORM SIGN PI TIMES U;Lo;0;L;;;;;N;;;;; -+12288;CUNEIFORM SIGN PI TIMES U2;Lo;0;L;;;;;N;;;;; -+12289;CUNEIFORM SIGN PI CROSSING PI;Lo;0;L;;;;;N;;;;; -+1228A;CUNEIFORM SIGN PIRIG;Lo;0;L;;;;;N;;;;; -+1228B;CUNEIFORM SIGN PIRIG TIMES KAL;Lo;0;L;;;;;N;;;;; -+1228C;CUNEIFORM SIGN PIRIG TIMES UD;Lo;0;L;;;;;N;;;;; -+1228D;CUNEIFORM SIGN PIRIG TIMES ZA;Lo;0;L;;;;;N;;;;; -+1228E;CUNEIFORM SIGN PIRIG OPPOSING PIRIG;Lo;0;L;;;;;N;;;;; -+1228F;CUNEIFORM SIGN RA;Lo;0;L;;;;;N;;;;; -+12290;CUNEIFORM SIGN RAB;Lo;0;L;;;;;N;;;;; -+12291;CUNEIFORM SIGN RI;Lo;0;L;;;;;N;;;;; -+12292;CUNEIFORM SIGN RU;Lo;0;L;;;;;N;;;;; -+12293;CUNEIFORM SIGN SA;Lo;0;L;;;;;N;;;;; -+12294;CUNEIFORM SIGN SAG NUTILLU;Lo;0;L;;;;;N;;;;; -+12295;CUNEIFORM SIGN SAG;Lo;0;L;;;;;N;;;;; -+12296;CUNEIFORM SIGN SAG TIMES A;Lo;0;L;;;;;N;;;;; -+12297;CUNEIFORM SIGN SAG TIMES DU;Lo;0;L;;;;;N;;;;; -+12298;CUNEIFORM SIGN SAG TIMES DUB;Lo;0;L;;;;;N;;;;; -+12299;CUNEIFORM SIGN SAG TIMES HA;Lo;0;L;;;;;N;;;;; -+1229A;CUNEIFORM SIGN SAG TIMES KAK;Lo;0;L;;;;;N;;;;; -+1229B;CUNEIFORM SIGN SAG TIMES KUR;Lo;0;L;;;;;N;;;;; -+1229C;CUNEIFORM SIGN SAG TIMES LUM;Lo;0;L;;;;;N;;;;; -+1229D;CUNEIFORM SIGN SAG TIMES MI;Lo;0;L;;;;;N;;;;; -+1229E;CUNEIFORM SIGN SAG TIMES NUN;Lo;0;L;;;;;N;;;;; -+1229F;CUNEIFORM SIGN SAG TIMES SAL;Lo;0;L;;;;;N;;;;; -+122A0;CUNEIFORM SIGN SAG TIMES SHID;Lo;0;L;;;;;N;;;;; -+122A1;CUNEIFORM SIGN SAG TIMES TAB;Lo;0;L;;;;;N;;;;; -+122A2;CUNEIFORM SIGN SAG TIMES U2;Lo;0;L;;;;;N;;;;; -+122A3;CUNEIFORM SIGN SAG TIMES UB;Lo;0;L;;;;;N;;;;; -+122A4;CUNEIFORM SIGN SAG TIMES UM;Lo;0;L;;;;;N;;;;; -+122A5;CUNEIFORM SIGN SAG TIMES UR;Lo;0;L;;;;;N;;;;; -+122A6;CUNEIFORM SIGN SAG TIMES USH;Lo;0;L;;;;;N;;;;; -+122A7;CUNEIFORM SIGN SAG OVER SAG;Lo;0;L;;;;;N;;;;; -+122A8;CUNEIFORM SIGN SAG GUNU;Lo;0;L;;;;;N;;;;; -+122A9;CUNEIFORM SIGN SAL;Lo;0;L;;;;;N;;;;; -+122AA;CUNEIFORM SIGN SAL LAGAB TIMES ASH2;Lo;0;L;;;;;N;;;;; -+122AB;CUNEIFORM SIGN SANGA2;Lo;0;L;;;;;N;;;;; -+122AC;CUNEIFORM SIGN SAR;Lo;0;L;;;;;N;;;;; -+122AD;CUNEIFORM SIGN SHA;Lo;0;L;;;;;N;;;;; -+122AE;CUNEIFORM SIGN SHA3;Lo;0;L;;;;;N;;;;; -+122AF;CUNEIFORM SIGN SHA3 TIMES A;Lo;0;L;;;;;N;;;;; -+122B0;CUNEIFORM SIGN SHA3 TIMES BAD;Lo;0;L;;;;;N;;;;; -+122B1;CUNEIFORM SIGN SHA3 TIMES GISH;Lo;0;L;;;;;N;;;;; -+122B2;CUNEIFORM SIGN SHA3 TIMES NE;Lo;0;L;;;;;N;;;;; -+122B3;CUNEIFORM SIGN SHA3 TIMES SHU2;Lo;0;L;;;;;N;;;;; -+122B4;CUNEIFORM SIGN SHA3 TIMES TUR;Lo;0;L;;;;;N;;;;; -+122B5;CUNEIFORM SIGN SHA3 TIMES U;Lo;0;L;;;;;N;;;;; -+122B6;CUNEIFORM SIGN SHA3 TIMES U PLUS A;Lo;0;L;;;;;N;;;;; -+122B7;CUNEIFORM SIGN SHA6;Lo;0;L;;;;;N;;;;; -+122B8;CUNEIFORM SIGN SHAB6;Lo;0;L;;;;;N;;;;; -+122B9;CUNEIFORM SIGN SHAR2;Lo;0;L;;;;;N;;;;; -+122BA;CUNEIFORM SIGN SHE;Lo;0;L;;;;;N;;;;; -+122BB;CUNEIFORM SIGN SHE HU;Lo;0;L;;;;;N;;;;; -+122BC;CUNEIFORM SIGN SHE OVER SHE GAD OVER GAD GAR OVER GAR;Lo;0;L;;;;;N;;;;; -+122BD;CUNEIFORM SIGN SHE OVER SHE TAB OVER TAB GAR OVER GAR;Lo;0;L;;;;;N;;;;; -+122BE;CUNEIFORM SIGN SHEG9;Lo;0;L;;;;;N;;;;; -+122BF;CUNEIFORM SIGN SHEN;Lo;0;L;;;;;N;;;;; -+122C0;CUNEIFORM SIGN SHESH;Lo;0;L;;;;;N;;;;; -+122C1;CUNEIFORM SIGN SHESH2;Lo;0;L;;;;;N;;;;; -+122C2;CUNEIFORM SIGN SHESHLAM;Lo;0;L;;;;;N;;;;; -+122C3;CUNEIFORM SIGN SHID;Lo;0;L;;;;;N;;;;; -+122C4;CUNEIFORM SIGN SHID TIMES A;Lo;0;L;;;;;N;;;;; -+122C5;CUNEIFORM SIGN SHID TIMES IM;Lo;0;L;;;;;N;;;;; -+122C6;CUNEIFORM SIGN SHIM;Lo;0;L;;;;;N;;;;; -+122C7;CUNEIFORM SIGN SHIM TIMES A;Lo;0;L;;;;;N;;;;; -+122C8;CUNEIFORM SIGN SHIM TIMES BAL;Lo;0;L;;;;;N;;;;; -+122C9;CUNEIFORM SIGN SHIM TIMES BULUG;Lo;0;L;;;;;N;;;;; -+122CA;CUNEIFORM SIGN SHIM TIMES DIN;Lo;0;L;;;;;N;;;;; -+122CB;CUNEIFORM SIGN SHIM TIMES GAR;Lo;0;L;;;;;N;;;;; -+122CC;CUNEIFORM SIGN SHIM TIMES IGI;Lo;0;L;;;;;N;;;;; -+122CD;CUNEIFORM SIGN SHIM TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -+122CE;CUNEIFORM SIGN SHIM TIMES KUSHU2;Lo;0;L;;;;;N;;;;; -+122CF;CUNEIFORM SIGN SHIM TIMES LUL;Lo;0;L;;;;;N;;;;; -+122D0;CUNEIFORM SIGN SHIM TIMES MUG;Lo;0;L;;;;;N;;;;; -+122D1;CUNEIFORM SIGN SHIM TIMES SAL;Lo;0;L;;;;;N;;;;; -+122D2;CUNEIFORM SIGN SHINIG;Lo;0;L;;;;;N;;;;; -+122D3;CUNEIFORM SIGN SHIR;Lo;0;L;;;;;N;;;;; -+122D4;CUNEIFORM SIGN SHIR TENU;Lo;0;L;;;;;N;;;;; -+122D5;CUNEIFORM SIGN SHIR OVER SHIR BUR OVER BUR;Lo;0;L;;;;;N;;;;; -+122D6;CUNEIFORM SIGN SHITA;Lo;0;L;;;;;N;;;;; -+122D7;CUNEIFORM SIGN SHU;Lo;0;L;;;;;N;;;;; -+122D8;CUNEIFORM SIGN SHU OVER INVERTED SHU;Lo;0;L;;;;;N;;;;; -+122D9;CUNEIFORM SIGN SHU2;Lo;0;L;;;;;N;;;;; -+122DA;CUNEIFORM SIGN SHUBUR;Lo;0;L;;;;;N;;;;; -+122DB;CUNEIFORM SIGN SI;Lo;0;L;;;;;N;;;;; -+122DC;CUNEIFORM SIGN SI GUNU;Lo;0;L;;;;;N;;;;; -+122DD;CUNEIFORM SIGN SIG;Lo;0;L;;;;;N;;;;; -+122DE;CUNEIFORM SIGN SIG4;Lo;0;L;;;;;N;;;;; -+122DF;CUNEIFORM SIGN SIG4 OVER SIG4 SHU2;Lo;0;L;;;;;N;;;;; -+122E0;CUNEIFORM SIGN SIK2;Lo;0;L;;;;;N;;;;; -+122E1;CUNEIFORM SIGN SILA3;Lo;0;L;;;;;N;;;;; -+122E2;CUNEIFORM SIGN SU;Lo;0;L;;;;;N;;;;; -+122E3;CUNEIFORM SIGN SU OVER SU;Lo;0;L;;;;;N;;;;; -+122E4;CUNEIFORM SIGN SUD;Lo;0;L;;;;;N;;;;; -+122E5;CUNEIFORM SIGN SUD2;Lo;0;L;;;;;N;;;;; -+122E6;CUNEIFORM SIGN SUHUR;Lo;0;L;;;;;N;;;;; -+122E7;CUNEIFORM SIGN SUM;Lo;0;L;;;;;N;;;;; -+122E8;CUNEIFORM SIGN SUMASH;Lo;0;L;;;;;N;;;;; -+122E9;CUNEIFORM SIGN SUR;Lo;0;L;;;;;N;;;;; -+122EA;CUNEIFORM SIGN SUR9;Lo;0;L;;;;;N;;;;; -+122EB;CUNEIFORM SIGN TA;Lo;0;L;;;;;N;;;;; -+122EC;CUNEIFORM SIGN TA ASTERISK;Lo;0;L;;;;;N;;;;; -+122ED;CUNEIFORM SIGN TA TIMES HI;Lo;0;L;;;;;N;;;;; -+122EE;CUNEIFORM SIGN TA TIMES MI;Lo;0;L;;;;;N;;;;; -+122EF;CUNEIFORM SIGN TA GUNU;Lo;0;L;;;;;N;;;;; -+122F0;CUNEIFORM SIGN TAB;Lo;0;L;;;;;N;;;;; -+122F1;CUNEIFORM SIGN TAB OVER TAB NI OVER NI DISH OVER DISH;Lo;0;L;;;;;N;;;;; -+122F2;CUNEIFORM SIGN TAB SQUARED;Lo;0;L;;;;;N;;;;; -+122F3;CUNEIFORM SIGN TAG;Lo;0;L;;;;;N;;;;; -+122F4;CUNEIFORM SIGN TAG TIMES BI;Lo;0;L;;;;;N;;;;; -+122F5;CUNEIFORM SIGN TAG TIMES GUD;Lo;0;L;;;;;N;;;;; -+122F6;CUNEIFORM SIGN TAG TIMES SHE;Lo;0;L;;;;;N;;;;; -+122F7;CUNEIFORM SIGN TAG TIMES SHU;Lo;0;L;;;;;N;;;;; -+122F8;CUNEIFORM SIGN TAG TIMES TUG2;Lo;0;L;;;;;N;;;;; -+122F9;CUNEIFORM SIGN TAG TIMES UD;Lo;0;L;;;;;N;;;;; -+122FA;CUNEIFORM SIGN TAK4;Lo;0;L;;;;;N;;;;; -+122FB;CUNEIFORM SIGN TAR;Lo;0;L;;;;;N;;;;; -+122FC;CUNEIFORM SIGN TE;Lo;0;L;;;;;N;;;;; -+122FD;CUNEIFORM SIGN TE GUNU;Lo;0;L;;;;;N;;;;; -+122FE;CUNEIFORM SIGN TI;Lo;0;L;;;;;N;;;;; -+122FF;CUNEIFORM SIGN TI TENU;Lo;0;L;;;;;N;;;;; -+12300;CUNEIFORM SIGN TIL;Lo;0;L;;;;;N;;;;; -+12301;CUNEIFORM SIGN TIR;Lo;0;L;;;;;N;;;;; -+12302;CUNEIFORM SIGN TIR TIMES TAK4;Lo;0;L;;;;;N;;;;; -+12303;CUNEIFORM SIGN TIR OVER TIR;Lo;0;L;;;;;N;;;;; -+12304;CUNEIFORM SIGN TIR OVER TIR GAD OVER GAD GAR OVER GAR;Lo;0;L;;;;;N;;;;; -+12305;CUNEIFORM SIGN TU;Lo;0;L;;;;;N;;;;; -+12306;CUNEIFORM SIGN TUG2;Lo;0;L;;;;;N;;;;; -+12307;CUNEIFORM SIGN TUK;Lo;0;L;;;;;N;;;;; -+12308;CUNEIFORM SIGN TUM;Lo;0;L;;;;;N;;;;; -+12309;CUNEIFORM SIGN TUR;Lo;0;L;;;;;N;;;;; -+1230A;CUNEIFORM SIGN TUR OVER TUR ZA OVER ZA;Lo;0;L;;;;;N;;;;; -+1230B;CUNEIFORM SIGN U;Lo;0;L;;;;;N;;;;; -+1230C;CUNEIFORM SIGN U GUD;Lo;0;L;;;;;N;;;;; -+1230D;CUNEIFORM SIGN U U U;Lo;0;L;;;;;N;;;;; -+1230E;CUNEIFORM SIGN U OVER U PA OVER PA GAR OVER GAR;Lo;0;L;;;;;N;;;;; -+1230F;CUNEIFORM SIGN U OVER U SUR OVER SUR;Lo;0;L;;;;;N;;;;; -+12310;CUNEIFORM SIGN U OVER U U REVERSED OVER U REVERSED;Lo;0;L;;;;;N;;;;; -+12311;CUNEIFORM SIGN U2;Lo;0;L;;;;;N;;;;; -+12312;CUNEIFORM SIGN UB;Lo;0;L;;;;;N;;;;; -+12313;CUNEIFORM SIGN UD;Lo;0;L;;;;;N;;;;; -+12314;CUNEIFORM SIGN UD KUSHU2;Lo;0;L;;;;;N;;;;; -+12315;CUNEIFORM SIGN UD TIMES BAD;Lo;0;L;;;;;N;;;;; -+12316;CUNEIFORM SIGN UD TIMES MI;Lo;0;L;;;;;N;;;;; -+12317;CUNEIFORM SIGN UD TIMES U PLUS U PLUS U;Lo;0;L;;;;;N;;;;; -+12318;CUNEIFORM SIGN UD TIMES U PLUS U PLUS U GUNU;Lo;0;L;;;;;N;;;;; -+12319;CUNEIFORM SIGN UD GUNU;Lo;0;L;;;;;N;;;;; -+1231A;CUNEIFORM SIGN UD SHESHIG;Lo;0;L;;;;;N;;;;; -+1231B;CUNEIFORM SIGN UD SHESHIG TIMES BAD;Lo;0;L;;;;;N;;;;; -+1231C;CUNEIFORM SIGN UDUG;Lo;0;L;;;;;N;;;;; -+1231D;CUNEIFORM SIGN UM;Lo;0;L;;;;;N;;;;; -+1231E;CUNEIFORM SIGN UM TIMES LAGAB;Lo;0;L;;;;;N;;;;; -+1231F;CUNEIFORM SIGN UM TIMES ME PLUS DA;Lo;0;L;;;;;N;;;;; -+12320;CUNEIFORM SIGN UM TIMES SHA3;Lo;0;L;;;;;N;;;;; -+12321;CUNEIFORM SIGN UM TIMES U;Lo;0;L;;;;;N;;;;; -+12322;CUNEIFORM SIGN UMBIN;Lo;0;L;;;;;N;;;;; -+12323;CUNEIFORM SIGN UMUM;Lo;0;L;;;;;N;;;;; -+12324;CUNEIFORM SIGN UMUM TIMES KASKAL;Lo;0;L;;;;;N;;;;; -+12325;CUNEIFORM SIGN UMUM TIMES PA;Lo;0;L;;;;;N;;;;; -+12326;CUNEIFORM SIGN UN;Lo;0;L;;;;;N;;;;; -+12327;CUNEIFORM SIGN UN GUNU;Lo;0;L;;;;;N;;;;; -+12328;CUNEIFORM SIGN UR;Lo;0;L;;;;;N;;;;; -+12329;CUNEIFORM SIGN UR CROSSING UR;Lo;0;L;;;;;N;;;;; -+1232A;CUNEIFORM SIGN UR SHESHIG;Lo;0;L;;;;;N;;;;; -+1232B;CUNEIFORM SIGN UR2;Lo;0;L;;;;;N;;;;; -+1232C;CUNEIFORM SIGN UR2 TIMES A PLUS HA;Lo;0;L;;;;;N;;;;; -+1232D;CUNEIFORM SIGN UR2 TIMES A PLUS NA;Lo;0;L;;;;;N;;;;; -+1232E;CUNEIFORM SIGN UR2 TIMES AL;Lo;0;L;;;;;N;;;;; -+1232F;CUNEIFORM SIGN UR2 TIMES HA;Lo;0;L;;;;;N;;;;; -+12330;CUNEIFORM SIGN UR2 TIMES NUN;Lo;0;L;;;;;N;;;;; -+12331;CUNEIFORM SIGN UR2 TIMES U2;Lo;0;L;;;;;N;;;;; -+12332;CUNEIFORM SIGN UR2 TIMES U2 PLUS ASH;Lo;0;L;;;;;N;;;;; -+12333;CUNEIFORM SIGN UR2 TIMES U2 PLUS BI;Lo;0;L;;;;;N;;;;; -+12334;CUNEIFORM SIGN UR4;Lo;0;L;;;;;N;;;;; -+12335;CUNEIFORM SIGN URI;Lo;0;L;;;;;N;;;;; -+12336;CUNEIFORM SIGN URI3;Lo;0;L;;;;;N;;;;; -+12337;CUNEIFORM SIGN URU;Lo;0;L;;;;;N;;;;; -+12338;CUNEIFORM SIGN URU TIMES A;Lo;0;L;;;;;N;;;;; -+12339;CUNEIFORM SIGN URU TIMES ASHGAB;Lo;0;L;;;;;N;;;;; -+1233A;CUNEIFORM SIGN URU TIMES BAR;Lo;0;L;;;;;N;;;;; -+1233B;CUNEIFORM SIGN URU TIMES DUN;Lo;0;L;;;;;N;;;;; -+1233C;CUNEIFORM SIGN URU TIMES GA;Lo;0;L;;;;;N;;;;; -+1233D;CUNEIFORM SIGN URU TIMES GAL;Lo;0;L;;;;;N;;;;; -+1233E;CUNEIFORM SIGN URU TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -+1233F;CUNEIFORM SIGN URU TIMES GAR;Lo;0;L;;;;;N;;;;; -+12340;CUNEIFORM SIGN URU TIMES GU;Lo;0;L;;;;;N;;;;; -+12341;CUNEIFORM SIGN URU TIMES HA;Lo;0;L;;;;;N;;;;; -+12342;CUNEIFORM SIGN URU TIMES IGI;Lo;0;L;;;;;N;;;;; -+12343;CUNEIFORM SIGN URU TIMES IM;Lo;0;L;;;;;N;;;;; -+12344;CUNEIFORM SIGN URU TIMES ISH;Lo;0;L;;;;;N;;;;; -+12345;CUNEIFORM SIGN URU TIMES KI;Lo;0;L;;;;;N;;;;; -+12346;CUNEIFORM SIGN URU TIMES LUM;Lo;0;L;;;;;N;;;;; -+12347;CUNEIFORM SIGN URU TIMES MIN;Lo;0;L;;;;;N;;;;; -+12348;CUNEIFORM SIGN URU TIMES PA;Lo;0;L;;;;;N;;;;; -+12349;CUNEIFORM SIGN URU TIMES SHE;Lo;0;L;;;;;N;;;;; -+1234A;CUNEIFORM SIGN URU TIMES SIG4;Lo;0;L;;;;;N;;;;; -+1234B;CUNEIFORM SIGN URU TIMES TU;Lo;0;L;;;;;N;;;;; -+1234C;CUNEIFORM SIGN URU TIMES U PLUS GUD;Lo;0;L;;;;;N;;;;; -+1234D;CUNEIFORM SIGN URU TIMES UD;Lo;0;L;;;;;N;;;;; -+1234E;CUNEIFORM SIGN URU TIMES URUDA;Lo;0;L;;;;;N;;;;; -+1234F;CUNEIFORM SIGN URUDA;Lo;0;L;;;;;N;;;;; -+12350;CUNEIFORM SIGN URUDA TIMES U;Lo;0;L;;;;;N;;;;; -+12351;CUNEIFORM SIGN USH;Lo;0;L;;;;;N;;;;; -+12352;CUNEIFORM SIGN USH TIMES A;Lo;0;L;;;;;N;;;;; -+12353;CUNEIFORM SIGN USH TIMES KU;Lo;0;L;;;;;N;;;;; -+12354;CUNEIFORM SIGN USH TIMES KUR;Lo;0;L;;;;;N;;;;; -+12355;CUNEIFORM SIGN USH TIMES TAK4;Lo;0;L;;;;;N;;;;; -+12356;CUNEIFORM SIGN USHX;Lo;0;L;;;;;N;;;;; -+12357;CUNEIFORM SIGN USH2;Lo;0;L;;;;;N;;;;; -+12358;CUNEIFORM SIGN USHUMX;Lo;0;L;;;;;N;;;;; -+12359;CUNEIFORM SIGN UTUKI;Lo;0;L;;;;;N;;;;; -+1235A;CUNEIFORM SIGN UZ3;Lo;0;L;;;;;N;;;;; -+1235B;CUNEIFORM SIGN UZ3 TIMES KASKAL;Lo;0;L;;;;;N;;;;; -+1235C;CUNEIFORM SIGN UZU;Lo;0;L;;;;;N;;;;; -+1235D;CUNEIFORM SIGN ZA;Lo;0;L;;;;;N;;;;; -+1235E;CUNEIFORM SIGN ZA TENU;Lo;0;L;;;;;N;;;;; -+1235F;CUNEIFORM SIGN ZA SQUARED TIMES KUR;Lo;0;L;;;;;N;;;;; -+12360;CUNEIFORM SIGN ZAG;Lo;0;L;;;;;N;;;;; -+12361;CUNEIFORM SIGN ZAMX;Lo;0;L;;;;;N;;;;; -+12362;CUNEIFORM SIGN ZE2;Lo;0;L;;;;;N;;;;; -+12363;CUNEIFORM SIGN ZI;Lo;0;L;;;;;N;;;;; -+12364;CUNEIFORM SIGN ZI OVER ZI;Lo;0;L;;;;;N;;;;; -+12365;CUNEIFORM SIGN ZI3;Lo;0;L;;;;;N;;;;; -+12366;CUNEIFORM SIGN ZIB;Lo;0;L;;;;;N;;;;; -+12367;CUNEIFORM SIGN ZIB KABA TENU;Lo;0;L;;;;;N;;;;; -+12368;CUNEIFORM SIGN ZIG;Lo;0;L;;;;;N;;;;; -+12369;CUNEIFORM SIGN ZIZ2;Lo;0;L;;;;;N;;;;; -+1236A;CUNEIFORM SIGN ZU;Lo;0;L;;;;;N;;;;; -+1236B;CUNEIFORM SIGN ZU5;Lo;0;L;;;;;N;;;;; -+1236C;CUNEIFORM SIGN ZU5 TIMES A;Lo;0;L;;;;;N;;;;; -+1236D;CUNEIFORM SIGN ZUBUR;Lo;0;L;;;;;N;;;;; -+1236E;CUNEIFORM SIGN ZUM;Lo;0;L;;;;;N;;;;; -+12400;CUNEIFORM NUMERIC SIGN TWO ASH;Nl;0;L;;;;2;N;;;;; -+12401;CUNEIFORM NUMERIC SIGN THREE ASH;Nl;0;L;;;;3;N;;;;; -+12402;CUNEIFORM NUMERIC SIGN FOUR ASH;Nl;0;L;;;;4;N;;;;; -+12403;CUNEIFORM NUMERIC SIGN FIVE ASH;Nl;0;L;;;;5;N;;;;; -+12404;CUNEIFORM NUMERIC SIGN SIX ASH;Nl;0;L;;;;6;N;;;;; -+12405;CUNEIFORM NUMERIC SIGN SEVEN ASH;Nl;0;L;;;;7;N;;;;; -+12406;CUNEIFORM NUMERIC SIGN EIGHT ASH;Nl;0;L;;;;8;N;;;;; -+12407;CUNEIFORM NUMERIC SIGN NINE ASH;Nl;0;L;;;;9;N;;;;; -+12408;CUNEIFORM NUMERIC SIGN THREE DISH;Nl;0;L;;;;3;N;;;;; -+12409;CUNEIFORM NUMERIC SIGN FOUR DISH;Nl;0;L;;;;4;N;;;;; -+1240A;CUNEIFORM NUMERIC SIGN FIVE DISH;Nl;0;L;;;;5;N;;;;; -+1240B;CUNEIFORM NUMERIC SIGN SIX DISH;Nl;0;L;;;;6;N;;;;; -+1240C;CUNEIFORM NUMERIC SIGN SEVEN DISH;Nl;0;L;;;;7;N;;;;; -+1240D;CUNEIFORM NUMERIC SIGN EIGHT DISH;Nl;0;L;;;;8;N;;;;; -+1240E;CUNEIFORM NUMERIC SIGN NINE DISH;Nl;0;L;;;;9;N;;;;; -+1240F;CUNEIFORM NUMERIC SIGN FOUR U;Nl;0;L;;;;4;N;;;;; -+12410;CUNEIFORM NUMERIC SIGN FIVE U;Nl;0;L;;;;5;N;;;;; -+12411;CUNEIFORM NUMERIC SIGN SIX U;Nl;0;L;;;;6;N;;;;; -+12412;CUNEIFORM NUMERIC SIGN SEVEN U;Nl;0;L;;;;7;N;;;;; -+12413;CUNEIFORM NUMERIC SIGN EIGHT U;Nl;0;L;;;;8;N;;;;; -+12414;CUNEIFORM NUMERIC SIGN NINE U;Nl;0;L;;;;9;N;;;;; -+12415;CUNEIFORM NUMERIC SIGN ONE GESH2;Nl;0;L;;;;1;N;;;;; -+12416;CUNEIFORM NUMERIC SIGN TWO GESH2;Nl;0;L;;;;2;N;;;;; -+12417;CUNEIFORM NUMERIC SIGN THREE GESH2;Nl;0;L;;;;3;N;;;;; -+12418;CUNEIFORM NUMERIC SIGN FOUR GESH2;Nl;0;L;;;;4;N;;;;; -+12419;CUNEIFORM NUMERIC SIGN FIVE GESH2;Nl;0;L;;;;5;N;;;;; -+1241A;CUNEIFORM NUMERIC SIGN SIX GESH2;Nl;0;L;;;;6;N;;;;; -+1241B;CUNEIFORM NUMERIC SIGN SEVEN GESH2;Nl;0;L;;;;7;N;;;;; -+1241C;CUNEIFORM NUMERIC SIGN EIGHT GESH2;Nl;0;L;;;;8;N;;;;; -+1241D;CUNEIFORM NUMERIC SIGN NINE GESH2;Nl;0;L;;;;9;N;;;;; -+1241E;CUNEIFORM NUMERIC SIGN ONE GESHU;Nl;0;L;;;;1;N;;;;; -+1241F;CUNEIFORM NUMERIC SIGN TWO GESHU;Nl;0;L;;;;2;N;;;;; -+12420;CUNEIFORM NUMERIC SIGN THREE GESHU;Nl;0;L;;;;3;N;;;;; -+12421;CUNEIFORM NUMERIC SIGN FOUR GESHU;Nl;0;L;;;;4;N;;;;; -+12422;CUNEIFORM NUMERIC SIGN FIVE GESHU;Nl;0;L;;;;5;N;;;;; -+12423;CUNEIFORM NUMERIC SIGN TWO SHAR2;Nl;0;L;;;;2;N;;;;; -+12424;CUNEIFORM NUMERIC SIGN THREE SHAR2;Nl;0;L;;;;3;N;;;;; -+12425;CUNEIFORM NUMERIC SIGN THREE SHAR2 VARIANT FORM;Nl;0;L;;;;3;N;;;;; -+12426;CUNEIFORM NUMERIC SIGN FOUR SHAR2;Nl;0;L;;;;4;N;;;;; -+12427;CUNEIFORM NUMERIC SIGN FIVE SHAR2;Nl;0;L;;;;5;N;;;;; -+12428;CUNEIFORM NUMERIC SIGN SIX SHAR2;Nl;0;L;;;;6;N;;;;; -+12429;CUNEIFORM NUMERIC SIGN SEVEN SHAR2;Nl;0;L;;;;7;N;;;;; -+1242A;CUNEIFORM NUMERIC SIGN EIGHT SHAR2;Nl;0;L;;;;8;N;;;;; -+1242B;CUNEIFORM NUMERIC SIGN NINE SHAR2;Nl;0;L;;;;9;N;;;;; -+1242C;CUNEIFORM NUMERIC SIGN ONE SHARU;Nl;0;L;;;;1;N;;;;; -+1242D;CUNEIFORM NUMERIC SIGN TWO SHARU;Nl;0;L;;;;2;N;;;;; -+1242E;CUNEIFORM NUMERIC SIGN THREE SHARU;Nl;0;L;;;;3;N;;;;; -+1242F;CUNEIFORM NUMERIC SIGN THREE SHARU VARIANT FORM;Nl;0;L;;;;3;N;;;;; -+12430;CUNEIFORM NUMERIC SIGN FOUR SHARU;Nl;0;L;;;;4;N;;;;; -+12431;CUNEIFORM NUMERIC SIGN FIVE SHARU;Nl;0;L;;;;5;N;;;;; -+12432;CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS DISH;Nl;0;L;;;;;N;;;;; -+12433;CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS MIN;Nl;0;L;;;;;N;;;;; -+12434;CUNEIFORM NUMERIC SIGN ONE BURU;Nl;0;L;;;;1;N;;;;; -+12435;CUNEIFORM NUMERIC SIGN TWO BURU;Nl;0;L;;;;2;N;;;;; -+12436;CUNEIFORM NUMERIC SIGN THREE BURU;Nl;0;L;;;;3;N;;;;; -+12437;CUNEIFORM NUMERIC SIGN THREE BURU VARIANT FORM;Nl;0;L;;;;3;N;;;;; -+12438;CUNEIFORM NUMERIC SIGN FOUR BURU;Nl;0;L;;;;4;N;;;;; -+12439;CUNEIFORM NUMERIC SIGN FIVE BURU;Nl;0;L;;;;5;N;;;;; -+1243A;CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH16;Nl;0;L;;;;3;N;;;;; -+1243B;CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH21;Nl;0;L;;;;3;N;;;;; -+1243C;CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU;Nl;0;L;;;;4;N;;;;; -+1243D;CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU4;Nl;0;L;;;;4;N;;;;; -+1243E;CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU A;Nl;0;L;;;;4;N;;;;; -+1243F;CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU B;Nl;0;L;;;;4;N;;;;; -+12440;CUNEIFORM NUMERIC SIGN SIX VARIANT FORM ASH9;Nl;0;L;;;;6;N;;;;; -+12441;CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN3;Nl;0;L;;;;7;N;;;;; -+12442;CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN A;Nl;0;L;;;;7;N;;;;; -+12443;CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN B;Nl;0;L;;;;7;N;;;;; -+12444;CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU;Nl;0;L;;;;8;N;;;;; -+12445;CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU3;Nl;0;L;;;;8;N;;;;; -+12446;CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU;Nl;0;L;;;;9;N;;;;; -+12447;CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU3;Nl;0;L;;;;9;N;;;;; -+12448;CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU4;Nl;0;L;;;;9;N;;;;; -+12449;CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU A;Nl;0;L;;;;9;N;;;;; -+1244A;CUNEIFORM NUMERIC SIGN TWO ASH TENU;Nl;0;L;;;;2;N;;;;; -+1244B;CUNEIFORM NUMERIC SIGN THREE ASH TENU;Nl;0;L;;;;3;N;;;;; -+1244C;CUNEIFORM NUMERIC SIGN FOUR ASH TENU;Nl;0;L;;;;4;N;;;;; -+1244D;CUNEIFORM NUMERIC SIGN FIVE ASH TENU;Nl;0;L;;;;5;N;;;;; -+1244E;CUNEIFORM NUMERIC SIGN SIX ASH TENU;Nl;0;L;;;;6;N;;;;; -+1244F;CUNEIFORM NUMERIC SIGN ONE BAN2;Nl;0;L;;;;1;N;;;;; -+12450;CUNEIFORM NUMERIC SIGN TWO BAN2;Nl;0;L;;;;2;N;;;;; -+12451;CUNEIFORM NUMERIC SIGN THREE BAN2;Nl;0;L;;;;3;N;;;;; -+12452;CUNEIFORM NUMERIC SIGN FOUR BAN2;Nl;0;L;;;;4;N;;;;; -+12453;CUNEIFORM NUMERIC SIGN FOUR BAN2 VARIANT FORM;Nl;0;L;;;;4;N;;;;; -+12454;CUNEIFORM NUMERIC SIGN FIVE BAN2;Nl;0;L;;;;5;N;;;;; -+12455;CUNEIFORM NUMERIC SIGN FIVE BAN2 VARIANT FORM;Nl;0;L;;;;5;N;;;;; -+12456;CUNEIFORM NUMERIC SIGN NIGIDAMIN;Nl;0;L;;;;;N;;;;; -+12457;CUNEIFORM NUMERIC SIGN NIGIDAESH;Nl;0;L;;;;;N;;;;; -+12458;CUNEIFORM NUMERIC SIGN ONE ESHE3;Nl;0;L;;;;1;N;;;;; -+12459;CUNEIFORM NUMERIC SIGN TWO ESHE3;Nl;0;L;;;;2;N;;;;; -+1245A;CUNEIFORM NUMERIC SIGN ONE THIRD DISH;Nl;0;L;;;;1/3;N;;;;; -+1245B;CUNEIFORM NUMERIC SIGN TWO THIRDS DISH;Nl;0;L;;;;2/3;N;;;;; -+1245C;CUNEIFORM NUMERIC SIGN FIVE SIXTHS DISH;Nl;0;L;;;;5/6;N;;;;; -+1245D;CUNEIFORM NUMERIC SIGN ONE THIRD VARIANT FORM A;Nl;0;L;;;;1/3;N;;;;; -+1245E;CUNEIFORM NUMERIC SIGN TWO THIRDS VARIANT FORM A;Nl;0;L;;;;2/3;N;;;;; -+1245F;CUNEIFORM NUMERIC SIGN ONE EIGHTH ASH;Nl;0;L;;;;1/8;N;;;;; -+12460;CUNEIFORM NUMERIC SIGN ONE QUARTER ASH;Nl;0;L;;;;1/4;N;;;;; -+12461;CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE SIXTH;Nl;0;L;;;;1/6;N;;;;; -+12462;CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER;Nl;0;L;;;;1/4;N;;;;; -+12470;CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER;Po;0;L;;;;;N;;;;; -+12471;CUNEIFORM PUNCTUATION SIGN VERTICAL COLON;Po;0;L;;;;;N;;;;; -+12472;CUNEIFORM PUNCTUATION SIGN DIAGONAL COLON;Po;0;L;;;;;N;;;;; -+12473;CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON;Po;0;L;;;;;N;;;;; - 1D000;BYZANTINE MUSICAL SYMBOL PSILI;So;0;L;;;;;N;;;;; - 1D001;BYZANTINE MUSICAL SYMBOL DASEIA;So;0;L;;;;;N;;;;; - 1D002;BYZANTINE MUSICAL SYMBOL PERISPOMENI;So;0;L;;;;;N;;;;; -@@ -14383,12 +15732,12 @@ - 1D243;COMBINING GREEK MUSICAL TETRASEME;Mn;230;NSM;;;;;N;;;;; - 1D244;COMBINING GREEK MUSICAL PENTASEME;Mn;230;NSM;;;;;N;;;;; - 1D245;GREEK MUSICAL LEIMMA;So;0;ON;;;;;N;;;;; --1D300;MONOGRAM FOR EARTH;So;0;ON;;;;;N;;;;; --1D301;DIGRAM FOR HEAVENLY EARTH;So;0;ON;;;;;N;;;;; --1D302;DIGRAM FOR HUMAN EARTH;So;0;ON;;;;;N;;;;; --1D303;DIGRAM FOR EARTHLY HEAVEN;So;0;ON;;;;;N;;;;; --1D304;DIGRAM FOR EARTHLY HUMAN;So;0;ON;;;;;N;;;;; --1D305;DIGRAM FOR EARTH;So;0;ON;;;;;N;;;;; -+1D300;MONOGRAM FOR EARTH;So;0;ON;;;;;N;;ren *;;; -+1D301;DIGRAM FOR HEAVENLY EARTH;So;0;ON;;;;;N;;tian ren *;;; -+1D302;DIGRAM FOR HUMAN EARTH;So;0;ON;;;;;N;;di ren *;;; -+1D303;DIGRAM FOR EARTHLY HEAVEN;So;0;ON;;;;;N;;ren tian *;;; -+1D304;DIGRAM FOR EARTHLY HUMAN;So;0;ON;;;;;N;;ren di *;;; -+1D305;DIGRAM FOR EARTH;So;0;ON;;;;;N;;ren ren *;;; - 1D306;TETRAGRAM FOR CENTRE;So;0;ON;;;;;N;;;;; - 1D307;TETRAGRAM FOR FULL CIRCLE;So;0;ON;;;;;N;;;;; - 1D308;TETRAGRAM FOR MIRED;So;0;ON;;;;;N;;;;; -@@ -14470,6 +15819,24 @@ - 1D354;TETRAGRAM FOR DIFFICULTIES;So;0;ON;;;;;N;;;;; - 1D355;TETRAGRAM FOR LABOURING;So;0;ON;;;;;N;;;;; - 1D356;TETRAGRAM FOR FOSTERING;So;0;ON;;;;;N;;;;; -+1D360;COUNTING ROD UNIT DIGIT ONE;No;0;L;;;;1;N;;;;; -+1D361;COUNTING ROD UNIT DIGIT TWO;No;0;L;;;;2;N;;;;; -+1D362;COUNTING ROD UNIT DIGIT THREE;No;0;L;;;;3;N;;;;; -+1D363;COUNTING ROD UNIT DIGIT FOUR;No;0;L;;;;4;N;;;;; -+1D364;COUNTING ROD UNIT DIGIT FIVE;No;0;L;;;;5;N;;;;; -+1D365;COUNTING ROD UNIT DIGIT SIX;No;0;L;;;;6;N;;;;; -+1D366;COUNTING ROD UNIT DIGIT SEVEN;No;0;L;;;;7;N;;;;; -+1D367;COUNTING ROD UNIT DIGIT EIGHT;No;0;L;;;;8;N;;;;; -+1D368;COUNTING ROD UNIT DIGIT NINE;No;0;L;;;;9;N;;;;; -+1D369;COUNTING ROD TENS DIGIT ONE;No;0;L;;;;10;N;;;;; -+1D36A;COUNTING ROD TENS DIGIT TWO;No;0;L;;;;20;N;;;;; -+1D36B;COUNTING ROD TENS DIGIT THREE;No;0;L;;;;30;N;;;;; -+1D36C;COUNTING ROD TENS DIGIT FOUR;No;0;L;;;;40;N;;;;; -+1D36D;COUNTING ROD TENS DIGIT FIVE;No;0;L;;;;50;N;;;;; -+1D36E;COUNTING ROD TENS DIGIT SIX;No;0;L;;;;60;N;;;;; -+1D36F;COUNTING ROD TENS DIGIT SEVEN;No;0;L;;;;70;N;;;;; -+1D370;COUNTING ROD TENS DIGIT EIGHT;No;0;L;;;;80;N;;;;; -+1D371;COUNTING ROD TENS DIGIT NINE;No;0;L;;;;90;N;;;;; - 1D400;MATHEMATICAL BOLD CAPITAL A;Lu;0;L; 0041;;;;N;;;;; - 1D401;MATHEMATICAL BOLD CAPITAL B;Lu;0;L; 0042;;;;N;;;;; - 1D402;MATHEMATICAL BOLD CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -@@ -15175,7 +16542,7 @@ - 1D6D8;MATHEMATICAL BOLD SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; - 1D6D9;MATHEMATICAL BOLD SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; - 1D6DA;MATHEMATICAL BOLD SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; --1D6DB;MATHEMATICAL BOLD PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;N;;;;; -+1D6DB;MATHEMATICAL BOLD PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;Y;;;;; - 1D6DC;MATHEMATICAL BOLD EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; - 1D6DD;MATHEMATICAL BOLD THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; - 1D6DE;MATHEMATICAL BOLD KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -@@ -15233,7 +16600,7 @@ - 1D712;MATHEMATICAL ITALIC SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; - 1D713;MATHEMATICAL ITALIC SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; - 1D714;MATHEMATICAL ITALIC SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; --1D715;MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;N;;;;; -+1D715;MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;Y;;;;; - 1D716;MATHEMATICAL ITALIC EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; - 1D717;MATHEMATICAL ITALIC THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; - 1D718;MATHEMATICAL ITALIC KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -@@ -15291,7 +16658,7 @@ - 1D74C;MATHEMATICAL BOLD ITALIC SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; - 1D74D;MATHEMATICAL BOLD ITALIC SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; - 1D74E;MATHEMATICAL BOLD ITALIC SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; --1D74F;MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;N;;;;; -+1D74F;MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;Y;;;;; - 1D750;MATHEMATICAL BOLD ITALIC EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; - 1D751;MATHEMATICAL BOLD ITALIC THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; - 1D752;MATHEMATICAL BOLD ITALIC KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -@@ -15349,7 +16716,7 @@ - 1D786;MATHEMATICAL SANS-SERIF BOLD SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; - 1D787;MATHEMATICAL SANS-SERIF BOLD SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; - 1D788;MATHEMATICAL SANS-SERIF BOLD SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; --1D789;MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;N;;;;; -+1D789;MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;Y;;;;; - 1D78A;MATHEMATICAL SANS-SERIF BOLD EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; - 1D78B;MATHEMATICAL SANS-SERIF BOLD THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; - 1D78C;MATHEMATICAL SANS-SERIF BOLD KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -@@ -15407,13 +16774,15 @@ - 1D7C0;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; - 1D7C1;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; - 1D7C2;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; --1D7C3;MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;N;;;;; -+1D7C3;MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;L; 2202;;;;Y;;;;; - 1D7C4;MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; - 1D7C5;MATHEMATICAL SANS-SERIF BOLD ITALIC THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; - 1D7C6;MATHEMATICAL SANS-SERIF BOLD ITALIC KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; - 1D7C7;MATHEMATICAL SANS-SERIF BOLD ITALIC PHI SYMBOL;Ll;0;L; 03D5;;;;N;;;;; - 1D7C8;MATHEMATICAL SANS-SERIF BOLD ITALIC RHO SYMBOL;Ll;0;L; 03F1;;;;N;;;;; - 1D7C9;MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL;Ll;0;L; 03D6;;;;N;;;;; -+1D7CA;MATHEMATICAL BOLD CAPITAL DIGAMMA;Lu;0;L; 03DC;;;;N;;;;; -+1D7CB;MATHEMATICAL BOLD SMALL DIGAMMA;Ll;0;L; 03DD;;;;N;;;;; - 1D7CE;MATHEMATICAL BOLD DIGIT ZERO;Nd;0;EN; 0030;0;0;0;N;;;;; - 1D7CF;MATHEMATICAL BOLD DIGIT ONE;Nd;0;EN; 0031;1;1;1;N;;;;; - 1D7D0;MATHEMATICAL BOLD DIGIT TWO;Nd;0;EN; 0032;2;2;2;N;;;;; -diff -r -u perl-5.8.8/lib/unicore/version perl-5.8.8.patched/lib/unicore/version ---- perl-5.8.8/lib/unicore/version 2005-04-08 07:31:04.000000000 -0400 -+++ perl-5.8.8.patched/lib/unicore/version 2006-09-15 14:12:05.608121000 -0400 -@@ -1 +1 @@ --4.1.0 -+5.0.0 -diff -r -u perl-5.8.8/MANIFEST perl-5.8.8.patched/MANIFEST ---- perl-5.8.8/MANIFEST 2006-01-31 18:27:53.000000000 -0500 -+++ perl-5.8.8.patched/MANIFEST 2006-09-15 14:12:05.611121000 -0400 -@@ -2079,6 +2079,7 @@ - lib/unicore/Makefile Unicode character database - lib/unicore/mktables Unicode character database generator - lib/unicore/mktables.lst File list for mktables -+lib/unicore/NamedSqProv.txt Unicode character database - lib/unicore/NamedSequences.txt Unicode character database - lib/unicore/NamesList.txt Unicode character database - lib/unicore/NormalizationCorrections.txt Unicode character database -diff -r -u perl-5.8.8/regexec.c perl-5.8.8.patched/regexec.c ---- perl-5.8.8/regexec.c 2006-01-08 15:59:30.000000000 -0500 -+++ perl-5.8.8.patched/regexec.c 2006-09-15 14:14:21.230235000 -0400 -@@ -4396,8 +4396,15 @@ - c = utf8n_to_uvchr((U8 *)p, UTF8_MAXBYTES, &len, - ckWARN(WARN_UTF8) ? UTF8_CHECK_ONLY : - UTF8_ALLOW_ANYUV|UTF8_CHECK_ONLY); -- if (len == (STRLEN)-1) -- Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)"); -+ if (len == (STRLEN)-1) { -+ int i; -+ PerlIO_printf(Perl_debug_log, "utf8: "); -+ for (i = 0; i < 4; i++) -+ PerlIO_printf(Perl_debug_log, "\\x%02x", p[i]); -+ PerlIO_printf(Perl_debug_log, "\n"); -+ Perl_warner(aTHX_ packWARN(WARN_REGEXP), "Malformed UTF-8 character"); -+ /* Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)"); */ -+ } - } - - plen = lenp ? *lenp : UNISKIP(NATIVE_TO_UNI(c)); -diff -r -u perl-5.8.8/t/uni/class.t perl-5.8.8.patched/t/uni/class.t ---- perl-5.8.8/t/uni/class.t 2005-06-30 06:27:20.000000000 -0400 -+++ perl-5.8.8.patched/t/uni/class.t 2006-09-15 14:12:05.617120000 -0400 -@@ -4,7 +4,7 @@ - require "test.pl"; - } - --plan tests => 4670; -+plan tests => 4784; - - sub MyUniClass { - <starttry) -@@ -161,6 +162,7 @@ - #define RExC_seen_zerolen (pRExC_state->seen_zerolen) - #define RExC_seen_evals (pRExC_state->seen_evals) - #define RExC_utf8 (pRExC_state->utf8) -+#define RExC_orig_utf8 (pRExC_state->orig_utf8) - - #define ISMULT1(c) ((c) == '*' || (c) == '+' || (c) == '?') - #define ISMULT2(s) ((*s) == '*' || (*s) == '+' || (*s) == '?' || \ -@@ -1749,15 +1751,17 @@ - if (exp == NULL) - FAIL("NULL regexp argument"); - -- RExC_utf8 = pm->op_pmdynflags & PMdf_CMP_UTF8; -+ RExC_orig_utf8 = RExC_utf8 = pm->op_pmdynflags & PMdf_CMP_UTF8; - -- RExC_precomp = exp; - DEBUG_r({ - if (!PL_colorset) reginitcolors(); - PerlIO_printf(Perl_debug_log, "%sCompiling REx%s `%s%*s%s'\n", - PL_colors[4],PL_colors[5],PL_colors[0], -- (int)(xend - exp), RExC_precomp, PL_colors[1]); -+ (int)(xend - exp), exp, PL_colors[1]); - }); -+ -+redo_first_pass: -+ RExC_precomp = exp; - RExC_flags = pm->op_pmflags; - RExC_sawback = 0; - -@@ -1783,6 +1787,17 @@ - RExC_precomp = Nullch; - return(NULL); - } -+ if (RExC_utf8 && !RExC_orig_utf8) { -+ STRLEN len = xend-exp; -+ DEBUG_r(PerlIO_printf(Perl_debug_log, -+ "UTF8 mismatch! Converting to utf8 for resizing and compile\n")); -+ exp = (char*)Perl_bytes_to_utf8(aTHX_ (U8*)exp, &len); -+ xend = exp + len; -+ RExC_orig_utf8 = RExC_utf8; -+ SAVEFREEPV(exp); -+ goto redo_first_pass; -+ } -+ - DEBUG_r(PerlIO_printf(Perl_debug_log, "size %"IVdf" ", (IV)RExC_size)); - - /* Small enough for pointer-storage convention? diff --git a/perl-5.8.8-dashI.patch b/perl-5.8.8-dashI.patch deleted file mode 100644 index 8a07a77..0000000 --- a/perl-5.8.8-dashI.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.8-RC1/perl.c.dashI 2006-01-08 09:36:17.000000000 -0500 -+++ perl-5.8.8-RC1/perl.c 2006-01-20 14:42:43.000000000 -0500 -@@ -1755,7 +1755,7 @@ - if (s && *s) { - STRLEN len = strlen(s); - const char * const p = savepvn(s, len); -- incpush(p, TRUE, TRUE, FALSE); -+ incpush(p, FALSE, FALSE, FALSE); - sv_catpvn(sv, "-I", 2); - sv_catpvn(sv, p, len); - sv_catpvn(sv, " ", 1); diff --git a/perl-5.8.8-debian_fix_net_nntp.patch b/perl-5.8.8-debian_fix_net_nntp.patch deleted file mode 100644 index 86dd8d7..0000000 --- a/perl-5.8.8-debian_fix_net_nntp.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.8/lib/Net/NNTP.pm.debian_fix_net_nntp.patch 2004-05-06 09:36:05.000000000 -0400 -+++ perl-5.8.8/lib/Net/NNTP.pm 2006-02-10 14:01:30.000000000 -0500 -@@ -120,7 +120,7 @@ - my $nntp = shift; - my @fh; - -- @fh = (pop) if @_ == 2 || (@_ && ref($_[0]) || ref(\$_[0]) eq 'GLOB'); -+ @fh = (pop) if @_ == 2 || (@_ && (ref($_[0]) || ref(\$_[0]) eq 'GLOB')); - - $nntp->_ARTICLE(@_) - ? $nntp->read_until_dot(@fh) diff --git a/perl-5.8.8-disable_test_hosts.patch b/perl-5.8.8-disable_test_hosts.patch deleted file mode 100644 index c88babb..0000000 --- a/perl-5.8.8-disable_test_hosts.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.8/lib/Net/Config.pm.orig 2007-05-07 12:35:45.000000000 -0400 -+++ perl-5.8.8/lib/Net/Config.pm 2007-05-07 12:40:56.000000000 -0400 -@@ -29,7 +29,7 @@ - ftp_firewall => undef, - ftp_ext_passive => 0, - ftp_int_passive => 0, -- test_hosts => 1, -+ test_hosts => 0, - test_exist => 1, - ); - diff --git a/perl-5.8.8-incpush.patch b/perl-5.8.8-incpush.patch deleted file mode 100644 index 9aded40..0000000 --- a/perl-5.8.8-incpush.patch +++ /dev/null @@ -1,63 +0,0 @@ ---- perl-5.8.7/perl.c.orig 2005-04-22 17:14:27.000000000 +0300 -+++ perl-5.8.7/perl.c 2005-06-17 22:31:31.000000000 +0300 -@@ -109,6 +109,7 @@ - #endif - - static I32 read_e_script(pTHX_ int idx, SV *buf_sv, int maxlen); -+STATIC void incpush_oldversion(pTHX_ char *dir); - - #ifdef IAMSUID - #ifndef DOSUID -@@ -4435,6 +4436,7 @@ - * DLL-based path intuition to work correctly */ - # if !defined(WIN32) - incpush(SITEARCH_EXP, FALSE, FALSE, TRUE); -+ incpush_oldversion(aTHX_ SITEARCH_EXP); - # endif - #endif - -@@ -4456,6 +4458,7 @@ - * DLL-based path intuition to work correctly */ - # if !defined(WIN32) - incpush(PERL_VENDORARCH_EXP, FALSE, FALSE, TRUE); -+ incpush_oldversion(aTHX_ PERL_VENDORARCH_EXP); - # endif - #endif - -@@ -4497,6 +4500,36 @@ - # define PERLLIB_MANGLE(s,n) (s) - #endif - -+#define VERSION_DIRECTORY_STRING "/" STRINGIFY(PERL_REVISION) "." STRINGIFY(PERL_VERSION) "." STRINGIFY(PERL_SUBVERSION) -+STATIC void -+incpush_oldversion(pTHX_ char *dir) -+{ -+#ifdef PERL_INC_VERSION_LIST -+ const char *incverlist[] = { PERL_INC_VERSION_LIST }; -+ const char **incver; -+ const char *verdir; -+ -+ verdir = strstr(dir, VERSION_DIRECTORY_STRING); -+ if (!verdir) -+ return; -+ -+ for (incver = incverlist; *incver; incver++) { -+ char *new_dir = malloc(strlen(dir) + strlen(*incver) + 2); -+ char *p = new_dir; -+ -+ strcpy(new_dir, dir); -+ p += verdir - dir + 1; /* advance to char following '/' in VERSION_DIRECTORY_STRING */ -+ memcpy(p, *incver, strlen(*incver)); /* copy incver there instead */ -+ p += strlen(*incver); /* advance past version we just copied */ -+ strcpy(p, verdir + strlen(VERSION_DIRECTORY_STRING)); /* and copy the rest of the original dir */ -+ -+ incpush(new_dir, FALSE, FALSE, FALSE); -+ free(new_dir); -+ } -+#endif -+} -+ -+ - /* Push a directory onto @INC if it exists. - Generate a new SV if we do this, to save needing to copy the SV we push - onto @INC */ diff --git a/perl-5.8.8-no_asm_page_h.patch b/perl-5.8.8-no_asm_page_h.patch deleted file mode 100644 index e3d27cf..0000000 --- a/perl-5.8.8-no_asm_page_h.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- perl-5.8.8/ext/IPC/SysV/SysV.xs.no_asm_page_h 2001-06-30 14:46:07.000000000 -0400 -+++ perl-5.8.8/ext/IPC/SysV/SysV.xs 2006-06-02 17:37:22.000000000 -0400 -@@ -3,9 +3,6 @@ - #include "XSUB.h" - - #include --#ifdef __linux__ --# include --#endif - #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) - #ifndef HAS_SEM - # include diff --git a/perl-5.8.8-perlbug-tag-A.patch b/perl-5.8.8-perlbug-tag-A.patch deleted file mode 100644 index 859f863..0000000 --- a/perl-5.8.8-perlbug-tag-A.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- perl-5.8.8-RC1/utils/perlbug.PL.perlbug 2006-01-03 14:07:41.000000000 -0500 -+++ perl-5.8.8-RC1/utils/perlbug.PL 2006-01-20 14:33:26.000000000 -0500 -@@ -71,7 +71,7 @@ - eval 'exec $Config{perlpath} -S \$0 \${1+"\$@"}' - if \$running_under_some_shell; - --my \$config_tag1 = '$extract_version - $Config{cf_time}'; -+my \$config_tag1 = '$extract_version'; - - my \$patchlevel_date = $patchlevel_date; - my \$patch_tags = '$patch_tags'; -@@ -287,18 +287,9 @@ - # OK - send "OK" report for build on this system - $ok = 0; - if ($::opt_o) { -- if ($::opt_o eq 'k' or $::opt_o eq 'kay') { -- my $age = time - $patchlevel_date; -- if ($::opt_o eq 'k' and $age > 60 * 24 * 60 * 60 ) { -- my $date = localtime $patchlevel_date; -- print <<"EOF"; --"perlbug -ok" and "perlbug -nok" do not report on Perl versions which --are more than 60 days old. This Perl version was constructed on --$date. If you really want to report this, use --"perlbug -okay" or "perlbug -nokay". --EOF -- exit(); -- } -+ # -+ # Red Hat modification: remove -ok / -nok refusal to report due to age -+ # - # force these options - unless ($::opt_n) { - $::opt_S = 1; # don't prompt for send -@@ -605,7 +596,7 @@ - print OUT <) { -@@ -71,9 +70,8 @@ - eval 'exec $Config{perlpath} -S \$0 \${1+"\$@"}' - if \$running_under_some_shell; - --my \$config_tag1 = '$extract_version - $Config{cf_time}'; -+my \$config_tag1 = '$extract_version'; - --my \$patchlevel_date = $patchlevel_date; - my \$patch_tags = '$patch_tags'; - my \@patches = ( - $patch_desc -@@ -288,17 +286,6 @@ - $ok = 0; - if ($::opt_o) { - if ($::opt_o eq 'k' or $::opt_o eq 'kay') { -- my $age = time - $patchlevel_date; -- if ($::opt_o eq 'k' and $age > 60 * 24 * 60 * 60 ) { -- my $date = localtime $patchlevel_date; -- print <<"EOF"; --"perlbug -ok" and "perlbug -nok" do not report on Perl versions which --are more than 60 days old. This Perl version was constructed on --$date. If you really want to report this, use --"perlbug -okay" or "perlbug -nokay". --EOF -- exit(); -- } - # force these options - unless ($::opt_n) { - $::opt_S = 1; # don't prompt for send -@@ -605,8 +592,8 @@ - print OUT <interp; - CLONE_PARAMS clone_params; - clone_params.stashes = newAV(); -- clone_params.flags |= CLONEf_JOIN_IN; -+ clone_params.flags = CLONEf_JOIN_IN; - PL_ptr_table = ptr_table_new(); - current_thread = Perl_ithread_get(aTHX); - Perl_ithread_set(aTHX_ thread); ---- perl-5.8.8/regcomp.c.up27133_up27169 2006-01-08 15:59:27.000000000 -0500 -+++ perl-5.8.8/regcomp.c 2006-02-13 14:23:26.000000000 -0500 -@@ -1810,7 +1810,7 @@ - r->subbeg = NULL; - r->reganch = pm->op_pmflags & PMf_COMPILETIME; - r->nparens = RExC_npar - 1; /* set early to validate backrefs */ -- -+ r->lastparen = 0; /* mg.c reads this. */ - r->substrs = 0; /* Useful during FAIL. */ - r->startp = 0; /* Useful during FAIL. */ - r->endp = 0; /* Useful during FAIL. */ diff --git a/perl-5.8.8-up27284.patch b/perl-5.8.8-up27284.patch deleted file mode 100644 index 59d2350..0000000 --- a/perl-5.8.8-up27284.patch +++ /dev/null @@ -1,64 +0,0 @@ -Change 27284 by nicholas@nicholas-saigo on 2006/02/23 14:49:22 - - Integrate: - [ 27002] - Code assumes that *FOO{SCALAR} will always return a scalar reference, - so make it so, creating $FOO if necessary. - (Effectively this is a policy decision that PERL_DONT_CREATE_GVSV is - visible to XS code, but isn't visible to Perl code) - -Affected files ... - -... //depot/maint-5.8/perl/pp.c#86 integrate -... //depot/maint-5.8/perl/t/op/gv.t#4 integrate - -Differences ... - -==== //depot/maint-5.8/perl/pp.c#86 (text) ==== -Index: perl/pp.c ---- perl/pp.c#85~26738~ 2006-01-08 13:30:11.000000000 -0800 -+++ perl/pp.c 2006-02-23 06:49:22.000000000 -0800 -@@ -604,7 +604,7 @@ - break; - case 'S': - if (strEQ(second_letter, "CALAR")) -- tmpRef = GvSV(gv); -+ tmpRef = GvSVn(gv); - break; - } - } - -==== //depot/maint-5.8/perl/t/op/gv.t#4 (xtext) ==== -Index: perl/t/op/gv.t ---- perl/t/op/gv.t#3~25505~ 2005-09-19 15:20:52.000000000 -0700 -+++ perl/t/op/gv.t 2006-02-23 06:49:22.000000000 -0800 -@@ -12,7 +12,7 @@ - use warnings; - - require './test.pl'; --plan( tests => 61 ); -+plan( tests => 63 ); - - # type coersion on assignment - $foo = 'foo'; -@@ -218,6 +218,19 @@ - is ($x, "Rules\n"); - } - -+ -+{ -+ no warnings qw(once uninitialized); -+ my $g = \*clatter; -+ my $r = eval {no strict; ${*{$g}{SCALAR}}}; -+ is ($@, '', "PERL_DONT_CREATE_GVSV shouldn't affect thingy syntax"); -+ -+ $g = \*vowm; -+ $r = eval {use strict; ${*{$g}{SCALAR}}}; -+ is ($@, '', -+ "PERL_DONT_CREATE_GVSV shouldn't affect thingy syntax under strict"); -+} -+ - __END__ - Perl - Rules -End of Patch. diff --git a/perl-5.8.8-useCFLAGSwithCC.patch b/perl-5.8.8-useCFLAGSwithCC.patch deleted file mode 100644 index 98e3890..0000000 --- a/perl-5.8.8-useCFLAGSwithCC.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.8.8/Configure.BAD 2006-07-17 12:43:58.000000000 -0400 -+++ perl-5.8.8/Configure 2006-07-17 12:44:04.000000000 -0400 -@@ -7659,7 +7659,7 @@ - '') dflt="$dflt +vnocompatwarnings" ;; - esac - ;; -- linux|irix*|gnu*) dflt='-shared' ;; -+ linux|irix*|gnu*) dflt="-shared $optimize" ;; - next) dflt='none' ;; - solaris) dflt='-G' ;; - sunos) dflt='-assert nodefinitions' ;; diff --git a/perl.spec b/perl.spec index aa538a6..994f107 100644 --- a/perl.spec +++ b/perl.spec @@ -11,7 +11,7 @@ Name: perl Version: %{perl_version} -Release: 27%{?dist} +Release: 28%{?dist} Epoch: %{perl_epoch} Summary: The Perl programming language Group: Development/Languages @@ -75,6 +75,9 @@ Patch15: perl-5.10.0-bz448392.patch # Wrong access test Patch16: perl-5.10.0-accessXOK.patch +# CVE-2008-2827 perl: insecure use of chmod in rmtree +Patch17: perl-5.10.0-CVE-2008-2827.patch + BuildRoot: %{_tmppath}/%{name}-%{perl_version}-%{release}-root-%(%{__id_u} -n) BuildRequires: tcsh, dos2unix, man, groff BuildRequires: gdbm-devel, db4-devel, zlib-devel @@ -798,6 +801,7 @@ upstream tarball from perl.org. %patch14 -p1 %patch15 -p1 %patch16 -p1 +%patch17 -p1 # # Candidates for doc recoding (need case by case review): @@ -1010,6 +1014,7 @@ perl -x patchlevel.h 'Fedora Patch13: Upgrade Module::CoreList to 2.14' perl -x patchlevel.h 'Fedora Patch14: Upgrade CGI to 3.37' perl -x patchlevel.h 'Fedora Patch15: Adopt upstream commit for assertion' perl -x patchlevel.h 'Fedora Patch16: Access permission - rt49003' +perl -x patchlevel.h 'Fedora Patch17: CVE-2008-2827 perl: insecure use of chmod in rmtree' %clean rm -rf $RPM_BUILD_ROOT @@ -1615,6 +1620,9 @@ make test # Old changelog entries are preserved in CVS. %changelog +* Tue Jun 24 2008 Marcela Maslanova 4:5.10.0-28 +- CVE-2008-2827 perl: insecure use of chmod in rmtree + * Wed Jun 11 2008 Marcela Maslanova 4:5.10.0-27 - 447371 wrong access permission rt49003