diff options
480 files changed, 39644 insertions, 7820 deletions
diff --git a/.b4-config b/.b4-config new file mode 100644 index 0000000000..ba9520e0ba --- /dev/null +++ b/.b4-config @@ -0,0 +1,4 @@ +[b4] + midmask = https://inbox.sourceware.org/%s + linkmask = https://inbox.sourceware.org/%s + send-series-to = libc-alpha@sourceware.org diff --git a/LICENSES b/LICENSES index f4b24c1a41..e9c3c812f2 100644 --- a/LICENSES +++ b/LICENSES @@ -410,3 +410,26 @@ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +The sysdeps/ieee754/flt-32/e_gammaf_r.c file, taken from the CORE-MATH +project, is distributed under the following license: + +Copyright (c) 2023-2024 Alexei Sibidanov. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Makeconfig b/Makeconfig index a87ff7b1d3..a0abc2239b 100644 --- a/Makeconfig +++ b/Makeconfig @@ -1011,6 +1011,12 @@ else +cflags += $(no-fortify-source) endif +# Filter out LFS flags if compiler defines it by default. ++cflags += $(no-file-offset-bits-source) + +# Filter out 64 bit time_t flags if compiler defines it by default. ++cflags += $(no-time-bits-source) + # Each sysdeps directory can contain header files that both will be # used to compile and will be installed. Each can also contain an # include/ subdirectory, whose header files will be used to compile diff --git a/NEWS b/NEWS index 3cbcd36334..1d048de0e6 100644 --- a/NEWS +++ b/NEWS @@ -31,9 +31,21 @@ Major new features: * The iconv program now supports converting files in place. The program automatically uses a temporary file if required. +* The GNU C Library now supports a feature test macro _ISOC2Y_SOURCE to + enable features from the draft ISO C2Y standard. Only some features from + this draft standard are supported by the GNU C Library, and as the draft + is under active development, the set of features enabled by this macro is + liable to change. Features from C2Y are also enabled by _GNU_SOURCE, or + by compiling with "gcc -std=gnu2y". + Deprecated and removed features, and other changes affecting compatibility: - [Add deprecations, removals and changes affecting compatibility here] +* The big-endian ARC port (arceb-linux-gnu) has been removed. + +* The abort is now async-signal-safe and its implementation makes longjmp + from the SIGABRT handler always abort if set up with setjmp. Use sigsetjmp + to keep the old behavior, where the handler does not stop the process + execution. Changes to build and runtime requirements: diff --git a/SHARED-FILES b/SHARED-FILES index d70c7adecf..228f415dfd 100644 --- a/SHARED-FILES +++ b/SHARED-FILES @@ -166,10 +166,19 @@ gettext: intl/plural.y intl/textdomain.c +# The following files are bundled from upstream Linux 6.10 for FUSE testing +# support. +linux: + support/bundled/linux/COPYING + support/bundled/linux/LICENSES + support/bundled/linux/LICENSES/exceptions/Linux-syscall-note + support/bundled/linux/LICENSES/preferred/GPL-2.0 + support/bundled/linux/include/uapi/linux/fuse.h + # The following files are shared with the upstream Unicode project and must be # updated regularly to stay in sync with the upstream unicode releases. # -# Merged from Unicode 15.1.0 release. +# Merged from Unicode 16.0.0 release. unicode: localedata/unicode-gen/UnicodeData.txt localedata/unicode-gen/unicode-license.txt @@ -219,3 +228,43 @@ tzdata: timezone/leapseconds # This is yearistype.sh in the parent project timezone/yearistype + +# The following files are shared with the CORE-MATH project +sysdeps/ieee754/flt-32/e_gammaf_r.c + (file src/binary32/tgamma/tgammaf.c in CORE-MATH) + Instructions to merge new versions: + - change the function name from cr_tgammaf to __ieee754_gammaf_r + - add "int *signgamp" as 2nd argument and add at the beginning: + if (signgamp != NULL) *signgamp = 1; + - remove the errno stuff (this is done by the wrapper) + - replace 0x1p127f * 0x1p127f by math_narrow_eval (x * 0x1p127f) + - replace 0x1p-127f * sgn[k&1] by math_narrow_eval (0x1p-127f * sgn[k&1]) + - add libm_alias_finite (__ieee754_gammaf_r, __gammaf_r) at the end +sysdeps/ieee754/flt-32/s_exp10m1f.c + (file src/binary32/exp10m1/exp10m1f.c in CORE-MATH) + - The code was adapted to use glibc code style and internal + functions to handle errno, overflow, and underflow. +sysdeps/ieee754/flt-32/s_exp2m1f.c + (file src/binary32/exp2m1/exp2m1f.c in CORE-MATH) + - The code was adapted to use glibc code style and internal + functions to handle errno, overflow, and underflow. +sysdeps/ieee754/flt-32/s_expm1f.c + (file src/binary32/expm1/expm1f.c in CORE-MATH) + - The code was adapted to use glibc code style and internal + functions to handle errno, overflow, and underflow. +sysdeps/ieee754/flt-32/e_log10f.c + (file src/binary32/log10/log10f.c in CORE-MATH) + - The code was adapted to use glibc code style and internal + functions to handle errno, overflow, and underflow. +sysdeps/ieee754/flt-32/s_log2p1f.c + (file src/binary32/log2p1/log2p1f.c in CORE-MATH) + - The code was adapted to use glibc code style and internal + functions to handle errno, overflow, and underflow. +sysdeps/ieee754/flt-32/s_log1pf.c + (file src/binary32/log1p/log1pf.c in CORE-MATH) + - The code was adapted to use glibc code style and internal + functions to handle errno, overflow, and underflow. +sysdeps/ieee754/flt-32/s_log10p1f.c + (file src/binary32/log10p1/log10p1f.c in CORE-MATH) + - The code was adapted to use glibc code style and internal + functions to handle errno, overflow, and underflow. diff --git a/benchtests/Makefile b/benchtests/Makefile index d228e9e68a..d60fe789c8 100644 --- a/benchtests/Makefile +++ b/benchtests/Makefile @@ -42,10 +42,13 @@ bench-math := \ exp \ exp10 \ exp10f \ + exp10m1f \ exp2 \ exp2f \ + exp2m1f \ expf \ expm1 \ + expm1f \ floor \ floorf \ fmax \ @@ -68,9 +71,13 @@ bench-math := \ llrintf \ log \ log10 \ + log10f \ + log10p1f \ log1p \ + log1pf \ log2 \ log2f \ + log2p1f \ logb \ logbf \ logf \ @@ -94,6 +101,7 @@ bench-math := \ tan \ tanh \ tgamma \ + tgammaf \ trunc \ truncf \ y0 \ diff --git a/benchtests/exp10m1f-inputs b/benchtests/exp10m1f-inputs new file mode 100644 index 0000000000..7eb6a1e415 --- /dev/null +++ b/benchtests/exp10m1f-inputs @@ -0,0 +1,2389 @@ +# These values are copied from exp10f-inputt +## args: float +## ret: float +## includes: math.h +## name: workload-spec2017.wrf-adapted +0x0p+0 +-0x1.cca64ap+0 +-0x1.570ef6p-2 +0x1.1aa2d2p+2 +0x1.0f756cp+2 +0x1.0f4c5p+2 +-0x1.4e5cbap-1 +-0x1.10efc8p+0 +-0x1.ca213p-2 +0x1.12c966p+2 +0x1.acffep+1 +-0x1.8118a2p-3 +-0x1.d5e3a2p+3 +-0x1.480aep+3 +0x1.f608d6p+1 +-0x1.32fc0cp+2 +-0x1.4b229ap-1 +0x1.d0b80ep-2 +0x1.19a5b6p+2 +0x1.a42b5ep+1 +0x1.1a21dep+2 +0x1.92e89p+1 +-0x1.7b9ac4p+0 +0x1.66ce46p+0 +0x1.5f4bbcp+1 +0x1.668d4ap-1 +-0x1.a295e4p-1 +-0x1.1bdf4cp-4 +0x1.5d9048p-3 +-0x1.97a6e8p+0 +0x1.5d5c2cp-1 +0x1.3b3926p+1 +0x1.5df8b6p-2 +-0x1.701c4ep+1 +-0x1.831428p+1 +-0x1.091166p+0 +0x1.7bb7dep+0 +-0x1.71320ap+1 +-0x1.000146p+1 +-0x1.31ed22p-4 +-0x1.4b926ap+2 +-0x1.429b84p-2 +-0x1.447decp+1 +-0x1.9c76f6p-2 +0x1.7a8d26p+1 +-0x1.abdd4cp+0 +-0x1.de3accp-2 +0x1.8a5286p+0 +0x1.fda316p-5 +-0x1.06p+5 +-0x1.4be122p-1 +0x1.9bac1ap+1 +-0x1.44cfb2p+1 +0x1.14b2d2p+2 +-0x1.322fb6p-4 +0x1.7c65bap+1 +0x1.9a5056p-1 +0x1.16f75p+2 +-0x1.14c492p+0 +-0x1.179386p+1 +-0x1.f7543ep-4 +-0x1.282e94p+1 +-0x1.32391ep-4 +-0x1.52f73ap+1 +0x1.75bdb6p+1 +-0x1.77763p-1 +0x1.a5d2d6p+0 +0x1.827938p-1 +0x1.12d21cp-1 +-0x1.11a162p-1 +-0x1.3be4d8p+1 +0x1.49d97ep+1 +0x1.19b118p+2 +0x1.19c026p+2 +0x1.e3963cp-2 +0x1.96eb86p+1 +-0x1.180652p+0 +-0x1.59b81cp+1 +0x1.d6e006p-2 +-0x1.15d164p+1 +0x1.233a6ep+0 +-0x1.27864ep+2 +-0x1.30e92cp-4 +-0x1.2e7c2p+1 +-0x1.4fe7c8p+1 +-0x1.35eadap-4 +0x1.484e6p+1 +0x1.7938eap+1 +-0x1.18e616p+2 +-0x1.36859ep-1 +0x1.f4b8dp-2 +-0x1.863916p-2 +0x1.643824p+0 +-0x1.7568e8p+0 +0x1.9c885ep+1 +-0x1.34527cp-2 +-0x1.481836p-1 +-0x1.0f8e4ap-1 +-0x1.9fbb48p+1 +-0x1.af4f5ep+0 +0x1.a88166p-2 +-0x1.9fcf5ap-1 +0x1.821a5p+1 +0x1.ab25cep+1 +-0x1.224cb8p+2 +0x1.96a544p+1 +0x1.a19cb2p-4 +-0x1.4c92f2p-3 +0x1.a0b7c8p+1 +-0x1.499ed8p+1 +-0x1.2c6602p+1 +-0x1.e6132ap-2 +-0x1.7198ccp+1 +0x1.a93194p+1 +-0x1.aadde2p+1 +0x1.d4c3b2p-3 +-0x1.c22fb6p-1 +0x1.703a62p+0 +-0x1.b82142p+0 +0x1.735e98p+1 +0x1.6b8af8p+1 +0x1.de7796p-6 +-0x1.aa786cp-1 +-0x1.6e4dap+3 +-0x1.f6e0fap-2 +-0x1.25239p-2 +-0x1.25dd98p+1 +0x1.1fab24p-2 +-0x1.308cdp-4 +-0x1.7f6a14p+1 +-0x1.fadcf8p-1 +0x1.f166e6p-4 +-0x1.b37p-3 +0x1.6735dcp-1 +0x1.864b22p+1 +0x1.893d72p+1 +-0x1.2c9ddcp+1 +0x1.9a36acp+1 +0x1.1947d2p+2 +-0x1.2a6352p+0 +-0x1.d8751ap+1 +-0x1.b64acap-4 +0x1.40f61cp+1 +0x1.70676ep+1 +-0x1.1680eap-1 +-0x1.f6604ep+0 +0x1.116176p-1 +0x1.6549cp-1 +-0x1.f7aa4ap+1 +-0x1.2bdf2ep-2 +0x1.69eed8p+1 +0x1.f2dc02p-2 +0x1.a145e6p+0 +0x1.8083d6p+1 +0x1.1b9a32p+0 +-0x1.3c9fp+1 +0x1.626386p+1 +-0x1.457912p-2 +0x1.138216p+2 +0x1.639d8cp+1 +0x1.12117cp+2 +-0x1.4970bcp-3 +-0x1.f0c518p-3 +-0x1.9c45b8p+1 +0x1.8fee74p+0 +0x1.4143acp-1 +-0x1.3c5f9ap-1 +0x1.5cf878p-2 +-0x1.122a6ep-4 +-0x1.de549ap-6 +-0x1.f3800ap+0 +0x1.721f64p+1 +0x1.902a2ep+1 +0x1.901aaep+1 +-0x1.816496p-4 +-0x1.a83cb4p+0 +0x1.271acep-2 +0x1.0d212p+2 +0x1.1cdf14p-1 +0x1.6269e2p-2 +-0x1.b93846p+1 +-0x1.6024c2p+0 +-0x1.582c58p+1 +-0x1.712d54p+1 +-0x1.479afcp+0 +-0x1.2e518p-8 +0x1.1b4d6p-2 +0x1.08ea6ap+0 +-0x1.725e56p+3 +-0x1.36a72cp-3 +0x1.376aeap-1 +0x1.2a1632p-3 +-0x1.28c472p+1 +-0x1.de1874p-1 +0x1.10e30ap+1 +0x1.e61a4p-3 +0x1.86d724p+0 +0x1.d9e3eap+1 +-0x1.797188p+0 +-0x1.75478ap-2 +-0x1.41b4ccp+1 +-0x1.30429ep-3 +0x1.6d356p+1 +-0x1.092c4ep-4 +-0x1.4f37dp+1 +-0x1.6c4f8ap+1 +-0x1.9a40eap-2 +-0x1.24069ap+4 +0x1.1a824cp+2 +-0x1.d0719ap-2 +-0x1.84f73cp+1 +0x1.1d4d62p+2 +-0x1.1dce7cp+3 +0x1.3102f4p-4 +-0x1.d5e8b8p-2 +-0x1.215e3p+4 +-0x1.e07cc8p+0 +-0x1.6ce266p-2 +0x1.d555d2p-1 +0x1.f67854p-6 +0x1.15a992p-1 +0x1.ab4f76p-2 +-0x1.2b9d0ap+1 +-0x1.a4c9fcp-2 +0x1.17645p+2 +-0x1.338ea4p+0 +-0x1.fbcf2cp-2 +-0x1.03e628p+1 +-0x1.fc0ad6p+0 +0x1.8f8294p+1 +0x1.8b8c84p-2 +0x1.d34d66p-3 +0x1.0d402cp+2 +0x1.158cep+2 +-0x1.35a2e6p-4 +-0x1.2e08acp-4 +-0x1.48242ep+1 +-0x1.29ed7ap-4 +-0x1.c7b494p+0 +-0x1.193bacp-1 +0x1.578c62p-1 +0x1.53c52p-1 +-0x1.493442p-4 +-0x1.da613cp-4 +-0x1.2f2194p-4 +-0x1.2fb2b6p-4 +0x1.d9e34p+1 +0x1.75d608p+1 +0x1.126b06p+2 +0x1.0142d4p+1 +-0x1.644758p+1 +-0x1.2e3b98p-4 +-0x1.be8ddep+1 +0x1.49824cp-3 +-0x1.35b23ap-1 +-0x1.2356b4p-1 +0x1.18b5acp+2 +0x1.47077cp+1 +-0x1.173db8p+1 +-0x1.665c4ap+1 +-0x1.1c6faap+1 +-0x1.310e3ap-4 +0x1.0e699cp+1 +-0x1.9aab7p+1 +-0x1.cc23acp-2 +0x1.5437c6p-1 +-0x1.0a05d2p+0 +0x1.085f18p-1 +-0x1.35b786p-4 +-0x1.6baad6p-3 +-0x1.3231dap-4 +-0x1.32939ep-4 +0x1.482856p-2 +-0x1.35a4a8p-4 +0x1.706bap-1 +-0x1.4acaf8p-1 +0x1.19de58p+2 +0x1.d143f2p-2 +-0x1.7a380ap-1 +-0x1.784deap+1 +0x1.4feed4p-2 +-0x1.261576p+4 +-0x1.ea0ce6p-5 +0x1.97c84ep+1 +0x1.08b326p+1 +-0x1.19f4ap+2 +-0x1.299982p-4 +-0x1.e70ce6p+2 +0x1.a64db8p-3 +-0x1.7423acp-2 +0x1.1b4bap+2 +-0x1.348e26p-4 +0x1.68ebc4p+1 +-0x1.9cfd68p-2 +-0x1.3bad8ep+1 +-0x1.c3cc6cp-1 +0x1.3bc00ap-1 +0x1.0eb82cp+2 +0x1.44cd7ap+2 +-0x1.4e79aep+0 +0x1.17402ep+2 +-0x1.b0636p-3 +0x1.0d71b4p+2 +0x1.bbe7bcp+0 +0x1.5bfe3ep+1 +-0x1.8edcf2p+0 +-0x1.36303p-4 +0x1.4e3ca8p+2 +0x1.319214p-1 +-0x1.09180ap+4 +0x1.726b38p+1 +0x1.9d1a86p-1 +-0x1.25fb1cp+2 +0x1.d9a272p-2 +0x1.8e93aep+1 +0x1.8aef1ep-2 +-0x1.9131eep+0 +-0x1.5e9edcp+0 +-0x1.dc1ef2p+0 +-0x1.661d22p-1 +-0x1.9ad2d6p-1 +0x1.2f195ap+1 +-0x1.5bba84p+1 +0x1.7cbff8p+1 +-0x1.300c18p-4 +0x1.d9e494p+1 +-0x1.36921cp-4 +0x1.195306p-1 +-0x1.81fda2p+1 +0x1.373e84p-2 +-0x1.dba4c6p-3 +0x1.e5196cp-2 +-0x1.223552p+1 +0x1.439eb6p+0 +-0x1.00184p+3 +-0x1.0c2daap+0 +0x1.52b014p+0 +0x1.6ff002p+0 +-0x1.33ea92p-4 +0x1.b682fp-4 +0x1.51e056p-3 +0x1.2da342p-3 +-0x1.2b40b8p-4 +-0x1.0ec358p+1 +-0x1.3648f2p-2 +0x1.410ccep-3 +-0x1.06b8f4p+0 +0x1.3716c8p+1 +0x1.9d24d2p+1 +-0x1.744f56p+1 +0x1.79f3ccp+1 +-0x1.faab38p+0 +-0x1.7c307p+1 +0x1.ecaf74p-4 +-0x1.46013cp-3 +0x1.304aa4p+1 +-0x1.2d2e0ap+0 +0x1.9ec978p+1 +-0x1.7ace0ap+0 +-0x1.36a862p-5 +0x1.1037bp+2 +-0x1.4ecc52p+1 +0x1.7b09bcp-2 +-0x1.725004p+1 +0x1.0eb17ep+2 +0x1.a3874ap-5 +0x1.621192p-2 +0x1.0aeaeap-1 +0x1.5c0f0ep-4 +0x1.d43cb6p-1 +0x1.33a642p+1 +-0x1.32e16p-1 +0x1.0c5826p-1 +-0x1.3d5f08p+0 +0x1.80616cp+1 +-0x1.151ff8p+2 +0x1.7734a4p-5 +0x1.c6bb7cp-1 +0x1.165c08p-2 +-0x1.25e9e2p-1 +0x1.824d56p+1 +-0x1.1db7f6p+1 +0x1.1550c4p-1 +0x1.abfabep-5 +0x1.5be644p-3 +-0x1.9736dp+1 +-0x1.337be6p-4 +0x1.1d50fp+2 +0x1.12f136p-3 +-0x1.4fd9b6p+1 +0x1.b48b8p-1 +0x1.928bcp+1 +-0x1.358bcep-4 +-0x1.4e92eap+0 +-0x1.4b13b4p+1 +0x1.ab4ee6p+1 +0x1.8176a4p+1 +-0x1.b9c5b6p+0 +-0x1.739fbep-2 +-0x1.e699p-3 +-0x1.0e7c3p-4 +0x1.07b746p+1 +0x1.6d05ccp+1 +0x1.d9e82ep+1 +0x1.0aae92p-8 +0x1.66466ap-3 +-0x1.ef3d28p+2 +0x1.c3e356p+0 +-0x1.ee3f16p-6 +0x1.c39f2ap-3 +-0x1.66a4cap-3 +-0x1.bfee84p-1 +0x1.81f6ep-4 +-0x1.7e7f5cp+1 +-0x1.31852cp-4 +0x1.6bed6cp-2 +-0x1.b628e2p-3 +0x1.bc7314p-2 +0x1.1e193ap-1 +-0x1.502deap+1 +-0x1.c5789cp-4 +-0x1.267a3ap-1 +0x1.44f054p-1 +-0x1.2fc60ap-4 +0x1.6d2b4ap+0 +-0x1.35983ap+4 +-0x1.73498p+0 +-0x1.7e7b2cp-7 +0x1.015cp-1 +-0x1.342c98p-4 +0x1.8d1564p+1 +0x1.168e4ap-3 +-0x1.42a24cp+1 +0x1.112dc6p-2 +0x1.e20982p-1 +-0x1.6ad56p+3 +0x1.b33ed2p+1 +0x1.7ae86cp+1 +0x1.dfb8dcp+0 +-0x1.0589dep+1 +0x1.24d3c8p-3 +0x1.499b44p+1 +-0x1.2ab0d4p+0 +-0x1.f305b4p-1 +-0x1.8424bap+0 +-0x1.c56a9cp+0 +0x1.8cc9f4p+1 +-0x1.43400ap+4 +-0x1.e3ca3ep-3 +0x1.4f4cf4p-4 +-0x1.af6c6ep+0 +0x1.544da4p+1 +0x1.3eb6d4p+0 +-0x1.6c4318p+1 +0x1.57004cp-1 +-0x1.01ccacp+0 +0x1.144bc6p-1 +0x1.2476ccp+1 +0x1.0deaecp+2 +-0x1.bdfe9cp-1 +-0x1.ceea0cp+1 +0x1.13232p-1 +0x1.58349cp-2 +-0x1.d430ccp-1 +0x1.91c14p+1 +0x1.436bccp+0 +0x1.0dd524p+2 +-0x1.eab124p-1 +-0x1.5307ap-2 +0x1.1cacb4p+2 +-0x1.d6441ap-2 +-0x1.32b6a8p-4 +0x1.1bd4ep+2 +-0x1.a591d2p-11 +-0x1.301e24p-4 +-0x1.329332p-2 +-0x1.1e6754p+1 +0x1.35b7a6p+0 +0x1.542d52p-5 +-0x1.48e368p+1 +0x1.58ceep-5 +0x1.82cdep+1 +0x1.58be32p-1 +-0x1.3c2a3p-2 +0x1.9409bap+1 +0x1.4b97bap+1 +0x1.17ca0ep+2 +-0x1.366acap-4 +-0x1.f3ace4p-1 +0x1.a0c9f8p+1 +-0x1.a2ea86p-2 +-0x1.cbde64p-2 +-0x1.7a887cp+1 +-0x1.2dd12ap-4 +0x1.a3c1ap+1 +-0x1.2b8f2ap+1 +-0x1.d42268p+1 +0x1.706948p-4 +-0x1.285f8p+1 +-0x1.7f58bcp+0 +-0x1.25ebeap+0 +-0x1.1946b8p-2 +-0x1.902626p+2 +-0x1.b2ce32p-2 +-0x1.124bc4p-3 +-0x1.075acap+1 +-0x1.32c68ap-4 +-0x1.a030bap-2 +0x1.308c56p+1 +0x1.933c64p-5 +0x1.17dafep+2 +-0x1.722dep+1 +-0x1.b2262ep-1 +-0x1.4ee21ep-3 +0x1.0a7eeep+1 +-0x1.87e73cp-1 +0x1.9dc436p-1 +0x1.ee2428p-3 +-0x1.117f16p-2 +0x1.daa778p-2 +-0x1.2dbecap-4 +0x1.0d7dd6p+2 +0x1.81440ap+1 +-0x1.88f954p+0 +-0x1.8abfd8p-2 +0x1.12f78ep+2 +0x1.1d307p+2 +0x1.b631eap-2 +-0x1.8469c6p-1 +-0x1.9091c2p+1 +0x1.4fcf6p-2 +-0x1.71764p+1 +0x1.709448p-1 +-0x1.c2300cp+0 +-0x1.530c38p-2 +0x1.247446p-1 +0x1.984faep+1 +0x1.571c4ep-6 +-0x1.939a94p+0 +-0x1.657dd4p+1 +-0x1.2bf2ccp-4 +0x1.7d061p-3 +0x1.e446b2p-4 +0x1.903e9ep+0 +-0x1.36822ap+0 +0x1.728a0cp+1 +-0x1.b795acp+0 +-0x1.dd215ep+0 +-0x1.5cb27ep+1 +0x1.66108p-4 +0x1.a783b4p-1 +0x1.e6a6bcp-5 +-0x1.182e36p-5 +-0x1.344ffep-4 +0x1.4174a4p+1 +0x1.8eeb4ap+1 +-0x1.1e29bep+1 +-0x1.0c7b16p+0 +-0x1.d5069ap+0 +0x1.12761ap-1 +-0x1.1082d6p-7 +-0x1.10d2c8p+0 +-0x1.502f0ep+1 +0x1.7a4a04p-6 +-0x1.2747bp+1 +-0x1.313d6cp-4 +-0x1.22d6fep+0 +-0x1.288d02p+1 +0x1.6193a8p+0 +0x1.d178acp-2 +-0x1.74beb8p+1 +-0x1.768aaep+0 +-0x1.45a396p+1 +-0x1.366bd6p+0 +0x1.51322ep-3 +0x1.0f4488p+2 +-0x1.1c98d2p-1 +0x1.b2dc9cp+1 +-0x1.4adad4p+1 +-0x1.0b063ap-1 +-0x1.1d91f8p+0 +0x1.1dff62p+2 +-0x1.e888cap+3 +0x1.0cccfp+1 +-0x1.352b56p-4 +-0x1.28e938p-5 +0x1.9a6954p-2 +-0x1.4164fcp-1 +0x1.9d36e8p+1 +-0x1.3067aap-4 +-0x1.f60dfap-1 +0x1.c7d7acp+0 +-0x1.358ea8p-4 +0x1.c3579cp+0 +0x1.d9e3d6p+1 +-0x1.3a0566p+0 +-0x1.b89bacp-1 +0x1.d58a28p-1 +-0x1.7601aep+1 +-0x1.4ec9f8p-10 +-0x1.6d5776p+0 +0x1.b2bfd8p-3 +0x1.88677p-1 +0x1.2db776p+1 +-0x1.a7cb9cp+0 +-0x1.31ba78p-4 +-0x1.ebd996p+1 +-0x1.410194p+0 +-0x1.2ddc58p-4 +0x1.d943a6p+0 +0x1.14a0d2p-5 +0x1.0dd346p+2 +0x1.f1b254p-2 +-0x1.3cc36ep+1 +0x1.5d021ep-2 +-0x1.0c30f4p+0 +-0x1.2beac4p+1 +0x1.9e81ap+1 +0x1.af36ap+1 +0x1.922238p+1 +-0x1.80886p-3 +-0x1.c29136p-2 +0x1.3d44b6p-3 +-0x1.edd8eap+0 +-0x1.a847acp+0 +0x1.0f79f6p+2 +0x1.53f778p+0 +-0x1.309952p-4 +-0x1.35d438p-4 +-0x1.c10eeep-3 +-0x1.806394p+0 +0x1.ff7b88p+0 +0x1.69316ep+1 +-0x1.6d0674p+0 +0x1.472c1ep+0 +0x1.0e8cbp+2 +-0x1.5ef1a4p+0 +-0x1.bab7dcp-1 +-0x1.36adb6p-4 +0x1.6dca62p+2 +-0x1.1c474ep+2 +-0x1.868c8ep-2 +-0x1.4ced6ap+2 +0x1.159d72p+2 +0x1.3c9656p+1 +0x1.4fae6p-2 +-0x1.4f8a48p+1 +0x1.bba5eap-3 +0x1.a5b6b8p+1 +-0x1.2a69f2p+2 +0x1.d2f84p-4 +-0x1.33012cp-1 +-0x1.b514e2p-1 +0x1.b23606p+1 +0x1.18a2ap+2 +-0x1.d75522p-1 +-0x1.a5bb52p-6 +0x1.9547f8p+1 +0x1.8c7182p+1 +0x1.1ac8bap+2 +-0x1.2864p-4 +-0x1.c6baa8p-2 +0x1.19c122p+1 +0x1.65acd6p-5 +0x1.c76bd8p-2 +0x1.194a94p+2 +0x1.288ad8p+1 +0x1.b2ebfp+0 +-0x1.1b7bdp+0 +-0x1.32e204p-4 +-0x1.7bc0dep-4 +0x1.68c198p-1 +0x1.1a8ef8p+2 +-0x1.b8ed5p+0 +-0x1.3109d4p-4 +0x1.3cfa08p-1 +0x1.2aebdep+1 +0x1.7cf2b2p+0 +0x1.40ea82p+2 +-0x1.6d1d98p-2 +-0x1.5fbf82p-1 +-0x1.83ed44p+1 +0x1.2e3f04p-1 +0x1.d9e37cp+1 +-0x1.432864p+1 +-0x1.cda79ep-1 +0x1.0da60ap+2 +0x1.840bf6p+1 +-0x1.3496e2p+1 +0x1.82c98p+1 +0x1.50037ep-2 +-0x1.4f6732p+1 +0x1.f7da28p-4 +-0x1.a228a8p-2 +-0x1.0cd8p-2 +0x1.a1db86p-3 +-0x1.594874p-1 +0x1.20835cp+0 +0x1.0f6acp+1 +0x1.59515ep-2 +0x1.8bea1p+1 +0x0p+0 +0x1.0fcd7p+2 +-0x1.086928p+1 +-0x1.2c535cp-4 +0x1.3d6cccp-1 +-0x1.92a8ecp+1 +-0x1.2fb916p-4 +0x1.747f3cp+1 +-0x1.a4386ep+0 +-0x1.d30c56p-2 +0x1.0fde5ep+1 +-0x1.36136ap+1 +-0x1.501534p+1 +-0x1.14c224p+2 +-0x1.d05bb6p-1 +0x1.be78dap-7 +-0x1.0451c2p-3 +0x1.bcd7d4p-2 +-0x1.4912bp-2 +0x1.a572dcp+1 +-0x1.35b01p-4 +0x1.a817fep+1 +-0x1.347608p-1 +-0x1.ceacd6p+1 +0x1.dc80d2p-4 +0x1.815a7ap+1 +0x1.1a75e6p+2 +0x1.ed45ccp-2 +0x1.3d0098p+0 +-0x1.c25928p+0 +0x1.189d3ap+2 +-0x1.4537dep-4 +0x1.4fb96ep+1 +0x1.14734ep+2 +-0x1.4d5efcp-3 +-0x1.18b74cp-2 +-0x1.5d6d18p+0 +-0x1.3590a8p+1 +-0x1.557742p-1 +-0x1.04313cp-1 +0x1.23ec9p-6 +0x1.246ef4p+0 +0x1.a35876p+1 +0x1.8770aap-2 +-0x1.32ca5p-4 +-0x1.4a9294p+0 +-0x1.79031ep-1 +0x1.40b186p-3 +0x1.b3b1a8p-3 +0x1.ca4534p+0 +-0x1.1b979cp-3 +-0x1.c0221ep-4 +0x1.278df4p-3 +-0x1.90e686p-2 +0x1.1983f2p+2 +-0x1.707a4p+1 +0x1.3a91a8p-1 +-0x1.0ae4ep-2 +0x1.93d88ep+1 +-0x1.36804ep-4 +-0x1.1664eep+1 +-0x1.bf6116p-1 +0x1.bb1f2ap-5 +0x1.5d6f24p-1 +-0x1.2f3ap-3 +0x1.8bea1cp+1 +0x1.933a2p+1 +0x1.d04b8cp-2 +-0x1.a2d34ap+0 +-0x1.807b86p-2 +0x1.44a46ep+1 +0x1.08b1p-1 +-0x1.5ac2fap+1 +0x1.93af92p+1 +-0x1.360d0cp-4 +-0x1.a9d00ep+0 +-0x1.c5730cp+0 +0x1.388076p-3 +0x1.ec991ap+0 +-0x1.eba70cp+1 +0x1.1a5e26p+2 +0x1.456762p-2 +-0x1.f6b70ep+2 +-0x1.4c4d6ap-5 +-0x1.773adap+1 +0x1.b08eacp-8 +-0x1.584bd8p+4 +0x1.aece5ep+1 +0x1.9484eep+1 +0x1.2f03cap-1 +0x1.857dc8p-2 +-0x1.7a09c2p-3 +0x1.413dcap-1 +-0x1.35e0a4p-4 +-0x1.14c224p+2 +-0x1.4b6036p+1 +0x1.72638ep+1 +-0x1.aca576p-5 +-0x1.a8005ap+1 +-0x1.7596e2p+1 +-0x1.48f8c6p+1 +0x1.17df42p+2 +-0x1.86feeep-3 +0x1.32ae9cp+0 +-0x1.3294e8p-4 +-0x1.cd56fap-2 +0x1.ed6752p-2 +0x1.52ca7ap-3 +0x1.88bd5ep+2 +-0x1.0bc4c4p-6 +-0x1.9c9c7ep+2 +-0x1.3dba0ap+1 +-0x1.22c518p-3 +0x1.1ae9bcp+2 +0x1.15e838p-2 +-0x1.828332p+1 +-0x1.54c63p+1 +-0x1.6a32f6p-1 +0x1.c55e1cp-3 +-0x1.08a5fp-3 +0x1.165574p+2 +-0x1.480b04p+1 +0x1.f8983p-3 +0x1.0d3bdap+2 +-0x1.0d26d8p+1 +-0x1.32a25p-4 +-0x1.354c2ep-4 +-0x1.36b518p-4 +0x1.d956p-2 +0x1.56d7bap+1 +0x1.0eea1ap+2 +0x1.18f428p+2 +0x1.62ad3p+1 +0x1.a35124p+1 +0x1.2745c2p-2 +-0x1.d21364p-1 +-0x1.27e588p+1 +0x1.519fc8p+2 +0x1.6f9af6p-1 +0x1.60654ap+1 +-0x1.acc2fp+0 +0x1.68b8a8p+1 +0x1.bc0924p-2 +0x1.19a1dep+2 +0x1.46286ap-2 +-0x1.611fcap+0 +0x1.3704ecp+1 +0x1.498faap+1 +-0x1.2ded8cp-4 +0x1.5329a6p-2 +0x1.1aa978p+2 +-0x1.7a949ap-2 +0x1.6638f6p+0 +0x1.60e3dcp-1 +-0x1.4eac8ep+1 +-0x1.3db95cp+1 +0x1.da4e46p-4 +-0x1.f3703p-1 +-0x1.a625fap+0 +0x1.3c17a4p+0 +0x1.f75f9p-3 +-0x1.9369bp+1 +-0x1.03c062p-2 +-0x1.ac914ep+0 +0x1.27711cp-5 +0x1.193a5ep+0 +0x1.0aeda2p-1 +-0x1.284b2cp-4 +-0x1.47ca52p+1 +-0x1.d8dcd4p+0 +0x1.340c62p-5 +0x1.966712p+1 +-0x1.8a04dap+0 +-0x1.06p+5 +0x1.693188p-1 +-0x1.33051ap+1 +0x1.4adfaep-4 +0x1.8699fep-2 +-0x1.c528a2p+3 +-0x1.87449ep-1 +-0x1.376054p+1 +-0x1.3faeb2p+1 +0x1.bf3f86p-2 +-0x1.a29252p-2 +0x1.a5e514p+1 +0x1.47e23p+1 +-0x1.04187p-1 +-0x1.dfdd0ap+1 +0x1.18fad4p+2 +0x1.5f067cp-5 +-0x1.c72628p-1 +-0x1.a7323cp+1 +0x1.0dcc54p+2 +-0x1.3ed8b4p+1 +0x1.f9b94ap+0 +-0x1.b551cp-1 +-0x1.397f1ep-1 +-0x1.51b1e2p+3 +-0x1.a692f2p-3 +0x1.69fdacp+1 +-0x1.4e1826p-1 +0x1.91c0fep-3 +-0x1.a6e1b2p+0 +0x1.8189fp-6 +0x1.d6b1bp+0 +-0x1.3138f6p-2 +-0x1.63dcc6p+1 +0x1.1e25a8p+2 +-0x1.615f82p+1 +-0x1.06116ep-6 +-0x1.2dbf32p-4 +0x1.30efb2p+1 +0x1.90d4fep+1 +-0x1.2e8768p+1 +0x1.52c482p-1 +0x1.139014p+2 +0x1.f188e6p+0 +0x1.489bap-3 +-0x1.30b51p-1 +0x1.26bebcp+1 +-0x1.473cfap-2 +0x1.189b68p+2 +-0x1.fff626p-4 +-0x1.4f04f6p+1 +-0x1.47b56cp-1 +-0x1.2b0338p-4 +0x1.5f00a4p-1 +-0x1.2453d8p+1 +0x1.63f072p-3 +-0x1.5f2a8ap-4 +0x1.0de616p+2 +0x1.04227p-1 +-0x1.11fb4ap+1 +0x1.e7937ep-4 +-0x1.b1bb1p-1 +-0x1.59229ap-3 +0x1.e54bb8p-3 +-0x1.49ced2p+1 +-0x1.3c8558p-1 +-0x1.365d0ap-4 +-0x1.d95314p-4 +-0x1.faa6a2p-1 +-0x1.4a931ep+1 +-0x1.35baf2p-4 +0x1.40e5c4p+0 +-0x1.d9ae8p+1 +0x1.1121fap-1 +0x1.3e6be4p-2 +0x1.7e0ef2p-3 +-0x1.880112p+0 +-0x1.652642p+1 +0x1.3612bep+0 +-0x1.cae1d2p-2 +-0x1.5c0edp+0 +-0x1.c4600ep-2 +0x1.c07a82p-4 +0x1.09a756p+1 +-0x1.e84cfap+0 +-0x1.c91046p+3 +0x1.2ad4eap+1 +-0x1.d5d568p-1 +0x1.3d84aap-1 +0x1.77039ep+1 +-0x1.d2310cp+0 +-0x1.cfd498p+0 +-0x1.715682p+1 +-0x1.0f89b2p-5 +-0x1.67af76p-1 +0x1.020d18p+1 +0x1.1a5e44p-1 +-0x1.2b8602p-4 +-0x1.59004ep-2 +0x1.66a0b4p+2 +0x1.44cf1p-2 +0x1.731836p-1 +-0x1.444264p+2 +0x1.7ab92p+0 +0x1.747564p-1 +-0x1.35aa9ep-4 +0x1.7c9424p+1 +0x1.cee034p+1 +-0x1.5b10fp-1 +-0x1.364912p-4 +-0x1.69bbfcp+1 +-0x1.50a1cp+1 +-0x1.f3f57p-3 +0x1.158cf8p+2 +-0x1.a72588p+1 +0x1.26afa8p-4 +-0x1.f7580ap-3 +0x1.1c73b8p-1 +-0x1.f2e3ecp-3 +0x1.363ffap-1 +0x1.1955bp+2 +-0x1.85807ap-1 +0x1.7a0e24p-1 +-0x1.2d6f04p-3 +-0x1.076d68p+1 +-0x1.0cd796p+1 +-0x1.955e58p+1 +-0x1.e74dfp+0 +0x1.94e14p+1 +-0x1.0d0d0cp+0 +-0x1.57b626p+2 +-0x1.ef69a6p+1 +-0x1.31c994p-4 +-0x1.ee21eep+1 +-0x1.357044p+1 +0x1.687e62p+1 +0x1.58074cp+1 +0x1.0d13b8p+2 +0x1.4e4534p+1 +-0x1.2b7b6ep-3 +0x1.1b4bb4p-3 +-0x1.00f538p-1 +0x1.0f0c76p+2 +0x1.5213a6p+1 +-0x1.29df0ep+0 +-0x1.ae06f2p-2 +-0x1.5221c8p+1 +0x1.e1d62ep+2 +-0x1.272b88p-4 +-0x1.6649b8p+1 +0x1.98b39cp+1 +-0x1.27c198p-4 +-0x1.434cfep-3 +0x1.3cbb2p-2 +-0x1.3c9292p-2 +0x1.0efaf4p+2 +-0x1.633b78p+0 +0x1.ec1532p-2 +-0x1.0a31f4p-2 +0x1.d473a6p-4 +0x1.6636a4p+1 +-0x1.8901dp+1 +0x1.6c011cp-5 +0x1.4159ccp-2 +-0x1.f98358p-1 +0x1.0e5a1p+2 +0x1.7c455p+0 +-0x1.2d9d62p-4 +-0x1.29249cp-4 +-0x1.07ef22p+3 +-0x1.2bf514p+1 +-0x1.45d45cp+0 +-0x1.2cabd8p-4 +0x1.f64b9ep+0 +0x1.960a98p+1 +0x1.45767cp-4 +0x1.bd19cep-2 +-0x1.0d64aep+1 +0x1.1a629ep+2 +-0x1.c7da8ap-1 +0x1.f676d2p-2 +-0x1.3ed448p+1 +-0x1.abed62p-7 +0x1.7f6afp+1 +-0x1.350bfp-4 +0x1.0da06ap+0 +0x1.097cc6p-1 +-0x1.8b5294p-6 +-0x1.3ea218p-7 +0x1.fc6b92p-5 +-0x1.1c957ep-2 +0x1.5fd2ecp+1 +-0x1.2acb2ap-4 +0x1.8d9becp-1 +0x1.99c11ap+1 +-0x1.012c68p-1 +-0x1.3294aap-4 +-0x1.340894p-4 +0x1.9a0ee2p-2 +0x1.4584d6p-4 +-0x1.2ddb48p+1 +-0x1.98374cp+1 +0x1.3383eap+1 +0x1.7d2846p+1 +-0x1.1f83bep-1 +-0x1.69b974p-2 +-0x1.0062e4p-2 +-0x1.e0c96ap-3 +-0x1.9b2cdcp-2 +0x1.b10d8ap-2 +0x1.462c08p+0 +0x1.801c0ep-4 +-0x1.91fe4ep+1 +-0x1.def94ep-7 +0x1.97541p+1 +0x1.7a346ap+1 +0x1.23d8e2p-2 +-0x1.c5295ep-1 +-0x1.308504p+1 +-0x1.7f607ap-7 +-0x1.92dcbp+0 +0x1.361d6p-1 +-0x1.279b06p+2 +-0x1.dadd1p-2 +-0x1.63de3ep+1 +-0x1.a9d38ep-3 +-0x1.330efcp-3 +0x1.5cd4cep+1 +-0x1.2d6346p-4 +0x1.aa19fcp-3 +-0x1.be1354p-1 +-0x1.1f2d94p+1 +0x1.541a54p-4 +0x1.e7e51ap-6 +0x1.327a8ap+0 +0x1.a8d34ep-2 +0x1.47e02p-1 +0x1.f0499ep-2 +-0x1.6338f4p-2 +0x1.758f7p+1 +-0x1.8dd02ep-5 +0x1.1335e4p-1 +-0x1.29400ap-4 +0x1.19e52ap+2 +0x1.7c685cp+1 +-0x1.010042p+1 +0x1.183edep+2 +-0x1.647b8cp+1 +0x1.0df434p+2 +0x1.a9173cp+0 +0x1.605c96p+1 +-0x1.375146p-1 +-0x1.96f0e4p-1 +0x1.99d6f6p+0 +0x1.475f9cp+0 +0x1.6ce1e6p-3 +-0x1.0c4ec2p-2 +0x1.979a3ep+1 +0x1.4c02b2p-3 +-0x1.5d643cp+1 +0x1.1981b4p+2 +-0x1.450f54p+2 +-0x1.daf71cp+1 +0x1.5b84f2p+1 +-0x1.4e39p-3 +0x1.2e338cp-1 +-0x1.4ac494p-1 +0x1.1a2ee4p+2 +-0x1.00c2dap+1 +-0x1.05797cp-2 +0x1.810c4cp+0 +0x1.8371f6p-2 +-0x1.2e5d5ep-4 +0x1.20568cp+1 +0x1.7533fap+1 +-0x1.2eff36p-1 +-0x1.095fc4p+1 +0x1.14268ap-5 +-0x1.a4098cp-2 +-0x1.a826c6p+1 +-0x1.2d9248p+1 +0x1.0d08ccp+2 +-0x1.caa236p+3 +0x1.bab198p-3 +-0x1.e2136ap-3 +-0x1.24ef2cp+2 +0x1.e120f8p-1 +-0x1.6f5d06p-2 +-0x1.351596p-4 +-0x1.f8c01ap+0 +0x1.24cb0cp-2 +-0x1.8772c8p+1 +-0x1.3139e4p+1 +-0x1.552332p+1 +0x1.1f01ep-1 +0x1.93975p+1 +-0x1.860b12p+0 +-0x1.325f32p+4 +-0x1.157d7cp+2 +0x1.b04adp+0 +-0x1.162d22p+1 +0x1.66397ap-3 +0x1.229e52p-5 +0x1.ef5bbcp+0 +-0x1.0ede58p+1 +0x1.4c9bf8p+2 +0x1.89aa3p+1 +0x1.5c7128p+1 +0x1.6658cp+1 +0x1.839efp-3 +-0x1.2ac61ap-5 +0x1.18cf9cp+2 +0x1.057f2cp-2 +-0x1.80098ep+0 +0x1.117f5p+2 +-0x1.602f22p+1 +-0x1.8aa62p+0 +0x1.fab3e8p-1 +-0x1.faf368p+0 +-0x1.803ab2p-1 +-0x1.93715ap-4 +0x1.24106ap-3 +0x1.301864p-1 +0x1.608766p+1 +0x1.55c9aap+1 +-0x1.297edap-1 +0x1.65432ap+1 +0x1.c27718p+2 +-0x1.3ae348p-1 +0x1.aa80a8p+1 +-0x1.3b9fa2p-1 +0x1.414f82p-2 +0x1.bdd05p+0 +0x1.6ed8ep-1 +0x1.b0fc5p+1 +-0x1.38dd7cp-1 +-0x1.3dd132p-1 +-0x1.b000dap+1 +-0x1.fa8046p+0 +0x1.ada91ep+1 +-0x1.bbacc8p-1 +-0x1.f9f426p+2 +-0x1.bc74fcp-1 +-0x1.5b356ap-2 +-0x1.ff6d66p-3 +0x1.d9dec2p+1 +-0x1.4d683p-3 +-0x1.c94956p+1 +-0x1.34e83cp+0 +0x1.4eab1cp-3 +0x1.36cf66p-2 +-0x1.35e6ecp-4 +0x1.9b228ap+1 +-0x1.3296aap-4 +-0x1.361d6p-4 +0x1.1cfa22p+2 +0x1.a1a75cp+1 +-0x1.3f464ep+0 +-0x1.ed46cep-2 +0x1.b2adeap-2 +0x1.8bb406p+1 +-0x1.25e534p-2 +-0x1.343002p-4 +-0x1.aac09ep-3 +-0x1.cdbeaep-2 +0x1.14729p+2 +0x1.0821ecp-2 +-0x1.108176p+1 +-0x1.8c30c6p+1 +-0x1.084082p+3 +0x1.5ad252p+1 +0x1.c292c2p-4 +-0x1.31a53ap-4 +0x1.c3afp-7 +0x1.967b8cp+1 +0x1.185164p-2 +-0x1.9137acp-1 +-0x1.43fc64p+1 +0x1.4b91c2p-1 +-0x1.b317f6p+1 +0x1.4a4e98p-7 +0x1.449a4ap-3 +0x1.5949e4p+1 +0x1.2e1846p-1 +-0x1.a2118p-1 +-0x1.24f4d8p-3 +0x1.85ec84p+1 +-0x1.6b47dep+1 +-0x1.bea2f6p-2 +-0x1.9f1a1ep+3 +-0x1.9bb644p-1 +-0x1.773ffep-5 +0x1.192ad2p+2 +0x1.534a58p+0 +-0x1.b68d7cp-1 +-0x1.2836d6p+0 +-0x1.de7844p+0 +-0x1.c2bbf6p+1 +0x1.b46346p-4 +0x1.e65288p-2 +0x1.7355b6p-2 +-0x1.26aeb4p+3 +-0x1.351a9cp-4 +-0x1.ef0e14p-2 +0x1.2a4abap-1 +-0x1.19c2cap+1 +-0x1.36a336p-4 +0x1.784352p-3 +0x1.96f24p+1 +-0x1.c19ae8p-1 +-0x1.3297f8p-4 +-0x1.e48354p-3 +0x1.7b33dep-1 +-0x1.6d82dcp+1 +0x1.e95628p-1 +0x1.4c4672p+1 +-0x1.02603p+0 +-0x1.2111p+0 +0x1.e3b636p-2 +-0x1.35a41ep+0 +0x1.f0b27p-1 +-0x1.229a2p-4 +0x1.544d02p-1 +-0x1.14c224p+2 +0x1.55c23p-1 +0x1.3c8eeep-1 +-0x1.2db0bep-4 +-0x1.08b4d6p+0 +-0x1.34e21ep-4 +-0x1.209ab8p+1 +-0x1.3e751p+0 +0x1.5a36f6p+1 +-0x1.4e6874p+1 +0x1.ef9c56p+2 +-0x1.abd05ep-2 +-0x1.240f5cp+1 +0x1.a5b1dap+1 +-0x1.2fe2ep-2 +0x1.190e9cp+2 +-0x1.1f19cep+1 +-0x1.5e8984p+1 +-0x1.13e68cp-5 +-0x1.2b7158p+1 +-0x1.14ca8p+2 +-0x1.72a042p+1 +-0x1.4a5f58p-2 +0x1.8487aep+1 +0x1.d9e78p+1 +0x1.b782ecp-2 +-0x1.8e3d8cp-5 +0x1.55972ap+1 +0x1.1993a6p+2 +0x1.0e317p+2 +-0x1.60a1e2p-2 +0x1.947566p+1 +0x1.455f28p-1 +0x1.2270bep-2 +-0x1.2a9576p+0 +-0x1.995a66p-1 +-0x1.14c224p+2 +-0x1.51fbcap+1 +0x1.fc0e86p+0 +0x1.15172p+0 +-0x1.34c418p-3 +0x1.176bc2p+2 +-0x1.c54b18p-5 +-0x1.548d3p+1 +-0x1.7983cap+1 +0x1.27f4bap+2 +-0x1.69b152p-1 +-0x1.299848p-1 +0x1.0324cap+3 +-0x1.32a1d6p-4 +-0x1.4fd9cp+0 +0x1.6cf24p+1 +-0x1.57b3fcp-1 +-0x1.33e9a6p-4 +0x1.781074p-10 +-0x1.1ba9bcp+0 +0x1.1a5178p+2 +-0x1.535882p+1 +0x1.9bef5cp+1 +-0x1.adc8a6p-2 +-0x1.c3536p-1 +-0x1.f85feep+2 +-0x1.2544bp+1 +0x1.fc9ef4p-2 +0x1.49aa9p+1 +-0x1.e5f78ap-4 +0x1.73cdc8p-4 +-0x1.501f9ap+1 +-0x1.3050c6p-2 +-0x1.4ddd24p+1 +-0x1.31c498p-4 +-0x1.54e8b2p-4 +-0x1.32eb68p-4 +-0x1.49c4c2p+3 +0x1.b437eap-5 +-0x1.a149a4p+1 +-0x1.31867p-4 +0x1.729434p+1 +-0x1.4ecf7cp+1 +0x1.2f09p-1 +0x1.792de6p-2 +-0x1.760a02p-1 +-0x1.00044ap+1 +-0x1.2ca72ap+1 +-0x1.28bb78p-4 +0x1.0c6ef6p+2 +-0x1.6541ep+0 +0x1.a17bbp+1 +-0x1.43fa36p+1 +-0x1.f01772p-1 +-0x1.2fb4fep-2 +-0x1.090966p+0 +-0x1.3429bp-4 +-0x1.8663d2p-2 +-0x1.687992p-2 +-0x1.201236p+1 +0x1.8eea1p+1 +-0x1.4ca762p-2 +0x1.1accb4p+2 +-0x1.2e1a5ap-4 +0x1.885802p-4 +-0x1.8f22eep-4 +-0x1.013a28p-2 +-0x1.6c4176p+1 +-0x1.5467dap+1 +-0x1.3965aep-2 +-0x1.7af334p+1 +-0x1.20fc2ep+1 +-0x1.c65aacp-4 +-0x1.31be86p-4 +0x1.9a0464p-3 +0x1.808ff4p-1 +0x1.83ebcep+1 +0x1.bf2bap-4 +-0x1.6ea6eep+1 +0x1.3c0614p+1 +-0x1.67be1p-3 +-0x1.5e68cep+1 +-0x1.0fe648p-1 +-0x1.8d5ae2p-1 +0x1.239e2ep-3 +-0x1.3204eep-4 +0x1.be1176p-4 +-0x1.36bd38p-4 +0x1.6f607cp+1 +0x1.d7ce82p-3 +-0x1.6eeff6p+0 +0x1.0d7c94p+2 +0x1.f4c93cp+0 +0x1.9c2fccp-2 +-0x1.1a65cap+1 +-0x1.89d558p+1 +0x1.89e702p-1 +-0x1.dc78b6p-3 +-0x1.114834p-7 +0x1.8a616ep+0 +-0x1.359ecep-4 +-0x1.3bf01p+1 +-0x1.4c0a78p+0 +-0x1.b84bfp-4 +0x1.7f4842p-5 +0x1.1eeabcp-1 +0x1.720f42p-2 +-0x1.497d2ep+1 +-0x1.2c5a1ep+1 +0x1.1cd364p+2 +-0x1.32f838p-4 +0x1.11ebbp-1 +0x1.08e6dep-1 +-0x1.4bbf28p-3 +0x1.765a02p+0 +0x1.a5db9p+1 +-0x1.635d1cp+0 +-0x1.16d85cp+0 +0x1.48e082p+0 +0x1.31a8d4p+1 +-0x1.ca1c54p-2 +0x1.58fc9cp-2 +-0x1.2fd26ep-4 +0x1.22db18p-6 +-0x1.2ced4ep-5 +-0x1.2842a8p-4 +0x1.181b6ap+2 +0x1.97c4dep+1 +-0x1.7161a8p-1 +0x1.012b68p-1 +-0x1.cfb272p+0 +0x1.18976ap+2 +0x1.3fde66p-1 +-0x1.330cap-4 +0x1.62cb5p+1 +-0x1.2eb88cp-4 +-0x1.6a2b6ep+1 +-0x1.35072ep-4 +0x1.2ecd0ep+1 +0x1.93a21ep-1 +0x1.9e53bp+1 +0x1.087e3cp-5 +0x1.af8516p-2 +0x1.0e74ap+2 +-0x1.ec4bc8p+2 +-0x1.8a5d82p+1 +0x1.5ea982p-1 +-0x1.3541cp-4 +-0x1.74371p-1 +-0x1.e06d5cp+0 +-0x1.3280bcp-4 +-0x1.32f774p-4 +-0x1.70ac58p+1 +-0x1.2f25aep+2 +-0x1.0dc2d8p-2 +0x1.ac224ep-4 +-0x1.bfcde4p-2 +0x1.83ce48p+1 +-0x1.0d8bb4p-4 +0x1.4ba414p-2 +0x1.5fbf6p-1 +0x1.a05ff8p+1 +-0x1.01cd14p-1 +-0x1.365478p-4 +-0x1.8f732ap-5 +-0x1.fb09ecp-1 +-0x1.043ec6p+1 +0x1.01f7cep-1 +-0x1.30f7dep-4 +-0x1.76a19p-3 +-0x1.feec72p+0 +-0x1.5eeaeep-1 +-0x1.723032p-2 +-0x1.e591b6p-2 +-0x1.6a82acp+0 +0x1.520614p+1 +-0x1.efe32p-3 +0x1.13cecap+2 +0x1.a002aep+1 +0x1.122dbep-1 +-0x1.3182d6p-1 +0x1.2904c2p-3 +-0x1.940cd6p+0 +-0x1.2bc316p-4 +-0x1.af4b52p-2 +-0x1.97f2a2p+1 +0x1.99bbe4p+1 +0x1.17c292p+2 +-0x1.268ae2p+2 +-0x1.46e27ap+1 +0x1.8e6e42p+1 +0x1.1d204ap+2 +0x1.ba4234p-6 +-0x1.354224p-4 +0x1.1a24ap-1 +-0x1.205ce8p-2 +0x1.1dc96ap+2 +-0x1.43b982p+2 +0x1.4cedfep+0 +0x1.28bdf8p+0 +0x1.07dcc6p-1 +-0x1.4e5178p-1 +-0x1.069086p+3 +-0x1.561432p+0 +0x1.4d9a08p-1 +-0x1.3628c8p-4 +-0x1.4fdecep+1 +0x1.b049bep-2 +0x1.01e4a6p+0 +-0x1.a1647ep-1 +0x1.d9e2p+1 +-0x1.35f696p-4 +0x1.92dbaap+1 +-0x1.360078p+1 +0x1.bfc58ep-3 +-0x1.d32e94p+0 +0x1.37975p-3 +-0x1.1ca94ap+4 +0x1.902da4p+1 +0x1.95e31cp+1 +0x1.2aee2ap-1 +-0x1.65d58ap+1 +-0x1.00451cp+1 +0x1.19be14p+2 +-0x1.87759ep+1 +0x1.42e32p-2 +-0x1.2f5a58p-4 +-0x1.27fb92p+2 +0x1.78136cp+1 +0x1.27ad7p+1 +0x1.0d92bep-2 +0x1.4eca7p+0 +-0x1.35f8c8p-4 +0x1.573b4cp-3 +0x1.a78904p+1 +-0x1.477fcp+1 +-0x1.d5d7fap+3 +-0x1.492ee2p+1 +0x1.813bf6p+1 +-0x1.785124p+0 +-0x1.539ccep+1 +0x1.c7229ep+2 +-0x1.52da9ap-1 +0x1.3eaceep-1 +-0x1.efcbf2p-3 +0x1.00ef8ep-4 +0x1.f4ba56p-1 +-0x1.5ef02ap+0 +-0x1.345798p-4 +-0x1.fe005ap+2 +0x1.a79bf6p+1 +-0x1.4c5ebep-4 +-0x1.14c224p+2 +-0x1.0182a6p+1 +-0x1.72f084p+1 +0x1.9714b8p+1 +0x1.63ea48p-4 +0x1.006dfp-1 +0x1.d9e87p+1 +0x1.584fecp-2 +0x1.479bp-2 +0x1.83c21cp+1 +-0x1.bd177cp+0 +0x1.ae7256p-4 +-0x1.31ad44p-1 +-0x1.154218p+1 +0x1.55e3f6p-1 +-0x1.0a097cp+1 +0x1.a4aa2cp+1 +-0x1.2c0b1ep-4 +0x1.03afbp-1 +-0x1.4457b4p+0 +0x1.768e52p-5 +0x1.4e0458p-1 +-0x1.591124p+1 +0x1.1b53d2p+2 +0x1.117152p-1 +0x1.ac1a62p+1 +0x1.036db4p-4 +-0x1.99fccp-3 +0x1.aefd9cp+1 +0x1.67622p+1 +-0x1.7b603ap-7 +-0x1.369f8cp-4 +-0x1.47ef54p+0 +0x1.8ccf44p+1 +-0x1.1c9e86p-7 +-0x1.f1b734p+0 +-0x1.2f5b3ap-4 +0x1.df5724p+0 +-0x1.32bc2cp-4 +-0x1.b1437p+0 +-0x1.273b8p-4 +-0x1.dc6104p-1 +-0x1.5944d6p+1 +-0x1.2b1dccp+1 +-0x1.5cad7cp+0 +0x1.71a4fp-2 +-0x1.5e61e8p-2 +0x1.17f392p+2 +0x1.301478p-2 +-0x1.32d82ap-4 +-0x1.6e3d4ep+1 +0x1.15097ep+2 +-0x1.d498a2p-6 +0x1.c33044p-4 +-0x1.5c56e8p+2 +-0x1.07d544p-1 +-0x1.2c81fcp-4 +0x1.4add72p+0 +0x1.eda0dap-2 +-0x1.9f8208p+1 +0x1.44f78p-1 +-0x1.632352p+0 +-0x1.f30448p-1 +0x1.756074p+1 +0x1.46dc4p-2 +-0x1.30e0cp+1 +0x1.1da808p-2 +0x1.4c0066p-1 +0x1.57c40ap-4 +0x1.0ed704p-2 +0x1.e20af6p+0 +0x1.3f9d9ep-1 +0x1.e3963cp-2 +0x1.9962bep+1 +0x1.1970e4p+2 +-0x1.367d5ap-4 +0x1.7c379cp-3 +-0x1.535108p+1 +-0x1.a18f2ap+0 +-0x1.15105ep+2 +0x1.1b784p+2 +0x1.3a4166p-3 +0x1.b7f37ep-1 +0x1.2329bp-4 +0x1.5b87b6p+1 +-0x1.5ee2bcp+0 +-0x1.8b0e2ep-2 +-0x1.56d3ep+1 +0x1.10f4dep+2 +-0x1.0bf5a6p+0 +-0x1.732da6p-4 +0x1.03c83ap+1 +-0x1.47477ep+1 +-0x1.1a484cp+0 +0x1.54e216p+1 +-0x1.607414p+1 +0x1.3af45ep+1 +0x1.2d35dap-3 +-0x1.6c0594p+0 +-0x1.337242p-3 +0x1.9c45e4p+1 +-0x1.63708cp-2 +0x1.58e512p+1 +-0x1.40e748p-7 +0x1.6d6436p-2 +-0x1.70756p+3 +-0x1.13d5bp+1 +-0x1.0bdb8ap+3 +0x1.76ba4ap+1 +0x1.74c826p+1 +-0x1.30a1d8p-4 +0x1.210e5cp-2 +0x1.0d781ap+2 +0x1.8e798cp+1 +-0x1.35df74p-4 +-0x1.2e04dcp-4 +0x1.66940ep+1 +0x1.6a04b2p-2 +0x1.d7c0c6p-6 +-0x1.3777d8p-1 +0x1.781b4ap+0 +0x1.9b9eb6p-4 +-0x1.52ca5cp+1 +-0x1.bd3f38p-2 +0x1.321e0ap-1 +-0x1.139e9ap+1 +0x1.a54e7p+2 +0x1.e5424ap-4 +-0x1.e1a202p-1 +0x1.9663a2p+1 +0x1.5168ccp+1 +-0x1.4a0188p-2 +-0x1.fa0c48p-1 +0x1.6c0bccp+1 +0x1.0e3b7cp+2 +0x1.1e5b42p+0 +0x1.cc844p-2 +-0x1.637bccp+1 +-0x1.36ad66p-4 +-0x1.156c24p+1 +0x1.71e292p-2 +-0x1.d9793ap-1 +0x1.fa92f8p-3 +-0x1.488b06p+0 +0x1.07cd1ap-4 +-0x1.8702a2p-2 +-0x1.225c9ep+1 +-0x1.7f7204p-3 +0x1.3a85c6p-2 +-0x1.1f5404p+1 +0x1.2c18aep-3 +-0x1.02c0aep-5 +-0x1.5e04dcp+1 +0x1.7c36b8p+1 +0x1.96c038p+1 +-0x1.db2e8cp-2 +-0x1.cd07d8p-3 +0x1.7b3e0cp+1 +0x1.1c8c62p+2 +-0x1.617268p+1 +-0x1.e6645p+0 +-0x1.08b348p-4 +0x1.1ac63ep+2 +0x1.0dfb3cp+2 +0x1.1e3e4ep-1 +0x1.6dc63cp+1 +-0x1.45a632p-3 +0x1.714c24p-2 +0x1.ee9792p-1 +0x1.afc428p-2 +-0x1.07fedcp+0 +0x1.55a38ap-2 +0x1.14c72ep-2 +0x1.226b88p-1 +-0x1.2f4d32p-4 +0x1.3e2c1ap+0 +0x1.6a05d4p+1 +0x1.14bf0cp-1 +-0x1.32a40cp-4 +-0x1.a5aa4ap-5 +-0x1.1f319ep+2 +0x1.3b6b16p-2 +0x1.d9e6f2p+1 +0x1.0186fp-1 +0x1.14dcdcp-3 +-0x1.73ec3ep+1 +-0x1.0e6aaep-3 +0x1.9ea2f4p+1 +-0x1.13233ap+4 +-0x1.34f558p-4 +-0x1.0e0352p-1 +-0x1.737926p-2 +0x1.645f06p-4 +0x1.7073b4p+0 +0x1.1e13a6p+1 +-0x1.03cef8p+1 +0x1.131784p+2 +0x1.11a526p+1 +-0x1.fcbca6p+0 +0x1.7b65e6p-2 +-0x1.418c16p+1 +0x1.38fd4p-1 +0x1.62fe14p+1 +0x1.780cb6p+1 +-0x1.e8d1fp-1 +0x1.228b02p-6 +0x1.85b9dcp+1 +0x1.0e283ap+2 +-0x1.d5a52cp+0 +-0x1.9209b4p+3 +-0x1.cb4b88p+1 +-0x1.71d56ap+0 +-0x1.43d83ep-8 +-0x1.354fcep-4 +0x1.816a8p+1 +-0x1.0c00ccp-4 +-0x1.3700fep-4 +0x1.74853cp-5 +-0x1.f78656p-2 +0x1.1b84a2p-1 +-0x1.dad15p-2 +-0x1.46dffp+1 +-0x1.b7d5e6p-2 +-0x1.b73ee2p-11 +0x1.81e878p+1 +-0x1.2dd9f4p-4 +0x1.1c6e4p+0 +0x1.207204p-1 +-0x1.8ba2fap-1 +0x1.4b0e1p+0 +0x1.7606eep+0 +0x1.6125b2p+1 +-0x1.8e964ep-1 +0x1.9e5e94p+1 +-0x1.326f4p-4 +0x1.a89b54p+1 +-0x1.6378d8p-1 +-0x1.23a9d2p+2 +0x1.892ac4p+1 +0x1.4aef3cp+1 +-0x1.87e214p+1 +-0x1.52ebf8p+1 +0x1.78eedap+1 +-0x1.6185eap+3 +-0x1.28c228p+2 +-0x1.975928p+1 +0x1.31bdbcp-4 +0x1.86aec2p-7 +0x1.5abb42p-2 +-0x1.18b8f8p-2 +-0x1.73433ep-2 +-0x1.6ec38ap-3 +0x1.1a330ep+2 +-0x1.97b946p+2 +0x1.077e5p+1 +0x1.18f0a4p+2 +-0x1.351ab4p-4 +0x1.3817d8p-1 +0x1.55e486p+1 +-0x1.1deec8p-1 +-0x1.838984p+0 +-0x1.bfe726p+0 +-0x1.139b52p+4 +0x1.1c8ecap+2 +-0x1.385deep-2 +0x1.7ad5bep+1 +-0x1.ca4ea2p-1 +-0x1.528404p+1 +0x1.965e58p+1 +-0x1.3f8154p+1 +-0x1.dfabap-2 +-0x1.303b3cp-4 +0x1.15e698p+1 +0x1.15663ep+0 +-0x1.38e5bep+1 +0x1.1aa762p+0 +-0x1.f4a76p+0 +-0x1.34a1a8p-4 +-0x1.287326p+1 +-0x1.243778p+1 +0x1.b13e2p-2 +0x1.18aaacp+2 +-0x1.399494p+1 +0x1.6a5d54p+1 +-0x1.329d12p-4 +-0x1.4e209ap+1 +-0x1.0406fcp+1 +0x1.d1f2eep-4 +0x1.3be89cp+1 +0x1.ad9acap-2 +0x1.1303e6p-1 +-0x1.8dd6bap+3 +-0x1.7fe85ap-3 +0x1.964c34p-2 +-0x1.060912p+1 +-0x1.f2eff6p-6 +0x1.39aeacp+1 +0x1.83e306p+1 +-0x1.3cc9c2p+1 +-0x1.296034p-4 +0x1.d3fe14p-2 +0x1.5a2b0ep+1 +-0x1.687954p-5 +0x1.1947f8p-2 +0x1.0d6d1p+2 +-0x1.d56f06p-1 +-0x1.64804p+1 +-0x1.2d370ep-4 +-0x1.fd54b6p-1 +-0x1.469a58p+1 +-0x1.2600ccp-3 +0x1.4a52a2p+1 +0x1.143b5ap+1 +-0x1.3ee13p+0 +0x1.992f76p+1 +-0x1.22f3aap-1 +0x1.0c5358p-2 +-0x1.8268f2p-12 +-0x1.4a87f2p+0 +0x1.f09afcp-2 +0x1.c8f29ap+0 +0x1.5f28ccp+1 +-0x1.5b39b2p+1 +0x1.ceaa38p-6 +0x1.1971ecp+0 +-0x1.0db4d4p+0 +-0x1.31e0c6p-4 +-0x1.29491ap-4 +-0x1.32b39ep-4 +0x1.b237d8p-3 +0x1.937e58p+1 +-0x1.130dccp-7 +0x1.86e96p+1 +-0x1.bf69d8p-3 +-0x1.36035cp+4 +-0x1.58c7b8p+0 +-0x1.49eb1ep+1 +0x1.5c5262p-1 +0x1.53fcc8p-2 +0x1.3bc1f6p+1 +-0x1.347122p-4 +0x1.774766p+1 +-0x1.b131c6p+0 +-0x1.1ab9fcp+0 +-0x1.312e72p-4 +-0x1.6158bp+1 +0x1.020bf2p-1 +-0x1.95e65cp-1 +0x1.0f855p-1 +0x1.753114p-2 +-0x1.fa4ap-2 +-0x1.f5789cp+0 +0x1.c7f504p-5 +0x1.130f1ep-1 +0x1.8259d6p+1 +0x1.fd4d5p-2 +-0x1.09fbb6p+1 +0x1.0d403p+2 +-0x1.3fedf6p-4 +-0x1.4e95b4p+3 +0x1.157abep+2 +0x1.1581cp+2 +0x1.0f18ccp+0 +-0x1.ba5008p-3 +-0x1.0450f4p-2 +0x1.9f78b4p+1 +0x1.45e0dap-1 +0x1.700002p+0 +-0x1.c749d2p+1 +0x1.2d70bp+1 +-0x1.6772e2p-3 +-0x1.68b22ep+0 +-0x1.9767ecp+0 +-0x1.29b4dap-4 +0x1.e3f134p-1 +-0x1.31b36ap-4 +-0x1.bc7d5p+1 +-0x1.0f42fp+0 +-0x1.7f8552p+0 +0x1.10d28ep+1 +0x1.1a463cp+2 +0x1.2478a6p-9 +-0x1.2a63acp+1 +0x1.1d6f0ep+2 +0x1.4ca544p-2 +-0x1.fb922ep-12 +0x1.798756p+2 +0x1.8c9b7cp+1 +0x1.0d1ff2p+2 +-0x1.67d556p-1 +-0x1.44c0f4p-4 +-0x1.2e8d9ep-4 +-0x1.dcc188p-2 +-0x1.9624d4p+1 +-0x1.649b1p-1 +0x1.a69b1p+1 +0x1.fb523cp-1 +0x1.57c3fep-2 +0x1.6a83a8p-8 +-0x1.33fc56p-4 +0x1.a6601ep+1 +-0x1.552a5ep+0 +-0x1.5cd282p+4 +-0x1.014422p-2 +0x1.919078p+1 +-0x1.03e91cp+0 +0x1.4e8f42p+1 +0x1.49c32p-2 +0x1.1c34fap-1 +-0x1.d0cacp+2 +-0x1.a6e4a6p-3 +0x1.1979d2p+2 +-0x1.5c7444p+1 +-0x1.204fa8p+1 +-0x1.74de44p-5 +0x1.0d3e2ep+2 +-0x1.59b50cp-2 +0x1.1d7a2cp+2 +-0x1.d84d02p-2 +-0x1.e823d4p-4 +-0x1.a6bf2p-1 +0x1.8e54fp+1 +0x1.a35faep-2 +-0x1.0c803p-1 +0x1.3d3d6ap+1 +0x1.bc89dep-1 +-0x1.3d136ap+1 +-0x1.1291d4p-6 +-0x1.864fb2p-4 +0x1.62ba24p-1 +0x1.6e8daep+1 +-0x1.5e7486p-4 +0x1.0e6faap+2 +0x1.31a202p-1 +-0x1.3cd606p+3 +-0x1.c5d49p+0 +0x1.1f738ap+0 +0x1.1c5f44p+2 +-0x1.072c08p-4 +0x1.0cf76cp+2 +-0x1.b957c4p-2 +-0x1.1ad3c8p-1 +0x1.b6578p-2 +-0x1.703f3ap-6 +-0x1.68a344p+0 +-0x1.eb8188p+0 +0x1.0e0802p+2 +0x1.dbd8e4p-2 +0x1.364246p-2 +-0x1.ffc1cep-1 +0x1.749832p+0 +-0x1.cf3a6ep-7 +-0x1.66df6p-1 +-0x1.1017bep+3 +0x1.05c8fcp-1 +-0x1.7ab2dap-7 +0x1.9d6a3p+1 +-0x1.337716p-4 +-0x1.c1934cp-1 +-0x1.138ebcp-1 +-0x1.35f16p-4 +-0x1.64780ap-6 +-0x1.167f94p+3 +-0x1.5158d2p+1 +-0x1.fdd872p-3 +0x1.a2b46p+1 +0x1.2436fcp-2 +-0x1.68d52ap-2 +0x1.8efb64p-3 +0x1.a0dc7ep+1 +-0x1.a0112cp+0 +-0x1.1a17cep+0 +-0x1.6c7ee2p+0 +-0x1.05f67cp+0 +-0x1.0b36b8p+3 +-0x1.36523ep-4 +0x1.f11a42p-1 +0x1.15ab74p+2 +-0x1.5bc8ecp+0 +-0x1.2ea89cp-4 +0x1.73c892p-1 +0x1.1bf5cep-2 +-0x1.81da28p+0 +0x1.08eee6p-1 +0x1.20aaa8p+0 +-0x1.433b2p-1 +-0x1.2e48c8p-4 +0x1.33ef54p-1 +-0x1.8d8fap-1 +0x1.a5c5bcp-4 +-0x1.3478eap-4 +0x1.2e3552p+0 +0x1.12a2dp+2 +0x1.e446b2p-4 +0x1.7979ecp+1 +0x1.166012p+2 +-0x1.454876p-2 +0x1.aa6f0ap-4 +-0x1.20bd32p+1 +-0x1.34c7d8p+0 +-0x1.4cfd8ap-7 +-0x1.36b0e4p-4 +-0x1.db3a1cp-3 +0x1.d9eabp+1 +0x1.9898dap+1 +-0x1.0fdefep+1 +0x1.7aa95ep+1 +-0x1.e05838p-1 +-0x1.11bb4ep+1 +0x1.9be3cap+1 +-0x1.36a57ap-4 +-0x1.2d24dp+4 +0x1.6f97eep+1 +-0x1.264e28p-3 +-0x1.152cbap+1 +0x1.136628p+2 +-0x1.a79d3ep-4 +0x1.1f1dd2p-1 +-0x1.3a5e08p-2 +0x1.74f1a2p-1 +0x1.0da394p+2 +-0x1.b18996p+2 +-0x1.326c62p-4 +-0x1.c774eep-1 +-0x1.6e756ep-2 +0x1.1d8ce4p+2 +-0x1.27e158p-2 +-0x1.ef3134p-1 +-0x1.d4146ep-5 +-0x1.8b522ap+3 +0x1.92447ap+1 +-0x1.184f48p+0 +0x1.17c732p+2 +-0x1.5fcfb6p+1 +-0x1.35528ap+1 +0x1.0ece64p+2 +-0x1.09e0c6p+1 +0x1.853272p+1 +0x1.0390dap-1 +-0x1.808252p-6 +0x1.b05244p+0 +-0x1.e4320ap-2 +0x1.3a682ep-1 +0x1.9939c2p+1 +-0x1.ff5038p-2 +-0x1.7c7414p+1 +0x1.1271c8p+1 +0x1.10db3ep+2 +0x1.08362ep+1 +0x1.7dc1fcp+1 +0x1.f9b97ep+0 +0x1.7f991p+1 +0x1.13b7fp-5 +-0x1.36f9a6p+1 +-0x1.bf33aap-17 +0x1.4d48eap+1 +0x1.814322p+1 +0x1.104532p+2 +-0x1.cc3924p-1 +0x1.a82e48p+1 +-0x1.8066e4p-1 +-0x1.31c88p-4 +0x1.1c0d22p+1 +0x1.45a4a2p+0 +-0x1.952a72p-2 +-0x1.b8945p+0 +0x1.4d78c8p+1 +-0x1.1d5f4p+4 +0x1.13ef6cp-1 +-0x1.808e5ap+1 +0x1.17c234p+2 +0x1.11b728p+0 +-0x1.a9d59cp-4 +0x1.8938aap-6 +-0x1.1f29cep+3 +0x1.c99c2ap-4 +0x1.6209eap+1 +0x1.15c72ap+2 +0x1.120c28p+2 +0x1.592c44p-5 +0x1.7b32e4p-3 +-0x1.ea1faep-3 +0x1.07e47cp-4 +0x1.1824e2p+2 +0x1.623f26p-1 +-0x1.535f3p-3 +0x1.5b77e4p+1 +0x1.166e9p+0 +-0x1.d7f864p-9 +0x1.6be938p+1 +-0x1.053aa8p-6 +-0x1.3a1f6p+0 +0x1.d11a72p-4 +0x1.066e6ep-1 +-0x1.553c24p-3 +0x1.4a1adep+1 +-0x1.165dfep-3 +0x1.9aea0cp+1 +0x1.3fa66p-1 +0x1.44717ep+1 +0x1.d4b5ep+0 +-0x1.4ce712p+1 +0x1.90dc5p+1 +-0x1.bb9926p+1 +-0x1.ea6a6p+0 +0x1.a4f664p+0 +-0x1.d0789ep+1 +0x1.47ff3p+0 +-0x1.a4582ap-2 +0x1.0f1fbcp+2 +-0x1.851cbep+0 +-0x1.cad56p+0 +0x1.fb3c08p-1 +-0x1.8600c4p+0 +-0x1.280b14p-4 +0x1.453bcep+1 +-0x1.65a45p-2 +-0x1.02c716p+1 +-0x1.0f67dcp+0 +-0x1.3329dcp-4 +-0x1.813234p+0 +0x1.48ab04p+0 +0x1.959152p+1 +0x1.1d050ap+2 +0x1.44c6dcp-3 +0x1.18537cp+2 +-0x1.92e60ep+1 +-0x1.525a6p+3 +0x1.279f9ap-1 +0x1.d03c6p-2 +-0x1.95b67p-2 +0x1.2b892p+1 +0x1.8aed26p+0 +0x1.71a006p+1 +0x1.2e8d8cp+0 +-0x1.56105cp-2 +-0x1.361ac2p-4 +0x1.e8907cp-3 +0x1.2e161p+2 +0x1.10c198p+2 +0x1.e31decp+2 +-0x1.413e02p+1 +-0x1.c12e1p-2 +0x1.9daef2p-2 +-0x1.b2a0f4p+0 +-0x1.59e422p-3 +-0x1.041c7ep+0 +0x1.790cd8p+1 +0x1.6650fcp+1 +-0x1.35f2dep-4 +-0x1.ff881cp+0 +-0x1.2704d2p+1 +0x1.9e0808p-3 +0x1.96a51p+1 +0x1.1aeb02p+2 +-0x1.2e50b8p-2 +-0x1.74685cp+1 +0x1.9bf692p+1 +-0x1.35fff4p-4 +-0x1.41eb4ap+4 +-0x1.e8ac7p+1 +0x1.4c0388p-1 +-0x1.30d8aap-4 +0x1.a4a072p+0 +-0x1.437f74p+1 +-0x1.1593a4p+0 +0x1.77bdeep+1 +0x1.7cda62p+1 +-0x1.19d11cp+2 +0x1.1de2e2p+2 +0x1.964d1p-4 +-0x1.db69fep-2 +-0x1.a3d6cep-3 +0x1.9f68cap-2 +-0x1.04116cp-5 +0x1.05b658p-1 +0x1.1d7a04p+0 +0x1.19b26ap+2 +0x1.0d19eep+2 +0x1.6ddca6p-2 +0x1.429242p-2 +0x1.79bd98p-2 +0x1.460756p+1 +0x1.4ef02p-3 +0x1.5ab3bap+1 +0x1.81525ep+1 +-0x1.21c3bcp+1 +0x1.99bf02p+1 +-0x1.f42bc6p+0 +0x1.2191ap+2 +-0x1.1fa0bcp+2 +-0x1.1e539cp-3 +0x1.1aaaaep+2 +0x1.1e9862p-2 +-0x1.34fb92p-5 +0x1.78626ep+1 +0x1.a1dd9ap+1 +-0x1.24e6dap+2 +-0x1.0d049p-3 +-0x1.ed15acp+0 +0x1.2c3006p-1 +0x1.751326p-3 +0x1.9b3f0cp+1 +-0x1.53880cp-2 +0x1.d9e45p+1 +0x1.ef5dfap+0 +0x1.aa1c96p+1 +0x1.746548p+1 +0x1.6f4152p-1 +-0x1.d895a6p-5 +-0x1.3de39cp+4 +-0x1.2d7adap-1 +0x1.5fe768p-1 +-0x1.2d176ep+1 +0x1.3c92eep+3 +0x1.76be62p+0 +0x1.91f7aap+1 +0x1.cba684p-2 +-0x1.350b24p-4 +0x1.e89612p+0 +-0x1.e0d5dcp-1 +-0x1.7c4b6ep+1 +-0x1.ce6d08p-4 +-0x1.e4e1fp+0 +0x1.1e69a6p+2 +-0x1.a72352p+2 +-0x1.fa0866p-3 +0x1.193b9ep+2 +-0x1.e5a2dcp+0 +0x1.bac746p-4 +-0x1.a74954p+1 +0x1.b6958ap+1 +0x1.10dfd8p+2 +-0x1.238eeep+1 +0x1.5fef46p+0 +-0x1.b72a8ap-1 +0x1.f9e15ep-2 +0x1.d82a3ap-8 +-0x1.28248ap+1 +-0x1.aa113ap-5 +-0x1.1a412ep+1 +0x1.679748p-1 +0x1.22106ep-2 +-0x1.3122d6p-1 +0x1.0c6e18p+2 +0x1.a79f02p+1 +-0x1.8f3d18p+0 +0x1.14ddb2p-1 +0x1.7ebb34p+1 +-0x1.2e5b18p+3 +-0x1.c61e0cp+1 +0x1.59dcb4p+1 +0x1.79d2bap-3 +0x1.cfc494p-4 +-0x1.2ac43ap+2 +0x1.13727p+2 +-0x1.033e3ap-2 +-0x1.06p+5 +-0x1.23a906p-3 +0x1.bd019ep-2 +-0x1.f5986cp+0 +-0x1.313e8cp+1 +0x1.5ed728p-5 +-0x1.88d504p+1 +0x1.7a0fc8p+1 +-0x1.bba7fep-2 +0x1.2d0bccp+0 +0x1.68e3p+1 +0x1.8c6fb6p+1 +0x1.5531a6p-2 +-0x1.46bc7cp+1 +-0x1.706772p-3 +0x1.c008d6p+0 +-0x1.36eb54p-4 +-0x1.6f548p+1 +0x1.ffadf6p-4 +0x1.972fb6p+1 +0x1.d9eff8p+1 +0x1.0acaecp+0 +0x1.1a5ac2p+2 +0x1.79d0cep+1 +0x1.857eaep+1 +-0x1.0691d2p+1 +0x1.26905p-2 +-0x1.e91e28p-2 +0x1.0a9cbep-2 +-0x1.34f3f4p-4 +0x1.9f93d4p-2 +-0x1.b74e3p-1 +0x1.8300cap+1 +-0x1.43973ap+1 +-0x1.d1cb64p+0 +0x1.154c14p+2 +0x1.e48fap-1 +0x1.bc715ep-2 +-0x1.142f68p-6 +-0x1.ce93ep+1 +-0x1.c96304p-5 +0x1.0cde26p+2 diff --git a/benchtests/exp2m1f-inputs b/benchtests/exp2m1f-inputs new file mode 100644 index 0000000000..fc47072354 --- /dev/null +++ b/benchtests/exp2m1f-inputs @@ -0,0 +1,2388 @@ +## args: float +## ret: float +## includes: math.h +## name: workload-spec2017.wrf +-0x0p+0 +-0x1.092bd4p+2 +-0x1.8af5ecp-1 +0x1.45659p+3 +0x1.388742p+3 +0x1.3857eep+3 +-0x1.80f2ep+0 +-0x1.3a3adcp+1 +-0x1.07b87ap+0 +0x1.3c5c22p+3 +0x1.ede768p+2 +-0x1.bb5bcp-2 +-0x1.0e7d6ep+5 +-0x1.79ac4p+4 +0x1.20fe8ap+3 +-0x1.616dd4p+3 +-0x1.7d3bc2p+0 +0x1.0b8384p+0 +0x1.44422ap+3 +0x1.e3bce8p+2 +0x1.44d11ap+3 +0x1.cfdd92p+2 +-0x1.b5093p+1 +0x1.9d1724p+1 +0x1.9471bcp+2 +0x1.9ccc52p+0 +-0x1.e1ea14p+0 +-0x1.46d1ecp-3 +0x1.927332p-2 +-0x1.d553a2p+1 +0x1.923732p+0 +0x1.6aea06p+2 +0x1.92eb6cp-1 +-0x1.a7cd8ep+2 +-0x1.bda41p+2 +-0x1.312bb8p+1 +0x1.b52ab2p+1 +-0x1.a90d4ep+2 +-0x1.26bc92p+2 +-0x1.6035eep-3 +-0x1.7dbc7ep+3 +-0x1.736a64p-1 +-0x1.7595c8p+2 +-0x1.dade16p-1 +0x1.b3d2c8p+2 +-0x1.ec98dep+1 +-0x1.134a88p+0 +0x1.c5fafap+1 +0x1.255ee4p-3 +-0x1.2da37ep+6 +-0x1.7e171ep+0 +0x1.d9f48ap+2 +-0x1.75f3eep+2 +0x1.3e8f9ap+3 +-0x1.608296p-3 +0x1.b5f2dcp+2 +0x1.d86428p+0 +0x1.412beap+3 +-0x1.3ea40ap+1 +-0x1.41dfc4p+2 +-0x1.21bd5p-2 +-0x1.54fdf8p+2 +-0x1.608d6ap-3 +-0x1.863facp+2 +0x1.ae490ap+2 +-0x1.b04428p+0 +0x1.e5a47p+1 +0x1.bcf1aep+0 +0x1.3c662ap+0 +-0x1.3b0756p+0 +-0x1.6bafb2p+2 +0x1.7bc0dcp+2 +0x1.444f44p+3 +0x1.44609ap+3 +0x1.165ffep+0 +0x1.d47be6p+2 +-0x1.4263ecp+1 +-0x1.8e061ep+2 +0x1.0f0eb8p+0 +-0x1.3fd988p+2 +0x1.4f49f6p+1 +-0x1.543c3cp+3 +-0x1.5f0aa4p-3 +-0x1.5c3fa2p+2 +-0x1.82b9b2p+2 +-0x1.64ce3ap-3 +0x1.79f9f8p+2 +0x1.b24b12p+2 +-0x1.43658cp+3 +-0x1.658068p+0 +0x1.203d1cp+0 +-0x1.c142c6p-1 +0x1.9a1cd6p+1 +-0x1.ade766p+1 +0x1.daf22p+2 +-0x1.62f814p-1 +-0x1.79bb9cp+0 +-0x1.38a3e4p+0 +-0x1.dea0fp+2 +-0x1.f09064p+1 +0x1.e8baep-1 +-0x1.deb80cp+0 +0x1.bc846ap+2 +0x1.ebc59ep+2 +-0x1.4e3848p+3 +0x1.d42b04p+2 +0x1.e0cb2ep-3 +-0x1.7ee3d6p-2 +0x1.dfc3a4p+2 +-0x1.7b7d56p+2 +-0x1.59d8b6p+2 +-0x1.17cea4p+0 +-0x1.a9839ep+2 +0x1.e985b6p+2 +-0x1.eb72dp+2 +0x1.0dd7aep-1 +-0x1.0325eap+1 +0x1.a7f02ep+1 +-0x1.fab7e2p+1 +0x1.ab8e12p+2 +0x1.a28b4ep+2 +0x1.136d86p-4 +-0x1.eafep+0 +-0x1.a5b8ep+4 +-0x1.217af6p+0 +-0x1.517d18p-1 +-0x1.525346p+2 +0x1.4b30ccp-1 +-0x1.5ea04ep-3 +-0x1.b96c1p+2 +-0x1.23c61ep+1 +0x1.1e53dcp-2 +-0x1.f550e2p-2 +0x1.9d8e66p+0 +0x1.c1578cp+2 +0x1.c4bbfcp+2 +-0x1.5a1902p+2 +0x1.d8469cp+2 +0x1.43d612p+3 +-0x1.578826p+1 +-0x1.0ff7e6p+3 +-0x1.f89a3cp-3 +0x1.71853ap+2 +0x1.a8240cp+2 +-0x1.40a39ap+0 +-0x1.2130e4p+2 +0x1.3abdbep+0 +0x1.9b57d6p+0 +-0x1.21eed8p+3 +-0x1.593d7cp-1 +0x1.a0b0d4p+2 +0x1.1f2aa4p+0 +0x1.e06742p+1 +0x1.bab072p+2 +0x1.46825ep+1 +-0x1.6c8604p+2 +0x1.980152p+2 +-0x1.76b6eep-1 +0x1.3d30c2p+3 +0x1.996adap+2 +0x1.3b8866p+3 +-0x1.7b4842p-2 +-0x1.1df6b8p-1 +-0x1.daa564p+2 +0x1.cc7028p+1 +0x1.71de86p+0 +-0x1.6c3d08p+0 +0x1.91c468p-1 +-0x1.3ba51ep-3 +-0x1.135962p-4 +-0x1.1f891p+2 +0x1.aa1e92p+2 +0x1.ccb4eap+2 +0x1.cca312p+2 +-0x1.bbb332p-3 +-0x1.e86bc8p+1 +0x1.53c07ap-1 +0x1.35d8cp+3 +0x1.47f866p+0 +0x1.9808a4p-1 +-0x1.fbf91cp+2 +-0x1.956b98p+1 +-0x1.8c3e7ap+2 +-0x1.a907e2p+2 +-0x1.792b7p+1 +-0x1.5c0e9p-7 +0x1.4629ecp-1 +0x1.30fed6p+1 +-0x1.aa670ap+4 +-0x1.65a70ap-2 +0x1.668866p+0 +0x1.572f5cp-2 +-0x1.55aa82p+2 +-0x1.1336c2p+1 +0x1.3a2c32p+2 +0x1.17d2b8p-1 +0x1.c1f8bcp+1 +0x1.10cb0ep+3 +-0x1.b28c42p+1 +-0x1.adc0fcp-1 +-0x1.7260c4p+2 +-0x1.5e4ae4p-2 +0x1.a4763ap+2 +-0x1.314ab2p-3 +-0x1.81ef1cp+2 +-0x1.a36d9ep+2 +-0x1.d85266p-1 +-0x1.503506p+5 +0x1.45401ep+3 +-0x1.0b5af6p+0 +-0x1.bfd03ap+2 +0x1.487766p+3 +-0x1.490c08p+4 +0x1.5f2852p-3 +-0x1.0e805cp+0 +-0x1.4d25aap+5 +-0x1.14973ep+2 +-0x1.a416b2p-1 +0x1.0e2bccp+1 +0x1.213eb8p-4 +0x1.3fabaep+0 +0x1.ebf592p-1 +-0x1.58f156p+2 +-0x1.e47384p-1 +0x1.41a968p+3 +-0x1.62169ap+1 +-0x1.24518ap+0 +-0x1.2b3848p+2 +-0x1.2473e2p+2 +0x1.cbf3f6p+2 +0x1.c7647ap-1 +0x1.0d0038p-1 +0x1.35fc7ep+3 +0x1.3f8aa6p+3 +-0x1.647b64p-3 +-0x1.5bbab6p-3 +-0x1.79c962p+2 +-0x1.57007ap-3 +-0x1.06533ap+2 +-0x1.43c814p+0 +0x1.8b8652p+0 +0x1.872cb8p+0 +-0x1.7b02ap-3 +-0x1.111332p-2 +-0x1.5cfe1ep-3 +-0x1.5da536p-3 +0x1.10caacp+3 +0x1.ae6508p+2 +0x1.3bef7ap+3 +0x1.282ec8p+2 +-0x1.9a2e56p+2 +-0x1.5bf556p-3 +-0x1.010ea8p+3 +0x1.7b5c7ap-2 +-0x1.648d0ap+0 +-0x1.4f6a82p+0 +0x1.432dcep+3 +0x1.78819ep+2 +-0x1.417cfap+2 +-0x1.9c93eap+2 +-0x1.477822p+2 +-0x1.5f354ep-3 +0x1.3752eep+2 +-0x1.d8cd0ap+2 +-0x1.08e0a4p+0 +0x1.87b0b8p+0 +-0x1.32451ep+1 +0x1.305e7p+0 +-0x1.649322p-3 +-0x1.a2bp-2 +-0x1.60850cp-3 +-0x1.60f59ap-3 +0x1.79ce2cp-1 +-0x1.647d6ap-3 +0x1.a828ep+0 +-0x1.7cd6ep+0 +0x1.44835ep+3 +0x1.0bd40cp+0 +-0x1.b370ccp+0 +-0x1.b13c84p+2 +0x1.82c1dp-1 +-0x1.529398p+5 +-0x1.1a187ep-3 +0x1.d57a16p+2 +0x1.30bf36p+2 +-0x1.449d04p+3 +-0x1.569fcep-3 +-0x1.185e66p+4 +0x1.e631eap-2 +-0x1.ac70f6p-1 +0x1.4627e8p+3 +-0x1.633cc4p-3 +0x1.9f868ep+2 +-0x1.db78ep-1 +-0x1.6b700ap+2 +-0x1.04137ep+1 +0x1.6b8552p+0 +0x1.37ad6p+3 +0x1.75f16p+3 +-0x1.811434p+1 +0x1.417fcep+3 +-0x1.f1ce28p-2 +0x1.363584p+3 +0x1.ff1094p+1 +0x1.90a454p+2 +-0x1.cb3544p+1 +-0x1.651e0ep-3 +0x1.80cdf4p+3 +0x1.5fcd1ap+0 +-0x1.31335cp+5 +0x1.aa75dep+2 +0x1.db9a66p+0 +-0x1.52754p+3 +0x1.10a55ep+0 +0x1.cae0eap+2 +0x1.c6af44p-1 +-0x1.cde492p+1 +-0x1.93aab4p+1 +-0x1.1213c4p+2 +-0x1.9c4b32p+0 +-0x1.d8fa66p+0 +0x1.5cf4a6p+2 +-0x1.90565ap+2 +0x1.b65acp+2 +-0x1.5e0c1ep-3 +0x1.10cb7p+3 +-0x1.658ecap-3 +0x1.43e2f6p+0 +-0x1.bc6366p+2 +0x1.665548p-1 +-0x1.11cd7p-1 +0x1.173eep+0 +-0x1.4e1d58p+2 +0x1.7494ccp+1 +-0x1.26d708p+4 +-0x1.34c074p+1 +0x1.85edc2p+1 +0x1.a79a8ep+1 +-0x1.628072p-3 +0x1.f8daep-3 +0x1.84fe96p-2 +0x1.5b45f4p-2 +-0x1.58870cp-3 +-0x1.37ba3ep+2 +-0x1.653a8ep-1 +0x1.719f5cp-2 +-0x1.2e786ep+1 +0x1.662788p+2 +0x1.dba64p+2 +-0x1.aca33ap+2 +0x1.b3223ap+2 +-0x1.23a97ap+2 +-0x1.b5b582p+2 +0x1.1b9cccp-2 +-0x1.7753bp-2 +0x1.5e542p+2 +-0x1.5abfp+1 +0x1.dd8a8ap+2 +-0x1.b41d7ep+1 +-0x1.65a87p-4 +0x1.3966eap+3 +-0x1.81735ap+2 +0x1.b46238p-1 +-0x1.aa568ep+2 +0x1.37a5bp+3 +0x1.e3p-4 +0x1.97a2f6p-1 +0x1.334cep+0 +0x1.90b7aep-3 +0x1.0d89fap+1 +0x1.6231ccp+2 +-0x1.614f2p+0 +0x1.34f15cp+0 +-0x1.6d631ap+1 +0x1.ba88d2p+2 +-0x1.3f0d44p+3 +0x1.aff8bp-4 +0x1.05c3d6p+1 +0x1.407924p-1 +-0x1.52616cp+0 +0x1.bcbf28p+2 +-0x1.48f218p+2 +0x1.3f457p+0 +0x1.ecbac4p-4 +0x1.9088bap-2 +-0x1.d4d294p+2 +-0x1.620106p-3 +0x1.487b7cp+3 +0x1.3c89f8p-2 +-0x1.82a98p+2 +0x1.f69746p+0 +0x1.cf72b6p+2 +-0x1.6460cep-3 +-0x1.813142p+1 +-0x1.7d2a9cp+2 +0x1.ebf4eep+2 +0x1.bbc7fcp+2 +-0x1.fc9bf2p+1 +-0x1.abd912p-1 +-0x1.181baep-1 +-0x1.376852p-3 +0x1.2f9d3ap+2 +0x1.a43f72p+2 +0x1.10cd82p+3 +0x1.330766p-7 +0x1.9c7abap-2 +-0x1.1d151ap+4 +0x1.0420aep+2 +-0x1.1c82d8p-4 +0x1.03f97p-1 +-0x1.9ce762p-2 +-0x1.01d9a8p+1 +0x1.bc5b9ep-3 +-0x1.b85dd4p+2 +-0x1.5fbe3ep-3 +0x1.a2fca8p-1 +-0x1.f87332p-2 +0x1.ffb102p-1 +0x1.496214p+0 +-0x1.830a7p+2 +-0x1.0509fap-2 +-0x1.53079ap+0 +0x1.76198p+0 +-0x1.5dbb76p-3 +0x1.a46a9ep+1 +-0x1.646f1ap+5 +-0x1.ab75c8p+1 +-0x1.b85902p-6 +0x1.284bc2p+0 +-0x1.62cc74p-3 +0x1.c928cap+2 +0x1.40b302p-2 +-0x1.737232p+2 +0x1.3a823cp-1 +0x1.157b9ep+1 +-0x1.a1ba3ep+4 +0x1.f51844p+2 +0x1.b43bdep+2 +0x1.142676p+2 +-0x1.2d1b7ep+2 +0x1.51213ep-2 +0x1.7b7938p+2 +-0x1.57e164p+1 +-0x1.1f42a4p+1 +-0x1.bedddep+1 +-0x1.0501eap+2 +0x1.c8d1fp+2 +-0x1.7427cep+5 +-0x1.167deep-1 +0x1.820772p-3 +-0x1.f0b1dap+1 +0x1.87c9e4p+2 +0x1.6eeeeap+1 +-0x1.a35f4ap+2 +0x1.8ae50ap+0 +-0x1.28cd7ap+1 +0x1.3e18f6p+0 +0x1.50b63p+2 +0x1.36c114p+3 +-0x1.00bc3p+1 +-0x1.0a799p+3 +0x1.3cc37p+0 +0x1.8c48p-1 +-0x1.0d831ep+1 +0x1.ce8994p+2 +0x1.745a2ep+1 +0x1.36a8p+3 +-0x1.1a770ap+1 +-0x1.86528ep-1 +0x1.47be68p+3 +-0x1.0eb4f6p+0 +-0x1.611df2p-3 +0x1.46c5ecp+3 +-0x1.e55996p-10 +-0x1.5e20e4p-3 +-0x1.60f51ep-1 +-0x1.49bcp+2 +0x1.649348p+1 +0x1.87a4aep-4 +-0x1.7aa58cp+2 +0x1.8cf99ap-4 +0x1.bd5326p+2 +0x1.8ce666p+0 +-0x1.6bff88p-1 +0x1.d12a7ap+2 +0x1.7dc29cp+2 +0x1.421e8ap+3 +-0x1.656186p-3 +-0x1.1fa2e2p+1 +0x1.dfd894p+2 +-0x1.e24b84p-1 +-0x1.08b8c2p+0 +-0x1.b3cd68p+2 +-0x1.5b7acep-3 +0x1.e3432ap+2 +-0x1.58e15cp+2 +-0x1.0d7ad6p+3 +0x1.a8262ep-3 +-0x1.55364ap+2 +-0x1.b95818p+1 +-0x1.5263c2p+1 +-0x1.43d4ccp-1 +-0x1.ccb046p+3 +-0x1.f4969ap-1 +-0x1.3bcb7ep-2 +-0x1.2f32cp+2 +-0x1.61303ap-3 +-0x1.df2826p-1 +0x1.5e9fc2p+2 +0x1.d03e14p-4 +0x1.42320cp+3 +-0x1.aa2f4p+2 +-0x1.f3d52ap+0 +-0x1.818c72p-2 +0x1.32d08ep+2 +-0x1.c332p+0 +0x1.dc5dc2p+0 +0x1.1c7358p-1 +-0x1.3adfd8p-1 +0x1.113bap+0 +-0x1.5b65a6p-3 +0x1.36437cp+3 +0x1.bb8dbap+2 +-0x1.c46d9p+1 +-0x1.c678d6p-1 +0x1.3c9146p+3 +0x1.485612p+3 +0x1.f87d98p-1 +-0x1.bf2d5cp+0 +-0x1.cd2c2ap+2 +0x1.829d9ap-1 +-0x1.a95bd8p+2 +0x1.a857aep+0 +-0x1.03261cp+2 +-0x1.8657d6p-1 +0x1.50b348p+0 +0x1.d615fp+2 +0x1.8b0548p-5 +-0x1.d0aa84p+1 +-0x1.9b93cap+2 +-0x1.595412p-3 +0x1.b6ab74p-2 +0x1.16c592p-2 +0x1.cccc72p+1 +-0x1.657c7p+1 +0x1.aa995cp+2 +-0x1.fa172ep+1 +-0x1.12a886p+2 +-0x1.9173d8p+2 +0x1.9c3ca8p-3 +0x1.e796ccp+0 +0x1.182396p-3 +-0x1.4291dap-4 +-0x1.62f536p-3 +0x1.7216e8p+2 +0x1.cb45c8p+2 +-0x1.497518p+2 +-0x1.351996p+1 +-0x1.0dfe32p+2 +0x1.3bfc3cp+0 +-0x1.39bd7p-6 +-0x1.3a197ap+1 +-0x1.830bc2p+2 +0x1.b3857ep-5 +-0x1.53f426p+2 +-0x1.5f6ba2p-3 +-0x1.4ed77ap+1 +-0x1.556abp+2 +0x1.9712p+1 +0x1.0bf266p+0 +-0x1.ad2376p+2 +-0x1.af3504p+1 +-0x1.76e7ep+2 +-0x1.6562bap+1 +0x1.843614p-2 +0x1.384ef8p+3 +-0x1.47a784p+0 +0x1.f4a732p+2 +-0x1.7ce922p+2 +-0x1.336c52p+0 +-0x1.48c65cp+1 +0x1.494452p+3 +-0x1.193914p+5 +0x1.3577d2p+2 +-0x1.63f1bep-3 +-0x1.55d4d8p-4 +0x1.d880eep-1 +-0x1.7204ep+0 +0x1.dbbb12p+2 +-0x1.5e758ap-3 +-0x1.21018p+1 +0x1.06676ep+2 +-0x1.646416p-3 +0x1.03d04p+2 +0x1.10cb02p+3 +-0x1.6987b8p+1 +-0x1.fb44dp+0 +0x1.0e49ecp+1 +-0x1.ae974ap+2 +-0x1.8170a4p-9 +-0x1.a49d78p+1 +0x1.f48614p-2 +0x1.c3c598p+0 +0x1.5b5d38p+2 +-0x1.e7e994p+1 +-0x1.5ffb9ap-3 +-0x1.1b21bp+3 +-0x1.71927p+1 +-0x1.5b87aep-3 +0x1.106eccp+2 +0x1.3e7aep-4 +0x1.36a5d8p+3 +0x1.1e7f48p+0 +-0x1.6caff6p+2 +0x1.91cf84p-1 +-0x1.34c43cp+1 +-0x1.594ad2p+2 +0x1.dd37d4p+2 +0x1.f073e8p+2 +0x1.cef936p+2 +-0x1.bab5acp-2 +-0x1.035e0ap+0 +0x1.6d44ccp-2 +-0x1.1c4808p+2 +-0x1.e8786ap+1 +0x1.388c7cp+3 +0x1.8766aep+1 +-0x1.5eaeb6p-3 +-0x1.64b42cp-3 +-0x1.027faep-1 +-0x1.ba8b4ep+1 +0x1.266edap+2 +0x1.9fd6c2p+2 +-0x1.a44034p+1 +0x1.78abccp+1 +0x1.377b5p+3 +-0x1.940a02p+1 +-0x1.fdb2bcp+0 +-0x1.65ae92p-3 +0x1.a521c8p+3 +-0x1.4749aap+3 +-0x1.c1a2dep-1 +-0x1.7f4bfep+3 +0x1.3f9db8p+3 +0x1.6c7c0ap+2 +0x1.82779cp-1 +-0x1.824e0ep+2 +0x1.fec4ccp-2 +0x1.e58412p+2 +-0x1.578fc8p+3 +0x1.0ccf34p-2 +-0x1.6173bcp+0 +-0x1.f7357p+0 +0x1.f3e768p+2 +0x1.4317e2p+3 +-0x1.0f5222p+1 +-0x1.e5895ep-5 +0x1.d298dep+2 +0x1.c86c1ep+2 +0x1.459134p+3 +-0x1.553b7ap-3 +-0x1.05c35cp+0 +0x1.4461bcp+2 +0x1.9bc9eap-4 +0x1.06295cp+0 +0x1.43d93ep+3 +0x1.556832p+2 +0x1.f4b8d6p+1 +-0x1.465f64p+1 +-0x1.614fdep-3 +-0x1.b5350ep-3 +0x1.9f56p+0 +0x1.454eb6p+3 +-0x1.fba2cep+1 +-0x1.5f303cp-3 +0x1.6ceed2p+0 +0x1.58255cp+2 +0x1.b69528p+1 +0x1.7177ep+3 +-0x1.a45ad8p-1 +-0x1.94f706p+0 +-0x1.be9e04p+2 +0x1.5bf948p+0 +0x1.10cacep+3 +-0x1.740c94p+2 +-0x1.09bff6p+1 +0x1.3671c4p+3 +0x1.bec15cp+2 +-0x1.6346d4p+2 +0x1.bd4e1cp+2 +0x1.82d99ap-1 +-0x1.8225a8p+2 +0x1.220a66p-2 +-0x1.e16c52p-1 +-0x1.35848ep-1 +0x1.e11384p-2 +-0x1.8d8592p+0 +0x1.4c29bcp+1 +0x1.387af8p+2 +0x1.8d8fd6p-1 +0x1.c7d02ep+2 +-0x0p+0 +0x1.38ec96p+3 +-0x1.306a06p+2 +-0x1.59c33ep-3 +0x1.6d72f4p+0 +-0x1.cf944cp+2 +-0x1.5dac8cp-3 +0x1.acda6p+2 +-0x1.e3cbf2p+1 +-0x1.0cdac4p+0 +0x1.390014p+2 +-0x1.64fceep+2 +-0x1.82edfep+2 +-0x1.3ea13cp+3 +-0x1.0b4e5cp+1 +0x1.01028ep-5 +-0x1.2bb428p-2 +0x1.00128p+0 +-0x1.7adbfap-1 +0x1.e535f2p+2 +-0x1.648a8cp-3 +0x1.e84186p+2 +-0x1.6321p+0 +-0x1.0a5654p+3 +0x1.124c1cp-2 +0x1.bba78ep+2 +0x1.4531d8p+3 +0x1.1bf358p+0 +0x1.6cf66p+1 +-0x1.033dc6p+2 +0x1.4311aap+3 +-0x1.766bdcp-3 +0x1.828456p+2 +0x1.3e467ap+3 +-0x1.7fcebep-2 +-0x1.432faep-1 +-0x1.924aaep+1 +-0x1.646662p+2 +-0x1.892088p+0 +-0x1.2b8eb8p+0 +0x1.50170ap-5 +0x1.50ad28p+1 +0x1.e2ca16p+2 +0x1.c2a97cp-1 +-0x1.613492p-3 +-0x1.7c95f4p+1 +-0x1.b20d22p+0 +0x1.713644p-2 +0x1.f59c7ap-2 +0x1.07cd36p+2 +-0x1.467f64p-2 +-0x1.01f75cp-2 +0x1.54450cp-2 +-0x1.cd8dc2p-1 +0x1.441b4ap+3 +-0x1.a839b6p+2 +0x1.6a2932p+0 +-0x1.3345ecp-1 +0x1.d0f1dep+2 +-0x1.657a4cp-3 +-0x1.408364p+2 +-0x1.01883ep+1 +0x1.fe29aap-4 +0x1.924d0ap+0 +-0x1.5d1a3cp-2 +0x1.c7d03cp+2 +0x1.d03b78p+2 +0x1.0b450ep+0 +-0x1.e230c4p+1 +-0x1.baa6ep-1 +0x1.75c21ep+2 +0x1.30bcbcp+0 +-0x1.8f395cp+2 +0x1.d0c2aep+2 +-0x1.64f59ap-3 +-0x1.ea3c2ap+1 +-0x1.0506c6p+2 +0x1.67c7fp-2 +0x1.1b8feep+2 +-0x1.1b0498p+3 +0x1.451682p+3 +0x1.76a29p-1 +-0x1.2162d4p+4 +-0x1.7e93c8p-4 +-0x1.afffd6p+2 +0x1.f2p-7 +-0x1.8c62bep+5 +0x1.effbep+2 +0x1.d1b852p+2 +0x1.5cdbd2p+0 +0x1.c06b2p-1 +-0x1.b33b84p-2 +0x1.71d7c2p+0 +-0x1.64c27ap-3 +-0x1.3ea13cp+3 +-0x1.7d82b2p+2 +0x1.aa6d0cp+2 +-0x1.ed7f5p-4 +-0x1.e8264ep+2 +-0x1.ae1c56p+2 +-0x1.7abe24p+2 +0x1.4236f4p+3 +-0x1.c2268cp-2 +0x1.6114aep+1 +-0x1.60f716p-3 +-0x1.09918ap+0 +0x1.1c06a4p+0 +0x1.860c26p-2 +0x1.c42886p+3 +-0x1.3447aep-5 +-0x1.db094cp+3 +-0x1.6dcbep+2 +-0x1.4ec2dep-2 +0x1.45b736p+3 +0x1.3ff3dp-1 +-0x1.bcfd2ap+2 +-0x1.8854acp+2 +-0x1.a0ff42p+0 +0x1.04fab8p-1 +-0x1.30bp-2 +0x1.407192p+3 +-0x1.79ac6ap+2 +0x1.2277cap-1 +0x1.35f784p+3 +-0x1.35df54p+2 +-0x1.610686p-3 +-0x1.64178ep-3 +-0x1.65b712p-3 +0x1.10795cp+0 +0x1.8ab654p+2 +0x1.37e6dcp+3 +0x1.4375bep+3 +0x1.98562p+2 +0x1.e2c1a8p+2 +0x1.53f1ecp-1 +-0x1.0c4b76p+1 +-0x1.54a9ep+2 +0x1.84b444p+3 +0x1.a738a4p+0 +0x1.95b5e4p+2 +-0x1.eda14p+1 +0x1.9f4bb6p+2 +0x1.ff370ap-1 +0x1.443dbcp+3 +0x1.7780ccp-1 +-0x1.968c9ap+1 +0x1.6612fap+2 +0x1.7b6bdep+2 +-0x1.5b9b7cp-3 +0x1.8679b8p-1 +0x1.456d38p+3 +-0x1.b3db5cp-1 +0x1.9c6b3cp+1 +0x1.96479cp+0 +-0x1.814ec8p+2 +-0x1.6dcb18p+2 +0x1.110848p-2 +-0x1.1f7ffp+1 +-0x1.e60428p+1 +0x1.6bea2ep+1 +0x1.21c3d4p-1 +-0x1.d0723ap+2 +-0x1.2b0ccap-1 +-0x1.ed681cp+1 +0x1.5423d6p-4 +0x1.43c694p+1 +0x1.335p+0 +-0x1.551ee4p-3 +-0x1.7961eep+2 +-0x1.10339cp+2 +0x1.62a75ep-4 +0x1.d3e368p+2 +-0x1.c5a18ep+1 +-0x1.2da37ep+6 +0x1.9fd6ep+0 +-0x1.617842p+2 +0x1.7ceeb8p-3 +0x1.c1b256p-1 +-0x1.04dbfp+5 +-0x1.c276c6p+0 +-0x1.667c36p+2 +-0x1.700c48p+2 +0x1.0174ecp+0 +-0x1.e1e5f8p-1 +0x1.e5b97p+2 +0x1.797d68p+2 +-0x1.2b722ap+0 +-0x1.143b4ap+3 +0x1.437d6ep+3 +0x1.942202p-4 +-0x1.06013ep+1 +-0x1.e739p+2 +0x1.369ddap+3 +-0x1.6f15eap+2 +0x1.231e36p+2 +-0x1.f77b84p+0 +-0x1.68ed1ep+0 +-0x1.84c91ap+4 +-0x1.e6819cp-2 +0x1.a0c1e6p+2 +-0x1.80a3ecp+0 +0x1.ce8948p-2 +-0x1.e6dc46p+1 +0x1.bbde32p-5 +0x1.0ef40cp+2 +-0x1.5f668p-1 +-0x1.99b3a4p+2 +0x1.497064p+3 +-0x1.96d5f6p+2 +-0x1.2db79p-5 +-0x1.5b661ep-3 +0x1.5f1226p+2 +0x1.cd7992p+2 +-0x1.5c4c9ep+2 +0x1.860548p+0 +0x1.3d40ep+3 +0x1.1e676ep+2 +0x1.7a52e6p-2 +-0x1.5ecea6p+0 +0x1.53567ap+2 +-0x1.78bf34p-1 +0x1.430f92p+3 +-0x1.26b57p-2 +-0x1.81b49p+2 +-0x1.7949ep+0 +-0x1.58403ep-3 +0x1.941b48p+0 +-0x1.508df4p+2 +0x1.99ca4ap-2 +-0x1.944b84p-3 +0x1.36bb82p+3 +0x1.2b7daep+0 +-0x1.3b6ed8p+2 +0x1.18abep-2 +-0x1.f359d6p+0 +-0x1.8d59fep-2 +0x1.175bd4p-1 +-0x1.7bb492p+2 +-0x1.6c687ap+0 +-0x1.6551b2p-3 +-0x1.1077aep-2 +-0x1.23a6d6p+1 +-0x1.7c9692p+2 +-0x1.649712p-3 +0x1.71726ap+1 +-0x1.10ac4ep+3 +0x1.3a74a6p+0 +0x1.6e98a4p-1 +0x1.b7dc68p-2 +-0x1.c34fbep+1 +-0x1.9b2efap+2 +0x1.64fc28p+1 +-0x1.08275ep+0 +-0x1.90b768p+1 +-0x1.04687ap+0 +0x1.022a3ep-2 +0x1.31d856p+2 +-0x1.1916a6p+2 +-0x1.071b6p+5 +0x1.580aeep+2 +-0x1.0e753ep+1 +0x1.6d8e6ep+0 +0x1.afc04p+2 +-0x1.0c5c88p+2 +-0x1.0b0094p+2 +-0x1.a9374cp+2 +-0x1.389e9ap-4 +-0x1.9e1a66p+0 +0x1.2917a4p+2 +0x1.4516a4p+0 +-0x1.58d6d2p-3 +-0x1.8d3282p-1 +0x1.9ce2acp+3 +0x1.75f332p-1 +0x1.ab3d0ap+0 +-0x1.75513ep+3 +0x1.b4056ap+1 +0x1.accf0ap+0 +-0x1.648446p-3 +0x1.b6284ap+2 +0x1.0a73e6p+3 +-0x1.8f931ep+0 +-0x1.653ab4p-3 +-0x1.a07646p+2 +-0x1.838fcep+2 +-0x1.1fcca4p-1 +0x1.3f8acp+3 +-0x1.e72a6p+2 +0x1.53451ep-3 +-0x1.21bf8p-1 +0x1.477cccp+0 +-0x1.1f2f32p-1 +0x1.65303cp+0 +0x1.43e608p+3 +-0x1.c06e3cp+0 +0x1.b3408ep+0 +-0x1.5b09dp-2 +-0x1.2f482ep+2 +-0x1.358416p+2 +-0x1.d2b2ap+2 +-0x1.1883d6p+2 +0x1.d2229cp+2 +-0x1.35c1a2p+1 +-0x1.8bb666p+3 +-0x1.1d2eb6p+3 +-0x1.600dp-3 +-0x1.1c721p+3 +-0x1.644118p+2 +0x1.9f08ap+2 +0x1.8c13d4p+2 +0x1.35c95p+3 +0x1.80d7cap+2 +-0x1.58caa4p-2 +0x1.4628p-2 +-0x1.27d56ep+0 +0x1.380e6cp+3 +0x1.8539aap+2 +-0x1.56efep+1 +-0x1.ef1648p-1 +-0x1.8549eep+2 +0x1.155e12p+4 +-0x1.53d3bap-3 +-0x1.9c7e88p+2 +0x1.d688fcp+2 +-0x1.54807ep-3 +-0x1.7436b8p-2 +0x1.6ca666p-1 +-0x1.6c77b6p-1 +0x1.37fa42p+3 +-0x1.98f9eep+1 +0x1.1b44p+0 +-0x1.3277eep-1 +0x1.0da99ap-2 +0x1.9c6892p+2 +-0x1.c47754p+2 +0x1.a31352p-4 +0x1.71f8p-1 +-0x1.22ff28p+1 +0x1.374108p+3 +0x1.b5cd8ap+1 +-0x1.5b3f32p-3 +-0x1.56193ap-3 +-0x1.2fdd8ap+4 +-0x1.5956b2p+2 +-0x1.772006p+1 +-0x1.5a291cp-3 +0x1.2124fcp+2 +0x1.d378fp+2 +0x1.76b3f4p-3 +0x1.00387ap+0 +-0x1.362686p+2 +0x1.451ba6p+3 +-0x1.066914p+1 +0x1.213ddap+0 +-0x1.6f10d2p+2 +-0x1.ecab64p-6 +0x1.b96d0cp+2 +-0x1.63cd96p-3 +0x1.366b4cp+1 +0x1.31a756p+0 +-0x1.c721c6p-5 +-0x1.6ed70ap-6 +0x1.24ab92p-3 +-0x1.47a3aep-1 +0x1.950d6p+2 +-0x1.57ffb6p-3 +0x1.c9c3aep+0 +0x1.d7bf4p+2 +-0x1.2814f6p+0 +-0x1.60f6cep-3 +-0x1.62a2fep-3 +0x1.d818ccp-1 +0x1.76c47ap-3 +-0x1.5b8674p+2 +-0x1.d5f9dep+2 +0x1.620a42p+2 +0x1.b6d2d6p+2 +-0x1.4b037p+0 +-0x1.a0735cp-1 +-0x1.272cf6p-1 +-0x1.14c35cp-1 +-0x1.d9620ap-1 +0x1.f2921p-1 +0x1.7784f6p+1 +0x1.ba38f6p-3 +-0x1.cecfdep+2 +-0x1.13b832p-5 +0x1.d4f442p+2 +0x1.b36cap+2 +0x1.500062p-1 +-0x1.04dc5cp+1 +-0x1.5e9754p+2 +-0x1.b961p-6 +-0x1.cfcfe6p+1 +0x1.650866p+0 +-0x1.545418p+3 +-0x1.115a7ap+0 +-0x1.99b554p+2 +-0x1.ea403p-2 +-0x1.6183a2p-2 +0x1.919b5ap+2 +-0x1.5afc4ap-3 +0x1.ea9146p-2 +-0x1.00c81ep+1 +-0x1.4aa03ep+2 +0x1.878edp-3 +0x1.18dadap-4 +0x1.60d8bcp+1 +0x1.e9192cp-1 +0x1.797b0ap+0 +0x1.1dafa4p+0 +-0x1.98f70ap-1 +0x1.ae13c2p+2 +-0x1.c9ffd6p-4 +0x1.3cd90ap+0 +-0x1.5638cep-3 +0x1.448b38p+3 +0x1.b5f5e4p+2 +-0x1.27e222p+2 +0x1.42a508p+3 +-0x1.9a6a7p+2 +0x1.36cbc2p+3 +0x1.e9676p+1 +0x1.95abdep+2 +-0x1.666aep+0 +-0x1.d48214p+0 +0x1.d7d86ap+1 +0x1.78e714p+1 +0x1.a4161ep-2 +-0x1.34e68ep-1 +0x1.d5450cp+2 +0x1.7e3dc2p-2 +-0x1.92407ap+2 +0x1.4418b4p+3 +-0x1.763d3p+3 +-0x1.116978p+3 +0x1.9018aep+2 +-0x1.80c9bep-2 +0x1.5bec14p+0 +-0x1.7ccf84p+0 +0x1.44e018p+3 +-0x1.279b7p+2 +-0x1.2d08ap-1 +0x1.bb4d8ep+1 +0x1.be100ep-1 +-0x1.5c1c3ap-3 +0x1.4bf624p+2 +0x1.adaa76p+2 +-0x1.5cd68ep+0 +-0x1.3185fp+2 +0x1.3dee18p-4 +-0x1.e395f8p-1 +-0x1.e8528ap+2 +-0x1.5b326ap+2 +0x1.35bcbcp+3 +-0x1.0802cp+5 +0x1.fdab84p-2 +-0x1.158152p-1 +-0x1.5140c6p+3 +0x1.14f5c2p+1 +-0x1.a6f156p-1 +-0x1.63d8b2p-3 +-0x1.228ec4p+2 +0x1.51173p-1 +-0x1.c2abeep+2 +-0x1.5f6792p+2 +-0x1.88bfc2p+2 +0x1.4a6decp+0 +0x1.d0a6cp+2 +-0x1.c10dccp+1 +-0x1.60b94p+5 +-0x1.3f78eep+3 +0x1.f1b1ep+1 +-0x1.404326p+2 +0x1.9c6bd6p-2 +0x1.4e963cp-4 +0x1.1d26b4p+2 +-0x1.37d952p+2 +0x1.7eee38p+3 +0x1.c5392ep+2 +0x1.9128ap+2 +0x1.9c8fd6p+2 +0x1.be43d6p-2 +-0x1.57f9e2p-4 +0x1.434bacp+3 +0x1.2d0f2cp-1 +-0x1.ba23aap+1 +0x1.3ae01cp+3 +-0x1.95778ap+2 +-0x1.c65b3cp+1 +0x1.23ae7ap+1 +-0x1.23d308p+2 +-0x1.ba5c3cp+0 +-0x1.d07b0ep-3 +0x1.504052p-2 +0x1.5e1a46p+0 +0x1.95dd28p+2 +0x1.897f68p+2 +-0x1.56811ep+0 +0x1.9b504p+2 +0x1.034f02p+4 +-0x1.6a872ap+0 +0x1.eb077ap+2 +-0x1.6b6004p+0 +0x1.71ec28p-1 +0x1.00a18ap+2 +0x1.a65932p+0 +0x1.f27e3cp+2 +-0x1.683308p+0 +-0x1.6de68ap+0 +-0x1.f15cbap+2 +-0x1.2390c2p+2 +0x1.eeaa42p+2 +-0x1.feccb4p+0 +-0x1.234018p+4 +-0x1.ffb332p+0 +-0x1.8fbd1ep-1 +-0x1.2666b8p-1 +0x1.10c816p+3 +-0x1.7fd956p-2 +-0x1.073c3ap+3 +-0x1.63a47cp+1 +0x1.814d1ep-2 +0x1.65d55ap-1 +-0x1.64c9b4p-3 +0x1.d9562ap+2 +-0x1.60f91cp-3 +-0x1.650866p-3 +0x1.48178cp+3 +0x1.e0d776p+2 +-0x1.6f9418p+1 +-0x1.1bf3ecp+0 +0x1.f4717p-1 +0x1.c791f6p+2 +-0x1.525c08p-1 +-0x1.62d062p-3 +-0x1.eb511ep-2 +-0x1.09cd3cp+0 +0x1.3e45ap+3 +0x1.301802p-1 +-0x1.39bbdap+2 +-0x1.c82196p+2 +-0x1.303b3ap+4 +0x1.8f4b08p+2 +0x1.035eeep-2 +-0x1.5fe326p-3 +0x1.04028ep-5 +0x1.d3fafcp+2 +0x1.42ba5ap-1 +-0x1.cdeb2ep+0 +-0x1.7500a8p+2 +0x1.7dbbbcp+0 +-0x1.f4eb86p+2 +0x1.7c47aep-6 +0x1.75b67p-2 +0x1.8d873ap+2 +0x1.5bccacp+0 +-0x1.e151a8p+0 +-0x1.51474ep-2 +0x1.c0ea9ep+2 +-0x1.a23e0ep+2 +-0x1.011accp+0 +-0x1.dde764p+4 +-0x1.da003cp+0 +-0x1.b005c2p-4 +0x1.43b4aep+3 +0x1.869f5cp+1 +-0x1.f8e706p+0 +-0x1.55077ap+1 +-0x1.136deap+2 +-0x1.0376a6p+3 +0x1.f668f6p-3 +0x1.17f31ep+0 +0x1.ab83d8p-1 +-0x1.534404p+4 +-0x1.63de7cp-3 +-0x1.1cfap+0 +0x1.576bd6p+0 +-0x1.4463a4p+2 +-0x1.65a27cp-3 +0x1.b13052p-2 +0x1.d483a4p+2 +-0x1.02d042p+1 +-0x1.60fa9cp-3 +-0x1.16e87ap-1 +0x1.b492b8p+0 +-0x1.a4cf6ep+2 +0x1.19af4cp+1 +0x1.7e8bc2p+2 +-0x1.29775p+1 +-0x1.4cccccp+1 +0x1.167266p+0 +-0x1.647cccp+1 +0x1.1debfap+1 +-0x1.4e9166p-3 +0x1.87c92ap+0 +-0x1.3ea13cp+3 +0x1.8976ccp+0 +0x1.6c7384p+0 +-0x1.5b557cp-3 +-0x1.30c126p+1 +-0x1.639d72p-3 +-0x1.4c44ap+2 +-0x1.6ea332p+1 +0x1.8e982ap+2 +-0x1.81006p+2 +0x1.1d4be4p+4 +-0x1.ec89fcp-1 +-0x1.503f1ap+2 +0x1.e57e76p+2 +-0x1.5ddcaap-1 +0x1.439434p+3 +-0x1.4a897ap+2 +-0x1.939222p+2 +-0x1.3da46cp-4 +-0x1.58bf08p+2 +-0x1.3eaadep+3 +-0x1.aab2eep+2 +-0x1.7c5af6p-1 +0x1.bf4fccp+2 +0x1.10cd1ep+3 +0x1.fa0198p-1 +-0x1.ca7dc2p-4 +0x1.894544p+2 +0x1.442d5ep+3 +0x1.371242p+3 +-0x1.95fba6p-1 +0x1.d1a67p+2 +0x1.769918p+0 +0x1.4e61c2p-1 +-0x1.57c1ep+1 +-0x1.d74902p+0 +-0x1.3ea13cp+3 +-0x1.851e32p+2 +0x1.247602p+2 +0x1.3f0314p+1 +-0x1.637aep-2 +0x1.41b1fap+3 +-0x1.04efc6p-3 +-0x1.88130cp+2 +-0x1.b2a146p+2 +0x1.54bb5ep+3 +-0x1.a06ap+0 +-0x1.569e66p+0 +0x1.2a59a8p+4 +-0x1.6105fap-3 +-0x1.82a98cp+1 +0x1.a428f2p+2 +-0x1.8bb3eap+0 +-0x1.627f62p-3 +0x1.b0f5c2p-9 +-0x1.469442p+1 +0x1.4507e8p+3 +-0x1.86afacp+2 +0x1.da41f8p+2 +-0x1.eece8ep-1 +-0x1.03cddp+1 +-0x1.225768p+4 +-0x1.51a33ap+2 +0x1.24c926p+0 +0x1.7b8ad4p+2 +-0x1.17bebcp-2 +0x1.ac0e14p-3 +-0x1.82f9f6p+2 +-0x1.5e5b3p-1 +-0x1.805ffcp+2 +-0x1.600742p-3 +-0x1.887c68p-3 +-0x1.615aacp-3 +-0x1.7ba8fep+4 +0x1.f6370ap-4 +-0x1.e06b9p+2 +-0x1.5fbfb2p-3 +0x1.aaa50ep+2 +-0x1.8176fep+2 +0x1.5ce1d2p+0 +0x1.b23e64p-1 +-0x1.aea0ep+0 +-0x1.26c00cp+2 +-0x1.5a23bap+2 +-0x1.55a02ep-3 +0x1.350bap+3 +-0x1.9b4ec6p+1 +0x1.e0a52ep+2 +-0x1.74fe26p+2 +-0x1.1d92c2p+1 +-0x1.5da7d6p-1 +-0x1.312282p+1 +-0x1.62c91cp-3 +-0x1.c173f8p-1 +-0x1.9f0316p-1 +-0x1.4ba776p+2 +0x1.cb445ep+2 +-0x1.7efb5cp-1 +0x1.4595cap+3 +-0x1.5bcf12p-3 +0x1.c3b3d6p-3 +-0x1.cb85d8p-3 +-0x1.2824ccp-1 +-0x1.a35d68p+2 +-0x1.87e812p+2 +-0x1.68cfd6p-1 +-0x1.b44846p+2 +-0x1.4cb4d4p+2 +-0x1.058c1cp-2 +-0x1.600046p-3 +0x1.d80cb8p-2 +0x1.babe66p+0 +0x1.be9c56p+2 +0x1.016978p-2 +-0x1.a61fbp+2 +0x1.6bd5f6p+2 +-0x1.9e2b36p-2 +-0x1.936c78p+2 +-0x1.390932p+0 +-0x1.c978ccp+0 +0x1.4fbcccp-2 +-0x1.605154p-3 +0x1.00c70ap-2 +-0x1.65c06cp-3 +0x1.a6f552p+2 +0x1.0f98p-1 +-0x1.a673c6p+1 +0x1.36420ap+3 +0x1.20469p+2 +0x1.da8c28p-1 +-0x1.451f4ep+2 +-0x1.c56adcp+2 +0x1.c57f32p+0 +-0x1.12477p-1 +-0x1.3aa0aap-6 +0x1.c60c24p+1 +-0x1.6476acp-3 +-0x1.6bbc9cp+2 +-0x1.7e46b6p+1 +-0x1.fae904p-3 +0x1.b9451ep-4 +0x1.4a5348p+0 +0x1.aa0cp-1 +-0x1.7b5694p+2 +-0x1.59cb04p+2 +0x1.47eaf2p+3 +-0x1.61696cp-3 +0x1.3b5cep+0 +0x1.30facp+0 +-0x1.7dfp-2 +0x1.aefcfap+1 +0x1.e5ae7cp+2 +-0x1.9920aap+1 +-0x1.410848p+1 +0x1.7aa234p+1 +0x1.5fe74cp+2 +-0x1.07b5aep+0 +0x1.8d2e4p-1 +-0x1.5dc9bap-3 +0x1.4edc32p-5 +-0x1.5a747ap-4 +-0x1.551516p-3 +0x1.427c36p+3 +0x1.d5762p+2 +-0x1.a94422p+0 +0x1.2813dp+0 +-0x1.0aececp+2 +0x1.430af8p+3 +0x1.704334p+0 +-0x1.6180ecp-3 +0x1.9878cep+2 +-0x1.5c8532p-3 +-0x1.a0f696p+2 +-0x1.63c81cp-3 +0x1.5c9ccep+2 +0x1.d0b332p+0 +0x1.dd02fp+2 +0x1.30824ap-4 +0x1.f0ce3cp-1 +0x1.375f9cp+3 +-0x1.1b636cp+4 +-0x1.c607ap+2 +0x1.93b6f6p+0 +-0x1.640b8ap-3 +-0x1.ac8748p+0 +-0x1.148e5ep+2 +-0x1.60dfdep-3 +-0x1.61688cp-3 +-0x1.a87362p+2 +-0x1.5d02d8p+3 +-0x1.3692eep-1 +0x1.ece852p-3 +-0x1.01c6ep+0 +0x1.be7a58p+2 +-0x1.365372p-3 +0x1.7dd0d4p-1 +0x1.94f6ep+0 +0x1.df5e8ap+2 +-0x1.28cdf2p+0 +-0x1.6547d2p-3 +-0x1.cbe236p-4 +-0x1.23dffep+1 +-0x1.2b9e4ep+2 +0x1.28ff22p+0 +-0x1.5f1b8ep-3 +-0x1.af4f5cp-2 +-0x1.261c7cp+2 +-0x1.940248p+0 +-0x1.aa31eap-1 +-0x1.17841ep+0 +-0x1.a15b06p+1 +0x1.852a0ap+2 +-0x1.1d74a4p-1 +0x1.3d8912p+3 +0x1.def324p+2 +0x1.3ba8eep+0 +-0x1.5fbb8ep+0 +0x1.55f48ep-2 +-0x1.d12e1p+1 +-0x1.591d24p-3 +-0x1.f08bbcp-1 +-0x1.d5aadp+2 +0x1.d7b94p+2 +0x1.4215ecp+3 +-0x1.531ac8p+3 +-0x1.785704p+2 +0x1.cab5d6p+2 +0x1.48437ap+3 +0x1.fd2b46p-5 +-0x1.640bfep-3 +0x1.44d448p+0 +-0x1.4bfd76p-1 +0x1.49063p+3 +-0x1.74b3a8p+3 +0x1.7f4ca8p+1 +0x1.55a30ep+1 +0x1.2fc866p+0 +-0x1.80e5eap+0 +-0x1.2e49e2p+4 +-0x1.89d538p+1 +0x1.8012b8p+0 +-0x1.651586p-3 +-0x1.82af5cp+2 +0x1.f1b0a4p-1 +0x1.28e914p+1 +-0x1.e08a7ap+0 +0x1.10c9f4p+3 +-0x1.64dbbcp-3 +0x1.cfceb8p+2 +-0x1.64e71ep+2 +0x1.01c214p-1 +-0x1.0cee7ap+2 +0x1.66bb84p-2 +-0x1.47ba7ap+5 +0x1.ccb8e8p+2 +0x1.d34b7cp+2 +0x1.5828p+0 +-0x1.9bf8c6p+2 +-0x1.270aacp+2 +0x1.445e38p+3 +-0x1.c2af3p+2 +0x1.73bcd6p-1 +-0x1.5d3f7ap-3 +-0x1.54c33ep+3 +0x1.b0f92ep+2 +0x1.54694ap+2 +0x1.365b8ep-1 +0x1.81712ep+1 +-0x1.64de44p-3 +0x1.8b28f6p-2 +0x1.e79ceap+2 +-0x1.790c14p+2 +-0x1.0e76b8p+5 +-0x1.7afc7p+2 +0x1.bb846ep+2 +-0x1.b1403cp+1 +-0x1.86fe4cp+2 +0x1.05ff34p+4 +-0x1.861eb8p+0 +0x1.6ee384p+0 +-0x1.1d674cp-1 +0x1.27cee8p-3 +0x1.203dfcp+1 +-0x1.94085p+1 +-0x1.62fdf6p-3 +-0x1.259494p+4 +0x1.e7b2bap+2 +-0x1.7ea7bcp-3 +-0x1.3ea13cp+3 +-0x1.287842p+2 +-0x1.ab0f56p+2 +0x1.d4ab54p+2 +0x1.99c332p-3 +0x1.2739aep+0 +0x1.10cda8p+3 +0x1.8c677p-1 +0x1.792b74p-1 +0x1.be6c56p+2 +-0x1.003724p+2 +0x1.ef91eap-3 +-0x1.5fec66p+0 +-0x1.3f348cp+2 +0x1.899daep+0 +-0x1.324956p+2 +0x1.e44ee4p+2 +-0x1.597012p-3 +0x1.2af992p+0 +-0x1.7569c8p+1 +0x1.af3934p-4 +0x1.808d1ep+0 +-0x1.8d45e4p+2 +0x1.463158p+3 +0x1.3adp+0 +0x1.ecdf32p+2 +0x1.2aad9ap-3 +-0x1.d803ecp-2 +0x1.f03244p+2 +0x1.9dc15cp+2 +-0x1.b4c5cap-6 +-0x1.659e44p-3 +-0x1.798c8ap+1 +0x1.c8d80ep+2 +-0x1.47ae14p-6 +-0x1.1e8216p+2 +-0x1.5d407ep-3 +0x1.13ee36p+2 +-0x1.61244cp-3 +-0x1.f2d01ep+1 +-0x1.53e61ep-3 +-0x1.1239ccp+1 +-0x1.8d8168p+2 +-0x1.585ed8p+2 +-0x1.916e16p+1 +0x1.a99198p-1 +-0x1.936488p-1 +0x1.424e58p+3 +0x1.5e15c2p-1 +-0x1.614486p-3 +-0x1.a5a616p+2 +0x1.3ef362p+3 +-0x1.0dbee4p-4 +0x1.03b99ap-2 +-0x1.910a68p+3 +-0x1.2fbfc2p+0 +-0x1.59f8eap-3 +0x1.7cec24p+1 +0x1.1c27c2p+0 +-0x1.de5f06p+2 +0x1.7621c2p+0 +-0x1.98de22p+1 +-0x1.1f41d2p+1 +0x1.adddaap+2 +0x1.784fd8p-1 +-0x1.5f00f2p+2 +0x1.48dfc2p-1 +0x1.7e3b1ep+0 +0x1.8bc666p-3 +0x1.37d0e2p-1 +0x1.157c74p+2 +0x1.6ff89ep+0 +0x1.165ffep+0 +0x1.d7529ep+2 +0x1.44055ap+3 +-0x1.6576e4p-3 +0x1.b5bdc2p-2 +-0x1.86a71p+2 +-0x1.e0bb9ap+1 +-0x1.3efb4ep+3 +0x1.465b4ap+3 +0x1.69ccccp-2 +0x1.fa8332p+0 +0x1.4f36aep-3 +0x1.901bdcp+2 +-0x1.93f8dap+1 +-0x1.c6d308p-1 +-0x1.8ab1e6p+2 +0x1.3a40b8p+3 +-0x1.347ff6p+1 +-0x1.ab55b8p-3 +0x1.2b15d2p+2 +-0x1.78cb5p+2 +-0x1.44fd58p+1 +0x1.8874ccp+2 +-0x1.95c6eap+2 +0x1.6a9ad6p+2 +0x1.5ac8p-2 +-0x1.a31878p+1 +-0x1.61f5eep-2 +0x1.daa598p+2 +-0x1.99370ap-1 +0x1.8d1328p+2 +-0x1.717428p-6 +0x1.a4ac26p-1 +-0x1.a8341ap+4 +-0x1.3d9104p+2 +-0x1.3461e8p+4 +0x1.af6bd4p+2 +0x1.ad2e52p+2 +-0x1.5eb886p-3 +0x1.4cc9c2p-1 +0x1.363ce2p+3 +0x1.cac2d4p+2 +-0x1.64c11ap-3 +-0x1.5bb654p-3 +0x1.9cd41ep+2 +0x1.a0c9fep-1 +0x1.0f9018p-4 +-0x1.669748p+0 +0x1.b1023cp+1 +0x1.d9e51ep-3 +-0x1.860c04p+2 +-0x1.004e04p+0 +0x1.606e3cp+0 +-0x1.3d5198p+2 +0x1.e50c02p+3 +0x1.175666p-2 +-0x1.15400ap+1 +0x1.d3df72p+2 +0x1.8474f6p+2 +-0x1.7beef6p-1 +-0x1.234dfcp+1 +0x1.a31fap+2 +0x1.371dd2p+3 +0x1.49ae1ap+1 +0x1.09183cp+0 +-0x1.9943fep+2 +-0x1.65ae36p-3 +-0x1.3f64f6p+2 +0x1.a9d88cp-1 +-0x1.108da4p+1 +0x1.239b84p-1 +-0x1.7a3fcap+1 +0x1.2fb65cp-3 +-0x1.c22adp-1 +-0x1.4e4a96p+2 +-0x1.b97532p-2 +0x1.6a1b84p-1 +-0x1.4acc7ep+2 +0x1.597faep-2 +-0x1.29e666p-4 +-0x1.92f968p+2 +0x1.b5bcbcp+2 +0x1.d44a0ap+2 +-0x1.118962p+0 +-0x1.0963fcp-1 +0x1.b49e72p+2 +0x1.479932p+3 +-0x1.96ebb8p+2 +-0x1.17fd5ap+2 +-0x1.30bf5cp-3 +0x1.458e58p+3 +0x1.36d3dap+3 +0x1.498cc4p+0 +0x1.a51dp+2 +-0x1.76eaep-2 +0x1.a92b5cp-1 +0x1.1cb5c8p+1 +0x1.f116dap-1 +-0x1.2fefa4p+1 +0x1.895384p-1 +0x1.3ea70ap-1 +0x1.4e5bc2p+0 +-0x1.5d3056p-3 +0x1.6e4f32p+1 +0x1.a0cb4ap+2 +0x1.3e9daep+0 +-0x1.610884p-3 +-0x1.e575c2p-4 +-0x1.4aa4e4p+3 +0x1.6b2384p-1 +0x1.10ccccp+3 +0x1.287d32p+0 +0x1.3ecp-2 +-0x1.ac3126p+2 +-0x1.375428p-2 +0x1.dd5e32p+2 +-0x1.3cc38cp+5 +-0x1.63b394p-3 +-0x1.36dd2ap+0 +-0x1.abaca4p-1 +0x1.9a4998p-3 +0x1.a8322ep+1 +0x1.495ba8p+2 +-0x1.2b1d96p+2 +0x1.3cb612p+3 +0x1.3b0bacp+2 +-0x1.24da3ep+2 +0x1.b4cc52p-1 +-0x1.7231e6p+2 +0x1.68579ap+0 +0x1.98b34p+2 +0x1.b0f174p+2 +-0x1.19633p+1 +0x1.4e8p-5 +0x1.c0b04cp+2 +0x1.3707a8p+3 +-0x1.0e597ap+2 +-0x1.cedcfep+4 +-0x1.086438p+3 +-0x1.a9c966p+1 +-0x1.74d70ap-7 +-0x1.641bbap-3 +0x1.bbba02p+2 +-0x1.348cccp-3 +-0x1.660e72p-3 +0x1.ace148p-4 +-0x1.21da26p+0 +0x1.46698ap+0 +-0x1.1153b6p+0 +-0x1.785416p+2 +-0x1.fa611ep-1 +-0x1.f9b342p-10 +0x1.bc4b08p+2 +-0x1.5b84eep-3 +0x1.47768p+1 +0x1.4c15c2p+0 +-0x1.c77e56p+0 +0x1.7d241ep+1 +0x1.ae9d56p+1 +0x1.969368p+2 +-0x1.cae3fp+0 +0x1.dd0f7ap+2 +-0x1.60cbbcp-3 +0x1.e8d8bap+2 +-0x1.994098p+0 +-0x1.4fca34p+3 +0x1.c4a67ap+2 +0x1.7d00ap+2 +-0x1.c32c1p+2 +-0x1.8632b6p+2 +0x1.b1f5cep+2 +-0x1.97022ep+4 +-0x1.55a7ep+3 +-0x1.d4fa1ep+2 +0x1.5fff5cp-3 +0x1.c1ca3ep-6 +0x1.8f307ap-1 +-0x1.43319ap-1 +-0x1.ab6e94p-1 +-0x1.a640ap-2 +0x1.44e4e4p+3 +-0x1.d568c8p+3 +0x1.2f5ba6p+2 +0x1.4371b2p+3 +-0x1.63de96p-3 +0x1.674f7ep+0 +0x1.899e56p+2 +-0x1.493136p+0 +-0x1.be2b2ep+1 +-0x1.01d56ap+2 +-0x1.3d4ddp+5 +0x1.479bf6p+3 +-0x1.67a02ep-1 +0x1.b4265cp+2 +-0x1.07d2a4p+1 +-0x1.85bb08p+2 +0x1.d3d95cp+2 +-0x1.6fd80cp+2 +-0x1.141ed8p+0 +-0x1.5e4264p-3 +0x1.3ff1fp+2 +0x1.3f5e2ap+1 +-0x1.683c8ap+2 +0x1.456ad2p+1 +-0x1.203312p+2 +-0x1.63533ap-3 +-0x1.554ceap+2 +-0x1.506d48p+2 +0x1.f2cap-1 +0x1.432124p+3 +-0x1.6905d4p+2 +0x1.a13008p+2 +-0x1.61007cp-3 +-0x1.80ada8p+2 +-0x1.2b5e12p+2 +0x1.0c38c6p-2 +0x1.6bb408p+2 +0x1.ee99c2p-1 +0x1.3c9f7cp+0 +-0x1.ca076p+4 +-0x1.b9fd7p-2 +0x1.d3c47ap-1 +-0x1.2dadfp+2 +-0x1.1f362p-4 +0x1.6923dep+2 +0x1.be923ap+2 +-0x1.6cb73ep+2 +-0x1.565dd6p-3 +0x1.0d65ecp+0 +0x1.8e8a76p+2 +-0x1.9f02cep-4 +0x1.43d63ep-1 +0x1.36302cp+3 +-0x1.0e3a4ep+1 +-0x1.9a6fdap+2 +-0x1.5ac962p-3 +-0x1.2531c6p+1 +-0x1.7803f8p+2 +-0x1.527bccp-2 +0x1.7c4c54p+2 +0x1.3e060ep+2 +-0x1.6f1faep+1 +0x1.d71794p+2 +-0x1.4ef87cp+0 +0x1.34ebd6p-1 +-0x1.bcdef2p-11 +-0x1.7c89b4p+1 +0x1.1dde7ap+0 +0x1.070a4cp+2 +0x1.944982p+2 +-0x1.8fc20cp+2 +0x1.0a54d2p-4 +0x1.44068ap+1 +-0x1.3682ccp+1 +-0x1.6027b4p-3 +-0x1.56433cp-3 +-0x1.611a72p-3 +0x1.f3e98p-2 +0x1.d08a02p+2 +-0x1.3caae2p-6 +0x1.c20dbcp+2 +-0x1.018d48p-1 +-0x1.64ea72p+5 +-0x1.8cf15cp+1 +-0x1.7bd526p+2 +0x1.910532p+0 +0x1.876cccp-1 +0x1.6b878ap+2 +-0x1.631b5cp-3 +0x1.b00e48p+2 +-0x1.f2bbc8p+1 +-0x1.45803cp+1 +-0x1.5f5a66p-3 +-0x1.96ce1cp+2 +0x1.291652p+0 +-0x1.d34f3ap+0 +0x1.38998ep+0 +0x1.ada72p-1 +-0x1.237184p+0 +-0x1.20ab84p+2 +0x1.067852p-3 +0x1.3cac66p+0 +0x1.bccd8ep+2 +0x1.252d84p+0 +-0x1.32397ap+2 +0x1.35fc82p+3 +-0x1.70551ep-3 +-0x1.813478p+4 +0x1.3f75c4p+3 +0x1.3f7dd6p+3 +0x1.381c9ep+1 +-0x1.fd3b32p-2 +-0x1.2bb33cp-1 +0x1.de544ap+2 +0x1.772e6ap+0 +0x1.a7acfap+1 +-0x1.0615c6p+3 +0x1.5b0bbcp+2 +-0x1.9dd4a8p-2 +-0x1.9f4442p+1 +-0x1.d50b1ep+1 +-0x1.56bf4ap-3 +0x1.16945cp+1 +-0x1.5ff37ap-3 +-0x1.ffbccap+2 +-0x1.384d24p+1 +-0x1.b98b6cp+1 +0x1.3a1936p+2 +0x1.44faf8p+3 +0x1.50b852p-8 +-0x1.57888ep+2 +0x1.489e2ap+3 +0x1.7ef8eep-1 +-0x1.242e6ep-10 +0x1.b2a55cp+3 +0x1.c89c72p+2 +0x1.35d764p+3 +-0x1.9e46p+0 +-0x1.75e2f4p-3 +-0x1.5c53c6p-3 +-0x1.12715cp+0 +-0x1.d39724p+2 +-0x1.9a8eb8p+0 +0x1.e68af6p+2 +0x1.24099ep+1 +0x1.8bc658p-1 +0x1.a15c28p-7 +-0x1.6294e6p-3 +0x1.e64718p+2 +-0x1.88c804p+1 +-0x1.9198b6p+5 +-0x1.283048p-1 +0x1.ce516ap+2 +-0x1.2b3baep+1 +0x1.812d0cp+2 +0x1.7ba71cp-1 +0x1.47349p+0 +-0x1.0b8e48p+4 +-0x1.e6dfaep-2 +0x1.440fa2p+3 +-0x1.912c34p+2 +-0x1.4bee34p+2 +-0x1.ad47c8p-4 +0x1.35fa32p+3 +-0x1.8e0298p-1 +0x1.48aaf6p+3 +-0x1.0fe0d2p+0 +-0x1.18fef6p-2 +-0x1.e6b47ap+0 +0x1.ca98aep+2 +0x1.e2d266p-1 +-0x1.351f76p+0 +0x1.6d3c66p+2 +0x1.ffcb3ep+0 +-0x1.6d0c0cp+2 +-0x1.3c1c28p-5 +-0x1.c15cccp-3 +0x1.98650ap+0 +0x1.a6029ep+2 +-0x1.9379f8p-3 +0x1.3759e6p+3 +0x1.5fdf7p+0 +-0x1.6cc55ep+4 +-0x1.053ee8p+2 +0x1.4af0c8p+1 +0x1.47654p+3 +-0x1.2efceap-3 +0x1.35a8bcp+3 +-0x1.fc1d5ep-1 +-0x1.459dfp+0 +0x1.f8a8dep-1 +-0x1.a7f5c2p-5 +-0x1.9f3316p+1 +-0x1.1aefp+2 +0x1.36e29p+3 +0x1.11eb7p+0 +0x1.6532ep-1 +-0x1.26974ep+1 +0x1.acf71ep+1 +-0x1.0aa7d6p-5 +-0x1.9d2ad4p+0 +-0x1.394222p+4 +0x1.2d6428p+0 +-0x1.b3fe3p-6 +0x1.dbf61cp+2 +-0x1.61fb7cp-3 +-0x1.02cbep+1 +-0x1.3d3f54p+0 +-0x1.64d5bep-3 +-0x1.9a6666p-5 +-0x1.40a212p+4 +-0x1.846292p+2 +-0x1.257d9cp-1 +0x1.e20d2ep+2 +0x1.506cbap-1 +-0x1.9f6c8ap-1 +0x1.cb5852p-2 +0x1.dfede8p+2 +-0x1.df03d2p+1 +-0x1.44c584p+1 +-0x1.a3a42p+1 +-0x1.2d988ap+1 +-0x1.33a426p+4 +-0x1.654542p-3 +0x1.1e27bep+1 +0x1.3faddap+3 +-0x1.9066fp+1 +-0x1.5c72dap-3 +0x1.ac0814p+0 +0x1.46ebd6p-1 +-0x1.bc3a8ep+1 +0x1.3104p+0 +0x1.4c56fap+1 +-0x1.742226p+0 +-0x1.5c0486p-3 +0x1.6285ecp+0 +-0x1.c9b584p+0 +0x1.e5955cp-3 +-0x1.632452p-3 +0x1.5bee1ep+1 +0x1.3c2fb6p+3 +0x1.16c592p-2 +0x1.b295eap+2 +0x1.407dcap+3 +-0x1.767ef6p-1 +0x1.eaf332p-3 +-0x1.4c6c5p+2 +-0x1.637f32p+1 +-0x1.7f5e8ep-6 +-0x1.65b23ap-3 +-0x1.11900ap-1 +0x1.10cef4p+3 +0x1.d66a2ep+2 +-0x1.3900ccp+2 +0x1.b3f344p+2 +-0x1.148232p+1 +-0x1.3b252ep+2 +0x1.da34a6p+2 +-0x1.65a516p-3 +-0x1.5ab462p+5 +0x1.a73528p+2 +-0x1.52d4dcp-2 +-0x1.3f1bf4p+2 +0x1.3d109cp+3 +-0x1.e7b434p-3 +0x1.4a8e1ap+0 +-0x1.69edc2p-1 +0x1.ad5e14p+0 +0x1.366efp+3 +-0x1.f320ep+3 +-0x1.60c86ep-3 +-0x1.062e96p+1 +-0x1.a5e6b4p-1 +0x1.48c082p+3 +-0x1.54a50cp-1 +-0x1.1d0e38p+1 +-0x1.0d72cap-3 +-0x1.c7214cp+4 +0x1.cf20a8p+2 +-0x1.42b7ecp+1 +0x1.421b4p+3 +-0x1.9509aep+2 +-0x1.641eep+2 +0x1.37c6f4p+3 +-0x1.321a78p+2 +0x1.c01464p+2 +0x1.2ad612p+0 +-0x1.baaeb4p-5 +0x1.f1ba76p+1 +-0x1.16b9aep+0 +0x1.69f97p+0 +0x1.d7236ep+2 +-0x1.2655ecp+0 +-0x1.b6036p+2 +0x1.3bf742p+2 +0x1.3a2338p+3 +0x1.302f54p+2 +0x1.b783cep+2 +0x1.231e54p+2 +0x1.b9a226p+2 +0x1.3d6ec4p-4 +-0x1.6605fep+2 +-0x1.016e18p-15 +0x1.7fb554p+2 +0x1.bb8caep+2 +0x1.397678p+3 +-0x1.08edp+1 +0x1.e85b2ep+2 +-0x1.ba8f1ep+0 +-0x1.600bc2p-3 +0x1.4706b2p+2 +0x1.76e914p+1 +-0x1.d276ep-1 +-0x1.fb3c58p+1 +0x1.7fec7p+2 +-0x1.488bf6p+5 +0x1.3daea4p+0 +-0x1.babc8ep+2 +0x1.421582p+3 +0x1.3b2066p+1 +-0x1.ea428ep-3 +0x1.c4b67ap-5 +-0x1.4a9be6p+4 +0x1.076be8p-2 +0x1.979a26p+2 +0x1.3fcdcp+3 +0x1.3b8242p+3 +0x1.8d651ep-4 +0x1.b4919ap-2 +-0x1.1a234ep-1 +0x1.2fd148p-3 +0x1.42871cp+3 +0x1.97d77p+0 +-0x1.86b75cp-2 +0x1.9009a6p+2 +0x1.408e7ap+1 +-0x1.0fb01cp-7 +0x1.a2f7d2p+2 +-0x1.2cc04ap-5 +-0x1.69a5ap+1 +0x1.0bbc28p-2 +0x1.2e22a2p+0 +-0x1.88dc7ap-2 +0x1.7c0c2p+2 +-0x1.407b66p-2 +0x1.d9152p+2 +0x1.7002b4p+0 +0x1.758778p+2 +0x1.0dcfbap+2 +-0x1.7f44bp+2 +0x1.cd82p+2 +-0x1.feb61ap+2 +-0x1.1a4e4ep+2 +0x1.e4a6a4p+1 +-0x1.0b5fp+3 +0x1.799eccp+1 +-0x1.e3f07ap-1 +0x1.38249cp+3 +-0x1.bffb68p+1 +-0x1.082034p+2 +0x1.23fcd6p+1 +-0x1.c101eep+1 +-0x1.54d51ap-3 +0x1.767064p+2 +-0x1.9bc01ap-1 +-0x1.29edc6p+2 +-0x1.3877a4p+1 +-0x1.61a294p-3 +-0x1.bb793p+1 +0x1.7a649ep+1 +0x1.d2ed52p+2 +0x1.48241cp+3 +0x1.75e9c2p-2 +0x1.42bcc4p+3 +-0x1.cfdaaep+2 +-0x1.858b18p+4 +0x1.54595cp+0 +0x1.0b3c52p+0 +-0x1.d3180cp-1 +0x1.58da68p+2 +0x1.c6adp+1 +0x1.a98beep+2 +0x1.5c53b2p+1 +-0x1.89d0ccp-1 +-0x1.650562p-3 +0x1.193d82p-1 +0x1.5bca22p+3 +0x1.3a05bp+3 +0x1.161abcp+4 +-0x1.71d802p+2 +-0x1.02919ap+0 +0x1.dc4546p-1 +-0x1.f46284p+1 +-0x1.8e38cep-2 +-0x1.2b76d6p+1 +0x1.b21856p+2 +0x1.9c86e6p+2 +-0x1.64d776p-3 +-0x1.267618p+2 +-0x1.53a72ap+2 +0x1.dcabd6p-2 +0x1.d42ac6p+2 +0x1.45b8acp+3 +-0x1.5c0da8p-1 +-0x1.acc00ap+2 +0x1.da4a46p+2 +-0x1.64e686p-3 +-0x1.729f8p+5 +-0x1.194d9ap+3 +0x1.7e3eb8p+0 +-0x1.5ef7a2p-3 +0x1.e443b2p+1 +-0x1.7470dp+2 +-0x1.3f927p+1 +0x1.b096cp+2 +0x1.b6792ap+2 +-0x1.44742p+3 +0x1.492384p+3 +0x1.d3c576p-3 +-0x1.11ab9ap+0 +-0x1.e35b8cp-2 +0x1.de41f6p-1 +-0x1.2b6a16p-4 +0x1.2d4eb2p+0 +0x1.48aac8p+1 +0x1.4450cap+3 +0x1.35d076p+3 +0x1.a536cep-1 +0x1.735fbcp-1 +0x1.b2e3d2p-1 +0x1.775ab8p+2 +0x1.819c92p-2 +0x1.8f27cep+2 +0x1.bb9e3ap+2 +-0x1.4d9a94p+2 +0x1.d7bcd8p+2 +-0x1.1febecp+2 +0x1.4d60e2p+3 +-0x1.4b24d2p+3 +-0x1.49a54cp-2 +0x1.456e9ep+3 +0x1.49f47ap-1 +-0x1.63babep-4 +0x1.b15424p+2 +0x1.e115eap+2 +-0x1.513732p+3 +-0x1.35b7dep-2 +-0x1.1bd7a4p+2 +0x1.599a8ep+0 +0x1.ad84aap-2 +0x1.d976fcp+2 +-0x1.86e666p-1 +0x1.10cb48p+3 +0x1.1d27fep+2 +0x1.ea9446p+2 +0x1.acbc8p+2 +0x1.a6d17p+0 +-0x1.100aa2p-3 +-0x1.6dfbbep+5 +-0x1.5b177p+0 +0x1.9524f6p+0 +-0x1.5aa4fap+2 +0x1.6c782p+4 +0x1.af708ap+1 +0x1.cec838p+2 +0x1.089898p+0 +-0x1.63ccacp-3 +0x1.1940bap+2 +-0x1.14ca86p+1 +-0x1.b5d494p+2 +-0x1.0a319ap-2 +-0x1.171efp+2 +0x1.49beaap+3 +-0x1.e727d4p+3 +-0x1.234bcp-1 +0x1.43c804p+3 +-0x1.178dfep+2 +0x1.fdc47ap-3 +-0x1.e75396p+2 +0x1.f8f04cp+2 +0x1.3a2882p+3 +-0x1.4fab3ep+2 +0x1.952e04p+1 +-0x1.f99bd6p+0 +0x1.233548p+0 +0x1.0fccccp-6 +-0x1.54f26ap+2 +-0x1.ea8732p-4 +-0x1.44f526p+2 +0x1.9dfe8ep+0 +0x1.4df2ep-1 +-0x1.5f4d08p+0 +0x1.350aap+3 +0x1.e7b63cp+2 +-0x1.cba3f6p+1 +0x1.3ec0f6p+0 +0x1.b8a2bap+2 +-0x1.5c199cp+4 +-0x1.056936p+3 +0x1.8e304p+2 +0x1.b2fc28p-2 +0x1.0af75cp-2 +-0x1.57f7b8p+3 +0x1.3d1ecp+3 +-0x1.2a76fp-1 +-0x1.2da37ep+6 +-0x1.4fc948p-2 +0x1.002a8ep+0 +-0x1.20bdd4p+2 +-0x1.5f6ceep+2 +0x1.93eb84p-4 +-0x1.c443cp+2 +0x1.b34272p+2 +-0x1.fec732p-1 +0x1.5a9794p+1 +0x1.9f7c76p+2 +0x1.c86a0cp+2 +0x1.88d064p-1 +-0x1.782b46p+2 +-0x1.a8241p-2 +0x1.01e8cep+2 +-0x1.65f582p-3 +-0x1.a6e786p+2 +0x1.268be2p-2 +0x1.d4ca68p+2 +0x1.10d1fep+3 +0x1.33280ap+1 +0x1.45129ap+3 +0x1.b2f9fp+2 +0x1.c06c2ap+2 +-0x1.2e4b6p+2 +0x1.532108p-1 +-0x1.198f1p+0 +0x1.32f2ep-1 +-0x1.63b1fap-3 +0x1.de7384p-1 +-0x1.f9c4ep+0 +0x1.bd8dc4p+2 +-0x1.748c3p+2 +-0x1.0c2204p+2 +0x1.3f400cp+3 +0x1.16ef8ep+1 +0x1.ffaf0ap-1 +-0x1.3df84ep-5 +-0x1.0a47f6p+3 +-0x1.074b02p-3 +0x1.358ba2p+3 diff --git a/benchtests/expm1f-inputs b/benchtests/expm1f-inputs new file mode 100644 index 0000000000..f16e8f7363 --- /dev/null +++ b/benchtests/expm1f-inputs @@ -0,0 +1,799 @@ +## args: float +## ret: float +## includes: math.h +## name: workload-random +# Random inputs in [a=-14.495465,b=88.722832] +# where a is the smallest number such that expm1f does not round to -1 +# and b is the smallest number such that expm1 does not round to +Inf (to nearest) +0x1.3810cp+6 +0x1.d5f38p+3 +0x1.5bbafp+4 +0x1.274218p+5 +-0x1.4e6a94p+2 +-0x1.898c1ap-1 +0x1.609cf8p+5 +0x1.9cc3a4p+4 +0x1.2df7eep+4 +0x1.73defep+5 +0x1.dd4ddap+3 +-0x1.9fe548p+3 +0x1.b3c8f2p+1 +0x1.3ac27cp+6 +0x1.b43346p+5 +0x1.1e7d4ep+2 +0x1.a65c52p+5 +0x1.3c2c3ap+5 +0x1.0ae18ep+6 +0x1.5d1cccp+6 +0x1.5e376ep+6 +0x1.46e41ap+5 +0x1.58bd84p+0 +-0x1.ad6876p+3 +0x1.ac642ep+4 +0x1.45482ep+2 +0x1.6a3fe6p+1 +0x1.b1da94p+3 +0x1.0bac6ep+6 +0x1.b7f212p+5 +0x1.4c9a62p+6 +0x1.903de4p+5 +0x1.0021e8p+4 +0x1.17b81p+3 +0x1.5cf974p+6 +0x1.1ca20ap+6 +0x1.aeb732p+5 +0x1.c60614p+5 +0x1.186b38p+6 +0x1.abbb34p+5 +0x1.5c2474p-2 +0x1.e6855cp+3 +0x1.14068cp+4 +0x1.710416p+4 +-0x1.cc704cp+2 +0x1.534bdap+6 +0x1.8b0c18p+3 +0x1.36de48p+1 +0x1.33b7f4p+5 +0x1.19c128p+5 +0x1.d9d7dap+5 +0x1.343482p+6 +0x1.c82f4ap+5 +-0x1.1123ep-1 +0x1.a66ed2p+5 +0x1.30fd8p+6 +0x1.221296p+6 +-0x1.cb7386p+1 +0x1.00cdccp+5 +-0x1.8d3f3ap+2 +-0x1.d4dbf6p+2 +0x1.fdf25ap+4 +0x1.d5fd5cp+3 +0x1.fbd1ep+4 +0x1.116b76p+6 +0x1.b9b8b4p+1 +0x1.b5dfdp+2 +0x1.c49f3cp+5 +0x1.608052p+6 +0x1.34cb2p+6 +0x1.e95b62p+3 +0x1.1984f4p+6 +0x1.f7a902p+5 +0x1.55b80ep+3 +0x1.e63ffap+3 +-0x1.acc202p+1 +0x1.2670c4p+4 +0x1.3cb908p-1 +0x1.2a3b32p+3 +0x1.ef2c8ap+5 +-0x1.86fb0ap+2 +-0x1.10ce8ap+1 +-0x1.ee4398p+2 +0x1.317bacp+6 +-0x1.7844b8p+3 +0x1.cc4ac8p+5 +0x1.56d116p+4 +-0x1.b79b38p+3 +0x1.34dcaep+5 +0x1.79f55cp+4 +0x1.6c0398p+5 +-0x1.04565cp+3 +0x1.9340ccp+2 +0x1.d8856cp+5 +-0x1.bc5034p+1 +0x1.97348cp+5 +0x1.76a472p+5 +0x1.111a1ep+5 +0x1.19bc32p+4 +0x1.5d75c2p+6 +0x1.a1dcaap+5 +0x1.079abcp+6 +0x1.8b0ca8p+5 +0x1.2e6548p+6 +0x1.24d536p+5 +0x1.3d8efcp+5 +-0x1.fa06c8p+2 +0x1.c20454p+5 +0x1.bbd65cp+3 +0x1.53db36p+6 +0x1.7f69b2p+4 +0x1.f8aab8p+4 +0x1.42f736p+5 +0x1.121742p+5 +0x1.2dc1c2p+5 +0x1.0d4e32p+5 +0x1.0a6128p+6 +0x1.afc1d6p+5 +0x1.1a29ap+6 +-0x1.c5e0c2p+3 +0x1.15b464p+6 +0x1.b1eb2ap+5 +-0x1.6f737p+0 +0x1.8c9f04p+0 +-0x1.56ad02p+3 +0x1.c595aap+5 +0x1.1c4056p+6 +0x1.45ba98p+5 +0x1.aff522p+5 +0x1.ac9542p+4 +0x1.4cc0d6p+1 +0x1.4adb2ep+6 +0x1.3491c2p+5 +0x1.559a82p+3 +0x1.def4p+5 +0x1.23f276p+5 +-0x1.d5eff8p+2 +0x1.e6ca08p+4 +0x1.f83e38p+3 +0x1.331a4p+6 +0x1.57df6cp+3 +-0x1.852c2ep+3 +0x1.bd56fcp+5 +-0x1.3720a6p+3 +0x1.3e49cp+1 +0x1.3a1e0ap+5 +0x1.7525c8p+5 +0x1.5ff3c8p+6 +0x1.5fbbd6p+6 +0x1.40f626p+5 +-0x1.87d02ep+3 +0x1.56345ep+2 +0x1.a735aep+2 +0x1.3b30bap+5 +-0x1.da7242p+2 +-0x1.9b8284p+1 +0x1.16a344p+6 +0x1.af11e4p+3 +0x1.53f7e6p+5 +0x1.50e1a8p+5 +0x1.242fe4p+6 +-0x1.18156ap+3 +-0x1.1ac67cp+2 +0x1.d53c02p+5 +0x1.5217c4p+6 +0x1.6da49ep+5 +0x1.17bfbp+6 +-0x1.0e3c48p+2 +-0x1.3b7a1ap+2 +0x1.41462cp+6 +0x1.aaee8p+4 +0x1.d2579cp+5 +-0x1.865634p+3 +0x1.a3876cp+5 +0x1.e512d8p+3 +0x1.bc6f4ep+4 +0x1.b14bfep+5 +0x1.ec787cp+4 +0x1.268bf6p+4 +-0x1.bf2e34p+2 +0x1.861576p+5 +0x1.41c256p+4 +0x1.69b71cp+5 +0x1.601c7ap+6 +0x1.b97298p+4 +0x1.82e8bp+5 +0x1.83c418p+5 +0x1.21dee6p+3 +0x1.cb17fap+5 +0x1.38c41cp+6 +-0x1.c2683cp+3 +0x1.3d6fcp+5 +0x1.d1ef44p+5 +0x1.47d6c2p+3 +0x1.380822p+6 +0x1.442deap+6 +0x1.25b0dcp+5 +0x1.03867cp+5 +0x1.8e554ep+5 +0x1.26befep+4 +-0x1.37db3ap+0 +-0x1.0508eap+3 +0x1.d25cecp+5 +0x1.05cf7cp+6 +0x1.c31c7p+5 +0x1.a86266p+5 +0x1.59e8a2p+6 +0x1.ef79ep+4 +0x1.212d2p+1 +-0x1.b8245ap+3 +0x1.30aec4p+5 +0x1.5fe628p+6 +0x1.caa0fap+5 +0x1.229bap+4 +0x1.1e5278p+6 +0x1.146544p+6 +0x1.009ecp+6 +0x1.9c90b4p+5 +0x1.0145dep+6 +0x1.6b25ap+5 +-0x1.9c2698p+1 +0x1.441204p+4 +0x1.396798p+5 +0x1.5b5dc8p+4 +0x1.27f358p+6 +0x1.79b952p+3 +0x1.1a30ecp+6 +0x1.0eb864p+6 +0x1.bd1f6ep+5 +0x1.90f39ap+4 +0x1.d00fa4p+5 +0x1.38d37ep+5 +0x1.942356p+4 +0x1.041a1ap+6 +0x1.ff196cp+3 +0x1.24bcd4p+6 +-0x1.3d97eap+3 +0x1.f6224p+5 +0x1.2cfdbep+5 +0x1.42fa36p+5 +0x1.844ce4p+5 +0x1.5810aep+6 +0x1.df2214p+5 +0x1.580ba4p+6 +0x1.620818p+3 +0x1.7e9a86p+5 +0x1.5fc452p+6 +-0x1.b0f38cp+3 +-0x1.b4c3ap+0 +0x1.ae6154p+4 +0x1.334348p+6 +0x1.daa71p+4 +0x1.9c2e0ep+5 +0x1.140af2p+5 +0x1.5dc292p+6 +0x1.f7f7e4p+5 +-0x1.d74c66p+2 +0x1.249b98p+6 +0x1.750da8p+3 +0x1.3782ccp+5 +0x1.3ad2f4p+6 +0x1.1b2256p+6 +0x1.be193p+3 +0x1.6074f2p+4 +0x1.926602p+5 +0x1.640a02p+3 +0x1.4d343p+0 +0x1.5eaabcp+4 +0x1.7e4ff4p+5 +0x1.631a3ap+4 +0x1.2bcc8p+3 +0x1.6abe2ap+5 +0x1.85e932p+5 +0x1.6ea55ap+2 +-0x1.a9a304p+2 +0x1.05ba9ep+6 +-0x1.ca222cp+2 +0x1.64940ep+5 +0x1.2ebe6cp+4 +0x1.7c91c2p+5 +0x1.f0368ap+4 +-0x1.129f02p+1 +0x1.7ed0a4p+4 +0x1.11beb2p+6 +0x1.330d7ap+4 +0x1.3bc6eep-1 +0x1.02348p+6 +0x1.35064ap+5 +0x1.3c44p+5 +0x1.c128eep+5 +0x1.837444p+3 +0x1.9116dap+5 +-0x1.7fb6f2p+3 +0x1.d74884p+4 +-0x1.dd8e86p+2 +0x1.db84e2p+5 +-0x1.9aa036p+2 +0x1.a108cep+5 +0x1.60ed52p+4 +0x1.c738eap+5 +0x1.1d9b9p+1 +0x1.5542ep+6 +0x1.074218p+0 +0x1.16afeep+6 +0x1.31b3dp+5 +0x1.8127a8p+5 +0x1.27d12p+2 +0x1.962ad2p+3 +0x1.726aacp+2 +0x1.e9e8bap+5 +0x1.b54284p+5 +0x1.acb4fcp+5 +0x1.2a671p+6 +0x1.de6a98p+5 +0x1.6a2454p+2 +0x1.85b1b8p+5 +0x1.a50b94p+5 +0x1.77bfaep+2 +0x1.41c6ap+3 +0x1.e51cdep+5 +0x1.4de72cp+6 +0x1.413186p+6 +-0x1.bbc70ap+3 +-0x1.f138fcp+2 +0x1.78855p+5 +0x1.dd16bep+4 +0x1.2c491p+2 +0x1.500ff6p+6 +-0x1.035c0ep+2 +0x1.3a7688p+5 +0x1.82bb26p+5 +0x1.0c41d2p+6 +-0x1.85128cp+1 +0x1.54a6f8p+5 +0x1.66e21cp+5 +0x1.d3cce6p+1 +0x1.a16cbap+3 +-0x1.096126p+2 +-0x1.a45e04p+3 +0x1.7d697p+5 +0x1.106d1ap+6 +0x1.04e974p+4 +0x1.6ce8b4p+3 +0x1.8b3bd4p+3 +0x1.7db442p+4 +0x1.3c3318p+6 +0x1.91a55ep+4 +0x1.378ffap+6 +-0x1.5f7422p+2 +0x1.6c9034p+3 +-0x1.f8ff9ep+1 +0x1.d2f0dp+4 +0x1.4e15dcp+6 +-0x1.a41644p+2 +0x1.1074f4p+5 +0x1.c08daap+5 +0x1.0a83a2p+3 +-0x1.e24802p+1 +0x1.54555cp+6 +0x1.b6cac8p+5 +-0x1.3f30dap+1 +0x1.c9d7e6p+4 +0x1.054b78p+6 +0x1.9a9d3cp+5 +0x1.eaea98p+5 +0x1.e6dcd2p+4 +0x1.4c5e9ap+2 +0x1.990a46p+3 +0x1.5b856p+5 +0x1.53b10cp+6 +0x1.3085b8p+2 +0x1.33623ap+6 +0x1.79211cp+2 +0x1.487144p+6 +0x1.8540c4p+5 +0x1.7d81eep+4 +0x1.c2663ep+5 +0x1.177a4ep+6 +0x1.9d505cp+5 +0x1.656852p+4 +-0x1.cc7e2cp+1 +0x1.a8057ap+4 +0x1.86fd48p+3 +-0x1.148908p+1 +0x1.5bc9fep+2 +0x1.4cd724p+5 +0x1.5cff22p+6 +-0x1.aaecc8p+2 +0x1.14cb74p+5 +0x1.ce6106p+4 +0x1.51cda4p+4 +0x1.171dbp+6 +0x1.4a3d88p+1 +0x1.1bd39ep+6 +0x1.7a88a4p+5 +0x1.7a31e4p+4 +0x1.1b585cp+6 +0x1.528cc6p+5 +0x1.a58ccep+4 +0x1.c26ed8p+4 +0x1.22021cp+6 +0x1.1b8a9p+6 +0x1.e2c44p+5 +0x1.fe1bb4p+5 +0x1.0548acp+6 +0x1.12ce22p+6 +0x1.623584p+6 +0x1.7a0d8p+5 +0x1.9b770ep+3 +0x1.3c827ap+4 +0x1.54d708p+4 +0x1.114dc6p+6 +0x1.a34a9ap+4 +-0x1.85b6bcp+3 +0x1.cba9f2p+4 +0x1.a81124p+4 +-0x1.a0265cp+3 +0x1.376a9p+5 +0x1.f878p+5 +0x1.3a403ep+6 +0x1.3b4e9cp+6 +0x1.3a7ecp+6 +0x1.0e7c34p+4 +0x1.d974ecp+3 +0x1.f96p+3 +0x1.b07262p+5 +0x1.c0761ep+5 +-0x1.8d95aap+3 +0x1.f9b2eap+2 +0x1.c45722p+3 +0x1.22035cp+3 +-0x1.14f90cp+2 +0x1.f3f58p+5 +-0x1.3f0d4p+3 +0x1.712122p+4 +0x1.6c70b4p+4 +0x1.5386p+5 +-0x1.676fcep+3 +0x1.087cdap+6 +0x1.5e31bcp+6 +0x1.59c27p+6 +0x1.8fda26p+5 +0x1.bac6dcp+5 +0x1.94bcbap+1 +0x1.b4272cp+4 +0x1.28b6e6p+4 +0x1.15d214p+5 +-0x1.258ca8p+2 +0x1.67d242p+4 +0x1.b463bep+4 +0x1.82d508p-1 +0x1.453544p+6 +0x1.59c3e2p+5 +0x1.a5444cp+0 +0x1.023312p+2 +0x1.4e49a2p+6 +0x1.3b2906p+3 +0x1.db3a42p+0 +0x1.482b3cp+4 +0x1.1b5f4p+4 +0x1.0a249ap+5 +-0x1.4d103cp+3 +-0x1.3f9a6p+1 +0x1.fb22d4p+4 +0x1.ae6726p+5 +0x1.5065c8p+5 +0x1.85a07ap+3 +0x1.08e6p+4 +0x1.9e5ddep+4 +0x1.5c2b96p+6 +0x1.025d3ep+3 +-0x1.b61288p+2 +0x1.767a9p+4 +-0x1.e1d398p+2 +0x1.61a05ap+4 +0x1.c1dcbep+4 +0x1.bc94c4p+5 +0x1.bab56ep+5 +0x1.3dd33ap+4 +0x1.57b106p+6 +-0x1.d493dcp+2 +0x1.c7c276p+5 +0x1.d177d8p+3 +0x1.e07254p+4 +0x1.e7a35ap+4 +0x1.f5361cp+3 +0x1.9124ap+5 +0x1.7cde4cp+5 +0x1.5868d6p+5 +0x1.34e748p+5 +0x1.883d3ap+5 +0x1.5a718ep+5 +0x1.416afcp+5 +0x1.b75ad8p+5 +0x1.000a84p+5 +0x1.dfbf96p+3 +0x1.caf566p+5 +0x1.47b68p+6 +0x1.179f6ep+5 +0x1.6139e6p+6 +0x1.79aba4p+4 +0x1.3314fcp+4 +-0x1.9396e4p+0 +0x1.d1f398p+5 +-0x1.4d93ecp+2 +-0x1.13ffbap+3 +0x1.43af3cp+6 +0x1.02fe76p+6 +0x1.ea2a1cp+5 +0x1.b46644p+5 +0x1.29812ap+6 +-0x1.9a4f28p+2 +0x1.33970ep+4 +0x1.22e908p+1 +0x1.5fe03ap+6 +0x1.593f74p-2 +0x1.12a9b6p+6 +0x1.d0aa12p+5 +0x1.d9bd7ap+4 +0x1.6abe46p+5 +0x1.6a7cd2p+5 +-0x1.243e06p+3 +0x1.8dc5b2p+5 +0x1.d19254p+5 +0x1.0d324p+4 +0x1.167128p+6 +0x1.667ba8p+5 +0x1.44c732p+6 +0x1.e452aep+5 +0x1.d9ad26p+5 +0x1.a6b18cp+5 +0x1.44778p+4 +0x1.6de93cp+5 +-0x1.749e0ap+3 +0x1.384234p+5 +0x1.baf766p+5 +0x1.155178p+5 +0x1.746b38p+5 +-0x1.108cf6p+3 +0x1.a42fcap+3 +0x1.e524aep+4 +0x1.70d73p+3 +0x1.10af9ap+6 +-0x1.fb00cep+1 +0x1.2084acp+6 +0x1.3ae402p+4 +0x1.3e95f2p+5 +0x1.424342p+6 +0x1.08ace2p+6 +0x1.eb0efep+5 +0x1.a4a3dap+5 +0x1.a438e8p+4 +0x1.39696ap+5 +0x1.2a706ep+6 +0x1.6fff2p+2 +0x1.ef4e3cp+5 +-0x1.20a1dp+3 +0x1.1fd284p+5 +0x1.240be4p+6 +0x1.5da7bp+4 +-0x1.49ca52p+1 +0x1.93cb38p+4 +0x1.179b56p+5 +0x1.18cf6cp+4 +0x1.d8c7cep+5 +0x1.54e87ap+6 +0x1.0556ap+6 +-0x1.f9dd92p+2 +0x1.1429eep+6 +0x1.295ef2p+5 +0x1.07eedcp+5 +0x1.58afeap+5 +0x1.e5bcc8p+2 +-0x1.a038c8p+3 +0x1.4e70a6p+6 +-0x1.172cfep-4 +0x1.355898p+3 +0x1.90292ep+5 +0x1.277aeap+4 +0x1.0e9c1cp+6 +0x1.54c948p+6 +0x1.17dc44p+2 +0x1.005c26p+3 +0x1.6c2d44p+5 +0x1.067ce8p+5 +0x1.188b3ap+1 +-0x1.c44378p+1 +0x1.16c9c4p+3 +0x1.40b782p+5 +0x1.8f8ecep+5 +0x1.aa8fbp+2 +0x1.40242ap+6 +0x1.78607cp+3 +0x1.209358p+6 +0x1.db1404p+4 +-0x1.b8ceap+1 +0x1.1e67p+6 +-0x1.c9f25ap+0 +0x1.eef1fp+5 +0x1.d17786p+4 +0x1.422a98p+6 +0x1.6efbaap+3 +0x1.5b11fep+6 +0x1.35d254p+6 +0x1.9b5daap-1 +-0x1.36c61cp+3 +0x1.5c19b4p+5 +-0x1.9dabdp+0 +0x1.b600c6p+5 +0x1.2a4238p+4 +-0x1.91e754p+2 +0x1.9740aap+4 +-0x1.77a118p+2 +0x1.125a76p+5 +0x1.08e4e2p+6 +0x1.2d6fp+4 +0x1.0046bap+4 +0x1.62c562p+6 +0x1.0d6c4p+6 +0x1.06cdbcp+6 +0x1.e88312p+5 +-0x1.903494p+3 +0x1.5d8044p+6 +0x1.0330e2p+4 +0x1.956188p+3 +0x1.9716c8p+5 +0x1.9b053ep+2 +0x1.26b98ap+5 +0x1.0b77p+3 +-0x1.ad2e28p+3 +0x1.30a1fap+4 +0x1.f41f1ep+2 +0x1.58c6eep+6 +0x1.4cd264p+3 +0x1.2f67c2p+6 +0x1.17e59ap+5 +0x1.59172cp+6 +0x1.3bb328p+4 +0x1.2a1c4ap+4 +0x1.11986p+6 +0x1.694528p+5 +0x1.d5535ap+4 +0x1.c2a2a4p+5 +0x1.4d88eap+4 +-0x1.e7e718p-1 +0x1.69dd4ap+5 +-0x1.4eca08p+1 +-0x1.c3eb44p+3 +0x1.2a4a8p+3 +0x1.d38d02p+5 +0x1.521b76p+6 +0x1.307698p+4 +0x1.8609c2p+4 +-0x1.facdd8p-3 +-0x1.2292p+3 +0x1.35cbf8p+1 +0x1.4390ecp+4 +0x1.948c06p+4 +-0x1.58cfb4p+3 +0x1.4b4b1cp+3 +0x1.ec863ap+5 +0x1.7868acp+4 +0x1.0c6a56p+6 +0x1.e8f6a6p+1 +0x1.f904cep+5 +0x1.d293c8p+4 +-0x1.35c3e8p+3 +0x1.323624p+4 +0x1.1985dep+4 +0x1.300366p+2 +0x1.cf14fap+5 +0x1.a32ab2p+5 +0x1.fb2286p+5 +0x1.071ed4p+6 +-0x1.25c488p+3 +0x1.5bd4b6p+5 +0x1.bfa83ap+4 +0x1.08f0dep+3 +0x1.f997b4p+4 +0x1.7368ccp+5 +0x1.590e04p+5 +0x1.57d704p+6 +0x1.c5aacep+5 +-0x1.54ee06p+2 +0x1.6191aap+3 +0x1.da9cap+5 +0x1.2fde0ap+5 +0x1.065a4ap+6 +0x1.1d3006p+6 +0x1.81e26ep+2 +0x1.ebf4dap+5 +0x1.cef564p+4 +0x1.922a5ep+3 +0x1.05e368p+3 +-0x1.245f16p+1 +0x1.479e9ap+3 +0x1.2b5394p+5 +0x1.ad8dacp+3 +0x1.ae750ep+3 +0x1.9a4daap+4 +-0x1.825edep+2 +0x1.312b9ap+6 +0x1.18e142p+4 +0x1.63bd86p+5 +0x1.252456p+4 +0x1.ba9c2ep+5 +-0x1.e576a4p+0 +0x1.14a2c4p+6 +0x1.0a073cp+5 +0x1.dcec16p+4 +-0x1.9ff9fap+2 +-0x1.5eb4f8p-2 +-0x1.d4075p+2 +0x1.cb0356p+2 +0x1.b902d6p+5 +0x1.3fdc32p+2 +0x1.5d971p+6 +0x1.84e158p+4 +0x1.95b4c4p+5 +-0x1.3e79ep+3 +0x1.fd2dc8p+5 +0x1.0d6f1ep+6 +0x1.4d02bp+5 +0x1.f11f1p+4 +0x1.576072p+4 +0x1.6dd086p+4 +0x1.0e00d2p+5 +0x1.995574p+5 +0x1.483b64p+5 +0x1.32e292p+3 +0x1.564096p+5 +0x1.64c174p+5 +0x1.54eccap+2 +0x1.10debap+5 +0x1.622066p+5 +0x1.207182p+2 +0x1.e8fb92p+5 +0x1.fc096ap+5 +0x1.3a7646p+1 +0x1.2b9d32p-1 +0x1.1b13f8p+6 +0x1.90947ap+2 +-0x1.b8d3acp+3 +0x1.b6a486p+3 +0x1.49a914p+6 +0x1.2e0d82p+6 +0x1.a6b1aep+5 +0x1.2511e4p+5 +0x1.da5904p+5 +0x1.d5b054p+4 +0x1.2a5f2cp+6 +0x1.08678ap+6 +0x1.f9e99ap+5 +0x1.916dfp+4 +0x1.bca612p+5 +0x1.1d10fcp+5 +0x1.5f1accp+6 +-0x1.cdae76p+2 +0x1.4cc6d2p+6 +0x1.496142p+6 +-0x1.a2389ap+3 +0x1.de417ap+5 +0x1.5db35ap+2 +0x1.c3bfp+4 +0x1.494e5cp+1 +0x1.653f3ep+3 +0x1.184762p+0 +0x1.11cd68p+6 +0x1.278d82p+5 +0x1.ee46e8p+3 +0x1.3eedbap+6 +0x1.2f0584p+5 +0x1.1c418ap+5 +0x1.4c0c6ap+5 +0x1.20bc1ap+5 +0x1.4a866cp+4 +0x1.f57228p+4 +0x1.0d82a8p+6 +0x1.4b7808p+6 +0x1.32497p+6 +0x1.53a728p+6 +0x1.a90c84p+5 +0x1.e1b57cp+5 +-0x1.2e0af6p+2 +0x1.c3ee6cp+2 +0x1.271e9ap+4 +0x1.62dcfap+6 +0x1.d0991p+1 +0x1.3b6862p+6 +0x1.dad92p+4 +0x1.28e45ap+3 +0x1.a299a8p+3 diff --git a/benchtests/log10f-inputs b/benchtests/log10f-inputs new file mode 100644 index 0000000000..09d2b5316e --- /dev/null +++ b/benchtests/log10f-inputs @@ -0,0 +1,1005 @@ +## args: float +## ret: float +## includes: math.h +# Random inputs x*2^e where x is random in [0x1p-1,0x1p+0] and e in [-126,127] +## name: workload-random +0x1.da16e6p-106 +0x1.670c3cp-44 +0x1.b238f8p+57 +0x1.55b736p-17 +0x1.3a0424p+101 +0x1.d5741p+54 +0x1.b4abbcp-10 +0x1.51ea1cp+96 +0x1.27b328p-29 +0x1.bd7b1ap+92 +0x1.fe1fap+77 +0x1.192fc2p+14 +0x1.c503fp+5 +0x1.d20c3ep-94 +0x1.586c14p-96 +0x1.e89f4cp-78 +0x1.a77f04p+3 +0x1.fe4a58p+66 +0x1.e67aa4p-3 +0x1.c22b3ap+35 +0x1.898044p-60 +0x1.7e5374p+24 +0x1.f8a3fp+81 +0x1.c9f37p+12 +0x1.c4760cp-94 +0x1.70457ep+97 +0x1.82cc9cp-57 +0x1.8528c8p-71 +0x1.1b90a8p+53 +0x1.76b5e2p+30 +0x1.999c7ap+111 +0x1.27731ap+116 +0x1.c2e128p-52 +0x1.a4ef2ep-46 +0x1.78fce8p-92 +0x1.d3a338p+0 +0x1.8de54cp+72 +0x1.20be3p+37 +0x1.290122p-118 +0x1.9f19e4p-36 +0x1.317c34p+80 +0x1.0f3f3ep-126 +0x1.a50fcp+44 +0x1.12ef54p-98 +0x1.69b3a6p+17 +0x1.ec0e44p+28 +0x1.d699d8p-113 +0x1.ae1134p+106 +0x1.b2333cp-63 +0x1.694f68p+91 +0x1.fcb1ap+112 +0x1.1e492p-45 +0x1.d7ac74p-6 +0x1.8122d4p-106 +0x1.070b92p+8 +0x1.1f3c0ap+30 +0x1.617eb2p+68 +0x1.7e64a4p-126 +0x1.1c4b92p+37 +0x1.ed1f1ep+21 +0x1.5f1a2p+43 +0x1.166282p+28 +0x1.78f48cp+126 +0x1.c344bp+81 +0x1.74a788p+34 +0x1.76e186p+79 +0x1.670aeap+124 +0x1.9df346p+77 +0x1.5add7ap+2 +0x1.da11fcp+81 +0x1.e7dba4p-123 +0x1.abbdep-65 +0x1.c557ap+122 +0x1.45572p-37 +0x1.249f44p-44 +0x1.5845fp-40 +0x1.66442cp-122 +0x1.12b0fp-97 +0x1.d0cd96p-23 +0x1.397968p-47 +0x1.65c0a2p-54 +0x1.32ace6p+116 +0x1.7b7a8cp+42 +0x1.9207eep-57 +0x1.16a338p-74 +0x1.9debc4p+96 +0x1.db29cp+17 +0x1.871b3cp-114 +0x1.a84948p-29 +0x1.0a16aep-41 +0x1.55c0dcp+103 +0x1.454dep+122 +0x1.0ae7a4p+109 +0x1.a1e65cp-101 +0x1.3aad16p-70 +0x1.95678ap+63 +0x1.5cba44p+72 +0x1.a5806ap+17 +0x1.f69a2p-127 +0x1.cfe828p+18 +0x1.93b8ap-66 +0x1.9bb51p+12 +0x1.15a764p+32 +0x1.9a26b4p-29 +0x1.b270b6p-122 +0x1.fe10e8p-120 +0x1.7f69b8p+116 +0x1.e2f38ep+99 +0x1.3bcafep+11 +0x1.87ee32p-89 +0x1.897feep-82 +0x1.b73098p+86 +0x1.904a14p+110 +0x1.2ccbcp+115 +0x1.bf3952p-52 +0x1.ad968p-13 +0x1.7fbc7ap-81 +0x1.01ad34p-109 +0x1.6bbadep+57 +0x1.9f097cp-88 +0x1.3e045p+13 +0x1.f39b0cp-56 +0x1.76c1d8p+48 +0x1.dc89acp+81 +0x1.9f4c76p-43 +0x1.d9b334p+4 +0x1.48b044p-84 +0x1.d9e254p+25 +0x1.05338ep-5 +0x1.e35e74p-50 +0x1.4d41bap-105 +0x1.a42d5ep+30 +0x1.f94e9ap+23 +0x1.8dbe34p+65 +0x1.0b305ep+20 +0x1.7f9e3ep-18 +0x1.a6c068p+34 +0x1.319b28p+64 +0x1.f96bep-102 +0x1.a567e4p-56 +0x1.a25f7p-88 +0x1.2efa1ep-89 +0x1.4e5fbcp-17 +0x1.2ba0ep-49 +0x1.43d7a8p-124 +0x1.befe96p-68 +0x1.cfcea4p-120 +0x1.83f31p+73 +0x1.133bfcp+70 +0x1.7093b2p+111 +0x1.d2124ap+46 +0x1.235cf6p+43 +0x1.81e624p-84 +0x1.b95f88p-81 +0x1.62f0ccp+46 +0x1.fee13cp-11 +0x1.9b96ecp+80 +0x1.1a18b8p-52 +0x1.d08758p-26 +0x1.2aac9cp+41 +0x1.d72052p+10 +0x1.ec9e44p+10 +0x1.3d17ap+89 +0x1.bf813p+58 +0x1.8f861cp+45 +0x1.cb02bp-98 +0x1.30292p+91 +0x1.759878p-20 +0x1.3b5ef8p+87 +0x1.d515fcp+22 +0x1.00c96cp+39 +0x1.43f8cap+2 +0x1.b2ba98p+119 +0x1.5f4574p+71 +0x1.d7d1bap-118 +0x1.bbc718p-116 +0x1.bfec3ep-81 +0x1.d60c98p+84 +0x1.21d388p+69 +0x1.e61d9p+30 +0x1.521fa4p+27 +0x1.81c3ecp-27 +0x1.0128b8p-104 +0x1.799af4p+43 +0x1.0b4494p+66 +0x1.286a46p-39 +0x1.30b7acp-22 +0x1.2769f6p+29 +0x1.fba108p-118 +0x1.ae818cp+58 +0x1.829338p+15 +0x1.eacd54p-50 +0x1.a3ddcep-73 +0x1.0a7cbep+3 +0x1.053fb2p+24 +0x1.977f4ap-90 +0x1.a1f9f6p-94 +0x1.35e1b8p-11 +0x1.568ad4p+51 +0x1.ed295cp-74 +0x1.67d44cp+34 +0x1.1dcc42p-51 +0x1.765f5ap-18 +0x1.f0b462p+81 +0x1.5be91ep-90 +0x1.3ae462p-24 +0x1.95c2fp-79 +0x1.60e24cp+40 +0x1.ed5388p-121 +0x1.f3b5f4p-81 +0x1.0aac5cp+57 +0x1.a52ebcp+30 +0x1.c8875cp-81 +0x1.b24d7cp+123 +0x1.294ad8p+111 +0x1.04ce6ep+12 +0x1.b31978p-51 +0x1.6f4a34p-16 +0x1.e4844p+38 +0x1.4fa35cp-18 +0x1.6702fap+115 +0x1.81bafep-100 +0x1.ff39fcp-72 +0x1.593832p-8 +0x1.8393bcp-40 +0x1.1d2b1ap+119 +0x1.0d9676p-111 +0x1.07c464p+109 +0x1.97d358p+51 +0x1.09f466p+12 +0x1.aaaa08p+0 +0x1.cdc2dep+52 +0x1.5a5914p+14 +0x1.85c484p-87 +0x1.6be4a6p-16 +0x1.d2b9a4p+25 +0x1.029092p-31 +0x1.00c192p+35 +0x1.09b8e2p-55 +0x1.7e39fcp-111 +0x1.e70afcp+2 +0x1.373c5cp-36 +0x1.0d242ap+64 +0x1.5e5a74p+4 +0x1.2049bp+69 +0x1.3a4a6ep+107 +0x1.8864c4p+15 +0x1.169e34p+107 +0x1.8a34dp+16 +0x1.492ba6p+80 +0x1.852282p+28 +0x1.bcaef8p+3 +0x1.2d1f62p-25 +0x1.fb7e44p-97 +0x1.dc3f8ep+79 +0x1.6667b2p-94 +0x1.53e6f4p-33 +0x1.c58c9p+15 +0x1.df9ecap-78 +0x1.19237ep-23 +0x1.865f4ap+89 +0x1.3a1ab4p+47 +0x1.523edp+25 +0x1.a88f98p-21 +0x1.26a16ap-80 +0x1.31b9d4p+30 +0x1.f2f44cp+4 +0x1.2bf848p+56 +0x1.18e23ep+44 +0x1.eb53acp+66 +0x1.f1ae2cp+96 +0x1.3b2864p+87 +0x1.34ea48p-126 +0x1.a21ef8p+30 +0x1.ed7cdp+28 +0x1.c62e2p+124 +0x1.cc0edp+95 +0x1.26deaep+100 +0x1.46e9dcp+35 +0x1.f7f808p+60 +0x1.05cf94p-2 +0x1.33046ap-26 +0x1.eda126p+109 +0x1.1a2c22p-57 +0x1.42f4fap+96 +0x1.4a529ep-11 +0x1.db8a26p-53 +0x1.b8de04p+119 +0x1.4bb944p-16 +0x1.044df4p+25 +0x1.93a748p+74 +0x1.671124p+22 +0x1.9ad676p-10 +0x1.0534dcp+80 +0x1.ec2a64p+82 +0x1.0f8aacp-39 +0x1.7fba92p+49 +0x1.1f844ap-90 +0x1.ba683p-114 +0x1.ff2418p+26 +0x1.b8f23p-92 +0x1.20843cp+72 +0x1.75b76ep-35 +0x1.42d08cp+9 +0x1.0213f6p-20 +0x1.4ea9b4p-25 +0x1.7afdfap+55 +0x1.b7f224p-6 +0x1.56f9fap-74 +0x1.e9eff6p+8 +0x1.ba5568p-67 +0x1.602878p-127 +0x1.5f1212p+27 +0x1.d8c36p-125 +0x1.595be4p+31 +0x1.6b8c2p+60 +0x1.9c0bfep+86 +0x1.3054d8p-110 +0x1.2de4e2p-114 +0x1.d30c88p+91 +0x1.92b73cp-68 +0x1.cecccp+99 +0x1.f61878p+63 +0x1.660bfep+29 +0x1.082f72p-29 +0x1.0b02f6p+110 +0x1.13fdc4p-7 +0x1.454f9p-22 +0x1.8e5e8cp+96 +0x1.266ep-127 +0x1.cbdef4p+26 +0x1.16454ep-96 +0x1.23fdc8p+105 +0x1.4b50bap+32 +0x1.a9a79p-72 +0x1.1d30dcp-13 +0x1.418554p+24 +0x1.b772ecp+89 +0x1.de553cp+45 +0x1.04c0b6p-120 +0x1.c02f08p-48 +0x1.186b22p-94 +0x1.8866b6p-112 +0x1.63ab38p-3 +0x1.d4d124p+109 +0x1.921c7p+8 +0x1.02e724p+20 +0x1.7b93a8p-101 +0x1.aa0cbcp-86 +0x1.bd3e86p-44 +0x1.fc4d2p-84 +0x1.71868ep-71 +0x1.4dd6a6p-57 +0x1.a987b2p-116 +0x1.ab61d4p+35 +0x1.cdab24p+30 +0x1.0b5594p-96 +0x1.eaa8f4p+121 +0x1.8fd794p+17 +0x1.1b63b6p-81 +0x1.8e99bcp-113 +0x1.043c5cp-105 +0x1.5013d4p-58 +0x1.601568p-98 +0x1.783708p-27 +0x1.e26e5cp+58 +0x1.bee95p+71 +0x1.df371ap+26 +0x1.2d7b7p-125 +0x1.60c5cep-38 +0x1.46cb7ep+88 +0x1.e16038p-13 +0x1.23f7cap-31 +0x1.90d4bcp-2 +0x1.f4fa2p-47 +0x1.0adef2p+50 +0x1.ce7c8cp-45 +0x1.d81b52p+104 +0x1.43d436p-95 +0x1.faa8ecp-24 +0x1.7d4b4p+86 +0x1.7c8994p-83 +0x1.c4b67cp+40 +0x1.1b1922p-112 +0x1.4b7ecep-15 +0x1.dcb6fep-14 +0x1.20dbf6p-55 +0x1.3e777p-109 +0x1.22360ap-118 +0x1.7c01bcp-43 +0x1.9218fep+38 +0x1.1a7e04p-57 +0x1.4623d6p+90 +0x1.56cb4p-70 +0x1.88e8cp-24 +0x1.d3b234p-40 +0x1.d3461p+28 +0x1.e03eap-80 +0x1.866d8cp+2 +0x1.efd52p+17 +0x1.b9466cp+62 +0x1.6e3274p+50 +0x1.16b192p+99 +0x1.2d1f76p-20 +0x1.018a1ep-109 +0x1.e64edcp-61 +0x1.badf04p+7 +0x1.fd69c4p-85 +0x1.789cc6p-4 +0x1.4d7b2ap+80 +0x1.c7e56p+35 +0x1.edb216p-57 +0x1.6b581p-30 +0x1.a60178p+42 +0x1.10322ep-50 +0x1.af924ep+45 +0x1.5413bp+87 +0x1.2db0cp+46 +0x1.650a2cp-2 +0x1.57b896p-104 +0x1.6b2dap+0 +0x1.e7063ep-53 +0x1.4bb8ep-42 +0x1.7d72dp+123 +0x1.dcd8fap-87 +0x1.fae3f4p+11 +0x1.6de0dap+68 +0x1.624738p-78 +0x1.dbe44cp-23 +0x1.5e0f9ap-46 +0x1.0c9dp-104 +0x1.c565d8p+33 +0x1.c07118p-63 +0x1.c9d942p+85 +0x1.773dfp+3 +0x1.15bfap+87 +0x1.fdbd2cp+14 +0x1.d996fap-57 +0x1.2a7c7cp-45 +0x1.e690fep-71 +0x1.f5c04p-95 +0x1.d17398p+123 +0x1.c5dc6cp-117 +0x1.d9f2ccp+82 +0x1.da8d44p-16 +0x1.bda39p-67 +0x1.5a646cp-10 +0x1.412e4ap-58 +0x1.d91868p+80 +0x1.35d738p+68 +0x1.5045d4p-103 +0x1.bb697p-120 +0x1.68d014p-75 +0x1.0a3754p+54 +0x1.9bb66ap+100 +0x1.c2fdcp+33 +0x1.c2023p-98 +0x1.2e3106p+20 +0x1.3b5d34p-29 +0x1.1c8316p+97 +0x1.51779cp+3 +0x1.65d436p-49 +0x1.6c3f4ep+47 +0x1.7b696cp-58 +0x1.1768cap+96 +0x1.0a5052p-97 +0x1.46e2dap+86 +0x1.e545f8p-44 +0x1.1851dap+37 +0x1.877a1cp-30 +0x1.fedaf8p+89 +0x1.93a08p-114 +0x1.c970fp-106 +0x1.e80106p+26 +0x1.6f9bep-29 +0x1.a22e78p+24 +0x1.3cf0eep+108 +0x1.cead34p+76 +0x1.a4f7fp+17 +0x1.823924p-11 +0x1.1cfdf4p-28 +0x1.5e8ee8p+119 +0x1.5357d8p+43 +0x1.99df08p-126 +0x1.f98dccp+76 +0x1.c9d0b6p+37 +0x1.342018p-89 +0x1.c6f08cp+89 +0x1.f7ba82p+116 +0x1.ec961cp-13 +0x1.772252p-18 +0x1.08f52p-107 +0x1.7cbceep-41 +0x1.cdc76p+91 +0x1.c5ce0cp-38 +0x1.9cff24p-77 +0x1.2ad16cp-101 +0x1.1d0ab2p+41 +0x1.84a054p-70 +0x1.c95934p+126 +0x1.33f824p+102 +0x1.74420ap+27 +0x1.1df842p+21 +0x1.7c3cc4p-7 +0x1.8cde44p-44 +0x1.19894ep+5 +0x1.ae06fp-55 +0x1.680a14p-18 +0x1.e9d17p+52 +0x1.cb341ep+74 +0x1.3c332cp-61 +0x1.afd732p-39 +0x1.42540cp+27 +0x1.6465c4p-43 +0x1.6ad396p-23 +0x1.791e4ap+51 +0x1.61e53p-114 +0x1.c2b5eep-74 +0x1.33e062p+79 +0x1.b25868p+73 +0x1.7c8b4cp+28 +0x1.5fd75p-79 +0x1.ccc12cp+30 +0x1.179e28p+16 +0x1.f74506p+83 +0x1.ccb774p-96 +0x1.db5004p-30 +0x1.b60d22p-103 +0x1.87fb24p-7 +0x1.92111ep+33 +0x1.c760aep+28 +0x1.2dc1acp-122 +0x1.99be28p+19 +0x1.b2a008p-88 +0x1.ce8b2p-112 +0x1.b151cp-18 +0x1.3aa5e4p-31 +0x1.42f8fcp+103 +0x1.209adcp+22 +0x1.8b597cp+31 +0x1.a279b6p+99 +0x1.98376cp-33 +0x1.2e91c4p-29 +0x1.5e6e64p+33 +0x1.058124p-31 +0x1.8ff2d6p+15 +0x1.f7ee64p-60 +0x1.27fbfcp-111 +0x1.d54a2p+116 +0x1.4105b8p+93 +0x1.7d7fbap-52 +0x1.518e02p-62 +0x1.4b5758p-45 +0x1.c515eep-93 +0x1.23932ep+19 +0x1.7e1ee4p-98 +0x1.0599ccp+51 +0x1.e26478p-78 +0x1.06e7ecp-28 +0x1.7e1448p-27 +0x1.98fb06p+8 +0x1.b8d9a6p+88 +0x1.090d4ep-55 +0x1.ca936cp+20 +0x1.3a8d3ap-114 +0x1.f354dcp-56 +0x1.11640ep+63 +0x1.f70288p+70 +0x1.4ad00cp+32 +0x1.7f8a8cp-31 +0x1.78d6ccp-34 +0x1.b33008p-105 +0x1.2fd46p-96 +0x1.557cbp-19 +0x1.426d22p-117 +0x1.009ed6p+59 +0x1.1112f8p+115 +0x1.7a21acp-71 +0x1.1a4cd6p+42 +0x1.982becp-21 +0x1.f5dabcp+106 +0x1.884e24p+65 +0x1.9ac342p+9 +0x1.138c3p-39 +0x1.00f9e8p-105 +0x1.ffd91ep-120 +0x1.997a48p-84 +0x1.874cb4p+60 +0x1.98ec16p+51 +0x1.9a371p+20 +0x1.d3818cp+93 +0x1.4a28ep+65 +0x1.1eee44p+44 +0x1.822bp+84 +0x1.9e26a8p+123 +0x1.3c56f4p-16 +0x1.e618fp-17 +0x1.f99f1p-70 +0x1.9d16p-112 +0x1.632eb8p+16 +0x1.d835a6p+41 +0x1.484fd4p-15 +0x1.b42298p-53 +0x1.854f38p-108 +0x1.4c1aa4p-23 +0x1.277a4ap+77 +0x1.f5a3c2p+81 +0x1.46e67p+65 +0x1.c0e96p-102 +0x1.7dfeb8p+93 +0x1.3ed79cp+60 +0x1.508306p+73 +0x1.cbd7b2p+61 +0x1.8307a6p-21 +0x1.c346fcp-23 +0x1.057024p-122 +0x1.4eb468p-90 +0x1.066f76p-1 +0x1.66ebdcp-121 +0x1.c45404p-25 +0x1.1f8fb8p-107 +0x1.57ca58p+36 +0x1.937abcp-34 +0x1.24af16p-30 +0x1.31ec06p-2 +0x1.104f24p+59 +0x1.f8171cp+52 +0x1.15e124p-16 +0x1.a897f8p+16 +0x1.f7581cp+57 +0x1.ece8ep+44 +0x1.742f84p+90 +0x1.c37ae8p+57 +0x1.5bca82p-52 +0x1.d481bp+13 +0x1.12f074p-24 +0x1.fe7e7p-96 +0x1.d1b5ap+106 +0x1.758368p-121 +0x1.aec484p+103 +0x1.81306cp+17 +0x1.5c5cecp+87 +0x1.1f89a4p+5 +0x1.db686cp+36 +0x1.e412f4p+24 +0x1.89ef5cp+65 +0x1.d8f6a6p-87 +0x1.5314d6p-4 +0x1.7fe6d4p-116 +0x1.ce185ap+32 +0x1.cbbd6ep-126 +0x1.986396p+49 +0x1.e33398p-48 +0x1.f1c1f4p+115 +0x1.d7075p-95 +0x1.85e7bp-82 +0x1.53e2ccp-50 +0x1.b9679p-66 +0x1.d0bd04p-87 +0x1.8d73eep+53 +0x1.cbe57cp-57 +0x1.4dbacap-94 +0x1.27fb48p+97 +0x1.1977b8p-125 +0x1.3016bap-92 +0x1.d8c6a6p+88 +0x1.9de6b8p+22 +0x1.7f1ebap+57 +0x1.5e4058p+81 +0x1.bb0b7cp+110 +0x1.98ad46p+23 +0x1.3d6e64p-101 +0x1.3ace6cp+69 +0x1.b2ad5p+16 +0x1.fdf974p-123 +0x1.b452f4p+49 +0x1.1e1822p+65 +0x1.bd61a4p-42 +0x1.96fc0cp-3 +0x1.154f14p+121 +0x1.b5946p-95 +0x1.863008p+58 +0x1.d5682ap+41 +0x1.46a32cp+2 +0x1.7fa148p-74 +0x1.dd3f46p-27 +0x1.4605b2p-96 +0x1.b3ab48p+49 +0x1.98b7bp-60 +0x1.8f97a8p-82 +0x1.af6528p-102 +0x1.97a874p+51 +0x1.cdf372p-86 +0x1.a6a82ep-21 +0x1.d9015cp+103 +0x1.10140ap+19 +0x1.259fb2p-104 +0x1.718298p-75 +0x1.b2955cp-21 +0x1.4dc66p-101 +0x1.16680ep-118 +0x1.f5c2b6p+65 +0x1.6cb9e4p-96 +0x1.68cc5cp-63 +0x1.6a69ccp-56 +0x1.268758p-1 +0x1.9fff9ep-57 +0x1.6f229p-58 +0x1.4fe5dep-4 +0x1.132c8p+78 +0x1.2336a6p+88 +0x1.0d571ep+81 +0x1.da119cp+57 +0x1.87a81cp-82 +0x1.166246p+13 +0x1.0c61cap+103 +0x1.f06688p+90 +0x1.cdc4c4p-79 +0x1.73443cp+4 +0x1.9b1b68p-92 +0x1.1765e2p-94 +0x1.ad115cp-49 +0x1.3094ap-19 +0x1.6a3556p+82 +0x1.cdb526p-80 +0x1.abfb12p+111 +0x1.d07accp-82 +0x1.89c7acp+20 +0x1.de58cp+20 +0x1.c0daf8p-24 +0x1.e46e38p-127 +0x1.2e25a4p+40 +0x1.4d0512p+7 +0x1.30cb0ep-29 +0x1.5acfap+116 +0x1.10b526p+99 +0x1.92a2f8p-118 +0x1.d232e8p-115 +0x1.9cb39ep+83 +0x1.00932cp+61 +0x1.b8c878p-15 +0x1.ea4a42p+48 +0x1.eaee6p+71 +0x1.f14842p+62 +0x1.1a5b82p-19 +0x1.ad7ap-91 +0x1.9ec11ep+24 +0x1.fe8dccp-113 +0x1.31f07cp+35 +0x1.044952p-23 +0x1.ef381cp-51 +0x1.c742fp+122 +0x1.f3e7f6p-126 +0x1.09f72cp-62 +0x1.9815fap+74 +0x1.8ef758p-111 +0x1.b8019cp-14 +0x1.6d17b8p-80 +0x1.4fe49p-89 +0x1.204356p-91 +0x1.740898p+95 +0x1.614624p-60 +0x1.c35984p-86 +0x1.bd40c8p+103 +0x1.8c1b9ap-24 +0x1.53d4b6p+49 +0x1.3db80cp+124 +0x1.504facp+30 +0x1.89207cp+51 +0x1.0c09d8p-38 +0x1.7a9eecp-40 +0x1.98f19cp-97 +0x1.cde426p-66 +0x1.c1992cp-81 +0x1.f71a8cp+110 +0x1.24a564p+101 +0x1.0faedp+29 +0x1.69b9f8p-80 +0x1.021294p-110 +0x1.9e58b4p+80 +0x1.825bd4p-37 +0x1.26db6ep-111 +0x1.f377e8p-59 +0x1.589518p+36 +0x1.f51bep+120 +0x1.c71048p+125 +0x1.e5ead2p+27 +0x1.3bff94p-119 +0x1.65f91cp+69 +0x1.eaf6cp+109 +0x1.cafb1cp-84 +0x1.38170cp-16 +0x1.75855ap+5 +0x1.688904p+122 +0x1.6f5462p-115 +0x1.60974cp-20 +0x1.dfd768p+54 +0x1.598a26p-4 +0x1.ab96d4p-69 +0x1.40d872p-62 +0x1.5bee38p-12 +0x1.b0c6f6p+85 +0x1.98041cp-74 +0x1.4275ep-55 +0x1.b6a0e4p+124 +0x1.ee4472p+79 +0x1.dcad5ep+120 +0x1.ede43ep-92 +0x1.01d3fp-127 +0x1.cb73f8p-85 +0x1.d9653p+1 +0x1.fb7fbep-1 +0x1.07830ep-83 +0x1.4aac7ep+2 +0x1.dfa09ep+41 +0x1.df5dc6p+5 +0x1.1a87c8p+71 +0x1.560c8ap-47 +0x1.1e508ap-70 +0x1.66538cp+118 +0x1.502268p-125 +0x1.9bea34p-82 +0x1.61c4acp+54 +0x1.bf1d4p-103 +0x1.3390f6p-14 +0x1.d806c6p+36 +0x1.07738ep-77 +0x1.da58eap-124 +0x1.863838p+83 +0x1.2a550ap-75 +0x1.79654ep+104 +0x1.874ddcp-119 +0x1.b8fd6p-125 +0x1.6f4f02p+43 +0x1.1fd48ap+58 +0x1.f83e6ap+73 +0x1.8c87fap-77 +0x1.ec4838p-7 +0x1.122f66p+100 +0x1.29047ap+100 +0x1.79ae82p+47 +0x1.b11164p+107 +0x1.d11e6cp-92 +0x1.99a08cp+122 +0x1.cc87e4p+108 +0x1.1df93ap+84 +0x1.ffa4c8p+26 +0x1.889ffcp+62 +0x1.102e0ep-65 +0x1.5a8feep+30 +0x1.c35a4p-38 +0x1.d82d9cp+26 +0x1.d40506p+21 +0x1.9907b4p+72 +0x1.4bc558p+9 +0x1.7b50c6p+114 +0x1.508d96p-1 +0x1.1485cep-35 +0x1.226084p+109 +0x1.a5e10ep-38 +0x1.efdbfp-48 +0x1.f5a8e6p-92 +0x1.b6110cp-102 +0x1.7565ecp-10 +0x1.fbf5p+17 +0x1.f12abp-86 +0x1.e56478p-89 +0x1.e94aap-93 +0x1.f1c6d4p-75 +0x1.69ed0ep-54 +0x1.f337c4p+81 +0x1.5a565p+87 +0x1.ff5e74p+18 +0x1.e63068p-12 +0x1.830d7cp+105 +0x1.28a0c4p-45 +0x1.53236p-73 +0x1.9aaf0ap-38 +0x1.95b8b8p+18 +0x1.78b7a6p-31 +0x1.0d14aep+71 +0x1.4e3e3cp+87 +0x1.4c1aeap-5 +0x1.05d63cp-76 +0x1.809422p-3 +0x1.4e06f6p+42 +0x1.8e62p+67 +0x1.308398p-112 +0x1.76b8dep-29 +0x1.a1948p-99 +0x1.061da4p+3 +0x1.6333bp+85 +0x1.cce084p+39 +0x1.93a29ap+24 +0x1.ec39e8p+77 +0x1.74f824p-49 +0x1.03d684p+119 +0x1.51b42cp-116 +0x1.825782p-65 +0x1.02080ep-34 +0x1.49a78ap+22 +0x1.bf775p-78 +0x1.e14de2p+63 +0x1.f0ed2p-32 +0x1.3e66fp+87 +0x1.67f3a4p+44 +0x1.221c8ep+0 +0x1.89fe2cp+13 +0x1.31081ap-117 +0x1.0b9c12p-77 +0x1.80e67p+24 +0x1.b0798ap+122 +0x1.b2fafep-4 +0x1.0a5278p+43 +0x1.61c05cp+27 +0x1.6db74cp-99 +0x1.3f0a0ap+43 +0x1.84026ep+59 +0x1.6ca854p+30 +0x1.491302p-2 +0x1.851e0cp-9 +0x1.f55decp+104 +0x1.e936e8p-108 +0x1.2ecd9p+57 +0x1.750412p-34 +0x1.d9789cp-3 +0x1.c2c19p-78 +0x1.dc53dcp-122 +0x1.75107p+9 +0x1.dae6cp-29 +0x1.e2703p-77 +0x1.f0a792p+9 +0x1.60261p-29 +0x1.fad1b6p+93 +0x1.d35d9p+35 +0x1.51e05p-34 +0x1.8c1d74p+97 +0x1.7444d4p-45 +0x1.c55458p-92 +0x1.bb5c4ep+40 +0x1.e2749p-46 +0x1.965864p+5 +0x1.1edcf2p-69 +0x1.9641a6p+47 +0x1.4c72ecp-115 +0x1.40a138p-103 +0x1.d9a2cp-52 +0x1.c1c2b8p+86 +0x1.90c1dp+35 +0x1.3e9a3p+123 +0x1.355362p+116 +0x1.acfd24p-96 +0x1.5b85f8p+55 +0x1.bf45fp+8 +0x1.a12c4ep-29 +0x1.f9b272p-78 +0x1.bcffe4p-60 +0x1.d2aa46p+40 +0x1.a0a524p+57 +0x1.c07822p-113 +0x1.e79e9p-37 +0x1.0b0c1p-59 +0x1.97b7d6p+37 +0x1.7fe50cp+22 +0x1.c117c4p+126 +0x1.f98134p+17 +0x1.423bf2p-19 +0x1.a1b2f4p+106 +0x1.94c3ep+70 +0x1.c8697p+2 +0x1.7e2746p-60 +0x1.797a46p-54 +0x1.7b60f2p-102 +0x1.cadc0cp-76 +0x1.d67bep-34 +0x1.454c1p+4 +0x1.d25adcp-53 +0x1.6ab0ccp-4 +0x1.dfeefcp+66 +0x1.aebe38p-54 +0x1.216b2ap-125 +0x1.85c3acp+112 +0x1.fbb2cep+23 +0x1.cb1b8cp-3 +0x1.c66ed4p+21 +0x1.f23988p+30 +0x1.f584e8p+103 +0x1.6342b8p+48 +0x1.c562e4p+94 +0x1.1ac782p-96 +0x1.b42c44p+69 +0x1.e71db6p-49 +0x1.e83c9p+95 +0x1.1c55bep-63 +0x1.3a8884p+87 +0x1.60d3b4p+105 +0x1.be6558p+110 +0x1.bab6b6p-78 +0x1.16a99p+85 +0x1.0dbf68p+17 diff --git a/benchtests/log10p1f-inputs b/benchtests/log10p1f-inputs new file mode 100644 index 0000000000..50a9739476 --- /dev/null +++ b/benchtests/log10p1f-inputs @@ -0,0 +1,2888 @@ +## args: float +## ret: float +## includes: math.h +## name: workload-spec2017.wrf +0x1.fe4c3p-1 +0x1.0e33e6p+1 +0x1.00000ap+0 +0x1.900028p+4 +0x1.f8cdeep+0 +0x1.332986p+7 +0x1.493696p+0 +0x1p+0 +0x1.38c67p+7 +0x1.029046p+1 +0x1.1bd31cp+4 +0x1.bb3e3ep+12 +0x1.000098p+0 +0x1.a7971p+7 +0x1p+0 +0x1.0001a8p+0 +0x1.00004ep+0 +0x1p+0 +0x1.0606f2p+0 +0x1.3e54a8p+11 +0x1.3a0662p+3 +0x1.000c72p+0 +0x1p+0 +0x1.0bf8b6p+0 +0x1.000204p+0 +0x1.500ad2p+0 +0x1p+0 +0x1.3e4cfp+8 +0x1.00006cp+0 +0x1.54f7fp+0 +0x1.267858p+0 +0x1.191ccp+0 +0x1.0cdb18p+1 +0x1.29bf1ep+15 +0x1.64bd92p+1 +0x1.255534p+0 +0x1p+0 +0x1.93bb82p+3 +0x1.1348ep+1 +0x1.00456ep+0 +0x1.08afbcp+8 +0x1.32c37ep+0 +0x1.3437cep-1 +0x1.000214p+0 +0x1.03d5ap+0 +0x1.172378p+6 +0x1p+0 +0x1.330f22p-1 +0x1.00b91p+0 +0x1.e831f2p+15 +0x1.092318p+9 +0x1p+0 +0x1.e80902p+7 +0x1.71ec54p+2 +0x1.1935dcp+0 +0x1.651082p+14 +0x1p+0 +0x1.0f41d8p+8 +0x1.17f4p+0 +0x1.7cf946p+9 +0x1.b14396p+0 +0x1.92f94p+1 +0x1.2f3784p-1 +0x1p+0 +0x1.305ad4p-1 +0x1.002a08p+0 +0x1.3e338p+5 +0x1.1863f6p+8 +0x1p+0 +0x1.ed8fd8p+58 +0x1p+0 +0x1p+0 +0x1.215fc8p+9 +0x1.1965bep+16 +0x1.00031cp+0 +0x1.00011p+0 +0x1p+0 +0x1.e384fep-20 +0x1p+0 +0x1.00020cp+0 +0x1.007e24p+0 +0x1.b14346p+0 +0x1.243ff8p+0 +0x1.3f6ac2p+3 +0x1.816ff6p+5 +0x1.0115ap+8 +0x1.162028p+16 +0x1.62692cp+0 +0x1.0227c8p+1 +0x1.4dda3ep+0 +0x1.418696p+0 +0x1.0272f4p+2 +0x1.62c6ecp+5 +0x1.3cd07ap+18 +0x1.0191eap+0 +0x1.21c3a2p+8 +0x1p+0 +0x1.000bf6p+0 +0x1.a4b51cp+7 +0x1.04d1f8p+0 +0x1.8de2b8p+0 +0x1.7b7a4ep+8 +0x1.1928acp+5 +0x1.305a8p-1 +0x1.ba8662p+5 +0x1p+0 +0x1.ab75a2p-12 +0x1.7cc13cp+9 +0x1.505306p+0 +0x1.63085p+0 +0x1.000064p+0 +0x1.b3f16ap+7 +0x1.1348f8p+1 +0x1.71fe88p+1 +0x1.0b7132p+4 +0x1.470316p+1 +0x1.3228b6p-1 +0x1.8dd666p+0 +0x1.38ed88p+12 +0x1.432218p+0 +0x1.00e0cap+0 +0x1.73eb44p+2 +0x1p+0 +0x1p+0 +0x1.bda15ep+7 +0x1.0272fep+2 +0x1.00171ep+0 +0x1p+0 +0x1.3faa86p+3 +0x1.33c2a2p-1 +0x1.3e48e2p+7 +0x1.017ef2p+0 +0x1.30115ap-1 +0x1.587444p+0 +0x1.3efed8p+8 +0x1.8a5526p+0 +0x1.cb1ecap+15 +0x1.1f5cp+0 +0x1.0001a4p+0 +0x1.1a20dap+7 +0x1.376e6p+0 +0x1.0001aap+0 +0x1.9182f6p-1 +0x1.000292p+0 +0x1.3d46a2p+12 +0x1.e177b6p+7 +0x1.3f5646p+1 +0x1.2ab784p+9 +0x1.dc81b4p+1 +0x1.0ef326p+0 +0x1.996588p-12 +0x1.740848p+3 +0x1.00016p+0 +0x1.ffd51ap+52 +0x1p+0 +0x1.4461ap+4 +0x1.08e7bcp+51 +0x1p+0 +0x1.106e98p+3 +0x1.5490e4p+0 +0x1.46703cp+4 +0x1.6b1e86p-29 +0x1.324caap+0 +0x1.0467ccp+0 +0x1.424574p+0 +0x1p+0 +0x1.001da4p+0 +0x1.364604p+0 +0x1p+0 +0x1.0951e2p+8 +0x1.408994p+0 +0x1.0003ap+0 +0x1.619e92p+12 +0x1.313e72p+2 +0x1.8b47p-6 +0x1.2190fp+2 +0x1.20aaacp+0 +0x1.f0059cp-1 +0x1p+0 +0x1.018e78p+0 +0x1.313e1p+2 +0x1p+0 +0x1.2efce4p-1 +0x1.5ebdap+0 +0x1p+0 +0x1.5e2488p+51 +0x1.bf95f2p+5 +0x1.5a1124p+16 +0x1.73bad6p+1 +0x1.00048ap+0 +0x1.0c9beap+8 +0x1p+0 +0x1.358c08p+7 +0x1.7f834ep-26 +0x1.3e56bcp+15 +0x1.52d8b2p+15 +0x1p+0 +0x1.00109cp+0 +0x1.0a0bb2p+0 +0x1p+0 +0x1.026908p+6 +0x1.370f22p+0 +0x1.5c6c5ap+1 +0x1.7fe4bcp+2 +0x1p+0 +0x1p+0 +0x1.42be68p+49 +0x1.0000d8p+0 +0x1.3abdf8p+12 +0x1.370a44p-12 +0x1.aef9f4p+0 +0x1.00001ep+2 +0x1.017c2p+0 +0x1.00b614p+0 +0x1.32f9f8p-1 +0x1p+0 +0x1.00ebf2p+0 +0x1.0c3116p+0 +0x1.00004p+0 +0x1.03b992p+0 +0x1p+0 +0x1.24eb3cp+0 +0x1.4c73ecp+51 +0x1.fad3ep+1 +0x1p+0 +0x1.32368ap-1 +0x1.000908p+0 +0x1.5ea59ep+12 +0x1.1928ccp+5 +0x1p+0 +0x1.21a93cp+8 +0x1p+0 +0x1.0001e8p+0 +0x1.95b6c2p-12 +0x1.00002p+0 +0x1.2399fap+9 +0x1.449b44p+0 +0x1p+0 +0x1.64a766p+15 +0x1.06ccecp+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.c81f9cp+1 +0x1.5ef196p+0 +0x1.022822p+1 +0x1.99beep+3 +0x1.1f417p+8 +0x1p+0 +0x1.c08726p+5 +0x1.397d9ep+0 +0x1.88e748p+18 +0x1.3b319p+9 +0x1.2fd3b6p-1 +0x1.0001aep+0 +0x1.4a0562p+5 +0x1.4e5f1ap+0 +0x1p+0 +0x1.017fbp+0 +0x1.acaf56p+57 +0x1.ef7d66p+8 +0x1.736c3cp+1 +0x1.12ddbep+0 +0x1.b85ebcp+6 +0x1.0e259p+1 +0x1.5cc2c4p+2 +0x1.99e614p+3 +0x1.f30aa6p+2 +0x1.3911c6p+15 +0x1.119b92p+1 +0x1.352a3p-1 +0x1.0001b2p+0 +0x1.00b26p+0 +0x1.bd730ep+60 +0x1.54fc5p+0 +0x1.5a4804p+0 +0x1.ff7eaep-1 +0x1.5cc268p+2 +0x1.1077aap+2 +0x1.1723d6p+0 +0x1p+0 +0x1p+0 +0x1.30c17p-1 +0x1.000648p+0 +0x1.91aa4cp+6 +0x1.17234p+6 +0x1p+0 +0x1.6d5b18p+2 +0x1.00027ap+0 +0x1.dc8224p+1 +0x1.a9eabep-6 +0x1.099edcp+1 +0x1.004118p+1 +0x1.58d5fcp+60 +0x1.000098p+0 +0x1.004e8p+0 +0x1.f32edap-1 +0x1.0394aep+0 +0x1.0689bp+2 +0x1.124e5cp+0 +0x1.71fe86p+1 +0x1.025ce2p+0 +0x1.46107cp+0 +0x1.047c74p+2 +0x1.a57e74p+15 +0x1.18bbcep+0 +0x1p+0 +0x1.65b9a4p+0 +0x1.0000eep+0 +0x1.08a4a4p+0 +0x1.0fe774p+1 +0x1.000128p+0 +0x1.3e95fp+12 +0x1.b14e3ap-56 +0x1.00007cp+0 +0x1.5619c2p+1 +0x1.4ac958p+0 +0x1.00031p+0 +0x1.003064p+0 +0x1.e119eap-1 +0x1.577b36p+0 +0x1p+0 +0x1.26ff2ap+0 +0x1.004ap+0 +0x1.0000a2p+0 +0x1.1fcc7ep+4 +0x1.6f959p+16 +0x1.000064p+0 +0x1.375c6ap+0 +0x1.6a806ep+2 +0x1p+0 +0x1.8e27aep+1 +0x1p+0 +0x1.000b22p+0 +0x1.8f0c12p+0 +0x1.192892p+5 +0x1.2bcaacp+1 +0x1.984264p+2 +0x1.0034cp+0 +0x1p+0 +0x1.abf4dp+0 +0x1.001044p+0 +0x1.0d26f4p+0 +0x1.626906p+0 +0x1.8bf0c2p+5 +0x1.02d288p+0 +0x1.900128p+4 +0x1.bbbbcp+12 +0x1.45fa5p+0 +0x1p+0 +0x1.01bef2p+0 +0x1.524f26p+2 +0x1.083b0ep+0 +0x1.4811e4p+0 +0x1.0163a8p+0 +0x1.9570fap+15 +0x1.3022f2p-1 +0x1.14c73ap+0 +0x1.0009d8p+0 +0x1.056b92p+63 +0x1.0025a4p+0 +0x1.36aad4p+17 +0x1.05c244p+8 +0x1.d00886p+17 +0x1.001188p+0 +0x1.3376ecp-1 +0x1.6719c8p+16 +0x1.02495p+0 +0x1.fd9bacp-1 +0x1.3882c6p+6 +0x1.3cb358p+0 +0x1.0ec93ep+0 +0x1.4fd2bap+1 +0x1.f8b68p+1 +0x1.33b1f2p-1 +0x1.ba7f4cp+1 +0x1p+0 +0x1.44a3d2p-17 +0x1.9a6a8p+2 +0x1.00918ap+6 +0x1.30d50ep-1 +0x1p+0 +0x1.0001bep+0 +0x1.05b93ep+0 +0x1.aa9d98p+0 +0x1.039b74p+0 +0x1.1ac25ep+8 +0x1p+0 +0x1.12b23ap+1 +0x1.4c5c52p+0 +0x1.07de64p+0 +0x1.950f94p+1 +0x1.001caap+47 +0x1.0a9448p+0 +0x1.01026cp+0 +0x1.03d74ap+0 +0x1p+0 +0x1.0032dap+0 +0x1.380922p-1 +0x1.c0e7ccp+15 +0x1.a35e4p+4 +0x1.25b1e6p+0 +0x1.000044p+2 +0x1.05ac24p+7 +0x1.1fa744p+44 +0x1.0007b2p+0 +0x1.2cca62p+2 +0x1.04be3ap+6 +0x1.00065p+0 +0x1.2b9f3ap+1 +0x1.74085p+3 +0x1p+0 +0x1.01fc4cp+0 +0x1.e137bcp+2 +0x1.097ac8p+0 +0x1.ad1458p+4 +0x1.c8587cp+1 +0x1.31d172p-1 +0x1.0b414ap+1 +0x1.664e36p+1 +0x1.30ae16p-1 +0x1p+0 +0x1.3b7e3cp+2 +0x1.9cc348p+64 +0x1p+0 +0x1p+0 +0x1.cdb384p-32 +0x1p+0 +0x1.00b998p+0 +0x1.36b69ep-1 +0x1.939538p+4 +0x1.dc9deep+4 +0x1.36f86ep+2 +0x1.02113cp+0 +0x1.035852p+0 +0x1.9de428p+2 +0x1.369814p+1 +0x1.147f44p+3 +0x1.031bc8p+0 +0x1.03f7cp+0 +0x1.000924p+0 +0x1.145e14p+2 +0x1.0000d4p+0 +0x1p+0 +0x1.54fdfp+2 +0x1.07c0ep+0 +0x1.829aeep+1 +0x1.000f08p+0 +0x1.34dcdp-1 +0x1p+0 +0x1.cd56e4p+1 +0x1.16400ap+8 +0x1p+0 +0x1.00000ap+2 +0x1.00a21p+0 +0x1.8d6286p+6 +0x1.de4f28p+1 +0x1.9f55b6p+48 +0x1.01c802p+0 +0x1.0327cp+0 +0x1.32fb52p-1 +0x1p+0 +0x1.2525dcp+0 +0x1.91da28p-6 +0x1.5a23a8p+0 +0x1.5f024ap+1 +0x1p+0 +0x1.0008f2p+0 +0x1.05563cp+0 +0x1.89381cp+0 +0x1.8bb056p+16 +0x1.7cc93ep+1 +0x1.8bf0acp+5 +0x1.1722bap+6 +0x1p+0 +0x1.00238ep+0 +0x1.ebb8d2p-1 +0x1.001194p+0 +0x1.6cd388p+1 +0x1.08e4bp+8 +0x1.00002p+0 +0x1.01a0bep+0 +0x1.00e7cep+8 +0x1.1193p+0 +0x1.06a9c8p+0 +0x1.11c7fep+0 +0x1.5ef17cp+0 +0x1.4ae72cp+0 +0x1.e0df4cp+41 +0x1.7e5468p+1 +0x1.8dd478p+0 +0x1.3c2784p+51 +0x1p+0 +0x1p+0 +0x1.b9d454p+12 +0x1.011a58p+0 +0x1.3efb48p+4 +0x1.000208p+0 +0x1.57b3eep+7 +0x1.000004p+0 +0x1.1cd6b8p+0 +0x1.c366fap+9 +0x1.466d2cp+0 +0x1p+0 +0x1.300096p-1 +0x1p+0 +0x1.bef388p+0 +0x1.0c20e8p+8 +0x1.397f2p+4 +0x1.037596p+2 +0x1.62a0a4p+52 +0x1.37269ap+0 +0x1.81fe24p+2 +0x1.dd4196p+56 +0x1.b143ep+0 +0x1p+0 +0x1.b8c2fp+1 +0x1.056b3ep+1 +0x1.3b6cbp+0 +0x1.3ffb2p+0 +0x1p+0 +0x1.3c21cp+0 +0x1.00312cp+0 +0x1p+0 +0x1.3822f8p+0 +0x1.02734p+2 +0x1.05a7dap+0 +0x1.6df1b4p+5 +0x1.0006f4p+0 +0x1.31aebep-1 +0x1p+0 +0x1p+0 +0x1.b997fap+18 +0x1.0570d8p+0 +0x1p+0 +0x1.0a9216p+42 +0x1.ef16f2p+1 +0x1p+0 +0x1.31269ep-1 +0x1.a9954ap+2 +0x1.1cc5e8p+0 +0x1.01d334p+0 +0x1.905f98p+4 +0x1.0310d4p+0 +0x1.16a62ap+0 +0x1.8dd6b2p+0 +0x1.395dcep+7 +0x1.ef5f92p+0 +0x1.000868p+0 +0x1p+0 +0x1.844a16p+2 +0x1.452efcp+0 +0x1p+0 +0x1.1c5da2p+6 +0x1.31ac3ap-1 +0x1.cc1bfp+2 +0x1p+0 +0x1.08215ap+0 +0x1.3b4306p+0 +0x1.71fe6p+1 +0x1.192bd8p+0 +0x1.262f78p+0 +0x1.00013cp+0 +0x1.33c486p-1 +0x1.000014p+0 +0x1.b8f4fp+1 +0x1.5f9f5ap-1 +0x1.059872p+0 +0x1p+0 +0x1.58168p+1 +0x1.826d5cp+0 +0x1p+0 +0x1.032a04p+0 +0x1p+0 +0x1.0c0a5cp+0 +0x1.668d9p+0 +0x1.2f9644p-1 +0x1p+0 +0x1.1821b8p+6 +0x1.b22e8ep+7 +0x1.4f7a78p+0 +0x1.52df24p+0 +0x1.48c612p+0 +0x1.93a19ap+4 +0x1.8bf102p+5 +0x1.122d94p+0 +0x1p+0 +0x1.00018p+0 +0x1.30083ap-1 +0x1p+0 +0x1p+0 +0x1.30d20ep-1 +0x1p+0 +0x1.0000dcp+0 +0x1.285bb4p+0 +0x1p+0 +0x1.0003a4p+0 +0x1p+0 +0x1.2ffcfcp-1 +0x1.093d96p+0 +0x1.239bfcp+0 +0x1.f7c33cp-27 +0x1.a9982ep+2 +0x1.1969f4p+4 +0x1.ff5c88p-1 +0x1.04db6ep+2 +0x1p+0 +0x1.f010dap-1 +0x1.13647p+7 +0x1p+0 +0x1.ea6e18p-10 +0x1.2d16eap+0 +0x1.02b668p+0 +0x1.191704p+4 +0x1.18f2b4p+0 +0x1.b186eap+0 +0x1.24c01ap+2 +0x1.6a3adap+16 +0x1p+0 +0x1p+0 +0x1.2f9f28p-1 +0x1.4b5da4p+0 +0x1.004054p+0 +0x1.002616p+8 +0x1.561954p+1 +0x1p+0 +0x1.4c4394p+0 +0x1.1eed34p+1 +0x1.a702eap+5 +0x1.ee054p+7 +0x1.1156a8p+0 +0x1.9a81fcp+2 +0x1.10ce16p-28 +0x1.b18b88p+0 +0x1.d9c4a8p+1 +0x1.0e275cp+0 +0x1.905f58p+4 +0x1p+0 +0x1.02f774p+0 +0x1.7ce226p+1 +0x1.0002bcp+0 +0x1.010f58p+0 +0x1p+0 +0x1.000198p+0 +0x1p+0 +0x1.4aa832p+0 +0x1.0006c2p+0 +0x1.358ca4p+7 +0x1.1edc64p+0 +0x1.003508p+0 +0x1.fdb69p+1 +0x1.0ff4fep+0 +0x1p+0 +0x1.b8c2fp+1 +0x1.284c16p+0 +0x1.00a228p+0 +0x1.03080cp+0 +0x1.91a8f4p+48 +0x1p+0 +0x1.2080fep+1 +0x1.0002f8p+0 +0x1.b14338p+0 +0x1.081288p+0 +0x1.71b9bep+0 +0x1.09c368p+0 +0x1.35ed64p+0 +0x1.8dd68cp+0 +0x1.d2cc42p+0 +0x1.9be0ecp+3 +0x1.7407fcp+3 +0x1.313ecp-1 +0x1.cdc978p+0 +0x1.0ed538p+1 +0x1.159af4p+8 +0x1p+0 +0x1.128694p+0 +0x1.2f1b06p-1 +0x1.19c0d8p+0 +0x1.dcc7c8p+1 +0x1.a33f8ap+7 +0x1.000158p+0 +0x1p+0 +0x1.28bdaep-16 +0x1.74086cp+3 +0x1.ea297cp+1 +0x1.5d87fp+2 +0x1.0e2658p+1 +0x1.621c14p+1 +0x1.9d8a8cp+3 +0x1p+0 +0x1.7807e8p+3 +0x1.74c924p+0 +0x1.a484e4p+53 +0x1.771c44p+0 +0x1.13d1e4p+2 +0x1.2fa402p-1 +0x1p+0 +0x1.024d72p+2 +0x1.064c6ap+8 +0x1.15d2dep+0 +0x1.9c004ep+3 +0x1.bc2fcap+12 +0x1.befdbep+0 +0x1.36461p+0 +0x1.6db7b8p+5 +0x1.0000cp+0 +0x1p+0 +0x1.02f354p+0 +0x1p+0 +0x1.000228p+0 +0x1.013fep+0 +0x1.213782p+0 +0x1p+0 +0x1.000204p+0 +0x1.a69cccp+7 +0x1.0036acp+0 +0x1.0982b8p+0 +0x1.81693cp-22 +0x1.1e5d64p+6 +0x1.0009f2p+0 +0x1.2fe96p-1 +0x1.0368f8p+0 +0x1.2d2cbep+0 +0x1.37bc04p-1 +0x1p+0 +0x1.d45d88p+1 +0x1.000694p+0 +0x1.000272p+0 +0x1p+0 +0x1.d0b2e6p+1 +0x1.2598a4p+3 +0x1p+0 +0x1.8b7d3p+2 +0x1.192902p+5 +0x1.3d5386p+0 +0x1.9c779ap+1 +0x1.08257cp+0 +0x1.0b8a4p+2 +0x1.01afa4p+3 +0x1.e48b7ap-1 +0x1.f30a5cp+2 +0x1.0df814p+0 +0x1.2f28p-1 +0x1.983f46p+3 +0x1.009094p+6 +0x1.326a3ep-1 +0x1.9767e6p+0 +0x1.1027fp+0 +0x1.3274f8p-1 +0x1.197a9cp+1 +0x1.3807p+2 +0x1.90533p+4 +0x1.0332ecp+0 +0x1.3ca37p+0 +0x1p+0 +0x1p+0 +0x1.3ff4dcp+0 +0x1p+0 +0x1.900046p+0 +0x1p+0 +0x1.195576p+5 +0x1.aec2ecp+7 +0x1.65b984p+0 +0x1.74677p+3 +0x1.423322p+0 +0x1.aeef9ep+16 +0x1.0338c4p+0 +0x1.1ae22ap+8 +0x1.cc4adcp+0 +0x1.d20a9ep+0 +0x1.cdbefcp-45 +0x1.03b23cp+0 +0x1.25970cp+3 +0x1.e6b02ep-1 +0x1p+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.000aa8p+0 +0x1.0054a4p+0 +0x1.06600ap+0 +0x1.b8601cp+6 +0x1.fea92cp+5 +0x1.6p+5 +0x1.c76586p+0 +0x1.90007ap+0 +0x1.ef2d1p-84 +0x1.03d5b6p+0 +0x1.0164ecp+0 +0x1.4441d8p+0 +0x1.005c42p+0 +0x1.046838p+0 +0x1.51f04ap+0 +0x1.cf822cp+0 +0x1.033b4ap+0 +0x1p+0 +0x1.091bep+0 +0x1p+0 +0x1.5bb2a4p+0 +0x1.01fe2cp+0 +0x1.2b96p+1 +0x1.242d9p+0 +0x1.42ade4p+0 +0x1p+0 +0x1.689714p+2 +0x1.4ac756p+0 +0x1p+0 +0x1.101ad8p+0 +0x1.6208e8p+41 +0x1.47091p+0 +0x1.3e28p+3 +0x1.04b70ep+0 +0x1p+0 +0x1.086c9p+0 +0x1.70eb62p+54 +0x1.dfb744p+4 +0x1p+0 +0x1.f302bcp-8 +0x1.8d5fd4p+6 +0x1.12d9a8p+0 +0x1.00a39p+0 +0x1p+0 +0x1.00003cp+0 +0x1.00031p+0 +0x1.58743ep+0 +0x1.003ae4p+0 +0x1.7de5cep+2 +0x1.096c7ep+0 +0x1.57e436p+1 +0x1.21fcb4p+2 +0x1.31297ap-1 +0x1p+0 +0x1.ab5fcp+16 +0x1.91e912p+42 +0x1.5cb206p+1 +0x1.000072p+0 +0x1.00f4d2p+0 +0x1.0ee52p+0 +0x1.000014p+0 +0x1.2f3a5ep-1 +0x1.3fc07cp+1 +0x1.64bd36p+1 +0x1.f48f56p-1 +0x1.0115f4p+0 +0x1.1650bcp+2 +0x1.013494p+0 +0x1p+0 +0x1.684e92p+0 +0x1.0063a4p+0 +0x1.3ca364p+0 +0x1.197a48p+1 +0x1.00a6f4p+0 +0x1.31ce92p-1 +0x1.fea91ep+5 +0x1.6dd5cep+5 +0x1.05035ep+8 +0x1.6d6acep+5 +0x1.8c4fa2p+5 +0x1.f4e59cp-12 +0x1.6330e4p+0 +0x1.01a9fep+0 +0x1.4f48e4p+0 +0x1.d589c6p+1 +0x1.5be04ap+15 +0x1.f9e2f2p-1 +0x1.294bdp+1 +0x1.8bf1p+5 +0x1.967eb8p-9 +0x1.018d04p+0 +0x1.00032cp+0 +0x1p+0 +0x1.ba21bcp+14 +0x1.8dd6bp+0 +0x1.7455a8p+3 +0x1p+0 +0x1.8e8a02p+15 +0x1.015f06p+0 +0x1.04a26p+8 +0x1.000c58p+0 +0x1.26a58cp+3 +0x1.2719bap-19 +0x1p+0 +0x1.05194cp+7 +0x1.34d9f4p+0 +0x1p+0 +0x1.029fa2p+0 +0x1.99a9dap+0 +0x1.cee06ep+0 +0x1.3e921ap+0 +0x1.9f8eep+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.13f606p+0 +0x1p+0 +0x1.0a176ep+2 +0x1.aa9c94p+7 +0x1.1211ep+0 +0x1.122594p+0 +0x1.b39642p+47 +0x1p+0 +0x1.000068p+0 +0x1.6600aep-12 +0x1.e0d6ecp+1 +0x1.0019ep+0 +0x1.34b8f4p-1 +0x1.581728p+2 +0x1.00016p+0 +0x1.12b1ep+8 +0x1.a679fp+14 +0x1.90005ap+4 +0x1.837996p-1 +0x1p+0 +0x1.0e2552p+1 +0x1.22160cp+9 +0x1p+0 +0x1.57e4b4p+1 +0x1p+0 +0x1.bf8d0cp+0 +0x1.d7e10ep+16 +0x1.06bcc8p+0 +0x1.133b12p+0 +0x1.1b6542p+6 +0x1p+0 +0x1.feddbcp-1 +0x1p+0 +0x1p+0 +0x1.2fd98ep-1 +0x1.03d5b6p+0 +0x1p+0 +0x1.db8a46p-1 +0x1.42e588p+0 +0x1.0ee1p+1 +0x1.361fep+0 +0x1.2f74a8p+0 +0x1p+0 +0x1.31596cp-1 +0x1.740a2p+3 +0x1p+0 +0x1.8dd672p+0 +0x1.00011cp+0 +0x1p+0 +0x1.000102p+0 +0x1.5cc2b2p+2 +0x1p+0 +0x1.17f4b4p+0 +0x1.619318p+12 +0x1.b14362p+0 +0x1.c1004ep+0 +0x1.318578p-1 +0x1.9728ecp+2 +0x1.25bdbcp+3 +0x1.37ac8ap+63 +0x1p+0 +0x1.41ef56p+2 +0x1.e65866p-1 +0x1p+0 +0x1.307e0ap+0 +0x1.ef570ep+54 +0x1.0290fap+1 +0x1.9dd308p+0 +0x1.21db9p+0 +0x1.00003cp+0 +0x1.eabf94p+0 +0x1.386614p+10 +0x1.f244dap+16 +0x1p+0 +0x1.00e094p+0 +0x1.5605e6p+1 +0x1.b16374p+2 +0x1.9a2d88p+0 +0x1.48748ap+9 +0x1p+0 +0x1.28e674p+0 +0x1.bf4324p+7 +0x1.2598c6p+3 +0x1.215484p+1 +0x1.05fb5p+51 +0x1.0000d8p+0 +0x1.f389dcp+6 +0x1.41a1bp+0 +0x1.001582p+0 +0x1.1928ecp+5 +0x1.00ff3ep+0 +0x1.3883c4p+13 +0x1.98b044p+2 +0x1.8a43eep+0 +0x1.733e8p+14 +0x1.73ebfcp+2 +0x1.0cd1fp+0 +0x1p+0 +0x1.af357p+5 +0x1.b2c586p+5 +0x1.470f58p+0 +0x1p+0 +0x1p+0 +0x1.0ffddep+0 +0x1.02c422p+1 +0x1.56c4a6p+1 +0x1.492014p-47 +0x1.192862p+5 +0x1p+0 +0x1.c7e222p+7 +0x1p+0 +0x1p+0 +0x1.1a0d3p+49 +0x1.946148p+0 +0x1.524f6ap+2 +0x1.31566ep-1 +0x1.000198p+0 +0x1.3d7efcp+3 +0x1.000264p+0 +0x1.4ed7ccp+0 +0x1.b667ecp+0 +0x1.81940ep+1 +0x1p+0 +0x1.088e6cp+0 +0x1.065bbcp+1 +0x1.009ae4p+1 +0x1.008bfp+6 +0x1.e9f5acp+7 +0x1.1e1c44p+8 +0x1.992348p+0 +0x1.3162fp+0 +0x1.fb0e1ap+48 +0x1.8bf0acp+5 +0x1p+0 +0x1.1f57b2p+60 +0x1.011f3p+0 +0x1.3af642p+0 +0x1.ccae9p+46 +0x1.21325cp+0 +0x1.07743p+7 +0x1.1ae49ep+8 +0x1.00006ap+0 +0x1.1928aap+5 +0x1.838206p-1 +0x1p+0 +0x1.00e9e8p+0 +0x1.4684cap+0 +0x1.02568p+0 +0x1.5efc62p+1 +0x1p+0 +0x1.000352p+0 +0x1.0578cap+0 +0x1.0039ecp+0 +0x1.2fc412p-1 +0x1.4a939ap+1 +0x1.ff27ep+5 +0x1.091a62p+0 +0x1.08c012p+0 +0x1.67c8p+4 +0x1.e26b74p-48 +0x1p+0 +0x1.283076p+3 +0x1.2fe494p-1 +0x1.4dcd9ep+5 +0x1p+0 +0x1.cdf4e4p+7 +0x1p+0 +0x1.c77d16p+1 +0x1.fccf76p-1 +0x1p+0 +0x1.120a84p+0 +0x1.054cdep+0 +0x1.002a0cp+0 +0x1.063b76p+0 +0x1.0000d8p+0 +0x1.30cedep-1 +0x1.003884p+0 +0x1p+0 +0x1.e0065cp-1 +0x1.693bd2p+15 +0x1.0fadc2p+0 +0x1.415d06p+0 +0x1.0002ecp+0 +0x1.27ce08p+0 +0x1.3b9762p+0 +0x1.2fb36p+2 +0x1.02c8f8p+0 +0x1.629facp+50 +0x1.281c56p+3 +0x1.4a93c8p+1 +0x1.0e6cacp-1 +0x1.f9ef4ap+0 +0x1.44f78ap+2 +0x1.9a1e18p+0 +0x1p+0 +0x1.3e566p+3 +0x1.000128p+0 +0x1p+0 +0x1.112c38p+0 +0x1.03d2dap+0 +0x1.5fb222p+12 +0x1.1f4b96p+0 +0x1.01422p+1 +0x1.ee5728p+63 +0x1.4bcdd8p+1 +0x1p+0 +0x1.30e0e4p-1 +0x1.6a36b2p+0 +0x1.00016cp+0 +0x1.04b966p+0 +0x1.106e16p+16 +0x1p+0 +0x1.1233d2p+0 +0x1p+0 +0x1.15d1cap+1 +0x1.137c02p+8 +0x1.00001ap+0 +0x1.07ab74p+0 +0x1.800b4ep-1 +0x1.55047p+0 +0x1.90017ap+4 +0x1.5c9898p+1 +0x1.8ce4ccp+6 +0x1p+0 +0x1.6ee34p+0 +0x1.bf600cp+0 +0x1.f13a7ep+8 +0x1.00015cp+0 +0x1.b9c51ep+12 +0x1.740826p+3 +0x1.c29e5p+1 +0x1.f56ba8p-1 +0x1.37fe18p+2 +0x1.190eap+0 +0x1.419f1cp+0 +0x1p+0 +0x1p+0 +0x1.20687ep+8 +0x1.938ecap+4 +0x1.01dd1cp+0 +0x1.bbe888p+7 +0x1.09d802p+0 +0x1.cf3b8p+0 +0x1.ea0d98p-1 +0x1.172472p+6 +0x1p+0 +0x1.61dce4p+1 +0x1.20b4fcp+0 +0x1.00038cp+0 +0x1p+0 +0x1.0822p+0 +0x1.9966ep+2 +0x1.21f47cp+0 +0x1.3a9762p+0 +0x1.8c4e0cp+5 +0x1p+0 +0x1.61878cp+12 +0x1.3ca348p+0 +0x1.289028p+0 +0x1.06e004p+0 +0x1.02b4b4p+0 +0x1.144eeep+1 +0x1.30a14ap-1 +0x1.07652p+0 +0x1p+0 +0x1.2ef288p+0 +0x1.1ba73cp+5 +0x1.48c714p+2 +0x1.25c508p+3 +0x1.b14382p+0 +0x1.b39acep+0 +0x1.0001c2p+0 +0x1.996938p+3 +0x1p+0 +0x1.e49b2ep+7 +0x1.000436p+0 +0x1.34712p+0 +0x1.47089p+0 +0x1.0353b8p-49 +0x1.2a818p+2 +0x1.00058p+0 +0x1.8a5a7ep+51 +0x1p+0 +0x1.8dbf04p+0 +0x1.5004d8p+61 +0x1.9557b2p+1 +0x1.0fa92cp+0 +0x1.16984ep+8 +0x1.72bd7ap+1 +0x1.980f0cp+1 +0x1.ae63fp+14 +0x1p+0 +0x1.085224p+0 +0x1.d8889ap-1 +0x1.1d3ff6p+4 +0x1.02c6ecp+1 +0x1.73eb4ep+2 +0x1.1916fp+4 +0x1.4a04e8p+5 +0x1.134906p+1 +0x1.0002dp+0 +0x1p+0 +0x1.32db7p+0 +0x1.0105b8p+0 +0x1.09f78p+0 +0x1.1d3e78p+4 +0x1.41b184p+0 +0x1.134914p+1 +0x1.410e6ep+1 +0x1.312a4ap-1 +0x1.7308f4p+1 +0x1p+0 +0x1.0afbe8p+0 +0x1p+0 +0x1.00026ap+0 +0x1.2ee012p+0 +0x1.001318p+0 +0x1.af1034p+4 +0x1.687b1cp-24 +0x1.a93ap+2 +0x1.084598p+0 +0x1.37031ap-1 +0x1.c046ep+5 +0x1.79a75ep+2 +0x1.46a9c8p+1 +0x1.000766p+0 +0x1.245d98p+0 +0x1.19287ap+5 +0x1.6a0fbep+0 +0x1p+0 +0x1.011424p+0 +0x1.879f4cp+0 +0x1p+0 +0x1p+0 +0x1.4ca7ecp-51 +0x1.5818c6p+2 +0x1p+0 +0x1.b4c9fap+7 +0x1.b14384p+0 +0x1.082fdp+0 +0x1.085672p+8 +0x1.918f3cp+6 +0x1p+0 +0x1.45623ep+0 +0x1.95515cp+2 +0x1.000068p+0 +0x1.31f33ap-1 +0x1.f9eed8p+0 +0x1.91b218p+6 +0x1.331446p-1 +0x1.000202p+0 +0x1p+0 +0x1.3cdfb8p-1 +0x1p+0 +0x1.08fb58p+7 +0x1.4dde38p+5 +0x1p+0 +0x1.0053a4p+0 +0x1p+0 +0x1.31e138p+7 +0x1p+0 +0x1.01c35cp+0 +0x1.dba85cp+7 +0x1.03682cp+2 +0x1.000108p+0 +0x1.bff348p+55 +0x1.582dbp+1 +0x1.31158p+0 +0x1.760bep+44 +0x1.e43226p+7 +0x1.082008p+0 +0x1.a03e4cp+7 +0x1.00b984p+0 +0x1.20c58ep+1 +0x1.221c1p+0 +0x1.594056p+7 +0x1.aabf58p+2 +0x1p+0 +0x1.b142e4p+0 +0x1.8bf166p+5 +0x1p+0 +0x1.000168p+0 +0x1.06c69cp+0 +0x1.900166p+4 +0x1.621b64p+12 +0x1.b142eep+0 +0x1p+0 +0x1.31c642p-1 +0x1p+0 +0x1.65b9cap+0 +0x1.4adbbep+0 +0x1p+0 +0x1.858ea2p+0 +0x1.076d06p+0 +0x1.000dap+0 +0x1.70cd96p+2 +0x1.347a2p-1 +0x1.73c75cp+2 +0x1p+0 +0x1.180c6ep+8 +0x1p+0 +0x1.1a32dcp+5 +0x1.342abp-1 +0x1.4a08p+5 +0x1.000484p+0 +0x1.e498b4p+7 +0x1.91e072p+0 +0x1p+0 +0x1.9ab2a8p+0 +0x1.0001dp+0 +0x1.6ab22p+0 +0x1.00036p+0 +0x1.00042cp+0 +0x1.0012a2p+0 +0x1.f2b45cp+0 +0x1.31b8fep-1 +0x1.2a3f48p+1 +0x1p+0 +0x1.d8ecc8p+49 +0x1.b143b2p+0 +0x1.4f7516p+0 +0x1.09a35cp+0 +0x1.000ap+0 +0x1.ad259ap+5 +0x1.8d9b38p-18 +0x1.92ef44p+0 +0x1.7407ep+3 +0x1.bcb74cp+7 +0x1.57d22p+0 +0x1.610e16p+0 +0x1.2ff3fap-1 +0x1.00aefcp+0 +0x1.6aaf1cp+0 +0x1.000298p+0 +0x1.10b236p+0 +0x1.2b6a4p+0 +0x1.25c852p+3 +0x1.000354p+0 +0x1p+0 +0x1.4fe4c2p+2 +0x1.8ea358p+6 +0x1.cd77f6p+2 +0x1.0000aap+0 +0x1.8c2a1ep-19 +0x1.000264p+0 +0x1.03001p+0 +0x1.0c772cp+0 +0x1.daea4p+4 +0x1p+0 +0x1.0f2d5ep+0 +0x1p+0 +0x1.1604d6p+0 +0x1.2f7b08p-1 +0x1.0002f4p+0 +0x1p+0 +0x1.91aaf8p+1 +0x1.896624p+0 +0x1.0024c2p+0 +0x1.0fde8cp+1 +0x1.3a7214p+16 +0x1.01ff8p+0 +0x1.02458p+1 +0x1.1d3f4cp+4 +0x1p+0 +0x1.c0d546p+1 +0x1.0ac2d4p+54 +0x1p+0 +0x1p+0 +0x1.75e65p+55 +0x1p+0 +0x1.010256p+0 +0x1.68165p+53 +0x1p+0 +0x1.013c3p+0 +0x1.bc712ep+13 +0x1p+0 +0x1.71d1cp+5 +0x1.49c482p+0 +0x1.00665p+0 +0x1.386324p+1 +0x1.385c4ap-1 +0x1p+0 +0x1.379e5p+0 +0x1.232592p+8 +0x1p+0 +0x1.000338p+0 +0x1p+0 +0x1p+0 +0x1.055404p+0 +0x1.208ef8p+1 +0x1p+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.015d52p+0 +0x1.9ea35cp+1 +0x1.dc7eb4p+18 +0x1p+0 +0x1p+0 +0x1.b3d24ep+7 +0x1.fba328p+8 +0x1.00c7fp+0 +0x1.0d1acep+8 +0x1.779a24p+2 +0x1p+0 +0x1.19499ep+0 +0x1.25ddcep+3 +0x1.78346cp+3 +0x1.428e7ap+49 +0x1.003dp+0 +0x1p+0 +0x1.313dbcp-1 +0x1.6fef7p+1 +0x1p+0 +0x1.2ff116p-1 +0x1.00f598p+0 +0x1.45ab88p+0 +0x1p+0 +0x1.a93a36p+2 +0x1p+0 +0x1.54bb7p+2 +0x1p+0 +0x1.00004cp+0 +0x1.edac12p+0 +0x1.40f4fap+0 +0x1.45c0bcp+0 +0x1.0a2626p+0 +0x1.bfa67ap+51 +0x1.933f18p+0 +0x1p+0 +0x1.3f3fe8p+0 +0x1.006fc8p+0 +0x1.c04aecp+1 +0x1.0afc4p+0 +0x1.9b2f1ep+3 +0x1.11a134p+3 +0x1.0624dep-11 +0x1.eabf94p+0 +0x1.8950d8p+1 +0x1.35eba2p-1 +0x1.11c438p+0 +0x1.02073p+0 +0x1.483096p+0 +0x1.484bf4p+2 +0x1.1b86dcp+0 +0x1.0d3c56p+0 +0x1.0000e4p+0 +0x1.a93b64p+2 +0x1.b8db1cp+1 +0x1.308c0ep-1 +0x1p+0 +0x1.1e84fp+0 +0x1.3fc808p+0 +0x1.19179ap+4 +0x1p+0 +0x1.f1d3a4p+7 +0x1.273d1ep+1 +0x1.000a16p+0 +0x1.42ead6p+0 +0x1.b8c318p+1 +0x1.7226dp+1 +0x1.43af5cp+0 +0x1.450224p+0 +0x1.000234p+0 +0x1.358bc4p-1 +0x1.0000acp+0 +0x1.02ef5cp+0 +0x1.1d16fap+8 +0x1p+0 +0x1.0a9be6p+0 +0x1.2221d2p+8 +0x1.45abbp+0 +0x1p+0 +0x1.b787f6p-12 +0x1.960416p+0 +0x1.0af8b6p+1 +0x1.232048p+64 +0x1.f6b2fp+0 +0x1p+0 +0x1.02fc3ep+0 +0x1.19292ep+5 +0x1.00fdcap+0 +0x1.51ac2p+1 +0x1.020b04p+0 +0x1.3fe772p+1 +0x1p+0 +0x1.3a87dap+0 +0x1.00dbf8p+0 +0x1.dc825cp+1 +0x1.051eap+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.000bp+0 +0x1.004874p+0 +0x1.ed7906p+14 +0x1.ba64fcp+12 +0x1.03e86ap+0 +0x1.5cdd2p+2 +0x1.2fc1c6p-1 +0x1.08a1b8p+0 +0x1p+0 +0x1.4e97bp+62 +0x1.364392p+0 +0x1.000236p+0 +0x1.32f478p-1 +0x1.362732p+4 +0x1.1d3f0ep+4 +0x1.205236p+44 +0x1p+0 +0x1.93afd4p+2 +0x1.2f40ecp-1 +0x1p+0 +0x1.0fe4a4p+1 +0x1.9975e8p+64 +0x1.4a93fap+1 +0x1.259756p+3 +0x1.1e1e64p+8 +0x1.000048p+0 +0x1p+0 +0x1.2f1f74p-1 +0x1.7a124ap+0 +0x1.5e3f8ep+2 +0x1.e58cd8p-1 +0x1.b3857ep+0 +0x1.6f4da4p+0 +0x1p+0 +0x1.44caaep+0 +0x1.6831b2p+0 +0x1.7537bep+1 +0x1p+0 +0x1.003054p+0 +0x1.4934p+2 +0x1.00005p+0 +0x1.000098p+0 +0x1.091ebcp+0 +0x1.465e2cp+9 +0x1.00017p+0 +0x1p+0 +0x1.31ab6cp-1 +0x1p+0 +0x1p+0 +0x1.f2386ep+57 +0x1.147d32p+3 +0x1.e480eep+7 +0x1.03b3b2p+0 +0x1.02035cp+0 +0x1.11d934p+3 +0x1.5776d8p+53 +0x1.2c73p+0 +0x1.63073ap+9 +0x1.2041aep+8 +0x1p+0 +0x1.00594cp+0 +0x1.3ee136p+0 +0x1p+0 +0x1.09548p+1 +0x1.05f1f4p-11 +0x1.0002a4p+0 +0x1.16ac18p+3 +0x1.b8531ep+7 +0x1.0fd73cp+1 +0x1.011f64p+0 +0x1.0ff65ep+0 +0x1.b1ecfp+4 +0x1.8f0888p+0 +0x1.f95e02p-1 +0x1p+0 +0x1.9000cep+0 +0x1.e9b4fep+52 +0x1.009838p+0 +0x1.5ef598p+1 +0x1.a6ad24p+7 +0x1.4913c6p+0 +0x1p+0 +0x1.3d7314p+0 +0x1p+0 +0x1.a591c8p+0 +0x1.017966p-13 +0x1.9825cep+3 +0x1.192898p+5 +0x1.cddc2p+42 +0x1p+0 +0x1p+0 +0x1.0dde0ap+8 +0x1.0e56e8p+1 +0x1.a6fbcep+3 +0x1.b92cc8p+7 +0x1.d57268p+0 +0x1.b8f132p+1 +0x1.4c257ap+0 +0x1.00000ap+0 +0x1.38635p+1 +0x1.1cc07ap+45 +0x1.71ff7ep+1 +0x1.ef8b44p+0 +0x1.6cf93ep+51 +0x1p+0 +0x1p+0 +0x1.11f506p+8 +0x1.77844ap+0 +0x1p+0 +0x1.bdd978p+7 +0x1.00006ap+0 +0x1.0e2602p+1 +0x1.045486p+0 +0x1.0002c8p+0 +0x1.4d67c8p+1 +0x1.e5b314p-1 +0x1.6a374cp+0 +0x1.99db52p+0 +0x1.f9eeap-1 +0x1.bf7f2cp+5 +0x1.da61b4p+4 +0x1.488ff4p+0 +0x1.003p+0 +0x1p+0 +0x1.02ffcp+0 +0x1.d09a76p+1 +0x1.225a2cp+0 +0x1.0637f2p+0 +0x1.b3893p+0 +0x1.00005p+0 +0x1.bcc5ccp+59 +0x1p+0 +0x1.01f38ep+0 +0x1.a720ecp+7 +0x1.05390cp+1 +0x1.bf3ffep+2 +0x1.6b9574p+0 +0x1.388f0cp+11 +0x1.29a6aap+0 +0x1.31e90ep-1 +0x1p+0 +0x1p+0 +0x1.2f1498p-1 +0x1.0000eep+0 +0x1p+0 +0x1.3190e2p-1 +0x1p+0 +0x1.7703c2p+1 +0x1.0ffd1cp-24 +0x1p+0 +0x1p+0 +0x1.f5c25p-24 +0x1.7407c8p+3 +0x1.45abd2p+0 +0x1.1304ecp+0 +0x1p+0 +0x1.0002f4p+0 +0x1.cd1cdap+1 +0x1.6ef2fp+15 +0x1.0002cap+0 +0x1.dc83cp+1 +0x1.0000ccp+0 +0x1.0093cep+0 +0x1.0066bap+0 +0x1.002dp+0 +0x1.0e6c8p+0 +0x1.7be50ap+16 +0x1.00b348p+0 +0x1.089b3p+16 +0x1.98b07cp+2 +0x1.3389b2p+0 +0x1.a41e1ep+7 +0x1.7195dep+5 +0x1.08b45cp+0 +0x1.29c1eap+56 +0x1.740b96p+3 +0x1.71fef4p+1 +0x1.07ba2cp+0 +0x1.5ee4a2p+1 +0x1p+0 +0x1.f9599cp-1 +0x1.b9154ep+14 +0x1.f8911cp+0 +0x1p+0 +0x1.373e1p+4 +0x1p+0 +0x1.00146cp+0 +0x1.4a05acp+5 +0x1.1928aap+5 +0x1.060cecp+0 +0x1.773996p+0 +0x1.af11c2p-11 +0x1p+0 +0x1.3f7d98p+7 +0x1.1361ep+52 +0x1.f9f064p+0 +0x1p+0 +0x1.a9b908p+7 +0x1.c55b46p+0 +0x1p+0 +0x1.682ec4p+46 +0x1.00003p+0 +0x1p+0 +0x1.2fdba4p-1 +0x1.9beca4p+0 +0x1.0004a8p+0 +0x1.2fb262p-1 +0x1.8bf118p+5 +0x1.0001aap+0 +0x1.31a74p-1 +0x1.25db7ep+3 +0x1p+0 +0x1.197a7cp+1 +0x1p+0 +0x1.2d315cp+0 +0x1.0024f8p+0 +0x1.2a7f04p+1 +0x1p+0 +0x1p+0 +0x1.01211cp+0 +0x1.f11d7ep-1 +0x1.d4f718p+2 +0x1.b233dep+0 +0x1.6d6b1cp+5 +0x1.7724fep+15 +0x1p+0 +0x1.a86fbap+7 +0x1p+0 +0x1p+0 +0x1.4aa984p+49 +0x1.000054p+0 +0x1p+0 +0x1.33d3f4p-1 +0x1p+0 +0x1.1b0cd8p+6 +0x1.000958p+0 +0x1p+0 +0x1.49ef4ep+4 +0x1.7cc648p+1 +0x1p+0 +0x1.23470ap+0 +0x1.3223a4p+0 +0x1p+0 +0x1.4d6912p+0 +0x1.51e25p+0 +0x1p+0 +0x1.34962cp+0 +0x1.0fdd0cp+1 +0x1.0001d8p+0 +0x1.38637cp+1 +0x1.9de754p+3 +0x1.8e020cp+5 +0x1.ad9158p+4 +0x1.094afap+0 +0x1.ea949ep+52 +0x1.ec6aa4p+1 +0x1.1a5e6cp+4 +0x1.07ed56p+0 +0x1.711ffp+0 +0x1p+0 +0x1.062702p+8 +0x1.233ffap+18 +0x1.10c252p+7 +0x1.002a14p+0 +0x1.98f468p+0 +0x1.833884p+0 +0x1p+0 +0x1.9179acp+4 +0x1.d944c4p-1 +0x1.00bc84p+0 +0x1p+0 +0x1.46c0aep+0 +0x1.ad157p+4 +0x1.13492cp+1 +0x1.4b0ceep+0 +0x1.000246p+0 +0x1p+0 +0x1p+0 +0x1.176dbep+0 +0x1.52e1b8p+0 +0x1.050ab8p+0 +0x1p+0 +0x1.ef2d1p-84 +0x1.d0999p+1 +0x1.00b594p+0 +0x1.19ae42p+54 +0x1p+0 +0x1p+0 +0x1.bf05cap-56 +0x1.fba48p+0 +0x1.19a5ecp+4 +0x1.000518p+0 +0x1.cd1cc6p+1 +0x1.0008d2p+0 +0x1.00291cp+0 +0x1.01ae5cp+0 +0x1.18229cp+0 +0x1.0000d6p+0 +0x1.00017p+0 +0x1.1083fep-25 +0x1p+0 +0x1.7d379ap+9 +0x1.2f5e0ep-1 +0x1.365e38p+0 +0x1.000912p+0 +0x1.8p+3 +0x1.13e39cp+1 +0x1p+0 +0x1.0ba4aep+0 +0x1.9deafcp+3 +0x1.2fead4p-1 +0x1p+0 +0x1.11a49cp+16 +0x1.968f3ap+62 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.b85f8ep+6 +0x1.141a8ep+8 +0x1.0564ecp+0 +0x1.c6b168p+2 +0x1.05b106p+8 +0x1.000298p+0 +0x1p+0 +0x1.0001fap+0 +0x1.000164p+0 +0x1.31a84p+0 +0x1p+0 +0x1.403f5cp+5 +0x1.ea62dep-1 +0x1p+0 +0x1.131eeep+1 +0x1.3625d8p+4 +0x1.066f0cp+0 +0x1.e7a64p+7 +0x1.047e06p+0 +0x1p+0 +0x1.32aad8p-1 +0x1p+0 +0x1.000118p+0 +0x1.1b0d0cp+6 +0x1.a11c9p+0 +0x1.a2588ep+54 +0x1p+0 +0x1p+0 +0x1.09ffa8p+8 +0x1.bb2a7cp+5 +0x1p+0 +0x1.a1f9p+0 +0x1p+0 +0x1.f3d4b4p-1 +0x1.4dc16ap+5 +0x1.3b2274p+4 +0x1.457d56p+0 +0x1.01cfcp+0 +0x1p+0 +0x1.a93982p+2 +0x1.04054cp+0 +0x1.0080fap+0 +0x1.dc801cp+0 +0x1.0b77bep+1 +0x1.013094p+0 +0x1.0001e8p+0 +0x1.02e2ep+0 +0x1p+0 +0x1.000094p+0 +0x1.fb4382p-1 +0x1.00019p+0 +0x1.0007b8p+0 +0x1.127e1ap+8 +0x1p+0 +0x1p+0 +0x1.0e25cp+1 +0x1.2f4b78p+1 +0x1.015b26p+8 +0x1.0eb20cp+0 +0x1.081558p+7 +0x1.42ff58p+0 +0x1.1c5d1p+6 +0x1.887b42p+14 +0x1.02904p+1 +0x1.7ce25ap+1 +0x1.f96d6p-1 +0x1.5c64f4p+0 +0x1.0005c8p+0 +0x1.78e9d4p-33 +0x1.da628ep+4 +0x1.003634p+0 +0x1.3184d6p-1 +0x1.bd96f4p+6 +0x1.ba5156p+12 +0x1.8df4acp+0 +0x1p+0 +0x1.a3b92p+7 +0x1.3e4f26p+11 +0x1.543868p+4 +0x1.eabfe6p+0 +0x1.0073e6p+0 +0x1.0f2bdep+8 +0x1.3e3c3ep+13 +0x1.3884dp+6 +0x1p+0 +0x1.690fecp+0 +0x1.dfa074p-1 +0x1.000638p+0 +0x1.4a93acp+1 +0x1.8dd68ap+0 +0x1.0048dcp+0 +0x1.002f8ep+0 +0x1.00015p+0 +0x1.45abbcp+0 +0x1.f3f306p-1 +0x1.1b639p+0 +0x1.ef2d1p-84 +0x1.abd54p+0 +0x1.36f8aap+2 +0x1.e317cep-1 +0x1.36f9cap+2 +0x1.530ddp+0 +0x1.2f74bp+0 +0x1.3c4448p+0 +0x1.0718dcp+0 +0x1.0001bp+0 +0x1p+0 +0x1.1d3ebap+4 +0x1.42e55ap+0 +0x1.3ace3ep+50 +0x1.5b5108p+1 +0x1.13527cp+3 +0x1.0002ap+0 +0x1.6f3ebcp+2 +0x1.b0af06p+7 +0x1.016c28p+0 +0x1p+0 +0x1.4542a6p+0 +0x1p+0 +0x1.6120cep+55 +0x1.02a2p+0 +0x1.0714d6p+15 +0x1.21293ep+0 +0x1.023b38p+0 +0x1.000d12p+0 +0x1.4d9f06p+15 +0x1p+0 +0x1.dd3bb4p-1 +0x1p+0 +0x1.00029ep+0 +0x1.eabfa8p+0 +0x1.362a2ep+0 +0x1.000a5ap+48 +0x1.dfbac8p+4 +0x1.259742p+3 +0x1.0000acp+0 +0x1.00cc58p+1 +0x1.49155ep+0 +0x1p+0 +0x1p+0 +0x1.30d9ap-1 +0x1.02fc6p+0 +0x1.3cac76p+0 +0x1.b8c472p+1 +0x1.8bf1bcp+5 +0x1.2cd56p+0 +0x1.1d37a6p+0 +0x1p+0 +0x1.6b03dep+2 +0x1p+0 +0x1.4bc794p+0 +0x1.dc56e6p+1 +0x1.b1432ap+0 +0x1.5a6574p+2 +0x1.a21356p+4 +0x1.6269ep+64 +0x1.0000dp+0 +0x1.10766cp+7 +0x1.0096e6p+0 +0x1.adf486p+0 +0x1.309de8p-1 +0x1.085fb4p+0 +0x1.3afb0ep+0 +0x1.0002a2p+0 +0x1.085208p+0 +0x1.213daap+8 +0x1.000a5ap+0 +0x1.503f0cp+0 +0x1.000428p+0 +0x1.7ee7d4p+16 +0x1.8e5064p+61 +0x1.3f6054p+7 +0x1.3a78a6p+0 +0x1.0a197ap+0 +0x1.016ea8p+0 +0x1.0bbb28p+8 +0x1.000014p+0 +0x1.0010d4p+0 +0x1.5983f8p-26 +0x1.2dddep+0 +0x1.3f4af4p+0 +0x1.15f078p+0 +0x1p+0 +0x1.8ffae8p-20 +0x1.0000a4p+0 +0x1.4f32a8p+0 +0x1.8bf1f2p+5 +0x1.0000fp+0 +0x1.1e9612p+0 +0x1.000512p+0 +0x1.000184p+0 +0x1p+0 +0x1.4a071ap+5 +0x1.316586p-1 +0x1.026922p+0 +0x1.9323dcp+3 +0x1.0530acp+0 +0x1.18125p+0 +0x1.e39054p-1 +0x1.3ad2p+11 +0x1.005ad4p+0 +0x1.000208p+0 +0x1.b85f4cp+6 +0x1.002d02p+0 +0x1p+0 +0x1p+0 +0x1.da3556p+8 +0x1p+0 +0x1.02c298p+0 +0x1.11a35ep+3 +0x1.4a0a02p+1 +0x1.02741p+2 +0x1p+0 +0x1.2749a2p+0 +0x1.45abacp+0 +0x1p+0 +0x1.3920bcp+13 +0x1.000054p+0 +0x1.4ceda8p+0 +0x1p+0 +0x1.390b2p+7 +0x1.66764ep+7 +0x1p+0 +0x1.e11478p+7 +0x1.0f264cp+0 +0x1p+0 +0x1.2f7ec2p-1 +0x1p+0 +0x1.0ac6fcp+8 +0x1.3ca396p+0 +0x1.9ad138p+5 +0x1.e5b8acp+7 +0x1.0000b8p+0 +0x1.f14fd6p-11 +0x1.00009p+0 +0x1.01571ep+0 +0x1.17c726p+0 +0x1.00019p+0 +0x1.362514p+4 +0x1.004efp+0 +0x1.003f5cp+0 +0x1.43c41cp+0 +0x1p+0 +0x1.3e6c78p+12 +0x1.000c5cp+0 +0x1.3e795cp+6 +0x1.b825a6p+7 +0x1.ace64p+1 +0x1.36f8dp+2 +0x1.587484p+0 +0x1.94967ap+14 +0x1.af98e6p+17 +0x1.6488b6p+0 +0x1.1d3e98p+4 +0x1.009978p+0 +0x1.377d08p+0 +0x1.2fdc0ep+0 +0x1.045768p+0 +0x1.f9ef1ap+0 +0x1.003e4ap+0 +0x1.3e825p+9 +0x1.38da1p+0 +0x1p+0 +0x1p+0 +0x1.00d4a2p+0 +0x1.3e6838p+12 +0x1.0c24a8p+0 +0x1.00012cp+0 +0x1p+0 +0x1p+0 +0x1.001188p+0 +0x1.30be32p-1 +0x1.d20bfcp+0 +0x1.000314p+0 +0x1.467b6ap+1 +0x1.b14436p+0 +0x1.be3eccp+7 +0x1.035cc4p+0 +0x1p+0 +0x1.358ca4p+7 +0x1p+0 +0x1.052ef8p+8 +0x1.08ac7ep+0 +0x1p+0 +0x1.ef2d1p-84 +0x1p+0 +0x1.388d04p+56 +0x1.003836p+0 +0x1.65f1ecp+0 +0x1.5b141p+47 +0x1.fadea2p+0 +0x1.d1e872p+59 +0x1p+0 +0x1.acd704p+0 +0x1.d46c0ap-34 +0x1p+0 +0x1.015a84p+0 +0x1p+0 +0x1p+0 +0x1.02161ep+0 +0x1p+0 +0x1.02283cp+0 +0x1.2fb3d8p+2 +0x1.3b1854p+4 +0x1.9a69d8p+48 +0x1.f9ef08p+0 +0x1.7e849cp+3 +0x1.eabffp+0 +0x1.054884p+0 +0x1.9faadcp+7 +0x1.01dbfep+0 +0x1.a9a6aap+1 +0x1p+0 +0x1.ae82b2p+5 +0x1.423f6p-20 +0x1.42e57p+0 +0x1.41466p+2 +0x1p+0 +0x1.49ef3ep+4 +0x1.f264ccp-1 +0x1.0084dap+0 +0x1.07aabap+0 +0x1p+0 +0x1p+0 +0x1.009f06p+0 +0x1.008b44p+0 +0x1.3e2b8cp+5 +0x1.000324p+0 +0x1.0c4158p+0 +0x1.32644cp-1 +0x1.1929dp+5 +0x1.8ac548p+4 +0x1.01b036p+0 +0x1.7e3a98p+5 +0x1.34bc8p-1 +0x1.b14336p+0 +0x1.0cb4e2p+0 +0x1.b931bp+12 +0x1.2358fp+1 +0x1.f23b6cp+51 +0x1p+0 +0x1.16fa4cp+4 +0x1.0baf84p+0 +0x1.a856a8p+5 +0x1.066f6p+0 +0x1p+0 +0x1p+0 +0x1.20b7bp+0 +0x1.3fe392p+0 +0x1.388ae2p+0 +0x1.00035cp+0 +0x1.3adcf2p+12 +0x1.30393p-1 +0x1.e17338p+1 +0x1.aa6b1ap+7 +0x1.0000b6p+0 +0x1p+0 +0x1.345b46p-1 +0x1.74921cp+8 +0x1.b29bd6p+7 +0x1p+0 +0x1.77c706p+2 +0x1.c4d8ecp+65 +0x1.8d98bp+0 +0x1.8b8002p-6 +0x1.3881ecp+15 +0x1.010cd4p+0 +0x1.c8fdaap+7 +0x1.72b958p+2 +0x1.965c1cp+3 +0x1p+0 +0x1p+0 +0x1.2a515cp+0 +0x1.cd1e9p+1 +0x1.006674p+0 +0x1p+0 +0x1.66e4cp+2 +0x1.13aa9ep+8 +0x1p+0 +0x1.13101cp+1 +0x1.0004ecp+0 +0x1p+0 +0x1.c51ad2p+7 +0x1p+0 +0x1.2a0908p+8 +0x1.000182p+0 +0x1.ac40fcp+2 +0x1.30f308p-1 +0x1p+0 +0x1p+0 +0x1.1ceeaep+7 +0x1.0000a4p+0 +0x1.f407acp+7 +0x1.36f98ep+2 +0x1.1c60a8p+10 +0x1.617238p+12 +0x1p+0 +0x1.48fb3ap+0 +0x1p+0 +0x1.000d5p+0 +0x1.33833cp-1 +0x1p+0 +0x1.41be46p+51 +0x1.238e58p+0 +0x1.00266cp+0 +0x1.9fc4bp+58 +0x1.000618p+0 +0x1.88a592p+48 +0x1.0001c8p+0 +0x1p+0 +0x1.51c89cp+0 +0x1.317344p+7 +0x1.308e8ap-1 +0x1p+0 +0x1.0387e6p+0 +0x1.454a32p+0 +0x1.74a828p+7 +0x1.f57daep-8 +0x1.287a44p+0 +0x1.b84b08p+2 +0x1.27fc5ap+0 +0x1p+0 +0x1.0e423p+1 +0x1p+0 +0x1.079ddp+0 +0x1.f49a74p+14 +0x1.0f47bp+0 +0x1.9000bap+4 +0x1.000244p+0 +0x1p+0 +0x1.4a38ep+0 +0x1.36f8bp+2 +0x1.6bf43cp+0 +0x1.a3a9f4p+1 +0x1.001d24p+0 +0x1.106f8ap+0 +0x1.0003ep+0 +0x1.00025p+0 +0x1.89be24p+0 +0x1.3d65b4p+6 +0x1.44b46ep+0 +0x1.5caecap+1 +0x1.00327cp+2 +0x1.54bbep+2 +0x1.2597aap+3 +0x1.059a5ap-11 +0x1.43884ep+2 +0x1p+0 +0x1.c04628p+9 +0x1p+0 +0x1.c1b9bp-49 +0x1.73ed24p+2 +0x1.000598p+0 +0x1.44105p+0 +0x1.b7c192p+5 +0x1.312178p-1 +0x1p+0 +0x1.f9efc2p+0 +0x1.014252p-51 +0x1.017a66p+0 +0x1.1f3de4p+8 +0x1.02b182p+0 +0x1.257372p+0 +0x1.93944ap+48 +0x1.e2305cp+1 +0x1.3e0ee6p-8 +0x1.00011ep+0 +0x1.a31448p+5 +0x1.8c9ca6p+48 +0x1.194216p+0 +0x1p+0 +0x1.5cc2ap+2 +0x1p+0 +0x1.506fe6p+49 +0x1.2588fp+0 +0x1.26ffaep+1 +0x1p+0 +0x1p+0 +0x1.4ff01ap+66 +0x1.00009cp+0 +0x1.000f38p+0 +0x1.00e4d6p+0 +0x1.001d5cp+0 +0x1.02b29cp+50 +0x1.358d1p+7 +0x1.3eff02p+8 +0x1.900058p+4 +0x1.3ae0bcp+13 +0x1.034d3ep+0 +0x1.b9346p+5 +0x1p+0 +0x1.71b9cp+0 +0x1.2f7456p+0 +0x1.47ccf2p+0 +0x1.498974p+0 +0x1.046cb8p+0 +0x1.458c62p+1 +0x1.a93bf4p+2 +0x1.0f113ap+8 +0x1p+0 +0x1.04ae52p+0 +0x1.7c2a68p+0 +0x1.3b24fep+9 +0x1.04ef5p-11 +0x1.11a28ap+3 +0x1p+0 +0x1.056b24p+1 +0x1.0000e4p+0 +0x1.2c01cap+0 +0x1p+0 +0x1p+0 +0x1.c61f72p+15 +0x1p+0 +0x1.02fc2ap+0 +0x1p+0 +0x1.093acep+0 +0x1.5643eap+53 +0x1p+0 +0x1.0087a8p-47 +0x1.2f5868p+0 +0x1.38e848p+10 +0x1.e5c11cp+7 +0x1p+0 +0x1.129e64p+8 +0x1.5c6c98p+1 +0x1.00015ap+0 +0x1.b745e2p+48 +0x1.1bfb08p+0 +0x1.a92b86p+5 +0x1.7c2a54p+0 +0x1p+0 +0x1.3334b6p+0 +0x1.b5c006p+5 +0x1p+0 +0x1.bec8c6p+16 +0x1p+0 +0x1.dc5496p-1 +0x1.0a88ep+0 +0x1.f95e78p+1 +0x1p+0 +0x1.0037b4p+0 +0x1.1eaf62p+8 +0x1p+0 +0x1.43bfcp+5 +0x1.3af986p+15 +0x1.03dbf4p+0 +0x1.b1b5a8p-12 +0x1p+0 +0x1.90007ep+0 +0x1.0003b4p+0 +0x1p+0 +0x1.f8f086p-12 +0x1.dd7178p+4 +0x1.00207p+0 +0x1.118916p+0 +0x1p+0 +0x1.a298c4p+7 +0x1.006a6cp+0 +0x1.1dfa5p+0 +0x1.327c54p-1 +0x1p+0 +0x1.f7e922p-1 +0x1.3e365ap+13 +0x1p+0 +0x1.04318ap+0 +0x1.52381cp+0 +0x1.60a298p-1 +0x1.000076p+0 +0x1.977c42p+14 +0x1.a8cb5cp+7 +0x1.1b0d18p+6 +0x1.29cedp+0 +0x1.15a46ap+1 +0x1p+0 +0x1.639aaep-12 +0x1.004a8cp+0 +0x1.0ab1bcp+1 +0x1.b85ecp+6 +0x1.36279ep+4 +0x1.22ae32p+8 +0x1.615228p+1 +0x1.000898p+0 +0x1.001968p+0 +0x1p+0 +0x1.2f791ap-1 +0x1.00001cp+0 +0x1p+0 +0x1.0627aep+0 +0x1.0e38d4p+5 +0x1.490936p+57 +0x1p+0 +0x1.000358p+0 +0x1.57b4bp+7 +0x1.4b4766p+0 +0x1.26da06p+0 +0x1.cd1ec6p+1 +0x1.38ee44p+15 +0x1.c0ffbcp+15 +0x1.01caacp+0 +0x1.e2a336p-1 +0x1p+0 +0x1.0c69f4p+2 +0x1.50a08cp+55 +0x1.10d0b8p+0 +0x1.1eed7p+1 +0x1.b14428p+0 +0x1.004f94p+0 +0x1.31c2acp-1 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.b47948p+0 +0x1.78d5eap+51 +0x1.01316ep+0 +0x1.4a937cp+0 +0x1.1ba54ap+1 +0x1.6ba304p+0 +0x1.3591c6p-1 +0x1p+0 +0x1.08a91ap+8 +0x1.19ade8p+0 +0x1.01535ap+0 +0x1.317184p-1 +0x1.36f9a4p+2 +0x1.7f08a8p+0 +0x1p+0 +0x1.00013p+0 +0x1.ff478p-1 +0x1.27e0d2p+0 +0x1.0ecbacp+7 +0x1.8dd6acp+0 +0x1.100ecep+0 +0x1.25edd8p+8 +0x1.198a9p+0 +0x1p+0 +0x1.5c6cc2p+1 +0x1.016276p+0 +0x1.329f88p-1 +0x1.9e35ap+0 +0x1.004612p+0 +0x1.fb9b82p-1 +0x1.000d84p+0 +0x1.43e8a8p+0 +0x1.57e548p+1 +0x1.057f18p+0 +0x1.a6dfbep+7 +0x1p+0 +0x1.341ce2p-1 +0x1p+0 +0x1p+0 +0x1.fcbce2p+56 +0x1.004454p+0 +0x1.909ec2p-6 +0x1p+0 +0x1.58649p+9 +0x1.4b96e6p+49 +0x1.3ca38cp+0 +0x1.00033ep+0 +0x1.0099f4p+0 +0x1p+0 +0x1.21869p+8 +0x1p+0 +0x1.65b514p+16 +0x1p+0 +0x1.740878p+3 +0x1.a4cea2p+43 +0x1.b143fep+0 +0x1.25ed36p+4 +0x1.003d7ap+0 +0x1.0d82d4p+1 +0x1.3389ap-1 +0x1p+0 +0x1.11a222p+3 +0x1.983f38p+3 +0x1.000162p+0 +0x1.46b986p+0 +0x1.3e3e9cp+8 +0x1.58747p+0 +0x1.45632cp+0 +0x1.3f738cp+3 +0x1.00d0bp+0 +0x1.5dca1p+0 +0x1p+0 +0x1.43257p+0 +0x1.0b38fap+0 +0x1.1ca4aep+8 +0x1p+0 +0x1p+0 +0x1.319a2p-1 +0x1.2d4fd4p+5 +0x1.02f006p+0 +0x1.e0c05ap+4 +0x1.98f464p+0 +0x1.05db3ap+8 +0x1.a2bd9ep+2 +0x1.a05a58p+0 +0x1.8bf254p+5 +0x1.3eb04cp+4 +0x1.3140a6p-1 +0x1.011d98p+0 +0x1p+0 +0x1.000ac8p+0 +0x1.3b2774p+10 +0x1.44d29p+0 +0x1p+0 +0x1.009f9ep+0 +0x1.0a8702p+2 +0x1.1349bep+1 +0x1.a585b4p+7 +0x1.00f23cp+0 +0x1.338168p+0 +0x1p+0 +0x1.3e7816p+14 +0x1.0e9d14p+0 +0x1.8f53ccp+1 +0x1.28c922p+0 +0x1.6bb30ep+15 +0x1.b58932p+14 +0x1.1c682p+0 +0x1.00846p+0 +0x1.00240cp+0 +0x1.000674p+0 +0x1.2c71ep+3 +0x1.750298p+67 +0x1.364684p+0 +0x1.134676p+16 +0x1.47a244p+0 +0x1p+0 +0x1.dee22ep-1 +0x1.3e8204p+9 +0x1.00007p+0 +0x1.31f1e6p-1 +0x1p+0 +0x1.a187f8p+7 +0x1.0097e4p+0 +0x1.08e1b2p+0 +0x1.0e3e7ap+0 +0x1.0006fap+0 +0x1p+0 +0x1.358ca6p+7 +0x1.83bcacp+3 +0x1.4603f4p+0 +0x1.3093c8p+0 +0x1.5c6cap+1 +0x1.1f5efcp+0 +0x1.6ba3e8p+0 +0x1.cba7b2p+7 +0x1.015e1ep+0 +0x1.b85f58p+6 +0x1.dc835ep+1 +0x1.000598p+0 +0x1.f9551ap-1 +0x1p+0 +0x1p+0 +0x1.0a67fp+0 +0x1.1bdf58p+0 +0x1.f75026p-1 +0x1.5e3b5p+1 +0x1.3f9b72p+0 +0x1.8ff798p-51 +0x1.0115bap+0 +0x1.4e13fcp+0 +0x1.6d6c54p+5 +0x1.0e7538p+0 +0x1.dcf5d8p-12 +0x1.134aa6p+1 +0x1.b7cc8p+12 +0x1.3e46dap+12 +0x1p+0 +0x1.3fb2fep+0 +0x1p+0 +0x1p+0 +0x1.0f8834p+0 +0x1p+0 +0x1.2f8fc8p-1 +0x1.0032aap+0 +0x1.0134d4p+0 +0x1.0006ecp+0 +0x1.36f9b8p+2 +0x1.d32d7p+43 +0x1.65f516p+1 +0x1.a71662p+5 +0x1.02731cp+2 +0x1.00002cp+0 +0x1.090ap+0 +0x1.8ce46ep+6 +0x1.0001bp+0 +0x1.003c82p+0 +0x1.a2cb78p+5 +0x1.1b3cc6p+0 +0x1p+0 +0x1.000698p+0 +0x1p+0 +0x1p+0 +0x1.0a01d2p+50 +0x1.000b52p+0 +0x1.63092ep+0 +0x1.0011fcp+0 +0x1.684b74p+2 +0x1.782834p+49 +0x1.213286p+0 +0x1.2b13b6p+9 +0x1.383ep+0 +0x1.f91f5cp+2 +0x1.bf1f3cp+7 +0x1.3e44f4p+7 +0x1p+0 +0x1.4637a4p+0 +0x1.3e8c48p+12 +0x1.192a3cp+8 +0x1.0008c2p+0 +0x1p+0 +0x1.01a4b6p+8 +0x1.0002d8p+0 +0x1.001054p-6 +0x1p+0 +0x1.275d2cp+0 +0x1.320582p-1 +0x1.02643ep+0 +0x1.aa4074p+5 +0x1.02528cp+0 +0x1.0adc1p+7 +0x1.e25f42p-1 +0x1p+0 +0x1.0076ap+0 +0x1.0008acp+0 +0x1.783ba4p+3 +0x1.01af66p+0 +0x1.192eep+0 +0x1.132ea6p+7 +0x1.a93964p+2 +0x1.9bc85p+14 +0x1.1e3f46p+8 +0x1.1d8db6p+13 +0x1.0007cap+0 +0x1.2fa568p-1 +0x1.3e8fd4p+12 +0x1.2f5bf6p-1 +0x1.a0994cp+14 +0x1.7ed6b2p+0 +0x1.0f2b1ap+0 +0x1.4ab6e6p+1 +0x1.04c838p+8 +0x1.000034p+0 +0x1p+0 +0x1.eadcd6p-1 +0x1.00008p+0 +0x1.12103cp-1 +0x1p+0 +0x1p+0 +0x1.2f93bp-1 +0x1.7b4b16p+5 +0x1.38fe8cp+6 +0x1p+0 +0x1.36f96cp+2 +0x1.716462p+39 +0x1.000048p+0 +0x1.7c680ep+4 +0x1p+0 +0x1.28cbfap+0 +0x1.a416eap+41 +0x1p+0 +0x1.57e51p+1 +0x1.0004f4p+0 +0x1p+0 +0x1.3167b6p-1 +0x1.984032p+3 +0x1.04f21ep+0 +0x1p+0 +0x1.73ed4p+2 +0x1.0f4eb8p+8 +0x1p+0 +0x1.2df9p+5 +0x1.54bbf8p+2 +0x1.0bf9a4p+0 +0x1.a91d34p+63 +0x1.130ed8p+0 +0x1p+0 +0x1.00036ap+0 +0x1.3ae7aep+8 +0x1.16524ap+8 +0x1.9f774ap+0 +0x1.ba601cp+2 +0x1.bb2f0cp+12 +0x1.a93bd4p+2 +0x1.32e318p+0 +0x1.0ab44ap+0 +0x1p+0 +0x1.2f871ep-1 +0x1p+0 +0x1.a78356p+7 +0x1.001e8cp+0 +0x1.4a08dap+5 +0x1.069e1cp+0 +0x1.e3e184p+1 +0x1.f60012p+18 +0x1p+0 +0x1.b8600ep+6 +0x1.300bc6p-1 +0x1.76f83cp+6 +0x1.16f978p+0 +0x1.0003a4p+0 +0x1.0b4f22p+7 +0x1.37409cp+0 +0x1p+0 +0x1.3e95dp+12 +0x1.00098p+0 +0x1.004038p+0 +0x1.301bfep-1 +0x1p+0 +0x1.9c872ep+0 +0x1.378344p+16 +0x1.18c55cp+0 +0x1.274a0ep-20 +0x1.2811b2p+0 +0x1p+0 +0x1.ba668cp+12 +0x1.7f2c8ap+13 +0x1.0f72fcp+8 +0x1.6308a6p+0 +0x1.b0cac6p+13 +0x1.4837p+0 +0x1p+0 +0x1.40bd6cp+0 +0x1p+0 +0x1.39133p+12 +0x1.c62f4cp+46 +0x1.0004bcp+0 +0x1.12257ap+8 +0x1p+0 +0x1.85645cp+9 +0x1.4cb85ep+0 +0x1p+0 +0x1.a234a8p-1 +0x1p+0 +0x1p+0 +0x1.3cf408p-27 +0x1.0e263ep+1 +0x1.00026p+0 +0x1p+0 +0x1p+0 +0x1.332f2cp-1 +0x1.04bb28p+0 +0x1.4a67cap+0 +0x1.0003dcp+0 +0x1p+0 +0x1.3482d4p-1 +0x1.134a04p+1 +0x1p+0 +0x1.9000ecp+4 +0x1p+0 +0x1.2f4e26p-1 +0x1.0395dp+9 +0x1.38dbb4p+11 +0x1p+0 +0x1.049432p+0 +0x1.1a9a96p+8 +0x1.54bcd2p+2 +0x1.14487cp+0 +0x1.020458p+0 +0x1.000b9p+0 +0x1.32254cp-1 +0x1.73ed2ep+2 +0x1p+0 +0x1.3d8be4p+0 +0x1.3e96d4p+15 +0x1.ffa44cp-1 +0x1.11a334p+3 +0x1.08317p+0 +0x1.000238p+0 +0x1.3e498p+9 +0x1.3389eap-1 +0x1.36f9ccp+2 +0x1.0bbe0ap+0 +0x1.0b53f4p+8 +0x1p+0 +0x1.0e42d2p+0 +0x1.d22332p+18 +0x1p+0 +0x1.05197ep+0 +0x1.205a74p+1 +0x1p+0 +0x1.0086dp+0 +0x1p+0 +0x1.296a6cp+0 +0x1.7ced1p+2 +0x1p+0 +0x1p+0 +0x1.0053eep+0 +0x1.09c5dcp+0 +0x1p+0 +0x1.a07194p+9 +0x1.0a151ap+0 +0x1.01e6ccp+0 +0x1.ef2d1p-84 +0x1.8eb89cp+3 +0x1.15dbb6p+0 +0x1.00307ap+0 +0x1.03571ep+0 +0x1.f5292ep-1 +0x1.59f064p+0 +0x1.0e26a8p+1 +0x1.6d6ab4p+5 +0x1.7ad0fcp+6 +0x1.40fc28p+0 +0x1.c6b9p+14 +0x1.071bfcp+0 +0x1.b0cb28p+7 +0x1.1614b2p+1 +0x1.4bdc7ep+0 +0x1.358db8p+7 +0x1.405dp+3 +0x1.0461d4p+0 +0x1p+0 +0x1.a8b5b2p+7 +0x1.130dbap+7 +0x1.259792p+3 +0x1.2fcf92p-1 +0x1.0092d2p+0 +0x1.0fea96p+0 +0x1.000024p+0 +0x1.a0abccp+5 +0x1.3b1076p+0 +0x1.192914p+5 +0x1.85f5dap-9 +0x1.0b2ae8p+0 +0x1.dc84ap+1 +0x1.2121acp+8 +0x1.b144fep+0 +0x1.131a68p+1 +0x1.28131p+0 +0x1.35dc48p+5 +0x1.b81b5p-51 +0x1.0a1caep+0 +0x1.f9ef34p+0 +0x1.95da52p+0 +0x1p+0 +0x1.3032a2p-1 +0x1.1cc56ep+0 +0x1.c77bfcp+0 +0x1.05370ep+0 +0x1.d6d0c6p+2 +0x1.2fbfap-1 +0x1p+0 +0x1.0000b8p+2 +0x1.b8c316p+1 +0x1.00010cp+0 +0x1.028104p+0 +0x1p+0 +0x1.13f12cp+0 +0x1p+0 +0x1p+0 +0x1.fb7e4ep+53 +0x1p+0 +0x1.780d04p+9 +0x1.1973c4p+6 +0x1.b09184p+0 +0x1.b4ed32p+51 +0x1p+0 +0x1.00b82p+0 +0x1.198ba4p+0 +0x1.57b63cp+7 +0x1.0016d4p+0 +0x1p+0 +0x1.01a3e4p+0 +0x1.e8d11ep+44 +0x1.b7e5d4p+13 +0x1.00667cp+0 +0x1.06ed08p+0 +0x1.05f47ap+0 +0x1.4aa86ap+0 +0x1.04aeap+0 +0x1p+0 +0x1p+0 +0x1.3b13a8p+11 +0x1.596846p+47 +0x1.0d8c64p+0 +0x1.0012aap+0 +0x1p+0 diff --git a/benchtests/log1pf-inputs b/benchtests/log1pf-inputs new file mode 100644 index 0000000000..dcf79e82cd --- /dev/null +++ b/benchtests/log1pf-inputs @@ -0,0 +1,1005 @@ +## args: float +## ret: float +## includes: math.h +# Random inputs x*2^e where x is random in [1/2,1] and e in [-29,127] +## name: workload-random +0x1.c78e3p+14 +0x1.48495cp+92 +0x1.4b1328p+101 +0x1.9a5a14p+58 +0x1.41168p-3 +0x1.302f02p+27 +0x1.d10646p+119 +0x1.a94a78p+23 +0x1.4dbaecp-4 +0x1.d91022p+79 +0x1.15a1cp-2 +0x1.2dfc7ap-14 +0x1.3687dep-20 +0x1.40df16p+120 +0x1.59de46p-21 +0x1.c94704p+22 +0x1.bbcb8p-3 +0x1.a50b8ap+63 +0x1.3195c2p+28 +0x1.8b82ecp+9 +0x1.0fd406p-6 +0x1.18ea9cp+99 +0x1.fa7eb4p+61 +0x1.542ac6p+90 +0x1.db1fe8p-23 +0x1.5add68p+47 +0x1.31596ap+110 +0x1.fac144p+72 +0x1.ec4f38p+12 +0x1.ec0826p-24 +0x1.6eba14p+45 +0x1.89ff32p+98 +0x1.e97588p-9 +0x1.c9a5fap+77 +0x1.9ab35ep+42 +0x1.c588c8p+62 +0x1.605674p+95 +0x1.52d5d6p+22 +0x1.9856a8p+29 +0x1.b8a602p+64 +0x1.42695cp-19 +0x1.7d557cp+43 +0x1.94417p+21 +0x1.c0728cp+68 +0x1.90cddp+82 +0x1.b7434p+68 +0x1.2b73bcp+84 +0x1.191af2p+4 +0x1.72b818p+60 +0x1.9e46ep+8 +0x1.f2ae94p+70 +0x1.0baa78p+110 +0x1.581e48p-4 +0x1.43f84ap+30 +0x1.794728p-2 +0x1.cbcd88p-9 +0x1.dfad2p+106 +0x1.be2368p-26 +0x1.575892p+43 +0x1.9f0008p+84 +0x1.173adcp-15 +0x1.33982p+14 +0x1.f2b8f4p+17 +0x1.ea0a08p+4 +0x1.3960d8p-27 +0x1.62e26cp+126 +0x1.7b60a4p-27 +0x1.6f03cap+29 +0x1.99ac0cp+116 +0x1.ff26d4p+18 +0x1.f9d1aep+2 +0x1.0f1e66p+61 +0x1.9bdfdep+52 +0x1.02f87cp-26 +0x1.d37e0ap+121 +0x1.e3495p+108 +0x1.421a48p+94 +0x1.4061a8p+94 +0x1.3c8fb8p+126 +0x1.def69ep-20 +0x1.348b92p+82 +0x1.30ad6ep+93 +0x1.2ce07cp+12 +0x1.c408dp-12 +0x1.cd7284p-15 +0x1.2b7638p+27 +0x1.746976p+82 +0x1.8ddae4p-12 +0x1.81efe8p+76 +0x1.3d4b4ep-14 +0x1.7f06acp+57 +0x1.fcbf08p+29 +0x1.5fba1ep+80 +0x1.18101ep+93 +0x1.1532eep+89 +0x1.837216p+82 +0x1.6acd42p+93 +0x1.f57efp+29 +0x1.699bf4p+46 +0x1.ad6918p+96 +0x1.b795b8p+91 +0x1.a7c832p+14 +0x1.8f63b4p+103 +0x1.63da54p+60 +0x1.7ea5a8p+76 +0x1.1a80c8p+124 +0x1.8b317ap+27 +0x1.cced4p+114 +0x1.ce4cbcp-21 +0x1.561304p+123 +0x1.0addcep+33 +0x1.94edf8p+60 +0x1.cba4fcp+85 +0x1.aa558cp+101 +0x1.690c84p+80 +0x1.57aa64p+40 +0x1.4cb082p+102 +0x1.a2c26p+53 +0x1.8fa5fcp+103 +0x1.933fe8p+14 +0x1.a22faep+112 +0x1.ff8c2p+14 +0x1.2e15c2p+62 +0x1.2baacap+103 +0x1.43602p+26 +0x1.927d7p+34 +0x1.f3a606p-15 +0x1.49ac3ep+94 +0x1.95b7e4p+26 +0x1.b1612cp+30 +0x1.4b4b6ap+11 +0x1.02229cp-2 +0x1.339d92p+76 +0x1.e3e66p-5 +0x1.0206bep-25 +0x1.d8f222p-30 +0x1.34ab66p+107 +0x1.720baep+26 +0x1.f83ab4p+101 +0x1.1a3096p+35 +0x1.4ed274p+104 +0x1.2fd074p-12 +0x1.223b6cp+35 +0x1.17b0c2p+22 +0x1.292496p-10 +0x1.68be8ep+81 +0x1.9d9f94p+23 +0x1.7e0f22p-19 +0x1.fc5a44p+54 +0x1.2ca3ccp+81 +0x1.4a77dap-29 +0x1.cc29c4p+93 +0x1.295e5ep+118 +0x1.359e08p-14 +0x1.11b84cp+25 +0x1.083ceep+102 +0x1.1fbe94p-15 +0x1.b0f068p+43 +0x1.ede1ap+43 +0x1.670c9ep+37 +0x1.9b3568p+97 +0x1.047f1cp+2 +0x1.62ce96p+112 +0x1.42a968p+48 +0x1.fbbd34p+10 +0x1.5ad592p+45 +0x1.55505ep-21 +0x1.703858p+50 +0x1.8ed60cp+52 +0x1.e0bf78p+5 +0x1.5db4f8p-18 +0x1.42575p+40 +0x1.a3a58p+91 +0x1.a89f2ap+34 +0x1.3bfc7cp+7 +0x1.eb7722p+103 +0x1.1ff1b8p+3 +0x1.7549aap+3 +0x1.9dec4p-30 +0x1.cec6bp+23 +0x1.59baaap+115 +0x1.f2bda4p+48 +0x1.1708bep+8 +0x1.315ee8p+17 +0x1.1f438ap+55 +0x1.151096p+119 +0x1.cd1ae4p+68 +0x1.7bede6p+9 +0x1.1aed6ap+102 +0x1.ffe9dcp+20 +0x1.e8911p+55 +0x1.1e844cp+48 +0x1.b2fd3ap-21 +0x1.2f5366p-23 +0x1.1346dap+58 +0x1.de57d4p+23 +0x1.4a36c6p+20 +0x1.40806ep+77 +0x1.ef9586p+10 +0x1.60f92ep+53 +0x1.ee3824p+73 +0x1.8edde4p+54 +0x1.909c74p-21 +0x1.2fc7bcp+108 +0x1.92e0f8p+117 +0x1.5bf1fcp+36 +0x1.79d04p+23 +0x1.6d2c2ap+37 +0x1.800ab8p+8 +0x1.d3ba46p+35 +0x1.919584p+116 +0x1.43b9d6p+27 +0x1.8ce338p+63 +0x1.73897ep+14 +0x1.835668p+66 +0x1.cc770cp+65 +0x1.b9c258p+52 +0x1.018998p+117 +0x1.78032p-18 +0x1.3622dep-4 +0x1.35b20ap+6 +0x1.cca16p+42 +0x1.27f6a4p+78 +0x1.b79478p+41 +0x1.569bfp-16 +0x1.460578p-20 +0x1.963b2p-28 +0x1.12fceep+65 +0x1.6161c8p+25 +0x1.a5a884p+104 +0x1.374e64p+124 +0x1.6ca26ap-14 +0x1.92a25cp+108 +0x1.ff3df8p+7 +0x1.d1b016p+48 +0x1.1babc6p+74 +0x1.99fc8cp+60 +0x1.f8c8fcp+20 +0x1.0fb918p+9 +0x1.8bceap+74 +0x1.e8204p+66 +0x1.b857b6p+52 +0x1.76973p+87 +0x1.aa7d1ap+124 +0x1.7b6cdp-8 +0x1.f775ap+16 +0x1.30b07ap+59 +0x1.5bad4p+94 +0x1.952a02p+122 +0x1.749176p+123 +0x1.e59b1ep-4 +0x1.703cbcp+70 +0x1.5298d2p+77 +0x1.f09cfp+97 +0x1.13832ep-25 +0x1.952d74p+104 +0x1.2be9fp-23 +0x1.1f0e24p+103 +0x1.652f96p-16 +0x1.66cebcp+57 +0x1.4725f4p-23 +0x1.b570fcp-23 +0x1.44b468p+68 +0x1.2f344p-21 +0x1.3f4edap+20 +0x1.92c7fcp+53 +0x1.523ec2p+62 +0x1.83d1eep+16 +0x1.77eeaep+101 +0x1.ba8b3p-25 +0x1.c1dd2cp+67 +0x1.7de188p+29 +0x1.7cc2dep+105 +0x1.a2c70ap+83 +0x1.979716p+9 +0x1.b2ccd4p+71 +0x1.6335a4p+22 +0x1.913b3p+90 +0x1.2d549cp-22 +0x1.ef209cp+12 +0x1.378f4cp+68 +0x1.9d1174p+110 +0x1.6b2932p+27 +0x1.b24748p+32 +0x1.a849f4p+57 +0x1.c354f4p+125 +0x1.28299p+88 +0x1.82a79ap+93 +0x1.cc5a3p+2 +0x1.f52c34p-6 +0x1.8deb48p+20 +0x1.3e8efep-12 +0x1.8c6954p+23 +0x1.77ee34p+82 +0x1.80c7dp+86 +0x1.04a6d8p+32 +0x1.019068p+77 +0x1.a8356cp+16 +0x1.8971dep+59 +0x1.dddddcp-20 +0x1.c92964p+85 +0x1.0f431ep+126 +0x1.584092p+121 +0x1.4d45f8p-3 +0x1.9ac9d8p+5 +0x1.971d64p-24 +0x1.911ba4p+76 +0x1.2a89acp+80 +0x1.33f062p+113 +0x1.691c9ap+100 +0x1.827bfcp+64 +0x1.1f7b46p+101 +0x1.a5d6eep+88 +0x1.4de20cp+1 +0x1.784a7p+28 +0x1.6573bp+57 +0x1.1be33p+107 +0x1.13c7p+37 +0x1.081416p+27 +0x1.c41d7cp+36 +0x1.cc4cbcp+88 +0x1.a9c4e8p+86 +0x1.f57668p-1 +0x1.b42b9cp+64 +0x1.bb8cfp-10 +0x1.72c6c8p+24 +0x1.a02fbep+67 +0x1.5e7e62p+84 +0x1.9002b4p+69 +0x1.74eb64p-24 +0x1.80d85p+123 +0x1.50fe44p+31 +0x1.012cc8p-9 +0x1.eb2182p+110 +0x1.945b8cp-27 +0x1.e73c6cp-1 +0x1.8b1d6ap+4 +0x1.e37d54p+4 +0x1.78d304p+32 +0x1.a45042p+58 +0x1.99d3d4p-9 +0x1.6a379cp+34 +0x1.34a222p+48 +0x1.d05824p+15 +0x1.4cef9ap-27 +0x1.dab2fcp-13 +0x1.21465ep+59 +0x1.c2239cp+77 +0x1.f094dap+85 +0x1.a57344p+0 +0x1.cd14d6p-19 +0x1.7e3bccp+53 +0x1.d4264p-14 +0x1.ae14p+69 +0x1.36af58p+0 +0x1.7c43bp+9 +0x1.10551p+9 +0x1.514b0ap-17 +0x1.e74e42p+89 +0x1.6107aap+8 +0x1.51c72cp+114 +0x1.6fd3fp+89 +0x1.dd9fb8p-10 +0x1.1dece6p+75 +0x1.05af5ap+6 +0x1.eafe46p+104 +0x1.b498dp+65 +0x1.2ed2b4p-24 +0x1.ae9ff4p+52 +0x1.e0b21cp+95 +0x1.3f0124p+31 +0x1.d56474p+81 +0x1.20f0ccp+68 +0x1.594a9cp+0 +0x1.35f866p+13 +0x1.a3ffd2p+117 +0x1.0edd6ep+114 +0x1.e2e148p+2 +0x1.d241ccp+105 +0x1.0b021ep+82 +0x1.6e3d3p+40 +0x1.906e6cp+10 +0x1.50861cp+61 +0x1.5ea378p+8 +0x1.cea9e8p+119 +0x1.5c3ef4p-5 +0x1.e71eb8p+59 +0x1.3b8e0cp+114 +0x1.119f66p+121 +0x1.8261cap+108 +0x1.0f6d6ep+103 +0x1.d35b7cp-14 +0x1.b3df3ep-27 +0x1.620ecp+81 +0x1.84385p+56 +0x1.26090ep-13 +0x1.951978p+84 +0x1.33d696p+17 +0x1.774ap+65 +0x1.e24d1p+0 +0x1.2bcd16p+71 +0x1.df2954p-20 +0x1.ebf7b6p+99 +0x1.a7be3p+82 +0x1.508f92p-29 +0x1.4c43acp+116 +0x1.bd2648p-13 +0x1.c0e1b6p-9 +0x1.4c529p+88 +0x1.62b418p-13 +0x1.8d524cp-17 +0x1.0755fp+65 +0x1.af4dd8p-11 +0x1.a1d094p+51 +0x1.50b074p+38 +0x1.9bc71cp-3 +0x1.88b7fcp+111 +0x1.dc8924p+77 +0x1.d6e174p+35 +0x1.ca0538p-13 +0x1.5ba842p+50 +0x1.fdbbdcp+4 +0x1.ddb1a6p+84 +0x1.18c1f2p+31 +0x1.f3afe2p+68 +0x1.acc2e4p-2 +0x1.d92dfp+23 +0x1.f61cf4p+111 +0x1.6719ecp+101 +0x1.80e2ccp+74 +0x1.f8a5e8p+21 +0x1.f6b4ap+95 +0x1.216d62p+61 +0x1.dea2c4p+58 +0x1.a8f8dp+33 +0x1.5bcc0ap+78 +0x1.5dc2a8p+62 +0x1.dff08p-7 +0x1.4a9768p-14 +0x1.070104p+99 +0x1.67d5fp-21 +0x1.435c4p+27 +0x1.7aadbcp-9 +0x1.eb517ap+0 +0x1.1e63f8p+2 +0x1.154b94p-18 +0x1.a456p-24 +0x1.8307ap+34 +0x1.158706p+21 +0x1.7c14acp+0 +0x1.0d4f2ap+92 +0x1.43411ap+33 +0x1.e269dcp+60 +0x1.420fa8p-20 +0x1.6627d4p+88 +0x1.e27a8p+102 +0x1.a019ccp+125 +0x1.79684p+74 +0x1.51d7eep+3 +0x1.d6179p+71 +0x1.a73554p+67 +0x1.9b29f2p+106 +0x1.a363a8p+109 +0x1.c97f9ep+103 +0x1.3c408p+77 +0x1.ba923p+99 +0x1.0eebfep+72 +0x1.f3a6f4p+22 +0x1.519874p+117 +0x1.badc1cp+93 +0x1.ced474p+106 +0x1.f0c904p-13 +0x1.1ceedep+52 +0x1.656258p-14 +0x1.006cap+104 +0x1.a6960ap+90 +0x1.3c2162p+80 +0x1.0a744ap+24 +0x1.e50c24p+48 +0x1.ed24f4p-18 +0x1.00e7bep+37 +0x1.30215ap+105 +0x1.7dd83cp+126 +0x1.dcf948p+39 +0x1.6a3be8p+50 +0x1.942234p+19 +0x1.2c2ea2p+74 +0x1.93853p-22 +0x1.eeb9ap+105 +0x1.58dcc4p-27 +0x1.b0cc4cp+2 +0x1.fb1334p+73 +0x1.f2f5cap+111 +0x1.c409dp+29 +0x1.0930a6p+24 +0x1.5c2174p+63 +0x1.ab1fc8p+79 +0x1.ffdba4p+75 +0x1.7cdb48p-11 +0x1.ffddp-27 +0x1.ba4628p+21 +0x1.f22dbep+63 +0x1.0b047ep+21 +0x1.4ce8a4p+7 +0x1.0e6b0cp+61 +0x1.57e578p+64 +0x1.c5d5a8p+17 +0x1.e0afep+5 +0x1.bc466ap+79 +0x1.74a8a4p+114 +0x1.6d508ep+89 +0x1.49e98p+48 +0x1.21b884p+103 +0x1.0ab83ap+90 +0x1.07570ep+110 +0x1.cfffp+37 +0x1.ca655cp+90 +0x1.a55c7cp+25 +0x1.f7b02cp+18 +0x1.57d4b2p+17 +0x1.4bffbp+48 +0x1.08ffbap+95 +0x1.f98ce8p+59 +0x1.a265aep+88 +0x1.45d7acp+20 +0x1.2ad7dap+88 +0x1.62a68cp+70 +0x1.e025ep+101 +0x1.90de6p+121 +0x1.f346acp+70 +0x1.27422ap+34 +0x1.a9408cp+95 +0x1.868eb4p-29 +0x1.b2970cp+104 +0x1.b54268p-14 +0x1.8d8d04p-8 +0x1.fc3416p+87 +0x1.74f35p-19 +0x1.c9a32cp+121 +0x1.f7585p+91 +0x1.3ced2p+119 +0x1.d666a6p+115 +0x1.de1114p+1 +0x1.f893ep+80 +0x1.299b54p+61 +0x1.bc9b18p+35 +0x1.beac46p-11 +0x1.09f0bp+63 +0x1.481d54p+47 +0x1.49203p+107 +0x1.4c321ap+37 +0x1.255248p+7 +0x1.67ff82p+82 +0x1.054522p+125 +0x1.ff16c8p+0 +0x1.7c0998p+25 +0x1.09b04cp-18 +0x1.a80cfcp+115 +0x1.fcfffcp-24 +0x1.46e548p+42 +0x1.dc7eeap-21 +0x1.50719cp+20 +0x1.4f7f94p+9 +0x1.c4d6cp+116 +0x1.4b691cp+108 +0x1.672e42p-22 +0x1.8656p+43 +0x1.5bdcc8p+124 +0x1.72661ep+57 +0x1.865e68p+68 +0x1.1192bcp+83 +0x1.15b732p+76 +0x1.2c5c48p+28 +0x1.52a1ap+117 +0x1.7deaa4p+82 +0x1.03c784p-11 +0x1.d7e19cp-13 +0x1.63d338p+87 +0x1.82ff8ep+23 +0x1.7e95ap+59 +0x1.f60af8p+15 +0x1.ec346ep+32 +0x1.a27c8cp+67 +0x1.907d3cp-22 +0x1.d4da32p+9 +0x1.3822d6p+43 +0x1.06638ep+39 +0x1.eeb39ep+20 +0x1.d8bd88p+50 +0x1.84668ep+34 +0x1.120c92p+121 +0x1.a93be6p+65 +0x1.9563f4p+100 +0x1.3327c6p+43 +0x1.a9715p+17 +0x1.d074ep+73 +0x1.20628ep-7 +0x1.61d828p+81 +0x1.863c42p+106 +0x1.afa75p-20 +0x1.d1d34p+50 +0x1.e5fe78p+71 +0x1.c1c444p+6 +0x1.5a8e32p-3 +0x1.f6abb4p+50 +0x1.2fc66cp+55 +0x1.d1d578p-17 +0x1.cd4182p+53 +0x1.87fcp+78 +0x1.de95fep+15 +0x1.7e52bep+35 +0x1.cc0276p+81 +0x1.f676f4p+124 +0x1.6f025cp-28 +0x1.14f37ap+46 +0x1.5bb684p-4 +0x1.741e6p+42 +0x1.1068f4p+25 +0x1.39efep+79 +0x1.903634p+101 +0x1.9aabacp+46 +0x1.7cffb4p+43 +0x1.7b9352p-27 +0x1.b0a5b8p+19 +0x1.a226b4p+65 +0x1.f6f1acp+41 +0x1.b026dep+92 +0x1.472994p+123 +0x1.e0ca9cp-17 +0x1.5ac904p+11 +0x1.60cacp+67 +0x1.79072p+89 +0x1.46fdccp+87 +0x1.f512c8p+70 +0x1.49d4dp+0 +0x1.37dd84p+77 +0x1.1281aep+126 +0x1.300db6p+100 +0x1.f4128ap+115 +0x1.31e05p+46 +0x1.92e078p+96 +0x1.274c92p-18 +0x1.c15cfcp+87 +0x1.9c9c26p+97 +0x1.f2736cp+43 +0x1.32d744p+99 +0x1.7ff204p+113 +0x1.7551d4p+18 +0x1.4f48d6p+3 +0x1.917b02p-9 +0x1.70b748p-20 +0x1.d995bep+120 +0x1.5b9a8ep+126 +0x1.2a16dep+11 +0x1.8eba58p+36 +0x1.e0e7d2p+60 +0x1.7d7b9ep+8 +0x1.2600cp+124 +0x1.dbd354p-21 +0x1.e48b7cp+49 +0x1.d69a48p-4 +0x1.6aa834p+14 +0x1.e74886p+15 +0x1.2ac858p+92 +0x1.9d1846p+71 +0x1.3f5248p+1 +0x1.07e47cp-5 +0x1.ef1cc8p+15 +0x1.e8c3fcp+65 +0x1.6f7c44p+13 +0x1.d9e316p+95 +0x1.62c2ep+112 +0x1.5a1d42p+3 +0x1.d06c94p+53 +0x1.02e408p+93 +0x1.d6cf8cp+99 +0x1.99518p+81 +0x1.96a648p+47 +0x1.b61406p+105 +0x1.28f042p+81 +0x1.b7b51ep+99 +0x1.197a2ap+70 +0x1.125076p+29 +0x1.8ace44p+114 +0x1.bc2894p-23 +0x1.fab642p+99 +0x1.74f0f8p+43 +0x1.35c95cp+3 +0x1.e63cc8p+68 +0x1.5e67a6p+111 +0x1.8a2106p+47 +0x1.b5cbd4p+24 +0x1.9bef3cp+43 +0x1.79f9b4p+122 +0x1.026196p+21 +0x1.d8f1c4p+112 +0x1.5cc3b8p+2 +0x1.fb5a02p+99 +0x1.d757e8p+95 +0x1.4c6c6ep+30 +0x1.a252fap+120 +0x1.6b28fcp+18 +0x1.393468p+67 +0x1.b71dc8p-28 +0x1.e1bd2p+14 +0x1.7b54fep-25 +0x1.fda27cp+82 +0x1.64b6a2p-19 +0x1.3093bep+1 +0x1.a3682cp-23 +0x1.f6e6bep+72 +0x1.3e6df8p+71 +0x1.08b9b4p+102 +0x1.fecd98p+36 +0x1.a4b34p+119 +0x1.3937b8p+44 +0x1.8feb44p+67 +0x1.474cdp-28 +0x1.31c2eap+119 +0x1.68009cp-30 +0x1.9bf9dep+0 +0x1.577e1cp-16 +0x1.56fbep+79 +0x1.b1518p+27 +0x1.150692p+30 +0x1.7f3282p+95 +0x1.0782f4p-7 +0x1.b759a6p+27 +0x1.0adec6p+72 +0x1.77a9c6p-4 +0x1.bf9d96p-29 +0x1.9bd634p-23 +0x1.e9cep+99 +0x1.f7f754p+57 +0x1.5ddf7p+122 +0x1.59ee6p-1 +0x1.12910ep+118 +0x1.71fd44p+74 +0x1.707568p-4 +0x1.fd93a4p+112 +0x1.855fb4p+18 +0x1.3f1fcap+9 +0x1.c0a59cp+83 +0x1.6f2dacp-11 +0x1.89a71cp+5 +0x1.bee8p+39 +0x1.0be354p+44 +0x1.aff39p+67 +0x1.5d24c4p-15 +0x1.7cc108p+31 +0x1.d32a18p+38 +0x1.0ea1b8p+65 +0x1.a213dp+89 +0x1.30dd9cp-8 +0x1.2a4a3p+36 +0x1.7b3cbcp+97 +0x1.1af5b6p+122 +0x1.42af5cp-26 +0x1.0d4742p+88 +0x1.612c34p+66 +0x1.4dd1ap+125 +0x1.901f28p+115 +0x1.b15c54p-8 +0x1.1e653p+51 +0x1.ea9588p+126 +0x1.84d654p-19 +0x1.c97e52p+51 +0x1.462354p+83 +0x1.796108p+98 +0x1.f322ap+32 +0x1.3ce698p+13 +0x1.acbb5ap+9 +0x1.17a4bap+9 +0x1.98d19ap+112 +0x1.457ddp+13 +0x1.f6944cp+49 +0x1.cd2cbep+2 +0x1.38c15ap-12 +0x1.e41944p+3 +0x1.57b62ap+43 +0x1.725aaep+67 +0x1.65e4eep+63 +0x1.cbd734p+66 +0x1.e772e8p-6 +0x1.37d578p+68 +0x1.50ae48p+108 +0x1.10d0fcp-25 +0x1.f9b7f8p+66 +0x1.3739ecp+85 +0x1.3d9934p-18 +0x1.2d6a9cp+79 +0x1.c1cbacp-9 +0x1.2e2838p+20 +0x1.f98104p+51 +0x1.ec9cacp-10 +0x1.3ff662p+14 +0x1.f6ab04p+22 +0x1.53919ep+46 +0x1.6abf86p+11 +0x1.242a66p+26 +0x1.1fa5p+54 +0x1.5f8ebcp+60 +0x1.1c5062p+108 +0x1.3a512cp+72 +0x1.644c3p+91 +0x1.9fbd4p+10 +0x1.eaf508p+46 +0x1.676988p+10 +0x1.0ef3fcp+80 +0x1.10effp+122 +0x1.0b42a6p+11 +0x1.150394p+66 +0x1.b2643ep+99 +0x1.d5a0e4p+2 +0x1.9c408p+18 +0x1.743e64p+75 +0x1.045344p+121 +0x1.f1bb38p+5 +0x1.6b8874p+94 +0x1.2d15bep+116 +0x1.f5e62p+101 +0x1.0ed362p+23 +0x1.267a4ap-7 +0x1.a049b4p+13 +0x1.e0b384p-5 +0x1.ac764ap+54 +0x1.ddf4c4p+117 +0x1.19adacp+103 +0x1.f250dp+63 +0x1.2e9f22p+98 +0x1.62d7ecp+17 +0x1.1694dap+52 +0x1.698dc6p+104 +0x1.fbba02p+39 +0x1.7f5b78p+17 +0x1.d0c96ap+23 +0x1.44d132p-29 +0x1.b2fb4cp+58 +0x1.8e55c4p+68 +0x1.a08278p+100 +0x1.f5258ep+41 +0x1.628518p-21 +0x1.4e55a4p+102 +0x1.2802cp+95 +0x1.c941f8p-24 +0x1.89858ap+67 +0x1.c7247cp-3 +0x1.3d7d2ep+110 +0x1.350f86p+57 +0x1.537d4p+11 +0x1.922ed4p+9 +0x1.35687ep+28 +0x1.e30698p+91 +0x1.5884b4p+38 +0x1.5544aap-21 +0x1.a9d5bap-22 +0x1.d3b1e2p+11 +0x1.989d34p+44 +0x1.1e1688p+24 +0x1.a09474p+39 +0x1.33fdb8p+22 +0x1.07201ep+96 +0x1.ab8c4cp+53 +0x1.f372ep+124 +0x1.4a12acp-21 +0x1.d062d4p-25 +0x1.9aa33p+18 +0x1.9e5dfp-5 +0x1.a207acp+71 +0x1.743dacp+46 +0x1.6dc7d4p+25 +0x1.7a79d2p+99 +0x1.1c8c86p+17 +0x1.fb41d4p+67 +0x1.6eba0cp+43 +0x1.89051p+75 +0x1.f3f0dp+13 +0x1.1a22d2p+109 +0x1.7882c2p+98 +0x1.39d0e4p+88 +0x1.59376cp+12 +0x1.52307cp+115 +0x1.5ee274p+32 +0x1.975b2p+107 +0x1.fc09ecp+116 +0x1.fa266cp+117 +0x1.14d94ep+91 +0x1.d07092p+57 +0x1.048b56p+23 +0x1.1a9444p+124 +0x1.33ee9cp+42 +0x1.ce1e94p+5 +0x1.298e6ap+12 +0x1.83f364p+107 +0x1.a8041ep+72 +0x1.bdad9ep+98 +0x1.dd3bacp+43 +0x1.0f5f74p+11 +0x1.3609d4p+87 +0x1.36514ap-19 +0x1.48ab3p+106 +0x1.b405e8p+117 +0x1.dd1888p+42 +0x1.003064p+34 +0x1.42ee58p-2 +0x1.d65efcp+120 +0x1.93379p-8 +0x1.0ed062p+60 +0x1.9d6b7p+122 +0x1.eb7c38p-6 +0x1.e3acd4p+33 +0x1.a56b18p-15 +0x1.c47d0cp+115 +0x1.98da58p-7 +0x1.836538p+35 +0x1.602f52p+89 +0x1.19d46cp+93 +0x1.5f842cp+106 +0x1.7ccd92p+65 +0x1.0a8b8ep+19 +0x1.f5e4c2p+46 +0x1.8245e8p+85 +0x1.e70628p+12 +0x1.d6de78p+72 +0x1.8c17f4p+44 +0x1.3d7a4ap-6 +0x1.adbb94p+120 +0x1.c87cc6p+43 +0x1.99cc74p+7 +0x1.f8ec06p+18 +0x1.faca5cp+124 +0x1.23b434p-23 +0x1.d93cf6p+0 +0x1.ea87bcp+42 +0x1.cf38f8p+71 +0x1.536422p+99 +0x1.05a9e2p+100 +0x1.3f7a3ap+39 +0x1.8c70a6p+4 +0x1.e95c9ap+86 +0x1.135a0ep+46 +0x1.e1e24p+95 +0x1.91fe44p+95 +0x1.b407b8p+33 +0x1.dd491p+112 +0x1.8a6032p+78 +0x1.da346ap+72 +0x1.97be92p+29 +0x1.865e88p+73 +0x1.b9ab6cp+71 +0x1.af54bep+110 +0x1.e371e4p+15 +0x1.7e1d94p+92 +0x1.f304bp+83 +0x1.990e44p+43 +0x1.889c7cp+103 +0x1.bd9744p-17 +0x1.47d546p-29 +0x1.f930f2p+124 +0x1.b6102p+105 +0x1.ebac74p+52 +0x1.44af08p+8 +0x1.44dfbp+83 +0x1.55e238p+43 +0x1.a39c2p+28 +0x1.91faacp+107 +0x1.36d48cp+85 +0x1.e2d052p+104 +0x1.4825fcp+81 +0x1.97ab88p+47 +0x1.e3597cp-26 +0x1.a8ecf6p+27 +0x1.5cbf28p-24 +0x1.43c954p+23 +0x1.33f908p-9 +0x1.30f61ap+36 +0x1.43fafcp-19 +0x1.c2df2p+91 +0x1.e36e44p+26 +0x1.cf461cp-28 +0x1.994accp+125 +0x1.f6f952p+35 +0x1.37c426p-2 +0x1.26b718p+86 +0x1.aa1014p-27 +0x1.8d3cf8p+66 +0x1.d05446p+17 +0x1.34b966p+43 +0x1.401e0cp+41 +0x1.48070cp+91 +0x1.0db642p+4 +0x1.683af4p+121 +0x1.9a1162p+114 +0x1.30ca88p+9 +0x1.e79f4ep+55 +0x1.48725cp+16 +0x1.798c2p+106 +0x1.5913dcp-7 +0x1.e4f136p+63 +0x1.0a67c8p-9 diff --git a/benchtests/log2p1f-inputs b/benchtests/log2p1f-inputs new file mode 100644 index 0000000000..50a9739476 --- /dev/null +++ b/benchtests/log2p1f-inputs @@ -0,0 +1,2888 @@ +## args: float +## ret: float +## includes: math.h +## name: workload-spec2017.wrf +0x1.fe4c3p-1 +0x1.0e33e6p+1 +0x1.00000ap+0 +0x1.900028p+4 +0x1.f8cdeep+0 +0x1.332986p+7 +0x1.493696p+0 +0x1p+0 +0x1.38c67p+7 +0x1.029046p+1 +0x1.1bd31cp+4 +0x1.bb3e3ep+12 +0x1.000098p+0 +0x1.a7971p+7 +0x1p+0 +0x1.0001a8p+0 +0x1.00004ep+0 +0x1p+0 +0x1.0606f2p+0 +0x1.3e54a8p+11 +0x1.3a0662p+3 +0x1.000c72p+0 +0x1p+0 +0x1.0bf8b6p+0 +0x1.000204p+0 +0x1.500ad2p+0 +0x1p+0 +0x1.3e4cfp+8 +0x1.00006cp+0 +0x1.54f7fp+0 +0x1.267858p+0 +0x1.191ccp+0 +0x1.0cdb18p+1 +0x1.29bf1ep+15 +0x1.64bd92p+1 +0x1.255534p+0 +0x1p+0 +0x1.93bb82p+3 +0x1.1348ep+1 +0x1.00456ep+0 +0x1.08afbcp+8 +0x1.32c37ep+0 +0x1.3437cep-1 +0x1.000214p+0 +0x1.03d5ap+0 +0x1.172378p+6 +0x1p+0 +0x1.330f22p-1 +0x1.00b91p+0 +0x1.e831f2p+15 +0x1.092318p+9 +0x1p+0 +0x1.e80902p+7 +0x1.71ec54p+2 +0x1.1935dcp+0 +0x1.651082p+14 +0x1p+0 +0x1.0f41d8p+8 +0x1.17f4p+0 +0x1.7cf946p+9 +0x1.b14396p+0 +0x1.92f94p+1 +0x1.2f3784p-1 +0x1p+0 +0x1.305ad4p-1 +0x1.002a08p+0 +0x1.3e338p+5 +0x1.1863f6p+8 +0x1p+0 +0x1.ed8fd8p+58 +0x1p+0 +0x1p+0 +0x1.215fc8p+9 +0x1.1965bep+16 +0x1.00031cp+0 +0x1.00011p+0 +0x1p+0 +0x1.e384fep-20 +0x1p+0 +0x1.00020cp+0 +0x1.007e24p+0 +0x1.b14346p+0 +0x1.243ff8p+0 +0x1.3f6ac2p+3 +0x1.816ff6p+5 +0x1.0115ap+8 +0x1.162028p+16 +0x1.62692cp+0 +0x1.0227c8p+1 +0x1.4dda3ep+0 +0x1.418696p+0 +0x1.0272f4p+2 +0x1.62c6ecp+5 +0x1.3cd07ap+18 +0x1.0191eap+0 +0x1.21c3a2p+8 +0x1p+0 +0x1.000bf6p+0 +0x1.a4b51cp+7 +0x1.04d1f8p+0 +0x1.8de2b8p+0 +0x1.7b7a4ep+8 +0x1.1928acp+5 +0x1.305a8p-1 +0x1.ba8662p+5 +0x1p+0 +0x1.ab75a2p-12 +0x1.7cc13cp+9 +0x1.505306p+0 +0x1.63085p+0 +0x1.000064p+0 +0x1.b3f16ap+7 +0x1.1348f8p+1 +0x1.71fe88p+1 +0x1.0b7132p+4 +0x1.470316p+1 +0x1.3228b6p-1 +0x1.8dd666p+0 +0x1.38ed88p+12 +0x1.432218p+0 +0x1.00e0cap+0 +0x1.73eb44p+2 +0x1p+0 +0x1p+0 +0x1.bda15ep+7 +0x1.0272fep+2 +0x1.00171ep+0 +0x1p+0 +0x1.3faa86p+3 +0x1.33c2a2p-1 +0x1.3e48e2p+7 +0x1.017ef2p+0 +0x1.30115ap-1 +0x1.587444p+0 +0x1.3efed8p+8 +0x1.8a5526p+0 +0x1.cb1ecap+15 +0x1.1f5cp+0 +0x1.0001a4p+0 +0x1.1a20dap+7 +0x1.376e6p+0 +0x1.0001aap+0 +0x1.9182f6p-1 +0x1.000292p+0 +0x1.3d46a2p+12 +0x1.e177b6p+7 +0x1.3f5646p+1 +0x1.2ab784p+9 +0x1.dc81b4p+1 +0x1.0ef326p+0 +0x1.996588p-12 +0x1.740848p+3 +0x1.00016p+0 +0x1.ffd51ap+52 +0x1p+0 +0x1.4461ap+4 +0x1.08e7bcp+51 +0x1p+0 +0x1.106e98p+3 +0x1.5490e4p+0 +0x1.46703cp+4 +0x1.6b1e86p-29 +0x1.324caap+0 +0x1.0467ccp+0 +0x1.424574p+0 +0x1p+0 +0x1.001da4p+0 +0x1.364604p+0 +0x1p+0 +0x1.0951e2p+8 +0x1.408994p+0 +0x1.0003ap+0 +0x1.619e92p+12 +0x1.313e72p+2 +0x1.8b47p-6 +0x1.2190fp+2 +0x1.20aaacp+0 +0x1.f0059cp-1 +0x1p+0 +0x1.018e78p+0 +0x1.313e1p+2 +0x1p+0 +0x1.2efce4p-1 +0x1.5ebdap+0 +0x1p+0 +0x1.5e2488p+51 +0x1.bf95f2p+5 +0x1.5a1124p+16 +0x1.73bad6p+1 +0x1.00048ap+0 +0x1.0c9beap+8 +0x1p+0 +0x1.358c08p+7 +0x1.7f834ep-26 +0x1.3e56bcp+15 +0x1.52d8b2p+15 +0x1p+0 +0x1.00109cp+0 +0x1.0a0bb2p+0 +0x1p+0 +0x1.026908p+6 +0x1.370f22p+0 +0x1.5c6c5ap+1 +0x1.7fe4bcp+2 +0x1p+0 +0x1p+0 +0x1.42be68p+49 +0x1.0000d8p+0 +0x1.3abdf8p+12 +0x1.370a44p-12 +0x1.aef9f4p+0 +0x1.00001ep+2 +0x1.017c2p+0 +0x1.00b614p+0 +0x1.32f9f8p-1 +0x1p+0 +0x1.00ebf2p+0 +0x1.0c3116p+0 +0x1.00004p+0 +0x1.03b992p+0 +0x1p+0 +0x1.24eb3cp+0 +0x1.4c73ecp+51 +0x1.fad3ep+1 +0x1p+0 +0x1.32368ap-1 +0x1.000908p+0 +0x1.5ea59ep+12 +0x1.1928ccp+5 +0x1p+0 +0x1.21a93cp+8 +0x1p+0 +0x1.0001e8p+0 +0x1.95b6c2p-12 +0x1.00002p+0 +0x1.2399fap+9 +0x1.449b44p+0 +0x1p+0 +0x1.64a766p+15 +0x1.06ccecp+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.c81f9cp+1 +0x1.5ef196p+0 +0x1.022822p+1 +0x1.99beep+3 +0x1.1f417p+8 +0x1p+0 +0x1.c08726p+5 +0x1.397d9ep+0 +0x1.88e748p+18 +0x1.3b319p+9 +0x1.2fd3b6p-1 +0x1.0001aep+0 +0x1.4a0562p+5 +0x1.4e5f1ap+0 +0x1p+0 +0x1.017fbp+0 +0x1.acaf56p+57 +0x1.ef7d66p+8 +0x1.736c3cp+1 +0x1.12ddbep+0 +0x1.b85ebcp+6 +0x1.0e259p+1 +0x1.5cc2c4p+2 +0x1.99e614p+3 +0x1.f30aa6p+2 +0x1.3911c6p+15 +0x1.119b92p+1 +0x1.352a3p-1 +0x1.0001b2p+0 +0x1.00b26p+0 +0x1.bd730ep+60 +0x1.54fc5p+0 +0x1.5a4804p+0 +0x1.ff7eaep-1 +0x1.5cc268p+2 +0x1.1077aap+2 +0x1.1723d6p+0 +0x1p+0 +0x1p+0 +0x1.30c17p-1 +0x1.000648p+0 +0x1.91aa4cp+6 +0x1.17234p+6 +0x1p+0 +0x1.6d5b18p+2 +0x1.00027ap+0 +0x1.dc8224p+1 +0x1.a9eabep-6 +0x1.099edcp+1 +0x1.004118p+1 +0x1.58d5fcp+60 +0x1.000098p+0 +0x1.004e8p+0 +0x1.f32edap-1 +0x1.0394aep+0 +0x1.0689bp+2 +0x1.124e5cp+0 +0x1.71fe86p+1 +0x1.025ce2p+0 +0x1.46107cp+0 +0x1.047c74p+2 +0x1.a57e74p+15 +0x1.18bbcep+0 +0x1p+0 +0x1.65b9a4p+0 +0x1.0000eep+0 +0x1.08a4a4p+0 +0x1.0fe774p+1 +0x1.000128p+0 +0x1.3e95fp+12 +0x1.b14e3ap-56 +0x1.00007cp+0 +0x1.5619c2p+1 +0x1.4ac958p+0 +0x1.00031p+0 +0x1.003064p+0 +0x1.e119eap-1 +0x1.577b36p+0 +0x1p+0 +0x1.26ff2ap+0 +0x1.004ap+0 +0x1.0000a2p+0 +0x1.1fcc7ep+4 +0x1.6f959p+16 +0x1.000064p+0 +0x1.375c6ap+0 +0x1.6a806ep+2 +0x1p+0 +0x1.8e27aep+1 +0x1p+0 +0x1.000b22p+0 +0x1.8f0c12p+0 +0x1.192892p+5 +0x1.2bcaacp+1 +0x1.984264p+2 +0x1.0034cp+0 +0x1p+0 +0x1.abf4dp+0 +0x1.001044p+0 +0x1.0d26f4p+0 +0x1.626906p+0 +0x1.8bf0c2p+5 +0x1.02d288p+0 +0x1.900128p+4 +0x1.bbbbcp+12 +0x1.45fa5p+0 +0x1p+0 +0x1.01bef2p+0 +0x1.524f26p+2 +0x1.083b0ep+0 +0x1.4811e4p+0 +0x1.0163a8p+0 +0x1.9570fap+15 +0x1.3022f2p-1 +0x1.14c73ap+0 +0x1.0009d8p+0 +0x1.056b92p+63 +0x1.0025a4p+0 +0x1.36aad4p+17 +0x1.05c244p+8 +0x1.d00886p+17 +0x1.001188p+0 +0x1.3376ecp-1 +0x1.6719c8p+16 +0x1.02495p+0 +0x1.fd9bacp-1 +0x1.3882c6p+6 +0x1.3cb358p+0 +0x1.0ec93ep+0 +0x1.4fd2bap+1 +0x1.f8b68p+1 +0x1.33b1f2p-1 +0x1.ba7f4cp+1 +0x1p+0 +0x1.44a3d2p-17 +0x1.9a6a8p+2 +0x1.00918ap+6 +0x1.30d50ep-1 +0x1p+0 +0x1.0001bep+0 +0x1.05b93ep+0 +0x1.aa9d98p+0 +0x1.039b74p+0 +0x1.1ac25ep+8 +0x1p+0 +0x1.12b23ap+1 +0x1.4c5c52p+0 +0x1.07de64p+0 +0x1.950f94p+1 +0x1.001caap+47 +0x1.0a9448p+0 +0x1.01026cp+0 +0x1.03d74ap+0 +0x1p+0 +0x1.0032dap+0 +0x1.380922p-1 +0x1.c0e7ccp+15 +0x1.a35e4p+4 +0x1.25b1e6p+0 +0x1.000044p+2 +0x1.05ac24p+7 +0x1.1fa744p+44 +0x1.0007b2p+0 +0x1.2cca62p+2 +0x1.04be3ap+6 +0x1.00065p+0 +0x1.2b9f3ap+1 +0x1.74085p+3 +0x1p+0 +0x1.01fc4cp+0 +0x1.e137bcp+2 +0x1.097ac8p+0 +0x1.ad1458p+4 +0x1.c8587cp+1 +0x1.31d172p-1 +0x1.0b414ap+1 +0x1.664e36p+1 +0x1.30ae16p-1 +0x1p+0 +0x1.3b7e3cp+2 +0x1.9cc348p+64 +0x1p+0 +0x1p+0 +0x1.cdb384p-32 +0x1p+0 +0x1.00b998p+0 +0x1.36b69ep-1 +0x1.939538p+4 +0x1.dc9deep+4 +0x1.36f86ep+2 +0x1.02113cp+0 +0x1.035852p+0 +0x1.9de428p+2 +0x1.369814p+1 +0x1.147f44p+3 +0x1.031bc8p+0 +0x1.03f7cp+0 +0x1.000924p+0 +0x1.145e14p+2 +0x1.0000d4p+0 +0x1p+0 +0x1.54fdfp+2 +0x1.07c0ep+0 +0x1.829aeep+1 +0x1.000f08p+0 +0x1.34dcdp-1 +0x1p+0 +0x1.cd56e4p+1 +0x1.16400ap+8 +0x1p+0 +0x1.00000ap+2 +0x1.00a21p+0 +0x1.8d6286p+6 +0x1.de4f28p+1 +0x1.9f55b6p+48 +0x1.01c802p+0 +0x1.0327cp+0 +0x1.32fb52p-1 +0x1p+0 +0x1.2525dcp+0 +0x1.91da28p-6 +0x1.5a23a8p+0 +0x1.5f024ap+1 +0x1p+0 +0x1.0008f2p+0 +0x1.05563cp+0 +0x1.89381cp+0 +0x1.8bb056p+16 +0x1.7cc93ep+1 +0x1.8bf0acp+5 +0x1.1722bap+6 +0x1p+0 +0x1.00238ep+0 +0x1.ebb8d2p-1 +0x1.001194p+0 +0x1.6cd388p+1 +0x1.08e4bp+8 +0x1.00002p+0 +0x1.01a0bep+0 +0x1.00e7cep+8 +0x1.1193p+0 +0x1.06a9c8p+0 +0x1.11c7fep+0 +0x1.5ef17cp+0 +0x1.4ae72cp+0 +0x1.e0df4cp+41 +0x1.7e5468p+1 +0x1.8dd478p+0 +0x1.3c2784p+51 +0x1p+0 +0x1p+0 +0x1.b9d454p+12 +0x1.011a58p+0 +0x1.3efb48p+4 +0x1.000208p+0 +0x1.57b3eep+7 +0x1.000004p+0 +0x1.1cd6b8p+0 +0x1.c366fap+9 +0x1.466d2cp+0 +0x1p+0 +0x1.300096p-1 +0x1p+0 +0x1.bef388p+0 +0x1.0c20e8p+8 +0x1.397f2p+4 +0x1.037596p+2 +0x1.62a0a4p+52 +0x1.37269ap+0 +0x1.81fe24p+2 +0x1.dd4196p+56 +0x1.b143ep+0 +0x1p+0 +0x1.b8c2fp+1 +0x1.056b3ep+1 +0x1.3b6cbp+0 +0x1.3ffb2p+0 +0x1p+0 +0x1.3c21cp+0 +0x1.00312cp+0 +0x1p+0 +0x1.3822f8p+0 +0x1.02734p+2 +0x1.05a7dap+0 +0x1.6df1b4p+5 +0x1.0006f4p+0 +0x1.31aebep-1 +0x1p+0 +0x1p+0 +0x1.b997fap+18 +0x1.0570d8p+0 +0x1p+0 +0x1.0a9216p+42 +0x1.ef16f2p+1 +0x1p+0 +0x1.31269ep-1 +0x1.a9954ap+2 +0x1.1cc5e8p+0 +0x1.01d334p+0 +0x1.905f98p+4 +0x1.0310d4p+0 +0x1.16a62ap+0 +0x1.8dd6b2p+0 +0x1.395dcep+7 +0x1.ef5f92p+0 +0x1.000868p+0 +0x1p+0 +0x1.844a16p+2 +0x1.452efcp+0 +0x1p+0 +0x1.1c5da2p+6 +0x1.31ac3ap-1 +0x1.cc1bfp+2 +0x1p+0 +0x1.08215ap+0 +0x1.3b4306p+0 +0x1.71fe6p+1 +0x1.192bd8p+0 +0x1.262f78p+0 +0x1.00013cp+0 +0x1.33c486p-1 +0x1.000014p+0 +0x1.b8f4fp+1 +0x1.5f9f5ap-1 +0x1.059872p+0 +0x1p+0 +0x1.58168p+1 +0x1.826d5cp+0 +0x1p+0 +0x1.032a04p+0 +0x1p+0 +0x1.0c0a5cp+0 +0x1.668d9p+0 +0x1.2f9644p-1 +0x1p+0 +0x1.1821b8p+6 +0x1.b22e8ep+7 +0x1.4f7a78p+0 +0x1.52df24p+0 +0x1.48c612p+0 +0x1.93a19ap+4 +0x1.8bf102p+5 +0x1.122d94p+0 +0x1p+0 +0x1.00018p+0 +0x1.30083ap-1 +0x1p+0 +0x1p+0 +0x1.30d20ep-1 +0x1p+0 +0x1.0000dcp+0 +0x1.285bb4p+0 +0x1p+0 +0x1.0003a4p+0 +0x1p+0 +0x1.2ffcfcp-1 +0x1.093d96p+0 +0x1.239bfcp+0 +0x1.f7c33cp-27 +0x1.a9982ep+2 +0x1.1969f4p+4 +0x1.ff5c88p-1 +0x1.04db6ep+2 +0x1p+0 +0x1.f010dap-1 +0x1.13647p+7 +0x1p+0 +0x1.ea6e18p-10 +0x1.2d16eap+0 +0x1.02b668p+0 +0x1.191704p+4 +0x1.18f2b4p+0 +0x1.b186eap+0 +0x1.24c01ap+2 +0x1.6a3adap+16 +0x1p+0 +0x1p+0 +0x1.2f9f28p-1 +0x1.4b5da4p+0 +0x1.004054p+0 +0x1.002616p+8 +0x1.561954p+1 +0x1p+0 +0x1.4c4394p+0 +0x1.1eed34p+1 +0x1.a702eap+5 +0x1.ee054p+7 +0x1.1156a8p+0 +0x1.9a81fcp+2 +0x1.10ce16p-28 +0x1.b18b88p+0 +0x1.d9c4a8p+1 +0x1.0e275cp+0 +0x1.905f58p+4 +0x1p+0 +0x1.02f774p+0 +0x1.7ce226p+1 +0x1.0002bcp+0 +0x1.010f58p+0 +0x1p+0 +0x1.000198p+0 +0x1p+0 +0x1.4aa832p+0 +0x1.0006c2p+0 +0x1.358ca4p+7 +0x1.1edc64p+0 +0x1.003508p+0 +0x1.fdb69p+1 +0x1.0ff4fep+0 +0x1p+0 +0x1.b8c2fp+1 +0x1.284c16p+0 +0x1.00a228p+0 +0x1.03080cp+0 +0x1.91a8f4p+48 +0x1p+0 +0x1.2080fep+1 +0x1.0002f8p+0 +0x1.b14338p+0 +0x1.081288p+0 +0x1.71b9bep+0 +0x1.09c368p+0 +0x1.35ed64p+0 +0x1.8dd68cp+0 +0x1.d2cc42p+0 +0x1.9be0ecp+3 +0x1.7407fcp+3 +0x1.313ecp-1 +0x1.cdc978p+0 +0x1.0ed538p+1 +0x1.159af4p+8 +0x1p+0 +0x1.128694p+0 +0x1.2f1b06p-1 +0x1.19c0d8p+0 +0x1.dcc7c8p+1 +0x1.a33f8ap+7 +0x1.000158p+0 +0x1p+0 +0x1.28bdaep-16 +0x1.74086cp+3 +0x1.ea297cp+1 +0x1.5d87fp+2 +0x1.0e2658p+1 +0x1.621c14p+1 +0x1.9d8a8cp+3 +0x1p+0 +0x1.7807e8p+3 +0x1.74c924p+0 +0x1.a484e4p+53 +0x1.771c44p+0 +0x1.13d1e4p+2 +0x1.2fa402p-1 +0x1p+0 +0x1.024d72p+2 +0x1.064c6ap+8 +0x1.15d2dep+0 +0x1.9c004ep+3 +0x1.bc2fcap+12 +0x1.befdbep+0 +0x1.36461p+0 +0x1.6db7b8p+5 +0x1.0000cp+0 +0x1p+0 +0x1.02f354p+0 +0x1p+0 +0x1.000228p+0 +0x1.013fep+0 +0x1.213782p+0 +0x1p+0 +0x1.000204p+0 +0x1.a69cccp+7 +0x1.0036acp+0 +0x1.0982b8p+0 +0x1.81693cp-22 +0x1.1e5d64p+6 +0x1.0009f2p+0 +0x1.2fe96p-1 +0x1.0368f8p+0 +0x1.2d2cbep+0 +0x1.37bc04p-1 +0x1p+0 +0x1.d45d88p+1 +0x1.000694p+0 +0x1.000272p+0 +0x1p+0 +0x1.d0b2e6p+1 +0x1.2598a4p+3 +0x1p+0 +0x1.8b7d3p+2 +0x1.192902p+5 +0x1.3d5386p+0 +0x1.9c779ap+1 +0x1.08257cp+0 +0x1.0b8a4p+2 +0x1.01afa4p+3 +0x1.e48b7ap-1 +0x1.f30a5cp+2 +0x1.0df814p+0 +0x1.2f28p-1 +0x1.983f46p+3 +0x1.009094p+6 +0x1.326a3ep-1 +0x1.9767e6p+0 +0x1.1027fp+0 +0x1.3274f8p-1 +0x1.197a9cp+1 +0x1.3807p+2 +0x1.90533p+4 +0x1.0332ecp+0 +0x1.3ca37p+0 +0x1p+0 +0x1p+0 +0x1.3ff4dcp+0 +0x1p+0 +0x1.900046p+0 +0x1p+0 +0x1.195576p+5 +0x1.aec2ecp+7 +0x1.65b984p+0 +0x1.74677p+3 +0x1.423322p+0 +0x1.aeef9ep+16 +0x1.0338c4p+0 +0x1.1ae22ap+8 +0x1.cc4adcp+0 +0x1.d20a9ep+0 +0x1.cdbefcp-45 +0x1.03b23cp+0 +0x1.25970cp+3 +0x1.e6b02ep-1 +0x1p+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.000aa8p+0 +0x1.0054a4p+0 +0x1.06600ap+0 +0x1.b8601cp+6 +0x1.fea92cp+5 +0x1.6p+5 +0x1.c76586p+0 +0x1.90007ap+0 +0x1.ef2d1p-84 +0x1.03d5b6p+0 +0x1.0164ecp+0 +0x1.4441d8p+0 +0x1.005c42p+0 +0x1.046838p+0 +0x1.51f04ap+0 +0x1.cf822cp+0 +0x1.033b4ap+0 +0x1p+0 +0x1.091bep+0 +0x1p+0 +0x1.5bb2a4p+0 +0x1.01fe2cp+0 +0x1.2b96p+1 +0x1.242d9p+0 +0x1.42ade4p+0 +0x1p+0 +0x1.689714p+2 +0x1.4ac756p+0 +0x1p+0 +0x1.101ad8p+0 +0x1.6208e8p+41 +0x1.47091p+0 +0x1.3e28p+3 +0x1.04b70ep+0 +0x1p+0 +0x1.086c9p+0 +0x1.70eb62p+54 +0x1.dfb744p+4 +0x1p+0 +0x1.f302bcp-8 +0x1.8d5fd4p+6 +0x1.12d9a8p+0 +0x1.00a39p+0 +0x1p+0 +0x1.00003cp+0 +0x1.00031p+0 +0x1.58743ep+0 +0x1.003ae4p+0 +0x1.7de5cep+2 +0x1.096c7ep+0 +0x1.57e436p+1 +0x1.21fcb4p+2 +0x1.31297ap-1 +0x1p+0 +0x1.ab5fcp+16 +0x1.91e912p+42 +0x1.5cb206p+1 +0x1.000072p+0 +0x1.00f4d2p+0 +0x1.0ee52p+0 +0x1.000014p+0 +0x1.2f3a5ep-1 +0x1.3fc07cp+1 +0x1.64bd36p+1 +0x1.f48f56p-1 +0x1.0115f4p+0 +0x1.1650bcp+2 +0x1.013494p+0 +0x1p+0 +0x1.684e92p+0 +0x1.0063a4p+0 +0x1.3ca364p+0 +0x1.197a48p+1 +0x1.00a6f4p+0 +0x1.31ce92p-1 +0x1.fea91ep+5 +0x1.6dd5cep+5 +0x1.05035ep+8 +0x1.6d6acep+5 +0x1.8c4fa2p+5 +0x1.f4e59cp-12 +0x1.6330e4p+0 +0x1.01a9fep+0 +0x1.4f48e4p+0 +0x1.d589c6p+1 +0x1.5be04ap+15 +0x1.f9e2f2p-1 +0x1.294bdp+1 +0x1.8bf1p+5 +0x1.967eb8p-9 +0x1.018d04p+0 +0x1.00032cp+0 +0x1p+0 +0x1.ba21bcp+14 +0x1.8dd6bp+0 +0x1.7455a8p+3 +0x1p+0 +0x1.8e8a02p+15 +0x1.015f06p+0 +0x1.04a26p+8 +0x1.000c58p+0 +0x1.26a58cp+3 +0x1.2719bap-19 +0x1p+0 +0x1.05194cp+7 +0x1.34d9f4p+0 +0x1p+0 +0x1.029fa2p+0 +0x1.99a9dap+0 +0x1.cee06ep+0 +0x1.3e921ap+0 +0x1.9f8eep+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.13f606p+0 +0x1p+0 +0x1.0a176ep+2 +0x1.aa9c94p+7 +0x1.1211ep+0 +0x1.122594p+0 +0x1.b39642p+47 +0x1p+0 +0x1.000068p+0 +0x1.6600aep-12 +0x1.e0d6ecp+1 +0x1.0019ep+0 +0x1.34b8f4p-1 +0x1.581728p+2 +0x1.00016p+0 +0x1.12b1ep+8 +0x1.a679fp+14 +0x1.90005ap+4 +0x1.837996p-1 +0x1p+0 +0x1.0e2552p+1 +0x1.22160cp+9 +0x1p+0 +0x1.57e4b4p+1 +0x1p+0 +0x1.bf8d0cp+0 +0x1.d7e10ep+16 +0x1.06bcc8p+0 +0x1.133b12p+0 +0x1.1b6542p+6 +0x1p+0 +0x1.feddbcp-1 +0x1p+0 +0x1p+0 +0x1.2fd98ep-1 +0x1.03d5b6p+0 +0x1p+0 +0x1.db8a46p-1 +0x1.42e588p+0 +0x1.0ee1p+1 +0x1.361fep+0 +0x1.2f74a8p+0 +0x1p+0 +0x1.31596cp-1 +0x1.740a2p+3 +0x1p+0 +0x1.8dd672p+0 +0x1.00011cp+0 +0x1p+0 +0x1.000102p+0 +0x1.5cc2b2p+2 +0x1p+0 +0x1.17f4b4p+0 +0x1.619318p+12 +0x1.b14362p+0 +0x1.c1004ep+0 +0x1.318578p-1 +0x1.9728ecp+2 +0x1.25bdbcp+3 +0x1.37ac8ap+63 +0x1p+0 +0x1.41ef56p+2 +0x1.e65866p-1 +0x1p+0 +0x1.307e0ap+0 +0x1.ef570ep+54 +0x1.0290fap+1 +0x1.9dd308p+0 +0x1.21db9p+0 +0x1.00003cp+0 +0x1.eabf94p+0 +0x1.386614p+10 +0x1.f244dap+16 +0x1p+0 +0x1.00e094p+0 +0x1.5605e6p+1 +0x1.b16374p+2 +0x1.9a2d88p+0 +0x1.48748ap+9 +0x1p+0 +0x1.28e674p+0 +0x1.bf4324p+7 +0x1.2598c6p+3 +0x1.215484p+1 +0x1.05fb5p+51 +0x1.0000d8p+0 +0x1.f389dcp+6 +0x1.41a1bp+0 +0x1.001582p+0 +0x1.1928ecp+5 +0x1.00ff3ep+0 +0x1.3883c4p+13 +0x1.98b044p+2 +0x1.8a43eep+0 +0x1.733e8p+14 +0x1.73ebfcp+2 +0x1.0cd1fp+0 +0x1p+0 +0x1.af357p+5 +0x1.b2c586p+5 +0x1.470f58p+0 +0x1p+0 +0x1p+0 +0x1.0ffddep+0 +0x1.02c422p+1 +0x1.56c4a6p+1 +0x1.492014p-47 +0x1.192862p+5 +0x1p+0 +0x1.c7e222p+7 +0x1p+0 +0x1p+0 +0x1.1a0d3p+49 +0x1.946148p+0 +0x1.524f6ap+2 +0x1.31566ep-1 +0x1.000198p+0 +0x1.3d7efcp+3 +0x1.000264p+0 +0x1.4ed7ccp+0 +0x1.b667ecp+0 +0x1.81940ep+1 +0x1p+0 +0x1.088e6cp+0 +0x1.065bbcp+1 +0x1.009ae4p+1 +0x1.008bfp+6 +0x1.e9f5acp+7 +0x1.1e1c44p+8 +0x1.992348p+0 +0x1.3162fp+0 +0x1.fb0e1ap+48 +0x1.8bf0acp+5 +0x1p+0 +0x1.1f57b2p+60 +0x1.011f3p+0 +0x1.3af642p+0 +0x1.ccae9p+46 +0x1.21325cp+0 +0x1.07743p+7 +0x1.1ae49ep+8 +0x1.00006ap+0 +0x1.1928aap+5 +0x1.838206p-1 +0x1p+0 +0x1.00e9e8p+0 +0x1.4684cap+0 +0x1.02568p+0 +0x1.5efc62p+1 +0x1p+0 +0x1.000352p+0 +0x1.0578cap+0 +0x1.0039ecp+0 +0x1.2fc412p-1 +0x1.4a939ap+1 +0x1.ff27ep+5 +0x1.091a62p+0 +0x1.08c012p+0 +0x1.67c8p+4 +0x1.e26b74p-48 +0x1p+0 +0x1.283076p+3 +0x1.2fe494p-1 +0x1.4dcd9ep+5 +0x1p+0 +0x1.cdf4e4p+7 +0x1p+0 +0x1.c77d16p+1 +0x1.fccf76p-1 +0x1p+0 +0x1.120a84p+0 +0x1.054cdep+0 +0x1.002a0cp+0 +0x1.063b76p+0 +0x1.0000d8p+0 +0x1.30cedep-1 +0x1.003884p+0 +0x1p+0 +0x1.e0065cp-1 +0x1.693bd2p+15 +0x1.0fadc2p+0 +0x1.415d06p+0 +0x1.0002ecp+0 +0x1.27ce08p+0 +0x1.3b9762p+0 +0x1.2fb36p+2 +0x1.02c8f8p+0 +0x1.629facp+50 +0x1.281c56p+3 +0x1.4a93c8p+1 +0x1.0e6cacp-1 +0x1.f9ef4ap+0 +0x1.44f78ap+2 +0x1.9a1e18p+0 +0x1p+0 +0x1.3e566p+3 +0x1.000128p+0 +0x1p+0 +0x1.112c38p+0 +0x1.03d2dap+0 +0x1.5fb222p+12 +0x1.1f4b96p+0 +0x1.01422p+1 +0x1.ee5728p+63 +0x1.4bcdd8p+1 +0x1p+0 +0x1.30e0e4p-1 +0x1.6a36b2p+0 +0x1.00016cp+0 +0x1.04b966p+0 +0x1.106e16p+16 +0x1p+0 +0x1.1233d2p+0 +0x1p+0 +0x1.15d1cap+1 +0x1.137c02p+8 +0x1.00001ap+0 +0x1.07ab74p+0 +0x1.800b4ep-1 +0x1.55047p+0 +0x1.90017ap+4 +0x1.5c9898p+1 +0x1.8ce4ccp+6 +0x1p+0 +0x1.6ee34p+0 +0x1.bf600cp+0 +0x1.f13a7ep+8 +0x1.00015cp+0 +0x1.b9c51ep+12 +0x1.740826p+3 +0x1.c29e5p+1 +0x1.f56ba8p-1 +0x1.37fe18p+2 +0x1.190eap+0 +0x1.419f1cp+0 +0x1p+0 +0x1p+0 +0x1.20687ep+8 +0x1.938ecap+4 +0x1.01dd1cp+0 +0x1.bbe888p+7 +0x1.09d802p+0 +0x1.cf3b8p+0 +0x1.ea0d98p-1 +0x1.172472p+6 +0x1p+0 +0x1.61dce4p+1 +0x1.20b4fcp+0 +0x1.00038cp+0 +0x1p+0 +0x1.0822p+0 +0x1.9966ep+2 +0x1.21f47cp+0 +0x1.3a9762p+0 +0x1.8c4e0cp+5 +0x1p+0 +0x1.61878cp+12 +0x1.3ca348p+0 +0x1.289028p+0 +0x1.06e004p+0 +0x1.02b4b4p+0 +0x1.144eeep+1 +0x1.30a14ap-1 +0x1.07652p+0 +0x1p+0 +0x1.2ef288p+0 +0x1.1ba73cp+5 +0x1.48c714p+2 +0x1.25c508p+3 +0x1.b14382p+0 +0x1.b39acep+0 +0x1.0001c2p+0 +0x1.996938p+3 +0x1p+0 +0x1.e49b2ep+7 +0x1.000436p+0 +0x1.34712p+0 +0x1.47089p+0 +0x1.0353b8p-49 +0x1.2a818p+2 +0x1.00058p+0 +0x1.8a5a7ep+51 +0x1p+0 +0x1.8dbf04p+0 +0x1.5004d8p+61 +0x1.9557b2p+1 +0x1.0fa92cp+0 +0x1.16984ep+8 +0x1.72bd7ap+1 +0x1.980f0cp+1 +0x1.ae63fp+14 +0x1p+0 +0x1.085224p+0 +0x1.d8889ap-1 +0x1.1d3ff6p+4 +0x1.02c6ecp+1 +0x1.73eb4ep+2 +0x1.1916fp+4 +0x1.4a04e8p+5 +0x1.134906p+1 +0x1.0002dp+0 +0x1p+0 +0x1.32db7p+0 +0x1.0105b8p+0 +0x1.09f78p+0 +0x1.1d3e78p+4 +0x1.41b184p+0 +0x1.134914p+1 +0x1.410e6ep+1 +0x1.312a4ap-1 +0x1.7308f4p+1 +0x1p+0 +0x1.0afbe8p+0 +0x1p+0 +0x1.00026ap+0 +0x1.2ee012p+0 +0x1.001318p+0 +0x1.af1034p+4 +0x1.687b1cp-24 +0x1.a93ap+2 +0x1.084598p+0 +0x1.37031ap-1 +0x1.c046ep+5 +0x1.79a75ep+2 +0x1.46a9c8p+1 +0x1.000766p+0 +0x1.245d98p+0 +0x1.19287ap+5 +0x1.6a0fbep+0 +0x1p+0 +0x1.011424p+0 +0x1.879f4cp+0 +0x1p+0 +0x1p+0 +0x1.4ca7ecp-51 +0x1.5818c6p+2 +0x1p+0 +0x1.b4c9fap+7 +0x1.b14384p+0 +0x1.082fdp+0 +0x1.085672p+8 +0x1.918f3cp+6 +0x1p+0 +0x1.45623ep+0 +0x1.95515cp+2 +0x1.000068p+0 +0x1.31f33ap-1 +0x1.f9eed8p+0 +0x1.91b218p+6 +0x1.331446p-1 +0x1.000202p+0 +0x1p+0 +0x1.3cdfb8p-1 +0x1p+0 +0x1.08fb58p+7 +0x1.4dde38p+5 +0x1p+0 +0x1.0053a4p+0 +0x1p+0 +0x1.31e138p+7 +0x1p+0 +0x1.01c35cp+0 +0x1.dba85cp+7 +0x1.03682cp+2 +0x1.000108p+0 +0x1.bff348p+55 +0x1.582dbp+1 +0x1.31158p+0 +0x1.760bep+44 +0x1.e43226p+7 +0x1.082008p+0 +0x1.a03e4cp+7 +0x1.00b984p+0 +0x1.20c58ep+1 +0x1.221c1p+0 +0x1.594056p+7 +0x1.aabf58p+2 +0x1p+0 +0x1.b142e4p+0 +0x1.8bf166p+5 +0x1p+0 +0x1.000168p+0 +0x1.06c69cp+0 +0x1.900166p+4 +0x1.621b64p+12 +0x1.b142eep+0 +0x1p+0 +0x1.31c642p-1 +0x1p+0 +0x1.65b9cap+0 +0x1.4adbbep+0 +0x1p+0 +0x1.858ea2p+0 +0x1.076d06p+0 +0x1.000dap+0 +0x1.70cd96p+2 +0x1.347a2p-1 +0x1.73c75cp+2 +0x1p+0 +0x1.180c6ep+8 +0x1p+0 +0x1.1a32dcp+5 +0x1.342abp-1 +0x1.4a08p+5 +0x1.000484p+0 +0x1.e498b4p+7 +0x1.91e072p+0 +0x1p+0 +0x1.9ab2a8p+0 +0x1.0001dp+0 +0x1.6ab22p+0 +0x1.00036p+0 +0x1.00042cp+0 +0x1.0012a2p+0 +0x1.f2b45cp+0 +0x1.31b8fep-1 +0x1.2a3f48p+1 +0x1p+0 +0x1.d8ecc8p+49 +0x1.b143b2p+0 +0x1.4f7516p+0 +0x1.09a35cp+0 +0x1.000ap+0 +0x1.ad259ap+5 +0x1.8d9b38p-18 +0x1.92ef44p+0 +0x1.7407ep+3 +0x1.bcb74cp+7 +0x1.57d22p+0 +0x1.610e16p+0 +0x1.2ff3fap-1 +0x1.00aefcp+0 +0x1.6aaf1cp+0 +0x1.000298p+0 +0x1.10b236p+0 +0x1.2b6a4p+0 +0x1.25c852p+3 +0x1.000354p+0 +0x1p+0 +0x1.4fe4c2p+2 +0x1.8ea358p+6 +0x1.cd77f6p+2 +0x1.0000aap+0 +0x1.8c2a1ep-19 +0x1.000264p+0 +0x1.03001p+0 +0x1.0c772cp+0 +0x1.daea4p+4 +0x1p+0 +0x1.0f2d5ep+0 +0x1p+0 +0x1.1604d6p+0 +0x1.2f7b08p-1 +0x1.0002f4p+0 +0x1p+0 +0x1.91aaf8p+1 +0x1.896624p+0 +0x1.0024c2p+0 +0x1.0fde8cp+1 +0x1.3a7214p+16 +0x1.01ff8p+0 +0x1.02458p+1 +0x1.1d3f4cp+4 +0x1p+0 +0x1.c0d546p+1 +0x1.0ac2d4p+54 +0x1p+0 +0x1p+0 +0x1.75e65p+55 +0x1p+0 +0x1.010256p+0 +0x1.68165p+53 +0x1p+0 +0x1.013c3p+0 +0x1.bc712ep+13 +0x1p+0 +0x1.71d1cp+5 +0x1.49c482p+0 +0x1.00665p+0 +0x1.386324p+1 +0x1.385c4ap-1 +0x1p+0 +0x1.379e5p+0 +0x1.232592p+8 +0x1p+0 +0x1.000338p+0 +0x1p+0 +0x1p+0 +0x1.055404p+0 +0x1.208ef8p+1 +0x1p+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.015d52p+0 +0x1.9ea35cp+1 +0x1.dc7eb4p+18 +0x1p+0 +0x1p+0 +0x1.b3d24ep+7 +0x1.fba328p+8 +0x1.00c7fp+0 +0x1.0d1acep+8 +0x1.779a24p+2 +0x1p+0 +0x1.19499ep+0 +0x1.25ddcep+3 +0x1.78346cp+3 +0x1.428e7ap+49 +0x1.003dp+0 +0x1p+0 +0x1.313dbcp-1 +0x1.6fef7p+1 +0x1p+0 +0x1.2ff116p-1 +0x1.00f598p+0 +0x1.45ab88p+0 +0x1p+0 +0x1.a93a36p+2 +0x1p+0 +0x1.54bb7p+2 +0x1p+0 +0x1.00004cp+0 +0x1.edac12p+0 +0x1.40f4fap+0 +0x1.45c0bcp+0 +0x1.0a2626p+0 +0x1.bfa67ap+51 +0x1.933f18p+0 +0x1p+0 +0x1.3f3fe8p+0 +0x1.006fc8p+0 +0x1.c04aecp+1 +0x1.0afc4p+0 +0x1.9b2f1ep+3 +0x1.11a134p+3 +0x1.0624dep-11 +0x1.eabf94p+0 +0x1.8950d8p+1 +0x1.35eba2p-1 +0x1.11c438p+0 +0x1.02073p+0 +0x1.483096p+0 +0x1.484bf4p+2 +0x1.1b86dcp+0 +0x1.0d3c56p+0 +0x1.0000e4p+0 +0x1.a93b64p+2 +0x1.b8db1cp+1 +0x1.308c0ep-1 +0x1p+0 +0x1.1e84fp+0 +0x1.3fc808p+0 +0x1.19179ap+4 +0x1p+0 +0x1.f1d3a4p+7 +0x1.273d1ep+1 +0x1.000a16p+0 +0x1.42ead6p+0 +0x1.b8c318p+1 +0x1.7226dp+1 +0x1.43af5cp+0 +0x1.450224p+0 +0x1.000234p+0 +0x1.358bc4p-1 +0x1.0000acp+0 +0x1.02ef5cp+0 +0x1.1d16fap+8 +0x1p+0 +0x1.0a9be6p+0 +0x1.2221d2p+8 +0x1.45abbp+0 +0x1p+0 +0x1.b787f6p-12 +0x1.960416p+0 +0x1.0af8b6p+1 +0x1.232048p+64 +0x1.f6b2fp+0 +0x1p+0 +0x1.02fc3ep+0 +0x1.19292ep+5 +0x1.00fdcap+0 +0x1.51ac2p+1 +0x1.020b04p+0 +0x1.3fe772p+1 +0x1p+0 +0x1.3a87dap+0 +0x1.00dbf8p+0 +0x1.dc825cp+1 +0x1.051eap+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.000bp+0 +0x1.004874p+0 +0x1.ed7906p+14 +0x1.ba64fcp+12 +0x1.03e86ap+0 +0x1.5cdd2p+2 +0x1.2fc1c6p-1 +0x1.08a1b8p+0 +0x1p+0 +0x1.4e97bp+62 +0x1.364392p+0 +0x1.000236p+0 +0x1.32f478p-1 +0x1.362732p+4 +0x1.1d3f0ep+4 +0x1.205236p+44 +0x1p+0 +0x1.93afd4p+2 +0x1.2f40ecp-1 +0x1p+0 +0x1.0fe4a4p+1 +0x1.9975e8p+64 +0x1.4a93fap+1 +0x1.259756p+3 +0x1.1e1e64p+8 +0x1.000048p+0 +0x1p+0 +0x1.2f1f74p-1 +0x1.7a124ap+0 +0x1.5e3f8ep+2 +0x1.e58cd8p-1 +0x1.b3857ep+0 +0x1.6f4da4p+0 +0x1p+0 +0x1.44caaep+0 +0x1.6831b2p+0 +0x1.7537bep+1 +0x1p+0 +0x1.003054p+0 +0x1.4934p+2 +0x1.00005p+0 +0x1.000098p+0 +0x1.091ebcp+0 +0x1.465e2cp+9 +0x1.00017p+0 +0x1p+0 +0x1.31ab6cp-1 +0x1p+0 +0x1p+0 +0x1.f2386ep+57 +0x1.147d32p+3 +0x1.e480eep+7 +0x1.03b3b2p+0 +0x1.02035cp+0 +0x1.11d934p+3 +0x1.5776d8p+53 +0x1.2c73p+0 +0x1.63073ap+9 +0x1.2041aep+8 +0x1p+0 +0x1.00594cp+0 +0x1.3ee136p+0 +0x1p+0 +0x1.09548p+1 +0x1.05f1f4p-11 +0x1.0002a4p+0 +0x1.16ac18p+3 +0x1.b8531ep+7 +0x1.0fd73cp+1 +0x1.011f64p+0 +0x1.0ff65ep+0 +0x1.b1ecfp+4 +0x1.8f0888p+0 +0x1.f95e02p-1 +0x1p+0 +0x1.9000cep+0 +0x1.e9b4fep+52 +0x1.009838p+0 +0x1.5ef598p+1 +0x1.a6ad24p+7 +0x1.4913c6p+0 +0x1p+0 +0x1.3d7314p+0 +0x1p+0 +0x1.a591c8p+0 +0x1.017966p-13 +0x1.9825cep+3 +0x1.192898p+5 +0x1.cddc2p+42 +0x1p+0 +0x1p+0 +0x1.0dde0ap+8 +0x1.0e56e8p+1 +0x1.a6fbcep+3 +0x1.b92cc8p+7 +0x1.d57268p+0 +0x1.b8f132p+1 +0x1.4c257ap+0 +0x1.00000ap+0 +0x1.38635p+1 +0x1.1cc07ap+45 +0x1.71ff7ep+1 +0x1.ef8b44p+0 +0x1.6cf93ep+51 +0x1p+0 +0x1p+0 +0x1.11f506p+8 +0x1.77844ap+0 +0x1p+0 +0x1.bdd978p+7 +0x1.00006ap+0 +0x1.0e2602p+1 +0x1.045486p+0 +0x1.0002c8p+0 +0x1.4d67c8p+1 +0x1.e5b314p-1 +0x1.6a374cp+0 +0x1.99db52p+0 +0x1.f9eeap-1 +0x1.bf7f2cp+5 +0x1.da61b4p+4 +0x1.488ff4p+0 +0x1.003p+0 +0x1p+0 +0x1.02ffcp+0 +0x1.d09a76p+1 +0x1.225a2cp+0 +0x1.0637f2p+0 +0x1.b3893p+0 +0x1.00005p+0 +0x1.bcc5ccp+59 +0x1p+0 +0x1.01f38ep+0 +0x1.a720ecp+7 +0x1.05390cp+1 +0x1.bf3ffep+2 +0x1.6b9574p+0 +0x1.388f0cp+11 +0x1.29a6aap+0 +0x1.31e90ep-1 +0x1p+0 +0x1p+0 +0x1.2f1498p-1 +0x1.0000eep+0 +0x1p+0 +0x1.3190e2p-1 +0x1p+0 +0x1.7703c2p+1 +0x1.0ffd1cp-24 +0x1p+0 +0x1p+0 +0x1.f5c25p-24 +0x1.7407c8p+3 +0x1.45abd2p+0 +0x1.1304ecp+0 +0x1p+0 +0x1.0002f4p+0 +0x1.cd1cdap+1 +0x1.6ef2fp+15 +0x1.0002cap+0 +0x1.dc83cp+1 +0x1.0000ccp+0 +0x1.0093cep+0 +0x1.0066bap+0 +0x1.002dp+0 +0x1.0e6c8p+0 +0x1.7be50ap+16 +0x1.00b348p+0 +0x1.089b3p+16 +0x1.98b07cp+2 +0x1.3389b2p+0 +0x1.a41e1ep+7 +0x1.7195dep+5 +0x1.08b45cp+0 +0x1.29c1eap+56 +0x1.740b96p+3 +0x1.71fef4p+1 +0x1.07ba2cp+0 +0x1.5ee4a2p+1 +0x1p+0 +0x1.f9599cp-1 +0x1.b9154ep+14 +0x1.f8911cp+0 +0x1p+0 +0x1.373e1p+4 +0x1p+0 +0x1.00146cp+0 +0x1.4a05acp+5 +0x1.1928aap+5 +0x1.060cecp+0 +0x1.773996p+0 +0x1.af11c2p-11 +0x1p+0 +0x1.3f7d98p+7 +0x1.1361ep+52 +0x1.f9f064p+0 +0x1p+0 +0x1.a9b908p+7 +0x1.c55b46p+0 +0x1p+0 +0x1.682ec4p+46 +0x1.00003p+0 +0x1p+0 +0x1.2fdba4p-1 +0x1.9beca4p+0 +0x1.0004a8p+0 +0x1.2fb262p-1 +0x1.8bf118p+5 +0x1.0001aap+0 +0x1.31a74p-1 +0x1.25db7ep+3 +0x1p+0 +0x1.197a7cp+1 +0x1p+0 +0x1.2d315cp+0 +0x1.0024f8p+0 +0x1.2a7f04p+1 +0x1p+0 +0x1p+0 +0x1.01211cp+0 +0x1.f11d7ep-1 +0x1.d4f718p+2 +0x1.b233dep+0 +0x1.6d6b1cp+5 +0x1.7724fep+15 +0x1p+0 +0x1.a86fbap+7 +0x1p+0 +0x1p+0 +0x1.4aa984p+49 +0x1.000054p+0 +0x1p+0 +0x1.33d3f4p-1 +0x1p+0 +0x1.1b0cd8p+6 +0x1.000958p+0 +0x1p+0 +0x1.49ef4ep+4 +0x1.7cc648p+1 +0x1p+0 +0x1.23470ap+0 +0x1.3223a4p+0 +0x1p+0 +0x1.4d6912p+0 +0x1.51e25p+0 +0x1p+0 +0x1.34962cp+0 +0x1.0fdd0cp+1 +0x1.0001d8p+0 +0x1.38637cp+1 +0x1.9de754p+3 +0x1.8e020cp+5 +0x1.ad9158p+4 +0x1.094afap+0 +0x1.ea949ep+52 +0x1.ec6aa4p+1 +0x1.1a5e6cp+4 +0x1.07ed56p+0 +0x1.711ffp+0 +0x1p+0 +0x1.062702p+8 +0x1.233ffap+18 +0x1.10c252p+7 +0x1.002a14p+0 +0x1.98f468p+0 +0x1.833884p+0 +0x1p+0 +0x1.9179acp+4 +0x1.d944c4p-1 +0x1.00bc84p+0 +0x1p+0 +0x1.46c0aep+0 +0x1.ad157p+4 +0x1.13492cp+1 +0x1.4b0ceep+0 +0x1.000246p+0 +0x1p+0 +0x1p+0 +0x1.176dbep+0 +0x1.52e1b8p+0 +0x1.050ab8p+0 +0x1p+0 +0x1.ef2d1p-84 +0x1.d0999p+1 +0x1.00b594p+0 +0x1.19ae42p+54 +0x1p+0 +0x1p+0 +0x1.bf05cap-56 +0x1.fba48p+0 +0x1.19a5ecp+4 +0x1.000518p+0 +0x1.cd1cc6p+1 +0x1.0008d2p+0 +0x1.00291cp+0 +0x1.01ae5cp+0 +0x1.18229cp+0 +0x1.0000d6p+0 +0x1.00017p+0 +0x1.1083fep-25 +0x1p+0 +0x1.7d379ap+9 +0x1.2f5e0ep-1 +0x1.365e38p+0 +0x1.000912p+0 +0x1.8p+3 +0x1.13e39cp+1 +0x1p+0 +0x1.0ba4aep+0 +0x1.9deafcp+3 +0x1.2fead4p-1 +0x1p+0 +0x1.11a49cp+16 +0x1.968f3ap+62 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.b85f8ep+6 +0x1.141a8ep+8 +0x1.0564ecp+0 +0x1.c6b168p+2 +0x1.05b106p+8 +0x1.000298p+0 +0x1p+0 +0x1.0001fap+0 +0x1.000164p+0 +0x1.31a84p+0 +0x1p+0 +0x1.403f5cp+5 +0x1.ea62dep-1 +0x1p+0 +0x1.131eeep+1 +0x1.3625d8p+4 +0x1.066f0cp+0 +0x1.e7a64p+7 +0x1.047e06p+0 +0x1p+0 +0x1.32aad8p-1 +0x1p+0 +0x1.000118p+0 +0x1.1b0d0cp+6 +0x1.a11c9p+0 +0x1.a2588ep+54 +0x1p+0 +0x1p+0 +0x1.09ffa8p+8 +0x1.bb2a7cp+5 +0x1p+0 +0x1.a1f9p+0 +0x1p+0 +0x1.f3d4b4p-1 +0x1.4dc16ap+5 +0x1.3b2274p+4 +0x1.457d56p+0 +0x1.01cfcp+0 +0x1p+0 +0x1.a93982p+2 +0x1.04054cp+0 +0x1.0080fap+0 +0x1.dc801cp+0 +0x1.0b77bep+1 +0x1.013094p+0 +0x1.0001e8p+0 +0x1.02e2ep+0 +0x1p+0 +0x1.000094p+0 +0x1.fb4382p-1 +0x1.00019p+0 +0x1.0007b8p+0 +0x1.127e1ap+8 +0x1p+0 +0x1p+0 +0x1.0e25cp+1 +0x1.2f4b78p+1 +0x1.015b26p+8 +0x1.0eb20cp+0 +0x1.081558p+7 +0x1.42ff58p+0 +0x1.1c5d1p+6 +0x1.887b42p+14 +0x1.02904p+1 +0x1.7ce25ap+1 +0x1.f96d6p-1 +0x1.5c64f4p+0 +0x1.0005c8p+0 +0x1.78e9d4p-33 +0x1.da628ep+4 +0x1.003634p+0 +0x1.3184d6p-1 +0x1.bd96f4p+6 +0x1.ba5156p+12 +0x1.8df4acp+0 +0x1p+0 +0x1.a3b92p+7 +0x1.3e4f26p+11 +0x1.543868p+4 +0x1.eabfe6p+0 +0x1.0073e6p+0 +0x1.0f2bdep+8 +0x1.3e3c3ep+13 +0x1.3884dp+6 +0x1p+0 +0x1.690fecp+0 +0x1.dfa074p-1 +0x1.000638p+0 +0x1.4a93acp+1 +0x1.8dd68ap+0 +0x1.0048dcp+0 +0x1.002f8ep+0 +0x1.00015p+0 +0x1.45abbcp+0 +0x1.f3f306p-1 +0x1.1b639p+0 +0x1.ef2d1p-84 +0x1.abd54p+0 +0x1.36f8aap+2 +0x1.e317cep-1 +0x1.36f9cap+2 +0x1.530ddp+0 +0x1.2f74bp+0 +0x1.3c4448p+0 +0x1.0718dcp+0 +0x1.0001bp+0 +0x1p+0 +0x1.1d3ebap+4 +0x1.42e55ap+0 +0x1.3ace3ep+50 +0x1.5b5108p+1 +0x1.13527cp+3 +0x1.0002ap+0 +0x1.6f3ebcp+2 +0x1.b0af06p+7 +0x1.016c28p+0 +0x1p+0 +0x1.4542a6p+0 +0x1p+0 +0x1.6120cep+55 +0x1.02a2p+0 +0x1.0714d6p+15 +0x1.21293ep+0 +0x1.023b38p+0 +0x1.000d12p+0 +0x1.4d9f06p+15 +0x1p+0 +0x1.dd3bb4p-1 +0x1p+0 +0x1.00029ep+0 +0x1.eabfa8p+0 +0x1.362a2ep+0 +0x1.000a5ap+48 +0x1.dfbac8p+4 +0x1.259742p+3 +0x1.0000acp+0 +0x1.00cc58p+1 +0x1.49155ep+0 +0x1p+0 +0x1p+0 +0x1.30d9ap-1 +0x1.02fc6p+0 +0x1.3cac76p+0 +0x1.b8c472p+1 +0x1.8bf1bcp+5 +0x1.2cd56p+0 +0x1.1d37a6p+0 +0x1p+0 +0x1.6b03dep+2 +0x1p+0 +0x1.4bc794p+0 +0x1.dc56e6p+1 +0x1.b1432ap+0 +0x1.5a6574p+2 +0x1.a21356p+4 +0x1.6269ep+64 +0x1.0000dp+0 +0x1.10766cp+7 +0x1.0096e6p+0 +0x1.adf486p+0 +0x1.309de8p-1 +0x1.085fb4p+0 +0x1.3afb0ep+0 +0x1.0002a2p+0 +0x1.085208p+0 +0x1.213daap+8 +0x1.000a5ap+0 +0x1.503f0cp+0 +0x1.000428p+0 +0x1.7ee7d4p+16 +0x1.8e5064p+61 +0x1.3f6054p+7 +0x1.3a78a6p+0 +0x1.0a197ap+0 +0x1.016ea8p+0 +0x1.0bbb28p+8 +0x1.000014p+0 +0x1.0010d4p+0 +0x1.5983f8p-26 +0x1.2dddep+0 +0x1.3f4af4p+0 +0x1.15f078p+0 +0x1p+0 +0x1.8ffae8p-20 +0x1.0000a4p+0 +0x1.4f32a8p+0 +0x1.8bf1f2p+5 +0x1.0000fp+0 +0x1.1e9612p+0 +0x1.000512p+0 +0x1.000184p+0 +0x1p+0 +0x1.4a071ap+5 +0x1.316586p-1 +0x1.026922p+0 +0x1.9323dcp+3 +0x1.0530acp+0 +0x1.18125p+0 +0x1.e39054p-1 +0x1.3ad2p+11 +0x1.005ad4p+0 +0x1.000208p+0 +0x1.b85f4cp+6 +0x1.002d02p+0 +0x1p+0 +0x1p+0 +0x1.da3556p+8 +0x1p+0 +0x1.02c298p+0 +0x1.11a35ep+3 +0x1.4a0a02p+1 +0x1.02741p+2 +0x1p+0 +0x1.2749a2p+0 +0x1.45abacp+0 +0x1p+0 +0x1.3920bcp+13 +0x1.000054p+0 +0x1.4ceda8p+0 +0x1p+0 +0x1.390b2p+7 +0x1.66764ep+7 +0x1p+0 +0x1.e11478p+7 +0x1.0f264cp+0 +0x1p+0 +0x1.2f7ec2p-1 +0x1p+0 +0x1.0ac6fcp+8 +0x1.3ca396p+0 +0x1.9ad138p+5 +0x1.e5b8acp+7 +0x1.0000b8p+0 +0x1.f14fd6p-11 +0x1.00009p+0 +0x1.01571ep+0 +0x1.17c726p+0 +0x1.00019p+0 +0x1.362514p+4 +0x1.004efp+0 +0x1.003f5cp+0 +0x1.43c41cp+0 +0x1p+0 +0x1.3e6c78p+12 +0x1.000c5cp+0 +0x1.3e795cp+6 +0x1.b825a6p+7 +0x1.ace64p+1 +0x1.36f8dp+2 +0x1.587484p+0 +0x1.94967ap+14 +0x1.af98e6p+17 +0x1.6488b6p+0 +0x1.1d3e98p+4 +0x1.009978p+0 +0x1.377d08p+0 +0x1.2fdc0ep+0 +0x1.045768p+0 +0x1.f9ef1ap+0 +0x1.003e4ap+0 +0x1.3e825p+9 +0x1.38da1p+0 +0x1p+0 +0x1p+0 +0x1.00d4a2p+0 +0x1.3e6838p+12 +0x1.0c24a8p+0 +0x1.00012cp+0 +0x1p+0 +0x1p+0 +0x1.001188p+0 +0x1.30be32p-1 +0x1.d20bfcp+0 +0x1.000314p+0 +0x1.467b6ap+1 +0x1.b14436p+0 +0x1.be3eccp+7 +0x1.035cc4p+0 +0x1p+0 +0x1.358ca4p+7 +0x1p+0 +0x1.052ef8p+8 +0x1.08ac7ep+0 +0x1p+0 +0x1.ef2d1p-84 +0x1p+0 +0x1.388d04p+56 +0x1.003836p+0 +0x1.65f1ecp+0 +0x1.5b141p+47 +0x1.fadea2p+0 +0x1.d1e872p+59 +0x1p+0 +0x1.acd704p+0 +0x1.d46c0ap-34 +0x1p+0 +0x1.015a84p+0 +0x1p+0 +0x1p+0 +0x1.02161ep+0 +0x1p+0 +0x1.02283cp+0 +0x1.2fb3d8p+2 +0x1.3b1854p+4 +0x1.9a69d8p+48 +0x1.f9ef08p+0 +0x1.7e849cp+3 +0x1.eabffp+0 +0x1.054884p+0 +0x1.9faadcp+7 +0x1.01dbfep+0 +0x1.a9a6aap+1 +0x1p+0 +0x1.ae82b2p+5 +0x1.423f6p-20 +0x1.42e57p+0 +0x1.41466p+2 +0x1p+0 +0x1.49ef3ep+4 +0x1.f264ccp-1 +0x1.0084dap+0 +0x1.07aabap+0 +0x1p+0 +0x1p+0 +0x1.009f06p+0 +0x1.008b44p+0 +0x1.3e2b8cp+5 +0x1.000324p+0 +0x1.0c4158p+0 +0x1.32644cp-1 +0x1.1929dp+5 +0x1.8ac548p+4 +0x1.01b036p+0 +0x1.7e3a98p+5 +0x1.34bc8p-1 +0x1.b14336p+0 +0x1.0cb4e2p+0 +0x1.b931bp+12 +0x1.2358fp+1 +0x1.f23b6cp+51 +0x1p+0 +0x1.16fa4cp+4 +0x1.0baf84p+0 +0x1.a856a8p+5 +0x1.066f6p+0 +0x1p+0 +0x1p+0 +0x1.20b7bp+0 +0x1.3fe392p+0 +0x1.388ae2p+0 +0x1.00035cp+0 +0x1.3adcf2p+12 +0x1.30393p-1 +0x1.e17338p+1 +0x1.aa6b1ap+7 +0x1.0000b6p+0 +0x1p+0 +0x1.345b46p-1 +0x1.74921cp+8 +0x1.b29bd6p+7 +0x1p+0 +0x1.77c706p+2 +0x1.c4d8ecp+65 +0x1.8d98bp+0 +0x1.8b8002p-6 +0x1.3881ecp+15 +0x1.010cd4p+0 +0x1.c8fdaap+7 +0x1.72b958p+2 +0x1.965c1cp+3 +0x1p+0 +0x1p+0 +0x1.2a515cp+0 +0x1.cd1e9p+1 +0x1.006674p+0 +0x1p+0 +0x1.66e4cp+2 +0x1.13aa9ep+8 +0x1p+0 +0x1.13101cp+1 +0x1.0004ecp+0 +0x1p+0 +0x1.c51ad2p+7 +0x1p+0 +0x1.2a0908p+8 +0x1.000182p+0 +0x1.ac40fcp+2 +0x1.30f308p-1 +0x1p+0 +0x1p+0 +0x1.1ceeaep+7 +0x1.0000a4p+0 +0x1.f407acp+7 +0x1.36f98ep+2 +0x1.1c60a8p+10 +0x1.617238p+12 +0x1p+0 +0x1.48fb3ap+0 +0x1p+0 +0x1.000d5p+0 +0x1.33833cp-1 +0x1p+0 +0x1.41be46p+51 +0x1.238e58p+0 +0x1.00266cp+0 +0x1.9fc4bp+58 +0x1.000618p+0 +0x1.88a592p+48 +0x1.0001c8p+0 +0x1p+0 +0x1.51c89cp+0 +0x1.317344p+7 +0x1.308e8ap-1 +0x1p+0 +0x1.0387e6p+0 +0x1.454a32p+0 +0x1.74a828p+7 +0x1.f57daep-8 +0x1.287a44p+0 +0x1.b84b08p+2 +0x1.27fc5ap+0 +0x1p+0 +0x1.0e423p+1 +0x1p+0 +0x1.079ddp+0 +0x1.f49a74p+14 +0x1.0f47bp+0 +0x1.9000bap+4 +0x1.000244p+0 +0x1p+0 +0x1.4a38ep+0 +0x1.36f8bp+2 +0x1.6bf43cp+0 +0x1.a3a9f4p+1 +0x1.001d24p+0 +0x1.106f8ap+0 +0x1.0003ep+0 +0x1.00025p+0 +0x1.89be24p+0 +0x1.3d65b4p+6 +0x1.44b46ep+0 +0x1.5caecap+1 +0x1.00327cp+2 +0x1.54bbep+2 +0x1.2597aap+3 +0x1.059a5ap-11 +0x1.43884ep+2 +0x1p+0 +0x1.c04628p+9 +0x1p+0 +0x1.c1b9bp-49 +0x1.73ed24p+2 +0x1.000598p+0 +0x1.44105p+0 +0x1.b7c192p+5 +0x1.312178p-1 +0x1p+0 +0x1.f9efc2p+0 +0x1.014252p-51 +0x1.017a66p+0 +0x1.1f3de4p+8 +0x1.02b182p+0 +0x1.257372p+0 +0x1.93944ap+48 +0x1.e2305cp+1 +0x1.3e0ee6p-8 +0x1.00011ep+0 +0x1.a31448p+5 +0x1.8c9ca6p+48 +0x1.194216p+0 +0x1p+0 +0x1.5cc2ap+2 +0x1p+0 +0x1.506fe6p+49 +0x1.2588fp+0 +0x1.26ffaep+1 +0x1p+0 +0x1p+0 +0x1.4ff01ap+66 +0x1.00009cp+0 +0x1.000f38p+0 +0x1.00e4d6p+0 +0x1.001d5cp+0 +0x1.02b29cp+50 +0x1.358d1p+7 +0x1.3eff02p+8 +0x1.900058p+4 +0x1.3ae0bcp+13 +0x1.034d3ep+0 +0x1.b9346p+5 +0x1p+0 +0x1.71b9cp+0 +0x1.2f7456p+0 +0x1.47ccf2p+0 +0x1.498974p+0 +0x1.046cb8p+0 +0x1.458c62p+1 +0x1.a93bf4p+2 +0x1.0f113ap+8 +0x1p+0 +0x1.04ae52p+0 +0x1.7c2a68p+0 +0x1.3b24fep+9 +0x1.04ef5p-11 +0x1.11a28ap+3 +0x1p+0 +0x1.056b24p+1 +0x1.0000e4p+0 +0x1.2c01cap+0 +0x1p+0 +0x1p+0 +0x1.c61f72p+15 +0x1p+0 +0x1.02fc2ap+0 +0x1p+0 +0x1.093acep+0 +0x1.5643eap+53 +0x1p+0 +0x1.0087a8p-47 +0x1.2f5868p+0 +0x1.38e848p+10 +0x1.e5c11cp+7 +0x1p+0 +0x1.129e64p+8 +0x1.5c6c98p+1 +0x1.00015ap+0 +0x1.b745e2p+48 +0x1.1bfb08p+0 +0x1.a92b86p+5 +0x1.7c2a54p+0 +0x1p+0 +0x1.3334b6p+0 +0x1.b5c006p+5 +0x1p+0 +0x1.bec8c6p+16 +0x1p+0 +0x1.dc5496p-1 +0x1.0a88ep+0 +0x1.f95e78p+1 +0x1p+0 +0x1.0037b4p+0 +0x1.1eaf62p+8 +0x1p+0 +0x1.43bfcp+5 +0x1.3af986p+15 +0x1.03dbf4p+0 +0x1.b1b5a8p-12 +0x1p+0 +0x1.90007ep+0 +0x1.0003b4p+0 +0x1p+0 +0x1.f8f086p-12 +0x1.dd7178p+4 +0x1.00207p+0 +0x1.118916p+0 +0x1p+0 +0x1.a298c4p+7 +0x1.006a6cp+0 +0x1.1dfa5p+0 +0x1.327c54p-1 +0x1p+0 +0x1.f7e922p-1 +0x1.3e365ap+13 +0x1p+0 +0x1.04318ap+0 +0x1.52381cp+0 +0x1.60a298p-1 +0x1.000076p+0 +0x1.977c42p+14 +0x1.a8cb5cp+7 +0x1.1b0d18p+6 +0x1.29cedp+0 +0x1.15a46ap+1 +0x1p+0 +0x1.639aaep-12 +0x1.004a8cp+0 +0x1.0ab1bcp+1 +0x1.b85ecp+6 +0x1.36279ep+4 +0x1.22ae32p+8 +0x1.615228p+1 +0x1.000898p+0 +0x1.001968p+0 +0x1p+0 +0x1.2f791ap-1 +0x1.00001cp+0 +0x1p+0 +0x1.0627aep+0 +0x1.0e38d4p+5 +0x1.490936p+57 +0x1p+0 +0x1.000358p+0 +0x1.57b4bp+7 +0x1.4b4766p+0 +0x1.26da06p+0 +0x1.cd1ec6p+1 +0x1.38ee44p+15 +0x1.c0ffbcp+15 +0x1.01caacp+0 +0x1.e2a336p-1 +0x1p+0 +0x1.0c69f4p+2 +0x1.50a08cp+55 +0x1.10d0b8p+0 +0x1.1eed7p+1 +0x1.b14428p+0 +0x1.004f94p+0 +0x1.31c2acp-1 +0x1p+0 +0x1p+0 +0x1p+0 +0x1.b47948p+0 +0x1.78d5eap+51 +0x1.01316ep+0 +0x1.4a937cp+0 +0x1.1ba54ap+1 +0x1.6ba304p+0 +0x1.3591c6p-1 +0x1p+0 +0x1.08a91ap+8 +0x1.19ade8p+0 +0x1.01535ap+0 +0x1.317184p-1 +0x1.36f9a4p+2 +0x1.7f08a8p+0 +0x1p+0 +0x1.00013p+0 +0x1.ff478p-1 +0x1.27e0d2p+0 +0x1.0ecbacp+7 +0x1.8dd6acp+0 +0x1.100ecep+0 +0x1.25edd8p+8 +0x1.198a9p+0 +0x1p+0 +0x1.5c6cc2p+1 +0x1.016276p+0 +0x1.329f88p-1 +0x1.9e35ap+0 +0x1.004612p+0 +0x1.fb9b82p-1 +0x1.000d84p+0 +0x1.43e8a8p+0 +0x1.57e548p+1 +0x1.057f18p+0 +0x1.a6dfbep+7 +0x1p+0 +0x1.341ce2p-1 +0x1p+0 +0x1p+0 +0x1.fcbce2p+56 +0x1.004454p+0 +0x1.909ec2p-6 +0x1p+0 +0x1.58649p+9 +0x1.4b96e6p+49 +0x1.3ca38cp+0 +0x1.00033ep+0 +0x1.0099f4p+0 +0x1p+0 +0x1.21869p+8 +0x1p+0 +0x1.65b514p+16 +0x1p+0 +0x1.740878p+3 +0x1.a4cea2p+43 +0x1.b143fep+0 +0x1.25ed36p+4 +0x1.003d7ap+0 +0x1.0d82d4p+1 +0x1.3389ap-1 +0x1p+0 +0x1.11a222p+3 +0x1.983f38p+3 +0x1.000162p+0 +0x1.46b986p+0 +0x1.3e3e9cp+8 +0x1.58747p+0 +0x1.45632cp+0 +0x1.3f738cp+3 +0x1.00d0bp+0 +0x1.5dca1p+0 +0x1p+0 +0x1.43257p+0 +0x1.0b38fap+0 +0x1.1ca4aep+8 +0x1p+0 +0x1p+0 +0x1.319a2p-1 +0x1.2d4fd4p+5 +0x1.02f006p+0 +0x1.e0c05ap+4 +0x1.98f464p+0 +0x1.05db3ap+8 +0x1.a2bd9ep+2 +0x1.a05a58p+0 +0x1.8bf254p+5 +0x1.3eb04cp+4 +0x1.3140a6p-1 +0x1.011d98p+0 +0x1p+0 +0x1.000ac8p+0 +0x1.3b2774p+10 +0x1.44d29p+0 +0x1p+0 +0x1.009f9ep+0 +0x1.0a8702p+2 +0x1.1349bep+1 +0x1.a585b4p+7 +0x1.00f23cp+0 +0x1.338168p+0 +0x1p+0 +0x1.3e7816p+14 +0x1.0e9d14p+0 +0x1.8f53ccp+1 +0x1.28c922p+0 +0x1.6bb30ep+15 +0x1.b58932p+14 +0x1.1c682p+0 +0x1.00846p+0 +0x1.00240cp+0 +0x1.000674p+0 +0x1.2c71ep+3 +0x1.750298p+67 +0x1.364684p+0 +0x1.134676p+16 +0x1.47a244p+0 +0x1p+0 +0x1.dee22ep-1 +0x1.3e8204p+9 +0x1.00007p+0 +0x1.31f1e6p-1 +0x1p+0 +0x1.a187f8p+7 +0x1.0097e4p+0 +0x1.08e1b2p+0 +0x1.0e3e7ap+0 +0x1.0006fap+0 +0x1p+0 +0x1.358ca6p+7 +0x1.83bcacp+3 +0x1.4603f4p+0 +0x1.3093c8p+0 +0x1.5c6cap+1 +0x1.1f5efcp+0 +0x1.6ba3e8p+0 +0x1.cba7b2p+7 +0x1.015e1ep+0 +0x1.b85f58p+6 +0x1.dc835ep+1 +0x1.000598p+0 +0x1.f9551ap-1 +0x1p+0 +0x1p+0 +0x1.0a67fp+0 +0x1.1bdf58p+0 +0x1.f75026p-1 +0x1.5e3b5p+1 +0x1.3f9b72p+0 +0x1.8ff798p-51 +0x1.0115bap+0 +0x1.4e13fcp+0 +0x1.6d6c54p+5 +0x1.0e7538p+0 +0x1.dcf5d8p-12 +0x1.134aa6p+1 +0x1.b7cc8p+12 +0x1.3e46dap+12 +0x1p+0 +0x1.3fb2fep+0 +0x1p+0 +0x1p+0 +0x1.0f8834p+0 +0x1p+0 +0x1.2f8fc8p-1 +0x1.0032aap+0 +0x1.0134d4p+0 +0x1.0006ecp+0 +0x1.36f9b8p+2 +0x1.d32d7p+43 +0x1.65f516p+1 +0x1.a71662p+5 +0x1.02731cp+2 +0x1.00002cp+0 +0x1.090ap+0 +0x1.8ce46ep+6 +0x1.0001bp+0 +0x1.003c82p+0 +0x1.a2cb78p+5 +0x1.1b3cc6p+0 +0x1p+0 +0x1.000698p+0 +0x1p+0 +0x1p+0 +0x1.0a01d2p+50 +0x1.000b52p+0 +0x1.63092ep+0 +0x1.0011fcp+0 +0x1.684b74p+2 +0x1.782834p+49 +0x1.213286p+0 +0x1.2b13b6p+9 +0x1.383ep+0 +0x1.f91f5cp+2 +0x1.bf1f3cp+7 +0x1.3e44f4p+7 +0x1p+0 +0x1.4637a4p+0 +0x1.3e8c48p+12 +0x1.192a3cp+8 +0x1.0008c2p+0 +0x1p+0 +0x1.01a4b6p+8 +0x1.0002d8p+0 +0x1.001054p-6 +0x1p+0 +0x1.275d2cp+0 +0x1.320582p-1 +0x1.02643ep+0 +0x1.aa4074p+5 +0x1.02528cp+0 +0x1.0adc1p+7 +0x1.e25f42p-1 +0x1p+0 +0x1.0076ap+0 +0x1.0008acp+0 +0x1.783ba4p+3 +0x1.01af66p+0 +0x1.192eep+0 +0x1.132ea6p+7 +0x1.a93964p+2 +0x1.9bc85p+14 +0x1.1e3f46p+8 +0x1.1d8db6p+13 +0x1.0007cap+0 +0x1.2fa568p-1 +0x1.3e8fd4p+12 +0x1.2f5bf6p-1 +0x1.a0994cp+14 +0x1.7ed6b2p+0 +0x1.0f2b1ap+0 +0x1.4ab6e6p+1 +0x1.04c838p+8 +0x1.000034p+0 +0x1p+0 +0x1.eadcd6p-1 +0x1.00008p+0 +0x1.12103cp-1 +0x1p+0 +0x1p+0 +0x1.2f93bp-1 +0x1.7b4b16p+5 +0x1.38fe8cp+6 +0x1p+0 +0x1.36f96cp+2 +0x1.716462p+39 +0x1.000048p+0 +0x1.7c680ep+4 +0x1p+0 +0x1.28cbfap+0 +0x1.a416eap+41 +0x1p+0 +0x1.57e51p+1 +0x1.0004f4p+0 +0x1p+0 +0x1.3167b6p-1 +0x1.984032p+3 +0x1.04f21ep+0 +0x1p+0 +0x1.73ed4p+2 +0x1.0f4eb8p+8 +0x1p+0 +0x1.2df9p+5 +0x1.54bbf8p+2 +0x1.0bf9a4p+0 +0x1.a91d34p+63 +0x1.130ed8p+0 +0x1p+0 +0x1.00036ap+0 +0x1.3ae7aep+8 +0x1.16524ap+8 +0x1.9f774ap+0 +0x1.ba601cp+2 +0x1.bb2f0cp+12 +0x1.a93bd4p+2 +0x1.32e318p+0 +0x1.0ab44ap+0 +0x1p+0 +0x1.2f871ep-1 +0x1p+0 +0x1.a78356p+7 +0x1.001e8cp+0 +0x1.4a08dap+5 +0x1.069e1cp+0 +0x1.e3e184p+1 +0x1.f60012p+18 +0x1p+0 +0x1.b8600ep+6 +0x1.300bc6p-1 +0x1.76f83cp+6 +0x1.16f978p+0 +0x1.0003a4p+0 +0x1.0b4f22p+7 +0x1.37409cp+0 +0x1p+0 +0x1.3e95dp+12 +0x1.00098p+0 +0x1.004038p+0 +0x1.301bfep-1 +0x1p+0 +0x1.9c872ep+0 +0x1.378344p+16 +0x1.18c55cp+0 +0x1.274a0ep-20 +0x1.2811b2p+0 +0x1p+0 +0x1.ba668cp+12 +0x1.7f2c8ap+13 +0x1.0f72fcp+8 +0x1.6308a6p+0 +0x1.b0cac6p+13 +0x1.4837p+0 +0x1p+0 +0x1.40bd6cp+0 +0x1p+0 +0x1.39133p+12 +0x1.c62f4cp+46 +0x1.0004bcp+0 +0x1.12257ap+8 +0x1p+0 +0x1.85645cp+9 +0x1.4cb85ep+0 +0x1p+0 +0x1.a234a8p-1 +0x1p+0 +0x1p+0 +0x1.3cf408p-27 +0x1.0e263ep+1 +0x1.00026p+0 +0x1p+0 +0x1p+0 +0x1.332f2cp-1 +0x1.04bb28p+0 +0x1.4a67cap+0 +0x1.0003dcp+0 +0x1p+0 +0x1.3482d4p-1 +0x1.134a04p+1 +0x1p+0 +0x1.9000ecp+4 +0x1p+0 +0x1.2f4e26p-1 +0x1.0395dp+9 +0x1.38dbb4p+11 +0x1p+0 +0x1.049432p+0 +0x1.1a9a96p+8 +0x1.54bcd2p+2 +0x1.14487cp+0 +0x1.020458p+0 +0x1.000b9p+0 +0x1.32254cp-1 +0x1.73ed2ep+2 +0x1p+0 +0x1.3d8be4p+0 +0x1.3e96d4p+15 +0x1.ffa44cp-1 +0x1.11a334p+3 +0x1.08317p+0 +0x1.000238p+0 +0x1.3e498p+9 +0x1.3389eap-1 +0x1.36f9ccp+2 +0x1.0bbe0ap+0 +0x1.0b53f4p+8 +0x1p+0 +0x1.0e42d2p+0 +0x1.d22332p+18 +0x1p+0 +0x1.05197ep+0 +0x1.205a74p+1 +0x1p+0 +0x1.0086dp+0 +0x1p+0 +0x1.296a6cp+0 +0x1.7ced1p+2 +0x1p+0 +0x1p+0 +0x1.0053eep+0 +0x1.09c5dcp+0 +0x1p+0 +0x1.a07194p+9 +0x1.0a151ap+0 +0x1.01e6ccp+0 +0x1.ef2d1p-84 +0x1.8eb89cp+3 +0x1.15dbb6p+0 +0x1.00307ap+0 +0x1.03571ep+0 +0x1.f5292ep-1 +0x1.59f064p+0 +0x1.0e26a8p+1 +0x1.6d6ab4p+5 +0x1.7ad0fcp+6 +0x1.40fc28p+0 +0x1.c6b9p+14 +0x1.071bfcp+0 +0x1.b0cb28p+7 +0x1.1614b2p+1 +0x1.4bdc7ep+0 +0x1.358db8p+7 +0x1.405dp+3 +0x1.0461d4p+0 +0x1p+0 +0x1.a8b5b2p+7 +0x1.130dbap+7 +0x1.259792p+3 +0x1.2fcf92p-1 +0x1.0092d2p+0 +0x1.0fea96p+0 +0x1.000024p+0 +0x1.a0abccp+5 +0x1.3b1076p+0 +0x1.192914p+5 +0x1.85f5dap-9 +0x1.0b2ae8p+0 +0x1.dc84ap+1 +0x1.2121acp+8 +0x1.b144fep+0 +0x1.131a68p+1 +0x1.28131p+0 +0x1.35dc48p+5 +0x1.b81b5p-51 +0x1.0a1caep+0 +0x1.f9ef34p+0 +0x1.95da52p+0 +0x1p+0 +0x1.3032a2p-1 +0x1.1cc56ep+0 +0x1.c77bfcp+0 +0x1.05370ep+0 +0x1.d6d0c6p+2 +0x1.2fbfap-1 +0x1p+0 +0x1.0000b8p+2 +0x1.b8c316p+1 +0x1.00010cp+0 +0x1.028104p+0 +0x1p+0 +0x1.13f12cp+0 +0x1p+0 +0x1p+0 +0x1.fb7e4ep+53 +0x1p+0 +0x1.780d04p+9 +0x1.1973c4p+6 +0x1.b09184p+0 +0x1.b4ed32p+51 +0x1p+0 +0x1.00b82p+0 +0x1.198ba4p+0 +0x1.57b63cp+7 +0x1.0016d4p+0 +0x1p+0 +0x1.01a3e4p+0 +0x1.e8d11ep+44 +0x1.b7e5d4p+13 +0x1.00667cp+0 +0x1.06ed08p+0 +0x1.05f47ap+0 +0x1.4aa86ap+0 +0x1.04aeap+0 +0x1p+0 +0x1p+0 +0x1.3b13a8p+11 +0x1.596846p+47 +0x1.0d8c64p+0 +0x1.0012aap+0 +0x1p+0 diff --git a/benchtests/tgammaf-inputs b/benchtests/tgammaf-inputs new file mode 100644 index 0000000000..b2baf5c020 --- /dev/null +++ b/benchtests/tgammaf-inputs @@ -0,0 +1,1006 @@ +## includes: math.h +## args: float +## ret: float + +# Random inputs in [-a,a=0x1.18522ep+5) +# where a is the smallest number such that tgammaf rounds to +Inf (to nearest) +0x1.714acp+2 +0x1.0f4884p+4 +-0x1.16b54p+1 +0x1.238ef4p+4 +0x1.4896ap+4 +-0x1.714e7p+2 +0x1.c254cp+4 +0x1.c76928p+3 +0x1.0b82acp+5 +-0x1.a4d6dp+2 +0x1.16f3ap+2 +0x1.43a5bp+2 +-0x1.da2ef8p+4 +0x1.f7c01p+2 +0x1.f5b698p+4 +-0x1.3dcbccp+3 +0x1.34238p+3 +-0x1.0b6364p+5 +-0x1.1c820cp+4 +-0x1.bcdeccp+4 +0x1.481cdp+3 +0x1.83fbf8p+4 +0x1.18504cp+5 +-0x1.b65098p+4 +0x1.5aa868p+4 +-0x1.8f06ap+3 +-0x1.a8d468p+2 +0x1.11a554p+5 +0x1.b47368p+4 +0x1.df0d08p+4 +-0x1.f80fcap+4 +0x1.c9cda4p+4 +0x1.785454p+4 +-0x1.af1b08p+2 +-0x1.0f6e86p+5 +0x1.869148p+3 +0x1.054cp+1 +0x1.f545dp+4 +-0x1.20e18p+1 +0x1.ec8cd8p+4 +-0x1.047434p+5 +-0x1.059518p+5 +0x1.6c32bp+2 +0x1.e72af8p+4 +-0x1.8e6d38p+4 +-0x1.5173ep+2 +0x1.0df39p+5 +-0x1.98be5p+4 +0x1.d16e8p-1 +-0x1.8d11ap+2 +-0x1.10bc48p+5 +0x1.99a9bp+3 +0x1.ea951p+2 +-0x1.38a44p+3 +-0x1.e303f2p+4 +0x1.3efc18p+3 +-0x1.d4510cp+3 +0x1.10a078p+3 +0x1.75f644p+4 +-0x1.b0b2c2p+4 +-0x1.dc58ep+1 +0x1.be8c2p+2 +-0x1.ad4244p+4 +0x1.4bdd88p+3 +0x1.7e3b98p+3 +-0x1.47af9p+2 +-0x1.26b82p+2 +-0x1.d8bd38p+4 +0x1.348244p+4 +0x1.5b6f4p+0 +-0x1.0f1764p+5 +-0x1.eea53p+2 +0x1.17cdbp+4 +-0x1.c0d6fp+1 +0x1.5d8fbcp+4 +-0x1.46e70cp+4 +0x1.a7379p+2 +-0x1.c537b8p+2 +0x1.65fdfp+2 +-0x1.573a14p+4 +-0x1.f6d328p+2 +0x1.3fa52p+3 +-0x1.9e64d4p+3 +-0x1.d1f208p+4 +0x1.daff8p+1 +-0x1.f85f48p+3 +-0x1.aa2b78p+4 +-0x1.1d6d14p+3 +0x1.06be64p+5 +-0x1.00671cp+4 +0x1.eeb7p-2 +0x1.10efdp+2 +0x1.de3fc8p+4 +-0x1.1da752p+4 +0x1.76392p+4 +-0x1.acd59p+4 +0x1.3db448p+3 +-0x1.2ef648p+4 +-0x1.30f1e8p+4 +-0x1.d3de8ep+4 +-0x1.e9566p+3 +-0x1.9ea03cp+3 +-0x1.f0158p-1 +-0x1.ff9bbp+1 +-0x1.3a3454p+3 +-0x1.87b4e4p+3 +0x1.3ea26p+1 +0x1.638248p+4 +-0x1.125e42p+4 +0x1.cc892cp+4 +0x1.b01cap+4 +0x1.d24a08p+3 +0x1.a2a1e8p+4 +0x1.15e17p+5 +0x1.10825p+5 +0x1.daad88p+4 +-0x1.21f976p+4 +-0x1.031fbcp+4 +-0x1.17fd7ep+5 +0x1.126018p+4 +-0x1.e621bp+4 +0x1.c4cf78p+3 +0x1.53dcd4p+4 +-0x1.8b519cp+4 +-0x1.69dacp+0 +0x1.4172ep+2 +0x1.160e68p+4 +0x1.a7da7p+4 +-0x1.decd6cp+4 +0x1.4b2bap+3 +0x1.806868p+3 +0x1.427174p+4 +-0x1.f04p-2 +0x1.0c93d8p+4 +0x1.093c6p+2 +-0x1.082e6ep+5 +-0x1.181a92p+5 +-0x1.19dfbp+2 +-0x1.98fef8p+2 +0x1.a77e94p+4 +0x1.1ad3cp+0 +-0x1.39c9bcp+3 +-0x1.ea251cp+4 +0x1.dec54p+2 +0x1.cc7e1cp+4 +0x1.6d9f1p+2 +-0x1.fe9198p+2 +-0x1.026232p+4 +0x1.08ad5p+5 +-0x1.43db28p+4 +-0x1.c4139ap+4 +0x1.bd6538p+4 +-0x1.a1ca9p+3 +-0x1.100adap+4 +0x1.1642p+5 +0x1.5a583p+3 +-0x1.902c5ap+4 +0x1.12f3ap+3 +0x1.0762a4p+5 +0x1.dea9e8p+4 +0x1.73af2p+4 +-0x1.51b6p+2 +0x1.e5fdf8p+3 +-0x1.2cdf44p+3 +-0x1.15518ep+5 +0x1.8481cp+1 +0x1.14c8ap+5 +-0x1.e34466p+4 +-0x1.2e8a6ep+4 +-0x1.edbcap+2 +-0x1.a34a2p+3 +0x1.62ba48p+4 +-0x1.48a09cp+3 +0x1.365f9p+2 +-0x1.e31778p+3 +0x1.373324p+4 +0x1.2a03p+2 +-0x1.4304dcp+4 +0x1.abb9dcp+4 +0x1.0dc9ap+5 +-0x1.b292f4p+4 +0x1.c72028p+3 +-0x1.78e0a4p+4 +-0x1.25c21cp+4 +0x1.155e5p+2 +-0x1.edba2p+3 +-0x1.dc87a6p+4 +0x1.44f16p+3 +-0x1.35781p+3 +0x1.b1acfp+4 +-0x1.c4c57p+3 +-0x1.c6ca42p+4 +-0x1.619604p+3 +-0x1.1f1f2p+2 +0x1.1ed8p+0 +0x1.76619cp+4 +-0x1.382454p+3 +-0x1.5270ep+1 +-0x1.16be2p+1 +0x1.4062fp+2 +-0x1.9fd7a8p+2 +-0x1.e1d9d8p+4 +0x1.ad37d8p+3 +-0x1.c78fecp+4 +-0x1.fbc6bp+2 +-0x1.e4c7dcp+3 +0x1.e5efp+2 +-0x1.28d7c8p+4 +0x1.72d978p+3 +0x1.37137cp+4 +-0x1.53ec9cp+3 +0x1.66a2bp+3 +0x1.9a4ep-3 +0x1.1140e4p+4 +0x1.16ed74p+5 +0x1.a82d78p+3 +0x1.975b0cp+4 +0x1.ca4ebp+3 +-0x1.589c6ap+4 +0x1.8ef3cp+2 +0x1.e2b6p+2 +-0x1.6b87f8p+2 +0x1.24f1e8p+4 +0x1.3a7a8p+4 +-0x1.f984f2p+4 +-0x1.a401p-1 +0x1.956ec8p+4 +-0x1.db5688p+4 +0x1.36f2ap+3 +-0x1.d1107p+3 +-0x1.b25828p+2 +-0x1.ffd308p+4 +0x1.3ec6c4p+4 +-0x1.721c04p+4 +0x1.d9e568p+4 +0x1.a293a8p+3 +0x1.10c4d8p+5 +0x1.cbe78p+0 +0x1.1052c8p+3 +0x1.32e02p+1 +0x1.be4b2p+4 +0x1.b1e164p+4 +-0x1.4dedb8p+4 +-0x1.52518cp+3 +-0x1.ddb38p-1 +-0x1.42cd08p+4 +0x1.2154d4p+4 +-0x1.067cc8p+4 +-0x1.767908p+4 +-0x1.3a2d44p+4 +-0x1.705b12p+4 +-0x1.de6e8p+0 +0x1.626488p+4 +-0x1.69fe64p+4 +-0x1.9f53eep+4 +-0x1.d6668p+0 +0x1.40e7c8p+4 +0x1.0f18bp+2 +0x1.7d9204p+4 +-0x1.40e0c2p+4 +0x1.3ca2p-1 +0x1.d0cf4p+4 +-0x1.9af13p+1 +0x1.49159p+3 +0x1.0e886cp+4 +-0x1.387932p+4 +-0x1.76d0b2p+4 +0x1.e3a888p+4 +0x1.95945p+3 +-0x1.f11fccp+3 +-0x1.f94b88p+3 +-0x1.5c3164p+4 +0x1.7042fp+4 +0x1.7b4304p+4 +0x1.193fcp+0 +-0x1.a69a94p+3 +0x1.fca03p+2 +0x1.a8b48p+1 +-0x1.4b058cp+3 +0x1.f889cp+4 +0x1.216c5cp+4 +0x1.4abf8p+3 +-0x1.903e98p+3 +0x1.002418p+5 +-0x1.81bd24p+4 +0x1.bcd70cp+4 +-0x1.27c00ap+4 +0x1.82ff1p+2 +0x1.a61df8p+3 +0x1.cc60d8p+3 +-0x1.36d58p+4 +0x1.35c0e4p+4 +-0x1.0cca7ap+5 +-0x1.f7191p+1 +0x1.064398p+5 +0x1.326608p+3 +0x1.6e83ep+3 +0x1.f9d508p+4 +0x1.aef608p+4 +-0x1.78885cp+4 +0x1.2a9f6p+4 +-0x1.3852c4p+4 +0x1.f53fe8p+4 +0x1.54b6cp+0 +-0x1.07f15cp+5 +-0x1.6d6c6cp+4 +0x1.836434p+4 +-0x1.f2d5b8p+2 +0x1.28f9c8p+3 +0x1.7e7d6cp+4 +-0x1.dcc444p+4 +0x1.aba548p+4 +0x1.c8b9f4p+4 +0x1.3b2d8p+3 +0x1.f0f87p+4 +0x1.526da8p+4 +-0x1.387fb8p+4 +-0x1.4167fp+4 +-0x1.570d18p+3 +0x1.aaedb8p+3 +-0x1.b53824p+3 +0x1.4a0e1cp+4 +0x1.021604p+4 +-0x1.21900cp+4 +-0x1.84c488p+3 +-0x1.03b874p+3 +0x1.5bcc5cp+4 +-0x1.9fb5c8p+3 +-0x1.842c52p+4 +-0x1.3deae4p+3 +-0x1.9ae034p+4 +-0x1.10fa9cp+5 +-0x1.b95bdcp+4 +-0x1.62e5bap+4 +0x1.e0e8fp+4 +-0x1.96a54cp+4 +0x1.c61774p+4 +-0x1.90c15p+4 +-0x1.5de06ap+4 +-0x1.08898ep+5 +0x1.644f1p+4 +0x1.caf23p+2 +0x1.3b8f6p+3 +-0x1.c806aap+4 +0x1.c6ebe4p+4 +-0x1.49fcd4p+3 +-0x1.787318p+4 +0x1.164038p+3 +-0x1.05b048p+2 +-0x1.dbe2f8p+2 +-0x1.7f48bp+2 +0x1.70e1ecp+4 +0x1.330974p+4 +-0x1.dd4fdp+3 +0x1.460e1p+3 +-0x1.2d880cp+3 +-0x1.9575f2p+4 +-0x1.0acce4p+5 +0x1.048768p+4 +-0x1.03fd18p+3 +0x1.05b15p+5 +0x1.54f76p+1 +0x1.f6f6e8p+4 +0x1.b3677p+4 +0x1.c01f3p+2 +-0x1.e32a14p+4 +-0x1.c72a8p+0 +-0x1.ebac5ap+4 +0x1.d83bp-1 +-0x1.4926e8p+4 +-0x1.797964p+4 +-0x1.49e964p+3 +-0x1.841d6cp+4 +-0x1.25273cp+3 +-0x1.07b102p+4 +-0x1.14b7acp+5 +-0x1.b5e63ap+4 +0x1.b52cacp+4 +0x1.f47f3p+2 +-0x1.6f3afcp+4 +-0x1.13717cp+3 +-0x1.1b037cp+4 +0x1.5da03p+4 +0x1.ec788p+4 +0x1.139c4cp+4 +-0x1.7418a6p+4 +0x1.03917cp+5 +-0x1.95383p+4 +0x1.03f114p+5 +-0x1.57e28ep+4 +0x1.caf3a4p+4 +-0x1.2cbb8p-1 +0x1.245f6p+3 +-0x1.2f17dp+3 +-0x1.86afacp+4 +0x1.2aaac8p+4 +-0x1.0a568p+0 +0x1.a7e7b4p+4 +0x1.c330b8p+3 +0x1.0faeap+1 +-0x1.2d39p+2 +-0x1.4ddb52p+4 +-0x1.f0c194p+4 +-0x1.3381cp+2 +0x1.12218p+5 +0x1.4804bp+2 +-0x1.df3382p+4 +-0x1.163aap+1 +0x1.8d269cp+4 +0x1.b46b3p+4 +-0x1.476e0cp+3 +-0x1.449c18p+3 +0x1.1a06p-1 +-0x1.2dba34p+4 +-0x1.2bc334p+4 +0x1.bba7b4p+4 +-0x1.c0eb2ep+4 +0x1.c2fa38p+4 +0x1.0f8538p+5 +0x1.fc3df8p+4 +0x1.537f8cp+4 +-0x1.a8d7ccp+4 +0x1.96023p+2 +0x1.3b2d2p+1 +-0x1.7b62c6p+4 +-0x1.5185ap+1 +-0x1.f7a8p-1 +-0x1.0c922p+3 +-0x1.df916p+4 +0x1.f3911p+3 +-0x1.5d9218p+3 +0x1.e0c878p+4 +-0x1.bd25bp+1 +0x1.66c448p+3 +-0x1.811accp+3 +-0x1.010c9cp+4 +0x1.f2a9f8p+4 +-0x1.1002dcp+4 +-0x1.274c8ep+4 +-0x1.2a902p+4 +0x1.74b20cp+4 +0x1.ff9988p+4 +-0x1.08647p+4 +-0x1.6557ecp+3 +0x1.cc62p+0 +-0x1.01b0c6p+5 +-0x1.75cep+4 +0x1.56d63cp+4 +-0x1.f86a7p+2 +0x1.4c874p+4 +0x1.37df0cp+4 +-0x1.265c3cp+3 +-0x1.0c48cp+5 +-0x1.e459d8p+3 +-0x1.8bca4p+3 +0x1.14706p+3 +-0x1.c99d3p+2 +-0x1.0fb52ap+4 +-0x1.071aecp+5 +-0x1.8975d8p+2 +-0x1.128304p+3 +-0x1.e3ff3p+1 +-0x1.152db8p+2 +-0x1.16b954p+5 +-0x1.15e6cep+5 +0x1.21b8d8p+4 +-0x1.1a98a8p+2 +0x1.059a88p+5 +0x1.2e2f4cp+4 +0x1.9f7c4p+3 +0x1.67382p+1 +0x1.2551dp+4 +0x1.b0fd4p+2 +0x1.583a68p+3 +0x1.30a698p+3 +-0x1.f8fe88p+2 +0x1.96d6f4p+4 +-0x1.0d8a96p+5 +-0x1.74878p-1 +0x1.10f1ep+1 +0x1.300af8p+4 +0x1.26de1cp+4 +0x1.ac842p+2 +0x1.74276p+4 +-0x1.d4723ep+4 +0x1.7222f8p+4 +-0x1.12400cp+5 +-0x1.6626e8p+3 +-0x1.a6c344p+3 +-0x1.3f75ep+2 +0x1.968ac4p+4 +-0x1.e132ecp+3 +0x1.308c5cp+4 +0x1.32232p+1 +-0x1.101cap+5 +-0x1.0adf06p+5 +-0x1.9d61p+3 +0x1.0937dp+5 +0x1.b44f3cp+4 +-0x1.c78ap+0 +-0x1.829a6p+4 +0x1.7ecb88p+3 +0x1.44aa6p+4 +-0x1.f017dap+4 +-0x1.a4603p+3 +-0x1.6fc0c8p+3 +0x1.ec29cp+4 +-0x1.ff5bdcp+4 +0x1.d5782p+4 +-0x1.2f712ap+4 +-0x1.552f48p+2 +0x1.a127bp+4 +-0x1.3a8cdcp+3 +-0x1.7a1228p+3 +0x1.8b913p+2 +0x1.db95fp+3 +0x1.7a43p+3 +-0x1.539778p+4 +-0x1.a4d114p+4 +-0x1.c4127p+4 +0x1.75c1p+4 +-0x1.f3b83p+2 +-0x1.2d3ffep+4 +0x1.73c72p+2 +0x1.b9044p+0 +0x1.e7383p+4 +-0x1.f12826p+4 +-0x1.ace2ap+1 +0x1.fb643p+4 +-0x1.d6d9a8p+2 +0x1.5da19p+4 +-0x1.1f967p+3 +-0x1.9ac65ep+4 +-0x1.03408cp+3 +-0x1.014488p+5 +-0x1.3ce4d8p+4 +-0x1.99e4a8p+4 +0x1.e51898p+4 +0x1.8df99p+2 +0x1.9240dp+4 +0x1.94107p+3 +-0x1.e7551p+3 +0x1.f8568p+4 +-0x1.57339cp+4 +0x1.d9ef98p+4 +0x1.ea652p+4 +-0x1.185138p+4 +-0x1.37b20cp+3 +0x1.6e3ea8p+4 +-0x1.08b312p+4 +-0x1.f85fep+4 +-0x1.50c0dcp+4 +-0x1.daf28p+0 +0x1.1dd7b8p+4 +0x1.7179e8p+4 +-0x1.489db4p+4 +-0x1.5b705cp+3 +0x1.c989d4p+4 +-0x1.d0da4p+0 +0x1.67d708p+3 +-0x1.a4d0f8p+3 +-0x1.22519cp+4 +0x1.0e6b54p+4 +0x1.17e9bp+5 +0x1.68d95cp+4 +-0x1.ec6d2cp+4 +-0x1.38ffccp+4 +-0x1.23bf1ep+4 +0x1.a0e2p+2 +0x1.24094p+3 +-0x1.90f946p+4 +-0x1.4f2b2p+4 +0x1.93398p+0 +0x1.3d7fdp+4 +0x1.3741fp+4 +-0x1.a88074p+3 +-0x1.103f16p+5 +0x1.53c554p+4 +0x1.e8e9p+1 +-0x1.0e4e4cp+4 +-0x1.e2389ep+4 +-0x1.ad61p+3 +-0x1.c30eecp+3 +-0x1.67abb8p+2 +-0x1.c4fffcp+3 +-0x1.5dd3ap+1 +-0x1.6eb4a8p+2 +0x1.63f0bp+3 +-0x1.073cd8p+5 +0x1.bb22e8p+4 +-0x1.a8ce5p+2 +-0x1.51153cp+3 +-0x1.56371p+3 +0x1.f1fb4p+0 +0x1.498f8p+3 +0x1.332da8p+3 +0x1.080834p+5 +-0x1.32da04p+3 +0x1.650174p+4 +-0x1.59f60cp+4 +-0x1.4e8858p+2 +0x1.84688p+0 +0x1.3629fp+2 +0x1.0ba29p+5 +-0x1.0ae52p+2 +-0x1.4f44ap+1 +0x1.9ae28p+0 +0x1.2baf1p+2 +0x1.0c802p+2 +-0x1.c67dd8p+2 +-0x1.de957p+1 +0x1.48b72p+1 +-0x1.4c0c68p+4 +0x1.46a744p+4 +-0x1.39d01cp+3 +0x1.53d76p+3 +0x1.1668a4p+5 +0x1.f4433p+4 +0x1.e4b0fp+2 +-0x1.7c4cf8p+4 +0x1.0d5e8p+4 +-0x1.880078p+4 +0x1.53c5ep+4 +0x1.904728p+3 +0x1.0d36f8p+5 +0x1.f6183p+4 +0x1.08f43cp+4 +0x1.77e2c8p+4 +-0x1.cb5924p+4 +0x1.486de8p+4 +0x1.060a78p+3 +0x1.0c8e4cp+5 +0x1.fb2dcp+3 +0x1.39f22p+4 +-0x1.0111a6p+5 +0x1.8b0198p+3 +-0x1.c08372p+4 +-0x1.e9686p+4 +-0x1.2f4aa4p+3 +0x1.ad5be4p+4 +-0x1.518fccp+3 +-0x1.c858d4p+3 +-0x1.5f7f7cp+3 +-0x1.556ffep+4 +-0x1.2215a4p+3 +-0x1.50b018p+4 +0x1.f249ap+2 +0x1.12e38p+5 +-0x1.b1dc0cp+4 +-0x1.a102dcp+3 +0x1.80dbc4p+4 +-0x1.684cbcp+3 +0x1.ed581p+2 +-0x1.dca674p+3 +0x1.973504p+4 +-0x1.f820f8p+4 +-0x1.81a7p+1 +-0x1.0c8b6p+5 +0x1.d1e7b8p+4 +0x1.3709dcp+4 +-0x1.48f4ap+3 +-0x1.07881p+5 +0x1.45905p+2 +-0x1.0c0d02p+5 +-0x1.067a0cp+3 +0x1.9dd588p+4 +0x1.ba0ed8p+4 +0x1.f44628p+4 +0x1.cabed4p+4 +-0x1.e23812p+4 +-0x1.0a744ep+5 +0x1.db644p+0 +0x1.51211p+4 +0x1.a63694p+4 +0x1.246b2cp+4 +-0x1.756b7p+4 +-0x1.ff7878p+4 +-0x1.f10044p+4 +-0x1.cda77p+1 +-0x1.1961a2p+4 +0x1.d4abbp+2 +-0x1.03ed76p+4 +0x1.079cfcp+4 +-0x1.7365f4p+3 +-0x1.2dd44p+0 +-0x1.b47a6p+1 +0x1.9784d4p+4 +-0x1.f35baep+4 +-0x1.bb35acp+4 +0x1.b9d88p+1 +0x1.14f6a4p+5 +-0x1.7c5ecp+0 +0x1.05bd1cp+5 +-0x1.a19a52p+4 +-0x1.148c8p+3 +-0x1.771ce2p+4 +-0x1.072ffap+5 +0x1.c4178cp+4 +0x1.8bad68p+4 +0x1.b47704p+4 +0x1.0e2438p+4 +-0x1.fc9778p+4 +0x1.5ec7ap+2 +0x1.43912p+2 +0x1.46345p+3 +0x1.6cd29p+4 +0x1.0144cp+2 +-0x1.1e9854p+3 +-0x1.3756bap+4 +-0x1.0b664ap+4 +-0x1.9aep-3 +0x1.68f64p+3 +0x1.3aa67p+3 +-0x1.07615ap+5 +-0x1.f0c314p+4 +0x1.b0bdf4p+4 +-0x1.54f9aep+4 +0x1.9c367p+4 +-0x1.14b3ecp+4 +0x1.791af8p+4 +0x1.a81588p+3 +0x1.3b838p+4 +0x1.e13758p+4 +0x1.56c47p+2 +0x1.8f7e7cp+4 +0x1.5262e8p+4 +-0x1.896a58p+2 +0x1.f37f48p+4 +0x1.fbaadp+4 +0x1.4d2cfp+2 +0x1.6c67ap+2 +0x1.9b882p+3 +0x1.5b66fp+2 +-0x1.9d42dp+1 +-0x1.05346cp+4 +0x1.0ab82p+1 +0x1.9e15b8p+3 +-0x1.d98274p+3 +0x1.0a78b8p+3 +-0x1.2f3774p+4 +0x1.a9b88p+0 +-0x1.f47fecp+4 +-0x1.558a24p+4 +0x1.46c308p+3 +-0x1.bf564cp+4 +0x1.b638c8p+4 +0x1.42b98p+0 +-0x1.97a6a4p+4 +-0x1.4220ecp+4 +0x1.6845ap+3 +-0x1.fb5ddp+4 +0x1.eb47fp+2 +-0x1.067b58p+3 +0x1.167014p+5 +0x1.e7924p+4 +-0x1.5f6cp-3 +0x1.30a098p+3 +0x1.05834cp+5 +-0x1.da437cp+3 +0x1.3e04b8p+4 +-0x1.9ef4ecp+3 +0x1.51ce1p+3 +-0x1.112634p+5 +0x1.77c6ep+4 +-0x1.d37be8p+3 +-0x1.7e568p+0 +-0x1.c5a644p+4 +-0x1.6e036p+1 +-0x1.1786d4p+3 +-0x1.8580e8p+2 +0x1.c466cp+0 +0x1.0ba94p+3 +0x1.86773p+2 +0x1.803bep+4 +-0x1.ae82f8p+2 +-0x1.862498p+2 +0x1.3da6p+0 +0x1.a865d8p+3 +-0x1.ce0fb8p+2 +-0x1.846eep+4 +-0x1.d932p+3 +-0x1.547b34p+4 +0x1.7a1cbp+3 +0x1.248f58p+3 +-0x1.352bcp+4 +-0x1.8b421cp+4 +0x1.fd815p+2 +0x1.22a41p+3 +-0x1.0ac0eap+4 +-0x1.45f61p+4 +0x1.36d9bp+4 +-0x1.9cd784p+3 +-0x1.5fb918p+2 +-0x1.810298p+3 +0x1.e7b198p+3 +-0x1.ff5fc4p+4 +0x1.92637p+3 +0x1.82252p+2 +-0x1.aa8ebap+4 +-0x1.dc9b4ep+4 +0x1.ae464p+4 +0x1.d58b9p+3 +0x1.879fep+4 +0x1.afb52cp+4 +-0x1.9eda98p+4 +0x1.f3939p+4 +-0x1.e927e8p+3 +-0x1.582306p+4 +0x1.10753cp+5 +-0x1.80fd7cp+4 +0x1.9b3cbp+2 +0x1.67267p+4 +-0x1.51e6e8p+4 +-0x1.6250c8p+2 +-0x1.1550c4p+4 +0x1.2d6838p+3 +0x1.099948p+4 +-0x1.2eaf5p+4 +0x1.dca0cp+0 +-0x1.7374p-4 +-0x1.c2053ep+4 +0x1.9e5f04p+4 +-0x1.07dbf6p+5 +-0x1.23ba88p+4 +0x1.0956a4p+4 +-0x1.b798ap+1 +0x1.f7143p+2 +0x1.b56028p+3 +-0x1.151df6p+5 +-0x1.301754p+4 +-0x1.05d158p+5 +0x1.08eb28p+5 +-0x1.5c5d5p+4 +-0x1.9cffd2p+4 +-0x1.285654p+4 +0x1.e001e8p+3 +0x1.04076p+2 +0x1.0c6a04p+4 +0x1.7bb8p-2 +-0x1.0f0518p+5 +-0x1.3567a8p+2 +-0x1.1ebdp-1 +-0x1.8ef22p+3 +-0x1.0a1d5ap+5 +0x1.8a9edp+3 +0x1.00c0e4p+5 +-0x1.32c98p-1 +-0x1.e081c8p+3 +-0x1.226ea4p+4 +0x1.bf0b7p+4 +0x1.c4d04p+0 +0x1.f48ddp+2 +-0x1.f9f398p+2 +-0x1.24d42p+2 +0x1.0c776p+4 +0x1.8a98ep+3 +-0x1.86d128p+4 +-0x1.dda632p+4 +0x1.b3ad38p+4 +0x1.0dac4p+3 +0x1.9fc00cp+4 +-0x1.93bfccp+4 +-0x1.6e659p+2 +-0x1.60dap-1 +-0x1.50fd46p+4 +0x1.1d5078p+4 +0x1.b69efp+3 +0x1.e31d3p+3 +-0x1.0541cp+5 +0x1.3a1648p+3 +0x1.a0c63p+3 +0x1.ea3ff8p+4 +0x1.58ea1cp+4 +0x1.a5509cp+4 +-0x1.30dc1p+3 +-0x1.6a0c2ep+4 +0x1.017178p+3 +0x1.3f598p+0 +0x1.33b4e8p+4 +-0x1.74f184p+4 +0x1.05baep+2 +0x1.b8792p+1 +0x1.638c68p+4 +0x1.94a15cp+4 +-0x1.43fc96p+4 +-0x1.21606cp+3 +0x1.9b3a58p+3 +0x1.e4a05p+4 +0x1.bfa8d8p+4 +-0x1.9076acp+4 +-0x1.967568p+4 +0x1.ac7a58p+3 +0x1.51c12p+2 +0x1.769c4p+1 +-0x1.a53708p+4 +-0x1.fcd6dp+1 +0x1.9b57p+2 +-0x1.f69b8p+0 +-0x1.b953p+2 +0x1.0ec4fcp+5 +-0x1.cf1dcp+0 +0x1.8084b8p+4 +0x1.62db78p+3 +-0x1.485c98p+2 +-0x1.576414p+4 +-0x1.fcc948p+3 +0x1.9d863p+3 +-0x1.08b39ep+5 +0x1.795ep-3 +0x1.99e26p+2 +0x1.fb6d6p+4 +-0x1.55d16p+1 +0x1.41071p+3 +0x1.549abcp+4 +0x1.4e88p-3 +0x1.10bfcp+2 +0x1.97b3cp+3 +-0x1.4580cp+3 +-0x1.df2fp+0 +-0x1.09a2dcp+5 +-0x1.7e1124p+3 +-0x1.14f35ep+5 +0x1.2956cp+4 +0x1.c7b8e8p+4 +-0x1.ebba08p+3 +-0x1.fdfd3p+3 +0x1.46906p+1 +0x1.c1318p+0 +0x1.79f444p+4 +0x1.6012bcp+4 +0x1.fd49ap+2 +-0x1.11612cp+4 +0x1.ea3cdp+4 +-0x1.a053ccp+4 +-0x1.995764p+3 +0x1.bec2e8p+4 +-0x1.7aa898p+2 +0x1.6b6edp+2 +0x1.9b6774p+4 +0x1.e85738p+3 +0x1.974ad4p+4 +-0x1.554564p+4 +-0x1.383ap+3 +-0x1.7576dcp+4 +-0x1.7e8308p+4 +-0x1.786086p+4 +-0x1.31641p+2 +-0x1.591184p+4 +0x1.1ef65p+4 +-0x1.39bc08p+2 +-0x1.1672b4p+4 +-0x1.4aa7f4p+4 +0x1.201d4p+1 +-0x1.afecp-3 +-0x1.163698p+3 +-0x1.7660cp+2 +-0x1.c7fb44p+4 +-0x1.8e0cbp+3 +-0x1.d2a9p-2 +0x1.d0d51p+4 +0x1.d1ea38p+4 +0x1.9741bp+3 +0x1.d90b08p+3 +0x1.6608f8p+4 +-0x1.019936p+5 +-0x1.bd980ep+4 +0x1.c8ad9p+2 +-0x1.a33178p+2 +-0x1.957c74p+4 +0x1.1adc7p+4 +-0x1.329bcp+2 +0x1.4df538p+3 +0x1.ce0544p+4 +0x1.09ab3p+5 +-0x1.937bp+4 +0x1.029744p+5 +0x1.f899f8p+4 +0x1.8140e8p+4 +0x1.e035p+2 +0x1.1418a4p+5 +0x1.183664p+5 +0x1.9ac948p+4 +0x1.7be72p+3 +0x1.3145d8p+4 +0x1.a88598p+3 +-0x1.15d71p+5 +-0x1.cfe5dp+3 +-0x1.3259b4p+3 +0x1.eb17fp+4 +-0x1.c4d158p+3 +-0x1.a0004cp+4 +0x1.b62a1p+3 +-0x1.320a1cp+4 +0x1.99bd1cp+4 +0x1.36e0ap+4 +-0x1.da762p+1 +0x1.91eep+2 +0x1.18d928p+3 +0x1.956c5cp+4 +0x1.4226e8p+4 diff --git a/config.h.in b/config.h.in index f495f11244..6c25c923fa 100644 --- a/config.h.in +++ b/config.h.in @@ -117,9 +117,6 @@ required version of GNU 'binutils' to 2.28 or later. */ #define HAVE_AARCH64_SVE_ASM 0 -/* ARC big endian ABI */ -#undef HAVE_ARC_BE - /* C-SKY ABI version. */ #undef CSKYABI diff --git a/configure b/configure index ec0b62db36..9c0c0dce03 100755 --- a/configure +++ b/configure @@ -635,6 +635,8 @@ libc_cv_gcc_unwind_find_fde libc_extra_cppflags libc_extra_cflags libc_cv_cxx_thread_local +no_time_bits_source +no_file_offset_bits_source fortify_source no_fortify_source libc_cv_fortify_source @@ -7718,7 +7720,7 @@ printf "%s\n" "#define HAVE_LIBCAP 1" >>confdefs.h fi -no_fortify_source="-Wp,-U_FORTIFY_SOURCE" +no_fortify_source="-U_FORTIFY_SOURCE" fortify_source="${no_fortify_source}" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for maximum supported _FORTIFY_SOURCE level" >&5 @@ -7773,7 +7775,7 @@ esac if test "$libc_cv_fortify_source" = yes then : - fortify_source="${fortify_source},-D_FORTIFY_SOURCE=${enable_fortify_source}" + fortify_source="${fortify_source} -D_FORTIFY_SOURCE=${enable_fortify_source}" fi @@ -7784,6 +7786,66 @@ fi config_vars="$config_vars supported-fortify = $libc_cv_supported_fortify_source" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main (void) +{ + +#ifndef _FILE_OFFSET_BITS +# error _FILE_OFFSET_BITS not defined +#endif + ; + return 0; +} +_ACEOF +if ac_fn_c_try_cpp "$LINENO" +then : + libc_cv_compiler_default_file_offset_bits=yes +else case e in #( + e) libc_cv_compiler_default_file_offset_bits=no ;; +esac +fi +rm -f conftest.err conftest.i conftest.$ac_ext +if test "$libc_cv_compiler_default_file_offset_bits" = yes +then : + no_file_offset_bits_source="-U_FILE_OFFSET_BITS" +fi + +config_vars="$config_vars +no-file-offset-bits-source = $no_file_offset_bits_source" + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main (void) +{ + +#ifndef _TIME_BITS +# error _TIME_BITS not defined +#endif + ; + return 0; +} +_ACEOF +if ac_fn_c_try_cpp "$LINENO" +then : + libc_cv_compiler_default_time_bits=yes +else case e in #( + e) libc_cv_compiler_default_time_bits=no ;; +esac +fi +rm -f conftest.err conftest.i conftest.$ac_ext +if test "$libc_cv_compiler_default_time_bits" = yes +then : + no_time_bits_source="-U_TIME_BITS" +fi + +config_vars="$config_vars +no-time-bits-source = $no_time_bits_source" + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the assembler requires one version per symbol" >&5 printf %s "checking whether the assembler requires one version per symbol... " >&6; } if test ${libc_cv_symver_needs_alias+y} diff --git a/configure.ac b/configure.ac index 7c9b57789e..d5a00461ff 100644 --- a/configure.ac +++ b/configure.ac @@ -1536,7 +1536,7 @@ dnl If not, then don't use it. dnl Note that _FORTIFY_SOURCE may have been set through FLAGS too. dnl _FORTIFY_SOURCE value will be selectively disabled for function that can't dnl support it -no_fortify_source="-Wp,-U_FORTIFY_SOURCE" +no_fortify_source="-U_FORTIFY_SOURCE" fortify_source="${no_fortify_source}" AC_CACHE_CHECK([for maximum supported _FORTIFY_SOURCE level], @@ -1555,7 +1555,7 @@ AS_CASE([$enable_fortify_source], [libc_cv_fortify_source=no]) AS_IF([test "$libc_cv_fortify_source" = yes], - [fortify_source="${fortify_source},-D_FORTIFY_SOURCE=${enable_fortify_source}"] + [fortify_source="${fortify_source} -D_FORTIFY_SOURCE=${enable_fortify_source}"] ) AC_SUBST(enable_fortify_source) @@ -1564,6 +1564,30 @@ AC_SUBST(no_fortify_source) AC_SUBST(fortify_source) LIBC_CONFIG_VAR([supported-fortify], [$libc_cv_supported_fortify_source]) +dnl Check if compiler define _FILE_OFFSET_BITS by default +AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[]], [[ +#ifndef _FILE_OFFSET_BITS +# error _FILE_OFFSET_BITS not defined +#endif]])], + [libc_cv_compiler_default_file_offset_bits=yes], + [libc_cv_compiler_default_file_offset_bits=no]) +AS_IF([test "$libc_cv_compiler_default_file_offset_bits" = yes], + [no_file_offset_bits_source="-U_FILE_OFFSET_BITS"]) +AC_SUBST(no_file_offset_bits_source) +LIBC_CONFIG_VAR([no-file-offset-bits-source], [$no_file_offset_bits_source]) + +dnl Check if compiler define _TIME_BITS by default +AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[]], [[ +#ifndef _TIME_BITS +# error _TIME_BITS not defined +#endif]])], + [libc_cv_compiler_default_time_bits=yes], + [libc_cv_compiler_default_time_bits=no]) +AS_IF([test "$libc_cv_compiler_default_time_bits" = yes], + [no_time_bits_source="-U_TIME_BITS"]) +AC_SUBST(no_time_bits_source) +LIBC_CONFIG_VAR([no-time-bits-source], [$no_time_bits_source]) + dnl Starting with binutils 2.35, GAS can attach multiple symbol versions dnl to one symbol (PR 23840). AC_CACHE_CHECK(whether the assembler requires one version per symbol, diff --git a/conform/Makefile b/conform/Makefile index 73a3cb6da2..57a1f5b546 100644 --- a/conform/Makefile +++ b/conform/Makefile @@ -372,7 +372,7 @@ test-xfail-UNIX98/ndbm.h/conform = yes test-xfail-XOPEN2K/ndbm.h/conform = yes test-xfail-XOPEN2K8/ndbm.h/conform = yes -conformtest-cc-flags = -I../include $(+sysdep-includes) $(sysincludes) -I.. +conformtest-cc-flags = -I../include $(+sysdep-includes) $(sysincludes) -I.. $(no-file-offset-bits-source) $(no-time-bits-source) # conformtest-xfail-conds may be set by a sysdeps Makefile fragment to # a list of conditions that are considered to be true when encountered # in xfail[cond]- lines in test expectations. diff --git a/debug/Makefile b/debug/Makefile index 3903cc97a3..89ee80bf4d 100644 --- a/debug/Makefile +++ b/debug/Makefile @@ -171,16 +171,16 @@ CFLAGS-recvfrom_chk.c += -fexceptions -fasynchronous-unwind-tables # set up for us, so keep the CFLAGS/CPPFLAGS split logical as the order is: # <user CFLAGS> <test CFLAGS> <user CPPFLAGS> <test CPPFLAGS> CFLAGS-tst-longjmp_chk.c += -fexceptions -fasynchronous-unwind-tables -CPPFLAGS-tst-longjmp_chk.c += $(no-fortify-source),-D_FORTIFY_SOURCE=1 +CPPFLAGS-tst-longjmp_chk.c += $(no-fortify-source) -D_FORTIFY_SOURCE=1 CFLAGS-tst-longjmp_chk2.c += -fexceptions -fasynchronous-unwind-tables -CPPFLAGS-tst-longjmp_chk2.c += $(no-fortify-source),-D_FORTIFY_SOURCE=1 +CPPFLAGS-tst-longjmp_chk2.c += $(no-fortify-source) -D_FORTIFY_SOURCE=1 CFLAGS-tst-longjmp_chk3.c += -fexceptions -fasynchronous-unwind-tables -CPPFLAGS-tst-longjmp_chk3.c += $(no-fortify-source),-D_FORTIFY_SOURCE=1 -CPPFLAGS-tst-realpath-chk.c += $(no-fortify-source),-D_FORTIFY_SOURCE=2 -CPPFLAGS-tst-chk-cancel.c += $(no-fortify-source),-D_FORTIFY_SOURCE=2 -CFLAGS-tst-sprintf-fortify-rdonly.c += $(no-fortify-source),-D_FORTIFY_SOURCE=2 -CFLAGS-tst-fortify-syslog.c += $(no-fortify-source),-D_FORTIFY_SOURCE=2 -CFLAGS-tst-fortify-wide.c += $(no-fortify-source),-D_FORTIFY_SOURCE=2 +CPPFLAGS-tst-longjmp_chk3.c += $(no-fortify-source) -D_FORTIFY_SOURCE=1 +CPPFLAGS-tst-realpath-chk.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2 +CPPFLAGS-tst-chk-cancel.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2 +CFLAGS-tst-sprintf-fortify-rdonly.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2 +CFLAGS-tst-fortify-syslog.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2 +CFLAGS-tst-fortify-wide.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2 # _FORTIFY_SOURCE tests. # Auto-generate tests for _FORTIFY_SOURCE for different levels, compilers and @@ -218,7 +218,8 @@ src-chk-nongnu = \#undef _GNU_SOURCE # cannot be disabled via pragmas, so require -Wno-error to be used. define gen-chk-test tests-$(1)-$(4)-chk += tst-fortify-$(1)-$(2)-$(3)-$(4) -CFLAGS-tst-fortify-$(1)-$(2)-$(3)-$(4).$(1) += $(no-fortify-source),-D_FORTIFY_SOURCE=$(3) -Wno-format \ +CFLAGS-tst-fortify-$(1)-$(2)-$(3)-$(4).$(1) += $(no-fortify-source) -D_FORTIFY_SOURCE=$(3) \ + -Wno-format \ -Wno-deprecated-declarations \ -Wno-error $(eval $(call cflags-$(2),$(1),$(3),$(4))) diff --git a/debug/test-strcpy_chk.c b/debug/test-strcpy_chk.c index 14b11ea62a..55f2cc8768 100644 --- a/debug/test-strcpy_chk.c +++ b/debug/test-strcpy_chk.c @@ -59,7 +59,7 @@ static int test_main (void); #include <support/support.h> volatile int chk_fail_ok; -jmp_buf chk_fail_buf; +sigjmp_buf chk_fail_buf; static void handler (int sig) @@ -86,7 +86,7 @@ do_one_test (impl_t *impl, char *dst, const char *src, return; chk_fail_ok = 1; - if (setjmp (chk_fail_buf) == 0) + if (sigsetjmp (chk_fail_buf, 1) == 0) { res = CALL (impl, dst, src, dlen); printf ("*** Function %s (%zd; %zd) did not __chk_fail\n", @@ -214,7 +214,7 @@ do_random_tests (void) if (impl->test != 1) { chk_fail_ok = 1; - if (setjmp (chk_fail_buf) == 0) + if (sigsetjmp (chk_fail_buf, 1) == 0) { res = (unsigned char *) CALL (impl, (char *) p2 + align2, diff --git a/debug/tst-fortify-wide.c b/debug/tst-fortify-wide.c index 9c6f3af855..0f38e55e9c 100644 --- a/debug/tst-fortify-wide.c +++ b/debug/tst-fortify-wide.c @@ -26,7 +26,7 @@ static volatile int chk_fail_ok; static volatile int ret; -static jmp_buf chk_fail_buf; +static sigjmp_buf chk_fail_buf; static void handler (int sig) @@ -49,7 +49,7 @@ static wchar_t wbuf2[20] = L"%ls"; do { wprintf (L"Failure on line %d\n", __LINE__); ret = 1; } while (0) #define CHK_FAIL_START \ chk_fail_ok = 1; \ - if (! setjmp (chk_fail_buf)) \ + if (! sigsetjmp (chk_fail_buf, 1)) \ { #define CHK_FAIL_END \ chk_fail_ok = 0; \ diff --git a/debug/tst-fortify.c b/debug/tst-fortify.c index ae738ff10a..e12d538458 100644 --- a/debug/tst-fortify.c +++ b/debug/tst-fortify.c @@ -90,7 +90,7 @@ do_prepare (int argc, char *argv[]) static volatile int chk_fail_ok; static volatile int ret; -static jmp_buf chk_fail_buf; +static sigjmp_buf chk_fail_buf; static void handler (int sig) @@ -133,7 +133,7 @@ static int num2 = 987654; do { printf ("Failure on line %d\n", __LINE__); ret = 1; } while (0) #define CHK_FAIL_START \ chk_fail_ok = 1; \ - if (! setjmp (chk_fail_buf)) \ + if (! sigsetjmp (chk_fail_buf, 1)) \ { #define CHK_FAIL_END \ chk_fail_ok = 0; \ diff --git a/elf/Makefile b/elf/Makefile index 09d77093a7..3a1cb72955 100644 --- a/elf/Makefile +++ b/elf/Makefile @@ -414,6 +414,7 @@ tests += \ tst-dlmopen1 \ tst-dlmopen3 \ tst-dlmopen4 \ + tst-dlopen-auditdup \ tst-dlopen-self \ tst-dlopen-tlsmodid \ tst-dlopen-tlsreinit1 \ @@ -452,6 +453,9 @@ tests += \ tst-recursive-tls \ tst-relsort1 \ tst-ro-dynamic \ + tst-rtld-no-malloc \ + tst-rtld-no-malloc-audit \ + tst-rtld-no-malloc-preload \ tst-rtld-run-static \ tst-single_threaded \ tst-single_threaded-pthread \ @@ -865,6 +869,8 @@ modules-names += \ tst-dlmopen-twice-mod1 \ tst-dlmopen-twice-mod2 \ tst-dlmopen1mod \ + tst-dlopen-auditdup-auditmod \ + tst-dlopen-auditdupmod \ tst-dlopen-tlsreinitmod1 \ tst-dlopen-tlsreinitmod2 \ tst-dlopen-tlsreinitmod3 \ @@ -3153,3 +3159,13 @@ $(objpfx)tst-dlopen-tlsreinit3.out: $(objpfx)tst-auditmod1.so tst-dlopen-tlsreinit3-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so $(objpfx)tst-dlopen-tlsreinit4.out: $(objpfx)tst-auditmod1.so tst-dlopen-tlsreinit4-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so + +tst-dlopen-auditdup-ENV = LD_AUDIT=$(objpfx)tst-dlopen-auditdup-auditmod.so +$(objpfx)tst-dlopen-auditdup.out: \ + $(objpfx)tst-dlopen-auditdupmod.so $(objpfx)tst-dlopen-auditdup-auditmod.so + +# Reuse an audit module which provides ample debug logging. +tst-rtld-no-malloc-audit-ENV = LD_AUDIT=$(objpfx)tst-auditmod1.so + +# Any shared object should do. +tst-rtld-no-malloc-preload-ENV = LD_PRELOAD=$(objpfx)tst-auditmod1.so diff --git a/elf/cache.c b/elf/cache.c index 8a618e11fa..62d681df42 100644 --- a/elf/cache.c +++ b/elf/cache.c @@ -820,7 +820,7 @@ struct aux_cache_entry struct aux_cache_entry *next; }; -#define AUX_CACHEMAGIC "glibc-ld.so.auxcache-1.0" +#define AUX_CACHEMAGIC "glibc-ld.so.auxcache-2.0" struct aux_cache_file_entry { diff --git a/elf/dl-close.c b/elf/dl-close.c index 88226245eb..b6f4daac79 100644 --- a/elf/dl-close.c +++ b/elf/dl-close.c @@ -723,6 +723,11 @@ _dl_close_worker (struct link_map *map, bool force) /* TLS is cleaned up for the unloaded modules. */ __rtld_lock_unlock_recursive (GL(dl_load_tls_lock)); + /* Notify the debugger those objects are finalized and gone. */ + r->r_state = RT_CONSISTENT; + _dl_debug_state (); + LIBC_PROBE (unmap_complete, 2, nsid, r); + #ifdef SHARED /* Auditing checkpoint: we have deleted all objects. Also, do not notify auditors of the cleanup of a failed audit module loading attempt. */ @@ -735,11 +740,6 @@ _dl_close_worker (struct link_map *map, bool force) --GL(dl_nns); while (GL(dl_ns)[GL(dl_nns) - 1]._ns_loaded == NULL); - /* Notify the debugger those objects are finalized and gone. */ - r->r_state = RT_CONSISTENT; - _dl_debug_state (); - LIBC_PROBE (unmap_complete, 2, nsid, r); - /* Recheck if we need to retry, release the lock. */ out: if (dl_close_state == rerun) diff --git a/elf/dl-load.c b/elf/dl-load.c index ac8e217a7f..335b34c56d 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -1931,6 +1931,9 @@ _dl_map_object (struct link_map *loader, const char *name, : "\nfile=%s [%lu]; dynamically loaded by %s [%lu]\n", name, nsid, DSO_FILENAME (loader->l_name), loader->l_ns); + /* Will be true if we found a DSO which is of the other ELF class. */ + bool found_other_class = false; + #ifdef SHARED /* Give the auditing libraries a chance to change the name before we try anything. */ @@ -1948,9 +1951,6 @@ _dl_map_object (struct link_map *loader, const char *name, } #endif - /* Will be true if we found a DSO which is of the other ELF class. */ - bool found_other_class = false; - if (strchr (name, '/') == NULL) { /* Search for NAME in several places. */ diff --git a/elf/dl-open.c b/elf/dl-open.c index 8b4704c09d..ba3c266e6a 100644 --- a/elf/dl-open.c +++ b/elf/dl-open.c @@ -565,6 +565,14 @@ dl_open_worker_begin (void *a) _dl_debug_printf ("opening file=%s [%lu]; direct_opencount=%u\n\n", new->l_name, new->l_ns, new->l_direct_opencount); +#ifdef SHARED + /* No relocation processing on this execution path. But + relocation has not been performed for static + position-dependent executables, so disable the assert for + static linking. */ + assert (new->l_relocated); +#endif + /* If the user requested the object to be in the global namespace but it is not so far, prepare to add it now. This can raise an exception to do a malloc failure. */ @@ -586,10 +594,6 @@ dl_open_worker_begin (void *a) if ((mode & RTLD_GLOBAL) && new->l_global == 0) add_to_global_update (new); - const int r_state __attribute__ ((unused)) - = _dl_debug_update (args->nsid)->r_state; - assert (r_state == RT_CONSISTENT); - return; } @@ -620,17 +624,6 @@ dl_open_worker_begin (void *a) #endif } -#ifdef SHARED - /* Auditing checkpoint: we have added all objects. */ - _dl_audit_activity_nsid (new->l_ns, LA_ACT_CONSISTENT); -#endif - - /* Notify the debugger all new objects are now ready to go. */ - struct r_debug *r = _dl_debug_update (args->nsid); - r->r_state = RT_CONSISTENT; - _dl_debug_state (); - LIBC_PROBE (map_complete, 3, args->nsid, r, new); - _dl_open_check (new); /* Print scope information. */ @@ -677,6 +670,7 @@ dl_open_worker_begin (void *a) created dlmopen namespaces. Do not do this for static dlopen because libc has relocations against ld.so, which may not have been relocated at this point. */ + struct r_debug *r = _dl_debug_update (args->nsid); #ifdef SHARED if (GL(dl_ns)[args->nsid].libc_map != NULL) _dl_open_relocate_one_object (args, r, GL(dl_ns)[args->nsid].libc_map, @@ -768,6 +762,26 @@ dl_open_worker (void *a) __rtld_lock_unlock_recursive (GL(dl_load_tls_lock)); + /* Auditing checkpoint and debugger signalling. Do this even on + error, so that dlopen exists with consistent state. */ + if (args->nsid >= 0 || args->map != NULL) + { + Lmid_t nsid = args->map != NULL ? args->map->l_ns : args->nsid; + struct r_debug *r = _dl_debug_update (nsid); +#ifdef SHARED + bool was_not_consistent = r->r_state != RT_CONSISTENT; +#endif + r->r_state = RT_CONSISTENT; + _dl_debug_state (); + LIBC_PROBE (map_complete, 3, nsid, r, args->map); + +#ifdef SHARED + if (was_not_consistent) + /* Avoid redudant/recursive signalling. */ + _dl_audit_activity_nsid (nsid, LA_ACT_CONSISTENT); +#endif + } + if (__glibc_unlikely (ex.errstring != NULL)) /* Reraise the error. */ _dl_signal_exception (err, &ex, NULL); diff --git a/elf/dl-reloc.c b/elf/dl-reloc.c index 4bf7aec88b..76d14830dd 100644 --- a/elf/dl-reloc.c +++ b/elf/dl-reloc.c @@ -202,12 +202,9 @@ resolve_map (lookup_t l, struct r_scope_elem *scope[], const ElfW(Sym) **ref, #include "dynamic-link.h" void -_dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[], - int reloc_mode, int consider_profiling) +_dl_relocate_object_no_relro (struct link_map *l, struct r_scope_elem *scope[], + int reloc_mode, int consider_profiling) { - if (l->l_relocated) - return; - struct textrels { caddr_t start; @@ -220,8 +217,8 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[], int lazy = reloc_mode & RTLD_LAZY; int skip_ifunc = reloc_mode & __RTLD_NOIFUNC; -#ifdef SHARED bool consider_symbind = false; +#ifdef SHARED /* If we are auditing, install the same handlers we need for profiling. */ if ((reloc_mode & __RTLD_AUDIT) == 0) { @@ -240,9 +237,7 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[], } #elif defined PROF /* Never use dynamic linker profiling for gprof profiling code. */ -# define consider_profiling 0 -#else -# define consider_symbind 0 + consider_profiling = 0; #endif /* If DT_BIND_NOW is set relocate all references in this object. We @@ -300,7 +295,6 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[], ELF_DYNAMIC_RELOCATE (l, scope, lazy, consider_profiling, skip_ifunc); -#ifndef PROF if ((consider_profiling || consider_symbind) && l->l_info[DT_PLTRELSZ] != NULL) { @@ -321,7 +315,6 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[], _dl_fatal_printf (errstring, RTLD_PROGNAME, l->l_name); } } -#endif } /* Mark the object so we know this work has been done. */ @@ -342,17 +335,24 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[], textrels = textrels->next; } - - /* In case we can protect the data now that the relocations are - done, do it. */ - if (l->l_relro_size != 0) - _dl_protect_relro (l); } +void +_dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[], + int reloc_mode, int consider_profiling) +{ + if (l->l_relocated) + return; + _dl_relocate_object_no_relro (l, scope, reloc_mode, consider_profiling); + _dl_protect_relro (l); +} void _dl_protect_relro (struct link_map *l) { + if (l->l_relro_size == 0) + return; + ElfW(Addr) start = ALIGN_DOWN((l->l_addr + l->l_relro_addr), GLRO(dl_pagesize)); diff --git a/elf/dl-support.c b/elf/dl-support.c index 451932dd03..ee590edf93 100644 --- a/elf/dl-support.c +++ b/elf/dl-support.c @@ -338,8 +338,7 @@ _dl_non_dynamic_init (void) call_function_static_weak (_dl_find_object_init); /* Setup relro on the binary itself. */ - if (_dl_main_map.l_relro_size != 0) - _dl_protect_relro (&_dl_main_map); + _dl_protect_relro (&_dl_main_map); } #ifdef DL_SYSINFO_IMPLEMENTATION diff --git a/elf/rtld.c b/elf/rtld.c index cb6b61d570..b8cc3f605f 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -1963,43 +1963,37 @@ dl_main (const ElfW(Phdr) *phdr, if (main_map->l_searchlist.r_list[i] == &GL(dl_rtld_map)) break; - bool rtld_multiple_ref = false; - if (__glibc_likely (i < main_map->l_searchlist.r_nlist)) - { - /* Some DT_NEEDED entry referred to the interpreter object itself, so - put it back in the list of visible objects. We insert it into the - chain in symbol search order because gdb uses the chain's order as - its symbol search order. */ - rtld_multiple_ref = true; + /* Insert the link map for the dynamic loader into the chain in + symbol search order because gdb uses the chain's order as its + symbol search order. */ - GL(dl_rtld_map).l_prev = main_map->l_searchlist.r_list[i - 1]; - if (__glibc_likely (state.mode == rtld_mode_normal)) - { - GL(dl_rtld_map).l_next = (i + 1 < main_map->l_searchlist.r_nlist - ? main_map->l_searchlist.r_list[i + 1] - : NULL); + GL(dl_rtld_map).l_prev = main_map->l_searchlist.r_list[i - 1]; + if (__glibc_likely (state.mode == rtld_mode_normal)) + { + GL(dl_rtld_map).l_next = (i + 1 < main_map->l_searchlist.r_nlist + ? main_map->l_searchlist.r_list[i + 1] + : NULL); #ifdef NEED_DL_SYSINFO_DSO - if (GLRO(dl_sysinfo_map) != NULL - && GL(dl_rtld_map).l_prev->l_next == GLRO(dl_sysinfo_map) - && GL(dl_rtld_map).l_next != GLRO(dl_sysinfo_map)) - GL(dl_rtld_map).l_prev = GLRO(dl_sysinfo_map); + if (GLRO(dl_sysinfo_map) != NULL + && GL(dl_rtld_map).l_prev->l_next == GLRO(dl_sysinfo_map) + && GL(dl_rtld_map).l_next != GLRO(dl_sysinfo_map)) + GL(dl_rtld_map).l_prev = GLRO(dl_sysinfo_map); #endif - } - else - /* In trace mode there might be an invisible object (which we - could not find) after the previous one in the search list. - In this case it doesn't matter much where we put the - interpreter object, so we just initialize the list pointer so - that the assertion below holds. */ - GL(dl_rtld_map).l_next = GL(dl_rtld_map).l_prev->l_next; - - assert (GL(dl_rtld_map).l_prev->l_next == GL(dl_rtld_map).l_next); - GL(dl_rtld_map).l_prev->l_next = &GL(dl_rtld_map); - if (GL(dl_rtld_map).l_next != NULL) - { - assert (GL(dl_rtld_map).l_next->l_prev == GL(dl_rtld_map).l_prev); - GL(dl_rtld_map).l_next->l_prev = &GL(dl_rtld_map); - } + } + else + /* In trace mode there might be an invisible object (which we + could not find) after the previous one in the search list. + In this case it doesn't matter much where we put the + interpreter object, so we just initialize the list pointer so + that the assertion below holds. */ + GL(dl_rtld_map).l_next = GL(dl_rtld_map).l_prev->l_next; + + assert (GL(dl_rtld_map).l_prev->l_next == GL(dl_rtld_map).l_next); + GL(dl_rtld_map).l_prev->l_next = &GL(dl_rtld_map); + if (GL(dl_rtld_map).l_next != NULL) + { + assert (GL(dl_rtld_map).l_next->l_prev == GL(dl_rtld_map).l_prev); + GL(dl_rtld_map).l_next->l_prev = &GL(dl_rtld_map); } /* Now let us see whether all libraries are available in the @@ -2327,35 +2321,30 @@ dl_main (const ElfW(Phdr) *phdr, /* Make sure no new search directories have been added. */ assert (GLRO(dl_init_all_dirs) == GL(dl_all_dirs)); - if (rtld_multiple_ref) - { - /* There was an explicit ref to the dynamic linker as a shared lib. - Re-relocate ourselves with user-controlled symbol definitions. + /* Set up the object lookup structures. */ + _dl_find_object_init (); - We must do this after TLS initialization in case after this - re-relocation, we might call a user-supplied function - (e.g. calloc from _dl_relocate_object) that uses TLS data. */ + /* Likewise for the locking implementation. */ + __rtld_mutex_init (); - /* Set up the object lookup structures. */ - _dl_find_object_init (); + /* Re-relocate ourselves with user-controlled symbol definitions. */ - /* The malloc implementation has been relocated, so resolving - its symbols (and potentially calling IFUNC resolvers) is safe - at this point. */ - __rtld_malloc_init_real (main_map); + { + RTLD_TIMING_VAR (start); + rtld_timer_start (&start); - /* Likewise for the locking implementation. */ - __rtld_mutex_init (); + _dl_relocate_object_no_relro (&GL(dl_rtld_map), main_map->l_scope, 0, 0); - RTLD_TIMING_VAR (start); - rtld_timer_start (&start); + /* The malloc implementation has been relocated, so resolving + its symbols (and potentially calling IFUNC resolvers) is safe + at this point. */ + __rtld_malloc_init_real (main_map); - /* Mark the link map as not yet relocated again. */ - GL(dl_rtld_map).l_relocated = 0; - _dl_relocate_object (&GL(dl_rtld_map), main_map->l_scope, 0, 0); + if (GL(dl_rtld_map).l_relro_size != 0) + _dl_protect_relro (&GL(dl_rtld_map)); - rtld_timer_accum (&relocate_time, start); - } + rtld_timer_accum (&relocate_time, start); + } /* Relocation is complete. Perform early libc initialization. This is the initial libc, even if audit modules have been loaded with @@ -2369,9 +2358,6 @@ dl_main (const ElfW(Phdr) *phdr, _dl_relocate_object might need to call `mprotect' for DT_TEXTREL. */ _dl_sysdep_start_cleanup (); - /* Auditing checkpoint: we have added all objects. */ - _dl_audit_activity_nsid (LM_ID_BASE, LA_ACT_CONSISTENT); - /* Notify the debugger all new objects are now ready to go. We must re-get the address since by now the variable might be in another object. */ r = _dl_debug_update (LM_ID_BASE); @@ -2379,6 +2365,9 @@ dl_main (const ElfW(Phdr) *phdr, _dl_debug_state (); LIBC_PROBE (init_complete, 2, LM_ID_BASE, r); + /* Auditing checkpoint: we have added all objects. */ + _dl_audit_activity_nsid (LM_ID_BASE, LA_ACT_CONSISTENT); + #if defined USE_LDCONFIG && !defined MAP_COPY /* We must munmap() the cache file. */ _dl_unload_cache (); diff --git a/elf/tst-dlopen-auditdup-auditmod.c b/elf/tst-dlopen-auditdup-auditmod.c new file mode 100644 index 0000000000..270a595ec4 --- /dev/null +++ b/elf/tst-dlopen-auditdup-auditmod.c @@ -0,0 +1,104 @@ +/* Auditor that opens again an object that just has been opened. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <dlfcn.h> +#include <link.h> +#include <stdbool.h> +#include <stdio.h> +#include <string.h> +#include <unistd.h> + +unsigned int +la_version (unsigned int v) +{ + return LAV_CURRENT; +} + +static bool trigger_on_la_activity; + +unsigned int +la_objopen (struct link_map *map, Lmid_t lmid, uintptr_t *cookie) +{ + printf ("info: la_objopen: \"%s\"\n", map->l_name); + if (strstr (map->l_name, "/tst-dlopen-auditdupmod.so") != NULL) + trigger_on_la_activity = true; + return 0; +} + +void +la_activity (uintptr_t *cookie, unsigned int flag) +{ + static unsigned int calls; + ++calls; + printf ("info: la_activity: call %u (flag %u)\n", calls, flag); + fflush (stdout); + if (trigger_on_la_activity) + { + /* Avoid triggering on the dlmopen call below. */ + static bool recursion; + if (recursion) + return; + recursion = true; + + puts ("info: about to dlmopen tst-dlopen-auditdupmod.so"); + fflush (stdout); + void *handle = dlmopen (LM_ID_BASE, "tst-dlopen-auditdupmod.so", + RTLD_NOW); + if (handle == NULL) + { + printf ("error: dlmopen: %s\n", dlerror ()); + fflush (stdout); + _exit (1); + } + + /* Check that the constructor has not run. Running the + constructor would require constructing its dependencies, but + the constructor call that triggered this auditing activity + has not completed, and constructors among the dependencies + may not be able to deal with that. */ + int *status = dlsym (handle, "auditdupmod_status"); + if (status == NULL) + { + printf ("error: dlsym: %s\n", dlerror ()); + fflush (stdout); + _exit (1); + } + printf ("info: auditdupmod_status == %d\n", *status); + if (*status != 0) + { + puts ("error: auditdupmod_status == 0 expected"); + fflush (stdout); + _exit (1); + } + /* Checked in the destructor and the main program. */ + ++*status; + printf ("info: auditdupmod_status == %d\n", *status); + + /* Check that the module has been relocated. */ + int **status_address = dlsym (handle, "auditdupmod_status_address"); + if (status_address == NULL || *status_address != status) + { + puts ("error: invalid auditdupmod_status address in" + " tst-dlopen-auditdupmod.so"); + fflush (stdout); + _exit (1); + } + + fflush (stdout); + } +} diff --git a/elf/tst-dlopen-auditdup.c b/elf/tst-dlopen-auditdup.c new file mode 100644 index 0000000000..d022c58ae3 --- /dev/null +++ b/elf/tst-dlopen-auditdup.c @@ -0,0 +1,36 @@ +/* Test that recursive dlopen from auditor works (bug 31986). + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> +#include <support/check.h> +#include <support/xdlfcn.h> + +static int +do_test (void) +{ + puts ("info: about to dlopen tst-dlopen-auditdupmod.so"); + fflush (stdout); + void *handle = xdlopen ("tst-dlopen-auditdupmod.so", RTLD_NOW); + int *status = xdlsym (handle, "auditdupmod_status"); + printf ("info: auditdupmod_status == %d (from main)\n", *status); + TEST_COMPARE (*status, 2); + xdlclose (handle); + return 0; +} + +#include <support/test-driver.c> diff --git a/elf/tst-dlopen-auditdupmod.c b/elf/tst-dlopen-auditdupmod.c new file mode 100644 index 0000000000..59b7e21daa --- /dev/null +++ b/elf/tst-dlopen-auditdupmod.c @@ -0,0 +1,48 @@ +/* Directly opened test module that gets reopened from the auditor. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> +#include <stdlib.h> +#include <support/xdlfcn.h> + +int auditdupmod_status; + +/* Used to check for successful relocation processing. */ +int *auditdupmod_status_address = &auditdupmod_status; + +static void __attribute__ ((constructor)) +init (void) +{ + ++auditdupmod_status; + printf ("info: tst-dlopen-auditdupmod.so constructor called (status %d)\n", + auditdupmod_status); +} + +static void __attribute__ ((destructor)) +fini (void) +{ + /* The tst-dlopen-auditdup-auditmod.so auditor incremented + auditdupmod_status. */ + printf ("info: tst-dlopen-auditdupmod.so destructor called (status %d)\n", + auditdupmod_status); + if (auditdupmod_status != 2) + { + puts ("error: auditdupmod_status == 2 expected"); + exit (1); + } +} diff --git a/elf/tst-rtld-no-malloc-audit.c b/elf/tst-rtld-no-malloc-audit.c new file mode 100644 index 0000000000..a028377ad1 --- /dev/null +++ b/elf/tst-rtld-no-malloc-audit.c @@ -0,0 +1 @@ +#include "tst-rtld-no-malloc.c" diff --git a/elf/tst-rtld-no-malloc-preload.c b/elf/tst-rtld-no-malloc-preload.c new file mode 100644 index 0000000000..a028377ad1 --- /dev/null +++ b/elf/tst-rtld-no-malloc-preload.c @@ -0,0 +1 @@ +#include "tst-rtld-no-malloc.c" diff --git a/elf/tst-rtld-no-malloc.c b/elf/tst-rtld-no-malloc.c new file mode 100644 index 0000000000..5f24d4bd72 --- /dev/null +++ b/elf/tst-rtld-no-malloc.c @@ -0,0 +1,76 @@ +/* Test that program loading does not call malloc. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + + +#include <string.h> +#include <unistd.h> + +static void +print (const char *s) +{ + const char *end = s + strlen (s); + while (s < end) + { + ssize_t ret = write (STDOUT_FILENO, s, end - s); + if (ret <= 0) + _exit (2); + s += ret; + } +} + +static void __attribute__ ((noreturn)) +unexpected_call (const char *function) +{ + print ("error: unexpected call to "); + print (function); + print ("\n"); + _exit (1); +} + +/* These are the malloc functions implement in elf/dl-minimal.c. */ + +void +free (void *ignored) +{ + unexpected_call ("free"); +} + +void * +calloc (size_t ignored1, size_t ignored2) +{ + unexpected_call ("calloc"); +} + +void * +malloc (size_t ignored) +{ + unexpected_call ("malloc"); +} + +void * +realloc (void *ignored1, size_t ignored2) +{ + unexpected_call ("realloc"); +} + +int +main (void) +{ + /* Do not use the test wrapper, to avoid spurious malloc calls from it. */ + return 0; +} diff --git a/include/bits/unistd_ext.h b/include/bits/unistd_ext.h index 277be05746..eeb07baf70 100644 --- a/include/bits/unistd_ext.h +++ b/include/bits/unistd_ext.h @@ -3,4 +3,7 @@ #ifndef _ISOMAC extern int __close_range (unsigned int lowfd, unsigned int highfd, int flags); libc_hidden_proto (__close_range); + +extern pid_t __gettid (void); +libc_hidden_proto (__gettid); #endif diff --git a/include/features.h b/include/features.h index 093de6f44c..0a8aa7c4f9 100644 --- a/include/features.h +++ b/include/features.h @@ -26,6 +26,7 @@ _ISOC11_SOURCE Extensions to ISO C99 from ISO C11. _ISOC23_SOURCE Extensions to ISO C99 from ISO C23. _ISOC2X_SOURCE Old name for _ISOC23_SOURCE. + _ISOC2Y_SOURCE Extensions to ISO C23 from ISO C2Y. __STDC_WANT_LIB_EXT2__ Extensions to ISO C99 from TR 27431-2:2010. __STDC_WANT_IEC_60559_BFP_EXT__ @@ -150,6 +151,7 @@ #undef __USE_FORTIFY_LEVEL #undef __KERNEL_STRICT_NAMES #undef __GLIBC_USE_ISOC23 +#undef __GLIBC_USE_ISOC2Y #undef __GLIBC_USE_DEPRECATED_GETS #undef __GLIBC_USE_DEPRECATED_SCANF #undef __GLIBC_USE_C23_STRTOL @@ -216,6 +218,8 @@ # define _ISOC11_SOURCE 1 # undef _ISOC23_SOURCE # define _ISOC23_SOURCE 1 +# undef _ISOC2Y_SOURCE +# define _ISOC2Y_SOURCE 1 # undef _POSIX_SOURCE # define _POSIX_SOURCE 1 # undef _POSIX_C_SOURCE @@ -239,15 +243,23 @@ #if (defined _DEFAULT_SOURCE \ || (!defined __STRICT_ANSI__ \ && !defined _ISOC99_SOURCE && !defined _ISOC11_SOURCE \ - && !defined _ISOC23_SOURCE \ + && !defined _ISOC23_SOURCE && !defined _ISOC2Y_SOURCE \ && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE \ && !defined _XOPEN_SOURCE)) # undef _DEFAULT_SOURCE # define _DEFAULT_SOURCE 1 #endif +/* This is to enable the ISO C2Y extension. */ +#if (defined _ISOC2Y_SOURCE \ + || (defined __STDC_VERSION__ && __STDC_VERSION__ > 202311L)) +# define __GLIBC_USE_ISOC2Y 1 +#else +# define __GLIBC_USE_ISOC2Y 0 +#endif + /* This is to enable the ISO C23 extension. */ -#if (defined _ISOC23_SOURCE \ +#if (defined _ISOC23_SOURCE || defined _ISOC2Y_SOURCE \ || (defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L)) # define __GLIBC_USE_ISOC23 1 #else @@ -255,21 +267,22 @@ #endif /* This is to enable the ISO C11 extension. */ -#if (defined _ISOC11_SOURCE || defined _ISOC23_SOURCE \ +#if (defined _ISOC11_SOURCE || defined _ISOC23_SOURCE \ + || defined _ISOC2Y_SOURCE \ || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L)) # define __USE_ISOC11 1 #endif /* This is to enable the ISO C99 extension. */ #if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE \ - || defined _ISOC23_SOURCE \ + || defined _ISOC23_SOURCE || defined _ISOC2Y_SOURCE \ || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) # define __USE_ISOC99 1 #endif /* This is to enable the ISO C90 Amendment 1:1995 extension. */ #if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE \ - || defined _ISOC23_SOURCE \ + || defined _ISOC23_SOURCE || defined _ISOC2Y_SOURCE \ || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199409L)) # define __USE_ISOC95 1 #endif diff --git a/include/stdlib.h b/include/stdlib.h index 0cab3f5b56..57f4ab8545 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -20,6 +20,7 @@ # include <sys/stat.h> # include <rtld-malloc.h> +# include <internal-sigset.h> extern __typeof (strtol_l) __strtol_l; extern __typeof (strtoul_l) __strtoul_l; @@ -77,6 +78,12 @@ libc_hidden_proto (__isoc23_strtoull_l) # define strtoull_l __isoc23_strtoull_l #endif +extern void __abort_fork_reset_child (void) attribute_hidden; +extern void __abort_lock_rdlock (internal_sigset_t *set) attribute_hidden; +extern void __abort_lock_wrlock (internal_sigset_t *set) attribute_hidden; +extern void __abort_lock_unlock (const internal_sigset_t *set) + attribute_hidden; + libc_hidden_proto (exit) libc_hidden_proto (abort) libc_hidden_proto (getenv) diff --git a/inet/netinet/in.h b/inet/netinet/in.h index f684be5beb..29fdd9b85e 100644 --- a/inet/netinet/in.h +++ b/inet/netinet/in.h @@ -93,6 +93,8 @@ enum #define IPPROTO_ETHERNET IPPROTO_ETHERNET IPPROTO_RAW = 255, /* Raw IP packets. */ #define IPPROTO_RAW IPPROTO_RAW + IPPROTO_SMC = 256, /* Shared Memory Communications. */ +#define IPPROTO_SMC IPPROTO_SMC IPPROTO_MPTCP = 262, /* Multipath TCP connection. */ #define IPPROTO_MPTCP IPPROTO_MPTCP IPPROTO_MAX diff --git a/intl/dcigettext.c b/intl/dcigettext.c index a028518c2a..70ba4a547f 100644 --- a/intl/dcigettext.c +++ b/intl/dcigettext.c @@ -687,7 +687,7 @@ DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2, /* When this is a SUID binary we must not allow accessing files outside the dedicated directories. */ if (ENABLE_SECURE && IS_PATH_WITH_DIR (single_locale)) - /* Ingore this entry. */ + /* Ignore this entry. */ continue; } diff --git a/io/Makefile b/io/Makefile index a401ec414e..f5813a81c7 100644 --- a/io/Makefile +++ b/io/Makefile @@ -188,6 +188,7 @@ tests := \ tst-closefrom \ tst-copy_file_range \ tst-faccessat \ + tst-faccessat-setuid \ tst-fchmod-errors \ tst-fchmod-fuse \ tst-fchmodat \ @@ -295,7 +296,7 @@ CFLAGS-read.c += -fexceptions -fasynchronous-unwind-tables $(config-cflags-wno-i CFLAGS-write.c += -fexceptions -fasynchronous-unwind-tables $(config-cflags-wno-ignored-attributes) CFLAGS-close.c += -fexceptions -fasynchronous-unwind-tables CFLAGS-lseek64.c += $(config-cflags-wno-ignored-attributes) -CFLAGS-tst-read-zero.c += $(no-fortify-source),-D_FORTIFY_SOURCE=$(supported-fortify) +CFLAGS-tst-read-zero.c += $(no-fortify-source) -D_FORTIFY_SOURCE=$(supported-fortify) CFLAGS-test-stat.c += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE CFLAGS-test-lfs.c += -D_LARGEFILE64_SOURCE diff --git a/io/bits/statx-generic.h b/io/bits/statx-generic.h index 19c3565edc..da199ddaa1 100644 --- a/io/bits/statx-generic.h +++ b/io/bits/statx-generic.h @@ -44,6 +44,7 @@ # define STATX_DIOALIGN 0x2000U # define STATX_MNT_ID_UNIQUE 0x4000U # define STATX_SUBVOL 0x8000U +# define STATX_WRITE_ATOMIC 0x00010000U # define STATX__RESERVED 0x80000000U # define STATX_ATTR_COMPRESSED 0x0004 @@ -55,6 +56,7 @@ # define STATX_ATTR_MOUNT_ROOT 0x2000 # define STATX_ATTR_VERITY 0x100000 # define STATX_ATTR_DAX 0x200000 +# define STATX_ATTR_WRITE_ATOMIC 0x00400000 #endif /* !STATX_TYPE */ __BEGIN_DECLS diff --git a/io/sys/stat.h b/io/sys/stat.h index 3b4ba80132..0e4edb483d 100644 --- a/io/sys/stat.h +++ b/io/sys/stat.h @@ -26,7 +26,7 @@ #include <bits/types.h> /* For __mode_t and __dev_t. */ -#ifdef __USE_XOPEN2K8 +#if defined(__USE_ATFILE) || defined(__USE_XOPEN2K8) # include <bits/types/struct_timespec.h> #endif diff --git a/io/tst-faccessat-setuid.c b/io/tst-faccessat-setuid.c new file mode 100644 index 0000000000..aab0261914 --- /dev/null +++ b/io/tst-faccessat-setuid.c @@ -0,0 +1,163 @@ +/* Smoke test for faccessat with different UID/GID combinations. Needs root + access. + Copyright The GNU Toolchain Authors. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <fcntl.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <sys/types.h> +#include <pwd.h> + +#include <support/check.h> +#include <support/namespace.h> +#include <support/support.h> +#include <support/temp_file.h> +#include <support/test-driver.h> +#include <support/xdirent.h> +#include <support/xunistd.h> + +#define SOMEFILE "some-file" + +static int dir_fd; +uid_t users[3]; +gid_t groups[3]; + +struct test_case +{ + int mode; + uid_t uid; + uid_t euid; + gid_t gid; + gid_t egid; + int flags; + bool succeeds; +}; + +static void +run_one_test_child (void *in) +{ + struct test_case *t = (struct test_case *) in; + + printf ("TEST: MODE=%s, UID=%d, EUID=%d, GID=%d, EGID=%d, FLAGS=%s: ", + t->mode == R_OK ? "R_OK" : "W_OK", t->uid, t->euid, t->gid, t->egid, + t->flags ? "AT_EACCESS" : "0"); + + if (setregid (t->gid, t->egid) != 0) + FAIL_EXIT1 ("Could not change group: %m\n"); + if (setreuid (t->uid, t->euid) != 0) + FAIL_EXIT1 ("Could not change user: %m\n"); + + if (faccessat (dir_fd, SOMEFILE, t->mode, t->flags) != 0 && t->succeeds) + FAIL_EXIT1 ("faccessat failed: %m\n"); + + if (!t->succeeds && errno != EACCES) + FAIL_EXIT1 ("Unexpected faccessat failure: %m\n"); + + printf ("OK%s\n", !t->succeeds ? " (FAILED with EACCES)" : ""); +} + +static void +run_one_test (int mode, int u, int eu, int g, int eg, int flags, bool succeeds) +{ + struct test_case t = + {mode, users[u], users[eu], groups[g], groups[eg], flags, succeeds}; + support_isolate_in_subprocess (run_one_test_child, &t); +} + +static int +do_test (void) +{ + + /* We need to start as root. */ + if (getuid () != 0) + FAIL_UNSUPPORTED ("Test needs to be run as root (UID 0)\n"); + + /* Collect 3 distinct users and groups to test with. */ + struct passwd *ent = NULL; + int count = 0; + while ((ent = getpwent ()) != NULL && count < 3) + { + if (ent->pw_uid == 0 || ent->pw_gid == 0) + continue; + + int i = count; + bool skip = false; + while (i > 0) + if (groups[--i] == ent->pw_gid) + skip = true; + + if (skip) + continue; + + users[count] = ent->pw_uid; + groups[count++] = ent->pw_gid; + } + + if (count < 3) + FAIL_UNSUPPORTED ("Not enough users in the system to do this test\n"); + + printf ("Testing with UID/GID:\n"); + while (--count >= 0) + printf (" UID: %d, GID: %d\n", users[count], groups[count]); + printf ("\n"); + + char *tempdir = support_create_temp_directory ("tst-faccessat-setuid."); + dir_fd = xopen (tempdir, O_RDONLY | O_DIRECTORY, 0); + + xfchmod (dir_fd, 0777); + + /* Now, create a file in it, which will be our test case. */ + + int fd = openat (dir_fd, SOMEFILE, O_CREAT|O_RDWR|O_EXCL, 0640); + if (fd == -1) + { + if (errno == ENOSYS) + FAIL_UNSUPPORTED ("*at functions not supported"); + + FAIL_EXIT1 ("file creation failed"); + } + xwrite (fd, "hello", 5); + + if (fchown (fd, users[0], groups[1]) == -1) + FAIL_EXIT1 ("fchown failed: %m\n"); + xclose (fd); + + char *somefile = xasprintf ("%s/" SOMEFILE, tempdir); + add_temp_file (somefile); + + /* Finally, run through the combinations. */ + for (int u = 0; u < 3; u++) + for (int eu = 0; eu < 3; eu++) + for (int g = 0; g < 3; g++) + for (int eg = 0; eg < 3; eg++) + { + run_one_test (R_OK, u, eu, g, eg, 0, u == 0 || g == 1); + run_one_test (W_OK, u, eu, g, eg, 0, u == 0); + run_one_test (R_OK, u, eu, g, eg, AT_EACCESS, eu == 0 || eg == 1); + run_one_test (W_OK, u, eu, g, eg, AT_EACCESS, eu == 0); + } + + xclose (dir_fd); + free (tempdir); + free (somefile); + + return 0; +} +#include <support/test-driver.c> diff --git a/io/tst-faccessat.c b/io/tst-faccessat.c index b90954e318..b980ca3fa2 100644 --- a/io/tst-faccessat.c +++ b/io/tst-faccessat.c @@ -1,6 +1,23 @@ -/* Test for faccessat function. */ - -#include <dirent.h> +/* Test for faccessat function. + Copyright (C) 2006-2024 Free Software Foundation, Inc. + Copyright The GNU Toolchain Authors. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> #include <fcntl.h> #include <stdio.h> #include <stdlib.h> @@ -8,47 +25,19 @@ #include <unistd.h> #include <sys/stat.h> +#include <support/check.h> +#include <support/temp_file.h> +#include <support/test-driver.h> +#include <support/xdirent.h> #include <support/xunistd.h> -static void prepare (void); -#define PREPARE(argc, argv) prepare () - -static int do_test (void); -#define TEST_FUNCTION do_test () - -#include "../test-skeleton.c" - static int dir_fd; static void -prepare (void) +prepare (int argc, char **argv) { - size_t test_dir_len = strlen (test_dir); - static const char dir_name[] = "/tst-faccessat.XXXXXX"; - - size_t dirbuflen = test_dir_len + sizeof (dir_name); - char *dirbuf = malloc (dirbuflen); - if (dirbuf == NULL) - { - puts ("out of memory"); - exit (1); - } - - snprintf (dirbuf, dirbuflen, "%s%s", test_dir, dir_name); - if (mkdtemp (dirbuf) == NULL) - { - puts ("cannot create temporary directory"); - exit (1); - } - - add_temp_file (dirbuf); - - dir_fd = open (dirbuf, O_RDONLY | O_DIRECTORY); - if (dir_fd == -1) - { - puts ("cannot open directory"); - exit (1); - } + dir_fd = xopen (support_create_temp_directory ("tst-faccessat."), + O_RDONLY | O_DIRECTORY, 0); } @@ -56,159 +45,79 @@ static int do_test (void) { /* fdopendir takes over the descriptor, make a copy. */ - int dupfd = dup (dir_fd); - if (dupfd == -1) - { - puts ("dup failed"); - return 1; - } - if (lseek (dupfd, 0, SEEK_SET) != 0) - { - puts ("1st lseek failed"); - return 1; - } + int dupfd = xdup (dir_fd); + xlseek (dupfd, 0, SEEK_SET); /* The directory should be empty save the . and .. files. */ - DIR *dir = fdopendir (dupfd); - if (dir == NULL) - { - puts ("fdopendir failed"); - return 1; - } + DIR *dir = xfdopendir (dupfd); + struct dirent64 *d; - while ((d = readdir64 (dir)) != NULL) + while ((d = xreaddir64 (dir)) != NULL) if (strcmp (d->d_name, ".") != 0 && strcmp (d->d_name, "..") != 0) - { - printf ("temp directory contains file \"%s\"\n", d->d_name); - return 1; - } - closedir (dir); + FAIL_EXIT1 ("temp directory contains file \"%s\"\n", d->d_name); + xclosedir (dir); /* Try to create a file. */ int fd = openat (dir_fd, "some-file", O_CREAT|O_RDWR|O_EXCL, 0666); if (fd == -1) { if (errno == ENOSYS) - { - puts ("*at functions not supported"); - return 0; - } + FAIL_UNSUPPORTED ("*at functions not supported"); - puts ("file creation failed"); - return 1; + FAIL_EXIT1 ("file creation failed"); } xwrite (fd, "hello", 5); puts ("file created"); /* Before closing the file, try using this file descriptor to open another file. This must fail. */ - if (faccessat (fd, "should-not-work", F_OK, AT_EACCESS) != -1) - { - puts ("faccessat using descriptor for normal file worked"); - return 1; - } - if (errno != ENOTDIR) - { - puts ("\ -error for faccessat using descriptor for normal file not ENOTDIR "); - return 1; - } - - close (fd); + TEST_VERIFY_EXIT (faccessat (fd, "should-not-work", F_OK, AT_EACCESS) == -1); + TEST_VERIFY_EXIT (errno == ENOTDIR); - int result = 0; + xclose (fd); - if (faccessat (dir_fd, "some-file", F_OK, AT_EACCESS)) - { - printf ("faccessat F_OK: %m\n"); - result = 1; - } - if (faccessat (dir_fd, "some-file", W_OK, AT_EACCESS)) - { - printf ("faccessat W_OK: %m\n"); - result = 1; - } + TEST_VERIFY (faccessat (dir_fd, "some-file", F_OK, AT_EACCESS) == 0); + TEST_VERIFY (faccessat (dir_fd, "some-file", W_OK, AT_EACCESS) == 0); errno = 0; - if (faccessat (dir_fd, "some-file", X_OK, AT_EACCESS) == 0 - || errno != EACCES) - { - printf ("faccessat X_OK on nonexecutable: %m\n"); - result = 1; - } + if (faccessat (dir_fd, "some-file", X_OK, AT_EACCESS) != 0) + TEST_COMPARE (errno, EACCES); + else + FAIL ("faccessat unexpectedly succeeded\n"); if (fchmodat (dir_fd, "some-file", 0400, 0) != 0) - { - printf ("fchownat failed: %m\n"); - return 1; - } + FAIL_EXIT1 ("fchownat failed: %m\n"); - if (faccessat (dir_fd, "some-file", R_OK, AT_EACCESS)) - { - printf ("faccessat R_OK: %m\n"); - result = 1; - } + TEST_VERIFY (faccessat (dir_fd, "some-file", R_OK, AT_EACCESS) == 0); + /* Write would succeed only for EUID root, otherwise this test should + fail. */ errno = 0; - if (faccessat (dir_fd, "some-file", W_OK, AT_EACCESS) == 0 - ? (geteuid () != 0) : (errno != EACCES)) - { - printf ("faccessat W_OK on unwritable file: %m\n"); - result = 1; - } + TEST_VERIFY (faccessat (dir_fd, "some-file", W_OK, AT_EACCESS) == 0 + ? (geteuid () == 0) : (errno == EACCES)); /* Create a file descriptor which is closed again right away. */ - int dir_fd2 = dup (dir_fd); - if (dir_fd2 == -1) - { - puts ("dup failed"); - return 1; - } + int dir_fd2 = xdup (dir_fd); close (dir_fd2); /* With the file descriptor closed the next call must fail. */ - if (faccessat (dir_fd2, "some-file", F_OK, AT_EACCESS) != -1) - { - puts ("faccessat using closed descriptor succeeded"); - return 1; - } - if (errno != EBADF) - { - puts ("faccessat using closed descriptor did not set EBADF"); - return 1; - } + TEST_VERIFY_EXIT (faccessat (dir_fd2, "some-file", F_OK, AT_EACCESS) + == -1); + TEST_VERIFY_EXIT (errno == EBADF); /* Same with a non-existing file. */ - if (faccessat (dir_fd2, "non-existing-file", F_OK, AT_EACCESS) != -1) - { - puts ("2nd faccessat using closed descriptor succeeded"); - return 1; - } - if (errno != EBADF) - { - puts ("2nd faccessat using closed descriptor did not set EBADF"); - return 1; - } + TEST_VERIFY_EXIT (faccessat (dir_fd2, "non-existing-file", F_OK, AT_EACCESS) + == -1); + TEST_VERIFY_EXIT (errno == EBADF); - if (unlinkat (dir_fd, "some-file", 0) != 0) - { - puts ("unlinkat failed"); - result = 1; - } + TEST_VERIFY (unlinkat (dir_fd, "some-file", 0) == 0); - close (dir_fd); + xclose (dir_fd); - fd = faccessat (-1, "some-file", F_OK, AT_EACCESS); - if (fd != -1) - { - puts ("faccessat using -1 descriptor succeeded"); - return 1; - } - if (errno != EBADF) - { - puts ("faccessat using -1 descriptor did not set EBADF"); - return 1; - } + TEST_VERIFY_EXIT (faccessat (-1, "some-file", F_OK, AT_EACCESS) == -1); + TEST_VERIFY_EXIT (errno == EBADF); - return result; + return 0; } +#define PREPARE prepare +#include <support/test-driver.c> diff --git a/libio/Makefile b/libio/Makefile index ae90e343ad..4370152964 100644 --- a/libio/Makefile +++ b/libio/Makefile @@ -86,6 +86,8 @@ tests = \ bug-wmemstream1 \ bug-wsetpos \ test-fmemopen \ + test-fputs-unbuffered-full \ + test-fputws-unbuffered-full \ tst-atime \ tst-bz22415 \ tst-bz24051 \ @@ -119,6 +121,7 @@ tests = \ tst-mmap-offend \ tst-mmap-setvbuf \ tst-mmap2-eofsync \ + tst-popen-fork \ tst-popen1 \ tst-setvbuf1 \ tst-sprintf-chk-ub \ @@ -143,6 +146,8 @@ tests = \ tst_wscanf \ # tests +$(objpfx)tst-popen-fork: $(shared-thread-library) + tests-internal = tst-vtables tst-vtables-interposed ifeq (yes,$(build-shared)) @@ -293,11 +298,18 @@ endif ifeq ($(build-shared),yes) aux += oldfileops oldstdfiles tests += \ + tst-fopen-compat \ tst-stderr-compat \ # tests tests-2.0 += \ + tst-fopen-compat \ tst-stderr-compat \ # tests-2.0 + +tst-fopen-compat-ARGS = tst-fopen-compat.c +# Disable PIE to trigger copy relocation. +CFLAGS-tst-fopen-compat.c += -fno-pie +tst-fopen-compat-no-pie = yes endif shared-only-routines = oldiofopen oldiofdopen oldiofclose oldfileops \ diff --git a/libio/iopopen.c b/libio/iopopen.c index d01cb0648e..352513a291 100644 --- a/libio/iopopen.c +++ b/libio/iopopen.c @@ -57,6 +57,26 @@ unlock (void *not_used) } #endif +/* These lock/unlock/resetlock functions are used during fork. */ + +void +_IO_proc_file_chain_lock (void) +{ + _IO_lock_lock (proc_file_chain_lock); +} + +void +_IO_proc_file_chain_unlock (void) +{ + _IO_lock_unlock (proc_file_chain_lock); +} + +void +_IO_proc_file_chain_resetlock (void) +{ + _IO_lock_init (proc_file_chain_lock); +} + /* POSIX states popen shall ensure that any streams from previous popen() calls that remain open in the parent process should be closed in the new child process. diff --git a/libio/libioP.h b/libio/libioP.h index 616253fcd0..a83a411fdf 100644 --- a/libio/libioP.h +++ b/libio/libioP.h @@ -429,6 +429,12 @@ libc_hidden_proto (_IO_list_resetlock) extern void _IO_enable_locks (void) __THROW; libc_hidden_proto (_IO_enable_locks) +/* Functions for operating popen's proc_file_chain_lock during fork. */ + +extern void _IO_proc_file_chain_lock (void) __THROW attribute_hidden; +extern void _IO_proc_file_chain_unlock (void) __THROW attribute_hidden; +extern void _IO_proc_file_chain_resetlock (void) __THROW attribute_hidden; + /* Default jumptable functions. */ extern int _IO_default_underflow (FILE *) __THROW; diff --git a/libio/oldfileops.c b/libio/oldfileops.c index 97148dba9b..8f775c9094 100644 --- a/libio/oldfileops.c +++ b/libio/oldfileops.c @@ -103,9 +103,11 @@ _IO_old_file_init_internal (struct _IO_FILE_plus *fp) fp->file._old_offset = _IO_pos_BAD; fp->file._flags |= CLOSED_FILEBUF_FLAGS; - _IO_link_in (fp); + /* NB: _vtable_offset must be set before calling _IO_link_in since + _IO_vtable_offset is used to detect the old binaries. */ fp->file._vtable_offset = ((int) sizeof (struct _IO_FILE) - (int) sizeof (struct _IO_FILE_complete)); + _IO_link_in (fp); fp->file._fileno = -1; if (&_IO_stdin_used != NULL || !_IO_legacy_file ((FILE *) fp)) diff --git a/libio/test-fputs-unbuffered-full.c b/libio/test-fputs-unbuffered-full.c new file mode 100644 index 0000000000..145b4b6a57 --- /dev/null +++ b/libio/test-fputs-unbuffered-full.c @@ -0,0 +1,78 @@ +/* Regression test for 20632. + Copyright (C) 2024 Free Software Foundation, Inc. + Copyright The GNU Toolchain Authors. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <stdio.h> +#include <stdlib.h> +#include <support/check.h> +#include <support/xunistd.h> +#include <unistd.h> + +#ifndef WIDE +# define TEST_NAME "fputs-unbuffered-full" +# define CHAR char +# define FPUTS fputs +# define TEXT "0123456789ABCDEF" +#else +# include <wchar.h> +# define TEST_NAME "fputws-unbuffered-full" +# define CHAR wchar_t +# define FPUTS fputws +# define TEXT L"0123456789ABCDEF" +#endif /* WIDE */ + + +static int +do_test (void) +{ + /* Open an unbuffered stream to /dev/full. */ + FILE *fp = fopen ("/dev/full", "w"); + TEST_VERIFY_EXIT (fp != NULL); + int ret = setvbuf (fp, NULL, _IONBF, 0); + TEST_VERIFY_EXIT (ret == 0); + + /* Output a long string. */ + const int sz = 4096; + CHAR *buff = calloc (sz+1, sizeof *buff); + for (int i=0; i < sz; i++) + buff[i] = (CHAR) 'x'; + buff[sz] = (CHAR) '\0'; + errno = 0; + ret = FPUTS (buff, fp); + TEST_VERIFY (ret == EOF); + TEST_VERIFY (errno == ENOSPC); + free (buff); + + /* Output shorter strings. */ + for (int i=0; i < 1024; i++) + { + errno = 0; + ret = FPUTS (TEXT, fp); + TEST_VERIFY (ret == EOF); + TEST_VERIFY (errno == ENOSPC); + + /* Call malloc, triggering a crash if its + function pointers have been overwritten. */ + void *volatile ptr = malloc (1); + free (ptr); + } + return 0; +} + +#include <support/test-driver.c> diff --git a/libio/test-fputws-unbuffered-full.c b/libio/test-fputws-unbuffered-full.c new file mode 100644 index 0000000000..f3d79326e4 --- /dev/null +++ b/libio/test-fputws-unbuffered-full.c @@ -0,0 +1,21 @@ +/* Regression test for 20632. + Copyright (C) 2024 Free Software Foundation, Inc. + Copyright The GNU Toolchain Authors. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#define WIDE 1 +#include "./test-fputs-unbuffered-full.c" diff --git a/libio/tst-fopen-compat.c b/libio/tst-fopen-compat.c new file mode 100644 index 0000000000..f241b61043 --- /dev/null +++ b/libio/tst-fopen-compat.c @@ -0,0 +1,85 @@ +/* Verify that fopen works with copy relocation on _IO_stderr_ in binaries + linked with glibc 2.0. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <shlib-compat.h> + +#if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_1) +# define _LIBC +# define _IO_USE_OLD_IO_FILE +# include <stdio.h> +# include <string.h> +# include <unistd.h> +# include <limits.h> +# include <sys/stat.h> +# include <support/check.h> + +struct _IO_jump_t; + +struct _IO_FILE_plus +{ + FILE file; + const struct _IO_jump_t *vtable; +}; + +extern struct _IO_FILE_plus _IO_stderr_; +compat_symbol_reference (libc, _IO_stderr_, _IO_stderr_, GLIBC_2_0); +compat_symbol_reference (libc, fopen, fopen, GLIBC_2_0); +compat_symbol_reference (libc, fclose, fclose, GLIBC_2_0); + +static int +do_test (int argc, char *argv[]) +{ + static char filename[PATH_MAX + 1]; + struct stat st; + char *name = NULL; + int i; + + /* Try to trigger copy relocation. */ + TEST_VERIFY_EXIT (_IO_stderr_.file._fileno == STDERR_FILENO); + + for (i = 1; i < argc; i++) + { + name = argv[i]; + if (stat (name, &st) == 0) + { + TEST_VERIFY_EXIT (strlen (name) <= PATH_MAX); + break; + } + } + TEST_VERIFY_EXIT (name != NULL); + + strcpy (filename, name); + FILE *fp = fopen (filename, "r"); + TEST_VERIFY_EXIT (strcmp (filename, name) == 0); + TEST_VERIFY_EXIT (fp != NULL); + TEST_VERIFY_EXIT (fclose (fp) == 0); + return 0; +} +#else +# include <support/test-driver.h> + +static int +do_test (int argc, char *argv[]) +{ + return EXIT_UNSUPPORTED; +} +#endif + +#define TEST_FUNCTION_ARGV do_test +#include <support/test-driver.c> diff --git a/libio/tst-popen-fork.c b/libio/tst-popen-fork.c new file mode 100644 index 0000000000..1df30fc6c0 --- /dev/null +++ b/libio/tst-popen-fork.c @@ -0,0 +1,80 @@ +/* Test concurrent popen and fork. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> +#include <stdatomic.h> +#include <pthread.h> +#include <unistd.h> +#include <sys/wait.h> + +#include <support/check.h> +#include <support/xthread.h> +#include <support/xunistd.h> + +static void +popen_and_pclose (void) +{ + FILE *f = popen ("true", "r"); + TEST_VERIFY_EXIT (f != NULL); + pclose (f); + return; +} + +static atomic_bool done = ATOMIC_VAR_INIT (0); + +static void * +popen_and_pclose_forever (__attribute__ ((unused)) + void *arg) +{ + while (!atomic_load_explicit (&done, memory_order_acquire)) + popen_and_pclose (); + return NULL; +} + +static int +do_test (void) +{ + + /* Repeatedly call popen in a loop during the entire test. */ + pthread_t t = xpthread_create (NULL, popen_and_pclose_forever, NULL); + + /* Repeatedly fork off and reap child processes one-by-one. + Each child calls popen once, then exits, leading to the possibility + that a child forks *during* our own popen call, thus inheriting any + intermediate popen state, possibly including lock state(s). */ + for (int i = 0; i < 100; i++) + { + int cpid = xfork (); + + if (cpid == 0) + { + popen_and_pclose (); + _exit (0); + } + else + xwaitpid (cpid, NULL, 0); + } + + /* Stop calling popen. */ + atomic_store_explicit (&done, 1, memory_order_release); + xpthread_join (t); + + return 0; +} + +#include <support/test-driver.c> diff --git a/libio/wfileops.c b/libio/wfileops.c index 6de5968358..fdbe8692e8 100644 --- a/libio/wfileops.c +++ b/libio/wfileops.c @@ -420,14 +420,14 @@ _IO_wfile_overflow (FILE *f, wint_t wch) { _IO_wdoallocbuf (f); _IO_free_wbackup_area (f); - _IO_wsetg (f, f->_wide_data->_IO_buf_base, - f->_wide_data->_IO_buf_base, f->_wide_data->_IO_buf_base); if (f->_IO_write_base == NULL) { _IO_doallocbuf (f); _IO_setg (f, f->_IO_buf_base, f->_IO_buf_base, f->_IO_buf_base); } + _IO_wsetg (f, f->_wide_data->_IO_buf_base, + f->_wide_data->_IO_buf_base, f->_wide_data->_IO_buf_base); } else { @@ -958,7 +958,7 @@ _IO_wfile_xsputn (FILE *f, const void *data, size_t n) const wchar_t *s = (const wchar_t *) data; size_t to_do = n; int must_flush = 0; - size_t count; + size_t count = 0; if (n <= 0) return 0; @@ -967,7 +967,6 @@ _IO_wfile_xsputn (FILE *f, const void *data, size_t n) (or the filebuf is unbuffered), use sys_write directly. */ /* First figure out how much space is available in the buffer. */ - count = f->_wide_data->_IO_write_end - f->_wide_data->_IO_write_ptr; if ((f->_flags & _IO_LINE_BUF) && (f->_flags & _IO_CURRENTLY_PUTTING)) { count = f->_wide_data->_IO_buf_end - f->_wide_data->_IO_write_ptr; @@ -985,6 +984,10 @@ _IO_wfile_xsputn (FILE *f, const void *data, size_t n) } } } + else if (f->_wide_data->_IO_write_end > f->_wide_data->_IO_write_ptr) + count = f->_wide_data->_IO_write_end + - f->_wide_data->_IO_write_ptr; /* Space available. */ + /* Then fill the buffer. */ if (count > 0) { diff --git a/locale/programs/ld-collate.c b/locale/programs/ld-collate.c index 5048adbd9f..2cf9a4bc53 100644 --- a/locale/programs/ld-collate.c +++ b/locale/programs/ld-collate.c @@ -2678,7 +2678,7 @@ collate_read (struct linereader *ldfile, struct localedef_t *result, if (nowtok == tok_eof) break; - /* Ingore empty lines. */ + /* Ignore empty lines. */ if (nowtok == tok_eol) { now = lr_token (ldfile, charmap, result, NULL, verbose); diff --git a/locale/programs/ld-ctype.c b/locale/programs/ld-ctype.c index eb6e7e145c..2270960bd2 100644 --- a/locale/programs/ld-ctype.c +++ b/locale/programs/ld-ctype.c @@ -2164,7 +2164,7 @@ ctype_read (struct linereader *ldfile, struct localedef_t *result, if (nowtok == tok_eof) break; - /* Ingore empty lines. */ + /* Ignore empty lines. */ if (nowtok == tok_eol) { now = lr_token (ldfile, charmap, NULL, NULL, verbose); diff --git a/locale/programs/ld-measurement.c b/locale/programs/ld-measurement.c index c4061264ea..ba7f0c0bff 100644 --- a/locale/programs/ld-measurement.c +++ b/locale/programs/ld-measurement.c @@ -168,7 +168,7 @@ measurement_read (struct linereader *ldfile, struct localedef_t *result, if (nowtok == tok_eof) break; - /* Ingore empty lines. */ + /* Ignore empty lines. */ if (nowtok == tok_eol) { now = lr_token (ldfile, charmap, result, NULL, verbose); diff --git a/locale/programs/ld-numeric.c b/locale/programs/ld-numeric.c index 11fdac06fa..e20e322923 100644 --- a/locale/programs/ld-numeric.c +++ b/locale/programs/ld-numeric.c @@ -188,7 +188,7 @@ numeric_read (struct linereader *ldfile, struct localedef_t *result, if (nowtok == tok_eof) break; - /* Ingore empty lines. */ + /* Ignore empty lines. */ if (nowtok == tok_eol) { now = lr_token (ldfile, charmap, result, NULL, verbose); diff --git a/locale/programs/ld-paper.c b/locale/programs/ld-paper.c index 95b3d1074a..a755140707 100644 --- a/locale/programs/ld-paper.c +++ b/locale/programs/ld-paper.c @@ -167,7 +167,7 @@ paper_read (struct linereader *ldfile, struct localedef_t *result, if (nowtok == tok_eof) break; - /* Ingore empty lines. */ + /* Ignore empty lines. */ if (nowtok == tok_eol) { now = lr_token (ldfile, charmap, result, NULL, verbose); diff --git a/locale/programs/ld-telephone.c b/locale/programs/ld-telephone.c index b45573974a..79aba6ef15 100644 --- a/locale/programs/ld-telephone.c +++ b/locale/programs/ld-telephone.c @@ -223,7 +223,7 @@ telephone_read (struct linereader *ldfile, struct localedef_t *result, if (nowtok == tok_eof) break; - /* Ingore empty lines. */ + /* Ignore empty lines. */ if (nowtok == tok_eol) { now = lr_token (ldfile, charmap, result, NULL, verbose); diff --git a/locale/programs/ld-time.c b/locale/programs/ld-time.c index 1abff3cf53..349b31fff5 100644 --- a/locale/programs/ld-time.c +++ b/locale/programs/ld-time.c @@ -710,7 +710,7 @@ time_read (struct linereader *ldfile, struct localedef_t *result, if (nowtok == tok_eof) break; - /* Ingore empty lines. */ + /* Ignore empty lines. */ if (nowtok == tok_eol) { now = lr_token (ldfile, charmap, result, repertoire, verbose); diff --git a/localedata/charmaps/UTF-8 b/localedata/charmaps/UTF-8 index bc694ec4c8..cdc33eb997 100644 --- a/localedata/charmaps/UTF-8 +++ b/localedata/charmaps/UTF-8 @@ -2132,6 +2132,7 @@ CHARMAP <U088E> /xe0/xa2/x8e ARABIC VERTICAL TAIL <U0890> /xe0/xa2/x90 ARABIC POUND MARK ABOVE <U0891> /xe0/xa2/x91 ARABIC PIASTRE MARK ABOVE +<U0897> /xe0/xa2/x97 ARABIC PEPET <U0898> /xe0/xa2/x98 ARABIC SMALL HIGH WORD AL-JUZ <U0899> /xe0/xa2/x99 ARABIC SMALL LOW WORD ISHMAAM <U089A> /xe0/xa2/x9a ARABIC SMALL LOW WORD IMAALA @@ -6222,6 +6223,8 @@ CHARMAP <U1B4A> /xe1/xad/x8a BALINESE LETTER ZAL SASAK <U1B4B> /xe1/xad/x8b BALINESE LETTER ASYURA SASAK <U1B4C> /xe1/xad/x8c BALINESE LETTER ARCHAIC JNYA +<U1B4E> /xe1/xad/x8e BALINESE INVERTED CARIK SIKI +<U1B4F> /xe1/xad/x8f BALINESE INVERTED CARIK PAREREN <U1B50> /xe1/xad/x90 BALINESE DIGIT ZERO <U1B51> /xe1/xad/x91 BALINESE DIGIT ONE <U1B52> /xe1/xad/x92 BALINESE DIGIT TWO @@ -6269,6 +6272,7 @@ CHARMAP <U1B7C> /xe1/xad/xbc BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING <U1B7D> /xe1/xad/xbd BALINESE PANTI LANTANG <U1B7E> /xe1/xad/xbe BALINESE PAMADA LANTANG +<U1B7F> /xe1/xad/xbf BALINESE PANTI BAWAK <U1B80> /xe1/xae/x80 SUNDANESE SIGN PANYECEK <U1B81> /xe1/xae/x81 SUNDANESE SIGN PANGLAYAR <U1B82> /xe1/xae/x82 SUNDANESE SIGN PANGWISAD @@ -6520,6 +6524,8 @@ CHARMAP <U1C86> /xe1/xb2/x86 CYRILLIC SMALL LETTER TALL HARD SIGN <U1C87> /xe1/xb2/x87 CYRILLIC SMALL LETTER TALL YAT <U1C88> /xe1/xb2/x88 CYRILLIC SMALL LETTER UNBLENDED UK +<U1C89> /xe1/xb2/x89 CYRILLIC CAPITAL LETTER TJE +<U1C8A> /xe1/xb2/x8a CYRILLIC SMALL LETTER TJE <U1C90> /xe1/xb2/x90 GEORGIAN MTAVRULI CAPITAL LETTER AN <U1C91> /xe1/xb2/x91 GEORGIAN MTAVRULI CAPITAL LETTER BAN <U1C92> /xe1/xb2/x92 GEORGIAN MTAVRULI CAPITAL LETTER GAN @@ -8384,6 +8390,9 @@ CHARMAP <U2424> /xe2/x90/xa4 SYMBOL FOR NEWLINE <U2425> /xe2/x90/xa5 SYMBOL FOR DELETE FORM TWO <U2426> /xe2/x90/xa6 SYMBOL FOR SUBSTITUTE FORM TWO +<U2427> /xe2/x90/xa7 SYMBOL FOR DELETE SQUARE CHECKER BOARD FORM +<U2428> /xe2/x90/xa8 SYMBOL FOR DELETE RECTANGULAR CHECKER BOARD FORM +<U2429> /xe2/x90/xa9 SYMBOL FOR DELETE MEDIUM SHADE FORM <U2440> /xe2/x91/x80 OCR HOOK <U2441> /xe2/x91/x81 OCR CHAIR <U2442> /xe2/x91/x82 OCR FORK @@ -11718,6 +11727,8 @@ CHARMAP <U31E1> /xe3/x87/xa1 CJK STROKE HZZZG <U31E2> /xe3/x87/xa2 CJK STROKE PG <U31E3> /xe3/x87/xa3 CJK STROKE Q +<U31E4> /xe3/x87/xa4 CJK STROKE HXG +<U31E5> /xe3/x87/xa5 CJK STROKE SZP <U31EF> /xe3/x87/xaf IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION <U31F0> /xe3/x87/xb0 KATAKANA LETTER SMALL KU <U31F1> /xe3/x87/xb1 KATAKANA LETTER SMALL SI @@ -14696,6 +14707,9 @@ CHARMAP <UA7C8> /xea/x9f/x88 LATIN SMALL LETTER D WITH SHORT STROKE OVERLAY <UA7C9> /xea/x9f/x89 LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY <UA7CA> /xea/x9f/x8a LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +<UA7CB> /xea/x9f/x8b LATIN CAPITAL LETTER RAMS HORN +<UA7CC> /xea/x9f/x8c LATIN CAPITAL LETTER S WITH DIAGONAL STROKE +<UA7CD> /xea/x9f/x8d LATIN SMALL LETTER S WITH DIAGONAL STROKE <UA7D0> /xea/x9f/x90 LATIN CAPITAL LETTER CLOSED INSULAR G <UA7D1> /xea/x9f/x91 LATIN SMALL LETTER CLOSED INSULAR G <UA7D3> /xea/x9f/x93 LATIN SMALL LETTER DOUBLE THORN @@ -14704,6 +14718,9 @@ CHARMAP <UA7D7> /xea/x9f/x97 LATIN SMALL LETTER MIDDLE SCOTS S <UA7D8> /xea/x9f/x98 LATIN CAPITAL LETTER SIGMOID S <UA7D9> /xea/x9f/x99 LATIN SMALL LETTER SIGMOID S +<UA7DA> /xea/x9f/x9a LATIN CAPITAL LETTER LAMBDA +<UA7DB> /xea/x9f/x9b LATIN SMALL LETTER LAMBDA +<UA7DC> /xea/x9f/x9c LATIN CAPITAL LETTER LAMBDA WITH STROKE <UA7F2> /xea/x9f/xb2 MODIFIER LETTER CAPITAL C <UA7F3> /xea/x9f/xb3 MODIFIER LETTER CAPITAL F <UA7F4> /xea/x9f/xb4 MODIFIER LETTER CAPITAL Q @@ -29705,6 +29722,58 @@ CHARMAP <U000105B9> /xf0/x90/x96/xb9 VITHKUQI SMALL LETTER XE <U000105BB> /xf0/x90/x96/xbb VITHKUQI SMALL LETTER Y <U000105BC> /xf0/x90/x96/xbc VITHKUQI SMALL LETTER ZE +<U000105C0> /xf0/x90/x97/x80 TODHRI LETTER A +<U000105C1> /xf0/x90/x97/x81 TODHRI LETTER AS +<U000105C2> /xf0/x90/x97/x82 TODHRI LETTER BA +<U000105C3> /xf0/x90/x97/x83 TODHRI LETTER MBA +<U000105C4> /xf0/x90/x97/x84 TODHRI LETTER CA +<U000105C5> /xf0/x90/x97/x85 TODHRI LETTER CHA +<U000105C6> /xf0/x90/x97/x86 TODHRI LETTER DA +<U000105C7> /xf0/x90/x97/x87 TODHRI LETTER NDA +<U000105C8> /xf0/x90/x97/x88 TODHRI LETTER DHA +<U000105C9> /xf0/x90/x97/x89 TODHRI LETTER EI +<U000105CA> /xf0/x90/x97/x8a TODHRI LETTER E +<U000105CB> /xf0/x90/x97/x8b TODHRI LETTER FA +<U000105CC> /xf0/x90/x97/x8c TODHRI LETTER GA +<U000105CD> /xf0/x90/x97/x8d TODHRI LETTER NGA +<U000105CE> /xf0/x90/x97/x8e TODHRI LETTER GJA +<U000105CF> /xf0/x90/x97/x8f TODHRI LETTER NGJA +<U000105D0> /xf0/x90/x97/x90 TODHRI LETTER HA +<U000105D1> /xf0/x90/x97/x91 TODHRI LETTER HJA +<U000105D2> /xf0/x90/x97/x92 TODHRI LETTER I +<U000105D3> /xf0/x90/x97/x93 TODHRI LETTER JA +<U000105D4> /xf0/x90/x97/x94 TODHRI LETTER KA +<U000105D5> /xf0/x90/x97/x95 TODHRI LETTER LA +<U000105D6> /xf0/x90/x97/x96 TODHRI LETTER LLA +<U000105D7> /xf0/x90/x97/x97 TODHRI LETTER MA +<U000105D8> /xf0/x90/x97/x98 TODHRI LETTER NA +<U000105D9> /xf0/x90/x97/x99 TODHRI LETTER NJAN +<U000105DA> /xf0/x90/x97/x9a TODHRI LETTER O +<U000105DB> /xf0/x90/x97/x9b TODHRI LETTER PA +<U000105DC> /xf0/x90/x97/x9c TODHRI LETTER QA +<U000105DD> /xf0/x90/x97/x9d TODHRI LETTER RA +<U000105DE> /xf0/x90/x97/x9e TODHRI LETTER RRA +<U000105DF> /xf0/x90/x97/x9f TODHRI LETTER SA +<U000105E0> /xf0/x90/x97/xa0 TODHRI LETTER SHA +<U000105E1> /xf0/x90/x97/xa1 TODHRI LETTER SHTA +<U000105E2> /xf0/x90/x97/xa2 TODHRI LETTER TA +<U000105E3> /xf0/x90/x97/xa3 TODHRI LETTER THA +<U000105E4> /xf0/x90/x97/xa4 TODHRI LETTER U +<U000105E5> /xf0/x90/x97/xa5 TODHRI LETTER VA +<U000105E6> /xf0/x90/x97/xa6 TODHRI LETTER XA +<U000105E7> /xf0/x90/x97/xa7 TODHRI LETTER NXA +<U000105E8> /xf0/x90/x97/xa8 TODHRI LETTER XHA +<U000105E9> /xf0/x90/x97/xa9 TODHRI LETTER NXHA +<U000105EA> /xf0/x90/x97/xaa TODHRI LETTER Y +<U000105EB> /xf0/x90/x97/xab TODHRI LETTER JY +<U000105EC> /xf0/x90/x97/xac TODHRI LETTER ZA +<U000105ED> /xf0/x90/x97/xad TODHRI LETTER ZHA +<U000105EE> /xf0/x90/x97/xae TODHRI LETTER GHA +<U000105EF> /xf0/x90/x97/xaf TODHRI LETTER STA +<U000105F0> /xf0/x90/x97/xb0 TODHRI LETTER SKAN +<U000105F1> /xf0/x90/x97/xb1 TODHRI LETTER KHA +<U000105F2> /xf0/x90/x97/xb2 TODHRI LETTER PSA +<U000105F3> /xf0/x90/x97/xb3 TODHRI LETTER OO <U00010600> /xf0/x90/x98/x80 LINEAR A SIGN AB001 <U00010601> /xf0/x90/x98/x81 LINEAR A SIGN AB002 <U00010602> /xf0/x90/x98/x82 LINEAR A SIGN AB003 @@ -31026,6 +31095,75 @@ CHARMAP <U00010D37> /xf0/x90/xb4/xb7 HANIFI ROHINGYA DIGIT SEVEN <U00010D38> /xf0/x90/xb4/xb8 HANIFI ROHINGYA DIGIT EIGHT <U00010D39> /xf0/x90/xb4/xb9 HANIFI ROHINGYA DIGIT NINE +<U00010D40> /xf0/x90/xb5/x80 GARAY DIGIT ZERO +<U00010D41> /xf0/x90/xb5/x81 GARAY DIGIT ONE +<U00010D42> /xf0/x90/xb5/x82 GARAY DIGIT TWO +<U00010D43> /xf0/x90/xb5/x83 GARAY DIGIT THREE +<U00010D44> /xf0/x90/xb5/x84 GARAY DIGIT FOUR +<U00010D45> /xf0/x90/xb5/x85 GARAY DIGIT FIVE +<U00010D46> /xf0/x90/xb5/x86 GARAY DIGIT SIX +<U00010D47> /xf0/x90/xb5/x87 GARAY DIGIT SEVEN +<U00010D48> /xf0/x90/xb5/x88 GARAY DIGIT EIGHT +<U00010D49> /xf0/x90/xb5/x89 GARAY DIGIT NINE +<U00010D4A> /xf0/x90/xb5/x8a GARAY VOWEL SIGN A +<U00010D4B> /xf0/x90/xb5/x8b GARAY VOWEL SIGN I +<U00010D4C> /xf0/x90/xb5/x8c GARAY VOWEL SIGN O +<U00010D4D> /xf0/x90/xb5/x8d GARAY VOWEL SIGN EE +<U00010D4E> /xf0/x90/xb5/x8e GARAY VOWEL LENGTH MARK +<U00010D4F> /xf0/x90/xb5/x8f GARAY SUKUN +<U00010D50> /xf0/x90/xb5/x90 GARAY CAPITAL LETTER A +<U00010D51> /xf0/x90/xb5/x91 GARAY CAPITAL LETTER CA +<U00010D52> /xf0/x90/xb5/x92 GARAY CAPITAL LETTER MA +<U00010D53> /xf0/x90/xb5/x93 GARAY CAPITAL LETTER KA +<U00010D54> /xf0/x90/xb5/x94 GARAY CAPITAL LETTER BA +<U00010D55> /xf0/x90/xb5/x95 GARAY CAPITAL LETTER JA +<U00010D56> /xf0/x90/xb5/x96 GARAY CAPITAL LETTER SA +<U00010D57> /xf0/x90/xb5/x97 GARAY CAPITAL LETTER WA +<U00010D58> /xf0/x90/xb5/x98 GARAY CAPITAL LETTER LA +<U00010D59> /xf0/x90/xb5/x99 GARAY CAPITAL LETTER GA +<U00010D5A> /xf0/x90/xb5/x9a GARAY CAPITAL LETTER DA +<U00010D5B> /xf0/x90/xb5/x9b GARAY CAPITAL LETTER XA +<U00010D5C> /xf0/x90/xb5/x9c GARAY CAPITAL LETTER YA +<U00010D5D> /xf0/x90/xb5/x9d GARAY CAPITAL LETTER TA +<U00010D5E> /xf0/x90/xb5/x9e GARAY CAPITAL LETTER RA +<U00010D5F> /xf0/x90/xb5/x9f GARAY CAPITAL LETTER NYA +<U00010D60> /xf0/x90/xb5/xa0 GARAY CAPITAL LETTER FA +<U00010D61> /xf0/x90/xb5/xa1 GARAY CAPITAL LETTER NA +<U00010D62> /xf0/x90/xb5/xa2 GARAY CAPITAL LETTER PA +<U00010D63> /xf0/x90/xb5/xa3 GARAY CAPITAL LETTER HA +<U00010D64> /xf0/x90/xb5/xa4 GARAY CAPITAL LETTER OLD KA +<U00010D65> /xf0/x90/xb5/xa5 GARAY CAPITAL LETTER OLD NA +<U00010D69> /xf0/x90/xb5/xa9 GARAY VOWEL SIGN E +<U00010D6A> /xf0/x90/xb5/xaa GARAY CONSONANT GEMINATION MARK +<U00010D6B> /xf0/x90/xb5/xab GARAY COMBINING DOT ABOVE +<U00010D6C> /xf0/x90/xb5/xac GARAY COMBINING DOUBLE DOT ABOVE +<U00010D6D> /xf0/x90/xb5/xad GARAY CONSONANT NASALIZATION MARK +<U00010D6E> /xf0/x90/xb5/xae GARAY HYPHEN +<U00010D6F> /xf0/x90/xb5/xaf GARAY REDUPLICATION MARK +<U00010D70> /xf0/x90/xb5/xb0 GARAY SMALL LETTER A +<U00010D71> /xf0/x90/xb5/xb1 GARAY SMALL LETTER CA +<U00010D72> /xf0/x90/xb5/xb2 GARAY SMALL LETTER MA +<U00010D73> /xf0/x90/xb5/xb3 GARAY SMALL LETTER KA +<U00010D74> /xf0/x90/xb5/xb4 GARAY SMALL LETTER BA +<U00010D75> /xf0/x90/xb5/xb5 GARAY SMALL LETTER JA +<U00010D76> /xf0/x90/xb5/xb6 GARAY SMALL LETTER SA +<U00010D77> /xf0/x90/xb5/xb7 GARAY SMALL LETTER WA +<U00010D78> /xf0/x90/xb5/xb8 GARAY SMALL LETTER LA +<U00010D79> /xf0/x90/xb5/xb9 GARAY SMALL LETTER GA +<U00010D7A> /xf0/x90/xb5/xba GARAY SMALL LETTER DA +<U00010D7B> /xf0/x90/xb5/xbb GARAY SMALL LETTER XA +<U00010D7C> /xf0/x90/xb5/xbc GARAY SMALL LETTER YA +<U00010D7D> /xf0/x90/xb5/xbd GARAY SMALL LETTER TA +<U00010D7E> /xf0/x90/xb5/xbe GARAY SMALL LETTER RA +<U00010D7F> /xf0/x90/xb5/xbf GARAY SMALL LETTER NYA +<U00010D80> /xf0/x90/xb6/x80 GARAY SMALL LETTER FA +<U00010D81> /xf0/x90/xb6/x81 GARAY SMALL LETTER NA +<U00010D82> /xf0/x90/xb6/x82 GARAY SMALL LETTER PA +<U00010D83> /xf0/x90/xb6/x83 GARAY SMALL LETTER HA +<U00010D84> /xf0/x90/xb6/x84 GARAY SMALL LETTER OLD KA +<U00010D85> /xf0/x90/xb6/x85 GARAY SMALL LETTER OLD NA +<U00010D8E> /xf0/x90/xb6/x8e GARAY PLUS SIGN +<U00010D8F> /xf0/x90/xb6/x8f GARAY MINUS SIGN <U00010E60> /xf0/x90/xb9/xa0 RUMI DIGIT ONE <U00010E61> /xf0/x90/xb9/xa1 RUMI DIGIT TWO <U00010E62> /xf0/x90/xb9/xa2 RUMI DIGIT THREE @@ -31104,6 +31242,10 @@ CHARMAP <U00010EAD> /xf0/x90/xba/xad YEZIDI HYPHENATION MARK <U00010EB0> /xf0/x90/xba/xb0 YEZIDI LETTER LAM WITH DOT ABOVE <U00010EB1> /xf0/x90/xba/xb1 YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE +<U00010EC2> /xf0/x90/xbb/x82 ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW +<U00010EC3> /xf0/x90/xbb/x83 ARABIC LETTER TAH WITH TWO DOTS VERTICALLY BELOW +<U00010EC4> /xf0/x90/xbb/x84 ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW +<U00010EFC> /xf0/x90/xbb/xbc ARABIC COMBINING ALEF OVERLAY <U00010EFD> /xf0/x90/xbb/xbd ARABIC SMALL LOW WORD SAKTA <U00010EFE> /xf0/x90/xbb/xbe ARABIC SMALL LOW WORD QASR <U00010EFF> /xf0/x90/xbb/xbf ARABIC SMALL LOW WORD MADDA @@ -31968,6 +32110,86 @@ CHARMAP <U00011372> /xf0/x91/x8d/xb2 COMBINING GRANTHA LETTER NA <U00011373> /xf0/x91/x8d/xb3 COMBINING GRANTHA LETTER VI <U00011374> /xf0/x91/x8d/xb4 COMBINING GRANTHA LETTER PA +<U00011380> /xf0/x91/x8e/x80 TULU-TIGALARI LETTER A +<U00011381> /xf0/x91/x8e/x81 TULU-TIGALARI LETTER AA +<U00011382> /xf0/x91/x8e/x82 TULU-TIGALARI LETTER I +<U00011383> /xf0/x91/x8e/x83 TULU-TIGALARI LETTER II +<U00011384> /xf0/x91/x8e/x84 TULU-TIGALARI LETTER U +<U00011385> /xf0/x91/x8e/x85 TULU-TIGALARI LETTER UU +<U00011386> /xf0/x91/x8e/x86 TULU-TIGALARI LETTER VOCALIC R +<U00011387> /xf0/x91/x8e/x87 TULU-TIGALARI LETTER VOCALIC RR +<U00011388> /xf0/x91/x8e/x88 TULU-TIGALARI LETTER VOCALIC L +<U00011389> /xf0/x91/x8e/x89 TULU-TIGALARI LETTER VOCALIC LL +<U0001138B> /xf0/x91/x8e/x8b TULU-TIGALARI LETTER EE +<U0001138E> /xf0/x91/x8e/x8e TULU-TIGALARI LETTER AI +<U00011390> /xf0/x91/x8e/x90 TULU-TIGALARI LETTER OO +<U00011391> /xf0/x91/x8e/x91 TULU-TIGALARI LETTER AU +<U00011392> /xf0/x91/x8e/x92 TULU-TIGALARI LETTER KA +<U00011393> /xf0/x91/x8e/x93 TULU-TIGALARI LETTER KHA +<U00011394> /xf0/x91/x8e/x94 TULU-TIGALARI LETTER GA +<U00011395> /xf0/x91/x8e/x95 TULU-TIGALARI LETTER GHA +<U00011396> /xf0/x91/x8e/x96 TULU-TIGALARI LETTER NGA +<U00011397> /xf0/x91/x8e/x97 TULU-TIGALARI LETTER CA +<U00011398> /xf0/x91/x8e/x98 TULU-TIGALARI LETTER CHA +<U00011399> /xf0/x91/x8e/x99 TULU-TIGALARI LETTER JA +<U0001139A> /xf0/x91/x8e/x9a TULU-TIGALARI LETTER JHA +<U0001139B> /xf0/x91/x8e/x9b TULU-TIGALARI LETTER NYA +<U0001139C> /xf0/x91/x8e/x9c TULU-TIGALARI LETTER TTA +<U0001139D> /xf0/x91/x8e/x9d TULU-TIGALARI LETTER TTHA +<U0001139E> /xf0/x91/x8e/x9e TULU-TIGALARI LETTER DDA +<U0001139F> /xf0/x91/x8e/x9f TULU-TIGALARI LETTER DDHA +<U000113A0> /xf0/x91/x8e/xa0 TULU-TIGALARI LETTER NNA +<U000113A1> /xf0/x91/x8e/xa1 TULU-TIGALARI LETTER TA +<U000113A2> /xf0/x91/x8e/xa2 TULU-TIGALARI LETTER THA +<U000113A3> /xf0/x91/x8e/xa3 TULU-TIGALARI LETTER DA +<U000113A4> /xf0/x91/x8e/xa4 TULU-TIGALARI LETTER DHA +<U000113A5> /xf0/x91/x8e/xa5 TULU-TIGALARI LETTER NA +<U000113A6> /xf0/x91/x8e/xa6 TULU-TIGALARI LETTER PA +<U000113A7> /xf0/x91/x8e/xa7 TULU-TIGALARI LETTER PHA +<U000113A8> /xf0/x91/x8e/xa8 TULU-TIGALARI LETTER BA +<U000113A9> /xf0/x91/x8e/xa9 TULU-TIGALARI LETTER BHA +<U000113AA> /xf0/x91/x8e/xaa TULU-TIGALARI LETTER MA +<U000113AB> /xf0/x91/x8e/xab TULU-TIGALARI LETTER YA +<U000113AC> /xf0/x91/x8e/xac TULU-TIGALARI LETTER RA +<U000113AD> /xf0/x91/x8e/xad TULU-TIGALARI LETTER LA +<U000113AE> /xf0/x91/x8e/xae TULU-TIGALARI LETTER VA +<U000113AF> /xf0/x91/x8e/xaf TULU-TIGALARI LETTER SHA +<U000113B0> /xf0/x91/x8e/xb0 TULU-TIGALARI LETTER SSA +<U000113B1> /xf0/x91/x8e/xb1 TULU-TIGALARI LETTER SA +<U000113B2> /xf0/x91/x8e/xb2 TULU-TIGALARI LETTER HA +<U000113B3> /xf0/x91/x8e/xb3 TULU-TIGALARI LETTER LLA +<U000113B4> /xf0/x91/x8e/xb4 TULU-TIGALARI LETTER RRA +<U000113B5> /xf0/x91/x8e/xb5 TULU-TIGALARI LETTER LLLA +<U000113B7> /xf0/x91/x8e/xb7 TULU-TIGALARI SIGN AVAGRAHA +<U000113B8> /xf0/x91/x8e/xb8 TULU-TIGALARI VOWEL SIGN AA +<U000113B9> /xf0/x91/x8e/xb9 TULU-TIGALARI VOWEL SIGN I +<U000113BA> /xf0/x91/x8e/xba TULU-TIGALARI VOWEL SIGN II +<U000113BB> /xf0/x91/x8e/xbb TULU-TIGALARI VOWEL SIGN U +<U000113BC> /xf0/x91/x8e/xbc TULU-TIGALARI VOWEL SIGN UU +<U000113BD> /xf0/x91/x8e/xbd TULU-TIGALARI VOWEL SIGN VOCALIC R +<U000113BE> /xf0/x91/x8e/xbe TULU-TIGALARI VOWEL SIGN VOCALIC RR +<U000113BF> /xf0/x91/x8e/xbf TULU-TIGALARI VOWEL SIGN VOCALIC L +<U000113C0> /xf0/x91/x8f/x80 TULU-TIGALARI VOWEL SIGN VOCALIC LL +<U000113C2> /xf0/x91/x8f/x82 TULU-TIGALARI VOWEL SIGN EE +<U000113C5> /xf0/x91/x8f/x85 TULU-TIGALARI VOWEL SIGN AI +<U000113C7> /xf0/x91/x8f/x87 TULU-TIGALARI VOWEL SIGN OO +<U000113C8> /xf0/x91/x8f/x88 TULU-TIGALARI VOWEL SIGN AU +<U000113C9> /xf0/x91/x8f/x89 TULU-TIGALARI AU LENGTH MARK +<U000113CA> /xf0/x91/x8f/x8a TULU-TIGALARI SIGN CANDRA ANUNASIKA +<U000113CC> /xf0/x91/x8f/x8c TULU-TIGALARI SIGN ANUSVARA +<U000113CD> /xf0/x91/x8f/x8d TULU-TIGALARI SIGN VISARGA +<U000113CE> /xf0/x91/x8f/x8e TULU-TIGALARI SIGN VIRAMA +<U000113CF> /xf0/x91/x8f/x8f TULU-TIGALARI SIGN LOOPED VIRAMA +<U000113D0> /xf0/x91/x8f/x90 TULU-TIGALARI CONJOINER +<U000113D1> /xf0/x91/x8f/x91 TULU-TIGALARI REPHA +<U000113D2> /xf0/x91/x8f/x92 TULU-TIGALARI GEMINATION MARK +<U000113D3> /xf0/x91/x8f/x93 TULU-TIGALARI SIGN PLUTA +<U000113D4> /xf0/x91/x8f/x94 TULU-TIGALARI DANDA +<U000113D5> /xf0/x91/x8f/x95 TULU-TIGALARI DOUBLE DANDA +<U000113D7> /xf0/x91/x8f/x97 TULU-TIGALARI SIGN OM PUSHPIKA +<U000113D8> /xf0/x91/x8f/x98 TULU-TIGALARI SIGN SHRII PUSHPIKA +<U000113E1> /xf0/x91/x8f/xa1 TULU-TIGALARI VEDIC TONE SVARITA +<U000113E2> /xf0/x91/x8f/xa2 TULU-TIGALARI VEDIC TONE ANUDATTA <U00011400> /xf0/x91/x90/x80 NEWA LETTER A <U00011401> /xf0/x91/x90/x81 NEWA LETTER AA <U00011402> /xf0/x91/x90/x82 NEWA LETTER I @@ -32399,6 +32621,26 @@ CHARMAP <U000116C7> /xf0/x91/x9b/x87 TAKRI DIGIT SEVEN <U000116C8> /xf0/x91/x9b/x88 TAKRI DIGIT EIGHT <U000116C9> /xf0/x91/x9b/x89 TAKRI DIGIT NINE +<U000116D0> /xf0/x91/x9b/x90 MYANMAR PAO DIGIT ZERO +<U000116D1> /xf0/x91/x9b/x91 MYANMAR PAO DIGIT ONE +<U000116D2> /xf0/x91/x9b/x92 MYANMAR PAO DIGIT TWO +<U000116D3> /xf0/x91/x9b/x93 MYANMAR PAO DIGIT THREE +<U000116D4> /xf0/x91/x9b/x94 MYANMAR PAO DIGIT FOUR +<U000116D5> /xf0/x91/x9b/x95 MYANMAR PAO DIGIT FIVE +<U000116D6> /xf0/x91/x9b/x96 MYANMAR PAO DIGIT SIX +<U000116D7> /xf0/x91/x9b/x97 MYANMAR PAO DIGIT SEVEN +<U000116D8> /xf0/x91/x9b/x98 MYANMAR PAO DIGIT EIGHT +<U000116D9> /xf0/x91/x9b/x99 MYANMAR PAO DIGIT NINE +<U000116DA> /xf0/x91/x9b/x9a MYANMAR EASTERN PWO KAREN DIGIT ZERO +<U000116DB> /xf0/x91/x9b/x9b MYANMAR EASTERN PWO KAREN DIGIT ONE +<U000116DC> /xf0/x91/x9b/x9c MYANMAR EASTERN PWO KAREN DIGIT TWO +<U000116DD> /xf0/x91/x9b/x9d MYANMAR EASTERN PWO KAREN DIGIT THREE +<U000116DE> /xf0/x91/x9b/x9e MYANMAR EASTERN PWO KAREN DIGIT FOUR +<U000116DF> /xf0/x91/x9b/x9f MYANMAR EASTERN PWO KAREN DIGIT FIVE +<U000116E0> /xf0/x91/x9b/xa0 MYANMAR EASTERN PWO KAREN DIGIT SIX +<U000116E1> /xf0/x91/x9b/xa1 MYANMAR EASTERN PWO KAREN DIGIT SEVEN +<U000116E2> /xf0/x91/x9b/xa2 MYANMAR EASTERN PWO KAREN DIGIT EIGHT +<U000116E3> /xf0/x91/x9b/xa3 MYANMAR EASTERN PWO KAREN DIGIT NINE <U00011700> /xf0/x91/x9c/x80 AHOM LETTER KA <U00011701> /xf0/x91/x9c/x81 AHOM LETTER KHA <U00011702> /xf0/x91/x9c/x82 AHOM LETTER NGA @@ -32983,6 +33225,50 @@ CHARMAP <U00011B07> /xf0/x91/xac/x87 DEVANAGARI SIGN WESTERN NINE-LIKE BHALE <U00011B08> /xf0/x91/xac/x88 DEVANAGARI SIGN REVERSED NINE-LIKE BHALE <U00011B09> /xf0/x91/xac/x89 DEVANAGARI SIGN MINDU +<U00011BC0> /xf0/x91/xaf/x80 SUNUWAR LETTER DEVI +<U00011BC1> /xf0/x91/xaf/x81 SUNUWAR LETTER TASLA +<U00011BC2> /xf0/x91/xaf/x82 SUNUWAR LETTER EKO +<U00011BC3> /xf0/x91/xaf/x83 SUNUWAR LETTER IMAR +<U00011BC4> /xf0/x91/xaf/x84 SUNUWAR LETTER REU +<U00011BC5> /xf0/x91/xaf/x85 SUNUWAR LETTER UTTHI +<U00011BC6> /xf0/x91/xaf/x86 SUNUWAR LETTER KIK +<U00011BC7> /xf0/x91/xaf/x87 SUNUWAR LETTER MA +<U00011BC8> /xf0/x91/xaf/x88 SUNUWAR LETTER APPHO +<U00011BC9> /xf0/x91/xaf/x89 SUNUWAR LETTER PIP +<U00011BCA> /xf0/x91/xaf/x8a SUNUWAR LETTER GIL +<U00011BCB> /xf0/x91/xaf/x8b SUNUWAR LETTER HAMSO +<U00011BCC> /xf0/x91/xaf/x8c SUNUWAR LETTER CARMI +<U00011BCD> /xf0/x91/xaf/x8d SUNUWAR LETTER NAH +<U00011BCE> /xf0/x91/xaf/x8e SUNUWAR LETTER BUR +<U00011BCF> /xf0/x91/xaf/x8f SUNUWAR LETTER JYAH +<U00011BD0> /xf0/x91/xaf/x90 SUNUWAR LETTER LOACHA +<U00011BD1> /xf0/x91/xaf/x91 SUNUWAR LETTER OTTHI +<U00011BD2> /xf0/x91/xaf/x92 SUNUWAR LETTER SHYELE +<U00011BD3> /xf0/x91/xaf/x93 SUNUWAR LETTER VARCA +<U00011BD4> /xf0/x91/xaf/x94 SUNUWAR LETTER YAT +<U00011BD5> /xf0/x91/xaf/x95 SUNUWAR LETTER AVA +<U00011BD6> /xf0/x91/xaf/x96 SUNUWAR LETTER AAL +<U00011BD7> /xf0/x91/xaf/x97 SUNUWAR LETTER DONGA +<U00011BD8> /xf0/x91/xaf/x98 SUNUWAR LETTER THARI +<U00011BD9> /xf0/x91/xaf/x99 SUNUWAR LETTER PHAR +<U00011BDA> /xf0/x91/xaf/x9a SUNUWAR LETTER NGAR +<U00011BDB> /xf0/x91/xaf/x9b SUNUWAR LETTER KHA +<U00011BDC> /xf0/x91/xaf/x9c SUNUWAR LETTER SHYER +<U00011BDD> /xf0/x91/xaf/x9d SUNUWAR LETTER CHELAP +<U00011BDE> /xf0/x91/xaf/x9e SUNUWAR LETTER TENTU +<U00011BDF> /xf0/x91/xaf/x9f SUNUWAR LETTER THELE +<U00011BE0> /xf0/x91/xaf/xa0 SUNUWAR LETTER KLOKO +<U00011BE1> /xf0/x91/xaf/xa1 SUNUWAR SIGN PVO +<U00011BF0> /xf0/x91/xaf/xb0 SUNUWAR DIGIT ZERO +<U00011BF1> /xf0/x91/xaf/xb1 SUNUWAR DIGIT ONE +<U00011BF2> /xf0/x91/xaf/xb2 SUNUWAR DIGIT TWO +<U00011BF3> /xf0/x91/xaf/xb3 SUNUWAR DIGIT THREE +<U00011BF4> /xf0/x91/xaf/xb4 SUNUWAR DIGIT FOUR +<U00011BF5> /xf0/x91/xaf/xb5 SUNUWAR DIGIT FIVE +<U00011BF6> /xf0/x91/xaf/xb6 SUNUWAR DIGIT SIX +<U00011BF7> /xf0/x91/xaf/xb7 SUNUWAR DIGIT SEVEN +<U00011BF8> /xf0/x91/xaf/xb8 SUNUWAR DIGIT EIGHT +<U00011BF9> /xf0/x91/xaf/xb9 SUNUWAR DIGIT NINE <U00011C00> /xf0/x91/xb0/x80 BHAIKSUKI LETTER A <U00011C01> /xf0/x91/xb0/x81 BHAIKSUKI LETTER AA <U00011C02> /xf0/x91/xb0/x82 BHAIKSUKI LETTER I @@ -33397,6 +33683,7 @@ CHARMAP <U00011F57> /xf0/x91/xbd/x97 KAWI DIGIT SEVEN <U00011F58> /xf0/x91/xbd/x98 KAWI DIGIT EIGHT <U00011F59> /xf0/x91/xbd/x99 KAWI DIGIT NINE +<U00011F5A> /xf0/x91/xbd/x9a KAWI SIGN NUKTA <U00011FB0> /xf0/x91/xbe/xb0 LISU LETTER YHA <U00011FC0> /xf0/x91/xbf/x80 TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH <U00011FC1> /xf0/x91/xbf/x81 TAMIL FRACTION ONE ONE-HUNDRED-AND-SIXTIETH @@ -35892,6 +36179,4001 @@ CHARMAP <U00013453> /xf0/x93/x91/x93 EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP AND END <U00013454> /xf0/x93/x91/x94 EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT BOTTOM AND END <U00013455> /xf0/x93/x91/x95 EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +<U00013460> /xf0/x93/x91/xa0 EGYPTIAN HIEROGLYPH-13460 +<U00013461> /xf0/x93/x91/xa1 EGYPTIAN HIEROGLYPH-13461 +<U00013462> /xf0/x93/x91/xa2 EGYPTIAN HIEROGLYPH-13462 +<U00013463> /xf0/x93/x91/xa3 EGYPTIAN HIEROGLYPH-13463 +<U00013464> /xf0/x93/x91/xa4 EGYPTIAN HIEROGLYPH-13464 +<U00013465> /xf0/x93/x91/xa5 EGYPTIAN HIEROGLYPH-13465 +<U00013466> /xf0/x93/x91/xa6 EGYPTIAN HIEROGLYPH-13466 +<U00013467> /xf0/x93/x91/xa7 EGYPTIAN HIEROGLYPH-13467 +<U00013468> /xf0/x93/x91/xa8 EGYPTIAN HIEROGLYPH-13468 +<U00013469> /xf0/x93/x91/xa9 EGYPTIAN HIEROGLYPH-13469 +<U0001346A> /xf0/x93/x91/xaa EGYPTIAN HIEROGLYPH-1346A +<U0001346B> /xf0/x93/x91/xab EGYPTIAN HIEROGLYPH-1346B +<U0001346C> /xf0/x93/x91/xac EGYPTIAN HIEROGLYPH-1346C +<U0001346D> /xf0/x93/x91/xad EGYPTIAN HIEROGLYPH-1346D +<U0001346E> /xf0/x93/x91/xae EGYPTIAN HIEROGLYPH-1346E +<U0001346F> /xf0/x93/x91/xaf EGYPTIAN HIEROGLYPH-1346F +<U00013470> /xf0/x93/x91/xb0 EGYPTIAN HIEROGLYPH-13470 +<U00013471> /xf0/x93/x91/xb1 EGYPTIAN HIEROGLYPH-13471 +<U00013472> /xf0/x93/x91/xb2 EGYPTIAN HIEROGLYPH-13472 +<U00013473> /xf0/x93/x91/xb3 EGYPTIAN HIEROGLYPH-13473 +<U00013474> /xf0/x93/x91/xb4 EGYPTIAN HIEROGLYPH-13474 +<U00013475> /xf0/x93/x91/xb5 EGYPTIAN HIEROGLYPH-13475 +<U00013476> /xf0/x93/x91/xb6 EGYPTIAN HIEROGLYPH-13476 +<U00013477> /xf0/x93/x91/xb7 EGYPTIAN HIEROGLYPH-13477 +<U00013478> /xf0/x93/x91/xb8 EGYPTIAN HIEROGLYPH-13478 +<U00013479> /xf0/x93/x91/xb9 EGYPTIAN HIEROGLYPH-13479 +<U0001347A> /xf0/x93/x91/xba EGYPTIAN HIEROGLYPH-1347A +<U0001347B> /xf0/x93/x91/xbb EGYPTIAN HIEROGLYPH-1347B +<U0001347C> /xf0/x93/x91/xbc EGYPTIAN HIEROGLYPH-1347C +<U0001347D> /xf0/x93/x91/xbd EGYPTIAN HIEROGLYPH-1347D +<U0001347E> /xf0/x93/x91/xbe EGYPTIAN HIEROGLYPH-1347E +<U0001347F> /xf0/x93/x91/xbf EGYPTIAN HIEROGLYPH-1347F +<U00013480> /xf0/x93/x92/x80 EGYPTIAN HIEROGLYPH-13480 +<U00013481> /xf0/x93/x92/x81 EGYPTIAN HIEROGLYPH-13481 +<U00013482> /xf0/x93/x92/x82 EGYPTIAN HIEROGLYPH-13482 +<U00013483> /xf0/x93/x92/x83 EGYPTIAN HIEROGLYPH-13483 +<U00013484> /xf0/x93/x92/x84 EGYPTIAN HIEROGLYPH-13484 +<U00013485> /xf0/x93/x92/x85 EGYPTIAN HIEROGLYPH-13485 +<U00013486> /xf0/x93/x92/x86 EGYPTIAN HIEROGLYPH-13486 +<U00013487> /xf0/x93/x92/x87 EGYPTIAN HIEROGLYPH-13487 +<U00013488> /xf0/x93/x92/x88 EGYPTIAN HIEROGLYPH-13488 +<U00013489> /xf0/x93/x92/x89 EGYPTIAN HIEROGLYPH-13489 +<U0001348A> /xf0/x93/x92/x8a EGYPTIAN HIEROGLYPH-1348A +<U0001348B> /xf0/x93/x92/x8b EGYPTIAN HIEROGLYPH-1348B +<U0001348C> /xf0/x93/x92/x8c EGYPTIAN HIEROGLYPH-1348C +<U0001348D> /xf0/x93/x92/x8d EGYPTIAN HIEROGLYPH-1348D +<U0001348E> /xf0/x93/x92/x8e EGYPTIAN HIEROGLYPH-1348E +<U0001348F> /xf0/x93/x92/x8f EGYPTIAN HIEROGLYPH-1348F +<U00013490> /xf0/x93/x92/x90 EGYPTIAN HIEROGLYPH-13490 +<U00013491> /xf0/x93/x92/x91 EGYPTIAN HIEROGLYPH-13491 +<U00013492> /xf0/x93/x92/x92 EGYPTIAN HIEROGLYPH-13492 +<U00013493> /xf0/x93/x92/x93 EGYPTIAN HIEROGLYPH-13493 +<U00013494> /xf0/x93/x92/x94 EGYPTIAN HIEROGLYPH-13494 +<U00013495> /xf0/x93/x92/x95 EGYPTIAN HIEROGLYPH-13495 +<U00013496> /xf0/x93/x92/x96 EGYPTIAN HIEROGLYPH-13496 +<U00013497> /xf0/x93/x92/x97 EGYPTIAN HIEROGLYPH-13497 +<U00013498> /xf0/x93/x92/x98 EGYPTIAN HIEROGLYPH-13498 +<U00013499> /xf0/x93/x92/x99 EGYPTIAN HIEROGLYPH-13499 +<U0001349A> /xf0/x93/x92/x9a EGYPTIAN HIEROGLYPH-1349A +<U0001349B> /xf0/x93/x92/x9b EGYPTIAN HIEROGLYPH-1349B +<U0001349C> /xf0/x93/x92/x9c EGYPTIAN HIEROGLYPH-1349C +<U0001349D> /xf0/x93/x92/x9d EGYPTIAN HIEROGLYPH-1349D +<U0001349E> /xf0/x93/x92/x9e EGYPTIAN HIEROGLYPH-1349E +<U0001349F> /xf0/x93/x92/x9f EGYPTIAN HIEROGLYPH-1349F +<U000134A0> /xf0/x93/x92/xa0 EGYPTIAN HIEROGLYPH-134A0 +<U000134A1> /xf0/x93/x92/xa1 EGYPTIAN HIEROGLYPH-134A1 +<U000134A2> /xf0/x93/x92/xa2 EGYPTIAN HIEROGLYPH-134A2 +<U000134A3> /xf0/x93/x92/xa3 EGYPTIAN HIEROGLYPH-134A3 +<U000134A4> /xf0/x93/x92/xa4 EGYPTIAN HIEROGLYPH-134A4 +<U000134A5> /xf0/x93/x92/xa5 EGYPTIAN HIEROGLYPH-134A5 +<U000134A6> /xf0/x93/x92/xa6 EGYPTIAN HIEROGLYPH-134A6 +<U000134A7> /xf0/x93/x92/xa7 EGYPTIAN HIEROGLYPH-134A7 +<U000134A8> /xf0/x93/x92/xa8 EGYPTIAN HIEROGLYPH-134A8 +<U000134A9> /xf0/x93/x92/xa9 EGYPTIAN HIEROGLYPH-134A9 +<U000134AA> /xf0/x93/x92/xaa EGYPTIAN HIEROGLYPH-134AA +<U000134AB> /xf0/x93/x92/xab EGYPTIAN HIEROGLYPH-134AB +<U000134AC> /xf0/x93/x92/xac EGYPTIAN HIEROGLYPH-134AC +<U000134AD> /xf0/x93/x92/xad EGYPTIAN HIEROGLYPH-134AD +<U000134AE> /xf0/x93/x92/xae EGYPTIAN HIEROGLYPH-134AE +<U000134AF> /xf0/x93/x92/xaf EGYPTIAN HIEROGLYPH-134AF +<U000134B0> /xf0/x93/x92/xb0 EGYPTIAN HIEROGLYPH-134B0 +<U000134B1> /xf0/x93/x92/xb1 EGYPTIAN HIEROGLYPH-134B1 +<U000134B2> /xf0/x93/x92/xb2 EGYPTIAN HIEROGLYPH-134B2 +<U000134B3> /xf0/x93/x92/xb3 EGYPTIAN HIEROGLYPH-134B3 +<U000134B4> /xf0/x93/x92/xb4 EGYPTIAN HIEROGLYPH-134B4 +<U000134B5> /xf0/x93/x92/xb5 EGYPTIAN HIEROGLYPH-134B5 +<U000134B6> /xf0/x93/x92/xb6 EGYPTIAN HIEROGLYPH-134B6 +<U000134B7> /xf0/x93/x92/xb7 EGYPTIAN HIEROGLYPH-134B7 +<U000134B8> /xf0/x93/x92/xb8 EGYPTIAN HIEROGLYPH-134B8 +<U000134B9> /xf0/x93/x92/xb9 EGYPTIAN HIEROGLYPH-134B9 +<U000134BA> /xf0/x93/x92/xba EGYPTIAN HIEROGLYPH-134BA +<U000134BB> /xf0/x93/x92/xbb EGYPTIAN HIEROGLYPH-134BB +<U000134BC> /xf0/x93/x92/xbc EGYPTIAN HIEROGLYPH-134BC +<U000134BD> /xf0/x93/x92/xbd EGYPTIAN HIEROGLYPH-134BD +<U000134BE> /xf0/x93/x92/xbe EGYPTIAN HIEROGLYPH-134BE +<U000134BF> /xf0/x93/x92/xbf EGYPTIAN HIEROGLYPH-134BF +<U000134C0> /xf0/x93/x93/x80 EGYPTIAN HIEROGLYPH-134C0 +<U000134C1> /xf0/x93/x93/x81 EGYPTIAN HIEROGLYPH-134C1 +<U000134C2> /xf0/x93/x93/x82 EGYPTIAN HIEROGLYPH-134C2 +<U000134C3> /xf0/x93/x93/x83 EGYPTIAN HIEROGLYPH-134C3 +<U000134C4> /xf0/x93/x93/x84 EGYPTIAN HIEROGLYPH-134C4 +<U000134C5> /xf0/x93/x93/x85 EGYPTIAN HIEROGLYPH-134C5 +<U000134C6> /xf0/x93/x93/x86 EGYPTIAN HIEROGLYPH-134C6 +<U000134C7> /xf0/x93/x93/x87 EGYPTIAN HIEROGLYPH-134C7 +<U000134C8> /xf0/x93/x93/x88 EGYPTIAN HIEROGLYPH-134C8 +<U000134C9> /xf0/x93/x93/x89 EGYPTIAN HIEROGLYPH-134C9 +<U000134CA> /xf0/x93/x93/x8a EGYPTIAN HIEROGLYPH-134CA +<U000134CB> /xf0/x93/x93/x8b EGYPTIAN HIEROGLYPH-134CB +<U000134CC> /xf0/x93/x93/x8c EGYPTIAN HIEROGLYPH-134CC +<U000134CD> /xf0/x93/x93/x8d EGYPTIAN HIEROGLYPH-134CD +<U000134CE> /xf0/x93/x93/x8e EGYPTIAN HIEROGLYPH-134CE +<U000134CF> /xf0/x93/x93/x8f EGYPTIAN HIEROGLYPH-134CF +<U000134D0> /xf0/x93/x93/x90 EGYPTIAN HIEROGLYPH-134D0 +<U000134D1> /xf0/x93/x93/x91 EGYPTIAN HIEROGLYPH-134D1 +<U000134D2> /xf0/x93/x93/x92 EGYPTIAN HIEROGLYPH-134D2 +<U000134D3> /xf0/x93/x93/x93 EGYPTIAN HIEROGLYPH-134D3 +<U000134D4> /xf0/x93/x93/x94 EGYPTIAN HIEROGLYPH-134D4 +<U000134D5> /xf0/x93/x93/x95 EGYPTIAN HIEROGLYPH-134D5 +<U000134D6> /xf0/x93/x93/x96 EGYPTIAN HIEROGLYPH-134D6 +<U000134D7> /xf0/x93/x93/x97 EGYPTIAN HIEROGLYPH-134D7 +<U000134D8> /xf0/x93/x93/x98 EGYPTIAN HIEROGLYPH-134D8 +<U000134D9> /xf0/x93/x93/x99 EGYPTIAN HIEROGLYPH-134D9 +<U000134DA> /xf0/x93/x93/x9a EGYPTIAN HIEROGLYPH-134DA +<U000134DB> /xf0/x93/x93/x9b EGYPTIAN HIEROGLYPH-134DB +<U000134DC> /xf0/x93/x93/x9c EGYPTIAN HIEROGLYPH-134DC +<U000134DD> /xf0/x93/x93/x9d EGYPTIAN HIEROGLYPH-134DD +<U000134DE> /xf0/x93/x93/x9e EGYPTIAN HIEROGLYPH-134DE +<U000134DF> /xf0/x93/x93/x9f EGYPTIAN HIEROGLYPH-134DF +<U000134E0> /xf0/x93/x93/xa0 EGYPTIAN HIEROGLYPH-134E0 +<U000134E1> /xf0/x93/x93/xa1 EGYPTIAN HIEROGLYPH-134E1 +<U000134E2> /xf0/x93/x93/xa2 EGYPTIAN HIEROGLYPH-134E2 +<U000134E3> /xf0/x93/x93/xa3 EGYPTIAN HIEROGLYPH-134E3 +<U000134E4> /xf0/x93/x93/xa4 EGYPTIAN HIEROGLYPH-134E4 +<U000134E5> /xf0/x93/x93/xa5 EGYPTIAN HIEROGLYPH-134E5 +<U000134E6> /xf0/x93/x93/xa6 EGYPTIAN HIEROGLYPH-134E6 +<U000134E7> /xf0/x93/x93/xa7 EGYPTIAN HIEROGLYPH-134E7 +<U000134E8> /xf0/x93/x93/xa8 EGYPTIAN HIEROGLYPH-134E8 +<U000134E9> /xf0/x93/x93/xa9 EGYPTIAN HIEROGLYPH-134E9 +<U000134EA> /xf0/x93/x93/xaa EGYPTIAN HIEROGLYPH-134EA +<U000134EB> /xf0/x93/x93/xab EGYPTIAN HIEROGLYPH-134EB +<U000134EC> /xf0/x93/x93/xac EGYPTIAN HIEROGLYPH-134EC +<U000134ED> /xf0/x93/x93/xad EGYPTIAN HIEROGLYPH-134ED +<U000134EE> /xf0/x93/x93/xae EGYPTIAN HIEROGLYPH-134EE +<U000134EF> /xf0/x93/x93/xaf EGYPTIAN HIEROGLYPH-134EF +<U000134F0> /xf0/x93/x93/xb0 EGYPTIAN HIEROGLYPH-134F0 +<U000134F1> /xf0/x93/x93/xb1 EGYPTIAN HIEROGLYPH-134F1 +<U000134F2> /xf0/x93/x93/xb2 EGYPTIAN HIEROGLYPH-134F2 +<U000134F3> /xf0/x93/x93/xb3 EGYPTIAN HIEROGLYPH-134F3 +<U000134F4> /xf0/x93/x93/xb4 EGYPTIAN HIEROGLYPH-134F4 +<U000134F5> /xf0/x93/x93/xb5 EGYPTIAN HIEROGLYPH-134F5 +<U000134F6> /xf0/x93/x93/xb6 EGYPTIAN HIEROGLYPH-134F6 +<U000134F7> /xf0/x93/x93/xb7 EGYPTIAN HIEROGLYPH-134F7 +<U000134F8> /xf0/x93/x93/xb8 EGYPTIAN HIEROGLYPH-134F8 +<U000134F9> /xf0/x93/x93/xb9 EGYPTIAN HIEROGLYPH-134F9 +<U000134FA> /xf0/x93/x93/xba EGYPTIAN HIEROGLYPH-134FA +<U000134FB> /xf0/x93/x93/xbb EGYPTIAN HIEROGLYPH-134FB +<U000134FC> /xf0/x93/x93/xbc EGYPTIAN HIEROGLYPH-134FC +<U000134FD> /xf0/x93/x93/xbd EGYPTIAN HIEROGLYPH-134FD +<U000134FE> /xf0/x93/x93/xbe EGYPTIAN HIEROGLYPH-134FE +<U000134FF> /xf0/x93/x93/xbf EGYPTIAN HIEROGLYPH-134FF +<U00013500> /xf0/x93/x94/x80 EGYPTIAN HIEROGLYPH-13500 +<U00013501> /xf0/x93/x94/x81 EGYPTIAN HIEROGLYPH-13501 +<U00013502> /xf0/x93/x94/x82 EGYPTIAN HIEROGLYPH-13502 +<U00013503> /xf0/x93/x94/x83 EGYPTIAN HIEROGLYPH-13503 +<U00013504> /xf0/x93/x94/x84 EGYPTIAN HIEROGLYPH-13504 +<U00013505> /xf0/x93/x94/x85 EGYPTIAN HIEROGLYPH-13505 +<U00013506> /xf0/x93/x94/x86 EGYPTIAN HIEROGLYPH-13506 +<U00013507> /xf0/x93/x94/x87 EGYPTIAN HIEROGLYPH-13507 +<U00013508> /xf0/x93/x94/x88 EGYPTIAN HIEROGLYPH-13508 +<U00013509> /xf0/x93/x94/x89 EGYPTIAN HIEROGLYPH-13509 +<U0001350A> /xf0/x93/x94/x8a EGYPTIAN HIEROGLYPH-1350A +<U0001350B> /xf0/x93/x94/x8b EGYPTIAN HIEROGLYPH-1350B +<U0001350C> /xf0/x93/x94/x8c EGYPTIAN HIEROGLYPH-1350C +<U0001350D> /xf0/x93/x94/x8d EGYPTIAN HIEROGLYPH-1350D +<U0001350E> /xf0/x93/x94/x8e EGYPTIAN HIEROGLYPH-1350E +<U0001350F> /xf0/x93/x94/x8f EGYPTIAN HIEROGLYPH-1350F +<U00013510> /xf0/x93/x94/x90 EGYPTIAN HIEROGLYPH-13510 +<U00013511> /xf0/x93/x94/x91 EGYPTIAN HIEROGLYPH-13511 +<U00013512> /xf0/x93/x94/x92 EGYPTIAN HIEROGLYPH-13512 +<U00013513> /xf0/x93/x94/x93 EGYPTIAN HIEROGLYPH-13513 +<U00013514> /xf0/x93/x94/x94 EGYPTIAN HIEROGLYPH-13514 +<U00013515> /xf0/x93/x94/x95 EGYPTIAN HIEROGLYPH-13515 +<U00013516> /xf0/x93/x94/x96 EGYPTIAN HIEROGLYPH-13516 +<U00013517> /xf0/x93/x94/x97 EGYPTIAN HIEROGLYPH-13517 +<U00013518> /xf0/x93/x94/x98 EGYPTIAN HIEROGLYPH-13518 +<U00013519> /xf0/x93/x94/x99 EGYPTIAN HIEROGLYPH-13519 +<U0001351A> /xf0/x93/x94/x9a EGYPTIAN HIEROGLYPH-1351A +<U0001351B> /xf0/x93/x94/x9b EGYPTIAN HIEROGLYPH-1351B +<U0001351C> /xf0/x93/x94/x9c EGYPTIAN HIEROGLYPH-1351C +<U0001351D> /xf0/x93/x94/x9d EGYPTIAN HIEROGLYPH-1351D +<U0001351E> /xf0/x93/x94/x9e EGYPTIAN HIEROGLYPH-1351E +<U0001351F> /xf0/x93/x94/x9f EGYPTIAN HIEROGLYPH-1351F +<U00013520> /xf0/x93/x94/xa0 EGYPTIAN HIEROGLYPH-13520 +<U00013521> /xf0/x93/x94/xa1 EGYPTIAN HIEROGLYPH-13521 +<U00013522> /xf0/x93/x94/xa2 EGYPTIAN HIEROGLYPH-13522 +<U00013523> /xf0/x93/x94/xa3 EGYPTIAN HIEROGLYPH-13523 +<U00013524> /xf0/x93/x94/xa4 EGYPTIAN HIEROGLYPH-13524 +<U00013525> /xf0/x93/x94/xa5 EGYPTIAN HIEROGLYPH-13525 +<U00013526> /xf0/x93/x94/xa6 EGYPTIAN HIEROGLYPH-13526 +<U00013527> /xf0/x93/x94/xa7 EGYPTIAN HIEROGLYPH-13527 +<U00013528> /xf0/x93/x94/xa8 EGYPTIAN HIEROGLYPH-13528 +<U00013529> /xf0/x93/x94/xa9 EGYPTIAN HIEROGLYPH-13529 +<U0001352A> /xf0/x93/x94/xaa EGYPTIAN HIEROGLYPH-1352A +<U0001352B> /xf0/x93/x94/xab EGYPTIAN HIEROGLYPH-1352B +<U0001352C> /xf0/x93/x94/xac EGYPTIAN HIEROGLYPH-1352C +<U0001352D> /xf0/x93/x94/xad EGYPTIAN HIEROGLYPH-1352D +<U0001352E> /xf0/x93/x94/xae EGYPTIAN HIEROGLYPH-1352E +<U0001352F> /xf0/x93/x94/xaf EGYPTIAN HIEROGLYPH-1352F +<U00013530> /xf0/x93/x94/xb0 EGYPTIAN HIEROGLYPH-13530 +<U00013531> /xf0/x93/x94/xb1 EGYPTIAN HIEROGLYPH-13531 +<U00013532> /xf0/x93/x94/xb2 EGYPTIAN HIEROGLYPH-13532 +<U00013533> /xf0/x93/x94/xb3 EGYPTIAN HIEROGLYPH-13533 +<U00013534> /xf0/x93/x94/xb4 EGYPTIAN HIEROGLYPH-13534 +<U00013535> /xf0/x93/x94/xb5 EGYPTIAN HIEROGLYPH-13535 +<U00013536> /xf0/x93/x94/xb6 EGYPTIAN HIEROGLYPH-13536 +<U00013537> /xf0/x93/x94/xb7 EGYPTIAN HIEROGLYPH-13537 +<U00013538> /xf0/x93/x94/xb8 EGYPTIAN HIEROGLYPH-13538 +<U00013539> /xf0/x93/x94/xb9 EGYPTIAN HIEROGLYPH-13539 +<U0001353A> /xf0/x93/x94/xba EGYPTIAN HIEROGLYPH-1353A +<U0001353B> /xf0/x93/x94/xbb EGYPTIAN HIEROGLYPH-1353B +<U0001353C> /xf0/x93/x94/xbc EGYPTIAN HIEROGLYPH-1353C +<U0001353D> /xf0/x93/x94/xbd EGYPTIAN HIEROGLYPH-1353D +<U0001353E> /xf0/x93/x94/xbe EGYPTIAN HIEROGLYPH-1353E +<U0001353F> /xf0/x93/x94/xbf EGYPTIAN HIEROGLYPH-1353F +<U00013540> /xf0/x93/x95/x80 EGYPTIAN HIEROGLYPH-13540 +<U00013541> /xf0/x93/x95/x81 EGYPTIAN HIEROGLYPH-13541 +<U00013542> /xf0/x93/x95/x82 EGYPTIAN HIEROGLYPH-13542 +<U00013543> /xf0/x93/x95/x83 EGYPTIAN HIEROGLYPH-13543 +<U00013544> /xf0/x93/x95/x84 EGYPTIAN HIEROGLYPH-13544 +<U00013545> /xf0/x93/x95/x85 EGYPTIAN HIEROGLYPH-13545 +<U00013546> /xf0/x93/x95/x86 EGYPTIAN HIEROGLYPH-13546 +<U00013547> /xf0/x93/x95/x87 EGYPTIAN HIEROGLYPH-13547 +<U00013548> /xf0/x93/x95/x88 EGYPTIAN HIEROGLYPH-13548 +<U00013549> /xf0/x93/x95/x89 EGYPTIAN HIEROGLYPH-13549 +<U0001354A> /xf0/x93/x95/x8a EGYPTIAN HIEROGLYPH-1354A +<U0001354B> /xf0/x93/x95/x8b EGYPTIAN HIEROGLYPH-1354B +<U0001354C> /xf0/x93/x95/x8c EGYPTIAN HIEROGLYPH-1354C +<U0001354D> /xf0/x93/x95/x8d EGYPTIAN HIEROGLYPH-1354D +<U0001354E> /xf0/x93/x95/x8e EGYPTIAN HIEROGLYPH-1354E +<U0001354F> /xf0/x93/x95/x8f EGYPTIAN HIEROGLYPH-1354F +<U00013550> /xf0/x93/x95/x90 EGYPTIAN HIEROGLYPH-13550 +<U00013551> /xf0/x93/x95/x91 EGYPTIAN HIEROGLYPH-13551 +<U00013552> /xf0/x93/x95/x92 EGYPTIAN HIEROGLYPH-13552 +<U00013553> /xf0/x93/x95/x93 EGYPTIAN HIEROGLYPH-13553 +<U00013554> /xf0/x93/x95/x94 EGYPTIAN HIEROGLYPH-13554 +<U00013555> /xf0/x93/x95/x95 EGYPTIAN HIEROGLYPH-13555 +<U00013556> /xf0/x93/x95/x96 EGYPTIAN HIEROGLYPH-13556 +<U00013557> /xf0/x93/x95/x97 EGYPTIAN HIEROGLYPH-13557 +<U00013558> /xf0/x93/x95/x98 EGYPTIAN HIEROGLYPH-13558 +<U00013559> /xf0/x93/x95/x99 EGYPTIAN HIEROGLYPH-13559 +<U0001355A> /xf0/x93/x95/x9a EGYPTIAN HIEROGLYPH-1355A +<U0001355B> /xf0/x93/x95/x9b EGYPTIAN HIEROGLYPH-1355B +<U0001355C> /xf0/x93/x95/x9c EGYPTIAN HIEROGLYPH-1355C +<U0001355D> /xf0/x93/x95/x9d EGYPTIAN HIEROGLYPH-1355D +<U0001355E> /xf0/x93/x95/x9e EGYPTIAN HIEROGLYPH-1355E +<U0001355F> /xf0/x93/x95/x9f EGYPTIAN HIEROGLYPH-1355F +<U00013560> /xf0/x93/x95/xa0 EGYPTIAN HIEROGLYPH-13560 +<U00013561> /xf0/x93/x95/xa1 EGYPTIAN HIEROGLYPH-13561 +<U00013562> /xf0/x93/x95/xa2 EGYPTIAN HIEROGLYPH-13562 +<U00013563> /xf0/x93/x95/xa3 EGYPTIAN HIEROGLYPH-13563 +<U00013564> /xf0/x93/x95/xa4 EGYPTIAN HIEROGLYPH-13564 +<U00013565> /xf0/x93/x95/xa5 EGYPTIAN HIEROGLYPH-13565 +<U00013566> /xf0/x93/x95/xa6 EGYPTIAN HIEROGLYPH-13566 +<U00013567> /xf0/x93/x95/xa7 EGYPTIAN HIEROGLYPH-13567 +<U00013568> /xf0/x93/x95/xa8 EGYPTIAN HIEROGLYPH-13568 +<U00013569> /xf0/x93/x95/xa9 EGYPTIAN HIEROGLYPH-13569 +<U0001356A> /xf0/x93/x95/xaa EGYPTIAN HIEROGLYPH-1356A +<U0001356B> /xf0/x93/x95/xab EGYPTIAN HIEROGLYPH-1356B +<U0001356C> /xf0/x93/x95/xac EGYPTIAN HIEROGLYPH-1356C +<U0001356D> /xf0/x93/x95/xad EGYPTIAN HIEROGLYPH-1356D +<U0001356E> /xf0/x93/x95/xae EGYPTIAN HIEROGLYPH-1356E +<U0001356F> /xf0/x93/x95/xaf EGYPTIAN HIEROGLYPH-1356F +<U00013570> /xf0/x93/x95/xb0 EGYPTIAN HIEROGLYPH-13570 +<U00013571> /xf0/x93/x95/xb1 EGYPTIAN HIEROGLYPH-13571 +<U00013572> /xf0/x93/x95/xb2 EGYPTIAN HIEROGLYPH-13572 +<U00013573> /xf0/x93/x95/xb3 EGYPTIAN HIEROGLYPH-13573 +<U00013574> /xf0/x93/x95/xb4 EGYPTIAN HIEROGLYPH-13574 +<U00013575> /xf0/x93/x95/xb5 EGYPTIAN HIEROGLYPH-13575 +<U00013576> /xf0/x93/x95/xb6 EGYPTIAN HIEROGLYPH-13576 +<U00013577> /xf0/x93/x95/xb7 EGYPTIAN HIEROGLYPH-13577 +<U00013578> /xf0/x93/x95/xb8 EGYPTIAN HIEROGLYPH-13578 +<U00013579> /xf0/x93/x95/xb9 EGYPTIAN HIEROGLYPH-13579 +<U0001357A> /xf0/x93/x95/xba EGYPTIAN HIEROGLYPH-1357A +<U0001357B> /xf0/x93/x95/xbb EGYPTIAN HIEROGLYPH-1357B +<U0001357C> /xf0/x93/x95/xbc EGYPTIAN HIEROGLYPH-1357C +<U0001357D> /xf0/x93/x95/xbd EGYPTIAN HIEROGLYPH-1357D +<U0001357E> /xf0/x93/x95/xbe EGYPTIAN HIEROGLYPH-1357E +<U0001357F> /xf0/x93/x95/xbf EGYPTIAN HIEROGLYPH-1357F +<U00013580> /xf0/x93/x96/x80 EGYPTIAN HIEROGLYPH-13580 +<U00013581> /xf0/x93/x96/x81 EGYPTIAN HIEROGLYPH-13581 +<U00013582> /xf0/x93/x96/x82 EGYPTIAN HIEROGLYPH-13582 +<U00013583> /xf0/x93/x96/x83 EGYPTIAN HIEROGLYPH-13583 +<U00013584> /xf0/x93/x96/x84 EGYPTIAN HIEROGLYPH-13584 +<U00013585> /xf0/x93/x96/x85 EGYPTIAN HIEROGLYPH-13585 +<U00013586> /xf0/x93/x96/x86 EGYPTIAN HIEROGLYPH-13586 +<U00013587> /xf0/x93/x96/x87 EGYPTIAN HIEROGLYPH-13587 +<U00013588> /xf0/x93/x96/x88 EGYPTIAN HIEROGLYPH-13588 +<U00013589> /xf0/x93/x96/x89 EGYPTIAN HIEROGLYPH-13589 +<U0001358A> /xf0/x93/x96/x8a EGYPTIAN HIEROGLYPH-1358A +<U0001358B> /xf0/x93/x96/x8b EGYPTIAN HIEROGLYPH-1358B +<U0001358C> /xf0/x93/x96/x8c EGYPTIAN HIEROGLYPH-1358C +<U0001358D> /xf0/x93/x96/x8d EGYPTIAN HIEROGLYPH-1358D +<U0001358E> /xf0/x93/x96/x8e EGYPTIAN HIEROGLYPH-1358E +<U0001358F> /xf0/x93/x96/x8f EGYPTIAN HIEROGLYPH-1358F +<U00013590> /xf0/x93/x96/x90 EGYPTIAN HIEROGLYPH-13590 +<U00013591> /xf0/x93/x96/x91 EGYPTIAN HIEROGLYPH-13591 +<U00013592> /xf0/x93/x96/x92 EGYPTIAN HIEROGLYPH-13592 +<U00013593> /xf0/x93/x96/x93 EGYPTIAN HIEROGLYPH-13593 +<U00013594> /xf0/x93/x96/x94 EGYPTIAN HIEROGLYPH-13594 +<U00013595> /xf0/x93/x96/x95 EGYPTIAN HIEROGLYPH-13595 +<U00013596> /xf0/x93/x96/x96 EGYPTIAN HIEROGLYPH-13596 +<U00013597> /xf0/x93/x96/x97 EGYPTIAN HIEROGLYPH-13597 +<U00013598> /xf0/x93/x96/x98 EGYPTIAN HIEROGLYPH-13598 +<U00013599> /xf0/x93/x96/x99 EGYPTIAN HIEROGLYPH-13599 +<U0001359A> /xf0/x93/x96/x9a EGYPTIAN HIEROGLYPH-1359A +<U0001359B> /xf0/x93/x96/x9b EGYPTIAN HIEROGLYPH-1359B +<U0001359C> /xf0/x93/x96/x9c EGYPTIAN HIEROGLYPH-1359C +<U0001359D> /xf0/x93/x96/x9d EGYPTIAN HIEROGLYPH-1359D +<U0001359E> /xf0/x93/x96/x9e EGYPTIAN HIEROGLYPH-1359E +<U0001359F> /xf0/x93/x96/x9f EGYPTIAN HIEROGLYPH-1359F +<U000135A0> /xf0/x93/x96/xa0 EGYPTIAN HIEROGLYPH-135A0 +<U000135A1> /xf0/x93/x96/xa1 EGYPTIAN HIEROGLYPH-135A1 +<U000135A2> /xf0/x93/x96/xa2 EGYPTIAN HIEROGLYPH-135A2 +<U000135A3> /xf0/x93/x96/xa3 EGYPTIAN HIEROGLYPH-135A3 +<U000135A4> /xf0/x93/x96/xa4 EGYPTIAN HIEROGLYPH-135A4 +<U000135A5> /xf0/x93/x96/xa5 EGYPTIAN HIEROGLYPH-135A5 +<U000135A6> /xf0/x93/x96/xa6 EGYPTIAN HIEROGLYPH-135A6 +<U000135A7> /xf0/x93/x96/xa7 EGYPTIAN HIEROGLYPH-135A7 +<U000135A8> /xf0/x93/x96/xa8 EGYPTIAN HIEROGLYPH-135A8 +<U000135A9> /xf0/x93/x96/xa9 EGYPTIAN HIEROGLYPH-135A9 +<U000135AA> /xf0/x93/x96/xaa EGYPTIAN HIEROGLYPH-135AA +<U000135AB> /xf0/x93/x96/xab EGYPTIAN HIEROGLYPH-135AB +<U000135AC> /xf0/x93/x96/xac EGYPTIAN HIEROGLYPH-135AC +<U000135AD> /xf0/x93/x96/xad EGYPTIAN HIEROGLYPH-135AD +<U000135AE> /xf0/x93/x96/xae EGYPTIAN HIEROGLYPH-135AE +<U000135AF> /xf0/x93/x96/xaf EGYPTIAN HIEROGLYPH-135AF +<U000135B0> /xf0/x93/x96/xb0 EGYPTIAN HIEROGLYPH-135B0 +<U000135B1> /xf0/x93/x96/xb1 EGYPTIAN HIEROGLYPH-135B1 +<U000135B2> /xf0/x93/x96/xb2 EGYPTIAN HIEROGLYPH-135B2 +<U000135B3> /xf0/x93/x96/xb3 EGYPTIAN HIEROGLYPH-135B3 +<U000135B4> /xf0/x93/x96/xb4 EGYPTIAN HIEROGLYPH-135B4 +<U000135B5> /xf0/x93/x96/xb5 EGYPTIAN HIEROGLYPH-135B5 +<U000135B6> /xf0/x93/x96/xb6 EGYPTIAN HIEROGLYPH-135B6 +<U000135B7> /xf0/x93/x96/xb7 EGYPTIAN HIEROGLYPH-135B7 +<U000135B8> /xf0/x93/x96/xb8 EGYPTIAN HIEROGLYPH-135B8 +<U000135B9> /xf0/x93/x96/xb9 EGYPTIAN HIEROGLYPH-135B9 +<U000135BA> /xf0/x93/x96/xba EGYPTIAN HIEROGLYPH-135BA +<U000135BB> /xf0/x93/x96/xbb EGYPTIAN HIEROGLYPH-135BB +<U000135BC> /xf0/x93/x96/xbc EGYPTIAN HIEROGLYPH-135BC +<U000135BD> /xf0/x93/x96/xbd EGYPTIAN HIEROGLYPH-135BD +<U000135BE> /xf0/x93/x96/xbe EGYPTIAN HIEROGLYPH-135BE +<U000135BF> /xf0/x93/x96/xbf EGYPTIAN HIEROGLYPH-135BF +<U000135C0> /xf0/x93/x97/x80 EGYPTIAN HIEROGLYPH-135C0 +<U000135C1> /xf0/x93/x97/x81 EGYPTIAN HIEROGLYPH-135C1 +<U000135C2> /xf0/x93/x97/x82 EGYPTIAN HIEROGLYPH-135C2 +<U000135C3> /xf0/x93/x97/x83 EGYPTIAN HIEROGLYPH-135C3 +<U000135C4> /xf0/x93/x97/x84 EGYPTIAN HIEROGLYPH-135C4 +<U000135C5> /xf0/x93/x97/x85 EGYPTIAN HIEROGLYPH-135C5 +<U000135C6> /xf0/x93/x97/x86 EGYPTIAN HIEROGLYPH-135C6 +<U000135C7> /xf0/x93/x97/x87 EGYPTIAN HIEROGLYPH-135C7 +<U000135C8> /xf0/x93/x97/x88 EGYPTIAN HIEROGLYPH-135C8 +<U000135C9> /xf0/x93/x97/x89 EGYPTIAN HIEROGLYPH-135C9 +<U000135CA> /xf0/x93/x97/x8a EGYPTIAN HIEROGLYPH-135CA +<U000135CB> /xf0/x93/x97/x8b EGYPTIAN HIEROGLYPH-135CB +<U000135CC> /xf0/x93/x97/x8c EGYPTIAN HIEROGLYPH-135CC +<U000135CD> /xf0/x93/x97/x8d EGYPTIAN HIEROGLYPH-135CD +<U000135CE> /xf0/x93/x97/x8e EGYPTIAN HIEROGLYPH-135CE +<U000135CF> /xf0/x93/x97/x8f EGYPTIAN HIEROGLYPH-135CF +<U000135D0> /xf0/x93/x97/x90 EGYPTIAN HIEROGLYPH-135D0 +<U000135D1> /xf0/x93/x97/x91 EGYPTIAN HIEROGLYPH-135D1 +<U000135D2> /xf0/x93/x97/x92 EGYPTIAN HIEROGLYPH-135D2 +<U000135D3> /xf0/x93/x97/x93 EGYPTIAN HIEROGLYPH-135D3 +<U000135D4> /xf0/x93/x97/x94 EGYPTIAN HIEROGLYPH-135D4 +<U000135D5> /xf0/x93/x97/x95 EGYPTIAN HIEROGLYPH-135D5 +<U000135D6> /xf0/x93/x97/x96 EGYPTIAN HIEROGLYPH-135D6 +<U000135D7> /xf0/x93/x97/x97 EGYPTIAN HIEROGLYPH-135D7 +<U000135D8> /xf0/x93/x97/x98 EGYPTIAN HIEROGLYPH-135D8 +<U000135D9> /xf0/x93/x97/x99 EGYPTIAN HIEROGLYPH-135D9 +<U000135DA> /xf0/x93/x97/x9a EGYPTIAN HIEROGLYPH-135DA +<U000135DB> /xf0/x93/x97/x9b EGYPTIAN HIEROGLYPH-135DB +<U000135DC> /xf0/x93/x97/x9c EGYPTIAN HIEROGLYPH-135DC +<U000135DD> /xf0/x93/x97/x9d EGYPTIAN HIEROGLYPH-135DD +<U000135DE> /xf0/x93/x97/x9e EGYPTIAN HIEROGLYPH-135DE +<U000135DF> /xf0/x93/x97/x9f EGYPTIAN HIEROGLYPH-135DF +<U000135E0> /xf0/x93/x97/xa0 EGYPTIAN HIEROGLYPH-135E0 +<U000135E1> /xf0/x93/x97/xa1 EGYPTIAN HIEROGLYPH-135E1 +<U000135E2> /xf0/x93/x97/xa2 EGYPTIAN HIEROGLYPH-135E2 +<U000135E3> /xf0/x93/x97/xa3 EGYPTIAN HIEROGLYPH-135E3 +<U000135E4> /xf0/x93/x97/xa4 EGYPTIAN HIEROGLYPH-135E4 +<U000135E5> /xf0/x93/x97/xa5 EGYPTIAN HIEROGLYPH-135E5 +<U000135E6> /xf0/x93/x97/xa6 EGYPTIAN HIEROGLYPH-135E6 +<U000135E7> /xf0/x93/x97/xa7 EGYPTIAN HIEROGLYPH-135E7 +<U000135E8> /xf0/x93/x97/xa8 EGYPTIAN HIEROGLYPH-135E8 +<U000135E9> /xf0/x93/x97/xa9 EGYPTIAN HIEROGLYPH-135E9 +<U000135EA> /xf0/x93/x97/xaa EGYPTIAN HIEROGLYPH-135EA +<U000135EB> /xf0/x93/x97/xab EGYPTIAN HIEROGLYPH-135EB +<U000135EC> /xf0/x93/x97/xac EGYPTIAN HIEROGLYPH-135EC +<U000135ED> /xf0/x93/x97/xad EGYPTIAN HIEROGLYPH-135ED +<U000135EE> /xf0/x93/x97/xae EGYPTIAN HIEROGLYPH-135EE +<U000135EF> /xf0/x93/x97/xaf EGYPTIAN HIEROGLYPH-135EF +<U000135F0> /xf0/x93/x97/xb0 EGYPTIAN HIEROGLYPH-135F0 +<U000135F1> /xf0/x93/x97/xb1 EGYPTIAN HIEROGLYPH-135F1 +<U000135F2> /xf0/x93/x97/xb2 EGYPTIAN HIEROGLYPH-135F2 +<U000135F3> /xf0/x93/x97/xb3 EGYPTIAN HIEROGLYPH-135F3 +<U000135F4> /xf0/x93/x97/xb4 EGYPTIAN HIEROGLYPH-135F4 +<U000135F5> /xf0/x93/x97/xb5 EGYPTIAN HIEROGLYPH-135F5 +<U000135F6> /xf0/x93/x97/xb6 EGYPTIAN HIEROGLYPH-135F6 +<U000135F7> /xf0/x93/x97/xb7 EGYPTIAN HIEROGLYPH-135F7 +<U000135F8> /xf0/x93/x97/xb8 EGYPTIAN HIEROGLYPH-135F8 +<U000135F9> /xf0/x93/x97/xb9 EGYPTIAN HIEROGLYPH-135F9 +<U000135FA> /xf0/x93/x97/xba EGYPTIAN HIEROGLYPH-135FA +<U000135FB> /xf0/x93/x97/xbb EGYPTIAN HIEROGLYPH-135FB +<U000135FC> /xf0/x93/x97/xbc EGYPTIAN HIEROGLYPH-135FC +<U000135FD> /xf0/x93/x97/xbd EGYPTIAN HIEROGLYPH-135FD +<U000135FE> /xf0/x93/x97/xbe EGYPTIAN HIEROGLYPH-135FE +<U000135FF> /xf0/x93/x97/xbf EGYPTIAN HIEROGLYPH-135FF +<U00013600> /xf0/x93/x98/x80 EGYPTIAN HIEROGLYPH-13600 +<U00013601> /xf0/x93/x98/x81 EGYPTIAN HIEROGLYPH-13601 +<U00013602> /xf0/x93/x98/x82 EGYPTIAN HIEROGLYPH-13602 +<U00013603> /xf0/x93/x98/x83 EGYPTIAN HIEROGLYPH-13603 +<U00013604> /xf0/x93/x98/x84 EGYPTIAN HIEROGLYPH-13604 +<U00013605> /xf0/x93/x98/x85 EGYPTIAN HIEROGLYPH-13605 +<U00013606> /xf0/x93/x98/x86 EGYPTIAN HIEROGLYPH-13606 +<U00013607> /xf0/x93/x98/x87 EGYPTIAN HIEROGLYPH-13607 +<U00013608> /xf0/x93/x98/x88 EGYPTIAN HIEROGLYPH-13608 +<U00013609> /xf0/x93/x98/x89 EGYPTIAN HIEROGLYPH-13609 +<U0001360A> /xf0/x93/x98/x8a EGYPTIAN HIEROGLYPH-1360A +<U0001360B> /xf0/x93/x98/x8b EGYPTIAN HIEROGLYPH-1360B +<U0001360C> /xf0/x93/x98/x8c EGYPTIAN HIEROGLYPH-1360C +<U0001360D> /xf0/x93/x98/x8d EGYPTIAN HIEROGLYPH-1360D +<U0001360E> /xf0/x93/x98/x8e EGYPTIAN HIEROGLYPH-1360E +<U0001360F> /xf0/x93/x98/x8f EGYPTIAN HIEROGLYPH-1360F +<U00013610> /xf0/x93/x98/x90 EGYPTIAN HIEROGLYPH-13610 +<U00013611> /xf0/x93/x98/x91 EGYPTIAN HIEROGLYPH-13611 +<U00013612> /xf0/x93/x98/x92 EGYPTIAN HIEROGLYPH-13612 +<U00013613> /xf0/x93/x98/x93 EGYPTIAN HIEROGLYPH-13613 +<U00013614> /xf0/x93/x98/x94 EGYPTIAN HIEROGLYPH-13614 +<U00013615> /xf0/x93/x98/x95 EGYPTIAN HIEROGLYPH-13615 +<U00013616> /xf0/x93/x98/x96 EGYPTIAN HIEROGLYPH-13616 +<U00013617> /xf0/x93/x98/x97 EGYPTIAN HIEROGLYPH-13617 +<U00013618> /xf0/x93/x98/x98 EGYPTIAN HIEROGLYPH-13618 +<U00013619> /xf0/x93/x98/x99 EGYPTIAN HIEROGLYPH-13619 +<U0001361A> /xf0/x93/x98/x9a EGYPTIAN HIEROGLYPH-1361A +<U0001361B> /xf0/x93/x98/x9b EGYPTIAN HIEROGLYPH-1361B +<U0001361C> /xf0/x93/x98/x9c EGYPTIAN HIEROGLYPH-1361C +<U0001361D> /xf0/x93/x98/x9d EGYPTIAN HIEROGLYPH-1361D +<U0001361E> /xf0/x93/x98/x9e EGYPTIAN HIEROGLYPH-1361E +<U0001361F> /xf0/x93/x98/x9f EGYPTIAN HIEROGLYPH-1361F +<U00013620> /xf0/x93/x98/xa0 EGYPTIAN HIEROGLYPH-13620 +<U00013621> /xf0/x93/x98/xa1 EGYPTIAN HIEROGLYPH-13621 +<U00013622> /xf0/x93/x98/xa2 EGYPTIAN HIEROGLYPH-13622 +<U00013623> /xf0/x93/x98/xa3 EGYPTIAN HIEROGLYPH-13623 +<U00013624> /xf0/x93/x98/xa4 EGYPTIAN HIEROGLYPH-13624 +<U00013625> /xf0/x93/x98/xa5 EGYPTIAN HIEROGLYPH-13625 +<U00013626> /xf0/x93/x98/xa6 EGYPTIAN HIEROGLYPH-13626 +<U00013627> /xf0/x93/x98/xa7 EGYPTIAN HIEROGLYPH-13627 +<U00013628> /xf0/x93/x98/xa8 EGYPTIAN HIEROGLYPH-13628 +<U00013629> /xf0/x93/x98/xa9 EGYPTIAN HIEROGLYPH-13629 +<U0001362A> /xf0/x93/x98/xaa EGYPTIAN HIEROGLYPH-1362A +<U0001362B> /xf0/x93/x98/xab EGYPTIAN HIEROGLYPH-1362B +<U0001362C> /xf0/x93/x98/xac EGYPTIAN HIEROGLYPH-1362C +<U0001362D> /xf0/x93/x98/xad EGYPTIAN HIEROGLYPH-1362D +<U0001362E> /xf0/x93/x98/xae EGYPTIAN HIEROGLYPH-1362E +<U0001362F> /xf0/x93/x98/xaf EGYPTIAN HIEROGLYPH-1362F +<U00013630> /xf0/x93/x98/xb0 EGYPTIAN HIEROGLYPH-13630 +<U00013631> /xf0/x93/x98/xb1 EGYPTIAN HIEROGLYPH-13631 +<U00013632> /xf0/x93/x98/xb2 EGYPTIAN HIEROGLYPH-13632 +<U00013633> /xf0/x93/x98/xb3 EGYPTIAN HIEROGLYPH-13633 +<U00013634> /xf0/x93/x98/xb4 EGYPTIAN HIEROGLYPH-13634 +<U00013635> /xf0/x93/x98/xb5 EGYPTIAN HIEROGLYPH-13635 +<U00013636> /xf0/x93/x98/xb6 EGYPTIAN HIEROGLYPH-13636 +<U00013637> /xf0/x93/x98/xb7 EGYPTIAN HIEROGLYPH-13637 +<U00013638> /xf0/x93/x98/xb8 EGYPTIAN HIEROGLYPH-13638 +<U00013639> /xf0/x93/x98/xb9 EGYPTIAN HIEROGLYPH-13639 +<U0001363A> /xf0/x93/x98/xba EGYPTIAN HIEROGLYPH-1363A +<U0001363B> /xf0/x93/x98/xbb EGYPTIAN HIEROGLYPH-1363B +<U0001363C> /xf0/x93/x98/xbc EGYPTIAN HIEROGLYPH-1363C +<U0001363D> /xf0/x93/x98/xbd EGYPTIAN HIEROGLYPH-1363D +<U0001363E> /xf0/x93/x98/xbe EGYPTIAN HIEROGLYPH-1363E +<U0001363F> /xf0/x93/x98/xbf EGYPTIAN HIEROGLYPH-1363F +<U00013640> /xf0/x93/x99/x80 EGYPTIAN HIEROGLYPH-13640 +<U00013641> /xf0/x93/x99/x81 EGYPTIAN HIEROGLYPH-13641 +<U00013642> /xf0/x93/x99/x82 EGYPTIAN HIEROGLYPH-13642 +<U00013643> /xf0/x93/x99/x83 EGYPTIAN HIEROGLYPH-13643 +<U00013644> /xf0/x93/x99/x84 EGYPTIAN HIEROGLYPH-13644 +<U00013645> /xf0/x93/x99/x85 EGYPTIAN HIEROGLYPH-13645 +<U00013646> /xf0/x93/x99/x86 EGYPTIAN HIEROGLYPH-13646 +<U00013647> /xf0/x93/x99/x87 EGYPTIAN HIEROGLYPH-13647 +<U00013648> /xf0/x93/x99/x88 EGYPTIAN HIEROGLYPH-13648 +<U00013649> /xf0/x93/x99/x89 EGYPTIAN HIEROGLYPH-13649 +<U0001364A> /xf0/x93/x99/x8a EGYPTIAN HIEROGLYPH-1364A +<U0001364B> /xf0/x93/x99/x8b EGYPTIAN HIEROGLYPH-1364B +<U0001364C> /xf0/x93/x99/x8c EGYPTIAN HIEROGLYPH-1364C +<U0001364D> /xf0/x93/x99/x8d EGYPTIAN HIEROGLYPH-1364D +<U0001364E> /xf0/x93/x99/x8e EGYPTIAN HIEROGLYPH-1364E +<U0001364F> /xf0/x93/x99/x8f EGYPTIAN HIEROGLYPH-1364F +<U00013650> /xf0/x93/x99/x90 EGYPTIAN HIEROGLYPH-13650 +<U00013651> /xf0/x93/x99/x91 EGYPTIAN HIEROGLYPH-13651 +<U00013652> /xf0/x93/x99/x92 EGYPTIAN HIEROGLYPH-13652 +<U00013653> /xf0/x93/x99/x93 EGYPTIAN HIEROGLYPH-13653 +<U00013654> /xf0/x93/x99/x94 EGYPTIAN HIEROGLYPH-13654 +<U00013655> /xf0/x93/x99/x95 EGYPTIAN HIEROGLYPH-13655 +<U00013656> /xf0/x93/x99/x96 EGYPTIAN HIEROGLYPH-13656 +<U00013657> /xf0/x93/x99/x97 EGYPTIAN HIEROGLYPH-13657 +<U00013658> /xf0/x93/x99/x98 EGYPTIAN HIEROGLYPH-13658 +<U00013659> /xf0/x93/x99/x99 EGYPTIAN HIEROGLYPH-13659 +<U0001365A> /xf0/x93/x99/x9a EGYPTIAN HIEROGLYPH-1365A +<U0001365B> /xf0/x93/x99/x9b EGYPTIAN HIEROGLYPH-1365B +<U0001365C> /xf0/x93/x99/x9c EGYPTIAN HIEROGLYPH-1365C +<U0001365D> /xf0/x93/x99/x9d EGYPTIAN HIEROGLYPH-1365D +<U0001365E> /xf0/x93/x99/x9e EGYPTIAN HIEROGLYPH-1365E +<U0001365F> /xf0/x93/x99/x9f EGYPTIAN HIEROGLYPH-1365F +<U00013660> /xf0/x93/x99/xa0 EGYPTIAN HIEROGLYPH-13660 +<U00013661> /xf0/x93/x99/xa1 EGYPTIAN HIEROGLYPH-13661 +<U00013662> /xf0/x93/x99/xa2 EGYPTIAN HIEROGLYPH-13662 +<U00013663> /xf0/x93/x99/xa3 EGYPTIAN HIEROGLYPH-13663 +<U00013664> /xf0/x93/x99/xa4 EGYPTIAN HIEROGLYPH-13664 +<U00013665> /xf0/x93/x99/xa5 EGYPTIAN HIEROGLYPH-13665 +<U00013666> /xf0/x93/x99/xa6 EGYPTIAN HIEROGLYPH-13666 +<U00013667> /xf0/x93/x99/xa7 EGYPTIAN HIEROGLYPH-13667 +<U00013668> /xf0/x93/x99/xa8 EGYPTIAN HIEROGLYPH-13668 +<U00013669> /xf0/x93/x99/xa9 EGYPTIAN HIEROGLYPH-13669 +<U0001366A> /xf0/x93/x99/xaa EGYPTIAN HIEROGLYPH-1366A +<U0001366B> /xf0/x93/x99/xab EGYPTIAN HIEROGLYPH-1366B +<U0001366C> /xf0/x93/x99/xac EGYPTIAN HIEROGLYPH-1366C +<U0001366D> /xf0/x93/x99/xad EGYPTIAN HIEROGLYPH-1366D +<U0001366E> /xf0/x93/x99/xae EGYPTIAN HIEROGLYPH-1366E +<U0001366F> /xf0/x93/x99/xaf EGYPTIAN HIEROGLYPH-1366F +<U00013670> /xf0/x93/x99/xb0 EGYPTIAN HIEROGLYPH-13670 +<U00013671> /xf0/x93/x99/xb1 EGYPTIAN HIEROGLYPH-13671 +<U00013672> /xf0/x93/x99/xb2 EGYPTIAN HIEROGLYPH-13672 +<U00013673> /xf0/x93/x99/xb3 EGYPTIAN HIEROGLYPH-13673 +<U00013674> /xf0/x93/x99/xb4 EGYPTIAN HIEROGLYPH-13674 +<U00013675> /xf0/x93/x99/xb5 EGYPTIAN HIEROGLYPH-13675 +<U00013676> /xf0/x93/x99/xb6 EGYPTIAN HIEROGLYPH-13676 +<U00013677> /xf0/x93/x99/xb7 EGYPTIAN HIEROGLYPH-13677 +<U00013678> /xf0/x93/x99/xb8 EGYPTIAN HIEROGLYPH-13678 +<U00013679> /xf0/x93/x99/xb9 EGYPTIAN HIEROGLYPH-13679 +<U0001367A> /xf0/x93/x99/xba EGYPTIAN HIEROGLYPH-1367A +<U0001367B> /xf0/x93/x99/xbb EGYPTIAN HIEROGLYPH-1367B +<U0001367C> /xf0/x93/x99/xbc EGYPTIAN HIEROGLYPH-1367C +<U0001367D> /xf0/x93/x99/xbd EGYPTIAN HIEROGLYPH-1367D +<U0001367E> /xf0/x93/x99/xbe EGYPTIAN HIEROGLYPH-1367E +<U0001367F> /xf0/x93/x99/xbf EGYPTIAN HIEROGLYPH-1367F +<U00013680> /xf0/x93/x9a/x80 EGYPTIAN HIEROGLYPH-13680 +<U00013681> /xf0/x93/x9a/x81 EGYPTIAN HIEROGLYPH-13681 +<U00013682> /xf0/x93/x9a/x82 EGYPTIAN HIEROGLYPH-13682 +<U00013683> /xf0/x93/x9a/x83 EGYPTIAN HIEROGLYPH-13683 +<U00013684> /xf0/x93/x9a/x84 EGYPTIAN HIEROGLYPH-13684 +<U00013685> /xf0/x93/x9a/x85 EGYPTIAN HIEROGLYPH-13685 +<U00013686> /xf0/x93/x9a/x86 EGYPTIAN HIEROGLYPH-13686 +<U00013687> /xf0/x93/x9a/x87 EGYPTIAN HIEROGLYPH-13687 +<U00013688> /xf0/x93/x9a/x88 EGYPTIAN HIEROGLYPH-13688 +<U00013689> /xf0/x93/x9a/x89 EGYPTIAN HIEROGLYPH-13689 +<U0001368A> /xf0/x93/x9a/x8a EGYPTIAN HIEROGLYPH-1368A +<U0001368B> /xf0/x93/x9a/x8b EGYPTIAN HIEROGLYPH-1368B +<U0001368C> /xf0/x93/x9a/x8c EGYPTIAN HIEROGLYPH-1368C +<U0001368D> /xf0/x93/x9a/x8d EGYPTIAN HIEROGLYPH-1368D +<U0001368E> /xf0/x93/x9a/x8e EGYPTIAN HIEROGLYPH-1368E +<U0001368F> /xf0/x93/x9a/x8f EGYPTIAN HIEROGLYPH-1368F +<U00013690> /xf0/x93/x9a/x90 EGYPTIAN HIEROGLYPH-13690 +<U00013691> /xf0/x93/x9a/x91 EGYPTIAN HIEROGLYPH-13691 +<U00013692> /xf0/x93/x9a/x92 EGYPTIAN HIEROGLYPH-13692 +<U00013693> /xf0/x93/x9a/x93 EGYPTIAN HIEROGLYPH-13693 +<U00013694> /xf0/x93/x9a/x94 EGYPTIAN HIEROGLYPH-13694 +<U00013695> /xf0/x93/x9a/x95 EGYPTIAN HIEROGLYPH-13695 +<U00013696> /xf0/x93/x9a/x96 EGYPTIAN HIEROGLYPH-13696 +<U00013697> /xf0/x93/x9a/x97 EGYPTIAN HIEROGLYPH-13697 +<U00013698> /xf0/x93/x9a/x98 EGYPTIAN HIEROGLYPH-13698 +<U00013699> /xf0/x93/x9a/x99 EGYPTIAN HIEROGLYPH-13699 +<U0001369A> /xf0/x93/x9a/x9a EGYPTIAN HIEROGLYPH-1369A +<U0001369B> /xf0/x93/x9a/x9b EGYPTIAN HIEROGLYPH-1369B +<U0001369C> /xf0/x93/x9a/x9c EGYPTIAN HIEROGLYPH-1369C +<U0001369D> /xf0/x93/x9a/x9d EGYPTIAN HIEROGLYPH-1369D +<U0001369E> /xf0/x93/x9a/x9e EGYPTIAN HIEROGLYPH-1369E +<U0001369F> /xf0/x93/x9a/x9f EGYPTIAN HIEROGLYPH-1369F +<U000136A0> /xf0/x93/x9a/xa0 EGYPTIAN HIEROGLYPH-136A0 +<U000136A1> /xf0/x93/x9a/xa1 EGYPTIAN HIEROGLYPH-136A1 +<U000136A2> /xf0/x93/x9a/xa2 EGYPTIAN HIEROGLYPH-136A2 +<U000136A3> /xf0/x93/x9a/xa3 EGYPTIAN HIEROGLYPH-136A3 +<U000136A4> /xf0/x93/x9a/xa4 EGYPTIAN HIEROGLYPH-136A4 +<U000136A5> /xf0/x93/x9a/xa5 EGYPTIAN HIEROGLYPH-136A5 +<U000136A6> /xf0/x93/x9a/xa6 EGYPTIAN HIEROGLYPH-136A6 +<U000136A7> /xf0/x93/x9a/xa7 EGYPTIAN HIEROGLYPH-136A7 +<U000136A8> /xf0/x93/x9a/xa8 EGYPTIAN HIEROGLYPH-136A8 +<U000136A9> /xf0/x93/x9a/xa9 EGYPTIAN HIEROGLYPH-136A9 +<U000136AA> /xf0/x93/x9a/xaa EGYPTIAN HIEROGLYPH-136AA +<U000136AB> /xf0/x93/x9a/xab EGYPTIAN HIEROGLYPH-136AB +<U000136AC> /xf0/x93/x9a/xac EGYPTIAN HIEROGLYPH-136AC +<U000136AD> /xf0/x93/x9a/xad EGYPTIAN HIEROGLYPH-136AD +<U000136AE> /xf0/x93/x9a/xae EGYPTIAN HIEROGLYPH-136AE +<U000136AF> /xf0/x93/x9a/xaf EGYPTIAN HIEROGLYPH-136AF +<U000136B0> /xf0/x93/x9a/xb0 EGYPTIAN HIEROGLYPH-136B0 +<U000136B1> /xf0/x93/x9a/xb1 EGYPTIAN HIEROGLYPH-136B1 +<U000136B2> /xf0/x93/x9a/xb2 EGYPTIAN HIEROGLYPH-136B2 +<U000136B3> /xf0/x93/x9a/xb3 EGYPTIAN HIEROGLYPH-136B3 +<U000136B4> /xf0/x93/x9a/xb4 EGYPTIAN HIEROGLYPH-136B4 +<U000136B5> /xf0/x93/x9a/xb5 EGYPTIAN HIEROGLYPH-136B5 +<U000136B6> /xf0/x93/x9a/xb6 EGYPTIAN HIEROGLYPH-136B6 +<U000136B7> /xf0/x93/x9a/xb7 EGYPTIAN HIEROGLYPH-136B7 +<U000136B8> /xf0/x93/x9a/xb8 EGYPTIAN HIEROGLYPH-136B8 +<U000136B9> /xf0/x93/x9a/xb9 EGYPTIAN HIEROGLYPH-136B9 +<U000136BA> /xf0/x93/x9a/xba EGYPTIAN HIEROGLYPH-136BA +<U000136BB> /xf0/x93/x9a/xbb EGYPTIAN HIEROGLYPH-136BB +<U000136BC> /xf0/x93/x9a/xbc EGYPTIAN HIEROGLYPH-136BC +<U000136BD> /xf0/x93/x9a/xbd EGYPTIAN HIEROGLYPH-136BD +<U000136BE> /xf0/x93/x9a/xbe EGYPTIAN HIEROGLYPH-136BE +<U000136BF> /xf0/x93/x9a/xbf EGYPTIAN HIEROGLYPH-136BF +<U000136C0> /xf0/x93/x9b/x80 EGYPTIAN HIEROGLYPH-136C0 +<U000136C1> /xf0/x93/x9b/x81 EGYPTIAN HIEROGLYPH-136C1 +<U000136C2> /xf0/x93/x9b/x82 EGYPTIAN HIEROGLYPH-136C2 +<U000136C3> /xf0/x93/x9b/x83 EGYPTIAN HIEROGLYPH-136C3 +<U000136C4> /xf0/x93/x9b/x84 EGYPTIAN HIEROGLYPH-136C4 +<U000136C5> /xf0/x93/x9b/x85 EGYPTIAN HIEROGLYPH-136C5 +<U000136C6> /xf0/x93/x9b/x86 EGYPTIAN HIEROGLYPH-136C6 +<U000136C7> /xf0/x93/x9b/x87 EGYPTIAN HIEROGLYPH-136C7 +<U000136C8> /xf0/x93/x9b/x88 EGYPTIAN HIEROGLYPH-136C8 +<U000136C9> /xf0/x93/x9b/x89 EGYPTIAN HIEROGLYPH-136C9 +<U000136CA> /xf0/x93/x9b/x8a EGYPTIAN HIEROGLYPH-136CA +<U000136CB> /xf0/x93/x9b/x8b EGYPTIAN HIEROGLYPH-136CB +<U000136CC> /xf0/x93/x9b/x8c EGYPTIAN HIEROGLYPH-136CC +<U000136CD> /xf0/x93/x9b/x8d EGYPTIAN HIEROGLYPH-136CD +<U000136CE> /xf0/x93/x9b/x8e EGYPTIAN HIEROGLYPH-136CE +<U000136CF> /xf0/x93/x9b/x8f EGYPTIAN HIEROGLYPH-136CF +<U000136D0> /xf0/x93/x9b/x90 EGYPTIAN HIEROGLYPH-136D0 +<U000136D1> /xf0/x93/x9b/x91 EGYPTIAN HIEROGLYPH-136D1 +<U000136D2> /xf0/x93/x9b/x92 EGYPTIAN HIEROGLYPH-136D2 +<U000136D3> /xf0/x93/x9b/x93 EGYPTIAN HIEROGLYPH-136D3 +<U000136D4> /xf0/x93/x9b/x94 EGYPTIAN HIEROGLYPH-136D4 +<U000136D5> /xf0/x93/x9b/x95 EGYPTIAN HIEROGLYPH-136D5 +<U000136D6> /xf0/x93/x9b/x96 EGYPTIAN HIEROGLYPH-136D6 +<U000136D7> /xf0/x93/x9b/x97 EGYPTIAN HIEROGLYPH-136D7 +<U000136D8> /xf0/x93/x9b/x98 EGYPTIAN HIEROGLYPH-136D8 +<U000136D9> /xf0/x93/x9b/x99 EGYPTIAN HIEROGLYPH-136D9 +<U000136DA> /xf0/x93/x9b/x9a EGYPTIAN HIEROGLYPH-136DA +<U000136DB> /xf0/x93/x9b/x9b EGYPTIAN HIEROGLYPH-136DB +<U000136DC> /xf0/x93/x9b/x9c EGYPTIAN HIEROGLYPH-136DC +<U000136DD> /xf0/x93/x9b/x9d EGYPTIAN HIEROGLYPH-136DD +<U000136DE> /xf0/x93/x9b/x9e EGYPTIAN HIEROGLYPH-136DE +<U000136DF> /xf0/x93/x9b/x9f EGYPTIAN HIEROGLYPH-136DF +<U000136E0> /xf0/x93/x9b/xa0 EGYPTIAN HIEROGLYPH-136E0 +<U000136E1> /xf0/x93/x9b/xa1 EGYPTIAN HIEROGLYPH-136E1 +<U000136E2> /xf0/x93/x9b/xa2 EGYPTIAN HIEROGLYPH-136E2 +<U000136E3> /xf0/x93/x9b/xa3 EGYPTIAN HIEROGLYPH-136E3 +<U000136E4> /xf0/x93/x9b/xa4 EGYPTIAN HIEROGLYPH-136E4 +<U000136E5> /xf0/x93/x9b/xa5 EGYPTIAN HIEROGLYPH-136E5 +<U000136E6> /xf0/x93/x9b/xa6 EGYPTIAN HIEROGLYPH-136E6 +<U000136E7> /xf0/x93/x9b/xa7 EGYPTIAN HIEROGLYPH-136E7 +<U000136E8> /xf0/x93/x9b/xa8 EGYPTIAN HIEROGLYPH-136E8 +<U000136E9> /xf0/x93/x9b/xa9 EGYPTIAN HIEROGLYPH-136E9 +<U000136EA> /xf0/x93/x9b/xaa EGYPTIAN HIEROGLYPH-136EA +<U000136EB> /xf0/x93/x9b/xab EGYPTIAN HIEROGLYPH-136EB +<U000136EC> /xf0/x93/x9b/xac EGYPTIAN HIEROGLYPH-136EC +<U000136ED> /xf0/x93/x9b/xad EGYPTIAN HIEROGLYPH-136ED +<U000136EE> /xf0/x93/x9b/xae EGYPTIAN HIEROGLYPH-136EE +<U000136EF> /xf0/x93/x9b/xaf EGYPTIAN HIEROGLYPH-136EF +<U000136F0> /xf0/x93/x9b/xb0 EGYPTIAN HIEROGLYPH-136F0 +<U000136F1> /xf0/x93/x9b/xb1 EGYPTIAN HIEROGLYPH-136F1 +<U000136F2> /xf0/x93/x9b/xb2 EGYPTIAN HIEROGLYPH-136F2 +<U000136F3> /xf0/x93/x9b/xb3 EGYPTIAN HIEROGLYPH-136F3 +<U000136F4> /xf0/x93/x9b/xb4 EGYPTIAN HIEROGLYPH-136F4 +<U000136F5> /xf0/x93/x9b/xb5 EGYPTIAN HIEROGLYPH-136F5 +<U000136F6> /xf0/x93/x9b/xb6 EGYPTIAN HIEROGLYPH-136F6 +<U000136F7> /xf0/x93/x9b/xb7 EGYPTIAN HIEROGLYPH-136F7 +<U000136F8> /xf0/x93/x9b/xb8 EGYPTIAN HIEROGLYPH-136F8 +<U000136F9> /xf0/x93/x9b/xb9 EGYPTIAN HIEROGLYPH-136F9 +<U000136FA> /xf0/x93/x9b/xba EGYPTIAN HIEROGLYPH-136FA +<U000136FB> /xf0/x93/x9b/xbb EGYPTIAN HIEROGLYPH-136FB +<U000136FC> /xf0/x93/x9b/xbc EGYPTIAN HIEROGLYPH-136FC +<U000136FD> /xf0/x93/x9b/xbd EGYPTIAN HIEROGLYPH-136FD +<U000136FE> /xf0/x93/x9b/xbe EGYPTIAN HIEROGLYPH-136FE +<U000136FF> /xf0/x93/x9b/xbf EGYPTIAN HIEROGLYPH-136FF +<U00013700> /xf0/x93/x9c/x80 EGYPTIAN HIEROGLYPH-13700 +<U00013701> /xf0/x93/x9c/x81 EGYPTIAN HIEROGLYPH-13701 +<U00013702> /xf0/x93/x9c/x82 EGYPTIAN HIEROGLYPH-13702 +<U00013703> /xf0/x93/x9c/x83 EGYPTIAN HIEROGLYPH-13703 +<U00013704> /xf0/x93/x9c/x84 EGYPTIAN HIEROGLYPH-13704 +<U00013705> /xf0/x93/x9c/x85 EGYPTIAN HIEROGLYPH-13705 +<U00013706> /xf0/x93/x9c/x86 EGYPTIAN HIEROGLYPH-13706 +<U00013707> /xf0/x93/x9c/x87 EGYPTIAN HIEROGLYPH-13707 +<U00013708> /xf0/x93/x9c/x88 EGYPTIAN HIEROGLYPH-13708 +<U00013709> /xf0/x93/x9c/x89 EGYPTIAN HIEROGLYPH-13709 +<U0001370A> /xf0/x93/x9c/x8a EGYPTIAN HIEROGLYPH-1370A +<U0001370B> /xf0/x93/x9c/x8b EGYPTIAN HIEROGLYPH-1370B +<U0001370C> /xf0/x93/x9c/x8c EGYPTIAN HIEROGLYPH-1370C +<U0001370D> /xf0/x93/x9c/x8d EGYPTIAN HIEROGLYPH-1370D +<U0001370E> /xf0/x93/x9c/x8e EGYPTIAN HIEROGLYPH-1370E +<U0001370F> /xf0/x93/x9c/x8f EGYPTIAN HIEROGLYPH-1370F +<U00013710> /xf0/x93/x9c/x90 EGYPTIAN HIEROGLYPH-13710 +<U00013711> /xf0/x93/x9c/x91 EGYPTIAN HIEROGLYPH-13711 +<U00013712> /xf0/x93/x9c/x92 EGYPTIAN HIEROGLYPH-13712 +<U00013713> /xf0/x93/x9c/x93 EGYPTIAN HIEROGLYPH-13713 +<U00013714> /xf0/x93/x9c/x94 EGYPTIAN HIEROGLYPH-13714 +<U00013715> /xf0/x93/x9c/x95 EGYPTIAN HIEROGLYPH-13715 +<U00013716> /xf0/x93/x9c/x96 EGYPTIAN HIEROGLYPH-13716 +<U00013717> /xf0/x93/x9c/x97 EGYPTIAN HIEROGLYPH-13717 +<U00013718> /xf0/x93/x9c/x98 EGYPTIAN HIEROGLYPH-13718 +<U00013719> /xf0/x93/x9c/x99 EGYPTIAN HIEROGLYPH-13719 +<U0001371A> /xf0/x93/x9c/x9a EGYPTIAN HIEROGLYPH-1371A +<U0001371B> /xf0/x93/x9c/x9b EGYPTIAN HIEROGLYPH-1371B +<U0001371C> /xf0/x93/x9c/x9c EGYPTIAN HIEROGLYPH-1371C +<U0001371D> /xf0/x93/x9c/x9d EGYPTIAN HIEROGLYPH-1371D +<U0001371E> /xf0/x93/x9c/x9e EGYPTIAN HIEROGLYPH-1371E +<U0001371F> /xf0/x93/x9c/x9f EGYPTIAN HIEROGLYPH-1371F +<U00013720> /xf0/x93/x9c/xa0 EGYPTIAN HIEROGLYPH-13720 +<U00013721> /xf0/x93/x9c/xa1 EGYPTIAN HIEROGLYPH-13721 +<U00013722> /xf0/x93/x9c/xa2 EGYPTIAN HIEROGLYPH-13722 +<U00013723> /xf0/x93/x9c/xa3 EGYPTIAN HIEROGLYPH-13723 +<U00013724> /xf0/x93/x9c/xa4 EGYPTIAN HIEROGLYPH-13724 +<U00013725> /xf0/x93/x9c/xa5 EGYPTIAN HIEROGLYPH-13725 +<U00013726> /xf0/x93/x9c/xa6 EGYPTIAN HIEROGLYPH-13726 +<U00013727> /xf0/x93/x9c/xa7 EGYPTIAN HIEROGLYPH-13727 +<U00013728> /xf0/x93/x9c/xa8 EGYPTIAN HIEROGLYPH-13728 +<U00013729> /xf0/x93/x9c/xa9 EGYPTIAN HIEROGLYPH-13729 +<U0001372A> /xf0/x93/x9c/xaa EGYPTIAN HIEROGLYPH-1372A +<U0001372B> /xf0/x93/x9c/xab EGYPTIAN HIEROGLYPH-1372B +<U0001372C> /xf0/x93/x9c/xac EGYPTIAN HIEROGLYPH-1372C +<U0001372D> /xf0/x93/x9c/xad EGYPTIAN HIEROGLYPH-1372D +<U0001372E> /xf0/x93/x9c/xae EGYPTIAN HIEROGLYPH-1372E +<U0001372F> /xf0/x93/x9c/xaf EGYPTIAN HIEROGLYPH-1372F +<U00013730> /xf0/x93/x9c/xb0 EGYPTIAN HIEROGLYPH-13730 +<U00013731> /xf0/x93/x9c/xb1 EGYPTIAN HIEROGLYPH-13731 +<U00013732> /xf0/x93/x9c/xb2 EGYPTIAN HIEROGLYPH-13732 +<U00013733> /xf0/x93/x9c/xb3 EGYPTIAN HIEROGLYPH-13733 +<U00013734> /xf0/x93/x9c/xb4 EGYPTIAN HIEROGLYPH-13734 +<U00013735> /xf0/x93/x9c/xb5 EGYPTIAN HIEROGLYPH-13735 +<U00013736> /xf0/x93/x9c/xb6 EGYPTIAN HIEROGLYPH-13736 +<U00013737> /xf0/x93/x9c/xb7 EGYPTIAN HIEROGLYPH-13737 +<U00013738> /xf0/x93/x9c/xb8 EGYPTIAN HIEROGLYPH-13738 +<U00013739> /xf0/x93/x9c/xb9 EGYPTIAN HIEROGLYPH-13739 +<U0001373A> /xf0/x93/x9c/xba EGYPTIAN HIEROGLYPH-1373A +<U0001373B> /xf0/x93/x9c/xbb EGYPTIAN HIEROGLYPH-1373B +<U0001373C> /xf0/x93/x9c/xbc EGYPTIAN HIEROGLYPH-1373C +<U0001373D> /xf0/x93/x9c/xbd EGYPTIAN HIEROGLYPH-1373D +<U0001373E> /xf0/x93/x9c/xbe EGYPTIAN HIEROGLYPH-1373E +<U0001373F> /xf0/x93/x9c/xbf EGYPTIAN HIEROGLYPH-1373F +<U00013740> /xf0/x93/x9d/x80 EGYPTIAN HIEROGLYPH-13740 +<U00013741> /xf0/x93/x9d/x81 EGYPTIAN HIEROGLYPH-13741 +<U00013742> /xf0/x93/x9d/x82 EGYPTIAN HIEROGLYPH-13742 +<U00013743> /xf0/x93/x9d/x83 EGYPTIAN HIEROGLYPH-13743 +<U00013744> /xf0/x93/x9d/x84 EGYPTIAN HIEROGLYPH-13744 +<U00013745> /xf0/x93/x9d/x85 EGYPTIAN HIEROGLYPH-13745 +<U00013746> /xf0/x93/x9d/x86 EGYPTIAN HIEROGLYPH-13746 +<U00013747> /xf0/x93/x9d/x87 EGYPTIAN HIEROGLYPH-13747 +<U00013748> /xf0/x93/x9d/x88 EGYPTIAN HIEROGLYPH-13748 +<U00013749> /xf0/x93/x9d/x89 EGYPTIAN HIEROGLYPH-13749 +<U0001374A> /xf0/x93/x9d/x8a EGYPTIAN HIEROGLYPH-1374A +<U0001374B> /xf0/x93/x9d/x8b EGYPTIAN HIEROGLYPH-1374B +<U0001374C> /xf0/x93/x9d/x8c EGYPTIAN HIEROGLYPH-1374C +<U0001374D> /xf0/x93/x9d/x8d EGYPTIAN HIEROGLYPH-1374D +<U0001374E> /xf0/x93/x9d/x8e EGYPTIAN HIEROGLYPH-1374E +<U0001374F> /xf0/x93/x9d/x8f EGYPTIAN HIEROGLYPH-1374F +<U00013750> /xf0/x93/x9d/x90 EGYPTIAN HIEROGLYPH-13750 +<U00013751> /xf0/x93/x9d/x91 EGYPTIAN HIEROGLYPH-13751 +<U00013752> /xf0/x93/x9d/x92 EGYPTIAN HIEROGLYPH-13752 +<U00013753> /xf0/x93/x9d/x93 EGYPTIAN HIEROGLYPH-13753 +<U00013754> /xf0/x93/x9d/x94 EGYPTIAN HIEROGLYPH-13754 +<U00013755> /xf0/x93/x9d/x95 EGYPTIAN HIEROGLYPH-13755 +<U00013756> /xf0/x93/x9d/x96 EGYPTIAN HIEROGLYPH-13756 +<U00013757> /xf0/x93/x9d/x97 EGYPTIAN HIEROGLYPH-13757 +<U00013758> /xf0/x93/x9d/x98 EGYPTIAN HIEROGLYPH-13758 +<U00013759> /xf0/x93/x9d/x99 EGYPTIAN HIEROGLYPH-13759 +<U0001375A> /xf0/x93/x9d/x9a EGYPTIAN HIEROGLYPH-1375A +<U0001375B> /xf0/x93/x9d/x9b EGYPTIAN HIEROGLYPH-1375B +<U0001375C> /xf0/x93/x9d/x9c EGYPTIAN HIEROGLYPH-1375C +<U0001375D> /xf0/x93/x9d/x9d EGYPTIAN HIEROGLYPH-1375D +<U0001375E> /xf0/x93/x9d/x9e EGYPTIAN HIEROGLYPH-1375E +<U0001375F> /xf0/x93/x9d/x9f EGYPTIAN HIEROGLYPH-1375F +<U00013760> /xf0/x93/x9d/xa0 EGYPTIAN HIEROGLYPH-13760 +<U00013761> /xf0/x93/x9d/xa1 EGYPTIAN HIEROGLYPH-13761 +<U00013762> /xf0/x93/x9d/xa2 EGYPTIAN HIEROGLYPH-13762 +<U00013763> /xf0/x93/x9d/xa3 EGYPTIAN HIEROGLYPH-13763 +<U00013764> /xf0/x93/x9d/xa4 EGYPTIAN HIEROGLYPH-13764 +<U00013765> /xf0/x93/x9d/xa5 EGYPTIAN HIEROGLYPH-13765 +<U00013766> /xf0/x93/x9d/xa6 EGYPTIAN HIEROGLYPH-13766 +<U00013767> /xf0/x93/x9d/xa7 EGYPTIAN HIEROGLYPH-13767 +<U00013768> /xf0/x93/x9d/xa8 EGYPTIAN HIEROGLYPH-13768 +<U00013769> /xf0/x93/x9d/xa9 EGYPTIAN HIEROGLYPH-13769 +<U0001376A> /xf0/x93/x9d/xaa EGYPTIAN HIEROGLYPH-1376A +<U0001376B> /xf0/x93/x9d/xab EGYPTIAN HIEROGLYPH-1376B +<U0001376C> /xf0/x93/x9d/xac EGYPTIAN HIEROGLYPH-1376C +<U0001376D> /xf0/x93/x9d/xad EGYPTIAN HIEROGLYPH-1376D +<U0001376E> /xf0/x93/x9d/xae EGYPTIAN HIEROGLYPH-1376E +<U0001376F> /xf0/x93/x9d/xaf EGYPTIAN HIEROGLYPH-1376F +<U00013770> /xf0/x93/x9d/xb0 EGYPTIAN HIEROGLYPH-13770 +<U00013771> /xf0/x93/x9d/xb1 EGYPTIAN HIEROGLYPH-13771 +<U00013772> /xf0/x93/x9d/xb2 EGYPTIAN HIEROGLYPH-13772 +<U00013773> /xf0/x93/x9d/xb3 EGYPTIAN HIEROGLYPH-13773 +<U00013774> /xf0/x93/x9d/xb4 EGYPTIAN HIEROGLYPH-13774 +<U00013775> /xf0/x93/x9d/xb5 EGYPTIAN HIEROGLYPH-13775 +<U00013776> /xf0/x93/x9d/xb6 EGYPTIAN HIEROGLYPH-13776 +<U00013777> /xf0/x93/x9d/xb7 EGYPTIAN HIEROGLYPH-13777 +<U00013778> /xf0/x93/x9d/xb8 EGYPTIAN HIEROGLYPH-13778 +<U00013779> /xf0/x93/x9d/xb9 EGYPTIAN HIEROGLYPH-13779 +<U0001377A> /xf0/x93/x9d/xba EGYPTIAN HIEROGLYPH-1377A +<U0001377B> /xf0/x93/x9d/xbb EGYPTIAN HIEROGLYPH-1377B +<U0001377C> /xf0/x93/x9d/xbc EGYPTIAN HIEROGLYPH-1377C +<U0001377D> /xf0/x93/x9d/xbd EGYPTIAN HIEROGLYPH-1377D +<U0001377E> /xf0/x93/x9d/xbe EGYPTIAN HIEROGLYPH-1377E +<U0001377F> /xf0/x93/x9d/xbf EGYPTIAN HIEROGLYPH-1377F +<U00013780> /xf0/x93/x9e/x80 EGYPTIAN HIEROGLYPH-13780 +<U00013781> /xf0/x93/x9e/x81 EGYPTIAN HIEROGLYPH-13781 +<U00013782> /xf0/x93/x9e/x82 EGYPTIAN HIEROGLYPH-13782 +<U00013783> /xf0/x93/x9e/x83 EGYPTIAN HIEROGLYPH-13783 +<U00013784> /xf0/x93/x9e/x84 EGYPTIAN HIEROGLYPH-13784 +<U00013785> /xf0/x93/x9e/x85 EGYPTIAN HIEROGLYPH-13785 +<U00013786> /xf0/x93/x9e/x86 EGYPTIAN HIEROGLYPH-13786 +<U00013787> /xf0/x93/x9e/x87 EGYPTIAN HIEROGLYPH-13787 +<U00013788> /xf0/x93/x9e/x88 EGYPTIAN HIEROGLYPH-13788 +<U00013789> /xf0/x93/x9e/x89 EGYPTIAN HIEROGLYPH-13789 +<U0001378A> /xf0/x93/x9e/x8a EGYPTIAN HIEROGLYPH-1378A +<U0001378B> /xf0/x93/x9e/x8b EGYPTIAN HIEROGLYPH-1378B +<U0001378C> /xf0/x93/x9e/x8c EGYPTIAN HIEROGLYPH-1378C +<U0001378D> /xf0/x93/x9e/x8d EGYPTIAN HIEROGLYPH-1378D +<U0001378E> /xf0/x93/x9e/x8e EGYPTIAN HIEROGLYPH-1378E +<U0001378F> /xf0/x93/x9e/x8f EGYPTIAN HIEROGLYPH-1378F +<U00013790> /xf0/x93/x9e/x90 EGYPTIAN HIEROGLYPH-13790 +<U00013791> /xf0/x93/x9e/x91 EGYPTIAN HIEROGLYPH-13791 +<U00013792> /xf0/x93/x9e/x92 EGYPTIAN HIEROGLYPH-13792 +<U00013793> /xf0/x93/x9e/x93 EGYPTIAN HIEROGLYPH-13793 +<U00013794> /xf0/x93/x9e/x94 EGYPTIAN HIEROGLYPH-13794 +<U00013795> /xf0/x93/x9e/x95 EGYPTIAN HIEROGLYPH-13795 +<U00013796> /xf0/x93/x9e/x96 EGYPTIAN HIEROGLYPH-13796 +<U00013797> /xf0/x93/x9e/x97 EGYPTIAN HIEROGLYPH-13797 +<U00013798> /xf0/x93/x9e/x98 EGYPTIAN HIEROGLYPH-13798 +<U00013799> /xf0/x93/x9e/x99 EGYPTIAN HIEROGLYPH-13799 +<U0001379A> /xf0/x93/x9e/x9a EGYPTIAN HIEROGLYPH-1379A +<U0001379B> /xf0/x93/x9e/x9b EGYPTIAN HIEROGLYPH-1379B +<U0001379C> /xf0/x93/x9e/x9c EGYPTIAN HIEROGLYPH-1379C +<U0001379D> /xf0/x93/x9e/x9d EGYPTIAN HIEROGLYPH-1379D +<U0001379E> /xf0/x93/x9e/x9e EGYPTIAN HIEROGLYPH-1379E +<U0001379F> /xf0/x93/x9e/x9f EGYPTIAN HIEROGLYPH-1379F +<U000137A0> /xf0/x93/x9e/xa0 EGYPTIAN HIEROGLYPH-137A0 +<U000137A1> /xf0/x93/x9e/xa1 EGYPTIAN HIEROGLYPH-137A1 +<U000137A2> /xf0/x93/x9e/xa2 EGYPTIAN HIEROGLYPH-137A2 +<U000137A3> /xf0/x93/x9e/xa3 EGYPTIAN HIEROGLYPH-137A3 +<U000137A4> /xf0/x93/x9e/xa4 EGYPTIAN HIEROGLYPH-137A4 +<U000137A5> /xf0/x93/x9e/xa5 EGYPTIAN HIEROGLYPH-137A5 +<U000137A6> /xf0/x93/x9e/xa6 EGYPTIAN HIEROGLYPH-137A6 +<U000137A7> /xf0/x93/x9e/xa7 EGYPTIAN HIEROGLYPH-137A7 +<U000137A8> /xf0/x93/x9e/xa8 EGYPTIAN HIEROGLYPH-137A8 +<U000137A9> /xf0/x93/x9e/xa9 EGYPTIAN HIEROGLYPH-137A9 +<U000137AA> /xf0/x93/x9e/xaa EGYPTIAN HIEROGLYPH-137AA +<U000137AB> /xf0/x93/x9e/xab EGYPTIAN HIEROGLYPH-137AB +<U000137AC> /xf0/x93/x9e/xac EGYPTIAN HIEROGLYPH-137AC +<U000137AD> /xf0/x93/x9e/xad EGYPTIAN HIEROGLYPH-137AD +<U000137AE> /xf0/x93/x9e/xae EGYPTIAN HIEROGLYPH-137AE +<U000137AF> /xf0/x93/x9e/xaf EGYPTIAN HIEROGLYPH-137AF +<U000137B0> /xf0/x93/x9e/xb0 EGYPTIAN HIEROGLYPH-137B0 +<U000137B1> /xf0/x93/x9e/xb1 EGYPTIAN HIEROGLYPH-137B1 +<U000137B2> /xf0/x93/x9e/xb2 EGYPTIAN HIEROGLYPH-137B2 +<U000137B3> /xf0/x93/x9e/xb3 EGYPTIAN HIEROGLYPH-137B3 +<U000137B4> /xf0/x93/x9e/xb4 EGYPTIAN HIEROGLYPH-137B4 +<U000137B5> /xf0/x93/x9e/xb5 EGYPTIAN HIEROGLYPH-137B5 +<U000137B6> /xf0/x93/x9e/xb6 EGYPTIAN HIEROGLYPH-137B6 +<U000137B7> /xf0/x93/x9e/xb7 EGYPTIAN HIEROGLYPH-137B7 +<U000137B8> /xf0/x93/x9e/xb8 EGYPTIAN HIEROGLYPH-137B8 +<U000137B9> /xf0/x93/x9e/xb9 EGYPTIAN HIEROGLYPH-137B9 +<U000137BA> /xf0/x93/x9e/xba EGYPTIAN HIEROGLYPH-137BA +<U000137BB> /xf0/x93/x9e/xbb EGYPTIAN HIEROGLYPH-137BB +<U000137BC> /xf0/x93/x9e/xbc EGYPTIAN HIEROGLYPH-137BC +<U000137BD> /xf0/x93/x9e/xbd EGYPTIAN HIEROGLYPH-137BD +<U000137BE> /xf0/x93/x9e/xbe EGYPTIAN HIEROGLYPH-137BE +<U000137BF> /xf0/x93/x9e/xbf EGYPTIAN HIEROGLYPH-137BF +<U000137C0> /xf0/x93/x9f/x80 EGYPTIAN HIEROGLYPH-137C0 +<U000137C1> /xf0/x93/x9f/x81 EGYPTIAN HIEROGLYPH-137C1 +<U000137C2> /xf0/x93/x9f/x82 EGYPTIAN HIEROGLYPH-137C2 +<U000137C3> /xf0/x93/x9f/x83 EGYPTIAN HIEROGLYPH-137C3 +<U000137C4> /xf0/x93/x9f/x84 EGYPTIAN HIEROGLYPH-137C4 +<U000137C5> /xf0/x93/x9f/x85 EGYPTIAN HIEROGLYPH-137C5 +<U000137C6> /xf0/x93/x9f/x86 EGYPTIAN HIEROGLYPH-137C6 +<U000137C7> /xf0/x93/x9f/x87 EGYPTIAN HIEROGLYPH-137C7 +<U000137C8> /xf0/x93/x9f/x88 EGYPTIAN HIEROGLYPH-137C8 +<U000137C9> /xf0/x93/x9f/x89 EGYPTIAN HIEROGLYPH-137C9 +<U000137CA> /xf0/x93/x9f/x8a EGYPTIAN HIEROGLYPH-137CA +<U000137CB> /xf0/x93/x9f/x8b EGYPTIAN HIEROGLYPH-137CB +<U000137CC> /xf0/x93/x9f/x8c EGYPTIAN HIEROGLYPH-137CC +<U000137CD> /xf0/x93/x9f/x8d EGYPTIAN HIEROGLYPH-137CD +<U000137CE> /xf0/x93/x9f/x8e EGYPTIAN HIEROGLYPH-137CE +<U000137CF> /xf0/x93/x9f/x8f EGYPTIAN HIEROGLYPH-137CF +<U000137D0> /xf0/x93/x9f/x90 EGYPTIAN HIEROGLYPH-137D0 +<U000137D1> /xf0/x93/x9f/x91 EGYPTIAN HIEROGLYPH-137D1 +<U000137D2> /xf0/x93/x9f/x92 EGYPTIAN HIEROGLYPH-137D2 +<U000137D3> /xf0/x93/x9f/x93 EGYPTIAN HIEROGLYPH-137D3 +<U000137D4> /xf0/x93/x9f/x94 EGYPTIAN HIEROGLYPH-137D4 +<U000137D5> /xf0/x93/x9f/x95 EGYPTIAN HIEROGLYPH-137D5 +<U000137D6> /xf0/x93/x9f/x96 EGYPTIAN HIEROGLYPH-137D6 +<U000137D7> /xf0/x93/x9f/x97 EGYPTIAN HIEROGLYPH-137D7 +<U000137D8> /xf0/x93/x9f/x98 EGYPTIAN HIEROGLYPH-137D8 +<U000137D9> /xf0/x93/x9f/x99 EGYPTIAN HIEROGLYPH-137D9 +<U000137DA> /xf0/x93/x9f/x9a EGYPTIAN HIEROGLYPH-137DA +<U000137DB> /xf0/x93/x9f/x9b EGYPTIAN HIEROGLYPH-137DB +<U000137DC> /xf0/x93/x9f/x9c EGYPTIAN HIEROGLYPH-137DC +<U000137DD> /xf0/x93/x9f/x9d EGYPTIAN HIEROGLYPH-137DD +<U000137DE> /xf0/x93/x9f/x9e EGYPTIAN HIEROGLYPH-137DE +<U000137DF> /xf0/x93/x9f/x9f EGYPTIAN HIEROGLYPH-137DF +<U000137E0> /xf0/x93/x9f/xa0 EGYPTIAN HIEROGLYPH-137E0 +<U000137E1> /xf0/x93/x9f/xa1 EGYPTIAN HIEROGLYPH-137E1 +<U000137E2> /xf0/x93/x9f/xa2 EGYPTIAN HIEROGLYPH-137E2 +<U000137E3> /xf0/x93/x9f/xa3 EGYPTIAN HIEROGLYPH-137E3 +<U000137E4> /xf0/x93/x9f/xa4 EGYPTIAN HIEROGLYPH-137E4 +<U000137E5> /xf0/x93/x9f/xa5 EGYPTIAN HIEROGLYPH-137E5 +<U000137E6> /xf0/x93/x9f/xa6 EGYPTIAN HIEROGLYPH-137E6 +<U000137E7> /xf0/x93/x9f/xa7 EGYPTIAN HIEROGLYPH-137E7 +<U000137E8> /xf0/x93/x9f/xa8 EGYPTIAN HIEROGLYPH-137E8 +<U000137E9> /xf0/x93/x9f/xa9 EGYPTIAN HIEROGLYPH-137E9 +<U000137EA> /xf0/x93/x9f/xaa EGYPTIAN HIEROGLYPH-137EA +<U000137EB> /xf0/x93/x9f/xab EGYPTIAN HIEROGLYPH-137EB +<U000137EC> /xf0/x93/x9f/xac EGYPTIAN HIEROGLYPH-137EC +<U000137ED> /xf0/x93/x9f/xad EGYPTIAN HIEROGLYPH-137ED +<U000137EE> /xf0/x93/x9f/xae EGYPTIAN HIEROGLYPH-137EE +<U000137EF> /xf0/x93/x9f/xaf EGYPTIAN HIEROGLYPH-137EF +<U000137F0> /xf0/x93/x9f/xb0 EGYPTIAN HIEROGLYPH-137F0 +<U000137F1> /xf0/x93/x9f/xb1 EGYPTIAN HIEROGLYPH-137F1 +<U000137F2> /xf0/x93/x9f/xb2 EGYPTIAN HIEROGLYPH-137F2 +<U000137F3> /xf0/x93/x9f/xb3 EGYPTIAN HIEROGLYPH-137F3 +<U000137F4> /xf0/x93/x9f/xb4 EGYPTIAN HIEROGLYPH-137F4 +<U000137F5> /xf0/x93/x9f/xb5 EGYPTIAN HIEROGLYPH-137F5 +<U000137F6> /xf0/x93/x9f/xb6 EGYPTIAN HIEROGLYPH-137F6 +<U000137F7> /xf0/x93/x9f/xb7 EGYPTIAN HIEROGLYPH-137F7 +<U000137F8> /xf0/x93/x9f/xb8 EGYPTIAN HIEROGLYPH-137F8 +<U000137F9> /xf0/x93/x9f/xb9 EGYPTIAN HIEROGLYPH-137F9 +<U000137FA> /xf0/x93/x9f/xba EGYPTIAN HIEROGLYPH-137FA +<U000137FB> /xf0/x93/x9f/xbb EGYPTIAN HIEROGLYPH-137FB +<U000137FC> /xf0/x93/x9f/xbc EGYPTIAN HIEROGLYPH-137FC +<U000137FD> /xf0/x93/x9f/xbd EGYPTIAN HIEROGLYPH-137FD +<U000137FE> /xf0/x93/x9f/xbe EGYPTIAN HIEROGLYPH-137FE +<U000137FF> /xf0/x93/x9f/xbf EGYPTIAN HIEROGLYPH-137FF +<U00013800> /xf0/x93/xa0/x80 EGYPTIAN HIEROGLYPH-13800 +<U00013801> /xf0/x93/xa0/x81 EGYPTIAN HIEROGLYPH-13801 +<U00013802> /xf0/x93/xa0/x82 EGYPTIAN HIEROGLYPH-13802 +<U00013803> /xf0/x93/xa0/x83 EGYPTIAN HIEROGLYPH-13803 +<U00013804> /xf0/x93/xa0/x84 EGYPTIAN HIEROGLYPH-13804 +<U00013805> /xf0/x93/xa0/x85 EGYPTIAN HIEROGLYPH-13805 +<U00013806> /xf0/x93/xa0/x86 EGYPTIAN HIEROGLYPH-13806 +<U00013807> /xf0/x93/xa0/x87 EGYPTIAN HIEROGLYPH-13807 +<U00013808> /xf0/x93/xa0/x88 EGYPTIAN HIEROGLYPH-13808 +<U00013809> /xf0/x93/xa0/x89 EGYPTIAN HIEROGLYPH-13809 +<U0001380A> /xf0/x93/xa0/x8a EGYPTIAN HIEROGLYPH-1380A +<U0001380B> /xf0/x93/xa0/x8b EGYPTIAN HIEROGLYPH-1380B +<U0001380C> /xf0/x93/xa0/x8c EGYPTIAN HIEROGLYPH-1380C +<U0001380D> /xf0/x93/xa0/x8d EGYPTIAN HIEROGLYPH-1380D +<U0001380E> /xf0/x93/xa0/x8e EGYPTIAN HIEROGLYPH-1380E +<U0001380F> /xf0/x93/xa0/x8f EGYPTIAN HIEROGLYPH-1380F +<U00013810> /xf0/x93/xa0/x90 EGYPTIAN HIEROGLYPH-13810 +<U00013811> /xf0/x93/xa0/x91 EGYPTIAN HIEROGLYPH-13811 +<U00013812> /xf0/x93/xa0/x92 EGYPTIAN HIEROGLYPH-13812 +<U00013813> /xf0/x93/xa0/x93 EGYPTIAN HIEROGLYPH-13813 +<U00013814> /xf0/x93/xa0/x94 EGYPTIAN HIEROGLYPH-13814 +<U00013815> /xf0/x93/xa0/x95 EGYPTIAN HIEROGLYPH-13815 +<U00013816> /xf0/x93/xa0/x96 EGYPTIAN HIEROGLYPH-13816 +<U00013817> /xf0/x93/xa0/x97 EGYPTIAN HIEROGLYPH-13817 +<U00013818> /xf0/x93/xa0/x98 EGYPTIAN HIEROGLYPH-13818 +<U00013819> /xf0/x93/xa0/x99 EGYPTIAN HIEROGLYPH-13819 +<U0001381A> /xf0/x93/xa0/x9a EGYPTIAN HIEROGLYPH-1381A +<U0001381B> /xf0/x93/xa0/x9b EGYPTIAN HIEROGLYPH-1381B +<U0001381C> /xf0/x93/xa0/x9c EGYPTIAN HIEROGLYPH-1381C +<U0001381D> /xf0/x93/xa0/x9d EGYPTIAN HIEROGLYPH-1381D +<U0001381E> /xf0/x93/xa0/x9e EGYPTIAN HIEROGLYPH-1381E +<U0001381F> /xf0/x93/xa0/x9f EGYPTIAN HIEROGLYPH-1381F +<U00013820> /xf0/x93/xa0/xa0 EGYPTIAN HIEROGLYPH-13820 +<U00013821> /xf0/x93/xa0/xa1 EGYPTIAN HIEROGLYPH-13821 +<U00013822> /xf0/x93/xa0/xa2 EGYPTIAN HIEROGLYPH-13822 +<U00013823> /xf0/x93/xa0/xa3 EGYPTIAN HIEROGLYPH-13823 +<U00013824> /xf0/x93/xa0/xa4 EGYPTIAN HIEROGLYPH-13824 +<U00013825> /xf0/x93/xa0/xa5 EGYPTIAN HIEROGLYPH-13825 +<U00013826> /xf0/x93/xa0/xa6 EGYPTIAN HIEROGLYPH-13826 +<U00013827> /xf0/x93/xa0/xa7 EGYPTIAN HIEROGLYPH-13827 +<U00013828> /xf0/x93/xa0/xa8 EGYPTIAN HIEROGLYPH-13828 +<U00013829> /xf0/x93/xa0/xa9 EGYPTIAN HIEROGLYPH-13829 +<U0001382A> /xf0/x93/xa0/xaa EGYPTIAN HIEROGLYPH-1382A +<U0001382B> /xf0/x93/xa0/xab EGYPTIAN HIEROGLYPH-1382B +<U0001382C> /xf0/x93/xa0/xac EGYPTIAN HIEROGLYPH-1382C +<U0001382D> /xf0/x93/xa0/xad EGYPTIAN HIEROGLYPH-1382D +<U0001382E> /xf0/x93/xa0/xae EGYPTIAN HIEROGLYPH-1382E +<U0001382F> /xf0/x93/xa0/xaf EGYPTIAN HIEROGLYPH-1382F +<U00013830> /xf0/x93/xa0/xb0 EGYPTIAN HIEROGLYPH-13830 +<U00013831> /xf0/x93/xa0/xb1 EGYPTIAN HIEROGLYPH-13831 +<U00013832> /xf0/x93/xa0/xb2 EGYPTIAN HIEROGLYPH-13832 +<U00013833> /xf0/x93/xa0/xb3 EGYPTIAN HIEROGLYPH-13833 +<U00013834> /xf0/x93/xa0/xb4 EGYPTIAN HIEROGLYPH-13834 +<U00013835> /xf0/x93/xa0/xb5 EGYPTIAN HIEROGLYPH-13835 +<U00013836> /xf0/x93/xa0/xb6 EGYPTIAN HIEROGLYPH-13836 +<U00013837> /xf0/x93/xa0/xb7 EGYPTIAN HIEROGLYPH-13837 +<U00013838> /xf0/x93/xa0/xb8 EGYPTIAN HIEROGLYPH-13838 +<U00013839> /xf0/x93/xa0/xb9 EGYPTIAN HIEROGLYPH-13839 +<U0001383A> /xf0/x93/xa0/xba EGYPTIAN HIEROGLYPH-1383A +<U0001383B> /xf0/x93/xa0/xbb EGYPTIAN HIEROGLYPH-1383B +<U0001383C> /xf0/x93/xa0/xbc EGYPTIAN HIEROGLYPH-1383C +<U0001383D> /xf0/x93/xa0/xbd EGYPTIAN HIEROGLYPH-1383D +<U0001383E> /xf0/x93/xa0/xbe EGYPTIAN HIEROGLYPH-1383E +<U0001383F> /xf0/x93/xa0/xbf EGYPTIAN HIEROGLYPH-1383F +<U00013840> /xf0/x93/xa1/x80 EGYPTIAN HIEROGLYPH-13840 +<U00013841> /xf0/x93/xa1/x81 EGYPTIAN HIEROGLYPH-13841 +<U00013842> /xf0/x93/xa1/x82 EGYPTIAN HIEROGLYPH-13842 +<U00013843> /xf0/x93/xa1/x83 EGYPTIAN HIEROGLYPH-13843 +<U00013844> /xf0/x93/xa1/x84 EGYPTIAN HIEROGLYPH-13844 +<U00013845> /xf0/x93/xa1/x85 EGYPTIAN HIEROGLYPH-13845 +<U00013846> /xf0/x93/xa1/x86 EGYPTIAN HIEROGLYPH-13846 +<U00013847> /xf0/x93/xa1/x87 EGYPTIAN HIEROGLYPH-13847 +<U00013848> /xf0/x93/xa1/x88 EGYPTIAN HIEROGLYPH-13848 +<U00013849> /xf0/x93/xa1/x89 EGYPTIAN HIEROGLYPH-13849 +<U0001384A> /xf0/x93/xa1/x8a EGYPTIAN HIEROGLYPH-1384A +<U0001384B> /xf0/x93/xa1/x8b EGYPTIAN HIEROGLYPH-1384B +<U0001384C> /xf0/x93/xa1/x8c EGYPTIAN HIEROGLYPH-1384C +<U0001384D> /xf0/x93/xa1/x8d EGYPTIAN HIEROGLYPH-1384D +<U0001384E> /xf0/x93/xa1/x8e EGYPTIAN HIEROGLYPH-1384E +<U0001384F> /xf0/x93/xa1/x8f EGYPTIAN HIEROGLYPH-1384F +<U00013850> /xf0/x93/xa1/x90 EGYPTIAN HIEROGLYPH-13850 +<U00013851> /xf0/x93/xa1/x91 EGYPTIAN HIEROGLYPH-13851 +<U00013852> /xf0/x93/xa1/x92 EGYPTIAN HIEROGLYPH-13852 +<U00013853> /xf0/x93/xa1/x93 EGYPTIAN HIEROGLYPH-13853 +<U00013854> /xf0/x93/xa1/x94 EGYPTIAN HIEROGLYPH-13854 +<U00013855> /xf0/x93/xa1/x95 EGYPTIAN HIEROGLYPH-13855 +<U00013856> /xf0/x93/xa1/x96 EGYPTIAN HIEROGLYPH-13856 +<U00013857> /xf0/x93/xa1/x97 EGYPTIAN HIEROGLYPH-13857 +<U00013858> /xf0/x93/xa1/x98 EGYPTIAN HIEROGLYPH-13858 +<U00013859> /xf0/x93/xa1/x99 EGYPTIAN HIEROGLYPH-13859 +<U0001385A> /xf0/x93/xa1/x9a EGYPTIAN HIEROGLYPH-1385A +<U0001385B> /xf0/x93/xa1/x9b EGYPTIAN HIEROGLYPH-1385B +<U0001385C> /xf0/x93/xa1/x9c EGYPTIAN HIEROGLYPH-1385C +<U0001385D> /xf0/x93/xa1/x9d EGYPTIAN HIEROGLYPH-1385D +<U0001385E> /xf0/x93/xa1/x9e EGYPTIAN HIEROGLYPH-1385E +<U0001385F> /xf0/x93/xa1/x9f EGYPTIAN HIEROGLYPH-1385F +<U00013860> /xf0/x93/xa1/xa0 EGYPTIAN HIEROGLYPH-13860 +<U00013861> /xf0/x93/xa1/xa1 EGYPTIAN HIEROGLYPH-13861 +<U00013862> /xf0/x93/xa1/xa2 EGYPTIAN HIEROGLYPH-13862 +<U00013863> /xf0/x93/xa1/xa3 EGYPTIAN HIEROGLYPH-13863 +<U00013864> /xf0/x93/xa1/xa4 EGYPTIAN HIEROGLYPH-13864 +<U00013865> /xf0/x93/xa1/xa5 EGYPTIAN HIEROGLYPH-13865 +<U00013866> /xf0/x93/xa1/xa6 EGYPTIAN HIEROGLYPH-13866 +<U00013867> /xf0/x93/xa1/xa7 EGYPTIAN HIEROGLYPH-13867 +<U00013868> /xf0/x93/xa1/xa8 EGYPTIAN HIEROGLYPH-13868 +<U00013869> /xf0/x93/xa1/xa9 EGYPTIAN HIEROGLYPH-13869 +<U0001386A> /xf0/x93/xa1/xaa EGYPTIAN HIEROGLYPH-1386A +<U0001386B> /xf0/x93/xa1/xab EGYPTIAN HIEROGLYPH-1386B +<U0001386C> /xf0/x93/xa1/xac EGYPTIAN HIEROGLYPH-1386C +<U0001386D> /xf0/x93/xa1/xad EGYPTIAN HIEROGLYPH-1386D +<U0001386E> /xf0/x93/xa1/xae EGYPTIAN HIEROGLYPH-1386E +<U0001386F> /xf0/x93/xa1/xaf EGYPTIAN HIEROGLYPH-1386F +<U00013870> /xf0/x93/xa1/xb0 EGYPTIAN HIEROGLYPH-13870 +<U00013871> /xf0/x93/xa1/xb1 EGYPTIAN HIEROGLYPH-13871 +<U00013872> /xf0/x93/xa1/xb2 EGYPTIAN HIEROGLYPH-13872 +<U00013873> /xf0/x93/xa1/xb3 EGYPTIAN HIEROGLYPH-13873 +<U00013874> /xf0/x93/xa1/xb4 EGYPTIAN HIEROGLYPH-13874 +<U00013875> /xf0/x93/xa1/xb5 EGYPTIAN HIEROGLYPH-13875 +<U00013876> /xf0/x93/xa1/xb6 EGYPTIAN HIEROGLYPH-13876 +<U00013877> /xf0/x93/xa1/xb7 EGYPTIAN HIEROGLYPH-13877 +<U00013878> /xf0/x93/xa1/xb8 EGYPTIAN HIEROGLYPH-13878 +<U00013879> /xf0/x93/xa1/xb9 EGYPTIAN HIEROGLYPH-13879 +<U0001387A> /xf0/x93/xa1/xba EGYPTIAN HIEROGLYPH-1387A +<U0001387B> /xf0/x93/xa1/xbb EGYPTIAN HIEROGLYPH-1387B +<U0001387C> /xf0/x93/xa1/xbc EGYPTIAN HIEROGLYPH-1387C +<U0001387D> /xf0/x93/xa1/xbd EGYPTIAN HIEROGLYPH-1387D +<U0001387E> /xf0/x93/xa1/xbe EGYPTIAN HIEROGLYPH-1387E +<U0001387F> /xf0/x93/xa1/xbf EGYPTIAN HIEROGLYPH-1387F +<U00013880> /xf0/x93/xa2/x80 EGYPTIAN HIEROGLYPH-13880 +<U00013881> /xf0/x93/xa2/x81 EGYPTIAN HIEROGLYPH-13881 +<U00013882> /xf0/x93/xa2/x82 EGYPTIAN HIEROGLYPH-13882 +<U00013883> /xf0/x93/xa2/x83 EGYPTIAN HIEROGLYPH-13883 +<U00013884> /xf0/x93/xa2/x84 EGYPTIAN HIEROGLYPH-13884 +<U00013885> /xf0/x93/xa2/x85 EGYPTIAN HIEROGLYPH-13885 +<U00013886> /xf0/x93/xa2/x86 EGYPTIAN HIEROGLYPH-13886 +<U00013887> /xf0/x93/xa2/x87 EGYPTIAN HIEROGLYPH-13887 +<U00013888> /xf0/x93/xa2/x88 EGYPTIAN HIEROGLYPH-13888 +<U00013889> /xf0/x93/xa2/x89 EGYPTIAN HIEROGLYPH-13889 +<U0001388A> /xf0/x93/xa2/x8a EGYPTIAN HIEROGLYPH-1388A +<U0001388B> /xf0/x93/xa2/x8b EGYPTIAN HIEROGLYPH-1388B +<U0001388C> /xf0/x93/xa2/x8c EGYPTIAN HIEROGLYPH-1388C +<U0001388D> /xf0/x93/xa2/x8d EGYPTIAN HIEROGLYPH-1388D +<U0001388E> /xf0/x93/xa2/x8e EGYPTIAN HIEROGLYPH-1388E +<U0001388F> /xf0/x93/xa2/x8f EGYPTIAN HIEROGLYPH-1388F +<U00013890> /xf0/x93/xa2/x90 EGYPTIAN HIEROGLYPH-13890 +<U00013891> /xf0/x93/xa2/x91 EGYPTIAN HIEROGLYPH-13891 +<U00013892> /xf0/x93/xa2/x92 EGYPTIAN HIEROGLYPH-13892 +<U00013893> /xf0/x93/xa2/x93 EGYPTIAN HIEROGLYPH-13893 +<U00013894> /xf0/x93/xa2/x94 EGYPTIAN HIEROGLYPH-13894 +<U00013895> /xf0/x93/xa2/x95 EGYPTIAN HIEROGLYPH-13895 +<U00013896> /xf0/x93/xa2/x96 EGYPTIAN HIEROGLYPH-13896 +<U00013897> /xf0/x93/xa2/x97 EGYPTIAN HIEROGLYPH-13897 +<U00013898> /xf0/x93/xa2/x98 EGYPTIAN HIEROGLYPH-13898 +<U00013899> /xf0/x93/xa2/x99 EGYPTIAN HIEROGLYPH-13899 +<U0001389A> /xf0/x93/xa2/x9a EGYPTIAN HIEROGLYPH-1389A +<U0001389B> /xf0/x93/xa2/x9b EGYPTIAN HIEROGLYPH-1389B +<U0001389C> /xf0/x93/xa2/x9c EGYPTIAN HIEROGLYPH-1389C +<U0001389D> /xf0/x93/xa2/x9d EGYPTIAN HIEROGLYPH-1389D +<U0001389E> /xf0/x93/xa2/x9e EGYPTIAN HIEROGLYPH-1389E +<U0001389F> /xf0/x93/xa2/x9f EGYPTIAN HIEROGLYPH-1389F +<U000138A0> /xf0/x93/xa2/xa0 EGYPTIAN HIEROGLYPH-138A0 +<U000138A1> /xf0/x93/xa2/xa1 EGYPTIAN HIEROGLYPH-138A1 +<U000138A2> /xf0/x93/xa2/xa2 EGYPTIAN HIEROGLYPH-138A2 +<U000138A3> /xf0/x93/xa2/xa3 EGYPTIAN HIEROGLYPH-138A3 +<U000138A4> /xf0/x93/xa2/xa4 EGYPTIAN HIEROGLYPH-138A4 +<U000138A5> /xf0/x93/xa2/xa5 EGYPTIAN HIEROGLYPH-138A5 +<U000138A6> /xf0/x93/xa2/xa6 EGYPTIAN HIEROGLYPH-138A6 +<U000138A7> /xf0/x93/xa2/xa7 EGYPTIAN HIEROGLYPH-138A7 +<U000138A8> /xf0/x93/xa2/xa8 EGYPTIAN HIEROGLYPH-138A8 +<U000138A9> /xf0/x93/xa2/xa9 EGYPTIAN HIEROGLYPH-138A9 +<U000138AA> /xf0/x93/xa2/xaa EGYPTIAN HIEROGLYPH-138AA +<U000138AB> /xf0/x93/xa2/xab EGYPTIAN HIEROGLYPH-138AB +<U000138AC> /xf0/x93/xa2/xac EGYPTIAN HIEROGLYPH-138AC +<U000138AD> /xf0/x93/xa2/xad EGYPTIAN HIEROGLYPH-138AD +<U000138AE> /xf0/x93/xa2/xae EGYPTIAN HIEROGLYPH-138AE +<U000138AF> /xf0/x93/xa2/xaf EGYPTIAN HIEROGLYPH-138AF +<U000138B0> /xf0/x93/xa2/xb0 EGYPTIAN HIEROGLYPH-138B0 +<U000138B1> /xf0/x93/xa2/xb1 EGYPTIAN HIEROGLYPH-138B1 +<U000138B2> /xf0/x93/xa2/xb2 EGYPTIAN HIEROGLYPH-138B2 +<U000138B3> /xf0/x93/xa2/xb3 EGYPTIAN HIEROGLYPH-138B3 +<U000138B4> /xf0/x93/xa2/xb4 EGYPTIAN HIEROGLYPH-138B4 +<U000138B5> /xf0/x93/xa2/xb5 EGYPTIAN HIEROGLYPH-138B5 +<U000138B6> /xf0/x93/xa2/xb6 EGYPTIAN HIEROGLYPH-138B6 +<U000138B7> /xf0/x93/xa2/xb7 EGYPTIAN HIEROGLYPH-138B7 +<U000138B8> /xf0/x93/xa2/xb8 EGYPTIAN HIEROGLYPH-138B8 +<U000138B9> /xf0/x93/xa2/xb9 EGYPTIAN HIEROGLYPH-138B9 +<U000138BA> /xf0/x93/xa2/xba EGYPTIAN HIEROGLYPH-138BA +<U000138BB> /xf0/x93/xa2/xbb EGYPTIAN HIEROGLYPH-138BB +<U000138BC> /xf0/x93/xa2/xbc EGYPTIAN HIEROGLYPH-138BC +<U000138BD> /xf0/x93/xa2/xbd EGYPTIAN HIEROGLYPH-138BD +<U000138BE> /xf0/x93/xa2/xbe EGYPTIAN HIEROGLYPH-138BE +<U000138BF> /xf0/x93/xa2/xbf EGYPTIAN HIEROGLYPH-138BF +<U000138C0> /xf0/x93/xa3/x80 EGYPTIAN HIEROGLYPH-138C0 +<U000138C1> /xf0/x93/xa3/x81 EGYPTIAN HIEROGLYPH-138C1 +<U000138C2> /xf0/x93/xa3/x82 EGYPTIAN HIEROGLYPH-138C2 +<U000138C3> /xf0/x93/xa3/x83 EGYPTIAN HIEROGLYPH-138C3 +<U000138C4> /xf0/x93/xa3/x84 EGYPTIAN HIEROGLYPH-138C4 +<U000138C5> /xf0/x93/xa3/x85 EGYPTIAN HIEROGLYPH-138C5 +<U000138C6> /xf0/x93/xa3/x86 EGYPTIAN HIEROGLYPH-138C6 +<U000138C7> /xf0/x93/xa3/x87 EGYPTIAN HIEROGLYPH-138C7 +<U000138C8> /xf0/x93/xa3/x88 EGYPTIAN HIEROGLYPH-138C8 +<U000138C9> /xf0/x93/xa3/x89 EGYPTIAN HIEROGLYPH-138C9 +<U000138CA> /xf0/x93/xa3/x8a EGYPTIAN HIEROGLYPH-138CA +<U000138CB> /xf0/x93/xa3/x8b EGYPTIAN HIEROGLYPH-138CB +<U000138CC> /xf0/x93/xa3/x8c EGYPTIAN HIEROGLYPH-138CC +<U000138CD> /xf0/x93/xa3/x8d EGYPTIAN HIEROGLYPH-138CD +<U000138CE> /xf0/x93/xa3/x8e EGYPTIAN HIEROGLYPH-138CE +<U000138CF> /xf0/x93/xa3/x8f EGYPTIAN HIEROGLYPH-138CF +<U000138D0> /xf0/x93/xa3/x90 EGYPTIAN HIEROGLYPH-138D0 +<U000138D1> /xf0/x93/xa3/x91 EGYPTIAN HIEROGLYPH-138D1 +<U000138D2> /xf0/x93/xa3/x92 EGYPTIAN HIEROGLYPH-138D2 +<U000138D3> /xf0/x93/xa3/x93 EGYPTIAN HIEROGLYPH-138D3 +<U000138D4> /xf0/x93/xa3/x94 EGYPTIAN HIEROGLYPH-138D4 +<U000138D5> /xf0/x93/xa3/x95 EGYPTIAN HIEROGLYPH-138D5 +<U000138D6> /xf0/x93/xa3/x96 EGYPTIAN HIEROGLYPH-138D6 +<U000138D7> /xf0/x93/xa3/x97 EGYPTIAN HIEROGLYPH-138D7 +<U000138D8> /xf0/x93/xa3/x98 EGYPTIAN HIEROGLYPH-138D8 +<U000138D9> /xf0/x93/xa3/x99 EGYPTIAN HIEROGLYPH-138D9 +<U000138DA> /xf0/x93/xa3/x9a EGYPTIAN HIEROGLYPH-138DA +<U000138DB> /xf0/x93/xa3/x9b EGYPTIAN HIEROGLYPH-138DB +<U000138DC> /xf0/x93/xa3/x9c EGYPTIAN HIEROGLYPH-138DC +<U000138DD> /xf0/x93/xa3/x9d EGYPTIAN HIEROGLYPH-138DD +<U000138DE> /xf0/x93/xa3/x9e EGYPTIAN HIEROGLYPH-138DE +<U000138DF> /xf0/x93/xa3/x9f EGYPTIAN HIEROGLYPH-138DF +<U000138E0> /xf0/x93/xa3/xa0 EGYPTIAN HIEROGLYPH-138E0 +<U000138E1> /xf0/x93/xa3/xa1 EGYPTIAN HIEROGLYPH-138E1 +<U000138E2> /xf0/x93/xa3/xa2 EGYPTIAN HIEROGLYPH-138E2 +<U000138E3> /xf0/x93/xa3/xa3 EGYPTIAN HIEROGLYPH-138E3 +<U000138E4> /xf0/x93/xa3/xa4 EGYPTIAN HIEROGLYPH-138E4 +<U000138E5> /xf0/x93/xa3/xa5 EGYPTIAN HIEROGLYPH-138E5 +<U000138E6> /xf0/x93/xa3/xa6 EGYPTIAN HIEROGLYPH-138E6 +<U000138E7> /xf0/x93/xa3/xa7 EGYPTIAN HIEROGLYPH-138E7 +<U000138E8> /xf0/x93/xa3/xa8 EGYPTIAN HIEROGLYPH-138E8 +<U000138E9> /xf0/x93/xa3/xa9 EGYPTIAN HIEROGLYPH-138E9 +<U000138EA> /xf0/x93/xa3/xaa EGYPTIAN HIEROGLYPH-138EA +<U000138EB> /xf0/x93/xa3/xab EGYPTIAN HIEROGLYPH-138EB +<U000138EC> /xf0/x93/xa3/xac EGYPTIAN HIEROGLYPH-138EC +<U000138ED> /xf0/x93/xa3/xad EGYPTIAN HIEROGLYPH-138ED +<U000138EE> /xf0/x93/xa3/xae EGYPTIAN HIEROGLYPH-138EE +<U000138EF> /xf0/x93/xa3/xaf EGYPTIAN HIEROGLYPH-138EF +<U000138F0> /xf0/x93/xa3/xb0 EGYPTIAN HIEROGLYPH-138F0 +<U000138F1> /xf0/x93/xa3/xb1 EGYPTIAN HIEROGLYPH-138F1 +<U000138F2> /xf0/x93/xa3/xb2 EGYPTIAN HIEROGLYPH-138F2 +<U000138F3> /xf0/x93/xa3/xb3 EGYPTIAN HIEROGLYPH-138F3 +<U000138F4> /xf0/x93/xa3/xb4 EGYPTIAN HIEROGLYPH-138F4 +<U000138F5> /xf0/x93/xa3/xb5 EGYPTIAN HIEROGLYPH-138F5 +<U000138F6> /xf0/x93/xa3/xb6 EGYPTIAN HIEROGLYPH-138F6 +<U000138F7> /xf0/x93/xa3/xb7 EGYPTIAN HIEROGLYPH-138F7 +<U000138F8> /xf0/x93/xa3/xb8 EGYPTIAN HIEROGLYPH-138F8 +<U000138F9> /xf0/x93/xa3/xb9 EGYPTIAN HIEROGLYPH-138F9 +<U000138FA> /xf0/x93/xa3/xba EGYPTIAN HIEROGLYPH-138FA +<U000138FB> /xf0/x93/xa3/xbb EGYPTIAN HIEROGLYPH-138FB +<U000138FC> /xf0/x93/xa3/xbc EGYPTIAN HIEROGLYPH-138FC +<U000138FD> /xf0/x93/xa3/xbd EGYPTIAN HIEROGLYPH-138FD +<U000138FE> /xf0/x93/xa3/xbe EGYPTIAN HIEROGLYPH-138FE +<U000138FF> /xf0/x93/xa3/xbf EGYPTIAN HIEROGLYPH-138FF +<U00013900> /xf0/x93/xa4/x80 EGYPTIAN HIEROGLYPH-13900 +<U00013901> /xf0/x93/xa4/x81 EGYPTIAN HIEROGLYPH-13901 +<U00013902> /xf0/x93/xa4/x82 EGYPTIAN HIEROGLYPH-13902 +<U00013903> /xf0/x93/xa4/x83 EGYPTIAN HIEROGLYPH-13903 +<U00013904> /xf0/x93/xa4/x84 EGYPTIAN HIEROGLYPH-13904 +<U00013905> /xf0/x93/xa4/x85 EGYPTIAN HIEROGLYPH-13905 +<U00013906> /xf0/x93/xa4/x86 EGYPTIAN HIEROGLYPH-13906 +<U00013907> /xf0/x93/xa4/x87 EGYPTIAN HIEROGLYPH-13907 +<U00013908> /xf0/x93/xa4/x88 EGYPTIAN HIEROGLYPH-13908 +<U00013909> /xf0/x93/xa4/x89 EGYPTIAN HIEROGLYPH-13909 +<U0001390A> /xf0/x93/xa4/x8a EGYPTIAN HIEROGLYPH-1390A +<U0001390B> /xf0/x93/xa4/x8b EGYPTIAN HIEROGLYPH-1390B +<U0001390C> /xf0/x93/xa4/x8c EGYPTIAN HIEROGLYPH-1390C +<U0001390D> /xf0/x93/xa4/x8d EGYPTIAN HIEROGLYPH-1390D +<U0001390E> /xf0/x93/xa4/x8e EGYPTIAN HIEROGLYPH-1390E +<U0001390F> /xf0/x93/xa4/x8f EGYPTIAN HIEROGLYPH-1390F +<U00013910> /xf0/x93/xa4/x90 EGYPTIAN HIEROGLYPH-13910 +<U00013911> /xf0/x93/xa4/x91 EGYPTIAN HIEROGLYPH-13911 +<U00013912> /xf0/x93/xa4/x92 EGYPTIAN HIEROGLYPH-13912 +<U00013913> /xf0/x93/xa4/x93 EGYPTIAN HIEROGLYPH-13913 +<U00013914> /xf0/x93/xa4/x94 EGYPTIAN HIEROGLYPH-13914 +<U00013915> /xf0/x93/xa4/x95 EGYPTIAN HIEROGLYPH-13915 +<U00013916> /xf0/x93/xa4/x96 EGYPTIAN HIEROGLYPH-13916 +<U00013917> /xf0/x93/xa4/x97 EGYPTIAN HIEROGLYPH-13917 +<U00013918> /xf0/x93/xa4/x98 EGYPTIAN HIEROGLYPH-13918 +<U00013919> /xf0/x93/xa4/x99 EGYPTIAN HIEROGLYPH-13919 +<U0001391A> /xf0/x93/xa4/x9a EGYPTIAN HIEROGLYPH-1391A +<U0001391B> /xf0/x93/xa4/x9b EGYPTIAN HIEROGLYPH-1391B +<U0001391C> /xf0/x93/xa4/x9c EGYPTIAN HIEROGLYPH-1391C +<U0001391D> /xf0/x93/xa4/x9d EGYPTIAN HIEROGLYPH-1391D +<U0001391E> /xf0/x93/xa4/x9e EGYPTIAN HIEROGLYPH-1391E +<U0001391F> /xf0/x93/xa4/x9f EGYPTIAN HIEROGLYPH-1391F +<U00013920> /xf0/x93/xa4/xa0 EGYPTIAN HIEROGLYPH-13920 +<U00013921> /xf0/x93/xa4/xa1 EGYPTIAN HIEROGLYPH-13921 +<U00013922> /xf0/x93/xa4/xa2 EGYPTIAN HIEROGLYPH-13922 +<U00013923> /xf0/x93/xa4/xa3 EGYPTIAN HIEROGLYPH-13923 +<U00013924> /xf0/x93/xa4/xa4 EGYPTIAN HIEROGLYPH-13924 +<U00013925> /xf0/x93/xa4/xa5 EGYPTIAN HIEROGLYPH-13925 +<U00013926> /xf0/x93/xa4/xa6 EGYPTIAN HIEROGLYPH-13926 +<U00013927> /xf0/x93/xa4/xa7 EGYPTIAN HIEROGLYPH-13927 +<U00013928> /xf0/x93/xa4/xa8 EGYPTIAN HIEROGLYPH-13928 +<U00013929> /xf0/x93/xa4/xa9 EGYPTIAN HIEROGLYPH-13929 +<U0001392A> /xf0/x93/xa4/xaa EGYPTIAN HIEROGLYPH-1392A +<U0001392B> /xf0/x93/xa4/xab EGYPTIAN HIEROGLYPH-1392B +<U0001392C> /xf0/x93/xa4/xac EGYPTIAN HIEROGLYPH-1392C +<U0001392D> /xf0/x93/xa4/xad EGYPTIAN HIEROGLYPH-1392D +<U0001392E> /xf0/x93/xa4/xae EGYPTIAN HIEROGLYPH-1392E +<U0001392F> /xf0/x93/xa4/xaf EGYPTIAN HIEROGLYPH-1392F +<U00013930> /xf0/x93/xa4/xb0 EGYPTIAN HIEROGLYPH-13930 +<U00013931> /xf0/x93/xa4/xb1 EGYPTIAN HIEROGLYPH-13931 +<U00013932> /xf0/x93/xa4/xb2 EGYPTIAN HIEROGLYPH-13932 +<U00013933> /xf0/x93/xa4/xb3 EGYPTIAN HIEROGLYPH-13933 +<U00013934> /xf0/x93/xa4/xb4 EGYPTIAN HIEROGLYPH-13934 +<U00013935> /xf0/x93/xa4/xb5 EGYPTIAN HIEROGLYPH-13935 +<U00013936> /xf0/x93/xa4/xb6 EGYPTIAN HIEROGLYPH-13936 +<U00013937> /xf0/x93/xa4/xb7 EGYPTIAN HIEROGLYPH-13937 +<U00013938> /xf0/x93/xa4/xb8 EGYPTIAN HIEROGLYPH-13938 +<U00013939> /xf0/x93/xa4/xb9 EGYPTIAN HIEROGLYPH-13939 +<U0001393A> /xf0/x93/xa4/xba EGYPTIAN HIEROGLYPH-1393A +<U0001393B> /xf0/x93/xa4/xbb EGYPTIAN HIEROGLYPH-1393B +<U0001393C> /xf0/x93/xa4/xbc EGYPTIAN HIEROGLYPH-1393C +<U0001393D> /xf0/x93/xa4/xbd EGYPTIAN HIEROGLYPH-1393D +<U0001393E> /xf0/x93/xa4/xbe EGYPTIAN HIEROGLYPH-1393E +<U0001393F> /xf0/x93/xa4/xbf EGYPTIAN HIEROGLYPH-1393F +<U00013940> /xf0/x93/xa5/x80 EGYPTIAN HIEROGLYPH-13940 +<U00013941> /xf0/x93/xa5/x81 EGYPTIAN HIEROGLYPH-13941 +<U00013942> /xf0/x93/xa5/x82 EGYPTIAN HIEROGLYPH-13942 +<U00013943> /xf0/x93/xa5/x83 EGYPTIAN HIEROGLYPH-13943 +<U00013944> /xf0/x93/xa5/x84 EGYPTIAN HIEROGLYPH-13944 +<U00013945> /xf0/x93/xa5/x85 EGYPTIAN HIEROGLYPH-13945 +<U00013946> /xf0/x93/xa5/x86 EGYPTIAN HIEROGLYPH-13946 +<U00013947> /xf0/x93/xa5/x87 EGYPTIAN HIEROGLYPH-13947 +<U00013948> /xf0/x93/xa5/x88 EGYPTIAN HIEROGLYPH-13948 +<U00013949> /xf0/x93/xa5/x89 EGYPTIAN HIEROGLYPH-13949 +<U0001394A> /xf0/x93/xa5/x8a EGYPTIAN HIEROGLYPH-1394A +<U0001394B> /xf0/x93/xa5/x8b EGYPTIAN HIEROGLYPH-1394B +<U0001394C> /xf0/x93/xa5/x8c EGYPTIAN HIEROGLYPH-1394C +<U0001394D> /xf0/x93/xa5/x8d EGYPTIAN HIEROGLYPH-1394D +<U0001394E> /xf0/x93/xa5/x8e EGYPTIAN HIEROGLYPH-1394E +<U0001394F> /xf0/x93/xa5/x8f EGYPTIAN HIEROGLYPH-1394F +<U00013950> /xf0/x93/xa5/x90 EGYPTIAN HIEROGLYPH-13950 +<U00013951> /xf0/x93/xa5/x91 EGYPTIAN HIEROGLYPH-13951 +<U00013952> /xf0/x93/xa5/x92 EGYPTIAN HIEROGLYPH-13952 +<U00013953> /xf0/x93/xa5/x93 EGYPTIAN HIEROGLYPH-13953 +<U00013954> /xf0/x93/xa5/x94 EGYPTIAN HIEROGLYPH-13954 +<U00013955> /xf0/x93/xa5/x95 EGYPTIAN HIEROGLYPH-13955 +<U00013956> /xf0/x93/xa5/x96 EGYPTIAN HIEROGLYPH-13956 +<U00013957> /xf0/x93/xa5/x97 EGYPTIAN HIEROGLYPH-13957 +<U00013958> /xf0/x93/xa5/x98 EGYPTIAN HIEROGLYPH-13958 +<U00013959> /xf0/x93/xa5/x99 EGYPTIAN HIEROGLYPH-13959 +<U0001395A> /xf0/x93/xa5/x9a EGYPTIAN HIEROGLYPH-1395A +<U0001395B> /xf0/x93/xa5/x9b EGYPTIAN HIEROGLYPH-1395B +<U0001395C> /xf0/x93/xa5/x9c EGYPTIAN HIEROGLYPH-1395C +<U0001395D> /xf0/x93/xa5/x9d EGYPTIAN HIEROGLYPH-1395D +<U0001395E> /xf0/x93/xa5/x9e EGYPTIAN HIEROGLYPH-1395E +<U0001395F> /xf0/x93/xa5/x9f EGYPTIAN HIEROGLYPH-1395F +<U00013960> /xf0/x93/xa5/xa0 EGYPTIAN HIEROGLYPH-13960 +<U00013961> /xf0/x93/xa5/xa1 EGYPTIAN HIEROGLYPH-13961 +<U00013962> /xf0/x93/xa5/xa2 EGYPTIAN HIEROGLYPH-13962 +<U00013963> /xf0/x93/xa5/xa3 EGYPTIAN HIEROGLYPH-13963 +<U00013964> /xf0/x93/xa5/xa4 EGYPTIAN HIEROGLYPH-13964 +<U00013965> /xf0/x93/xa5/xa5 EGYPTIAN HIEROGLYPH-13965 +<U00013966> /xf0/x93/xa5/xa6 EGYPTIAN HIEROGLYPH-13966 +<U00013967> /xf0/x93/xa5/xa7 EGYPTIAN HIEROGLYPH-13967 +<U00013968> /xf0/x93/xa5/xa8 EGYPTIAN HIEROGLYPH-13968 +<U00013969> /xf0/x93/xa5/xa9 EGYPTIAN HIEROGLYPH-13969 +<U0001396A> /xf0/x93/xa5/xaa EGYPTIAN HIEROGLYPH-1396A +<U0001396B> /xf0/x93/xa5/xab EGYPTIAN HIEROGLYPH-1396B +<U0001396C> /xf0/x93/xa5/xac EGYPTIAN HIEROGLYPH-1396C +<U0001396D> /xf0/x93/xa5/xad EGYPTIAN HIEROGLYPH-1396D +<U0001396E> /xf0/x93/xa5/xae EGYPTIAN HIEROGLYPH-1396E +<U0001396F> /xf0/x93/xa5/xaf EGYPTIAN HIEROGLYPH-1396F +<U00013970> /xf0/x93/xa5/xb0 EGYPTIAN HIEROGLYPH-13970 +<U00013971> /xf0/x93/xa5/xb1 EGYPTIAN HIEROGLYPH-13971 +<U00013972> /xf0/x93/xa5/xb2 EGYPTIAN HIEROGLYPH-13972 +<U00013973> /xf0/x93/xa5/xb3 EGYPTIAN HIEROGLYPH-13973 +<U00013974> /xf0/x93/xa5/xb4 EGYPTIAN HIEROGLYPH-13974 +<U00013975> /xf0/x93/xa5/xb5 EGYPTIAN HIEROGLYPH-13975 +<U00013976> /xf0/x93/xa5/xb6 EGYPTIAN HIEROGLYPH-13976 +<U00013977> /xf0/x93/xa5/xb7 EGYPTIAN HIEROGLYPH-13977 +<U00013978> /xf0/x93/xa5/xb8 EGYPTIAN HIEROGLYPH-13978 +<U00013979> /xf0/x93/xa5/xb9 EGYPTIAN HIEROGLYPH-13979 +<U0001397A> /xf0/x93/xa5/xba EGYPTIAN HIEROGLYPH-1397A +<U0001397B> /xf0/x93/xa5/xbb EGYPTIAN HIEROGLYPH-1397B +<U0001397C> /xf0/x93/xa5/xbc EGYPTIAN HIEROGLYPH-1397C +<U0001397D> /xf0/x93/xa5/xbd EGYPTIAN HIEROGLYPH-1397D +<U0001397E> /xf0/x93/xa5/xbe EGYPTIAN HIEROGLYPH-1397E +<U0001397F> /xf0/x93/xa5/xbf EGYPTIAN HIEROGLYPH-1397F +<U00013980> /xf0/x93/xa6/x80 EGYPTIAN HIEROGLYPH-13980 +<U00013981> /xf0/x93/xa6/x81 EGYPTIAN HIEROGLYPH-13981 +<U00013982> /xf0/x93/xa6/x82 EGYPTIAN HIEROGLYPH-13982 +<U00013983> /xf0/x93/xa6/x83 EGYPTIAN HIEROGLYPH-13983 +<U00013984> /xf0/x93/xa6/x84 EGYPTIAN HIEROGLYPH-13984 +<U00013985> /xf0/x93/xa6/x85 EGYPTIAN HIEROGLYPH-13985 +<U00013986> /xf0/x93/xa6/x86 EGYPTIAN HIEROGLYPH-13986 +<U00013987> /xf0/x93/xa6/x87 EGYPTIAN HIEROGLYPH-13987 +<U00013988> /xf0/x93/xa6/x88 EGYPTIAN HIEROGLYPH-13988 +<U00013989> /xf0/x93/xa6/x89 EGYPTIAN HIEROGLYPH-13989 +<U0001398A> /xf0/x93/xa6/x8a EGYPTIAN HIEROGLYPH-1398A +<U0001398B> /xf0/x93/xa6/x8b EGYPTIAN HIEROGLYPH-1398B +<U0001398C> /xf0/x93/xa6/x8c EGYPTIAN HIEROGLYPH-1398C +<U0001398D> /xf0/x93/xa6/x8d EGYPTIAN HIEROGLYPH-1398D +<U0001398E> /xf0/x93/xa6/x8e EGYPTIAN HIEROGLYPH-1398E +<U0001398F> /xf0/x93/xa6/x8f EGYPTIAN HIEROGLYPH-1398F +<U00013990> /xf0/x93/xa6/x90 EGYPTIAN HIEROGLYPH-13990 +<U00013991> /xf0/x93/xa6/x91 EGYPTIAN HIEROGLYPH-13991 +<U00013992> /xf0/x93/xa6/x92 EGYPTIAN HIEROGLYPH-13992 +<U00013993> /xf0/x93/xa6/x93 EGYPTIAN HIEROGLYPH-13993 +<U00013994> /xf0/x93/xa6/x94 EGYPTIAN HIEROGLYPH-13994 +<U00013995> /xf0/x93/xa6/x95 EGYPTIAN HIEROGLYPH-13995 +<U00013996> /xf0/x93/xa6/x96 EGYPTIAN HIEROGLYPH-13996 +<U00013997> /xf0/x93/xa6/x97 EGYPTIAN HIEROGLYPH-13997 +<U00013998> /xf0/x93/xa6/x98 EGYPTIAN HIEROGLYPH-13998 +<U00013999> /xf0/x93/xa6/x99 EGYPTIAN HIEROGLYPH-13999 +<U0001399A> /xf0/x93/xa6/x9a EGYPTIAN HIEROGLYPH-1399A +<U0001399B> /xf0/x93/xa6/x9b EGYPTIAN HIEROGLYPH-1399B +<U0001399C> /xf0/x93/xa6/x9c EGYPTIAN HIEROGLYPH-1399C +<U0001399D> /xf0/x93/xa6/x9d EGYPTIAN HIEROGLYPH-1399D +<U0001399E> /xf0/x93/xa6/x9e EGYPTIAN HIEROGLYPH-1399E +<U0001399F> /xf0/x93/xa6/x9f EGYPTIAN HIEROGLYPH-1399F +<U000139A0> /xf0/x93/xa6/xa0 EGYPTIAN HIEROGLYPH-139A0 +<U000139A1> /xf0/x93/xa6/xa1 EGYPTIAN HIEROGLYPH-139A1 +<U000139A2> /xf0/x93/xa6/xa2 EGYPTIAN HIEROGLYPH-139A2 +<U000139A3> /xf0/x93/xa6/xa3 EGYPTIAN HIEROGLYPH-139A3 +<U000139A4> /xf0/x93/xa6/xa4 EGYPTIAN HIEROGLYPH-139A4 +<U000139A5> /xf0/x93/xa6/xa5 EGYPTIAN HIEROGLYPH-139A5 +<U000139A6> /xf0/x93/xa6/xa6 EGYPTIAN HIEROGLYPH-139A6 +<U000139A7> /xf0/x93/xa6/xa7 EGYPTIAN HIEROGLYPH-139A7 +<U000139A8> /xf0/x93/xa6/xa8 EGYPTIAN HIEROGLYPH-139A8 +<U000139A9> /xf0/x93/xa6/xa9 EGYPTIAN HIEROGLYPH-139A9 +<U000139AA> /xf0/x93/xa6/xaa EGYPTIAN HIEROGLYPH-139AA +<U000139AB> /xf0/x93/xa6/xab EGYPTIAN HIEROGLYPH-139AB +<U000139AC> /xf0/x93/xa6/xac EGYPTIAN HIEROGLYPH-139AC +<U000139AD> /xf0/x93/xa6/xad EGYPTIAN HIEROGLYPH-139AD +<U000139AE> /xf0/x93/xa6/xae EGYPTIAN HIEROGLYPH-139AE +<U000139AF> /xf0/x93/xa6/xaf EGYPTIAN HIEROGLYPH-139AF +<U000139B0> /xf0/x93/xa6/xb0 EGYPTIAN HIEROGLYPH-139B0 +<U000139B1> /xf0/x93/xa6/xb1 EGYPTIAN HIEROGLYPH-139B1 +<U000139B2> /xf0/x93/xa6/xb2 EGYPTIAN HIEROGLYPH-139B2 +<U000139B3> /xf0/x93/xa6/xb3 EGYPTIAN HIEROGLYPH-139B3 +<U000139B4> /xf0/x93/xa6/xb4 EGYPTIAN HIEROGLYPH-139B4 +<U000139B5> /xf0/x93/xa6/xb5 EGYPTIAN HIEROGLYPH-139B5 +<U000139B6> /xf0/x93/xa6/xb6 EGYPTIAN HIEROGLYPH-139B6 +<U000139B7> /xf0/x93/xa6/xb7 EGYPTIAN HIEROGLYPH-139B7 +<U000139B8> /xf0/x93/xa6/xb8 EGYPTIAN HIEROGLYPH-139B8 +<U000139B9> /xf0/x93/xa6/xb9 EGYPTIAN HIEROGLYPH-139B9 +<U000139BA> /xf0/x93/xa6/xba EGYPTIAN HIEROGLYPH-139BA +<U000139BB> /xf0/x93/xa6/xbb EGYPTIAN HIEROGLYPH-139BB +<U000139BC> /xf0/x93/xa6/xbc EGYPTIAN HIEROGLYPH-139BC +<U000139BD> /xf0/x93/xa6/xbd EGYPTIAN HIEROGLYPH-139BD +<U000139BE> /xf0/x93/xa6/xbe EGYPTIAN HIEROGLYPH-139BE +<U000139BF> /xf0/x93/xa6/xbf EGYPTIAN HIEROGLYPH-139BF +<U000139C0> /xf0/x93/xa7/x80 EGYPTIAN HIEROGLYPH-139C0 +<U000139C1> /xf0/x93/xa7/x81 EGYPTIAN HIEROGLYPH-139C1 +<U000139C2> /xf0/x93/xa7/x82 EGYPTIAN HIEROGLYPH-139C2 +<U000139C3> /xf0/x93/xa7/x83 EGYPTIAN HIEROGLYPH-139C3 +<U000139C4> /xf0/x93/xa7/x84 EGYPTIAN HIEROGLYPH-139C4 +<U000139C5> /xf0/x93/xa7/x85 EGYPTIAN HIEROGLYPH-139C5 +<U000139C6> /xf0/x93/xa7/x86 EGYPTIAN HIEROGLYPH-139C6 +<U000139C7> /xf0/x93/xa7/x87 EGYPTIAN HIEROGLYPH-139C7 +<U000139C8> /xf0/x93/xa7/x88 EGYPTIAN HIEROGLYPH-139C8 +<U000139C9> /xf0/x93/xa7/x89 EGYPTIAN HIEROGLYPH-139C9 +<U000139CA> /xf0/x93/xa7/x8a EGYPTIAN HIEROGLYPH-139CA +<U000139CB> /xf0/x93/xa7/x8b EGYPTIAN HIEROGLYPH-139CB +<U000139CC> /xf0/x93/xa7/x8c EGYPTIAN HIEROGLYPH-139CC +<U000139CD> /xf0/x93/xa7/x8d EGYPTIAN HIEROGLYPH-139CD +<U000139CE> /xf0/x93/xa7/x8e EGYPTIAN HIEROGLYPH-139CE +<U000139CF> /xf0/x93/xa7/x8f EGYPTIAN HIEROGLYPH-139CF +<U000139D0> /xf0/x93/xa7/x90 EGYPTIAN HIEROGLYPH-139D0 +<U000139D1> /xf0/x93/xa7/x91 EGYPTIAN HIEROGLYPH-139D1 +<U000139D2> /xf0/x93/xa7/x92 EGYPTIAN HIEROGLYPH-139D2 +<U000139D3> /xf0/x93/xa7/x93 EGYPTIAN HIEROGLYPH-139D3 +<U000139D4> /xf0/x93/xa7/x94 EGYPTIAN HIEROGLYPH-139D4 +<U000139D5> /xf0/x93/xa7/x95 EGYPTIAN HIEROGLYPH-139D5 +<U000139D6> /xf0/x93/xa7/x96 EGYPTIAN HIEROGLYPH-139D6 +<U000139D7> /xf0/x93/xa7/x97 EGYPTIAN HIEROGLYPH-139D7 +<U000139D8> /xf0/x93/xa7/x98 EGYPTIAN HIEROGLYPH-139D8 +<U000139D9> /xf0/x93/xa7/x99 EGYPTIAN HIEROGLYPH-139D9 +<U000139DA> /xf0/x93/xa7/x9a EGYPTIAN HIEROGLYPH-139DA +<U000139DB> /xf0/x93/xa7/x9b EGYPTIAN HIEROGLYPH-139DB +<U000139DC> /xf0/x93/xa7/x9c EGYPTIAN HIEROGLYPH-139DC +<U000139DD> /xf0/x93/xa7/x9d EGYPTIAN HIEROGLYPH-139DD +<U000139DE> /xf0/x93/xa7/x9e EGYPTIAN HIEROGLYPH-139DE +<U000139DF> /xf0/x93/xa7/x9f EGYPTIAN HIEROGLYPH-139DF +<U000139E0> /xf0/x93/xa7/xa0 EGYPTIAN HIEROGLYPH-139E0 +<U000139E1> /xf0/x93/xa7/xa1 EGYPTIAN HIEROGLYPH-139E1 +<U000139E2> /xf0/x93/xa7/xa2 EGYPTIAN HIEROGLYPH-139E2 +<U000139E3> /xf0/x93/xa7/xa3 EGYPTIAN HIEROGLYPH-139E3 +<U000139E4> /xf0/x93/xa7/xa4 EGYPTIAN HIEROGLYPH-139E4 +<U000139E5> /xf0/x93/xa7/xa5 EGYPTIAN HIEROGLYPH-139E5 +<U000139E6> /xf0/x93/xa7/xa6 EGYPTIAN HIEROGLYPH-139E6 +<U000139E7> /xf0/x93/xa7/xa7 EGYPTIAN HIEROGLYPH-139E7 +<U000139E8> /xf0/x93/xa7/xa8 EGYPTIAN HIEROGLYPH-139E8 +<U000139E9> /xf0/x93/xa7/xa9 EGYPTIAN HIEROGLYPH-139E9 +<U000139EA> /xf0/x93/xa7/xaa EGYPTIAN HIEROGLYPH-139EA +<U000139EB> /xf0/x93/xa7/xab EGYPTIAN HIEROGLYPH-139EB +<U000139EC> /xf0/x93/xa7/xac EGYPTIAN HIEROGLYPH-139EC +<U000139ED> /xf0/x93/xa7/xad EGYPTIAN HIEROGLYPH-139ED +<U000139EE> /xf0/x93/xa7/xae EGYPTIAN HIEROGLYPH-139EE +<U000139EF> /xf0/x93/xa7/xaf EGYPTIAN HIEROGLYPH-139EF +<U000139F0> /xf0/x93/xa7/xb0 EGYPTIAN HIEROGLYPH-139F0 +<U000139F1> /xf0/x93/xa7/xb1 EGYPTIAN HIEROGLYPH-139F1 +<U000139F2> /xf0/x93/xa7/xb2 EGYPTIAN HIEROGLYPH-139F2 +<U000139F3> /xf0/x93/xa7/xb3 EGYPTIAN HIEROGLYPH-139F3 +<U000139F4> /xf0/x93/xa7/xb4 EGYPTIAN HIEROGLYPH-139F4 +<U000139F5> /xf0/x93/xa7/xb5 EGYPTIAN HIEROGLYPH-139F5 +<U000139F6> /xf0/x93/xa7/xb6 EGYPTIAN HIEROGLYPH-139F6 +<U000139F7> /xf0/x93/xa7/xb7 EGYPTIAN HIEROGLYPH-139F7 +<U000139F8> /xf0/x93/xa7/xb8 EGYPTIAN HIEROGLYPH-139F8 +<U000139F9> /xf0/x93/xa7/xb9 EGYPTIAN HIEROGLYPH-139F9 +<U000139FA> /xf0/x93/xa7/xba EGYPTIAN HIEROGLYPH-139FA +<U000139FB> /xf0/x93/xa7/xbb EGYPTIAN HIEROGLYPH-139FB +<U000139FC> /xf0/x93/xa7/xbc EGYPTIAN HIEROGLYPH-139FC +<U000139FD> /xf0/x93/xa7/xbd EGYPTIAN HIEROGLYPH-139FD +<U000139FE> /xf0/x93/xa7/xbe EGYPTIAN HIEROGLYPH-139FE +<U000139FF> /xf0/x93/xa7/xbf EGYPTIAN HIEROGLYPH-139FF +<U00013A00> /xf0/x93/xa8/x80 EGYPTIAN HIEROGLYPH-13A00 +<U00013A01> /xf0/x93/xa8/x81 EGYPTIAN HIEROGLYPH-13A01 +<U00013A02> /xf0/x93/xa8/x82 EGYPTIAN HIEROGLYPH-13A02 +<U00013A03> /xf0/x93/xa8/x83 EGYPTIAN HIEROGLYPH-13A03 +<U00013A04> /xf0/x93/xa8/x84 EGYPTIAN HIEROGLYPH-13A04 +<U00013A05> /xf0/x93/xa8/x85 EGYPTIAN HIEROGLYPH-13A05 +<U00013A06> /xf0/x93/xa8/x86 EGYPTIAN HIEROGLYPH-13A06 +<U00013A07> /xf0/x93/xa8/x87 EGYPTIAN HIEROGLYPH-13A07 +<U00013A08> /xf0/x93/xa8/x88 EGYPTIAN HIEROGLYPH-13A08 +<U00013A09> /xf0/x93/xa8/x89 EGYPTIAN HIEROGLYPH-13A09 +<U00013A0A> /xf0/x93/xa8/x8a EGYPTIAN HIEROGLYPH-13A0A +<U00013A0B> /xf0/x93/xa8/x8b EGYPTIAN HIEROGLYPH-13A0B +<U00013A0C> /xf0/x93/xa8/x8c EGYPTIAN HIEROGLYPH-13A0C +<U00013A0D> /xf0/x93/xa8/x8d EGYPTIAN HIEROGLYPH-13A0D +<U00013A0E> /xf0/x93/xa8/x8e EGYPTIAN HIEROGLYPH-13A0E +<U00013A0F> /xf0/x93/xa8/x8f EGYPTIAN HIEROGLYPH-13A0F +<U00013A10> /xf0/x93/xa8/x90 EGYPTIAN HIEROGLYPH-13A10 +<U00013A11> /xf0/x93/xa8/x91 EGYPTIAN HIEROGLYPH-13A11 +<U00013A12> /xf0/x93/xa8/x92 EGYPTIAN HIEROGLYPH-13A12 +<U00013A13> /xf0/x93/xa8/x93 EGYPTIAN HIEROGLYPH-13A13 +<U00013A14> /xf0/x93/xa8/x94 EGYPTIAN HIEROGLYPH-13A14 +<U00013A15> /xf0/x93/xa8/x95 EGYPTIAN HIEROGLYPH-13A15 +<U00013A16> /xf0/x93/xa8/x96 EGYPTIAN HIEROGLYPH-13A16 +<U00013A17> /xf0/x93/xa8/x97 EGYPTIAN HIEROGLYPH-13A17 +<U00013A18> /xf0/x93/xa8/x98 EGYPTIAN HIEROGLYPH-13A18 +<U00013A19> /xf0/x93/xa8/x99 EGYPTIAN HIEROGLYPH-13A19 +<U00013A1A> /xf0/x93/xa8/x9a EGYPTIAN HIEROGLYPH-13A1A +<U00013A1B> /xf0/x93/xa8/x9b EGYPTIAN HIEROGLYPH-13A1B +<U00013A1C> /xf0/x93/xa8/x9c EGYPTIAN HIEROGLYPH-13A1C +<U00013A1D> /xf0/x93/xa8/x9d EGYPTIAN HIEROGLYPH-13A1D +<U00013A1E> /xf0/x93/xa8/x9e EGYPTIAN HIEROGLYPH-13A1E +<U00013A1F> /xf0/x93/xa8/x9f EGYPTIAN HIEROGLYPH-13A1F +<U00013A20> /xf0/x93/xa8/xa0 EGYPTIAN HIEROGLYPH-13A20 +<U00013A21> /xf0/x93/xa8/xa1 EGYPTIAN HIEROGLYPH-13A21 +<U00013A22> /xf0/x93/xa8/xa2 EGYPTIAN HIEROGLYPH-13A22 +<U00013A23> /xf0/x93/xa8/xa3 EGYPTIAN HIEROGLYPH-13A23 +<U00013A24> /xf0/x93/xa8/xa4 EGYPTIAN HIEROGLYPH-13A24 +<U00013A25> /xf0/x93/xa8/xa5 EGYPTIAN HIEROGLYPH-13A25 +<U00013A26> /xf0/x93/xa8/xa6 EGYPTIAN HIEROGLYPH-13A26 +<U00013A27> /xf0/x93/xa8/xa7 EGYPTIAN HIEROGLYPH-13A27 +<U00013A28> /xf0/x93/xa8/xa8 EGYPTIAN HIEROGLYPH-13A28 +<U00013A29> /xf0/x93/xa8/xa9 EGYPTIAN HIEROGLYPH-13A29 +<U00013A2A> /xf0/x93/xa8/xaa EGYPTIAN HIEROGLYPH-13A2A +<U00013A2B> /xf0/x93/xa8/xab EGYPTIAN HIEROGLYPH-13A2B +<U00013A2C> /xf0/x93/xa8/xac EGYPTIAN HIEROGLYPH-13A2C +<U00013A2D> /xf0/x93/xa8/xad EGYPTIAN HIEROGLYPH-13A2D +<U00013A2E> /xf0/x93/xa8/xae EGYPTIAN HIEROGLYPH-13A2E +<U00013A2F> /xf0/x93/xa8/xaf EGYPTIAN HIEROGLYPH-13A2F +<U00013A30> /xf0/x93/xa8/xb0 EGYPTIAN HIEROGLYPH-13A30 +<U00013A31> /xf0/x93/xa8/xb1 EGYPTIAN HIEROGLYPH-13A31 +<U00013A32> /xf0/x93/xa8/xb2 EGYPTIAN HIEROGLYPH-13A32 +<U00013A33> /xf0/x93/xa8/xb3 EGYPTIAN HIEROGLYPH-13A33 +<U00013A34> /xf0/x93/xa8/xb4 EGYPTIAN HIEROGLYPH-13A34 +<U00013A35> /xf0/x93/xa8/xb5 EGYPTIAN HIEROGLYPH-13A35 +<U00013A36> /xf0/x93/xa8/xb6 EGYPTIAN HIEROGLYPH-13A36 +<U00013A37> /xf0/x93/xa8/xb7 EGYPTIAN HIEROGLYPH-13A37 +<U00013A38> /xf0/x93/xa8/xb8 EGYPTIAN HIEROGLYPH-13A38 +<U00013A39> /xf0/x93/xa8/xb9 EGYPTIAN HIEROGLYPH-13A39 +<U00013A3A> /xf0/x93/xa8/xba EGYPTIAN HIEROGLYPH-13A3A +<U00013A3B> /xf0/x93/xa8/xbb EGYPTIAN HIEROGLYPH-13A3B +<U00013A3C> /xf0/x93/xa8/xbc EGYPTIAN HIEROGLYPH-13A3C +<U00013A3D> /xf0/x93/xa8/xbd EGYPTIAN HIEROGLYPH-13A3D +<U00013A3E> /xf0/x93/xa8/xbe EGYPTIAN HIEROGLYPH-13A3E +<U00013A3F> /xf0/x93/xa8/xbf EGYPTIAN HIEROGLYPH-13A3F +<U00013A40> /xf0/x93/xa9/x80 EGYPTIAN HIEROGLYPH-13A40 +<U00013A41> /xf0/x93/xa9/x81 EGYPTIAN HIEROGLYPH-13A41 +<U00013A42> /xf0/x93/xa9/x82 EGYPTIAN HIEROGLYPH-13A42 +<U00013A43> /xf0/x93/xa9/x83 EGYPTIAN HIEROGLYPH-13A43 +<U00013A44> /xf0/x93/xa9/x84 EGYPTIAN HIEROGLYPH-13A44 +<U00013A45> /xf0/x93/xa9/x85 EGYPTIAN HIEROGLYPH-13A45 +<U00013A46> /xf0/x93/xa9/x86 EGYPTIAN HIEROGLYPH-13A46 +<U00013A47> /xf0/x93/xa9/x87 EGYPTIAN HIEROGLYPH-13A47 +<U00013A48> /xf0/x93/xa9/x88 EGYPTIAN HIEROGLYPH-13A48 +<U00013A49> /xf0/x93/xa9/x89 EGYPTIAN HIEROGLYPH-13A49 +<U00013A4A> /xf0/x93/xa9/x8a EGYPTIAN HIEROGLYPH-13A4A +<U00013A4B> /xf0/x93/xa9/x8b EGYPTIAN HIEROGLYPH-13A4B +<U00013A4C> /xf0/x93/xa9/x8c EGYPTIAN HIEROGLYPH-13A4C +<U00013A4D> /xf0/x93/xa9/x8d EGYPTIAN HIEROGLYPH-13A4D +<U00013A4E> /xf0/x93/xa9/x8e EGYPTIAN HIEROGLYPH-13A4E +<U00013A4F> /xf0/x93/xa9/x8f EGYPTIAN HIEROGLYPH-13A4F +<U00013A50> /xf0/x93/xa9/x90 EGYPTIAN HIEROGLYPH-13A50 +<U00013A51> /xf0/x93/xa9/x91 EGYPTIAN HIEROGLYPH-13A51 +<U00013A52> /xf0/x93/xa9/x92 EGYPTIAN HIEROGLYPH-13A52 +<U00013A53> /xf0/x93/xa9/x93 EGYPTIAN HIEROGLYPH-13A53 +<U00013A54> /xf0/x93/xa9/x94 EGYPTIAN HIEROGLYPH-13A54 +<U00013A55> /xf0/x93/xa9/x95 EGYPTIAN HIEROGLYPH-13A55 +<U00013A56> /xf0/x93/xa9/x96 EGYPTIAN HIEROGLYPH-13A56 +<U00013A57> /xf0/x93/xa9/x97 EGYPTIAN HIEROGLYPH-13A57 +<U00013A58> /xf0/x93/xa9/x98 EGYPTIAN HIEROGLYPH-13A58 +<U00013A59> /xf0/x93/xa9/x99 EGYPTIAN HIEROGLYPH-13A59 +<U00013A5A> /xf0/x93/xa9/x9a EGYPTIAN HIEROGLYPH-13A5A +<U00013A5B> /xf0/x93/xa9/x9b EGYPTIAN HIEROGLYPH-13A5B +<U00013A5C> /xf0/x93/xa9/x9c EGYPTIAN HIEROGLYPH-13A5C +<U00013A5D> /xf0/x93/xa9/x9d EGYPTIAN HIEROGLYPH-13A5D +<U00013A5E> /xf0/x93/xa9/x9e EGYPTIAN HIEROGLYPH-13A5E +<U00013A5F> /xf0/x93/xa9/x9f EGYPTIAN HIEROGLYPH-13A5F +<U00013A60> /xf0/x93/xa9/xa0 EGYPTIAN HIEROGLYPH-13A60 +<U00013A61> /xf0/x93/xa9/xa1 EGYPTIAN HIEROGLYPH-13A61 +<U00013A62> /xf0/x93/xa9/xa2 EGYPTIAN HIEROGLYPH-13A62 +<U00013A63> /xf0/x93/xa9/xa3 EGYPTIAN HIEROGLYPH-13A63 +<U00013A64> /xf0/x93/xa9/xa4 EGYPTIAN HIEROGLYPH-13A64 +<U00013A65> /xf0/x93/xa9/xa5 EGYPTIAN HIEROGLYPH-13A65 +<U00013A66> /xf0/x93/xa9/xa6 EGYPTIAN HIEROGLYPH-13A66 +<U00013A67> /xf0/x93/xa9/xa7 EGYPTIAN HIEROGLYPH-13A67 +<U00013A68> /xf0/x93/xa9/xa8 EGYPTIAN HIEROGLYPH-13A68 +<U00013A69> /xf0/x93/xa9/xa9 EGYPTIAN HIEROGLYPH-13A69 +<U00013A6A> /xf0/x93/xa9/xaa EGYPTIAN HIEROGLYPH-13A6A +<U00013A6B> /xf0/x93/xa9/xab EGYPTIAN HIEROGLYPH-13A6B +<U00013A6C> /xf0/x93/xa9/xac EGYPTIAN HIEROGLYPH-13A6C +<U00013A6D> /xf0/x93/xa9/xad EGYPTIAN HIEROGLYPH-13A6D +<U00013A6E> /xf0/x93/xa9/xae EGYPTIAN HIEROGLYPH-13A6E +<U00013A6F> /xf0/x93/xa9/xaf EGYPTIAN HIEROGLYPH-13A6F +<U00013A70> /xf0/x93/xa9/xb0 EGYPTIAN HIEROGLYPH-13A70 +<U00013A71> /xf0/x93/xa9/xb1 EGYPTIAN HIEROGLYPH-13A71 +<U00013A72> /xf0/x93/xa9/xb2 EGYPTIAN HIEROGLYPH-13A72 +<U00013A73> /xf0/x93/xa9/xb3 EGYPTIAN HIEROGLYPH-13A73 +<U00013A74> /xf0/x93/xa9/xb4 EGYPTIAN HIEROGLYPH-13A74 +<U00013A75> /xf0/x93/xa9/xb5 EGYPTIAN HIEROGLYPH-13A75 +<U00013A76> /xf0/x93/xa9/xb6 EGYPTIAN HIEROGLYPH-13A76 +<U00013A77> /xf0/x93/xa9/xb7 EGYPTIAN HIEROGLYPH-13A77 +<U00013A78> /xf0/x93/xa9/xb8 EGYPTIAN HIEROGLYPH-13A78 +<U00013A79> /xf0/x93/xa9/xb9 EGYPTIAN HIEROGLYPH-13A79 +<U00013A7A> /xf0/x93/xa9/xba EGYPTIAN HIEROGLYPH-13A7A +<U00013A7B> /xf0/x93/xa9/xbb EGYPTIAN HIEROGLYPH-13A7B +<U00013A7C> /xf0/x93/xa9/xbc EGYPTIAN HIEROGLYPH-13A7C +<U00013A7D> /xf0/x93/xa9/xbd EGYPTIAN HIEROGLYPH-13A7D +<U00013A7E> /xf0/x93/xa9/xbe EGYPTIAN HIEROGLYPH-13A7E +<U00013A7F> /xf0/x93/xa9/xbf EGYPTIAN HIEROGLYPH-13A7F +<U00013A80> /xf0/x93/xaa/x80 EGYPTIAN HIEROGLYPH-13A80 +<U00013A81> /xf0/x93/xaa/x81 EGYPTIAN HIEROGLYPH-13A81 +<U00013A82> /xf0/x93/xaa/x82 EGYPTIAN HIEROGLYPH-13A82 +<U00013A83> /xf0/x93/xaa/x83 EGYPTIAN HIEROGLYPH-13A83 +<U00013A84> /xf0/x93/xaa/x84 EGYPTIAN HIEROGLYPH-13A84 +<U00013A85> /xf0/x93/xaa/x85 EGYPTIAN HIEROGLYPH-13A85 +<U00013A86> /xf0/x93/xaa/x86 EGYPTIAN HIEROGLYPH-13A86 +<U00013A87> /xf0/x93/xaa/x87 EGYPTIAN HIEROGLYPH-13A87 +<U00013A88> /xf0/x93/xaa/x88 EGYPTIAN HIEROGLYPH-13A88 +<U00013A89> /xf0/x93/xaa/x89 EGYPTIAN HIEROGLYPH-13A89 +<U00013A8A> /xf0/x93/xaa/x8a EGYPTIAN HIEROGLYPH-13A8A +<U00013A8B> /xf0/x93/xaa/x8b EGYPTIAN HIEROGLYPH-13A8B +<U00013A8C> /xf0/x93/xaa/x8c EGYPTIAN HIEROGLYPH-13A8C +<U00013A8D> /xf0/x93/xaa/x8d EGYPTIAN HIEROGLYPH-13A8D +<U00013A8E> /xf0/x93/xaa/x8e EGYPTIAN HIEROGLYPH-13A8E +<U00013A8F> /xf0/x93/xaa/x8f EGYPTIAN HIEROGLYPH-13A8F +<U00013A90> /xf0/x93/xaa/x90 EGYPTIAN HIEROGLYPH-13A90 +<U00013A91> /xf0/x93/xaa/x91 EGYPTIAN HIEROGLYPH-13A91 +<U00013A92> /xf0/x93/xaa/x92 EGYPTIAN HIEROGLYPH-13A92 +<U00013A93> /xf0/x93/xaa/x93 EGYPTIAN HIEROGLYPH-13A93 +<U00013A94> /xf0/x93/xaa/x94 EGYPTIAN HIEROGLYPH-13A94 +<U00013A95> /xf0/x93/xaa/x95 EGYPTIAN HIEROGLYPH-13A95 +<U00013A96> /xf0/x93/xaa/x96 EGYPTIAN HIEROGLYPH-13A96 +<U00013A97> /xf0/x93/xaa/x97 EGYPTIAN HIEROGLYPH-13A97 +<U00013A98> /xf0/x93/xaa/x98 EGYPTIAN HIEROGLYPH-13A98 +<U00013A99> /xf0/x93/xaa/x99 EGYPTIAN HIEROGLYPH-13A99 +<U00013A9A> /xf0/x93/xaa/x9a EGYPTIAN HIEROGLYPH-13A9A +<U00013A9B> /xf0/x93/xaa/x9b EGYPTIAN HIEROGLYPH-13A9B +<U00013A9C> /xf0/x93/xaa/x9c EGYPTIAN HIEROGLYPH-13A9C +<U00013A9D> /xf0/x93/xaa/x9d EGYPTIAN HIEROGLYPH-13A9D +<U00013A9E> /xf0/x93/xaa/x9e EGYPTIAN HIEROGLYPH-13A9E +<U00013A9F> /xf0/x93/xaa/x9f EGYPTIAN HIEROGLYPH-13A9F +<U00013AA0> /xf0/x93/xaa/xa0 EGYPTIAN HIEROGLYPH-13AA0 +<U00013AA1> /xf0/x93/xaa/xa1 EGYPTIAN HIEROGLYPH-13AA1 +<U00013AA2> /xf0/x93/xaa/xa2 EGYPTIAN HIEROGLYPH-13AA2 +<U00013AA3> /xf0/x93/xaa/xa3 EGYPTIAN HIEROGLYPH-13AA3 +<U00013AA4> /xf0/x93/xaa/xa4 EGYPTIAN HIEROGLYPH-13AA4 +<U00013AA5> /xf0/x93/xaa/xa5 EGYPTIAN HIEROGLYPH-13AA5 +<U00013AA6> /xf0/x93/xaa/xa6 EGYPTIAN HIEROGLYPH-13AA6 +<U00013AA7> /xf0/x93/xaa/xa7 EGYPTIAN HIEROGLYPH-13AA7 +<U00013AA8> /xf0/x93/xaa/xa8 EGYPTIAN HIEROGLYPH-13AA8 +<U00013AA9> /xf0/x93/xaa/xa9 EGYPTIAN HIEROGLYPH-13AA9 +<U00013AAA> /xf0/x93/xaa/xaa EGYPTIAN HIEROGLYPH-13AAA +<U00013AAB> /xf0/x93/xaa/xab EGYPTIAN HIEROGLYPH-13AAB +<U00013AAC> /xf0/x93/xaa/xac EGYPTIAN HIEROGLYPH-13AAC +<U00013AAD> /xf0/x93/xaa/xad EGYPTIAN HIEROGLYPH-13AAD +<U00013AAE> /xf0/x93/xaa/xae EGYPTIAN HIEROGLYPH-13AAE +<U00013AAF> /xf0/x93/xaa/xaf EGYPTIAN HIEROGLYPH-13AAF +<U00013AB0> /xf0/x93/xaa/xb0 EGYPTIAN HIEROGLYPH-13AB0 +<U00013AB1> /xf0/x93/xaa/xb1 EGYPTIAN HIEROGLYPH-13AB1 +<U00013AB2> /xf0/x93/xaa/xb2 EGYPTIAN HIEROGLYPH-13AB2 +<U00013AB3> /xf0/x93/xaa/xb3 EGYPTIAN HIEROGLYPH-13AB3 +<U00013AB4> /xf0/x93/xaa/xb4 EGYPTIAN HIEROGLYPH-13AB4 +<U00013AB5> /xf0/x93/xaa/xb5 EGYPTIAN HIEROGLYPH-13AB5 +<U00013AB6> /xf0/x93/xaa/xb6 EGYPTIAN HIEROGLYPH-13AB6 +<U00013AB7> /xf0/x93/xaa/xb7 EGYPTIAN HIEROGLYPH-13AB7 +<U00013AB8> /xf0/x93/xaa/xb8 EGYPTIAN HIEROGLYPH-13AB8 +<U00013AB9> /xf0/x93/xaa/xb9 EGYPTIAN HIEROGLYPH-13AB9 +<U00013ABA> /xf0/x93/xaa/xba EGYPTIAN HIEROGLYPH-13ABA +<U00013ABB> /xf0/x93/xaa/xbb EGYPTIAN HIEROGLYPH-13ABB +<U00013ABC> /xf0/x93/xaa/xbc EGYPTIAN HIEROGLYPH-13ABC +<U00013ABD> /xf0/x93/xaa/xbd EGYPTIAN HIEROGLYPH-13ABD +<U00013ABE> /xf0/x93/xaa/xbe EGYPTIAN HIEROGLYPH-13ABE +<U00013ABF> /xf0/x93/xaa/xbf EGYPTIAN HIEROGLYPH-13ABF +<U00013AC0> /xf0/x93/xab/x80 EGYPTIAN HIEROGLYPH-13AC0 +<U00013AC1> /xf0/x93/xab/x81 EGYPTIAN HIEROGLYPH-13AC1 +<U00013AC2> /xf0/x93/xab/x82 EGYPTIAN HIEROGLYPH-13AC2 +<U00013AC3> /xf0/x93/xab/x83 EGYPTIAN HIEROGLYPH-13AC3 +<U00013AC4> /xf0/x93/xab/x84 EGYPTIAN HIEROGLYPH-13AC4 +<U00013AC5> /xf0/x93/xab/x85 EGYPTIAN HIEROGLYPH-13AC5 +<U00013AC6> /xf0/x93/xab/x86 EGYPTIAN HIEROGLYPH-13AC6 +<U00013AC7> /xf0/x93/xab/x87 EGYPTIAN HIEROGLYPH-13AC7 +<U00013AC8> /xf0/x93/xab/x88 EGYPTIAN HIEROGLYPH-13AC8 +<U00013AC9> /xf0/x93/xab/x89 EGYPTIAN HIEROGLYPH-13AC9 +<U00013ACA> /xf0/x93/xab/x8a EGYPTIAN HIEROGLYPH-13ACA +<U00013ACB> /xf0/x93/xab/x8b EGYPTIAN HIEROGLYPH-13ACB +<U00013ACC> /xf0/x93/xab/x8c EGYPTIAN HIEROGLYPH-13ACC +<U00013ACD> /xf0/x93/xab/x8d EGYPTIAN HIEROGLYPH-13ACD +<U00013ACE> /xf0/x93/xab/x8e EGYPTIAN HIEROGLYPH-13ACE +<U00013ACF> /xf0/x93/xab/x8f EGYPTIAN HIEROGLYPH-13ACF +<U00013AD0> /xf0/x93/xab/x90 EGYPTIAN HIEROGLYPH-13AD0 +<U00013AD1> /xf0/x93/xab/x91 EGYPTIAN HIEROGLYPH-13AD1 +<U00013AD2> /xf0/x93/xab/x92 EGYPTIAN HIEROGLYPH-13AD2 +<U00013AD3> /xf0/x93/xab/x93 EGYPTIAN HIEROGLYPH-13AD3 +<U00013AD4> /xf0/x93/xab/x94 EGYPTIAN HIEROGLYPH-13AD4 +<U00013AD5> /xf0/x93/xab/x95 EGYPTIAN HIEROGLYPH-13AD5 +<U00013AD6> /xf0/x93/xab/x96 EGYPTIAN HIEROGLYPH-13AD6 +<U00013AD7> /xf0/x93/xab/x97 EGYPTIAN HIEROGLYPH-13AD7 +<U00013AD8> /xf0/x93/xab/x98 EGYPTIAN HIEROGLYPH-13AD8 +<U00013AD9> /xf0/x93/xab/x99 EGYPTIAN HIEROGLYPH-13AD9 +<U00013ADA> /xf0/x93/xab/x9a EGYPTIAN HIEROGLYPH-13ADA +<U00013ADB> /xf0/x93/xab/x9b EGYPTIAN HIEROGLYPH-13ADB +<U00013ADC> /xf0/x93/xab/x9c EGYPTIAN HIEROGLYPH-13ADC +<U00013ADD> /xf0/x93/xab/x9d EGYPTIAN HIEROGLYPH-13ADD +<U00013ADE> /xf0/x93/xab/x9e EGYPTIAN HIEROGLYPH-13ADE +<U00013ADF> /xf0/x93/xab/x9f EGYPTIAN HIEROGLYPH-13ADF +<U00013AE0> /xf0/x93/xab/xa0 EGYPTIAN HIEROGLYPH-13AE0 +<U00013AE1> /xf0/x93/xab/xa1 EGYPTIAN HIEROGLYPH-13AE1 +<U00013AE2> /xf0/x93/xab/xa2 EGYPTIAN HIEROGLYPH-13AE2 +<U00013AE3> /xf0/x93/xab/xa3 EGYPTIAN HIEROGLYPH-13AE3 +<U00013AE4> /xf0/x93/xab/xa4 EGYPTIAN HIEROGLYPH-13AE4 +<U00013AE5> /xf0/x93/xab/xa5 EGYPTIAN HIEROGLYPH-13AE5 +<U00013AE6> /xf0/x93/xab/xa6 EGYPTIAN HIEROGLYPH-13AE6 +<U00013AE7> /xf0/x93/xab/xa7 EGYPTIAN HIEROGLYPH-13AE7 +<U00013AE8> /xf0/x93/xab/xa8 EGYPTIAN HIEROGLYPH-13AE8 +<U00013AE9> /xf0/x93/xab/xa9 EGYPTIAN HIEROGLYPH-13AE9 +<U00013AEA> /xf0/x93/xab/xaa EGYPTIAN HIEROGLYPH-13AEA +<U00013AEB> /xf0/x93/xab/xab EGYPTIAN HIEROGLYPH-13AEB +<U00013AEC> /xf0/x93/xab/xac EGYPTIAN HIEROGLYPH-13AEC +<U00013AED> /xf0/x93/xab/xad EGYPTIAN HIEROGLYPH-13AED +<U00013AEE> /xf0/x93/xab/xae EGYPTIAN HIEROGLYPH-13AEE +<U00013AEF> /xf0/x93/xab/xaf EGYPTIAN HIEROGLYPH-13AEF +<U00013AF0> /xf0/x93/xab/xb0 EGYPTIAN HIEROGLYPH-13AF0 +<U00013AF1> /xf0/x93/xab/xb1 EGYPTIAN HIEROGLYPH-13AF1 +<U00013AF2> /xf0/x93/xab/xb2 EGYPTIAN HIEROGLYPH-13AF2 +<U00013AF3> /xf0/x93/xab/xb3 EGYPTIAN HIEROGLYPH-13AF3 +<U00013AF4> /xf0/x93/xab/xb4 EGYPTIAN HIEROGLYPH-13AF4 +<U00013AF5> /xf0/x93/xab/xb5 EGYPTIAN HIEROGLYPH-13AF5 +<U00013AF6> /xf0/x93/xab/xb6 EGYPTIAN HIEROGLYPH-13AF6 +<U00013AF7> /xf0/x93/xab/xb7 EGYPTIAN HIEROGLYPH-13AF7 +<U00013AF8> /xf0/x93/xab/xb8 EGYPTIAN HIEROGLYPH-13AF8 +<U00013AF9> /xf0/x93/xab/xb9 EGYPTIAN HIEROGLYPH-13AF9 +<U00013AFA> /xf0/x93/xab/xba EGYPTIAN HIEROGLYPH-13AFA +<U00013AFB> /xf0/x93/xab/xbb EGYPTIAN HIEROGLYPH-13AFB +<U00013AFC> /xf0/x93/xab/xbc EGYPTIAN HIEROGLYPH-13AFC +<U00013AFD> /xf0/x93/xab/xbd EGYPTIAN HIEROGLYPH-13AFD +<U00013AFE> /xf0/x93/xab/xbe EGYPTIAN HIEROGLYPH-13AFE +<U00013AFF> /xf0/x93/xab/xbf EGYPTIAN HIEROGLYPH-13AFF +<U00013B00> /xf0/x93/xac/x80 EGYPTIAN HIEROGLYPH-13B00 +<U00013B01> /xf0/x93/xac/x81 EGYPTIAN HIEROGLYPH-13B01 +<U00013B02> /xf0/x93/xac/x82 EGYPTIAN HIEROGLYPH-13B02 +<U00013B03> /xf0/x93/xac/x83 EGYPTIAN HIEROGLYPH-13B03 +<U00013B04> /xf0/x93/xac/x84 EGYPTIAN HIEROGLYPH-13B04 +<U00013B05> /xf0/x93/xac/x85 EGYPTIAN HIEROGLYPH-13B05 +<U00013B06> /xf0/x93/xac/x86 EGYPTIAN HIEROGLYPH-13B06 +<U00013B07> /xf0/x93/xac/x87 EGYPTIAN HIEROGLYPH-13B07 +<U00013B08> /xf0/x93/xac/x88 EGYPTIAN HIEROGLYPH-13B08 +<U00013B09> /xf0/x93/xac/x89 EGYPTIAN HIEROGLYPH-13B09 +<U00013B0A> /xf0/x93/xac/x8a EGYPTIAN HIEROGLYPH-13B0A +<U00013B0B> /xf0/x93/xac/x8b EGYPTIAN HIEROGLYPH-13B0B +<U00013B0C> /xf0/x93/xac/x8c EGYPTIAN HIEROGLYPH-13B0C +<U00013B0D> /xf0/x93/xac/x8d EGYPTIAN HIEROGLYPH-13B0D +<U00013B0E> /xf0/x93/xac/x8e EGYPTIAN HIEROGLYPH-13B0E +<U00013B0F> /xf0/x93/xac/x8f EGYPTIAN HIEROGLYPH-13B0F +<U00013B10> /xf0/x93/xac/x90 EGYPTIAN HIEROGLYPH-13B10 +<U00013B11> /xf0/x93/xac/x91 EGYPTIAN HIEROGLYPH-13B11 +<U00013B12> /xf0/x93/xac/x92 EGYPTIAN HIEROGLYPH-13B12 +<U00013B13> /xf0/x93/xac/x93 EGYPTIAN HIEROGLYPH-13B13 +<U00013B14> /xf0/x93/xac/x94 EGYPTIAN HIEROGLYPH-13B14 +<U00013B15> /xf0/x93/xac/x95 EGYPTIAN HIEROGLYPH-13B15 +<U00013B16> /xf0/x93/xac/x96 EGYPTIAN HIEROGLYPH-13B16 +<U00013B17> /xf0/x93/xac/x97 EGYPTIAN HIEROGLYPH-13B17 +<U00013B18> /xf0/x93/xac/x98 EGYPTIAN HIEROGLYPH-13B18 +<U00013B19> /xf0/x93/xac/x99 EGYPTIAN HIEROGLYPH-13B19 +<U00013B1A> /xf0/x93/xac/x9a EGYPTIAN HIEROGLYPH-13B1A +<U00013B1B> /xf0/x93/xac/x9b EGYPTIAN HIEROGLYPH-13B1B +<U00013B1C> /xf0/x93/xac/x9c EGYPTIAN HIEROGLYPH-13B1C +<U00013B1D> /xf0/x93/xac/x9d EGYPTIAN HIEROGLYPH-13B1D +<U00013B1E> /xf0/x93/xac/x9e EGYPTIAN HIEROGLYPH-13B1E +<U00013B1F> /xf0/x93/xac/x9f EGYPTIAN HIEROGLYPH-13B1F +<U00013B20> /xf0/x93/xac/xa0 EGYPTIAN HIEROGLYPH-13B20 +<U00013B21> /xf0/x93/xac/xa1 EGYPTIAN HIEROGLYPH-13B21 +<U00013B22> /xf0/x93/xac/xa2 EGYPTIAN HIEROGLYPH-13B22 +<U00013B23> /xf0/x93/xac/xa3 EGYPTIAN HIEROGLYPH-13B23 +<U00013B24> /xf0/x93/xac/xa4 EGYPTIAN HIEROGLYPH-13B24 +<U00013B25> /xf0/x93/xac/xa5 EGYPTIAN HIEROGLYPH-13B25 +<U00013B26> /xf0/x93/xac/xa6 EGYPTIAN HIEROGLYPH-13B26 +<U00013B27> /xf0/x93/xac/xa7 EGYPTIAN HIEROGLYPH-13B27 +<U00013B28> /xf0/x93/xac/xa8 EGYPTIAN HIEROGLYPH-13B28 +<U00013B29> /xf0/x93/xac/xa9 EGYPTIAN HIEROGLYPH-13B29 +<U00013B2A> /xf0/x93/xac/xaa EGYPTIAN HIEROGLYPH-13B2A +<U00013B2B> /xf0/x93/xac/xab EGYPTIAN HIEROGLYPH-13B2B +<U00013B2C> /xf0/x93/xac/xac EGYPTIAN HIEROGLYPH-13B2C +<U00013B2D> /xf0/x93/xac/xad EGYPTIAN HIEROGLYPH-13B2D +<U00013B2E> /xf0/x93/xac/xae EGYPTIAN HIEROGLYPH-13B2E +<U00013B2F> /xf0/x93/xac/xaf EGYPTIAN HIEROGLYPH-13B2F +<U00013B30> /xf0/x93/xac/xb0 EGYPTIAN HIEROGLYPH-13B30 +<U00013B31> /xf0/x93/xac/xb1 EGYPTIAN HIEROGLYPH-13B31 +<U00013B32> /xf0/x93/xac/xb2 EGYPTIAN HIEROGLYPH-13B32 +<U00013B33> /xf0/x93/xac/xb3 EGYPTIAN HIEROGLYPH-13B33 +<U00013B34> /xf0/x93/xac/xb4 EGYPTIAN HIEROGLYPH-13B34 +<U00013B35> /xf0/x93/xac/xb5 EGYPTIAN HIEROGLYPH-13B35 +<U00013B36> /xf0/x93/xac/xb6 EGYPTIAN HIEROGLYPH-13B36 +<U00013B37> /xf0/x93/xac/xb7 EGYPTIAN HIEROGLYPH-13B37 +<U00013B38> /xf0/x93/xac/xb8 EGYPTIAN HIEROGLYPH-13B38 +<U00013B39> /xf0/x93/xac/xb9 EGYPTIAN HIEROGLYPH-13B39 +<U00013B3A> /xf0/x93/xac/xba EGYPTIAN HIEROGLYPH-13B3A +<U00013B3B> /xf0/x93/xac/xbb EGYPTIAN HIEROGLYPH-13B3B +<U00013B3C> /xf0/x93/xac/xbc EGYPTIAN HIEROGLYPH-13B3C +<U00013B3D> /xf0/x93/xac/xbd EGYPTIAN HIEROGLYPH-13B3D +<U00013B3E> /xf0/x93/xac/xbe EGYPTIAN HIEROGLYPH-13B3E +<U00013B3F> /xf0/x93/xac/xbf EGYPTIAN HIEROGLYPH-13B3F +<U00013B40> /xf0/x93/xad/x80 EGYPTIAN HIEROGLYPH-13B40 +<U00013B41> /xf0/x93/xad/x81 EGYPTIAN HIEROGLYPH-13B41 +<U00013B42> /xf0/x93/xad/x82 EGYPTIAN HIEROGLYPH-13B42 +<U00013B43> /xf0/x93/xad/x83 EGYPTIAN HIEROGLYPH-13B43 +<U00013B44> /xf0/x93/xad/x84 EGYPTIAN HIEROGLYPH-13B44 +<U00013B45> /xf0/x93/xad/x85 EGYPTIAN HIEROGLYPH-13B45 +<U00013B46> /xf0/x93/xad/x86 EGYPTIAN HIEROGLYPH-13B46 +<U00013B47> /xf0/x93/xad/x87 EGYPTIAN HIEROGLYPH-13B47 +<U00013B48> /xf0/x93/xad/x88 EGYPTIAN HIEROGLYPH-13B48 +<U00013B49> /xf0/x93/xad/x89 EGYPTIAN HIEROGLYPH-13B49 +<U00013B4A> /xf0/x93/xad/x8a EGYPTIAN HIEROGLYPH-13B4A +<U00013B4B> /xf0/x93/xad/x8b EGYPTIAN HIEROGLYPH-13B4B +<U00013B4C> /xf0/x93/xad/x8c EGYPTIAN HIEROGLYPH-13B4C +<U00013B4D> /xf0/x93/xad/x8d EGYPTIAN HIEROGLYPH-13B4D +<U00013B4E> /xf0/x93/xad/x8e EGYPTIAN HIEROGLYPH-13B4E +<U00013B4F> /xf0/x93/xad/x8f EGYPTIAN HIEROGLYPH-13B4F +<U00013B50> /xf0/x93/xad/x90 EGYPTIAN HIEROGLYPH-13B50 +<U00013B51> /xf0/x93/xad/x91 EGYPTIAN HIEROGLYPH-13B51 +<U00013B52> /xf0/x93/xad/x92 EGYPTIAN HIEROGLYPH-13B52 +<U00013B53> /xf0/x93/xad/x93 EGYPTIAN HIEROGLYPH-13B53 +<U00013B54> /xf0/x93/xad/x94 EGYPTIAN HIEROGLYPH-13B54 +<U00013B55> /xf0/x93/xad/x95 EGYPTIAN HIEROGLYPH-13B55 +<U00013B56> /xf0/x93/xad/x96 EGYPTIAN HIEROGLYPH-13B56 +<U00013B57> /xf0/x93/xad/x97 EGYPTIAN HIEROGLYPH-13B57 +<U00013B58> /xf0/x93/xad/x98 EGYPTIAN HIEROGLYPH-13B58 +<U00013B59> /xf0/x93/xad/x99 EGYPTIAN HIEROGLYPH-13B59 +<U00013B5A> /xf0/x93/xad/x9a EGYPTIAN HIEROGLYPH-13B5A +<U00013B5B> /xf0/x93/xad/x9b EGYPTIAN HIEROGLYPH-13B5B +<U00013B5C> /xf0/x93/xad/x9c EGYPTIAN HIEROGLYPH-13B5C +<U00013B5D> /xf0/x93/xad/x9d EGYPTIAN HIEROGLYPH-13B5D +<U00013B5E> /xf0/x93/xad/x9e EGYPTIAN HIEROGLYPH-13B5E +<U00013B5F> /xf0/x93/xad/x9f EGYPTIAN HIEROGLYPH-13B5F +<U00013B60> /xf0/x93/xad/xa0 EGYPTIAN HIEROGLYPH-13B60 +<U00013B61> /xf0/x93/xad/xa1 EGYPTIAN HIEROGLYPH-13B61 +<U00013B62> /xf0/x93/xad/xa2 EGYPTIAN HIEROGLYPH-13B62 +<U00013B63> /xf0/x93/xad/xa3 EGYPTIAN HIEROGLYPH-13B63 +<U00013B64> /xf0/x93/xad/xa4 EGYPTIAN HIEROGLYPH-13B64 +<U00013B65> /xf0/x93/xad/xa5 EGYPTIAN HIEROGLYPH-13B65 +<U00013B66> /xf0/x93/xad/xa6 EGYPTIAN HIEROGLYPH-13B66 +<U00013B67> /xf0/x93/xad/xa7 EGYPTIAN HIEROGLYPH-13B67 +<U00013B68> /xf0/x93/xad/xa8 EGYPTIAN HIEROGLYPH-13B68 +<U00013B69> /xf0/x93/xad/xa9 EGYPTIAN HIEROGLYPH-13B69 +<U00013B6A> /xf0/x93/xad/xaa EGYPTIAN HIEROGLYPH-13B6A +<U00013B6B> /xf0/x93/xad/xab EGYPTIAN HIEROGLYPH-13B6B +<U00013B6C> /xf0/x93/xad/xac EGYPTIAN HIEROGLYPH-13B6C +<U00013B6D> /xf0/x93/xad/xad EGYPTIAN HIEROGLYPH-13B6D +<U00013B6E> /xf0/x93/xad/xae EGYPTIAN HIEROGLYPH-13B6E +<U00013B6F> /xf0/x93/xad/xaf EGYPTIAN HIEROGLYPH-13B6F +<U00013B70> /xf0/x93/xad/xb0 EGYPTIAN HIEROGLYPH-13B70 +<U00013B71> /xf0/x93/xad/xb1 EGYPTIAN HIEROGLYPH-13B71 +<U00013B72> /xf0/x93/xad/xb2 EGYPTIAN HIEROGLYPH-13B72 +<U00013B73> /xf0/x93/xad/xb3 EGYPTIAN HIEROGLYPH-13B73 +<U00013B74> /xf0/x93/xad/xb4 EGYPTIAN HIEROGLYPH-13B74 +<U00013B75> /xf0/x93/xad/xb5 EGYPTIAN HIEROGLYPH-13B75 +<U00013B76> /xf0/x93/xad/xb6 EGYPTIAN HIEROGLYPH-13B76 +<U00013B77> /xf0/x93/xad/xb7 EGYPTIAN HIEROGLYPH-13B77 +<U00013B78> /xf0/x93/xad/xb8 EGYPTIAN HIEROGLYPH-13B78 +<U00013B79> /xf0/x93/xad/xb9 EGYPTIAN HIEROGLYPH-13B79 +<U00013B7A> /xf0/x93/xad/xba EGYPTIAN HIEROGLYPH-13B7A +<U00013B7B> /xf0/x93/xad/xbb EGYPTIAN HIEROGLYPH-13B7B +<U00013B7C> /xf0/x93/xad/xbc EGYPTIAN HIEROGLYPH-13B7C +<U00013B7D> /xf0/x93/xad/xbd EGYPTIAN HIEROGLYPH-13B7D +<U00013B7E> /xf0/x93/xad/xbe EGYPTIAN HIEROGLYPH-13B7E +<U00013B7F> /xf0/x93/xad/xbf EGYPTIAN HIEROGLYPH-13B7F +<U00013B80> /xf0/x93/xae/x80 EGYPTIAN HIEROGLYPH-13B80 +<U00013B81> /xf0/x93/xae/x81 EGYPTIAN HIEROGLYPH-13B81 +<U00013B82> /xf0/x93/xae/x82 EGYPTIAN HIEROGLYPH-13B82 +<U00013B83> /xf0/x93/xae/x83 EGYPTIAN HIEROGLYPH-13B83 +<U00013B84> /xf0/x93/xae/x84 EGYPTIAN HIEROGLYPH-13B84 +<U00013B85> /xf0/x93/xae/x85 EGYPTIAN HIEROGLYPH-13B85 +<U00013B86> /xf0/x93/xae/x86 EGYPTIAN HIEROGLYPH-13B86 +<U00013B87> /xf0/x93/xae/x87 EGYPTIAN HIEROGLYPH-13B87 +<U00013B88> /xf0/x93/xae/x88 EGYPTIAN HIEROGLYPH-13B88 +<U00013B89> /xf0/x93/xae/x89 EGYPTIAN HIEROGLYPH-13B89 +<U00013B8A> /xf0/x93/xae/x8a EGYPTIAN HIEROGLYPH-13B8A +<U00013B8B> /xf0/x93/xae/x8b EGYPTIAN HIEROGLYPH-13B8B +<U00013B8C> /xf0/x93/xae/x8c EGYPTIAN HIEROGLYPH-13B8C +<U00013B8D> /xf0/x93/xae/x8d EGYPTIAN HIEROGLYPH-13B8D +<U00013B8E> /xf0/x93/xae/x8e EGYPTIAN HIEROGLYPH-13B8E +<U00013B8F> /xf0/x93/xae/x8f EGYPTIAN HIEROGLYPH-13B8F +<U00013B90> /xf0/x93/xae/x90 EGYPTIAN HIEROGLYPH-13B90 +<U00013B91> /xf0/x93/xae/x91 EGYPTIAN HIEROGLYPH-13B91 +<U00013B92> /xf0/x93/xae/x92 EGYPTIAN HIEROGLYPH-13B92 +<U00013B93> /xf0/x93/xae/x93 EGYPTIAN HIEROGLYPH-13B93 +<U00013B94> /xf0/x93/xae/x94 EGYPTIAN HIEROGLYPH-13B94 +<U00013B95> /xf0/x93/xae/x95 EGYPTIAN HIEROGLYPH-13B95 +<U00013B96> /xf0/x93/xae/x96 EGYPTIAN HIEROGLYPH-13B96 +<U00013B97> /xf0/x93/xae/x97 EGYPTIAN HIEROGLYPH-13B97 +<U00013B98> /xf0/x93/xae/x98 EGYPTIAN HIEROGLYPH-13B98 +<U00013B99> /xf0/x93/xae/x99 EGYPTIAN HIEROGLYPH-13B99 +<U00013B9A> /xf0/x93/xae/x9a EGYPTIAN HIEROGLYPH-13B9A +<U00013B9B> /xf0/x93/xae/x9b EGYPTIAN HIEROGLYPH-13B9B +<U00013B9C> /xf0/x93/xae/x9c EGYPTIAN HIEROGLYPH-13B9C +<U00013B9D> /xf0/x93/xae/x9d EGYPTIAN HIEROGLYPH-13B9D +<U00013B9E> /xf0/x93/xae/x9e EGYPTIAN HIEROGLYPH-13B9E +<U00013B9F> /xf0/x93/xae/x9f EGYPTIAN HIEROGLYPH-13B9F +<U00013BA0> /xf0/x93/xae/xa0 EGYPTIAN HIEROGLYPH-13BA0 +<U00013BA1> /xf0/x93/xae/xa1 EGYPTIAN HIEROGLYPH-13BA1 +<U00013BA2> /xf0/x93/xae/xa2 EGYPTIAN HIEROGLYPH-13BA2 +<U00013BA3> /xf0/x93/xae/xa3 EGYPTIAN HIEROGLYPH-13BA3 +<U00013BA4> /xf0/x93/xae/xa4 EGYPTIAN HIEROGLYPH-13BA4 +<U00013BA5> /xf0/x93/xae/xa5 EGYPTIAN HIEROGLYPH-13BA5 +<U00013BA6> /xf0/x93/xae/xa6 EGYPTIAN HIEROGLYPH-13BA6 +<U00013BA7> /xf0/x93/xae/xa7 EGYPTIAN HIEROGLYPH-13BA7 +<U00013BA8> /xf0/x93/xae/xa8 EGYPTIAN HIEROGLYPH-13BA8 +<U00013BA9> /xf0/x93/xae/xa9 EGYPTIAN HIEROGLYPH-13BA9 +<U00013BAA> /xf0/x93/xae/xaa EGYPTIAN HIEROGLYPH-13BAA +<U00013BAB> /xf0/x93/xae/xab EGYPTIAN HIEROGLYPH-13BAB +<U00013BAC> /xf0/x93/xae/xac EGYPTIAN HIEROGLYPH-13BAC +<U00013BAD> /xf0/x93/xae/xad EGYPTIAN HIEROGLYPH-13BAD +<U00013BAE> /xf0/x93/xae/xae EGYPTIAN HIEROGLYPH-13BAE +<U00013BAF> /xf0/x93/xae/xaf EGYPTIAN HIEROGLYPH-13BAF +<U00013BB0> /xf0/x93/xae/xb0 EGYPTIAN HIEROGLYPH-13BB0 +<U00013BB1> /xf0/x93/xae/xb1 EGYPTIAN HIEROGLYPH-13BB1 +<U00013BB2> /xf0/x93/xae/xb2 EGYPTIAN HIEROGLYPH-13BB2 +<U00013BB3> /xf0/x93/xae/xb3 EGYPTIAN HIEROGLYPH-13BB3 +<U00013BB4> /xf0/x93/xae/xb4 EGYPTIAN HIEROGLYPH-13BB4 +<U00013BB5> /xf0/x93/xae/xb5 EGYPTIAN HIEROGLYPH-13BB5 +<U00013BB6> /xf0/x93/xae/xb6 EGYPTIAN HIEROGLYPH-13BB6 +<U00013BB7> /xf0/x93/xae/xb7 EGYPTIAN HIEROGLYPH-13BB7 +<U00013BB8> /xf0/x93/xae/xb8 EGYPTIAN HIEROGLYPH-13BB8 +<U00013BB9> /xf0/x93/xae/xb9 EGYPTIAN HIEROGLYPH-13BB9 +<U00013BBA> /xf0/x93/xae/xba EGYPTIAN HIEROGLYPH-13BBA +<U00013BBB> /xf0/x93/xae/xbb EGYPTIAN HIEROGLYPH-13BBB +<U00013BBC> /xf0/x93/xae/xbc EGYPTIAN HIEROGLYPH-13BBC +<U00013BBD> /xf0/x93/xae/xbd EGYPTIAN HIEROGLYPH-13BBD +<U00013BBE> /xf0/x93/xae/xbe EGYPTIAN HIEROGLYPH-13BBE +<U00013BBF> /xf0/x93/xae/xbf EGYPTIAN HIEROGLYPH-13BBF +<U00013BC0> /xf0/x93/xaf/x80 EGYPTIAN HIEROGLYPH-13BC0 +<U00013BC1> /xf0/x93/xaf/x81 EGYPTIAN HIEROGLYPH-13BC1 +<U00013BC2> /xf0/x93/xaf/x82 EGYPTIAN HIEROGLYPH-13BC2 +<U00013BC3> /xf0/x93/xaf/x83 EGYPTIAN HIEROGLYPH-13BC3 +<U00013BC4> /xf0/x93/xaf/x84 EGYPTIAN HIEROGLYPH-13BC4 +<U00013BC5> /xf0/x93/xaf/x85 EGYPTIAN HIEROGLYPH-13BC5 +<U00013BC6> /xf0/x93/xaf/x86 EGYPTIAN HIEROGLYPH-13BC6 +<U00013BC7> /xf0/x93/xaf/x87 EGYPTIAN HIEROGLYPH-13BC7 +<U00013BC8> /xf0/x93/xaf/x88 EGYPTIAN HIEROGLYPH-13BC8 +<U00013BC9> /xf0/x93/xaf/x89 EGYPTIAN HIEROGLYPH-13BC9 +<U00013BCA> /xf0/x93/xaf/x8a EGYPTIAN HIEROGLYPH-13BCA +<U00013BCB> /xf0/x93/xaf/x8b EGYPTIAN HIEROGLYPH-13BCB +<U00013BCC> /xf0/x93/xaf/x8c EGYPTIAN HIEROGLYPH-13BCC +<U00013BCD> /xf0/x93/xaf/x8d EGYPTIAN HIEROGLYPH-13BCD +<U00013BCE> /xf0/x93/xaf/x8e EGYPTIAN HIEROGLYPH-13BCE +<U00013BCF> /xf0/x93/xaf/x8f EGYPTIAN HIEROGLYPH-13BCF +<U00013BD0> /xf0/x93/xaf/x90 EGYPTIAN HIEROGLYPH-13BD0 +<U00013BD1> /xf0/x93/xaf/x91 EGYPTIAN HIEROGLYPH-13BD1 +<U00013BD2> /xf0/x93/xaf/x92 EGYPTIAN HIEROGLYPH-13BD2 +<U00013BD3> /xf0/x93/xaf/x93 EGYPTIAN HIEROGLYPH-13BD3 +<U00013BD4> /xf0/x93/xaf/x94 EGYPTIAN HIEROGLYPH-13BD4 +<U00013BD5> /xf0/x93/xaf/x95 EGYPTIAN HIEROGLYPH-13BD5 +<U00013BD6> /xf0/x93/xaf/x96 EGYPTIAN HIEROGLYPH-13BD6 +<U00013BD7> /xf0/x93/xaf/x97 EGYPTIAN HIEROGLYPH-13BD7 +<U00013BD8> /xf0/x93/xaf/x98 EGYPTIAN HIEROGLYPH-13BD8 +<U00013BD9> /xf0/x93/xaf/x99 EGYPTIAN HIEROGLYPH-13BD9 +<U00013BDA> /xf0/x93/xaf/x9a EGYPTIAN HIEROGLYPH-13BDA +<U00013BDB> /xf0/x93/xaf/x9b EGYPTIAN HIEROGLYPH-13BDB +<U00013BDC> /xf0/x93/xaf/x9c EGYPTIAN HIEROGLYPH-13BDC +<U00013BDD> /xf0/x93/xaf/x9d EGYPTIAN HIEROGLYPH-13BDD +<U00013BDE> /xf0/x93/xaf/x9e EGYPTIAN HIEROGLYPH-13BDE +<U00013BDF> /xf0/x93/xaf/x9f EGYPTIAN HIEROGLYPH-13BDF +<U00013BE0> /xf0/x93/xaf/xa0 EGYPTIAN HIEROGLYPH-13BE0 +<U00013BE1> /xf0/x93/xaf/xa1 EGYPTIAN HIEROGLYPH-13BE1 +<U00013BE2> /xf0/x93/xaf/xa2 EGYPTIAN HIEROGLYPH-13BE2 +<U00013BE3> /xf0/x93/xaf/xa3 EGYPTIAN HIEROGLYPH-13BE3 +<U00013BE4> /xf0/x93/xaf/xa4 EGYPTIAN HIEROGLYPH-13BE4 +<U00013BE5> /xf0/x93/xaf/xa5 EGYPTIAN HIEROGLYPH-13BE5 +<U00013BE6> /xf0/x93/xaf/xa6 EGYPTIAN HIEROGLYPH-13BE6 +<U00013BE7> /xf0/x93/xaf/xa7 EGYPTIAN HIEROGLYPH-13BE7 +<U00013BE8> /xf0/x93/xaf/xa8 EGYPTIAN HIEROGLYPH-13BE8 +<U00013BE9> /xf0/x93/xaf/xa9 EGYPTIAN HIEROGLYPH-13BE9 +<U00013BEA> /xf0/x93/xaf/xaa EGYPTIAN HIEROGLYPH-13BEA +<U00013BEB> /xf0/x93/xaf/xab EGYPTIAN HIEROGLYPH-13BEB +<U00013BEC> /xf0/x93/xaf/xac EGYPTIAN HIEROGLYPH-13BEC +<U00013BED> /xf0/x93/xaf/xad EGYPTIAN HIEROGLYPH-13BED +<U00013BEE> /xf0/x93/xaf/xae EGYPTIAN HIEROGLYPH-13BEE +<U00013BEF> /xf0/x93/xaf/xaf EGYPTIAN HIEROGLYPH-13BEF +<U00013BF0> /xf0/x93/xaf/xb0 EGYPTIAN HIEROGLYPH-13BF0 +<U00013BF1> /xf0/x93/xaf/xb1 EGYPTIAN HIEROGLYPH-13BF1 +<U00013BF2> /xf0/x93/xaf/xb2 EGYPTIAN HIEROGLYPH-13BF2 +<U00013BF3> /xf0/x93/xaf/xb3 EGYPTIAN HIEROGLYPH-13BF3 +<U00013BF4> /xf0/x93/xaf/xb4 EGYPTIAN HIEROGLYPH-13BF4 +<U00013BF5> /xf0/x93/xaf/xb5 EGYPTIAN HIEROGLYPH-13BF5 +<U00013BF6> /xf0/x93/xaf/xb6 EGYPTIAN HIEROGLYPH-13BF6 +<U00013BF7> /xf0/x93/xaf/xb7 EGYPTIAN HIEROGLYPH-13BF7 +<U00013BF8> /xf0/x93/xaf/xb8 EGYPTIAN HIEROGLYPH-13BF8 +<U00013BF9> /xf0/x93/xaf/xb9 EGYPTIAN HIEROGLYPH-13BF9 +<U00013BFA> /xf0/x93/xaf/xba EGYPTIAN HIEROGLYPH-13BFA +<U00013BFB> /xf0/x93/xaf/xbb EGYPTIAN HIEROGLYPH-13BFB +<U00013BFC> /xf0/x93/xaf/xbc EGYPTIAN HIEROGLYPH-13BFC +<U00013BFD> /xf0/x93/xaf/xbd EGYPTIAN HIEROGLYPH-13BFD +<U00013BFE> /xf0/x93/xaf/xbe EGYPTIAN HIEROGLYPH-13BFE +<U00013BFF> /xf0/x93/xaf/xbf EGYPTIAN HIEROGLYPH-13BFF +<U00013C00> /xf0/x93/xb0/x80 EGYPTIAN HIEROGLYPH-13C00 +<U00013C01> /xf0/x93/xb0/x81 EGYPTIAN HIEROGLYPH-13C01 +<U00013C02> /xf0/x93/xb0/x82 EGYPTIAN HIEROGLYPH-13C02 +<U00013C03> /xf0/x93/xb0/x83 EGYPTIAN HIEROGLYPH-13C03 +<U00013C04> /xf0/x93/xb0/x84 EGYPTIAN HIEROGLYPH-13C04 +<U00013C05> /xf0/x93/xb0/x85 EGYPTIAN HIEROGLYPH-13C05 +<U00013C06> /xf0/x93/xb0/x86 EGYPTIAN HIEROGLYPH-13C06 +<U00013C07> /xf0/x93/xb0/x87 EGYPTIAN HIEROGLYPH-13C07 +<U00013C08> /xf0/x93/xb0/x88 EGYPTIAN HIEROGLYPH-13C08 +<U00013C09> /xf0/x93/xb0/x89 EGYPTIAN HIEROGLYPH-13C09 +<U00013C0A> /xf0/x93/xb0/x8a EGYPTIAN HIEROGLYPH-13C0A +<U00013C0B> /xf0/x93/xb0/x8b EGYPTIAN HIEROGLYPH-13C0B +<U00013C0C> /xf0/x93/xb0/x8c EGYPTIAN HIEROGLYPH-13C0C +<U00013C0D> /xf0/x93/xb0/x8d EGYPTIAN HIEROGLYPH-13C0D +<U00013C0E> /xf0/x93/xb0/x8e EGYPTIAN HIEROGLYPH-13C0E +<U00013C0F> /xf0/x93/xb0/x8f EGYPTIAN HIEROGLYPH-13C0F +<U00013C10> /xf0/x93/xb0/x90 EGYPTIAN HIEROGLYPH-13C10 +<U00013C11> /xf0/x93/xb0/x91 EGYPTIAN HIEROGLYPH-13C11 +<U00013C12> /xf0/x93/xb0/x92 EGYPTIAN HIEROGLYPH-13C12 +<U00013C13> /xf0/x93/xb0/x93 EGYPTIAN HIEROGLYPH-13C13 +<U00013C14> /xf0/x93/xb0/x94 EGYPTIAN HIEROGLYPH-13C14 +<U00013C15> /xf0/x93/xb0/x95 EGYPTIAN HIEROGLYPH-13C15 +<U00013C16> /xf0/x93/xb0/x96 EGYPTIAN HIEROGLYPH-13C16 +<U00013C17> /xf0/x93/xb0/x97 EGYPTIAN HIEROGLYPH-13C17 +<U00013C18> /xf0/x93/xb0/x98 EGYPTIAN HIEROGLYPH-13C18 +<U00013C19> /xf0/x93/xb0/x99 EGYPTIAN HIEROGLYPH-13C19 +<U00013C1A> /xf0/x93/xb0/x9a EGYPTIAN HIEROGLYPH-13C1A +<U00013C1B> /xf0/x93/xb0/x9b EGYPTIAN HIEROGLYPH-13C1B +<U00013C1C> /xf0/x93/xb0/x9c EGYPTIAN HIEROGLYPH-13C1C +<U00013C1D> /xf0/x93/xb0/x9d EGYPTIAN HIEROGLYPH-13C1D +<U00013C1E> /xf0/x93/xb0/x9e EGYPTIAN HIEROGLYPH-13C1E +<U00013C1F> /xf0/x93/xb0/x9f EGYPTIAN HIEROGLYPH-13C1F +<U00013C20> /xf0/x93/xb0/xa0 EGYPTIAN HIEROGLYPH-13C20 +<U00013C21> /xf0/x93/xb0/xa1 EGYPTIAN HIEROGLYPH-13C21 +<U00013C22> /xf0/x93/xb0/xa2 EGYPTIAN HIEROGLYPH-13C22 +<U00013C23> /xf0/x93/xb0/xa3 EGYPTIAN HIEROGLYPH-13C23 +<U00013C24> /xf0/x93/xb0/xa4 EGYPTIAN HIEROGLYPH-13C24 +<U00013C25> /xf0/x93/xb0/xa5 EGYPTIAN HIEROGLYPH-13C25 +<U00013C26> /xf0/x93/xb0/xa6 EGYPTIAN HIEROGLYPH-13C26 +<U00013C27> /xf0/x93/xb0/xa7 EGYPTIAN HIEROGLYPH-13C27 +<U00013C28> /xf0/x93/xb0/xa8 EGYPTIAN HIEROGLYPH-13C28 +<U00013C29> /xf0/x93/xb0/xa9 EGYPTIAN HIEROGLYPH-13C29 +<U00013C2A> /xf0/x93/xb0/xaa EGYPTIAN HIEROGLYPH-13C2A +<U00013C2B> /xf0/x93/xb0/xab EGYPTIAN HIEROGLYPH-13C2B +<U00013C2C> /xf0/x93/xb0/xac EGYPTIAN HIEROGLYPH-13C2C +<U00013C2D> /xf0/x93/xb0/xad EGYPTIAN HIEROGLYPH-13C2D +<U00013C2E> /xf0/x93/xb0/xae EGYPTIAN HIEROGLYPH-13C2E +<U00013C2F> /xf0/x93/xb0/xaf EGYPTIAN HIEROGLYPH-13C2F +<U00013C30> /xf0/x93/xb0/xb0 EGYPTIAN HIEROGLYPH-13C30 +<U00013C31> /xf0/x93/xb0/xb1 EGYPTIAN HIEROGLYPH-13C31 +<U00013C32> /xf0/x93/xb0/xb2 EGYPTIAN HIEROGLYPH-13C32 +<U00013C33> /xf0/x93/xb0/xb3 EGYPTIAN HIEROGLYPH-13C33 +<U00013C34> /xf0/x93/xb0/xb4 EGYPTIAN HIEROGLYPH-13C34 +<U00013C35> /xf0/x93/xb0/xb5 EGYPTIAN HIEROGLYPH-13C35 +<U00013C36> /xf0/x93/xb0/xb6 EGYPTIAN HIEROGLYPH-13C36 +<U00013C37> /xf0/x93/xb0/xb7 EGYPTIAN HIEROGLYPH-13C37 +<U00013C38> /xf0/x93/xb0/xb8 EGYPTIAN HIEROGLYPH-13C38 +<U00013C39> /xf0/x93/xb0/xb9 EGYPTIAN HIEROGLYPH-13C39 +<U00013C3A> /xf0/x93/xb0/xba EGYPTIAN HIEROGLYPH-13C3A +<U00013C3B> /xf0/x93/xb0/xbb EGYPTIAN HIEROGLYPH-13C3B +<U00013C3C> /xf0/x93/xb0/xbc EGYPTIAN HIEROGLYPH-13C3C +<U00013C3D> /xf0/x93/xb0/xbd EGYPTIAN HIEROGLYPH-13C3D +<U00013C3E> /xf0/x93/xb0/xbe EGYPTIAN HIEROGLYPH-13C3E +<U00013C3F> /xf0/x93/xb0/xbf EGYPTIAN HIEROGLYPH-13C3F +<U00013C40> /xf0/x93/xb1/x80 EGYPTIAN HIEROGLYPH-13C40 +<U00013C41> /xf0/x93/xb1/x81 EGYPTIAN HIEROGLYPH-13C41 +<U00013C42> /xf0/x93/xb1/x82 EGYPTIAN HIEROGLYPH-13C42 +<U00013C43> /xf0/x93/xb1/x83 EGYPTIAN HIEROGLYPH-13C43 +<U00013C44> /xf0/x93/xb1/x84 EGYPTIAN HIEROGLYPH-13C44 +<U00013C45> /xf0/x93/xb1/x85 EGYPTIAN HIEROGLYPH-13C45 +<U00013C46> /xf0/x93/xb1/x86 EGYPTIAN HIEROGLYPH-13C46 +<U00013C47> /xf0/x93/xb1/x87 EGYPTIAN HIEROGLYPH-13C47 +<U00013C48> /xf0/x93/xb1/x88 EGYPTIAN HIEROGLYPH-13C48 +<U00013C49> /xf0/x93/xb1/x89 EGYPTIAN HIEROGLYPH-13C49 +<U00013C4A> /xf0/x93/xb1/x8a EGYPTIAN HIEROGLYPH-13C4A +<U00013C4B> /xf0/x93/xb1/x8b EGYPTIAN HIEROGLYPH-13C4B +<U00013C4C> /xf0/x93/xb1/x8c EGYPTIAN HIEROGLYPH-13C4C +<U00013C4D> /xf0/x93/xb1/x8d EGYPTIAN HIEROGLYPH-13C4D +<U00013C4E> /xf0/x93/xb1/x8e EGYPTIAN HIEROGLYPH-13C4E +<U00013C4F> /xf0/x93/xb1/x8f EGYPTIAN HIEROGLYPH-13C4F +<U00013C50> /xf0/x93/xb1/x90 EGYPTIAN HIEROGLYPH-13C50 +<U00013C51> /xf0/x93/xb1/x91 EGYPTIAN HIEROGLYPH-13C51 +<U00013C52> /xf0/x93/xb1/x92 EGYPTIAN HIEROGLYPH-13C52 +<U00013C53> /xf0/x93/xb1/x93 EGYPTIAN HIEROGLYPH-13C53 +<U00013C54> /xf0/x93/xb1/x94 EGYPTIAN HIEROGLYPH-13C54 +<U00013C55> /xf0/x93/xb1/x95 EGYPTIAN HIEROGLYPH-13C55 +<U00013C56> /xf0/x93/xb1/x96 EGYPTIAN HIEROGLYPH-13C56 +<U00013C57> /xf0/x93/xb1/x97 EGYPTIAN HIEROGLYPH-13C57 +<U00013C58> /xf0/x93/xb1/x98 EGYPTIAN HIEROGLYPH-13C58 +<U00013C59> /xf0/x93/xb1/x99 EGYPTIAN HIEROGLYPH-13C59 +<U00013C5A> /xf0/x93/xb1/x9a EGYPTIAN HIEROGLYPH-13C5A +<U00013C5B> /xf0/x93/xb1/x9b EGYPTIAN HIEROGLYPH-13C5B +<U00013C5C> /xf0/x93/xb1/x9c EGYPTIAN HIEROGLYPH-13C5C +<U00013C5D> /xf0/x93/xb1/x9d EGYPTIAN HIEROGLYPH-13C5D +<U00013C5E> /xf0/x93/xb1/x9e EGYPTIAN HIEROGLYPH-13C5E +<U00013C5F> /xf0/x93/xb1/x9f EGYPTIAN HIEROGLYPH-13C5F +<U00013C60> /xf0/x93/xb1/xa0 EGYPTIAN HIEROGLYPH-13C60 +<U00013C61> /xf0/x93/xb1/xa1 EGYPTIAN HIEROGLYPH-13C61 +<U00013C62> /xf0/x93/xb1/xa2 EGYPTIAN HIEROGLYPH-13C62 +<U00013C63> /xf0/x93/xb1/xa3 EGYPTIAN HIEROGLYPH-13C63 +<U00013C64> /xf0/x93/xb1/xa4 EGYPTIAN HIEROGLYPH-13C64 +<U00013C65> /xf0/x93/xb1/xa5 EGYPTIAN HIEROGLYPH-13C65 +<U00013C66> /xf0/x93/xb1/xa6 EGYPTIAN HIEROGLYPH-13C66 +<U00013C67> /xf0/x93/xb1/xa7 EGYPTIAN HIEROGLYPH-13C67 +<U00013C68> /xf0/x93/xb1/xa8 EGYPTIAN HIEROGLYPH-13C68 +<U00013C69> /xf0/x93/xb1/xa9 EGYPTIAN HIEROGLYPH-13C69 +<U00013C6A> /xf0/x93/xb1/xaa EGYPTIAN HIEROGLYPH-13C6A +<U00013C6B> /xf0/x93/xb1/xab EGYPTIAN HIEROGLYPH-13C6B +<U00013C6C> /xf0/x93/xb1/xac EGYPTIAN HIEROGLYPH-13C6C +<U00013C6D> /xf0/x93/xb1/xad EGYPTIAN HIEROGLYPH-13C6D +<U00013C6E> /xf0/x93/xb1/xae EGYPTIAN HIEROGLYPH-13C6E +<U00013C6F> /xf0/x93/xb1/xaf EGYPTIAN HIEROGLYPH-13C6F +<U00013C70> /xf0/x93/xb1/xb0 EGYPTIAN HIEROGLYPH-13C70 +<U00013C71> /xf0/x93/xb1/xb1 EGYPTIAN HIEROGLYPH-13C71 +<U00013C72> /xf0/x93/xb1/xb2 EGYPTIAN HIEROGLYPH-13C72 +<U00013C73> /xf0/x93/xb1/xb3 EGYPTIAN HIEROGLYPH-13C73 +<U00013C74> /xf0/x93/xb1/xb4 EGYPTIAN HIEROGLYPH-13C74 +<U00013C75> /xf0/x93/xb1/xb5 EGYPTIAN HIEROGLYPH-13C75 +<U00013C76> /xf0/x93/xb1/xb6 EGYPTIAN HIEROGLYPH-13C76 +<U00013C77> /xf0/x93/xb1/xb7 EGYPTIAN HIEROGLYPH-13C77 +<U00013C78> /xf0/x93/xb1/xb8 EGYPTIAN HIEROGLYPH-13C78 +<U00013C79> /xf0/x93/xb1/xb9 EGYPTIAN HIEROGLYPH-13C79 +<U00013C7A> /xf0/x93/xb1/xba EGYPTIAN HIEROGLYPH-13C7A +<U00013C7B> /xf0/x93/xb1/xbb EGYPTIAN HIEROGLYPH-13C7B +<U00013C7C> /xf0/x93/xb1/xbc EGYPTIAN HIEROGLYPH-13C7C +<U00013C7D> /xf0/x93/xb1/xbd EGYPTIAN HIEROGLYPH-13C7D +<U00013C7E> /xf0/x93/xb1/xbe EGYPTIAN HIEROGLYPH-13C7E +<U00013C7F> /xf0/x93/xb1/xbf EGYPTIAN HIEROGLYPH-13C7F +<U00013C80> /xf0/x93/xb2/x80 EGYPTIAN HIEROGLYPH-13C80 +<U00013C81> /xf0/x93/xb2/x81 EGYPTIAN HIEROGLYPH-13C81 +<U00013C82> /xf0/x93/xb2/x82 EGYPTIAN HIEROGLYPH-13C82 +<U00013C83> /xf0/x93/xb2/x83 EGYPTIAN HIEROGLYPH-13C83 +<U00013C84> /xf0/x93/xb2/x84 EGYPTIAN HIEROGLYPH-13C84 +<U00013C85> /xf0/x93/xb2/x85 EGYPTIAN HIEROGLYPH-13C85 +<U00013C86> /xf0/x93/xb2/x86 EGYPTIAN HIEROGLYPH-13C86 +<U00013C87> /xf0/x93/xb2/x87 EGYPTIAN HIEROGLYPH-13C87 +<U00013C88> /xf0/x93/xb2/x88 EGYPTIAN HIEROGLYPH-13C88 +<U00013C89> /xf0/x93/xb2/x89 EGYPTIAN HIEROGLYPH-13C89 +<U00013C8A> /xf0/x93/xb2/x8a EGYPTIAN HIEROGLYPH-13C8A +<U00013C8B> /xf0/x93/xb2/x8b EGYPTIAN HIEROGLYPH-13C8B +<U00013C8C> /xf0/x93/xb2/x8c EGYPTIAN HIEROGLYPH-13C8C +<U00013C8D> /xf0/x93/xb2/x8d EGYPTIAN HIEROGLYPH-13C8D +<U00013C8E> /xf0/x93/xb2/x8e EGYPTIAN HIEROGLYPH-13C8E +<U00013C8F> /xf0/x93/xb2/x8f EGYPTIAN HIEROGLYPH-13C8F +<U00013C90> /xf0/x93/xb2/x90 EGYPTIAN HIEROGLYPH-13C90 +<U00013C91> /xf0/x93/xb2/x91 EGYPTIAN HIEROGLYPH-13C91 +<U00013C92> /xf0/x93/xb2/x92 EGYPTIAN HIEROGLYPH-13C92 +<U00013C93> /xf0/x93/xb2/x93 EGYPTIAN HIEROGLYPH-13C93 +<U00013C94> /xf0/x93/xb2/x94 EGYPTIAN HIEROGLYPH-13C94 +<U00013C95> /xf0/x93/xb2/x95 EGYPTIAN HIEROGLYPH-13C95 +<U00013C96> /xf0/x93/xb2/x96 EGYPTIAN HIEROGLYPH-13C96 +<U00013C97> /xf0/x93/xb2/x97 EGYPTIAN HIEROGLYPH-13C97 +<U00013C98> /xf0/x93/xb2/x98 EGYPTIAN HIEROGLYPH-13C98 +<U00013C99> /xf0/x93/xb2/x99 EGYPTIAN HIEROGLYPH-13C99 +<U00013C9A> /xf0/x93/xb2/x9a EGYPTIAN HIEROGLYPH-13C9A +<U00013C9B> /xf0/x93/xb2/x9b EGYPTIAN HIEROGLYPH-13C9B +<U00013C9C> /xf0/x93/xb2/x9c EGYPTIAN HIEROGLYPH-13C9C +<U00013C9D> /xf0/x93/xb2/x9d EGYPTIAN HIEROGLYPH-13C9D +<U00013C9E> /xf0/x93/xb2/x9e EGYPTIAN HIEROGLYPH-13C9E +<U00013C9F> /xf0/x93/xb2/x9f EGYPTIAN HIEROGLYPH-13C9F +<U00013CA0> /xf0/x93/xb2/xa0 EGYPTIAN HIEROGLYPH-13CA0 +<U00013CA1> /xf0/x93/xb2/xa1 EGYPTIAN HIEROGLYPH-13CA1 +<U00013CA2> /xf0/x93/xb2/xa2 EGYPTIAN HIEROGLYPH-13CA2 +<U00013CA3> /xf0/x93/xb2/xa3 EGYPTIAN HIEROGLYPH-13CA3 +<U00013CA4> /xf0/x93/xb2/xa4 EGYPTIAN HIEROGLYPH-13CA4 +<U00013CA5> /xf0/x93/xb2/xa5 EGYPTIAN HIEROGLYPH-13CA5 +<U00013CA6> /xf0/x93/xb2/xa6 EGYPTIAN HIEROGLYPH-13CA6 +<U00013CA7> /xf0/x93/xb2/xa7 EGYPTIAN HIEROGLYPH-13CA7 +<U00013CA8> /xf0/x93/xb2/xa8 EGYPTIAN HIEROGLYPH-13CA8 +<U00013CA9> /xf0/x93/xb2/xa9 EGYPTIAN HIEROGLYPH-13CA9 +<U00013CAA> /xf0/x93/xb2/xaa EGYPTIAN HIEROGLYPH-13CAA +<U00013CAB> /xf0/x93/xb2/xab EGYPTIAN HIEROGLYPH-13CAB +<U00013CAC> /xf0/x93/xb2/xac EGYPTIAN HIEROGLYPH-13CAC +<U00013CAD> /xf0/x93/xb2/xad EGYPTIAN HIEROGLYPH-13CAD +<U00013CAE> /xf0/x93/xb2/xae EGYPTIAN HIEROGLYPH-13CAE +<U00013CAF> /xf0/x93/xb2/xaf EGYPTIAN HIEROGLYPH-13CAF +<U00013CB0> /xf0/x93/xb2/xb0 EGYPTIAN HIEROGLYPH-13CB0 +<U00013CB1> /xf0/x93/xb2/xb1 EGYPTIAN HIEROGLYPH-13CB1 +<U00013CB2> /xf0/x93/xb2/xb2 EGYPTIAN HIEROGLYPH-13CB2 +<U00013CB3> /xf0/x93/xb2/xb3 EGYPTIAN HIEROGLYPH-13CB3 +<U00013CB4> /xf0/x93/xb2/xb4 EGYPTIAN HIEROGLYPH-13CB4 +<U00013CB5> /xf0/x93/xb2/xb5 EGYPTIAN HIEROGLYPH-13CB5 +<U00013CB6> /xf0/x93/xb2/xb6 EGYPTIAN HIEROGLYPH-13CB6 +<U00013CB7> /xf0/x93/xb2/xb7 EGYPTIAN HIEROGLYPH-13CB7 +<U00013CB8> /xf0/x93/xb2/xb8 EGYPTIAN HIEROGLYPH-13CB8 +<U00013CB9> /xf0/x93/xb2/xb9 EGYPTIAN HIEROGLYPH-13CB9 +<U00013CBA> /xf0/x93/xb2/xba EGYPTIAN HIEROGLYPH-13CBA +<U00013CBB> /xf0/x93/xb2/xbb EGYPTIAN HIEROGLYPH-13CBB +<U00013CBC> /xf0/x93/xb2/xbc EGYPTIAN HIEROGLYPH-13CBC +<U00013CBD> /xf0/x93/xb2/xbd EGYPTIAN HIEROGLYPH-13CBD +<U00013CBE> /xf0/x93/xb2/xbe EGYPTIAN HIEROGLYPH-13CBE +<U00013CBF> /xf0/x93/xb2/xbf EGYPTIAN HIEROGLYPH-13CBF +<U00013CC0> /xf0/x93/xb3/x80 EGYPTIAN HIEROGLYPH-13CC0 +<U00013CC1> /xf0/x93/xb3/x81 EGYPTIAN HIEROGLYPH-13CC1 +<U00013CC2> /xf0/x93/xb3/x82 EGYPTIAN HIEROGLYPH-13CC2 +<U00013CC3> /xf0/x93/xb3/x83 EGYPTIAN HIEROGLYPH-13CC3 +<U00013CC4> /xf0/x93/xb3/x84 EGYPTIAN HIEROGLYPH-13CC4 +<U00013CC5> /xf0/x93/xb3/x85 EGYPTIAN HIEROGLYPH-13CC5 +<U00013CC6> /xf0/x93/xb3/x86 EGYPTIAN HIEROGLYPH-13CC6 +<U00013CC7> /xf0/x93/xb3/x87 EGYPTIAN HIEROGLYPH-13CC7 +<U00013CC8> /xf0/x93/xb3/x88 EGYPTIAN HIEROGLYPH-13CC8 +<U00013CC9> /xf0/x93/xb3/x89 EGYPTIAN HIEROGLYPH-13CC9 +<U00013CCA> /xf0/x93/xb3/x8a EGYPTIAN HIEROGLYPH-13CCA +<U00013CCB> /xf0/x93/xb3/x8b EGYPTIAN HIEROGLYPH-13CCB +<U00013CCC> /xf0/x93/xb3/x8c EGYPTIAN HIEROGLYPH-13CCC +<U00013CCD> /xf0/x93/xb3/x8d EGYPTIAN HIEROGLYPH-13CCD +<U00013CCE> /xf0/x93/xb3/x8e EGYPTIAN HIEROGLYPH-13CCE +<U00013CCF> /xf0/x93/xb3/x8f EGYPTIAN HIEROGLYPH-13CCF +<U00013CD0> /xf0/x93/xb3/x90 EGYPTIAN HIEROGLYPH-13CD0 +<U00013CD1> /xf0/x93/xb3/x91 EGYPTIAN HIEROGLYPH-13CD1 +<U00013CD2> /xf0/x93/xb3/x92 EGYPTIAN HIEROGLYPH-13CD2 +<U00013CD3> /xf0/x93/xb3/x93 EGYPTIAN HIEROGLYPH-13CD3 +<U00013CD4> /xf0/x93/xb3/x94 EGYPTIAN HIEROGLYPH-13CD4 +<U00013CD5> /xf0/x93/xb3/x95 EGYPTIAN HIEROGLYPH-13CD5 +<U00013CD6> /xf0/x93/xb3/x96 EGYPTIAN HIEROGLYPH-13CD6 +<U00013CD7> /xf0/x93/xb3/x97 EGYPTIAN HIEROGLYPH-13CD7 +<U00013CD8> /xf0/x93/xb3/x98 EGYPTIAN HIEROGLYPH-13CD8 +<U00013CD9> /xf0/x93/xb3/x99 EGYPTIAN HIEROGLYPH-13CD9 +<U00013CDA> /xf0/x93/xb3/x9a EGYPTIAN HIEROGLYPH-13CDA +<U00013CDB> /xf0/x93/xb3/x9b EGYPTIAN HIEROGLYPH-13CDB +<U00013CDC> /xf0/x93/xb3/x9c EGYPTIAN HIEROGLYPH-13CDC +<U00013CDD> /xf0/x93/xb3/x9d EGYPTIAN HIEROGLYPH-13CDD +<U00013CDE> /xf0/x93/xb3/x9e EGYPTIAN HIEROGLYPH-13CDE +<U00013CDF> /xf0/x93/xb3/x9f EGYPTIAN HIEROGLYPH-13CDF +<U00013CE0> /xf0/x93/xb3/xa0 EGYPTIAN HIEROGLYPH-13CE0 +<U00013CE1> /xf0/x93/xb3/xa1 EGYPTIAN HIEROGLYPH-13CE1 +<U00013CE2> /xf0/x93/xb3/xa2 EGYPTIAN HIEROGLYPH-13CE2 +<U00013CE3> /xf0/x93/xb3/xa3 EGYPTIAN HIEROGLYPH-13CE3 +<U00013CE4> /xf0/x93/xb3/xa4 EGYPTIAN HIEROGLYPH-13CE4 +<U00013CE5> /xf0/x93/xb3/xa5 EGYPTIAN HIEROGLYPH-13CE5 +<U00013CE6> /xf0/x93/xb3/xa6 EGYPTIAN HIEROGLYPH-13CE6 +<U00013CE7> /xf0/x93/xb3/xa7 EGYPTIAN HIEROGLYPH-13CE7 +<U00013CE8> /xf0/x93/xb3/xa8 EGYPTIAN HIEROGLYPH-13CE8 +<U00013CE9> /xf0/x93/xb3/xa9 EGYPTIAN HIEROGLYPH-13CE9 +<U00013CEA> /xf0/x93/xb3/xaa EGYPTIAN HIEROGLYPH-13CEA +<U00013CEB> /xf0/x93/xb3/xab EGYPTIAN HIEROGLYPH-13CEB +<U00013CEC> /xf0/x93/xb3/xac EGYPTIAN HIEROGLYPH-13CEC +<U00013CED> /xf0/x93/xb3/xad EGYPTIAN HIEROGLYPH-13CED +<U00013CEE> /xf0/x93/xb3/xae EGYPTIAN HIEROGLYPH-13CEE +<U00013CEF> /xf0/x93/xb3/xaf EGYPTIAN HIEROGLYPH-13CEF +<U00013CF0> /xf0/x93/xb3/xb0 EGYPTIAN HIEROGLYPH-13CF0 +<U00013CF1> /xf0/x93/xb3/xb1 EGYPTIAN HIEROGLYPH-13CF1 +<U00013CF2> /xf0/x93/xb3/xb2 EGYPTIAN HIEROGLYPH-13CF2 +<U00013CF3> /xf0/x93/xb3/xb3 EGYPTIAN HIEROGLYPH-13CF3 +<U00013CF4> /xf0/x93/xb3/xb4 EGYPTIAN HIEROGLYPH-13CF4 +<U00013CF5> /xf0/x93/xb3/xb5 EGYPTIAN HIEROGLYPH-13CF5 +<U00013CF6> /xf0/x93/xb3/xb6 EGYPTIAN HIEROGLYPH-13CF6 +<U00013CF7> /xf0/x93/xb3/xb7 EGYPTIAN HIEROGLYPH-13CF7 +<U00013CF8> /xf0/x93/xb3/xb8 EGYPTIAN HIEROGLYPH-13CF8 +<U00013CF9> /xf0/x93/xb3/xb9 EGYPTIAN HIEROGLYPH-13CF9 +<U00013CFA> /xf0/x93/xb3/xba EGYPTIAN HIEROGLYPH-13CFA +<U00013CFB> /xf0/x93/xb3/xbb EGYPTIAN HIEROGLYPH-13CFB +<U00013CFC> /xf0/x93/xb3/xbc EGYPTIAN HIEROGLYPH-13CFC +<U00013CFD> /xf0/x93/xb3/xbd EGYPTIAN HIEROGLYPH-13CFD +<U00013CFE> /xf0/x93/xb3/xbe EGYPTIAN HIEROGLYPH-13CFE +<U00013CFF> /xf0/x93/xb3/xbf EGYPTIAN HIEROGLYPH-13CFF +<U00013D00> /xf0/x93/xb4/x80 EGYPTIAN HIEROGLYPH-13D00 +<U00013D01> /xf0/x93/xb4/x81 EGYPTIAN HIEROGLYPH-13D01 +<U00013D02> /xf0/x93/xb4/x82 EGYPTIAN HIEROGLYPH-13D02 +<U00013D03> /xf0/x93/xb4/x83 EGYPTIAN HIEROGLYPH-13D03 +<U00013D04> /xf0/x93/xb4/x84 EGYPTIAN HIEROGLYPH-13D04 +<U00013D05> /xf0/x93/xb4/x85 EGYPTIAN HIEROGLYPH-13D05 +<U00013D06> /xf0/x93/xb4/x86 EGYPTIAN HIEROGLYPH-13D06 +<U00013D07> /xf0/x93/xb4/x87 EGYPTIAN HIEROGLYPH-13D07 +<U00013D08> /xf0/x93/xb4/x88 EGYPTIAN HIEROGLYPH-13D08 +<U00013D09> /xf0/x93/xb4/x89 EGYPTIAN HIEROGLYPH-13D09 +<U00013D0A> /xf0/x93/xb4/x8a EGYPTIAN HIEROGLYPH-13D0A +<U00013D0B> /xf0/x93/xb4/x8b EGYPTIAN HIEROGLYPH-13D0B +<U00013D0C> /xf0/x93/xb4/x8c EGYPTIAN HIEROGLYPH-13D0C +<U00013D0D> /xf0/x93/xb4/x8d EGYPTIAN HIEROGLYPH-13D0D +<U00013D0E> /xf0/x93/xb4/x8e EGYPTIAN HIEROGLYPH-13D0E +<U00013D0F> /xf0/x93/xb4/x8f EGYPTIAN HIEROGLYPH-13D0F +<U00013D10> /xf0/x93/xb4/x90 EGYPTIAN HIEROGLYPH-13D10 +<U00013D11> /xf0/x93/xb4/x91 EGYPTIAN HIEROGLYPH-13D11 +<U00013D12> /xf0/x93/xb4/x92 EGYPTIAN HIEROGLYPH-13D12 +<U00013D13> /xf0/x93/xb4/x93 EGYPTIAN HIEROGLYPH-13D13 +<U00013D14> /xf0/x93/xb4/x94 EGYPTIAN HIEROGLYPH-13D14 +<U00013D15> /xf0/x93/xb4/x95 EGYPTIAN HIEROGLYPH-13D15 +<U00013D16> /xf0/x93/xb4/x96 EGYPTIAN HIEROGLYPH-13D16 +<U00013D17> /xf0/x93/xb4/x97 EGYPTIAN HIEROGLYPH-13D17 +<U00013D18> /xf0/x93/xb4/x98 EGYPTIAN HIEROGLYPH-13D18 +<U00013D19> /xf0/x93/xb4/x99 EGYPTIAN HIEROGLYPH-13D19 +<U00013D1A> /xf0/x93/xb4/x9a EGYPTIAN HIEROGLYPH-13D1A +<U00013D1B> /xf0/x93/xb4/x9b EGYPTIAN HIEROGLYPH-13D1B +<U00013D1C> /xf0/x93/xb4/x9c EGYPTIAN HIEROGLYPH-13D1C +<U00013D1D> /xf0/x93/xb4/x9d EGYPTIAN HIEROGLYPH-13D1D +<U00013D1E> /xf0/x93/xb4/x9e EGYPTIAN HIEROGLYPH-13D1E +<U00013D1F> /xf0/x93/xb4/x9f EGYPTIAN HIEROGLYPH-13D1F +<U00013D20> /xf0/x93/xb4/xa0 EGYPTIAN HIEROGLYPH-13D20 +<U00013D21> /xf0/x93/xb4/xa1 EGYPTIAN HIEROGLYPH-13D21 +<U00013D22> /xf0/x93/xb4/xa2 EGYPTIAN HIEROGLYPH-13D22 +<U00013D23> /xf0/x93/xb4/xa3 EGYPTIAN HIEROGLYPH-13D23 +<U00013D24> /xf0/x93/xb4/xa4 EGYPTIAN HIEROGLYPH-13D24 +<U00013D25> /xf0/x93/xb4/xa5 EGYPTIAN HIEROGLYPH-13D25 +<U00013D26> /xf0/x93/xb4/xa6 EGYPTIAN HIEROGLYPH-13D26 +<U00013D27> /xf0/x93/xb4/xa7 EGYPTIAN HIEROGLYPH-13D27 +<U00013D28> /xf0/x93/xb4/xa8 EGYPTIAN HIEROGLYPH-13D28 +<U00013D29> /xf0/x93/xb4/xa9 EGYPTIAN HIEROGLYPH-13D29 +<U00013D2A> /xf0/x93/xb4/xaa EGYPTIAN HIEROGLYPH-13D2A +<U00013D2B> /xf0/x93/xb4/xab EGYPTIAN HIEROGLYPH-13D2B +<U00013D2C> /xf0/x93/xb4/xac EGYPTIAN HIEROGLYPH-13D2C +<U00013D2D> /xf0/x93/xb4/xad EGYPTIAN HIEROGLYPH-13D2D +<U00013D2E> /xf0/x93/xb4/xae EGYPTIAN HIEROGLYPH-13D2E +<U00013D2F> /xf0/x93/xb4/xaf EGYPTIAN HIEROGLYPH-13D2F +<U00013D30> /xf0/x93/xb4/xb0 EGYPTIAN HIEROGLYPH-13D30 +<U00013D31> /xf0/x93/xb4/xb1 EGYPTIAN HIEROGLYPH-13D31 +<U00013D32> /xf0/x93/xb4/xb2 EGYPTIAN HIEROGLYPH-13D32 +<U00013D33> /xf0/x93/xb4/xb3 EGYPTIAN HIEROGLYPH-13D33 +<U00013D34> /xf0/x93/xb4/xb4 EGYPTIAN HIEROGLYPH-13D34 +<U00013D35> /xf0/x93/xb4/xb5 EGYPTIAN HIEROGLYPH-13D35 +<U00013D36> /xf0/x93/xb4/xb6 EGYPTIAN HIEROGLYPH-13D36 +<U00013D37> /xf0/x93/xb4/xb7 EGYPTIAN HIEROGLYPH-13D37 +<U00013D38> /xf0/x93/xb4/xb8 EGYPTIAN HIEROGLYPH-13D38 +<U00013D39> /xf0/x93/xb4/xb9 EGYPTIAN HIEROGLYPH-13D39 +<U00013D3A> /xf0/x93/xb4/xba EGYPTIAN HIEROGLYPH-13D3A +<U00013D3B> /xf0/x93/xb4/xbb EGYPTIAN HIEROGLYPH-13D3B +<U00013D3C> /xf0/x93/xb4/xbc EGYPTIAN HIEROGLYPH-13D3C +<U00013D3D> /xf0/x93/xb4/xbd EGYPTIAN HIEROGLYPH-13D3D +<U00013D3E> /xf0/x93/xb4/xbe EGYPTIAN HIEROGLYPH-13D3E +<U00013D3F> /xf0/x93/xb4/xbf EGYPTIAN HIEROGLYPH-13D3F +<U00013D40> /xf0/x93/xb5/x80 EGYPTIAN HIEROGLYPH-13D40 +<U00013D41> /xf0/x93/xb5/x81 EGYPTIAN HIEROGLYPH-13D41 +<U00013D42> /xf0/x93/xb5/x82 EGYPTIAN HIEROGLYPH-13D42 +<U00013D43> /xf0/x93/xb5/x83 EGYPTIAN HIEROGLYPH-13D43 +<U00013D44> /xf0/x93/xb5/x84 EGYPTIAN HIEROGLYPH-13D44 +<U00013D45> /xf0/x93/xb5/x85 EGYPTIAN HIEROGLYPH-13D45 +<U00013D46> /xf0/x93/xb5/x86 EGYPTIAN HIEROGLYPH-13D46 +<U00013D47> /xf0/x93/xb5/x87 EGYPTIAN HIEROGLYPH-13D47 +<U00013D48> /xf0/x93/xb5/x88 EGYPTIAN HIEROGLYPH-13D48 +<U00013D49> /xf0/x93/xb5/x89 EGYPTIAN HIEROGLYPH-13D49 +<U00013D4A> /xf0/x93/xb5/x8a EGYPTIAN HIEROGLYPH-13D4A +<U00013D4B> /xf0/x93/xb5/x8b EGYPTIAN HIEROGLYPH-13D4B +<U00013D4C> /xf0/x93/xb5/x8c EGYPTIAN HIEROGLYPH-13D4C +<U00013D4D> /xf0/x93/xb5/x8d EGYPTIAN HIEROGLYPH-13D4D +<U00013D4E> /xf0/x93/xb5/x8e EGYPTIAN HIEROGLYPH-13D4E +<U00013D4F> /xf0/x93/xb5/x8f EGYPTIAN HIEROGLYPH-13D4F +<U00013D50> /xf0/x93/xb5/x90 EGYPTIAN HIEROGLYPH-13D50 +<U00013D51> /xf0/x93/xb5/x91 EGYPTIAN HIEROGLYPH-13D51 +<U00013D52> /xf0/x93/xb5/x92 EGYPTIAN HIEROGLYPH-13D52 +<U00013D53> /xf0/x93/xb5/x93 EGYPTIAN HIEROGLYPH-13D53 +<U00013D54> /xf0/x93/xb5/x94 EGYPTIAN HIEROGLYPH-13D54 +<U00013D55> /xf0/x93/xb5/x95 EGYPTIAN HIEROGLYPH-13D55 +<U00013D56> /xf0/x93/xb5/x96 EGYPTIAN HIEROGLYPH-13D56 +<U00013D57> /xf0/x93/xb5/x97 EGYPTIAN HIEROGLYPH-13D57 +<U00013D58> /xf0/x93/xb5/x98 EGYPTIAN HIEROGLYPH-13D58 +<U00013D59> /xf0/x93/xb5/x99 EGYPTIAN HIEROGLYPH-13D59 +<U00013D5A> /xf0/x93/xb5/x9a EGYPTIAN HIEROGLYPH-13D5A +<U00013D5B> /xf0/x93/xb5/x9b EGYPTIAN HIEROGLYPH-13D5B +<U00013D5C> /xf0/x93/xb5/x9c EGYPTIAN HIEROGLYPH-13D5C +<U00013D5D> /xf0/x93/xb5/x9d EGYPTIAN HIEROGLYPH-13D5D +<U00013D5E> /xf0/x93/xb5/x9e EGYPTIAN HIEROGLYPH-13D5E +<U00013D5F> /xf0/x93/xb5/x9f EGYPTIAN HIEROGLYPH-13D5F +<U00013D60> /xf0/x93/xb5/xa0 EGYPTIAN HIEROGLYPH-13D60 +<U00013D61> /xf0/x93/xb5/xa1 EGYPTIAN HIEROGLYPH-13D61 +<U00013D62> /xf0/x93/xb5/xa2 EGYPTIAN HIEROGLYPH-13D62 +<U00013D63> /xf0/x93/xb5/xa3 EGYPTIAN HIEROGLYPH-13D63 +<U00013D64> /xf0/x93/xb5/xa4 EGYPTIAN HIEROGLYPH-13D64 +<U00013D65> /xf0/x93/xb5/xa5 EGYPTIAN HIEROGLYPH-13D65 +<U00013D66> /xf0/x93/xb5/xa6 EGYPTIAN HIEROGLYPH-13D66 +<U00013D67> /xf0/x93/xb5/xa7 EGYPTIAN HIEROGLYPH-13D67 +<U00013D68> /xf0/x93/xb5/xa8 EGYPTIAN HIEROGLYPH-13D68 +<U00013D69> /xf0/x93/xb5/xa9 EGYPTIAN HIEROGLYPH-13D69 +<U00013D6A> /xf0/x93/xb5/xaa EGYPTIAN HIEROGLYPH-13D6A +<U00013D6B> /xf0/x93/xb5/xab EGYPTIAN HIEROGLYPH-13D6B +<U00013D6C> /xf0/x93/xb5/xac EGYPTIAN HIEROGLYPH-13D6C +<U00013D6D> /xf0/x93/xb5/xad EGYPTIAN HIEROGLYPH-13D6D +<U00013D6E> /xf0/x93/xb5/xae EGYPTIAN HIEROGLYPH-13D6E +<U00013D6F> /xf0/x93/xb5/xaf EGYPTIAN HIEROGLYPH-13D6F +<U00013D70> /xf0/x93/xb5/xb0 EGYPTIAN HIEROGLYPH-13D70 +<U00013D71> /xf0/x93/xb5/xb1 EGYPTIAN HIEROGLYPH-13D71 +<U00013D72> /xf0/x93/xb5/xb2 EGYPTIAN HIEROGLYPH-13D72 +<U00013D73> /xf0/x93/xb5/xb3 EGYPTIAN HIEROGLYPH-13D73 +<U00013D74> /xf0/x93/xb5/xb4 EGYPTIAN HIEROGLYPH-13D74 +<U00013D75> /xf0/x93/xb5/xb5 EGYPTIAN HIEROGLYPH-13D75 +<U00013D76> /xf0/x93/xb5/xb6 EGYPTIAN HIEROGLYPH-13D76 +<U00013D77> /xf0/x93/xb5/xb7 EGYPTIAN HIEROGLYPH-13D77 +<U00013D78> /xf0/x93/xb5/xb8 EGYPTIAN HIEROGLYPH-13D78 +<U00013D79> /xf0/x93/xb5/xb9 EGYPTIAN HIEROGLYPH-13D79 +<U00013D7A> /xf0/x93/xb5/xba EGYPTIAN HIEROGLYPH-13D7A +<U00013D7B> /xf0/x93/xb5/xbb EGYPTIAN HIEROGLYPH-13D7B +<U00013D7C> /xf0/x93/xb5/xbc EGYPTIAN HIEROGLYPH-13D7C +<U00013D7D> /xf0/x93/xb5/xbd EGYPTIAN HIEROGLYPH-13D7D +<U00013D7E> /xf0/x93/xb5/xbe EGYPTIAN HIEROGLYPH-13D7E +<U00013D7F> /xf0/x93/xb5/xbf EGYPTIAN HIEROGLYPH-13D7F +<U00013D80> /xf0/x93/xb6/x80 EGYPTIAN HIEROGLYPH-13D80 +<U00013D81> /xf0/x93/xb6/x81 EGYPTIAN HIEROGLYPH-13D81 +<U00013D82> /xf0/x93/xb6/x82 EGYPTIAN HIEROGLYPH-13D82 +<U00013D83> /xf0/x93/xb6/x83 EGYPTIAN HIEROGLYPH-13D83 +<U00013D84> /xf0/x93/xb6/x84 EGYPTIAN HIEROGLYPH-13D84 +<U00013D85> /xf0/x93/xb6/x85 EGYPTIAN HIEROGLYPH-13D85 +<U00013D86> /xf0/x93/xb6/x86 EGYPTIAN HIEROGLYPH-13D86 +<U00013D87> /xf0/x93/xb6/x87 EGYPTIAN HIEROGLYPH-13D87 +<U00013D88> /xf0/x93/xb6/x88 EGYPTIAN HIEROGLYPH-13D88 +<U00013D89> /xf0/x93/xb6/x89 EGYPTIAN HIEROGLYPH-13D89 +<U00013D8A> /xf0/x93/xb6/x8a EGYPTIAN HIEROGLYPH-13D8A +<U00013D8B> /xf0/x93/xb6/x8b EGYPTIAN HIEROGLYPH-13D8B +<U00013D8C> /xf0/x93/xb6/x8c EGYPTIAN HIEROGLYPH-13D8C +<U00013D8D> /xf0/x93/xb6/x8d EGYPTIAN HIEROGLYPH-13D8D +<U00013D8E> /xf0/x93/xb6/x8e EGYPTIAN HIEROGLYPH-13D8E +<U00013D8F> /xf0/x93/xb6/x8f EGYPTIAN HIEROGLYPH-13D8F +<U00013D90> /xf0/x93/xb6/x90 EGYPTIAN HIEROGLYPH-13D90 +<U00013D91> /xf0/x93/xb6/x91 EGYPTIAN HIEROGLYPH-13D91 +<U00013D92> /xf0/x93/xb6/x92 EGYPTIAN HIEROGLYPH-13D92 +<U00013D93> /xf0/x93/xb6/x93 EGYPTIAN HIEROGLYPH-13D93 +<U00013D94> /xf0/x93/xb6/x94 EGYPTIAN HIEROGLYPH-13D94 +<U00013D95> /xf0/x93/xb6/x95 EGYPTIAN HIEROGLYPH-13D95 +<U00013D96> /xf0/x93/xb6/x96 EGYPTIAN HIEROGLYPH-13D96 +<U00013D97> /xf0/x93/xb6/x97 EGYPTIAN HIEROGLYPH-13D97 +<U00013D98> /xf0/x93/xb6/x98 EGYPTIAN HIEROGLYPH-13D98 +<U00013D99> /xf0/x93/xb6/x99 EGYPTIAN HIEROGLYPH-13D99 +<U00013D9A> /xf0/x93/xb6/x9a EGYPTIAN HIEROGLYPH-13D9A +<U00013D9B> /xf0/x93/xb6/x9b EGYPTIAN HIEROGLYPH-13D9B +<U00013D9C> /xf0/x93/xb6/x9c EGYPTIAN HIEROGLYPH-13D9C +<U00013D9D> /xf0/x93/xb6/x9d EGYPTIAN HIEROGLYPH-13D9D +<U00013D9E> /xf0/x93/xb6/x9e EGYPTIAN HIEROGLYPH-13D9E +<U00013D9F> /xf0/x93/xb6/x9f EGYPTIAN HIEROGLYPH-13D9F +<U00013DA0> /xf0/x93/xb6/xa0 EGYPTIAN HIEROGLYPH-13DA0 +<U00013DA1> /xf0/x93/xb6/xa1 EGYPTIAN HIEROGLYPH-13DA1 +<U00013DA2> /xf0/x93/xb6/xa2 EGYPTIAN HIEROGLYPH-13DA2 +<U00013DA3> /xf0/x93/xb6/xa3 EGYPTIAN HIEROGLYPH-13DA3 +<U00013DA4> /xf0/x93/xb6/xa4 EGYPTIAN HIEROGLYPH-13DA4 +<U00013DA5> /xf0/x93/xb6/xa5 EGYPTIAN HIEROGLYPH-13DA5 +<U00013DA6> /xf0/x93/xb6/xa6 EGYPTIAN HIEROGLYPH-13DA6 +<U00013DA7> /xf0/x93/xb6/xa7 EGYPTIAN HIEROGLYPH-13DA7 +<U00013DA8> /xf0/x93/xb6/xa8 EGYPTIAN HIEROGLYPH-13DA8 +<U00013DA9> /xf0/x93/xb6/xa9 EGYPTIAN HIEROGLYPH-13DA9 +<U00013DAA> /xf0/x93/xb6/xaa EGYPTIAN HIEROGLYPH-13DAA +<U00013DAB> /xf0/x93/xb6/xab EGYPTIAN HIEROGLYPH-13DAB +<U00013DAC> /xf0/x93/xb6/xac EGYPTIAN HIEROGLYPH-13DAC +<U00013DAD> /xf0/x93/xb6/xad EGYPTIAN HIEROGLYPH-13DAD +<U00013DAE> /xf0/x93/xb6/xae EGYPTIAN HIEROGLYPH-13DAE +<U00013DAF> /xf0/x93/xb6/xaf EGYPTIAN HIEROGLYPH-13DAF +<U00013DB0> /xf0/x93/xb6/xb0 EGYPTIAN HIEROGLYPH-13DB0 +<U00013DB1> /xf0/x93/xb6/xb1 EGYPTIAN HIEROGLYPH-13DB1 +<U00013DB2> /xf0/x93/xb6/xb2 EGYPTIAN HIEROGLYPH-13DB2 +<U00013DB3> /xf0/x93/xb6/xb3 EGYPTIAN HIEROGLYPH-13DB3 +<U00013DB4> /xf0/x93/xb6/xb4 EGYPTIAN HIEROGLYPH-13DB4 +<U00013DB5> /xf0/x93/xb6/xb5 EGYPTIAN HIEROGLYPH-13DB5 +<U00013DB6> /xf0/x93/xb6/xb6 EGYPTIAN HIEROGLYPH-13DB6 +<U00013DB7> /xf0/x93/xb6/xb7 EGYPTIAN HIEROGLYPH-13DB7 +<U00013DB8> /xf0/x93/xb6/xb8 EGYPTIAN HIEROGLYPH-13DB8 +<U00013DB9> /xf0/x93/xb6/xb9 EGYPTIAN HIEROGLYPH-13DB9 +<U00013DBA> /xf0/x93/xb6/xba EGYPTIAN HIEROGLYPH-13DBA +<U00013DBB> /xf0/x93/xb6/xbb EGYPTIAN HIEROGLYPH-13DBB +<U00013DBC> /xf0/x93/xb6/xbc EGYPTIAN HIEROGLYPH-13DBC +<U00013DBD> /xf0/x93/xb6/xbd EGYPTIAN HIEROGLYPH-13DBD +<U00013DBE> /xf0/x93/xb6/xbe EGYPTIAN HIEROGLYPH-13DBE +<U00013DBF> /xf0/x93/xb6/xbf EGYPTIAN HIEROGLYPH-13DBF +<U00013DC0> /xf0/x93/xb7/x80 EGYPTIAN HIEROGLYPH-13DC0 +<U00013DC1> /xf0/x93/xb7/x81 EGYPTIAN HIEROGLYPH-13DC1 +<U00013DC2> /xf0/x93/xb7/x82 EGYPTIAN HIEROGLYPH-13DC2 +<U00013DC3> /xf0/x93/xb7/x83 EGYPTIAN HIEROGLYPH-13DC3 +<U00013DC4> /xf0/x93/xb7/x84 EGYPTIAN HIEROGLYPH-13DC4 +<U00013DC5> /xf0/x93/xb7/x85 EGYPTIAN HIEROGLYPH-13DC5 +<U00013DC6> /xf0/x93/xb7/x86 EGYPTIAN HIEROGLYPH-13DC6 +<U00013DC7> /xf0/x93/xb7/x87 EGYPTIAN HIEROGLYPH-13DC7 +<U00013DC8> /xf0/x93/xb7/x88 EGYPTIAN HIEROGLYPH-13DC8 +<U00013DC9> /xf0/x93/xb7/x89 EGYPTIAN HIEROGLYPH-13DC9 +<U00013DCA> /xf0/x93/xb7/x8a EGYPTIAN HIEROGLYPH-13DCA +<U00013DCB> /xf0/x93/xb7/x8b EGYPTIAN HIEROGLYPH-13DCB +<U00013DCC> /xf0/x93/xb7/x8c EGYPTIAN HIEROGLYPH-13DCC +<U00013DCD> /xf0/x93/xb7/x8d EGYPTIAN HIEROGLYPH-13DCD +<U00013DCE> /xf0/x93/xb7/x8e EGYPTIAN HIEROGLYPH-13DCE +<U00013DCF> /xf0/x93/xb7/x8f EGYPTIAN HIEROGLYPH-13DCF +<U00013DD0> /xf0/x93/xb7/x90 EGYPTIAN HIEROGLYPH-13DD0 +<U00013DD1> /xf0/x93/xb7/x91 EGYPTIAN HIEROGLYPH-13DD1 +<U00013DD2> /xf0/x93/xb7/x92 EGYPTIAN HIEROGLYPH-13DD2 +<U00013DD3> /xf0/x93/xb7/x93 EGYPTIAN HIEROGLYPH-13DD3 +<U00013DD4> /xf0/x93/xb7/x94 EGYPTIAN HIEROGLYPH-13DD4 +<U00013DD5> /xf0/x93/xb7/x95 EGYPTIAN HIEROGLYPH-13DD5 +<U00013DD6> /xf0/x93/xb7/x96 EGYPTIAN HIEROGLYPH-13DD6 +<U00013DD7> /xf0/x93/xb7/x97 EGYPTIAN HIEROGLYPH-13DD7 +<U00013DD8> /xf0/x93/xb7/x98 EGYPTIAN HIEROGLYPH-13DD8 +<U00013DD9> /xf0/x93/xb7/x99 EGYPTIAN HIEROGLYPH-13DD9 +<U00013DDA> /xf0/x93/xb7/x9a EGYPTIAN HIEROGLYPH-13DDA +<U00013DDB> /xf0/x93/xb7/x9b EGYPTIAN HIEROGLYPH-13DDB +<U00013DDC> /xf0/x93/xb7/x9c EGYPTIAN HIEROGLYPH-13DDC +<U00013DDD> /xf0/x93/xb7/x9d EGYPTIAN HIEROGLYPH-13DDD +<U00013DDE> /xf0/x93/xb7/x9e EGYPTIAN HIEROGLYPH-13DDE +<U00013DDF> /xf0/x93/xb7/x9f EGYPTIAN HIEROGLYPH-13DDF +<U00013DE0> /xf0/x93/xb7/xa0 EGYPTIAN HIEROGLYPH-13DE0 +<U00013DE1> /xf0/x93/xb7/xa1 EGYPTIAN HIEROGLYPH-13DE1 +<U00013DE2> /xf0/x93/xb7/xa2 EGYPTIAN HIEROGLYPH-13DE2 +<U00013DE3> /xf0/x93/xb7/xa3 EGYPTIAN HIEROGLYPH-13DE3 +<U00013DE4> /xf0/x93/xb7/xa4 EGYPTIAN HIEROGLYPH-13DE4 +<U00013DE5> /xf0/x93/xb7/xa5 EGYPTIAN HIEROGLYPH-13DE5 +<U00013DE6> /xf0/x93/xb7/xa6 EGYPTIAN HIEROGLYPH-13DE6 +<U00013DE7> /xf0/x93/xb7/xa7 EGYPTIAN HIEROGLYPH-13DE7 +<U00013DE8> /xf0/x93/xb7/xa8 EGYPTIAN HIEROGLYPH-13DE8 +<U00013DE9> /xf0/x93/xb7/xa9 EGYPTIAN HIEROGLYPH-13DE9 +<U00013DEA> /xf0/x93/xb7/xaa EGYPTIAN HIEROGLYPH-13DEA +<U00013DEB> /xf0/x93/xb7/xab EGYPTIAN HIEROGLYPH-13DEB +<U00013DEC> /xf0/x93/xb7/xac EGYPTIAN HIEROGLYPH-13DEC +<U00013DED> /xf0/x93/xb7/xad EGYPTIAN HIEROGLYPH-13DED +<U00013DEE> /xf0/x93/xb7/xae EGYPTIAN HIEROGLYPH-13DEE +<U00013DEF> /xf0/x93/xb7/xaf EGYPTIAN HIEROGLYPH-13DEF +<U00013DF0> /xf0/x93/xb7/xb0 EGYPTIAN HIEROGLYPH-13DF0 +<U00013DF1> /xf0/x93/xb7/xb1 EGYPTIAN HIEROGLYPH-13DF1 +<U00013DF2> /xf0/x93/xb7/xb2 EGYPTIAN HIEROGLYPH-13DF2 +<U00013DF3> /xf0/x93/xb7/xb3 EGYPTIAN HIEROGLYPH-13DF3 +<U00013DF4> /xf0/x93/xb7/xb4 EGYPTIAN HIEROGLYPH-13DF4 +<U00013DF5> /xf0/x93/xb7/xb5 EGYPTIAN HIEROGLYPH-13DF5 +<U00013DF6> /xf0/x93/xb7/xb6 EGYPTIAN HIEROGLYPH-13DF6 +<U00013DF7> /xf0/x93/xb7/xb7 EGYPTIAN HIEROGLYPH-13DF7 +<U00013DF8> /xf0/x93/xb7/xb8 EGYPTIAN HIEROGLYPH-13DF8 +<U00013DF9> /xf0/x93/xb7/xb9 EGYPTIAN HIEROGLYPH-13DF9 +<U00013DFA> /xf0/x93/xb7/xba EGYPTIAN HIEROGLYPH-13DFA +<U00013DFB> /xf0/x93/xb7/xbb EGYPTIAN HIEROGLYPH-13DFB +<U00013DFC> /xf0/x93/xb7/xbc EGYPTIAN HIEROGLYPH-13DFC +<U00013DFD> /xf0/x93/xb7/xbd EGYPTIAN HIEROGLYPH-13DFD +<U00013DFE> /xf0/x93/xb7/xbe EGYPTIAN HIEROGLYPH-13DFE +<U00013DFF> /xf0/x93/xb7/xbf EGYPTIAN HIEROGLYPH-13DFF +<U00013E00> /xf0/x93/xb8/x80 EGYPTIAN HIEROGLYPH-13E00 +<U00013E01> /xf0/x93/xb8/x81 EGYPTIAN HIEROGLYPH-13E01 +<U00013E02> /xf0/x93/xb8/x82 EGYPTIAN HIEROGLYPH-13E02 +<U00013E03> /xf0/x93/xb8/x83 EGYPTIAN HIEROGLYPH-13E03 +<U00013E04> /xf0/x93/xb8/x84 EGYPTIAN HIEROGLYPH-13E04 +<U00013E05> /xf0/x93/xb8/x85 EGYPTIAN HIEROGLYPH-13E05 +<U00013E06> /xf0/x93/xb8/x86 EGYPTIAN HIEROGLYPH-13E06 +<U00013E07> /xf0/x93/xb8/x87 EGYPTIAN HIEROGLYPH-13E07 +<U00013E08> /xf0/x93/xb8/x88 EGYPTIAN HIEROGLYPH-13E08 +<U00013E09> /xf0/x93/xb8/x89 EGYPTIAN HIEROGLYPH-13E09 +<U00013E0A> /xf0/x93/xb8/x8a EGYPTIAN HIEROGLYPH-13E0A +<U00013E0B> /xf0/x93/xb8/x8b EGYPTIAN HIEROGLYPH-13E0B +<U00013E0C> /xf0/x93/xb8/x8c EGYPTIAN HIEROGLYPH-13E0C +<U00013E0D> /xf0/x93/xb8/x8d EGYPTIAN HIEROGLYPH-13E0D +<U00013E0E> /xf0/x93/xb8/x8e EGYPTIAN HIEROGLYPH-13E0E +<U00013E0F> /xf0/x93/xb8/x8f EGYPTIAN HIEROGLYPH-13E0F +<U00013E10> /xf0/x93/xb8/x90 EGYPTIAN HIEROGLYPH-13E10 +<U00013E11> /xf0/x93/xb8/x91 EGYPTIAN HIEROGLYPH-13E11 +<U00013E12> /xf0/x93/xb8/x92 EGYPTIAN HIEROGLYPH-13E12 +<U00013E13> /xf0/x93/xb8/x93 EGYPTIAN HIEROGLYPH-13E13 +<U00013E14> /xf0/x93/xb8/x94 EGYPTIAN HIEROGLYPH-13E14 +<U00013E15> /xf0/x93/xb8/x95 EGYPTIAN HIEROGLYPH-13E15 +<U00013E16> /xf0/x93/xb8/x96 EGYPTIAN HIEROGLYPH-13E16 +<U00013E17> /xf0/x93/xb8/x97 EGYPTIAN HIEROGLYPH-13E17 +<U00013E18> /xf0/x93/xb8/x98 EGYPTIAN HIEROGLYPH-13E18 +<U00013E19> /xf0/x93/xb8/x99 EGYPTIAN HIEROGLYPH-13E19 +<U00013E1A> /xf0/x93/xb8/x9a EGYPTIAN HIEROGLYPH-13E1A +<U00013E1B> /xf0/x93/xb8/x9b EGYPTIAN HIEROGLYPH-13E1B +<U00013E1C> /xf0/x93/xb8/x9c EGYPTIAN HIEROGLYPH-13E1C +<U00013E1D> /xf0/x93/xb8/x9d EGYPTIAN HIEROGLYPH-13E1D +<U00013E1E> /xf0/x93/xb8/x9e EGYPTIAN HIEROGLYPH-13E1E +<U00013E1F> /xf0/x93/xb8/x9f EGYPTIAN HIEROGLYPH-13E1F +<U00013E20> /xf0/x93/xb8/xa0 EGYPTIAN HIEROGLYPH-13E20 +<U00013E21> /xf0/x93/xb8/xa1 EGYPTIAN HIEROGLYPH-13E21 +<U00013E22> /xf0/x93/xb8/xa2 EGYPTIAN HIEROGLYPH-13E22 +<U00013E23> /xf0/x93/xb8/xa3 EGYPTIAN HIEROGLYPH-13E23 +<U00013E24> /xf0/x93/xb8/xa4 EGYPTIAN HIEROGLYPH-13E24 +<U00013E25> /xf0/x93/xb8/xa5 EGYPTIAN HIEROGLYPH-13E25 +<U00013E26> /xf0/x93/xb8/xa6 EGYPTIAN HIEROGLYPH-13E26 +<U00013E27> /xf0/x93/xb8/xa7 EGYPTIAN HIEROGLYPH-13E27 +<U00013E28> /xf0/x93/xb8/xa8 EGYPTIAN HIEROGLYPH-13E28 +<U00013E29> /xf0/x93/xb8/xa9 EGYPTIAN HIEROGLYPH-13E29 +<U00013E2A> /xf0/x93/xb8/xaa EGYPTIAN HIEROGLYPH-13E2A +<U00013E2B> /xf0/x93/xb8/xab EGYPTIAN HIEROGLYPH-13E2B +<U00013E2C> /xf0/x93/xb8/xac EGYPTIAN HIEROGLYPH-13E2C +<U00013E2D> /xf0/x93/xb8/xad EGYPTIAN HIEROGLYPH-13E2D +<U00013E2E> /xf0/x93/xb8/xae EGYPTIAN HIEROGLYPH-13E2E +<U00013E2F> /xf0/x93/xb8/xaf EGYPTIAN HIEROGLYPH-13E2F +<U00013E30> /xf0/x93/xb8/xb0 EGYPTIAN HIEROGLYPH-13E30 +<U00013E31> /xf0/x93/xb8/xb1 EGYPTIAN HIEROGLYPH-13E31 +<U00013E32> /xf0/x93/xb8/xb2 EGYPTIAN HIEROGLYPH-13E32 +<U00013E33> /xf0/x93/xb8/xb3 EGYPTIAN HIEROGLYPH-13E33 +<U00013E34> /xf0/x93/xb8/xb4 EGYPTIAN HIEROGLYPH-13E34 +<U00013E35> /xf0/x93/xb8/xb5 EGYPTIAN HIEROGLYPH-13E35 +<U00013E36> /xf0/x93/xb8/xb6 EGYPTIAN HIEROGLYPH-13E36 +<U00013E37> /xf0/x93/xb8/xb7 EGYPTIAN HIEROGLYPH-13E37 +<U00013E38> /xf0/x93/xb8/xb8 EGYPTIAN HIEROGLYPH-13E38 +<U00013E39> /xf0/x93/xb8/xb9 EGYPTIAN HIEROGLYPH-13E39 +<U00013E3A> /xf0/x93/xb8/xba EGYPTIAN HIEROGLYPH-13E3A +<U00013E3B> /xf0/x93/xb8/xbb EGYPTIAN HIEROGLYPH-13E3B +<U00013E3C> /xf0/x93/xb8/xbc EGYPTIAN HIEROGLYPH-13E3C +<U00013E3D> /xf0/x93/xb8/xbd EGYPTIAN HIEROGLYPH-13E3D +<U00013E3E> /xf0/x93/xb8/xbe EGYPTIAN HIEROGLYPH-13E3E +<U00013E3F> /xf0/x93/xb8/xbf EGYPTIAN HIEROGLYPH-13E3F +<U00013E40> /xf0/x93/xb9/x80 EGYPTIAN HIEROGLYPH-13E40 +<U00013E41> /xf0/x93/xb9/x81 EGYPTIAN HIEROGLYPH-13E41 +<U00013E42> /xf0/x93/xb9/x82 EGYPTIAN HIEROGLYPH-13E42 +<U00013E43> /xf0/x93/xb9/x83 EGYPTIAN HIEROGLYPH-13E43 +<U00013E44> /xf0/x93/xb9/x84 EGYPTIAN HIEROGLYPH-13E44 +<U00013E45> /xf0/x93/xb9/x85 EGYPTIAN HIEROGLYPH-13E45 +<U00013E46> /xf0/x93/xb9/x86 EGYPTIAN HIEROGLYPH-13E46 +<U00013E47> /xf0/x93/xb9/x87 EGYPTIAN HIEROGLYPH-13E47 +<U00013E48> /xf0/x93/xb9/x88 EGYPTIAN HIEROGLYPH-13E48 +<U00013E49> /xf0/x93/xb9/x89 EGYPTIAN HIEROGLYPH-13E49 +<U00013E4A> /xf0/x93/xb9/x8a EGYPTIAN HIEROGLYPH-13E4A +<U00013E4B> /xf0/x93/xb9/x8b EGYPTIAN HIEROGLYPH-13E4B +<U00013E4C> /xf0/x93/xb9/x8c EGYPTIAN HIEROGLYPH-13E4C +<U00013E4D> /xf0/x93/xb9/x8d EGYPTIAN HIEROGLYPH-13E4D +<U00013E4E> /xf0/x93/xb9/x8e EGYPTIAN HIEROGLYPH-13E4E +<U00013E4F> /xf0/x93/xb9/x8f EGYPTIAN HIEROGLYPH-13E4F +<U00013E50> /xf0/x93/xb9/x90 EGYPTIAN HIEROGLYPH-13E50 +<U00013E51> /xf0/x93/xb9/x91 EGYPTIAN HIEROGLYPH-13E51 +<U00013E52> /xf0/x93/xb9/x92 EGYPTIAN HIEROGLYPH-13E52 +<U00013E53> /xf0/x93/xb9/x93 EGYPTIAN HIEROGLYPH-13E53 +<U00013E54> /xf0/x93/xb9/x94 EGYPTIAN HIEROGLYPH-13E54 +<U00013E55> /xf0/x93/xb9/x95 EGYPTIAN HIEROGLYPH-13E55 +<U00013E56> /xf0/x93/xb9/x96 EGYPTIAN HIEROGLYPH-13E56 +<U00013E57> /xf0/x93/xb9/x97 EGYPTIAN HIEROGLYPH-13E57 +<U00013E58> /xf0/x93/xb9/x98 EGYPTIAN HIEROGLYPH-13E58 +<U00013E59> /xf0/x93/xb9/x99 EGYPTIAN HIEROGLYPH-13E59 +<U00013E5A> /xf0/x93/xb9/x9a EGYPTIAN HIEROGLYPH-13E5A +<U00013E5B> /xf0/x93/xb9/x9b EGYPTIAN HIEROGLYPH-13E5B +<U00013E5C> /xf0/x93/xb9/x9c EGYPTIAN HIEROGLYPH-13E5C +<U00013E5D> /xf0/x93/xb9/x9d EGYPTIAN HIEROGLYPH-13E5D +<U00013E5E> /xf0/x93/xb9/x9e EGYPTIAN HIEROGLYPH-13E5E +<U00013E5F> /xf0/x93/xb9/x9f EGYPTIAN HIEROGLYPH-13E5F +<U00013E60> /xf0/x93/xb9/xa0 EGYPTIAN HIEROGLYPH-13E60 +<U00013E61> /xf0/x93/xb9/xa1 EGYPTIAN HIEROGLYPH-13E61 +<U00013E62> /xf0/x93/xb9/xa2 EGYPTIAN HIEROGLYPH-13E62 +<U00013E63> /xf0/x93/xb9/xa3 EGYPTIAN HIEROGLYPH-13E63 +<U00013E64> /xf0/x93/xb9/xa4 EGYPTIAN HIEROGLYPH-13E64 +<U00013E65> /xf0/x93/xb9/xa5 EGYPTIAN HIEROGLYPH-13E65 +<U00013E66> /xf0/x93/xb9/xa6 EGYPTIAN HIEROGLYPH-13E66 +<U00013E67> /xf0/x93/xb9/xa7 EGYPTIAN HIEROGLYPH-13E67 +<U00013E68> /xf0/x93/xb9/xa8 EGYPTIAN HIEROGLYPH-13E68 +<U00013E69> /xf0/x93/xb9/xa9 EGYPTIAN HIEROGLYPH-13E69 +<U00013E6A> /xf0/x93/xb9/xaa EGYPTIAN HIEROGLYPH-13E6A +<U00013E6B> /xf0/x93/xb9/xab EGYPTIAN HIEROGLYPH-13E6B +<U00013E6C> /xf0/x93/xb9/xac EGYPTIAN HIEROGLYPH-13E6C +<U00013E6D> /xf0/x93/xb9/xad EGYPTIAN HIEROGLYPH-13E6D +<U00013E6E> /xf0/x93/xb9/xae EGYPTIAN HIEROGLYPH-13E6E +<U00013E6F> /xf0/x93/xb9/xaf EGYPTIAN HIEROGLYPH-13E6F +<U00013E70> /xf0/x93/xb9/xb0 EGYPTIAN HIEROGLYPH-13E70 +<U00013E71> /xf0/x93/xb9/xb1 EGYPTIAN HIEROGLYPH-13E71 +<U00013E72> /xf0/x93/xb9/xb2 EGYPTIAN HIEROGLYPH-13E72 +<U00013E73> /xf0/x93/xb9/xb3 EGYPTIAN HIEROGLYPH-13E73 +<U00013E74> /xf0/x93/xb9/xb4 EGYPTIAN HIEROGLYPH-13E74 +<U00013E75> /xf0/x93/xb9/xb5 EGYPTIAN HIEROGLYPH-13E75 +<U00013E76> /xf0/x93/xb9/xb6 EGYPTIAN HIEROGLYPH-13E76 +<U00013E77> /xf0/x93/xb9/xb7 EGYPTIAN HIEROGLYPH-13E77 +<U00013E78> /xf0/x93/xb9/xb8 EGYPTIAN HIEROGLYPH-13E78 +<U00013E79> /xf0/x93/xb9/xb9 EGYPTIAN HIEROGLYPH-13E79 +<U00013E7A> /xf0/x93/xb9/xba EGYPTIAN HIEROGLYPH-13E7A +<U00013E7B> /xf0/x93/xb9/xbb EGYPTIAN HIEROGLYPH-13E7B +<U00013E7C> /xf0/x93/xb9/xbc EGYPTIAN HIEROGLYPH-13E7C +<U00013E7D> /xf0/x93/xb9/xbd EGYPTIAN HIEROGLYPH-13E7D +<U00013E7E> /xf0/x93/xb9/xbe EGYPTIAN HIEROGLYPH-13E7E +<U00013E7F> /xf0/x93/xb9/xbf EGYPTIAN HIEROGLYPH-13E7F +<U00013E80> /xf0/x93/xba/x80 EGYPTIAN HIEROGLYPH-13E80 +<U00013E81> /xf0/x93/xba/x81 EGYPTIAN HIEROGLYPH-13E81 +<U00013E82> /xf0/x93/xba/x82 EGYPTIAN HIEROGLYPH-13E82 +<U00013E83> /xf0/x93/xba/x83 EGYPTIAN HIEROGLYPH-13E83 +<U00013E84> /xf0/x93/xba/x84 EGYPTIAN HIEROGLYPH-13E84 +<U00013E85> /xf0/x93/xba/x85 EGYPTIAN HIEROGLYPH-13E85 +<U00013E86> /xf0/x93/xba/x86 EGYPTIAN HIEROGLYPH-13E86 +<U00013E87> /xf0/x93/xba/x87 EGYPTIAN HIEROGLYPH-13E87 +<U00013E88> /xf0/x93/xba/x88 EGYPTIAN HIEROGLYPH-13E88 +<U00013E89> /xf0/x93/xba/x89 EGYPTIAN HIEROGLYPH-13E89 +<U00013E8A> /xf0/x93/xba/x8a EGYPTIAN HIEROGLYPH-13E8A +<U00013E8B> /xf0/x93/xba/x8b EGYPTIAN HIEROGLYPH-13E8B +<U00013E8C> /xf0/x93/xba/x8c EGYPTIAN HIEROGLYPH-13E8C +<U00013E8D> /xf0/x93/xba/x8d EGYPTIAN HIEROGLYPH-13E8D +<U00013E8E> /xf0/x93/xba/x8e EGYPTIAN HIEROGLYPH-13E8E +<U00013E8F> /xf0/x93/xba/x8f EGYPTIAN HIEROGLYPH-13E8F +<U00013E90> /xf0/x93/xba/x90 EGYPTIAN HIEROGLYPH-13E90 +<U00013E91> /xf0/x93/xba/x91 EGYPTIAN HIEROGLYPH-13E91 +<U00013E92> /xf0/x93/xba/x92 EGYPTIAN HIEROGLYPH-13E92 +<U00013E93> /xf0/x93/xba/x93 EGYPTIAN HIEROGLYPH-13E93 +<U00013E94> /xf0/x93/xba/x94 EGYPTIAN HIEROGLYPH-13E94 +<U00013E95> /xf0/x93/xba/x95 EGYPTIAN HIEROGLYPH-13E95 +<U00013E96> /xf0/x93/xba/x96 EGYPTIAN HIEROGLYPH-13E96 +<U00013E97> /xf0/x93/xba/x97 EGYPTIAN HIEROGLYPH-13E97 +<U00013E98> /xf0/x93/xba/x98 EGYPTIAN HIEROGLYPH-13E98 +<U00013E99> /xf0/x93/xba/x99 EGYPTIAN HIEROGLYPH-13E99 +<U00013E9A> /xf0/x93/xba/x9a EGYPTIAN HIEROGLYPH-13E9A +<U00013E9B> /xf0/x93/xba/x9b EGYPTIAN HIEROGLYPH-13E9B +<U00013E9C> /xf0/x93/xba/x9c EGYPTIAN HIEROGLYPH-13E9C +<U00013E9D> /xf0/x93/xba/x9d EGYPTIAN HIEROGLYPH-13E9D +<U00013E9E> /xf0/x93/xba/x9e EGYPTIAN HIEROGLYPH-13E9E +<U00013E9F> /xf0/x93/xba/x9f EGYPTIAN HIEROGLYPH-13E9F +<U00013EA0> /xf0/x93/xba/xa0 EGYPTIAN HIEROGLYPH-13EA0 +<U00013EA1> /xf0/x93/xba/xa1 EGYPTIAN HIEROGLYPH-13EA1 +<U00013EA2> /xf0/x93/xba/xa2 EGYPTIAN HIEROGLYPH-13EA2 +<U00013EA3> /xf0/x93/xba/xa3 EGYPTIAN HIEROGLYPH-13EA3 +<U00013EA4> /xf0/x93/xba/xa4 EGYPTIAN HIEROGLYPH-13EA4 +<U00013EA5> /xf0/x93/xba/xa5 EGYPTIAN HIEROGLYPH-13EA5 +<U00013EA6> /xf0/x93/xba/xa6 EGYPTIAN HIEROGLYPH-13EA6 +<U00013EA7> /xf0/x93/xba/xa7 EGYPTIAN HIEROGLYPH-13EA7 +<U00013EA8> /xf0/x93/xba/xa8 EGYPTIAN HIEROGLYPH-13EA8 +<U00013EA9> /xf0/x93/xba/xa9 EGYPTIAN HIEROGLYPH-13EA9 +<U00013EAA> /xf0/x93/xba/xaa EGYPTIAN HIEROGLYPH-13EAA +<U00013EAB> /xf0/x93/xba/xab EGYPTIAN HIEROGLYPH-13EAB +<U00013EAC> /xf0/x93/xba/xac EGYPTIAN HIEROGLYPH-13EAC +<U00013EAD> /xf0/x93/xba/xad EGYPTIAN HIEROGLYPH-13EAD +<U00013EAE> /xf0/x93/xba/xae EGYPTIAN HIEROGLYPH-13EAE +<U00013EAF> /xf0/x93/xba/xaf EGYPTIAN HIEROGLYPH-13EAF +<U00013EB0> /xf0/x93/xba/xb0 EGYPTIAN HIEROGLYPH-13EB0 +<U00013EB1> /xf0/x93/xba/xb1 EGYPTIAN HIEROGLYPH-13EB1 +<U00013EB2> /xf0/x93/xba/xb2 EGYPTIAN HIEROGLYPH-13EB2 +<U00013EB3> /xf0/x93/xba/xb3 EGYPTIAN HIEROGLYPH-13EB3 +<U00013EB4> /xf0/x93/xba/xb4 EGYPTIAN HIEROGLYPH-13EB4 +<U00013EB5> /xf0/x93/xba/xb5 EGYPTIAN HIEROGLYPH-13EB5 +<U00013EB6> /xf0/x93/xba/xb6 EGYPTIAN HIEROGLYPH-13EB6 +<U00013EB7> /xf0/x93/xba/xb7 EGYPTIAN HIEROGLYPH-13EB7 +<U00013EB8> /xf0/x93/xba/xb8 EGYPTIAN HIEROGLYPH-13EB8 +<U00013EB9> /xf0/x93/xba/xb9 EGYPTIAN HIEROGLYPH-13EB9 +<U00013EBA> /xf0/x93/xba/xba EGYPTIAN HIEROGLYPH-13EBA +<U00013EBB> /xf0/x93/xba/xbb EGYPTIAN HIEROGLYPH-13EBB +<U00013EBC> /xf0/x93/xba/xbc EGYPTIAN HIEROGLYPH-13EBC +<U00013EBD> /xf0/x93/xba/xbd EGYPTIAN HIEROGLYPH-13EBD +<U00013EBE> /xf0/x93/xba/xbe EGYPTIAN HIEROGLYPH-13EBE +<U00013EBF> /xf0/x93/xba/xbf EGYPTIAN HIEROGLYPH-13EBF +<U00013EC0> /xf0/x93/xbb/x80 EGYPTIAN HIEROGLYPH-13EC0 +<U00013EC1> /xf0/x93/xbb/x81 EGYPTIAN HIEROGLYPH-13EC1 +<U00013EC2> /xf0/x93/xbb/x82 EGYPTIAN HIEROGLYPH-13EC2 +<U00013EC3> /xf0/x93/xbb/x83 EGYPTIAN HIEROGLYPH-13EC3 +<U00013EC4> /xf0/x93/xbb/x84 EGYPTIAN HIEROGLYPH-13EC4 +<U00013EC5> /xf0/x93/xbb/x85 EGYPTIAN HIEROGLYPH-13EC5 +<U00013EC6> /xf0/x93/xbb/x86 EGYPTIAN HIEROGLYPH-13EC6 +<U00013EC7> /xf0/x93/xbb/x87 EGYPTIAN HIEROGLYPH-13EC7 +<U00013EC8> /xf0/x93/xbb/x88 EGYPTIAN HIEROGLYPH-13EC8 +<U00013EC9> /xf0/x93/xbb/x89 EGYPTIAN HIEROGLYPH-13EC9 +<U00013ECA> /xf0/x93/xbb/x8a EGYPTIAN HIEROGLYPH-13ECA +<U00013ECB> /xf0/x93/xbb/x8b EGYPTIAN HIEROGLYPH-13ECB +<U00013ECC> /xf0/x93/xbb/x8c EGYPTIAN HIEROGLYPH-13ECC +<U00013ECD> /xf0/x93/xbb/x8d EGYPTIAN HIEROGLYPH-13ECD +<U00013ECE> /xf0/x93/xbb/x8e EGYPTIAN HIEROGLYPH-13ECE +<U00013ECF> /xf0/x93/xbb/x8f EGYPTIAN HIEROGLYPH-13ECF +<U00013ED0> /xf0/x93/xbb/x90 EGYPTIAN HIEROGLYPH-13ED0 +<U00013ED1> /xf0/x93/xbb/x91 EGYPTIAN HIEROGLYPH-13ED1 +<U00013ED2> /xf0/x93/xbb/x92 EGYPTIAN HIEROGLYPH-13ED2 +<U00013ED3> /xf0/x93/xbb/x93 EGYPTIAN HIEROGLYPH-13ED3 +<U00013ED4> /xf0/x93/xbb/x94 EGYPTIAN HIEROGLYPH-13ED4 +<U00013ED5> /xf0/x93/xbb/x95 EGYPTIAN HIEROGLYPH-13ED5 +<U00013ED6> /xf0/x93/xbb/x96 EGYPTIAN HIEROGLYPH-13ED6 +<U00013ED7> /xf0/x93/xbb/x97 EGYPTIAN HIEROGLYPH-13ED7 +<U00013ED8> /xf0/x93/xbb/x98 EGYPTIAN HIEROGLYPH-13ED8 +<U00013ED9> /xf0/x93/xbb/x99 EGYPTIAN HIEROGLYPH-13ED9 +<U00013EDA> /xf0/x93/xbb/x9a EGYPTIAN HIEROGLYPH-13EDA +<U00013EDB> /xf0/x93/xbb/x9b EGYPTIAN HIEROGLYPH-13EDB +<U00013EDC> /xf0/x93/xbb/x9c EGYPTIAN HIEROGLYPH-13EDC +<U00013EDD> /xf0/x93/xbb/x9d EGYPTIAN HIEROGLYPH-13EDD +<U00013EDE> /xf0/x93/xbb/x9e EGYPTIAN HIEROGLYPH-13EDE +<U00013EDF> /xf0/x93/xbb/x9f EGYPTIAN HIEROGLYPH-13EDF +<U00013EE0> /xf0/x93/xbb/xa0 EGYPTIAN HIEROGLYPH-13EE0 +<U00013EE1> /xf0/x93/xbb/xa1 EGYPTIAN HIEROGLYPH-13EE1 +<U00013EE2> /xf0/x93/xbb/xa2 EGYPTIAN HIEROGLYPH-13EE2 +<U00013EE3> /xf0/x93/xbb/xa3 EGYPTIAN HIEROGLYPH-13EE3 +<U00013EE4> /xf0/x93/xbb/xa4 EGYPTIAN HIEROGLYPH-13EE4 +<U00013EE5> /xf0/x93/xbb/xa5 EGYPTIAN HIEROGLYPH-13EE5 +<U00013EE6> /xf0/x93/xbb/xa6 EGYPTIAN HIEROGLYPH-13EE6 +<U00013EE7> /xf0/x93/xbb/xa7 EGYPTIAN HIEROGLYPH-13EE7 +<U00013EE8> /xf0/x93/xbb/xa8 EGYPTIAN HIEROGLYPH-13EE8 +<U00013EE9> /xf0/x93/xbb/xa9 EGYPTIAN HIEROGLYPH-13EE9 +<U00013EEA> /xf0/x93/xbb/xaa EGYPTIAN HIEROGLYPH-13EEA +<U00013EEB> /xf0/x93/xbb/xab EGYPTIAN HIEROGLYPH-13EEB +<U00013EEC> /xf0/x93/xbb/xac EGYPTIAN HIEROGLYPH-13EEC +<U00013EED> /xf0/x93/xbb/xad EGYPTIAN HIEROGLYPH-13EED +<U00013EEE> /xf0/x93/xbb/xae EGYPTIAN HIEROGLYPH-13EEE +<U00013EEF> /xf0/x93/xbb/xaf EGYPTIAN HIEROGLYPH-13EEF +<U00013EF0> /xf0/x93/xbb/xb0 EGYPTIAN HIEROGLYPH-13EF0 +<U00013EF1> /xf0/x93/xbb/xb1 EGYPTIAN HIEROGLYPH-13EF1 +<U00013EF2> /xf0/x93/xbb/xb2 EGYPTIAN HIEROGLYPH-13EF2 +<U00013EF3> /xf0/x93/xbb/xb3 EGYPTIAN HIEROGLYPH-13EF3 +<U00013EF4> /xf0/x93/xbb/xb4 EGYPTIAN HIEROGLYPH-13EF4 +<U00013EF5> /xf0/x93/xbb/xb5 EGYPTIAN HIEROGLYPH-13EF5 +<U00013EF6> /xf0/x93/xbb/xb6 EGYPTIAN HIEROGLYPH-13EF6 +<U00013EF7> /xf0/x93/xbb/xb7 EGYPTIAN HIEROGLYPH-13EF7 +<U00013EF8> /xf0/x93/xbb/xb8 EGYPTIAN HIEROGLYPH-13EF8 +<U00013EF9> /xf0/x93/xbb/xb9 EGYPTIAN HIEROGLYPH-13EF9 +<U00013EFA> /xf0/x93/xbb/xba EGYPTIAN HIEROGLYPH-13EFA +<U00013EFB> /xf0/x93/xbb/xbb EGYPTIAN HIEROGLYPH-13EFB +<U00013EFC> /xf0/x93/xbb/xbc EGYPTIAN HIEROGLYPH-13EFC +<U00013EFD> /xf0/x93/xbb/xbd EGYPTIAN HIEROGLYPH-13EFD +<U00013EFE> /xf0/x93/xbb/xbe EGYPTIAN HIEROGLYPH-13EFE +<U00013EFF> /xf0/x93/xbb/xbf EGYPTIAN HIEROGLYPH-13EFF +<U00013F00> /xf0/x93/xbc/x80 EGYPTIAN HIEROGLYPH-13F00 +<U00013F01> /xf0/x93/xbc/x81 EGYPTIAN HIEROGLYPH-13F01 +<U00013F02> /xf0/x93/xbc/x82 EGYPTIAN HIEROGLYPH-13F02 +<U00013F03> /xf0/x93/xbc/x83 EGYPTIAN HIEROGLYPH-13F03 +<U00013F04> /xf0/x93/xbc/x84 EGYPTIAN HIEROGLYPH-13F04 +<U00013F05> /xf0/x93/xbc/x85 EGYPTIAN HIEROGLYPH-13F05 +<U00013F06> /xf0/x93/xbc/x86 EGYPTIAN HIEROGLYPH-13F06 +<U00013F07> /xf0/x93/xbc/x87 EGYPTIAN HIEROGLYPH-13F07 +<U00013F08> /xf0/x93/xbc/x88 EGYPTIAN HIEROGLYPH-13F08 +<U00013F09> /xf0/x93/xbc/x89 EGYPTIAN HIEROGLYPH-13F09 +<U00013F0A> /xf0/x93/xbc/x8a EGYPTIAN HIEROGLYPH-13F0A +<U00013F0B> /xf0/x93/xbc/x8b EGYPTIAN HIEROGLYPH-13F0B +<U00013F0C> /xf0/x93/xbc/x8c EGYPTIAN HIEROGLYPH-13F0C +<U00013F0D> /xf0/x93/xbc/x8d EGYPTIAN HIEROGLYPH-13F0D +<U00013F0E> /xf0/x93/xbc/x8e EGYPTIAN HIEROGLYPH-13F0E +<U00013F0F> /xf0/x93/xbc/x8f EGYPTIAN HIEROGLYPH-13F0F +<U00013F10> /xf0/x93/xbc/x90 EGYPTIAN HIEROGLYPH-13F10 +<U00013F11> /xf0/x93/xbc/x91 EGYPTIAN HIEROGLYPH-13F11 +<U00013F12> /xf0/x93/xbc/x92 EGYPTIAN HIEROGLYPH-13F12 +<U00013F13> /xf0/x93/xbc/x93 EGYPTIAN HIEROGLYPH-13F13 +<U00013F14> /xf0/x93/xbc/x94 EGYPTIAN HIEROGLYPH-13F14 +<U00013F15> /xf0/x93/xbc/x95 EGYPTIAN HIEROGLYPH-13F15 +<U00013F16> /xf0/x93/xbc/x96 EGYPTIAN HIEROGLYPH-13F16 +<U00013F17> /xf0/x93/xbc/x97 EGYPTIAN HIEROGLYPH-13F17 +<U00013F18> /xf0/x93/xbc/x98 EGYPTIAN HIEROGLYPH-13F18 +<U00013F19> /xf0/x93/xbc/x99 EGYPTIAN HIEROGLYPH-13F19 +<U00013F1A> /xf0/x93/xbc/x9a EGYPTIAN HIEROGLYPH-13F1A +<U00013F1B> /xf0/x93/xbc/x9b EGYPTIAN HIEROGLYPH-13F1B +<U00013F1C> /xf0/x93/xbc/x9c EGYPTIAN HIEROGLYPH-13F1C +<U00013F1D> /xf0/x93/xbc/x9d EGYPTIAN HIEROGLYPH-13F1D +<U00013F1E> /xf0/x93/xbc/x9e EGYPTIAN HIEROGLYPH-13F1E +<U00013F1F> /xf0/x93/xbc/x9f EGYPTIAN HIEROGLYPH-13F1F +<U00013F20> /xf0/x93/xbc/xa0 EGYPTIAN HIEROGLYPH-13F20 +<U00013F21> /xf0/x93/xbc/xa1 EGYPTIAN HIEROGLYPH-13F21 +<U00013F22> /xf0/x93/xbc/xa2 EGYPTIAN HIEROGLYPH-13F22 +<U00013F23> /xf0/x93/xbc/xa3 EGYPTIAN HIEROGLYPH-13F23 +<U00013F24> /xf0/x93/xbc/xa4 EGYPTIAN HIEROGLYPH-13F24 +<U00013F25> /xf0/x93/xbc/xa5 EGYPTIAN HIEROGLYPH-13F25 +<U00013F26> /xf0/x93/xbc/xa6 EGYPTIAN HIEROGLYPH-13F26 +<U00013F27> /xf0/x93/xbc/xa7 EGYPTIAN HIEROGLYPH-13F27 +<U00013F28> /xf0/x93/xbc/xa8 EGYPTIAN HIEROGLYPH-13F28 +<U00013F29> /xf0/x93/xbc/xa9 EGYPTIAN HIEROGLYPH-13F29 +<U00013F2A> /xf0/x93/xbc/xaa EGYPTIAN HIEROGLYPH-13F2A +<U00013F2B> /xf0/x93/xbc/xab EGYPTIAN HIEROGLYPH-13F2B +<U00013F2C> /xf0/x93/xbc/xac EGYPTIAN HIEROGLYPH-13F2C +<U00013F2D> /xf0/x93/xbc/xad EGYPTIAN HIEROGLYPH-13F2D +<U00013F2E> /xf0/x93/xbc/xae EGYPTIAN HIEROGLYPH-13F2E +<U00013F2F> /xf0/x93/xbc/xaf EGYPTIAN HIEROGLYPH-13F2F +<U00013F30> /xf0/x93/xbc/xb0 EGYPTIAN HIEROGLYPH-13F30 +<U00013F31> /xf0/x93/xbc/xb1 EGYPTIAN HIEROGLYPH-13F31 +<U00013F32> /xf0/x93/xbc/xb2 EGYPTIAN HIEROGLYPH-13F32 +<U00013F33> /xf0/x93/xbc/xb3 EGYPTIAN HIEROGLYPH-13F33 +<U00013F34> /xf0/x93/xbc/xb4 EGYPTIAN HIEROGLYPH-13F34 +<U00013F35> /xf0/x93/xbc/xb5 EGYPTIAN HIEROGLYPH-13F35 +<U00013F36> /xf0/x93/xbc/xb6 EGYPTIAN HIEROGLYPH-13F36 +<U00013F37> /xf0/x93/xbc/xb7 EGYPTIAN HIEROGLYPH-13F37 +<U00013F38> /xf0/x93/xbc/xb8 EGYPTIAN HIEROGLYPH-13F38 +<U00013F39> /xf0/x93/xbc/xb9 EGYPTIAN HIEROGLYPH-13F39 +<U00013F3A> /xf0/x93/xbc/xba EGYPTIAN HIEROGLYPH-13F3A +<U00013F3B> /xf0/x93/xbc/xbb EGYPTIAN HIEROGLYPH-13F3B +<U00013F3C> /xf0/x93/xbc/xbc EGYPTIAN HIEROGLYPH-13F3C +<U00013F3D> /xf0/x93/xbc/xbd EGYPTIAN HIEROGLYPH-13F3D +<U00013F3E> /xf0/x93/xbc/xbe EGYPTIAN HIEROGLYPH-13F3E +<U00013F3F> /xf0/x93/xbc/xbf EGYPTIAN HIEROGLYPH-13F3F +<U00013F40> /xf0/x93/xbd/x80 EGYPTIAN HIEROGLYPH-13F40 +<U00013F41> /xf0/x93/xbd/x81 EGYPTIAN HIEROGLYPH-13F41 +<U00013F42> /xf0/x93/xbd/x82 EGYPTIAN HIEROGLYPH-13F42 +<U00013F43> /xf0/x93/xbd/x83 EGYPTIAN HIEROGLYPH-13F43 +<U00013F44> /xf0/x93/xbd/x84 EGYPTIAN HIEROGLYPH-13F44 +<U00013F45> /xf0/x93/xbd/x85 EGYPTIAN HIEROGLYPH-13F45 +<U00013F46> /xf0/x93/xbd/x86 EGYPTIAN HIEROGLYPH-13F46 +<U00013F47> /xf0/x93/xbd/x87 EGYPTIAN HIEROGLYPH-13F47 +<U00013F48> /xf0/x93/xbd/x88 EGYPTIAN HIEROGLYPH-13F48 +<U00013F49> /xf0/x93/xbd/x89 EGYPTIAN HIEROGLYPH-13F49 +<U00013F4A> /xf0/x93/xbd/x8a EGYPTIAN HIEROGLYPH-13F4A +<U00013F4B> /xf0/x93/xbd/x8b EGYPTIAN HIEROGLYPH-13F4B +<U00013F4C> /xf0/x93/xbd/x8c EGYPTIAN HIEROGLYPH-13F4C +<U00013F4D> /xf0/x93/xbd/x8d EGYPTIAN HIEROGLYPH-13F4D +<U00013F4E> /xf0/x93/xbd/x8e EGYPTIAN HIEROGLYPH-13F4E +<U00013F4F> /xf0/x93/xbd/x8f EGYPTIAN HIEROGLYPH-13F4F +<U00013F50> /xf0/x93/xbd/x90 EGYPTIAN HIEROGLYPH-13F50 +<U00013F51> /xf0/x93/xbd/x91 EGYPTIAN HIEROGLYPH-13F51 +<U00013F52> /xf0/x93/xbd/x92 EGYPTIAN HIEROGLYPH-13F52 +<U00013F53> /xf0/x93/xbd/x93 EGYPTIAN HIEROGLYPH-13F53 +<U00013F54> /xf0/x93/xbd/x94 EGYPTIAN HIEROGLYPH-13F54 +<U00013F55> /xf0/x93/xbd/x95 EGYPTIAN HIEROGLYPH-13F55 +<U00013F56> /xf0/x93/xbd/x96 EGYPTIAN HIEROGLYPH-13F56 +<U00013F57> /xf0/x93/xbd/x97 EGYPTIAN HIEROGLYPH-13F57 +<U00013F58> /xf0/x93/xbd/x98 EGYPTIAN HIEROGLYPH-13F58 +<U00013F59> /xf0/x93/xbd/x99 EGYPTIAN HIEROGLYPH-13F59 +<U00013F5A> /xf0/x93/xbd/x9a EGYPTIAN HIEROGLYPH-13F5A +<U00013F5B> /xf0/x93/xbd/x9b EGYPTIAN HIEROGLYPH-13F5B +<U00013F5C> /xf0/x93/xbd/x9c EGYPTIAN HIEROGLYPH-13F5C +<U00013F5D> /xf0/x93/xbd/x9d EGYPTIAN HIEROGLYPH-13F5D +<U00013F5E> /xf0/x93/xbd/x9e EGYPTIAN HIEROGLYPH-13F5E +<U00013F5F> /xf0/x93/xbd/x9f EGYPTIAN HIEROGLYPH-13F5F +<U00013F60> /xf0/x93/xbd/xa0 EGYPTIAN HIEROGLYPH-13F60 +<U00013F61> /xf0/x93/xbd/xa1 EGYPTIAN HIEROGLYPH-13F61 +<U00013F62> /xf0/x93/xbd/xa2 EGYPTIAN HIEROGLYPH-13F62 +<U00013F63> /xf0/x93/xbd/xa3 EGYPTIAN HIEROGLYPH-13F63 +<U00013F64> /xf0/x93/xbd/xa4 EGYPTIAN HIEROGLYPH-13F64 +<U00013F65> /xf0/x93/xbd/xa5 EGYPTIAN HIEROGLYPH-13F65 +<U00013F66> /xf0/x93/xbd/xa6 EGYPTIAN HIEROGLYPH-13F66 +<U00013F67> /xf0/x93/xbd/xa7 EGYPTIAN HIEROGLYPH-13F67 +<U00013F68> /xf0/x93/xbd/xa8 EGYPTIAN HIEROGLYPH-13F68 +<U00013F69> /xf0/x93/xbd/xa9 EGYPTIAN HIEROGLYPH-13F69 +<U00013F6A> /xf0/x93/xbd/xaa EGYPTIAN HIEROGLYPH-13F6A +<U00013F6B> /xf0/x93/xbd/xab EGYPTIAN HIEROGLYPH-13F6B +<U00013F6C> /xf0/x93/xbd/xac EGYPTIAN HIEROGLYPH-13F6C +<U00013F6D> /xf0/x93/xbd/xad EGYPTIAN HIEROGLYPH-13F6D +<U00013F6E> /xf0/x93/xbd/xae EGYPTIAN HIEROGLYPH-13F6E +<U00013F6F> /xf0/x93/xbd/xaf EGYPTIAN HIEROGLYPH-13F6F +<U00013F70> /xf0/x93/xbd/xb0 EGYPTIAN HIEROGLYPH-13F70 +<U00013F71> /xf0/x93/xbd/xb1 EGYPTIAN HIEROGLYPH-13F71 +<U00013F72> /xf0/x93/xbd/xb2 EGYPTIAN HIEROGLYPH-13F72 +<U00013F73> /xf0/x93/xbd/xb3 EGYPTIAN HIEROGLYPH-13F73 +<U00013F74> /xf0/x93/xbd/xb4 EGYPTIAN HIEROGLYPH-13F74 +<U00013F75> /xf0/x93/xbd/xb5 EGYPTIAN HIEROGLYPH-13F75 +<U00013F76> /xf0/x93/xbd/xb6 EGYPTIAN HIEROGLYPH-13F76 +<U00013F77> /xf0/x93/xbd/xb7 EGYPTIAN HIEROGLYPH-13F77 +<U00013F78> /xf0/x93/xbd/xb8 EGYPTIAN HIEROGLYPH-13F78 +<U00013F79> /xf0/x93/xbd/xb9 EGYPTIAN HIEROGLYPH-13F79 +<U00013F7A> /xf0/x93/xbd/xba EGYPTIAN HIEROGLYPH-13F7A +<U00013F7B> /xf0/x93/xbd/xbb EGYPTIAN HIEROGLYPH-13F7B +<U00013F7C> /xf0/x93/xbd/xbc EGYPTIAN HIEROGLYPH-13F7C +<U00013F7D> /xf0/x93/xbd/xbd EGYPTIAN HIEROGLYPH-13F7D +<U00013F7E> /xf0/x93/xbd/xbe EGYPTIAN HIEROGLYPH-13F7E +<U00013F7F> /xf0/x93/xbd/xbf EGYPTIAN HIEROGLYPH-13F7F +<U00013F80> /xf0/x93/xbe/x80 EGYPTIAN HIEROGLYPH-13F80 +<U00013F81> /xf0/x93/xbe/x81 EGYPTIAN HIEROGLYPH-13F81 +<U00013F82> /xf0/x93/xbe/x82 EGYPTIAN HIEROGLYPH-13F82 +<U00013F83> /xf0/x93/xbe/x83 EGYPTIAN HIEROGLYPH-13F83 +<U00013F84> /xf0/x93/xbe/x84 EGYPTIAN HIEROGLYPH-13F84 +<U00013F85> /xf0/x93/xbe/x85 EGYPTIAN HIEROGLYPH-13F85 +<U00013F86> /xf0/x93/xbe/x86 EGYPTIAN HIEROGLYPH-13F86 +<U00013F87> /xf0/x93/xbe/x87 EGYPTIAN HIEROGLYPH-13F87 +<U00013F88> /xf0/x93/xbe/x88 EGYPTIAN HIEROGLYPH-13F88 +<U00013F89> /xf0/x93/xbe/x89 EGYPTIAN HIEROGLYPH-13F89 +<U00013F8A> /xf0/x93/xbe/x8a EGYPTIAN HIEROGLYPH-13F8A +<U00013F8B> /xf0/x93/xbe/x8b EGYPTIAN HIEROGLYPH-13F8B +<U00013F8C> /xf0/x93/xbe/x8c EGYPTIAN HIEROGLYPH-13F8C +<U00013F8D> /xf0/x93/xbe/x8d EGYPTIAN HIEROGLYPH-13F8D +<U00013F8E> /xf0/x93/xbe/x8e EGYPTIAN HIEROGLYPH-13F8E +<U00013F8F> /xf0/x93/xbe/x8f EGYPTIAN HIEROGLYPH-13F8F +<U00013F90> /xf0/x93/xbe/x90 EGYPTIAN HIEROGLYPH-13F90 +<U00013F91> /xf0/x93/xbe/x91 EGYPTIAN HIEROGLYPH-13F91 +<U00013F92> /xf0/x93/xbe/x92 EGYPTIAN HIEROGLYPH-13F92 +<U00013F93> /xf0/x93/xbe/x93 EGYPTIAN HIEROGLYPH-13F93 +<U00013F94> /xf0/x93/xbe/x94 EGYPTIAN HIEROGLYPH-13F94 +<U00013F95> /xf0/x93/xbe/x95 EGYPTIAN HIEROGLYPH-13F95 +<U00013F96> /xf0/x93/xbe/x96 EGYPTIAN HIEROGLYPH-13F96 +<U00013F97> /xf0/x93/xbe/x97 EGYPTIAN HIEROGLYPH-13F97 +<U00013F98> /xf0/x93/xbe/x98 EGYPTIAN HIEROGLYPH-13F98 +<U00013F99> /xf0/x93/xbe/x99 EGYPTIAN HIEROGLYPH-13F99 +<U00013F9A> /xf0/x93/xbe/x9a EGYPTIAN HIEROGLYPH-13F9A +<U00013F9B> /xf0/x93/xbe/x9b EGYPTIAN HIEROGLYPH-13F9B +<U00013F9C> /xf0/x93/xbe/x9c EGYPTIAN HIEROGLYPH-13F9C +<U00013F9D> /xf0/x93/xbe/x9d EGYPTIAN HIEROGLYPH-13F9D +<U00013F9E> /xf0/x93/xbe/x9e EGYPTIAN HIEROGLYPH-13F9E +<U00013F9F> /xf0/x93/xbe/x9f EGYPTIAN HIEROGLYPH-13F9F +<U00013FA0> /xf0/x93/xbe/xa0 EGYPTIAN HIEROGLYPH-13FA0 +<U00013FA1> /xf0/x93/xbe/xa1 EGYPTIAN HIEROGLYPH-13FA1 +<U00013FA2> /xf0/x93/xbe/xa2 EGYPTIAN HIEROGLYPH-13FA2 +<U00013FA3> /xf0/x93/xbe/xa3 EGYPTIAN HIEROGLYPH-13FA3 +<U00013FA4> /xf0/x93/xbe/xa4 EGYPTIAN HIEROGLYPH-13FA4 +<U00013FA5> /xf0/x93/xbe/xa5 EGYPTIAN HIEROGLYPH-13FA5 +<U00013FA6> /xf0/x93/xbe/xa6 EGYPTIAN HIEROGLYPH-13FA6 +<U00013FA7> /xf0/x93/xbe/xa7 EGYPTIAN HIEROGLYPH-13FA7 +<U00013FA8> /xf0/x93/xbe/xa8 EGYPTIAN HIEROGLYPH-13FA8 +<U00013FA9> /xf0/x93/xbe/xa9 EGYPTIAN HIEROGLYPH-13FA9 +<U00013FAA> /xf0/x93/xbe/xaa EGYPTIAN HIEROGLYPH-13FAA +<U00013FAB> /xf0/x93/xbe/xab EGYPTIAN HIEROGLYPH-13FAB +<U00013FAC> /xf0/x93/xbe/xac EGYPTIAN HIEROGLYPH-13FAC +<U00013FAD> /xf0/x93/xbe/xad EGYPTIAN HIEROGLYPH-13FAD +<U00013FAE> /xf0/x93/xbe/xae EGYPTIAN HIEROGLYPH-13FAE +<U00013FAF> /xf0/x93/xbe/xaf EGYPTIAN HIEROGLYPH-13FAF +<U00013FB0> /xf0/x93/xbe/xb0 EGYPTIAN HIEROGLYPH-13FB0 +<U00013FB1> /xf0/x93/xbe/xb1 EGYPTIAN HIEROGLYPH-13FB1 +<U00013FB2> /xf0/x93/xbe/xb2 EGYPTIAN HIEROGLYPH-13FB2 +<U00013FB3> /xf0/x93/xbe/xb3 EGYPTIAN HIEROGLYPH-13FB3 +<U00013FB4> /xf0/x93/xbe/xb4 EGYPTIAN HIEROGLYPH-13FB4 +<U00013FB5> /xf0/x93/xbe/xb5 EGYPTIAN HIEROGLYPH-13FB5 +<U00013FB6> /xf0/x93/xbe/xb6 EGYPTIAN HIEROGLYPH-13FB6 +<U00013FB7> /xf0/x93/xbe/xb7 EGYPTIAN HIEROGLYPH-13FB7 +<U00013FB8> /xf0/x93/xbe/xb8 EGYPTIAN HIEROGLYPH-13FB8 +<U00013FB9> /xf0/x93/xbe/xb9 EGYPTIAN HIEROGLYPH-13FB9 +<U00013FBA> /xf0/x93/xbe/xba EGYPTIAN HIEROGLYPH-13FBA +<U00013FBB> /xf0/x93/xbe/xbb EGYPTIAN HIEROGLYPH-13FBB +<U00013FBC> /xf0/x93/xbe/xbc EGYPTIAN HIEROGLYPH-13FBC +<U00013FBD> /xf0/x93/xbe/xbd EGYPTIAN HIEROGLYPH-13FBD +<U00013FBE> /xf0/x93/xbe/xbe EGYPTIAN HIEROGLYPH-13FBE +<U00013FBF> /xf0/x93/xbe/xbf EGYPTIAN HIEROGLYPH-13FBF +<U00013FC0> /xf0/x93/xbf/x80 EGYPTIAN HIEROGLYPH-13FC0 +<U00013FC1> /xf0/x93/xbf/x81 EGYPTIAN HIEROGLYPH-13FC1 +<U00013FC2> /xf0/x93/xbf/x82 EGYPTIAN HIEROGLYPH-13FC2 +<U00013FC3> /xf0/x93/xbf/x83 EGYPTIAN HIEROGLYPH-13FC3 +<U00013FC4> /xf0/x93/xbf/x84 EGYPTIAN HIEROGLYPH-13FC4 +<U00013FC5> /xf0/x93/xbf/x85 EGYPTIAN HIEROGLYPH-13FC5 +<U00013FC6> /xf0/x93/xbf/x86 EGYPTIAN HIEROGLYPH-13FC6 +<U00013FC7> /xf0/x93/xbf/x87 EGYPTIAN HIEROGLYPH-13FC7 +<U00013FC8> /xf0/x93/xbf/x88 EGYPTIAN HIEROGLYPH-13FC8 +<U00013FC9> /xf0/x93/xbf/x89 EGYPTIAN HIEROGLYPH-13FC9 +<U00013FCA> /xf0/x93/xbf/x8a EGYPTIAN HIEROGLYPH-13FCA +<U00013FCB> /xf0/x93/xbf/x8b EGYPTIAN HIEROGLYPH-13FCB +<U00013FCC> /xf0/x93/xbf/x8c EGYPTIAN HIEROGLYPH-13FCC +<U00013FCD> /xf0/x93/xbf/x8d EGYPTIAN HIEROGLYPH-13FCD +<U00013FCE> /xf0/x93/xbf/x8e EGYPTIAN HIEROGLYPH-13FCE +<U00013FCF> /xf0/x93/xbf/x8f EGYPTIAN HIEROGLYPH-13FCF +<U00013FD0> /xf0/x93/xbf/x90 EGYPTIAN HIEROGLYPH-13FD0 +<U00013FD1> /xf0/x93/xbf/x91 EGYPTIAN HIEROGLYPH-13FD1 +<U00013FD2> /xf0/x93/xbf/x92 EGYPTIAN HIEROGLYPH-13FD2 +<U00013FD3> /xf0/x93/xbf/x93 EGYPTIAN HIEROGLYPH-13FD3 +<U00013FD4> /xf0/x93/xbf/x94 EGYPTIAN HIEROGLYPH-13FD4 +<U00013FD5> /xf0/x93/xbf/x95 EGYPTIAN HIEROGLYPH-13FD5 +<U00013FD6> /xf0/x93/xbf/x96 EGYPTIAN HIEROGLYPH-13FD6 +<U00013FD7> /xf0/x93/xbf/x97 EGYPTIAN HIEROGLYPH-13FD7 +<U00013FD8> /xf0/x93/xbf/x98 EGYPTIAN HIEROGLYPH-13FD8 +<U00013FD9> /xf0/x93/xbf/x99 EGYPTIAN HIEROGLYPH-13FD9 +<U00013FDA> /xf0/x93/xbf/x9a EGYPTIAN HIEROGLYPH-13FDA +<U00013FDB> /xf0/x93/xbf/x9b EGYPTIAN HIEROGLYPH-13FDB +<U00013FDC> /xf0/x93/xbf/x9c EGYPTIAN HIEROGLYPH-13FDC +<U00013FDD> /xf0/x93/xbf/x9d EGYPTIAN HIEROGLYPH-13FDD +<U00013FDE> /xf0/x93/xbf/x9e EGYPTIAN HIEROGLYPH-13FDE +<U00013FDF> /xf0/x93/xbf/x9f EGYPTIAN HIEROGLYPH-13FDF +<U00013FE0> /xf0/x93/xbf/xa0 EGYPTIAN HIEROGLYPH-13FE0 +<U00013FE1> /xf0/x93/xbf/xa1 EGYPTIAN HIEROGLYPH-13FE1 +<U00013FE2> /xf0/x93/xbf/xa2 EGYPTIAN HIEROGLYPH-13FE2 +<U00013FE3> /xf0/x93/xbf/xa3 EGYPTIAN HIEROGLYPH-13FE3 +<U00013FE4> /xf0/x93/xbf/xa4 EGYPTIAN HIEROGLYPH-13FE4 +<U00013FE5> /xf0/x93/xbf/xa5 EGYPTIAN HIEROGLYPH-13FE5 +<U00013FE6> /xf0/x93/xbf/xa6 EGYPTIAN HIEROGLYPH-13FE6 +<U00013FE7> /xf0/x93/xbf/xa7 EGYPTIAN HIEROGLYPH-13FE7 +<U00013FE8> /xf0/x93/xbf/xa8 EGYPTIAN HIEROGLYPH-13FE8 +<U00013FE9> /xf0/x93/xbf/xa9 EGYPTIAN HIEROGLYPH-13FE9 +<U00013FEA> /xf0/x93/xbf/xaa EGYPTIAN HIEROGLYPH-13FEA +<U00013FEB> /xf0/x93/xbf/xab EGYPTIAN HIEROGLYPH-13FEB +<U00013FEC> /xf0/x93/xbf/xac EGYPTIAN HIEROGLYPH-13FEC +<U00013FED> /xf0/x93/xbf/xad EGYPTIAN HIEROGLYPH-13FED +<U00013FEE> /xf0/x93/xbf/xae EGYPTIAN HIEROGLYPH-13FEE +<U00013FEF> /xf0/x93/xbf/xaf EGYPTIAN HIEROGLYPH-13FEF +<U00013FF0> /xf0/x93/xbf/xb0 EGYPTIAN HIEROGLYPH-13FF0 +<U00013FF1> /xf0/x93/xbf/xb1 EGYPTIAN HIEROGLYPH-13FF1 +<U00013FF2> /xf0/x93/xbf/xb2 EGYPTIAN HIEROGLYPH-13FF2 +<U00013FF3> /xf0/x93/xbf/xb3 EGYPTIAN HIEROGLYPH-13FF3 +<U00013FF4> /xf0/x93/xbf/xb4 EGYPTIAN HIEROGLYPH-13FF4 +<U00013FF5> /xf0/x93/xbf/xb5 EGYPTIAN HIEROGLYPH-13FF5 +<U00013FF6> /xf0/x93/xbf/xb6 EGYPTIAN HIEROGLYPH-13FF6 +<U00013FF7> /xf0/x93/xbf/xb7 EGYPTIAN HIEROGLYPH-13FF7 +<U00013FF8> /xf0/x93/xbf/xb8 EGYPTIAN HIEROGLYPH-13FF8 +<U00013FF9> /xf0/x93/xbf/xb9 EGYPTIAN HIEROGLYPH-13FF9 +<U00013FFA> /xf0/x93/xbf/xba EGYPTIAN HIEROGLYPH-13FFA +<U00013FFB> /xf0/x93/xbf/xbb EGYPTIAN HIEROGLYPH-13FFB +<U00013FFC> /xf0/x93/xbf/xbc EGYPTIAN HIEROGLYPH-13FFC +<U00013FFD> /xf0/x93/xbf/xbd EGYPTIAN HIEROGLYPH-13FFD +<U00013FFE> /xf0/x93/xbf/xbe EGYPTIAN HIEROGLYPH-13FFE +<U00013FFF> /xf0/x93/xbf/xbf EGYPTIAN HIEROGLYPH-13FFF +<U00014000> /xf0/x94/x80/x80 EGYPTIAN HIEROGLYPH-14000 +<U00014001> /xf0/x94/x80/x81 EGYPTIAN HIEROGLYPH-14001 +<U00014002> /xf0/x94/x80/x82 EGYPTIAN HIEROGLYPH-14002 +<U00014003> /xf0/x94/x80/x83 EGYPTIAN HIEROGLYPH-14003 +<U00014004> /xf0/x94/x80/x84 EGYPTIAN HIEROGLYPH-14004 +<U00014005> /xf0/x94/x80/x85 EGYPTIAN HIEROGLYPH-14005 +<U00014006> /xf0/x94/x80/x86 EGYPTIAN HIEROGLYPH-14006 +<U00014007> /xf0/x94/x80/x87 EGYPTIAN HIEROGLYPH-14007 +<U00014008> /xf0/x94/x80/x88 EGYPTIAN HIEROGLYPH-14008 +<U00014009> /xf0/x94/x80/x89 EGYPTIAN HIEROGLYPH-14009 +<U0001400A> /xf0/x94/x80/x8a EGYPTIAN HIEROGLYPH-1400A +<U0001400B> /xf0/x94/x80/x8b EGYPTIAN HIEROGLYPH-1400B +<U0001400C> /xf0/x94/x80/x8c EGYPTIAN HIEROGLYPH-1400C +<U0001400D> /xf0/x94/x80/x8d EGYPTIAN HIEROGLYPH-1400D +<U0001400E> /xf0/x94/x80/x8e EGYPTIAN HIEROGLYPH-1400E +<U0001400F> /xf0/x94/x80/x8f EGYPTIAN HIEROGLYPH-1400F +<U00014010> /xf0/x94/x80/x90 EGYPTIAN HIEROGLYPH-14010 +<U00014011> /xf0/x94/x80/x91 EGYPTIAN HIEROGLYPH-14011 +<U00014012> /xf0/x94/x80/x92 EGYPTIAN HIEROGLYPH-14012 +<U00014013> /xf0/x94/x80/x93 EGYPTIAN HIEROGLYPH-14013 +<U00014014> /xf0/x94/x80/x94 EGYPTIAN HIEROGLYPH-14014 +<U00014015> /xf0/x94/x80/x95 EGYPTIAN HIEROGLYPH-14015 +<U00014016> /xf0/x94/x80/x96 EGYPTIAN HIEROGLYPH-14016 +<U00014017> /xf0/x94/x80/x97 EGYPTIAN HIEROGLYPH-14017 +<U00014018> /xf0/x94/x80/x98 EGYPTIAN HIEROGLYPH-14018 +<U00014019> /xf0/x94/x80/x99 EGYPTIAN HIEROGLYPH-14019 +<U0001401A> /xf0/x94/x80/x9a EGYPTIAN HIEROGLYPH-1401A +<U0001401B> /xf0/x94/x80/x9b EGYPTIAN HIEROGLYPH-1401B +<U0001401C> /xf0/x94/x80/x9c EGYPTIAN HIEROGLYPH-1401C +<U0001401D> /xf0/x94/x80/x9d EGYPTIAN HIEROGLYPH-1401D +<U0001401E> /xf0/x94/x80/x9e EGYPTIAN HIEROGLYPH-1401E +<U0001401F> /xf0/x94/x80/x9f EGYPTIAN HIEROGLYPH-1401F +<U00014020> /xf0/x94/x80/xa0 EGYPTIAN HIEROGLYPH-14020 +<U00014021> /xf0/x94/x80/xa1 EGYPTIAN HIEROGLYPH-14021 +<U00014022> /xf0/x94/x80/xa2 EGYPTIAN HIEROGLYPH-14022 +<U00014023> /xf0/x94/x80/xa3 EGYPTIAN HIEROGLYPH-14023 +<U00014024> /xf0/x94/x80/xa4 EGYPTIAN HIEROGLYPH-14024 +<U00014025> /xf0/x94/x80/xa5 EGYPTIAN HIEROGLYPH-14025 +<U00014026> /xf0/x94/x80/xa6 EGYPTIAN HIEROGLYPH-14026 +<U00014027> /xf0/x94/x80/xa7 EGYPTIAN HIEROGLYPH-14027 +<U00014028> /xf0/x94/x80/xa8 EGYPTIAN HIEROGLYPH-14028 +<U00014029> /xf0/x94/x80/xa9 EGYPTIAN HIEROGLYPH-14029 +<U0001402A> /xf0/x94/x80/xaa EGYPTIAN HIEROGLYPH-1402A +<U0001402B> /xf0/x94/x80/xab EGYPTIAN HIEROGLYPH-1402B +<U0001402C> /xf0/x94/x80/xac EGYPTIAN HIEROGLYPH-1402C +<U0001402D> /xf0/x94/x80/xad EGYPTIAN HIEROGLYPH-1402D +<U0001402E> /xf0/x94/x80/xae EGYPTIAN HIEROGLYPH-1402E +<U0001402F> /xf0/x94/x80/xaf EGYPTIAN HIEROGLYPH-1402F +<U00014030> /xf0/x94/x80/xb0 EGYPTIAN HIEROGLYPH-14030 +<U00014031> /xf0/x94/x80/xb1 EGYPTIAN HIEROGLYPH-14031 +<U00014032> /xf0/x94/x80/xb2 EGYPTIAN HIEROGLYPH-14032 +<U00014033> /xf0/x94/x80/xb3 EGYPTIAN HIEROGLYPH-14033 +<U00014034> /xf0/x94/x80/xb4 EGYPTIAN HIEROGLYPH-14034 +<U00014035> /xf0/x94/x80/xb5 EGYPTIAN HIEROGLYPH-14035 +<U00014036> /xf0/x94/x80/xb6 EGYPTIAN HIEROGLYPH-14036 +<U00014037> /xf0/x94/x80/xb7 EGYPTIAN HIEROGLYPH-14037 +<U00014038> /xf0/x94/x80/xb8 EGYPTIAN HIEROGLYPH-14038 +<U00014039> /xf0/x94/x80/xb9 EGYPTIAN HIEROGLYPH-14039 +<U0001403A> /xf0/x94/x80/xba EGYPTIAN HIEROGLYPH-1403A +<U0001403B> /xf0/x94/x80/xbb EGYPTIAN HIEROGLYPH-1403B +<U0001403C> /xf0/x94/x80/xbc EGYPTIAN HIEROGLYPH-1403C +<U0001403D> /xf0/x94/x80/xbd EGYPTIAN HIEROGLYPH-1403D +<U0001403E> /xf0/x94/x80/xbe EGYPTIAN HIEROGLYPH-1403E +<U0001403F> /xf0/x94/x80/xbf EGYPTIAN HIEROGLYPH-1403F +<U00014040> /xf0/x94/x81/x80 EGYPTIAN HIEROGLYPH-14040 +<U00014041> /xf0/x94/x81/x81 EGYPTIAN HIEROGLYPH-14041 +<U00014042> /xf0/x94/x81/x82 EGYPTIAN HIEROGLYPH-14042 +<U00014043> /xf0/x94/x81/x83 EGYPTIAN HIEROGLYPH-14043 +<U00014044> /xf0/x94/x81/x84 EGYPTIAN HIEROGLYPH-14044 +<U00014045> /xf0/x94/x81/x85 EGYPTIAN HIEROGLYPH-14045 +<U00014046> /xf0/x94/x81/x86 EGYPTIAN HIEROGLYPH-14046 +<U00014047> /xf0/x94/x81/x87 EGYPTIAN HIEROGLYPH-14047 +<U00014048> /xf0/x94/x81/x88 EGYPTIAN HIEROGLYPH-14048 +<U00014049> /xf0/x94/x81/x89 EGYPTIAN HIEROGLYPH-14049 +<U0001404A> /xf0/x94/x81/x8a EGYPTIAN HIEROGLYPH-1404A +<U0001404B> /xf0/x94/x81/x8b EGYPTIAN HIEROGLYPH-1404B +<U0001404C> /xf0/x94/x81/x8c EGYPTIAN HIEROGLYPH-1404C +<U0001404D> /xf0/x94/x81/x8d EGYPTIAN HIEROGLYPH-1404D +<U0001404E> /xf0/x94/x81/x8e EGYPTIAN HIEROGLYPH-1404E +<U0001404F> /xf0/x94/x81/x8f EGYPTIAN HIEROGLYPH-1404F +<U00014050> /xf0/x94/x81/x90 EGYPTIAN HIEROGLYPH-14050 +<U00014051> /xf0/x94/x81/x91 EGYPTIAN HIEROGLYPH-14051 +<U00014052> /xf0/x94/x81/x92 EGYPTIAN HIEROGLYPH-14052 +<U00014053> /xf0/x94/x81/x93 EGYPTIAN HIEROGLYPH-14053 +<U00014054> /xf0/x94/x81/x94 EGYPTIAN HIEROGLYPH-14054 +<U00014055> /xf0/x94/x81/x95 EGYPTIAN HIEROGLYPH-14055 +<U00014056> /xf0/x94/x81/x96 EGYPTIAN HIEROGLYPH-14056 +<U00014057> /xf0/x94/x81/x97 EGYPTIAN HIEROGLYPH-14057 +<U00014058> /xf0/x94/x81/x98 EGYPTIAN HIEROGLYPH-14058 +<U00014059> /xf0/x94/x81/x99 EGYPTIAN HIEROGLYPH-14059 +<U0001405A> /xf0/x94/x81/x9a EGYPTIAN HIEROGLYPH-1405A +<U0001405B> /xf0/x94/x81/x9b EGYPTIAN HIEROGLYPH-1405B +<U0001405C> /xf0/x94/x81/x9c EGYPTIAN HIEROGLYPH-1405C +<U0001405D> /xf0/x94/x81/x9d EGYPTIAN HIEROGLYPH-1405D +<U0001405E> /xf0/x94/x81/x9e EGYPTIAN HIEROGLYPH-1405E +<U0001405F> /xf0/x94/x81/x9f EGYPTIAN HIEROGLYPH-1405F +<U00014060> /xf0/x94/x81/xa0 EGYPTIAN HIEROGLYPH-14060 +<U00014061> /xf0/x94/x81/xa1 EGYPTIAN HIEROGLYPH-14061 +<U00014062> /xf0/x94/x81/xa2 EGYPTIAN HIEROGLYPH-14062 +<U00014063> /xf0/x94/x81/xa3 EGYPTIAN HIEROGLYPH-14063 +<U00014064> /xf0/x94/x81/xa4 EGYPTIAN HIEROGLYPH-14064 +<U00014065> /xf0/x94/x81/xa5 EGYPTIAN HIEROGLYPH-14065 +<U00014066> /xf0/x94/x81/xa6 EGYPTIAN HIEROGLYPH-14066 +<U00014067> /xf0/x94/x81/xa7 EGYPTIAN HIEROGLYPH-14067 +<U00014068> /xf0/x94/x81/xa8 EGYPTIAN HIEROGLYPH-14068 +<U00014069> /xf0/x94/x81/xa9 EGYPTIAN HIEROGLYPH-14069 +<U0001406A> /xf0/x94/x81/xaa EGYPTIAN HIEROGLYPH-1406A +<U0001406B> /xf0/x94/x81/xab EGYPTIAN HIEROGLYPH-1406B +<U0001406C> /xf0/x94/x81/xac EGYPTIAN HIEROGLYPH-1406C +<U0001406D> /xf0/x94/x81/xad EGYPTIAN HIEROGLYPH-1406D +<U0001406E> /xf0/x94/x81/xae EGYPTIAN HIEROGLYPH-1406E +<U0001406F> /xf0/x94/x81/xaf EGYPTIAN HIEROGLYPH-1406F +<U00014070> /xf0/x94/x81/xb0 EGYPTIAN HIEROGLYPH-14070 +<U00014071> /xf0/x94/x81/xb1 EGYPTIAN HIEROGLYPH-14071 +<U00014072> /xf0/x94/x81/xb2 EGYPTIAN HIEROGLYPH-14072 +<U00014073> /xf0/x94/x81/xb3 EGYPTIAN HIEROGLYPH-14073 +<U00014074> /xf0/x94/x81/xb4 EGYPTIAN HIEROGLYPH-14074 +<U00014075> /xf0/x94/x81/xb5 EGYPTIAN HIEROGLYPH-14075 +<U00014076> /xf0/x94/x81/xb6 EGYPTIAN HIEROGLYPH-14076 +<U00014077> /xf0/x94/x81/xb7 EGYPTIAN HIEROGLYPH-14077 +<U00014078> /xf0/x94/x81/xb8 EGYPTIAN HIEROGLYPH-14078 +<U00014079> /xf0/x94/x81/xb9 EGYPTIAN HIEROGLYPH-14079 +<U0001407A> /xf0/x94/x81/xba EGYPTIAN HIEROGLYPH-1407A +<U0001407B> /xf0/x94/x81/xbb EGYPTIAN HIEROGLYPH-1407B +<U0001407C> /xf0/x94/x81/xbc EGYPTIAN HIEROGLYPH-1407C +<U0001407D> /xf0/x94/x81/xbd EGYPTIAN HIEROGLYPH-1407D +<U0001407E> /xf0/x94/x81/xbe EGYPTIAN HIEROGLYPH-1407E +<U0001407F> /xf0/x94/x81/xbf EGYPTIAN HIEROGLYPH-1407F +<U00014080> /xf0/x94/x82/x80 EGYPTIAN HIEROGLYPH-14080 +<U00014081> /xf0/x94/x82/x81 EGYPTIAN HIEROGLYPH-14081 +<U00014082> /xf0/x94/x82/x82 EGYPTIAN HIEROGLYPH-14082 +<U00014083> /xf0/x94/x82/x83 EGYPTIAN HIEROGLYPH-14083 +<U00014084> /xf0/x94/x82/x84 EGYPTIAN HIEROGLYPH-14084 +<U00014085> /xf0/x94/x82/x85 EGYPTIAN HIEROGLYPH-14085 +<U00014086> /xf0/x94/x82/x86 EGYPTIAN HIEROGLYPH-14086 +<U00014087> /xf0/x94/x82/x87 EGYPTIAN HIEROGLYPH-14087 +<U00014088> /xf0/x94/x82/x88 EGYPTIAN HIEROGLYPH-14088 +<U00014089> /xf0/x94/x82/x89 EGYPTIAN HIEROGLYPH-14089 +<U0001408A> /xf0/x94/x82/x8a EGYPTIAN HIEROGLYPH-1408A +<U0001408B> /xf0/x94/x82/x8b EGYPTIAN HIEROGLYPH-1408B +<U0001408C> /xf0/x94/x82/x8c EGYPTIAN HIEROGLYPH-1408C +<U0001408D> /xf0/x94/x82/x8d EGYPTIAN HIEROGLYPH-1408D +<U0001408E> /xf0/x94/x82/x8e EGYPTIAN HIEROGLYPH-1408E +<U0001408F> /xf0/x94/x82/x8f EGYPTIAN HIEROGLYPH-1408F +<U00014090> /xf0/x94/x82/x90 EGYPTIAN HIEROGLYPH-14090 +<U00014091> /xf0/x94/x82/x91 EGYPTIAN HIEROGLYPH-14091 +<U00014092> /xf0/x94/x82/x92 EGYPTIAN HIEROGLYPH-14092 +<U00014093> /xf0/x94/x82/x93 EGYPTIAN HIEROGLYPH-14093 +<U00014094> /xf0/x94/x82/x94 EGYPTIAN HIEROGLYPH-14094 +<U00014095> /xf0/x94/x82/x95 EGYPTIAN HIEROGLYPH-14095 +<U00014096> /xf0/x94/x82/x96 EGYPTIAN HIEROGLYPH-14096 +<U00014097> /xf0/x94/x82/x97 EGYPTIAN HIEROGLYPH-14097 +<U00014098> /xf0/x94/x82/x98 EGYPTIAN HIEROGLYPH-14098 +<U00014099> /xf0/x94/x82/x99 EGYPTIAN HIEROGLYPH-14099 +<U0001409A> /xf0/x94/x82/x9a EGYPTIAN HIEROGLYPH-1409A +<U0001409B> /xf0/x94/x82/x9b EGYPTIAN HIEROGLYPH-1409B +<U0001409C> /xf0/x94/x82/x9c EGYPTIAN HIEROGLYPH-1409C +<U0001409D> /xf0/x94/x82/x9d EGYPTIAN HIEROGLYPH-1409D +<U0001409E> /xf0/x94/x82/x9e EGYPTIAN HIEROGLYPH-1409E +<U0001409F> /xf0/x94/x82/x9f EGYPTIAN HIEROGLYPH-1409F +<U000140A0> /xf0/x94/x82/xa0 EGYPTIAN HIEROGLYPH-140A0 +<U000140A1> /xf0/x94/x82/xa1 EGYPTIAN HIEROGLYPH-140A1 +<U000140A2> /xf0/x94/x82/xa2 EGYPTIAN HIEROGLYPH-140A2 +<U000140A3> /xf0/x94/x82/xa3 EGYPTIAN HIEROGLYPH-140A3 +<U000140A4> /xf0/x94/x82/xa4 EGYPTIAN HIEROGLYPH-140A4 +<U000140A5> /xf0/x94/x82/xa5 EGYPTIAN HIEROGLYPH-140A5 +<U000140A6> /xf0/x94/x82/xa6 EGYPTIAN HIEROGLYPH-140A6 +<U000140A7> /xf0/x94/x82/xa7 EGYPTIAN HIEROGLYPH-140A7 +<U000140A8> /xf0/x94/x82/xa8 EGYPTIAN HIEROGLYPH-140A8 +<U000140A9> /xf0/x94/x82/xa9 EGYPTIAN HIEROGLYPH-140A9 +<U000140AA> /xf0/x94/x82/xaa EGYPTIAN HIEROGLYPH-140AA +<U000140AB> /xf0/x94/x82/xab EGYPTIAN HIEROGLYPH-140AB +<U000140AC> /xf0/x94/x82/xac EGYPTIAN HIEROGLYPH-140AC +<U000140AD> /xf0/x94/x82/xad EGYPTIAN HIEROGLYPH-140AD +<U000140AE> /xf0/x94/x82/xae EGYPTIAN HIEROGLYPH-140AE +<U000140AF> /xf0/x94/x82/xaf EGYPTIAN HIEROGLYPH-140AF +<U000140B0> /xf0/x94/x82/xb0 EGYPTIAN HIEROGLYPH-140B0 +<U000140B1> /xf0/x94/x82/xb1 EGYPTIAN HIEROGLYPH-140B1 +<U000140B2> /xf0/x94/x82/xb2 EGYPTIAN HIEROGLYPH-140B2 +<U000140B3> /xf0/x94/x82/xb3 EGYPTIAN HIEROGLYPH-140B3 +<U000140B4> /xf0/x94/x82/xb4 EGYPTIAN HIEROGLYPH-140B4 +<U000140B5> /xf0/x94/x82/xb5 EGYPTIAN HIEROGLYPH-140B5 +<U000140B6> /xf0/x94/x82/xb6 EGYPTIAN HIEROGLYPH-140B6 +<U000140B7> /xf0/x94/x82/xb7 EGYPTIAN HIEROGLYPH-140B7 +<U000140B8> /xf0/x94/x82/xb8 EGYPTIAN HIEROGLYPH-140B8 +<U000140B9> /xf0/x94/x82/xb9 EGYPTIAN HIEROGLYPH-140B9 +<U000140BA> /xf0/x94/x82/xba EGYPTIAN HIEROGLYPH-140BA +<U000140BB> /xf0/x94/x82/xbb EGYPTIAN HIEROGLYPH-140BB +<U000140BC> /xf0/x94/x82/xbc EGYPTIAN HIEROGLYPH-140BC +<U000140BD> /xf0/x94/x82/xbd EGYPTIAN HIEROGLYPH-140BD +<U000140BE> /xf0/x94/x82/xbe EGYPTIAN HIEROGLYPH-140BE +<U000140BF> /xf0/x94/x82/xbf EGYPTIAN HIEROGLYPH-140BF +<U000140C0> /xf0/x94/x83/x80 EGYPTIAN HIEROGLYPH-140C0 +<U000140C1> /xf0/x94/x83/x81 EGYPTIAN HIEROGLYPH-140C1 +<U000140C2> /xf0/x94/x83/x82 EGYPTIAN HIEROGLYPH-140C2 +<U000140C3> /xf0/x94/x83/x83 EGYPTIAN HIEROGLYPH-140C3 +<U000140C4> /xf0/x94/x83/x84 EGYPTIAN HIEROGLYPH-140C4 +<U000140C5> /xf0/x94/x83/x85 EGYPTIAN HIEROGLYPH-140C5 +<U000140C6> /xf0/x94/x83/x86 EGYPTIAN HIEROGLYPH-140C6 +<U000140C7> /xf0/x94/x83/x87 EGYPTIAN HIEROGLYPH-140C7 +<U000140C8> /xf0/x94/x83/x88 EGYPTIAN HIEROGLYPH-140C8 +<U000140C9> /xf0/x94/x83/x89 EGYPTIAN HIEROGLYPH-140C9 +<U000140CA> /xf0/x94/x83/x8a EGYPTIAN HIEROGLYPH-140CA +<U000140CB> /xf0/x94/x83/x8b EGYPTIAN HIEROGLYPH-140CB +<U000140CC> /xf0/x94/x83/x8c EGYPTIAN HIEROGLYPH-140CC +<U000140CD> /xf0/x94/x83/x8d EGYPTIAN HIEROGLYPH-140CD +<U000140CE> /xf0/x94/x83/x8e EGYPTIAN HIEROGLYPH-140CE +<U000140CF> /xf0/x94/x83/x8f EGYPTIAN HIEROGLYPH-140CF +<U000140D0> /xf0/x94/x83/x90 EGYPTIAN HIEROGLYPH-140D0 +<U000140D1> /xf0/x94/x83/x91 EGYPTIAN HIEROGLYPH-140D1 +<U000140D2> /xf0/x94/x83/x92 EGYPTIAN HIEROGLYPH-140D2 +<U000140D3> /xf0/x94/x83/x93 EGYPTIAN HIEROGLYPH-140D3 +<U000140D4> /xf0/x94/x83/x94 EGYPTIAN HIEROGLYPH-140D4 +<U000140D5> /xf0/x94/x83/x95 EGYPTIAN HIEROGLYPH-140D5 +<U000140D6> /xf0/x94/x83/x96 EGYPTIAN HIEROGLYPH-140D6 +<U000140D7> /xf0/x94/x83/x97 EGYPTIAN HIEROGLYPH-140D7 +<U000140D8> /xf0/x94/x83/x98 EGYPTIAN HIEROGLYPH-140D8 +<U000140D9> /xf0/x94/x83/x99 EGYPTIAN HIEROGLYPH-140D9 +<U000140DA> /xf0/x94/x83/x9a EGYPTIAN HIEROGLYPH-140DA +<U000140DB> /xf0/x94/x83/x9b EGYPTIAN HIEROGLYPH-140DB +<U000140DC> /xf0/x94/x83/x9c EGYPTIAN HIEROGLYPH-140DC +<U000140DD> /xf0/x94/x83/x9d EGYPTIAN HIEROGLYPH-140DD +<U000140DE> /xf0/x94/x83/x9e EGYPTIAN HIEROGLYPH-140DE +<U000140DF> /xf0/x94/x83/x9f EGYPTIAN HIEROGLYPH-140DF +<U000140E0> /xf0/x94/x83/xa0 EGYPTIAN HIEROGLYPH-140E0 +<U000140E1> /xf0/x94/x83/xa1 EGYPTIAN HIEROGLYPH-140E1 +<U000140E2> /xf0/x94/x83/xa2 EGYPTIAN HIEROGLYPH-140E2 +<U000140E3> /xf0/x94/x83/xa3 EGYPTIAN HIEROGLYPH-140E3 +<U000140E4> /xf0/x94/x83/xa4 EGYPTIAN HIEROGLYPH-140E4 +<U000140E5> /xf0/x94/x83/xa5 EGYPTIAN HIEROGLYPH-140E5 +<U000140E6> /xf0/x94/x83/xa6 EGYPTIAN HIEROGLYPH-140E6 +<U000140E7> /xf0/x94/x83/xa7 EGYPTIAN HIEROGLYPH-140E7 +<U000140E8> /xf0/x94/x83/xa8 EGYPTIAN HIEROGLYPH-140E8 +<U000140E9> /xf0/x94/x83/xa9 EGYPTIAN HIEROGLYPH-140E9 +<U000140EA> /xf0/x94/x83/xaa EGYPTIAN HIEROGLYPH-140EA +<U000140EB> /xf0/x94/x83/xab EGYPTIAN HIEROGLYPH-140EB +<U000140EC> /xf0/x94/x83/xac EGYPTIAN HIEROGLYPH-140EC +<U000140ED> /xf0/x94/x83/xad EGYPTIAN HIEROGLYPH-140ED +<U000140EE> /xf0/x94/x83/xae EGYPTIAN HIEROGLYPH-140EE +<U000140EF> /xf0/x94/x83/xaf EGYPTIAN HIEROGLYPH-140EF +<U000140F0> /xf0/x94/x83/xb0 EGYPTIAN HIEROGLYPH-140F0 +<U000140F1> /xf0/x94/x83/xb1 EGYPTIAN HIEROGLYPH-140F1 +<U000140F2> /xf0/x94/x83/xb2 EGYPTIAN HIEROGLYPH-140F2 +<U000140F3> /xf0/x94/x83/xb3 EGYPTIAN HIEROGLYPH-140F3 +<U000140F4> /xf0/x94/x83/xb4 EGYPTIAN HIEROGLYPH-140F4 +<U000140F5> /xf0/x94/x83/xb5 EGYPTIAN HIEROGLYPH-140F5 +<U000140F6> /xf0/x94/x83/xb6 EGYPTIAN HIEROGLYPH-140F6 +<U000140F7> /xf0/x94/x83/xb7 EGYPTIAN HIEROGLYPH-140F7 +<U000140F8> /xf0/x94/x83/xb8 EGYPTIAN HIEROGLYPH-140F8 +<U000140F9> /xf0/x94/x83/xb9 EGYPTIAN HIEROGLYPH-140F9 +<U000140FA> /xf0/x94/x83/xba EGYPTIAN HIEROGLYPH-140FA +<U000140FB> /xf0/x94/x83/xbb EGYPTIAN HIEROGLYPH-140FB +<U000140FC> /xf0/x94/x83/xbc EGYPTIAN HIEROGLYPH-140FC +<U000140FD> /xf0/x94/x83/xbd EGYPTIAN HIEROGLYPH-140FD +<U000140FE> /xf0/x94/x83/xbe EGYPTIAN HIEROGLYPH-140FE +<U000140FF> /xf0/x94/x83/xbf EGYPTIAN HIEROGLYPH-140FF +<U00014100> /xf0/x94/x84/x80 EGYPTIAN HIEROGLYPH-14100 +<U00014101> /xf0/x94/x84/x81 EGYPTIAN HIEROGLYPH-14101 +<U00014102> /xf0/x94/x84/x82 EGYPTIAN HIEROGLYPH-14102 +<U00014103> /xf0/x94/x84/x83 EGYPTIAN HIEROGLYPH-14103 +<U00014104> /xf0/x94/x84/x84 EGYPTIAN HIEROGLYPH-14104 +<U00014105> /xf0/x94/x84/x85 EGYPTIAN HIEROGLYPH-14105 +<U00014106> /xf0/x94/x84/x86 EGYPTIAN HIEROGLYPH-14106 +<U00014107> /xf0/x94/x84/x87 EGYPTIAN HIEROGLYPH-14107 +<U00014108> /xf0/x94/x84/x88 EGYPTIAN HIEROGLYPH-14108 +<U00014109> /xf0/x94/x84/x89 EGYPTIAN HIEROGLYPH-14109 +<U0001410A> /xf0/x94/x84/x8a EGYPTIAN HIEROGLYPH-1410A +<U0001410B> /xf0/x94/x84/x8b EGYPTIAN HIEROGLYPH-1410B +<U0001410C> /xf0/x94/x84/x8c EGYPTIAN HIEROGLYPH-1410C +<U0001410D> /xf0/x94/x84/x8d EGYPTIAN HIEROGLYPH-1410D +<U0001410E> /xf0/x94/x84/x8e EGYPTIAN HIEROGLYPH-1410E +<U0001410F> /xf0/x94/x84/x8f EGYPTIAN HIEROGLYPH-1410F +<U00014110> /xf0/x94/x84/x90 EGYPTIAN HIEROGLYPH-14110 +<U00014111> /xf0/x94/x84/x91 EGYPTIAN HIEROGLYPH-14111 +<U00014112> /xf0/x94/x84/x92 EGYPTIAN HIEROGLYPH-14112 +<U00014113> /xf0/x94/x84/x93 EGYPTIAN HIEROGLYPH-14113 +<U00014114> /xf0/x94/x84/x94 EGYPTIAN HIEROGLYPH-14114 +<U00014115> /xf0/x94/x84/x95 EGYPTIAN HIEROGLYPH-14115 +<U00014116> /xf0/x94/x84/x96 EGYPTIAN HIEROGLYPH-14116 +<U00014117> /xf0/x94/x84/x97 EGYPTIAN HIEROGLYPH-14117 +<U00014118> /xf0/x94/x84/x98 EGYPTIAN HIEROGLYPH-14118 +<U00014119> /xf0/x94/x84/x99 EGYPTIAN HIEROGLYPH-14119 +<U0001411A> /xf0/x94/x84/x9a EGYPTIAN HIEROGLYPH-1411A +<U0001411B> /xf0/x94/x84/x9b EGYPTIAN HIEROGLYPH-1411B +<U0001411C> /xf0/x94/x84/x9c EGYPTIAN HIEROGLYPH-1411C +<U0001411D> /xf0/x94/x84/x9d EGYPTIAN HIEROGLYPH-1411D +<U0001411E> /xf0/x94/x84/x9e EGYPTIAN HIEROGLYPH-1411E +<U0001411F> /xf0/x94/x84/x9f EGYPTIAN HIEROGLYPH-1411F +<U00014120> /xf0/x94/x84/xa0 EGYPTIAN HIEROGLYPH-14120 +<U00014121> /xf0/x94/x84/xa1 EGYPTIAN HIEROGLYPH-14121 +<U00014122> /xf0/x94/x84/xa2 EGYPTIAN HIEROGLYPH-14122 +<U00014123> /xf0/x94/x84/xa3 EGYPTIAN HIEROGLYPH-14123 +<U00014124> /xf0/x94/x84/xa4 EGYPTIAN HIEROGLYPH-14124 +<U00014125> /xf0/x94/x84/xa5 EGYPTIAN HIEROGLYPH-14125 +<U00014126> /xf0/x94/x84/xa6 EGYPTIAN HIEROGLYPH-14126 +<U00014127> /xf0/x94/x84/xa7 EGYPTIAN HIEROGLYPH-14127 +<U00014128> /xf0/x94/x84/xa8 EGYPTIAN HIEROGLYPH-14128 +<U00014129> /xf0/x94/x84/xa9 EGYPTIAN HIEROGLYPH-14129 +<U0001412A> /xf0/x94/x84/xaa EGYPTIAN HIEROGLYPH-1412A +<U0001412B> /xf0/x94/x84/xab EGYPTIAN HIEROGLYPH-1412B +<U0001412C> /xf0/x94/x84/xac EGYPTIAN HIEROGLYPH-1412C +<U0001412D> /xf0/x94/x84/xad EGYPTIAN HIEROGLYPH-1412D +<U0001412E> /xf0/x94/x84/xae EGYPTIAN HIEROGLYPH-1412E +<U0001412F> /xf0/x94/x84/xaf EGYPTIAN HIEROGLYPH-1412F +<U00014130> /xf0/x94/x84/xb0 EGYPTIAN HIEROGLYPH-14130 +<U00014131> /xf0/x94/x84/xb1 EGYPTIAN HIEROGLYPH-14131 +<U00014132> /xf0/x94/x84/xb2 EGYPTIAN HIEROGLYPH-14132 +<U00014133> /xf0/x94/x84/xb3 EGYPTIAN HIEROGLYPH-14133 +<U00014134> /xf0/x94/x84/xb4 EGYPTIAN HIEROGLYPH-14134 +<U00014135> /xf0/x94/x84/xb5 EGYPTIAN HIEROGLYPH-14135 +<U00014136> /xf0/x94/x84/xb6 EGYPTIAN HIEROGLYPH-14136 +<U00014137> /xf0/x94/x84/xb7 EGYPTIAN HIEROGLYPH-14137 +<U00014138> /xf0/x94/x84/xb8 EGYPTIAN HIEROGLYPH-14138 +<U00014139> /xf0/x94/x84/xb9 EGYPTIAN HIEROGLYPH-14139 +<U0001413A> /xf0/x94/x84/xba EGYPTIAN HIEROGLYPH-1413A +<U0001413B> /xf0/x94/x84/xbb EGYPTIAN HIEROGLYPH-1413B +<U0001413C> /xf0/x94/x84/xbc EGYPTIAN HIEROGLYPH-1413C +<U0001413D> /xf0/x94/x84/xbd EGYPTIAN HIEROGLYPH-1413D +<U0001413E> /xf0/x94/x84/xbe EGYPTIAN HIEROGLYPH-1413E +<U0001413F> /xf0/x94/x84/xbf EGYPTIAN HIEROGLYPH-1413F +<U00014140> /xf0/x94/x85/x80 EGYPTIAN HIEROGLYPH-14140 +<U00014141> /xf0/x94/x85/x81 EGYPTIAN HIEROGLYPH-14141 +<U00014142> /xf0/x94/x85/x82 EGYPTIAN HIEROGLYPH-14142 +<U00014143> /xf0/x94/x85/x83 EGYPTIAN HIEROGLYPH-14143 +<U00014144> /xf0/x94/x85/x84 EGYPTIAN HIEROGLYPH-14144 +<U00014145> /xf0/x94/x85/x85 EGYPTIAN HIEROGLYPH-14145 +<U00014146> /xf0/x94/x85/x86 EGYPTIAN HIEROGLYPH-14146 +<U00014147> /xf0/x94/x85/x87 EGYPTIAN HIEROGLYPH-14147 +<U00014148> /xf0/x94/x85/x88 EGYPTIAN HIEROGLYPH-14148 +<U00014149> /xf0/x94/x85/x89 EGYPTIAN HIEROGLYPH-14149 +<U0001414A> /xf0/x94/x85/x8a EGYPTIAN HIEROGLYPH-1414A +<U0001414B> /xf0/x94/x85/x8b EGYPTIAN HIEROGLYPH-1414B +<U0001414C> /xf0/x94/x85/x8c EGYPTIAN HIEROGLYPH-1414C +<U0001414D> /xf0/x94/x85/x8d EGYPTIAN HIEROGLYPH-1414D +<U0001414E> /xf0/x94/x85/x8e EGYPTIAN HIEROGLYPH-1414E +<U0001414F> /xf0/x94/x85/x8f EGYPTIAN HIEROGLYPH-1414F +<U00014150> /xf0/x94/x85/x90 EGYPTIAN HIEROGLYPH-14150 +<U00014151> /xf0/x94/x85/x91 EGYPTIAN HIEROGLYPH-14151 +<U00014152> /xf0/x94/x85/x92 EGYPTIAN HIEROGLYPH-14152 +<U00014153> /xf0/x94/x85/x93 EGYPTIAN HIEROGLYPH-14153 +<U00014154> /xf0/x94/x85/x94 EGYPTIAN HIEROGLYPH-14154 +<U00014155> /xf0/x94/x85/x95 EGYPTIAN HIEROGLYPH-14155 +<U00014156> /xf0/x94/x85/x96 EGYPTIAN HIEROGLYPH-14156 +<U00014157> /xf0/x94/x85/x97 EGYPTIAN HIEROGLYPH-14157 +<U00014158> /xf0/x94/x85/x98 EGYPTIAN HIEROGLYPH-14158 +<U00014159> /xf0/x94/x85/x99 EGYPTIAN HIEROGLYPH-14159 +<U0001415A> /xf0/x94/x85/x9a EGYPTIAN HIEROGLYPH-1415A +<U0001415B> /xf0/x94/x85/x9b EGYPTIAN HIEROGLYPH-1415B +<U0001415C> /xf0/x94/x85/x9c EGYPTIAN HIEROGLYPH-1415C +<U0001415D> /xf0/x94/x85/x9d EGYPTIAN HIEROGLYPH-1415D +<U0001415E> /xf0/x94/x85/x9e EGYPTIAN HIEROGLYPH-1415E +<U0001415F> /xf0/x94/x85/x9f EGYPTIAN HIEROGLYPH-1415F +<U00014160> /xf0/x94/x85/xa0 EGYPTIAN HIEROGLYPH-14160 +<U00014161> /xf0/x94/x85/xa1 EGYPTIAN HIEROGLYPH-14161 +<U00014162> /xf0/x94/x85/xa2 EGYPTIAN HIEROGLYPH-14162 +<U00014163> /xf0/x94/x85/xa3 EGYPTIAN HIEROGLYPH-14163 +<U00014164> /xf0/x94/x85/xa4 EGYPTIAN HIEROGLYPH-14164 +<U00014165> /xf0/x94/x85/xa5 EGYPTIAN HIEROGLYPH-14165 +<U00014166> /xf0/x94/x85/xa6 EGYPTIAN HIEROGLYPH-14166 +<U00014167> /xf0/x94/x85/xa7 EGYPTIAN HIEROGLYPH-14167 +<U00014168> /xf0/x94/x85/xa8 EGYPTIAN HIEROGLYPH-14168 +<U00014169> /xf0/x94/x85/xa9 EGYPTIAN HIEROGLYPH-14169 +<U0001416A> /xf0/x94/x85/xaa EGYPTIAN HIEROGLYPH-1416A +<U0001416B> /xf0/x94/x85/xab EGYPTIAN HIEROGLYPH-1416B +<U0001416C> /xf0/x94/x85/xac EGYPTIAN HIEROGLYPH-1416C +<U0001416D> /xf0/x94/x85/xad EGYPTIAN HIEROGLYPH-1416D +<U0001416E> /xf0/x94/x85/xae EGYPTIAN HIEROGLYPH-1416E +<U0001416F> /xf0/x94/x85/xaf EGYPTIAN HIEROGLYPH-1416F +<U00014170> /xf0/x94/x85/xb0 EGYPTIAN HIEROGLYPH-14170 +<U00014171> /xf0/x94/x85/xb1 EGYPTIAN HIEROGLYPH-14171 +<U00014172> /xf0/x94/x85/xb2 EGYPTIAN HIEROGLYPH-14172 +<U00014173> /xf0/x94/x85/xb3 EGYPTIAN HIEROGLYPH-14173 +<U00014174> /xf0/x94/x85/xb4 EGYPTIAN HIEROGLYPH-14174 +<U00014175> /xf0/x94/x85/xb5 EGYPTIAN HIEROGLYPH-14175 +<U00014176> /xf0/x94/x85/xb6 EGYPTIAN HIEROGLYPH-14176 +<U00014177> /xf0/x94/x85/xb7 EGYPTIAN HIEROGLYPH-14177 +<U00014178> /xf0/x94/x85/xb8 EGYPTIAN HIEROGLYPH-14178 +<U00014179> /xf0/x94/x85/xb9 EGYPTIAN HIEROGLYPH-14179 +<U0001417A> /xf0/x94/x85/xba EGYPTIAN HIEROGLYPH-1417A +<U0001417B> /xf0/x94/x85/xbb EGYPTIAN HIEROGLYPH-1417B +<U0001417C> /xf0/x94/x85/xbc EGYPTIAN HIEROGLYPH-1417C +<U0001417D> /xf0/x94/x85/xbd EGYPTIAN HIEROGLYPH-1417D +<U0001417E> /xf0/x94/x85/xbe EGYPTIAN HIEROGLYPH-1417E +<U0001417F> /xf0/x94/x85/xbf EGYPTIAN HIEROGLYPH-1417F +<U00014180> /xf0/x94/x86/x80 EGYPTIAN HIEROGLYPH-14180 +<U00014181> /xf0/x94/x86/x81 EGYPTIAN HIEROGLYPH-14181 +<U00014182> /xf0/x94/x86/x82 EGYPTIAN HIEROGLYPH-14182 +<U00014183> /xf0/x94/x86/x83 EGYPTIAN HIEROGLYPH-14183 +<U00014184> /xf0/x94/x86/x84 EGYPTIAN HIEROGLYPH-14184 +<U00014185> /xf0/x94/x86/x85 EGYPTIAN HIEROGLYPH-14185 +<U00014186> /xf0/x94/x86/x86 EGYPTIAN HIEROGLYPH-14186 +<U00014187> /xf0/x94/x86/x87 EGYPTIAN HIEROGLYPH-14187 +<U00014188> /xf0/x94/x86/x88 EGYPTIAN HIEROGLYPH-14188 +<U00014189> /xf0/x94/x86/x89 EGYPTIAN HIEROGLYPH-14189 +<U0001418A> /xf0/x94/x86/x8a EGYPTIAN HIEROGLYPH-1418A +<U0001418B> /xf0/x94/x86/x8b EGYPTIAN HIEROGLYPH-1418B +<U0001418C> /xf0/x94/x86/x8c EGYPTIAN HIEROGLYPH-1418C +<U0001418D> /xf0/x94/x86/x8d EGYPTIAN HIEROGLYPH-1418D +<U0001418E> /xf0/x94/x86/x8e EGYPTIAN HIEROGLYPH-1418E +<U0001418F> /xf0/x94/x86/x8f EGYPTIAN HIEROGLYPH-1418F +<U00014190> /xf0/x94/x86/x90 EGYPTIAN HIEROGLYPH-14190 +<U00014191> /xf0/x94/x86/x91 EGYPTIAN HIEROGLYPH-14191 +<U00014192> /xf0/x94/x86/x92 EGYPTIAN HIEROGLYPH-14192 +<U00014193> /xf0/x94/x86/x93 EGYPTIAN HIEROGLYPH-14193 +<U00014194> /xf0/x94/x86/x94 EGYPTIAN HIEROGLYPH-14194 +<U00014195> /xf0/x94/x86/x95 EGYPTIAN HIEROGLYPH-14195 +<U00014196> /xf0/x94/x86/x96 EGYPTIAN HIEROGLYPH-14196 +<U00014197> /xf0/x94/x86/x97 EGYPTIAN HIEROGLYPH-14197 +<U00014198> /xf0/x94/x86/x98 EGYPTIAN HIEROGLYPH-14198 +<U00014199> /xf0/x94/x86/x99 EGYPTIAN HIEROGLYPH-14199 +<U0001419A> /xf0/x94/x86/x9a EGYPTIAN HIEROGLYPH-1419A +<U0001419B> /xf0/x94/x86/x9b EGYPTIAN HIEROGLYPH-1419B +<U0001419C> /xf0/x94/x86/x9c EGYPTIAN HIEROGLYPH-1419C +<U0001419D> /xf0/x94/x86/x9d EGYPTIAN HIEROGLYPH-1419D +<U0001419E> /xf0/x94/x86/x9e EGYPTIAN HIEROGLYPH-1419E +<U0001419F> /xf0/x94/x86/x9f EGYPTIAN HIEROGLYPH-1419F +<U000141A0> /xf0/x94/x86/xa0 EGYPTIAN HIEROGLYPH-141A0 +<U000141A1> /xf0/x94/x86/xa1 EGYPTIAN HIEROGLYPH-141A1 +<U000141A2> /xf0/x94/x86/xa2 EGYPTIAN HIEROGLYPH-141A2 +<U000141A3> /xf0/x94/x86/xa3 EGYPTIAN HIEROGLYPH-141A3 +<U000141A4> /xf0/x94/x86/xa4 EGYPTIAN HIEROGLYPH-141A4 +<U000141A5> /xf0/x94/x86/xa5 EGYPTIAN HIEROGLYPH-141A5 +<U000141A6> /xf0/x94/x86/xa6 EGYPTIAN HIEROGLYPH-141A6 +<U000141A7> /xf0/x94/x86/xa7 EGYPTIAN HIEROGLYPH-141A7 +<U000141A8> /xf0/x94/x86/xa8 EGYPTIAN HIEROGLYPH-141A8 +<U000141A9> /xf0/x94/x86/xa9 EGYPTIAN HIEROGLYPH-141A9 +<U000141AA> /xf0/x94/x86/xaa EGYPTIAN HIEROGLYPH-141AA +<U000141AB> /xf0/x94/x86/xab EGYPTIAN HIEROGLYPH-141AB +<U000141AC> /xf0/x94/x86/xac EGYPTIAN HIEROGLYPH-141AC +<U000141AD> /xf0/x94/x86/xad EGYPTIAN HIEROGLYPH-141AD +<U000141AE> /xf0/x94/x86/xae EGYPTIAN HIEROGLYPH-141AE +<U000141AF> /xf0/x94/x86/xaf EGYPTIAN HIEROGLYPH-141AF +<U000141B0> /xf0/x94/x86/xb0 EGYPTIAN HIEROGLYPH-141B0 +<U000141B1> /xf0/x94/x86/xb1 EGYPTIAN HIEROGLYPH-141B1 +<U000141B2> /xf0/x94/x86/xb2 EGYPTIAN HIEROGLYPH-141B2 +<U000141B3> /xf0/x94/x86/xb3 EGYPTIAN HIEROGLYPH-141B3 +<U000141B4> /xf0/x94/x86/xb4 EGYPTIAN HIEROGLYPH-141B4 +<U000141B5> /xf0/x94/x86/xb5 EGYPTIAN HIEROGLYPH-141B5 +<U000141B6> /xf0/x94/x86/xb6 EGYPTIAN HIEROGLYPH-141B6 +<U000141B7> /xf0/x94/x86/xb7 EGYPTIAN HIEROGLYPH-141B7 +<U000141B8> /xf0/x94/x86/xb8 EGYPTIAN HIEROGLYPH-141B8 +<U000141B9> /xf0/x94/x86/xb9 EGYPTIAN HIEROGLYPH-141B9 +<U000141BA> /xf0/x94/x86/xba EGYPTIAN HIEROGLYPH-141BA +<U000141BB> /xf0/x94/x86/xbb EGYPTIAN HIEROGLYPH-141BB +<U000141BC> /xf0/x94/x86/xbc EGYPTIAN HIEROGLYPH-141BC +<U000141BD> /xf0/x94/x86/xbd EGYPTIAN HIEROGLYPH-141BD +<U000141BE> /xf0/x94/x86/xbe EGYPTIAN HIEROGLYPH-141BE +<U000141BF> /xf0/x94/x86/xbf EGYPTIAN HIEROGLYPH-141BF +<U000141C0> /xf0/x94/x87/x80 EGYPTIAN HIEROGLYPH-141C0 +<U000141C1> /xf0/x94/x87/x81 EGYPTIAN HIEROGLYPH-141C1 +<U000141C2> /xf0/x94/x87/x82 EGYPTIAN HIEROGLYPH-141C2 +<U000141C3> /xf0/x94/x87/x83 EGYPTIAN HIEROGLYPH-141C3 +<U000141C4> /xf0/x94/x87/x84 EGYPTIAN HIEROGLYPH-141C4 +<U000141C5> /xf0/x94/x87/x85 EGYPTIAN HIEROGLYPH-141C5 +<U000141C6> /xf0/x94/x87/x86 EGYPTIAN HIEROGLYPH-141C6 +<U000141C7> /xf0/x94/x87/x87 EGYPTIAN HIEROGLYPH-141C7 +<U000141C8> /xf0/x94/x87/x88 EGYPTIAN HIEROGLYPH-141C8 +<U000141C9> /xf0/x94/x87/x89 EGYPTIAN HIEROGLYPH-141C9 +<U000141CA> /xf0/x94/x87/x8a EGYPTIAN HIEROGLYPH-141CA +<U000141CB> /xf0/x94/x87/x8b EGYPTIAN HIEROGLYPH-141CB +<U000141CC> /xf0/x94/x87/x8c EGYPTIAN HIEROGLYPH-141CC +<U000141CD> /xf0/x94/x87/x8d EGYPTIAN HIEROGLYPH-141CD +<U000141CE> /xf0/x94/x87/x8e EGYPTIAN HIEROGLYPH-141CE +<U000141CF> /xf0/x94/x87/x8f EGYPTIAN HIEROGLYPH-141CF +<U000141D0> /xf0/x94/x87/x90 EGYPTIAN HIEROGLYPH-141D0 +<U000141D1> /xf0/x94/x87/x91 EGYPTIAN HIEROGLYPH-141D1 +<U000141D2> /xf0/x94/x87/x92 EGYPTIAN HIEROGLYPH-141D2 +<U000141D3> /xf0/x94/x87/x93 EGYPTIAN HIEROGLYPH-141D3 +<U000141D4> /xf0/x94/x87/x94 EGYPTIAN HIEROGLYPH-141D4 +<U000141D5> /xf0/x94/x87/x95 EGYPTIAN HIEROGLYPH-141D5 +<U000141D6> /xf0/x94/x87/x96 EGYPTIAN HIEROGLYPH-141D6 +<U000141D7> /xf0/x94/x87/x97 EGYPTIAN HIEROGLYPH-141D7 +<U000141D8> /xf0/x94/x87/x98 EGYPTIAN HIEROGLYPH-141D8 +<U000141D9> /xf0/x94/x87/x99 EGYPTIAN HIEROGLYPH-141D9 +<U000141DA> /xf0/x94/x87/x9a EGYPTIAN HIEROGLYPH-141DA +<U000141DB> /xf0/x94/x87/x9b EGYPTIAN HIEROGLYPH-141DB +<U000141DC> /xf0/x94/x87/x9c EGYPTIAN HIEROGLYPH-141DC +<U000141DD> /xf0/x94/x87/x9d EGYPTIAN HIEROGLYPH-141DD +<U000141DE> /xf0/x94/x87/x9e EGYPTIAN HIEROGLYPH-141DE +<U000141DF> /xf0/x94/x87/x9f EGYPTIAN HIEROGLYPH-141DF +<U000141E0> /xf0/x94/x87/xa0 EGYPTIAN HIEROGLYPH-141E0 +<U000141E1> /xf0/x94/x87/xa1 EGYPTIAN HIEROGLYPH-141E1 +<U000141E2> /xf0/x94/x87/xa2 EGYPTIAN HIEROGLYPH-141E2 +<U000141E3> /xf0/x94/x87/xa3 EGYPTIAN HIEROGLYPH-141E3 +<U000141E4> /xf0/x94/x87/xa4 EGYPTIAN HIEROGLYPH-141E4 +<U000141E5> /xf0/x94/x87/xa5 EGYPTIAN HIEROGLYPH-141E5 +<U000141E6> /xf0/x94/x87/xa6 EGYPTIAN HIEROGLYPH-141E6 +<U000141E7> /xf0/x94/x87/xa7 EGYPTIAN HIEROGLYPH-141E7 +<U000141E8> /xf0/x94/x87/xa8 EGYPTIAN HIEROGLYPH-141E8 +<U000141E9> /xf0/x94/x87/xa9 EGYPTIAN HIEROGLYPH-141E9 +<U000141EA> /xf0/x94/x87/xaa EGYPTIAN HIEROGLYPH-141EA +<U000141EB> /xf0/x94/x87/xab EGYPTIAN HIEROGLYPH-141EB +<U000141EC> /xf0/x94/x87/xac EGYPTIAN HIEROGLYPH-141EC +<U000141ED> /xf0/x94/x87/xad EGYPTIAN HIEROGLYPH-141ED +<U000141EE> /xf0/x94/x87/xae EGYPTIAN HIEROGLYPH-141EE +<U000141EF> /xf0/x94/x87/xaf EGYPTIAN HIEROGLYPH-141EF +<U000141F0> /xf0/x94/x87/xb0 EGYPTIAN HIEROGLYPH-141F0 +<U000141F1> /xf0/x94/x87/xb1 EGYPTIAN HIEROGLYPH-141F1 +<U000141F2> /xf0/x94/x87/xb2 EGYPTIAN HIEROGLYPH-141F2 +<U000141F3> /xf0/x94/x87/xb3 EGYPTIAN HIEROGLYPH-141F3 +<U000141F4> /xf0/x94/x87/xb4 EGYPTIAN HIEROGLYPH-141F4 +<U000141F5> /xf0/x94/x87/xb5 EGYPTIAN HIEROGLYPH-141F5 +<U000141F6> /xf0/x94/x87/xb6 EGYPTIAN HIEROGLYPH-141F6 +<U000141F7> /xf0/x94/x87/xb7 EGYPTIAN HIEROGLYPH-141F7 +<U000141F8> /xf0/x94/x87/xb8 EGYPTIAN HIEROGLYPH-141F8 +<U000141F9> /xf0/x94/x87/xb9 EGYPTIAN HIEROGLYPH-141F9 +<U000141FA> /xf0/x94/x87/xba EGYPTIAN HIEROGLYPH-141FA +<U000141FB> /xf0/x94/x87/xbb EGYPTIAN HIEROGLYPH-141FB +<U000141FC> /xf0/x94/x87/xbc EGYPTIAN HIEROGLYPH-141FC +<U000141FD> /xf0/x94/x87/xbd EGYPTIAN HIEROGLYPH-141FD +<U000141FE> /xf0/x94/x87/xbe EGYPTIAN HIEROGLYPH-141FE +<U000141FF> /xf0/x94/x87/xbf EGYPTIAN HIEROGLYPH-141FF +<U00014200> /xf0/x94/x88/x80 EGYPTIAN HIEROGLYPH-14200 +<U00014201> /xf0/x94/x88/x81 EGYPTIAN HIEROGLYPH-14201 +<U00014202> /xf0/x94/x88/x82 EGYPTIAN HIEROGLYPH-14202 +<U00014203> /xf0/x94/x88/x83 EGYPTIAN HIEROGLYPH-14203 +<U00014204> /xf0/x94/x88/x84 EGYPTIAN HIEROGLYPH-14204 +<U00014205> /xf0/x94/x88/x85 EGYPTIAN HIEROGLYPH-14205 +<U00014206> /xf0/x94/x88/x86 EGYPTIAN HIEROGLYPH-14206 +<U00014207> /xf0/x94/x88/x87 EGYPTIAN HIEROGLYPH-14207 +<U00014208> /xf0/x94/x88/x88 EGYPTIAN HIEROGLYPH-14208 +<U00014209> /xf0/x94/x88/x89 EGYPTIAN HIEROGLYPH-14209 +<U0001420A> /xf0/x94/x88/x8a EGYPTIAN HIEROGLYPH-1420A +<U0001420B> /xf0/x94/x88/x8b EGYPTIAN HIEROGLYPH-1420B +<U0001420C> /xf0/x94/x88/x8c EGYPTIAN HIEROGLYPH-1420C +<U0001420D> /xf0/x94/x88/x8d EGYPTIAN HIEROGLYPH-1420D +<U0001420E> /xf0/x94/x88/x8e EGYPTIAN HIEROGLYPH-1420E +<U0001420F> /xf0/x94/x88/x8f EGYPTIAN HIEROGLYPH-1420F +<U00014210> /xf0/x94/x88/x90 EGYPTIAN HIEROGLYPH-14210 +<U00014211> /xf0/x94/x88/x91 EGYPTIAN HIEROGLYPH-14211 +<U00014212> /xf0/x94/x88/x92 EGYPTIAN HIEROGLYPH-14212 +<U00014213> /xf0/x94/x88/x93 EGYPTIAN HIEROGLYPH-14213 +<U00014214> /xf0/x94/x88/x94 EGYPTIAN HIEROGLYPH-14214 +<U00014215> /xf0/x94/x88/x95 EGYPTIAN HIEROGLYPH-14215 +<U00014216> /xf0/x94/x88/x96 EGYPTIAN HIEROGLYPH-14216 +<U00014217> /xf0/x94/x88/x97 EGYPTIAN HIEROGLYPH-14217 +<U00014218> /xf0/x94/x88/x98 EGYPTIAN HIEROGLYPH-14218 +<U00014219> /xf0/x94/x88/x99 EGYPTIAN HIEROGLYPH-14219 +<U0001421A> /xf0/x94/x88/x9a EGYPTIAN HIEROGLYPH-1421A +<U0001421B> /xf0/x94/x88/x9b EGYPTIAN HIEROGLYPH-1421B +<U0001421C> /xf0/x94/x88/x9c EGYPTIAN HIEROGLYPH-1421C +<U0001421D> /xf0/x94/x88/x9d EGYPTIAN HIEROGLYPH-1421D +<U0001421E> /xf0/x94/x88/x9e EGYPTIAN HIEROGLYPH-1421E +<U0001421F> /xf0/x94/x88/x9f EGYPTIAN HIEROGLYPH-1421F +<U00014220> /xf0/x94/x88/xa0 EGYPTIAN HIEROGLYPH-14220 +<U00014221> /xf0/x94/x88/xa1 EGYPTIAN HIEROGLYPH-14221 +<U00014222> /xf0/x94/x88/xa2 EGYPTIAN HIEROGLYPH-14222 +<U00014223> /xf0/x94/x88/xa3 EGYPTIAN HIEROGLYPH-14223 +<U00014224> /xf0/x94/x88/xa4 EGYPTIAN HIEROGLYPH-14224 +<U00014225> /xf0/x94/x88/xa5 EGYPTIAN HIEROGLYPH-14225 +<U00014226> /xf0/x94/x88/xa6 EGYPTIAN HIEROGLYPH-14226 +<U00014227> /xf0/x94/x88/xa7 EGYPTIAN HIEROGLYPH-14227 +<U00014228> /xf0/x94/x88/xa8 EGYPTIAN HIEROGLYPH-14228 +<U00014229> /xf0/x94/x88/xa9 EGYPTIAN HIEROGLYPH-14229 +<U0001422A> /xf0/x94/x88/xaa EGYPTIAN HIEROGLYPH-1422A +<U0001422B> /xf0/x94/x88/xab EGYPTIAN HIEROGLYPH-1422B +<U0001422C> /xf0/x94/x88/xac EGYPTIAN HIEROGLYPH-1422C +<U0001422D> /xf0/x94/x88/xad EGYPTIAN HIEROGLYPH-1422D +<U0001422E> /xf0/x94/x88/xae EGYPTIAN HIEROGLYPH-1422E +<U0001422F> /xf0/x94/x88/xaf EGYPTIAN HIEROGLYPH-1422F +<U00014230> /xf0/x94/x88/xb0 EGYPTIAN HIEROGLYPH-14230 +<U00014231> /xf0/x94/x88/xb1 EGYPTIAN HIEROGLYPH-14231 +<U00014232> /xf0/x94/x88/xb2 EGYPTIAN HIEROGLYPH-14232 +<U00014233> /xf0/x94/x88/xb3 EGYPTIAN HIEROGLYPH-14233 +<U00014234> /xf0/x94/x88/xb4 EGYPTIAN HIEROGLYPH-14234 +<U00014235> /xf0/x94/x88/xb5 EGYPTIAN HIEROGLYPH-14235 +<U00014236> /xf0/x94/x88/xb6 EGYPTIAN HIEROGLYPH-14236 +<U00014237> /xf0/x94/x88/xb7 EGYPTIAN HIEROGLYPH-14237 +<U00014238> /xf0/x94/x88/xb8 EGYPTIAN HIEROGLYPH-14238 +<U00014239> /xf0/x94/x88/xb9 EGYPTIAN HIEROGLYPH-14239 +<U0001423A> /xf0/x94/x88/xba EGYPTIAN HIEROGLYPH-1423A +<U0001423B> /xf0/x94/x88/xbb EGYPTIAN HIEROGLYPH-1423B +<U0001423C> /xf0/x94/x88/xbc EGYPTIAN HIEROGLYPH-1423C +<U0001423D> /xf0/x94/x88/xbd EGYPTIAN HIEROGLYPH-1423D +<U0001423E> /xf0/x94/x88/xbe EGYPTIAN HIEROGLYPH-1423E +<U0001423F> /xf0/x94/x88/xbf EGYPTIAN HIEROGLYPH-1423F +<U00014240> /xf0/x94/x89/x80 EGYPTIAN HIEROGLYPH-14240 +<U00014241> /xf0/x94/x89/x81 EGYPTIAN HIEROGLYPH-14241 +<U00014242> /xf0/x94/x89/x82 EGYPTIAN HIEROGLYPH-14242 +<U00014243> /xf0/x94/x89/x83 EGYPTIAN HIEROGLYPH-14243 +<U00014244> /xf0/x94/x89/x84 EGYPTIAN HIEROGLYPH-14244 +<U00014245> /xf0/x94/x89/x85 EGYPTIAN HIEROGLYPH-14245 +<U00014246> /xf0/x94/x89/x86 EGYPTIAN HIEROGLYPH-14246 +<U00014247> /xf0/x94/x89/x87 EGYPTIAN HIEROGLYPH-14247 +<U00014248> /xf0/x94/x89/x88 EGYPTIAN HIEROGLYPH-14248 +<U00014249> /xf0/x94/x89/x89 EGYPTIAN HIEROGLYPH-14249 +<U0001424A> /xf0/x94/x89/x8a EGYPTIAN HIEROGLYPH-1424A +<U0001424B> /xf0/x94/x89/x8b EGYPTIAN HIEROGLYPH-1424B +<U0001424C> /xf0/x94/x89/x8c EGYPTIAN HIEROGLYPH-1424C +<U0001424D> /xf0/x94/x89/x8d EGYPTIAN HIEROGLYPH-1424D +<U0001424E> /xf0/x94/x89/x8e EGYPTIAN HIEROGLYPH-1424E +<U0001424F> /xf0/x94/x89/x8f EGYPTIAN HIEROGLYPH-1424F +<U00014250> /xf0/x94/x89/x90 EGYPTIAN HIEROGLYPH-14250 +<U00014251> /xf0/x94/x89/x91 EGYPTIAN HIEROGLYPH-14251 +<U00014252> /xf0/x94/x89/x92 EGYPTIAN HIEROGLYPH-14252 +<U00014253> /xf0/x94/x89/x93 EGYPTIAN HIEROGLYPH-14253 +<U00014254> /xf0/x94/x89/x94 EGYPTIAN HIEROGLYPH-14254 +<U00014255> /xf0/x94/x89/x95 EGYPTIAN HIEROGLYPH-14255 +<U00014256> /xf0/x94/x89/x96 EGYPTIAN HIEROGLYPH-14256 +<U00014257> /xf0/x94/x89/x97 EGYPTIAN HIEROGLYPH-14257 +<U00014258> /xf0/x94/x89/x98 EGYPTIAN HIEROGLYPH-14258 +<U00014259> /xf0/x94/x89/x99 EGYPTIAN HIEROGLYPH-14259 +<U0001425A> /xf0/x94/x89/x9a EGYPTIAN HIEROGLYPH-1425A +<U0001425B> /xf0/x94/x89/x9b EGYPTIAN HIEROGLYPH-1425B +<U0001425C> /xf0/x94/x89/x9c EGYPTIAN HIEROGLYPH-1425C +<U0001425D> /xf0/x94/x89/x9d EGYPTIAN HIEROGLYPH-1425D +<U0001425E> /xf0/x94/x89/x9e EGYPTIAN HIEROGLYPH-1425E +<U0001425F> /xf0/x94/x89/x9f EGYPTIAN HIEROGLYPH-1425F +<U00014260> /xf0/x94/x89/xa0 EGYPTIAN HIEROGLYPH-14260 +<U00014261> /xf0/x94/x89/xa1 EGYPTIAN HIEROGLYPH-14261 +<U00014262> /xf0/x94/x89/xa2 EGYPTIAN HIEROGLYPH-14262 +<U00014263> /xf0/x94/x89/xa3 EGYPTIAN HIEROGLYPH-14263 +<U00014264> /xf0/x94/x89/xa4 EGYPTIAN HIEROGLYPH-14264 +<U00014265> /xf0/x94/x89/xa5 EGYPTIAN HIEROGLYPH-14265 +<U00014266> /xf0/x94/x89/xa6 EGYPTIAN HIEROGLYPH-14266 +<U00014267> /xf0/x94/x89/xa7 EGYPTIAN HIEROGLYPH-14267 +<U00014268> /xf0/x94/x89/xa8 EGYPTIAN HIEROGLYPH-14268 +<U00014269> /xf0/x94/x89/xa9 EGYPTIAN HIEROGLYPH-14269 +<U0001426A> /xf0/x94/x89/xaa EGYPTIAN HIEROGLYPH-1426A +<U0001426B> /xf0/x94/x89/xab EGYPTIAN HIEROGLYPH-1426B +<U0001426C> /xf0/x94/x89/xac EGYPTIAN HIEROGLYPH-1426C +<U0001426D> /xf0/x94/x89/xad EGYPTIAN HIEROGLYPH-1426D +<U0001426E> /xf0/x94/x89/xae EGYPTIAN HIEROGLYPH-1426E +<U0001426F> /xf0/x94/x89/xaf EGYPTIAN HIEROGLYPH-1426F +<U00014270> /xf0/x94/x89/xb0 EGYPTIAN HIEROGLYPH-14270 +<U00014271> /xf0/x94/x89/xb1 EGYPTIAN HIEROGLYPH-14271 +<U00014272> /xf0/x94/x89/xb2 EGYPTIAN HIEROGLYPH-14272 +<U00014273> /xf0/x94/x89/xb3 EGYPTIAN HIEROGLYPH-14273 +<U00014274> /xf0/x94/x89/xb4 EGYPTIAN HIEROGLYPH-14274 +<U00014275> /xf0/x94/x89/xb5 EGYPTIAN HIEROGLYPH-14275 +<U00014276> /xf0/x94/x89/xb6 EGYPTIAN HIEROGLYPH-14276 +<U00014277> /xf0/x94/x89/xb7 EGYPTIAN HIEROGLYPH-14277 +<U00014278> /xf0/x94/x89/xb8 EGYPTIAN HIEROGLYPH-14278 +<U00014279> /xf0/x94/x89/xb9 EGYPTIAN HIEROGLYPH-14279 +<U0001427A> /xf0/x94/x89/xba EGYPTIAN HIEROGLYPH-1427A +<U0001427B> /xf0/x94/x89/xbb EGYPTIAN HIEROGLYPH-1427B +<U0001427C> /xf0/x94/x89/xbc EGYPTIAN HIEROGLYPH-1427C +<U0001427D> /xf0/x94/x89/xbd EGYPTIAN HIEROGLYPH-1427D +<U0001427E> /xf0/x94/x89/xbe EGYPTIAN HIEROGLYPH-1427E +<U0001427F> /xf0/x94/x89/xbf EGYPTIAN HIEROGLYPH-1427F +<U00014280> /xf0/x94/x8a/x80 EGYPTIAN HIEROGLYPH-14280 +<U00014281> /xf0/x94/x8a/x81 EGYPTIAN HIEROGLYPH-14281 +<U00014282> /xf0/x94/x8a/x82 EGYPTIAN HIEROGLYPH-14282 +<U00014283> /xf0/x94/x8a/x83 EGYPTIAN HIEROGLYPH-14283 +<U00014284> /xf0/x94/x8a/x84 EGYPTIAN HIEROGLYPH-14284 +<U00014285> /xf0/x94/x8a/x85 EGYPTIAN HIEROGLYPH-14285 +<U00014286> /xf0/x94/x8a/x86 EGYPTIAN HIEROGLYPH-14286 +<U00014287> /xf0/x94/x8a/x87 EGYPTIAN HIEROGLYPH-14287 +<U00014288> /xf0/x94/x8a/x88 EGYPTIAN HIEROGLYPH-14288 +<U00014289> /xf0/x94/x8a/x89 EGYPTIAN HIEROGLYPH-14289 +<U0001428A> /xf0/x94/x8a/x8a EGYPTIAN HIEROGLYPH-1428A +<U0001428B> /xf0/x94/x8a/x8b EGYPTIAN HIEROGLYPH-1428B +<U0001428C> /xf0/x94/x8a/x8c EGYPTIAN HIEROGLYPH-1428C +<U0001428D> /xf0/x94/x8a/x8d EGYPTIAN HIEROGLYPH-1428D +<U0001428E> /xf0/x94/x8a/x8e EGYPTIAN HIEROGLYPH-1428E +<U0001428F> /xf0/x94/x8a/x8f EGYPTIAN HIEROGLYPH-1428F +<U00014290> /xf0/x94/x8a/x90 EGYPTIAN HIEROGLYPH-14290 +<U00014291> /xf0/x94/x8a/x91 EGYPTIAN HIEROGLYPH-14291 +<U00014292> /xf0/x94/x8a/x92 EGYPTIAN HIEROGLYPH-14292 +<U00014293> /xf0/x94/x8a/x93 EGYPTIAN HIEROGLYPH-14293 +<U00014294> /xf0/x94/x8a/x94 EGYPTIAN HIEROGLYPH-14294 +<U00014295> /xf0/x94/x8a/x95 EGYPTIAN HIEROGLYPH-14295 +<U00014296> /xf0/x94/x8a/x96 EGYPTIAN HIEROGLYPH-14296 +<U00014297> /xf0/x94/x8a/x97 EGYPTIAN HIEROGLYPH-14297 +<U00014298> /xf0/x94/x8a/x98 EGYPTIAN HIEROGLYPH-14298 +<U00014299> /xf0/x94/x8a/x99 EGYPTIAN HIEROGLYPH-14299 +<U0001429A> /xf0/x94/x8a/x9a EGYPTIAN HIEROGLYPH-1429A +<U0001429B> /xf0/x94/x8a/x9b EGYPTIAN HIEROGLYPH-1429B +<U0001429C> /xf0/x94/x8a/x9c EGYPTIAN HIEROGLYPH-1429C +<U0001429D> /xf0/x94/x8a/x9d EGYPTIAN HIEROGLYPH-1429D +<U0001429E> /xf0/x94/x8a/x9e EGYPTIAN HIEROGLYPH-1429E +<U0001429F> /xf0/x94/x8a/x9f EGYPTIAN HIEROGLYPH-1429F +<U000142A0> /xf0/x94/x8a/xa0 EGYPTIAN HIEROGLYPH-142A0 +<U000142A1> /xf0/x94/x8a/xa1 EGYPTIAN HIEROGLYPH-142A1 +<U000142A2> /xf0/x94/x8a/xa2 EGYPTIAN HIEROGLYPH-142A2 +<U000142A3> /xf0/x94/x8a/xa3 EGYPTIAN HIEROGLYPH-142A3 +<U000142A4> /xf0/x94/x8a/xa4 EGYPTIAN HIEROGLYPH-142A4 +<U000142A5> /xf0/x94/x8a/xa5 EGYPTIAN HIEROGLYPH-142A5 +<U000142A6> /xf0/x94/x8a/xa6 EGYPTIAN HIEROGLYPH-142A6 +<U000142A7> /xf0/x94/x8a/xa7 EGYPTIAN HIEROGLYPH-142A7 +<U000142A8> /xf0/x94/x8a/xa8 EGYPTIAN HIEROGLYPH-142A8 +<U000142A9> /xf0/x94/x8a/xa9 EGYPTIAN HIEROGLYPH-142A9 +<U000142AA> /xf0/x94/x8a/xaa EGYPTIAN HIEROGLYPH-142AA +<U000142AB> /xf0/x94/x8a/xab EGYPTIAN HIEROGLYPH-142AB +<U000142AC> /xf0/x94/x8a/xac EGYPTIAN HIEROGLYPH-142AC +<U000142AD> /xf0/x94/x8a/xad EGYPTIAN HIEROGLYPH-142AD +<U000142AE> /xf0/x94/x8a/xae EGYPTIAN HIEROGLYPH-142AE +<U000142AF> /xf0/x94/x8a/xaf EGYPTIAN HIEROGLYPH-142AF +<U000142B0> /xf0/x94/x8a/xb0 EGYPTIAN HIEROGLYPH-142B0 +<U000142B1> /xf0/x94/x8a/xb1 EGYPTIAN HIEROGLYPH-142B1 +<U000142B2> /xf0/x94/x8a/xb2 EGYPTIAN HIEROGLYPH-142B2 +<U000142B3> /xf0/x94/x8a/xb3 EGYPTIAN HIEROGLYPH-142B3 +<U000142B4> /xf0/x94/x8a/xb4 EGYPTIAN HIEROGLYPH-142B4 +<U000142B5> /xf0/x94/x8a/xb5 EGYPTIAN HIEROGLYPH-142B5 +<U000142B6> /xf0/x94/x8a/xb6 EGYPTIAN HIEROGLYPH-142B6 +<U000142B7> /xf0/x94/x8a/xb7 EGYPTIAN HIEROGLYPH-142B7 +<U000142B8> /xf0/x94/x8a/xb8 EGYPTIAN HIEROGLYPH-142B8 +<U000142B9> /xf0/x94/x8a/xb9 EGYPTIAN HIEROGLYPH-142B9 +<U000142BA> /xf0/x94/x8a/xba EGYPTIAN HIEROGLYPH-142BA +<U000142BB> /xf0/x94/x8a/xbb EGYPTIAN HIEROGLYPH-142BB +<U000142BC> /xf0/x94/x8a/xbc EGYPTIAN HIEROGLYPH-142BC +<U000142BD> /xf0/x94/x8a/xbd EGYPTIAN HIEROGLYPH-142BD +<U000142BE> /xf0/x94/x8a/xbe EGYPTIAN HIEROGLYPH-142BE +<U000142BF> /xf0/x94/x8a/xbf EGYPTIAN HIEROGLYPH-142BF +<U000142C0> /xf0/x94/x8b/x80 EGYPTIAN HIEROGLYPH-142C0 +<U000142C1> /xf0/x94/x8b/x81 EGYPTIAN HIEROGLYPH-142C1 +<U000142C2> /xf0/x94/x8b/x82 EGYPTIAN HIEROGLYPH-142C2 +<U000142C3> /xf0/x94/x8b/x83 EGYPTIAN HIEROGLYPH-142C3 +<U000142C4> /xf0/x94/x8b/x84 EGYPTIAN HIEROGLYPH-142C4 +<U000142C5> /xf0/x94/x8b/x85 EGYPTIAN HIEROGLYPH-142C5 +<U000142C6> /xf0/x94/x8b/x86 EGYPTIAN HIEROGLYPH-142C6 +<U000142C7> /xf0/x94/x8b/x87 EGYPTIAN HIEROGLYPH-142C7 +<U000142C8> /xf0/x94/x8b/x88 EGYPTIAN HIEROGLYPH-142C8 +<U000142C9> /xf0/x94/x8b/x89 EGYPTIAN HIEROGLYPH-142C9 +<U000142CA> /xf0/x94/x8b/x8a EGYPTIAN HIEROGLYPH-142CA +<U000142CB> /xf0/x94/x8b/x8b EGYPTIAN HIEROGLYPH-142CB +<U000142CC> /xf0/x94/x8b/x8c EGYPTIAN HIEROGLYPH-142CC +<U000142CD> /xf0/x94/x8b/x8d EGYPTIAN HIEROGLYPH-142CD +<U000142CE> /xf0/x94/x8b/x8e EGYPTIAN HIEROGLYPH-142CE +<U000142CF> /xf0/x94/x8b/x8f EGYPTIAN HIEROGLYPH-142CF +<U000142D0> /xf0/x94/x8b/x90 EGYPTIAN HIEROGLYPH-142D0 +<U000142D1> /xf0/x94/x8b/x91 EGYPTIAN HIEROGLYPH-142D1 +<U000142D2> /xf0/x94/x8b/x92 EGYPTIAN HIEROGLYPH-142D2 +<U000142D3> /xf0/x94/x8b/x93 EGYPTIAN HIEROGLYPH-142D3 +<U000142D4> /xf0/x94/x8b/x94 EGYPTIAN HIEROGLYPH-142D4 +<U000142D5> /xf0/x94/x8b/x95 EGYPTIAN HIEROGLYPH-142D5 +<U000142D6> /xf0/x94/x8b/x96 EGYPTIAN HIEROGLYPH-142D6 +<U000142D7> /xf0/x94/x8b/x97 EGYPTIAN HIEROGLYPH-142D7 +<U000142D8> /xf0/x94/x8b/x98 EGYPTIAN HIEROGLYPH-142D8 +<U000142D9> /xf0/x94/x8b/x99 EGYPTIAN HIEROGLYPH-142D9 +<U000142DA> /xf0/x94/x8b/x9a EGYPTIAN HIEROGLYPH-142DA +<U000142DB> /xf0/x94/x8b/x9b EGYPTIAN HIEROGLYPH-142DB +<U000142DC> /xf0/x94/x8b/x9c EGYPTIAN HIEROGLYPH-142DC +<U000142DD> /xf0/x94/x8b/x9d EGYPTIAN HIEROGLYPH-142DD +<U000142DE> /xf0/x94/x8b/x9e EGYPTIAN HIEROGLYPH-142DE +<U000142DF> /xf0/x94/x8b/x9f EGYPTIAN HIEROGLYPH-142DF +<U000142E0> /xf0/x94/x8b/xa0 EGYPTIAN HIEROGLYPH-142E0 +<U000142E1> /xf0/x94/x8b/xa1 EGYPTIAN HIEROGLYPH-142E1 +<U000142E2> /xf0/x94/x8b/xa2 EGYPTIAN HIEROGLYPH-142E2 +<U000142E3> /xf0/x94/x8b/xa3 EGYPTIAN HIEROGLYPH-142E3 +<U000142E4> /xf0/x94/x8b/xa4 EGYPTIAN HIEROGLYPH-142E4 +<U000142E5> /xf0/x94/x8b/xa5 EGYPTIAN HIEROGLYPH-142E5 +<U000142E6> /xf0/x94/x8b/xa6 EGYPTIAN HIEROGLYPH-142E6 +<U000142E7> /xf0/x94/x8b/xa7 EGYPTIAN HIEROGLYPH-142E7 +<U000142E8> /xf0/x94/x8b/xa8 EGYPTIAN HIEROGLYPH-142E8 +<U000142E9> /xf0/x94/x8b/xa9 EGYPTIAN HIEROGLYPH-142E9 +<U000142EA> /xf0/x94/x8b/xaa EGYPTIAN HIEROGLYPH-142EA +<U000142EB> /xf0/x94/x8b/xab EGYPTIAN HIEROGLYPH-142EB +<U000142EC> /xf0/x94/x8b/xac EGYPTIAN HIEROGLYPH-142EC +<U000142ED> /xf0/x94/x8b/xad EGYPTIAN HIEROGLYPH-142ED +<U000142EE> /xf0/x94/x8b/xae EGYPTIAN HIEROGLYPH-142EE +<U000142EF> /xf0/x94/x8b/xaf EGYPTIAN HIEROGLYPH-142EF +<U000142F0> /xf0/x94/x8b/xb0 EGYPTIAN HIEROGLYPH-142F0 +<U000142F1> /xf0/x94/x8b/xb1 EGYPTIAN HIEROGLYPH-142F1 +<U000142F2> /xf0/x94/x8b/xb2 EGYPTIAN HIEROGLYPH-142F2 +<U000142F3> /xf0/x94/x8b/xb3 EGYPTIAN HIEROGLYPH-142F3 +<U000142F4> /xf0/x94/x8b/xb4 EGYPTIAN HIEROGLYPH-142F4 +<U000142F5> /xf0/x94/x8b/xb5 EGYPTIAN HIEROGLYPH-142F5 +<U000142F6> /xf0/x94/x8b/xb6 EGYPTIAN HIEROGLYPH-142F6 +<U000142F7> /xf0/x94/x8b/xb7 EGYPTIAN HIEROGLYPH-142F7 +<U000142F8> /xf0/x94/x8b/xb8 EGYPTIAN HIEROGLYPH-142F8 +<U000142F9> /xf0/x94/x8b/xb9 EGYPTIAN HIEROGLYPH-142F9 +<U000142FA> /xf0/x94/x8b/xba EGYPTIAN HIEROGLYPH-142FA +<U000142FB> /xf0/x94/x8b/xbb EGYPTIAN HIEROGLYPH-142FB +<U000142FC> /xf0/x94/x8b/xbc EGYPTIAN HIEROGLYPH-142FC +<U000142FD> /xf0/x94/x8b/xbd EGYPTIAN HIEROGLYPH-142FD +<U000142FE> /xf0/x94/x8b/xbe EGYPTIAN HIEROGLYPH-142FE +<U000142FF> /xf0/x94/x8b/xbf EGYPTIAN HIEROGLYPH-142FF +<U00014300> /xf0/x94/x8c/x80 EGYPTIAN HIEROGLYPH-14300 +<U00014301> /xf0/x94/x8c/x81 EGYPTIAN HIEROGLYPH-14301 +<U00014302> /xf0/x94/x8c/x82 EGYPTIAN HIEROGLYPH-14302 +<U00014303> /xf0/x94/x8c/x83 EGYPTIAN HIEROGLYPH-14303 +<U00014304> /xf0/x94/x8c/x84 EGYPTIAN HIEROGLYPH-14304 +<U00014305> /xf0/x94/x8c/x85 EGYPTIAN HIEROGLYPH-14305 +<U00014306> /xf0/x94/x8c/x86 EGYPTIAN HIEROGLYPH-14306 +<U00014307> /xf0/x94/x8c/x87 EGYPTIAN HIEROGLYPH-14307 +<U00014308> /xf0/x94/x8c/x88 EGYPTIAN HIEROGLYPH-14308 +<U00014309> /xf0/x94/x8c/x89 EGYPTIAN HIEROGLYPH-14309 +<U0001430A> /xf0/x94/x8c/x8a EGYPTIAN HIEROGLYPH-1430A +<U0001430B> /xf0/x94/x8c/x8b EGYPTIAN HIEROGLYPH-1430B +<U0001430C> /xf0/x94/x8c/x8c EGYPTIAN HIEROGLYPH-1430C +<U0001430D> /xf0/x94/x8c/x8d EGYPTIAN HIEROGLYPH-1430D +<U0001430E> /xf0/x94/x8c/x8e EGYPTIAN HIEROGLYPH-1430E +<U0001430F> /xf0/x94/x8c/x8f EGYPTIAN HIEROGLYPH-1430F +<U00014310> /xf0/x94/x8c/x90 EGYPTIAN HIEROGLYPH-14310 +<U00014311> /xf0/x94/x8c/x91 EGYPTIAN HIEROGLYPH-14311 +<U00014312> /xf0/x94/x8c/x92 EGYPTIAN HIEROGLYPH-14312 +<U00014313> /xf0/x94/x8c/x93 EGYPTIAN HIEROGLYPH-14313 +<U00014314> /xf0/x94/x8c/x94 EGYPTIAN HIEROGLYPH-14314 +<U00014315> /xf0/x94/x8c/x95 EGYPTIAN HIEROGLYPH-14315 +<U00014316> /xf0/x94/x8c/x96 EGYPTIAN HIEROGLYPH-14316 +<U00014317> /xf0/x94/x8c/x97 EGYPTIAN HIEROGLYPH-14317 +<U00014318> /xf0/x94/x8c/x98 EGYPTIAN HIEROGLYPH-14318 +<U00014319> /xf0/x94/x8c/x99 EGYPTIAN HIEROGLYPH-14319 +<U0001431A> /xf0/x94/x8c/x9a EGYPTIAN HIEROGLYPH-1431A +<U0001431B> /xf0/x94/x8c/x9b EGYPTIAN HIEROGLYPH-1431B +<U0001431C> /xf0/x94/x8c/x9c EGYPTIAN HIEROGLYPH-1431C +<U0001431D> /xf0/x94/x8c/x9d EGYPTIAN HIEROGLYPH-1431D +<U0001431E> /xf0/x94/x8c/x9e EGYPTIAN HIEROGLYPH-1431E +<U0001431F> /xf0/x94/x8c/x9f EGYPTIAN HIEROGLYPH-1431F +<U00014320> /xf0/x94/x8c/xa0 EGYPTIAN HIEROGLYPH-14320 +<U00014321> /xf0/x94/x8c/xa1 EGYPTIAN HIEROGLYPH-14321 +<U00014322> /xf0/x94/x8c/xa2 EGYPTIAN HIEROGLYPH-14322 +<U00014323> /xf0/x94/x8c/xa3 EGYPTIAN HIEROGLYPH-14323 +<U00014324> /xf0/x94/x8c/xa4 EGYPTIAN HIEROGLYPH-14324 +<U00014325> /xf0/x94/x8c/xa5 EGYPTIAN HIEROGLYPH-14325 +<U00014326> /xf0/x94/x8c/xa6 EGYPTIAN HIEROGLYPH-14326 +<U00014327> /xf0/x94/x8c/xa7 EGYPTIAN HIEROGLYPH-14327 +<U00014328> /xf0/x94/x8c/xa8 EGYPTIAN HIEROGLYPH-14328 +<U00014329> /xf0/x94/x8c/xa9 EGYPTIAN HIEROGLYPH-14329 +<U0001432A> /xf0/x94/x8c/xaa EGYPTIAN HIEROGLYPH-1432A +<U0001432B> /xf0/x94/x8c/xab EGYPTIAN HIEROGLYPH-1432B +<U0001432C> /xf0/x94/x8c/xac EGYPTIAN HIEROGLYPH-1432C +<U0001432D> /xf0/x94/x8c/xad EGYPTIAN HIEROGLYPH-1432D +<U0001432E> /xf0/x94/x8c/xae EGYPTIAN HIEROGLYPH-1432E +<U0001432F> /xf0/x94/x8c/xaf EGYPTIAN HIEROGLYPH-1432F +<U00014330> /xf0/x94/x8c/xb0 EGYPTIAN HIEROGLYPH-14330 +<U00014331> /xf0/x94/x8c/xb1 EGYPTIAN HIEROGLYPH-14331 +<U00014332> /xf0/x94/x8c/xb2 EGYPTIAN HIEROGLYPH-14332 +<U00014333> /xf0/x94/x8c/xb3 EGYPTIAN HIEROGLYPH-14333 +<U00014334> /xf0/x94/x8c/xb4 EGYPTIAN HIEROGLYPH-14334 +<U00014335> /xf0/x94/x8c/xb5 EGYPTIAN HIEROGLYPH-14335 +<U00014336> /xf0/x94/x8c/xb6 EGYPTIAN HIEROGLYPH-14336 +<U00014337> /xf0/x94/x8c/xb7 EGYPTIAN HIEROGLYPH-14337 +<U00014338> /xf0/x94/x8c/xb8 EGYPTIAN HIEROGLYPH-14338 +<U00014339> /xf0/x94/x8c/xb9 EGYPTIAN HIEROGLYPH-14339 +<U0001433A> /xf0/x94/x8c/xba EGYPTIAN HIEROGLYPH-1433A +<U0001433B> /xf0/x94/x8c/xbb EGYPTIAN HIEROGLYPH-1433B +<U0001433C> /xf0/x94/x8c/xbc EGYPTIAN HIEROGLYPH-1433C +<U0001433D> /xf0/x94/x8c/xbd EGYPTIAN HIEROGLYPH-1433D +<U0001433E> /xf0/x94/x8c/xbe EGYPTIAN HIEROGLYPH-1433E +<U0001433F> /xf0/x94/x8c/xbf EGYPTIAN HIEROGLYPH-1433F +<U00014340> /xf0/x94/x8d/x80 EGYPTIAN HIEROGLYPH-14340 +<U00014341> /xf0/x94/x8d/x81 EGYPTIAN HIEROGLYPH-14341 +<U00014342> /xf0/x94/x8d/x82 EGYPTIAN HIEROGLYPH-14342 +<U00014343> /xf0/x94/x8d/x83 EGYPTIAN HIEROGLYPH-14343 +<U00014344> /xf0/x94/x8d/x84 EGYPTIAN HIEROGLYPH-14344 +<U00014345> /xf0/x94/x8d/x85 EGYPTIAN HIEROGLYPH-14345 +<U00014346> /xf0/x94/x8d/x86 EGYPTIAN HIEROGLYPH-14346 +<U00014347> /xf0/x94/x8d/x87 EGYPTIAN HIEROGLYPH-14347 +<U00014348> /xf0/x94/x8d/x88 EGYPTIAN HIEROGLYPH-14348 +<U00014349> /xf0/x94/x8d/x89 EGYPTIAN HIEROGLYPH-14349 +<U0001434A> /xf0/x94/x8d/x8a EGYPTIAN HIEROGLYPH-1434A +<U0001434B> /xf0/x94/x8d/x8b EGYPTIAN HIEROGLYPH-1434B +<U0001434C> /xf0/x94/x8d/x8c EGYPTIAN HIEROGLYPH-1434C +<U0001434D> /xf0/x94/x8d/x8d EGYPTIAN HIEROGLYPH-1434D +<U0001434E> /xf0/x94/x8d/x8e EGYPTIAN HIEROGLYPH-1434E +<U0001434F> /xf0/x94/x8d/x8f EGYPTIAN HIEROGLYPH-1434F +<U00014350> /xf0/x94/x8d/x90 EGYPTIAN HIEROGLYPH-14350 +<U00014351> /xf0/x94/x8d/x91 EGYPTIAN HIEROGLYPH-14351 +<U00014352> /xf0/x94/x8d/x92 EGYPTIAN HIEROGLYPH-14352 +<U00014353> /xf0/x94/x8d/x93 EGYPTIAN HIEROGLYPH-14353 +<U00014354> /xf0/x94/x8d/x94 EGYPTIAN HIEROGLYPH-14354 +<U00014355> /xf0/x94/x8d/x95 EGYPTIAN HIEROGLYPH-14355 +<U00014356> /xf0/x94/x8d/x96 EGYPTIAN HIEROGLYPH-14356 +<U00014357> /xf0/x94/x8d/x97 EGYPTIAN HIEROGLYPH-14357 +<U00014358> /xf0/x94/x8d/x98 EGYPTIAN HIEROGLYPH-14358 +<U00014359> /xf0/x94/x8d/x99 EGYPTIAN HIEROGLYPH-14359 +<U0001435A> /xf0/x94/x8d/x9a EGYPTIAN HIEROGLYPH-1435A +<U0001435B> /xf0/x94/x8d/x9b EGYPTIAN HIEROGLYPH-1435B +<U0001435C> /xf0/x94/x8d/x9c EGYPTIAN HIEROGLYPH-1435C +<U0001435D> /xf0/x94/x8d/x9d EGYPTIAN HIEROGLYPH-1435D +<U0001435E> /xf0/x94/x8d/x9e EGYPTIAN HIEROGLYPH-1435E +<U0001435F> /xf0/x94/x8d/x9f EGYPTIAN HIEROGLYPH-1435F +<U00014360> /xf0/x94/x8d/xa0 EGYPTIAN HIEROGLYPH-14360 +<U00014361> /xf0/x94/x8d/xa1 EGYPTIAN HIEROGLYPH-14361 +<U00014362> /xf0/x94/x8d/xa2 EGYPTIAN HIEROGLYPH-14362 +<U00014363> /xf0/x94/x8d/xa3 EGYPTIAN HIEROGLYPH-14363 +<U00014364> /xf0/x94/x8d/xa4 EGYPTIAN HIEROGLYPH-14364 +<U00014365> /xf0/x94/x8d/xa5 EGYPTIAN HIEROGLYPH-14365 +<U00014366> /xf0/x94/x8d/xa6 EGYPTIAN HIEROGLYPH-14366 +<U00014367> /xf0/x94/x8d/xa7 EGYPTIAN HIEROGLYPH-14367 +<U00014368> /xf0/x94/x8d/xa8 EGYPTIAN HIEROGLYPH-14368 +<U00014369> /xf0/x94/x8d/xa9 EGYPTIAN HIEROGLYPH-14369 +<U0001436A> /xf0/x94/x8d/xaa EGYPTIAN HIEROGLYPH-1436A +<U0001436B> /xf0/x94/x8d/xab EGYPTIAN HIEROGLYPH-1436B +<U0001436C> /xf0/x94/x8d/xac EGYPTIAN HIEROGLYPH-1436C +<U0001436D> /xf0/x94/x8d/xad EGYPTIAN HIEROGLYPH-1436D +<U0001436E> /xf0/x94/x8d/xae EGYPTIAN HIEROGLYPH-1436E +<U0001436F> /xf0/x94/x8d/xaf EGYPTIAN HIEROGLYPH-1436F +<U00014370> /xf0/x94/x8d/xb0 EGYPTIAN HIEROGLYPH-14370 +<U00014371> /xf0/x94/x8d/xb1 EGYPTIAN HIEROGLYPH-14371 +<U00014372> /xf0/x94/x8d/xb2 EGYPTIAN HIEROGLYPH-14372 +<U00014373> /xf0/x94/x8d/xb3 EGYPTIAN HIEROGLYPH-14373 +<U00014374> /xf0/x94/x8d/xb4 EGYPTIAN HIEROGLYPH-14374 +<U00014375> /xf0/x94/x8d/xb5 EGYPTIAN HIEROGLYPH-14375 +<U00014376> /xf0/x94/x8d/xb6 EGYPTIAN HIEROGLYPH-14376 +<U00014377> /xf0/x94/x8d/xb7 EGYPTIAN HIEROGLYPH-14377 +<U00014378> /xf0/x94/x8d/xb8 EGYPTIAN HIEROGLYPH-14378 +<U00014379> /xf0/x94/x8d/xb9 EGYPTIAN HIEROGLYPH-14379 +<U0001437A> /xf0/x94/x8d/xba EGYPTIAN HIEROGLYPH-1437A +<U0001437B> /xf0/x94/x8d/xbb EGYPTIAN HIEROGLYPH-1437B +<U0001437C> /xf0/x94/x8d/xbc EGYPTIAN HIEROGLYPH-1437C +<U0001437D> /xf0/x94/x8d/xbd EGYPTIAN HIEROGLYPH-1437D +<U0001437E> /xf0/x94/x8d/xbe EGYPTIAN HIEROGLYPH-1437E +<U0001437F> /xf0/x94/x8d/xbf EGYPTIAN HIEROGLYPH-1437F +<U00014380> /xf0/x94/x8e/x80 EGYPTIAN HIEROGLYPH-14380 +<U00014381> /xf0/x94/x8e/x81 EGYPTIAN HIEROGLYPH-14381 +<U00014382> /xf0/x94/x8e/x82 EGYPTIAN HIEROGLYPH-14382 +<U00014383> /xf0/x94/x8e/x83 EGYPTIAN HIEROGLYPH-14383 +<U00014384> /xf0/x94/x8e/x84 EGYPTIAN HIEROGLYPH-14384 +<U00014385> /xf0/x94/x8e/x85 EGYPTIAN HIEROGLYPH-14385 +<U00014386> /xf0/x94/x8e/x86 EGYPTIAN HIEROGLYPH-14386 +<U00014387> /xf0/x94/x8e/x87 EGYPTIAN HIEROGLYPH-14387 +<U00014388> /xf0/x94/x8e/x88 EGYPTIAN HIEROGLYPH-14388 +<U00014389> /xf0/x94/x8e/x89 EGYPTIAN HIEROGLYPH-14389 +<U0001438A> /xf0/x94/x8e/x8a EGYPTIAN HIEROGLYPH-1438A +<U0001438B> /xf0/x94/x8e/x8b EGYPTIAN HIEROGLYPH-1438B +<U0001438C> /xf0/x94/x8e/x8c EGYPTIAN HIEROGLYPH-1438C +<U0001438D> /xf0/x94/x8e/x8d EGYPTIAN HIEROGLYPH-1438D +<U0001438E> /xf0/x94/x8e/x8e EGYPTIAN HIEROGLYPH-1438E +<U0001438F> /xf0/x94/x8e/x8f EGYPTIAN HIEROGLYPH-1438F +<U00014390> /xf0/x94/x8e/x90 EGYPTIAN HIEROGLYPH-14390 +<U00014391> /xf0/x94/x8e/x91 EGYPTIAN HIEROGLYPH-14391 +<U00014392> /xf0/x94/x8e/x92 EGYPTIAN HIEROGLYPH-14392 +<U00014393> /xf0/x94/x8e/x93 EGYPTIAN HIEROGLYPH-14393 +<U00014394> /xf0/x94/x8e/x94 EGYPTIAN HIEROGLYPH-14394 +<U00014395> /xf0/x94/x8e/x95 EGYPTIAN HIEROGLYPH-14395 +<U00014396> /xf0/x94/x8e/x96 EGYPTIAN HIEROGLYPH-14396 +<U00014397> /xf0/x94/x8e/x97 EGYPTIAN HIEROGLYPH-14397 +<U00014398> /xf0/x94/x8e/x98 EGYPTIAN HIEROGLYPH-14398 +<U00014399> /xf0/x94/x8e/x99 EGYPTIAN HIEROGLYPH-14399 +<U0001439A> /xf0/x94/x8e/x9a EGYPTIAN HIEROGLYPH-1439A +<U0001439B> /xf0/x94/x8e/x9b EGYPTIAN HIEROGLYPH-1439B +<U0001439C> /xf0/x94/x8e/x9c EGYPTIAN HIEROGLYPH-1439C +<U0001439D> /xf0/x94/x8e/x9d EGYPTIAN HIEROGLYPH-1439D +<U0001439E> /xf0/x94/x8e/x9e EGYPTIAN HIEROGLYPH-1439E +<U0001439F> /xf0/x94/x8e/x9f EGYPTIAN HIEROGLYPH-1439F +<U000143A0> /xf0/x94/x8e/xa0 EGYPTIAN HIEROGLYPH-143A0 +<U000143A1> /xf0/x94/x8e/xa1 EGYPTIAN HIEROGLYPH-143A1 +<U000143A2> /xf0/x94/x8e/xa2 EGYPTIAN HIEROGLYPH-143A2 +<U000143A3> /xf0/x94/x8e/xa3 EGYPTIAN HIEROGLYPH-143A3 +<U000143A4> /xf0/x94/x8e/xa4 EGYPTIAN HIEROGLYPH-143A4 +<U000143A5> /xf0/x94/x8e/xa5 EGYPTIAN HIEROGLYPH-143A5 +<U000143A6> /xf0/x94/x8e/xa6 EGYPTIAN HIEROGLYPH-143A6 +<U000143A7> /xf0/x94/x8e/xa7 EGYPTIAN HIEROGLYPH-143A7 +<U000143A8> /xf0/x94/x8e/xa8 EGYPTIAN HIEROGLYPH-143A8 +<U000143A9> /xf0/x94/x8e/xa9 EGYPTIAN HIEROGLYPH-143A9 +<U000143AA> /xf0/x94/x8e/xaa EGYPTIAN HIEROGLYPH-143AA +<U000143AB> /xf0/x94/x8e/xab EGYPTIAN HIEROGLYPH-143AB +<U000143AC> /xf0/x94/x8e/xac EGYPTIAN HIEROGLYPH-143AC +<U000143AD> /xf0/x94/x8e/xad EGYPTIAN HIEROGLYPH-143AD +<U000143AE> /xf0/x94/x8e/xae EGYPTIAN HIEROGLYPH-143AE +<U000143AF> /xf0/x94/x8e/xaf EGYPTIAN HIEROGLYPH-143AF +<U000143B0> /xf0/x94/x8e/xb0 EGYPTIAN HIEROGLYPH-143B0 +<U000143B1> /xf0/x94/x8e/xb1 EGYPTIAN HIEROGLYPH-143B1 +<U000143B2> /xf0/x94/x8e/xb2 EGYPTIAN HIEROGLYPH-143B2 +<U000143B3> /xf0/x94/x8e/xb3 EGYPTIAN HIEROGLYPH-143B3 +<U000143B4> /xf0/x94/x8e/xb4 EGYPTIAN HIEROGLYPH-143B4 +<U000143B5> /xf0/x94/x8e/xb5 EGYPTIAN HIEROGLYPH-143B5 +<U000143B6> /xf0/x94/x8e/xb6 EGYPTIAN HIEROGLYPH-143B6 +<U000143B7> /xf0/x94/x8e/xb7 EGYPTIAN HIEROGLYPH-143B7 +<U000143B8> /xf0/x94/x8e/xb8 EGYPTIAN HIEROGLYPH-143B8 +<U000143B9> /xf0/x94/x8e/xb9 EGYPTIAN HIEROGLYPH-143B9 +<U000143BA> /xf0/x94/x8e/xba EGYPTIAN HIEROGLYPH-143BA +<U000143BB> /xf0/x94/x8e/xbb EGYPTIAN HIEROGLYPH-143BB +<U000143BC> /xf0/x94/x8e/xbc EGYPTIAN HIEROGLYPH-143BC +<U000143BD> /xf0/x94/x8e/xbd EGYPTIAN HIEROGLYPH-143BD +<U000143BE> /xf0/x94/x8e/xbe EGYPTIAN HIEROGLYPH-143BE +<U000143BF> /xf0/x94/x8e/xbf EGYPTIAN HIEROGLYPH-143BF +<U000143C0> /xf0/x94/x8f/x80 EGYPTIAN HIEROGLYPH-143C0 +<U000143C1> /xf0/x94/x8f/x81 EGYPTIAN HIEROGLYPH-143C1 +<U000143C2> /xf0/x94/x8f/x82 EGYPTIAN HIEROGLYPH-143C2 +<U000143C3> /xf0/x94/x8f/x83 EGYPTIAN HIEROGLYPH-143C3 +<U000143C4> /xf0/x94/x8f/x84 EGYPTIAN HIEROGLYPH-143C4 +<U000143C5> /xf0/x94/x8f/x85 EGYPTIAN HIEROGLYPH-143C5 +<U000143C6> /xf0/x94/x8f/x86 EGYPTIAN HIEROGLYPH-143C6 +<U000143C7> /xf0/x94/x8f/x87 EGYPTIAN HIEROGLYPH-143C7 +<U000143C8> /xf0/x94/x8f/x88 EGYPTIAN HIEROGLYPH-143C8 +<U000143C9> /xf0/x94/x8f/x89 EGYPTIAN HIEROGLYPH-143C9 +<U000143CA> /xf0/x94/x8f/x8a EGYPTIAN HIEROGLYPH-143CA +<U000143CB> /xf0/x94/x8f/x8b EGYPTIAN HIEROGLYPH-143CB +<U000143CC> /xf0/x94/x8f/x8c EGYPTIAN HIEROGLYPH-143CC +<U000143CD> /xf0/x94/x8f/x8d EGYPTIAN HIEROGLYPH-143CD +<U000143CE> /xf0/x94/x8f/x8e EGYPTIAN HIEROGLYPH-143CE +<U000143CF> /xf0/x94/x8f/x8f EGYPTIAN HIEROGLYPH-143CF +<U000143D0> /xf0/x94/x8f/x90 EGYPTIAN HIEROGLYPH-143D0 +<U000143D1> /xf0/x94/x8f/x91 EGYPTIAN HIEROGLYPH-143D1 +<U000143D2> /xf0/x94/x8f/x92 EGYPTIAN HIEROGLYPH-143D2 +<U000143D3> /xf0/x94/x8f/x93 EGYPTIAN HIEROGLYPH-143D3 +<U000143D4> /xf0/x94/x8f/x94 EGYPTIAN HIEROGLYPH-143D4 +<U000143D5> /xf0/x94/x8f/x95 EGYPTIAN HIEROGLYPH-143D5 +<U000143D6> /xf0/x94/x8f/x96 EGYPTIAN HIEROGLYPH-143D6 +<U000143D7> /xf0/x94/x8f/x97 EGYPTIAN HIEROGLYPH-143D7 +<U000143D8> /xf0/x94/x8f/x98 EGYPTIAN HIEROGLYPH-143D8 +<U000143D9> /xf0/x94/x8f/x99 EGYPTIAN HIEROGLYPH-143D9 +<U000143DA> /xf0/x94/x8f/x9a EGYPTIAN HIEROGLYPH-143DA +<U000143DB> /xf0/x94/x8f/x9b EGYPTIAN HIEROGLYPH-143DB +<U000143DC> /xf0/x94/x8f/x9c EGYPTIAN HIEROGLYPH-143DC +<U000143DD> /xf0/x94/x8f/x9d EGYPTIAN HIEROGLYPH-143DD +<U000143DE> /xf0/x94/x8f/x9e EGYPTIAN HIEROGLYPH-143DE +<U000143DF> /xf0/x94/x8f/x9f EGYPTIAN HIEROGLYPH-143DF +<U000143E0> /xf0/x94/x8f/xa0 EGYPTIAN HIEROGLYPH-143E0 +<U000143E1> /xf0/x94/x8f/xa1 EGYPTIAN HIEROGLYPH-143E1 +<U000143E2> /xf0/x94/x8f/xa2 EGYPTIAN HIEROGLYPH-143E2 +<U000143E3> /xf0/x94/x8f/xa3 EGYPTIAN HIEROGLYPH-143E3 +<U000143E4> /xf0/x94/x8f/xa4 EGYPTIAN HIEROGLYPH-143E4 +<U000143E5> /xf0/x94/x8f/xa5 EGYPTIAN HIEROGLYPH-143E5 +<U000143E6> /xf0/x94/x8f/xa6 EGYPTIAN HIEROGLYPH-143E6 +<U000143E7> /xf0/x94/x8f/xa7 EGYPTIAN HIEROGLYPH-143E7 +<U000143E8> /xf0/x94/x8f/xa8 EGYPTIAN HIEROGLYPH-143E8 +<U000143E9> /xf0/x94/x8f/xa9 EGYPTIAN HIEROGLYPH-143E9 +<U000143EA> /xf0/x94/x8f/xaa EGYPTIAN HIEROGLYPH-143EA +<U000143EB> /xf0/x94/x8f/xab EGYPTIAN HIEROGLYPH-143EB +<U000143EC> /xf0/x94/x8f/xac EGYPTIAN HIEROGLYPH-143EC +<U000143ED> /xf0/x94/x8f/xad EGYPTIAN HIEROGLYPH-143ED +<U000143EE> /xf0/x94/x8f/xae EGYPTIAN HIEROGLYPH-143EE +<U000143EF> /xf0/x94/x8f/xaf EGYPTIAN HIEROGLYPH-143EF +<U000143F0> /xf0/x94/x8f/xb0 EGYPTIAN HIEROGLYPH-143F0 +<U000143F1> /xf0/x94/x8f/xb1 EGYPTIAN HIEROGLYPH-143F1 +<U000143F2> /xf0/x94/x8f/xb2 EGYPTIAN HIEROGLYPH-143F2 +<U000143F3> /xf0/x94/x8f/xb3 EGYPTIAN HIEROGLYPH-143F3 +<U000143F4> /xf0/x94/x8f/xb4 EGYPTIAN HIEROGLYPH-143F4 +<U000143F5> /xf0/x94/x8f/xb5 EGYPTIAN HIEROGLYPH-143F5 +<U000143F6> /xf0/x94/x8f/xb6 EGYPTIAN HIEROGLYPH-143F6 +<U000143F7> /xf0/x94/x8f/xb7 EGYPTIAN HIEROGLYPH-143F7 +<U000143F8> /xf0/x94/x8f/xb8 EGYPTIAN HIEROGLYPH-143F8 +<U000143F9> /xf0/x94/x8f/xb9 EGYPTIAN HIEROGLYPH-143F9 +<U000143FA> /xf0/x94/x8f/xba EGYPTIAN HIEROGLYPH-143FA <U00014400> /xf0/x94/x90/x80 ANATOLIAN HIEROGLYPH A001 <U00014401> /xf0/x94/x90/x81 ANATOLIAN HIEROGLYPH A002 <U00014402> /xf0/x94/x90/x82 ANATOLIAN HIEROGLYPH A003 @@ -36475,6 +40757,64 @@ CHARMAP <U00014644> /xf0/x94/x99/x84 ANATOLIAN HIEROGLYPH A528 <U00014645> /xf0/x94/x99/x85 ANATOLIAN HIEROGLYPH A529 <U00014646> /xf0/x94/x99/x86 ANATOLIAN HIEROGLYPH A530 +<U00016100> /xf0/x96/x84/x80 GURUNG KHEMA LETTER A +<U00016101> /xf0/x96/x84/x81 GURUNG KHEMA LETTER KA +<U00016102> /xf0/x96/x84/x82 GURUNG KHEMA LETTER KHA +<U00016103> /xf0/x96/x84/x83 GURUNG KHEMA LETTER GA +<U00016104> /xf0/x96/x84/x84 GURUNG KHEMA LETTER GHA +<U00016105> /xf0/x96/x84/x85 GURUNG KHEMA LETTER NGA +<U00016106> /xf0/x96/x84/x86 GURUNG KHEMA LETTER CA +<U00016107> /xf0/x96/x84/x87 GURUNG KHEMA LETTER CHA +<U00016108> /xf0/x96/x84/x88 GURUNG KHEMA LETTER JA +<U00016109> /xf0/x96/x84/x89 GURUNG KHEMA LETTER JHA +<U0001610A> /xf0/x96/x84/x8a GURUNG KHEMA LETTER HA +<U0001610B> /xf0/x96/x84/x8b GURUNG KHEMA LETTER TTA +<U0001610C> /xf0/x96/x84/x8c GURUNG KHEMA LETTER TTHA +<U0001610D> /xf0/x96/x84/x8d GURUNG KHEMA LETTER DDA +<U0001610E> /xf0/x96/x84/x8e GURUNG KHEMA LETTER DDHA +<U0001610F> /xf0/x96/x84/x8f GURUNG KHEMA LETTER VA +<U00016110> /xf0/x96/x84/x90 GURUNG KHEMA LETTER TA +<U00016111> /xf0/x96/x84/x91 GURUNG KHEMA LETTER THA +<U00016112> /xf0/x96/x84/x92 GURUNG KHEMA LETTER DA +<U00016113> /xf0/x96/x84/x93 GURUNG KHEMA LETTER DHA +<U00016114> /xf0/x96/x84/x94 GURUNG KHEMA LETTER NA +<U00016115> /xf0/x96/x84/x95 GURUNG KHEMA LETTER PA +<U00016116> /xf0/x96/x84/x96 GURUNG KHEMA LETTER PHA +<U00016117> /xf0/x96/x84/x97 GURUNG KHEMA LETTER BA +<U00016118> /xf0/x96/x84/x98 GURUNG KHEMA LETTER BHA +<U00016119> /xf0/x96/x84/x99 GURUNG KHEMA LETTER MA +<U0001611A> /xf0/x96/x84/x9a GURUNG KHEMA LETTER YA +<U0001611B> /xf0/x96/x84/x9b GURUNG KHEMA LETTER RA +<U0001611C> /xf0/x96/x84/x9c GURUNG KHEMA LETTER LA +<U0001611D> /xf0/x96/x84/x9d GURUNG KHEMA LETTER SA +<U0001611E> /xf0/x96/x84/x9e GURUNG KHEMA VOWEL SIGN AA +<U0001611F> /xf0/x96/x84/x9f GURUNG KHEMA VOWEL SIGN I +<U00016120> /xf0/x96/x84/xa0 GURUNG KHEMA VOWEL SIGN II +<U00016121> /xf0/x96/x84/xa1 GURUNG KHEMA VOWEL SIGN U +<U00016122> /xf0/x96/x84/xa2 GURUNG KHEMA VOWEL SIGN UU +<U00016123> /xf0/x96/x84/xa3 GURUNG KHEMA VOWEL SIGN E +<U00016124> /xf0/x96/x84/xa4 GURUNG KHEMA VOWEL SIGN EE +<U00016125> /xf0/x96/x84/xa5 GURUNG KHEMA VOWEL SIGN AI +<U00016126> /xf0/x96/x84/xa6 GURUNG KHEMA VOWEL SIGN O +<U00016127> /xf0/x96/x84/xa7 GURUNG KHEMA VOWEL SIGN OO +<U00016128> /xf0/x96/x84/xa8 GURUNG KHEMA VOWEL SIGN AU +<U00016129> /xf0/x96/x84/xa9 GURUNG KHEMA VOWEL LENGTH MARK +<U0001612A> /xf0/x96/x84/xaa GURUNG KHEMA CONSONANT SIGN MEDIAL YA +<U0001612B> /xf0/x96/x84/xab GURUNG KHEMA CONSONANT SIGN MEDIAL VA +<U0001612C> /xf0/x96/x84/xac GURUNG KHEMA CONSONANT SIGN MEDIAL HA +<U0001612D> /xf0/x96/x84/xad GURUNG KHEMA SIGN ANUSVARA +<U0001612E> /xf0/x96/x84/xae GURUNG KHEMA CONSONANT SIGN MEDIAL RA +<U0001612F> /xf0/x96/x84/xaf GURUNG KHEMA SIGN THOLHOMA +<U00016130> /xf0/x96/x84/xb0 GURUNG KHEMA DIGIT ZERO +<U00016131> /xf0/x96/x84/xb1 GURUNG KHEMA DIGIT ONE +<U00016132> /xf0/x96/x84/xb2 GURUNG KHEMA DIGIT TWO +<U00016133> /xf0/x96/x84/xb3 GURUNG KHEMA DIGIT THREE +<U00016134> /xf0/x96/x84/xb4 GURUNG KHEMA DIGIT FOUR +<U00016135> /xf0/x96/x84/xb5 GURUNG KHEMA DIGIT FIVE +<U00016136> /xf0/x96/x84/xb6 GURUNG KHEMA DIGIT SIX +<U00016137> /xf0/x96/x84/xb7 GURUNG KHEMA DIGIT SEVEN +<U00016138> /xf0/x96/x84/xb8 GURUNG KHEMA DIGIT EIGHT +<U00016139> /xf0/x96/x84/xb9 GURUNG KHEMA DIGIT NINE <U00016800> /xf0/x96/xa0/x80 BAMUM LETTER PHASE-A NGKUE MFON <U00016801> /xf0/x96/xa0/x81 BAMUM LETTER PHASE-A GBIEE FON <U00016802> /xf0/x96/xa0/x82 BAMUM LETTER PHASE-A PON MFON PIPAEMGBIEE @@ -37339,6 +41679,64 @@ CHARMAP <U00016B8D> /xf0/x96/xae/x8d PAHAWH HMONG CLAN SIGN TSWB <U00016B8E> /xf0/x96/xae/x8e PAHAWH HMONG CLAN SIGN KWM <U00016B8F> /xf0/x96/xae/x8f PAHAWH HMONG CLAN SIGN VWJ +<U00016D40> /xf0/x96/xb5/x80 KIRAT RAI SIGN ANUSVARA +<U00016D41> /xf0/x96/xb5/x81 KIRAT RAI SIGN TONPI +<U00016D42> /xf0/x96/xb5/x82 KIRAT RAI SIGN VISARGA +<U00016D43> /xf0/x96/xb5/x83 KIRAT RAI LETTER A +<U00016D44> /xf0/x96/xb5/x84 KIRAT RAI LETTER KA +<U00016D45> /xf0/x96/xb5/x85 KIRAT RAI LETTER KHA +<U00016D46> /xf0/x96/xb5/x86 KIRAT RAI LETTER GA +<U00016D47> /xf0/x96/xb5/x87 KIRAT RAI LETTER GHA +<U00016D48> /xf0/x96/xb5/x88 KIRAT RAI LETTER NGA +<U00016D49> /xf0/x96/xb5/x89 KIRAT RAI LETTER CA +<U00016D4A> /xf0/x96/xb5/x8a KIRAT RAI LETTER CHA +<U00016D4B> /xf0/x96/xb5/x8b KIRAT RAI LETTER JA +<U00016D4C> /xf0/x96/xb5/x8c KIRAT RAI LETTER JHA +<U00016D4D> /xf0/x96/xb5/x8d KIRAT RAI LETTER NYA +<U00016D4E> /xf0/x96/xb5/x8e KIRAT RAI LETTER TTA +<U00016D4F> /xf0/x96/xb5/x8f KIRAT RAI LETTER TTHA +<U00016D50> /xf0/x96/xb5/x90 KIRAT RAI LETTER DDA +<U00016D51> /xf0/x96/xb5/x91 KIRAT RAI LETTER DDHA +<U00016D52> /xf0/x96/xb5/x92 KIRAT RAI LETTER TA +<U00016D53> /xf0/x96/xb5/x93 KIRAT RAI LETTER THA +<U00016D54> /xf0/x96/xb5/x94 KIRAT RAI LETTER DA +<U00016D55> /xf0/x96/xb5/x95 KIRAT RAI LETTER DHA +<U00016D56> /xf0/x96/xb5/x96 KIRAT RAI LETTER NA +<U00016D57> /xf0/x96/xb5/x97 KIRAT RAI LETTER PA +<U00016D58> /xf0/x96/xb5/x98 KIRAT RAI LETTER PHA +<U00016D59> /xf0/x96/xb5/x99 KIRAT RAI LETTER BA +<U00016D5A> /xf0/x96/xb5/x9a KIRAT RAI LETTER BHA +<U00016D5B> /xf0/x96/xb5/x9b KIRAT RAI LETTER MA +<U00016D5C> /xf0/x96/xb5/x9c KIRAT RAI LETTER YA +<U00016D5D> /xf0/x96/xb5/x9d KIRAT RAI LETTER RA +<U00016D5E> /xf0/x96/xb5/x9e KIRAT RAI LETTER LA +<U00016D5F> /xf0/x96/xb5/x9f KIRAT RAI LETTER VA +<U00016D60> /xf0/x96/xb5/xa0 KIRAT RAI LETTER SA +<U00016D61> /xf0/x96/xb5/xa1 KIRAT RAI LETTER SHA +<U00016D62> /xf0/x96/xb5/xa2 KIRAT RAI LETTER HA +<U00016D63> /xf0/x96/xb5/xa3 KIRAT RAI VOWEL SIGN AA +<U00016D64> /xf0/x96/xb5/xa4 KIRAT RAI VOWEL SIGN I +<U00016D65> /xf0/x96/xb5/xa5 KIRAT RAI VOWEL SIGN U +<U00016D66> /xf0/x96/xb5/xa6 KIRAT RAI VOWEL SIGN UE +<U00016D67> /xf0/x96/xb5/xa7 KIRAT RAI VOWEL SIGN E +<U00016D68> /xf0/x96/xb5/xa8 KIRAT RAI VOWEL SIGN AI +<U00016D69> /xf0/x96/xb5/xa9 KIRAT RAI VOWEL SIGN O +<U00016D6A> /xf0/x96/xb5/xaa KIRAT RAI VOWEL SIGN AU +<U00016D6B> /xf0/x96/xb5/xab KIRAT RAI SIGN VIRAMA +<U00016D6C> /xf0/x96/xb5/xac KIRAT RAI SIGN SAAT +<U00016D6D> /xf0/x96/xb5/xad KIRAT RAI SIGN YUPI +<U00016D6E> /xf0/x96/xb5/xae KIRAT RAI DANDA +<U00016D6F> /xf0/x96/xb5/xaf KIRAT RAI DOUBLE DANDA +<U00016D70> /xf0/x96/xb5/xb0 KIRAT RAI DIGIT ZERO +<U00016D71> /xf0/x96/xb5/xb1 KIRAT RAI DIGIT ONE +<U00016D72> /xf0/x96/xb5/xb2 KIRAT RAI DIGIT TWO +<U00016D73> /xf0/x96/xb5/xb3 KIRAT RAI DIGIT THREE +<U00016D74> /xf0/x96/xb5/xb4 KIRAT RAI DIGIT FOUR +<U00016D75> /xf0/x96/xb5/xb5 KIRAT RAI DIGIT FIVE +<U00016D76> /xf0/x96/xb5/xb6 KIRAT RAI DIGIT SIX +<U00016D77> /xf0/x96/xb5/xb7 KIRAT RAI DIGIT SEVEN +<U00016D78> /xf0/x96/xb5/xb8 KIRAT RAI DIGIT EIGHT +<U00016D79> /xf0/x96/xb5/xb9 KIRAT RAI DIGIT NINE <U00016E40> /xf0/x96/xb9/x80 MEDEFAIDRIN CAPITAL LETTER M <U00016E41> /xf0/x96/xb9/x81 MEDEFAIDRIN CAPITAL LETTER S <U00016E42> /xf0/x96/xb9/x82 MEDEFAIDRIN CAPITAL LETTER V @@ -38920,6 +43318,7 @@ CHARMAP <U00018CD3> /xf0/x98/xb3/x93 KHITAN SMALL SCRIPT CHARACTER-18CD3 <U00018CD4> /xf0/x98/xb3/x94 KHITAN SMALL SCRIPT CHARACTER-18CD4 <U00018CD5> /xf0/x98/xb3/x95 KHITAN SMALL SCRIPT CHARACTER-18CD5 +<U00018CFF> /xf0/x98/xb3/xbf KHITAN SMALL SCRIPT CHARACTER-18CFF <U00018D00>..<U00018D08> /xf0/x98/xb4/x80 <Tangut Ideograph Supplement> <U0001AFF0> /xf0/x9a/xbf/xb0 KATAKANA LETTER MINNAN TONE-2 <U0001AFF1> /xf0/x9a/xbf/xb1 KATAKANA LETTER MINNAN TONE-3 @@ -39777,6 +44176,692 @@ CHARMAP <U0001BCA1> /xf0/x9b/xb2/xa1 SHORTHAND FORMAT CONTINUING OVERLAP <U0001BCA2> /xf0/x9b/xb2/xa2 SHORTHAND FORMAT DOWN STEP <U0001BCA3> /xf0/x9b/xb2/xa3 SHORTHAND FORMAT UP STEP +<U0001CC00> /xf0/x9c/xb0/x80 UP-POINTING GO-KART +<U0001CC01> /xf0/x9c/xb0/x81 RIGHT-POINTING GO-KART +<U0001CC02> /xf0/x9c/xb0/x82 LEFT-POINTING STICK FIGURE +<U0001CC03> /xf0/x9c/xb0/x83 RIGHT-POINTING STICK FIGURE +<U0001CC04> /xf0/x9c/xb0/x84 DOWN-POINTING STICK FIGURE +<U0001CC05> /xf0/x9c/xb0/x85 LOWER HORIZONTAL RULER SEGMENT +<U0001CC06> /xf0/x9c/xb0/x86 RIGHT VERTICAL RULER SEGMENT +<U0001CC07> /xf0/x9c/xb0/x87 LOWER RIGHT RULER SEGMENT +<U0001CC08> /xf0/x9c/xb0/x88 ANTENNA +<U0001CC09> /xf0/x9c/xb0/x89 HORIZONTAL RESISTOR SEGMENT +<U0001CC0A> /xf0/x9c/xb0/x8a VERTICAL RESISTOR SEGMENT +<U0001CC0B> /xf0/x9c/xb0/x8b LEFT THIRD INDUCTOR +<U0001CC0C> /xf0/x9c/xb0/x8c MIDDLE THIRD INDUCTOR +<U0001CC0D> /xf0/x9c/xb0/x8d RIGHT THIRD INDUCTOR +<U0001CC0E> /xf0/x9c/xb0/x8e LEFT-POINTING DIODE +<U0001CC0F> /xf0/x9c/xb0/x8f RIGHT-POINTING DIODE +<U0001CC10> /xf0/x9c/xb0/x90 NPN TRANSISTOR +<U0001CC11> /xf0/x9c/xb0/x91 PNP TRANSISTOR +<U0001CC12> /xf0/x9c/xb0/x92 RECEPTACLE +<U0001CC13> /xf0/x9c/xb0/x93 HORIZONTAL CAPACITOR +<U0001CC14> /xf0/x9c/xb0/x94 VERTICAL CAPACITOR +<U0001CC15> /xf0/x9c/xb0/x95 LOGIC GATE OR +<U0001CC16> /xf0/x9c/xb0/x96 LOGIC GATE AND +<U0001CC17> /xf0/x9c/xb0/x97 LOGIC GATE INVERTED INPUTS +<U0001CC18> /xf0/x9c/xb0/x98 LOGIC GATE INVERTED OUTPUT +<U0001CC19> /xf0/x9c/xb0/x99 LOGIC GATE BUFFER +<U0001CC1A> /xf0/x9c/xb0/x9a LOGIC GATE BUFFER WITH INVERTED INPUT +<U0001CC1B> /xf0/x9c/xb0/x9b BOX DRAWINGS LIGHT HORIZONTAL AND UPPER RIGHT +<U0001CC1C> /xf0/x9c/xb0/x9c BOX DRAWINGS LIGHT HORIZONTAL AND LOWER RIGHT +<U0001CC1D> /xf0/x9c/xb0/x9d BOX DRAWINGS LIGHT TOP AND UPPER LEFT +<U0001CC1E> /xf0/x9c/xb0/x9e BOX DRAWINGS LIGHT BOTTOM AND LOWER LEFT +<U0001CC1F> /xf0/x9c/xb0/x9f BOX DRAWINGS DOUBLE DIAGONAL UPPER RIGHT TO LOWER LEFT +<U0001CC20> /xf0/x9c/xb0/xa0 BOX DRAWINGS DOUBLE DIAGONAL UPPER LEFT TO LOWER RIGHT +<U0001CC21> /xf0/x9c/xb0/xa1 SEPARATED BLOCK QUADRANT-1 +<U0001CC22> /xf0/x9c/xb0/xa2 SEPARATED BLOCK QUADRANT-2 +<U0001CC23> /xf0/x9c/xb0/xa3 SEPARATED BLOCK QUADRANT-12 +<U0001CC24> /xf0/x9c/xb0/xa4 SEPARATED BLOCK QUADRANT-3 +<U0001CC25> /xf0/x9c/xb0/xa5 SEPARATED BLOCK QUADRANT-13 +<U0001CC26> /xf0/x9c/xb0/xa6 SEPARATED BLOCK QUADRANT-23 +<U0001CC27> /xf0/x9c/xb0/xa7 SEPARATED BLOCK QUADRANT-123 +<U0001CC28> /xf0/x9c/xb0/xa8 SEPARATED BLOCK QUADRANT-4 +<U0001CC29> /xf0/x9c/xb0/xa9 SEPARATED BLOCK QUADRANT-14 +<U0001CC2A> /xf0/x9c/xb0/xaa SEPARATED BLOCK QUADRANT-24 +<U0001CC2B> /xf0/x9c/xb0/xab SEPARATED BLOCK QUADRANT-124 +<U0001CC2C> /xf0/x9c/xb0/xac SEPARATED BLOCK QUADRANT-34 +<U0001CC2D> /xf0/x9c/xb0/xad SEPARATED BLOCK QUADRANT-134 +<U0001CC2E> /xf0/x9c/xb0/xae SEPARATED BLOCK QUADRANT-234 +<U0001CC2F> /xf0/x9c/xb0/xaf SEPARATED BLOCK QUADRANT-1234 +<U0001CC30> /xf0/x9c/xb0/xb0 UPPER LEFT TWELFTH CIRCLE +<U0001CC31> /xf0/x9c/xb0/xb1 UPPER CENTRE LEFT TWELFTH CIRCLE +<U0001CC32> /xf0/x9c/xb0/xb2 UPPER CENTRE RIGHT TWELFTH CIRCLE +<U0001CC33> /xf0/x9c/xb0/xb3 UPPER RIGHT TWELFTH CIRCLE +<U0001CC34> /xf0/x9c/xb0/xb4 UPPER MIDDLE LEFT TWELFTH CIRCLE +<U0001CC35> /xf0/x9c/xb0/xb5 UPPER LEFT QUARTER CIRCLE +<U0001CC36> /xf0/x9c/xb0/xb6 UPPER RIGHT QUARTER CIRCLE +<U0001CC37> /xf0/x9c/xb0/xb7 UPPER MIDDLE RIGHT TWELFTH CIRCLE +<U0001CC38> /xf0/x9c/xb0/xb8 LOWER MIDDLE LEFT TWELFTH CIRCLE +<U0001CC39> /xf0/x9c/xb0/xb9 LOWER LEFT QUARTER CIRCLE +<U0001CC3A> /xf0/x9c/xb0/xba LOWER RIGHT QUARTER CIRCLE +<U0001CC3B> /xf0/x9c/xb0/xbb LOWER MIDDLE RIGHT TWELFTH CIRCLE +<U0001CC3C> /xf0/x9c/xb0/xbc LOWER LEFT TWELFTH CIRCLE +<U0001CC3D> /xf0/x9c/xb0/xbd LOWER CENTRE LEFT TWELFTH CIRCLE +<U0001CC3E> /xf0/x9c/xb0/xbe LOWER CENTRE RIGHT TWELFTH CIRCLE +<U0001CC3F> /xf0/x9c/xb0/xbf LOWER RIGHT TWELFTH CIRCLE +<U0001CC40> /xf0/x9c/xb1/x80 SPARSE HORIZONTAL FILL +<U0001CC41> /xf0/x9c/xb1/x81 SPARSE VERTICAL FILL +<U0001CC42> /xf0/x9c/xb1/x82 ORTHOGONAL CROSSHATCH FILL +<U0001CC43> /xf0/x9c/xb1/x83 DIAGONAL CROSSHATCH FILL +<U0001CC44> /xf0/x9c/xb1/x84 DENSE VERTICAL FILL +<U0001CC45> /xf0/x9c/xb1/x85 DENSE HORIZONTAL FILL +<U0001CC46> /xf0/x9c/xb1/x86 SPECKLE FILL FRAME-1 +<U0001CC47> /xf0/x9c/xb1/x87 SPECKLE FILL FRAME-2 +<U0001CC48> /xf0/x9c/xb1/x88 LEFT-FACING BASSINET +<U0001CC49> /xf0/x9c/xb1/x89 RIGHT-FACING BASSINET +<U0001CC4A> /xf0/x9c/xb1/x8a FLYING SAUCER WITH BEAMS +<U0001CC4B> /xf0/x9c/xb1/x8b FLYING SAUCER WITHOUT BEAMS +<U0001CC4C> /xf0/x9c/xb1/x8c ALIEN MONSTER OPEN JAWS +<U0001CC4D> /xf0/x9c/xb1/x8d ALIEN MONSTER CLOSED JAWS +<U0001CC4E> /xf0/x9c/xb1/x8e ALIEN SQUID OPEN TENTACLES +<U0001CC4F> /xf0/x9c/xb1/x8f ALIEN SQUID CLOSED TENTACLES +<U0001CC50> /xf0/x9c/xb1/x90 ALIEN CRAB STEPPING RIGHT +<U0001CC51> /xf0/x9c/xb1/x91 ALIEN CRAB STEPPING LEFT +<U0001CC52> /xf0/x9c/xb1/x92 ALIEN SPIDER CROUCHING +<U0001CC53> /xf0/x9c/xb1/x93 ALIEN SPIDER SPREAD +<U0001CC54> /xf0/x9c/xb1/x94 ALIEN MONSTER STEP-1 +<U0001CC55> /xf0/x9c/xb1/x95 ALIEN MONSTER STEP-2 +<U0001CC56> /xf0/x9c/xb1/x96 LEFT-POINTING ROCKET SHIP +<U0001CC57> /xf0/x9c/xb1/x97 UP-POINTING ROCKET SHIP +<U0001CC58> /xf0/x9c/xb1/x98 RIGHT-POINTING ROCKET SHIP +<U0001CC59> /xf0/x9c/xb1/x99 DOWN-POINTING ROCKET SHIP +<U0001CC5A> /xf0/x9c/xb1/x9a TOP HALF LEFT-FACING ROBOT +<U0001CC5B> /xf0/x9c/xb1/x9b TOP HALF FORWARD-FACING ROBOT +<U0001CC5C> /xf0/x9c/xb1/x9c TOP HALF RIGHT-FACING ROBOT +<U0001CC5D> /xf0/x9c/xb1/x9d BOTTOM HALF LEFT-FACING ROBOT +<U0001CC5E> /xf0/x9c/xb1/x9e BOTTOM HALF FORWARD-FACING ROBOT +<U0001CC5F> /xf0/x9c/xb1/x9f BOTTOM HALF RIGHT-FACING ROBOT +<U0001CC60> /xf0/x9c/xb1/xa0 LEFT-POINTING ATOMIC BOMB +<U0001CC61> /xf0/x9c/xb1/xa1 UP-POINTING ATOMIC BOMB +<U0001CC62> /xf0/x9c/xb1/xa2 RIGHT-POINTING ATOMIC BOMB +<U0001CC63> /xf0/x9c/xb1/xa3 DOWN-POINTING ATOMIC BOMB +<U0001CC64> /xf0/x9c/xb1/xa4 MUSHROOM CLOUD +<U0001CC65> /xf0/x9c/xb1/xa5 LEFT-POINTING RIFLE +<U0001CC66> /xf0/x9c/xb1/xa6 UP-POINTING RIFLE +<U0001CC67> /xf0/x9c/xb1/xa7 RIGHT-POINTING RIFLE +<U0001CC68> /xf0/x9c/xb1/xa8 DOWN-POINTING RIFLE +<U0001CC69> /xf0/x9c/xb1/xa9 EIGHT RAYS INWARD +<U0001CC6A> /xf0/x9c/xb1/xaa EIGHT RAYS OUTWARD +<U0001CC6B> /xf0/x9c/xb1/xab BLACK LARGE CIRCLE MINUS LEFT QUARTER SECTION +<U0001CC6C> /xf0/x9c/xb1/xac BLACK LARGE CIRCLE MINUS UPPER QUARTER SECTION +<U0001CC6D> /xf0/x9c/xb1/xad BLACK LARGE CIRCLE MINUS RIGHT QUARTER SECTION +<U0001CC6E> /xf0/x9c/xb1/xae BLACK LARGE CIRCLE MINUS LOWER QUARTER SECTION +<U0001CC6F> /xf0/x9c/xb1/xaf BLACK NEUTRAL FACE +<U0001CC70> /xf0/x9c/xb1/xb0 LEFT-FACING SNAKE HEAD WITH OPEN MOUTH +<U0001CC71> /xf0/x9c/xb1/xb1 UP-FACING SNAKE HEAD WITH OPEN MOUTH +<U0001CC72> /xf0/x9c/xb1/xb2 RIGHT-FACING SNAKE HEAD WITH OPEN MOUTH +<U0001CC73> /xf0/x9c/xb1/xb3 DOWN-FACING SNAKE HEAD WITH OPEN MOUTH +<U0001CC74> /xf0/x9c/xb1/xb4 LEFT-FACING SNAKE HEAD WITH CLOSED MOUTH +<U0001CC75> /xf0/x9c/xb1/xb5 UP-FACING SNAKE HEAD WITH CLOSED MOUTH +<U0001CC76> /xf0/x9c/xb1/xb6 RIGHT-FACING SNAKE HEAD WITH CLOSED MOUTH +<U0001CC77> /xf0/x9c/xb1/xb7 DOWN-FACING SNAKE HEAD WITH CLOSED MOUTH +<U0001CC78> /xf0/x9c/xb1/xb8 LEFT-POINTING ENERGY WAVE +<U0001CC79> /xf0/x9c/xb1/xb9 UP-POINTING ENERGY WAVE +<U0001CC7A> /xf0/x9c/xb1/xba RIGHT-POINTING ENERGY WAVE +<U0001CC7B> /xf0/x9c/xb1/xbb DOWN-POINTING ENERGY WAVE +<U0001CC7C> /xf0/x9c/xb1/xbc SQUARE SPIRAL FROM TOP LEFT +<U0001CC7D> /xf0/x9c/xb1/xbd SQUARE SPIRAL FROM TOP RIGHT +<U0001CC7E> /xf0/x9c/xb1/xbe SQUARE SPIRAL FROM BOTTOM RIGHT +<U0001CC7F> /xf0/x9c/xb1/xbf SQUARE SPIRAL FROM BOTTOM LEFT +<U0001CC80> /xf0/x9c/xb2/x80 STRIPED LEFT-POINTING TRIANGLE +<U0001CC81> /xf0/x9c/xb2/x81 STRIPED UP-POINTING TRIANGLE +<U0001CC82> /xf0/x9c/xb2/x82 STRIPED RIGHT-POINTING TRIANGLE +<U0001CC83> /xf0/x9c/xb2/x83 STRIPED DOWN-POINTING TRIANGLE +<U0001CC84> /xf0/x9c/xb2/x84 VERTICAL LADDER +<U0001CC85> /xf0/x9c/xb2/x85 HORIZONTAL LADDER +<U0001CC86> /xf0/x9c/xb2/x86 WHITE LOWER LEFT POINTER +<U0001CC87> /xf0/x9c/xb2/x87 WHITE LOWER RIGHT POINTER +<U0001CC88> /xf0/x9c/xb2/x88 TWO RINGS ALIGNED HORIZONTALLY +<U0001CC89> /xf0/x9c/xb2/x89 SQUARE FOUR CORNER SALTIRES +<U0001CC8A> /xf0/x9c/xb2/x8a SQUARE FOUR CORNER DIAGONALS +<U0001CC8B> /xf0/x9c/xb2/x8b SQUARE FOUR CORNER BLACK TRIANGLES +<U0001CC8C> /xf0/x9c/xb2/x8c SQUARE APERTURE +<U0001CC8D> /xf0/x9c/xb2/x8d INVERSE BLACK DIAMOND +<U0001CC8E> /xf0/x9c/xb2/x8e LEFT AND UPPER ONE EIGHTH BLOCK CONTAINING BLACK SMALL SQUARE +<U0001CC8F> /xf0/x9c/xb2/x8f INVERSE BLACK SMALL SQUARE +<U0001CC90> /xf0/x9c/xb2/x90 VERTICAL LINE WITH FOUR TICK MARKS +<U0001CC91> /xf0/x9c/xb2/x91 HORIZONTAL LINE WITH FOUR TICK MARKS +<U0001CC92> /xf0/x9c/xb2/x92 LEFT-FACING FISH +<U0001CC93> /xf0/x9c/xb2/x93 RIGHT-FACING FISH +<U0001CC94> /xf0/x9c/xb2/x94 LEFT-FACING FISH WITH OPEN MOUTH +<U0001CC95> /xf0/x9c/xb2/x95 RIGHT-FACING FISH WITH OPEN MOUTH +<U0001CC96> /xf0/x9c/xb2/x96 FLAPPING BIRD +<U0001CC97> /xf0/x9c/xb2/x97 LEFT-POINTING RACING CAR +<U0001CC98> /xf0/x9c/xb2/x98 UP-POINTING RACING CAR +<U0001CC99> /xf0/x9c/xb2/x99 RIGHT-POINTING RACING CAR +<U0001CC9A> /xf0/x9c/xb2/x9a DOWN-POINTING RACING CAR +<U0001CC9B> /xf0/x9c/xb2/x9b HORIZONTAL RACING CAR +<U0001CC9C> /xf0/x9c/xb2/x9c VERTICAL RACING CAR +<U0001CC9D> /xf0/x9c/xb2/x9d VERTICAL GO-KART +<U0001CC9E> /xf0/x9c/xb2/x9e LEFT-POINTING TANK +<U0001CC9F> /xf0/x9c/xb2/x9f RIGHT-POINTING TANK +<U0001CCA0> /xf0/x9c/xb2/xa0 LEFT-POINTING ROCKET BOOSTER +<U0001CCA1> /xf0/x9c/xb2/xa1 RIGHT-POINTING ROCKET BOOSTER +<U0001CCA2> /xf0/x9c/xb2/xa2 LEFT-POINTING ROLLER COASTER CAR +<U0001CCA3> /xf0/x9c/xb2/xa3 RIGHT-POINTING ROLLER COASTER CAR +<U0001CCA4> /xf0/x9c/xb2/xa4 LEFT HALF FLYING SAUCER +<U0001CCA5> /xf0/x9c/xb2/xa5 RIGHT HALF FLYING SAUCER +<U0001CCA6> /xf0/x9c/xb2/xa6 UPPER LEFT QUADRANT FACE WITH OPEN EYES +<U0001CCA7> /xf0/x9c/xb2/xa7 UPPER RIGHT QUADRANT FACE WITH OPEN EYES +<U0001CCA8> /xf0/x9c/xb2/xa8 UPPER LEFT QUADRANT FACE WITH CLOSED EYES +<U0001CCA9> /xf0/x9c/xb2/xa9 UPPER RIGHT QUADRANT FACE WITH CLOSED EYES +<U0001CCAA> /xf0/x9c/xb2/xaa LOWER LEFT QUADRANT SMILING FACE +<U0001CCAB> /xf0/x9c/xb2/xab LOWER RIGHT QUADRANT SMILING FACE +<U0001CCAC> /xf0/x9c/xb2/xac LOWER LEFT QUADRANT NEUTRAL FACE +<U0001CCAD> /xf0/x9c/xb2/xad LOWER RIGHT QUADRANT NEUTRAL FACE +<U0001CCAE> /xf0/x9c/xb2/xae LOWER LEFT QUADRANT FACE WITH OPEN MOUTH +<U0001CCAF> /xf0/x9c/xb2/xaf LOWER RIGHT QUADRANT FACE WITH OPEN MOUTH +<U0001CCB0> /xf0/x9c/xb2/xb0 LOWER LEFT QUADRANT FROWNING FACE +<U0001CCB1> /xf0/x9c/xb2/xb1 LOWER RIGHT QUADRANT FROWNING FACE +<U0001CCB2> /xf0/x9c/xb2/xb2 UPPER LEFT QUADRANT TELEVISION +<U0001CCB3> /xf0/x9c/xb2/xb3 UPPER RIGHT QUADRANT TELEVISION +<U0001CCB4> /xf0/x9c/xb2/xb4 LOWER LEFT QUADRANT TELEVISION +<U0001CCB5> /xf0/x9c/xb2/xb5 LOWER RIGHT QUADRANT TELEVISION +<U0001CCB6> /xf0/x9c/xb2/xb6 UPPER LEFT QUADRANT MICROCOMPUTER +<U0001CCB7> /xf0/x9c/xb2/xb7 UPPER RIGHT QUADRANT MICROCOMPUTER +<U0001CCB8> /xf0/x9c/xb2/xb8 LOWER LEFT QUADRANT MICROCOMPUTER +<U0001CCB9> /xf0/x9c/xb2/xb9 LOWER RIGHT QUADRANT MICROCOMPUTER +<U0001CCBA> /xf0/x9c/xb2/xba UPPER LEFT QUADRANT CHESS KING +<U0001CCBB> /xf0/x9c/xb2/xbb UPPER RIGHT QUADRANT CHESS KING +<U0001CCBC> /xf0/x9c/xb2/xbc LOWER LEFT QUADRANT CHESS KING +<U0001CCBD> /xf0/x9c/xb2/xbd LOWER RIGHT QUADRANT CHESS KING +<U0001CCBE> /xf0/x9c/xb2/xbe UPPER LEFT QUADRANT CHESS QUEEN +<U0001CCBF> /xf0/x9c/xb2/xbf UPPER RIGHT QUADRANT CHESS QUEEN +<U0001CCC0> /xf0/x9c/xb3/x80 LOWER LEFT QUADRANT CHESS QUEEN +<U0001CCC1> /xf0/x9c/xb3/x81 LOWER RIGHT QUADRANT CHESS QUEEN +<U0001CCC2> /xf0/x9c/xb3/x82 UPPER LEFT QUADRANT CHESS ROOK +<U0001CCC3> /xf0/x9c/xb3/x83 UPPER RIGHT QUADRANT CHESS ROOK +<U0001CCC4> /xf0/x9c/xb3/x84 LOWER LEFT QUADRANT CHESS ROOK +<U0001CCC5> /xf0/x9c/xb3/x85 LOWER RIGHT QUADRANT CHESS ROOK +<U0001CCC6> /xf0/x9c/xb3/x86 UPPER LEFT QUADRANT CHESS BISHOP +<U0001CCC7> /xf0/x9c/xb3/x87 UPPER RIGHT QUADRANT CHESS BISHOP +<U0001CCC8> /xf0/x9c/xb3/x88 LOWER LEFT QUADRANT CHESS BISHOP +<U0001CCC9> /xf0/x9c/xb3/x89 LOWER RIGHT QUADRANT CHESS BISHOP +<U0001CCCA> /xf0/x9c/xb3/x8a UPPER LEFT QUADRANT CHESS KNIGHT +<U0001CCCB> /xf0/x9c/xb3/x8b UPPER RIGHT QUADRANT CHESS KNIGHT +<U0001CCCC> /xf0/x9c/xb3/x8c LOWER LEFT QUADRANT CHESS KNIGHT +<U0001CCCD> /xf0/x9c/xb3/x8d LOWER RIGHT QUADRANT CHESS KNIGHT +<U0001CCCE> /xf0/x9c/xb3/x8e UPPER LEFT QUADRANT CHESS PAWN +<U0001CCCF> /xf0/x9c/xb3/x8f UPPER RIGHT QUADRANT CHESS PAWN +<U0001CCD0> /xf0/x9c/xb3/x90 LOWER LEFT QUADRANT CHESS PAWN +<U0001CCD1> /xf0/x9c/xb3/x91 LOWER RIGHT QUADRANT CHESS PAWN +<U0001CCD2> /xf0/x9c/xb3/x92 UPPER LEFT QUADRANT STANDING KNIGHT +<U0001CCD3> /xf0/x9c/xb3/x93 UPPER RIGHT QUADRANT STANDING KNIGHT +<U0001CCD4> /xf0/x9c/xb3/x94 LOWER LEFT QUADRANT STANDING KNIGHT +<U0001CCD5> /xf0/x9c/xb3/x95 LOWER RIGHT QUADRANT STANDING KNIGHT +<U0001CCD6> /xf0/x9c/xb3/x96 OUTLINED LATIN CAPITAL LETTER A +<U0001CCD7> /xf0/x9c/xb3/x97 OUTLINED LATIN CAPITAL LETTER B +<U0001CCD8> /xf0/x9c/xb3/x98 OUTLINED LATIN CAPITAL LETTER C +<U0001CCD9> /xf0/x9c/xb3/x99 OUTLINED LATIN CAPITAL LETTER D +<U0001CCDA> /xf0/x9c/xb3/x9a OUTLINED LATIN CAPITAL LETTER E +<U0001CCDB> /xf0/x9c/xb3/x9b OUTLINED LATIN CAPITAL LETTER F +<U0001CCDC> /xf0/x9c/xb3/x9c OUTLINED LATIN CAPITAL LETTER G +<U0001CCDD> /xf0/x9c/xb3/x9d OUTLINED LATIN CAPITAL LETTER H +<U0001CCDE> /xf0/x9c/xb3/x9e OUTLINED LATIN CAPITAL LETTER I +<U0001CCDF> /xf0/x9c/xb3/x9f OUTLINED LATIN CAPITAL LETTER J +<U0001CCE0> /xf0/x9c/xb3/xa0 OUTLINED LATIN CAPITAL LETTER K +<U0001CCE1> /xf0/x9c/xb3/xa1 OUTLINED LATIN CAPITAL LETTER L +<U0001CCE2> /xf0/x9c/xb3/xa2 OUTLINED LATIN CAPITAL LETTER M +<U0001CCE3> /xf0/x9c/xb3/xa3 OUTLINED LATIN CAPITAL LETTER N +<U0001CCE4> /xf0/x9c/xb3/xa4 OUTLINED LATIN CAPITAL LETTER O +<U0001CCE5> /xf0/x9c/xb3/xa5 OUTLINED LATIN CAPITAL LETTER P +<U0001CCE6> /xf0/x9c/xb3/xa6 OUTLINED LATIN CAPITAL LETTER Q +<U0001CCE7> /xf0/x9c/xb3/xa7 OUTLINED LATIN CAPITAL LETTER R +<U0001CCE8> /xf0/x9c/xb3/xa8 OUTLINED LATIN CAPITAL LETTER S +<U0001CCE9> /xf0/x9c/xb3/xa9 OUTLINED LATIN CAPITAL LETTER T +<U0001CCEA> /xf0/x9c/xb3/xaa OUTLINED LATIN CAPITAL LETTER U +<U0001CCEB> /xf0/x9c/xb3/xab OUTLINED LATIN CAPITAL LETTER V +<U0001CCEC> /xf0/x9c/xb3/xac OUTLINED LATIN CAPITAL LETTER W +<U0001CCED> /xf0/x9c/xb3/xad OUTLINED LATIN CAPITAL LETTER X +<U0001CCEE> /xf0/x9c/xb3/xae OUTLINED LATIN CAPITAL LETTER Y +<U0001CCEF> /xf0/x9c/xb3/xaf OUTLINED LATIN CAPITAL LETTER Z +<U0001CCF0> /xf0/x9c/xb3/xb0 OUTLINED DIGIT ZERO +<U0001CCF1> /xf0/x9c/xb3/xb1 OUTLINED DIGIT ONE +<U0001CCF2> /xf0/x9c/xb3/xb2 OUTLINED DIGIT TWO +<U0001CCF3> /xf0/x9c/xb3/xb3 OUTLINED DIGIT THREE +<U0001CCF4> /xf0/x9c/xb3/xb4 OUTLINED DIGIT FOUR +<U0001CCF5> /xf0/x9c/xb3/xb5 OUTLINED DIGIT FIVE +<U0001CCF6> /xf0/x9c/xb3/xb6 OUTLINED DIGIT SIX +<U0001CCF7> /xf0/x9c/xb3/xb7 OUTLINED DIGIT SEVEN +<U0001CCF8> /xf0/x9c/xb3/xb8 OUTLINED DIGIT EIGHT +<U0001CCF9> /xf0/x9c/xb3/xb9 OUTLINED DIGIT NINE +<U0001CD00> /xf0/x9c/xb4/x80 BLOCK OCTANT-3 +<U0001CD01> /xf0/x9c/xb4/x81 BLOCK OCTANT-23 +<U0001CD02> /xf0/x9c/xb4/x82 BLOCK OCTANT-123 +<U0001CD03> /xf0/x9c/xb4/x83 BLOCK OCTANT-4 +<U0001CD04> /xf0/x9c/xb4/x84 BLOCK OCTANT-14 +<U0001CD05> /xf0/x9c/xb4/x85 BLOCK OCTANT-124 +<U0001CD06> /xf0/x9c/xb4/x86 BLOCK OCTANT-34 +<U0001CD07> /xf0/x9c/xb4/x87 BLOCK OCTANT-134 +<U0001CD08> /xf0/x9c/xb4/x88 BLOCK OCTANT-234 +<U0001CD09> /xf0/x9c/xb4/x89 BLOCK OCTANT-5 +<U0001CD0A> /xf0/x9c/xb4/x8a BLOCK OCTANT-15 +<U0001CD0B> /xf0/x9c/xb4/x8b BLOCK OCTANT-25 +<U0001CD0C> /xf0/x9c/xb4/x8c BLOCK OCTANT-125 +<U0001CD0D> /xf0/x9c/xb4/x8d BLOCK OCTANT-135 +<U0001CD0E> /xf0/x9c/xb4/x8e BLOCK OCTANT-235 +<U0001CD0F> /xf0/x9c/xb4/x8f BLOCK OCTANT-1235 +<U0001CD10> /xf0/x9c/xb4/x90 BLOCK OCTANT-45 +<U0001CD11> /xf0/x9c/xb4/x91 BLOCK OCTANT-145 +<U0001CD12> /xf0/x9c/xb4/x92 BLOCK OCTANT-245 +<U0001CD13> /xf0/x9c/xb4/x93 BLOCK OCTANT-1245 +<U0001CD14> /xf0/x9c/xb4/x94 BLOCK OCTANT-345 +<U0001CD15> /xf0/x9c/xb4/x95 BLOCK OCTANT-1345 +<U0001CD16> /xf0/x9c/xb4/x96 BLOCK OCTANT-2345 +<U0001CD17> /xf0/x9c/xb4/x97 BLOCK OCTANT-12345 +<U0001CD18> /xf0/x9c/xb4/x98 BLOCK OCTANT-6 +<U0001CD19> /xf0/x9c/xb4/x99 BLOCK OCTANT-16 +<U0001CD1A> /xf0/x9c/xb4/x9a BLOCK OCTANT-26 +<U0001CD1B> /xf0/x9c/xb4/x9b BLOCK OCTANT-126 +<U0001CD1C> /xf0/x9c/xb4/x9c BLOCK OCTANT-36 +<U0001CD1D> /xf0/x9c/xb4/x9d BLOCK OCTANT-136 +<U0001CD1E> /xf0/x9c/xb4/x9e BLOCK OCTANT-236 +<U0001CD1F> /xf0/x9c/xb4/x9f BLOCK OCTANT-1236 +<U0001CD20> /xf0/x9c/xb4/xa0 BLOCK OCTANT-146 +<U0001CD21> /xf0/x9c/xb4/xa1 BLOCK OCTANT-246 +<U0001CD22> /xf0/x9c/xb4/xa2 BLOCK OCTANT-1246 +<U0001CD23> /xf0/x9c/xb4/xa3 BLOCK OCTANT-346 +<U0001CD24> /xf0/x9c/xb4/xa4 BLOCK OCTANT-1346 +<U0001CD25> /xf0/x9c/xb4/xa5 BLOCK OCTANT-2346 +<U0001CD26> /xf0/x9c/xb4/xa6 BLOCK OCTANT-12346 +<U0001CD27> /xf0/x9c/xb4/xa7 BLOCK OCTANT-56 +<U0001CD28> /xf0/x9c/xb4/xa8 BLOCK OCTANT-156 +<U0001CD29> /xf0/x9c/xb4/xa9 BLOCK OCTANT-256 +<U0001CD2A> /xf0/x9c/xb4/xaa BLOCK OCTANT-1256 +<U0001CD2B> /xf0/x9c/xb4/xab BLOCK OCTANT-356 +<U0001CD2C> /xf0/x9c/xb4/xac BLOCK OCTANT-1356 +<U0001CD2D> /xf0/x9c/xb4/xad BLOCK OCTANT-2356 +<U0001CD2E> /xf0/x9c/xb4/xae BLOCK OCTANT-12356 +<U0001CD2F> /xf0/x9c/xb4/xaf BLOCK OCTANT-456 +<U0001CD30> /xf0/x9c/xb4/xb0 BLOCK OCTANT-1456 +<U0001CD31> /xf0/x9c/xb4/xb1 BLOCK OCTANT-2456 +<U0001CD32> /xf0/x9c/xb4/xb2 BLOCK OCTANT-12456 +<U0001CD33> /xf0/x9c/xb4/xb3 BLOCK OCTANT-3456 +<U0001CD34> /xf0/x9c/xb4/xb4 BLOCK OCTANT-13456 +<U0001CD35> /xf0/x9c/xb4/xb5 BLOCK OCTANT-23456 +<U0001CD36> /xf0/x9c/xb4/xb6 BLOCK OCTANT-17 +<U0001CD37> /xf0/x9c/xb4/xb7 BLOCK OCTANT-27 +<U0001CD38> /xf0/x9c/xb4/xb8 BLOCK OCTANT-127 +<U0001CD39> /xf0/x9c/xb4/xb9 BLOCK OCTANT-37 +<U0001CD3A> /xf0/x9c/xb4/xba BLOCK OCTANT-137 +<U0001CD3B> /xf0/x9c/xb4/xbb BLOCK OCTANT-237 +<U0001CD3C> /xf0/x9c/xb4/xbc BLOCK OCTANT-1237 +<U0001CD3D> /xf0/x9c/xb4/xbd BLOCK OCTANT-47 +<U0001CD3E> /xf0/x9c/xb4/xbe BLOCK OCTANT-147 +<U0001CD3F> /xf0/x9c/xb4/xbf BLOCK OCTANT-247 +<U0001CD40> /xf0/x9c/xb5/x80 BLOCK OCTANT-1247 +<U0001CD41> /xf0/x9c/xb5/x81 BLOCK OCTANT-347 +<U0001CD42> /xf0/x9c/xb5/x82 BLOCK OCTANT-1347 +<U0001CD43> /xf0/x9c/xb5/x83 BLOCK OCTANT-2347 +<U0001CD44> /xf0/x9c/xb5/x84 BLOCK OCTANT-12347 +<U0001CD45> /xf0/x9c/xb5/x85 BLOCK OCTANT-157 +<U0001CD46> /xf0/x9c/xb5/x86 BLOCK OCTANT-257 +<U0001CD47> /xf0/x9c/xb5/x87 BLOCK OCTANT-1257 +<U0001CD48> /xf0/x9c/xb5/x88 BLOCK OCTANT-357 +<U0001CD49> /xf0/x9c/xb5/x89 BLOCK OCTANT-2357 +<U0001CD4A> /xf0/x9c/xb5/x8a BLOCK OCTANT-12357 +<U0001CD4B> /xf0/x9c/xb5/x8b BLOCK OCTANT-457 +<U0001CD4C> /xf0/x9c/xb5/x8c BLOCK OCTANT-1457 +<U0001CD4D> /xf0/x9c/xb5/x8d BLOCK OCTANT-12457 +<U0001CD4E> /xf0/x9c/xb5/x8e BLOCK OCTANT-3457 +<U0001CD4F> /xf0/x9c/xb5/x8f BLOCK OCTANT-13457 +<U0001CD50> /xf0/x9c/xb5/x90 BLOCK OCTANT-23457 +<U0001CD51> /xf0/x9c/xb5/x91 BLOCK OCTANT-67 +<U0001CD52> /xf0/x9c/xb5/x92 BLOCK OCTANT-167 +<U0001CD53> /xf0/x9c/xb5/x93 BLOCK OCTANT-267 +<U0001CD54> /xf0/x9c/xb5/x94 BLOCK OCTANT-1267 +<U0001CD55> /xf0/x9c/xb5/x95 BLOCK OCTANT-367 +<U0001CD56> /xf0/x9c/xb5/x96 BLOCK OCTANT-1367 +<U0001CD57> /xf0/x9c/xb5/x97 BLOCK OCTANT-2367 +<U0001CD58> /xf0/x9c/xb5/x98 BLOCK OCTANT-12367 +<U0001CD59> /xf0/x9c/xb5/x99 BLOCK OCTANT-467 +<U0001CD5A> /xf0/x9c/xb5/x9a BLOCK OCTANT-1467 +<U0001CD5B> /xf0/x9c/xb5/x9b BLOCK OCTANT-2467 +<U0001CD5C> /xf0/x9c/xb5/x9c BLOCK OCTANT-12467 +<U0001CD5D> /xf0/x9c/xb5/x9d BLOCK OCTANT-3467 +<U0001CD5E> /xf0/x9c/xb5/x9e BLOCK OCTANT-13467 +<U0001CD5F> /xf0/x9c/xb5/x9f BLOCK OCTANT-23467 +<U0001CD60> /xf0/x9c/xb5/xa0 BLOCK OCTANT-123467 +<U0001CD61> /xf0/x9c/xb5/xa1 BLOCK OCTANT-567 +<U0001CD62> /xf0/x9c/xb5/xa2 BLOCK OCTANT-1567 +<U0001CD63> /xf0/x9c/xb5/xa3 BLOCK OCTANT-2567 +<U0001CD64> /xf0/x9c/xb5/xa4 BLOCK OCTANT-12567 +<U0001CD65> /xf0/x9c/xb5/xa5 BLOCK OCTANT-3567 +<U0001CD66> /xf0/x9c/xb5/xa6 BLOCK OCTANT-13567 +<U0001CD67> /xf0/x9c/xb5/xa7 BLOCK OCTANT-23567 +<U0001CD68> /xf0/x9c/xb5/xa8 BLOCK OCTANT-123567 +<U0001CD69> /xf0/x9c/xb5/xa9 BLOCK OCTANT-4567 +<U0001CD6A> /xf0/x9c/xb5/xaa BLOCK OCTANT-14567 +<U0001CD6B> /xf0/x9c/xb5/xab BLOCK OCTANT-24567 +<U0001CD6C> /xf0/x9c/xb5/xac BLOCK OCTANT-124567 +<U0001CD6D> /xf0/x9c/xb5/xad BLOCK OCTANT-34567 +<U0001CD6E> /xf0/x9c/xb5/xae BLOCK OCTANT-134567 +<U0001CD6F> /xf0/x9c/xb5/xaf BLOCK OCTANT-234567 +<U0001CD70> /xf0/x9c/xb5/xb0 BLOCK OCTANT-1234567 +<U0001CD71> /xf0/x9c/xb5/xb1 BLOCK OCTANT-18 +<U0001CD72> /xf0/x9c/xb5/xb2 BLOCK OCTANT-28 +<U0001CD73> /xf0/x9c/xb5/xb3 BLOCK OCTANT-128 +<U0001CD74> /xf0/x9c/xb5/xb4 BLOCK OCTANT-38 +<U0001CD75> /xf0/x9c/xb5/xb5 BLOCK OCTANT-138 +<U0001CD76> /xf0/x9c/xb5/xb6 BLOCK OCTANT-238 +<U0001CD77> /xf0/x9c/xb5/xb7 BLOCK OCTANT-1238 +<U0001CD78> /xf0/x9c/xb5/xb8 BLOCK OCTANT-48 +<U0001CD79> /xf0/x9c/xb5/xb9 BLOCK OCTANT-148 +<U0001CD7A> /xf0/x9c/xb5/xba BLOCK OCTANT-248 +<U0001CD7B> /xf0/x9c/xb5/xbb BLOCK OCTANT-1248 +<U0001CD7C> /xf0/x9c/xb5/xbc BLOCK OCTANT-348 +<U0001CD7D> /xf0/x9c/xb5/xbd BLOCK OCTANT-1348 +<U0001CD7E> /xf0/x9c/xb5/xbe BLOCK OCTANT-2348 +<U0001CD7F> /xf0/x9c/xb5/xbf BLOCK OCTANT-12348 +<U0001CD80> /xf0/x9c/xb6/x80 BLOCK OCTANT-58 +<U0001CD81> /xf0/x9c/xb6/x81 BLOCK OCTANT-158 +<U0001CD82> /xf0/x9c/xb6/x82 BLOCK OCTANT-258 +<U0001CD83> /xf0/x9c/xb6/x83 BLOCK OCTANT-1258 +<U0001CD84> /xf0/x9c/xb6/x84 BLOCK OCTANT-358 +<U0001CD85> /xf0/x9c/xb6/x85 BLOCK OCTANT-1358 +<U0001CD86> /xf0/x9c/xb6/x86 BLOCK OCTANT-2358 +<U0001CD87> /xf0/x9c/xb6/x87 BLOCK OCTANT-12358 +<U0001CD88> /xf0/x9c/xb6/x88 BLOCK OCTANT-458 +<U0001CD89> /xf0/x9c/xb6/x89 BLOCK OCTANT-1458 +<U0001CD8A> /xf0/x9c/xb6/x8a BLOCK OCTANT-2458 +<U0001CD8B> /xf0/x9c/xb6/x8b BLOCK OCTANT-12458 +<U0001CD8C> /xf0/x9c/xb6/x8c BLOCK OCTANT-3458 +<U0001CD8D> /xf0/x9c/xb6/x8d BLOCK OCTANT-13458 +<U0001CD8E> /xf0/x9c/xb6/x8e BLOCK OCTANT-23458 +<U0001CD8F> /xf0/x9c/xb6/x8f BLOCK OCTANT-123458 +<U0001CD90> /xf0/x9c/xb6/x90 BLOCK OCTANT-168 +<U0001CD91> /xf0/x9c/xb6/x91 BLOCK OCTANT-268 +<U0001CD92> /xf0/x9c/xb6/x92 BLOCK OCTANT-1268 +<U0001CD93> /xf0/x9c/xb6/x93 BLOCK OCTANT-368 +<U0001CD94> /xf0/x9c/xb6/x94 BLOCK OCTANT-2368 +<U0001CD95> /xf0/x9c/xb6/x95 BLOCK OCTANT-12368 +<U0001CD96> /xf0/x9c/xb6/x96 BLOCK OCTANT-468 +<U0001CD97> /xf0/x9c/xb6/x97 BLOCK OCTANT-1468 +<U0001CD98> /xf0/x9c/xb6/x98 BLOCK OCTANT-12468 +<U0001CD99> /xf0/x9c/xb6/x99 BLOCK OCTANT-3468 +<U0001CD9A> /xf0/x9c/xb6/x9a BLOCK OCTANT-13468 +<U0001CD9B> /xf0/x9c/xb6/x9b BLOCK OCTANT-23468 +<U0001CD9C> /xf0/x9c/xb6/x9c BLOCK OCTANT-568 +<U0001CD9D> /xf0/x9c/xb6/x9d BLOCK OCTANT-1568 +<U0001CD9E> /xf0/x9c/xb6/x9e BLOCK OCTANT-2568 +<U0001CD9F> /xf0/x9c/xb6/x9f BLOCK OCTANT-12568 +<U0001CDA0> /xf0/x9c/xb6/xa0 BLOCK OCTANT-3568 +<U0001CDA1> /xf0/x9c/xb6/xa1 BLOCK OCTANT-13568 +<U0001CDA2> /xf0/x9c/xb6/xa2 BLOCK OCTANT-23568 +<U0001CDA3> /xf0/x9c/xb6/xa3 BLOCK OCTANT-123568 +<U0001CDA4> /xf0/x9c/xb6/xa4 BLOCK OCTANT-4568 +<U0001CDA5> /xf0/x9c/xb6/xa5 BLOCK OCTANT-14568 +<U0001CDA6> /xf0/x9c/xb6/xa6 BLOCK OCTANT-24568 +<U0001CDA7> /xf0/x9c/xb6/xa7 BLOCK OCTANT-124568 +<U0001CDA8> /xf0/x9c/xb6/xa8 BLOCK OCTANT-34568 +<U0001CDA9> /xf0/x9c/xb6/xa9 BLOCK OCTANT-134568 +<U0001CDAA> /xf0/x9c/xb6/xaa BLOCK OCTANT-234568 +<U0001CDAB> /xf0/x9c/xb6/xab BLOCK OCTANT-1234568 +<U0001CDAC> /xf0/x9c/xb6/xac BLOCK OCTANT-178 +<U0001CDAD> /xf0/x9c/xb6/xad BLOCK OCTANT-278 +<U0001CDAE> /xf0/x9c/xb6/xae BLOCK OCTANT-1278 +<U0001CDAF> /xf0/x9c/xb6/xaf BLOCK OCTANT-378 +<U0001CDB0> /xf0/x9c/xb6/xb0 BLOCK OCTANT-1378 +<U0001CDB1> /xf0/x9c/xb6/xb1 BLOCK OCTANT-2378 +<U0001CDB2> /xf0/x9c/xb6/xb2 BLOCK OCTANT-12378 +<U0001CDB3> /xf0/x9c/xb6/xb3 BLOCK OCTANT-478 +<U0001CDB4> /xf0/x9c/xb6/xb4 BLOCK OCTANT-1478 +<U0001CDB5> /xf0/x9c/xb6/xb5 BLOCK OCTANT-2478 +<U0001CDB6> /xf0/x9c/xb6/xb6 BLOCK OCTANT-12478 +<U0001CDB7> /xf0/x9c/xb6/xb7 BLOCK OCTANT-3478 +<U0001CDB8> /xf0/x9c/xb6/xb8 BLOCK OCTANT-13478 +<U0001CDB9> /xf0/x9c/xb6/xb9 BLOCK OCTANT-23478 +<U0001CDBA> /xf0/x9c/xb6/xba BLOCK OCTANT-123478 +<U0001CDBB> /xf0/x9c/xb6/xbb BLOCK OCTANT-578 +<U0001CDBC> /xf0/x9c/xb6/xbc BLOCK OCTANT-1578 +<U0001CDBD> /xf0/x9c/xb6/xbd BLOCK OCTANT-2578 +<U0001CDBE> /xf0/x9c/xb6/xbe BLOCK OCTANT-12578 +<U0001CDBF> /xf0/x9c/xb6/xbf BLOCK OCTANT-3578 +<U0001CDC0> /xf0/x9c/xb7/x80 BLOCK OCTANT-13578 +<U0001CDC1> /xf0/x9c/xb7/x81 BLOCK OCTANT-23578 +<U0001CDC2> /xf0/x9c/xb7/x82 BLOCK OCTANT-123578 +<U0001CDC3> /xf0/x9c/xb7/x83 BLOCK OCTANT-4578 +<U0001CDC4> /xf0/x9c/xb7/x84 BLOCK OCTANT-14578 +<U0001CDC5> /xf0/x9c/xb7/x85 BLOCK OCTANT-24578 +<U0001CDC6> /xf0/x9c/xb7/x86 BLOCK OCTANT-124578 +<U0001CDC7> /xf0/x9c/xb7/x87 BLOCK OCTANT-34578 +<U0001CDC8> /xf0/x9c/xb7/x88 BLOCK OCTANT-134578 +<U0001CDC9> /xf0/x9c/xb7/x89 BLOCK OCTANT-234578 +<U0001CDCA> /xf0/x9c/xb7/x8a BLOCK OCTANT-1234578 +<U0001CDCB> /xf0/x9c/xb7/x8b BLOCK OCTANT-678 +<U0001CDCC> /xf0/x9c/xb7/x8c BLOCK OCTANT-1678 +<U0001CDCD> /xf0/x9c/xb7/x8d BLOCK OCTANT-2678 +<U0001CDCE> /xf0/x9c/xb7/x8e BLOCK OCTANT-12678 +<U0001CDCF> /xf0/x9c/xb7/x8f BLOCK OCTANT-3678 +<U0001CDD0> /xf0/x9c/xb7/x90 BLOCK OCTANT-13678 +<U0001CDD1> /xf0/x9c/xb7/x91 BLOCK OCTANT-23678 +<U0001CDD2> /xf0/x9c/xb7/x92 BLOCK OCTANT-123678 +<U0001CDD3> /xf0/x9c/xb7/x93 BLOCK OCTANT-4678 +<U0001CDD4> /xf0/x9c/xb7/x94 BLOCK OCTANT-14678 +<U0001CDD5> /xf0/x9c/xb7/x95 BLOCK OCTANT-24678 +<U0001CDD6> /xf0/x9c/xb7/x96 BLOCK OCTANT-124678 +<U0001CDD7> /xf0/x9c/xb7/x97 BLOCK OCTANT-34678 +<U0001CDD8> /xf0/x9c/xb7/x98 BLOCK OCTANT-134678 +<U0001CDD9> /xf0/x9c/xb7/x99 BLOCK OCTANT-234678 +<U0001CDDA> /xf0/x9c/xb7/x9a BLOCK OCTANT-1234678 +<U0001CDDB> /xf0/x9c/xb7/x9b BLOCK OCTANT-15678 +<U0001CDDC> /xf0/x9c/xb7/x9c BLOCK OCTANT-25678 +<U0001CDDD> /xf0/x9c/xb7/x9d BLOCK OCTANT-125678 +<U0001CDDE> /xf0/x9c/xb7/x9e BLOCK OCTANT-35678 +<U0001CDDF> /xf0/x9c/xb7/x9f BLOCK OCTANT-235678 +<U0001CDE0> /xf0/x9c/xb7/xa0 BLOCK OCTANT-1235678 +<U0001CDE1> /xf0/x9c/xb7/xa1 BLOCK OCTANT-45678 +<U0001CDE2> /xf0/x9c/xb7/xa2 BLOCK OCTANT-145678 +<U0001CDE3> /xf0/x9c/xb7/xa3 BLOCK OCTANT-1245678 +<U0001CDE4> /xf0/x9c/xb7/xa4 BLOCK OCTANT-1345678 +<U0001CDE5> /xf0/x9c/xb7/xa5 BLOCK OCTANT-2345678 +<U0001CDE6> /xf0/x9c/xb7/xa6 TOP HALF STANDING PERSON +<U0001CDE7> /xf0/x9c/xb7/xa7 BOTTOM HALF STANDING PERSON +<U0001CDE8> /xf0/x9c/xb7/xa8 TOP HALF RIGHT-FACING RUNNER FRAME-1 +<U0001CDE9> /xf0/x9c/xb7/xa9 BOTTOM HALF RIGHT-FACING RUNNER FRAME-1 +<U0001CDEA> /xf0/x9c/xb7/xaa TOP HALF RIGHT-FACING RUNNER FRAME-2 +<U0001CDEB> /xf0/x9c/xb7/xab BOTTOM HALF RIGHT-FACING RUNNER FRAME-2 +<U0001CDEC> /xf0/x9c/xb7/xac TOP HALF LEFT-FACING RUNNER FRAME-1 +<U0001CDED> /xf0/x9c/xb7/xad BOTTOM HALF LEFT-FACING RUNNER FRAME-1 +<U0001CDEE> /xf0/x9c/xb7/xae TOP HALF LEFT-FACING RUNNER FRAME-2 +<U0001CDEF> /xf0/x9c/xb7/xaf BOTTOM HALF LEFT-FACING RUNNER FRAME-2 +<U0001CDF0> /xf0/x9c/xb7/xb0 TOP HALF FORWARD-FACING RUNNER +<U0001CDF1> /xf0/x9c/xb7/xb1 BOTTOM HALF FORWARD-FACING RUNNER FRAME-1 +<U0001CDF2> /xf0/x9c/xb7/xb2 BOTTOM HALF FORWARD-FACING RUNNER FRAME-2 +<U0001CDF3> /xf0/x9c/xb7/xb3 BOTTOM HALF FORWARD-FACING RUNNER FRAME-3 +<U0001CDF4> /xf0/x9c/xb7/xb4 BOTTOM HALF FORWARD-FACING RUNNER FRAME-4 +<U0001CDF5> /xf0/x9c/xb7/xb5 MOON LANDER +<U0001CDF6> /xf0/x9c/xb7/xb6 TOP HALF FLAILING ROBOT FRAME-1 +<U0001CDF7> /xf0/x9c/xb7/xb7 TOP HALF FLAILING ROBOT FRAME-2 +<U0001CDF8> /xf0/x9c/xb7/xb8 DOWN-POINTING AIRPLANE +<U0001CDF9> /xf0/x9c/xb7/xb9 LEFT-POINTING AIRPLANE +<U0001CDFA> /xf0/x9c/xb7/xba SMALL UP-POINTING AIRPLANE +<U0001CDFB> /xf0/x9c/xb7/xbb UP-POINTING FROG +<U0001CDFC> /xf0/x9c/xb7/xbc DOWN-POINTING FROG +<U0001CDFD> /xf0/x9c/xb7/xbd EXPLOSION FRAME-1 +<U0001CDFE> /xf0/x9c/xb7/xbe EXPLOSION FRAME-2 +<U0001CDFF> /xf0/x9c/xb7/xbf EXPLOSION FRAME-3 +<U0001CE00> /xf0/x9c/xb8/x80 RIGHT HALF AND LEFT HALF WHITE CIRCLE +<U0001CE01> /xf0/x9c/xb8/x81 LOWER HALF AND UPPER HALF WHITE CIRCLE +<U0001CE02> /xf0/x9c/xb8/x82 EXPLOSION AT HORIZON +<U0001CE03> /xf0/x9c/xb8/x83 UPPER HALF HEAVY WHITE SQUARE +<U0001CE04> /xf0/x9c/xb8/x84 LOWER HALF HEAVY WHITE SQUARE +<U0001CE05> /xf0/x9c/xb8/x85 HEAVY WHITE SQUARE CONTAINING BLACK VERY SMALL SQUARE +<U0001CE06> /xf0/x9c/xb8/x86 WHITE VERTICAL RECTANGLE WITH HORIZONTAL BAR +<U0001CE07> /xf0/x9c/xb8/x87 TOP LEFT BLACK LEFT-POINTING SMALL TRIANGLE +<U0001CE08> /xf0/x9c/xb8/x88 FUNNEL +<U0001CE09> /xf0/x9c/xb8/x89 BOX DRAWINGS DOUBLE DIAGONAL LOWER LEFT TO MIDDLE CENTRE TO LOWER RIGHT +<U0001CE0A> /xf0/x9c/xb8/x8a BOX DRAWINGS DOUBLE DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO UPPER RIGHT +<U0001CE0B> /xf0/x9c/xb8/x8b LEFT HALF WHITE ELLIPSE +<U0001CE0C> /xf0/x9c/xb8/x8c RIGHT HALF WHITE ELLIPSE +<U0001CE0D> /xf0/x9c/xb8/x8d LEFT HALF TRIPLE DASH HORIZONTAL +<U0001CE0E> /xf0/x9c/xb8/x8e RIGHT HALF TRIPLE DASH HORIZONTAL +<U0001CE0F> /xf0/x9c/xb8/x8f HORIZONTAL LINE WITH TICK MARK +<U0001CE10> /xf0/x9c/xb8/x90 LEFT HALF HORIZONTAL LINE WITH THREE TICK MARKS +<U0001CE11> /xf0/x9c/xb8/x91 RIGHT HALF HORIZONTAL LINE WITH THREE TICK MARKS +<U0001CE12> /xf0/x9c/xb8/x92 HORIZONTAL LINE WITH THREE TICK MARKS +<U0001CE13> /xf0/x9c/xb8/x93 LOWER HALF VERTICAL LINE WITH THREE TICK MARKS +<U0001CE14> /xf0/x9c/xb8/x94 UPPER HALF VERTICAL LINE WITH THREE TICK MARKS +<U0001CE15> /xf0/x9c/xb8/x95 VERTICAL LINE WITH THREE TICK MARKS +<U0001CE16> /xf0/x9c/xb8/x96 BOX DRAWINGS LIGHT VERTICAL AND TOP RIGHT +<U0001CE17> /xf0/x9c/xb8/x97 BOX DRAWINGS LIGHT VERTICAL AND BOTTOM RIGHT +<U0001CE18> /xf0/x9c/xb8/x98 BOX DRAWINGS LIGHT VERTICAL AND TOP LEFT +<U0001CE19> /xf0/x9c/xb8/x99 BOX DRAWINGS LIGHT VERTICAL AND BOTTOM LEFT +<U0001CE1A> /xf0/x9c/xb8/x9a LARGE TYPE PIECE UPPER LEFT ARC +<U0001CE1B> /xf0/x9c/xb8/x9b LARGE TYPE PIECE UPPER LEFT CORNER +<U0001CE1C> /xf0/x9c/xb8/x9c LARGE TYPE PIECE UPPER TERMINAL +<U0001CE1D> /xf0/x9c/xb8/x9d LARGE TYPE PIECE UPPER LEFT CROTCH +<U0001CE1E> /xf0/x9c/xb8/x9e LARGE TYPE PIECE LEFT ARM +<U0001CE1F> /xf0/x9c/xb8/x9f LARGE TYPE PIECE CROSSBAR +<U0001CE20> /xf0/x9c/xb8/xa0 LARGE TYPE PIECE CROSSBAR WITH LOWER STEM +<U0001CE21> /xf0/x9c/xb8/xa1 LARGE TYPE PIECE UPPER HALF VERTEX OF M +<U0001CE22> /xf0/x9c/xb8/xa2 LARGE TYPE PIECE DIAGONAL LOWER LEFT +<U0001CE23> /xf0/x9c/xb8/xa3 LARGE TYPE PIECE SHORT UPPER TERMINAL +<U0001CE24> /xf0/x9c/xb8/xa4 LARGE TYPE PIECE UPPER RIGHT ARC +<U0001CE25> /xf0/x9c/xb8/xa5 LARGE TYPE PIECE RIGHT ARM +<U0001CE26> /xf0/x9c/xb8/xa6 LARGE TYPE PIECE UPPER RIGHT CROTCH +<U0001CE27> /xf0/x9c/xb8/xa7 LARGE TYPE PIECE UPPER RIGHT CORNER +<U0001CE28> /xf0/x9c/xb8/xa8 LARGE TYPE PIECE STEM WITH RIGHT CROSSBAR +<U0001CE29> /xf0/x9c/xb8/xa9 LARGE TYPE PIECE STEM +<U0001CE2A> /xf0/x9c/xb8/xaa LARGE TYPE PIECE DIAGONAL UPPER RIGHT AND LOWER RIGHT +<U0001CE2B> /xf0/x9c/xb8/xab LARGE TYPE PIECE DIAGONAL UPPER RIGHT +<U0001CE2C> /xf0/x9c/xb8/xac LARGE TYPE PIECE DIAGONAL LOWER RIGHT +<U0001CE2D> /xf0/x9c/xb8/xad LARGE TYPE PIECE SHORT LOWER TERMINAL +<U0001CE2E> /xf0/x9c/xb8/xae LARGE TYPE PIECE LOWER LEFT AND UPPER LEFT ARC +<U0001CE2F> /xf0/x9c/xb8/xaf LARGE TYPE PIECE CENTRE OF K +<U0001CE30> /xf0/x9c/xb8/xb0 LARGE TYPE PIECE LOWER HALF VERTEX OF M +<U0001CE31> /xf0/x9c/xb8/xb1 LARGE TYPE PIECE UPPER HALF VERTEX OF W +<U0001CE32> /xf0/x9c/xb8/xb2 LARGE TYPE PIECE CENTRE OF X +<U0001CE33> /xf0/x9c/xb8/xb3 LARGE TYPE PIECE CENTRE OF Y +<U0001CE34> /xf0/x9c/xb8/xb4 LARGE TYPE PIECE CENTRE OF Z WITH CROSSBAR +<U0001CE35> /xf0/x9c/xb8/xb5 LARGE TYPE PIECE RAISED UPPER LEFT ARC +<U0001CE36> /xf0/x9c/xb8/xb6 LARGE TYPE PIECE STEM WITH LEFT CROSSBAR +<U0001CE37> /xf0/x9c/xb8/xb7 LARGE TYPE PIECE LOWER RIGHT AND UPPER RIGHT ARC +<U0001CE38> /xf0/x9c/xb8/xb8 LARGE TYPE PIECE DIAGONAL UPPER LEFT AND LOWER LEFT +<U0001CE39> /xf0/x9c/xb8/xb9 LARGE TYPE PIECE STEM WITH LEFT JOINT +<U0001CE3A> /xf0/x9c/xb8/xba LARGE TYPE PIECE STEM WITH CROSSBAR +<U0001CE3B> /xf0/x9c/xb8/xbb LARGE TYPE PIECE DIAGONAL UPPER LEFT +<U0001CE3C> /xf0/x9c/xb8/xbc LARGE TYPE PIECE LOWER TERMINAL +<U0001CE3D> /xf0/x9c/xb8/xbd LARGE TYPE PIECE LOWER LEFT CORNER +<U0001CE3E> /xf0/x9c/xb8/xbe LARGE TYPE PIECE LOWER LEFT ARC +<U0001CE3F> /xf0/x9c/xb8/xbf LARGE TYPE PIECE LOWER LEFT CROTCH +<U0001CE40> /xf0/x9c/xb9/x80 LARGE TYPE PIECE CROSSBAR WITH UPPER STEM +<U0001CE41> /xf0/x9c/xb9/x81 LARGE TYPE PIECE VERTEX OF V +<U0001CE42> /xf0/x9c/xb9/x82 LARGE TYPE PIECE LOWER HALF VERTEX OF W +<U0001CE43> /xf0/x9c/xb9/x83 LARGE TYPE PIECE LOWER RIGHT ARC +<U0001CE44> /xf0/x9c/xb9/x84 LARGE TYPE PIECE LOWER RIGHT CORNER +<U0001CE45> /xf0/x9c/xb9/x85 LARGE TYPE PIECE LOWER RIGHT ARC WITH TAIL +<U0001CE46> /xf0/x9c/xb9/x86 LARGE TYPE PIECE LOWER RIGHT CROTCH +<U0001CE47> /xf0/x9c/xb9/x87 LARGE TYPE PIECE STEM-45 +<U0001CE48> /xf0/x9c/xb9/x88 LARGE TYPE PIECE STEM-2345 +<U0001CE49> /xf0/x9c/xb9/x89 LARGE TYPE PIECE STEM-4 +<U0001CE4A> /xf0/x9c/xb9/x8a LARGE TYPE PIECE STEM-34 +<U0001CE4B> /xf0/x9c/xb9/x8b LARGE TYPE PIECE STEM-234 +<U0001CE4C> /xf0/x9c/xb9/x8c LARGE TYPE PIECE STEM-1234 +<U0001CE4D> /xf0/x9c/xb9/x8d LARGE TYPE PIECE STEM-3 +<U0001CE4E> /xf0/x9c/xb9/x8e LARGE TYPE PIECE STEM-23 +<U0001CE4F> /xf0/x9c/xb9/x8f LARGE TYPE PIECE STEM-2 +<U0001CE50> /xf0/x9c/xb9/x90 LARGE TYPE PIECE STEM-12 +<U0001CE51> /xf0/x9c/xb9/x91 SEPARATED BLOCK SEXTANT-1 +<U0001CE52> /xf0/x9c/xb9/x92 SEPARATED BLOCK SEXTANT-2 +<U0001CE53> /xf0/x9c/xb9/x93 SEPARATED BLOCK SEXTANT-12 +<U0001CE54> /xf0/x9c/xb9/x94 SEPARATED BLOCK SEXTANT-3 +<U0001CE55> /xf0/x9c/xb9/x95 SEPARATED BLOCK SEXTANT-13 +<U0001CE56> /xf0/x9c/xb9/x96 SEPARATED BLOCK SEXTANT-23 +<U0001CE57> /xf0/x9c/xb9/x97 SEPARATED BLOCK SEXTANT-123 +<U0001CE58> /xf0/x9c/xb9/x98 SEPARATED BLOCK SEXTANT-4 +<U0001CE59> /xf0/x9c/xb9/x99 SEPARATED BLOCK SEXTANT-14 +<U0001CE5A> /xf0/x9c/xb9/x9a SEPARATED BLOCK SEXTANT-24 +<U0001CE5B> /xf0/x9c/xb9/x9b SEPARATED BLOCK SEXTANT-124 +<U0001CE5C> /xf0/x9c/xb9/x9c SEPARATED BLOCK SEXTANT-34 +<U0001CE5D> /xf0/x9c/xb9/x9d SEPARATED BLOCK SEXTANT-134 +<U0001CE5E> /xf0/x9c/xb9/x9e SEPARATED BLOCK SEXTANT-234 +<U0001CE5F> /xf0/x9c/xb9/x9f SEPARATED BLOCK SEXTANT-1234 +<U0001CE60> /xf0/x9c/xb9/xa0 SEPARATED BLOCK SEXTANT-5 +<U0001CE61> /xf0/x9c/xb9/xa1 SEPARATED BLOCK SEXTANT-15 +<U0001CE62> /xf0/x9c/xb9/xa2 SEPARATED BLOCK SEXTANT-25 +<U0001CE63> /xf0/x9c/xb9/xa3 SEPARATED BLOCK SEXTANT-125 +<U0001CE64> /xf0/x9c/xb9/xa4 SEPARATED BLOCK SEXTANT-35 +<U0001CE65> /xf0/x9c/xb9/xa5 SEPARATED BLOCK SEXTANT-135 +<U0001CE66> /xf0/x9c/xb9/xa6 SEPARATED BLOCK SEXTANT-235 +<U0001CE67> /xf0/x9c/xb9/xa7 SEPARATED BLOCK SEXTANT-1235 +<U0001CE68> /xf0/x9c/xb9/xa8 SEPARATED BLOCK SEXTANT-45 +<U0001CE69> /xf0/x9c/xb9/xa9 SEPARATED BLOCK SEXTANT-145 +<U0001CE6A> /xf0/x9c/xb9/xaa SEPARATED BLOCK SEXTANT-245 +<U0001CE6B> /xf0/x9c/xb9/xab SEPARATED BLOCK SEXTANT-1245 +<U0001CE6C> /xf0/x9c/xb9/xac SEPARATED BLOCK SEXTANT-345 +<U0001CE6D> /xf0/x9c/xb9/xad SEPARATED BLOCK SEXTANT-1345 +<U0001CE6E> /xf0/x9c/xb9/xae SEPARATED BLOCK SEXTANT-2345 +<U0001CE6F> /xf0/x9c/xb9/xaf SEPARATED BLOCK SEXTANT-12345 +<U0001CE70> /xf0/x9c/xb9/xb0 SEPARATED BLOCK SEXTANT-6 +<U0001CE71> /xf0/x9c/xb9/xb1 SEPARATED BLOCK SEXTANT-16 +<U0001CE72> /xf0/x9c/xb9/xb2 SEPARATED BLOCK SEXTANT-26 +<U0001CE73> /xf0/x9c/xb9/xb3 SEPARATED BLOCK SEXTANT-126 +<U0001CE74> /xf0/x9c/xb9/xb4 SEPARATED BLOCK SEXTANT-36 +<U0001CE75> /xf0/x9c/xb9/xb5 SEPARATED BLOCK SEXTANT-136 +<U0001CE76> /xf0/x9c/xb9/xb6 SEPARATED BLOCK SEXTANT-236 +<U0001CE77> /xf0/x9c/xb9/xb7 SEPARATED BLOCK SEXTANT-1236 +<U0001CE78> /xf0/x9c/xb9/xb8 SEPARATED BLOCK SEXTANT-46 +<U0001CE79> /xf0/x9c/xb9/xb9 SEPARATED BLOCK SEXTANT-146 +<U0001CE7A> /xf0/x9c/xb9/xba SEPARATED BLOCK SEXTANT-246 +<U0001CE7B> /xf0/x9c/xb9/xbb SEPARATED BLOCK SEXTANT-1246 +<U0001CE7C> /xf0/x9c/xb9/xbc SEPARATED BLOCK SEXTANT-346 +<U0001CE7D> /xf0/x9c/xb9/xbd SEPARATED BLOCK SEXTANT-1346 +<U0001CE7E> /xf0/x9c/xb9/xbe SEPARATED BLOCK SEXTANT-2346 +<U0001CE7F> /xf0/x9c/xb9/xbf SEPARATED BLOCK SEXTANT-12346 +<U0001CE80> /xf0/x9c/xba/x80 SEPARATED BLOCK SEXTANT-56 +<U0001CE81> /xf0/x9c/xba/x81 SEPARATED BLOCK SEXTANT-156 +<U0001CE82> /xf0/x9c/xba/x82 SEPARATED BLOCK SEXTANT-256 +<U0001CE83> /xf0/x9c/xba/x83 SEPARATED BLOCK SEXTANT-1256 +<U0001CE84> /xf0/x9c/xba/x84 SEPARATED BLOCK SEXTANT-356 +<U0001CE85> /xf0/x9c/xba/x85 SEPARATED BLOCK SEXTANT-1356 +<U0001CE86> /xf0/x9c/xba/x86 SEPARATED BLOCK SEXTANT-2356 +<U0001CE87> /xf0/x9c/xba/x87 SEPARATED BLOCK SEXTANT-12356 +<U0001CE88> /xf0/x9c/xba/x88 SEPARATED BLOCK SEXTANT-456 +<U0001CE89> /xf0/x9c/xba/x89 SEPARATED BLOCK SEXTANT-1456 +<U0001CE8A> /xf0/x9c/xba/x8a SEPARATED BLOCK SEXTANT-2456 +<U0001CE8B> /xf0/x9c/xba/x8b SEPARATED BLOCK SEXTANT-12456 +<U0001CE8C> /xf0/x9c/xba/x8c SEPARATED BLOCK SEXTANT-3456 +<U0001CE8D> /xf0/x9c/xba/x8d SEPARATED BLOCK SEXTANT-13456 +<U0001CE8E> /xf0/x9c/xba/x8e SEPARATED BLOCK SEXTANT-23456 +<U0001CE8F> /xf0/x9c/xba/x8f SEPARATED BLOCK SEXTANT-123456 +<U0001CE90> /xf0/x9c/xba/x90 UPPER LEFT ONE SIXTEENTH BLOCK +<U0001CE91> /xf0/x9c/xba/x91 UPPER CENTRE LEFT ONE SIXTEENTH BLOCK +<U0001CE92> /xf0/x9c/xba/x92 UPPER CENTRE RIGHT ONE SIXTEENTH BLOCK +<U0001CE93> /xf0/x9c/xba/x93 UPPER RIGHT ONE SIXTEENTH BLOCK +<U0001CE94> /xf0/x9c/xba/x94 UPPER MIDDLE LEFT ONE SIXTEENTH BLOCK +<U0001CE95> /xf0/x9c/xba/x95 UPPER MIDDLE CENTRE LEFT ONE SIXTEENTH BLOCK +<U0001CE96> /xf0/x9c/xba/x96 UPPER MIDDLE CENTRE RIGHT ONE SIXTEENTH BLOCK +<U0001CE97> /xf0/x9c/xba/x97 UPPER MIDDLE RIGHT ONE SIXTEENTH BLOCK +<U0001CE98> /xf0/x9c/xba/x98 LOWER MIDDLE LEFT ONE SIXTEENTH BLOCK +<U0001CE99> /xf0/x9c/xba/x99 LOWER MIDDLE CENTRE LEFT ONE SIXTEENTH BLOCK +<U0001CE9A> /xf0/x9c/xba/x9a LOWER MIDDLE CENTRE RIGHT ONE SIXTEENTH BLOCK +<U0001CE9B> /xf0/x9c/xba/x9b LOWER MIDDLE RIGHT ONE SIXTEENTH BLOCK +<U0001CE9C> /xf0/x9c/xba/x9c LOWER LEFT ONE SIXTEENTH BLOCK +<U0001CE9D> /xf0/x9c/xba/x9d LOWER CENTRE LEFT ONE SIXTEENTH BLOCK +<U0001CE9E> /xf0/x9c/xba/x9e LOWER CENTRE RIGHT ONE SIXTEENTH BLOCK +<U0001CE9F> /xf0/x9c/xba/x9f LOWER RIGHT ONE SIXTEENTH BLOCK +<U0001CEA0> /xf0/x9c/xba/xa0 RIGHT HALF LOWER ONE QUARTER BLOCK +<U0001CEA1> /xf0/x9c/xba/xa1 RIGHT THREE QUARTERS LOWER ONE QUARTER BLOCK +<U0001CEA2> /xf0/x9c/xba/xa2 LEFT THREE QUARTERS LOWER ONE QUARTER BLOCK +<U0001CEA3> /xf0/x9c/xba/xa3 LEFT HALF LOWER ONE QUARTER BLOCK +<U0001CEA4> /xf0/x9c/xba/xa4 LOWER HALF LEFT ONE QUARTER BLOCK +<U0001CEA5> /xf0/x9c/xba/xa5 LOWER THREE QUARTERS LEFT ONE QUARTER BLOCK +<U0001CEA6> /xf0/x9c/xba/xa6 UPPER THREE QUARTERS LEFT ONE QUARTER BLOCK +<U0001CEA7> /xf0/x9c/xba/xa7 UPPER HALF LEFT ONE QUARTER BLOCK +<U0001CEA8> /xf0/x9c/xba/xa8 LEFT HALF UPPER ONE QUARTER BLOCK +<U0001CEA9> /xf0/x9c/xba/xa9 LEFT THREE QUARTERS UPPER ONE QUARTER BLOCK +<U0001CEAA> /xf0/x9c/xba/xaa RIGHT THREE QUARTERS UPPER ONE QUARTER BLOCK +<U0001CEAB> /xf0/x9c/xba/xab RIGHT HALF UPPER ONE QUARTER BLOCK +<U0001CEAC> /xf0/x9c/xba/xac UPPER HALF RIGHT ONE QUARTER BLOCK +<U0001CEAD> /xf0/x9c/xba/xad UPPER THREE QUARTERS RIGHT ONE QUARTER BLOCK +<U0001CEAE> /xf0/x9c/xba/xae LOWER THREE QUARTERS RIGHT ONE QUARTER BLOCK +<U0001CEAF> /xf0/x9c/xba/xaf LOWER HALF RIGHT ONE QUARTER BLOCK +<U0001CEB0> /xf0/x9c/xba/xb0 HORIZONTAL ZIGZAG LINE +<U0001CEB1> /xf0/x9c/xba/xb1 KEYHOLE +<U0001CEB2> /xf0/x9c/xba/xb2 OLD PERSONAL COMPUTER WITH MONITOR IN PORTRAIT ORIENTATION +<U0001CEB3> /xf0/x9c/xba/xb3 BLACK RIGHT TRIANGLE CARET <U0001CF00> /xf0/x9c/xbc/x80 ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT <U0001CF01> /xf0/x9c/xbc/x81 ZNAMENNY COMBINING MARK NIZKO S KRYZHEM ON LEFT <U0001CF02> /xf0/x9c/xbc/x82 ZNAMENNY COMBINING MARK TSATA ON LEFT @@ -42672,6 +47757,50 @@ CHARMAP <U0001E4F7> /xf0/x9e/x93/xb7 NAG MUNDARI DIGIT SEVEN <U0001E4F8> /xf0/x9e/x93/xb8 NAG MUNDARI DIGIT EIGHT <U0001E4F9> /xf0/x9e/x93/xb9 NAG MUNDARI DIGIT NINE +<U0001E5D0> /xf0/x9e/x97/x90 OL ONAL LETTER O +<U0001E5D1> /xf0/x9e/x97/x91 OL ONAL LETTER OM +<U0001E5D2> /xf0/x9e/x97/x92 OL ONAL LETTER ONG +<U0001E5D3> /xf0/x9e/x97/x93 OL ONAL LETTER ORR +<U0001E5D4> /xf0/x9e/x97/x94 OL ONAL LETTER OO +<U0001E5D5> /xf0/x9e/x97/x95 OL ONAL LETTER OY +<U0001E5D6> /xf0/x9e/x97/x96 OL ONAL LETTER A +<U0001E5D7> /xf0/x9e/x97/x97 OL ONAL LETTER AD +<U0001E5D8> /xf0/x9e/x97/x98 OL ONAL LETTER AB +<U0001E5D9> /xf0/x9e/x97/x99 OL ONAL LETTER AH +<U0001E5DA> /xf0/x9e/x97/x9a OL ONAL LETTER AL +<U0001E5DB> /xf0/x9e/x97/x9b OL ONAL LETTER AW +<U0001E5DC> /xf0/x9e/x97/x9c OL ONAL LETTER I +<U0001E5DD> /xf0/x9e/x97/x9d OL ONAL LETTER IT +<U0001E5DE> /xf0/x9e/x97/x9e OL ONAL LETTER IP +<U0001E5DF> /xf0/x9e/x97/x9f OL ONAL LETTER ITT +<U0001E5E0> /xf0/x9e/x97/xa0 OL ONAL LETTER ID +<U0001E5E1> /xf0/x9e/x97/xa1 OL ONAL LETTER IN +<U0001E5E2> /xf0/x9e/x97/xa2 OL ONAL LETTER U +<U0001E5E3> /xf0/x9e/x97/xa3 OL ONAL LETTER UK +<U0001E5E4> /xf0/x9e/x97/xa4 OL ONAL LETTER UDD +<U0001E5E5> /xf0/x9e/x97/xa5 OL ONAL LETTER UJ +<U0001E5E6> /xf0/x9e/x97/xa6 OL ONAL LETTER UNY +<U0001E5E7> /xf0/x9e/x97/xa7 OL ONAL LETTER UR +<U0001E5E8> /xf0/x9e/x97/xa8 OL ONAL LETTER E +<U0001E5E9> /xf0/x9e/x97/xa9 OL ONAL LETTER ES +<U0001E5EA> /xf0/x9e/x97/xaa OL ONAL LETTER EH +<U0001E5EB> /xf0/x9e/x97/xab OL ONAL LETTER EC +<U0001E5EC> /xf0/x9e/x97/xac OL ONAL LETTER ENN +<U0001E5ED> /xf0/x9e/x97/xad OL ONAL LETTER EG +<U0001E5EE> /xf0/x9e/x97/xae OL ONAL SIGN MU +<U0001E5EF> /xf0/x9e/x97/xaf OL ONAL SIGN IKIR +<U0001E5F0> /xf0/x9e/x97/xb0 OL ONAL SIGN HODDOND +<U0001E5F1> /xf0/x9e/x97/xb1 OL ONAL DIGIT ZERO +<U0001E5F2> /xf0/x9e/x97/xb2 OL ONAL DIGIT ONE +<U0001E5F3> /xf0/x9e/x97/xb3 OL ONAL DIGIT TWO +<U0001E5F4> /xf0/x9e/x97/xb4 OL ONAL DIGIT THREE +<U0001E5F5> /xf0/x9e/x97/xb5 OL ONAL DIGIT FOUR +<U0001E5F6> /xf0/x9e/x97/xb6 OL ONAL DIGIT FIVE +<U0001E5F7> /xf0/x9e/x97/xb7 OL ONAL DIGIT SIX +<U0001E5F8> /xf0/x9e/x97/xb8 OL ONAL DIGIT SEVEN +<U0001E5F9> /xf0/x9e/x97/xb9 OL ONAL DIGIT EIGHT +<U0001E5FA> /xf0/x9e/x97/xba OL ONAL DIGIT NINE +<U0001E5FF> /xf0/x9e/x97/xbf OL ONAL ABBREVIATION SIGN <U0001E7E0> /xf0/x9e/x9f/xa0 ETHIOPIC SYLLABLE HHYA <U0001E7E1> /xf0/x9e/x9f/xa1 ETHIOPIC SYLLABLE HHYU <U0001E7E2> /xf0/x9e/x9f/xa2 ETHIOPIC SYLLABLE HHYI @@ -45154,6 +50283,18 @@ CHARMAP <U0001F8AD> /xf0/x9f/xa2/xad WHITE ARROW SHAFT WIDTH TWO THIRDS <U0001F8B0> /xf0/x9f/xa2/xb0 ARROW POINTING UPWARDS THEN NORTH WEST <U0001F8B1> /xf0/x9f/xa2/xb1 ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST +<U0001F8B2> /xf0/x9f/xa2/xb2 RIGHTWARDS ARROW WITH LOWER HOOK +<U0001F8B3> /xf0/x9f/xa2/xb3 DOWNWARDS BLACK ARROW TO BAR +<U0001F8B4> /xf0/x9f/xa2/xb4 NEGATIVE SQUARED LEFTWARDS ARROW +<U0001F8B5> /xf0/x9f/xa2/xb5 NEGATIVE SQUARED UPWARDS ARROW +<U0001F8B6> /xf0/x9f/xa2/xb6 NEGATIVE SQUARED RIGHTWARDS ARROW +<U0001F8B7> /xf0/x9f/xa2/xb7 NEGATIVE SQUARED DOWNWARDS ARROW +<U0001F8B8> /xf0/x9f/xa2/xb8 NORTH WEST ARROW FROM BAR +<U0001F8B9> /xf0/x9f/xa2/xb9 NORTH EAST ARROW FROM BAR +<U0001F8BA> /xf0/x9f/xa2/xba SOUTH EAST ARROW FROM BAR +<U0001F8BB> /xf0/x9f/xa2/xbb SOUTH WEST ARROW FROM BAR +<U0001F8C0> /xf0/x9f/xa3/x80 LEFTWARDS ARROW FROM DOWNWARDS ARROW +<U0001F8C1> /xf0/x9f/xa3/x81 RIGHTWARDS ARROW FROM DOWNWARDS ARROW <U0001F900> /xf0/x9f/xa4/x80 CIRCLED CROSS FORMEE WITH FOUR DOTS <U0001F901> /xf0/x9f/xa4/x81 CIRCLED CROSS FORMEE WITH TWO DOTS <U0001F902> /xf0/x9f/xa4/x82 CIRCLED CROSS FORMEE @@ -45530,6 +50671,8 @@ CHARMAP <U0001FA86> /xf0/x9f/xaa/x86 NESTING DOLLS <U0001FA87> /xf0/x9f/xaa/x87 MARACAS <U0001FA88> /xf0/x9f/xaa/x88 FLUTE +<U0001FA89> /xf0/x9f/xaa/x89 HARP +<U0001FA8F> /xf0/x9f/xaa/x8f SHOVEL <U0001FA90> /xf0/x9f/xaa/x90 RINGED PLANET <U0001FA91> /xf0/x9f/xaa/x91 CHAIR <U0001FA92> /xf0/x9f/xaa/x92 RAZOR @@ -45576,6 +50719,7 @@ CHARMAP <U0001FABB> /xf0/x9f/xaa/xbb HYACINTH <U0001FABC> /xf0/x9f/xaa/xbc JELLYFISH <U0001FABD> /xf0/x9f/xaa/xbd WING +<U0001FABE> /xf0/x9f/xaa/xbe LEAFLESS TREE <U0001FABF> /xf0/x9f/xaa/xbf GOOSE <U0001FAC0> /xf0/x9f/xab/x80 ANATOMICAL HEART <U0001FAC1> /xf0/x9f/xab/x81 LUNGS @@ -45583,6 +50727,7 @@ CHARMAP <U0001FAC3> /xf0/x9f/xab/x83 PREGNANT MAN <U0001FAC4> /xf0/x9f/xab/x84 PREGNANT PERSON <U0001FAC5> /xf0/x9f/xab/x85 PERSON WITH CROWN +<U0001FAC6> /xf0/x9f/xab/x86 FINGERPRINT <U0001FACE> /xf0/x9f/xab/x8e MOOSE <U0001FACF> /xf0/x9f/xab/x8f DONKEY <U0001FAD0> /xf0/x9f/xab/x90 BLUEBERRIES @@ -45597,6 +50742,8 @@ CHARMAP <U0001FAD9> /xf0/x9f/xab/x99 JAR <U0001FADA> /xf0/x9f/xab/x9a GINGER ROOT <U0001FADB> /xf0/x9f/xab/x9b PEA POD +<U0001FADC> /xf0/x9f/xab/x9c ROOT VEGETABLE +<U0001FADF> /xf0/x9f/xab/x9f SPLATTER <U0001FAE0> /xf0/x9f/xab/xa0 MELTING FACE <U0001FAE1> /xf0/x9f/xab/xa1 SALUTING FACE <U0001FAE2> /xf0/x9f/xab/xa2 FACE WITH OPEN EYES AND HAND OVER MOUTH @@ -45606,6 +50753,7 @@ CHARMAP <U0001FAE6> /xf0/x9f/xab/xa6 BITING LIP <U0001FAE7> /xf0/x9f/xab/xa7 BUBBLES <U0001FAE8> /xf0/x9f/xab/xa8 SHAKING FACE +<U0001FAE9> /xf0/x9f/xab/xa9 FACE WITH BAGS UNDER EYES <U0001FAF0> /xf0/x9f/xab/xb0 HAND WITH INDEX FINGER AND THUMB CROSSED <U0001FAF1> /xf0/x9f/xab/xb1 RIGHTWARDS HAND <U0001FAF2> /xf0/x9f/xab/xb2 LEFTWARDS HAND @@ -45817,6 +50965,43 @@ CHARMAP <U0001FBC8> /xf0/x9f/xaf/x88 STICK FIGURE LEANING RIGHT <U0001FBC9> /xf0/x9f/xaf/x89 STICK FIGURE WITH DRESS <U0001FBCA> /xf0/x9f/xaf/x8a WHITE UP-POINTING CHEVRON +<U0001FBCB> /xf0/x9f/xaf/x8b WHITE CROSS MARK +<U0001FBCC> /xf0/x9f/xaf/x8c RAISED SMALL LEFT SQUARE BRACKET +<U0001FBCD> /xf0/x9f/xaf/x8d BLACK SMALL UP-POINTING CHEVRON +<U0001FBCE> /xf0/x9f/xaf/x8e LEFT TWO THIRDS BLOCK +<U0001FBCF> /xf0/x9f/xaf/x8f LEFT ONE THIRD BLOCK +<U0001FBD0> /xf0/x9f/xaf/x90 BOX DRAWINGS LIGHT DIAGONAL MIDDLE RIGHT TO LOWER LEFT +<U0001FBD1> /xf0/x9f/xaf/x91 BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE LEFT +<U0001FBD2> /xf0/x9f/xaf/x92 BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE RIGHT +<U0001FBD3> /xf0/x9f/xaf/x93 BOX DRAWINGS LIGHT DIAGONAL MIDDLE LEFT TO LOWER RIGHT +<U0001FBD4> /xf0/x9f/xaf/x94 BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER CENTRE +<U0001FBD5> /xf0/x9f/xaf/x95 BOX DRAWINGS LIGHT DIAGONAL UPPER CENTRE TO LOWER RIGHT +<U0001FBD6> /xf0/x9f/xaf/x96 BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER CENTRE +<U0001FBD7> /xf0/x9f/xaf/x97 BOX DRAWINGS LIGHT DIAGONAL UPPER CENTRE TO LOWER LEFT +<U0001FBD8> /xf0/x9f/xaf/x98 BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO UPPER RIGHT +<U0001FBD9> /xf0/x9f/xaf/x99 BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE CENTRE TO LOWER RIGHT +<U0001FBDA> /xf0/x9f/xaf/x9a BOX DRAWINGS LIGHT DIAGONAL LOWER LEFT TO MIDDLE CENTRE TO LOWER RIGHT +<U0001FBDB> /xf0/x9f/xaf/x9b BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO LOWER LEFT +<U0001FBDC> /xf0/x9f/xaf/x9c BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER CENTRE TO UPPER RIGHT +<U0001FBDD> /xf0/x9f/xaf/x9d BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE LEFT TO LOWER RIGHT +<U0001FBDE> /xf0/x9f/xaf/x9e BOX DRAWINGS LIGHT DIAGONAL LOWER LEFT TO UPPER CENTRE TO LOWER RIGHT +<U0001FBDF> /xf0/x9f/xaf/x9f BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE RIGHT TO LOWER LEFT +<U0001FBE0> /xf0/x9f/xaf/xa0 TOP JUSTIFIED LOWER HALF WHITE CIRCLE +<U0001FBE1> /xf0/x9f/xaf/xa1 RIGHT JUSTIFIED LEFT HALF WHITE CIRCLE +<U0001FBE2> /xf0/x9f/xaf/xa2 BOTTOM JUSTIFIED UPPER HALF WHITE CIRCLE +<U0001FBE3> /xf0/x9f/xaf/xa3 LEFT JUSTIFIED RIGHT HALF WHITE CIRCLE +<U0001FBE4> /xf0/x9f/xaf/xa4 UPPER CENTRE ONE QUARTER BLOCK +<U0001FBE5> /xf0/x9f/xaf/xa5 LOWER CENTRE ONE QUARTER BLOCK +<U0001FBE6> /xf0/x9f/xaf/xa6 MIDDLE LEFT ONE QUARTER BLOCK +<U0001FBE7> /xf0/x9f/xaf/xa7 MIDDLE RIGHT ONE QUARTER BLOCK +<U0001FBE8> /xf0/x9f/xaf/xa8 TOP JUSTIFIED LOWER HALF BLACK CIRCLE +<U0001FBE9> /xf0/x9f/xaf/xa9 RIGHT JUSTIFIED LEFT HALF BLACK CIRCLE +<U0001FBEA> /xf0/x9f/xaf/xaa BOTTOM JUSTIFIED UPPER HALF BLACK CIRCLE +<U0001FBEB> /xf0/x9f/xaf/xab LEFT JUSTIFIED RIGHT HALF BLACK CIRCLE +<U0001FBEC> /xf0/x9f/xaf/xac TOP RIGHT JUSTIFIED LOWER LEFT QUARTER BLACK CIRCLE +<U0001FBED> /xf0/x9f/xaf/xad BOTTOM LEFT JUSTIFIED UPPER RIGHT QUARTER BLACK CIRCLE +<U0001FBEE> /xf0/x9f/xaf/xae BOTTOM RIGHT JUSTIFIED UPPER LEFT QUARTER BLACK CIRCLE +<U0001FBEF> /xf0/x9f/xaf/xaf TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE <U0001FBF0> /xf0/x9f/xaf/xb0 SEGMENTED DIGIT ZERO <U0001FBF1> /xf0/x9f/xaf/xb1 SEGMENTED DIGIT ONE <U0001FBF2> /xf0/x9f/xaf/xb2 SEGMENTED DIGIT TWO @@ -49855,7 +55040,7 @@ CHARMAP <U0010FFC0>..<U0010FFFD> /xf4/x8f/xbf/x80 <Plane 16 Private Use> END CHARMAP -% Character width according to Unicode 15.1.0. +% Character width according to Unicode 16.0.0. % Width is determined by the following rules, in order of decreasing precedence: % - U+00AD SOFT HYPHEN has width 1, as a special case for compatibility (https://archive.is/b5Ck). % - U+115F HANGUL CHOSEONG FILLER has width 2. @@ -49903,7 +55088,7 @@ WIDTH <U0825>...<U0827> 0 <U0829>...<U082D> 0 <U0859>...<U085B> 0 -<U0898>...<U089F> 0 +<U0897>...<U089F> 0 <U08CA>...<U08E1> 0 <U08E3>...<U0902> 0 <U093A> 0 @@ -50057,8 +55242,10 @@ WIDTH <U23F3> 2 <U25FD>...<U25FE> 2 <U2614>...<U2615> 2 +<U2630>...<U2637> 2 <U2648>...<U2653> 2 <U267F> 2 +<U268A>...<U268F> 2 <U2693> 2 <U26A1> 2 <U26AA>...<U26AB> 2 @@ -50100,7 +55287,7 @@ WIDTH <U3131>...<U3163> 2 <U3164> 0 <U3165>...<U318E> 2 -<U3190>...<U31E3> 2 +<U3190>...<U31E5> 2 <U31EF>...<U321E> 2 <U3220>...<UA48C> 2 <UA490>...<UA4C6> 2 @@ -50166,8 +55353,9 @@ WIDTH <U00010A3F> 0 <U00010AE5>...<U00010AE6> 0 <U00010D24>...<U00010D27> 0 +<U00010D69>...<U00010D6D> 0 <U00010EAB>...<U00010EAC> 0 -<U00010EFD>...<U00010EFF> 0 +<U00010EFC>...<U00010EFF> 0 <U00010F46>...<U00010F50> 0 <U00010F82>...<U00010F85> 0 <U00011001> 0 @@ -50198,6 +55386,11 @@ WIDTH <U00011340> 0 <U00011366>...<U0001136C> 0 <U00011370>...<U00011374> 0 +<U000113BB>...<U000113C0> 0 +<U000113CE> 0 +<U000113D0> 0 +<U000113D2> 0 +<U000113E1>...<U000113E2> 0 <U00011438>...<U0001143F> 0 <U00011442>...<U00011444> 0 <U00011446> 0 @@ -50217,7 +55410,8 @@ WIDTH <U000116AD> 0 <U000116B0>...<U000116B5> 0 <U000116B7> 0 -<U0001171D>...<U0001171F> 0 +<U0001171D> 0 +<U0001171F> 0 <U00011722>...<U00011725> 0 <U00011727>...<U0001172B> 0 <U0001182F>...<U00011837> 0 @@ -50256,8 +55450,11 @@ WIDTH <U00011F36>...<U00011F3A> 0 <U00011F40> 0 <U00011F42> 0 +<U00011F5A> 0 <U00013440> 0 <U00013447>...<U00013455> 0 +<U0001611E>...<U00016129> 0 +<U0001612D>...<U0001612F> 0 <U00016AF0>...<U00016AF4> 0 <U00016B30>...<U00016B36> 0 <U00016F4F> 0 @@ -50267,7 +55464,7 @@ WIDTH <U00016FF0>...<U00016FF1> 2 <U00017000>...<U000187F7> 2 <U00018800>...<U00018CD5> 2 -<U00018D00>...<U00018D08> 2 +<U00018CFF>...<U00018D08> 2 <U0001AFF0>...<U0001AFF3> 2 <U0001AFF5>...<U0001AFFB> 2 <U0001AFFD>...<U0001AFFE> 2 @@ -50286,6 +55483,8 @@ WIDTH <U0001D185>...<U0001D18B> 0 <U0001D1AA>...<U0001D1AD> 0 <U0001D242>...<U0001D244> 0 +<U0001D300>...<U0001D356> 2 +<U0001D360>...<U0001D376> 2 <U0001DA00>...<U0001DA36> 0 <U0001DA3B>...<U0001DA6C> 0 <U0001DA75> 0 @@ -50302,6 +55501,7 @@ WIDTH <U0001E2AE> 0 <U0001E2EC>...<U0001E2EF> 0 <U0001E4EC>...<U0001E4EF> 0 +<U0001E5EE>...<U0001E5EF> 0 <U0001E8D0>...<U0001E8D6> 0 <U0001E944>...<U0001E94A> 0 <U0001F004> 2 @@ -50344,11 +55544,10 @@ WIDTH <U0001F93C>...<U0001F945> 2 <U0001F947>...<U0001F9FF> 2 <U0001FA70>...<U0001FA7C> 2 -<U0001FA80>...<U0001FA88> 2 -<U0001FA90>...<U0001FABD> 2 -<U0001FABF>...<U0001FAC5> 2 -<U0001FACE>...<U0001FADB> 2 -<U0001FAE0>...<U0001FAE8> 2 +<U0001FA80>...<U0001FA89> 2 +<U0001FA8F>...<U0001FAC6> 2 +<U0001FACE>...<U0001FADC> 2 +<U0001FADF>...<U0001FAE9> 2 <U0001FAF0>...<U0001FAF8> 2 <U00020000>...<U0002A6DF> 2 <U0002A700>...<U0002B739> 2 diff --git a/localedata/locales/i18n_ctype b/localedata/locales/i18n_ctype index f86855c6c6..048d6c7d2c 100644 --- a/localedata/locales/i18n_ctype +++ b/localedata/locales/i18n_ctype @@ -26,13 +26,13 @@ fax "" language "" territory "Earth" revision "14.0.0" -date "2023-09-15" +date "2024-09-12" category "i18n:2012";LC_CTYPE END LC_IDENTIFICATION LC_CTYPE % The following is the 14652 i18n fdcc-set LC_CTYPE category. -% It covers Unicode version 15.1.0. +% It covers Unicode version 16.0.0. % The character classes and mapping tables were automatically % generated using the gen_unicode_ctype.py program. @@ -74,21 +74,21 @@ upper / <U0508>;<U050A>;<U050C>;<U050E>;<U0510>;<U0512>;<U0514>;<U0516>;<U0518>;/ <U051A>;<U051C>;<U051E>;<U0520>;<U0522>;<U0524>;<U0526>;<U0528>;<U052A>;/ <U052C>;<U052E>;<U0531>..<U0556>;<U10A0>..<U10C5>;<U10C7>;<U10CD>;/ - <U13A0>..<U13F5>;<U1C90>..<U1CBA>;<U1CBD>..<U1CBF>;<U1E00>;<U1E02>;/ - <U1E04>;<U1E06>;<U1E08>;<U1E0A>;<U1E0C>;<U1E0E>;<U1E10>;<U1E12>;<U1E14>;/ - <U1E16>;<U1E18>;<U1E1A>;<U1E1C>;<U1E1E>;<U1E20>;<U1E22>;<U1E24>;<U1E26>;/ - <U1E28>;<U1E2A>;<U1E2C>;<U1E2E>;<U1E30>;<U1E32>;<U1E34>;<U1E36>;<U1E38>;/ - <U1E3A>;<U1E3C>;<U1E3E>;<U1E40>;<U1E42>;<U1E44>;<U1E46>;<U1E48>;<U1E4A>;/ - <U1E4C>;<U1E4E>;<U1E50>;<U1E52>;<U1E54>;<U1E56>;<U1E58>;<U1E5A>;<U1E5C>;/ - <U1E5E>;<U1E60>;<U1E62>;<U1E64>;<U1E66>;<U1E68>;<U1E6A>;<U1E6C>;<U1E6E>;/ - <U1E70>;<U1E72>;<U1E74>;<U1E76>;<U1E78>;<U1E7A>;<U1E7C>;<U1E7E>;<U1E80>;/ - <U1E82>;<U1E84>;<U1E86>;<U1E88>;<U1E8A>;<U1E8C>;<U1E8E>;<U1E90>;<U1E92>;/ - <U1E94>;<U1E9E>;<U1EA0>;<U1EA2>;<U1EA4>;<U1EA6>;<U1EA8>;<U1EAA>;<U1EAC>;/ - <U1EAE>;<U1EB0>;<U1EB2>;<U1EB4>;<U1EB6>;<U1EB8>;<U1EBA>;<U1EBC>;<U1EBE>;/ - <U1EC0>;<U1EC2>;<U1EC4>;<U1EC6>;<U1EC8>;<U1ECA>;<U1ECC>;<U1ECE>;<U1ED0>;/ - <U1ED2>;<U1ED4>;<U1ED6>;<U1ED8>;<U1EDA>;<U1EDC>;<U1EDE>;<U1EE0>;<U1EE2>;/ - <U1EE4>;<U1EE6>;<U1EE8>;<U1EEA>;<U1EEC>;<U1EEE>;<U1EF0>;<U1EF2>;<U1EF4>;/ - <U1EF6>;<U1EF8>;<U1EFA>;<U1EFC>;<U1EFE>;<U1F08>..<U1F0F>;/ + <U13A0>..<U13F5>;<U1C89>;<U1C90>..<U1CBA>;<U1CBD>..<U1CBF>;<U1E00>;/ + <U1E02>;<U1E04>;<U1E06>;<U1E08>;<U1E0A>;<U1E0C>;<U1E0E>;<U1E10>;<U1E12>;/ + <U1E14>;<U1E16>;<U1E18>;<U1E1A>;<U1E1C>;<U1E1E>;<U1E20>;<U1E22>;<U1E24>;/ + <U1E26>;<U1E28>;<U1E2A>;<U1E2C>;<U1E2E>;<U1E30>;<U1E32>;<U1E34>;<U1E36>;/ + <U1E38>;<U1E3A>;<U1E3C>;<U1E3E>;<U1E40>;<U1E42>;<U1E44>;<U1E46>;<U1E48>;/ + <U1E4A>;<U1E4C>;<U1E4E>;<U1E50>;<U1E52>;<U1E54>;<U1E56>;<U1E58>;<U1E5A>;/ + <U1E5C>;<U1E5E>;<U1E60>;<U1E62>;<U1E64>;<U1E66>;<U1E68>;<U1E6A>;<U1E6C>;/ + <U1E6E>;<U1E70>;<U1E72>;<U1E74>;<U1E76>;<U1E78>;<U1E7A>;<U1E7C>;<U1E7E>;/ + <U1E80>;<U1E82>;<U1E84>;<U1E86>;<U1E88>;<U1E8A>;<U1E8C>;<U1E8E>;<U1E90>;/ + <U1E92>;<U1E94>;<U1E9E>;<U1EA0>;<U1EA2>;<U1EA4>;<U1EA6>;<U1EA8>;<U1EAA>;/ + <U1EAC>;<U1EAE>;<U1EB0>;<U1EB2>;<U1EB4>;<U1EB6>;<U1EB8>;<U1EBA>;<U1EBC>;/ + <U1EBE>;<U1EC0>;<U1EC2>;<U1EC4>;<U1EC6>;<U1EC8>;<U1ECA>;<U1ECC>;<U1ECE>;/ + <U1ED0>;<U1ED2>;<U1ED4>;<U1ED6>;<U1ED8>;<U1EDA>;<U1EDC>;<U1EDE>;<U1EE0>;/ + <U1EE2>;<U1EE4>;<U1EE6>;<U1EE8>;<U1EEA>;<U1EEC>;<U1EEE>;<U1EF0>;<U1EF2>;/ + <U1EF4>;<U1EF6>;<U1EF8>;<U1EFA>;<U1EFC>;<U1EFE>;<U1F08>..<U1F0F>;/ <U1F18>..<U1F1D>;<U1F28>..<U1F2F>;<U1F38>..<U1F3F>;<U1F48>..<U1F4D>;/ <U1F59>;<U1F5B>;<U1F5D>;<U1F5F>;<U1F68>..<U1F6F>;<U1F88>..<U1F8F>;/ <U1F98>..<U1F9F>;<U1FA8>..<U1FAF>;<U1FB8>..<U1FBC>;<U1FC8>..<U1FCC>;/ @@ -115,11 +115,12 @@ upper / <UA780>;<UA782>;<UA784>;<UA786>;<UA78B>;<UA78D>;<UA790>;<UA792>;<UA796>;/ <UA798>;<UA79A>;<UA79C>;<UA79E>;<UA7A0>;<UA7A2>;<UA7A4>;<UA7A6>;<UA7A8>;/ <UA7AA>..<UA7AE>;<UA7B0>..<UA7B4>;<UA7B6>;<UA7B8>;<UA7BA>;<UA7BC>;/ - <UA7BE>;<UA7C0>;<UA7C2>;<UA7C4>..<UA7C7>;<UA7C9>;<UA7D0>;<UA7D6>;<UA7D8>;/ - <UA7F5>;<UFF21>..<UFF3A>;<U00010400>..<U00010427>;/ - <U000104B0>..<U000104D3>;<U00010570>..<U0001057A>;/ - <U0001057C>..<U0001058A>;<U0001058C>..<U00010592>;/ - <U00010594>..<U00010595>;<U00010C80>..<U00010CB2>;/ + <UA7BE>;<UA7C0>;<UA7C2>;<UA7C4>..<UA7C7>;<UA7C9>;<UA7CB>..<UA7CC>;/ + <UA7D0>;<UA7D6>;<UA7D8>;<UA7DA>;<UA7DC>;<UA7F5>;<UFF21>..<UFF3A>;/ + <U00010400>..<U00010427>;<U000104B0>..<U000104D3>;/ + <U00010570>..<U0001057A>;<U0001057C>..<U0001058A>;/ + <U0001058C>..<U00010592>;<U00010594>..<U00010595>;/ + <U00010C80>..<U00010CB2>;<U00010D50>..<U00010D65>;/ <U000118A0>..<U000118BF>;<U00016E40>..<U00016E5F>;/ <U0001D400>..<U0001D419>;<U0001D434>..<U0001D44D>;/ <U0001D468>..<U0001D481>;<U0001D49C>;<U0001D49E>..<U0001D49F>;/ @@ -176,57 +177,58 @@ lower / <U0507>;<U0509>;<U050B>;<U050D>;<U050F>;<U0511>;<U0513>;<U0515>;<U0517>;/ <U0519>;<U051B>;<U051D>;<U051F>;<U0521>;<U0523>;<U0525>;<U0527>;<U0529>;/ <U052B>;<U052D>;<U052F>;<U0560>..<U0588>;<U10D0>..<U10FA>;/ - <U10FC>..<U10FF>;<U13F8>..<U13FD>;<U1C80>..<U1C88>;<U1D00>..<U1DBF>;/ - <U1E01>;<U1E03>;<U1E05>;<U1E07>;<U1E09>;<U1E0B>;<U1E0D>;<U1E0F>;<U1E11>;/ - <U1E13>;<U1E15>;<U1E17>;<U1E19>;<U1E1B>;<U1E1D>;<U1E1F>;<U1E21>;<U1E23>;/ - <U1E25>;<U1E27>;<U1E29>;<U1E2B>;<U1E2D>;<U1E2F>;<U1E31>;<U1E33>;<U1E35>;/ - <U1E37>;<U1E39>;<U1E3B>;<U1E3D>;<U1E3F>;<U1E41>;<U1E43>;<U1E45>;<U1E47>;/ - <U1E49>;<U1E4B>;<U1E4D>;<U1E4F>;<U1E51>;<U1E53>;<U1E55>;<U1E57>;<U1E59>;/ - <U1E5B>;<U1E5D>;<U1E5F>;<U1E61>;<U1E63>;<U1E65>;<U1E67>;<U1E69>;<U1E6B>;/ - <U1E6D>;<U1E6F>;<U1E71>;<U1E73>;<U1E75>;<U1E77>;<U1E79>;<U1E7B>;<U1E7D>;/ - <U1E7F>;<U1E81>;<U1E83>;<U1E85>;<U1E87>;<U1E89>;<U1E8B>;<U1E8D>;<U1E8F>;/ - <U1E91>;<U1E93>;<U1E95>..<U1E9D>;<U1E9F>;<U1EA1>;<U1EA3>;<U1EA5>;<U1EA7>;/ - <U1EA9>;<U1EAB>;<U1EAD>;<U1EAF>;<U1EB1>;<U1EB3>;<U1EB5>;<U1EB7>;<U1EB9>;/ - <U1EBB>;<U1EBD>;<U1EBF>;<U1EC1>;<U1EC3>;<U1EC5>;<U1EC7>;<U1EC9>;<U1ECB>;/ - <U1ECD>;<U1ECF>;<U1ED1>;<U1ED3>;<U1ED5>;<U1ED7>;<U1ED9>;<U1EDB>;<U1EDD>;/ - <U1EDF>;<U1EE1>;<U1EE3>;<U1EE5>;<U1EE7>;<U1EE9>;<U1EEB>;<U1EED>;<U1EEF>;/ - <U1EF1>;<U1EF3>;<U1EF5>;<U1EF7>;<U1EF9>;<U1EFB>;<U1EFD>;<U1EFF>..<U1F07>;/ - <U1F10>..<U1F15>;<U1F20>..<U1F27>;<U1F30>..<U1F37>;<U1F40>..<U1F45>;/ - <U1F50>..<U1F57>;<U1F60>..<U1F67>;<U1F70>..<U1F7D>;<U1F80>..<U1F87>;/ - <U1F90>..<U1F97>;<U1FA0>..<U1FA7>;<U1FB0>..<U1FB4>;<U1FB6>..<U1FB7>;/ - <U1FBE>;<U1FC2>..<U1FC4>;<U1FC6>..<U1FC7>;<U1FD0>..<U1FD3>;/ - <U1FD6>..<U1FD7>;<U1FE0>..<U1FE7>;<U1FF2>..<U1FF4>;<U1FF6>..<U1FF7>;/ - <U2071>;<U207F>;<U2090>..<U209C>;<U210A>;<U210E>..<U210F>;<U2113>;/ - <U212F>;<U2134>;<U2139>;<U213C>..<U213D>;<U2146>..<U2149>;<U214E>;/ - <U2170>..<U217F>;<U2184>;<U24D0>..<U24E9>;<U2C30>..<U2C5F>;<U2C61>;/ - <U2C65>..<U2C66>;<U2C68>;<U2C6A>;<U2C6C>;<U2C71>;<U2C73>..<U2C74>;/ - <U2C76>..<U2C7D>;<U2C81>;<U2C83>;<U2C85>;<U2C87>;<U2C89>;<U2C8B>;<U2C8D>;/ - <U2C8F>;<U2C91>;<U2C93>;<U2C95>;<U2C97>;<U2C99>;<U2C9B>;<U2C9D>;<U2C9F>;/ - <U2CA1>;<U2CA3>;<U2CA5>;<U2CA7>;<U2CA9>;<U2CAB>;<U2CAD>;<U2CAF>;<U2CB1>;/ - <U2CB3>;<U2CB5>;<U2CB7>;<U2CB9>;<U2CBB>;<U2CBD>;<U2CBF>;<U2CC1>;<U2CC3>;/ - <U2CC5>;<U2CC7>;<U2CC9>;<U2CCB>;<U2CCD>;<U2CCF>;<U2CD1>;<U2CD3>;<U2CD5>;/ - <U2CD7>;<U2CD9>;<U2CDB>;<U2CDD>;<U2CDF>;<U2CE1>;<U2CE3>..<U2CE4>;<U2CEC>;/ - <U2CEE>;<U2CF3>;<U2D00>..<U2D25>;<U2D27>;<U2D2D>;<UA641>;<UA643>;<UA645>;/ - <UA647>;<UA649>;<UA64B>;<UA64D>;<UA64F>;<UA651>;<UA653>;<UA655>;<UA657>;/ - <UA659>;<UA65B>;<UA65D>;<UA65F>;<UA661>;<UA663>;<UA665>;<UA667>;<UA669>;/ - <UA66B>;<UA66D>;<UA681>;<UA683>;<UA685>;<UA687>;<UA689>;<UA68B>;<UA68D>;/ - <UA68F>;<UA691>;<UA693>;<UA695>;<UA697>;<UA699>;<UA69B>..<UA69D>;<UA723>;/ - <UA725>;<UA727>;<UA729>;<UA72B>;<UA72D>;<UA72F>..<UA731>;<UA733>;<UA735>;/ - <UA737>;<UA739>;<UA73B>;<UA73D>;<UA73F>;<UA741>;<UA743>;<UA745>;<UA747>;/ - <UA749>;<UA74B>;<UA74D>;<UA74F>;<UA751>;<UA753>;<UA755>;<UA757>;<UA759>;/ - <UA75B>;<UA75D>;<UA75F>;<UA761>;<UA763>;<UA765>;<UA767>;<UA769>;<UA76B>;/ - <UA76D>;<UA76F>..<UA778>;<UA77A>;<UA77C>;<UA77F>;<UA781>;<UA783>;<UA785>;/ - <UA787>;<UA78C>;<UA78E>;<UA791>;<UA793>..<UA795>;<UA797>;<UA799>;<UA79B>;/ - <UA79D>;<UA79F>;<UA7A1>;<UA7A3>;<UA7A5>;<UA7A7>;<UA7A9>;<UA7AF>;<UA7B5>;/ - <UA7B7>;<UA7B9>;<UA7BB>;<UA7BD>;<UA7BF>;<UA7C1>;<UA7C3>;<UA7C8>;<UA7CA>;/ - <UA7D1>;<UA7D3>;<UA7D5>;<UA7D7>;<UA7D9>;<UA7F2>..<UA7F4>;<UA7F6>;/ - <UA7F8>..<UA7FA>;<UAB30>..<UAB5A>;<UAB5C>..<UAB69>;<UAB70>..<UABBF>;/ - <UFB00>..<UFB06>;<UFB13>..<UFB17>;<UFF41>..<UFF5A>;/ - <U00010428>..<U0001044F>;<U000104D8>..<U000104FB>;/ - <U00010597>..<U000105A1>;<U000105A3>..<U000105B1>;/ - <U000105B3>..<U000105B9>;<U000105BB>..<U000105BC>;<U00010780>;/ - <U00010783>..<U00010785>;<U00010787>..<U000107B0>;/ - <U000107B2>..<U000107BA>;<U00010CC0>..<U00010CF2>;/ + <U10FC>..<U10FF>;<U13F8>..<U13FD>;<U1C80>..<U1C88>;<U1C8A>;/ + <U1D00>..<U1DBF>;<U1E01>;<U1E03>;<U1E05>;<U1E07>;<U1E09>;<U1E0B>;<U1E0D>;/ + <U1E0F>;<U1E11>;<U1E13>;<U1E15>;<U1E17>;<U1E19>;<U1E1B>;<U1E1D>;<U1E1F>;/ + <U1E21>;<U1E23>;<U1E25>;<U1E27>;<U1E29>;<U1E2B>;<U1E2D>;<U1E2F>;<U1E31>;/ + <U1E33>;<U1E35>;<U1E37>;<U1E39>;<U1E3B>;<U1E3D>;<U1E3F>;<U1E41>;<U1E43>;/ + <U1E45>;<U1E47>;<U1E49>;<U1E4B>;<U1E4D>;<U1E4F>;<U1E51>;<U1E53>;<U1E55>;/ + <U1E57>;<U1E59>;<U1E5B>;<U1E5D>;<U1E5F>;<U1E61>;<U1E63>;<U1E65>;<U1E67>;/ + <U1E69>;<U1E6B>;<U1E6D>;<U1E6F>;<U1E71>;<U1E73>;<U1E75>;<U1E77>;<U1E79>;/ + <U1E7B>;<U1E7D>;<U1E7F>;<U1E81>;<U1E83>;<U1E85>;<U1E87>;<U1E89>;<U1E8B>;/ + <U1E8D>;<U1E8F>;<U1E91>;<U1E93>;<U1E95>..<U1E9D>;<U1E9F>;<U1EA1>;<U1EA3>;/ + <U1EA5>;<U1EA7>;<U1EA9>;<U1EAB>;<U1EAD>;<U1EAF>;<U1EB1>;<U1EB3>;<U1EB5>;/ + <U1EB7>;<U1EB9>;<U1EBB>;<U1EBD>;<U1EBF>;<U1EC1>;<U1EC3>;<U1EC5>;<U1EC7>;/ + <U1EC9>;<U1ECB>;<U1ECD>;<U1ECF>;<U1ED1>;<U1ED3>;<U1ED5>;<U1ED7>;<U1ED9>;/ + <U1EDB>;<U1EDD>;<U1EDF>;<U1EE1>;<U1EE3>;<U1EE5>;<U1EE7>;<U1EE9>;<U1EEB>;/ + <U1EED>;<U1EEF>;<U1EF1>;<U1EF3>;<U1EF5>;<U1EF7>;<U1EF9>;<U1EFB>;<U1EFD>;/ + <U1EFF>..<U1F07>;<U1F10>..<U1F15>;<U1F20>..<U1F27>;<U1F30>..<U1F37>;/ + <U1F40>..<U1F45>;<U1F50>..<U1F57>;<U1F60>..<U1F67>;<U1F70>..<U1F7D>;/ + <U1F80>..<U1F87>;<U1F90>..<U1F97>;<U1FA0>..<U1FA7>;<U1FB0>..<U1FB4>;/ + <U1FB6>..<U1FB7>;<U1FBE>;<U1FC2>..<U1FC4>;<U1FC6>..<U1FC7>;/ + <U1FD0>..<U1FD3>;<U1FD6>..<U1FD7>;<U1FE0>..<U1FE7>;<U1FF2>..<U1FF4>;/ + <U1FF6>..<U1FF7>;<U2071>;<U207F>;<U2090>..<U209C>;<U210A>;/ + <U210E>..<U210F>;<U2113>;<U212F>;<U2134>;<U2139>;<U213C>..<U213D>;/ + <U2146>..<U2149>;<U214E>;<U2170>..<U217F>;<U2184>;<U24D0>..<U24E9>;/ + <U2C30>..<U2C5F>;<U2C61>;<U2C65>..<U2C66>;<U2C68>;<U2C6A>;<U2C6C>;/ + <U2C71>;<U2C73>..<U2C74>;<U2C76>..<U2C7D>;<U2C81>;<U2C83>;<U2C85>;/ + <U2C87>;<U2C89>;<U2C8B>;<U2C8D>;<U2C8F>;<U2C91>;<U2C93>;<U2C95>;<U2C97>;/ + <U2C99>;<U2C9B>;<U2C9D>;<U2C9F>;<U2CA1>;<U2CA3>;<U2CA5>;<U2CA7>;<U2CA9>;/ + <U2CAB>;<U2CAD>;<U2CAF>;<U2CB1>;<U2CB3>;<U2CB5>;<U2CB7>;<U2CB9>;<U2CBB>;/ + <U2CBD>;<U2CBF>;<U2CC1>;<U2CC3>;<U2CC5>;<U2CC7>;<U2CC9>;<U2CCB>;<U2CCD>;/ + <U2CCF>;<U2CD1>;<U2CD3>;<U2CD5>;<U2CD7>;<U2CD9>;<U2CDB>;<U2CDD>;<U2CDF>;/ + <U2CE1>;<U2CE3>..<U2CE4>;<U2CEC>;<U2CEE>;<U2CF3>;<U2D00>..<U2D25>;/ + <U2D27>;<U2D2D>;<UA641>;<UA643>;<UA645>;<UA647>;<UA649>;<UA64B>;<UA64D>;/ + <UA64F>;<UA651>;<UA653>;<UA655>;<UA657>;<UA659>;<UA65B>;<UA65D>;<UA65F>;/ + <UA661>;<UA663>;<UA665>;<UA667>;<UA669>;<UA66B>;<UA66D>;<UA681>;<UA683>;/ + <UA685>;<UA687>;<UA689>;<UA68B>;<UA68D>;<UA68F>;<UA691>;<UA693>;<UA695>;/ + <UA697>;<UA699>;<UA69B>..<UA69D>;<UA723>;<UA725>;<UA727>;<UA729>;<UA72B>;/ + <UA72D>;<UA72F>..<UA731>;<UA733>;<UA735>;<UA737>;<UA739>;<UA73B>;<UA73D>;/ + <UA73F>;<UA741>;<UA743>;<UA745>;<UA747>;<UA749>;<UA74B>;<UA74D>;<UA74F>;/ + <UA751>;<UA753>;<UA755>;<UA757>;<UA759>;<UA75B>;<UA75D>;<UA75F>;<UA761>;/ + <UA763>;<UA765>;<UA767>;<UA769>;<UA76B>;<UA76D>;<UA76F>..<UA778>;<UA77A>;/ + <UA77C>;<UA77F>;<UA781>;<UA783>;<UA785>;<UA787>;<UA78C>;<UA78E>;<UA791>;/ + <UA793>..<UA795>;<UA797>;<UA799>;<UA79B>;<UA79D>;<UA79F>;<UA7A1>;<UA7A3>;/ + <UA7A5>;<UA7A7>;<UA7A9>;<UA7AF>;<UA7B5>;<UA7B7>;<UA7B9>;<UA7BB>;<UA7BD>;/ + <UA7BF>;<UA7C1>;<UA7C3>;<UA7C8>;<UA7CA>;<UA7CD>;<UA7D1>;<UA7D3>;<UA7D5>;/ + <UA7D7>;<UA7D9>;<UA7DB>;<UA7F2>..<UA7F4>;<UA7F6>;<UA7F8>..<UA7FA>;/ + <UAB30>..<UAB5A>;<UAB5C>..<UAB69>;<UAB70>..<UABBF>;<UFB00>..<UFB06>;/ + <UFB13>..<UFB17>;<UFF41>..<UFF5A>;<U00010428>..<U0001044F>;/ + <U000104D8>..<U000104FB>;<U00010597>..<U000105A1>;/ + <U000105A3>..<U000105B1>;<U000105B3>..<U000105B9>;/ + <U000105BB>..<U000105BC>;<U00010780>;<U00010783>..<U00010785>;/ + <U00010787>..<U000107B0>;<U000107B2>..<U000107BA>;/ + <U00010CC0>..<U00010CF2>;<U00010D70>..<U00010D85>;/ <U000118C0>..<U000118DF>;<U00016E60>..<U00016E7F>;/ <U0001D41A>..<U0001D433>;<U0001D44E>..<U0001D454>;/ <U0001D456>..<U0001D467>;<U0001D482>..<U0001D49B>;/ @@ -250,7 +252,7 @@ lower / alpha / <U0041>..<U005A>;<U0061>..<U007A>;<U00AA>;<U00B5>;<U00BA>;/ <U00C0>..<U00D6>;<U00D8>..<U00F6>;<U00F8>..<U02C1>;<U02C6>..<U02D1>;/ - <U02E0>..<U02E4>;<U02EC>;<U02EE>;<U0345>;<U0370>..<U0374>;/ + <U02E0>..<U02E4>;<U02EC>;<U02EE>;<U0345>;<U0363>..<U0374>;/ <U0376>..<U0377>;<U037A>..<U037D>;<U037F>;<U0386>;<U0388>..<U038A>;/ <U038C>;<U038E>..<U03A1>;<U03A3>..<U03F5>;<U03F7>..<U0481>;/ <U048A>..<U052F>;<U0531>..<U0556>;<U0559>;<U0560>..<U0588>;/ @@ -260,16 +262,16 @@ alpha / <U06ED>..<U06FC>;<U06FF>;<U0710>..<U073F>;<U074D>..<U07B1>;/ <U07C0>..<U07EA>;<U07F4>..<U07F5>;<U07FA>;<U0800>..<U0817>;/ <U081A>..<U082C>;<U0840>..<U0858>;<U0860>..<U086A>;<U0870>..<U0887>;/ - <U0889>..<U088E>;<U08A0>..<U08C9>;<U08D4>..<U08DF>;<U08E3>..<U08E9>;/ - <U08F0>..<U093B>;<U093D>..<U094C>;<U094E>..<U0950>;<U0955>..<U0963>;/ - <U0966>..<U096F>;<U0971>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;/ - <U0993>..<U09A8>;<U09AA>..<U09B0>;<U09B2>;<U09B6>..<U09B9>;/ - <U09BD>..<U09C4>;<U09C7>..<U09C8>;<U09CB>..<U09CC>;<U09CE>;<U09D7>;/ - <U09DC>..<U09DD>;<U09DF>..<U09E3>;<U09E6>..<U09F1>;<U09FC>;/ - <U0A01>..<U0A03>;<U0A05>..<U0A0A>;<U0A0F>..<U0A10>;<U0A13>..<U0A28>;/ - <U0A2A>..<U0A30>;<U0A32>..<U0A33>;<U0A35>..<U0A36>;<U0A38>..<U0A39>;/ - <U0A3E>..<U0A42>;<U0A47>..<U0A48>;<U0A4B>..<U0A4C>;<U0A51>;/ - <U0A59>..<U0A5C>;<U0A5E>;<U0A66>..<U0A75>;<U0A81>..<U0A83>;/ + <U0889>..<U088E>;<U0897>;<U08A0>..<U08C9>;<U08D4>..<U08DF>;/ + <U08E3>..<U08E9>;<U08F0>..<U093B>;<U093D>..<U094C>;<U094E>..<U0950>;/ + <U0955>..<U0963>;<U0966>..<U096F>;<U0971>..<U0983>;<U0985>..<U098C>;/ + <U098F>..<U0990>;<U0993>..<U09A8>;<U09AA>..<U09B0>;<U09B2>;/ + <U09B6>..<U09B9>;<U09BD>..<U09C4>;<U09C7>..<U09C8>;<U09CB>..<U09CC>;/ + <U09CE>;<U09D7>;<U09DC>..<U09DD>;<U09DF>..<U09E3>;<U09E6>..<U09F1>;/ + <U09FC>;<U0A01>..<U0A03>;<U0A05>..<U0A0A>;<U0A0F>..<U0A10>;/ + <U0A13>..<U0A28>;<U0A2A>..<U0A30>;<U0A32>..<U0A33>;<U0A35>..<U0A36>;/ + <U0A38>..<U0A39>;<U0A3E>..<U0A42>;<U0A47>..<U0A48>;<U0A4B>..<U0A4C>;/ + <U0A51>;<U0A59>..<U0A5C>;<U0A5E>;<U0A66>..<U0A75>;<U0A81>..<U0A83>;/ <U0A85>..<U0A8D>;<U0A8F>..<U0A91>;<U0A93>..<U0AA8>;<U0AAA>..<U0AB0>;/ <U0AB2>..<U0AB3>;<U0AB5>..<U0AB9>;<U0ABD>..<U0AC5>;<U0AC7>..<U0AC9>;/ <U0ACB>..<U0ACC>;<U0AD0>;<U0AE0>..<U0AE3>;<U0AE6>..<U0AEF>;/ @@ -315,9 +317,9 @@ alpha / <U1A90>..<U1A99>;<U1AA7>;<U1ABF>..<U1AC0>;<U1ACC>..<U1ACE>;/ <U1B00>..<U1B33>;<U1B35>..<U1B43>;<U1B45>..<U1B4C>;<U1B50>..<U1B59>;/ <U1B80>..<U1BA9>;<U1BAC>..<U1BE5>;<U1BE7>..<U1BF1>;<U1C00>..<U1C36>;/ - <U1C40>..<U1C49>;<U1C4D>..<U1C7D>;<U1C80>..<U1C88>;<U1C90>..<U1CBA>;/ + <U1C40>..<U1C49>;<U1C4D>..<U1C7D>;<U1C80>..<U1C8A>;<U1C90>..<U1CBA>;/ <U1CBD>..<U1CBF>;<U1CE9>..<U1CEC>;<U1CEE>..<U1CF3>;<U1CF5>..<U1CF6>;/ - <U1CFA>;<U1D00>..<U1DBF>;<U1DE7>..<U1DF4>;<U1E00>..<U1F15>;/ + <U1CFA>;<U1D00>..<U1DBF>;<U1DD3>..<U1DF4>;<U1E00>..<U1F15>;/ <U1F18>..<U1F1D>;<U1F20>..<U1F45>;<U1F48>..<U1F4D>;<U1F50>..<U1F57>;/ <U1F59>;<U1F5B>;<U1F5D>;<U1F5F>..<U1F7D>;<U1F80>..<U1FB4>;/ <U1FB6>..<U1FBC>;<U1FBE>;<U1FC2>..<U1FC4>;<U1FC6>..<U1FCC>;/ @@ -335,8 +337,8 @@ alpha / <U30FC>..<U30FF>;<U3105>..<U312F>;<U3131>..<U318E>;<U31A0>..<U31BF>;/ <U31F0>..<U31FF>;<U3400>..<U4DBF>;<U4E00>..<UA48C>;<UA4D0>..<UA4FD>;/ <UA500>..<UA60C>;<UA610>..<UA62B>;<UA640>..<UA66E>;<UA674>..<UA67B>;/ - <UA67F>..<UA6EF>;<UA717>..<UA71F>;<UA722>..<UA788>;<UA78B>..<UA7CA>;/ - <UA7D0>..<UA7D1>;<UA7D3>;<UA7D5>..<UA7D9>;<UA7F2>..<UA805>;/ + <UA67F>..<UA6EF>;<UA717>..<UA71F>;<UA722>..<UA788>;<UA78B>..<UA7CD>;/ + <UA7D0>..<UA7D1>;<UA7D3>;<UA7D5>..<UA7DC>;<UA7F2>..<UA805>;/ <UA807>..<UA827>;<UA840>..<UA873>;<UA880>..<UA8C3>;<UA8C5>;/ <UA8D0>..<UA8D9>;<UA8F2>..<UA8F7>;<UA8FB>;<UA8FD>..<UA92A>;/ <UA930>..<UA952>;<UA960>..<UA97C>;<UA980>..<UA9B2>;<UA9B4>..<UA9BF>;/ @@ -367,26 +369,28 @@ alpha / <U0001057C>..<U0001058A>;<U0001058C>..<U00010592>;/ <U00010594>..<U00010595>;<U00010597>..<U000105A1>;/ <U000105A3>..<U000105B1>;<U000105B3>..<U000105B9>;/ - <U000105BB>..<U000105BC>;<U00010600>..<U00010736>;/ - <U00010740>..<U00010755>;<U00010760>..<U00010767>;/ - <U00010780>..<U00010785>;<U00010787>..<U000107B0>;/ - <U000107B2>..<U000107BA>;<U00010800>..<U00010805>;<U00010808>;/ - <U0001080A>..<U00010835>;<U00010837>..<U00010838>;<U0001083C>;/ - <U0001083F>..<U00010855>;<U00010860>..<U00010876>;/ - <U00010880>..<U0001089E>;<U000108E0>..<U000108F2>;/ - <U000108F4>..<U000108F5>;<U00010900>..<U00010915>;/ - <U00010920>..<U00010939>;<U00010980>..<U000109B7>;/ - <U000109BE>..<U000109BF>;<U00010A00>..<U00010A03>;/ - <U00010A05>..<U00010A06>;<U00010A0C>..<U00010A13>;/ - <U00010A15>..<U00010A17>;<U00010A19>..<U00010A35>;/ - <U00010A60>..<U00010A7C>;<U00010A80>..<U00010A9C>;/ - <U00010AC0>..<U00010AC7>;<U00010AC9>..<U00010AE4>;/ - <U00010B00>..<U00010B35>;<U00010B40>..<U00010B55>;/ - <U00010B60>..<U00010B72>;<U00010B80>..<U00010B91>;/ - <U00010C00>..<U00010C48>;<U00010C80>..<U00010CB2>;/ - <U00010CC0>..<U00010CF2>;<U00010D00>..<U00010D27>;/ - <U00010D30>..<U00010D39>;<U00010E80>..<U00010EA9>;/ - <U00010EAB>..<U00010EAC>;<U00010EB0>..<U00010EB1>;/ + <U000105BB>..<U000105BC>;<U000105C0>..<U000105F3>;/ + <U00010600>..<U00010736>;<U00010740>..<U00010755>;/ + <U00010760>..<U00010767>;<U00010780>..<U00010785>;/ + <U00010787>..<U000107B0>;<U000107B2>..<U000107BA>;/ + <U00010800>..<U00010805>;<U00010808>;<U0001080A>..<U00010835>;/ + <U00010837>..<U00010838>;<U0001083C>;<U0001083F>..<U00010855>;/ + <U00010860>..<U00010876>;<U00010880>..<U0001089E>;/ + <U000108E0>..<U000108F2>;<U000108F4>..<U000108F5>;/ + <U00010900>..<U00010915>;<U00010920>..<U00010939>;/ + <U00010980>..<U000109B7>;<U000109BE>..<U000109BF>;/ + <U00010A00>..<U00010A03>;<U00010A05>..<U00010A06>;/ + <U00010A0C>..<U00010A13>;<U00010A15>..<U00010A17>;/ + <U00010A19>..<U00010A35>;<U00010A60>..<U00010A7C>;/ + <U00010A80>..<U00010A9C>;<U00010AC0>..<U00010AC7>;/ + <U00010AC9>..<U00010AE4>;<U00010B00>..<U00010B35>;/ + <U00010B40>..<U00010B55>;<U00010B60>..<U00010B72>;/ + <U00010B80>..<U00010B91>;<U00010C00>..<U00010C48>;/ + <U00010C80>..<U00010CB2>;<U00010CC0>..<U00010CF2>;/ + <U00010D00>..<U00010D27>;<U00010D30>..<U00010D39>;/ + <U00010D40>..<U00010D65>;<U00010D69>;<U00010D6F>..<U00010D85>;/ + <U00010E80>..<U00010EA9>;<U00010EAB>..<U00010EAC>;/ + <U00010EB0>..<U00010EB1>;<U00010EC2>..<U00010EC4>;<U00010EFC>;/ <U00010F00>..<U00010F1C>;<U00010F27>;<U00010F30>..<U00010F45>;/ <U00010F70>..<U00010F81>;<U00010FB0>..<U00010FC4>;/ <U00010FE0>..<U00010FF6>;<U00011000>..<U00011045>;/ @@ -406,83 +410,92 @@ alpha / <U00011332>..<U00011333>;<U00011335>..<U00011339>;/ <U0001133D>..<U00011344>;<U00011347>..<U00011348>;/ <U0001134B>..<U0001134C>;<U00011350>;<U00011357>;/ - <U0001135D>..<U00011363>;<U00011400>..<U00011441>;/ - <U00011443>..<U00011445>;<U00011447>..<U0001144A>;/ - <U00011450>..<U00011459>;<U0001145F>..<U00011461>;/ - <U00011480>..<U000114C1>;<U000114C4>..<U000114C5>;<U000114C7>;/ - <U000114D0>..<U000114D9>;<U00011580>..<U000115B5>;/ - <U000115B8>..<U000115BE>;<U000115D8>..<U000115DD>;/ - <U00011600>..<U0001163E>;<U00011640>;<U00011644>;/ - <U00011650>..<U00011659>;<U00011680>..<U000116B5>;<U000116B8>;/ - <U000116C0>..<U000116C9>;<U00011700>..<U0001171A>;/ - <U0001171D>..<U0001172A>;<U00011730>..<U00011739>;/ - <U00011740>..<U00011746>;<U00011800>..<U00011838>;/ - <U000118A0>..<U000118E9>;<U000118FF>..<U00011906>;<U00011909>;/ - <U0001190C>..<U00011913>;<U00011915>..<U00011916>;/ - <U00011918>..<U00011935>;<U00011937>..<U00011938>;/ - <U0001193B>..<U0001193C>;<U0001193F>..<U00011942>;/ - <U00011950>..<U00011959>;<U000119A0>..<U000119A7>;/ - <U000119AA>..<U000119D7>;<U000119DA>..<U000119DF>;<U000119E1>;/ - <U000119E3>..<U000119E4>;<U00011A00>..<U00011A32>;/ - <U00011A35>..<U00011A3E>;<U00011A50>..<U00011A97>;<U00011A9D>;/ - <U00011AB0>..<U00011AF8>;<U00011C00>..<U00011C08>;/ - <U00011C0A>..<U00011C36>;<U00011C38>..<U00011C3E>;<U00011C40>;/ - <U00011C50>..<U00011C59>;<U00011C72>..<U00011C8F>;/ - <U00011C92>..<U00011CA7>;<U00011CA9>..<U00011CB6>;/ - <U00011D00>..<U00011D06>;<U00011D08>..<U00011D09>;/ - <U00011D0B>..<U00011D36>;<U00011D3A>;<U00011D3C>..<U00011D3D>;/ - <U00011D3F>..<U00011D41>;<U00011D43>;<U00011D46>..<U00011D47>;/ - <U00011D50>..<U00011D59>;<U00011D60>..<U00011D65>;/ - <U00011D67>..<U00011D68>;<U00011D6A>..<U00011D8E>;/ - <U00011D90>..<U00011D91>;<U00011D93>..<U00011D96>;<U00011D98>;/ - <U00011DA0>..<U00011DA9>;<U00011EE0>..<U00011EF6>;/ - <U00011F00>..<U00011F10>;<U00011F12>..<U00011F3A>;/ - <U00011F3E>..<U00011F40>;<U00011F50>..<U00011F59>;<U00011FB0>;/ - <U00012000>..<U00012399>;<U00012400>..<U0001246E>;/ - <U00012480>..<U00012543>;<U00012F90>..<U00012FF0>;/ - <U00013000>..<U0001342F>;<U00013441>..<U00013446>;/ - <U00014400>..<U00014646>;<U00016800>..<U00016A38>;/ + <U0001135D>..<U00011363>;<U00011380>..<U00011389>;<U0001138B>;/ + <U0001138E>;<U00011390>..<U000113B5>;<U000113B7>..<U000113C0>;/ + <U000113C2>;<U000113C5>;<U000113C7>..<U000113CA>;/ + <U000113CC>..<U000113CD>;<U000113D1>;<U000113D3>;/ + <U00011400>..<U00011441>;<U00011443>..<U00011445>;/ + <U00011447>..<U0001144A>;<U00011450>..<U00011459>;/ + <U0001145F>..<U00011461>;<U00011480>..<U000114C1>;/ + <U000114C4>..<U000114C5>;<U000114C7>;<U000114D0>..<U000114D9>;/ + <U00011580>..<U000115B5>;<U000115B8>..<U000115BE>;/ + <U000115D8>..<U000115DD>;<U00011600>..<U0001163E>;<U00011640>;/ + <U00011644>;<U00011650>..<U00011659>;<U00011680>..<U000116B5>;/ + <U000116B8>;<U000116C0>..<U000116C9>;<U000116D0>..<U000116E3>;/ + <U00011700>..<U0001171A>;<U0001171D>..<U0001172A>;/ + <U00011730>..<U00011739>;<U00011740>..<U00011746>;/ + <U00011800>..<U00011838>;<U000118A0>..<U000118E9>;/ + <U000118FF>..<U00011906>;<U00011909>;<U0001190C>..<U00011913>;/ + <U00011915>..<U00011916>;<U00011918>..<U00011935>;/ + <U00011937>..<U00011938>;<U0001193B>..<U0001193C>;/ + <U0001193F>..<U00011942>;<U00011950>..<U00011959>;/ + <U000119A0>..<U000119A7>;<U000119AA>..<U000119D7>;/ + <U000119DA>..<U000119DF>;<U000119E1>;<U000119E3>..<U000119E4>;/ + <U00011A00>..<U00011A32>;<U00011A35>..<U00011A3E>;/ + <U00011A50>..<U00011A97>;<U00011A9D>;<U00011AB0>..<U00011AF8>;/ + <U00011BC0>..<U00011BE0>;<U00011BF0>..<U00011BF9>;/ + <U00011C00>..<U00011C08>;<U00011C0A>..<U00011C36>;/ + <U00011C38>..<U00011C3E>;<U00011C40>;<U00011C50>..<U00011C59>;/ + <U00011C72>..<U00011C8F>;<U00011C92>..<U00011CA7>;/ + <U00011CA9>..<U00011CB6>;<U00011D00>..<U00011D06>;/ + <U00011D08>..<U00011D09>;<U00011D0B>..<U00011D36>;<U00011D3A>;/ + <U00011D3C>..<U00011D3D>;<U00011D3F>..<U00011D41>;<U00011D43>;/ + <U00011D46>..<U00011D47>;<U00011D50>..<U00011D59>;/ + <U00011D60>..<U00011D65>;<U00011D67>..<U00011D68>;/ + <U00011D6A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ + <U00011D93>..<U00011D96>;<U00011D98>;<U00011DA0>..<U00011DA9>;/ + <U00011EE0>..<U00011EF6>;<U00011F00>..<U00011F10>;/ + <U00011F12>..<U00011F3A>;<U00011F3E>..<U00011F40>;/ + <U00011F50>..<U00011F59>;<U00011FB0>;<U00012000>..<U00012399>;/ + <U00012400>..<U0001246E>;<U00012480>..<U00012543>;/ + <U00012F90>..<U00012FF0>;<U00013000>..<U0001342F>;/ + <U00013441>..<U00013446>;<U00013460>..<U000143FA>;/ + <U00014400>..<U00014646>;<U00016100>..<U0001612E>;/ + <U00016130>..<U00016139>;<U00016800>..<U00016A38>;/ <U00016A40>..<U00016A5E>;<U00016A60>..<U00016A69>;/ <U00016A70>..<U00016ABE>;<U00016AC0>..<U00016AC9>;/ <U00016AD0>..<U00016AED>;<U00016B00>..<U00016B2F>;/ <U00016B40>..<U00016B43>;<U00016B50>..<U00016B59>;/ <U00016B63>..<U00016B77>;<U00016B7D>..<U00016B8F>;/ + <U00016D40>..<U00016D6C>;<U00016D70>..<U00016D79>;/ <U00016E40>..<U00016E7F>;<U00016F00>..<U00016F4A>;/ <U00016F4F>..<U00016F87>;<U00016F8F>..<U00016F9F>;/ <U00016FE0>..<U00016FE1>;<U00016FE3>;<U00016FF0>..<U00016FF1>;/ <U00017000>..<U000187F7>;<U00018800>..<U00018CD5>;/ - <U00018D00>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ + <U00018CFF>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ <U0001AFF5>..<U0001AFFB>;<U0001AFFD>..<U0001AFFE>;/ <U0001B000>..<U0001B122>;<U0001B132>;<U0001B150>..<U0001B152>;/ <U0001B155>;<U0001B164>..<U0001B167>;<U0001B170>..<U0001B2FB>;/ <U0001BC00>..<U0001BC6A>;<U0001BC70>..<U0001BC7C>;/ <U0001BC80>..<U0001BC88>;<U0001BC90>..<U0001BC99>;<U0001BC9E>;/ - <U0001D400>..<U0001D454>;<U0001D456>..<U0001D49C>;/ - <U0001D49E>..<U0001D49F>;<U0001D4A2>;<U0001D4A5>..<U0001D4A6>;/ - <U0001D4A9>..<U0001D4AC>;<U0001D4AE>..<U0001D4B9>;<U0001D4BB>;/ - <U0001D4BD>..<U0001D4C3>;<U0001D4C5>..<U0001D505>;/ - <U0001D507>..<U0001D50A>;<U0001D50D>..<U0001D514>;/ - <U0001D516>..<U0001D51C>;<U0001D51E>..<U0001D539>;/ - <U0001D53B>..<U0001D53E>;<U0001D540>..<U0001D544>;<U0001D546>;/ - <U0001D54A>..<U0001D550>;<U0001D552>..<U0001D6A5>;/ - <U0001D6A8>..<U0001D6C0>;<U0001D6C2>..<U0001D6DA>;/ - <U0001D6DC>..<U0001D6FA>;<U0001D6FC>..<U0001D714>;/ - <U0001D716>..<U0001D734>;<U0001D736>..<U0001D74E>;/ - <U0001D750>..<U0001D76E>;<U0001D770>..<U0001D788>;/ - <U0001D78A>..<U0001D7A8>;<U0001D7AA>..<U0001D7C2>;/ - <U0001D7C4>..<U0001D7CB>;<U0001D7CE>..<U0001D7FF>;/ - <U0001DF00>..<U0001DF1E>;<U0001DF25>..<U0001DF2A>;/ - <U0001E000>..<U0001E006>;<U0001E008>..<U0001E018>;/ - <U0001E01B>..<U0001E021>;<U0001E023>..<U0001E024>;/ - <U0001E026>..<U0001E02A>;<U0001E030>..<U0001E06D>;<U0001E08F>;/ - <U0001E100>..<U0001E12C>;<U0001E137>..<U0001E13D>;/ - <U0001E140>..<U0001E149>;<U0001E14E>;<U0001E290>..<U0001E2AD>;/ - <U0001E2C0>..<U0001E2EB>;<U0001E2F0>..<U0001E2F9>;/ - <U0001E4D0>..<U0001E4EB>;<U0001E4F0>..<U0001E4F9>;/ - <U0001E7E0>..<U0001E7E6>;<U0001E7E8>..<U0001E7EB>;/ - <U0001E7ED>..<U0001E7EE>;<U0001E7F0>..<U0001E7FE>;/ - <U0001E800>..<U0001E8C4>;<U0001E900>..<U0001E943>;<U0001E947>;/ - <U0001E94B>;<U0001E950>..<U0001E959>;<U0001EE00>..<U0001EE03>;/ + <U0001CCF0>..<U0001CCF9>;<U0001D400>..<U0001D454>;/ + <U0001D456>..<U0001D49C>;<U0001D49E>..<U0001D49F>;<U0001D4A2>;/ + <U0001D4A5>..<U0001D4A6>;<U0001D4A9>..<U0001D4AC>;/ + <U0001D4AE>..<U0001D4B9>;<U0001D4BB>;<U0001D4BD>..<U0001D4C3>;/ + <U0001D4C5>..<U0001D505>;<U0001D507>..<U0001D50A>;/ + <U0001D50D>..<U0001D514>;<U0001D516>..<U0001D51C>;/ + <U0001D51E>..<U0001D539>;<U0001D53B>..<U0001D53E>;/ + <U0001D540>..<U0001D544>;<U0001D546>;<U0001D54A>..<U0001D550>;/ + <U0001D552>..<U0001D6A5>;<U0001D6A8>..<U0001D6C0>;/ + <U0001D6C2>..<U0001D6DA>;<U0001D6DC>..<U0001D6FA>;/ + <U0001D6FC>..<U0001D714>;<U0001D716>..<U0001D734>;/ + <U0001D736>..<U0001D74E>;<U0001D750>..<U0001D76E>;/ + <U0001D770>..<U0001D788>;<U0001D78A>..<U0001D7A8>;/ + <U0001D7AA>..<U0001D7C2>;<U0001D7C4>..<U0001D7CB>;/ + <U0001D7CE>..<U0001D7FF>;<U0001DF00>..<U0001DF1E>;/ + <U0001DF25>..<U0001DF2A>;<U0001E000>..<U0001E006>;/ + <U0001E008>..<U0001E018>;<U0001E01B>..<U0001E021>;/ + <U0001E023>..<U0001E024>;<U0001E026>..<U0001E02A>;/ + <U0001E030>..<U0001E06D>;<U0001E08F>;<U0001E100>..<U0001E12C>;/ + <U0001E137>..<U0001E13D>;<U0001E140>..<U0001E149>;<U0001E14E>;/ + <U0001E290>..<U0001E2AD>;<U0001E2C0>..<U0001E2EB>;/ + <U0001E2F0>..<U0001E2F9>;<U0001E4D0>..<U0001E4EB>;/ + <U0001E4F0>..<U0001E4F9>;<U0001E5D0>..<U0001E5ED>;/ + <U0001E5F0>..<U0001E5FA>;<U0001E7E0>..<U0001E7E6>;/ + <U0001E7E8>..<U0001E7EB>;<U0001E7ED>..<U0001E7EE>;/ + <U0001E7F0>..<U0001E7FE>;<U0001E800>..<U0001E8C4>;/ + <U0001E900>..<U0001E943>;<U0001E947>;<U0001E94B>;/ + <U0001E950>..<U0001E959>;<U0001EE00>..<U0001EE03>;/ <U0001EE05>..<U0001EE1F>;<U0001EE21>..<U0001EE22>;<U0001EE24>;/ <U0001EE27>;<U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;/ <U0001EE39>;<U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ @@ -523,7 +536,7 @@ punct / <U0021>..<U002F>;<U003A>..<U0040>;<U005B>..<U0060>;<U007B>..<U007E>;/ <U00A0>..<U00A9>;<U00AB>..<U00B4>;<U00B6>..<U00B9>;<U00BB>..<U00BF>;/ <U00D7>;<U00F7>;<U02C2>..<U02C5>;<U02D2>..<U02DF>;<U02E5>..<U02EB>;/ - <U02ED>;<U02EF>..<U0344>;<U0346>..<U036F>;<U0375>;<U037E>;/ + <U02ED>;<U02EF>..<U0344>;<U0346>..<U0362>;<U0375>;<U037E>;/ <U0384>..<U0385>;<U0387>;<U03F6>;<U0482>..<U0489>;<U055A>..<U055F>;/ <U0589>..<U058A>;<U058D>..<U058F>;<U0591>..<U05AF>;<U05BE>;<U05C0>;/ <U05C3>;<U05C6>;<U05F3>..<U05F4>;<U0600>..<U060F>;<U061B>..<U061F>;/ @@ -548,44 +561,45 @@ punct / <U17DD>;<U17F0>..<U17F9>;<U1800>..<U180F>;<U1939>..<U193B>;<U1940>;/ <U1944>..<U1945>;<U19DA>;<U19DE>..<U19FF>;<U1A1E>..<U1A1F>;<U1A60>;/ <U1A75>..<U1A7C>;<U1A7F>;<U1AA0>..<U1AA6>;<U1AA8>..<U1AAD>;/ - <U1AB0>..<U1ABE>;<U1AC1>..<U1ACB>;<U1B34>;<U1B44>;<U1B5A>..<U1B7E>;/ - <U1BAA>..<U1BAB>;<U1BE6>;<U1BF2>..<U1BF3>;<U1BFC>..<U1BFF>;<U1C37>;/ - <U1C3B>..<U1C3F>;<U1C7E>..<U1C7F>;<U1CC0>..<U1CC7>;<U1CD0>..<U1CE8>;/ - <U1CED>;<U1CF4>;<U1CF7>..<U1CF9>;<U1DC0>..<U1DE6>;<U1DF5>..<U1DFF>;/ - <U1FBD>;<U1FBF>..<U1FC1>;<U1FCD>..<U1FCF>;<U1FDD>..<U1FDF>;/ - <U1FED>..<U1FEF>;<U1FFD>..<U1FFE>;<U2007>;<U200B>..<U2027>;/ - <U202A>..<U205E>;<U2060>..<U2064>;<U2066>..<U2070>;<U2074>..<U207E>;/ - <U2080>..<U208E>;<U20A0>..<U20C0>;<U20D0>..<U20F0>;<U2100>..<U2101>;/ - <U2103>..<U2106>;<U2108>..<U2109>;<U2114>;<U2116>..<U2118>;/ - <U211E>..<U2123>;<U2125>;<U2127>;<U2129>;<U212E>;<U213A>..<U213B>;/ - <U2140>..<U2144>;<U214A>..<U214D>;<U214F>..<U215F>;<U2189>..<U218B>;/ - <U2190>..<U2426>;<U2440>..<U244A>;<U2460>..<U24B5>;<U24EA>..<U2B73>;/ - <U2B76>..<U2B95>;<U2B97>..<U2BFF>;<U2CE5>..<U2CEA>;<U2CEF>..<U2CF1>;/ - <U2CF9>..<U2CFF>;<U2D70>;<U2D7F>;<U2E00>..<U2E2E>;<U2E30>..<U2E5D>;/ - <U2E80>..<U2E99>;<U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;<U2FF0>..<U2FFF>;/ - <U3001>..<U3004>;<U3008>..<U3020>;<U302A>..<U3030>;<U3036>..<U3037>;/ - <U303D>..<U303F>;<U3099>..<U309C>;<U30A0>;<U30FB>;<U3190>..<U319F>;/ - <U31C0>..<U31E3>;<U31EF>;<U3200>..<U321E>;<U3220>..<U33FF>;/ - <U4DC0>..<U4DFF>;<UA490>..<UA4C6>;<UA4FE>..<UA4FF>;<UA60D>..<UA60F>;/ - <UA66F>..<UA673>;<UA67C>..<UA67E>;<UA6F0>..<UA6F7>;<UA700>..<UA716>;/ - <UA720>..<UA721>;<UA789>..<UA78A>;<UA806>;<UA828>..<UA82C>;/ - <UA830>..<UA839>;<UA874>..<UA877>;<UA8C4>;<UA8CE>..<UA8CF>;/ - <UA8E0>..<UA8F1>;<UA8F8>..<UA8FA>;<UA8FC>;<UA92B>..<UA92F>;<UA953>;/ - <UA95F>;<UA9B3>;<UA9C0>..<UA9CD>;<UA9DE>..<UA9DF>;<UAA5C>..<UAA5F>;/ - <UAA77>..<UAA79>;<UAABF>;<UAAC1>;<UAADE>..<UAADF>;<UAAF0>..<UAAF1>;/ - <UAAF6>;<UAB5B>;<UAB6A>..<UAB6B>;<UABEB>..<UABED>;<UE000>..<UF8FF>;/ - <UFB29>;<UFBB2>..<UFBC2>;<UFD3E>..<UFD4F>;<UFDCF>;<UFDFC>..<UFE19>;/ - <UFE20>..<UFE52>;<UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFEFF>;/ - <UFF01>..<UFF0F>;<UFF1A>..<UFF20>;<UFF3B>..<UFF40>;<UFF5B>..<UFF65>;/ - <UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;/ - <U00010100>..<U00010102>;<U00010107>..<U00010133>;/ - <U00010137>..<U0001013F>;<U00010175>..<U0001018E>;/ - <U00010190>..<U0001019C>;<U000101A0>;<U000101D0>..<U000101FD>;/ - <U000102E0>..<U000102FB>;<U00010320>..<U00010323>;<U0001039F>;/ - <U000103D0>;<U0001056F>;<U00010857>..<U0001085F>;/ - <U00010877>..<U0001087F>;<U000108A7>..<U000108AF>;/ - <U000108FB>..<U000108FF>;<U00010916>..<U0001091B>;<U0001091F>;/ - <U0001093F>;<U000109BC>..<U000109BD>;<U000109C0>..<U000109CF>;/ + <U1AB0>..<U1ABE>;<U1AC1>..<U1ACB>;<U1B34>;<U1B44>;<U1B4E>..<U1B4F>;/ + <U1B5A>..<U1B7F>;<U1BAA>..<U1BAB>;<U1BE6>;<U1BF2>..<U1BF3>;/ + <U1BFC>..<U1BFF>;<U1C37>;<U1C3B>..<U1C3F>;<U1C7E>..<U1C7F>;/ + <U1CC0>..<U1CC7>;<U1CD0>..<U1CE8>;<U1CED>;<U1CF4>;<U1CF7>..<U1CF9>;/ + <U1DC0>..<U1DD2>;<U1DF5>..<U1DFF>;<U1FBD>;<U1FBF>..<U1FC1>;/ + <U1FCD>..<U1FCF>;<U1FDD>..<U1FDF>;<U1FED>..<U1FEF>;<U1FFD>..<U1FFE>;/ + <U2007>;<U200B>..<U2027>;<U202A>..<U205E>;<U2060>..<U2064>;/ + <U2066>..<U2070>;<U2074>..<U207E>;<U2080>..<U208E>;<U20A0>..<U20C0>;/ + <U20D0>..<U20F0>;<U2100>..<U2101>;<U2103>..<U2106>;<U2108>..<U2109>;/ + <U2114>;<U2116>..<U2118>;<U211E>..<U2123>;<U2125>;<U2127>;<U2129>;/ + <U212E>;<U213A>..<U213B>;<U2140>..<U2144>;<U214A>..<U214D>;/ + <U214F>..<U215F>;<U2189>..<U218B>;<U2190>..<U2429>;<U2440>..<U244A>;/ + <U2460>..<U24B5>;<U24EA>..<U2B73>;<U2B76>..<U2B95>;<U2B97>..<U2BFF>;/ + <U2CE5>..<U2CEA>;<U2CEF>..<U2CF1>;<U2CF9>..<U2CFF>;<U2D70>;<U2D7F>;/ + <U2E00>..<U2E2E>;<U2E30>..<U2E5D>;<U2E80>..<U2E99>;<U2E9B>..<U2EF3>;/ + <U2F00>..<U2FD5>;<U2FF0>..<U2FFF>;<U3001>..<U3004>;<U3008>..<U3020>;/ + <U302A>..<U3030>;<U3036>..<U3037>;<U303D>..<U303F>;<U3099>..<U309C>;/ + <U30A0>;<U30FB>;<U3190>..<U319F>;<U31C0>..<U31E5>;<U31EF>;/ + <U3200>..<U321E>;<U3220>..<U33FF>;<U4DC0>..<U4DFF>;<UA490>..<UA4C6>;/ + <UA4FE>..<UA4FF>;<UA60D>..<UA60F>;<UA66F>..<UA673>;<UA67C>..<UA67E>;/ + <UA6F0>..<UA6F7>;<UA700>..<UA716>;<UA720>..<UA721>;<UA789>..<UA78A>;/ + <UA806>;<UA828>..<UA82C>;<UA830>..<UA839>;<UA874>..<UA877>;<UA8C4>;/ + <UA8CE>..<UA8CF>;<UA8E0>..<UA8F1>;<UA8F8>..<UA8FA>;<UA8FC>;/ + <UA92B>..<UA92F>;<UA953>;<UA95F>;<UA9B3>;<UA9C0>..<UA9CD>;/ + <UA9DE>..<UA9DF>;<UAA5C>..<UAA5F>;<UAA77>..<UAA79>;<UAABF>;<UAAC1>;/ + <UAADE>..<UAADF>;<UAAF0>..<UAAF1>;<UAAF6>;<UAB5B>;<UAB6A>..<UAB6B>;/ + <UABEB>..<UABED>;<UE000>..<UF8FF>;<UFB29>;<UFBB2>..<UFBC2>;/ + <UFD3E>..<UFD4F>;<UFDCF>;<UFDFC>..<UFE19>;<UFE20>..<UFE52>;/ + <UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFEFF>;<UFF01>..<UFF0F>;/ + <UFF1A>..<UFF20>;<UFF3B>..<UFF40>;<UFF5B>..<UFF65>;<UFFE0>..<UFFE6>;/ + <UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;<U00010100>..<U00010102>;/ + <U00010107>..<U00010133>;<U00010137>..<U0001013F>;/ + <U00010175>..<U0001018E>;<U00010190>..<U0001019C>;<U000101A0>;/ + <U000101D0>..<U000101FD>;<U000102E0>..<U000102FB>;/ + <U00010320>..<U00010323>;<U0001039F>;<U000103D0>;<U0001056F>;/ + <U00010857>..<U0001085F>;<U00010877>..<U0001087F>;/ + <U000108A7>..<U000108AF>;<U000108FB>..<U000108FF>;/ + <U00010916>..<U0001091B>;<U0001091F>;<U0001093F>;/ + <U000109BC>..<U000109BD>;<U000109C0>..<U000109CF>;/ <U000109D2>..<U000109FF>;<U00010A38>..<U00010A3A>;/ <U00010A3F>..<U00010A48>;<U00010A50>..<U00010A58>;/ <U00010A7D>..<U00010A7F>;<U00010A9D>..<U00010A9F>;<U00010AC8>;/ @@ -593,6 +607,7 @@ punct / <U00010B39>..<U00010B3F>;<U00010B58>..<U00010B5F>;/ <U00010B78>..<U00010B7F>;<U00010B99>..<U00010B9C>;/ <U00010BA9>..<U00010BAF>;<U00010CFA>..<U00010CFF>;/ + <U00010D6A>..<U00010D6E>;<U00010D8E>..<U00010D8F>;/ <U00010E60>..<U00010E7E>;<U00010EAD>;<U00010EFD>..<U00010EFF>;/ <U00010F1D>..<U00010F26>;<U00010F46>..<U00010F59>;/ <U00010F82>..<U00010F89>;<U00010FC5>..<U00010FCB>;/ @@ -603,7 +618,9 @@ punct / <U000111DB>;<U000111DD>..<U000111DF>;<U000111E1>..<U000111F4>;/ <U00011235>..<U00011236>;<U00011238>..<U0001123D>;<U000112A9>;/ <U000112E9>..<U000112EA>;<U0001133B>..<U0001133C>;<U0001134D>;/ - <U00011366>..<U0001136C>;<U00011370>..<U00011374>;<U00011442>;/ + <U00011366>..<U0001136C>;<U00011370>..<U00011374>;/ + <U000113CE>..<U000113D0>;<U000113D2>;<U000113D4>..<U000113D5>;/ + <U000113D7>..<U000113D8>;<U000113E1>..<U000113E2>;<U00011442>;/ <U00011446>;<U0001144B>..<U0001144F>;<U0001145A>..<U0001145B>;/ <U0001145D>..<U0001145E>;<U000114C2>..<U000114C3>;<U000114C6>;/ <U000115BF>..<U000115D7>;<U0001163F>;<U00011641>..<U00011643>;/ @@ -613,16 +630,19 @@ punct / <U00011943>..<U00011946>;<U000119E0>;<U000119E2>;/ <U00011A33>..<U00011A34>;<U00011A3F>..<U00011A47>;/ <U00011A98>..<U00011A9C>;<U00011A9E>..<U00011AA2>;/ - <U00011B00>..<U00011B09>;<U00011C3F>;<U00011C41>..<U00011C45>;/ - <U00011C5A>..<U00011C6C>;<U00011C70>..<U00011C71>;<U00011D42>;/ - <U00011D44>..<U00011D45>;<U00011D97>;<U00011EF7>..<U00011EF8>;/ - <U00011F41>..<U00011F4F>;<U00011FC0>..<U00011FF1>;<U00011FFF>;/ + <U00011B00>..<U00011B09>;<U00011BE1>;<U00011C3F>;/ + <U00011C41>..<U00011C45>;<U00011C5A>..<U00011C6C>;/ + <U00011C70>..<U00011C71>;<U00011D42>;<U00011D44>..<U00011D45>;/ + <U00011D97>;<U00011EF7>..<U00011EF8>;<U00011F41>..<U00011F4F>;/ + <U00011F5A>;<U00011FC0>..<U00011FF1>;<U00011FFF>;/ <U00012470>..<U00012474>;<U00012FF1>..<U00012FF2>;/ - <U00013430>..<U00013440>;<U00013447>..<U00013455>;/ + <U00013430>..<U00013440>;<U00013447>..<U00013455>;<U0001612F>;/ <U00016A6E>..<U00016A6F>;<U00016AF0>..<U00016AF5>;/ <U00016B30>..<U00016B3F>;<U00016B44>..<U00016B45>;/ - <U00016B5B>..<U00016B61>;<U00016E80>..<U00016E9A>;<U00016FE2>;/ - <U00016FE4>;<U0001BC9C>..<U0001BC9D>;<U0001BC9F>..<U0001BCA3>;/ + <U00016B5B>..<U00016B61>;<U00016D6D>..<U00016D6F>;/ + <U00016E80>..<U00016E9A>;<U00016FE2>;<U00016FE4>;/ + <U0001BC9C>..<U0001BC9D>;<U0001BC9F>..<U0001BCA3>;/ + <U0001CC00>..<U0001CCEF>;<U0001CD00>..<U0001CEB3>;/ <U0001CF00>..<U0001CF2D>;<U0001CF30>..<U0001CF46>;/ <U0001CF50>..<U0001CFC3>;<U0001D000>..<U0001D0F5>;/ <U0001D100>..<U0001D126>;<U0001D129>..<U0001D1EA>;/ @@ -633,31 +653,32 @@ punct / <U0001D800>..<U0001DA8B>;<U0001DA9B>..<U0001DA9F>;/ <U0001DAA1>..<U0001DAAF>;<U0001E130>..<U0001E136>;<U0001E14F>;/ <U0001E2AE>;<U0001E2EC>..<U0001E2EF>;<U0001E2FF>;/ - <U0001E4EC>..<U0001E4EF>;<U0001E8C7>..<U0001E8D6>;/ - <U0001E944>..<U0001E946>;<U0001E948>..<U0001E94A>;/ - <U0001E95E>..<U0001E95F>;<U0001EC71>..<U0001ECB4>;/ - <U0001ED01>..<U0001ED3D>;<U0001EEF0>..<U0001EEF1>;/ - <U0001F000>..<U0001F02B>;<U0001F030>..<U0001F093>;/ - <U0001F0A0>..<U0001F0AE>;<U0001F0B1>..<U0001F0BF>;/ - <U0001F0C1>..<U0001F0CF>;<U0001F0D1>..<U0001F0F5>;/ - <U0001F100>..<U0001F12F>;<U0001F14A>..<U0001F14F>;/ - <U0001F16A>..<U0001F16F>;<U0001F18A>..<U0001F1AD>;/ - <U0001F1E6>..<U0001F202>;<U0001F210>..<U0001F23B>;/ - <U0001F240>..<U0001F248>;<U0001F250>..<U0001F251>;/ - <U0001F260>..<U0001F265>;<U0001F300>..<U0001F6D7>;/ - <U0001F6DC>..<U0001F6EC>;<U0001F6F0>..<U0001F6FC>;/ - <U0001F700>..<U0001F776>;<U0001F77B>..<U0001F7D9>;/ - <U0001F7E0>..<U0001F7EB>;<U0001F7F0>;<U0001F800>..<U0001F80B>;/ - <U0001F810>..<U0001F847>;<U0001F850>..<U0001F859>;/ - <U0001F860>..<U0001F887>;<U0001F890>..<U0001F8AD>;/ - <U0001F8B0>..<U0001F8B1>;<U0001F900>..<U0001FA53>;/ + <U0001E4EC>..<U0001E4EF>;<U0001E5EE>..<U0001E5EF>;<U0001E5FF>;/ + <U0001E8C7>..<U0001E8D6>;<U0001E944>..<U0001E946>;/ + <U0001E948>..<U0001E94A>;<U0001E95E>..<U0001E95F>;/ + <U0001EC71>..<U0001ECB4>;<U0001ED01>..<U0001ED3D>;/ + <U0001EEF0>..<U0001EEF1>;<U0001F000>..<U0001F02B>;/ + <U0001F030>..<U0001F093>;<U0001F0A0>..<U0001F0AE>;/ + <U0001F0B1>..<U0001F0BF>;<U0001F0C1>..<U0001F0CF>;/ + <U0001F0D1>..<U0001F0F5>;<U0001F100>..<U0001F12F>;/ + <U0001F14A>..<U0001F14F>;<U0001F16A>..<U0001F16F>;/ + <U0001F18A>..<U0001F1AD>;<U0001F1E6>..<U0001F202>;/ + <U0001F210>..<U0001F23B>;<U0001F240>..<U0001F248>;/ + <U0001F250>..<U0001F251>;<U0001F260>..<U0001F265>;/ + <U0001F300>..<U0001F6D7>;<U0001F6DC>..<U0001F6EC>;/ + <U0001F6F0>..<U0001F6FC>;<U0001F700>..<U0001F776>;/ + <U0001F77B>..<U0001F7D9>;<U0001F7E0>..<U0001F7EB>;<U0001F7F0>;/ + <U0001F800>..<U0001F80B>;<U0001F810>..<U0001F847>;/ + <U0001F850>..<U0001F859>;<U0001F860>..<U0001F887>;/ + <U0001F890>..<U0001F8AD>;<U0001F8B0>..<U0001F8BB>;/ + <U0001F8C0>..<U0001F8C1>;<U0001F900>..<U0001FA53>;/ <U0001FA60>..<U0001FA6D>;<U0001FA70>..<U0001FA7C>;/ - <U0001FA80>..<U0001FA88>;<U0001FA90>..<U0001FABD>;/ - <U0001FABF>..<U0001FAC5>;<U0001FACE>..<U0001FADB>;/ - <U0001FAE0>..<U0001FAE8>;<U0001FAF0>..<U0001FAF8>;/ - <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBCA>;<U000E0001>;/ - <U000E0020>..<U000E007F>;<U000E0100>..<U000E01EF>;/ - <U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD> + <U0001FA80>..<U0001FA89>;<U0001FA8F>..<U0001FAC6>;/ + <U0001FACE>..<U0001FADC>;<U0001FADF>..<U0001FAE9>;/ + <U0001FAF0>..<U0001FAF8>;<U0001FB00>..<U0001FB92>;/ + <U0001FB94>..<U0001FBEF>;<U000E0001>;<U000E0020>..<U000E007F>;/ + <U000E0100>..<U000E01EF>;<U000F0000>..<U000FFFFD>;/ + <U00100000>..<U0010FFFD> graph / <U0021>..<U007E>;<U00A0>..<U0377>;<U037A>..<U037F>;<U0384>..<U038A>;/ @@ -666,7 +687,7 @@ graph / <U05EF>..<U05F4>;<U0600>..<U070D>;<U070F>..<U074A>;<U074D>..<U07B1>;/ <U07C0>..<U07FA>;<U07FD>..<U082D>;<U0830>..<U083E>;<U0840>..<U085B>;/ <U085E>;<U0860>..<U086A>;<U0870>..<U088E>;<U0890>..<U0891>;/ - <U0898>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;<U0993>..<U09A8>;/ + <U0897>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;<U0993>..<U09A8>;/ <U09AA>..<U09B0>;<U09B2>;<U09B6>..<U09B9>;<U09BC>..<U09C4>;/ <U09C7>..<U09C8>;<U09CB>..<U09CE>;<U09D7>;<U09DC>..<U09DD>;/ <U09DF>..<U09E3>;<U09E6>..<U09FE>;<U0A01>..<U0A03>;<U0A05>..<U0A0A>;/ @@ -713,38 +734,38 @@ graph / <U1970>..<U1974>;<U1980>..<U19AB>;<U19B0>..<U19C9>;<U19D0>..<U19DA>;/ <U19DE>..<U1A1B>;<U1A1E>..<U1A5E>;<U1A60>..<U1A7C>;<U1A7F>..<U1A89>;/ <U1A90>..<U1A99>;<U1AA0>..<U1AAD>;<U1AB0>..<U1ACE>;<U1B00>..<U1B4C>;/ - <U1B50>..<U1B7E>;<U1B80>..<U1BF3>;<U1BFC>..<U1C37>;<U1C3B>..<U1C49>;/ - <U1C4D>..<U1C88>;<U1C90>..<U1CBA>;<U1CBD>..<U1CC7>;<U1CD0>..<U1CFA>;/ - <U1D00>..<U1F15>;<U1F18>..<U1F1D>;<U1F20>..<U1F45>;<U1F48>..<U1F4D>;/ - <U1F50>..<U1F57>;<U1F59>;<U1F5B>;<U1F5D>;<U1F5F>..<U1F7D>;/ - <U1F80>..<U1FB4>;<U1FB6>..<U1FC4>;<U1FC6>..<U1FD3>;<U1FD6>..<U1FDB>;/ - <U1FDD>..<U1FEF>;<U1FF2>..<U1FF4>;<U1FF6>..<U1FFE>;<U2007>;/ - <U200B>..<U2027>;<U202A>..<U205E>;<U2060>..<U2064>;<U2066>..<U2071>;/ - <U2074>..<U208E>;<U2090>..<U209C>;<U20A0>..<U20C0>;<U20D0>..<U20F0>;/ - <U2100>..<U218B>;<U2190>..<U2426>;<U2440>..<U244A>;<U2460>..<U2B73>;/ - <U2B76>..<U2B95>;<U2B97>..<U2CF3>;<U2CF9>..<U2D25>;<U2D27>;<U2D2D>;/ - <U2D30>..<U2D67>;<U2D6F>..<U2D70>;<U2D7F>..<U2D96>;<U2DA0>..<U2DA6>;/ - <U2DA8>..<U2DAE>;<U2DB0>..<U2DB6>;<U2DB8>..<U2DBE>;<U2DC0>..<U2DC6>;/ - <U2DC8>..<U2DCE>;<U2DD0>..<U2DD6>;<U2DD8>..<U2DDE>;<U2DE0>..<U2E5D>;/ - <U2E80>..<U2E99>;<U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;<U2FF0>..<U2FFF>;/ - <U3001>..<U303F>;<U3041>..<U3096>;<U3099>..<U30FF>;<U3105>..<U312F>;/ - <U3131>..<U318E>;<U3190>..<U31E3>;<U31EF>..<U321E>;<U3220>..<UA48C>;/ - <UA490>..<UA4C6>;<UA4D0>..<UA62B>;<UA640>..<UA6F7>;<UA700>..<UA7CA>;/ - <UA7D0>..<UA7D1>;<UA7D3>;<UA7D5>..<UA7D9>;<UA7F2>..<UA82C>;/ - <UA830>..<UA839>;<UA840>..<UA877>;<UA880>..<UA8C5>;<UA8CE>..<UA8D9>;/ - <UA8E0>..<UA953>;<UA95F>..<UA97C>;<UA980>..<UA9CD>;<UA9CF>..<UA9D9>;/ - <UA9DE>..<UA9FE>;<UAA00>..<UAA36>;<UAA40>..<UAA4D>;<UAA50>..<UAA59>;/ - <UAA5C>..<UAAC2>;<UAADB>..<UAAF6>;<UAB01>..<UAB06>;<UAB09>..<UAB0E>;/ - <UAB11>..<UAB16>;<UAB20>..<UAB26>;<UAB28>..<UAB2E>;<UAB30>..<UAB6B>;/ - <UAB70>..<UABED>;<UABF0>..<UABF9>;<UAC00>..<UD7A3>;<UD7B0>..<UD7C6>;/ - <UD7CB>..<UD7FB>;<UE000>..<UFA6D>;<UFA70>..<UFAD9>;<UFB00>..<UFB06>;/ - <UFB13>..<UFB17>;<UFB1D>..<UFB36>;<UFB38>..<UFB3C>;<UFB3E>;/ - <UFB40>..<UFB41>;<UFB43>..<UFB44>;<UFB46>..<UFBC2>;<UFBD3>..<UFD8F>;/ - <UFD92>..<UFDC7>;<UFDCF>;<UFDF0>..<UFE19>;<UFE20>..<UFE52>;/ - <UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFE70>..<UFE74>;<UFE76>..<UFEFC>;/ - <UFEFF>;<UFF01>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;/ - <UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;/ - <UFFF9>..<UFFFD>;<U00010000>..<U0001000B>;<U0001000D>..<U00010026>;/ + <U1B4E>..<U1BF3>;<U1BFC>..<U1C37>;<U1C3B>..<U1C49>;<U1C4D>..<U1C8A>;/ + <U1C90>..<U1CBA>;<U1CBD>..<U1CC7>;<U1CD0>..<U1CFA>;<U1D00>..<U1F15>;/ + <U1F18>..<U1F1D>;<U1F20>..<U1F45>;<U1F48>..<U1F4D>;<U1F50>..<U1F57>;/ + <U1F59>;<U1F5B>;<U1F5D>;<U1F5F>..<U1F7D>;<U1F80>..<U1FB4>;/ + <U1FB6>..<U1FC4>;<U1FC6>..<U1FD3>;<U1FD6>..<U1FDB>;<U1FDD>..<U1FEF>;/ + <U1FF2>..<U1FF4>;<U1FF6>..<U1FFE>;<U2007>;<U200B>..<U2027>;/ + <U202A>..<U205E>;<U2060>..<U2064>;<U2066>..<U2071>;<U2074>..<U208E>;/ + <U2090>..<U209C>;<U20A0>..<U20C0>;<U20D0>..<U20F0>;<U2100>..<U218B>;/ + <U2190>..<U2429>;<U2440>..<U244A>;<U2460>..<U2B73>;<U2B76>..<U2B95>;/ + <U2B97>..<U2CF3>;<U2CF9>..<U2D25>;<U2D27>;<U2D2D>;<U2D30>..<U2D67>;/ + <U2D6F>..<U2D70>;<U2D7F>..<U2D96>;<U2DA0>..<U2DA6>;<U2DA8>..<U2DAE>;/ + <U2DB0>..<U2DB6>;<U2DB8>..<U2DBE>;<U2DC0>..<U2DC6>;<U2DC8>..<U2DCE>;/ + <U2DD0>..<U2DD6>;<U2DD8>..<U2DDE>;<U2DE0>..<U2E5D>;<U2E80>..<U2E99>;/ + <U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;<U2FF0>..<U2FFF>;<U3001>..<U303F>;/ + <U3041>..<U3096>;<U3099>..<U30FF>;<U3105>..<U312F>;<U3131>..<U318E>;/ + <U3190>..<U31E5>;<U31EF>..<U321E>;<U3220>..<UA48C>;<UA490>..<UA4C6>;/ + <UA4D0>..<UA62B>;<UA640>..<UA6F7>;<UA700>..<UA7CD>;<UA7D0>..<UA7D1>;/ + <UA7D3>;<UA7D5>..<UA7DC>;<UA7F2>..<UA82C>;<UA830>..<UA839>;/ + <UA840>..<UA877>;<UA880>..<UA8C5>;<UA8CE>..<UA8D9>;<UA8E0>..<UA953>;/ + <UA95F>..<UA97C>;<UA980>..<UA9CD>;<UA9CF>..<UA9D9>;<UA9DE>..<UA9FE>;/ + <UAA00>..<UAA36>;<UAA40>..<UAA4D>;<UAA50>..<UAA59>;<UAA5C>..<UAAC2>;/ + <UAADB>..<UAAF6>;<UAB01>..<UAB06>;<UAB09>..<UAB0E>;<UAB11>..<UAB16>;/ + <UAB20>..<UAB26>;<UAB28>..<UAB2E>;<UAB30>..<UAB6B>;<UAB70>..<UABED>;/ + <UABF0>..<UABF9>;<UAC00>..<UD7A3>;<UD7B0>..<UD7C6>;<UD7CB>..<UD7FB>;/ + <UE000>..<UFA6D>;<UFA70>..<UFAD9>;<UFB00>..<UFB06>;<UFB13>..<UFB17>;/ + <UFB1D>..<UFB36>;<UFB38>..<UFB3C>;<UFB3E>;<UFB40>..<UFB41>;/ + <UFB43>..<UFB44>;<UFB46>..<UFBC2>;<UFBD3>..<UFD8F>;<UFD92>..<UFDC7>;/ + <UFDCF>;<UFDF0>..<UFE19>;<UFE20>..<UFE52>;<UFE54>..<UFE66>;/ + <UFE68>..<UFE6B>;<UFE70>..<UFE74>;<UFE76>..<UFEFC>;<UFEFF>;/ + <UFF01>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;<UFFD2>..<UFFD7>;/ + <UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;/ + <U00010000>..<U0001000B>;<U0001000D>..<U00010026>;/ <U00010028>..<U0001003A>;<U0001003C>..<U0001003D>;/ <U0001003F>..<U0001004D>;<U00010050>..<U0001005D>;/ <U00010080>..<U000100FA>;<U00010100>..<U00010102>;/ @@ -761,94 +782,105 @@ graph / <U0001057C>..<U0001058A>;<U0001058C>..<U00010592>;/ <U00010594>..<U00010595>;<U00010597>..<U000105A1>;/ <U000105A3>..<U000105B1>;<U000105B3>..<U000105B9>;/ - <U000105BB>..<U000105BC>;<U00010600>..<U00010736>;/ - <U00010740>..<U00010755>;<U00010760>..<U00010767>;/ - <U00010780>..<U00010785>;<U00010787>..<U000107B0>;/ - <U000107B2>..<U000107BA>;<U00010800>..<U00010805>;<U00010808>;/ - <U0001080A>..<U00010835>;<U00010837>..<U00010838>;<U0001083C>;/ - <U0001083F>..<U00010855>;<U00010857>..<U0001089E>;/ - <U000108A7>..<U000108AF>;<U000108E0>..<U000108F2>;/ - <U000108F4>..<U000108F5>;<U000108FB>..<U0001091B>;/ - <U0001091F>..<U00010939>;<U0001093F>;<U00010980>..<U000109B7>;/ - <U000109BC>..<U000109CF>;<U000109D2>..<U00010A03>;/ - <U00010A05>..<U00010A06>;<U00010A0C>..<U00010A13>;/ - <U00010A15>..<U00010A17>;<U00010A19>..<U00010A35>;/ - <U00010A38>..<U00010A3A>;<U00010A3F>..<U00010A48>;/ - <U00010A50>..<U00010A58>;<U00010A60>..<U00010A9F>;/ - <U00010AC0>..<U00010AE6>;<U00010AEB>..<U00010AF6>;/ - <U00010B00>..<U00010B35>;<U00010B39>..<U00010B55>;/ - <U00010B58>..<U00010B72>;<U00010B78>..<U00010B91>;/ - <U00010B99>..<U00010B9C>;<U00010BA9>..<U00010BAF>;/ - <U00010C00>..<U00010C48>;<U00010C80>..<U00010CB2>;/ - <U00010CC0>..<U00010CF2>;<U00010CFA>..<U00010D27>;/ - <U00010D30>..<U00010D39>;<U00010E60>..<U00010E7E>;/ + <U000105BB>..<U000105BC>;<U000105C0>..<U000105F3>;/ + <U00010600>..<U00010736>;<U00010740>..<U00010755>;/ + <U00010760>..<U00010767>;<U00010780>..<U00010785>;/ + <U00010787>..<U000107B0>;<U000107B2>..<U000107BA>;/ + <U00010800>..<U00010805>;<U00010808>;<U0001080A>..<U00010835>;/ + <U00010837>..<U00010838>;<U0001083C>;<U0001083F>..<U00010855>;/ + <U00010857>..<U0001089E>;<U000108A7>..<U000108AF>;/ + <U000108E0>..<U000108F2>;<U000108F4>..<U000108F5>;/ + <U000108FB>..<U0001091B>;<U0001091F>..<U00010939>;<U0001093F>;/ + <U00010980>..<U000109B7>;<U000109BC>..<U000109CF>;/ + <U000109D2>..<U00010A03>;<U00010A05>..<U00010A06>;/ + <U00010A0C>..<U00010A13>;<U00010A15>..<U00010A17>;/ + <U00010A19>..<U00010A35>;<U00010A38>..<U00010A3A>;/ + <U00010A3F>..<U00010A48>;<U00010A50>..<U00010A58>;/ + <U00010A60>..<U00010A9F>;<U00010AC0>..<U00010AE6>;/ + <U00010AEB>..<U00010AF6>;<U00010B00>..<U00010B35>;/ + <U00010B39>..<U00010B55>;<U00010B58>..<U00010B72>;/ + <U00010B78>..<U00010B91>;<U00010B99>..<U00010B9C>;/ + <U00010BA9>..<U00010BAF>;<U00010C00>..<U00010C48>;/ + <U00010C80>..<U00010CB2>;<U00010CC0>..<U00010CF2>;/ + <U00010CFA>..<U00010D27>;<U00010D30>..<U00010D39>;/ + <U00010D40>..<U00010D65>;<U00010D69>..<U00010D85>;/ + <U00010D8E>..<U00010D8F>;<U00010E60>..<U00010E7E>;/ <U00010E80>..<U00010EA9>;<U00010EAB>..<U00010EAD>;/ - <U00010EB0>..<U00010EB1>;<U00010EFD>..<U00010F27>;/ - <U00010F30>..<U00010F59>;<U00010F70>..<U00010F89>;/ - <U00010FB0>..<U00010FCB>;<U00010FE0>..<U00010FF6>;/ - <U00011000>..<U0001104D>;<U00011052>..<U00011075>;/ - <U0001107F>..<U000110C2>;<U000110CD>;<U000110D0>..<U000110E8>;/ - <U000110F0>..<U000110F9>;<U00011100>..<U00011134>;/ - <U00011136>..<U00011147>;<U00011150>..<U00011176>;/ - <U00011180>..<U000111DF>;<U000111E1>..<U000111F4>;/ - <U00011200>..<U00011211>;<U00011213>..<U00011241>;/ - <U00011280>..<U00011286>;<U00011288>;<U0001128A>..<U0001128D>;/ - <U0001128F>..<U0001129D>;<U0001129F>..<U000112A9>;/ - <U000112B0>..<U000112EA>;<U000112F0>..<U000112F9>;/ - <U00011300>..<U00011303>;<U00011305>..<U0001130C>;/ - <U0001130F>..<U00011310>;<U00011313>..<U00011328>;/ - <U0001132A>..<U00011330>;<U00011332>..<U00011333>;/ - <U00011335>..<U00011339>;<U0001133B>..<U00011344>;/ - <U00011347>..<U00011348>;<U0001134B>..<U0001134D>;<U00011350>;/ - <U00011357>;<U0001135D>..<U00011363>;<U00011366>..<U0001136C>;/ - <U00011370>..<U00011374>;<U00011400>..<U0001145B>;/ + <U00010EB0>..<U00010EB1>;<U00010EC2>..<U00010EC4>;/ + <U00010EFC>..<U00010F27>;<U00010F30>..<U00010F59>;/ + <U00010F70>..<U00010F89>;<U00010FB0>..<U00010FCB>;/ + <U00010FE0>..<U00010FF6>;<U00011000>..<U0001104D>;/ + <U00011052>..<U00011075>;<U0001107F>..<U000110C2>;<U000110CD>;/ + <U000110D0>..<U000110E8>;<U000110F0>..<U000110F9>;/ + <U00011100>..<U00011134>;<U00011136>..<U00011147>;/ + <U00011150>..<U00011176>;<U00011180>..<U000111DF>;/ + <U000111E1>..<U000111F4>;<U00011200>..<U00011211>;/ + <U00011213>..<U00011241>;<U00011280>..<U00011286>;<U00011288>;/ + <U0001128A>..<U0001128D>;<U0001128F>..<U0001129D>;/ + <U0001129F>..<U000112A9>;<U000112B0>..<U000112EA>;/ + <U000112F0>..<U000112F9>;<U00011300>..<U00011303>;/ + <U00011305>..<U0001130C>;<U0001130F>..<U00011310>;/ + <U00011313>..<U00011328>;<U0001132A>..<U00011330>;/ + <U00011332>..<U00011333>;<U00011335>..<U00011339>;/ + <U0001133B>..<U00011344>;<U00011347>..<U00011348>;/ + <U0001134B>..<U0001134D>;<U00011350>;<U00011357>;/ + <U0001135D>..<U00011363>;<U00011366>..<U0001136C>;/ + <U00011370>..<U00011374>;<U00011380>..<U00011389>;<U0001138B>;/ + <U0001138E>;<U00011390>..<U000113B5>;<U000113B7>..<U000113C0>;/ + <U000113C2>;<U000113C5>;<U000113C7>..<U000113CA>;/ + <U000113CC>..<U000113D5>;<U000113D7>..<U000113D8>;/ + <U000113E1>..<U000113E2>;<U00011400>..<U0001145B>;/ <U0001145D>..<U00011461>;<U00011480>..<U000114C7>;/ <U000114D0>..<U000114D9>;<U00011580>..<U000115B5>;/ <U000115B8>..<U000115DD>;<U00011600>..<U00011644>;/ <U00011650>..<U00011659>;<U00011660>..<U0001166C>;/ <U00011680>..<U000116B9>;<U000116C0>..<U000116C9>;/ - <U00011700>..<U0001171A>;<U0001171D>..<U0001172B>;/ - <U00011730>..<U00011746>;<U00011800>..<U0001183B>;/ - <U000118A0>..<U000118F2>;<U000118FF>..<U00011906>;<U00011909>;/ - <U0001190C>..<U00011913>;<U00011915>..<U00011916>;/ - <U00011918>..<U00011935>;<U00011937>..<U00011938>;/ - <U0001193B>..<U00011946>;<U00011950>..<U00011959>;/ - <U000119A0>..<U000119A7>;<U000119AA>..<U000119D7>;/ - <U000119DA>..<U000119E4>;<U00011A00>..<U00011A47>;/ - <U00011A50>..<U00011AA2>;<U00011AB0>..<U00011AF8>;/ - <U00011B00>..<U00011B09>;<U00011C00>..<U00011C08>;/ - <U00011C0A>..<U00011C36>;<U00011C38>..<U00011C45>;/ - <U00011C50>..<U00011C6C>;<U00011C70>..<U00011C8F>;/ - <U00011C92>..<U00011CA7>;<U00011CA9>..<U00011CB6>;/ - <U00011D00>..<U00011D06>;<U00011D08>..<U00011D09>;/ - <U00011D0B>..<U00011D36>;<U00011D3A>;<U00011D3C>..<U00011D3D>;/ - <U00011D3F>..<U00011D47>;<U00011D50>..<U00011D59>;/ - <U00011D60>..<U00011D65>;<U00011D67>..<U00011D68>;/ - <U00011D6A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ - <U00011D93>..<U00011D98>;<U00011DA0>..<U00011DA9>;/ - <U00011EE0>..<U00011EF8>;<U00011F00>..<U00011F10>;/ - <U00011F12>..<U00011F3A>;<U00011F3E>..<U00011F59>;<U00011FB0>;/ - <U00011FC0>..<U00011FF1>;<U00011FFF>..<U00012399>;/ - <U00012400>..<U0001246E>;<U00012470>..<U00012474>;/ - <U00012480>..<U00012543>;<U00012F90>..<U00012FF2>;/ - <U00013000>..<U00013455>;<U00014400>..<U00014646>;/ - <U00016800>..<U00016A38>;<U00016A40>..<U00016A5E>;/ - <U00016A60>..<U00016A69>;<U00016A6E>..<U00016ABE>;/ - <U00016AC0>..<U00016AC9>;<U00016AD0>..<U00016AED>;/ - <U00016AF0>..<U00016AF5>;<U00016B00>..<U00016B45>;/ - <U00016B50>..<U00016B59>;<U00016B5B>..<U00016B61>;/ - <U00016B63>..<U00016B77>;<U00016B7D>..<U00016B8F>;/ + <U000116D0>..<U000116E3>;<U00011700>..<U0001171A>;/ + <U0001171D>..<U0001172B>;<U00011730>..<U00011746>;/ + <U00011800>..<U0001183B>;<U000118A0>..<U000118F2>;/ + <U000118FF>..<U00011906>;<U00011909>;<U0001190C>..<U00011913>;/ + <U00011915>..<U00011916>;<U00011918>..<U00011935>;/ + <U00011937>..<U00011938>;<U0001193B>..<U00011946>;/ + <U00011950>..<U00011959>;<U000119A0>..<U000119A7>;/ + <U000119AA>..<U000119D7>;<U000119DA>..<U000119E4>;/ + <U00011A00>..<U00011A47>;<U00011A50>..<U00011AA2>;/ + <U00011AB0>..<U00011AF8>;<U00011B00>..<U00011B09>;/ + <U00011BC0>..<U00011BE1>;<U00011BF0>..<U00011BF9>;/ + <U00011C00>..<U00011C08>;<U00011C0A>..<U00011C36>;/ + <U00011C38>..<U00011C45>;<U00011C50>..<U00011C6C>;/ + <U00011C70>..<U00011C8F>;<U00011C92>..<U00011CA7>;/ + <U00011CA9>..<U00011CB6>;<U00011D00>..<U00011D06>;/ + <U00011D08>..<U00011D09>;<U00011D0B>..<U00011D36>;<U00011D3A>;/ + <U00011D3C>..<U00011D3D>;<U00011D3F>..<U00011D47>;/ + <U00011D50>..<U00011D59>;<U00011D60>..<U00011D65>;/ + <U00011D67>..<U00011D68>;<U00011D6A>..<U00011D8E>;/ + <U00011D90>..<U00011D91>;<U00011D93>..<U00011D98>;/ + <U00011DA0>..<U00011DA9>;<U00011EE0>..<U00011EF8>;/ + <U00011F00>..<U00011F10>;<U00011F12>..<U00011F3A>;/ + <U00011F3E>..<U00011F5A>;<U00011FB0>;<U00011FC0>..<U00011FF1>;/ + <U00011FFF>..<U00012399>;<U00012400>..<U0001246E>;/ + <U00012470>..<U00012474>;<U00012480>..<U00012543>;/ + <U00012F90>..<U00012FF2>;<U00013000>..<U00013455>;/ + <U00013460>..<U000143FA>;<U00014400>..<U00014646>;/ + <U00016100>..<U00016139>;<U00016800>..<U00016A38>;/ + <U00016A40>..<U00016A5E>;<U00016A60>..<U00016A69>;/ + <U00016A6E>..<U00016ABE>;<U00016AC0>..<U00016AC9>;/ + <U00016AD0>..<U00016AED>;<U00016AF0>..<U00016AF5>;/ + <U00016B00>..<U00016B45>;<U00016B50>..<U00016B59>;/ + <U00016B5B>..<U00016B61>;<U00016B63>..<U00016B77>;/ + <U00016B7D>..<U00016B8F>;<U00016D40>..<U00016D79>;/ <U00016E40>..<U00016E9A>;<U00016F00>..<U00016F4A>;/ <U00016F4F>..<U00016F87>;<U00016F8F>..<U00016F9F>;/ <U00016FE0>..<U00016FE4>;<U00016FF0>..<U00016FF1>;/ <U00017000>..<U000187F7>;<U00018800>..<U00018CD5>;/ - <U00018D00>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ + <U00018CFF>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ <U0001AFF5>..<U0001AFFB>;<U0001AFFD>..<U0001AFFE>;/ <U0001B000>..<U0001B122>;<U0001B132>;<U0001B150>..<U0001B152>;/ <U0001B155>;<U0001B164>..<U0001B167>;<U0001B170>..<U0001B2FB>;/ <U0001BC00>..<U0001BC6A>;<U0001BC70>..<U0001BC7C>;/ <U0001BC80>..<U0001BC88>;<U0001BC90>..<U0001BC99>;/ - <U0001BC9C>..<U0001BCA3>;<U0001CF00>..<U0001CF2D>;/ + <U0001BC9C>..<U0001BCA3>;<U0001CC00>..<U0001CCF9>;/ + <U0001CD00>..<U0001CEB3>;<U0001CF00>..<U0001CF2D>;/ <U0001CF30>..<U0001CF46>;<U0001CF50>..<U0001CFC3>;/ <U0001D000>..<U0001D0F5>;<U0001D100>..<U0001D126>;/ <U0001D129>..<U0001D1EA>;<U0001D200>..<U0001D245>;/ @@ -871,16 +903,16 @@ graph / <U0001E100>..<U0001E12C>;<U0001E130>..<U0001E13D>;/ <U0001E140>..<U0001E149>;<U0001E14E>..<U0001E14F>;/ <U0001E290>..<U0001E2AE>;<U0001E2C0>..<U0001E2F9>;<U0001E2FF>;/ - <U0001E4D0>..<U0001E4F9>;<U0001E7E0>..<U0001E7E6>;/ - <U0001E7E8>..<U0001E7EB>;<U0001E7ED>..<U0001E7EE>;/ - <U0001E7F0>..<U0001E7FE>;<U0001E800>..<U0001E8C4>;/ - <U0001E8C7>..<U0001E8D6>;<U0001E900>..<U0001E94B>;/ - <U0001E950>..<U0001E959>;<U0001E95E>..<U0001E95F>;/ - <U0001EC71>..<U0001ECB4>;<U0001ED01>..<U0001ED3D>;/ - <U0001EE00>..<U0001EE03>;<U0001EE05>..<U0001EE1F>;/ - <U0001EE21>..<U0001EE22>;<U0001EE24>;<U0001EE27>;/ - <U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;<U0001EE39>;/ - <U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ + <U0001E4D0>..<U0001E4F9>;<U0001E5D0>..<U0001E5FA>;<U0001E5FF>;/ + <U0001E7E0>..<U0001E7E6>;<U0001E7E8>..<U0001E7EB>;/ + <U0001E7ED>..<U0001E7EE>;<U0001E7F0>..<U0001E7FE>;/ + <U0001E800>..<U0001E8C4>;<U0001E8C7>..<U0001E8D6>;/ + <U0001E900>..<U0001E94B>;<U0001E950>..<U0001E959>;/ + <U0001E95E>..<U0001E95F>;<U0001EC71>..<U0001ECB4>;/ + <U0001ED01>..<U0001ED3D>;<U0001EE00>..<U0001EE03>;/ + <U0001EE05>..<U0001EE1F>;<U0001EE21>..<U0001EE22>;<U0001EE24>;/ + <U0001EE27>;<U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;/ + <U0001EE39>;<U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ <U0001EE4D>..<U0001EE4F>;<U0001EE51>..<U0001EE52>;<U0001EE54>;/ <U0001EE57>;<U0001EE59>;<U0001EE5B>;<U0001EE5D>;<U0001EE5F>;/ <U0001EE61>..<U0001EE62>;<U0001EE64>;<U0001EE67>..<U0001EE6A>;/ @@ -900,19 +932,19 @@ graph / <U0001F7E0>..<U0001F7EB>;<U0001F7F0>;<U0001F800>..<U0001F80B>;/ <U0001F810>..<U0001F847>;<U0001F850>..<U0001F859>;/ <U0001F860>..<U0001F887>;<U0001F890>..<U0001F8AD>;/ - <U0001F8B0>..<U0001F8B1>;<U0001F900>..<U0001FA53>;/ - <U0001FA60>..<U0001FA6D>;<U0001FA70>..<U0001FA7C>;/ - <U0001FA80>..<U0001FA88>;<U0001FA90>..<U0001FABD>;/ - <U0001FABF>..<U0001FAC5>;<U0001FACE>..<U0001FADB>;/ - <U0001FAE0>..<U0001FAE8>;<U0001FAF0>..<U0001FAF8>;/ - <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBCA>;/ - <U0001FBF0>..<U0001FBF9>;<U00020000>..<U0002A6DF>;/ - <U0002A700>..<U0002B739>;<U0002B740>..<U0002B81D>;/ - <U0002B820>..<U0002CEA1>;<U0002CEB0>..<U0002EBE0>;/ - <U0002EBF0>..<U0002EE5D>;<U0002F800>..<U0002FA1D>;/ - <U00030000>..<U0003134A>;<U00031350>..<U000323AF>;<U000E0001>;/ - <U000E0020>..<U000E007F>;<U000E0100>..<U000E01EF>;/ - <U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD> + <U0001F8B0>..<U0001F8BB>;<U0001F8C0>..<U0001F8C1>;/ + <U0001F900>..<U0001FA53>;<U0001FA60>..<U0001FA6D>;/ + <U0001FA70>..<U0001FA7C>;<U0001FA80>..<U0001FA89>;/ + <U0001FA8F>..<U0001FAC6>;<U0001FACE>..<U0001FADC>;/ + <U0001FADF>..<U0001FAE9>;<U0001FAF0>..<U0001FAF8>;/ + <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBF9>;/ + <U00020000>..<U0002A6DF>;<U0002A700>..<U0002B739>;/ + <U0002B740>..<U0002B81D>;<U0002B820>..<U0002CEA1>;/ + <U0002CEB0>..<U0002EBE0>;<U0002EBF0>..<U0002EE5D>;/ + <U0002F800>..<U0002FA1D>;<U00030000>..<U0003134A>;/ + <U00031350>..<U000323AF>;<U000E0001>;<U000E0020>..<U000E007F>;/ + <U000E0100>..<U000E01EF>;<U000F0000>..<U000FFFFD>;/ + <U00100000>..<U0010FFFD> print / <U0020>..<U007E>;<U00A0>..<U0377>;<U037A>..<U037F>;<U0384>..<U038A>;/ @@ -921,7 +953,7 @@ print / <U05EF>..<U05F4>;<U0600>..<U070D>;<U070F>..<U074A>;<U074D>..<U07B1>;/ <U07C0>..<U07FA>;<U07FD>..<U082D>;<U0830>..<U083E>;<U0840>..<U085B>;/ <U085E>;<U0860>..<U086A>;<U0870>..<U088E>;<U0890>..<U0891>;/ - <U0898>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;<U0993>..<U09A8>;/ + <U0897>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;<U0993>..<U09A8>;/ <U09AA>..<U09B0>;<U09B2>;<U09B6>..<U09B9>;<U09BC>..<U09C4>;/ <U09C7>..<U09C8>;<U09CB>..<U09CE>;<U09D7>;<U09DC>..<U09DD>;/ <U09DF>..<U09E3>;<U09E6>..<U09FE>;<U0A01>..<U0A03>;<U0A05>..<U0A0A>;/ @@ -967,38 +999,38 @@ print / <U1930>..<U193B>;<U1940>;<U1944>..<U196D>;<U1970>..<U1974>;/ <U1980>..<U19AB>;<U19B0>..<U19C9>;<U19D0>..<U19DA>;<U19DE>..<U1A1B>;/ <U1A1E>..<U1A5E>;<U1A60>..<U1A7C>;<U1A7F>..<U1A89>;<U1A90>..<U1A99>;/ - <U1AA0>..<U1AAD>;<U1AB0>..<U1ACE>;<U1B00>..<U1B4C>;<U1B50>..<U1B7E>;/ - <U1B80>..<U1BF3>;<U1BFC>..<U1C37>;<U1C3B>..<U1C49>;<U1C4D>..<U1C88>;/ - <U1C90>..<U1CBA>;<U1CBD>..<U1CC7>;<U1CD0>..<U1CFA>;<U1D00>..<U1F15>;/ - <U1F18>..<U1F1D>;<U1F20>..<U1F45>;<U1F48>..<U1F4D>;<U1F50>..<U1F57>;/ - <U1F59>;<U1F5B>;<U1F5D>;<U1F5F>..<U1F7D>;<U1F80>..<U1FB4>;/ - <U1FB6>..<U1FC4>;<U1FC6>..<U1FD3>;<U1FD6>..<U1FDB>;<U1FDD>..<U1FEF>;/ - <U1FF2>..<U1FF4>;<U1FF6>..<U1FFE>;<U2000>..<U2027>;<U202A>..<U2064>;/ - <U2066>..<U2071>;<U2074>..<U208E>;<U2090>..<U209C>;<U20A0>..<U20C0>;/ - <U20D0>..<U20F0>;<U2100>..<U218B>;<U2190>..<U2426>;<U2440>..<U244A>;/ - <U2460>..<U2B73>;<U2B76>..<U2B95>;<U2B97>..<U2CF3>;<U2CF9>..<U2D25>;/ - <U2D27>;<U2D2D>;<U2D30>..<U2D67>;<U2D6F>..<U2D70>;<U2D7F>..<U2D96>;/ - <U2DA0>..<U2DA6>;<U2DA8>..<U2DAE>;<U2DB0>..<U2DB6>;<U2DB8>..<U2DBE>;/ - <U2DC0>..<U2DC6>;<U2DC8>..<U2DCE>;<U2DD0>..<U2DD6>;<U2DD8>..<U2DDE>;/ - <U2DE0>..<U2E5D>;<U2E80>..<U2E99>;<U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;/ - <U2FF0>..<U303F>;<U3041>..<U3096>;<U3099>..<U30FF>;<U3105>..<U312F>;/ - <U3131>..<U318E>;<U3190>..<U31E3>;<U31EF>..<U321E>;<U3220>..<UA48C>;/ - <UA490>..<UA4C6>;<UA4D0>..<UA62B>;<UA640>..<UA6F7>;<UA700>..<UA7CA>;/ - <UA7D0>..<UA7D1>;<UA7D3>;<UA7D5>..<UA7D9>;<UA7F2>..<UA82C>;/ - <UA830>..<UA839>;<UA840>..<UA877>;<UA880>..<UA8C5>;<UA8CE>..<UA8D9>;/ - <UA8E0>..<UA953>;<UA95F>..<UA97C>;<UA980>..<UA9CD>;<UA9CF>..<UA9D9>;/ - <UA9DE>..<UA9FE>;<UAA00>..<UAA36>;<UAA40>..<UAA4D>;<UAA50>..<UAA59>;/ - <UAA5C>..<UAAC2>;<UAADB>..<UAAF6>;<UAB01>..<UAB06>;<UAB09>..<UAB0E>;/ - <UAB11>..<UAB16>;<UAB20>..<UAB26>;<UAB28>..<UAB2E>;<UAB30>..<UAB6B>;/ - <UAB70>..<UABED>;<UABF0>..<UABF9>;<UAC00>..<UD7A3>;<UD7B0>..<UD7C6>;/ - <UD7CB>..<UD7FB>;<UE000>..<UFA6D>;<UFA70>..<UFAD9>;<UFB00>..<UFB06>;/ - <UFB13>..<UFB17>;<UFB1D>..<UFB36>;<UFB38>..<UFB3C>;<UFB3E>;/ - <UFB40>..<UFB41>;<UFB43>..<UFB44>;<UFB46>..<UFBC2>;<UFBD3>..<UFD8F>;/ - <UFD92>..<UFDC7>;<UFDCF>;<UFDF0>..<UFE19>;<UFE20>..<UFE52>;/ - <UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFE70>..<UFE74>;<UFE76>..<UFEFC>;/ - <UFEFF>;<UFF01>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;/ - <UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;/ - <UFFF9>..<UFFFD>;<U00010000>..<U0001000B>;<U0001000D>..<U00010026>;/ + <U1AA0>..<U1AAD>;<U1AB0>..<U1ACE>;<U1B00>..<U1B4C>;<U1B4E>..<U1BF3>;/ + <U1BFC>..<U1C37>;<U1C3B>..<U1C49>;<U1C4D>..<U1C8A>;<U1C90>..<U1CBA>;/ + <U1CBD>..<U1CC7>;<U1CD0>..<U1CFA>;<U1D00>..<U1F15>;<U1F18>..<U1F1D>;/ + <U1F20>..<U1F45>;<U1F48>..<U1F4D>;<U1F50>..<U1F57>;<U1F59>;<U1F5B>;/ + <U1F5D>;<U1F5F>..<U1F7D>;<U1F80>..<U1FB4>;<U1FB6>..<U1FC4>;/ + <U1FC6>..<U1FD3>;<U1FD6>..<U1FDB>;<U1FDD>..<U1FEF>;<U1FF2>..<U1FF4>;/ + <U1FF6>..<U1FFE>;<U2000>..<U2027>;<U202A>..<U2064>;<U2066>..<U2071>;/ + <U2074>..<U208E>;<U2090>..<U209C>;<U20A0>..<U20C0>;<U20D0>..<U20F0>;/ + <U2100>..<U218B>;<U2190>..<U2429>;<U2440>..<U244A>;<U2460>..<U2B73>;/ + <U2B76>..<U2B95>;<U2B97>..<U2CF3>;<U2CF9>..<U2D25>;<U2D27>;<U2D2D>;/ + <U2D30>..<U2D67>;<U2D6F>..<U2D70>;<U2D7F>..<U2D96>;<U2DA0>..<U2DA6>;/ + <U2DA8>..<U2DAE>;<U2DB0>..<U2DB6>;<U2DB8>..<U2DBE>;<U2DC0>..<U2DC6>;/ + <U2DC8>..<U2DCE>;<U2DD0>..<U2DD6>;<U2DD8>..<U2DDE>;<U2DE0>..<U2E5D>;/ + <U2E80>..<U2E99>;<U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;<U2FF0>..<U303F>;/ + <U3041>..<U3096>;<U3099>..<U30FF>;<U3105>..<U312F>;<U3131>..<U318E>;/ + <U3190>..<U31E5>;<U31EF>..<U321E>;<U3220>..<UA48C>;<UA490>..<UA4C6>;/ + <UA4D0>..<UA62B>;<UA640>..<UA6F7>;<UA700>..<UA7CD>;<UA7D0>..<UA7D1>;/ + <UA7D3>;<UA7D5>..<UA7DC>;<UA7F2>..<UA82C>;<UA830>..<UA839>;/ + <UA840>..<UA877>;<UA880>..<UA8C5>;<UA8CE>..<UA8D9>;<UA8E0>..<UA953>;/ + <UA95F>..<UA97C>;<UA980>..<UA9CD>;<UA9CF>..<UA9D9>;<UA9DE>..<UA9FE>;/ + <UAA00>..<UAA36>;<UAA40>..<UAA4D>;<UAA50>..<UAA59>;<UAA5C>..<UAAC2>;/ + <UAADB>..<UAAF6>;<UAB01>..<UAB06>;<UAB09>..<UAB0E>;<UAB11>..<UAB16>;/ + <UAB20>..<UAB26>;<UAB28>..<UAB2E>;<UAB30>..<UAB6B>;<UAB70>..<UABED>;/ + <UABF0>..<UABF9>;<UAC00>..<UD7A3>;<UD7B0>..<UD7C6>;<UD7CB>..<UD7FB>;/ + <UE000>..<UFA6D>;<UFA70>..<UFAD9>;<UFB00>..<UFB06>;<UFB13>..<UFB17>;/ + <UFB1D>..<UFB36>;<UFB38>..<UFB3C>;<UFB3E>;<UFB40>..<UFB41>;/ + <UFB43>..<UFB44>;<UFB46>..<UFBC2>;<UFBD3>..<UFD8F>;<UFD92>..<UFDC7>;/ + <UFDCF>;<UFDF0>..<UFE19>;<UFE20>..<UFE52>;<UFE54>..<UFE66>;/ + <UFE68>..<UFE6B>;<UFE70>..<UFE74>;<UFE76>..<UFEFC>;<UFEFF>;/ + <UFF01>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;<UFFD2>..<UFFD7>;/ + <UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;/ + <U00010000>..<U0001000B>;<U0001000D>..<U00010026>;/ <U00010028>..<U0001003A>;<U0001003C>..<U0001003D>;/ <U0001003F>..<U0001004D>;<U00010050>..<U0001005D>;/ <U00010080>..<U000100FA>;<U00010100>..<U00010102>;/ @@ -1015,94 +1047,105 @@ print / <U0001057C>..<U0001058A>;<U0001058C>..<U00010592>;/ <U00010594>..<U00010595>;<U00010597>..<U000105A1>;/ <U000105A3>..<U000105B1>;<U000105B3>..<U000105B9>;/ - <U000105BB>..<U000105BC>;<U00010600>..<U00010736>;/ - <U00010740>..<U00010755>;<U00010760>..<U00010767>;/ - <U00010780>..<U00010785>;<U00010787>..<U000107B0>;/ - <U000107B2>..<U000107BA>;<U00010800>..<U00010805>;<U00010808>;/ - <U0001080A>..<U00010835>;<U00010837>..<U00010838>;<U0001083C>;/ - <U0001083F>..<U00010855>;<U00010857>..<U0001089E>;/ - <U000108A7>..<U000108AF>;<U000108E0>..<U000108F2>;/ - <U000108F4>..<U000108F5>;<U000108FB>..<U0001091B>;/ - <U0001091F>..<U00010939>;<U0001093F>;<U00010980>..<U000109B7>;/ - <U000109BC>..<U000109CF>;<U000109D2>..<U00010A03>;/ - <U00010A05>..<U00010A06>;<U00010A0C>..<U00010A13>;/ - <U00010A15>..<U00010A17>;<U00010A19>..<U00010A35>;/ - <U00010A38>..<U00010A3A>;<U00010A3F>..<U00010A48>;/ - <U00010A50>..<U00010A58>;<U00010A60>..<U00010A9F>;/ - <U00010AC0>..<U00010AE6>;<U00010AEB>..<U00010AF6>;/ - <U00010B00>..<U00010B35>;<U00010B39>..<U00010B55>;/ - <U00010B58>..<U00010B72>;<U00010B78>..<U00010B91>;/ - <U00010B99>..<U00010B9C>;<U00010BA9>..<U00010BAF>;/ - <U00010C00>..<U00010C48>;<U00010C80>..<U00010CB2>;/ - <U00010CC0>..<U00010CF2>;<U00010CFA>..<U00010D27>;/ - <U00010D30>..<U00010D39>;<U00010E60>..<U00010E7E>;/ + <U000105BB>..<U000105BC>;<U000105C0>..<U000105F3>;/ + <U00010600>..<U00010736>;<U00010740>..<U00010755>;/ + <U00010760>..<U00010767>;<U00010780>..<U00010785>;/ + <U00010787>..<U000107B0>;<U000107B2>..<U000107BA>;/ + <U00010800>..<U00010805>;<U00010808>;<U0001080A>..<U00010835>;/ + <U00010837>..<U00010838>;<U0001083C>;<U0001083F>..<U00010855>;/ + <U00010857>..<U0001089E>;<U000108A7>..<U000108AF>;/ + <U000108E0>..<U000108F2>;<U000108F4>..<U000108F5>;/ + <U000108FB>..<U0001091B>;<U0001091F>..<U00010939>;<U0001093F>;/ + <U00010980>..<U000109B7>;<U000109BC>..<U000109CF>;/ + <U000109D2>..<U00010A03>;<U00010A05>..<U00010A06>;/ + <U00010A0C>..<U00010A13>;<U00010A15>..<U00010A17>;/ + <U00010A19>..<U00010A35>;<U00010A38>..<U00010A3A>;/ + <U00010A3F>..<U00010A48>;<U00010A50>..<U00010A58>;/ + <U00010A60>..<U00010A9F>;<U00010AC0>..<U00010AE6>;/ + <U00010AEB>..<U00010AF6>;<U00010B00>..<U00010B35>;/ + <U00010B39>..<U00010B55>;<U00010B58>..<U00010B72>;/ + <U00010B78>..<U00010B91>;<U00010B99>..<U00010B9C>;/ + <U00010BA9>..<U00010BAF>;<U00010C00>..<U00010C48>;/ + <U00010C80>..<U00010CB2>;<U00010CC0>..<U00010CF2>;/ + <U00010CFA>..<U00010D27>;<U00010D30>..<U00010D39>;/ + <U00010D40>..<U00010D65>;<U00010D69>..<U00010D85>;/ + <U00010D8E>..<U00010D8F>;<U00010E60>..<U00010E7E>;/ <U00010E80>..<U00010EA9>;<U00010EAB>..<U00010EAD>;/ - <U00010EB0>..<U00010EB1>;<U00010EFD>..<U00010F27>;/ - <U00010F30>..<U00010F59>;<U00010F70>..<U00010F89>;/ - <U00010FB0>..<U00010FCB>;<U00010FE0>..<U00010FF6>;/ - <U00011000>..<U0001104D>;<U00011052>..<U00011075>;/ - <U0001107F>..<U000110C2>;<U000110CD>;<U000110D0>..<U000110E8>;/ - <U000110F0>..<U000110F9>;<U00011100>..<U00011134>;/ - <U00011136>..<U00011147>;<U00011150>..<U00011176>;/ - <U00011180>..<U000111DF>;<U000111E1>..<U000111F4>;/ - <U00011200>..<U00011211>;<U00011213>..<U00011241>;/ - <U00011280>..<U00011286>;<U00011288>;<U0001128A>..<U0001128D>;/ - <U0001128F>..<U0001129D>;<U0001129F>..<U000112A9>;/ - <U000112B0>..<U000112EA>;<U000112F0>..<U000112F9>;/ - <U00011300>..<U00011303>;<U00011305>..<U0001130C>;/ - <U0001130F>..<U00011310>;<U00011313>..<U00011328>;/ - <U0001132A>..<U00011330>;<U00011332>..<U00011333>;/ - <U00011335>..<U00011339>;<U0001133B>..<U00011344>;/ - <U00011347>..<U00011348>;<U0001134B>..<U0001134D>;<U00011350>;/ - <U00011357>;<U0001135D>..<U00011363>;<U00011366>..<U0001136C>;/ - <U00011370>..<U00011374>;<U00011400>..<U0001145B>;/ + <U00010EB0>..<U00010EB1>;<U00010EC2>..<U00010EC4>;/ + <U00010EFC>..<U00010F27>;<U00010F30>..<U00010F59>;/ + <U00010F70>..<U00010F89>;<U00010FB0>..<U00010FCB>;/ + <U00010FE0>..<U00010FF6>;<U00011000>..<U0001104D>;/ + <U00011052>..<U00011075>;<U0001107F>..<U000110C2>;<U000110CD>;/ + <U000110D0>..<U000110E8>;<U000110F0>..<U000110F9>;/ + <U00011100>..<U00011134>;<U00011136>..<U00011147>;/ + <U00011150>..<U00011176>;<U00011180>..<U000111DF>;/ + <U000111E1>..<U000111F4>;<U00011200>..<U00011211>;/ + <U00011213>..<U00011241>;<U00011280>..<U00011286>;<U00011288>;/ + <U0001128A>..<U0001128D>;<U0001128F>..<U0001129D>;/ + <U0001129F>..<U000112A9>;<U000112B0>..<U000112EA>;/ + <U000112F0>..<U000112F9>;<U00011300>..<U00011303>;/ + <U00011305>..<U0001130C>;<U0001130F>..<U00011310>;/ + <U00011313>..<U00011328>;<U0001132A>..<U00011330>;/ + <U00011332>..<U00011333>;<U00011335>..<U00011339>;/ + <U0001133B>..<U00011344>;<U00011347>..<U00011348>;/ + <U0001134B>..<U0001134D>;<U00011350>;<U00011357>;/ + <U0001135D>..<U00011363>;<U00011366>..<U0001136C>;/ + <U00011370>..<U00011374>;<U00011380>..<U00011389>;<U0001138B>;/ + <U0001138E>;<U00011390>..<U000113B5>;<U000113B7>..<U000113C0>;/ + <U000113C2>;<U000113C5>;<U000113C7>..<U000113CA>;/ + <U000113CC>..<U000113D5>;<U000113D7>..<U000113D8>;/ + <U000113E1>..<U000113E2>;<U00011400>..<U0001145B>;/ <U0001145D>..<U00011461>;<U00011480>..<U000114C7>;/ <U000114D0>..<U000114D9>;<U00011580>..<U000115B5>;/ <U000115B8>..<U000115DD>;<U00011600>..<U00011644>;/ <U00011650>..<U00011659>;<U00011660>..<U0001166C>;/ <U00011680>..<U000116B9>;<U000116C0>..<U000116C9>;/ - <U00011700>..<U0001171A>;<U0001171D>..<U0001172B>;/ - <U00011730>..<U00011746>;<U00011800>..<U0001183B>;/ - <U000118A0>..<U000118F2>;<U000118FF>..<U00011906>;<U00011909>;/ - <U0001190C>..<U00011913>;<U00011915>..<U00011916>;/ - <U00011918>..<U00011935>;<U00011937>..<U00011938>;/ - <U0001193B>..<U00011946>;<U00011950>..<U00011959>;/ - <U000119A0>..<U000119A7>;<U000119AA>..<U000119D7>;/ - <U000119DA>..<U000119E4>;<U00011A00>..<U00011A47>;/ - <U00011A50>..<U00011AA2>;<U00011AB0>..<U00011AF8>;/ - <U00011B00>..<U00011B09>;<U00011C00>..<U00011C08>;/ - <U00011C0A>..<U00011C36>;<U00011C38>..<U00011C45>;/ - <U00011C50>..<U00011C6C>;<U00011C70>..<U00011C8F>;/ - <U00011C92>..<U00011CA7>;<U00011CA9>..<U00011CB6>;/ - <U00011D00>..<U00011D06>;<U00011D08>..<U00011D09>;/ - <U00011D0B>..<U00011D36>;<U00011D3A>;<U00011D3C>..<U00011D3D>;/ - <U00011D3F>..<U00011D47>;<U00011D50>..<U00011D59>;/ - <U00011D60>..<U00011D65>;<U00011D67>..<U00011D68>;/ - <U00011D6A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ - <U00011D93>..<U00011D98>;<U00011DA0>..<U00011DA9>;/ - <U00011EE0>..<U00011EF8>;<U00011F00>..<U00011F10>;/ - <U00011F12>..<U00011F3A>;<U00011F3E>..<U00011F59>;<U00011FB0>;/ - <U00011FC0>..<U00011FF1>;<U00011FFF>..<U00012399>;/ - <U00012400>..<U0001246E>;<U00012470>..<U00012474>;/ - <U00012480>..<U00012543>;<U00012F90>..<U00012FF2>;/ - <U00013000>..<U00013455>;<U00014400>..<U00014646>;/ - <U00016800>..<U00016A38>;<U00016A40>..<U00016A5E>;/ - <U00016A60>..<U00016A69>;<U00016A6E>..<U00016ABE>;/ - <U00016AC0>..<U00016AC9>;<U00016AD0>..<U00016AED>;/ - <U00016AF0>..<U00016AF5>;<U00016B00>..<U00016B45>;/ - <U00016B50>..<U00016B59>;<U00016B5B>..<U00016B61>;/ - <U00016B63>..<U00016B77>;<U00016B7D>..<U00016B8F>;/ + <U000116D0>..<U000116E3>;<U00011700>..<U0001171A>;/ + <U0001171D>..<U0001172B>;<U00011730>..<U00011746>;/ + <U00011800>..<U0001183B>;<U000118A0>..<U000118F2>;/ + <U000118FF>..<U00011906>;<U00011909>;<U0001190C>..<U00011913>;/ + <U00011915>..<U00011916>;<U00011918>..<U00011935>;/ + <U00011937>..<U00011938>;<U0001193B>..<U00011946>;/ + <U00011950>..<U00011959>;<U000119A0>..<U000119A7>;/ + <U000119AA>..<U000119D7>;<U000119DA>..<U000119E4>;/ + <U00011A00>..<U00011A47>;<U00011A50>..<U00011AA2>;/ + <U00011AB0>..<U00011AF8>;<U00011B00>..<U00011B09>;/ + <U00011BC0>..<U00011BE1>;<U00011BF0>..<U00011BF9>;/ + <U00011C00>..<U00011C08>;<U00011C0A>..<U00011C36>;/ + <U00011C38>..<U00011C45>;<U00011C50>..<U00011C6C>;/ + <U00011C70>..<U00011C8F>;<U00011C92>..<U00011CA7>;/ + <U00011CA9>..<U00011CB6>;<U00011D00>..<U00011D06>;/ + <U00011D08>..<U00011D09>;<U00011D0B>..<U00011D36>;<U00011D3A>;/ + <U00011D3C>..<U00011D3D>;<U00011D3F>..<U00011D47>;/ + <U00011D50>..<U00011D59>;<U00011D60>..<U00011D65>;/ + <U00011D67>..<U00011D68>;<U00011D6A>..<U00011D8E>;/ + <U00011D90>..<U00011D91>;<U00011D93>..<U00011D98>;/ + <U00011DA0>..<U00011DA9>;<U00011EE0>..<U00011EF8>;/ + <U00011F00>..<U00011F10>;<U00011F12>..<U00011F3A>;/ + <U00011F3E>..<U00011F5A>;<U00011FB0>;<U00011FC0>..<U00011FF1>;/ + <U00011FFF>..<U00012399>;<U00012400>..<U0001246E>;/ + <U00012470>..<U00012474>;<U00012480>..<U00012543>;/ + <U00012F90>..<U00012FF2>;<U00013000>..<U00013455>;/ + <U00013460>..<U000143FA>;<U00014400>..<U00014646>;/ + <U00016100>..<U00016139>;<U00016800>..<U00016A38>;/ + <U00016A40>..<U00016A5E>;<U00016A60>..<U00016A69>;/ + <U00016A6E>..<U00016ABE>;<U00016AC0>..<U00016AC9>;/ + <U00016AD0>..<U00016AED>;<U00016AF0>..<U00016AF5>;/ + <U00016B00>..<U00016B45>;<U00016B50>..<U00016B59>;/ + <U00016B5B>..<U00016B61>;<U00016B63>..<U00016B77>;/ + <U00016B7D>..<U00016B8F>;<U00016D40>..<U00016D79>;/ <U00016E40>..<U00016E9A>;<U00016F00>..<U00016F4A>;/ <U00016F4F>..<U00016F87>;<U00016F8F>..<U00016F9F>;/ <U00016FE0>..<U00016FE4>;<U00016FF0>..<U00016FF1>;/ <U00017000>..<U000187F7>;<U00018800>..<U00018CD5>;/ - <U00018D00>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ + <U00018CFF>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ <U0001AFF5>..<U0001AFFB>;<U0001AFFD>..<U0001AFFE>;/ <U0001B000>..<U0001B122>;<U0001B132>;<U0001B150>..<U0001B152>;/ <U0001B155>;<U0001B164>..<U0001B167>;<U0001B170>..<U0001B2FB>;/ <U0001BC00>..<U0001BC6A>;<U0001BC70>..<U0001BC7C>;/ <U0001BC80>..<U0001BC88>;<U0001BC90>..<U0001BC99>;/ - <U0001BC9C>..<U0001BCA3>;<U0001CF00>..<U0001CF2D>;/ + <U0001BC9C>..<U0001BCA3>;<U0001CC00>..<U0001CCF9>;/ + <U0001CD00>..<U0001CEB3>;<U0001CF00>..<U0001CF2D>;/ <U0001CF30>..<U0001CF46>;<U0001CF50>..<U0001CFC3>;/ <U0001D000>..<U0001D0F5>;<U0001D100>..<U0001D126>;/ <U0001D129>..<U0001D1EA>;<U0001D200>..<U0001D245>;/ @@ -1125,16 +1168,16 @@ print / <U0001E100>..<U0001E12C>;<U0001E130>..<U0001E13D>;/ <U0001E140>..<U0001E149>;<U0001E14E>..<U0001E14F>;/ <U0001E290>..<U0001E2AE>;<U0001E2C0>..<U0001E2F9>;<U0001E2FF>;/ - <U0001E4D0>..<U0001E4F9>;<U0001E7E0>..<U0001E7E6>;/ - <U0001E7E8>..<U0001E7EB>;<U0001E7ED>..<U0001E7EE>;/ - <U0001E7F0>..<U0001E7FE>;<U0001E800>..<U0001E8C4>;/ - <U0001E8C7>..<U0001E8D6>;<U0001E900>..<U0001E94B>;/ - <U0001E950>..<U0001E959>;<U0001E95E>..<U0001E95F>;/ - <U0001EC71>..<U0001ECB4>;<U0001ED01>..<U0001ED3D>;/ - <U0001EE00>..<U0001EE03>;<U0001EE05>..<U0001EE1F>;/ - <U0001EE21>..<U0001EE22>;<U0001EE24>;<U0001EE27>;/ - <U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;<U0001EE39>;/ - <U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ + <U0001E4D0>..<U0001E4F9>;<U0001E5D0>..<U0001E5FA>;<U0001E5FF>;/ + <U0001E7E0>..<U0001E7E6>;<U0001E7E8>..<U0001E7EB>;/ + <U0001E7ED>..<U0001E7EE>;<U0001E7F0>..<U0001E7FE>;/ + <U0001E800>..<U0001E8C4>;<U0001E8C7>..<U0001E8D6>;/ + <U0001E900>..<U0001E94B>;<U0001E950>..<U0001E959>;/ + <U0001E95E>..<U0001E95F>;<U0001EC71>..<U0001ECB4>;/ + <U0001ED01>..<U0001ED3D>;<U0001EE00>..<U0001EE03>;/ + <U0001EE05>..<U0001EE1F>;<U0001EE21>..<U0001EE22>;<U0001EE24>;/ + <U0001EE27>;<U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;/ + <U0001EE39>;<U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ <U0001EE4D>..<U0001EE4F>;<U0001EE51>..<U0001EE52>;<U0001EE54>;/ <U0001EE57>;<U0001EE59>;<U0001EE5B>;<U0001EE5D>;<U0001EE5F>;/ <U0001EE61>..<U0001EE62>;<U0001EE64>;<U0001EE67>..<U0001EE6A>;/ @@ -1154,19 +1197,19 @@ print / <U0001F7E0>..<U0001F7EB>;<U0001F7F0>;<U0001F800>..<U0001F80B>;/ <U0001F810>..<U0001F847>;<U0001F850>..<U0001F859>;/ <U0001F860>..<U0001F887>;<U0001F890>..<U0001F8AD>;/ - <U0001F8B0>..<U0001F8B1>;<U0001F900>..<U0001FA53>;/ - <U0001FA60>..<U0001FA6D>;<U0001FA70>..<U0001FA7C>;/ - <U0001FA80>..<U0001FA88>;<U0001FA90>..<U0001FABD>;/ - <U0001FABF>..<U0001FAC5>;<U0001FACE>..<U0001FADB>;/ - <U0001FAE0>..<U0001FAE8>;<U0001FAF0>..<U0001FAF8>;/ - <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBCA>;/ - <U0001FBF0>..<U0001FBF9>;<U00020000>..<U0002A6DF>;/ - <U0002A700>..<U0002B739>;<U0002B740>..<U0002B81D>;/ - <U0002B820>..<U0002CEA1>;<U0002CEB0>..<U0002EBE0>;/ - <U0002EBF0>..<U0002EE5D>;<U0002F800>..<U0002FA1D>;/ - <U00030000>..<U0003134A>;<U00031350>..<U000323AF>;<U000E0001>;/ - <U000E0020>..<U000E007F>;<U000E0100>..<U000E01EF>;/ - <U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD> + <U0001F8B0>..<U0001F8BB>;<U0001F8C0>..<U0001F8C1>;/ + <U0001F900>..<U0001FA53>;<U0001FA60>..<U0001FA6D>;/ + <U0001FA70>..<U0001FA7C>;<U0001FA80>..<U0001FA89>;/ + <U0001FA8F>..<U0001FAC6>;<U0001FACE>..<U0001FADC>;/ + <U0001FADF>..<U0001FAE9>;<U0001FAF0>..<U0001FAF8>;/ + <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBF9>;/ + <U00020000>..<U0002A6DF>;<U0002A700>..<U0002B739>;/ + <U0002B740>..<U0002B81D>;<U0002B820>..<U0002CEA1>;/ + <U0002CEB0>..<U0002EBE0>;<U0002EBF0>..<U0002EE5D>;/ + <U0002F800>..<U0002FA1D>;<U00030000>..<U0003134A>;/ + <U00031350>..<U000323AF>;<U000E0001>;<U000E0020>..<U000E007F>;/ + <U000E0100>..<U000E01EF>;<U000F0000>..<U000FFFFD>;/ + <U00100000>..<U0010FFFD> % The "xdigit" class must only contain the BASIC LATIN digits and A-F, a-f, % says ISO C 99 (sections 7.25.2.1.12 and 6.4.4.1). @@ -1210,402 +1253,414 @@ toupper / (<U0177>,<U0176>);(<U017A>,<U0179>);(<U017C>,<U017B>);(<U017E>,<U017D>);/ (<U017F>,<U0053>);(<U0180>,<U0243>);(<U0183>,<U0182>);(<U0185>,<U0184>);/ (<U0188>,<U0187>);(<U018C>,<U018B>);(<U0192>,<U0191>);(<U0195>,<U01F6>);/ - (<U0199>,<U0198>);(<U019A>,<U023D>);(<U019E>,<U0220>);(<U01A1>,<U01A0>);/ - (<U01A3>,<U01A2>);(<U01A5>,<U01A4>);(<U01A8>,<U01A7>);(<U01AD>,<U01AC>);/ - (<U01B0>,<U01AF>);(<U01B4>,<U01B3>);(<U01B6>,<U01B5>);(<U01B9>,<U01B8>);/ - (<U01BD>,<U01BC>);(<U01BF>,<U01F7>);(<U01C5>,<U01C4>);(<U01C6>,<U01C4>);/ - (<U01C8>,<U01C7>);(<U01C9>,<U01C7>);(<U01CB>,<U01CA>);(<U01CC>,<U01CA>);/ - (<U01CE>,<U01CD>);(<U01D0>,<U01CF>);(<U01D2>,<U01D1>);(<U01D4>,<U01D3>);/ - (<U01D6>,<U01D5>);(<U01D8>,<U01D7>);(<U01DA>,<U01D9>);(<U01DC>,<U01DB>);/ - (<U01DD>,<U018E>);(<U01DF>,<U01DE>);(<U01E1>,<U01E0>);(<U01E3>,<U01E2>);/ - (<U01E5>,<U01E4>);(<U01E7>,<U01E6>);(<U01E9>,<U01E8>);(<U01EB>,<U01EA>);/ - (<U01ED>,<U01EC>);(<U01EF>,<U01EE>);(<U01F2>,<U01F1>);(<U01F3>,<U01F1>);/ - (<U01F5>,<U01F4>);(<U01F9>,<U01F8>);(<U01FB>,<U01FA>);(<U01FD>,<U01FC>);/ - (<U01FF>,<U01FE>);(<U0201>,<U0200>);(<U0203>,<U0202>);(<U0205>,<U0204>);/ - (<U0207>,<U0206>);(<U0209>,<U0208>);(<U020B>,<U020A>);(<U020D>,<U020C>);/ - (<U020F>,<U020E>);(<U0211>,<U0210>);(<U0213>,<U0212>);(<U0215>,<U0214>);/ - (<U0217>,<U0216>);(<U0219>,<U0218>);(<U021B>,<U021A>);(<U021D>,<U021C>);/ - (<U021F>,<U021E>);(<U0223>,<U0222>);(<U0225>,<U0224>);(<U0227>,<U0226>);/ - (<U0229>,<U0228>);(<U022B>,<U022A>);(<U022D>,<U022C>);(<U022F>,<U022E>);/ - (<U0231>,<U0230>);(<U0233>,<U0232>);(<U023C>,<U023B>);(<U023F>,<U2C7E>);/ - (<U0240>,<U2C7F>);(<U0242>,<U0241>);(<U0247>,<U0246>);(<U0249>,<U0248>);/ - (<U024B>,<U024A>);(<U024D>,<U024C>);(<U024F>,<U024E>);(<U0250>,<U2C6F>);/ - (<U0251>,<U2C6D>);(<U0252>,<U2C70>);(<U0253>,<U0181>);(<U0254>,<U0186>);/ - (<U0256>,<U0189>);(<U0257>,<U018A>);(<U0259>,<U018F>);(<U025B>,<U0190>);/ - (<U025C>,<UA7AB>);(<U0260>,<U0193>);(<U0261>,<UA7AC>);(<U0263>,<U0194>);/ - (<U0265>,<UA78D>);(<U0266>,<UA7AA>);(<U0268>,<U0197>);(<U0269>,<U0196>);/ - (<U026A>,<UA7AE>);(<U026B>,<U2C62>);(<U026C>,<UA7AD>);(<U026F>,<U019C>);/ - (<U0271>,<U2C6E>);(<U0272>,<U019D>);(<U0275>,<U019F>);(<U027D>,<U2C64>);/ - (<U0280>,<U01A6>);(<U0282>,<UA7C5>);(<U0283>,<U01A9>);(<U0287>,<UA7B1>);/ - (<U0288>,<U01AE>);(<U0289>,<U0244>);(<U028A>,<U01B1>);(<U028B>,<U01B2>);/ - (<U028C>,<U0245>);(<U0292>,<U01B7>);(<U029D>,<UA7B2>);(<U029E>,<UA7B0>);/ - (<U0345>,<U0399>);(<U0371>,<U0370>);(<U0373>,<U0372>);(<U0377>,<U0376>);/ - (<U037B>,<U03FD>);(<U037C>,<U03FE>);(<U037D>,<U03FF>);(<U03AC>,<U0386>);/ - (<U03AD>,<U0388>);(<U03AE>,<U0389>);(<U03AF>,<U038A>);(<U03B1>,<U0391>);/ - (<U03B2>,<U0392>);(<U03B3>,<U0393>);(<U03B4>,<U0394>);(<U03B5>,<U0395>);/ - (<U03B6>,<U0396>);(<U03B7>,<U0397>);(<U03B8>,<U0398>);(<U03B9>,<U0399>);/ - (<U03BA>,<U039A>);(<U03BB>,<U039B>);(<U03BC>,<U039C>);(<U03BD>,<U039D>);/ - (<U03BE>,<U039E>);(<U03BF>,<U039F>);(<U03C0>,<U03A0>);(<U03C1>,<U03A1>);/ - (<U03C2>,<U03A3>);(<U03C3>,<U03A3>);(<U03C4>,<U03A4>);(<U03C5>,<U03A5>);/ - (<U03C6>,<U03A6>);(<U03C7>,<U03A7>);(<U03C8>,<U03A8>);(<U03C9>,<U03A9>);/ - (<U03CA>,<U03AA>);(<U03CB>,<U03AB>);(<U03CC>,<U038C>);(<U03CD>,<U038E>);/ - (<U03CE>,<U038F>);(<U03D0>,<U0392>);(<U03D1>,<U0398>);(<U03D5>,<U03A6>);/ - (<U03D6>,<U03A0>);(<U03D7>,<U03CF>);(<U03D9>,<U03D8>);(<U03DB>,<U03DA>);/ - (<U03DD>,<U03DC>);(<U03DF>,<U03DE>);(<U03E1>,<U03E0>);(<U03E3>,<U03E2>);/ - (<U03E5>,<U03E4>);(<U03E7>,<U03E6>);(<U03E9>,<U03E8>);(<U03EB>,<U03EA>);/ - (<U03ED>,<U03EC>);(<U03EF>,<U03EE>);(<U03F0>,<U039A>);(<U03F1>,<U03A1>);/ - (<U03F2>,<U03F9>);(<U03F3>,<U037F>);(<U03F5>,<U0395>);(<U03F8>,<U03F7>);/ - (<U03FB>,<U03FA>);(<U0430>,<U0410>);(<U0431>,<U0411>);(<U0432>,<U0412>);/ - (<U0433>,<U0413>);(<U0434>,<U0414>);(<U0435>,<U0415>);(<U0436>,<U0416>);/ - (<U0437>,<U0417>);(<U0438>,<U0418>);(<U0439>,<U0419>);(<U043A>,<U041A>);/ - (<U043B>,<U041B>);(<U043C>,<U041C>);(<U043D>,<U041D>);(<U043E>,<U041E>);/ - (<U043F>,<U041F>);(<U0440>,<U0420>);(<U0441>,<U0421>);(<U0442>,<U0422>);/ - (<U0443>,<U0423>);(<U0444>,<U0424>);(<U0445>,<U0425>);(<U0446>,<U0426>);/ - (<U0447>,<U0427>);(<U0448>,<U0428>);(<U0449>,<U0429>);(<U044A>,<U042A>);/ - (<U044B>,<U042B>);(<U044C>,<U042C>);(<U044D>,<U042D>);(<U044E>,<U042E>);/ - (<U044F>,<U042F>);(<U0450>,<U0400>);(<U0451>,<U0401>);(<U0452>,<U0402>);/ - (<U0453>,<U0403>);(<U0454>,<U0404>);(<U0455>,<U0405>);(<U0456>,<U0406>);/ - (<U0457>,<U0407>);(<U0458>,<U0408>);(<U0459>,<U0409>);(<U045A>,<U040A>);/ - (<U045B>,<U040B>);(<U045C>,<U040C>);(<U045D>,<U040D>);(<U045E>,<U040E>);/ - (<U045F>,<U040F>);(<U0461>,<U0460>);(<U0463>,<U0462>);(<U0465>,<U0464>);/ - (<U0467>,<U0466>);(<U0469>,<U0468>);(<U046B>,<U046A>);(<U046D>,<U046C>);/ - (<U046F>,<U046E>);(<U0471>,<U0470>);(<U0473>,<U0472>);(<U0475>,<U0474>);/ - (<U0477>,<U0476>);(<U0479>,<U0478>);(<U047B>,<U047A>);(<U047D>,<U047C>);/ - (<U047F>,<U047E>);(<U0481>,<U0480>);(<U048B>,<U048A>);(<U048D>,<U048C>);/ - (<U048F>,<U048E>);(<U0491>,<U0490>);(<U0493>,<U0492>);(<U0495>,<U0494>);/ - (<U0497>,<U0496>);(<U0499>,<U0498>);(<U049B>,<U049A>);(<U049D>,<U049C>);/ - (<U049F>,<U049E>);(<U04A1>,<U04A0>);(<U04A3>,<U04A2>);(<U04A5>,<U04A4>);/ - (<U04A7>,<U04A6>);(<U04A9>,<U04A8>);(<U04AB>,<U04AA>);(<U04AD>,<U04AC>);/ - (<U04AF>,<U04AE>);(<U04B1>,<U04B0>);(<U04B3>,<U04B2>);(<U04B5>,<U04B4>);/ - (<U04B7>,<U04B6>);(<U04B9>,<U04B8>);(<U04BB>,<U04BA>);(<U04BD>,<U04BC>);/ - (<U04BF>,<U04BE>);(<U04C2>,<U04C1>);(<U04C4>,<U04C3>);(<U04C6>,<U04C5>);/ - (<U04C8>,<U04C7>);(<U04CA>,<U04C9>);(<U04CC>,<U04CB>);(<U04CE>,<U04CD>);/ - (<U04CF>,<U04C0>);(<U04D1>,<U04D0>);(<U04D3>,<U04D2>);(<U04D5>,<U04D4>);/ - (<U04D7>,<U04D6>);(<U04D9>,<U04D8>);(<U04DB>,<U04DA>);(<U04DD>,<U04DC>);/ - (<U04DF>,<U04DE>);(<U04E1>,<U04E0>);(<U04E3>,<U04E2>);(<U04E5>,<U04E4>);/ - (<U04E7>,<U04E6>);(<U04E9>,<U04E8>);(<U04EB>,<U04EA>);(<U04ED>,<U04EC>);/ - (<U04EF>,<U04EE>);(<U04F1>,<U04F0>);(<U04F3>,<U04F2>);(<U04F5>,<U04F4>);/ - (<U04F7>,<U04F6>);(<U04F9>,<U04F8>);(<U04FB>,<U04FA>);(<U04FD>,<U04FC>);/ - (<U04FF>,<U04FE>);(<U0501>,<U0500>);(<U0503>,<U0502>);(<U0505>,<U0504>);/ - (<U0507>,<U0506>);(<U0509>,<U0508>);(<U050B>,<U050A>);(<U050D>,<U050C>);/ - (<U050F>,<U050E>);(<U0511>,<U0510>);(<U0513>,<U0512>);(<U0515>,<U0514>);/ - (<U0517>,<U0516>);(<U0519>,<U0518>);(<U051B>,<U051A>);(<U051D>,<U051C>);/ - (<U051F>,<U051E>);(<U0521>,<U0520>);(<U0523>,<U0522>);(<U0525>,<U0524>);/ - (<U0527>,<U0526>);(<U0529>,<U0528>);(<U052B>,<U052A>);(<U052D>,<U052C>);/ - (<U052F>,<U052E>);(<U0561>,<U0531>);(<U0562>,<U0532>);(<U0563>,<U0533>);/ - (<U0564>,<U0534>);(<U0565>,<U0535>);(<U0566>,<U0536>);(<U0567>,<U0537>);/ - (<U0568>,<U0538>);(<U0569>,<U0539>);(<U056A>,<U053A>);(<U056B>,<U053B>);/ - (<U056C>,<U053C>);(<U056D>,<U053D>);(<U056E>,<U053E>);(<U056F>,<U053F>);/ - (<U0570>,<U0540>);(<U0571>,<U0541>);(<U0572>,<U0542>);(<U0573>,<U0543>);/ - (<U0574>,<U0544>);(<U0575>,<U0545>);(<U0576>,<U0546>);(<U0577>,<U0547>);/ - (<U0578>,<U0548>);(<U0579>,<U0549>);(<U057A>,<U054A>);(<U057B>,<U054B>);/ - (<U057C>,<U054C>);(<U057D>,<U054D>);(<U057E>,<U054E>);(<U057F>,<U054F>);/ - (<U0580>,<U0550>);(<U0581>,<U0551>);(<U0582>,<U0552>);(<U0583>,<U0553>);/ - (<U0584>,<U0554>);(<U0585>,<U0555>);(<U0586>,<U0556>);(<U10D0>,<U1C90>);/ - (<U10D1>,<U1C91>);(<U10D2>,<U1C92>);(<U10D3>,<U1C93>);(<U10D4>,<U1C94>);/ - (<U10D5>,<U1C95>);(<U10D6>,<U1C96>);(<U10D7>,<U1C97>);(<U10D8>,<U1C98>);/ - (<U10D9>,<U1C99>);(<U10DA>,<U1C9A>);(<U10DB>,<U1C9B>);(<U10DC>,<U1C9C>);/ - (<U10DD>,<U1C9D>);(<U10DE>,<U1C9E>);(<U10DF>,<U1C9F>);(<U10E0>,<U1CA0>);/ - (<U10E1>,<U1CA1>);(<U10E2>,<U1CA2>);(<U10E3>,<U1CA3>);(<U10E4>,<U1CA4>);/ - (<U10E5>,<U1CA5>);(<U10E6>,<U1CA6>);(<U10E7>,<U1CA7>);(<U10E8>,<U1CA8>);/ - (<U10E9>,<U1CA9>);(<U10EA>,<U1CAA>);(<U10EB>,<U1CAB>);(<U10EC>,<U1CAC>);/ - (<U10ED>,<U1CAD>);(<U10EE>,<U1CAE>);(<U10EF>,<U1CAF>);(<U10F0>,<U1CB0>);/ - (<U10F1>,<U1CB1>);(<U10F2>,<U1CB2>);(<U10F3>,<U1CB3>);(<U10F4>,<U1CB4>);/ - (<U10F5>,<U1CB5>);(<U10F6>,<U1CB6>);(<U10F7>,<U1CB7>);(<U10F8>,<U1CB8>);/ - (<U10F9>,<U1CB9>);(<U10FA>,<U1CBA>);(<U10FD>,<U1CBD>);(<U10FE>,<U1CBE>);/ - (<U10FF>,<U1CBF>);(<U13F8>,<U13F0>);(<U13F9>,<U13F1>);(<U13FA>,<U13F2>);/ - (<U13FB>,<U13F3>);(<U13FC>,<U13F4>);(<U13FD>,<U13F5>);(<U1C80>,<U0412>);/ - (<U1C81>,<U0414>);(<U1C82>,<U041E>);(<U1C83>,<U0421>);(<U1C84>,<U0422>);/ - (<U1C85>,<U0422>);(<U1C86>,<U042A>);(<U1C87>,<U0462>);(<U1C88>,<UA64A>);/ - (<U1D79>,<UA77D>);(<U1D7D>,<U2C63>);(<U1D8E>,<UA7C6>);(<U1E01>,<U1E00>);/ - (<U1E03>,<U1E02>);(<U1E05>,<U1E04>);(<U1E07>,<U1E06>);(<U1E09>,<U1E08>);/ - (<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);/ - (<U1E13>,<U1E12>);(<U1E15>,<U1E14>);(<U1E17>,<U1E16>);(<U1E19>,<U1E18>);/ - (<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);/ - (<U1E23>,<U1E22>);(<U1E25>,<U1E24>);(<U1E27>,<U1E26>);(<U1E29>,<U1E28>);/ - (<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);/ - (<U1E33>,<U1E32>);(<U1E35>,<U1E34>);(<U1E37>,<U1E36>);(<U1E39>,<U1E38>);/ - (<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);/ - (<U1E43>,<U1E42>);(<U1E45>,<U1E44>);(<U1E47>,<U1E46>);(<U1E49>,<U1E48>);/ - (<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);/ - (<U1E53>,<U1E52>);(<U1E55>,<U1E54>);(<U1E57>,<U1E56>);(<U1E59>,<U1E58>);/ - (<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);/ - (<U1E63>,<U1E62>);(<U1E65>,<U1E64>);(<U1E67>,<U1E66>);(<U1E69>,<U1E68>);/ - (<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);/ - (<U1E73>,<U1E72>);(<U1E75>,<U1E74>);(<U1E77>,<U1E76>);(<U1E79>,<U1E78>);/ - (<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);/ - (<U1E83>,<U1E82>);(<U1E85>,<U1E84>);(<U1E87>,<U1E86>);(<U1E89>,<U1E88>);/ - (<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);/ - (<U1E93>,<U1E92>);(<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);/ - (<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);/ - (<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);/ - (<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);/ - (<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);/ - (<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);/ - (<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);/ - (<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);/ - (<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);/ - (<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);/ - (<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);/ - (<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);/ - (<U1EFB>,<U1EFA>);(<U1EFD>,<U1EFC>);(<U1EFF>,<U1EFE>);(<U1F00>,<U1F08>);/ - (<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);/ - (<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);/ - (<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);/ - (<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);/ - (<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);/ - (<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);/ - (<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);/ - (<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);/ - (<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);/ - (<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);/ - (<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);/ - (<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);/ - (<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);/ - (<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);/ - (<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);/ - (<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);/ - (<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);/ - (<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);/ - (<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);/ - (<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);/ - (<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);/ - (<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);/ - (<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);/ - (<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);/ - (<U214E>,<U2132>);(<U2170>,<U2160>);(<U2171>,<U2161>);(<U2172>,<U2162>);/ - (<U2173>,<U2163>);(<U2174>,<U2164>);(<U2175>,<U2165>);(<U2176>,<U2166>);/ - (<U2177>,<U2167>);(<U2178>,<U2168>);(<U2179>,<U2169>);(<U217A>,<U216A>);/ - (<U217B>,<U216B>);(<U217C>,<U216C>);(<U217D>,<U216D>);(<U217E>,<U216E>);/ - (<U217F>,<U216F>);(<U2184>,<U2183>);(<U24D0>,<U24B6>);(<U24D1>,<U24B7>);/ - (<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);(<U24D5>,<U24BB>);/ - (<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);(<U24D9>,<U24BF>);/ - (<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);(<U24DD>,<U24C3>);/ - (<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);(<U24E1>,<U24C7>);/ - (<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);(<U24E5>,<U24CB>);/ - (<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);(<U24E9>,<U24CF>);/ - (<U2C30>,<U2C00>);(<U2C31>,<U2C01>);(<U2C32>,<U2C02>);(<U2C33>,<U2C03>);/ - (<U2C34>,<U2C04>);(<U2C35>,<U2C05>);(<U2C36>,<U2C06>);(<U2C37>,<U2C07>);/ - (<U2C38>,<U2C08>);(<U2C39>,<U2C09>);(<U2C3A>,<U2C0A>);(<U2C3B>,<U2C0B>);/ - (<U2C3C>,<U2C0C>);(<U2C3D>,<U2C0D>);(<U2C3E>,<U2C0E>);(<U2C3F>,<U2C0F>);/ - (<U2C40>,<U2C10>);(<U2C41>,<U2C11>);(<U2C42>,<U2C12>);(<U2C43>,<U2C13>);/ - (<U2C44>,<U2C14>);(<U2C45>,<U2C15>);(<U2C46>,<U2C16>);(<U2C47>,<U2C17>);/ - (<U2C48>,<U2C18>);(<U2C49>,<U2C19>);(<U2C4A>,<U2C1A>);(<U2C4B>,<U2C1B>);/ - (<U2C4C>,<U2C1C>);(<U2C4D>,<U2C1D>);(<U2C4E>,<U2C1E>);(<U2C4F>,<U2C1F>);/ - (<U2C50>,<U2C20>);(<U2C51>,<U2C21>);(<U2C52>,<U2C22>);(<U2C53>,<U2C23>);/ - (<U2C54>,<U2C24>);(<U2C55>,<U2C25>);(<U2C56>,<U2C26>);(<U2C57>,<U2C27>);/ - (<U2C58>,<U2C28>);(<U2C59>,<U2C29>);(<U2C5A>,<U2C2A>);(<U2C5B>,<U2C2B>);/ - (<U2C5C>,<U2C2C>);(<U2C5D>,<U2C2D>);(<U2C5E>,<U2C2E>);(<U2C5F>,<U2C2F>);/ - (<U2C61>,<U2C60>);(<U2C65>,<U023A>);(<U2C66>,<U023E>);(<U2C68>,<U2C67>);/ - (<U2C6A>,<U2C69>);(<U2C6C>,<U2C6B>);(<U2C73>,<U2C72>);(<U2C76>,<U2C75>);/ - (<U2C81>,<U2C80>);(<U2C83>,<U2C82>);(<U2C85>,<U2C84>);(<U2C87>,<U2C86>);/ - (<U2C89>,<U2C88>);(<U2C8B>,<U2C8A>);(<U2C8D>,<U2C8C>);(<U2C8F>,<U2C8E>);/ - (<U2C91>,<U2C90>);(<U2C93>,<U2C92>);(<U2C95>,<U2C94>);(<U2C97>,<U2C96>);/ - (<U2C99>,<U2C98>);(<U2C9B>,<U2C9A>);(<U2C9D>,<U2C9C>);(<U2C9F>,<U2C9E>);/ - (<U2CA1>,<U2CA0>);(<U2CA3>,<U2CA2>);(<U2CA5>,<U2CA4>);(<U2CA7>,<U2CA6>);/ - (<U2CA9>,<U2CA8>);(<U2CAB>,<U2CAA>);(<U2CAD>,<U2CAC>);(<U2CAF>,<U2CAE>);/ - (<U2CB1>,<U2CB0>);(<U2CB3>,<U2CB2>);(<U2CB5>,<U2CB4>);(<U2CB7>,<U2CB6>);/ - (<U2CB9>,<U2CB8>);(<U2CBB>,<U2CBA>);(<U2CBD>,<U2CBC>);(<U2CBF>,<U2CBE>);/ - (<U2CC1>,<U2CC0>);(<U2CC3>,<U2CC2>);(<U2CC5>,<U2CC4>);(<U2CC7>,<U2CC6>);/ - (<U2CC9>,<U2CC8>);(<U2CCB>,<U2CCA>);(<U2CCD>,<U2CCC>);(<U2CCF>,<U2CCE>);/ - (<U2CD1>,<U2CD0>);(<U2CD3>,<U2CD2>);(<U2CD5>,<U2CD4>);(<U2CD7>,<U2CD6>);/ - (<U2CD9>,<U2CD8>);(<U2CDB>,<U2CDA>);(<U2CDD>,<U2CDC>);(<U2CDF>,<U2CDE>);/ - (<U2CE1>,<U2CE0>);(<U2CE3>,<U2CE2>);(<U2CEC>,<U2CEB>);(<U2CEE>,<U2CED>);/ - (<U2CF3>,<U2CF2>);(<U2D00>,<U10A0>);(<U2D01>,<U10A1>);(<U2D02>,<U10A2>);/ - (<U2D03>,<U10A3>);(<U2D04>,<U10A4>);(<U2D05>,<U10A5>);(<U2D06>,<U10A6>);/ - (<U2D07>,<U10A7>);(<U2D08>,<U10A8>);(<U2D09>,<U10A9>);(<U2D0A>,<U10AA>);/ - (<U2D0B>,<U10AB>);(<U2D0C>,<U10AC>);(<U2D0D>,<U10AD>);(<U2D0E>,<U10AE>);/ - (<U2D0F>,<U10AF>);(<U2D10>,<U10B0>);(<U2D11>,<U10B1>);(<U2D12>,<U10B2>);/ - (<U2D13>,<U10B3>);(<U2D14>,<U10B4>);(<U2D15>,<U10B5>);(<U2D16>,<U10B6>);/ - (<U2D17>,<U10B7>);(<U2D18>,<U10B8>);(<U2D19>,<U10B9>);(<U2D1A>,<U10BA>);/ - (<U2D1B>,<U10BB>);(<U2D1C>,<U10BC>);(<U2D1D>,<U10BD>);(<U2D1E>,<U10BE>);/ - (<U2D1F>,<U10BF>);(<U2D20>,<U10C0>);(<U2D21>,<U10C1>);(<U2D22>,<U10C2>);/ - (<U2D23>,<U10C3>);(<U2D24>,<U10C4>);(<U2D25>,<U10C5>);(<U2D27>,<U10C7>);/ - (<U2D2D>,<U10CD>);(<UA641>,<UA640>);(<UA643>,<UA642>);(<UA645>,<UA644>);/ - (<UA647>,<UA646>);(<UA649>,<UA648>);(<UA64B>,<UA64A>);(<UA64D>,<UA64C>);/ - (<UA64F>,<UA64E>);(<UA651>,<UA650>);(<UA653>,<UA652>);(<UA655>,<UA654>);/ - (<UA657>,<UA656>);(<UA659>,<UA658>);(<UA65B>,<UA65A>);(<UA65D>,<UA65C>);/ - (<UA65F>,<UA65E>);(<UA661>,<UA660>);(<UA663>,<UA662>);(<UA665>,<UA664>);/ - (<UA667>,<UA666>);(<UA669>,<UA668>);(<UA66B>,<UA66A>);(<UA66D>,<UA66C>);/ - (<UA681>,<UA680>);(<UA683>,<UA682>);(<UA685>,<UA684>);(<UA687>,<UA686>);/ - (<UA689>,<UA688>);(<UA68B>,<UA68A>);(<UA68D>,<UA68C>);(<UA68F>,<UA68E>);/ - (<UA691>,<UA690>);(<UA693>,<UA692>);(<UA695>,<UA694>);(<UA697>,<UA696>);/ - (<UA699>,<UA698>);(<UA69B>,<UA69A>);(<UA723>,<UA722>);(<UA725>,<UA724>);/ - (<UA727>,<UA726>);(<UA729>,<UA728>);(<UA72B>,<UA72A>);(<UA72D>,<UA72C>);/ - (<UA72F>,<UA72E>);(<UA733>,<UA732>);(<UA735>,<UA734>);(<UA737>,<UA736>);/ - (<UA739>,<UA738>);(<UA73B>,<UA73A>);(<UA73D>,<UA73C>);(<UA73F>,<UA73E>);/ - (<UA741>,<UA740>);(<UA743>,<UA742>);(<UA745>,<UA744>);(<UA747>,<UA746>);/ - (<UA749>,<UA748>);(<UA74B>,<UA74A>);(<UA74D>,<UA74C>);(<UA74F>,<UA74E>);/ - (<UA751>,<UA750>);(<UA753>,<UA752>);(<UA755>,<UA754>);(<UA757>,<UA756>);/ - (<UA759>,<UA758>);(<UA75B>,<UA75A>);(<UA75D>,<UA75C>);(<UA75F>,<UA75E>);/ - (<UA761>,<UA760>);(<UA763>,<UA762>);(<UA765>,<UA764>);(<UA767>,<UA766>);/ - (<UA769>,<UA768>);(<UA76B>,<UA76A>);(<UA76D>,<UA76C>);(<UA76F>,<UA76E>);/ - (<UA77A>,<UA779>);(<UA77C>,<UA77B>);(<UA77F>,<UA77E>);(<UA781>,<UA780>);/ - (<UA783>,<UA782>);(<UA785>,<UA784>);(<UA787>,<UA786>);(<UA78C>,<UA78B>);/ - (<UA791>,<UA790>);(<UA793>,<UA792>);(<UA794>,<UA7C4>);(<UA797>,<UA796>);/ - (<UA799>,<UA798>);(<UA79B>,<UA79A>);(<UA79D>,<UA79C>);(<UA79F>,<UA79E>);/ - (<UA7A1>,<UA7A0>);(<UA7A3>,<UA7A2>);(<UA7A5>,<UA7A4>);(<UA7A7>,<UA7A6>);/ - (<UA7A9>,<UA7A8>);(<UA7B5>,<UA7B4>);(<UA7B7>,<UA7B6>);(<UA7B9>,<UA7B8>);/ - (<UA7BB>,<UA7BA>);(<UA7BD>,<UA7BC>);(<UA7BF>,<UA7BE>);(<UA7C1>,<UA7C0>);/ - (<UA7C3>,<UA7C2>);(<UA7C8>,<UA7C7>);(<UA7CA>,<UA7C9>);(<UA7D1>,<UA7D0>);/ - (<UA7D7>,<UA7D6>);(<UA7D9>,<UA7D8>);(<UA7F6>,<UA7F5>);(<UAB53>,<UA7B3>);/ - (<UAB70>,<U13A0>);(<UAB71>,<U13A1>);(<UAB72>,<U13A2>);(<UAB73>,<U13A3>);/ - (<UAB74>,<U13A4>);(<UAB75>,<U13A5>);(<UAB76>,<U13A6>);(<UAB77>,<U13A7>);/ - (<UAB78>,<U13A8>);(<UAB79>,<U13A9>);(<UAB7A>,<U13AA>);(<UAB7B>,<U13AB>);/ - (<UAB7C>,<U13AC>);(<UAB7D>,<U13AD>);(<UAB7E>,<U13AE>);(<UAB7F>,<U13AF>);/ - (<UAB80>,<U13B0>);(<UAB81>,<U13B1>);(<UAB82>,<U13B2>);(<UAB83>,<U13B3>);/ - (<UAB84>,<U13B4>);(<UAB85>,<U13B5>);(<UAB86>,<U13B6>);(<UAB87>,<U13B7>);/ - (<UAB88>,<U13B8>);(<UAB89>,<U13B9>);(<UAB8A>,<U13BA>);(<UAB8B>,<U13BB>);/ - (<UAB8C>,<U13BC>);(<UAB8D>,<U13BD>);(<UAB8E>,<U13BE>);(<UAB8F>,<U13BF>);/ - (<UAB90>,<U13C0>);(<UAB91>,<U13C1>);(<UAB92>,<U13C2>);(<UAB93>,<U13C3>);/ - (<UAB94>,<U13C4>);(<UAB95>,<U13C5>);(<UAB96>,<U13C6>);(<UAB97>,<U13C7>);/ - (<UAB98>,<U13C8>);(<UAB99>,<U13C9>);(<UAB9A>,<U13CA>);(<UAB9B>,<U13CB>);/ - (<UAB9C>,<U13CC>);(<UAB9D>,<U13CD>);(<UAB9E>,<U13CE>);(<UAB9F>,<U13CF>);/ - (<UABA0>,<U13D0>);(<UABA1>,<U13D1>);(<UABA2>,<U13D2>);(<UABA3>,<U13D3>);/ - (<UABA4>,<U13D4>);(<UABA5>,<U13D5>);(<UABA6>,<U13D6>);(<UABA7>,<U13D7>);/ - (<UABA8>,<U13D8>);(<UABA9>,<U13D9>);(<UABAA>,<U13DA>);(<UABAB>,<U13DB>);/ - (<UABAC>,<U13DC>);(<UABAD>,<U13DD>);(<UABAE>,<U13DE>);(<UABAF>,<U13DF>);/ - (<UABB0>,<U13E0>);(<UABB1>,<U13E1>);(<UABB2>,<U13E2>);(<UABB3>,<U13E3>);/ - (<UABB4>,<U13E4>);(<UABB5>,<U13E5>);(<UABB6>,<U13E6>);(<UABB7>,<U13E7>);/ - (<UABB8>,<U13E8>);(<UABB9>,<U13E9>);(<UABBA>,<U13EA>);(<UABBB>,<U13EB>);/ - (<UABBC>,<U13EC>);(<UABBD>,<U13ED>);(<UABBE>,<U13EE>);(<UABBF>,<U13EF>);/ - (<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);(<UFF44>,<UFF24>);/ - (<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);(<UFF48>,<UFF28>);/ - (<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);/ - (<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);/ - (<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);(<UFF54>,<UFF34>);/ - (<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);(<UFF58>,<UFF38>);/ - (<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);(<U00010428>,<U00010400>);/ - (<U00010429>,<U00010401>);(<U0001042A>,<U00010402>);/ - (<U0001042B>,<U00010403>);(<U0001042C>,<U00010404>);/ - (<U0001042D>,<U00010405>);(<U0001042E>,<U00010406>);/ - (<U0001042F>,<U00010407>);(<U00010430>,<U00010408>);/ - (<U00010431>,<U00010409>);(<U00010432>,<U0001040A>);/ - (<U00010433>,<U0001040B>);(<U00010434>,<U0001040C>);/ - (<U00010435>,<U0001040D>);(<U00010436>,<U0001040E>);/ - (<U00010437>,<U0001040F>);(<U00010438>,<U00010410>);/ - (<U00010439>,<U00010411>);(<U0001043A>,<U00010412>);/ - (<U0001043B>,<U00010413>);(<U0001043C>,<U00010414>);/ - (<U0001043D>,<U00010415>);(<U0001043E>,<U00010416>);/ - (<U0001043F>,<U00010417>);(<U00010440>,<U00010418>);/ - (<U00010441>,<U00010419>);(<U00010442>,<U0001041A>);/ - (<U00010443>,<U0001041B>);(<U00010444>,<U0001041C>);/ - (<U00010445>,<U0001041D>);(<U00010446>,<U0001041E>);/ - (<U00010447>,<U0001041F>);(<U00010448>,<U00010420>);/ - (<U00010449>,<U00010421>);(<U0001044A>,<U00010422>);/ - (<U0001044B>,<U00010423>);(<U0001044C>,<U00010424>);/ - (<U0001044D>,<U00010425>);(<U0001044E>,<U00010426>);/ - (<U0001044F>,<U00010427>);(<U000104D8>,<U000104B0>);/ - (<U000104D9>,<U000104B1>);(<U000104DA>,<U000104B2>);/ - (<U000104DB>,<U000104B3>);(<U000104DC>,<U000104B4>);/ - (<U000104DD>,<U000104B5>);(<U000104DE>,<U000104B6>);/ - (<U000104DF>,<U000104B7>);(<U000104E0>,<U000104B8>);/ - (<U000104E1>,<U000104B9>);(<U000104E2>,<U000104BA>);/ - (<U000104E3>,<U000104BB>);(<U000104E4>,<U000104BC>);/ - (<U000104E5>,<U000104BD>);(<U000104E6>,<U000104BE>);/ - (<U000104E7>,<U000104BF>);(<U000104E8>,<U000104C0>);/ - (<U000104E9>,<U000104C1>);(<U000104EA>,<U000104C2>);/ - (<U000104EB>,<U000104C3>);(<U000104EC>,<U000104C4>);/ - (<U000104ED>,<U000104C5>);(<U000104EE>,<U000104C6>);/ - (<U000104EF>,<U000104C7>);(<U000104F0>,<U000104C8>);/ - (<U000104F1>,<U000104C9>);(<U000104F2>,<U000104CA>);/ - (<U000104F3>,<U000104CB>);(<U000104F4>,<U000104CC>);/ - (<U000104F5>,<U000104CD>);(<U000104F6>,<U000104CE>);/ - (<U000104F7>,<U000104CF>);(<U000104F8>,<U000104D0>);/ - (<U000104F9>,<U000104D1>);(<U000104FA>,<U000104D2>);/ - (<U000104FB>,<U000104D3>);(<U00010597>,<U00010570>);/ - (<U00010598>,<U00010571>);(<U00010599>,<U00010572>);/ - (<U0001059A>,<U00010573>);(<U0001059B>,<U00010574>);/ - (<U0001059C>,<U00010575>);(<U0001059D>,<U00010576>);/ - (<U0001059E>,<U00010577>);(<U0001059F>,<U00010578>);/ - (<U000105A0>,<U00010579>);(<U000105A1>,<U0001057A>);/ - (<U000105A3>,<U0001057C>);(<U000105A4>,<U0001057D>);/ - (<U000105A5>,<U0001057E>);(<U000105A6>,<U0001057F>);/ - (<U000105A7>,<U00010580>);(<U000105A8>,<U00010581>);/ - (<U000105A9>,<U00010582>);(<U000105AA>,<U00010583>);/ - (<U000105AB>,<U00010584>);(<U000105AC>,<U00010585>);/ - (<U000105AD>,<U00010586>);(<U000105AE>,<U00010587>);/ - (<U000105AF>,<U00010588>);(<U000105B0>,<U00010589>);/ - (<U000105B1>,<U0001058A>);(<U000105B3>,<U0001058C>);/ - (<U000105B4>,<U0001058D>);(<U000105B5>,<U0001058E>);/ - (<U000105B6>,<U0001058F>);(<U000105B7>,<U00010590>);/ - (<U000105B8>,<U00010591>);(<U000105B9>,<U00010592>);/ - (<U000105BB>,<U00010594>);(<U000105BC>,<U00010595>);/ - (<U00010CC0>,<U00010C80>);(<U00010CC1>,<U00010C81>);/ - (<U00010CC2>,<U00010C82>);(<U00010CC3>,<U00010C83>);/ - (<U00010CC4>,<U00010C84>);(<U00010CC5>,<U00010C85>);/ - (<U00010CC6>,<U00010C86>);(<U00010CC7>,<U00010C87>);/ - (<U00010CC8>,<U00010C88>);(<U00010CC9>,<U00010C89>);/ - (<U00010CCA>,<U00010C8A>);(<U00010CCB>,<U00010C8B>);/ - (<U00010CCC>,<U00010C8C>);(<U00010CCD>,<U00010C8D>);/ - (<U00010CCE>,<U00010C8E>);(<U00010CCF>,<U00010C8F>);/ - (<U00010CD0>,<U00010C90>);(<U00010CD1>,<U00010C91>);/ - (<U00010CD2>,<U00010C92>);(<U00010CD3>,<U00010C93>);/ - (<U00010CD4>,<U00010C94>);(<U00010CD5>,<U00010C95>);/ - (<U00010CD6>,<U00010C96>);(<U00010CD7>,<U00010C97>);/ - (<U00010CD8>,<U00010C98>);(<U00010CD9>,<U00010C99>);/ - (<U00010CDA>,<U00010C9A>);(<U00010CDB>,<U00010C9B>);/ - (<U00010CDC>,<U00010C9C>);(<U00010CDD>,<U00010C9D>);/ - (<U00010CDE>,<U00010C9E>);(<U00010CDF>,<U00010C9F>);/ - (<U00010CE0>,<U00010CA0>);(<U00010CE1>,<U00010CA1>);/ - (<U00010CE2>,<U00010CA2>);(<U00010CE3>,<U00010CA3>);/ - (<U00010CE4>,<U00010CA4>);(<U00010CE5>,<U00010CA5>);/ - (<U00010CE6>,<U00010CA6>);(<U00010CE7>,<U00010CA7>);/ - (<U00010CE8>,<U00010CA8>);(<U00010CE9>,<U00010CA9>);/ - (<U00010CEA>,<U00010CAA>);(<U00010CEB>,<U00010CAB>);/ - (<U00010CEC>,<U00010CAC>);(<U00010CED>,<U00010CAD>);/ - (<U00010CEE>,<U00010CAE>);(<U00010CEF>,<U00010CAF>);/ - (<U00010CF0>,<U00010CB0>);(<U00010CF1>,<U00010CB1>);/ - (<U00010CF2>,<U00010CB2>);(<U000118C0>,<U000118A0>);/ - (<U000118C1>,<U000118A1>);(<U000118C2>,<U000118A2>);/ - (<U000118C3>,<U000118A3>);(<U000118C4>,<U000118A4>);/ - (<U000118C5>,<U000118A5>);(<U000118C6>,<U000118A6>);/ - (<U000118C7>,<U000118A7>);(<U000118C8>,<U000118A8>);/ - (<U000118C9>,<U000118A9>);(<U000118CA>,<U000118AA>);/ - (<U000118CB>,<U000118AB>);(<U000118CC>,<U000118AC>);/ - (<U000118CD>,<U000118AD>);(<U000118CE>,<U000118AE>);/ - (<U000118CF>,<U000118AF>);(<U000118D0>,<U000118B0>);/ - (<U000118D1>,<U000118B1>);(<U000118D2>,<U000118B2>);/ - (<U000118D3>,<U000118B3>);(<U000118D4>,<U000118B4>);/ - (<U000118D5>,<U000118B5>);(<U000118D6>,<U000118B6>);/ - (<U000118D7>,<U000118B7>);(<U000118D8>,<U000118B8>);/ - (<U000118D9>,<U000118B9>);(<U000118DA>,<U000118BA>);/ - (<U000118DB>,<U000118BB>);(<U000118DC>,<U000118BC>);/ - (<U000118DD>,<U000118BD>);(<U000118DE>,<U000118BE>);/ - (<U000118DF>,<U000118BF>);(<U00016E60>,<U00016E40>);/ - (<U00016E61>,<U00016E41>);(<U00016E62>,<U00016E42>);/ - (<U00016E63>,<U00016E43>);(<U00016E64>,<U00016E44>);/ - (<U00016E65>,<U00016E45>);(<U00016E66>,<U00016E46>);/ - (<U00016E67>,<U00016E47>);(<U00016E68>,<U00016E48>);/ - (<U00016E69>,<U00016E49>);(<U00016E6A>,<U00016E4A>);/ - (<U00016E6B>,<U00016E4B>);(<U00016E6C>,<U00016E4C>);/ - (<U00016E6D>,<U00016E4D>);(<U00016E6E>,<U00016E4E>);/ - (<U00016E6F>,<U00016E4F>);(<U00016E70>,<U00016E50>);/ - (<U00016E71>,<U00016E51>);(<U00016E72>,<U00016E52>);/ - (<U00016E73>,<U00016E53>);(<U00016E74>,<U00016E54>);/ - (<U00016E75>,<U00016E55>);(<U00016E76>,<U00016E56>);/ - (<U00016E77>,<U00016E57>);(<U00016E78>,<U00016E58>);/ - (<U00016E79>,<U00016E59>);(<U00016E7A>,<U00016E5A>);/ - (<U00016E7B>,<U00016E5B>);(<U00016E7C>,<U00016E5C>);/ - (<U00016E7D>,<U00016E5D>);(<U00016E7E>,<U00016E5E>);/ - (<U00016E7F>,<U00016E5F>);(<U0001E922>,<U0001E900>);/ - (<U0001E923>,<U0001E901>);(<U0001E924>,<U0001E902>);/ - (<U0001E925>,<U0001E903>);(<U0001E926>,<U0001E904>);/ - (<U0001E927>,<U0001E905>);(<U0001E928>,<U0001E906>);/ - (<U0001E929>,<U0001E907>);(<U0001E92A>,<U0001E908>);/ - (<U0001E92B>,<U0001E909>);(<U0001E92C>,<U0001E90A>);/ - (<U0001E92D>,<U0001E90B>);(<U0001E92E>,<U0001E90C>);/ - (<U0001E92F>,<U0001E90D>);(<U0001E930>,<U0001E90E>);/ - (<U0001E931>,<U0001E90F>);(<U0001E932>,<U0001E910>);/ - (<U0001E933>,<U0001E911>);(<U0001E934>,<U0001E912>);/ - (<U0001E935>,<U0001E913>);(<U0001E936>,<U0001E914>);/ - (<U0001E937>,<U0001E915>);(<U0001E938>,<U0001E916>);/ - (<U0001E939>,<U0001E917>);(<U0001E93A>,<U0001E918>);/ - (<U0001E93B>,<U0001E919>);(<U0001E93C>,<U0001E91A>);/ - (<U0001E93D>,<U0001E91B>);(<U0001E93E>,<U0001E91C>);/ - (<U0001E93F>,<U0001E91D>);(<U0001E940>,<U0001E91E>);/ - (<U0001E941>,<U0001E91F>);(<U0001E942>,<U0001E920>);/ - (<U0001E943>,<U0001E921>) + (<U0199>,<U0198>);(<U019A>,<U023D>);(<U019B>,<UA7DC>);(<U019E>,<U0220>);/ + (<U01A1>,<U01A0>);(<U01A3>,<U01A2>);(<U01A5>,<U01A4>);(<U01A8>,<U01A7>);/ + (<U01AD>,<U01AC>);(<U01B0>,<U01AF>);(<U01B4>,<U01B3>);(<U01B6>,<U01B5>);/ + (<U01B9>,<U01B8>);(<U01BD>,<U01BC>);(<U01BF>,<U01F7>);(<U01C5>,<U01C4>);/ + (<U01C6>,<U01C4>);(<U01C8>,<U01C7>);(<U01C9>,<U01C7>);(<U01CB>,<U01CA>);/ + (<U01CC>,<U01CA>);(<U01CE>,<U01CD>);(<U01D0>,<U01CF>);(<U01D2>,<U01D1>);/ + (<U01D4>,<U01D3>);(<U01D6>,<U01D5>);(<U01D8>,<U01D7>);(<U01DA>,<U01D9>);/ + (<U01DC>,<U01DB>);(<U01DD>,<U018E>);(<U01DF>,<U01DE>);(<U01E1>,<U01E0>);/ + (<U01E3>,<U01E2>);(<U01E5>,<U01E4>);(<U01E7>,<U01E6>);(<U01E9>,<U01E8>);/ + (<U01EB>,<U01EA>);(<U01ED>,<U01EC>);(<U01EF>,<U01EE>);(<U01F2>,<U01F1>);/ + (<U01F3>,<U01F1>);(<U01F5>,<U01F4>);(<U01F9>,<U01F8>);(<U01FB>,<U01FA>);/ + (<U01FD>,<U01FC>);(<U01FF>,<U01FE>);(<U0201>,<U0200>);(<U0203>,<U0202>);/ + (<U0205>,<U0204>);(<U0207>,<U0206>);(<U0209>,<U0208>);(<U020B>,<U020A>);/ + (<U020D>,<U020C>);(<U020F>,<U020E>);(<U0211>,<U0210>);(<U0213>,<U0212>);/ + (<U0215>,<U0214>);(<U0217>,<U0216>);(<U0219>,<U0218>);(<U021B>,<U021A>);/ + (<U021D>,<U021C>);(<U021F>,<U021E>);(<U0223>,<U0222>);(<U0225>,<U0224>);/ + (<U0227>,<U0226>);(<U0229>,<U0228>);(<U022B>,<U022A>);(<U022D>,<U022C>);/ + (<U022F>,<U022E>);(<U0231>,<U0230>);(<U0233>,<U0232>);(<U023C>,<U023B>);/ + (<U023F>,<U2C7E>);(<U0240>,<U2C7F>);(<U0242>,<U0241>);(<U0247>,<U0246>);/ + (<U0249>,<U0248>);(<U024B>,<U024A>);(<U024D>,<U024C>);(<U024F>,<U024E>);/ + (<U0250>,<U2C6F>);(<U0251>,<U2C6D>);(<U0252>,<U2C70>);(<U0253>,<U0181>);/ + (<U0254>,<U0186>);(<U0256>,<U0189>);(<U0257>,<U018A>);(<U0259>,<U018F>);/ + (<U025B>,<U0190>);(<U025C>,<UA7AB>);(<U0260>,<U0193>);(<U0261>,<UA7AC>);/ + (<U0263>,<U0194>);(<U0264>,<UA7CB>);(<U0265>,<UA78D>);(<U0266>,<UA7AA>);/ + (<U0268>,<U0197>);(<U0269>,<U0196>);(<U026A>,<UA7AE>);(<U026B>,<U2C62>);/ + (<U026C>,<UA7AD>);(<U026F>,<U019C>);(<U0271>,<U2C6E>);(<U0272>,<U019D>);/ + (<U0275>,<U019F>);(<U027D>,<U2C64>);(<U0280>,<U01A6>);(<U0282>,<UA7C5>);/ + (<U0283>,<U01A9>);(<U0287>,<UA7B1>);(<U0288>,<U01AE>);(<U0289>,<U0244>);/ + (<U028A>,<U01B1>);(<U028B>,<U01B2>);(<U028C>,<U0245>);(<U0292>,<U01B7>);/ + (<U029D>,<UA7B2>);(<U029E>,<UA7B0>);(<U0345>,<U0399>);(<U0371>,<U0370>);/ + (<U0373>,<U0372>);(<U0377>,<U0376>);(<U037B>,<U03FD>);(<U037C>,<U03FE>);/ + (<U037D>,<U03FF>);(<U03AC>,<U0386>);(<U03AD>,<U0388>);(<U03AE>,<U0389>);/ + (<U03AF>,<U038A>);(<U03B1>,<U0391>);(<U03B2>,<U0392>);(<U03B3>,<U0393>);/ + (<U03B4>,<U0394>);(<U03B5>,<U0395>);(<U03B6>,<U0396>);(<U03B7>,<U0397>);/ + (<U03B8>,<U0398>);(<U03B9>,<U0399>);(<U03BA>,<U039A>);(<U03BB>,<U039B>);/ + (<U03BC>,<U039C>);(<U03BD>,<U039D>);(<U03BE>,<U039E>);(<U03BF>,<U039F>);/ + (<U03C0>,<U03A0>);(<U03C1>,<U03A1>);(<U03C2>,<U03A3>);(<U03C3>,<U03A3>);/ + (<U03C4>,<U03A4>);(<U03C5>,<U03A5>);(<U03C6>,<U03A6>);(<U03C7>,<U03A7>);/ + (<U03C8>,<U03A8>);(<U03C9>,<U03A9>);(<U03CA>,<U03AA>);(<U03CB>,<U03AB>);/ + (<U03CC>,<U038C>);(<U03CD>,<U038E>);(<U03CE>,<U038F>);(<U03D0>,<U0392>);/ + (<U03D1>,<U0398>);(<U03D5>,<U03A6>);(<U03D6>,<U03A0>);(<U03D7>,<U03CF>);/ + (<U03D9>,<U03D8>);(<U03DB>,<U03DA>);(<U03DD>,<U03DC>);(<U03DF>,<U03DE>);/ + (<U03E1>,<U03E0>);(<U03E3>,<U03E2>);(<U03E5>,<U03E4>);(<U03E7>,<U03E6>);/ + (<U03E9>,<U03E8>);(<U03EB>,<U03EA>);(<U03ED>,<U03EC>);(<U03EF>,<U03EE>);/ + (<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03F9>);(<U03F3>,<U037F>);/ + (<U03F5>,<U0395>);(<U03F8>,<U03F7>);(<U03FB>,<U03FA>);(<U0430>,<U0410>);/ + (<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);(<U0434>,<U0414>);/ + (<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);(<U0438>,<U0418>);/ + (<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);(<U043C>,<U041C>);/ + (<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);(<U0440>,<U0420>);/ + (<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);(<U0444>,<U0424>);/ + (<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);(<U0448>,<U0428>);/ + (<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);(<U044C>,<U042C>);/ + (<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);(<U0450>,<U0400>);/ + (<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);(<U0454>,<U0404>);/ + (<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);(<U0458>,<U0408>);/ + (<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);(<U045C>,<U040C>);/ + (<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);(<U0461>,<U0460>);/ + (<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);(<U0469>,<U0468>);/ + (<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);(<U0471>,<U0470>);/ + (<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);(<U0479>,<U0478>);/ + (<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);(<U0481>,<U0480>);/ + (<U048B>,<U048A>);(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);/ + (<U0493>,<U0492>);(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);/ + (<U049B>,<U049A>);(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);/ + (<U04A3>,<U04A2>);(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);/ + (<U04AB>,<U04AA>);(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);/ + (<U04B3>,<U04B2>);(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);/ + (<U04BB>,<U04BA>);(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);/ + (<U04C4>,<U04C3>);(<U04C6>,<U04C5>);(<U04C8>,<U04C7>);(<U04CA>,<U04C9>);/ + (<U04CC>,<U04CB>);(<U04CE>,<U04CD>);(<U04CF>,<U04C0>);(<U04D1>,<U04D0>);/ + (<U04D3>,<U04D2>);(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);/ + (<U04DB>,<U04DA>);(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);/ + (<U04E3>,<U04E2>);(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);/ + (<U04EB>,<U04EA>);(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);/ + (<U04F3>,<U04F2>);(<U04F5>,<U04F4>);(<U04F7>,<U04F6>);(<U04F9>,<U04F8>);/ + (<U04FB>,<U04FA>);(<U04FD>,<U04FC>);(<U04FF>,<U04FE>);(<U0501>,<U0500>);/ + (<U0503>,<U0502>);(<U0505>,<U0504>);(<U0507>,<U0506>);(<U0509>,<U0508>);/ + (<U050B>,<U050A>);(<U050D>,<U050C>);(<U050F>,<U050E>);(<U0511>,<U0510>);/ + (<U0513>,<U0512>);(<U0515>,<U0514>);(<U0517>,<U0516>);(<U0519>,<U0518>);/ + (<U051B>,<U051A>);(<U051D>,<U051C>);(<U051F>,<U051E>);(<U0521>,<U0520>);/ + (<U0523>,<U0522>);(<U0525>,<U0524>);(<U0527>,<U0526>);(<U0529>,<U0528>);/ + (<U052B>,<U052A>);(<U052D>,<U052C>);(<U052F>,<U052E>);(<U0561>,<U0531>);/ + (<U0562>,<U0532>);(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);/ + (<U0566>,<U0536>);(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);/ + (<U056A>,<U053A>);(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);/ + (<U056E>,<U053E>);(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);/ + (<U0572>,<U0542>);(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);/ + (<U0576>,<U0546>);(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);/ + (<U057A>,<U054A>);(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);/ + (<U057E>,<U054E>);(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);/ + (<U0582>,<U0552>);(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);/ + (<U0586>,<U0556>);(<U10D0>,<U1C90>);(<U10D1>,<U1C91>);(<U10D2>,<U1C92>);/ + (<U10D3>,<U1C93>);(<U10D4>,<U1C94>);(<U10D5>,<U1C95>);(<U10D6>,<U1C96>);/ + (<U10D7>,<U1C97>);(<U10D8>,<U1C98>);(<U10D9>,<U1C99>);(<U10DA>,<U1C9A>);/ + (<U10DB>,<U1C9B>);(<U10DC>,<U1C9C>);(<U10DD>,<U1C9D>);(<U10DE>,<U1C9E>);/ + (<U10DF>,<U1C9F>);(<U10E0>,<U1CA0>);(<U10E1>,<U1CA1>);(<U10E2>,<U1CA2>);/ + (<U10E3>,<U1CA3>);(<U10E4>,<U1CA4>);(<U10E5>,<U1CA5>);(<U10E6>,<U1CA6>);/ + (<U10E7>,<U1CA7>);(<U10E8>,<U1CA8>);(<U10E9>,<U1CA9>);(<U10EA>,<U1CAA>);/ + (<U10EB>,<U1CAB>);(<U10EC>,<U1CAC>);(<U10ED>,<U1CAD>);(<U10EE>,<U1CAE>);/ + (<U10EF>,<U1CAF>);(<U10F0>,<U1CB0>);(<U10F1>,<U1CB1>);(<U10F2>,<U1CB2>);/ + (<U10F3>,<U1CB3>);(<U10F4>,<U1CB4>);(<U10F5>,<U1CB5>);(<U10F6>,<U1CB6>);/ + (<U10F7>,<U1CB7>);(<U10F8>,<U1CB8>);(<U10F9>,<U1CB9>);(<U10FA>,<U1CBA>);/ + (<U10FD>,<U1CBD>);(<U10FE>,<U1CBE>);(<U10FF>,<U1CBF>);(<U13F8>,<U13F0>);/ + (<U13F9>,<U13F1>);(<U13FA>,<U13F2>);(<U13FB>,<U13F3>);(<U13FC>,<U13F4>);/ + (<U13FD>,<U13F5>);(<U1C80>,<U0412>);(<U1C81>,<U0414>);(<U1C82>,<U041E>);/ + (<U1C83>,<U0421>);(<U1C84>,<U0422>);(<U1C85>,<U0422>);(<U1C86>,<U042A>);/ + (<U1C87>,<U0462>);(<U1C88>,<UA64A>);(<U1C8A>,<U1C89>);(<U1D79>,<UA77D>);/ + (<U1D7D>,<U2C63>);(<U1D8E>,<UA7C6>);(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);/ + (<U1E05>,<U1E04>);(<U1E07>,<U1E06>);(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);/ + (<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);/ + (<U1E15>,<U1E14>);(<U1E17>,<U1E16>);(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);/ + (<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);/ + (<U1E25>,<U1E24>);(<U1E27>,<U1E26>);(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);/ + (<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);/ + (<U1E35>,<U1E34>);(<U1E37>,<U1E36>);(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);/ + (<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);/ + (<U1E45>,<U1E44>);(<U1E47>,<U1E46>);(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);/ + (<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);/ + (<U1E55>,<U1E54>);(<U1E57>,<U1E56>);(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);/ + (<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);/ + (<U1E65>,<U1E64>);(<U1E67>,<U1E66>);(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);/ + (<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);/ + (<U1E75>,<U1E74>);(<U1E77>,<U1E76>);(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);/ + (<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);/ + (<U1E85>,<U1E84>);(<U1E87>,<U1E86>);(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);/ + (<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);/ + (<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);/ + (<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);/ + (<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);/ + (<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);/ + (<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);/ + (<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);/ + (<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);/ + (<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);/ + (<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);/ + (<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);/ + (<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);/ + (<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);(<U1EFB>,<U1EFA>);/ + (<U1EFD>,<U1EFC>);(<U1EFF>,<U1EFE>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);/ + (<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);/ + (<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);/ + (<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);/ + (<U1F20>,<U1F28>);(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);/ + (<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);/ + (<U1F30>,<U1F38>);(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);/ + (<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);/ + (<U1F40>,<U1F48>);(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);/ + (<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);/ + (<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);/ + (<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);/ + (<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);/ + (<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);/ + (<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);/ + (<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);/ + (<U1F80>,<U1F88>);(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);/ + (<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);/ + (<U1F90>,<U1F98>);(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);/ + (<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);/ + (<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);/ + (<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);/ + (<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);/ + (<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);/ + (<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U214E>,<U2132>);/ + (<U2170>,<U2160>);(<U2171>,<U2161>);(<U2172>,<U2162>);(<U2173>,<U2163>);/ + (<U2174>,<U2164>);(<U2175>,<U2165>);(<U2176>,<U2166>);(<U2177>,<U2167>);/ + (<U2178>,<U2168>);(<U2179>,<U2169>);(<U217A>,<U216A>);(<U217B>,<U216B>);/ + (<U217C>,<U216C>);(<U217D>,<U216D>);(<U217E>,<U216E>);(<U217F>,<U216F>);/ + (<U2184>,<U2183>);(<U24D0>,<U24B6>);(<U24D1>,<U24B7>);(<U24D2>,<U24B8>);/ + (<U24D3>,<U24B9>);(<U24D4>,<U24BA>);(<U24D5>,<U24BB>);(<U24D6>,<U24BC>);/ + (<U24D7>,<U24BD>);(<U24D8>,<U24BE>);(<U24D9>,<U24BF>);(<U24DA>,<U24C0>);/ + (<U24DB>,<U24C1>);(<U24DC>,<U24C2>);(<U24DD>,<U24C3>);(<U24DE>,<U24C4>);/ + (<U24DF>,<U24C5>);(<U24E0>,<U24C6>);(<U24E1>,<U24C7>);(<U24E2>,<U24C8>);/ + (<U24E3>,<U24C9>);(<U24E4>,<U24CA>);(<U24E5>,<U24CB>);(<U24E6>,<U24CC>);/ + (<U24E7>,<U24CD>);(<U24E8>,<U24CE>);(<U24E9>,<U24CF>);(<U2C30>,<U2C00>);/ + (<U2C31>,<U2C01>);(<U2C32>,<U2C02>);(<U2C33>,<U2C03>);(<U2C34>,<U2C04>);/ + (<U2C35>,<U2C05>);(<U2C36>,<U2C06>);(<U2C37>,<U2C07>);(<U2C38>,<U2C08>);/ + (<U2C39>,<U2C09>);(<U2C3A>,<U2C0A>);(<U2C3B>,<U2C0B>);(<U2C3C>,<U2C0C>);/ + (<U2C3D>,<U2C0D>);(<U2C3E>,<U2C0E>);(<U2C3F>,<U2C0F>);(<U2C40>,<U2C10>);/ + (<U2C41>,<U2C11>);(<U2C42>,<U2C12>);(<U2C43>,<U2C13>);(<U2C44>,<U2C14>);/ + (<U2C45>,<U2C15>);(<U2C46>,<U2C16>);(<U2C47>,<U2C17>);(<U2C48>,<U2C18>);/ + (<U2C49>,<U2C19>);(<U2C4A>,<U2C1A>);(<U2C4B>,<U2C1B>);(<U2C4C>,<U2C1C>);/ + (<U2C4D>,<U2C1D>);(<U2C4E>,<U2C1E>);(<U2C4F>,<U2C1F>);(<U2C50>,<U2C20>);/ + (<U2C51>,<U2C21>);(<U2C52>,<U2C22>);(<U2C53>,<U2C23>);(<U2C54>,<U2C24>);/ + (<U2C55>,<U2C25>);(<U2C56>,<U2C26>);(<U2C57>,<U2C27>);(<U2C58>,<U2C28>);/ + (<U2C59>,<U2C29>);(<U2C5A>,<U2C2A>);(<U2C5B>,<U2C2B>);(<U2C5C>,<U2C2C>);/ + (<U2C5D>,<U2C2D>);(<U2C5E>,<U2C2E>);(<U2C5F>,<U2C2F>);(<U2C61>,<U2C60>);/ + (<U2C65>,<U023A>);(<U2C66>,<U023E>);(<U2C68>,<U2C67>);(<U2C6A>,<U2C69>);/ + (<U2C6C>,<U2C6B>);(<U2C73>,<U2C72>);(<U2C76>,<U2C75>);(<U2C81>,<U2C80>);/ + (<U2C83>,<U2C82>);(<U2C85>,<U2C84>);(<U2C87>,<U2C86>);(<U2C89>,<U2C88>);/ + (<U2C8B>,<U2C8A>);(<U2C8D>,<U2C8C>);(<U2C8F>,<U2C8E>);(<U2C91>,<U2C90>);/ + (<U2C93>,<U2C92>);(<U2C95>,<U2C94>);(<U2C97>,<U2C96>);(<U2C99>,<U2C98>);/ + (<U2C9B>,<U2C9A>);(<U2C9D>,<U2C9C>);(<U2C9F>,<U2C9E>);(<U2CA1>,<U2CA0>);/ + (<U2CA3>,<U2CA2>);(<U2CA5>,<U2CA4>);(<U2CA7>,<U2CA6>);(<U2CA9>,<U2CA8>);/ + (<U2CAB>,<U2CAA>);(<U2CAD>,<U2CAC>);(<U2CAF>,<U2CAE>);(<U2CB1>,<U2CB0>);/ + (<U2CB3>,<U2CB2>);(<U2CB5>,<U2CB4>);(<U2CB7>,<U2CB6>);(<U2CB9>,<U2CB8>);/ + (<U2CBB>,<U2CBA>);(<U2CBD>,<U2CBC>);(<U2CBF>,<U2CBE>);(<U2CC1>,<U2CC0>);/ + (<U2CC3>,<U2CC2>);(<U2CC5>,<U2CC4>);(<U2CC7>,<U2CC6>);(<U2CC9>,<U2CC8>);/ + (<U2CCB>,<U2CCA>);(<U2CCD>,<U2CCC>);(<U2CCF>,<U2CCE>);(<U2CD1>,<U2CD0>);/ + (<U2CD3>,<U2CD2>);(<U2CD5>,<U2CD4>);(<U2CD7>,<U2CD6>);(<U2CD9>,<U2CD8>);/ + (<U2CDB>,<U2CDA>);(<U2CDD>,<U2CDC>);(<U2CDF>,<U2CDE>);(<U2CE1>,<U2CE0>);/ + (<U2CE3>,<U2CE2>);(<U2CEC>,<U2CEB>);(<U2CEE>,<U2CED>);(<U2CF3>,<U2CF2>);/ + (<U2D00>,<U10A0>);(<U2D01>,<U10A1>);(<U2D02>,<U10A2>);(<U2D03>,<U10A3>);/ + (<U2D04>,<U10A4>);(<U2D05>,<U10A5>);(<U2D06>,<U10A6>);(<U2D07>,<U10A7>);/ + (<U2D08>,<U10A8>);(<U2D09>,<U10A9>);(<U2D0A>,<U10AA>);(<U2D0B>,<U10AB>);/ + (<U2D0C>,<U10AC>);(<U2D0D>,<U10AD>);(<U2D0E>,<U10AE>);(<U2D0F>,<U10AF>);/ + (<U2D10>,<U10B0>);(<U2D11>,<U10B1>);(<U2D12>,<U10B2>);(<U2D13>,<U10B3>);/ + (<U2D14>,<U10B4>);(<U2D15>,<U10B5>);(<U2D16>,<U10B6>);(<U2D17>,<U10B7>);/ + (<U2D18>,<U10B8>);(<U2D19>,<U10B9>);(<U2D1A>,<U10BA>);(<U2D1B>,<U10BB>);/ + (<U2D1C>,<U10BC>);(<U2D1D>,<U10BD>);(<U2D1E>,<U10BE>);(<U2D1F>,<U10BF>);/ + (<U2D20>,<U10C0>);(<U2D21>,<U10C1>);(<U2D22>,<U10C2>);(<U2D23>,<U10C3>);/ + (<U2D24>,<U10C4>);(<U2D25>,<U10C5>);(<U2D27>,<U10C7>);(<U2D2D>,<U10CD>);/ + (<UA641>,<UA640>);(<UA643>,<UA642>);(<UA645>,<UA644>);(<UA647>,<UA646>);/ + (<UA649>,<UA648>);(<UA64B>,<UA64A>);(<UA64D>,<UA64C>);(<UA64F>,<UA64E>);/ + (<UA651>,<UA650>);(<UA653>,<UA652>);(<UA655>,<UA654>);(<UA657>,<UA656>);/ + (<UA659>,<UA658>);(<UA65B>,<UA65A>);(<UA65D>,<UA65C>);(<UA65F>,<UA65E>);/ + (<UA661>,<UA660>);(<UA663>,<UA662>);(<UA665>,<UA664>);(<UA667>,<UA666>);/ + (<UA669>,<UA668>);(<UA66B>,<UA66A>);(<UA66D>,<UA66C>);(<UA681>,<UA680>);/ + (<UA683>,<UA682>);(<UA685>,<UA684>);(<UA687>,<UA686>);(<UA689>,<UA688>);/ + (<UA68B>,<UA68A>);(<UA68D>,<UA68C>);(<UA68F>,<UA68E>);(<UA691>,<UA690>);/ + (<UA693>,<UA692>);(<UA695>,<UA694>);(<UA697>,<UA696>);(<UA699>,<UA698>);/ + (<UA69B>,<UA69A>);(<UA723>,<UA722>);(<UA725>,<UA724>);(<UA727>,<UA726>);/ + (<UA729>,<UA728>);(<UA72B>,<UA72A>);(<UA72D>,<UA72C>);(<UA72F>,<UA72E>);/ + (<UA733>,<UA732>);(<UA735>,<UA734>);(<UA737>,<UA736>);(<UA739>,<UA738>);/ + (<UA73B>,<UA73A>);(<UA73D>,<UA73C>);(<UA73F>,<UA73E>);(<UA741>,<UA740>);/ + (<UA743>,<UA742>);(<UA745>,<UA744>);(<UA747>,<UA746>);(<UA749>,<UA748>);/ + (<UA74B>,<UA74A>);(<UA74D>,<UA74C>);(<UA74F>,<UA74E>);(<UA751>,<UA750>);/ + (<UA753>,<UA752>);(<UA755>,<UA754>);(<UA757>,<UA756>);(<UA759>,<UA758>);/ + (<UA75B>,<UA75A>);(<UA75D>,<UA75C>);(<UA75F>,<UA75E>);(<UA761>,<UA760>);/ + (<UA763>,<UA762>);(<UA765>,<UA764>);(<UA767>,<UA766>);(<UA769>,<UA768>);/ + (<UA76B>,<UA76A>);(<UA76D>,<UA76C>);(<UA76F>,<UA76E>);(<UA77A>,<UA779>);/ + (<UA77C>,<UA77B>);(<UA77F>,<UA77E>);(<UA781>,<UA780>);(<UA783>,<UA782>);/ + (<UA785>,<UA784>);(<UA787>,<UA786>);(<UA78C>,<UA78B>);(<UA791>,<UA790>);/ + (<UA793>,<UA792>);(<UA794>,<UA7C4>);(<UA797>,<UA796>);(<UA799>,<UA798>);/ + (<UA79B>,<UA79A>);(<UA79D>,<UA79C>);(<UA79F>,<UA79E>);(<UA7A1>,<UA7A0>);/ + (<UA7A3>,<UA7A2>);(<UA7A5>,<UA7A4>);(<UA7A7>,<UA7A6>);(<UA7A9>,<UA7A8>);/ + (<UA7B5>,<UA7B4>);(<UA7B7>,<UA7B6>);(<UA7B9>,<UA7B8>);(<UA7BB>,<UA7BA>);/ + (<UA7BD>,<UA7BC>);(<UA7BF>,<UA7BE>);(<UA7C1>,<UA7C0>);(<UA7C3>,<UA7C2>);/ + (<UA7C8>,<UA7C7>);(<UA7CA>,<UA7C9>);(<UA7CD>,<UA7CC>);(<UA7D1>,<UA7D0>);/ + (<UA7D7>,<UA7D6>);(<UA7D9>,<UA7D8>);(<UA7DB>,<UA7DA>);(<UA7F6>,<UA7F5>);/ + (<UAB53>,<UA7B3>);(<UAB70>,<U13A0>);(<UAB71>,<U13A1>);(<UAB72>,<U13A2>);/ + (<UAB73>,<U13A3>);(<UAB74>,<U13A4>);(<UAB75>,<U13A5>);(<UAB76>,<U13A6>);/ + (<UAB77>,<U13A7>);(<UAB78>,<U13A8>);(<UAB79>,<U13A9>);(<UAB7A>,<U13AA>);/ + (<UAB7B>,<U13AB>);(<UAB7C>,<U13AC>);(<UAB7D>,<U13AD>);(<UAB7E>,<U13AE>);/ + (<UAB7F>,<U13AF>);(<UAB80>,<U13B0>);(<UAB81>,<U13B1>);(<UAB82>,<U13B2>);/ + (<UAB83>,<U13B3>);(<UAB84>,<U13B4>);(<UAB85>,<U13B5>);(<UAB86>,<U13B6>);/ + (<UAB87>,<U13B7>);(<UAB88>,<U13B8>);(<UAB89>,<U13B9>);(<UAB8A>,<U13BA>);/ + (<UAB8B>,<U13BB>);(<UAB8C>,<U13BC>);(<UAB8D>,<U13BD>);(<UAB8E>,<U13BE>);/ + (<UAB8F>,<U13BF>);(<UAB90>,<U13C0>);(<UAB91>,<U13C1>);(<UAB92>,<U13C2>);/ + (<UAB93>,<U13C3>);(<UAB94>,<U13C4>);(<UAB95>,<U13C5>);(<UAB96>,<U13C6>);/ + (<UAB97>,<U13C7>);(<UAB98>,<U13C8>);(<UAB99>,<U13C9>);(<UAB9A>,<U13CA>);/ + (<UAB9B>,<U13CB>);(<UAB9C>,<U13CC>);(<UAB9D>,<U13CD>);(<UAB9E>,<U13CE>);/ + (<UAB9F>,<U13CF>);(<UABA0>,<U13D0>);(<UABA1>,<U13D1>);(<UABA2>,<U13D2>);/ + (<UABA3>,<U13D3>);(<UABA4>,<U13D4>);(<UABA5>,<U13D5>);(<UABA6>,<U13D6>);/ + (<UABA7>,<U13D7>);(<UABA8>,<U13D8>);(<UABA9>,<U13D9>);(<UABAA>,<U13DA>);/ + (<UABAB>,<U13DB>);(<UABAC>,<U13DC>);(<UABAD>,<U13DD>);(<UABAE>,<U13DE>);/ + (<UABAF>,<U13DF>);(<UABB0>,<U13E0>);(<UABB1>,<U13E1>);(<UABB2>,<U13E2>);/ + (<UABB3>,<U13E3>);(<UABB4>,<U13E4>);(<UABB5>,<U13E5>);(<UABB6>,<U13E6>);/ + (<UABB7>,<U13E7>);(<UABB8>,<U13E8>);(<UABB9>,<U13E9>);(<UABBA>,<U13EA>);/ + (<UABBB>,<U13EB>);(<UABBC>,<U13EC>);(<UABBD>,<U13ED>);(<UABBE>,<U13EE>);/ + (<UABBF>,<U13EF>);(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);/ + (<UFF44>,<UFF24>);(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);/ + (<UFF48>,<UFF28>);(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);/ + (<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);/ + (<UFF50>,<UFF30>);(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);/ + (<UFF54>,<UFF34>);(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);/ + (<UFF58>,<UFF38>);(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);/ + (<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/ + (<U0001042A>,<U00010402>);(<U0001042B>,<U00010403>);/ + (<U0001042C>,<U00010404>);(<U0001042D>,<U00010405>);/ + (<U0001042E>,<U00010406>);(<U0001042F>,<U00010407>);/ + (<U00010430>,<U00010408>);(<U00010431>,<U00010409>);/ + (<U00010432>,<U0001040A>);(<U00010433>,<U0001040B>);/ + (<U00010434>,<U0001040C>);(<U00010435>,<U0001040D>);/ + (<U00010436>,<U0001040E>);(<U00010437>,<U0001040F>);/ + (<U00010438>,<U00010410>);(<U00010439>,<U00010411>);/ + (<U0001043A>,<U00010412>);(<U0001043B>,<U00010413>);/ + (<U0001043C>,<U00010414>);(<U0001043D>,<U00010415>);/ + (<U0001043E>,<U00010416>);(<U0001043F>,<U00010417>);/ + (<U00010440>,<U00010418>);(<U00010441>,<U00010419>);/ + (<U00010442>,<U0001041A>);(<U00010443>,<U0001041B>);/ + (<U00010444>,<U0001041C>);(<U00010445>,<U0001041D>);/ + (<U00010446>,<U0001041E>);(<U00010447>,<U0001041F>);/ + (<U00010448>,<U00010420>);(<U00010449>,<U00010421>);/ + (<U0001044A>,<U00010422>);(<U0001044B>,<U00010423>);/ + (<U0001044C>,<U00010424>);(<U0001044D>,<U00010425>);/ + (<U0001044E>,<U00010426>);(<U0001044F>,<U00010427>);/ + (<U000104D8>,<U000104B0>);(<U000104D9>,<U000104B1>);/ + (<U000104DA>,<U000104B2>);(<U000104DB>,<U000104B3>);/ + (<U000104DC>,<U000104B4>);(<U000104DD>,<U000104B5>);/ + (<U000104DE>,<U000104B6>);(<U000104DF>,<U000104B7>);/ + (<U000104E0>,<U000104B8>);(<U000104E1>,<U000104B9>);/ + (<U000104E2>,<U000104BA>);(<U000104E3>,<U000104BB>);/ + (<U000104E4>,<U000104BC>);(<U000104E5>,<U000104BD>);/ + (<U000104E6>,<U000104BE>);(<U000104E7>,<U000104BF>);/ + (<U000104E8>,<U000104C0>);(<U000104E9>,<U000104C1>);/ + (<U000104EA>,<U000104C2>);(<U000104EB>,<U000104C3>);/ + (<U000104EC>,<U000104C4>);(<U000104ED>,<U000104C5>);/ + (<U000104EE>,<U000104C6>);(<U000104EF>,<U000104C7>);/ + (<U000104F0>,<U000104C8>);(<U000104F1>,<U000104C9>);/ + (<U000104F2>,<U000104CA>);(<U000104F3>,<U000104CB>);/ + (<U000104F4>,<U000104CC>);(<U000104F5>,<U000104CD>);/ + (<U000104F6>,<U000104CE>);(<U000104F7>,<U000104CF>);/ + (<U000104F8>,<U000104D0>);(<U000104F9>,<U000104D1>);/ + (<U000104FA>,<U000104D2>);(<U000104FB>,<U000104D3>);/ + (<U00010597>,<U00010570>);(<U00010598>,<U00010571>);/ + (<U00010599>,<U00010572>);(<U0001059A>,<U00010573>);/ + (<U0001059B>,<U00010574>);(<U0001059C>,<U00010575>);/ + (<U0001059D>,<U00010576>);(<U0001059E>,<U00010577>);/ + (<U0001059F>,<U00010578>);(<U000105A0>,<U00010579>);/ + (<U000105A1>,<U0001057A>);(<U000105A3>,<U0001057C>);/ + (<U000105A4>,<U0001057D>);(<U000105A5>,<U0001057E>);/ + (<U000105A6>,<U0001057F>);(<U000105A7>,<U00010580>);/ + (<U000105A8>,<U00010581>);(<U000105A9>,<U00010582>);/ + (<U000105AA>,<U00010583>);(<U000105AB>,<U00010584>);/ + (<U000105AC>,<U00010585>);(<U000105AD>,<U00010586>);/ + (<U000105AE>,<U00010587>);(<U000105AF>,<U00010588>);/ + (<U000105B0>,<U00010589>);(<U000105B1>,<U0001058A>);/ + (<U000105B3>,<U0001058C>);(<U000105B4>,<U0001058D>);/ + (<U000105B5>,<U0001058E>);(<U000105B6>,<U0001058F>);/ + (<U000105B7>,<U00010590>);(<U000105B8>,<U00010591>);/ + (<U000105B9>,<U00010592>);(<U000105BB>,<U00010594>);/ + (<U000105BC>,<U00010595>);(<U00010CC0>,<U00010C80>);/ + (<U00010CC1>,<U00010C81>);(<U00010CC2>,<U00010C82>);/ + (<U00010CC3>,<U00010C83>);(<U00010CC4>,<U00010C84>);/ + (<U00010CC5>,<U00010C85>);(<U00010CC6>,<U00010C86>);/ + (<U00010CC7>,<U00010C87>);(<U00010CC8>,<U00010C88>);/ + (<U00010CC9>,<U00010C89>);(<U00010CCA>,<U00010C8A>);/ + (<U00010CCB>,<U00010C8B>);(<U00010CCC>,<U00010C8C>);/ + (<U00010CCD>,<U00010C8D>);(<U00010CCE>,<U00010C8E>);/ + (<U00010CCF>,<U00010C8F>);(<U00010CD0>,<U00010C90>);/ + (<U00010CD1>,<U00010C91>);(<U00010CD2>,<U00010C92>);/ + (<U00010CD3>,<U00010C93>);(<U00010CD4>,<U00010C94>);/ + (<U00010CD5>,<U00010C95>);(<U00010CD6>,<U00010C96>);/ + (<U00010CD7>,<U00010C97>);(<U00010CD8>,<U00010C98>);/ + (<U00010CD9>,<U00010C99>);(<U00010CDA>,<U00010C9A>);/ + (<U00010CDB>,<U00010C9B>);(<U00010CDC>,<U00010C9C>);/ + (<U00010CDD>,<U00010C9D>);(<U00010CDE>,<U00010C9E>);/ + (<U00010CDF>,<U00010C9F>);(<U00010CE0>,<U00010CA0>);/ + (<U00010CE1>,<U00010CA1>);(<U00010CE2>,<U00010CA2>);/ + (<U00010CE3>,<U00010CA3>);(<U00010CE4>,<U00010CA4>);/ + (<U00010CE5>,<U00010CA5>);(<U00010CE6>,<U00010CA6>);/ + (<U00010CE7>,<U00010CA7>);(<U00010CE8>,<U00010CA8>);/ + (<U00010CE9>,<U00010CA9>);(<U00010CEA>,<U00010CAA>);/ + (<U00010CEB>,<U00010CAB>);(<U00010CEC>,<U00010CAC>);/ + (<U00010CED>,<U00010CAD>);(<U00010CEE>,<U00010CAE>);/ + (<U00010CEF>,<U00010CAF>);(<U00010CF0>,<U00010CB0>);/ + (<U00010CF1>,<U00010CB1>);(<U00010CF2>,<U00010CB2>);/ + (<U00010D70>,<U00010D50>);(<U00010D71>,<U00010D51>);/ + (<U00010D72>,<U00010D52>);(<U00010D73>,<U00010D53>);/ + (<U00010D74>,<U00010D54>);(<U00010D75>,<U00010D55>);/ + (<U00010D76>,<U00010D56>);(<U00010D77>,<U00010D57>);/ + (<U00010D78>,<U00010D58>);(<U00010D79>,<U00010D59>);/ + (<U00010D7A>,<U00010D5A>);(<U00010D7B>,<U00010D5B>);/ + (<U00010D7C>,<U00010D5C>);(<U00010D7D>,<U00010D5D>);/ + (<U00010D7E>,<U00010D5E>);(<U00010D7F>,<U00010D5F>);/ + (<U00010D80>,<U00010D60>);(<U00010D81>,<U00010D61>);/ + (<U00010D82>,<U00010D62>);(<U00010D83>,<U00010D63>);/ + (<U00010D84>,<U00010D64>);(<U00010D85>,<U00010D65>);/ + (<U000118C0>,<U000118A0>);(<U000118C1>,<U000118A1>);/ + (<U000118C2>,<U000118A2>);(<U000118C3>,<U000118A3>);/ + (<U000118C4>,<U000118A4>);(<U000118C5>,<U000118A5>);/ + (<U000118C6>,<U000118A6>);(<U000118C7>,<U000118A7>);/ + (<U000118C8>,<U000118A8>);(<U000118C9>,<U000118A9>);/ + (<U000118CA>,<U000118AA>);(<U000118CB>,<U000118AB>);/ + (<U000118CC>,<U000118AC>);(<U000118CD>,<U000118AD>);/ + (<U000118CE>,<U000118AE>);(<U000118CF>,<U000118AF>);/ + (<U000118D0>,<U000118B0>);(<U000118D1>,<U000118B1>);/ + (<U000118D2>,<U000118B2>);(<U000118D3>,<U000118B3>);/ + (<U000118D4>,<U000118B4>);(<U000118D5>,<U000118B5>);/ + (<U000118D6>,<U000118B6>);(<U000118D7>,<U000118B7>);/ + (<U000118D8>,<U000118B8>);(<U000118D9>,<U000118B9>);/ + (<U000118DA>,<U000118BA>);(<U000118DB>,<U000118BB>);/ + (<U000118DC>,<U000118BC>);(<U000118DD>,<U000118BD>);/ + (<U000118DE>,<U000118BE>);(<U000118DF>,<U000118BF>);/ + (<U00016E60>,<U00016E40>);(<U00016E61>,<U00016E41>);/ + (<U00016E62>,<U00016E42>);(<U00016E63>,<U00016E43>);/ + (<U00016E64>,<U00016E44>);(<U00016E65>,<U00016E45>);/ + (<U00016E66>,<U00016E46>);(<U00016E67>,<U00016E47>);/ + (<U00016E68>,<U00016E48>);(<U00016E69>,<U00016E49>);/ + (<U00016E6A>,<U00016E4A>);(<U00016E6B>,<U00016E4B>);/ + (<U00016E6C>,<U00016E4C>);(<U00016E6D>,<U00016E4D>);/ + (<U00016E6E>,<U00016E4E>);(<U00016E6F>,<U00016E4F>);/ + (<U00016E70>,<U00016E50>);(<U00016E71>,<U00016E51>);/ + (<U00016E72>,<U00016E52>);(<U00016E73>,<U00016E53>);/ + (<U00016E74>,<U00016E54>);(<U00016E75>,<U00016E55>);/ + (<U00016E76>,<U00016E56>);(<U00016E77>,<U00016E57>);/ + (<U00016E78>,<U00016E58>);(<U00016E79>,<U00016E59>);/ + (<U00016E7A>,<U00016E5A>);(<U00016E7B>,<U00016E5B>);/ + (<U00016E7C>,<U00016E5C>);(<U00016E7D>,<U00016E5D>);/ + (<U00016E7E>,<U00016E5E>);(<U00016E7F>,<U00016E5F>);/ + (<U0001E922>,<U0001E900>);(<U0001E923>,<U0001E901>);/ + (<U0001E924>,<U0001E902>);(<U0001E925>,<U0001E903>);/ + (<U0001E926>,<U0001E904>);(<U0001E927>,<U0001E905>);/ + (<U0001E928>,<U0001E906>);(<U0001E929>,<U0001E907>);/ + (<U0001E92A>,<U0001E908>);(<U0001E92B>,<U0001E909>);/ + (<U0001E92C>,<U0001E90A>);(<U0001E92D>,<U0001E90B>);/ + (<U0001E92E>,<U0001E90C>);(<U0001E92F>,<U0001E90D>);/ + (<U0001E930>,<U0001E90E>);(<U0001E931>,<U0001E90F>);/ + (<U0001E932>,<U0001E910>);(<U0001E933>,<U0001E911>);/ + (<U0001E934>,<U0001E912>);(<U0001E935>,<U0001E913>);/ + (<U0001E936>,<U0001E914>);(<U0001E937>,<U0001E915>);/ + (<U0001E938>,<U0001E916>);(<U0001E939>,<U0001E917>);/ + (<U0001E93A>,<U0001E918>);(<U0001E93B>,<U0001E919>);/ + (<U0001E93C>,<U0001E91A>);(<U0001E93D>,<U0001E91B>);/ + (<U0001E93E>,<U0001E91C>);(<U0001E93F>,<U0001E91D>);/ + (<U0001E940>,<U0001E91E>);(<U0001E941>,<U0001E91F>);/ + (<U0001E942>,<U0001E920>);(<U0001E943>,<U0001E921>) tolower / (<U0041>,<U0061>);(<U0042>,<U0062>);(<U0043>,<U0063>);(<U0044>,<U0064>);/ @@ -1756,281 +1811,294 @@ tolower / (<U13E7>,<UABB7>);(<U13E8>,<UABB8>);(<U13E9>,<UABB9>);(<U13EA>,<UABBA>);/ (<U13EB>,<UABBB>);(<U13EC>,<UABBC>);(<U13ED>,<UABBD>);(<U13EE>,<UABBE>);/ (<U13EF>,<UABBF>);(<U13F0>,<U13F8>);(<U13F1>,<U13F9>);(<U13F2>,<U13FA>);/ - (<U13F3>,<U13FB>);(<U13F4>,<U13FC>);(<U13F5>,<U13FD>);(<U1C90>,<U10D0>);/ - (<U1C91>,<U10D1>);(<U1C92>,<U10D2>);(<U1C93>,<U10D3>);(<U1C94>,<U10D4>);/ - (<U1C95>,<U10D5>);(<U1C96>,<U10D6>);(<U1C97>,<U10D7>);(<U1C98>,<U10D8>);/ - (<U1C99>,<U10D9>);(<U1C9A>,<U10DA>);(<U1C9B>,<U10DB>);(<U1C9C>,<U10DC>);/ - (<U1C9D>,<U10DD>);(<U1C9E>,<U10DE>);(<U1C9F>,<U10DF>);(<U1CA0>,<U10E0>);/ - (<U1CA1>,<U10E1>);(<U1CA2>,<U10E2>);(<U1CA3>,<U10E3>);(<U1CA4>,<U10E4>);/ - (<U1CA5>,<U10E5>);(<U1CA6>,<U10E6>);(<U1CA7>,<U10E7>);(<U1CA8>,<U10E8>);/ - (<U1CA9>,<U10E9>);(<U1CAA>,<U10EA>);(<U1CAB>,<U10EB>);(<U1CAC>,<U10EC>);/ - (<U1CAD>,<U10ED>);(<U1CAE>,<U10EE>);(<U1CAF>,<U10EF>);(<U1CB0>,<U10F0>);/ - (<U1CB1>,<U10F1>);(<U1CB2>,<U10F2>);(<U1CB3>,<U10F3>);(<U1CB4>,<U10F4>);/ - (<U1CB5>,<U10F5>);(<U1CB6>,<U10F6>);(<U1CB7>,<U10F7>);(<U1CB8>,<U10F8>);/ - (<U1CB9>,<U10F9>);(<U1CBA>,<U10FA>);(<U1CBD>,<U10FD>);(<U1CBE>,<U10FE>);/ - (<U1CBF>,<U10FF>);(<U1E00>,<U1E01>);(<U1E02>,<U1E03>);(<U1E04>,<U1E05>);/ - (<U1E06>,<U1E07>);(<U1E08>,<U1E09>);(<U1E0A>,<U1E0B>);(<U1E0C>,<U1E0D>);/ - (<U1E0E>,<U1E0F>);(<U1E10>,<U1E11>);(<U1E12>,<U1E13>);(<U1E14>,<U1E15>);/ - (<U1E16>,<U1E17>);(<U1E18>,<U1E19>);(<U1E1A>,<U1E1B>);(<U1E1C>,<U1E1D>);/ - (<U1E1E>,<U1E1F>);(<U1E20>,<U1E21>);(<U1E22>,<U1E23>);(<U1E24>,<U1E25>);/ - (<U1E26>,<U1E27>);(<U1E28>,<U1E29>);(<U1E2A>,<U1E2B>);(<U1E2C>,<U1E2D>);/ - (<U1E2E>,<U1E2F>);(<U1E30>,<U1E31>);(<U1E32>,<U1E33>);(<U1E34>,<U1E35>);/ - (<U1E36>,<U1E37>);(<U1E38>,<U1E39>);(<U1E3A>,<U1E3B>);(<U1E3C>,<U1E3D>);/ - (<U1E3E>,<U1E3F>);(<U1E40>,<U1E41>);(<U1E42>,<U1E43>);(<U1E44>,<U1E45>);/ - (<U1E46>,<U1E47>);(<U1E48>,<U1E49>);(<U1E4A>,<U1E4B>);(<U1E4C>,<U1E4D>);/ - (<U1E4E>,<U1E4F>);(<U1E50>,<U1E51>);(<U1E52>,<U1E53>);(<U1E54>,<U1E55>);/ - (<U1E56>,<U1E57>);(<U1E58>,<U1E59>);(<U1E5A>,<U1E5B>);(<U1E5C>,<U1E5D>);/ - (<U1E5E>,<U1E5F>);(<U1E60>,<U1E61>);(<U1E62>,<U1E63>);(<U1E64>,<U1E65>);/ - (<U1E66>,<U1E67>);(<U1E68>,<U1E69>);(<U1E6A>,<U1E6B>);(<U1E6C>,<U1E6D>);/ - (<U1E6E>,<U1E6F>);(<U1E70>,<U1E71>);(<U1E72>,<U1E73>);(<U1E74>,<U1E75>);/ - (<U1E76>,<U1E77>);(<U1E78>,<U1E79>);(<U1E7A>,<U1E7B>);(<U1E7C>,<U1E7D>);/ - (<U1E7E>,<U1E7F>);(<U1E80>,<U1E81>);(<U1E82>,<U1E83>);(<U1E84>,<U1E85>);/ - (<U1E86>,<U1E87>);(<U1E88>,<U1E89>);(<U1E8A>,<U1E8B>);(<U1E8C>,<U1E8D>);/ - (<U1E8E>,<U1E8F>);(<U1E90>,<U1E91>);(<U1E92>,<U1E93>);(<U1E94>,<U1E95>);/ - (<U1E9E>,<U00DF>);(<U1EA0>,<U1EA1>);(<U1EA2>,<U1EA3>);(<U1EA4>,<U1EA5>);/ - (<U1EA6>,<U1EA7>);(<U1EA8>,<U1EA9>);(<U1EAA>,<U1EAB>);(<U1EAC>,<U1EAD>);/ - (<U1EAE>,<U1EAF>);(<U1EB0>,<U1EB1>);(<U1EB2>,<U1EB3>);(<U1EB4>,<U1EB5>);/ - (<U1EB6>,<U1EB7>);(<U1EB8>,<U1EB9>);(<U1EBA>,<U1EBB>);(<U1EBC>,<U1EBD>);/ - (<U1EBE>,<U1EBF>);(<U1EC0>,<U1EC1>);(<U1EC2>,<U1EC3>);(<U1EC4>,<U1EC5>);/ - (<U1EC6>,<U1EC7>);(<U1EC8>,<U1EC9>);(<U1ECA>,<U1ECB>);(<U1ECC>,<U1ECD>);/ - (<U1ECE>,<U1ECF>);(<U1ED0>,<U1ED1>);(<U1ED2>,<U1ED3>);(<U1ED4>,<U1ED5>);/ - (<U1ED6>,<U1ED7>);(<U1ED8>,<U1ED9>);(<U1EDA>,<U1EDB>);(<U1EDC>,<U1EDD>);/ - (<U1EDE>,<U1EDF>);(<U1EE0>,<U1EE1>);(<U1EE2>,<U1EE3>);(<U1EE4>,<U1EE5>);/ - (<U1EE6>,<U1EE7>);(<U1EE8>,<U1EE9>);(<U1EEA>,<U1EEB>);(<U1EEC>,<U1EED>);/ - (<U1EEE>,<U1EEF>);(<U1EF0>,<U1EF1>);(<U1EF2>,<U1EF3>);(<U1EF4>,<U1EF5>);/ - (<U1EF6>,<U1EF7>);(<U1EF8>,<U1EF9>);(<U1EFA>,<U1EFB>);(<U1EFC>,<U1EFD>);/ - (<U1EFE>,<U1EFF>);(<U1F08>,<U1F00>);(<U1F09>,<U1F01>);(<U1F0A>,<U1F02>);/ - (<U1F0B>,<U1F03>);(<U1F0C>,<U1F04>);(<U1F0D>,<U1F05>);(<U1F0E>,<U1F06>);/ - (<U1F0F>,<U1F07>);(<U1F18>,<U1F10>);(<U1F19>,<U1F11>);(<U1F1A>,<U1F12>);/ - (<U1F1B>,<U1F13>);(<U1F1C>,<U1F14>);(<U1F1D>,<U1F15>);(<U1F28>,<U1F20>);/ - (<U1F29>,<U1F21>);(<U1F2A>,<U1F22>);(<U1F2B>,<U1F23>);(<U1F2C>,<U1F24>);/ - (<U1F2D>,<U1F25>);(<U1F2E>,<U1F26>);(<U1F2F>,<U1F27>);(<U1F38>,<U1F30>);/ - (<U1F39>,<U1F31>);(<U1F3A>,<U1F32>);(<U1F3B>,<U1F33>);(<U1F3C>,<U1F34>);/ - (<U1F3D>,<U1F35>);(<U1F3E>,<U1F36>);(<U1F3F>,<U1F37>);(<U1F48>,<U1F40>);/ - (<U1F49>,<U1F41>);(<U1F4A>,<U1F42>);(<U1F4B>,<U1F43>);(<U1F4C>,<U1F44>);/ - (<U1F4D>,<U1F45>);(<U1F59>,<U1F51>);(<U1F5B>,<U1F53>);(<U1F5D>,<U1F55>);/ - (<U1F5F>,<U1F57>);(<U1F68>,<U1F60>);(<U1F69>,<U1F61>);(<U1F6A>,<U1F62>);/ - (<U1F6B>,<U1F63>);(<U1F6C>,<U1F64>);(<U1F6D>,<U1F65>);(<U1F6E>,<U1F66>);/ - (<U1F6F>,<U1F67>);(<U1F88>,<U1F80>);(<U1F89>,<U1F81>);(<U1F8A>,<U1F82>);/ - (<U1F8B>,<U1F83>);(<U1F8C>,<U1F84>);(<U1F8D>,<U1F85>);(<U1F8E>,<U1F86>);/ - (<U1F8F>,<U1F87>);(<U1F98>,<U1F90>);(<U1F99>,<U1F91>);(<U1F9A>,<U1F92>);/ - (<U1F9B>,<U1F93>);(<U1F9C>,<U1F94>);(<U1F9D>,<U1F95>);(<U1F9E>,<U1F96>);/ - (<U1F9F>,<U1F97>);(<U1FA8>,<U1FA0>);(<U1FA9>,<U1FA1>);(<U1FAA>,<U1FA2>);/ - (<U1FAB>,<U1FA3>);(<U1FAC>,<U1FA4>);(<U1FAD>,<U1FA5>);(<U1FAE>,<U1FA6>);/ - (<U1FAF>,<U1FA7>);(<U1FB8>,<U1FB0>);(<U1FB9>,<U1FB1>);(<U1FBA>,<U1F70>);/ - (<U1FBB>,<U1F71>);(<U1FBC>,<U1FB3>);(<U1FC8>,<U1F72>);(<U1FC9>,<U1F73>);/ - (<U1FCA>,<U1F74>);(<U1FCB>,<U1F75>);(<U1FCC>,<U1FC3>);(<U1FD8>,<U1FD0>);/ - (<U1FD9>,<U1FD1>);(<U1FDA>,<U1F76>);(<U1FDB>,<U1F77>);(<U1FE8>,<U1FE0>);/ - (<U1FE9>,<U1FE1>);(<U1FEA>,<U1F7A>);(<U1FEB>,<U1F7B>);(<U1FEC>,<U1FE5>);/ - (<U1FF8>,<U1F78>);(<U1FF9>,<U1F79>);(<U1FFA>,<U1F7C>);(<U1FFB>,<U1F7D>);/ - (<U1FFC>,<U1FF3>);(<U2126>,<U03C9>);(<U212A>,<U006B>);(<U212B>,<U00E5>);/ - (<U2132>,<U214E>);(<U2160>,<U2170>);(<U2161>,<U2171>);(<U2162>,<U2172>);/ - (<U2163>,<U2173>);(<U2164>,<U2174>);(<U2165>,<U2175>);(<U2166>,<U2176>);/ - (<U2167>,<U2177>);(<U2168>,<U2178>);(<U2169>,<U2179>);(<U216A>,<U217A>);/ - (<U216B>,<U217B>);(<U216C>,<U217C>);(<U216D>,<U217D>);(<U216E>,<U217E>);/ - (<U216F>,<U217F>);(<U2183>,<U2184>);(<U24B6>,<U24D0>);(<U24B7>,<U24D1>);/ - (<U24B8>,<U24D2>);(<U24B9>,<U24D3>);(<U24BA>,<U24D4>);(<U24BB>,<U24D5>);/ - (<U24BC>,<U24D6>);(<U24BD>,<U24D7>);(<U24BE>,<U24D8>);(<U24BF>,<U24D9>);/ - (<U24C0>,<U24DA>);(<U24C1>,<U24DB>);(<U24C2>,<U24DC>);(<U24C3>,<U24DD>);/ - (<U24C4>,<U24DE>);(<U24C5>,<U24DF>);(<U24C6>,<U24E0>);(<U24C7>,<U24E1>);/ - (<U24C8>,<U24E2>);(<U24C9>,<U24E3>);(<U24CA>,<U24E4>);(<U24CB>,<U24E5>);/ - (<U24CC>,<U24E6>);(<U24CD>,<U24E7>);(<U24CE>,<U24E8>);(<U24CF>,<U24E9>);/ - (<U2C00>,<U2C30>);(<U2C01>,<U2C31>);(<U2C02>,<U2C32>);(<U2C03>,<U2C33>);/ - (<U2C04>,<U2C34>);(<U2C05>,<U2C35>);(<U2C06>,<U2C36>);(<U2C07>,<U2C37>);/ - (<U2C08>,<U2C38>);(<U2C09>,<U2C39>);(<U2C0A>,<U2C3A>);(<U2C0B>,<U2C3B>);/ - (<U2C0C>,<U2C3C>);(<U2C0D>,<U2C3D>);(<U2C0E>,<U2C3E>);(<U2C0F>,<U2C3F>);/ - (<U2C10>,<U2C40>);(<U2C11>,<U2C41>);(<U2C12>,<U2C42>);(<U2C13>,<U2C43>);/ - (<U2C14>,<U2C44>);(<U2C15>,<U2C45>);(<U2C16>,<U2C46>);(<U2C17>,<U2C47>);/ - (<U2C18>,<U2C48>);(<U2C19>,<U2C49>);(<U2C1A>,<U2C4A>);(<U2C1B>,<U2C4B>);/ - (<U2C1C>,<U2C4C>);(<U2C1D>,<U2C4D>);(<U2C1E>,<U2C4E>);(<U2C1F>,<U2C4F>);/ - (<U2C20>,<U2C50>);(<U2C21>,<U2C51>);(<U2C22>,<U2C52>);(<U2C23>,<U2C53>);/ - (<U2C24>,<U2C54>);(<U2C25>,<U2C55>);(<U2C26>,<U2C56>);(<U2C27>,<U2C57>);/ - (<U2C28>,<U2C58>);(<U2C29>,<U2C59>);(<U2C2A>,<U2C5A>);(<U2C2B>,<U2C5B>);/ - (<U2C2C>,<U2C5C>);(<U2C2D>,<U2C5D>);(<U2C2E>,<U2C5E>);(<U2C2F>,<U2C5F>);/ - (<U2C60>,<U2C61>);(<U2C62>,<U026B>);(<U2C63>,<U1D7D>);(<U2C64>,<U027D>);/ - (<U2C67>,<U2C68>);(<U2C69>,<U2C6A>);(<U2C6B>,<U2C6C>);(<U2C6D>,<U0251>);/ - (<U2C6E>,<U0271>);(<U2C6F>,<U0250>);(<U2C70>,<U0252>);(<U2C72>,<U2C73>);/ - (<U2C75>,<U2C76>);(<U2C7E>,<U023F>);(<U2C7F>,<U0240>);(<U2C80>,<U2C81>);/ - (<U2C82>,<U2C83>);(<U2C84>,<U2C85>);(<U2C86>,<U2C87>);(<U2C88>,<U2C89>);/ - (<U2C8A>,<U2C8B>);(<U2C8C>,<U2C8D>);(<U2C8E>,<U2C8F>);(<U2C90>,<U2C91>);/ - (<U2C92>,<U2C93>);(<U2C94>,<U2C95>);(<U2C96>,<U2C97>);(<U2C98>,<U2C99>);/ - (<U2C9A>,<U2C9B>);(<U2C9C>,<U2C9D>);(<U2C9E>,<U2C9F>);(<U2CA0>,<U2CA1>);/ - (<U2CA2>,<U2CA3>);(<U2CA4>,<U2CA5>);(<U2CA6>,<U2CA7>);(<U2CA8>,<U2CA9>);/ - (<U2CAA>,<U2CAB>);(<U2CAC>,<U2CAD>);(<U2CAE>,<U2CAF>);(<U2CB0>,<U2CB1>);/ - (<U2CB2>,<U2CB3>);(<U2CB4>,<U2CB5>);(<U2CB6>,<U2CB7>);(<U2CB8>,<U2CB9>);/ - (<U2CBA>,<U2CBB>);(<U2CBC>,<U2CBD>);(<U2CBE>,<U2CBF>);(<U2CC0>,<U2CC1>);/ - (<U2CC2>,<U2CC3>);(<U2CC4>,<U2CC5>);(<U2CC6>,<U2CC7>);(<U2CC8>,<U2CC9>);/ - (<U2CCA>,<U2CCB>);(<U2CCC>,<U2CCD>);(<U2CCE>,<U2CCF>);(<U2CD0>,<U2CD1>);/ - (<U2CD2>,<U2CD3>);(<U2CD4>,<U2CD5>);(<U2CD6>,<U2CD7>);(<U2CD8>,<U2CD9>);/ - (<U2CDA>,<U2CDB>);(<U2CDC>,<U2CDD>);(<U2CDE>,<U2CDF>);(<U2CE0>,<U2CE1>);/ - (<U2CE2>,<U2CE3>);(<U2CEB>,<U2CEC>);(<U2CED>,<U2CEE>);(<U2CF2>,<U2CF3>);/ - (<UA640>,<UA641>);(<UA642>,<UA643>);(<UA644>,<UA645>);(<UA646>,<UA647>);/ - (<UA648>,<UA649>);(<UA64A>,<UA64B>);(<UA64C>,<UA64D>);(<UA64E>,<UA64F>);/ - (<UA650>,<UA651>);(<UA652>,<UA653>);(<UA654>,<UA655>);(<UA656>,<UA657>);/ - (<UA658>,<UA659>);(<UA65A>,<UA65B>);(<UA65C>,<UA65D>);(<UA65E>,<UA65F>);/ - (<UA660>,<UA661>);(<UA662>,<UA663>);(<UA664>,<UA665>);(<UA666>,<UA667>);/ - (<UA668>,<UA669>);(<UA66A>,<UA66B>);(<UA66C>,<UA66D>);(<UA680>,<UA681>);/ - (<UA682>,<UA683>);(<UA684>,<UA685>);(<UA686>,<UA687>);(<UA688>,<UA689>);/ - (<UA68A>,<UA68B>);(<UA68C>,<UA68D>);(<UA68E>,<UA68F>);(<UA690>,<UA691>);/ - (<UA692>,<UA693>);(<UA694>,<UA695>);(<UA696>,<UA697>);(<UA698>,<UA699>);/ - (<UA69A>,<UA69B>);(<UA722>,<UA723>);(<UA724>,<UA725>);(<UA726>,<UA727>);/ - (<UA728>,<UA729>);(<UA72A>,<UA72B>);(<UA72C>,<UA72D>);(<UA72E>,<UA72F>);/ - (<UA732>,<UA733>);(<UA734>,<UA735>);(<UA736>,<UA737>);(<UA738>,<UA739>);/ - (<UA73A>,<UA73B>);(<UA73C>,<UA73D>);(<UA73E>,<UA73F>);(<UA740>,<UA741>);/ - (<UA742>,<UA743>);(<UA744>,<UA745>);(<UA746>,<UA747>);(<UA748>,<UA749>);/ - (<UA74A>,<UA74B>);(<UA74C>,<UA74D>);(<UA74E>,<UA74F>);(<UA750>,<UA751>);/ - (<UA752>,<UA753>);(<UA754>,<UA755>);(<UA756>,<UA757>);(<UA758>,<UA759>);/ - (<UA75A>,<UA75B>);(<UA75C>,<UA75D>);(<UA75E>,<UA75F>);(<UA760>,<UA761>);/ - (<UA762>,<UA763>);(<UA764>,<UA765>);(<UA766>,<UA767>);(<UA768>,<UA769>);/ - (<UA76A>,<UA76B>);(<UA76C>,<UA76D>);(<UA76E>,<UA76F>);(<UA779>,<UA77A>);/ - (<UA77B>,<UA77C>);(<UA77D>,<U1D79>);(<UA77E>,<UA77F>);(<UA780>,<UA781>);/ - (<UA782>,<UA783>);(<UA784>,<UA785>);(<UA786>,<UA787>);(<UA78B>,<UA78C>);/ - (<UA78D>,<U0265>);(<UA790>,<UA791>);(<UA792>,<UA793>);(<UA796>,<UA797>);/ - (<UA798>,<UA799>);(<UA79A>,<UA79B>);(<UA79C>,<UA79D>);(<UA79E>,<UA79F>);/ - (<UA7A0>,<UA7A1>);(<UA7A2>,<UA7A3>);(<UA7A4>,<UA7A5>);(<UA7A6>,<UA7A7>);/ - (<UA7A8>,<UA7A9>);(<UA7AA>,<U0266>);(<UA7AB>,<U025C>);(<UA7AC>,<U0261>);/ - (<UA7AD>,<U026C>);(<UA7AE>,<U026A>);(<UA7B0>,<U029E>);(<UA7B1>,<U0287>);/ - (<UA7B2>,<U029D>);(<UA7B3>,<UAB53>);(<UA7B4>,<UA7B5>);(<UA7B6>,<UA7B7>);/ - (<UA7B8>,<UA7B9>);(<UA7BA>,<UA7BB>);(<UA7BC>,<UA7BD>);(<UA7BE>,<UA7BF>);/ - (<UA7C0>,<UA7C1>);(<UA7C2>,<UA7C3>);(<UA7C4>,<UA794>);(<UA7C5>,<U0282>);/ - (<UA7C6>,<U1D8E>);(<UA7C7>,<UA7C8>);(<UA7C9>,<UA7CA>);(<UA7D0>,<UA7D1>);/ - (<UA7D6>,<UA7D7>);(<UA7D8>,<UA7D9>);(<UA7F5>,<UA7F6>);(<UFF21>,<UFF41>);/ - (<UFF22>,<UFF42>);(<UFF23>,<UFF43>);(<UFF24>,<UFF44>);(<UFF25>,<UFF45>);/ - (<UFF26>,<UFF46>);(<UFF27>,<UFF47>);(<UFF28>,<UFF48>);(<UFF29>,<UFF49>);/ - (<UFF2A>,<UFF4A>);(<UFF2B>,<UFF4B>);(<UFF2C>,<UFF4C>);(<UFF2D>,<UFF4D>);/ - (<UFF2E>,<UFF4E>);(<UFF2F>,<UFF4F>);(<UFF30>,<UFF50>);(<UFF31>,<UFF51>);/ - (<UFF32>,<UFF52>);(<UFF33>,<UFF53>);(<UFF34>,<UFF54>);(<UFF35>,<UFF55>);/ - (<UFF36>,<UFF56>);(<UFF37>,<UFF57>);(<UFF38>,<UFF58>);(<UFF39>,<UFF59>);/ - (<UFF3A>,<UFF5A>);(<U00010400>,<U00010428>);(<U00010401>,<U00010429>);/ - (<U00010402>,<U0001042A>);(<U00010403>,<U0001042B>);/ - (<U00010404>,<U0001042C>);(<U00010405>,<U0001042D>);/ - (<U00010406>,<U0001042E>);(<U00010407>,<U0001042F>);/ - (<U00010408>,<U00010430>);(<U00010409>,<U00010431>);/ - (<U0001040A>,<U00010432>);(<U0001040B>,<U00010433>);/ - (<U0001040C>,<U00010434>);(<U0001040D>,<U00010435>);/ - (<U0001040E>,<U00010436>);(<U0001040F>,<U00010437>);/ - (<U00010410>,<U00010438>);(<U00010411>,<U00010439>);/ - (<U00010412>,<U0001043A>);(<U00010413>,<U0001043B>);/ - (<U00010414>,<U0001043C>);(<U00010415>,<U0001043D>);/ - (<U00010416>,<U0001043E>);(<U00010417>,<U0001043F>);/ - (<U00010418>,<U00010440>);(<U00010419>,<U00010441>);/ - (<U0001041A>,<U00010442>);(<U0001041B>,<U00010443>);/ - (<U0001041C>,<U00010444>);(<U0001041D>,<U00010445>);/ - (<U0001041E>,<U00010446>);(<U0001041F>,<U00010447>);/ - (<U00010420>,<U00010448>);(<U00010421>,<U00010449>);/ - (<U00010422>,<U0001044A>);(<U00010423>,<U0001044B>);/ - (<U00010424>,<U0001044C>);(<U00010425>,<U0001044D>);/ - (<U00010426>,<U0001044E>);(<U00010427>,<U0001044F>);/ - (<U000104B0>,<U000104D8>);(<U000104B1>,<U000104D9>);/ - (<U000104B2>,<U000104DA>);(<U000104B3>,<U000104DB>);/ - (<U000104B4>,<U000104DC>);(<U000104B5>,<U000104DD>);/ - (<U000104B6>,<U000104DE>);(<U000104B7>,<U000104DF>);/ - (<U000104B8>,<U000104E0>);(<U000104B9>,<U000104E1>);/ - (<U000104BA>,<U000104E2>);(<U000104BB>,<U000104E3>);/ - (<U000104BC>,<U000104E4>);(<U000104BD>,<U000104E5>);/ - (<U000104BE>,<U000104E6>);(<U000104BF>,<U000104E7>);/ - (<U000104C0>,<U000104E8>);(<U000104C1>,<U000104E9>);/ - (<U000104C2>,<U000104EA>);(<U000104C3>,<U000104EB>);/ - (<U000104C4>,<U000104EC>);(<U000104C5>,<U000104ED>);/ - (<U000104C6>,<U000104EE>);(<U000104C7>,<U000104EF>);/ - (<U000104C8>,<U000104F0>);(<U000104C9>,<U000104F1>);/ - (<U000104CA>,<U000104F2>);(<U000104CB>,<U000104F3>);/ - (<U000104CC>,<U000104F4>);(<U000104CD>,<U000104F5>);/ - (<U000104CE>,<U000104F6>);(<U000104CF>,<U000104F7>);/ - (<U000104D0>,<U000104F8>);(<U000104D1>,<U000104F9>);/ - (<U000104D2>,<U000104FA>);(<U000104D3>,<U000104FB>);/ - (<U00010570>,<U00010597>);(<U00010571>,<U00010598>);/ - (<U00010572>,<U00010599>);(<U00010573>,<U0001059A>);/ - (<U00010574>,<U0001059B>);(<U00010575>,<U0001059C>);/ - (<U00010576>,<U0001059D>);(<U00010577>,<U0001059E>);/ - (<U00010578>,<U0001059F>);(<U00010579>,<U000105A0>);/ - (<U0001057A>,<U000105A1>);(<U0001057C>,<U000105A3>);/ - (<U0001057D>,<U000105A4>);(<U0001057E>,<U000105A5>);/ - (<U0001057F>,<U000105A6>);(<U00010580>,<U000105A7>);/ - (<U00010581>,<U000105A8>);(<U00010582>,<U000105A9>);/ - (<U00010583>,<U000105AA>);(<U00010584>,<U000105AB>);/ - (<U00010585>,<U000105AC>);(<U00010586>,<U000105AD>);/ - (<U00010587>,<U000105AE>);(<U00010588>,<U000105AF>);/ - (<U00010589>,<U000105B0>);(<U0001058A>,<U000105B1>);/ - (<U0001058C>,<U000105B3>);(<U0001058D>,<U000105B4>);/ - (<U0001058E>,<U000105B5>);(<U0001058F>,<U000105B6>);/ - (<U00010590>,<U000105B7>);(<U00010591>,<U000105B8>);/ - (<U00010592>,<U000105B9>);(<U00010594>,<U000105BB>);/ - (<U00010595>,<U000105BC>);(<U00010C80>,<U00010CC0>);/ - (<U00010C81>,<U00010CC1>);(<U00010C82>,<U00010CC2>);/ - (<U00010C83>,<U00010CC3>);(<U00010C84>,<U00010CC4>);/ - (<U00010C85>,<U00010CC5>);(<U00010C86>,<U00010CC6>);/ - (<U00010C87>,<U00010CC7>);(<U00010C88>,<U00010CC8>);/ - (<U00010C89>,<U00010CC9>);(<U00010C8A>,<U00010CCA>);/ - (<U00010C8B>,<U00010CCB>);(<U00010C8C>,<U00010CCC>);/ - (<U00010C8D>,<U00010CCD>);(<U00010C8E>,<U00010CCE>);/ - (<U00010C8F>,<U00010CCF>);(<U00010C90>,<U00010CD0>);/ - (<U00010C91>,<U00010CD1>);(<U00010C92>,<U00010CD2>);/ - (<U00010C93>,<U00010CD3>);(<U00010C94>,<U00010CD4>);/ - (<U00010C95>,<U00010CD5>);(<U00010C96>,<U00010CD6>);/ - (<U00010C97>,<U00010CD7>);(<U00010C98>,<U00010CD8>);/ - (<U00010C99>,<U00010CD9>);(<U00010C9A>,<U00010CDA>);/ - (<U00010C9B>,<U00010CDB>);(<U00010C9C>,<U00010CDC>);/ - (<U00010C9D>,<U00010CDD>);(<U00010C9E>,<U00010CDE>);/ - (<U00010C9F>,<U00010CDF>);(<U00010CA0>,<U00010CE0>);/ - (<U00010CA1>,<U00010CE1>);(<U00010CA2>,<U00010CE2>);/ - (<U00010CA3>,<U00010CE3>);(<U00010CA4>,<U00010CE4>);/ - (<U00010CA5>,<U00010CE5>);(<U00010CA6>,<U00010CE6>);/ - (<U00010CA7>,<U00010CE7>);(<U00010CA8>,<U00010CE8>);/ - (<U00010CA9>,<U00010CE9>);(<U00010CAA>,<U00010CEA>);/ - (<U00010CAB>,<U00010CEB>);(<U00010CAC>,<U00010CEC>);/ - (<U00010CAD>,<U00010CED>);(<U00010CAE>,<U00010CEE>);/ - (<U00010CAF>,<U00010CEF>);(<U00010CB0>,<U00010CF0>);/ - (<U00010CB1>,<U00010CF1>);(<U00010CB2>,<U00010CF2>);/ - (<U000118A0>,<U000118C0>);(<U000118A1>,<U000118C1>);/ - (<U000118A2>,<U000118C2>);(<U000118A3>,<U000118C3>);/ - (<U000118A4>,<U000118C4>);(<U000118A5>,<U000118C5>);/ - (<U000118A6>,<U000118C6>);(<U000118A7>,<U000118C7>);/ - (<U000118A8>,<U000118C8>);(<U000118A9>,<U000118C9>);/ - (<U000118AA>,<U000118CA>);(<U000118AB>,<U000118CB>);/ - (<U000118AC>,<U000118CC>);(<U000118AD>,<U000118CD>);/ - (<U000118AE>,<U000118CE>);(<U000118AF>,<U000118CF>);/ - (<U000118B0>,<U000118D0>);(<U000118B1>,<U000118D1>);/ - (<U000118B2>,<U000118D2>);(<U000118B3>,<U000118D3>);/ - (<U000118B4>,<U000118D4>);(<U000118B5>,<U000118D5>);/ - (<U000118B6>,<U000118D6>);(<U000118B7>,<U000118D7>);/ - (<U000118B8>,<U000118D8>);(<U000118B9>,<U000118D9>);/ - (<U000118BA>,<U000118DA>);(<U000118BB>,<U000118DB>);/ - (<U000118BC>,<U000118DC>);(<U000118BD>,<U000118DD>);/ - (<U000118BE>,<U000118DE>);(<U000118BF>,<U000118DF>);/ - (<U00016E40>,<U00016E60>);(<U00016E41>,<U00016E61>);/ - (<U00016E42>,<U00016E62>);(<U00016E43>,<U00016E63>);/ - (<U00016E44>,<U00016E64>);(<U00016E45>,<U00016E65>);/ - (<U00016E46>,<U00016E66>);(<U00016E47>,<U00016E67>);/ - (<U00016E48>,<U00016E68>);(<U00016E49>,<U00016E69>);/ - (<U00016E4A>,<U00016E6A>);(<U00016E4B>,<U00016E6B>);/ - (<U00016E4C>,<U00016E6C>);(<U00016E4D>,<U00016E6D>);/ - (<U00016E4E>,<U00016E6E>);(<U00016E4F>,<U00016E6F>);/ - (<U00016E50>,<U00016E70>);(<U00016E51>,<U00016E71>);/ - (<U00016E52>,<U00016E72>);(<U00016E53>,<U00016E73>);/ - (<U00016E54>,<U00016E74>);(<U00016E55>,<U00016E75>);/ - (<U00016E56>,<U00016E76>);(<U00016E57>,<U00016E77>);/ - (<U00016E58>,<U00016E78>);(<U00016E59>,<U00016E79>);/ - (<U00016E5A>,<U00016E7A>);(<U00016E5B>,<U00016E7B>);/ - (<U00016E5C>,<U00016E7C>);(<U00016E5D>,<U00016E7D>);/ - (<U00016E5E>,<U00016E7E>);(<U00016E5F>,<U00016E7F>);/ - (<U0001E900>,<U0001E922>);(<U0001E901>,<U0001E923>);/ - (<U0001E902>,<U0001E924>);(<U0001E903>,<U0001E925>);/ - (<U0001E904>,<U0001E926>);(<U0001E905>,<U0001E927>);/ - (<U0001E906>,<U0001E928>);(<U0001E907>,<U0001E929>);/ - (<U0001E908>,<U0001E92A>);(<U0001E909>,<U0001E92B>);/ - (<U0001E90A>,<U0001E92C>);(<U0001E90B>,<U0001E92D>);/ - (<U0001E90C>,<U0001E92E>);(<U0001E90D>,<U0001E92F>);/ - (<U0001E90E>,<U0001E930>);(<U0001E90F>,<U0001E931>);/ - (<U0001E910>,<U0001E932>);(<U0001E911>,<U0001E933>);/ - (<U0001E912>,<U0001E934>);(<U0001E913>,<U0001E935>);/ - (<U0001E914>,<U0001E936>);(<U0001E915>,<U0001E937>);/ - (<U0001E916>,<U0001E938>);(<U0001E917>,<U0001E939>);/ - (<U0001E918>,<U0001E93A>);(<U0001E919>,<U0001E93B>);/ - (<U0001E91A>,<U0001E93C>);(<U0001E91B>,<U0001E93D>);/ - (<U0001E91C>,<U0001E93E>);(<U0001E91D>,<U0001E93F>);/ - (<U0001E91E>,<U0001E940>);(<U0001E91F>,<U0001E941>);/ - (<U0001E920>,<U0001E942>);(<U0001E921>,<U0001E943>) + (<U13F3>,<U13FB>);(<U13F4>,<U13FC>);(<U13F5>,<U13FD>);(<U1C89>,<U1C8A>);/ + (<U1C90>,<U10D0>);(<U1C91>,<U10D1>);(<U1C92>,<U10D2>);(<U1C93>,<U10D3>);/ + (<U1C94>,<U10D4>);(<U1C95>,<U10D5>);(<U1C96>,<U10D6>);(<U1C97>,<U10D7>);/ + (<U1C98>,<U10D8>);(<U1C99>,<U10D9>);(<U1C9A>,<U10DA>);(<U1C9B>,<U10DB>);/ + (<U1C9C>,<U10DC>);(<U1C9D>,<U10DD>);(<U1C9E>,<U10DE>);(<U1C9F>,<U10DF>);/ + (<U1CA0>,<U10E0>);(<U1CA1>,<U10E1>);(<U1CA2>,<U10E2>);(<U1CA3>,<U10E3>);/ + (<U1CA4>,<U10E4>);(<U1CA5>,<U10E5>);(<U1CA6>,<U10E6>);(<U1CA7>,<U10E7>);/ + (<U1CA8>,<U10E8>);(<U1CA9>,<U10E9>);(<U1CAA>,<U10EA>);(<U1CAB>,<U10EB>);/ + (<U1CAC>,<U10EC>);(<U1CAD>,<U10ED>);(<U1CAE>,<U10EE>);(<U1CAF>,<U10EF>);/ + (<U1CB0>,<U10F0>);(<U1CB1>,<U10F1>);(<U1CB2>,<U10F2>);(<U1CB3>,<U10F3>);/ + (<U1CB4>,<U10F4>);(<U1CB5>,<U10F5>);(<U1CB6>,<U10F6>);(<U1CB7>,<U10F7>);/ + (<U1CB8>,<U10F8>);(<U1CB9>,<U10F9>);(<U1CBA>,<U10FA>);(<U1CBD>,<U10FD>);/ + (<U1CBE>,<U10FE>);(<U1CBF>,<U10FF>);(<U1E00>,<U1E01>);(<U1E02>,<U1E03>);/ + (<U1E04>,<U1E05>);(<U1E06>,<U1E07>);(<U1E08>,<U1E09>);(<U1E0A>,<U1E0B>);/ + (<U1E0C>,<U1E0D>);(<U1E0E>,<U1E0F>);(<U1E10>,<U1E11>);(<U1E12>,<U1E13>);/ + (<U1E14>,<U1E15>);(<U1E16>,<U1E17>);(<U1E18>,<U1E19>);(<U1E1A>,<U1E1B>);/ + (<U1E1C>,<U1E1D>);(<U1E1E>,<U1E1F>);(<U1E20>,<U1E21>);(<U1E22>,<U1E23>);/ + (<U1E24>,<U1E25>);(<U1E26>,<U1E27>);(<U1E28>,<U1E29>);(<U1E2A>,<U1E2B>);/ + (<U1E2C>,<U1E2D>);(<U1E2E>,<U1E2F>);(<U1E30>,<U1E31>);(<U1E32>,<U1E33>);/ + (<U1E34>,<U1E35>);(<U1E36>,<U1E37>);(<U1E38>,<U1E39>);(<U1E3A>,<U1E3B>);/ + (<U1E3C>,<U1E3D>);(<U1E3E>,<U1E3F>);(<U1E40>,<U1E41>);(<U1E42>,<U1E43>);/ + (<U1E44>,<U1E45>);(<U1E46>,<U1E47>);(<U1E48>,<U1E49>);(<U1E4A>,<U1E4B>);/ + (<U1E4C>,<U1E4D>);(<U1E4E>,<U1E4F>);(<U1E50>,<U1E51>);(<U1E52>,<U1E53>);/ + (<U1E54>,<U1E55>);(<U1E56>,<U1E57>);(<U1E58>,<U1E59>);(<U1E5A>,<U1E5B>);/ + (<U1E5C>,<U1E5D>);(<U1E5E>,<U1E5F>);(<U1E60>,<U1E61>);(<U1E62>,<U1E63>);/ + (<U1E64>,<U1E65>);(<U1E66>,<U1E67>);(<U1E68>,<U1E69>);(<U1E6A>,<U1E6B>);/ + (<U1E6C>,<U1E6D>);(<U1E6E>,<U1E6F>);(<U1E70>,<U1E71>);(<U1E72>,<U1E73>);/ + (<U1E74>,<U1E75>);(<U1E76>,<U1E77>);(<U1E78>,<U1E79>);(<U1E7A>,<U1E7B>);/ + (<U1E7C>,<U1E7D>);(<U1E7E>,<U1E7F>);(<U1E80>,<U1E81>);(<U1E82>,<U1E83>);/ + (<U1E84>,<U1E85>);(<U1E86>,<U1E87>);(<U1E88>,<U1E89>);(<U1E8A>,<U1E8B>);/ + (<U1E8C>,<U1E8D>);(<U1E8E>,<U1E8F>);(<U1E90>,<U1E91>);(<U1E92>,<U1E93>);/ + (<U1E94>,<U1E95>);(<U1E9E>,<U00DF>);(<U1EA0>,<U1EA1>);(<U1EA2>,<U1EA3>);/ + (<U1EA4>,<U1EA5>);(<U1EA6>,<U1EA7>);(<U1EA8>,<U1EA9>);(<U1EAA>,<U1EAB>);/ + (<U1EAC>,<U1EAD>);(<U1EAE>,<U1EAF>);(<U1EB0>,<U1EB1>);(<U1EB2>,<U1EB3>);/ + (<U1EB4>,<U1EB5>);(<U1EB6>,<U1EB7>);(<U1EB8>,<U1EB9>);(<U1EBA>,<U1EBB>);/ + (<U1EBC>,<U1EBD>);(<U1EBE>,<U1EBF>);(<U1EC0>,<U1EC1>);(<U1EC2>,<U1EC3>);/ + (<U1EC4>,<U1EC5>);(<U1EC6>,<U1EC7>);(<U1EC8>,<U1EC9>);(<U1ECA>,<U1ECB>);/ + (<U1ECC>,<U1ECD>);(<U1ECE>,<U1ECF>);(<U1ED0>,<U1ED1>);(<U1ED2>,<U1ED3>);/ + (<U1ED4>,<U1ED5>);(<U1ED6>,<U1ED7>);(<U1ED8>,<U1ED9>);(<U1EDA>,<U1EDB>);/ + (<U1EDC>,<U1EDD>);(<U1EDE>,<U1EDF>);(<U1EE0>,<U1EE1>);(<U1EE2>,<U1EE3>);/ + (<U1EE4>,<U1EE5>);(<U1EE6>,<U1EE7>);(<U1EE8>,<U1EE9>);(<U1EEA>,<U1EEB>);/ + (<U1EEC>,<U1EED>);(<U1EEE>,<U1EEF>);(<U1EF0>,<U1EF1>);(<U1EF2>,<U1EF3>);/ + (<U1EF4>,<U1EF5>);(<U1EF6>,<U1EF7>);(<U1EF8>,<U1EF9>);(<U1EFA>,<U1EFB>);/ + (<U1EFC>,<U1EFD>);(<U1EFE>,<U1EFF>);(<U1F08>,<U1F00>);(<U1F09>,<U1F01>);/ + (<U1F0A>,<U1F02>);(<U1F0B>,<U1F03>);(<U1F0C>,<U1F04>);(<U1F0D>,<U1F05>);/ + (<U1F0E>,<U1F06>);(<U1F0F>,<U1F07>);(<U1F18>,<U1F10>);(<U1F19>,<U1F11>);/ + (<U1F1A>,<U1F12>);(<U1F1B>,<U1F13>);(<U1F1C>,<U1F14>);(<U1F1D>,<U1F15>);/ + (<U1F28>,<U1F20>);(<U1F29>,<U1F21>);(<U1F2A>,<U1F22>);(<U1F2B>,<U1F23>);/ + (<U1F2C>,<U1F24>);(<U1F2D>,<U1F25>);(<U1F2E>,<U1F26>);(<U1F2F>,<U1F27>);/ + (<U1F38>,<U1F30>);(<U1F39>,<U1F31>);(<U1F3A>,<U1F32>);(<U1F3B>,<U1F33>);/ + (<U1F3C>,<U1F34>);(<U1F3D>,<U1F35>);(<U1F3E>,<U1F36>);(<U1F3F>,<U1F37>);/ + (<U1F48>,<U1F40>);(<U1F49>,<U1F41>);(<U1F4A>,<U1F42>);(<U1F4B>,<U1F43>);/ + (<U1F4C>,<U1F44>);(<U1F4D>,<U1F45>);(<U1F59>,<U1F51>);(<U1F5B>,<U1F53>);/ + (<U1F5D>,<U1F55>);(<U1F5F>,<U1F57>);(<U1F68>,<U1F60>);(<U1F69>,<U1F61>);/ + (<U1F6A>,<U1F62>);(<U1F6B>,<U1F63>);(<U1F6C>,<U1F64>);(<U1F6D>,<U1F65>);/ + (<U1F6E>,<U1F66>);(<U1F6F>,<U1F67>);(<U1F88>,<U1F80>);(<U1F89>,<U1F81>);/ + (<U1F8A>,<U1F82>);(<U1F8B>,<U1F83>);(<U1F8C>,<U1F84>);(<U1F8D>,<U1F85>);/ + (<U1F8E>,<U1F86>);(<U1F8F>,<U1F87>);(<U1F98>,<U1F90>);(<U1F99>,<U1F91>);/ + (<U1F9A>,<U1F92>);(<U1F9B>,<U1F93>);(<U1F9C>,<U1F94>);(<U1F9D>,<U1F95>);/ + (<U1F9E>,<U1F96>);(<U1F9F>,<U1F97>);(<U1FA8>,<U1FA0>);(<U1FA9>,<U1FA1>);/ + (<U1FAA>,<U1FA2>);(<U1FAB>,<U1FA3>);(<U1FAC>,<U1FA4>);(<U1FAD>,<U1FA5>);/ + (<U1FAE>,<U1FA6>);(<U1FAF>,<U1FA7>);(<U1FB8>,<U1FB0>);(<U1FB9>,<U1FB1>);/ + (<U1FBA>,<U1F70>);(<U1FBB>,<U1F71>);(<U1FBC>,<U1FB3>);(<U1FC8>,<U1F72>);/ + (<U1FC9>,<U1F73>);(<U1FCA>,<U1F74>);(<U1FCB>,<U1F75>);(<U1FCC>,<U1FC3>);/ + (<U1FD8>,<U1FD0>);(<U1FD9>,<U1FD1>);(<U1FDA>,<U1F76>);(<U1FDB>,<U1F77>);/ + (<U1FE8>,<U1FE0>);(<U1FE9>,<U1FE1>);(<U1FEA>,<U1F7A>);(<U1FEB>,<U1F7B>);/ + (<U1FEC>,<U1FE5>);(<U1FF8>,<U1F78>);(<U1FF9>,<U1F79>);(<U1FFA>,<U1F7C>);/ + (<U1FFB>,<U1F7D>);(<U1FFC>,<U1FF3>);(<U2126>,<U03C9>);(<U212A>,<U006B>);/ + (<U212B>,<U00E5>);(<U2132>,<U214E>);(<U2160>,<U2170>);(<U2161>,<U2171>);/ + (<U2162>,<U2172>);(<U2163>,<U2173>);(<U2164>,<U2174>);(<U2165>,<U2175>);/ + (<U2166>,<U2176>);(<U2167>,<U2177>);(<U2168>,<U2178>);(<U2169>,<U2179>);/ + (<U216A>,<U217A>);(<U216B>,<U217B>);(<U216C>,<U217C>);(<U216D>,<U217D>);/ + (<U216E>,<U217E>);(<U216F>,<U217F>);(<U2183>,<U2184>);(<U24B6>,<U24D0>);/ + (<U24B7>,<U24D1>);(<U24B8>,<U24D2>);(<U24B9>,<U24D3>);(<U24BA>,<U24D4>);/ + (<U24BB>,<U24D5>);(<U24BC>,<U24D6>);(<U24BD>,<U24D7>);(<U24BE>,<U24D8>);/ + (<U24BF>,<U24D9>);(<U24C0>,<U24DA>);(<U24C1>,<U24DB>);(<U24C2>,<U24DC>);/ + (<U24C3>,<U24DD>);(<U24C4>,<U24DE>);(<U24C5>,<U24DF>);(<U24C6>,<U24E0>);/ + (<U24C7>,<U24E1>);(<U24C8>,<U24E2>);(<U24C9>,<U24E3>);(<U24CA>,<U24E4>);/ + (<U24CB>,<U24E5>);(<U24CC>,<U24E6>);(<U24CD>,<U24E7>);(<U24CE>,<U24E8>);/ + (<U24CF>,<U24E9>);(<U2C00>,<U2C30>);(<U2C01>,<U2C31>);(<U2C02>,<U2C32>);/ + (<U2C03>,<U2C33>);(<U2C04>,<U2C34>);(<U2C05>,<U2C35>);(<U2C06>,<U2C36>);/ + (<U2C07>,<U2C37>);(<U2C08>,<U2C38>);(<U2C09>,<U2C39>);(<U2C0A>,<U2C3A>);/ + (<U2C0B>,<U2C3B>);(<U2C0C>,<U2C3C>);(<U2C0D>,<U2C3D>);(<U2C0E>,<U2C3E>);/ + (<U2C0F>,<U2C3F>);(<U2C10>,<U2C40>);(<U2C11>,<U2C41>);(<U2C12>,<U2C42>);/ + (<U2C13>,<U2C43>);(<U2C14>,<U2C44>);(<U2C15>,<U2C45>);(<U2C16>,<U2C46>);/ + (<U2C17>,<U2C47>);(<U2C18>,<U2C48>);(<U2C19>,<U2C49>);(<U2C1A>,<U2C4A>);/ + (<U2C1B>,<U2C4B>);(<U2C1C>,<U2C4C>);(<U2C1D>,<U2C4D>);(<U2C1E>,<U2C4E>);/ + (<U2C1F>,<U2C4F>);(<U2C20>,<U2C50>);(<U2C21>,<U2C51>);(<U2C22>,<U2C52>);/ + (<U2C23>,<U2C53>);(<U2C24>,<U2C54>);(<U2C25>,<U2C55>);(<U2C26>,<U2C56>);/ + (<U2C27>,<U2C57>);(<U2C28>,<U2C58>);(<U2C29>,<U2C59>);(<U2C2A>,<U2C5A>);/ + (<U2C2B>,<U2C5B>);(<U2C2C>,<U2C5C>);(<U2C2D>,<U2C5D>);(<U2C2E>,<U2C5E>);/ + (<U2C2F>,<U2C5F>);(<U2C60>,<U2C61>);(<U2C62>,<U026B>);(<U2C63>,<U1D7D>);/ + (<U2C64>,<U027D>);(<U2C67>,<U2C68>);(<U2C69>,<U2C6A>);(<U2C6B>,<U2C6C>);/ + (<U2C6D>,<U0251>);(<U2C6E>,<U0271>);(<U2C6F>,<U0250>);(<U2C70>,<U0252>);/ + (<U2C72>,<U2C73>);(<U2C75>,<U2C76>);(<U2C7E>,<U023F>);(<U2C7F>,<U0240>);/ + (<U2C80>,<U2C81>);(<U2C82>,<U2C83>);(<U2C84>,<U2C85>);(<U2C86>,<U2C87>);/ + (<U2C88>,<U2C89>);(<U2C8A>,<U2C8B>);(<U2C8C>,<U2C8D>);(<U2C8E>,<U2C8F>);/ + (<U2C90>,<U2C91>);(<U2C92>,<U2C93>);(<U2C94>,<U2C95>);(<U2C96>,<U2C97>);/ + (<U2C98>,<U2C99>);(<U2C9A>,<U2C9B>);(<U2C9C>,<U2C9D>);(<U2C9E>,<U2C9F>);/ + (<U2CA0>,<U2CA1>);(<U2CA2>,<U2CA3>);(<U2CA4>,<U2CA5>);(<U2CA6>,<U2CA7>);/ + (<U2CA8>,<U2CA9>);(<U2CAA>,<U2CAB>);(<U2CAC>,<U2CAD>);(<U2CAE>,<U2CAF>);/ + (<U2CB0>,<U2CB1>);(<U2CB2>,<U2CB3>);(<U2CB4>,<U2CB5>);(<U2CB6>,<U2CB7>);/ + (<U2CB8>,<U2CB9>);(<U2CBA>,<U2CBB>);(<U2CBC>,<U2CBD>);(<U2CBE>,<U2CBF>);/ + (<U2CC0>,<U2CC1>);(<U2CC2>,<U2CC3>);(<U2CC4>,<U2CC5>);(<U2CC6>,<U2CC7>);/ + (<U2CC8>,<U2CC9>);(<U2CCA>,<U2CCB>);(<U2CCC>,<U2CCD>);(<U2CCE>,<U2CCF>);/ + (<U2CD0>,<U2CD1>);(<U2CD2>,<U2CD3>);(<U2CD4>,<U2CD5>);(<U2CD6>,<U2CD7>);/ + (<U2CD8>,<U2CD9>);(<U2CDA>,<U2CDB>);(<U2CDC>,<U2CDD>);(<U2CDE>,<U2CDF>);/ + (<U2CE0>,<U2CE1>);(<U2CE2>,<U2CE3>);(<U2CEB>,<U2CEC>);(<U2CED>,<U2CEE>);/ + (<U2CF2>,<U2CF3>);(<UA640>,<UA641>);(<UA642>,<UA643>);(<UA644>,<UA645>);/ + (<UA646>,<UA647>);(<UA648>,<UA649>);(<UA64A>,<UA64B>);(<UA64C>,<UA64D>);/ + (<UA64E>,<UA64F>);(<UA650>,<UA651>);(<UA652>,<UA653>);(<UA654>,<UA655>);/ + (<UA656>,<UA657>);(<UA658>,<UA659>);(<UA65A>,<UA65B>);(<UA65C>,<UA65D>);/ + (<UA65E>,<UA65F>);(<UA660>,<UA661>);(<UA662>,<UA663>);(<UA664>,<UA665>);/ + (<UA666>,<UA667>);(<UA668>,<UA669>);(<UA66A>,<UA66B>);(<UA66C>,<UA66D>);/ + (<UA680>,<UA681>);(<UA682>,<UA683>);(<UA684>,<UA685>);(<UA686>,<UA687>);/ + (<UA688>,<UA689>);(<UA68A>,<UA68B>);(<UA68C>,<UA68D>);(<UA68E>,<UA68F>);/ + (<UA690>,<UA691>);(<UA692>,<UA693>);(<UA694>,<UA695>);(<UA696>,<UA697>);/ + (<UA698>,<UA699>);(<UA69A>,<UA69B>);(<UA722>,<UA723>);(<UA724>,<UA725>);/ + (<UA726>,<UA727>);(<UA728>,<UA729>);(<UA72A>,<UA72B>);(<UA72C>,<UA72D>);/ + (<UA72E>,<UA72F>);(<UA732>,<UA733>);(<UA734>,<UA735>);(<UA736>,<UA737>);/ + (<UA738>,<UA739>);(<UA73A>,<UA73B>);(<UA73C>,<UA73D>);(<UA73E>,<UA73F>);/ + (<UA740>,<UA741>);(<UA742>,<UA743>);(<UA744>,<UA745>);(<UA746>,<UA747>);/ + (<UA748>,<UA749>);(<UA74A>,<UA74B>);(<UA74C>,<UA74D>);(<UA74E>,<UA74F>);/ + (<UA750>,<UA751>);(<UA752>,<UA753>);(<UA754>,<UA755>);(<UA756>,<UA757>);/ + (<UA758>,<UA759>);(<UA75A>,<UA75B>);(<UA75C>,<UA75D>);(<UA75E>,<UA75F>);/ + (<UA760>,<UA761>);(<UA762>,<UA763>);(<UA764>,<UA765>);(<UA766>,<UA767>);/ + (<UA768>,<UA769>);(<UA76A>,<UA76B>);(<UA76C>,<UA76D>);(<UA76E>,<UA76F>);/ + (<UA779>,<UA77A>);(<UA77B>,<UA77C>);(<UA77D>,<U1D79>);(<UA77E>,<UA77F>);/ + (<UA780>,<UA781>);(<UA782>,<UA783>);(<UA784>,<UA785>);(<UA786>,<UA787>);/ + (<UA78B>,<UA78C>);(<UA78D>,<U0265>);(<UA790>,<UA791>);(<UA792>,<UA793>);/ + (<UA796>,<UA797>);(<UA798>,<UA799>);(<UA79A>,<UA79B>);(<UA79C>,<UA79D>);/ + (<UA79E>,<UA79F>);(<UA7A0>,<UA7A1>);(<UA7A2>,<UA7A3>);(<UA7A4>,<UA7A5>);/ + (<UA7A6>,<UA7A7>);(<UA7A8>,<UA7A9>);(<UA7AA>,<U0266>);(<UA7AB>,<U025C>);/ + (<UA7AC>,<U0261>);(<UA7AD>,<U026C>);(<UA7AE>,<U026A>);(<UA7B0>,<U029E>);/ + (<UA7B1>,<U0287>);(<UA7B2>,<U029D>);(<UA7B3>,<UAB53>);(<UA7B4>,<UA7B5>);/ + (<UA7B6>,<UA7B7>);(<UA7B8>,<UA7B9>);(<UA7BA>,<UA7BB>);(<UA7BC>,<UA7BD>);/ + (<UA7BE>,<UA7BF>);(<UA7C0>,<UA7C1>);(<UA7C2>,<UA7C3>);(<UA7C4>,<UA794>);/ + (<UA7C5>,<U0282>);(<UA7C6>,<U1D8E>);(<UA7C7>,<UA7C8>);(<UA7C9>,<UA7CA>);/ + (<UA7CB>,<U0264>);(<UA7CC>,<UA7CD>);(<UA7D0>,<UA7D1>);(<UA7D6>,<UA7D7>);/ + (<UA7D8>,<UA7D9>);(<UA7DA>,<UA7DB>);(<UA7DC>,<U019B>);(<UA7F5>,<UA7F6>);/ + (<UFF21>,<UFF41>);(<UFF22>,<UFF42>);(<UFF23>,<UFF43>);(<UFF24>,<UFF44>);/ + (<UFF25>,<UFF45>);(<UFF26>,<UFF46>);(<UFF27>,<UFF47>);(<UFF28>,<UFF48>);/ + (<UFF29>,<UFF49>);(<UFF2A>,<UFF4A>);(<UFF2B>,<UFF4B>);(<UFF2C>,<UFF4C>);/ + (<UFF2D>,<UFF4D>);(<UFF2E>,<UFF4E>);(<UFF2F>,<UFF4F>);(<UFF30>,<UFF50>);/ + (<UFF31>,<UFF51>);(<UFF32>,<UFF52>);(<UFF33>,<UFF53>);(<UFF34>,<UFF54>);/ + (<UFF35>,<UFF55>);(<UFF36>,<UFF56>);(<UFF37>,<UFF57>);(<UFF38>,<UFF58>);/ + (<UFF39>,<UFF59>);(<UFF3A>,<UFF5A>);(<U00010400>,<U00010428>);/ + (<U00010401>,<U00010429>);(<U00010402>,<U0001042A>);/ + (<U00010403>,<U0001042B>);(<U00010404>,<U0001042C>);/ + (<U00010405>,<U0001042D>);(<U00010406>,<U0001042E>);/ + (<U00010407>,<U0001042F>);(<U00010408>,<U00010430>);/ + (<U00010409>,<U00010431>);(<U0001040A>,<U00010432>);/ + (<U0001040B>,<U00010433>);(<U0001040C>,<U00010434>);/ + (<U0001040D>,<U00010435>);(<U0001040E>,<U00010436>);/ + (<U0001040F>,<U00010437>);(<U00010410>,<U00010438>);/ + (<U00010411>,<U00010439>);(<U00010412>,<U0001043A>);/ + (<U00010413>,<U0001043B>);(<U00010414>,<U0001043C>);/ + (<U00010415>,<U0001043D>);(<U00010416>,<U0001043E>);/ + (<U00010417>,<U0001043F>);(<U00010418>,<U00010440>);/ + (<U00010419>,<U00010441>);(<U0001041A>,<U00010442>);/ + (<U0001041B>,<U00010443>);(<U0001041C>,<U00010444>);/ + (<U0001041D>,<U00010445>);(<U0001041E>,<U00010446>);/ + (<U0001041F>,<U00010447>);(<U00010420>,<U00010448>);/ + (<U00010421>,<U00010449>);(<U00010422>,<U0001044A>);/ + (<U00010423>,<U0001044B>);(<U00010424>,<U0001044C>);/ + (<U00010425>,<U0001044D>);(<U00010426>,<U0001044E>);/ + (<U00010427>,<U0001044F>);(<U000104B0>,<U000104D8>);/ + (<U000104B1>,<U000104D9>);(<U000104B2>,<U000104DA>);/ + (<U000104B3>,<U000104DB>);(<U000104B4>,<U000104DC>);/ + (<U000104B5>,<U000104DD>);(<U000104B6>,<U000104DE>);/ + (<U000104B7>,<U000104DF>);(<U000104B8>,<U000104E0>);/ + (<U000104B9>,<U000104E1>);(<U000104BA>,<U000104E2>);/ + (<U000104BB>,<U000104E3>);(<U000104BC>,<U000104E4>);/ + (<U000104BD>,<U000104E5>);(<U000104BE>,<U000104E6>);/ + (<U000104BF>,<U000104E7>);(<U000104C0>,<U000104E8>);/ + (<U000104C1>,<U000104E9>);(<U000104C2>,<U000104EA>);/ + (<U000104C3>,<U000104EB>);(<U000104C4>,<U000104EC>);/ + (<U000104C5>,<U000104ED>);(<U000104C6>,<U000104EE>);/ + (<U000104C7>,<U000104EF>);(<U000104C8>,<U000104F0>);/ + (<U000104C9>,<U000104F1>);(<U000104CA>,<U000104F2>);/ + (<U000104CB>,<U000104F3>);(<U000104CC>,<U000104F4>);/ + (<U000104CD>,<U000104F5>);(<U000104CE>,<U000104F6>);/ + (<U000104CF>,<U000104F7>);(<U000104D0>,<U000104F8>);/ + (<U000104D1>,<U000104F9>);(<U000104D2>,<U000104FA>);/ + (<U000104D3>,<U000104FB>);(<U00010570>,<U00010597>);/ + (<U00010571>,<U00010598>);(<U00010572>,<U00010599>);/ + (<U00010573>,<U0001059A>);(<U00010574>,<U0001059B>);/ + (<U00010575>,<U0001059C>);(<U00010576>,<U0001059D>);/ + (<U00010577>,<U0001059E>);(<U00010578>,<U0001059F>);/ + (<U00010579>,<U000105A0>);(<U0001057A>,<U000105A1>);/ + (<U0001057C>,<U000105A3>);(<U0001057D>,<U000105A4>);/ + (<U0001057E>,<U000105A5>);(<U0001057F>,<U000105A6>);/ + (<U00010580>,<U000105A7>);(<U00010581>,<U000105A8>);/ + (<U00010582>,<U000105A9>);(<U00010583>,<U000105AA>);/ + (<U00010584>,<U000105AB>);(<U00010585>,<U000105AC>);/ + (<U00010586>,<U000105AD>);(<U00010587>,<U000105AE>);/ + (<U00010588>,<U000105AF>);(<U00010589>,<U000105B0>);/ + (<U0001058A>,<U000105B1>);(<U0001058C>,<U000105B3>);/ + (<U0001058D>,<U000105B4>);(<U0001058E>,<U000105B5>);/ + (<U0001058F>,<U000105B6>);(<U00010590>,<U000105B7>);/ + (<U00010591>,<U000105B8>);(<U00010592>,<U000105B9>);/ + (<U00010594>,<U000105BB>);(<U00010595>,<U000105BC>);/ + (<U00010C80>,<U00010CC0>);(<U00010C81>,<U00010CC1>);/ + (<U00010C82>,<U00010CC2>);(<U00010C83>,<U00010CC3>);/ + (<U00010C84>,<U00010CC4>);(<U00010C85>,<U00010CC5>);/ + (<U00010C86>,<U00010CC6>);(<U00010C87>,<U00010CC7>);/ + (<U00010C88>,<U00010CC8>);(<U00010C89>,<U00010CC9>);/ + (<U00010C8A>,<U00010CCA>);(<U00010C8B>,<U00010CCB>);/ + (<U00010C8C>,<U00010CCC>);(<U00010C8D>,<U00010CCD>);/ + (<U00010C8E>,<U00010CCE>);(<U00010C8F>,<U00010CCF>);/ + (<U00010C90>,<U00010CD0>);(<U00010C91>,<U00010CD1>);/ + (<U00010C92>,<U00010CD2>);(<U00010C93>,<U00010CD3>);/ + (<U00010C94>,<U00010CD4>);(<U00010C95>,<U00010CD5>);/ + (<U00010C96>,<U00010CD6>);(<U00010C97>,<U00010CD7>);/ + (<U00010C98>,<U00010CD8>);(<U00010C99>,<U00010CD9>);/ + (<U00010C9A>,<U00010CDA>);(<U00010C9B>,<U00010CDB>);/ + (<U00010C9C>,<U00010CDC>);(<U00010C9D>,<U00010CDD>);/ + (<U00010C9E>,<U00010CDE>);(<U00010C9F>,<U00010CDF>);/ + (<U00010CA0>,<U00010CE0>);(<U00010CA1>,<U00010CE1>);/ + (<U00010CA2>,<U00010CE2>);(<U00010CA3>,<U00010CE3>);/ + (<U00010CA4>,<U00010CE4>);(<U00010CA5>,<U00010CE5>);/ + (<U00010CA6>,<U00010CE6>);(<U00010CA7>,<U00010CE7>);/ + (<U00010CA8>,<U00010CE8>);(<U00010CA9>,<U00010CE9>);/ + (<U00010CAA>,<U00010CEA>);(<U00010CAB>,<U00010CEB>);/ + (<U00010CAC>,<U00010CEC>);(<U00010CAD>,<U00010CED>);/ + (<U00010CAE>,<U00010CEE>);(<U00010CAF>,<U00010CEF>);/ + (<U00010CB0>,<U00010CF0>);(<U00010CB1>,<U00010CF1>);/ + (<U00010CB2>,<U00010CF2>);(<U00010D50>,<U00010D70>);/ + (<U00010D51>,<U00010D71>);(<U00010D52>,<U00010D72>);/ + (<U00010D53>,<U00010D73>);(<U00010D54>,<U00010D74>);/ + (<U00010D55>,<U00010D75>);(<U00010D56>,<U00010D76>);/ + (<U00010D57>,<U00010D77>);(<U00010D58>,<U00010D78>);/ + (<U00010D59>,<U00010D79>);(<U00010D5A>,<U00010D7A>);/ + (<U00010D5B>,<U00010D7B>);(<U00010D5C>,<U00010D7C>);/ + (<U00010D5D>,<U00010D7D>);(<U00010D5E>,<U00010D7E>);/ + (<U00010D5F>,<U00010D7F>);(<U00010D60>,<U00010D80>);/ + (<U00010D61>,<U00010D81>);(<U00010D62>,<U00010D82>);/ + (<U00010D63>,<U00010D83>);(<U00010D64>,<U00010D84>);/ + (<U00010D65>,<U00010D85>);(<U000118A0>,<U000118C0>);/ + (<U000118A1>,<U000118C1>);(<U000118A2>,<U000118C2>);/ + (<U000118A3>,<U000118C3>);(<U000118A4>,<U000118C4>);/ + (<U000118A5>,<U000118C5>);(<U000118A6>,<U000118C6>);/ + (<U000118A7>,<U000118C7>);(<U000118A8>,<U000118C8>);/ + (<U000118A9>,<U000118C9>);(<U000118AA>,<U000118CA>);/ + (<U000118AB>,<U000118CB>);(<U000118AC>,<U000118CC>);/ + (<U000118AD>,<U000118CD>);(<U000118AE>,<U000118CE>);/ + (<U000118AF>,<U000118CF>);(<U000118B0>,<U000118D0>);/ + (<U000118B1>,<U000118D1>);(<U000118B2>,<U000118D2>);/ + (<U000118B3>,<U000118D3>);(<U000118B4>,<U000118D4>);/ + (<U000118B5>,<U000118D5>);(<U000118B6>,<U000118D6>);/ + (<U000118B7>,<U000118D7>);(<U000118B8>,<U000118D8>);/ + (<U000118B9>,<U000118D9>);(<U000118BA>,<U000118DA>);/ + (<U000118BB>,<U000118DB>);(<U000118BC>,<U000118DC>);/ + (<U000118BD>,<U000118DD>);(<U000118BE>,<U000118DE>);/ + (<U000118BF>,<U000118DF>);(<U00016E40>,<U00016E60>);/ + (<U00016E41>,<U00016E61>);(<U00016E42>,<U00016E62>);/ + (<U00016E43>,<U00016E63>);(<U00016E44>,<U00016E64>);/ + (<U00016E45>,<U00016E65>);(<U00016E46>,<U00016E66>);/ + (<U00016E47>,<U00016E67>);(<U00016E48>,<U00016E68>);/ + (<U00016E49>,<U00016E69>);(<U00016E4A>,<U00016E6A>);/ + (<U00016E4B>,<U00016E6B>);(<U00016E4C>,<U00016E6C>);/ + (<U00016E4D>,<U00016E6D>);(<U00016E4E>,<U00016E6E>);/ + (<U00016E4F>,<U00016E6F>);(<U00016E50>,<U00016E70>);/ + (<U00016E51>,<U00016E71>);(<U00016E52>,<U00016E72>);/ + (<U00016E53>,<U00016E73>);(<U00016E54>,<U00016E74>);/ + (<U00016E55>,<U00016E75>);(<U00016E56>,<U00016E76>);/ + (<U00016E57>,<U00016E77>);(<U00016E58>,<U00016E78>);/ + (<U00016E59>,<U00016E79>);(<U00016E5A>,<U00016E7A>);/ + (<U00016E5B>,<U00016E7B>);(<U00016E5C>,<U00016E7C>);/ + (<U00016E5D>,<U00016E7D>);(<U00016E5E>,<U00016E7E>);/ + (<U00016E5F>,<U00016E7F>);(<U0001E900>,<U0001E922>);/ + (<U0001E901>,<U0001E923>);(<U0001E902>,<U0001E924>);/ + (<U0001E903>,<U0001E925>);(<U0001E904>,<U0001E926>);/ + (<U0001E905>,<U0001E927>);(<U0001E906>,<U0001E928>);/ + (<U0001E907>,<U0001E929>);(<U0001E908>,<U0001E92A>);/ + (<U0001E909>,<U0001E92B>);(<U0001E90A>,<U0001E92C>);/ + (<U0001E90B>,<U0001E92D>);(<U0001E90C>,<U0001E92E>);/ + (<U0001E90D>,<U0001E92F>);(<U0001E90E>,<U0001E930>);/ + (<U0001E90F>,<U0001E931>);(<U0001E910>,<U0001E932>);/ + (<U0001E911>,<U0001E933>);(<U0001E912>,<U0001E934>);/ + (<U0001E913>,<U0001E935>);(<U0001E914>,<U0001E936>);/ + (<U0001E915>,<U0001E937>);(<U0001E916>,<U0001E938>);/ + (<U0001E917>,<U0001E939>);(<U0001E918>,<U0001E93A>);/ + (<U0001E919>,<U0001E93B>);(<U0001E91A>,<U0001E93C>);/ + (<U0001E91B>,<U0001E93D>);(<U0001E91C>,<U0001E93E>);/ + (<U0001E91D>,<U0001E93F>);(<U0001E91E>,<U0001E940>);/ + (<U0001E91F>,<U0001E941>);(<U0001E920>,<U0001E942>);/ + (<U0001E921>,<U0001E943>) map "totitle"; / (<U0061>,<U0041>);(<U0062>,<U0042>);(<U0063>,<U0043>);(<U0064>,<U0044>);/ @@ -2065,261 +2133,262 @@ map "totitle"; / (<U0177>,<U0176>);(<U017A>,<U0179>);(<U017C>,<U017B>);(<U017E>,<U017D>);/ (<U017F>,<U0053>);(<U0180>,<U0243>);(<U0183>,<U0182>);(<U0185>,<U0184>);/ (<U0188>,<U0187>);(<U018C>,<U018B>);(<U0192>,<U0191>);(<U0195>,<U01F6>);/ - (<U0199>,<U0198>);(<U019A>,<U023D>);(<U019E>,<U0220>);(<U01A1>,<U01A0>);/ - (<U01A3>,<U01A2>);(<U01A5>,<U01A4>);(<U01A8>,<U01A7>);(<U01AD>,<U01AC>);/ - (<U01B0>,<U01AF>);(<U01B4>,<U01B3>);(<U01B6>,<U01B5>);(<U01B9>,<U01B8>);/ - (<U01BD>,<U01BC>);(<U01BF>,<U01F7>);(<U01C4>,<U01C5>);(<U01C6>,<U01C5>);/ - (<U01C7>,<U01C8>);(<U01C9>,<U01C8>);(<U01CA>,<U01CB>);(<U01CC>,<U01CB>);/ - (<U01CE>,<U01CD>);(<U01D0>,<U01CF>);(<U01D2>,<U01D1>);(<U01D4>,<U01D3>);/ - (<U01D6>,<U01D5>);(<U01D8>,<U01D7>);(<U01DA>,<U01D9>);(<U01DC>,<U01DB>);/ - (<U01DD>,<U018E>);(<U01DF>,<U01DE>);(<U01E1>,<U01E0>);(<U01E3>,<U01E2>);/ - (<U01E5>,<U01E4>);(<U01E7>,<U01E6>);(<U01E9>,<U01E8>);(<U01EB>,<U01EA>);/ - (<U01ED>,<U01EC>);(<U01EF>,<U01EE>);(<U01F1>,<U01F2>);(<U01F3>,<U01F2>);/ - (<U01F5>,<U01F4>);(<U01F9>,<U01F8>);(<U01FB>,<U01FA>);(<U01FD>,<U01FC>);/ - (<U01FF>,<U01FE>);(<U0201>,<U0200>);(<U0203>,<U0202>);(<U0205>,<U0204>);/ - (<U0207>,<U0206>);(<U0209>,<U0208>);(<U020B>,<U020A>);(<U020D>,<U020C>);/ - (<U020F>,<U020E>);(<U0211>,<U0210>);(<U0213>,<U0212>);(<U0215>,<U0214>);/ - (<U0217>,<U0216>);(<U0219>,<U0218>);(<U021B>,<U021A>);(<U021D>,<U021C>);/ - (<U021F>,<U021E>);(<U0223>,<U0222>);(<U0225>,<U0224>);(<U0227>,<U0226>);/ - (<U0229>,<U0228>);(<U022B>,<U022A>);(<U022D>,<U022C>);(<U022F>,<U022E>);/ - (<U0231>,<U0230>);(<U0233>,<U0232>);(<U023C>,<U023B>);(<U023F>,<U2C7E>);/ - (<U0240>,<U2C7F>);(<U0242>,<U0241>);(<U0247>,<U0246>);(<U0249>,<U0248>);/ - (<U024B>,<U024A>);(<U024D>,<U024C>);(<U024F>,<U024E>);(<U0250>,<U2C6F>);/ - (<U0251>,<U2C6D>);(<U0252>,<U2C70>);(<U0253>,<U0181>);(<U0254>,<U0186>);/ - (<U0256>,<U0189>);(<U0257>,<U018A>);(<U0259>,<U018F>);(<U025B>,<U0190>);/ - (<U025C>,<UA7AB>);(<U0260>,<U0193>);(<U0261>,<UA7AC>);(<U0263>,<U0194>);/ - (<U0265>,<UA78D>);(<U0266>,<UA7AA>);(<U0268>,<U0197>);(<U0269>,<U0196>);/ - (<U026A>,<UA7AE>);(<U026B>,<U2C62>);(<U026C>,<UA7AD>);(<U026F>,<U019C>);/ - (<U0271>,<U2C6E>);(<U0272>,<U019D>);(<U0275>,<U019F>);(<U027D>,<U2C64>);/ - (<U0280>,<U01A6>);(<U0282>,<UA7C5>);(<U0283>,<U01A9>);(<U0287>,<UA7B1>);/ - (<U0288>,<U01AE>);(<U0289>,<U0244>);(<U028A>,<U01B1>);(<U028B>,<U01B2>);/ - (<U028C>,<U0245>);(<U0292>,<U01B7>);(<U029D>,<UA7B2>);(<U029E>,<UA7B0>);/ - (<U0345>,<U0399>);(<U0371>,<U0370>);(<U0373>,<U0372>);(<U0377>,<U0376>);/ - (<U037B>,<U03FD>);(<U037C>,<U03FE>);(<U037D>,<U03FF>);(<U03AC>,<U0386>);/ - (<U03AD>,<U0388>);(<U03AE>,<U0389>);(<U03AF>,<U038A>);(<U03B1>,<U0391>);/ - (<U03B2>,<U0392>);(<U03B3>,<U0393>);(<U03B4>,<U0394>);(<U03B5>,<U0395>);/ - (<U03B6>,<U0396>);(<U03B7>,<U0397>);(<U03B8>,<U0398>);(<U03B9>,<U0399>);/ - (<U03BA>,<U039A>);(<U03BB>,<U039B>);(<U03BC>,<U039C>);(<U03BD>,<U039D>);/ - (<U03BE>,<U039E>);(<U03BF>,<U039F>);(<U03C0>,<U03A0>);(<U03C1>,<U03A1>);/ - (<U03C2>,<U03A3>);(<U03C3>,<U03A3>);(<U03C4>,<U03A4>);(<U03C5>,<U03A5>);/ - (<U03C6>,<U03A6>);(<U03C7>,<U03A7>);(<U03C8>,<U03A8>);(<U03C9>,<U03A9>);/ - (<U03CA>,<U03AA>);(<U03CB>,<U03AB>);(<U03CC>,<U038C>);(<U03CD>,<U038E>);/ - (<U03CE>,<U038F>);(<U03D0>,<U0392>);(<U03D1>,<U0398>);(<U03D5>,<U03A6>);/ - (<U03D6>,<U03A0>);(<U03D7>,<U03CF>);(<U03D9>,<U03D8>);(<U03DB>,<U03DA>);/ - (<U03DD>,<U03DC>);(<U03DF>,<U03DE>);(<U03E1>,<U03E0>);(<U03E3>,<U03E2>);/ - (<U03E5>,<U03E4>);(<U03E7>,<U03E6>);(<U03E9>,<U03E8>);(<U03EB>,<U03EA>);/ - (<U03ED>,<U03EC>);(<U03EF>,<U03EE>);(<U03F0>,<U039A>);(<U03F1>,<U03A1>);/ - (<U03F2>,<U03F9>);(<U03F3>,<U037F>);(<U03F5>,<U0395>);(<U03F8>,<U03F7>);/ - (<U03FB>,<U03FA>);(<U0430>,<U0410>);(<U0431>,<U0411>);(<U0432>,<U0412>);/ - (<U0433>,<U0413>);(<U0434>,<U0414>);(<U0435>,<U0415>);(<U0436>,<U0416>);/ - (<U0437>,<U0417>);(<U0438>,<U0418>);(<U0439>,<U0419>);(<U043A>,<U041A>);/ - (<U043B>,<U041B>);(<U043C>,<U041C>);(<U043D>,<U041D>);(<U043E>,<U041E>);/ - (<U043F>,<U041F>);(<U0440>,<U0420>);(<U0441>,<U0421>);(<U0442>,<U0422>);/ - (<U0443>,<U0423>);(<U0444>,<U0424>);(<U0445>,<U0425>);(<U0446>,<U0426>);/ - (<U0447>,<U0427>);(<U0448>,<U0428>);(<U0449>,<U0429>);(<U044A>,<U042A>);/ - (<U044B>,<U042B>);(<U044C>,<U042C>);(<U044D>,<U042D>);(<U044E>,<U042E>);/ - (<U044F>,<U042F>);(<U0450>,<U0400>);(<U0451>,<U0401>);(<U0452>,<U0402>);/ - (<U0453>,<U0403>);(<U0454>,<U0404>);(<U0455>,<U0405>);(<U0456>,<U0406>);/ - (<U0457>,<U0407>);(<U0458>,<U0408>);(<U0459>,<U0409>);(<U045A>,<U040A>);/ - (<U045B>,<U040B>);(<U045C>,<U040C>);(<U045D>,<U040D>);(<U045E>,<U040E>);/ - (<U045F>,<U040F>);(<U0461>,<U0460>);(<U0463>,<U0462>);(<U0465>,<U0464>);/ - (<U0467>,<U0466>);(<U0469>,<U0468>);(<U046B>,<U046A>);(<U046D>,<U046C>);/ - (<U046F>,<U046E>);(<U0471>,<U0470>);(<U0473>,<U0472>);(<U0475>,<U0474>);/ - (<U0477>,<U0476>);(<U0479>,<U0478>);(<U047B>,<U047A>);(<U047D>,<U047C>);/ - (<U047F>,<U047E>);(<U0481>,<U0480>);(<U048B>,<U048A>);(<U048D>,<U048C>);/ - (<U048F>,<U048E>);(<U0491>,<U0490>);(<U0493>,<U0492>);(<U0495>,<U0494>);/ - (<U0497>,<U0496>);(<U0499>,<U0498>);(<U049B>,<U049A>);(<U049D>,<U049C>);/ - (<U049F>,<U049E>);(<U04A1>,<U04A0>);(<U04A3>,<U04A2>);(<U04A5>,<U04A4>);/ - (<U04A7>,<U04A6>);(<U04A9>,<U04A8>);(<U04AB>,<U04AA>);(<U04AD>,<U04AC>);/ - (<U04AF>,<U04AE>);(<U04B1>,<U04B0>);(<U04B3>,<U04B2>);(<U04B5>,<U04B4>);/ - (<U04B7>,<U04B6>);(<U04B9>,<U04B8>);(<U04BB>,<U04BA>);(<U04BD>,<U04BC>);/ - (<U04BF>,<U04BE>);(<U04C2>,<U04C1>);(<U04C4>,<U04C3>);(<U04C6>,<U04C5>);/ - (<U04C8>,<U04C7>);(<U04CA>,<U04C9>);(<U04CC>,<U04CB>);(<U04CE>,<U04CD>);/ - (<U04CF>,<U04C0>);(<U04D1>,<U04D0>);(<U04D3>,<U04D2>);(<U04D5>,<U04D4>);/ - (<U04D7>,<U04D6>);(<U04D9>,<U04D8>);(<U04DB>,<U04DA>);(<U04DD>,<U04DC>);/ - (<U04DF>,<U04DE>);(<U04E1>,<U04E0>);(<U04E3>,<U04E2>);(<U04E5>,<U04E4>);/ - (<U04E7>,<U04E6>);(<U04E9>,<U04E8>);(<U04EB>,<U04EA>);(<U04ED>,<U04EC>);/ - (<U04EF>,<U04EE>);(<U04F1>,<U04F0>);(<U04F3>,<U04F2>);(<U04F5>,<U04F4>);/ - (<U04F7>,<U04F6>);(<U04F9>,<U04F8>);(<U04FB>,<U04FA>);(<U04FD>,<U04FC>);/ - (<U04FF>,<U04FE>);(<U0501>,<U0500>);(<U0503>,<U0502>);(<U0505>,<U0504>);/ - (<U0507>,<U0506>);(<U0509>,<U0508>);(<U050B>,<U050A>);(<U050D>,<U050C>);/ - (<U050F>,<U050E>);(<U0511>,<U0510>);(<U0513>,<U0512>);(<U0515>,<U0514>);/ - (<U0517>,<U0516>);(<U0519>,<U0518>);(<U051B>,<U051A>);(<U051D>,<U051C>);/ - (<U051F>,<U051E>);(<U0521>,<U0520>);(<U0523>,<U0522>);(<U0525>,<U0524>);/ - (<U0527>,<U0526>);(<U0529>,<U0528>);(<U052B>,<U052A>);(<U052D>,<U052C>);/ - (<U052F>,<U052E>);(<U0561>,<U0531>);(<U0562>,<U0532>);(<U0563>,<U0533>);/ - (<U0564>,<U0534>);(<U0565>,<U0535>);(<U0566>,<U0536>);(<U0567>,<U0537>);/ - (<U0568>,<U0538>);(<U0569>,<U0539>);(<U056A>,<U053A>);(<U056B>,<U053B>);/ - (<U056C>,<U053C>);(<U056D>,<U053D>);(<U056E>,<U053E>);(<U056F>,<U053F>);/ - (<U0570>,<U0540>);(<U0571>,<U0541>);(<U0572>,<U0542>);(<U0573>,<U0543>);/ - (<U0574>,<U0544>);(<U0575>,<U0545>);(<U0576>,<U0546>);(<U0577>,<U0547>);/ - (<U0578>,<U0548>);(<U0579>,<U0549>);(<U057A>,<U054A>);(<U057B>,<U054B>);/ - (<U057C>,<U054C>);(<U057D>,<U054D>);(<U057E>,<U054E>);(<U057F>,<U054F>);/ - (<U0580>,<U0550>);(<U0581>,<U0551>);(<U0582>,<U0552>);(<U0583>,<U0553>);/ - (<U0584>,<U0554>);(<U0585>,<U0555>);(<U0586>,<U0556>);(<U13F8>,<U13F0>);/ - (<U13F9>,<U13F1>);(<U13FA>,<U13F2>);(<U13FB>,<U13F3>);(<U13FC>,<U13F4>);/ - (<U13FD>,<U13F5>);(<U1C80>,<U0412>);(<U1C81>,<U0414>);(<U1C82>,<U041E>);/ - (<U1C83>,<U0421>);(<U1C84>,<U0422>);(<U1C85>,<U0422>);(<U1C86>,<U042A>);/ - (<U1C87>,<U0462>);(<U1C88>,<UA64A>);(<U1D79>,<UA77D>);(<U1D7D>,<U2C63>);/ - (<U1D8E>,<UA7C6>);(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);/ - (<U1E07>,<U1E06>);(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);/ - (<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);/ - (<U1E17>,<U1E16>);(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);/ - (<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);/ - (<U1E27>,<U1E26>);(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);/ - (<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);/ - (<U1E37>,<U1E36>);(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);/ - (<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);/ - (<U1E47>,<U1E46>);(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);/ - (<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);/ - (<U1E57>,<U1E56>);(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);/ - (<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);/ - (<U1E67>,<U1E66>);(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);/ - (<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);/ - (<U1E77>,<U1E76>);(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);/ - (<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);/ - (<U1E87>,<U1E86>);(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);/ - (<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);/ - (<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);/ - (<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);/ - (<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);/ - (<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);/ - (<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);/ - (<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);/ - (<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);/ - (<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);/ - (<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);/ - (<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);/ - (<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);/ - (<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);(<U1EFB>,<U1EFA>);(<U1EFD>,<U1EFC>);/ - (<U1EFF>,<U1EFE>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);/ - (<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);/ - (<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);/ - (<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);/ - (<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);/ - (<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);/ - (<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);/ - (<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);/ - (<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);/ - (<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);/ - (<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);/ - (<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);/ - (<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);/ - (<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);/ - (<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);/ - (<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);/ - (<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);/ - (<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);/ - (<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);/ - (<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);/ - (<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);/ - (<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);/ - (<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);/ - (<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);/ - (<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U214E>,<U2132>);(<U2170>,<U2160>);/ - (<U2171>,<U2161>);(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);/ - (<U2175>,<U2165>);(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);/ - (<U2179>,<U2169>);(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);/ - (<U217D>,<U216D>);(<U217E>,<U216E>);(<U217F>,<U216F>);(<U2184>,<U2183>);/ - (<U24D0>,<U24B6>);(<U24D1>,<U24B7>);(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);/ - (<U24D4>,<U24BA>);(<U24D5>,<U24BB>);(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);/ - (<U24D8>,<U24BE>);(<U24D9>,<U24BF>);(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);/ - (<U24DC>,<U24C2>);(<U24DD>,<U24C3>);(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);/ - (<U24E0>,<U24C6>);(<U24E1>,<U24C7>);(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);/ - (<U24E4>,<U24CA>);(<U24E5>,<U24CB>);(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);/ - (<U24E8>,<U24CE>);(<U24E9>,<U24CF>);(<U2C30>,<U2C00>);(<U2C31>,<U2C01>);/ - (<U2C32>,<U2C02>);(<U2C33>,<U2C03>);(<U2C34>,<U2C04>);(<U2C35>,<U2C05>);/ - (<U2C36>,<U2C06>);(<U2C37>,<U2C07>);(<U2C38>,<U2C08>);(<U2C39>,<U2C09>);/ - (<U2C3A>,<U2C0A>);(<U2C3B>,<U2C0B>);(<U2C3C>,<U2C0C>);(<U2C3D>,<U2C0D>);/ - (<U2C3E>,<U2C0E>);(<U2C3F>,<U2C0F>);(<U2C40>,<U2C10>);(<U2C41>,<U2C11>);/ - (<U2C42>,<U2C12>);(<U2C43>,<U2C13>);(<U2C44>,<U2C14>);(<U2C45>,<U2C15>);/ - (<U2C46>,<U2C16>);(<U2C47>,<U2C17>);(<U2C48>,<U2C18>);(<U2C49>,<U2C19>);/ - (<U2C4A>,<U2C1A>);(<U2C4B>,<U2C1B>);(<U2C4C>,<U2C1C>);(<U2C4D>,<U2C1D>);/ - (<U2C4E>,<U2C1E>);(<U2C4F>,<U2C1F>);(<U2C50>,<U2C20>);(<U2C51>,<U2C21>);/ - (<U2C52>,<U2C22>);(<U2C53>,<U2C23>);(<U2C54>,<U2C24>);(<U2C55>,<U2C25>);/ - (<U2C56>,<U2C26>);(<U2C57>,<U2C27>);(<U2C58>,<U2C28>);(<U2C59>,<U2C29>);/ - (<U2C5A>,<U2C2A>);(<U2C5B>,<U2C2B>);(<U2C5C>,<U2C2C>);(<U2C5D>,<U2C2D>);/ - (<U2C5E>,<U2C2E>);(<U2C5F>,<U2C2F>);(<U2C61>,<U2C60>);(<U2C65>,<U023A>);/ - (<U2C66>,<U023E>);(<U2C68>,<U2C67>);(<U2C6A>,<U2C69>);(<U2C6C>,<U2C6B>);/ - (<U2C73>,<U2C72>);(<U2C76>,<U2C75>);(<U2C81>,<U2C80>);(<U2C83>,<U2C82>);/ - (<U2C85>,<U2C84>);(<U2C87>,<U2C86>);(<U2C89>,<U2C88>);(<U2C8B>,<U2C8A>);/ - (<U2C8D>,<U2C8C>);(<U2C8F>,<U2C8E>);(<U2C91>,<U2C90>);(<U2C93>,<U2C92>);/ - (<U2C95>,<U2C94>);(<U2C97>,<U2C96>);(<U2C99>,<U2C98>);(<U2C9B>,<U2C9A>);/ - (<U2C9D>,<U2C9C>);(<U2C9F>,<U2C9E>);(<U2CA1>,<U2CA0>);(<U2CA3>,<U2CA2>);/ - (<U2CA5>,<U2CA4>);(<U2CA7>,<U2CA6>);(<U2CA9>,<U2CA8>);(<U2CAB>,<U2CAA>);/ - (<U2CAD>,<U2CAC>);(<U2CAF>,<U2CAE>);(<U2CB1>,<U2CB0>);(<U2CB3>,<U2CB2>);/ - (<U2CB5>,<U2CB4>);(<U2CB7>,<U2CB6>);(<U2CB9>,<U2CB8>);(<U2CBB>,<U2CBA>);/ - (<U2CBD>,<U2CBC>);(<U2CBF>,<U2CBE>);(<U2CC1>,<U2CC0>);(<U2CC3>,<U2CC2>);/ - (<U2CC5>,<U2CC4>);(<U2CC7>,<U2CC6>);(<U2CC9>,<U2CC8>);(<U2CCB>,<U2CCA>);/ - (<U2CCD>,<U2CCC>);(<U2CCF>,<U2CCE>);(<U2CD1>,<U2CD0>);(<U2CD3>,<U2CD2>);/ - (<U2CD5>,<U2CD4>);(<U2CD7>,<U2CD6>);(<U2CD9>,<U2CD8>);(<U2CDB>,<U2CDA>);/ - (<U2CDD>,<U2CDC>);(<U2CDF>,<U2CDE>);(<U2CE1>,<U2CE0>);(<U2CE3>,<U2CE2>);/ - (<U2CEC>,<U2CEB>);(<U2CEE>,<U2CED>);(<U2CF3>,<U2CF2>);(<U2D00>,<U10A0>);/ - (<U2D01>,<U10A1>);(<U2D02>,<U10A2>);(<U2D03>,<U10A3>);(<U2D04>,<U10A4>);/ - (<U2D05>,<U10A5>);(<U2D06>,<U10A6>);(<U2D07>,<U10A7>);(<U2D08>,<U10A8>);/ - (<U2D09>,<U10A9>);(<U2D0A>,<U10AA>);(<U2D0B>,<U10AB>);(<U2D0C>,<U10AC>);/ - (<U2D0D>,<U10AD>);(<U2D0E>,<U10AE>);(<U2D0F>,<U10AF>);(<U2D10>,<U10B0>);/ - (<U2D11>,<U10B1>);(<U2D12>,<U10B2>);(<U2D13>,<U10B3>);(<U2D14>,<U10B4>);/ - (<U2D15>,<U10B5>);(<U2D16>,<U10B6>);(<U2D17>,<U10B7>);(<U2D18>,<U10B8>);/ - (<U2D19>,<U10B9>);(<U2D1A>,<U10BA>);(<U2D1B>,<U10BB>);(<U2D1C>,<U10BC>);/ - (<U2D1D>,<U10BD>);(<U2D1E>,<U10BE>);(<U2D1F>,<U10BF>);(<U2D20>,<U10C0>);/ - (<U2D21>,<U10C1>);(<U2D22>,<U10C2>);(<U2D23>,<U10C3>);(<U2D24>,<U10C4>);/ - (<U2D25>,<U10C5>);(<U2D27>,<U10C7>);(<U2D2D>,<U10CD>);(<UA641>,<UA640>);/ - (<UA643>,<UA642>);(<UA645>,<UA644>);(<UA647>,<UA646>);(<UA649>,<UA648>);/ - (<UA64B>,<UA64A>);(<UA64D>,<UA64C>);(<UA64F>,<UA64E>);(<UA651>,<UA650>);/ - (<UA653>,<UA652>);(<UA655>,<UA654>);(<UA657>,<UA656>);(<UA659>,<UA658>);/ - (<UA65B>,<UA65A>);(<UA65D>,<UA65C>);(<UA65F>,<UA65E>);(<UA661>,<UA660>);/ - (<UA663>,<UA662>);(<UA665>,<UA664>);(<UA667>,<UA666>);(<UA669>,<UA668>);/ - (<UA66B>,<UA66A>);(<UA66D>,<UA66C>);(<UA681>,<UA680>);(<UA683>,<UA682>);/ - (<UA685>,<UA684>);(<UA687>,<UA686>);(<UA689>,<UA688>);(<UA68B>,<UA68A>);/ - (<UA68D>,<UA68C>);(<UA68F>,<UA68E>);(<UA691>,<UA690>);(<UA693>,<UA692>);/ - (<UA695>,<UA694>);(<UA697>,<UA696>);(<UA699>,<UA698>);(<UA69B>,<UA69A>);/ - (<UA723>,<UA722>);(<UA725>,<UA724>);(<UA727>,<UA726>);(<UA729>,<UA728>);/ - (<UA72B>,<UA72A>);(<UA72D>,<UA72C>);(<UA72F>,<UA72E>);(<UA733>,<UA732>);/ - (<UA735>,<UA734>);(<UA737>,<UA736>);(<UA739>,<UA738>);(<UA73B>,<UA73A>);/ - (<UA73D>,<UA73C>);(<UA73F>,<UA73E>);(<UA741>,<UA740>);(<UA743>,<UA742>);/ - (<UA745>,<UA744>);(<UA747>,<UA746>);(<UA749>,<UA748>);(<UA74B>,<UA74A>);/ - (<UA74D>,<UA74C>);(<UA74F>,<UA74E>);(<UA751>,<UA750>);(<UA753>,<UA752>);/ - (<UA755>,<UA754>);(<UA757>,<UA756>);(<UA759>,<UA758>);(<UA75B>,<UA75A>);/ - (<UA75D>,<UA75C>);(<UA75F>,<UA75E>);(<UA761>,<UA760>);(<UA763>,<UA762>);/ - (<UA765>,<UA764>);(<UA767>,<UA766>);(<UA769>,<UA768>);(<UA76B>,<UA76A>);/ - (<UA76D>,<UA76C>);(<UA76F>,<UA76E>);(<UA77A>,<UA779>);(<UA77C>,<UA77B>);/ - (<UA77F>,<UA77E>);(<UA781>,<UA780>);(<UA783>,<UA782>);(<UA785>,<UA784>);/ - (<UA787>,<UA786>);(<UA78C>,<UA78B>);(<UA791>,<UA790>);(<UA793>,<UA792>);/ - (<UA794>,<UA7C4>);(<UA797>,<UA796>);(<UA799>,<UA798>);(<UA79B>,<UA79A>);/ - (<UA79D>,<UA79C>);(<UA79F>,<UA79E>);(<UA7A1>,<UA7A0>);(<UA7A3>,<UA7A2>);/ - (<UA7A5>,<UA7A4>);(<UA7A7>,<UA7A6>);(<UA7A9>,<UA7A8>);(<UA7B5>,<UA7B4>);/ - (<UA7B7>,<UA7B6>);(<UA7B9>,<UA7B8>);(<UA7BB>,<UA7BA>);(<UA7BD>,<UA7BC>);/ - (<UA7BF>,<UA7BE>);(<UA7C1>,<UA7C0>);(<UA7C3>,<UA7C2>);(<UA7C8>,<UA7C7>);/ - (<UA7CA>,<UA7C9>);(<UA7D1>,<UA7D0>);(<UA7D7>,<UA7D6>);(<UA7D9>,<UA7D8>);/ - (<UA7F6>,<UA7F5>);(<UAB53>,<UA7B3>);(<UAB70>,<U13A0>);(<UAB71>,<U13A1>);/ - (<UAB72>,<U13A2>);(<UAB73>,<U13A3>);(<UAB74>,<U13A4>);(<UAB75>,<U13A5>);/ - (<UAB76>,<U13A6>);(<UAB77>,<U13A7>);(<UAB78>,<U13A8>);(<UAB79>,<U13A9>);/ - (<UAB7A>,<U13AA>);(<UAB7B>,<U13AB>);(<UAB7C>,<U13AC>);(<UAB7D>,<U13AD>);/ - (<UAB7E>,<U13AE>);(<UAB7F>,<U13AF>);(<UAB80>,<U13B0>);(<UAB81>,<U13B1>);/ - (<UAB82>,<U13B2>);(<UAB83>,<U13B3>);(<UAB84>,<U13B4>);(<UAB85>,<U13B5>);/ - (<UAB86>,<U13B6>);(<UAB87>,<U13B7>);(<UAB88>,<U13B8>);(<UAB89>,<U13B9>);/ - (<UAB8A>,<U13BA>);(<UAB8B>,<U13BB>);(<UAB8C>,<U13BC>);(<UAB8D>,<U13BD>);/ - (<UAB8E>,<U13BE>);(<UAB8F>,<U13BF>);(<UAB90>,<U13C0>);(<UAB91>,<U13C1>);/ - (<UAB92>,<U13C2>);(<UAB93>,<U13C3>);(<UAB94>,<U13C4>);(<UAB95>,<U13C5>);/ - (<UAB96>,<U13C6>);(<UAB97>,<U13C7>);(<UAB98>,<U13C8>);(<UAB99>,<U13C9>);/ - (<UAB9A>,<U13CA>);(<UAB9B>,<U13CB>);(<UAB9C>,<U13CC>);(<UAB9D>,<U13CD>);/ - (<UAB9E>,<U13CE>);(<UAB9F>,<U13CF>);(<UABA0>,<U13D0>);(<UABA1>,<U13D1>);/ - (<UABA2>,<U13D2>);(<UABA3>,<U13D3>);(<UABA4>,<U13D4>);(<UABA5>,<U13D5>);/ - (<UABA6>,<U13D6>);(<UABA7>,<U13D7>);(<UABA8>,<U13D8>);(<UABA9>,<U13D9>);/ - (<UABAA>,<U13DA>);(<UABAB>,<U13DB>);(<UABAC>,<U13DC>);(<UABAD>,<U13DD>);/ - (<UABAE>,<U13DE>);(<UABAF>,<U13DF>);(<UABB0>,<U13E0>);(<UABB1>,<U13E1>);/ - (<UABB2>,<U13E2>);(<UABB3>,<U13E3>);(<UABB4>,<U13E4>);(<UABB5>,<U13E5>);/ - (<UABB6>,<U13E6>);(<UABB7>,<U13E7>);(<UABB8>,<U13E8>);(<UABB9>,<U13E9>);/ - (<UABBA>,<U13EA>);(<UABBB>,<U13EB>);(<UABBC>,<U13EC>);(<UABBD>,<U13ED>);/ - (<UABBE>,<U13EE>);(<UABBF>,<U13EF>);(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);/ - (<UFF43>,<UFF23>);(<UFF44>,<UFF24>);(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);/ - (<UFF47>,<UFF27>);(<UFF48>,<UFF28>);(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);/ - (<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);/ - (<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);/ - (<UFF53>,<UFF33>);(<UFF54>,<UFF34>);(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);/ - (<UFF57>,<UFF37>);(<UFF58>,<UFF38>);(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);/ - (<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/ + (<U0199>,<U0198>);(<U019A>,<U023D>);(<U019B>,<UA7DC>);(<U019E>,<U0220>);/ + (<U01A1>,<U01A0>);(<U01A3>,<U01A2>);(<U01A5>,<U01A4>);(<U01A8>,<U01A7>);/ + (<U01AD>,<U01AC>);(<U01B0>,<U01AF>);(<U01B4>,<U01B3>);(<U01B6>,<U01B5>);/ + (<U01B9>,<U01B8>);(<U01BD>,<U01BC>);(<U01BF>,<U01F7>);(<U01C4>,<U01C5>);/ + (<U01C6>,<U01C5>);(<U01C7>,<U01C8>);(<U01C9>,<U01C8>);(<U01CA>,<U01CB>);/ + (<U01CC>,<U01CB>);(<U01CE>,<U01CD>);(<U01D0>,<U01CF>);(<U01D2>,<U01D1>);/ + (<U01D4>,<U01D3>);(<U01D6>,<U01D5>);(<U01D8>,<U01D7>);(<U01DA>,<U01D9>);/ + (<U01DC>,<U01DB>);(<U01DD>,<U018E>);(<U01DF>,<U01DE>);(<U01E1>,<U01E0>);/ + (<U01E3>,<U01E2>);(<U01E5>,<U01E4>);(<U01E7>,<U01E6>);(<U01E9>,<U01E8>);/ + (<U01EB>,<U01EA>);(<U01ED>,<U01EC>);(<U01EF>,<U01EE>);(<U01F1>,<U01F2>);/ + (<U01F3>,<U01F2>);(<U01F5>,<U01F4>);(<U01F9>,<U01F8>);(<U01FB>,<U01FA>);/ + (<U01FD>,<U01FC>);(<U01FF>,<U01FE>);(<U0201>,<U0200>);(<U0203>,<U0202>);/ + (<U0205>,<U0204>);(<U0207>,<U0206>);(<U0209>,<U0208>);(<U020B>,<U020A>);/ + (<U020D>,<U020C>);(<U020F>,<U020E>);(<U0211>,<U0210>);(<U0213>,<U0212>);/ + (<U0215>,<U0214>);(<U0217>,<U0216>);(<U0219>,<U0218>);(<U021B>,<U021A>);/ + (<U021D>,<U021C>);(<U021F>,<U021E>);(<U0223>,<U0222>);(<U0225>,<U0224>);/ + (<U0227>,<U0226>);(<U0229>,<U0228>);(<U022B>,<U022A>);(<U022D>,<U022C>);/ + (<U022F>,<U022E>);(<U0231>,<U0230>);(<U0233>,<U0232>);(<U023C>,<U023B>);/ + (<U023F>,<U2C7E>);(<U0240>,<U2C7F>);(<U0242>,<U0241>);(<U0247>,<U0246>);/ + (<U0249>,<U0248>);(<U024B>,<U024A>);(<U024D>,<U024C>);(<U024F>,<U024E>);/ + (<U0250>,<U2C6F>);(<U0251>,<U2C6D>);(<U0252>,<U2C70>);(<U0253>,<U0181>);/ + (<U0254>,<U0186>);(<U0256>,<U0189>);(<U0257>,<U018A>);(<U0259>,<U018F>);/ + (<U025B>,<U0190>);(<U025C>,<UA7AB>);(<U0260>,<U0193>);(<U0261>,<UA7AC>);/ + (<U0263>,<U0194>);(<U0264>,<UA7CB>);(<U0265>,<UA78D>);(<U0266>,<UA7AA>);/ + (<U0268>,<U0197>);(<U0269>,<U0196>);(<U026A>,<UA7AE>);(<U026B>,<U2C62>);/ + (<U026C>,<UA7AD>);(<U026F>,<U019C>);(<U0271>,<U2C6E>);(<U0272>,<U019D>);/ + (<U0275>,<U019F>);(<U027D>,<U2C64>);(<U0280>,<U01A6>);(<U0282>,<UA7C5>);/ + (<U0283>,<U01A9>);(<U0287>,<UA7B1>);(<U0288>,<U01AE>);(<U0289>,<U0244>);/ + (<U028A>,<U01B1>);(<U028B>,<U01B2>);(<U028C>,<U0245>);(<U0292>,<U01B7>);/ + (<U029D>,<UA7B2>);(<U029E>,<UA7B0>);(<U0345>,<U0399>);(<U0371>,<U0370>);/ + (<U0373>,<U0372>);(<U0377>,<U0376>);(<U037B>,<U03FD>);(<U037C>,<U03FE>);/ + (<U037D>,<U03FF>);(<U03AC>,<U0386>);(<U03AD>,<U0388>);(<U03AE>,<U0389>);/ + (<U03AF>,<U038A>);(<U03B1>,<U0391>);(<U03B2>,<U0392>);(<U03B3>,<U0393>);/ + (<U03B4>,<U0394>);(<U03B5>,<U0395>);(<U03B6>,<U0396>);(<U03B7>,<U0397>);/ + (<U03B8>,<U0398>);(<U03B9>,<U0399>);(<U03BA>,<U039A>);(<U03BB>,<U039B>);/ + (<U03BC>,<U039C>);(<U03BD>,<U039D>);(<U03BE>,<U039E>);(<U03BF>,<U039F>);/ + (<U03C0>,<U03A0>);(<U03C1>,<U03A1>);(<U03C2>,<U03A3>);(<U03C3>,<U03A3>);/ + (<U03C4>,<U03A4>);(<U03C5>,<U03A5>);(<U03C6>,<U03A6>);(<U03C7>,<U03A7>);/ + (<U03C8>,<U03A8>);(<U03C9>,<U03A9>);(<U03CA>,<U03AA>);(<U03CB>,<U03AB>);/ + (<U03CC>,<U038C>);(<U03CD>,<U038E>);(<U03CE>,<U038F>);(<U03D0>,<U0392>);/ + (<U03D1>,<U0398>);(<U03D5>,<U03A6>);(<U03D6>,<U03A0>);(<U03D7>,<U03CF>);/ + (<U03D9>,<U03D8>);(<U03DB>,<U03DA>);(<U03DD>,<U03DC>);(<U03DF>,<U03DE>);/ + (<U03E1>,<U03E0>);(<U03E3>,<U03E2>);(<U03E5>,<U03E4>);(<U03E7>,<U03E6>);/ + (<U03E9>,<U03E8>);(<U03EB>,<U03EA>);(<U03ED>,<U03EC>);(<U03EF>,<U03EE>);/ + (<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03F9>);(<U03F3>,<U037F>);/ + (<U03F5>,<U0395>);(<U03F8>,<U03F7>);(<U03FB>,<U03FA>);(<U0430>,<U0410>);/ + (<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);(<U0434>,<U0414>);/ + (<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);(<U0438>,<U0418>);/ + (<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);(<U043C>,<U041C>);/ + (<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);(<U0440>,<U0420>);/ + (<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);(<U0444>,<U0424>);/ + (<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);(<U0448>,<U0428>);/ + (<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);(<U044C>,<U042C>);/ + (<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);(<U0450>,<U0400>);/ + (<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);(<U0454>,<U0404>);/ + (<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);(<U0458>,<U0408>);/ + (<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);(<U045C>,<U040C>);/ + (<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);(<U0461>,<U0460>);/ + (<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);(<U0469>,<U0468>);/ + (<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);(<U0471>,<U0470>);/ + (<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);(<U0479>,<U0478>);/ + (<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);(<U0481>,<U0480>);/ + (<U048B>,<U048A>);(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);/ + (<U0493>,<U0492>);(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);/ + (<U049B>,<U049A>);(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);/ + (<U04A3>,<U04A2>);(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);/ + (<U04AB>,<U04AA>);(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);/ + (<U04B3>,<U04B2>);(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);/ + (<U04BB>,<U04BA>);(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);/ + (<U04C4>,<U04C3>);(<U04C6>,<U04C5>);(<U04C8>,<U04C7>);(<U04CA>,<U04C9>);/ + (<U04CC>,<U04CB>);(<U04CE>,<U04CD>);(<U04CF>,<U04C0>);(<U04D1>,<U04D0>);/ + (<U04D3>,<U04D2>);(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);/ + (<U04DB>,<U04DA>);(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);/ + (<U04E3>,<U04E2>);(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);/ + (<U04EB>,<U04EA>);(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);/ + (<U04F3>,<U04F2>);(<U04F5>,<U04F4>);(<U04F7>,<U04F6>);(<U04F9>,<U04F8>);/ + (<U04FB>,<U04FA>);(<U04FD>,<U04FC>);(<U04FF>,<U04FE>);(<U0501>,<U0500>);/ + (<U0503>,<U0502>);(<U0505>,<U0504>);(<U0507>,<U0506>);(<U0509>,<U0508>);/ + (<U050B>,<U050A>);(<U050D>,<U050C>);(<U050F>,<U050E>);(<U0511>,<U0510>);/ + (<U0513>,<U0512>);(<U0515>,<U0514>);(<U0517>,<U0516>);(<U0519>,<U0518>);/ + (<U051B>,<U051A>);(<U051D>,<U051C>);(<U051F>,<U051E>);(<U0521>,<U0520>);/ + (<U0523>,<U0522>);(<U0525>,<U0524>);(<U0527>,<U0526>);(<U0529>,<U0528>);/ + (<U052B>,<U052A>);(<U052D>,<U052C>);(<U052F>,<U052E>);(<U0561>,<U0531>);/ + (<U0562>,<U0532>);(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);/ + (<U0566>,<U0536>);(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);/ + (<U056A>,<U053A>);(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);/ + (<U056E>,<U053E>);(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);/ + (<U0572>,<U0542>);(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);/ + (<U0576>,<U0546>);(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);/ + (<U057A>,<U054A>);(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);/ + (<U057E>,<U054E>);(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);/ + (<U0582>,<U0552>);(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);/ + (<U0586>,<U0556>);(<U13F8>,<U13F0>);(<U13F9>,<U13F1>);(<U13FA>,<U13F2>);/ + (<U13FB>,<U13F3>);(<U13FC>,<U13F4>);(<U13FD>,<U13F5>);(<U1C80>,<U0412>);/ + (<U1C81>,<U0414>);(<U1C82>,<U041E>);(<U1C83>,<U0421>);(<U1C84>,<U0422>);/ + (<U1C85>,<U0422>);(<U1C86>,<U042A>);(<U1C87>,<U0462>);(<U1C88>,<UA64A>);/ + (<U1C8A>,<U1C89>);(<U1D79>,<UA77D>);(<U1D7D>,<U2C63>);(<U1D8E>,<UA7C6>);/ + (<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);(<U1E07>,<U1E06>);/ + (<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);/ + (<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);(<U1E17>,<U1E16>);/ + (<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);/ + (<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);(<U1E27>,<U1E26>);/ + (<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);/ + (<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);(<U1E37>,<U1E36>);/ + (<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);/ + (<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);(<U1E47>,<U1E46>);/ + (<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);/ + (<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);(<U1E57>,<U1E56>);/ + (<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);/ + (<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);(<U1E67>,<U1E66>);/ + (<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);/ + (<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);(<U1E77>,<U1E76>);/ + (<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);/ + (<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);(<U1E87>,<U1E86>);/ + (<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);/ + (<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);/ + (<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);/ + (<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);/ + (<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);/ + (<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);/ + (<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);/ + (<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);/ + (<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);/ + (<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);/ + (<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);/ + (<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);/ + (<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);/ + (<U1EF9>,<U1EF8>);(<U1EFB>,<U1EFA>);(<U1EFD>,<U1EFC>);(<U1EFF>,<U1EFE>);/ + (<U1F00>,<U1F08>);(<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);/ + (<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);/ + (<U1F10>,<U1F18>);(<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);/ + (<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);(<U1F21>,<U1F29>);/ + (<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);/ + (<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);(<U1F31>,<U1F39>);/ + (<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);/ + (<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);(<U1F41>,<U1F49>);/ + (<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);/ + (<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);/ + (<U1F60>,<U1F68>);(<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);/ + (<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);/ + (<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);/ + (<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);/ + (<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);/ + (<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);(<U1F81>,<U1F89>);/ + (<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);/ + (<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);(<U1F91>,<U1F99>);/ + (<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);/ + (<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);/ + (<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);/ + (<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);/ + (<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);/ + (<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);/ + (<U1FF3>,<U1FFC>);(<U214E>,<U2132>);(<U2170>,<U2160>);(<U2171>,<U2161>);/ + (<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);(<U2175>,<U2165>);/ + (<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);(<U2179>,<U2169>);/ + (<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);(<U217D>,<U216D>);/ + (<U217E>,<U216E>);(<U217F>,<U216F>);(<U2184>,<U2183>);(<U24D0>,<U24B6>);/ + (<U24D1>,<U24B7>);(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);/ + (<U24D5>,<U24BB>);(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);/ + (<U24D9>,<U24BF>);(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);/ + (<U24DD>,<U24C3>);(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);/ + (<U24E1>,<U24C7>);(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);/ + (<U24E5>,<U24CB>);(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);/ + (<U24E9>,<U24CF>);(<U2C30>,<U2C00>);(<U2C31>,<U2C01>);(<U2C32>,<U2C02>);/ + (<U2C33>,<U2C03>);(<U2C34>,<U2C04>);(<U2C35>,<U2C05>);(<U2C36>,<U2C06>);/ + (<U2C37>,<U2C07>);(<U2C38>,<U2C08>);(<U2C39>,<U2C09>);(<U2C3A>,<U2C0A>);/ + (<U2C3B>,<U2C0B>);(<U2C3C>,<U2C0C>);(<U2C3D>,<U2C0D>);(<U2C3E>,<U2C0E>);/ + (<U2C3F>,<U2C0F>);(<U2C40>,<U2C10>);(<U2C41>,<U2C11>);(<U2C42>,<U2C12>);/ + (<U2C43>,<U2C13>);(<U2C44>,<U2C14>);(<U2C45>,<U2C15>);(<U2C46>,<U2C16>);/ + (<U2C47>,<U2C17>);(<U2C48>,<U2C18>);(<U2C49>,<U2C19>);(<U2C4A>,<U2C1A>);/ + (<U2C4B>,<U2C1B>);(<U2C4C>,<U2C1C>);(<U2C4D>,<U2C1D>);(<U2C4E>,<U2C1E>);/ + (<U2C4F>,<U2C1F>);(<U2C50>,<U2C20>);(<U2C51>,<U2C21>);(<U2C52>,<U2C22>);/ + (<U2C53>,<U2C23>);(<U2C54>,<U2C24>);(<U2C55>,<U2C25>);(<U2C56>,<U2C26>);/ + (<U2C57>,<U2C27>);(<U2C58>,<U2C28>);(<U2C59>,<U2C29>);(<U2C5A>,<U2C2A>);/ + (<U2C5B>,<U2C2B>);(<U2C5C>,<U2C2C>);(<U2C5D>,<U2C2D>);(<U2C5E>,<U2C2E>);/ + (<U2C5F>,<U2C2F>);(<U2C61>,<U2C60>);(<U2C65>,<U023A>);(<U2C66>,<U023E>);/ + (<U2C68>,<U2C67>);(<U2C6A>,<U2C69>);(<U2C6C>,<U2C6B>);(<U2C73>,<U2C72>);/ + (<U2C76>,<U2C75>);(<U2C81>,<U2C80>);(<U2C83>,<U2C82>);(<U2C85>,<U2C84>);/ + (<U2C87>,<U2C86>);(<U2C89>,<U2C88>);(<U2C8B>,<U2C8A>);(<U2C8D>,<U2C8C>);/ + (<U2C8F>,<U2C8E>);(<U2C91>,<U2C90>);(<U2C93>,<U2C92>);(<U2C95>,<U2C94>);/ + (<U2C97>,<U2C96>);(<U2C99>,<U2C98>);(<U2C9B>,<U2C9A>);(<U2C9D>,<U2C9C>);/ + (<U2C9F>,<U2C9E>);(<U2CA1>,<U2CA0>);(<U2CA3>,<U2CA2>);(<U2CA5>,<U2CA4>);/ + (<U2CA7>,<U2CA6>);(<U2CA9>,<U2CA8>);(<U2CAB>,<U2CAA>);(<U2CAD>,<U2CAC>);/ + (<U2CAF>,<U2CAE>);(<U2CB1>,<U2CB0>);(<U2CB3>,<U2CB2>);(<U2CB5>,<U2CB4>);/ + (<U2CB7>,<U2CB6>);(<U2CB9>,<U2CB8>);(<U2CBB>,<U2CBA>);(<U2CBD>,<U2CBC>);/ + (<U2CBF>,<U2CBE>);(<U2CC1>,<U2CC0>);(<U2CC3>,<U2CC2>);(<U2CC5>,<U2CC4>);/ + (<U2CC7>,<U2CC6>);(<U2CC9>,<U2CC8>);(<U2CCB>,<U2CCA>);(<U2CCD>,<U2CCC>);/ + (<U2CCF>,<U2CCE>);(<U2CD1>,<U2CD0>);(<U2CD3>,<U2CD2>);(<U2CD5>,<U2CD4>);/ + (<U2CD7>,<U2CD6>);(<U2CD9>,<U2CD8>);(<U2CDB>,<U2CDA>);(<U2CDD>,<U2CDC>);/ + (<U2CDF>,<U2CDE>);(<U2CE1>,<U2CE0>);(<U2CE3>,<U2CE2>);(<U2CEC>,<U2CEB>);/ + (<U2CEE>,<U2CED>);(<U2CF3>,<U2CF2>);(<U2D00>,<U10A0>);(<U2D01>,<U10A1>);/ + (<U2D02>,<U10A2>);(<U2D03>,<U10A3>);(<U2D04>,<U10A4>);(<U2D05>,<U10A5>);/ + (<U2D06>,<U10A6>);(<U2D07>,<U10A7>);(<U2D08>,<U10A8>);(<U2D09>,<U10A9>);/ + (<U2D0A>,<U10AA>);(<U2D0B>,<U10AB>);(<U2D0C>,<U10AC>);(<U2D0D>,<U10AD>);/ + (<U2D0E>,<U10AE>);(<U2D0F>,<U10AF>);(<U2D10>,<U10B0>);(<U2D11>,<U10B1>);/ + (<U2D12>,<U10B2>);(<U2D13>,<U10B3>);(<U2D14>,<U10B4>);(<U2D15>,<U10B5>);/ + (<U2D16>,<U10B6>);(<U2D17>,<U10B7>);(<U2D18>,<U10B8>);(<U2D19>,<U10B9>);/ + (<U2D1A>,<U10BA>);(<U2D1B>,<U10BB>);(<U2D1C>,<U10BC>);(<U2D1D>,<U10BD>);/ + (<U2D1E>,<U10BE>);(<U2D1F>,<U10BF>);(<U2D20>,<U10C0>);(<U2D21>,<U10C1>);/ + (<U2D22>,<U10C2>);(<U2D23>,<U10C3>);(<U2D24>,<U10C4>);(<U2D25>,<U10C5>);/ + (<U2D27>,<U10C7>);(<U2D2D>,<U10CD>);(<UA641>,<UA640>);(<UA643>,<UA642>);/ + (<UA645>,<UA644>);(<UA647>,<UA646>);(<UA649>,<UA648>);(<UA64B>,<UA64A>);/ + (<UA64D>,<UA64C>);(<UA64F>,<UA64E>);(<UA651>,<UA650>);(<UA653>,<UA652>);/ + (<UA655>,<UA654>);(<UA657>,<UA656>);(<UA659>,<UA658>);(<UA65B>,<UA65A>);/ + (<UA65D>,<UA65C>);(<UA65F>,<UA65E>);(<UA661>,<UA660>);(<UA663>,<UA662>);/ + (<UA665>,<UA664>);(<UA667>,<UA666>);(<UA669>,<UA668>);(<UA66B>,<UA66A>);/ + (<UA66D>,<UA66C>);(<UA681>,<UA680>);(<UA683>,<UA682>);(<UA685>,<UA684>);/ + (<UA687>,<UA686>);(<UA689>,<UA688>);(<UA68B>,<UA68A>);(<UA68D>,<UA68C>);/ + (<UA68F>,<UA68E>);(<UA691>,<UA690>);(<UA693>,<UA692>);(<UA695>,<UA694>);/ + (<UA697>,<UA696>);(<UA699>,<UA698>);(<UA69B>,<UA69A>);(<UA723>,<UA722>);/ + (<UA725>,<UA724>);(<UA727>,<UA726>);(<UA729>,<UA728>);(<UA72B>,<UA72A>);/ + (<UA72D>,<UA72C>);(<UA72F>,<UA72E>);(<UA733>,<UA732>);(<UA735>,<UA734>);/ + (<UA737>,<UA736>);(<UA739>,<UA738>);(<UA73B>,<UA73A>);(<UA73D>,<UA73C>);/ + (<UA73F>,<UA73E>);(<UA741>,<UA740>);(<UA743>,<UA742>);(<UA745>,<UA744>);/ + (<UA747>,<UA746>);(<UA749>,<UA748>);(<UA74B>,<UA74A>);(<UA74D>,<UA74C>);/ + (<UA74F>,<UA74E>);(<UA751>,<UA750>);(<UA753>,<UA752>);(<UA755>,<UA754>);/ + (<UA757>,<UA756>);(<UA759>,<UA758>);(<UA75B>,<UA75A>);(<UA75D>,<UA75C>);/ + (<UA75F>,<UA75E>);(<UA761>,<UA760>);(<UA763>,<UA762>);(<UA765>,<UA764>);/ + (<UA767>,<UA766>);(<UA769>,<UA768>);(<UA76B>,<UA76A>);(<UA76D>,<UA76C>);/ + (<UA76F>,<UA76E>);(<UA77A>,<UA779>);(<UA77C>,<UA77B>);(<UA77F>,<UA77E>);/ + (<UA781>,<UA780>);(<UA783>,<UA782>);(<UA785>,<UA784>);(<UA787>,<UA786>);/ + (<UA78C>,<UA78B>);(<UA791>,<UA790>);(<UA793>,<UA792>);(<UA794>,<UA7C4>);/ + (<UA797>,<UA796>);(<UA799>,<UA798>);(<UA79B>,<UA79A>);(<UA79D>,<UA79C>);/ + (<UA79F>,<UA79E>);(<UA7A1>,<UA7A0>);(<UA7A3>,<UA7A2>);(<UA7A5>,<UA7A4>);/ + (<UA7A7>,<UA7A6>);(<UA7A9>,<UA7A8>);(<UA7B5>,<UA7B4>);(<UA7B7>,<UA7B6>);/ + (<UA7B9>,<UA7B8>);(<UA7BB>,<UA7BA>);(<UA7BD>,<UA7BC>);(<UA7BF>,<UA7BE>);/ + (<UA7C1>,<UA7C0>);(<UA7C3>,<UA7C2>);(<UA7C8>,<UA7C7>);(<UA7CA>,<UA7C9>);/ + (<UA7CD>,<UA7CC>);(<UA7D1>,<UA7D0>);(<UA7D7>,<UA7D6>);(<UA7D9>,<UA7D8>);/ + (<UA7DB>,<UA7DA>);(<UA7F6>,<UA7F5>);(<UAB53>,<UA7B3>);(<UAB70>,<U13A0>);/ + (<UAB71>,<U13A1>);(<UAB72>,<U13A2>);(<UAB73>,<U13A3>);(<UAB74>,<U13A4>);/ + (<UAB75>,<U13A5>);(<UAB76>,<U13A6>);(<UAB77>,<U13A7>);(<UAB78>,<U13A8>);/ + (<UAB79>,<U13A9>);(<UAB7A>,<U13AA>);(<UAB7B>,<U13AB>);(<UAB7C>,<U13AC>);/ + (<UAB7D>,<U13AD>);(<UAB7E>,<U13AE>);(<UAB7F>,<U13AF>);(<UAB80>,<U13B0>);/ + (<UAB81>,<U13B1>);(<UAB82>,<U13B2>);(<UAB83>,<U13B3>);(<UAB84>,<U13B4>);/ + (<UAB85>,<U13B5>);(<UAB86>,<U13B6>);(<UAB87>,<U13B7>);(<UAB88>,<U13B8>);/ + (<UAB89>,<U13B9>);(<UAB8A>,<U13BA>);(<UAB8B>,<U13BB>);(<UAB8C>,<U13BC>);/ + (<UAB8D>,<U13BD>);(<UAB8E>,<U13BE>);(<UAB8F>,<U13BF>);(<UAB90>,<U13C0>);/ + (<UAB91>,<U13C1>);(<UAB92>,<U13C2>);(<UAB93>,<U13C3>);(<UAB94>,<U13C4>);/ + (<UAB95>,<U13C5>);(<UAB96>,<U13C6>);(<UAB97>,<U13C7>);(<UAB98>,<U13C8>);/ + (<UAB99>,<U13C9>);(<UAB9A>,<U13CA>);(<UAB9B>,<U13CB>);(<UAB9C>,<U13CC>);/ + (<UAB9D>,<U13CD>);(<UAB9E>,<U13CE>);(<UAB9F>,<U13CF>);(<UABA0>,<U13D0>);/ + (<UABA1>,<U13D1>);(<UABA2>,<U13D2>);(<UABA3>,<U13D3>);(<UABA4>,<U13D4>);/ + (<UABA5>,<U13D5>);(<UABA6>,<U13D6>);(<UABA7>,<U13D7>);(<UABA8>,<U13D8>);/ + (<UABA9>,<U13D9>);(<UABAA>,<U13DA>);(<UABAB>,<U13DB>);(<UABAC>,<U13DC>);/ + (<UABAD>,<U13DD>);(<UABAE>,<U13DE>);(<UABAF>,<U13DF>);(<UABB0>,<U13E0>);/ + (<UABB1>,<U13E1>);(<UABB2>,<U13E2>);(<UABB3>,<U13E3>);(<UABB4>,<U13E4>);/ + (<UABB5>,<U13E5>);(<UABB6>,<U13E6>);(<UABB7>,<U13E7>);(<UABB8>,<U13E8>);/ + (<UABB9>,<U13E9>);(<UABBA>,<U13EA>);(<UABBB>,<U13EB>);(<UABBC>,<U13EC>);/ + (<UABBD>,<U13ED>);(<UABBE>,<U13EE>);(<UABBF>,<U13EF>);(<UFF41>,<UFF21>);/ + (<UFF42>,<UFF22>);(<UFF43>,<UFF23>);(<UFF44>,<UFF24>);(<UFF45>,<UFF25>);/ + (<UFF46>,<UFF26>);(<UFF47>,<UFF27>);(<UFF48>,<UFF28>);(<UFF49>,<UFF29>);/ + (<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);/ + (<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);(<UFF51>,<UFF31>);/ + (<UFF52>,<UFF32>);(<UFF53>,<UFF33>);(<UFF54>,<UFF34>);(<UFF55>,<UFF35>);/ + (<UFF56>,<UFF36>);(<UFF57>,<UFF37>);(<UFF58>,<UFF38>);(<UFF59>,<UFF39>);/ + (<UFF5A>,<UFF3A>);(<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/ (<U0001042A>,<U00010402>);(<U0001042B>,<U00010403>);/ (<U0001042C>,<U00010404>);(<U0001042D>,<U00010405>);/ (<U0001042E>,<U00010406>);(<U0001042F>,<U00010407>);/ @@ -2400,6 +2469,17 @@ map "totitle"; / (<U00010CED>,<U00010CAD>);(<U00010CEE>,<U00010CAE>);/ (<U00010CEF>,<U00010CAF>);(<U00010CF0>,<U00010CB0>);/ (<U00010CF1>,<U00010CB1>);(<U00010CF2>,<U00010CB2>);/ + (<U00010D70>,<U00010D50>);(<U00010D71>,<U00010D51>);/ + (<U00010D72>,<U00010D52>);(<U00010D73>,<U00010D53>);/ + (<U00010D74>,<U00010D54>);(<U00010D75>,<U00010D55>);/ + (<U00010D76>,<U00010D56>);(<U00010D77>,<U00010D57>);/ + (<U00010D78>,<U00010D58>);(<U00010D79>,<U00010D59>);/ + (<U00010D7A>,<U00010D5A>);(<U00010D7B>,<U00010D5B>);/ + (<U00010D7C>,<U00010D5C>);(<U00010D7D>,<U00010D5D>);/ + (<U00010D7E>,<U00010D5E>);(<U00010D7F>,<U00010D5F>);/ + (<U00010D80>,<U00010D60>);(<U00010D81>,<U00010D61>);/ + (<U00010D82>,<U00010D62>);(<U00010D83>,<U00010D63>);/ + (<U00010D84>,<U00010D64>);(<U00010D85>,<U00010D65>);/ (<U000118C0>,<U000118A0>);(<U000118C1>,<U000118A1>);/ (<U000118C2>,<U000118A2>);(<U000118C3>,<U000118A3>);/ (<U000118C4>,<U000118A4>);(<U000118C5>,<U000118A5>);/ @@ -2459,7 +2539,7 @@ class "combining"; / <U06E7>..<U06E8>;<U06EA>..<U06ED>;<U0711>;<U0730>..<U074A>;/ <U07A6>..<U07B0>;<U07EB>..<U07F3>;<U07FD>;<U0816>..<U0819>;/ <U081B>..<U0823>;<U0825>..<U0827>;<U0829>..<U082D>;<U0859>..<U085B>;/ - <U0898>..<U089F>;<U08CA>..<U08E1>;<U08E3>..<U0903>;<U093A>..<U093C>;/ + <U0897>..<U089F>;<U08CA>..<U08E1>;<U08E3>..<U0903>;<U093A>..<U093C>;/ <U093E>..<U094F>;<U0951>..<U0957>;<U0962>..<U0963>;<U0981>..<U0983>;/ <U09BC>;<U09BE>..<U09C4>;<U09C7>..<U09C8>;<U09CB>..<U09CD>;<U09D7>;/ <U09E2>..<U09E3>;<U09FE>;<U0A01>..<U0A03>;<U0A3C>;<U0A3E>..<U0A42>;/ @@ -2501,21 +2581,24 @@ class "combining"; / <U00010376>..<U0001037A>;<U00010A01>..<U00010A03>;/ <U00010A05>..<U00010A06>;<U00010A0C>..<U00010A0F>;/ <U00010A38>..<U00010A3A>;<U00010A3F>;<U00010AE5>..<U00010AE6>;/ - <U00010D24>..<U00010D27>;<U00010EAB>..<U00010EAC>;/ - <U00010EFD>..<U00010EFF>;<U00010F46>..<U00010F50>;/ - <U00010F82>..<U00010F85>;<U00011000>..<U00011002>;/ - <U00011038>..<U00011046>;<U00011070>;<U00011073>..<U00011074>;/ - <U0001107F>..<U00011082>;<U000110B0>..<U000110BA>;<U000110C2>;/ - <U00011100>..<U00011102>;<U00011127>..<U00011134>;/ - <U00011145>..<U00011146>;<U00011173>;<U00011180>..<U00011182>;/ - <U000111B3>..<U000111C0>;<U000111C9>..<U000111CC>;/ - <U000111CE>..<U000111CF>;<U0001122C>..<U00011237>;<U0001123E>;/ - <U00011241>;<U000112DF>..<U000112EA>;<U00011300>..<U00011303>;/ + <U00010D24>..<U00010D27>;<U00010D69>..<U00010D6D>;/ + <U00010EAB>..<U00010EAC>;<U00010EFC>..<U00010EFF>;/ + <U00010F46>..<U00010F50>;<U00010F82>..<U00010F85>;/ + <U00011000>..<U00011002>;<U00011038>..<U00011046>;<U00011070>;/ + <U00011073>..<U00011074>;<U0001107F>..<U00011082>;/ + <U000110B0>..<U000110BA>;<U000110C2>;<U00011100>..<U00011102>;/ + <U00011127>..<U00011134>;<U00011145>..<U00011146>;<U00011173>;/ + <U00011180>..<U00011182>;<U000111B3>..<U000111C0>;/ + <U000111C9>..<U000111CC>;<U000111CE>..<U000111CF>;/ + <U0001122C>..<U00011237>;<U0001123E>;<U00011241>;/ + <U000112DF>..<U000112EA>;<U00011300>..<U00011303>;/ <U0001133B>..<U0001133C>;<U0001133E>..<U00011344>;/ <U00011347>..<U00011348>;<U0001134B>..<U0001134D>;<U00011357>;/ <U00011362>..<U00011363>;<U00011366>..<U0001136C>;/ - <U00011370>..<U00011374>;<U00011435>..<U00011446>;<U0001145E>;/ - <U000114B0>..<U000114C3>;<U000115AF>..<U000115B5>;/ + <U00011370>..<U00011374>;<U000113B8>..<U000113C0>;<U000113C2>;/ + <U000113C5>;<U000113C7>..<U000113CA>;<U000113CC>..<U000113D0>;/ + <U000113D2>;<U000113E1>..<U000113E2>;<U00011435>..<U00011446>;/ + <U0001145E>;<U000114B0>..<U000114C3>;<U000115AF>..<U000115B5>;/ <U000115B8>..<U000115C0>;<U000115DC>..<U000115DD>;/ <U00011630>..<U00011640>;<U000116AB>..<U000116B7>;/ <U0001171D>..<U0001172B>;<U0001182C>..<U0001183A>;/ @@ -2531,7 +2614,8 @@ class "combining"; / <U00011D8A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ <U00011D93>..<U00011D97>;<U00011EF3>..<U00011EF6>;/ <U00011F00>..<U00011F01>;<U00011F03>;<U00011F34>..<U00011F3A>;/ - <U00011F3E>..<U00011F42>;<U00013440>;<U00013447>..<U00013455>;/ + <U00011F3E>..<U00011F42>;<U00011F5A>;<U00013440>;/ + <U00013447>..<U00013455>;<U0001611E>..<U0001612F>;/ <U00016AF0>..<U00016AF4>;<U00016B30>..<U00016B36>;<U00016F4F>;/ <U00016F51>..<U00016F87>;<U00016F8F>..<U00016F92>;<U00016FE4>;/ <U00016FF0>..<U00016FF1>;<U0001BC9D>..<U0001BC9E>;/ @@ -2545,8 +2629,8 @@ class "combining"; / <U0001E01B>..<U0001E021>;<U0001E023>..<U0001E024>;/ <U0001E026>..<U0001E02A>;<U0001E08F>;<U0001E130>..<U0001E136>;/ <U0001E2AE>;<U0001E2EC>..<U0001E2EF>;<U0001E4EC>..<U0001E4EF>;/ - <U0001E8D0>..<U0001E8D6>;<U0001E944>..<U0001E94A>;/ - <U000E0100>..<U000E01EF> + <U0001E5EE>..<U0001E5EF>;<U0001E8D0>..<U0001E8D6>;/ + <U0001E944>..<U0001E94A>;<U000E0100>..<U000E01EF> % The "combining_level3" class reflects ISO/IEC 10646-1 annex B.2 % That is, combining characters of level 3. @@ -2588,7 +2672,7 @@ class "combining_level3"; / <UAA4C>..<UAA4D>;<UAA7B>..<UAA7D>;<UAAEB>..<UAAEF>;<UAAF5>..<UAAF6>;/ <UABE3>..<UABEA>;<UABEC>..<UABED>;<UFB1E>;<UFE00>..<UFE0F>;/ <U00010A01>..<U00010A03>;<U00010A05>..<U00010A06>;<U00010A0C>;/ - <U00010A0E>;<U00010A39>;<U00010A3F>;<U00011000>..<U00011002>;/ + <U00010A0E>;<U00010A39>;<U00010A3F>;<U00010EFC>;<U00011000>..<U00011002>;/ <U00011038>..<U00011046>;<U00011070>;<U00011073>..<U00011074>;/ <U0001107F>..<U00011082>;<U000110B0>..<U000110BA>;<U000110C2>;/ <U00011127>..<U00011134>;<U00011145>..<U00011146>;<U00011173>;/ @@ -2598,7 +2682,9 @@ class "combining_level3"; / <U000112DF>..<U000112EA>;<U00011300>..<U00011303>;/ <U0001133B>..<U0001133C>;<U0001133E>..<U00011344>;/ <U00011347>..<U00011348>;<U0001134B>..<U0001134D>;<U00011357>;/ - <U00011362>..<U00011363>;<U00011435>..<U00011446>;/ + <U00011362>..<U00011363>;<U000113B8>..<U000113C0>;<U000113C2>;/ + <U000113C5>;<U000113C7>..<U000113CA>;<U000113CC>..<U000113D0>;/ + <U000113D2>;<U000113E1>..<U000113E2>;<U00011435>..<U00011446>;/ <U000114B0>..<U000114C3>;<U000115AF>..<U000115B5>;/ <U000115B8>..<U000115C0>;<U000115DC>..<U000115DD>;/ <U00011630>..<U00011640>;<U000116AB>..<U000116B7>;/ @@ -2615,7 +2701,8 @@ class "combining_level3"; / <U00011D8A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ <U00011D93>..<U00011D97>;<U00011EF3>..<U00011EF6>;/ <U00011F00>..<U00011F01>;<U00011F03>;<U00011F34>..<U00011F3A>;/ - <U00011F3E>..<U00011F42>;<U00013440>;<U00013447>..<U00013455>;/ + <U00011F3E>..<U00011F42>;<U00011F5A>;<U00013440>;/ + <U00013447>..<U00013455>;<U0001611E>..<U0001612F>;/ <U00016AF0>..<U00016AF4>;<U00016F4F>;<U00016F51>..<U00016F87>;/ <U00016F8F>..<U00016F92>;<U00016FE4>;<U00016FF0>..<U00016FF1>;/ <U0001BC9D>..<U0001BC9E>;<U0001CF00>..<U0001CF2D>;/ diff --git a/localedata/locales/scn_IT b/localedata/locales/scn_IT index 227745c23f..bda21522ce 100644 --- a/localedata/locales/scn_IT +++ b/localedata/locales/scn_IT @@ -56,15 +56,11 @@ END LC_COLLATE LC_CTYPE copy "it_IT" -% These translit rules don’t work at the moment, -% see: https://sourceware.org/bugzilla/show_bug.cgi?id=31859 -% and: https://sourceware.org/pipermail/libc-alpha/2024-May/156769.html -% -%translit_start -%"ḌḌ" "DDH" -%"á¸á¸" "ddh" -%"Ḍá¸" "Ddh" -%translit_end +translit_start +"ḌḌ" "DDH" +"á¸á¸" "ddh" +"Ḍá¸" "Ddh" +translit_end END LC_CTYPE diff --git a/localedata/locales/tr_TR b/localedata/locales/tr_TR index 31387c7c4a..ba457b0514 100644 --- a/localedata/locales/tr_TR +++ b/localedata/locales/tr_TR @@ -43,7 +43,7 @@ fax "" language "Turkish" territory "Türkiye" revision "1.0" -date "2023-09-15" +date "2024-09-12" category "i18n:2012";LC_IDENTIFICATION category "i18n:2012";LC_CTYPE @@ -127,7 +127,7 @@ END LC_COLLATE LC_CTYPE % The following is the 14652 i18n fdcc-set LC_CTYPE category. -% It covers Unicode version 15.1.0. +% It covers Unicode version 16.0.0. % The character classes and mapping tables were automatically % generated using the gen_unicode_ctype.py program. @@ -169,21 +169,21 @@ upper / <U0508>;<U050A>;<U050C>;<U050E>;<U0510>;<U0512>;<U0514>;<U0516>;<U0518>;/ <U051A>;<U051C>;<U051E>;<U0520>;<U0522>;<U0524>;<U0526>;<U0528>;<U052A>;/ <U052C>;<U052E>;<U0531>..<U0556>;<U10A0>..<U10C5>;<U10C7>;<U10CD>;/ - <U13A0>..<U13F5>;<U1C90>..<U1CBA>;<U1CBD>..<U1CBF>;<U1E00>;<U1E02>;/ - <U1E04>;<U1E06>;<U1E08>;<U1E0A>;<U1E0C>;<U1E0E>;<U1E10>;<U1E12>;<U1E14>;/ - <U1E16>;<U1E18>;<U1E1A>;<U1E1C>;<U1E1E>;<U1E20>;<U1E22>;<U1E24>;<U1E26>;/ - <U1E28>;<U1E2A>;<U1E2C>;<U1E2E>;<U1E30>;<U1E32>;<U1E34>;<U1E36>;<U1E38>;/ - <U1E3A>;<U1E3C>;<U1E3E>;<U1E40>;<U1E42>;<U1E44>;<U1E46>;<U1E48>;<U1E4A>;/ - <U1E4C>;<U1E4E>;<U1E50>;<U1E52>;<U1E54>;<U1E56>;<U1E58>;<U1E5A>;<U1E5C>;/ - <U1E5E>;<U1E60>;<U1E62>;<U1E64>;<U1E66>;<U1E68>;<U1E6A>;<U1E6C>;<U1E6E>;/ - <U1E70>;<U1E72>;<U1E74>;<U1E76>;<U1E78>;<U1E7A>;<U1E7C>;<U1E7E>;<U1E80>;/ - <U1E82>;<U1E84>;<U1E86>;<U1E88>;<U1E8A>;<U1E8C>;<U1E8E>;<U1E90>;<U1E92>;/ - <U1E94>;<U1E9E>;<U1EA0>;<U1EA2>;<U1EA4>;<U1EA6>;<U1EA8>;<U1EAA>;<U1EAC>;/ - <U1EAE>;<U1EB0>;<U1EB2>;<U1EB4>;<U1EB6>;<U1EB8>;<U1EBA>;<U1EBC>;<U1EBE>;/ - <U1EC0>;<U1EC2>;<U1EC4>;<U1EC6>;<U1EC8>;<U1ECA>;<U1ECC>;<U1ECE>;<U1ED0>;/ - <U1ED2>;<U1ED4>;<U1ED6>;<U1ED8>;<U1EDA>;<U1EDC>;<U1EDE>;<U1EE0>;<U1EE2>;/ - <U1EE4>;<U1EE6>;<U1EE8>;<U1EEA>;<U1EEC>;<U1EEE>;<U1EF0>;<U1EF2>;<U1EF4>;/ - <U1EF6>;<U1EF8>;<U1EFA>;<U1EFC>;<U1EFE>;<U1F08>..<U1F0F>;/ + <U13A0>..<U13F5>;<U1C89>;<U1C90>..<U1CBA>;<U1CBD>..<U1CBF>;<U1E00>;/ + <U1E02>;<U1E04>;<U1E06>;<U1E08>;<U1E0A>;<U1E0C>;<U1E0E>;<U1E10>;<U1E12>;/ + <U1E14>;<U1E16>;<U1E18>;<U1E1A>;<U1E1C>;<U1E1E>;<U1E20>;<U1E22>;<U1E24>;/ + <U1E26>;<U1E28>;<U1E2A>;<U1E2C>;<U1E2E>;<U1E30>;<U1E32>;<U1E34>;<U1E36>;/ + <U1E38>;<U1E3A>;<U1E3C>;<U1E3E>;<U1E40>;<U1E42>;<U1E44>;<U1E46>;<U1E48>;/ + <U1E4A>;<U1E4C>;<U1E4E>;<U1E50>;<U1E52>;<U1E54>;<U1E56>;<U1E58>;<U1E5A>;/ + <U1E5C>;<U1E5E>;<U1E60>;<U1E62>;<U1E64>;<U1E66>;<U1E68>;<U1E6A>;<U1E6C>;/ + <U1E6E>;<U1E70>;<U1E72>;<U1E74>;<U1E76>;<U1E78>;<U1E7A>;<U1E7C>;<U1E7E>;/ + <U1E80>;<U1E82>;<U1E84>;<U1E86>;<U1E88>;<U1E8A>;<U1E8C>;<U1E8E>;<U1E90>;/ + <U1E92>;<U1E94>;<U1E9E>;<U1EA0>;<U1EA2>;<U1EA4>;<U1EA6>;<U1EA8>;<U1EAA>;/ + <U1EAC>;<U1EAE>;<U1EB0>;<U1EB2>;<U1EB4>;<U1EB6>;<U1EB8>;<U1EBA>;<U1EBC>;/ + <U1EBE>;<U1EC0>;<U1EC2>;<U1EC4>;<U1EC6>;<U1EC8>;<U1ECA>;<U1ECC>;<U1ECE>;/ + <U1ED0>;<U1ED2>;<U1ED4>;<U1ED6>;<U1ED8>;<U1EDA>;<U1EDC>;<U1EDE>;<U1EE0>;/ + <U1EE2>;<U1EE4>;<U1EE6>;<U1EE8>;<U1EEA>;<U1EEC>;<U1EEE>;<U1EF0>;<U1EF2>;/ + <U1EF4>;<U1EF6>;<U1EF8>;<U1EFA>;<U1EFC>;<U1EFE>;<U1F08>..<U1F0F>;/ <U1F18>..<U1F1D>;<U1F28>..<U1F2F>;<U1F38>..<U1F3F>;<U1F48>..<U1F4D>;/ <U1F59>;<U1F5B>;<U1F5D>;<U1F5F>;<U1F68>..<U1F6F>;<U1F88>..<U1F8F>;/ <U1F98>..<U1F9F>;<U1FA8>..<U1FAF>;<U1FB8>..<U1FBC>;<U1FC8>..<U1FCC>;/ @@ -210,11 +210,12 @@ upper / <UA780>;<UA782>;<UA784>;<UA786>;<UA78B>;<UA78D>;<UA790>;<UA792>;<UA796>;/ <UA798>;<UA79A>;<UA79C>;<UA79E>;<UA7A0>;<UA7A2>;<UA7A4>;<UA7A6>;<UA7A8>;/ <UA7AA>..<UA7AE>;<UA7B0>..<UA7B4>;<UA7B6>;<UA7B8>;<UA7BA>;<UA7BC>;/ - <UA7BE>;<UA7C0>;<UA7C2>;<UA7C4>..<UA7C7>;<UA7C9>;<UA7D0>;<UA7D6>;<UA7D8>;/ - <UA7F5>;<UFF21>..<UFF3A>;<U00010400>..<U00010427>;/ - <U000104B0>..<U000104D3>;<U00010570>..<U0001057A>;/ - <U0001057C>..<U0001058A>;<U0001058C>..<U00010592>;/ - <U00010594>..<U00010595>;<U00010C80>..<U00010CB2>;/ + <UA7BE>;<UA7C0>;<UA7C2>;<UA7C4>..<UA7C7>;<UA7C9>;<UA7CB>..<UA7CC>;/ + <UA7D0>;<UA7D6>;<UA7D8>;<UA7DA>;<UA7DC>;<UA7F5>;<UFF21>..<UFF3A>;/ + <U00010400>..<U00010427>;<U000104B0>..<U000104D3>;/ + <U00010570>..<U0001057A>;<U0001057C>..<U0001058A>;/ + <U0001058C>..<U00010592>;<U00010594>..<U00010595>;/ + <U00010C80>..<U00010CB2>;<U00010D50>..<U00010D65>;/ <U000118A0>..<U000118BF>;<U00016E40>..<U00016E5F>;/ <U0001D400>..<U0001D419>;<U0001D434>..<U0001D44D>;/ <U0001D468>..<U0001D481>;<U0001D49C>;<U0001D49E>..<U0001D49F>;/ @@ -271,57 +272,58 @@ lower / <U0507>;<U0509>;<U050B>;<U050D>;<U050F>;<U0511>;<U0513>;<U0515>;<U0517>;/ <U0519>;<U051B>;<U051D>;<U051F>;<U0521>;<U0523>;<U0525>;<U0527>;<U0529>;/ <U052B>;<U052D>;<U052F>;<U0560>..<U0588>;<U10D0>..<U10FA>;/ - <U10FC>..<U10FF>;<U13F8>..<U13FD>;<U1C80>..<U1C88>;<U1D00>..<U1DBF>;/ - <U1E01>;<U1E03>;<U1E05>;<U1E07>;<U1E09>;<U1E0B>;<U1E0D>;<U1E0F>;<U1E11>;/ - <U1E13>;<U1E15>;<U1E17>;<U1E19>;<U1E1B>;<U1E1D>;<U1E1F>;<U1E21>;<U1E23>;/ - <U1E25>;<U1E27>;<U1E29>;<U1E2B>;<U1E2D>;<U1E2F>;<U1E31>;<U1E33>;<U1E35>;/ - <U1E37>;<U1E39>;<U1E3B>;<U1E3D>;<U1E3F>;<U1E41>;<U1E43>;<U1E45>;<U1E47>;/ - <U1E49>;<U1E4B>;<U1E4D>;<U1E4F>;<U1E51>;<U1E53>;<U1E55>;<U1E57>;<U1E59>;/ - <U1E5B>;<U1E5D>;<U1E5F>;<U1E61>;<U1E63>;<U1E65>;<U1E67>;<U1E69>;<U1E6B>;/ - <U1E6D>;<U1E6F>;<U1E71>;<U1E73>;<U1E75>;<U1E77>;<U1E79>;<U1E7B>;<U1E7D>;/ - <U1E7F>;<U1E81>;<U1E83>;<U1E85>;<U1E87>;<U1E89>;<U1E8B>;<U1E8D>;<U1E8F>;/ - <U1E91>;<U1E93>;<U1E95>..<U1E9D>;<U1E9F>;<U1EA1>;<U1EA3>;<U1EA5>;<U1EA7>;/ - <U1EA9>;<U1EAB>;<U1EAD>;<U1EAF>;<U1EB1>;<U1EB3>;<U1EB5>;<U1EB7>;<U1EB9>;/ - <U1EBB>;<U1EBD>;<U1EBF>;<U1EC1>;<U1EC3>;<U1EC5>;<U1EC7>;<U1EC9>;<U1ECB>;/ - <U1ECD>;<U1ECF>;<U1ED1>;<U1ED3>;<U1ED5>;<U1ED7>;<U1ED9>;<U1EDB>;<U1EDD>;/ - <U1EDF>;<U1EE1>;<U1EE3>;<U1EE5>;<U1EE7>;<U1EE9>;<U1EEB>;<U1EED>;<U1EEF>;/ - <U1EF1>;<U1EF3>;<U1EF5>;<U1EF7>;<U1EF9>;<U1EFB>;<U1EFD>;<U1EFF>..<U1F07>;/ - <U1F10>..<U1F15>;<U1F20>..<U1F27>;<U1F30>..<U1F37>;<U1F40>..<U1F45>;/ - <U1F50>..<U1F57>;<U1F60>..<U1F67>;<U1F70>..<U1F7D>;<U1F80>..<U1F87>;/ - <U1F90>..<U1F97>;<U1FA0>..<U1FA7>;<U1FB0>..<U1FB4>;<U1FB6>..<U1FB7>;/ - <U1FBE>;<U1FC2>..<U1FC4>;<U1FC6>..<U1FC7>;<U1FD0>..<U1FD3>;/ - <U1FD6>..<U1FD7>;<U1FE0>..<U1FE7>;<U1FF2>..<U1FF4>;<U1FF6>..<U1FF7>;/ - <U2071>;<U207F>;<U2090>..<U209C>;<U210A>;<U210E>..<U210F>;<U2113>;/ - <U212F>;<U2134>;<U2139>;<U213C>..<U213D>;<U2146>..<U2149>;<U214E>;/ - <U2170>..<U217F>;<U2184>;<U24D0>..<U24E9>;<U2C30>..<U2C5F>;<U2C61>;/ - <U2C65>..<U2C66>;<U2C68>;<U2C6A>;<U2C6C>;<U2C71>;<U2C73>..<U2C74>;/ - <U2C76>..<U2C7D>;<U2C81>;<U2C83>;<U2C85>;<U2C87>;<U2C89>;<U2C8B>;<U2C8D>;/ - <U2C8F>;<U2C91>;<U2C93>;<U2C95>;<U2C97>;<U2C99>;<U2C9B>;<U2C9D>;<U2C9F>;/ - <U2CA1>;<U2CA3>;<U2CA5>;<U2CA7>;<U2CA9>;<U2CAB>;<U2CAD>;<U2CAF>;<U2CB1>;/ - <U2CB3>;<U2CB5>;<U2CB7>;<U2CB9>;<U2CBB>;<U2CBD>;<U2CBF>;<U2CC1>;<U2CC3>;/ - <U2CC5>;<U2CC7>;<U2CC9>;<U2CCB>;<U2CCD>;<U2CCF>;<U2CD1>;<U2CD3>;<U2CD5>;/ - <U2CD7>;<U2CD9>;<U2CDB>;<U2CDD>;<U2CDF>;<U2CE1>;<U2CE3>..<U2CE4>;<U2CEC>;/ - <U2CEE>;<U2CF3>;<U2D00>..<U2D25>;<U2D27>;<U2D2D>;<UA641>;<UA643>;<UA645>;/ - <UA647>;<UA649>;<UA64B>;<UA64D>;<UA64F>;<UA651>;<UA653>;<UA655>;<UA657>;/ - <UA659>;<UA65B>;<UA65D>;<UA65F>;<UA661>;<UA663>;<UA665>;<UA667>;<UA669>;/ - <UA66B>;<UA66D>;<UA681>;<UA683>;<UA685>;<UA687>;<UA689>;<UA68B>;<UA68D>;/ - <UA68F>;<UA691>;<UA693>;<UA695>;<UA697>;<UA699>;<UA69B>..<UA69D>;<UA723>;/ - <UA725>;<UA727>;<UA729>;<UA72B>;<UA72D>;<UA72F>..<UA731>;<UA733>;<UA735>;/ - <UA737>;<UA739>;<UA73B>;<UA73D>;<UA73F>;<UA741>;<UA743>;<UA745>;<UA747>;/ - <UA749>;<UA74B>;<UA74D>;<UA74F>;<UA751>;<UA753>;<UA755>;<UA757>;<UA759>;/ - <UA75B>;<UA75D>;<UA75F>;<UA761>;<UA763>;<UA765>;<UA767>;<UA769>;<UA76B>;/ - <UA76D>;<UA76F>..<UA778>;<UA77A>;<UA77C>;<UA77F>;<UA781>;<UA783>;<UA785>;/ - <UA787>;<UA78C>;<UA78E>;<UA791>;<UA793>..<UA795>;<UA797>;<UA799>;<UA79B>;/ - <UA79D>;<UA79F>;<UA7A1>;<UA7A3>;<UA7A5>;<UA7A7>;<UA7A9>;<UA7AF>;<UA7B5>;/ - <UA7B7>;<UA7B9>;<UA7BB>;<UA7BD>;<UA7BF>;<UA7C1>;<UA7C3>;<UA7C8>;<UA7CA>;/ - <UA7D1>;<UA7D3>;<UA7D5>;<UA7D7>;<UA7D9>;<UA7F2>..<UA7F4>;<UA7F6>;/ - <UA7F8>..<UA7FA>;<UAB30>..<UAB5A>;<UAB5C>..<UAB69>;<UAB70>..<UABBF>;/ - <UFB00>..<UFB06>;<UFB13>..<UFB17>;<UFF41>..<UFF5A>;/ - <U00010428>..<U0001044F>;<U000104D8>..<U000104FB>;/ - <U00010597>..<U000105A1>;<U000105A3>..<U000105B1>;/ - <U000105B3>..<U000105B9>;<U000105BB>..<U000105BC>;<U00010780>;/ - <U00010783>..<U00010785>;<U00010787>..<U000107B0>;/ - <U000107B2>..<U000107BA>;<U00010CC0>..<U00010CF2>;/ + <U10FC>..<U10FF>;<U13F8>..<U13FD>;<U1C80>..<U1C88>;<U1C8A>;/ + <U1D00>..<U1DBF>;<U1E01>;<U1E03>;<U1E05>;<U1E07>;<U1E09>;<U1E0B>;<U1E0D>;/ + <U1E0F>;<U1E11>;<U1E13>;<U1E15>;<U1E17>;<U1E19>;<U1E1B>;<U1E1D>;<U1E1F>;/ + <U1E21>;<U1E23>;<U1E25>;<U1E27>;<U1E29>;<U1E2B>;<U1E2D>;<U1E2F>;<U1E31>;/ + <U1E33>;<U1E35>;<U1E37>;<U1E39>;<U1E3B>;<U1E3D>;<U1E3F>;<U1E41>;<U1E43>;/ + <U1E45>;<U1E47>;<U1E49>;<U1E4B>;<U1E4D>;<U1E4F>;<U1E51>;<U1E53>;<U1E55>;/ + <U1E57>;<U1E59>;<U1E5B>;<U1E5D>;<U1E5F>;<U1E61>;<U1E63>;<U1E65>;<U1E67>;/ + <U1E69>;<U1E6B>;<U1E6D>;<U1E6F>;<U1E71>;<U1E73>;<U1E75>;<U1E77>;<U1E79>;/ + <U1E7B>;<U1E7D>;<U1E7F>;<U1E81>;<U1E83>;<U1E85>;<U1E87>;<U1E89>;<U1E8B>;/ + <U1E8D>;<U1E8F>;<U1E91>;<U1E93>;<U1E95>..<U1E9D>;<U1E9F>;<U1EA1>;<U1EA3>;/ + <U1EA5>;<U1EA7>;<U1EA9>;<U1EAB>;<U1EAD>;<U1EAF>;<U1EB1>;<U1EB3>;<U1EB5>;/ + <U1EB7>;<U1EB9>;<U1EBB>;<U1EBD>;<U1EBF>;<U1EC1>;<U1EC3>;<U1EC5>;<U1EC7>;/ + <U1EC9>;<U1ECB>;<U1ECD>;<U1ECF>;<U1ED1>;<U1ED3>;<U1ED5>;<U1ED7>;<U1ED9>;/ + <U1EDB>;<U1EDD>;<U1EDF>;<U1EE1>;<U1EE3>;<U1EE5>;<U1EE7>;<U1EE9>;<U1EEB>;/ + <U1EED>;<U1EEF>;<U1EF1>;<U1EF3>;<U1EF5>;<U1EF7>;<U1EF9>;<U1EFB>;<U1EFD>;/ + <U1EFF>..<U1F07>;<U1F10>..<U1F15>;<U1F20>..<U1F27>;<U1F30>..<U1F37>;/ + <U1F40>..<U1F45>;<U1F50>..<U1F57>;<U1F60>..<U1F67>;<U1F70>..<U1F7D>;/ + <U1F80>..<U1F87>;<U1F90>..<U1F97>;<U1FA0>..<U1FA7>;<U1FB0>..<U1FB4>;/ + <U1FB6>..<U1FB7>;<U1FBE>;<U1FC2>..<U1FC4>;<U1FC6>..<U1FC7>;/ + <U1FD0>..<U1FD3>;<U1FD6>..<U1FD7>;<U1FE0>..<U1FE7>;<U1FF2>..<U1FF4>;/ + <U1FF6>..<U1FF7>;<U2071>;<U207F>;<U2090>..<U209C>;<U210A>;/ + <U210E>..<U210F>;<U2113>;<U212F>;<U2134>;<U2139>;<U213C>..<U213D>;/ + <U2146>..<U2149>;<U214E>;<U2170>..<U217F>;<U2184>;<U24D0>..<U24E9>;/ + <U2C30>..<U2C5F>;<U2C61>;<U2C65>..<U2C66>;<U2C68>;<U2C6A>;<U2C6C>;/ + <U2C71>;<U2C73>..<U2C74>;<U2C76>..<U2C7D>;<U2C81>;<U2C83>;<U2C85>;/ + <U2C87>;<U2C89>;<U2C8B>;<U2C8D>;<U2C8F>;<U2C91>;<U2C93>;<U2C95>;<U2C97>;/ + <U2C99>;<U2C9B>;<U2C9D>;<U2C9F>;<U2CA1>;<U2CA3>;<U2CA5>;<U2CA7>;<U2CA9>;/ + <U2CAB>;<U2CAD>;<U2CAF>;<U2CB1>;<U2CB3>;<U2CB5>;<U2CB7>;<U2CB9>;<U2CBB>;/ + <U2CBD>;<U2CBF>;<U2CC1>;<U2CC3>;<U2CC5>;<U2CC7>;<U2CC9>;<U2CCB>;<U2CCD>;/ + <U2CCF>;<U2CD1>;<U2CD3>;<U2CD5>;<U2CD7>;<U2CD9>;<U2CDB>;<U2CDD>;<U2CDF>;/ + <U2CE1>;<U2CE3>..<U2CE4>;<U2CEC>;<U2CEE>;<U2CF3>;<U2D00>..<U2D25>;/ + <U2D27>;<U2D2D>;<UA641>;<UA643>;<UA645>;<UA647>;<UA649>;<UA64B>;<UA64D>;/ + <UA64F>;<UA651>;<UA653>;<UA655>;<UA657>;<UA659>;<UA65B>;<UA65D>;<UA65F>;/ + <UA661>;<UA663>;<UA665>;<UA667>;<UA669>;<UA66B>;<UA66D>;<UA681>;<UA683>;/ + <UA685>;<UA687>;<UA689>;<UA68B>;<UA68D>;<UA68F>;<UA691>;<UA693>;<UA695>;/ + <UA697>;<UA699>;<UA69B>..<UA69D>;<UA723>;<UA725>;<UA727>;<UA729>;<UA72B>;/ + <UA72D>;<UA72F>..<UA731>;<UA733>;<UA735>;<UA737>;<UA739>;<UA73B>;<UA73D>;/ + <UA73F>;<UA741>;<UA743>;<UA745>;<UA747>;<UA749>;<UA74B>;<UA74D>;<UA74F>;/ + <UA751>;<UA753>;<UA755>;<UA757>;<UA759>;<UA75B>;<UA75D>;<UA75F>;<UA761>;/ + <UA763>;<UA765>;<UA767>;<UA769>;<UA76B>;<UA76D>;<UA76F>..<UA778>;<UA77A>;/ + <UA77C>;<UA77F>;<UA781>;<UA783>;<UA785>;<UA787>;<UA78C>;<UA78E>;<UA791>;/ + <UA793>..<UA795>;<UA797>;<UA799>;<UA79B>;<UA79D>;<UA79F>;<UA7A1>;<UA7A3>;/ + <UA7A5>;<UA7A7>;<UA7A9>;<UA7AF>;<UA7B5>;<UA7B7>;<UA7B9>;<UA7BB>;<UA7BD>;/ + <UA7BF>;<UA7C1>;<UA7C3>;<UA7C8>;<UA7CA>;<UA7CD>;<UA7D1>;<UA7D3>;<UA7D5>;/ + <UA7D7>;<UA7D9>;<UA7DB>;<UA7F2>..<UA7F4>;<UA7F6>;<UA7F8>..<UA7FA>;/ + <UAB30>..<UAB5A>;<UAB5C>..<UAB69>;<UAB70>..<UABBF>;<UFB00>..<UFB06>;/ + <UFB13>..<UFB17>;<UFF41>..<UFF5A>;<U00010428>..<U0001044F>;/ + <U000104D8>..<U000104FB>;<U00010597>..<U000105A1>;/ + <U000105A3>..<U000105B1>;<U000105B3>..<U000105B9>;/ + <U000105BB>..<U000105BC>;<U00010780>;<U00010783>..<U00010785>;/ + <U00010787>..<U000107B0>;<U000107B2>..<U000107BA>;/ + <U00010CC0>..<U00010CF2>;<U00010D70>..<U00010D85>;/ <U000118C0>..<U000118DF>;<U00016E60>..<U00016E7F>;/ <U0001D41A>..<U0001D433>;<U0001D44E>..<U0001D454>;/ <U0001D456>..<U0001D467>;<U0001D482>..<U0001D49B>;/ @@ -345,7 +347,7 @@ lower / alpha / <U0041>..<U005A>;<U0061>..<U007A>;<U00AA>;<U00B5>;<U00BA>;/ <U00C0>..<U00D6>;<U00D8>..<U00F6>;<U00F8>..<U02C1>;<U02C6>..<U02D1>;/ - <U02E0>..<U02E4>;<U02EC>;<U02EE>;<U0345>;<U0370>..<U0374>;/ + <U02E0>..<U02E4>;<U02EC>;<U02EE>;<U0345>;<U0363>..<U0374>;/ <U0376>..<U0377>;<U037A>..<U037D>;<U037F>;<U0386>;<U0388>..<U038A>;/ <U038C>;<U038E>..<U03A1>;<U03A3>..<U03F5>;<U03F7>..<U0481>;/ <U048A>..<U052F>;<U0531>..<U0556>;<U0559>;<U0560>..<U0588>;/ @@ -355,16 +357,16 @@ alpha / <U06ED>..<U06FC>;<U06FF>;<U0710>..<U073F>;<U074D>..<U07B1>;/ <U07C0>..<U07EA>;<U07F4>..<U07F5>;<U07FA>;<U0800>..<U0817>;/ <U081A>..<U082C>;<U0840>..<U0858>;<U0860>..<U086A>;<U0870>..<U0887>;/ - <U0889>..<U088E>;<U08A0>..<U08C9>;<U08D4>..<U08DF>;<U08E3>..<U08E9>;/ - <U08F0>..<U093B>;<U093D>..<U094C>;<U094E>..<U0950>;<U0955>..<U0963>;/ - <U0966>..<U096F>;<U0971>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;/ - <U0993>..<U09A8>;<U09AA>..<U09B0>;<U09B2>;<U09B6>..<U09B9>;/ - <U09BD>..<U09C4>;<U09C7>..<U09C8>;<U09CB>..<U09CC>;<U09CE>;<U09D7>;/ - <U09DC>..<U09DD>;<U09DF>..<U09E3>;<U09E6>..<U09F1>;<U09FC>;/ - <U0A01>..<U0A03>;<U0A05>..<U0A0A>;<U0A0F>..<U0A10>;<U0A13>..<U0A28>;/ - <U0A2A>..<U0A30>;<U0A32>..<U0A33>;<U0A35>..<U0A36>;<U0A38>..<U0A39>;/ - <U0A3E>..<U0A42>;<U0A47>..<U0A48>;<U0A4B>..<U0A4C>;<U0A51>;/ - <U0A59>..<U0A5C>;<U0A5E>;<U0A66>..<U0A75>;<U0A81>..<U0A83>;/ + <U0889>..<U088E>;<U0897>;<U08A0>..<U08C9>;<U08D4>..<U08DF>;/ + <U08E3>..<U08E9>;<U08F0>..<U093B>;<U093D>..<U094C>;<U094E>..<U0950>;/ + <U0955>..<U0963>;<U0966>..<U096F>;<U0971>..<U0983>;<U0985>..<U098C>;/ + <U098F>..<U0990>;<U0993>..<U09A8>;<U09AA>..<U09B0>;<U09B2>;/ + <U09B6>..<U09B9>;<U09BD>..<U09C4>;<U09C7>..<U09C8>;<U09CB>..<U09CC>;/ + <U09CE>;<U09D7>;<U09DC>..<U09DD>;<U09DF>..<U09E3>;<U09E6>..<U09F1>;/ + <U09FC>;<U0A01>..<U0A03>;<U0A05>..<U0A0A>;<U0A0F>..<U0A10>;/ + <U0A13>..<U0A28>;<U0A2A>..<U0A30>;<U0A32>..<U0A33>;<U0A35>..<U0A36>;/ + <U0A38>..<U0A39>;<U0A3E>..<U0A42>;<U0A47>..<U0A48>;<U0A4B>..<U0A4C>;/ + <U0A51>;<U0A59>..<U0A5C>;<U0A5E>;<U0A66>..<U0A75>;<U0A81>..<U0A83>;/ <U0A85>..<U0A8D>;<U0A8F>..<U0A91>;<U0A93>..<U0AA8>;<U0AAA>..<U0AB0>;/ <U0AB2>..<U0AB3>;<U0AB5>..<U0AB9>;<U0ABD>..<U0AC5>;<U0AC7>..<U0AC9>;/ <U0ACB>..<U0ACC>;<U0AD0>;<U0AE0>..<U0AE3>;<U0AE6>..<U0AEF>;/ @@ -410,9 +412,9 @@ alpha / <U1A90>..<U1A99>;<U1AA7>;<U1ABF>..<U1AC0>;<U1ACC>..<U1ACE>;/ <U1B00>..<U1B33>;<U1B35>..<U1B43>;<U1B45>..<U1B4C>;<U1B50>..<U1B59>;/ <U1B80>..<U1BA9>;<U1BAC>..<U1BE5>;<U1BE7>..<U1BF1>;<U1C00>..<U1C36>;/ - <U1C40>..<U1C49>;<U1C4D>..<U1C7D>;<U1C80>..<U1C88>;<U1C90>..<U1CBA>;/ + <U1C40>..<U1C49>;<U1C4D>..<U1C7D>;<U1C80>..<U1C8A>;<U1C90>..<U1CBA>;/ <U1CBD>..<U1CBF>;<U1CE9>..<U1CEC>;<U1CEE>..<U1CF3>;<U1CF5>..<U1CF6>;/ - <U1CFA>;<U1D00>..<U1DBF>;<U1DE7>..<U1DF4>;<U1E00>..<U1F15>;/ + <U1CFA>;<U1D00>..<U1DBF>;<U1DD3>..<U1DF4>;<U1E00>..<U1F15>;/ <U1F18>..<U1F1D>;<U1F20>..<U1F45>;<U1F48>..<U1F4D>;<U1F50>..<U1F57>;/ <U1F59>;<U1F5B>;<U1F5D>;<U1F5F>..<U1F7D>;<U1F80>..<U1FB4>;/ <U1FB6>..<U1FBC>;<U1FBE>;<U1FC2>..<U1FC4>;<U1FC6>..<U1FCC>;/ @@ -430,8 +432,8 @@ alpha / <U30FC>..<U30FF>;<U3105>..<U312F>;<U3131>..<U318E>;<U31A0>..<U31BF>;/ <U31F0>..<U31FF>;<U3400>..<U4DBF>;<U4E00>..<UA48C>;<UA4D0>..<UA4FD>;/ <UA500>..<UA60C>;<UA610>..<UA62B>;<UA640>..<UA66E>;<UA674>..<UA67B>;/ - <UA67F>..<UA6EF>;<UA717>..<UA71F>;<UA722>..<UA788>;<UA78B>..<UA7CA>;/ - <UA7D0>..<UA7D1>;<UA7D3>;<UA7D5>..<UA7D9>;<UA7F2>..<UA805>;/ + <UA67F>..<UA6EF>;<UA717>..<UA71F>;<UA722>..<UA788>;<UA78B>..<UA7CD>;/ + <UA7D0>..<UA7D1>;<UA7D3>;<UA7D5>..<UA7DC>;<UA7F2>..<UA805>;/ <UA807>..<UA827>;<UA840>..<UA873>;<UA880>..<UA8C3>;<UA8C5>;/ <UA8D0>..<UA8D9>;<UA8F2>..<UA8F7>;<UA8FB>;<UA8FD>..<UA92A>;/ <UA930>..<UA952>;<UA960>..<UA97C>;<UA980>..<UA9B2>;<UA9B4>..<UA9BF>;/ @@ -462,26 +464,28 @@ alpha / <U0001057C>..<U0001058A>;<U0001058C>..<U00010592>;/ <U00010594>..<U00010595>;<U00010597>..<U000105A1>;/ <U000105A3>..<U000105B1>;<U000105B3>..<U000105B9>;/ - <U000105BB>..<U000105BC>;<U00010600>..<U00010736>;/ - <U00010740>..<U00010755>;<U00010760>..<U00010767>;/ - <U00010780>..<U00010785>;<U00010787>..<U000107B0>;/ - <U000107B2>..<U000107BA>;<U00010800>..<U00010805>;<U00010808>;/ - <U0001080A>..<U00010835>;<U00010837>..<U00010838>;<U0001083C>;/ - <U0001083F>..<U00010855>;<U00010860>..<U00010876>;/ - <U00010880>..<U0001089E>;<U000108E0>..<U000108F2>;/ - <U000108F4>..<U000108F5>;<U00010900>..<U00010915>;/ - <U00010920>..<U00010939>;<U00010980>..<U000109B7>;/ - <U000109BE>..<U000109BF>;<U00010A00>..<U00010A03>;/ - <U00010A05>..<U00010A06>;<U00010A0C>..<U00010A13>;/ - <U00010A15>..<U00010A17>;<U00010A19>..<U00010A35>;/ - <U00010A60>..<U00010A7C>;<U00010A80>..<U00010A9C>;/ - <U00010AC0>..<U00010AC7>;<U00010AC9>..<U00010AE4>;/ - <U00010B00>..<U00010B35>;<U00010B40>..<U00010B55>;/ - <U00010B60>..<U00010B72>;<U00010B80>..<U00010B91>;/ - <U00010C00>..<U00010C48>;<U00010C80>..<U00010CB2>;/ - <U00010CC0>..<U00010CF2>;<U00010D00>..<U00010D27>;/ - <U00010D30>..<U00010D39>;<U00010E80>..<U00010EA9>;/ - <U00010EAB>..<U00010EAC>;<U00010EB0>..<U00010EB1>;/ + <U000105BB>..<U000105BC>;<U000105C0>..<U000105F3>;/ + <U00010600>..<U00010736>;<U00010740>..<U00010755>;/ + <U00010760>..<U00010767>;<U00010780>..<U00010785>;/ + <U00010787>..<U000107B0>;<U000107B2>..<U000107BA>;/ + <U00010800>..<U00010805>;<U00010808>;<U0001080A>..<U00010835>;/ + <U00010837>..<U00010838>;<U0001083C>;<U0001083F>..<U00010855>;/ + <U00010860>..<U00010876>;<U00010880>..<U0001089E>;/ + <U000108E0>..<U000108F2>;<U000108F4>..<U000108F5>;/ + <U00010900>..<U00010915>;<U00010920>..<U00010939>;/ + <U00010980>..<U000109B7>;<U000109BE>..<U000109BF>;/ + <U00010A00>..<U00010A03>;<U00010A05>..<U00010A06>;/ + <U00010A0C>..<U00010A13>;<U00010A15>..<U00010A17>;/ + <U00010A19>..<U00010A35>;<U00010A60>..<U00010A7C>;/ + <U00010A80>..<U00010A9C>;<U00010AC0>..<U00010AC7>;/ + <U00010AC9>..<U00010AE4>;<U00010B00>..<U00010B35>;/ + <U00010B40>..<U00010B55>;<U00010B60>..<U00010B72>;/ + <U00010B80>..<U00010B91>;<U00010C00>..<U00010C48>;/ + <U00010C80>..<U00010CB2>;<U00010CC0>..<U00010CF2>;/ + <U00010D00>..<U00010D27>;<U00010D30>..<U00010D39>;/ + <U00010D40>..<U00010D65>;<U00010D69>;<U00010D6F>..<U00010D85>;/ + <U00010E80>..<U00010EA9>;<U00010EAB>..<U00010EAC>;/ + <U00010EB0>..<U00010EB1>;<U00010EC2>..<U00010EC4>;<U00010EFC>;/ <U00010F00>..<U00010F1C>;<U00010F27>;<U00010F30>..<U00010F45>;/ <U00010F70>..<U00010F81>;<U00010FB0>..<U00010FC4>;/ <U00010FE0>..<U00010FF6>;<U00011000>..<U00011045>;/ @@ -501,83 +505,92 @@ alpha / <U00011332>..<U00011333>;<U00011335>..<U00011339>;/ <U0001133D>..<U00011344>;<U00011347>..<U00011348>;/ <U0001134B>..<U0001134C>;<U00011350>;<U00011357>;/ - <U0001135D>..<U00011363>;<U00011400>..<U00011441>;/ - <U00011443>..<U00011445>;<U00011447>..<U0001144A>;/ - <U00011450>..<U00011459>;<U0001145F>..<U00011461>;/ - <U00011480>..<U000114C1>;<U000114C4>..<U000114C5>;<U000114C7>;/ - <U000114D0>..<U000114D9>;<U00011580>..<U000115B5>;/ - <U000115B8>..<U000115BE>;<U000115D8>..<U000115DD>;/ - <U00011600>..<U0001163E>;<U00011640>;<U00011644>;/ - <U00011650>..<U00011659>;<U00011680>..<U000116B5>;<U000116B8>;/ - <U000116C0>..<U000116C9>;<U00011700>..<U0001171A>;/ - <U0001171D>..<U0001172A>;<U00011730>..<U00011739>;/ - <U00011740>..<U00011746>;<U00011800>..<U00011838>;/ - <U000118A0>..<U000118E9>;<U000118FF>..<U00011906>;<U00011909>;/ - <U0001190C>..<U00011913>;<U00011915>..<U00011916>;/ - <U00011918>..<U00011935>;<U00011937>..<U00011938>;/ - <U0001193B>..<U0001193C>;<U0001193F>..<U00011942>;/ - <U00011950>..<U00011959>;<U000119A0>..<U000119A7>;/ - <U000119AA>..<U000119D7>;<U000119DA>..<U000119DF>;<U000119E1>;/ - <U000119E3>..<U000119E4>;<U00011A00>..<U00011A32>;/ - <U00011A35>..<U00011A3E>;<U00011A50>..<U00011A97>;<U00011A9D>;/ - <U00011AB0>..<U00011AF8>;<U00011C00>..<U00011C08>;/ - <U00011C0A>..<U00011C36>;<U00011C38>..<U00011C3E>;<U00011C40>;/ - <U00011C50>..<U00011C59>;<U00011C72>..<U00011C8F>;/ - <U00011C92>..<U00011CA7>;<U00011CA9>..<U00011CB6>;/ - <U00011D00>..<U00011D06>;<U00011D08>..<U00011D09>;/ - <U00011D0B>..<U00011D36>;<U00011D3A>;<U00011D3C>..<U00011D3D>;/ - <U00011D3F>..<U00011D41>;<U00011D43>;<U00011D46>..<U00011D47>;/ - <U00011D50>..<U00011D59>;<U00011D60>..<U00011D65>;/ - <U00011D67>..<U00011D68>;<U00011D6A>..<U00011D8E>;/ - <U00011D90>..<U00011D91>;<U00011D93>..<U00011D96>;<U00011D98>;/ - <U00011DA0>..<U00011DA9>;<U00011EE0>..<U00011EF6>;/ - <U00011F00>..<U00011F10>;<U00011F12>..<U00011F3A>;/ - <U00011F3E>..<U00011F40>;<U00011F50>..<U00011F59>;<U00011FB0>;/ - <U00012000>..<U00012399>;<U00012400>..<U0001246E>;/ - <U00012480>..<U00012543>;<U00012F90>..<U00012FF0>;/ - <U00013000>..<U0001342F>;<U00013441>..<U00013446>;/ - <U00014400>..<U00014646>;<U00016800>..<U00016A38>;/ + <U0001135D>..<U00011363>;<U00011380>..<U00011389>;<U0001138B>;/ + <U0001138E>;<U00011390>..<U000113B5>;<U000113B7>..<U000113C0>;/ + <U000113C2>;<U000113C5>;<U000113C7>..<U000113CA>;/ + <U000113CC>..<U000113CD>;<U000113D1>;<U000113D3>;/ + <U00011400>..<U00011441>;<U00011443>..<U00011445>;/ + <U00011447>..<U0001144A>;<U00011450>..<U00011459>;/ + <U0001145F>..<U00011461>;<U00011480>..<U000114C1>;/ + <U000114C4>..<U000114C5>;<U000114C7>;<U000114D0>..<U000114D9>;/ + <U00011580>..<U000115B5>;<U000115B8>..<U000115BE>;/ + <U000115D8>..<U000115DD>;<U00011600>..<U0001163E>;<U00011640>;/ + <U00011644>;<U00011650>..<U00011659>;<U00011680>..<U000116B5>;/ + <U000116B8>;<U000116C0>..<U000116C9>;<U000116D0>..<U000116E3>;/ + <U00011700>..<U0001171A>;<U0001171D>..<U0001172A>;/ + <U00011730>..<U00011739>;<U00011740>..<U00011746>;/ + <U00011800>..<U00011838>;<U000118A0>..<U000118E9>;/ + <U000118FF>..<U00011906>;<U00011909>;<U0001190C>..<U00011913>;/ + <U00011915>..<U00011916>;<U00011918>..<U00011935>;/ + <U00011937>..<U00011938>;<U0001193B>..<U0001193C>;/ + <U0001193F>..<U00011942>;<U00011950>..<U00011959>;/ + <U000119A0>..<U000119A7>;<U000119AA>..<U000119D7>;/ + <U000119DA>..<U000119DF>;<U000119E1>;<U000119E3>..<U000119E4>;/ + <U00011A00>..<U00011A32>;<U00011A35>..<U00011A3E>;/ + <U00011A50>..<U00011A97>;<U00011A9D>;<U00011AB0>..<U00011AF8>;/ + <U00011BC0>..<U00011BE0>;<U00011BF0>..<U00011BF9>;/ + <U00011C00>..<U00011C08>;<U00011C0A>..<U00011C36>;/ + <U00011C38>..<U00011C3E>;<U00011C40>;<U00011C50>..<U00011C59>;/ + <U00011C72>..<U00011C8F>;<U00011C92>..<U00011CA7>;/ + <U00011CA9>..<U00011CB6>;<U00011D00>..<U00011D06>;/ + <U00011D08>..<U00011D09>;<U00011D0B>..<U00011D36>;<U00011D3A>;/ + <U00011D3C>..<U00011D3D>;<U00011D3F>..<U00011D41>;<U00011D43>;/ + <U00011D46>..<U00011D47>;<U00011D50>..<U00011D59>;/ + <U00011D60>..<U00011D65>;<U00011D67>..<U00011D68>;/ + <U00011D6A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ + <U00011D93>..<U00011D96>;<U00011D98>;<U00011DA0>..<U00011DA9>;/ + <U00011EE0>..<U00011EF6>;<U00011F00>..<U00011F10>;/ + <U00011F12>..<U00011F3A>;<U00011F3E>..<U00011F40>;/ + <U00011F50>..<U00011F59>;<U00011FB0>;<U00012000>..<U00012399>;/ + <U00012400>..<U0001246E>;<U00012480>..<U00012543>;/ + <U00012F90>..<U00012FF0>;<U00013000>..<U0001342F>;/ + <U00013441>..<U00013446>;<U00013460>..<U000143FA>;/ + <U00014400>..<U00014646>;<U00016100>..<U0001612E>;/ + <U00016130>..<U00016139>;<U00016800>..<U00016A38>;/ <U00016A40>..<U00016A5E>;<U00016A60>..<U00016A69>;/ <U00016A70>..<U00016ABE>;<U00016AC0>..<U00016AC9>;/ <U00016AD0>..<U00016AED>;<U00016B00>..<U00016B2F>;/ <U00016B40>..<U00016B43>;<U00016B50>..<U00016B59>;/ <U00016B63>..<U00016B77>;<U00016B7D>..<U00016B8F>;/ + <U00016D40>..<U00016D6C>;<U00016D70>..<U00016D79>;/ <U00016E40>..<U00016E7F>;<U00016F00>..<U00016F4A>;/ <U00016F4F>..<U00016F87>;<U00016F8F>..<U00016F9F>;/ <U00016FE0>..<U00016FE1>;<U00016FE3>;<U00016FF0>..<U00016FF1>;/ <U00017000>..<U000187F7>;<U00018800>..<U00018CD5>;/ - <U00018D00>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ + <U00018CFF>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ <U0001AFF5>..<U0001AFFB>;<U0001AFFD>..<U0001AFFE>;/ <U0001B000>..<U0001B122>;<U0001B132>;<U0001B150>..<U0001B152>;/ <U0001B155>;<U0001B164>..<U0001B167>;<U0001B170>..<U0001B2FB>;/ <U0001BC00>..<U0001BC6A>;<U0001BC70>..<U0001BC7C>;/ <U0001BC80>..<U0001BC88>;<U0001BC90>..<U0001BC99>;<U0001BC9E>;/ - <U0001D400>..<U0001D454>;<U0001D456>..<U0001D49C>;/ - <U0001D49E>..<U0001D49F>;<U0001D4A2>;<U0001D4A5>..<U0001D4A6>;/ - <U0001D4A9>..<U0001D4AC>;<U0001D4AE>..<U0001D4B9>;<U0001D4BB>;/ - <U0001D4BD>..<U0001D4C3>;<U0001D4C5>..<U0001D505>;/ - <U0001D507>..<U0001D50A>;<U0001D50D>..<U0001D514>;/ - <U0001D516>..<U0001D51C>;<U0001D51E>..<U0001D539>;/ - <U0001D53B>..<U0001D53E>;<U0001D540>..<U0001D544>;<U0001D546>;/ - <U0001D54A>..<U0001D550>;<U0001D552>..<U0001D6A5>;/ - <U0001D6A8>..<U0001D6C0>;<U0001D6C2>..<U0001D6DA>;/ - <U0001D6DC>..<U0001D6FA>;<U0001D6FC>..<U0001D714>;/ - <U0001D716>..<U0001D734>;<U0001D736>..<U0001D74E>;/ - <U0001D750>..<U0001D76E>;<U0001D770>..<U0001D788>;/ - <U0001D78A>..<U0001D7A8>;<U0001D7AA>..<U0001D7C2>;/ - <U0001D7C4>..<U0001D7CB>;<U0001D7CE>..<U0001D7FF>;/ - <U0001DF00>..<U0001DF1E>;<U0001DF25>..<U0001DF2A>;/ - <U0001E000>..<U0001E006>;<U0001E008>..<U0001E018>;/ - <U0001E01B>..<U0001E021>;<U0001E023>..<U0001E024>;/ - <U0001E026>..<U0001E02A>;<U0001E030>..<U0001E06D>;<U0001E08F>;/ - <U0001E100>..<U0001E12C>;<U0001E137>..<U0001E13D>;/ - <U0001E140>..<U0001E149>;<U0001E14E>;<U0001E290>..<U0001E2AD>;/ - <U0001E2C0>..<U0001E2EB>;<U0001E2F0>..<U0001E2F9>;/ - <U0001E4D0>..<U0001E4EB>;<U0001E4F0>..<U0001E4F9>;/ - <U0001E7E0>..<U0001E7E6>;<U0001E7E8>..<U0001E7EB>;/ - <U0001E7ED>..<U0001E7EE>;<U0001E7F0>..<U0001E7FE>;/ - <U0001E800>..<U0001E8C4>;<U0001E900>..<U0001E943>;<U0001E947>;/ - <U0001E94B>;<U0001E950>..<U0001E959>;<U0001EE00>..<U0001EE03>;/ + <U0001CCF0>..<U0001CCF9>;<U0001D400>..<U0001D454>;/ + <U0001D456>..<U0001D49C>;<U0001D49E>..<U0001D49F>;<U0001D4A2>;/ + <U0001D4A5>..<U0001D4A6>;<U0001D4A9>..<U0001D4AC>;/ + <U0001D4AE>..<U0001D4B9>;<U0001D4BB>;<U0001D4BD>..<U0001D4C3>;/ + <U0001D4C5>..<U0001D505>;<U0001D507>..<U0001D50A>;/ + <U0001D50D>..<U0001D514>;<U0001D516>..<U0001D51C>;/ + <U0001D51E>..<U0001D539>;<U0001D53B>..<U0001D53E>;/ + <U0001D540>..<U0001D544>;<U0001D546>;<U0001D54A>..<U0001D550>;/ + <U0001D552>..<U0001D6A5>;<U0001D6A8>..<U0001D6C0>;/ + <U0001D6C2>..<U0001D6DA>;<U0001D6DC>..<U0001D6FA>;/ + <U0001D6FC>..<U0001D714>;<U0001D716>..<U0001D734>;/ + <U0001D736>..<U0001D74E>;<U0001D750>..<U0001D76E>;/ + <U0001D770>..<U0001D788>;<U0001D78A>..<U0001D7A8>;/ + <U0001D7AA>..<U0001D7C2>;<U0001D7C4>..<U0001D7CB>;/ + <U0001D7CE>..<U0001D7FF>;<U0001DF00>..<U0001DF1E>;/ + <U0001DF25>..<U0001DF2A>;<U0001E000>..<U0001E006>;/ + <U0001E008>..<U0001E018>;<U0001E01B>..<U0001E021>;/ + <U0001E023>..<U0001E024>;<U0001E026>..<U0001E02A>;/ + <U0001E030>..<U0001E06D>;<U0001E08F>;<U0001E100>..<U0001E12C>;/ + <U0001E137>..<U0001E13D>;<U0001E140>..<U0001E149>;<U0001E14E>;/ + <U0001E290>..<U0001E2AD>;<U0001E2C0>..<U0001E2EB>;/ + <U0001E2F0>..<U0001E2F9>;<U0001E4D0>..<U0001E4EB>;/ + <U0001E4F0>..<U0001E4F9>;<U0001E5D0>..<U0001E5ED>;/ + <U0001E5F0>..<U0001E5FA>;<U0001E7E0>..<U0001E7E6>;/ + <U0001E7E8>..<U0001E7EB>;<U0001E7ED>..<U0001E7EE>;/ + <U0001E7F0>..<U0001E7FE>;<U0001E800>..<U0001E8C4>;/ + <U0001E900>..<U0001E943>;<U0001E947>;<U0001E94B>;/ + <U0001E950>..<U0001E959>;<U0001EE00>..<U0001EE03>;/ <U0001EE05>..<U0001EE1F>;<U0001EE21>..<U0001EE22>;<U0001EE24>;/ <U0001EE27>;<U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;/ <U0001EE39>;<U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ @@ -618,7 +631,7 @@ punct / <U0021>..<U002F>;<U003A>..<U0040>;<U005B>..<U0060>;<U007B>..<U007E>;/ <U00A0>..<U00A9>;<U00AB>..<U00B4>;<U00B6>..<U00B9>;<U00BB>..<U00BF>;/ <U00D7>;<U00F7>;<U02C2>..<U02C5>;<U02D2>..<U02DF>;<U02E5>..<U02EB>;/ - <U02ED>;<U02EF>..<U0344>;<U0346>..<U036F>;<U0375>;<U037E>;/ + <U02ED>;<U02EF>..<U0344>;<U0346>..<U0362>;<U0375>;<U037E>;/ <U0384>..<U0385>;<U0387>;<U03F6>;<U0482>..<U0489>;<U055A>..<U055F>;/ <U0589>..<U058A>;<U058D>..<U058F>;<U0591>..<U05AF>;<U05BE>;<U05C0>;/ <U05C3>;<U05C6>;<U05F3>..<U05F4>;<U0600>..<U060F>;<U061B>..<U061F>;/ @@ -643,44 +656,45 @@ punct / <U17DD>;<U17F0>..<U17F9>;<U1800>..<U180F>;<U1939>..<U193B>;<U1940>;/ <U1944>..<U1945>;<U19DA>;<U19DE>..<U19FF>;<U1A1E>..<U1A1F>;<U1A60>;/ <U1A75>..<U1A7C>;<U1A7F>;<U1AA0>..<U1AA6>;<U1AA8>..<U1AAD>;/ - <U1AB0>..<U1ABE>;<U1AC1>..<U1ACB>;<U1B34>;<U1B44>;<U1B5A>..<U1B7E>;/ - <U1BAA>..<U1BAB>;<U1BE6>;<U1BF2>..<U1BF3>;<U1BFC>..<U1BFF>;<U1C37>;/ - <U1C3B>..<U1C3F>;<U1C7E>..<U1C7F>;<U1CC0>..<U1CC7>;<U1CD0>..<U1CE8>;/ - <U1CED>;<U1CF4>;<U1CF7>..<U1CF9>;<U1DC0>..<U1DE6>;<U1DF5>..<U1DFF>;/ - <U1FBD>;<U1FBF>..<U1FC1>;<U1FCD>..<U1FCF>;<U1FDD>..<U1FDF>;/ - <U1FED>..<U1FEF>;<U1FFD>..<U1FFE>;<U2007>;<U200B>..<U2027>;/ - <U202A>..<U205E>;<U2060>..<U2064>;<U2066>..<U2070>;<U2074>..<U207E>;/ - <U2080>..<U208E>;<U20A0>..<U20C0>;<U20D0>..<U20F0>;<U2100>..<U2101>;/ - <U2103>..<U2106>;<U2108>..<U2109>;<U2114>;<U2116>..<U2118>;/ - <U211E>..<U2123>;<U2125>;<U2127>;<U2129>;<U212E>;<U213A>..<U213B>;/ - <U2140>..<U2144>;<U214A>..<U214D>;<U214F>..<U215F>;<U2189>..<U218B>;/ - <U2190>..<U2426>;<U2440>..<U244A>;<U2460>..<U24B5>;<U24EA>..<U2B73>;/ - <U2B76>..<U2B95>;<U2B97>..<U2BFF>;<U2CE5>..<U2CEA>;<U2CEF>..<U2CF1>;/ - <U2CF9>..<U2CFF>;<U2D70>;<U2D7F>;<U2E00>..<U2E2E>;<U2E30>..<U2E5D>;/ - <U2E80>..<U2E99>;<U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;<U2FF0>..<U2FFF>;/ - <U3001>..<U3004>;<U3008>..<U3020>;<U302A>..<U3030>;<U3036>..<U3037>;/ - <U303D>..<U303F>;<U3099>..<U309C>;<U30A0>;<U30FB>;<U3190>..<U319F>;/ - <U31C0>..<U31E3>;<U31EF>;<U3200>..<U321E>;<U3220>..<U33FF>;/ - <U4DC0>..<U4DFF>;<UA490>..<UA4C6>;<UA4FE>..<UA4FF>;<UA60D>..<UA60F>;/ - <UA66F>..<UA673>;<UA67C>..<UA67E>;<UA6F0>..<UA6F7>;<UA700>..<UA716>;/ - <UA720>..<UA721>;<UA789>..<UA78A>;<UA806>;<UA828>..<UA82C>;/ - <UA830>..<UA839>;<UA874>..<UA877>;<UA8C4>;<UA8CE>..<UA8CF>;/ - <UA8E0>..<UA8F1>;<UA8F8>..<UA8FA>;<UA8FC>;<UA92B>..<UA92F>;<UA953>;/ - <UA95F>;<UA9B3>;<UA9C0>..<UA9CD>;<UA9DE>..<UA9DF>;<UAA5C>..<UAA5F>;/ - <UAA77>..<UAA79>;<UAABF>;<UAAC1>;<UAADE>..<UAADF>;<UAAF0>..<UAAF1>;/ - <UAAF6>;<UAB5B>;<UAB6A>..<UAB6B>;<UABEB>..<UABED>;<UE000>..<UF8FF>;/ - <UFB29>;<UFBB2>..<UFBC2>;<UFD3E>..<UFD4F>;<UFDCF>;<UFDFC>..<UFE19>;/ - <UFE20>..<UFE52>;<UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFEFF>;/ - <UFF01>..<UFF0F>;<UFF1A>..<UFF20>;<UFF3B>..<UFF40>;<UFF5B>..<UFF65>;/ - <UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;/ - <U00010100>..<U00010102>;<U00010107>..<U00010133>;/ - <U00010137>..<U0001013F>;<U00010175>..<U0001018E>;/ - <U00010190>..<U0001019C>;<U000101A0>;<U000101D0>..<U000101FD>;/ - <U000102E0>..<U000102FB>;<U00010320>..<U00010323>;<U0001039F>;/ - <U000103D0>;<U0001056F>;<U00010857>..<U0001085F>;/ - <U00010877>..<U0001087F>;<U000108A7>..<U000108AF>;/ - <U000108FB>..<U000108FF>;<U00010916>..<U0001091B>;<U0001091F>;/ - <U0001093F>;<U000109BC>..<U000109BD>;<U000109C0>..<U000109CF>;/ + <U1AB0>..<U1ABE>;<U1AC1>..<U1ACB>;<U1B34>;<U1B44>;<U1B4E>..<U1B4F>;/ + <U1B5A>..<U1B7F>;<U1BAA>..<U1BAB>;<U1BE6>;<U1BF2>..<U1BF3>;/ + <U1BFC>..<U1BFF>;<U1C37>;<U1C3B>..<U1C3F>;<U1C7E>..<U1C7F>;/ + <U1CC0>..<U1CC7>;<U1CD0>..<U1CE8>;<U1CED>;<U1CF4>;<U1CF7>..<U1CF9>;/ + <U1DC0>..<U1DD2>;<U1DF5>..<U1DFF>;<U1FBD>;<U1FBF>..<U1FC1>;/ + <U1FCD>..<U1FCF>;<U1FDD>..<U1FDF>;<U1FED>..<U1FEF>;<U1FFD>..<U1FFE>;/ + <U2007>;<U200B>..<U2027>;<U202A>..<U205E>;<U2060>..<U2064>;/ + <U2066>..<U2070>;<U2074>..<U207E>;<U2080>..<U208E>;<U20A0>..<U20C0>;/ + <U20D0>..<U20F0>;<U2100>..<U2101>;<U2103>..<U2106>;<U2108>..<U2109>;/ + <U2114>;<U2116>..<U2118>;<U211E>..<U2123>;<U2125>;<U2127>;<U2129>;/ + <U212E>;<U213A>..<U213B>;<U2140>..<U2144>;<U214A>..<U214D>;/ + <U214F>..<U215F>;<U2189>..<U218B>;<U2190>..<U2429>;<U2440>..<U244A>;/ + <U2460>..<U24B5>;<U24EA>..<U2B73>;<U2B76>..<U2B95>;<U2B97>..<U2BFF>;/ + <U2CE5>..<U2CEA>;<U2CEF>..<U2CF1>;<U2CF9>..<U2CFF>;<U2D70>;<U2D7F>;/ + <U2E00>..<U2E2E>;<U2E30>..<U2E5D>;<U2E80>..<U2E99>;<U2E9B>..<U2EF3>;/ + <U2F00>..<U2FD5>;<U2FF0>..<U2FFF>;<U3001>..<U3004>;<U3008>..<U3020>;/ + <U302A>..<U3030>;<U3036>..<U3037>;<U303D>..<U303F>;<U3099>..<U309C>;/ + <U30A0>;<U30FB>;<U3190>..<U319F>;<U31C0>..<U31E5>;<U31EF>;/ + <U3200>..<U321E>;<U3220>..<U33FF>;<U4DC0>..<U4DFF>;<UA490>..<UA4C6>;/ + <UA4FE>..<UA4FF>;<UA60D>..<UA60F>;<UA66F>..<UA673>;<UA67C>..<UA67E>;/ + <UA6F0>..<UA6F7>;<UA700>..<UA716>;<UA720>..<UA721>;<UA789>..<UA78A>;/ + <UA806>;<UA828>..<UA82C>;<UA830>..<UA839>;<UA874>..<UA877>;<UA8C4>;/ + <UA8CE>..<UA8CF>;<UA8E0>..<UA8F1>;<UA8F8>..<UA8FA>;<UA8FC>;/ + <UA92B>..<UA92F>;<UA953>;<UA95F>;<UA9B3>;<UA9C0>..<UA9CD>;/ + <UA9DE>..<UA9DF>;<UAA5C>..<UAA5F>;<UAA77>..<UAA79>;<UAABF>;<UAAC1>;/ + <UAADE>..<UAADF>;<UAAF0>..<UAAF1>;<UAAF6>;<UAB5B>;<UAB6A>..<UAB6B>;/ + <UABEB>..<UABED>;<UE000>..<UF8FF>;<UFB29>;<UFBB2>..<UFBC2>;/ + <UFD3E>..<UFD4F>;<UFDCF>;<UFDFC>..<UFE19>;<UFE20>..<UFE52>;/ + <UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFEFF>;<UFF01>..<UFF0F>;/ + <UFF1A>..<UFF20>;<UFF3B>..<UFF40>;<UFF5B>..<UFF65>;<UFFE0>..<UFFE6>;/ + <UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;<U00010100>..<U00010102>;/ + <U00010107>..<U00010133>;<U00010137>..<U0001013F>;/ + <U00010175>..<U0001018E>;<U00010190>..<U0001019C>;<U000101A0>;/ + <U000101D0>..<U000101FD>;<U000102E0>..<U000102FB>;/ + <U00010320>..<U00010323>;<U0001039F>;<U000103D0>;<U0001056F>;/ + <U00010857>..<U0001085F>;<U00010877>..<U0001087F>;/ + <U000108A7>..<U000108AF>;<U000108FB>..<U000108FF>;/ + <U00010916>..<U0001091B>;<U0001091F>;<U0001093F>;/ + <U000109BC>..<U000109BD>;<U000109C0>..<U000109CF>;/ <U000109D2>..<U000109FF>;<U00010A38>..<U00010A3A>;/ <U00010A3F>..<U00010A48>;<U00010A50>..<U00010A58>;/ <U00010A7D>..<U00010A7F>;<U00010A9D>..<U00010A9F>;<U00010AC8>;/ @@ -688,6 +702,7 @@ punct / <U00010B39>..<U00010B3F>;<U00010B58>..<U00010B5F>;/ <U00010B78>..<U00010B7F>;<U00010B99>..<U00010B9C>;/ <U00010BA9>..<U00010BAF>;<U00010CFA>..<U00010CFF>;/ + <U00010D6A>..<U00010D6E>;<U00010D8E>..<U00010D8F>;/ <U00010E60>..<U00010E7E>;<U00010EAD>;<U00010EFD>..<U00010EFF>;/ <U00010F1D>..<U00010F26>;<U00010F46>..<U00010F59>;/ <U00010F82>..<U00010F89>;<U00010FC5>..<U00010FCB>;/ @@ -698,7 +713,9 @@ punct / <U000111DB>;<U000111DD>..<U000111DF>;<U000111E1>..<U000111F4>;/ <U00011235>..<U00011236>;<U00011238>..<U0001123D>;<U000112A9>;/ <U000112E9>..<U000112EA>;<U0001133B>..<U0001133C>;<U0001134D>;/ - <U00011366>..<U0001136C>;<U00011370>..<U00011374>;<U00011442>;/ + <U00011366>..<U0001136C>;<U00011370>..<U00011374>;/ + <U000113CE>..<U000113D0>;<U000113D2>;<U000113D4>..<U000113D5>;/ + <U000113D7>..<U000113D8>;<U000113E1>..<U000113E2>;<U00011442>;/ <U00011446>;<U0001144B>..<U0001144F>;<U0001145A>..<U0001145B>;/ <U0001145D>..<U0001145E>;<U000114C2>..<U000114C3>;<U000114C6>;/ <U000115BF>..<U000115D7>;<U0001163F>;<U00011641>..<U00011643>;/ @@ -708,16 +725,19 @@ punct / <U00011943>..<U00011946>;<U000119E0>;<U000119E2>;/ <U00011A33>..<U00011A34>;<U00011A3F>..<U00011A47>;/ <U00011A98>..<U00011A9C>;<U00011A9E>..<U00011AA2>;/ - <U00011B00>..<U00011B09>;<U00011C3F>;<U00011C41>..<U00011C45>;/ - <U00011C5A>..<U00011C6C>;<U00011C70>..<U00011C71>;<U00011D42>;/ - <U00011D44>..<U00011D45>;<U00011D97>;<U00011EF7>..<U00011EF8>;/ - <U00011F41>..<U00011F4F>;<U00011FC0>..<U00011FF1>;<U00011FFF>;/ + <U00011B00>..<U00011B09>;<U00011BE1>;<U00011C3F>;/ + <U00011C41>..<U00011C45>;<U00011C5A>..<U00011C6C>;/ + <U00011C70>..<U00011C71>;<U00011D42>;<U00011D44>..<U00011D45>;/ + <U00011D97>;<U00011EF7>..<U00011EF8>;<U00011F41>..<U00011F4F>;/ + <U00011F5A>;<U00011FC0>..<U00011FF1>;<U00011FFF>;/ <U00012470>..<U00012474>;<U00012FF1>..<U00012FF2>;/ - <U00013430>..<U00013440>;<U00013447>..<U00013455>;/ + <U00013430>..<U00013440>;<U00013447>..<U00013455>;<U0001612F>;/ <U00016A6E>..<U00016A6F>;<U00016AF0>..<U00016AF5>;/ <U00016B30>..<U00016B3F>;<U00016B44>..<U00016B45>;/ - <U00016B5B>..<U00016B61>;<U00016E80>..<U00016E9A>;<U00016FE2>;/ - <U00016FE4>;<U0001BC9C>..<U0001BC9D>;<U0001BC9F>..<U0001BCA3>;/ + <U00016B5B>..<U00016B61>;<U00016D6D>..<U00016D6F>;/ + <U00016E80>..<U00016E9A>;<U00016FE2>;<U00016FE4>;/ + <U0001BC9C>..<U0001BC9D>;<U0001BC9F>..<U0001BCA3>;/ + <U0001CC00>..<U0001CCEF>;<U0001CD00>..<U0001CEB3>;/ <U0001CF00>..<U0001CF2D>;<U0001CF30>..<U0001CF46>;/ <U0001CF50>..<U0001CFC3>;<U0001D000>..<U0001D0F5>;/ <U0001D100>..<U0001D126>;<U0001D129>..<U0001D1EA>;/ @@ -728,31 +748,32 @@ punct / <U0001D800>..<U0001DA8B>;<U0001DA9B>..<U0001DA9F>;/ <U0001DAA1>..<U0001DAAF>;<U0001E130>..<U0001E136>;<U0001E14F>;/ <U0001E2AE>;<U0001E2EC>..<U0001E2EF>;<U0001E2FF>;/ - <U0001E4EC>..<U0001E4EF>;<U0001E8C7>..<U0001E8D6>;/ - <U0001E944>..<U0001E946>;<U0001E948>..<U0001E94A>;/ - <U0001E95E>..<U0001E95F>;<U0001EC71>..<U0001ECB4>;/ - <U0001ED01>..<U0001ED3D>;<U0001EEF0>..<U0001EEF1>;/ - <U0001F000>..<U0001F02B>;<U0001F030>..<U0001F093>;/ - <U0001F0A0>..<U0001F0AE>;<U0001F0B1>..<U0001F0BF>;/ - <U0001F0C1>..<U0001F0CF>;<U0001F0D1>..<U0001F0F5>;/ - <U0001F100>..<U0001F12F>;<U0001F14A>..<U0001F14F>;/ - <U0001F16A>..<U0001F16F>;<U0001F18A>..<U0001F1AD>;/ - <U0001F1E6>..<U0001F202>;<U0001F210>..<U0001F23B>;/ - <U0001F240>..<U0001F248>;<U0001F250>..<U0001F251>;/ - <U0001F260>..<U0001F265>;<U0001F300>..<U0001F6D7>;/ - <U0001F6DC>..<U0001F6EC>;<U0001F6F0>..<U0001F6FC>;/ - <U0001F700>..<U0001F776>;<U0001F77B>..<U0001F7D9>;/ - <U0001F7E0>..<U0001F7EB>;<U0001F7F0>;<U0001F800>..<U0001F80B>;/ - <U0001F810>..<U0001F847>;<U0001F850>..<U0001F859>;/ - <U0001F860>..<U0001F887>;<U0001F890>..<U0001F8AD>;/ - <U0001F8B0>..<U0001F8B1>;<U0001F900>..<U0001FA53>;/ + <U0001E4EC>..<U0001E4EF>;<U0001E5EE>..<U0001E5EF>;<U0001E5FF>;/ + <U0001E8C7>..<U0001E8D6>;<U0001E944>..<U0001E946>;/ + <U0001E948>..<U0001E94A>;<U0001E95E>..<U0001E95F>;/ + <U0001EC71>..<U0001ECB4>;<U0001ED01>..<U0001ED3D>;/ + <U0001EEF0>..<U0001EEF1>;<U0001F000>..<U0001F02B>;/ + <U0001F030>..<U0001F093>;<U0001F0A0>..<U0001F0AE>;/ + <U0001F0B1>..<U0001F0BF>;<U0001F0C1>..<U0001F0CF>;/ + <U0001F0D1>..<U0001F0F5>;<U0001F100>..<U0001F12F>;/ + <U0001F14A>..<U0001F14F>;<U0001F16A>..<U0001F16F>;/ + <U0001F18A>..<U0001F1AD>;<U0001F1E6>..<U0001F202>;/ + <U0001F210>..<U0001F23B>;<U0001F240>..<U0001F248>;/ + <U0001F250>..<U0001F251>;<U0001F260>..<U0001F265>;/ + <U0001F300>..<U0001F6D7>;<U0001F6DC>..<U0001F6EC>;/ + <U0001F6F0>..<U0001F6FC>;<U0001F700>..<U0001F776>;/ + <U0001F77B>..<U0001F7D9>;<U0001F7E0>..<U0001F7EB>;<U0001F7F0>;/ + <U0001F800>..<U0001F80B>;<U0001F810>..<U0001F847>;/ + <U0001F850>..<U0001F859>;<U0001F860>..<U0001F887>;/ + <U0001F890>..<U0001F8AD>;<U0001F8B0>..<U0001F8BB>;/ + <U0001F8C0>..<U0001F8C1>;<U0001F900>..<U0001FA53>;/ <U0001FA60>..<U0001FA6D>;<U0001FA70>..<U0001FA7C>;/ - <U0001FA80>..<U0001FA88>;<U0001FA90>..<U0001FABD>;/ - <U0001FABF>..<U0001FAC5>;<U0001FACE>..<U0001FADB>;/ - <U0001FAE0>..<U0001FAE8>;<U0001FAF0>..<U0001FAF8>;/ - <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBCA>;<U000E0001>;/ - <U000E0020>..<U000E007F>;<U000E0100>..<U000E01EF>;/ - <U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD> + <U0001FA80>..<U0001FA89>;<U0001FA8F>..<U0001FAC6>;/ + <U0001FACE>..<U0001FADC>;<U0001FADF>..<U0001FAE9>;/ + <U0001FAF0>..<U0001FAF8>;<U0001FB00>..<U0001FB92>;/ + <U0001FB94>..<U0001FBEF>;<U000E0001>;<U000E0020>..<U000E007F>;/ + <U000E0100>..<U000E01EF>;<U000F0000>..<U000FFFFD>;/ + <U00100000>..<U0010FFFD> graph / <U0021>..<U007E>;<U00A0>..<U0377>;<U037A>..<U037F>;<U0384>..<U038A>;/ @@ -761,7 +782,7 @@ graph / <U05EF>..<U05F4>;<U0600>..<U070D>;<U070F>..<U074A>;<U074D>..<U07B1>;/ <U07C0>..<U07FA>;<U07FD>..<U082D>;<U0830>..<U083E>;<U0840>..<U085B>;/ <U085E>;<U0860>..<U086A>;<U0870>..<U088E>;<U0890>..<U0891>;/ - <U0898>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;<U0993>..<U09A8>;/ + <U0897>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;<U0993>..<U09A8>;/ <U09AA>..<U09B0>;<U09B2>;<U09B6>..<U09B9>;<U09BC>..<U09C4>;/ <U09C7>..<U09C8>;<U09CB>..<U09CE>;<U09D7>;<U09DC>..<U09DD>;/ <U09DF>..<U09E3>;<U09E6>..<U09FE>;<U0A01>..<U0A03>;<U0A05>..<U0A0A>;/ @@ -808,38 +829,38 @@ graph / <U1970>..<U1974>;<U1980>..<U19AB>;<U19B0>..<U19C9>;<U19D0>..<U19DA>;/ <U19DE>..<U1A1B>;<U1A1E>..<U1A5E>;<U1A60>..<U1A7C>;<U1A7F>..<U1A89>;/ <U1A90>..<U1A99>;<U1AA0>..<U1AAD>;<U1AB0>..<U1ACE>;<U1B00>..<U1B4C>;/ - <U1B50>..<U1B7E>;<U1B80>..<U1BF3>;<U1BFC>..<U1C37>;<U1C3B>..<U1C49>;/ - <U1C4D>..<U1C88>;<U1C90>..<U1CBA>;<U1CBD>..<U1CC7>;<U1CD0>..<U1CFA>;/ - <U1D00>..<U1F15>;<U1F18>..<U1F1D>;<U1F20>..<U1F45>;<U1F48>..<U1F4D>;/ - <U1F50>..<U1F57>;<U1F59>;<U1F5B>;<U1F5D>;<U1F5F>..<U1F7D>;/ - <U1F80>..<U1FB4>;<U1FB6>..<U1FC4>;<U1FC6>..<U1FD3>;<U1FD6>..<U1FDB>;/ - <U1FDD>..<U1FEF>;<U1FF2>..<U1FF4>;<U1FF6>..<U1FFE>;<U2007>;/ - <U200B>..<U2027>;<U202A>..<U205E>;<U2060>..<U2064>;<U2066>..<U2071>;/ - <U2074>..<U208E>;<U2090>..<U209C>;<U20A0>..<U20C0>;<U20D0>..<U20F0>;/ - <U2100>..<U218B>;<U2190>..<U2426>;<U2440>..<U244A>;<U2460>..<U2B73>;/ - <U2B76>..<U2B95>;<U2B97>..<U2CF3>;<U2CF9>..<U2D25>;<U2D27>;<U2D2D>;/ - <U2D30>..<U2D67>;<U2D6F>..<U2D70>;<U2D7F>..<U2D96>;<U2DA0>..<U2DA6>;/ - <U2DA8>..<U2DAE>;<U2DB0>..<U2DB6>;<U2DB8>..<U2DBE>;<U2DC0>..<U2DC6>;/ - <U2DC8>..<U2DCE>;<U2DD0>..<U2DD6>;<U2DD8>..<U2DDE>;<U2DE0>..<U2E5D>;/ - <U2E80>..<U2E99>;<U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;<U2FF0>..<U2FFF>;/ - <U3001>..<U303F>;<U3041>..<U3096>;<U3099>..<U30FF>;<U3105>..<U312F>;/ - <U3131>..<U318E>;<U3190>..<U31E3>;<U31EF>..<U321E>;<U3220>..<UA48C>;/ - <UA490>..<UA4C6>;<UA4D0>..<UA62B>;<UA640>..<UA6F7>;<UA700>..<UA7CA>;/ - <UA7D0>..<UA7D1>;<UA7D3>;<UA7D5>..<UA7D9>;<UA7F2>..<UA82C>;/ - <UA830>..<UA839>;<UA840>..<UA877>;<UA880>..<UA8C5>;<UA8CE>..<UA8D9>;/ - <UA8E0>..<UA953>;<UA95F>..<UA97C>;<UA980>..<UA9CD>;<UA9CF>..<UA9D9>;/ - <UA9DE>..<UA9FE>;<UAA00>..<UAA36>;<UAA40>..<UAA4D>;<UAA50>..<UAA59>;/ - <UAA5C>..<UAAC2>;<UAADB>..<UAAF6>;<UAB01>..<UAB06>;<UAB09>..<UAB0E>;/ - <UAB11>..<UAB16>;<UAB20>..<UAB26>;<UAB28>..<UAB2E>;<UAB30>..<UAB6B>;/ - <UAB70>..<UABED>;<UABF0>..<UABF9>;<UAC00>..<UD7A3>;<UD7B0>..<UD7C6>;/ - <UD7CB>..<UD7FB>;<UE000>..<UFA6D>;<UFA70>..<UFAD9>;<UFB00>..<UFB06>;/ - <UFB13>..<UFB17>;<UFB1D>..<UFB36>;<UFB38>..<UFB3C>;<UFB3E>;/ - <UFB40>..<UFB41>;<UFB43>..<UFB44>;<UFB46>..<UFBC2>;<UFBD3>..<UFD8F>;/ - <UFD92>..<UFDC7>;<UFDCF>;<UFDF0>..<UFE19>;<UFE20>..<UFE52>;/ - <UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFE70>..<UFE74>;<UFE76>..<UFEFC>;/ - <UFEFF>;<UFF01>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;/ - <UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;/ - <UFFF9>..<UFFFD>;<U00010000>..<U0001000B>;<U0001000D>..<U00010026>;/ + <U1B4E>..<U1BF3>;<U1BFC>..<U1C37>;<U1C3B>..<U1C49>;<U1C4D>..<U1C8A>;/ + <U1C90>..<U1CBA>;<U1CBD>..<U1CC7>;<U1CD0>..<U1CFA>;<U1D00>..<U1F15>;/ + <U1F18>..<U1F1D>;<U1F20>..<U1F45>;<U1F48>..<U1F4D>;<U1F50>..<U1F57>;/ + <U1F59>;<U1F5B>;<U1F5D>;<U1F5F>..<U1F7D>;<U1F80>..<U1FB4>;/ + <U1FB6>..<U1FC4>;<U1FC6>..<U1FD3>;<U1FD6>..<U1FDB>;<U1FDD>..<U1FEF>;/ + <U1FF2>..<U1FF4>;<U1FF6>..<U1FFE>;<U2007>;<U200B>..<U2027>;/ + <U202A>..<U205E>;<U2060>..<U2064>;<U2066>..<U2071>;<U2074>..<U208E>;/ + <U2090>..<U209C>;<U20A0>..<U20C0>;<U20D0>..<U20F0>;<U2100>..<U218B>;/ + <U2190>..<U2429>;<U2440>..<U244A>;<U2460>..<U2B73>;<U2B76>..<U2B95>;/ + <U2B97>..<U2CF3>;<U2CF9>..<U2D25>;<U2D27>;<U2D2D>;<U2D30>..<U2D67>;/ + <U2D6F>..<U2D70>;<U2D7F>..<U2D96>;<U2DA0>..<U2DA6>;<U2DA8>..<U2DAE>;/ + <U2DB0>..<U2DB6>;<U2DB8>..<U2DBE>;<U2DC0>..<U2DC6>;<U2DC8>..<U2DCE>;/ + <U2DD0>..<U2DD6>;<U2DD8>..<U2DDE>;<U2DE0>..<U2E5D>;<U2E80>..<U2E99>;/ + <U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;<U2FF0>..<U2FFF>;<U3001>..<U303F>;/ + <U3041>..<U3096>;<U3099>..<U30FF>;<U3105>..<U312F>;<U3131>..<U318E>;/ + <U3190>..<U31E5>;<U31EF>..<U321E>;<U3220>..<UA48C>;<UA490>..<UA4C6>;/ + <UA4D0>..<UA62B>;<UA640>..<UA6F7>;<UA700>..<UA7CD>;<UA7D0>..<UA7D1>;/ + <UA7D3>;<UA7D5>..<UA7DC>;<UA7F2>..<UA82C>;<UA830>..<UA839>;/ + <UA840>..<UA877>;<UA880>..<UA8C5>;<UA8CE>..<UA8D9>;<UA8E0>..<UA953>;/ + <UA95F>..<UA97C>;<UA980>..<UA9CD>;<UA9CF>..<UA9D9>;<UA9DE>..<UA9FE>;/ + <UAA00>..<UAA36>;<UAA40>..<UAA4D>;<UAA50>..<UAA59>;<UAA5C>..<UAAC2>;/ + <UAADB>..<UAAF6>;<UAB01>..<UAB06>;<UAB09>..<UAB0E>;<UAB11>..<UAB16>;/ + <UAB20>..<UAB26>;<UAB28>..<UAB2E>;<UAB30>..<UAB6B>;<UAB70>..<UABED>;/ + <UABF0>..<UABF9>;<UAC00>..<UD7A3>;<UD7B0>..<UD7C6>;<UD7CB>..<UD7FB>;/ + <UE000>..<UFA6D>;<UFA70>..<UFAD9>;<UFB00>..<UFB06>;<UFB13>..<UFB17>;/ + <UFB1D>..<UFB36>;<UFB38>..<UFB3C>;<UFB3E>;<UFB40>..<UFB41>;/ + <UFB43>..<UFB44>;<UFB46>..<UFBC2>;<UFBD3>..<UFD8F>;<UFD92>..<UFDC7>;/ + <UFDCF>;<UFDF0>..<UFE19>;<UFE20>..<UFE52>;<UFE54>..<UFE66>;/ + <UFE68>..<UFE6B>;<UFE70>..<UFE74>;<UFE76>..<UFEFC>;<UFEFF>;/ + <UFF01>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;<UFFD2>..<UFFD7>;/ + <UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;/ + <U00010000>..<U0001000B>;<U0001000D>..<U00010026>;/ <U00010028>..<U0001003A>;<U0001003C>..<U0001003D>;/ <U0001003F>..<U0001004D>;<U00010050>..<U0001005D>;/ <U00010080>..<U000100FA>;<U00010100>..<U00010102>;/ @@ -856,94 +877,105 @@ graph / <U0001057C>..<U0001058A>;<U0001058C>..<U00010592>;/ <U00010594>..<U00010595>;<U00010597>..<U000105A1>;/ <U000105A3>..<U000105B1>;<U000105B3>..<U000105B9>;/ - <U000105BB>..<U000105BC>;<U00010600>..<U00010736>;/ - <U00010740>..<U00010755>;<U00010760>..<U00010767>;/ - <U00010780>..<U00010785>;<U00010787>..<U000107B0>;/ - <U000107B2>..<U000107BA>;<U00010800>..<U00010805>;<U00010808>;/ - <U0001080A>..<U00010835>;<U00010837>..<U00010838>;<U0001083C>;/ - <U0001083F>..<U00010855>;<U00010857>..<U0001089E>;/ - <U000108A7>..<U000108AF>;<U000108E0>..<U000108F2>;/ - <U000108F4>..<U000108F5>;<U000108FB>..<U0001091B>;/ - <U0001091F>..<U00010939>;<U0001093F>;<U00010980>..<U000109B7>;/ - <U000109BC>..<U000109CF>;<U000109D2>..<U00010A03>;/ - <U00010A05>..<U00010A06>;<U00010A0C>..<U00010A13>;/ - <U00010A15>..<U00010A17>;<U00010A19>..<U00010A35>;/ - <U00010A38>..<U00010A3A>;<U00010A3F>..<U00010A48>;/ - <U00010A50>..<U00010A58>;<U00010A60>..<U00010A9F>;/ - <U00010AC0>..<U00010AE6>;<U00010AEB>..<U00010AF6>;/ - <U00010B00>..<U00010B35>;<U00010B39>..<U00010B55>;/ - <U00010B58>..<U00010B72>;<U00010B78>..<U00010B91>;/ - <U00010B99>..<U00010B9C>;<U00010BA9>..<U00010BAF>;/ - <U00010C00>..<U00010C48>;<U00010C80>..<U00010CB2>;/ - <U00010CC0>..<U00010CF2>;<U00010CFA>..<U00010D27>;/ - <U00010D30>..<U00010D39>;<U00010E60>..<U00010E7E>;/ + <U000105BB>..<U000105BC>;<U000105C0>..<U000105F3>;/ + <U00010600>..<U00010736>;<U00010740>..<U00010755>;/ + <U00010760>..<U00010767>;<U00010780>..<U00010785>;/ + <U00010787>..<U000107B0>;<U000107B2>..<U000107BA>;/ + <U00010800>..<U00010805>;<U00010808>;<U0001080A>..<U00010835>;/ + <U00010837>..<U00010838>;<U0001083C>;<U0001083F>..<U00010855>;/ + <U00010857>..<U0001089E>;<U000108A7>..<U000108AF>;/ + <U000108E0>..<U000108F2>;<U000108F4>..<U000108F5>;/ + <U000108FB>..<U0001091B>;<U0001091F>..<U00010939>;<U0001093F>;/ + <U00010980>..<U000109B7>;<U000109BC>..<U000109CF>;/ + <U000109D2>..<U00010A03>;<U00010A05>..<U00010A06>;/ + <U00010A0C>..<U00010A13>;<U00010A15>..<U00010A17>;/ + <U00010A19>..<U00010A35>;<U00010A38>..<U00010A3A>;/ + <U00010A3F>..<U00010A48>;<U00010A50>..<U00010A58>;/ + <U00010A60>..<U00010A9F>;<U00010AC0>..<U00010AE6>;/ + <U00010AEB>..<U00010AF6>;<U00010B00>..<U00010B35>;/ + <U00010B39>..<U00010B55>;<U00010B58>..<U00010B72>;/ + <U00010B78>..<U00010B91>;<U00010B99>..<U00010B9C>;/ + <U00010BA9>..<U00010BAF>;<U00010C00>..<U00010C48>;/ + <U00010C80>..<U00010CB2>;<U00010CC0>..<U00010CF2>;/ + <U00010CFA>..<U00010D27>;<U00010D30>..<U00010D39>;/ + <U00010D40>..<U00010D65>;<U00010D69>..<U00010D85>;/ + <U00010D8E>..<U00010D8F>;<U00010E60>..<U00010E7E>;/ <U00010E80>..<U00010EA9>;<U00010EAB>..<U00010EAD>;/ - <U00010EB0>..<U00010EB1>;<U00010EFD>..<U00010F27>;/ - <U00010F30>..<U00010F59>;<U00010F70>..<U00010F89>;/ - <U00010FB0>..<U00010FCB>;<U00010FE0>..<U00010FF6>;/ - <U00011000>..<U0001104D>;<U00011052>..<U00011075>;/ - <U0001107F>..<U000110C2>;<U000110CD>;<U000110D0>..<U000110E8>;/ - <U000110F0>..<U000110F9>;<U00011100>..<U00011134>;/ - <U00011136>..<U00011147>;<U00011150>..<U00011176>;/ - <U00011180>..<U000111DF>;<U000111E1>..<U000111F4>;/ - <U00011200>..<U00011211>;<U00011213>..<U00011241>;/ - <U00011280>..<U00011286>;<U00011288>;<U0001128A>..<U0001128D>;/ - <U0001128F>..<U0001129D>;<U0001129F>..<U000112A9>;/ - <U000112B0>..<U000112EA>;<U000112F0>..<U000112F9>;/ - <U00011300>..<U00011303>;<U00011305>..<U0001130C>;/ - <U0001130F>..<U00011310>;<U00011313>..<U00011328>;/ - <U0001132A>..<U00011330>;<U00011332>..<U00011333>;/ - <U00011335>..<U00011339>;<U0001133B>..<U00011344>;/ - <U00011347>..<U00011348>;<U0001134B>..<U0001134D>;<U00011350>;/ - <U00011357>;<U0001135D>..<U00011363>;<U00011366>..<U0001136C>;/ - <U00011370>..<U00011374>;<U00011400>..<U0001145B>;/ + <U00010EB0>..<U00010EB1>;<U00010EC2>..<U00010EC4>;/ + <U00010EFC>..<U00010F27>;<U00010F30>..<U00010F59>;/ + <U00010F70>..<U00010F89>;<U00010FB0>..<U00010FCB>;/ + <U00010FE0>..<U00010FF6>;<U00011000>..<U0001104D>;/ + <U00011052>..<U00011075>;<U0001107F>..<U000110C2>;<U000110CD>;/ + <U000110D0>..<U000110E8>;<U000110F0>..<U000110F9>;/ + <U00011100>..<U00011134>;<U00011136>..<U00011147>;/ + <U00011150>..<U00011176>;<U00011180>..<U000111DF>;/ + <U000111E1>..<U000111F4>;<U00011200>..<U00011211>;/ + <U00011213>..<U00011241>;<U00011280>..<U00011286>;<U00011288>;/ + <U0001128A>..<U0001128D>;<U0001128F>..<U0001129D>;/ + <U0001129F>..<U000112A9>;<U000112B0>..<U000112EA>;/ + <U000112F0>..<U000112F9>;<U00011300>..<U00011303>;/ + <U00011305>..<U0001130C>;<U0001130F>..<U00011310>;/ + <U00011313>..<U00011328>;<U0001132A>..<U00011330>;/ + <U00011332>..<U00011333>;<U00011335>..<U00011339>;/ + <U0001133B>..<U00011344>;<U00011347>..<U00011348>;/ + <U0001134B>..<U0001134D>;<U00011350>;<U00011357>;/ + <U0001135D>..<U00011363>;<U00011366>..<U0001136C>;/ + <U00011370>..<U00011374>;<U00011380>..<U00011389>;<U0001138B>;/ + <U0001138E>;<U00011390>..<U000113B5>;<U000113B7>..<U000113C0>;/ + <U000113C2>;<U000113C5>;<U000113C7>..<U000113CA>;/ + <U000113CC>..<U000113D5>;<U000113D7>..<U000113D8>;/ + <U000113E1>..<U000113E2>;<U00011400>..<U0001145B>;/ <U0001145D>..<U00011461>;<U00011480>..<U000114C7>;/ <U000114D0>..<U000114D9>;<U00011580>..<U000115B5>;/ <U000115B8>..<U000115DD>;<U00011600>..<U00011644>;/ <U00011650>..<U00011659>;<U00011660>..<U0001166C>;/ <U00011680>..<U000116B9>;<U000116C0>..<U000116C9>;/ - <U00011700>..<U0001171A>;<U0001171D>..<U0001172B>;/ - <U00011730>..<U00011746>;<U00011800>..<U0001183B>;/ - <U000118A0>..<U000118F2>;<U000118FF>..<U00011906>;<U00011909>;/ - <U0001190C>..<U00011913>;<U00011915>..<U00011916>;/ - <U00011918>..<U00011935>;<U00011937>..<U00011938>;/ - <U0001193B>..<U00011946>;<U00011950>..<U00011959>;/ - <U000119A0>..<U000119A7>;<U000119AA>..<U000119D7>;/ - <U000119DA>..<U000119E4>;<U00011A00>..<U00011A47>;/ - <U00011A50>..<U00011AA2>;<U00011AB0>..<U00011AF8>;/ - <U00011B00>..<U00011B09>;<U00011C00>..<U00011C08>;/ - <U00011C0A>..<U00011C36>;<U00011C38>..<U00011C45>;/ - <U00011C50>..<U00011C6C>;<U00011C70>..<U00011C8F>;/ - <U00011C92>..<U00011CA7>;<U00011CA9>..<U00011CB6>;/ - <U00011D00>..<U00011D06>;<U00011D08>..<U00011D09>;/ - <U00011D0B>..<U00011D36>;<U00011D3A>;<U00011D3C>..<U00011D3D>;/ - <U00011D3F>..<U00011D47>;<U00011D50>..<U00011D59>;/ - <U00011D60>..<U00011D65>;<U00011D67>..<U00011D68>;/ - <U00011D6A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ - <U00011D93>..<U00011D98>;<U00011DA0>..<U00011DA9>;/ - <U00011EE0>..<U00011EF8>;<U00011F00>..<U00011F10>;/ - <U00011F12>..<U00011F3A>;<U00011F3E>..<U00011F59>;<U00011FB0>;/ - <U00011FC0>..<U00011FF1>;<U00011FFF>..<U00012399>;/ - <U00012400>..<U0001246E>;<U00012470>..<U00012474>;/ - <U00012480>..<U00012543>;<U00012F90>..<U00012FF2>;/ - <U00013000>..<U00013455>;<U00014400>..<U00014646>;/ - <U00016800>..<U00016A38>;<U00016A40>..<U00016A5E>;/ - <U00016A60>..<U00016A69>;<U00016A6E>..<U00016ABE>;/ - <U00016AC0>..<U00016AC9>;<U00016AD0>..<U00016AED>;/ - <U00016AF0>..<U00016AF5>;<U00016B00>..<U00016B45>;/ - <U00016B50>..<U00016B59>;<U00016B5B>..<U00016B61>;/ - <U00016B63>..<U00016B77>;<U00016B7D>..<U00016B8F>;/ + <U000116D0>..<U000116E3>;<U00011700>..<U0001171A>;/ + <U0001171D>..<U0001172B>;<U00011730>..<U00011746>;/ + <U00011800>..<U0001183B>;<U000118A0>..<U000118F2>;/ + <U000118FF>..<U00011906>;<U00011909>;<U0001190C>..<U00011913>;/ + <U00011915>..<U00011916>;<U00011918>..<U00011935>;/ + <U00011937>..<U00011938>;<U0001193B>..<U00011946>;/ + <U00011950>..<U00011959>;<U000119A0>..<U000119A7>;/ + <U000119AA>..<U000119D7>;<U000119DA>..<U000119E4>;/ + <U00011A00>..<U00011A47>;<U00011A50>..<U00011AA2>;/ + <U00011AB0>..<U00011AF8>;<U00011B00>..<U00011B09>;/ + <U00011BC0>..<U00011BE1>;<U00011BF0>..<U00011BF9>;/ + <U00011C00>..<U00011C08>;<U00011C0A>..<U00011C36>;/ + <U00011C38>..<U00011C45>;<U00011C50>..<U00011C6C>;/ + <U00011C70>..<U00011C8F>;<U00011C92>..<U00011CA7>;/ + <U00011CA9>..<U00011CB6>;<U00011D00>..<U00011D06>;/ + <U00011D08>..<U00011D09>;<U00011D0B>..<U00011D36>;<U00011D3A>;/ + <U00011D3C>..<U00011D3D>;<U00011D3F>..<U00011D47>;/ + <U00011D50>..<U00011D59>;<U00011D60>..<U00011D65>;/ + <U00011D67>..<U00011D68>;<U00011D6A>..<U00011D8E>;/ + <U00011D90>..<U00011D91>;<U00011D93>..<U00011D98>;/ + <U00011DA0>..<U00011DA9>;<U00011EE0>..<U00011EF8>;/ + <U00011F00>..<U00011F10>;<U00011F12>..<U00011F3A>;/ + <U00011F3E>..<U00011F5A>;<U00011FB0>;<U00011FC0>..<U00011FF1>;/ + <U00011FFF>..<U00012399>;<U00012400>..<U0001246E>;/ + <U00012470>..<U00012474>;<U00012480>..<U00012543>;/ + <U00012F90>..<U00012FF2>;<U00013000>..<U00013455>;/ + <U00013460>..<U000143FA>;<U00014400>..<U00014646>;/ + <U00016100>..<U00016139>;<U00016800>..<U00016A38>;/ + <U00016A40>..<U00016A5E>;<U00016A60>..<U00016A69>;/ + <U00016A6E>..<U00016ABE>;<U00016AC0>..<U00016AC9>;/ + <U00016AD0>..<U00016AED>;<U00016AF0>..<U00016AF5>;/ + <U00016B00>..<U00016B45>;<U00016B50>..<U00016B59>;/ + <U00016B5B>..<U00016B61>;<U00016B63>..<U00016B77>;/ + <U00016B7D>..<U00016B8F>;<U00016D40>..<U00016D79>;/ <U00016E40>..<U00016E9A>;<U00016F00>..<U00016F4A>;/ <U00016F4F>..<U00016F87>;<U00016F8F>..<U00016F9F>;/ <U00016FE0>..<U00016FE4>;<U00016FF0>..<U00016FF1>;/ <U00017000>..<U000187F7>;<U00018800>..<U00018CD5>;/ - <U00018D00>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ + <U00018CFF>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ <U0001AFF5>..<U0001AFFB>;<U0001AFFD>..<U0001AFFE>;/ <U0001B000>..<U0001B122>;<U0001B132>;<U0001B150>..<U0001B152>;/ <U0001B155>;<U0001B164>..<U0001B167>;<U0001B170>..<U0001B2FB>;/ <U0001BC00>..<U0001BC6A>;<U0001BC70>..<U0001BC7C>;/ <U0001BC80>..<U0001BC88>;<U0001BC90>..<U0001BC99>;/ - <U0001BC9C>..<U0001BCA3>;<U0001CF00>..<U0001CF2D>;/ + <U0001BC9C>..<U0001BCA3>;<U0001CC00>..<U0001CCF9>;/ + <U0001CD00>..<U0001CEB3>;<U0001CF00>..<U0001CF2D>;/ <U0001CF30>..<U0001CF46>;<U0001CF50>..<U0001CFC3>;/ <U0001D000>..<U0001D0F5>;<U0001D100>..<U0001D126>;/ <U0001D129>..<U0001D1EA>;<U0001D200>..<U0001D245>;/ @@ -966,16 +998,16 @@ graph / <U0001E100>..<U0001E12C>;<U0001E130>..<U0001E13D>;/ <U0001E140>..<U0001E149>;<U0001E14E>..<U0001E14F>;/ <U0001E290>..<U0001E2AE>;<U0001E2C0>..<U0001E2F9>;<U0001E2FF>;/ - <U0001E4D0>..<U0001E4F9>;<U0001E7E0>..<U0001E7E6>;/ - <U0001E7E8>..<U0001E7EB>;<U0001E7ED>..<U0001E7EE>;/ - <U0001E7F0>..<U0001E7FE>;<U0001E800>..<U0001E8C4>;/ - <U0001E8C7>..<U0001E8D6>;<U0001E900>..<U0001E94B>;/ - <U0001E950>..<U0001E959>;<U0001E95E>..<U0001E95F>;/ - <U0001EC71>..<U0001ECB4>;<U0001ED01>..<U0001ED3D>;/ - <U0001EE00>..<U0001EE03>;<U0001EE05>..<U0001EE1F>;/ - <U0001EE21>..<U0001EE22>;<U0001EE24>;<U0001EE27>;/ - <U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;<U0001EE39>;/ - <U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ + <U0001E4D0>..<U0001E4F9>;<U0001E5D0>..<U0001E5FA>;<U0001E5FF>;/ + <U0001E7E0>..<U0001E7E6>;<U0001E7E8>..<U0001E7EB>;/ + <U0001E7ED>..<U0001E7EE>;<U0001E7F0>..<U0001E7FE>;/ + <U0001E800>..<U0001E8C4>;<U0001E8C7>..<U0001E8D6>;/ + <U0001E900>..<U0001E94B>;<U0001E950>..<U0001E959>;/ + <U0001E95E>..<U0001E95F>;<U0001EC71>..<U0001ECB4>;/ + <U0001ED01>..<U0001ED3D>;<U0001EE00>..<U0001EE03>;/ + <U0001EE05>..<U0001EE1F>;<U0001EE21>..<U0001EE22>;<U0001EE24>;/ + <U0001EE27>;<U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;/ + <U0001EE39>;<U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ <U0001EE4D>..<U0001EE4F>;<U0001EE51>..<U0001EE52>;<U0001EE54>;/ <U0001EE57>;<U0001EE59>;<U0001EE5B>;<U0001EE5D>;<U0001EE5F>;/ <U0001EE61>..<U0001EE62>;<U0001EE64>;<U0001EE67>..<U0001EE6A>;/ @@ -995,19 +1027,19 @@ graph / <U0001F7E0>..<U0001F7EB>;<U0001F7F0>;<U0001F800>..<U0001F80B>;/ <U0001F810>..<U0001F847>;<U0001F850>..<U0001F859>;/ <U0001F860>..<U0001F887>;<U0001F890>..<U0001F8AD>;/ - <U0001F8B0>..<U0001F8B1>;<U0001F900>..<U0001FA53>;/ - <U0001FA60>..<U0001FA6D>;<U0001FA70>..<U0001FA7C>;/ - <U0001FA80>..<U0001FA88>;<U0001FA90>..<U0001FABD>;/ - <U0001FABF>..<U0001FAC5>;<U0001FACE>..<U0001FADB>;/ - <U0001FAE0>..<U0001FAE8>;<U0001FAF0>..<U0001FAF8>;/ - <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBCA>;/ - <U0001FBF0>..<U0001FBF9>;<U00020000>..<U0002A6DF>;/ - <U0002A700>..<U0002B739>;<U0002B740>..<U0002B81D>;/ - <U0002B820>..<U0002CEA1>;<U0002CEB0>..<U0002EBE0>;/ - <U0002EBF0>..<U0002EE5D>;<U0002F800>..<U0002FA1D>;/ - <U00030000>..<U0003134A>;<U00031350>..<U000323AF>;<U000E0001>;/ - <U000E0020>..<U000E007F>;<U000E0100>..<U000E01EF>;/ - <U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD> + <U0001F8B0>..<U0001F8BB>;<U0001F8C0>..<U0001F8C1>;/ + <U0001F900>..<U0001FA53>;<U0001FA60>..<U0001FA6D>;/ + <U0001FA70>..<U0001FA7C>;<U0001FA80>..<U0001FA89>;/ + <U0001FA8F>..<U0001FAC6>;<U0001FACE>..<U0001FADC>;/ + <U0001FADF>..<U0001FAE9>;<U0001FAF0>..<U0001FAF8>;/ + <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBF9>;/ + <U00020000>..<U0002A6DF>;<U0002A700>..<U0002B739>;/ + <U0002B740>..<U0002B81D>;<U0002B820>..<U0002CEA1>;/ + <U0002CEB0>..<U0002EBE0>;<U0002EBF0>..<U0002EE5D>;/ + <U0002F800>..<U0002FA1D>;<U00030000>..<U0003134A>;/ + <U00031350>..<U000323AF>;<U000E0001>;<U000E0020>..<U000E007F>;/ + <U000E0100>..<U000E01EF>;<U000F0000>..<U000FFFFD>;/ + <U00100000>..<U0010FFFD> print / <U0020>..<U007E>;<U00A0>..<U0377>;<U037A>..<U037F>;<U0384>..<U038A>;/ @@ -1016,7 +1048,7 @@ print / <U05EF>..<U05F4>;<U0600>..<U070D>;<U070F>..<U074A>;<U074D>..<U07B1>;/ <U07C0>..<U07FA>;<U07FD>..<U082D>;<U0830>..<U083E>;<U0840>..<U085B>;/ <U085E>;<U0860>..<U086A>;<U0870>..<U088E>;<U0890>..<U0891>;/ - <U0898>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;<U0993>..<U09A8>;/ + <U0897>..<U0983>;<U0985>..<U098C>;<U098F>..<U0990>;<U0993>..<U09A8>;/ <U09AA>..<U09B0>;<U09B2>;<U09B6>..<U09B9>;<U09BC>..<U09C4>;/ <U09C7>..<U09C8>;<U09CB>..<U09CE>;<U09D7>;<U09DC>..<U09DD>;/ <U09DF>..<U09E3>;<U09E6>..<U09FE>;<U0A01>..<U0A03>;<U0A05>..<U0A0A>;/ @@ -1062,38 +1094,38 @@ print / <U1930>..<U193B>;<U1940>;<U1944>..<U196D>;<U1970>..<U1974>;/ <U1980>..<U19AB>;<U19B0>..<U19C9>;<U19D0>..<U19DA>;<U19DE>..<U1A1B>;/ <U1A1E>..<U1A5E>;<U1A60>..<U1A7C>;<U1A7F>..<U1A89>;<U1A90>..<U1A99>;/ - <U1AA0>..<U1AAD>;<U1AB0>..<U1ACE>;<U1B00>..<U1B4C>;<U1B50>..<U1B7E>;/ - <U1B80>..<U1BF3>;<U1BFC>..<U1C37>;<U1C3B>..<U1C49>;<U1C4D>..<U1C88>;/ - <U1C90>..<U1CBA>;<U1CBD>..<U1CC7>;<U1CD0>..<U1CFA>;<U1D00>..<U1F15>;/ - <U1F18>..<U1F1D>;<U1F20>..<U1F45>;<U1F48>..<U1F4D>;<U1F50>..<U1F57>;/ - <U1F59>;<U1F5B>;<U1F5D>;<U1F5F>..<U1F7D>;<U1F80>..<U1FB4>;/ - <U1FB6>..<U1FC4>;<U1FC6>..<U1FD3>;<U1FD6>..<U1FDB>;<U1FDD>..<U1FEF>;/ - <U1FF2>..<U1FF4>;<U1FF6>..<U1FFE>;<U2000>..<U2027>;<U202A>..<U2064>;/ - <U2066>..<U2071>;<U2074>..<U208E>;<U2090>..<U209C>;<U20A0>..<U20C0>;/ - <U20D0>..<U20F0>;<U2100>..<U218B>;<U2190>..<U2426>;<U2440>..<U244A>;/ - <U2460>..<U2B73>;<U2B76>..<U2B95>;<U2B97>..<U2CF3>;<U2CF9>..<U2D25>;/ - <U2D27>;<U2D2D>;<U2D30>..<U2D67>;<U2D6F>..<U2D70>;<U2D7F>..<U2D96>;/ - <U2DA0>..<U2DA6>;<U2DA8>..<U2DAE>;<U2DB0>..<U2DB6>;<U2DB8>..<U2DBE>;/ - <U2DC0>..<U2DC6>;<U2DC8>..<U2DCE>;<U2DD0>..<U2DD6>;<U2DD8>..<U2DDE>;/ - <U2DE0>..<U2E5D>;<U2E80>..<U2E99>;<U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;/ - <U2FF0>..<U303F>;<U3041>..<U3096>;<U3099>..<U30FF>;<U3105>..<U312F>;/ - <U3131>..<U318E>;<U3190>..<U31E3>;<U31EF>..<U321E>;<U3220>..<UA48C>;/ - <UA490>..<UA4C6>;<UA4D0>..<UA62B>;<UA640>..<UA6F7>;<UA700>..<UA7CA>;/ - <UA7D0>..<UA7D1>;<UA7D3>;<UA7D5>..<UA7D9>;<UA7F2>..<UA82C>;/ - <UA830>..<UA839>;<UA840>..<UA877>;<UA880>..<UA8C5>;<UA8CE>..<UA8D9>;/ - <UA8E0>..<UA953>;<UA95F>..<UA97C>;<UA980>..<UA9CD>;<UA9CF>..<UA9D9>;/ - <UA9DE>..<UA9FE>;<UAA00>..<UAA36>;<UAA40>..<UAA4D>;<UAA50>..<UAA59>;/ - <UAA5C>..<UAAC2>;<UAADB>..<UAAF6>;<UAB01>..<UAB06>;<UAB09>..<UAB0E>;/ - <UAB11>..<UAB16>;<UAB20>..<UAB26>;<UAB28>..<UAB2E>;<UAB30>..<UAB6B>;/ - <UAB70>..<UABED>;<UABF0>..<UABF9>;<UAC00>..<UD7A3>;<UD7B0>..<UD7C6>;/ - <UD7CB>..<UD7FB>;<UE000>..<UFA6D>;<UFA70>..<UFAD9>;<UFB00>..<UFB06>;/ - <UFB13>..<UFB17>;<UFB1D>..<UFB36>;<UFB38>..<UFB3C>;<UFB3E>;/ - <UFB40>..<UFB41>;<UFB43>..<UFB44>;<UFB46>..<UFBC2>;<UFBD3>..<UFD8F>;/ - <UFD92>..<UFDC7>;<UFDCF>;<UFDF0>..<UFE19>;<UFE20>..<UFE52>;/ - <UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFE70>..<UFE74>;<UFE76>..<UFEFC>;/ - <UFEFF>;<UFF01>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;/ - <UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;/ - <UFFF9>..<UFFFD>;<U00010000>..<U0001000B>;<U0001000D>..<U00010026>;/ + <U1AA0>..<U1AAD>;<U1AB0>..<U1ACE>;<U1B00>..<U1B4C>;<U1B4E>..<U1BF3>;/ + <U1BFC>..<U1C37>;<U1C3B>..<U1C49>;<U1C4D>..<U1C8A>;<U1C90>..<U1CBA>;/ + <U1CBD>..<U1CC7>;<U1CD0>..<U1CFA>;<U1D00>..<U1F15>;<U1F18>..<U1F1D>;/ + <U1F20>..<U1F45>;<U1F48>..<U1F4D>;<U1F50>..<U1F57>;<U1F59>;<U1F5B>;/ + <U1F5D>;<U1F5F>..<U1F7D>;<U1F80>..<U1FB4>;<U1FB6>..<U1FC4>;/ + <U1FC6>..<U1FD3>;<U1FD6>..<U1FDB>;<U1FDD>..<U1FEF>;<U1FF2>..<U1FF4>;/ + <U1FF6>..<U1FFE>;<U2000>..<U2027>;<U202A>..<U2064>;<U2066>..<U2071>;/ + <U2074>..<U208E>;<U2090>..<U209C>;<U20A0>..<U20C0>;<U20D0>..<U20F0>;/ + <U2100>..<U218B>;<U2190>..<U2429>;<U2440>..<U244A>;<U2460>..<U2B73>;/ + <U2B76>..<U2B95>;<U2B97>..<U2CF3>;<U2CF9>..<U2D25>;<U2D27>;<U2D2D>;/ + <U2D30>..<U2D67>;<U2D6F>..<U2D70>;<U2D7F>..<U2D96>;<U2DA0>..<U2DA6>;/ + <U2DA8>..<U2DAE>;<U2DB0>..<U2DB6>;<U2DB8>..<U2DBE>;<U2DC0>..<U2DC6>;/ + <U2DC8>..<U2DCE>;<U2DD0>..<U2DD6>;<U2DD8>..<U2DDE>;<U2DE0>..<U2E5D>;/ + <U2E80>..<U2E99>;<U2E9B>..<U2EF3>;<U2F00>..<U2FD5>;<U2FF0>..<U303F>;/ + <U3041>..<U3096>;<U3099>..<U30FF>;<U3105>..<U312F>;<U3131>..<U318E>;/ + <U3190>..<U31E5>;<U31EF>..<U321E>;<U3220>..<UA48C>;<UA490>..<UA4C6>;/ + <UA4D0>..<UA62B>;<UA640>..<UA6F7>;<UA700>..<UA7CD>;<UA7D0>..<UA7D1>;/ + <UA7D3>;<UA7D5>..<UA7DC>;<UA7F2>..<UA82C>;<UA830>..<UA839>;/ + <UA840>..<UA877>;<UA880>..<UA8C5>;<UA8CE>..<UA8D9>;<UA8E0>..<UA953>;/ + <UA95F>..<UA97C>;<UA980>..<UA9CD>;<UA9CF>..<UA9D9>;<UA9DE>..<UA9FE>;/ + <UAA00>..<UAA36>;<UAA40>..<UAA4D>;<UAA50>..<UAA59>;<UAA5C>..<UAAC2>;/ + <UAADB>..<UAAF6>;<UAB01>..<UAB06>;<UAB09>..<UAB0E>;<UAB11>..<UAB16>;/ + <UAB20>..<UAB26>;<UAB28>..<UAB2E>;<UAB30>..<UAB6B>;<UAB70>..<UABED>;/ + <UABF0>..<UABF9>;<UAC00>..<UD7A3>;<UD7B0>..<UD7C6>;<UD7CB>..<UD7FB>;/ + <UE000>..<UFA6D>;<UFA70>..<UFAD9>;<UFB00>..<UFB06>;<UFB13>..<UFB17>;/ + <UFB1D>..<UFB36>;<UFB38>..<UFB3C>;<UFB3E>;<UFB40>..<UFB41>;/ + <UFB43>..<UFB44>;<UFB46>..<UFBC2>;<UFBD3>..<UFD8F>;<UFD92>..<UFDC7>;/ + <UFDCF>;<UFDF0>..<UFE19>;<UFE20>..<UFE52>;<UFE54>..<UFE66>;/ + <UFE68>..<UFE6B>;<UFE70>..<UFE74>;<UFE76>..<UFEFC>;<UFEFF>;/ + <UFF01>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;<UFFD2>..<UFFD7>;/ + <UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;/ + <U00010000>..<U0001000B>;<U0001000D>..<U00010026>;/ <U00010028>..<U0001003A>;<U0001003C>..<U0001003D>;/ <U0001003F>..<U0001004D>;<U00010050>..<U0001005D>;/ <U00010080>..<U000100FA>;<U00010100>..<U00010102>;/ @@ -1110,94 +1142,105 @@ print / <U0001057C>..<U0001058A>;<U0001058C>..<U00010592>;/ <U00010594>..<U00010595>;<U00010597>..<U000105A1>;/ <U000105A3>..<U000105B1>;<U000105B3>..<U000105B9>;/ - <U000105BB>..<U000105BC>;<U00010600>..<U00010736>;/ - <U00010740>..<U00010755>;<U00010760>..<U00010767>;/ - <U00010780>..<U00010785>;<U00010787>..<U000107B0>;/ - <U000107B2>..<U000107BA>;<U00010800>..<U00010805>;<U00010808>;/ - <U0001080A>..<U00010835>;<U00010837>..<U00010838>;<U0001083C>;/ - <U0001083F>..<U00010855>;<U00010857>..<U0001089E>;/ - <U000108A7>..<U000108AF>;<U000108E0>..<U000108F2>;/ - <U000108F4>..<U000108F5>;<U000108FB>..<U0001091B>;/ - <U0001091F>..<U00010939>;<U0001093F>;<U00010980>..<U000109B7>;/ - <U000109BC>..<U000109CF>;<U000109D2>..<U00010A03>;/ - <U00010A05>..<U00010A06>;<U00010A0C>..<U00010A13>;/ - <U00010A15>..<U00010A17>;<U00010A19>..<U00010A35>;/ - <U00010A38>..<U00010A3A>;<U00010A3F>..<U00010A48>;/ - <U00010A50>..<U00010A58>;<U00010A60>..<U00010A9F>;/ - <U00010AC0>..<U00010AE6>;<U00010AEB>..<U00010AF6>;/ - <U00010B00>..<U00010B35>;<U00010B39>..<U00010B55>;/ - <U00010B58>..<U00010B72>;<U00010B78>..<U00010B91>;/ - <U00010B99>..<U00010B9C>;<U00010BA9>..<U00010BAF>;/ - <U00010C00>..<U00010C48>;<U00010C80>..<U00010CB2>;/ - <U00010CC0>..<U00010CF2>;<U00010CFA>..<U00010D27>;/ - <U00010D30>..<U00010D39>;<U00010E60>..<U00010E7E>;/ + <U000105BB>..<U000105BC>;<U000105C0>..<U000105F3>;/ + <U00010600>..<U00010736>;<U00010740>..<U00010755>;/ + <U00010760>..<U00010767>;<U00010780>..<U00010785>;/ + <U00010787>..<U000107B0>;<U000107B2>..<U000107BA>;/ + <U00010800>..<U00010805>;<U00010808>;<U0001080A>..<U00010835>;/ + <U00010837>..<U00010838>;<U0001083C>;<U0001083F>..<U00010855>;/ + <U00010857>..<U0001089E>;<U000108A7>..<U000108AF>;/ + <U000108E0>..<U000108F2>;<U000108F4>..<U000108F5>;/ + <U000108FB>..<U0001091B>;<U0001091F>..<U00010939>;<U0001093F>;/ + <U00010980>..<U000109B7>;<U000109BC>..<U000109CF>;/ + <U000109D2>..<U00010A03>;<U00010A05>..<U00010A06>;/ + <U00010A0C>..<U00010A13>;<U00010A15>..<U00010A17>;/ + <U00010A19>..<U00010A35>;<U00010A38>..<U00010A3A>;/ + <U00010A3F>..<U00010A48>;<U00010A50>..<U00010A58>;/ + <U00010A60>..<U00010A9F>;<U00010AC0>..<U00010AE6>;/ + <U00010AEB>..<U00010AF6>;<U00010B00>..<U00010B35>;/ + <U00010B39>..<U00010B55>;<U00010B58>..<U00010B72>;/ + <U00010B78>..<U00010B91>;<U00010B99>..<U00010B9C>;/ + <U00010BA9>..<U00010BAF>;<U00010C00>..<U00010C48>;/ + <U00010C80>..<U00010CB2>;<U00010CC0>..<U00010CF2>;/ + <U00010CFA>..<U00010D27>;<U00010D30>..<U00010D39>;/ + <U00010D40>..<U00010D65>;<U00010D69>..<U00010D85>;/ + <U00010D8E>..<U00010D8F>;<U00010E60>..<U00010E7E>;/ <U00010E80>..<U00010EA9>;<U00010EAB>..<U00010EAD>;/ - <U00010EB0>..<U00010EB1>;<U00010EFD>..<U00010F27>;/ - <U00010F30>..<U00010F59>;<U00010F70>..<U00010F89>;/ - <U00010FB0>..<U00010FCB>;<U00010FE0>..<U00010FF6>;/ - <U00011000>..<U0001104D>;<U00011052>..<U00011075>;/ - <U0001107F>..<U000110C2>;<U000110CD>;<U000110D0>..<U000110E8>;/ - <U000110F0>..<U000110F9>;<U00011100>..<U00011134>;/ - <U00011136>..<U00011147>;<U00011150>..<U00011176>;/ - <U00011180>..<U000111DF>;<U000111E1>..<U000111F4>;/ - <U00011200>..<U00011211>;<U00011213>..<U00011241>;/ - <U00011280>..<U00011286>;<U00011288>;<U0001128A>..<U0001128D>;/ - <U0001128F>..<U0001129D>;<U0001129F>..<U000112A9>;/ - <U000112B0>..<U000112EA>;<U000112F0>..<U000112F9>;/ - <U00011300>..<U00011303>;<U00011305>..<U0001130C>;/ - <U0001130F>..<U00011310>;<U00011313>..<U00011328>;/ - <U0001132A>..<U00011330>;<U00011332>..<U00011333>;/ - <U00011335>..<U00011339>;<U0001133B>..<U00011344>;/ - <U00011347>..<U00011348>;<U0001134B>..<U0001134D>;<U00011350>;/ - <U00011357>;<U0001135D>..<U00011363>;<U00011366>..<U0001136C>;/ - <U00011370>..<U00011374>;<U00011400>..<U0001145B>;/ + <U00010EB0>..<U00010EB1>;<U00010EC2>..<U00010EC4>;/ + <U00010EFC>..<U00010F27>;<U00010F30>..<U00010F59>;/ + <U00010F70>..<U00010F89>;<U00010FB0>..<U00010FCB>;/ + <U00010FE0>..<U00010FF6>;<U00011000>..<U0001104D>;/ + <U00011052>..<U00011075>;<U0001107F>..<U000110C2>;<U000110CD>;/ + <U000110D0>..<U000110E8>;<U000110F0>..<U000110F9>;/ + <U00011100>..<U00011134>;<U00011136>..<U00011147>;/ + <U00011150>..<U00011176>;<U00011180>..<U000111DF>;/ + <U000111E1>..<U000111F4>;<U00011200>..<U00011211>;/ + <U00011213>..<U00011241>;<U00011280>..<U00011286>;<U00011288>;/ + <U0001128A>..<U0001128D>;<U0001128F>..<U0001129D>;/ + <U0001129F>..<U000112A9>;<U000112B0>..<U000112EA>;/ + <U000112F0>..<U000112F9>;<U00011300>..<U00011303>;/ + <U00011305>..<U0001130C>;<U0001130F>..<U00011310>;/ + <U00011313>..<U00011328>;<U0001132A>..<U00011330>;/ + <U00011332>..<U00011333>;<U00011335>..<U00011339>;/ + <U0001133B>..<U00011344>;<U00011347>..<U00011348>;/ + <U0001134B>..<U0001134D>;<U00011350>;<U00011357>;/ + <U0001135D>..<U00011363>;<U00011366>..<U0001136C>;/ + <U00011370>..<U00011374>;<U00011380>..<U00011389>;<U0001138B>;/ + <U0001138E>;<U00011390>..<U000113B5>;<U000113B7>..<U000113C0>;/ + <U000113C2>;<U000113C5>;<U000113C7>..<U000113CA>;/ + <U000113CC>..<U000113D5>;<U000113D7>..<U000113D8>;/ + <U000113E1>..<U000113E2>;<U00011400>..<U0001145B>;/ <U0001145D>..<U00011461>;<U00011480>..<U000114C7>;/ <U000114D0>..<U000114D9>;<U00011580>..<U000115B5>;/ <U000115B8>..<U000115DD>;<U00011600>..<U00011644>;/ <U00011650>..<U00011659>;<U00011660>..<U0001166C>;/ <U00011680>..<U000116B9>;<U000116C0>..<U000116C9>;/ - <U00011700>..<U0001171A>;<U0001171D>..<U0001172B>;/ - <U00011730>..<U00011746>;<U00011800>..<U0001183B>;/ - <U000118A0>..<U000118F2>;<U000118FF>..<U00011906>;<U00011909>;/ - <U0001190C>..<U00011913>;<U00011915>..<U00011916>;/ - <U00011918>..<U00011935>;<U00011937>..<U00011938>;/ - <U0001193B>..<U00011946>;<U00011950>..<U00011959>;/ - <U000119A0>..<U000119A7>;<U000119AA>..<U000119D7>;/ - <U000119DA>..<U000119E4>;<U00011A00>..<U00011A47>;/ - <U00011A50>..<U00011AA2>;<U00011AB0>..<U00011AF8>;/ - <U00011B00>..<U00011B09>;<U00011C00>..<U00011C08>;/ - <U00011C0A>..<U00011C36>;<U00011C38>..<U00011C45>;/ - <U00011C50>..<U00011C6C>;<U00011C70>..<U00011C8F>;/ - <U00011C92>..<U00011CA7>;<U00011CA9>..<U00011CB6>;/ - <U00011D00>..<U00011D06>;<U00011D08>..<U00011D09>;/ - <U00011D0B>..<U00011D36>;<U00011D3A>;<U00011D3C>..<U00011D3D>;/ - <U00011D3F>..<U00011D47>;<U00011D50>..<U00011D59>;/ - <U00011D60>..<U00011D65>;<U00011D67>..<U00011D68>;/ - <U00011D6A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ - <U00011D93>..<U00011D98>;<U00011DA0>..<U00011DA9>;/ - <U00011EE0>..<U00011EF8>;<U00011F00>..<U00011F10>;/ - <U00011F12>..<U00011F3A>;<U00011F3E>..<U00011F59>;<U00011FB0>;/ - <U00011FC0>..<U00011FF1>;<U00011FFF>..<U00012399>;/ - <U00012400>..<U0001246E>;<U00012470>..<U00012474>;/ - <U00012480>..<U00012543>;<U00012F90>..<U00012FF2>;/ - <U00013000>..<U00013455>;<U00014400>..<U00014646>;/ - <U00016800>..<U00016A38>;<U00016A40>..<U00016A5E>;/ - <U00016A60>..<U00016A69>;<U00016A6E>..<U00016ABE>;/ - <U00016AC0>..<U00016AC9>;<U00016AD0>..<U00016AED>;/ - <U00016AF0>..<U00016AF5>;<U00016B00>..<U00016B45>;/ - <U00016B50>..<U00016B59>;<U00016B5B>..<U00016B61>;/ - <U00016B63>..<U00016B77>;<U00016B7D>..<U00016B8F>;/ + <U000116D0>..<U000116E3>;<U00011700>..<U0001171A>;/ + <U0001171D>..<U0001172B>;<U00011730>..<U00011746>;/ + <U00011800>..<U0001183B>;<U000118A0>..<U000118F2>;/ + <U000118FF>..<U00011906>;<U00011909>;<U0001190C>..<U00011913>;/ + <U00011915>..<U00011916>;<U00011918>..<U00011935>;/ + <U00011937>..<U00011938>;<U0001193B>..<U00011946>;/ + <U00011950>..<U00011959>;<U000119A0>..<U000119A7>;/ + <U000119AA>..<U000119D7>;<U000119DA>..<U000119E4>;/ + <U00011A00>..<U00011A47>;<U00011A50>..<U00011AA2>;/ + <U00011AB0>..<U00011AF8>;<U00011B00>..<U00011B09>;/ + <U00011BC0>..<U00011BE1>;<U00011BF0>..<U00011BF9>;/ + <U00011C00>..<U00011C08>;<U00011C0A>..<U00011C36>;/ + <U00011C38>..<U00011C45>;<U00011C50>..<U00011C6C>;/ + <U00011C70>..<U00011C8F>;<U00011C92>..<U00011CA7>;/ + <U00011CA9>..<U00011CB6>;<U00011D00>..<U00011D06>;/ + <U00011D08>..<U00011D09>;<U00011D0B>..<U00011D36>;<U00011D3A>;/ + <U00011D3C>..<U00011D3D>;<U00011D3F>..<U00011D47>;/ + <U00011D50>..<U00011D59>;<U00011D60>..<U00011D65>;/ + <U00011D67>..<U00011D68>;<U00011D6A>..<U00011D8E>;/ + <U00011D90>..<U00011D91>;<U00011D93>..<U00011D98>;/ + <U00011DA0>..<U00011DA9>;<U00011EE0>..<U00011EF8>;/ + <U00011F00>..<U00011F10>;<U00011F12>..<U00011F3A>;/ + <U00011F3E>..<U00011F5A>;<U00011FB0>;<U00011FC0>..<U00011FF1>;/ + <U00011FFF>..<U00012399>;<U00012400>..<U0001246E>;/ + <U00012470>..<U00012474>;<U00012480>..<U00012543>;/ + <U00012F90>..<U00012FF2>;<U00013000>..<U00013455>;/ + <U00013460>..<U000143FA>;<U00014400>..<U00014646>;/ + <U00016100>..<U00016139>;<U00016800>..<U00016A38>;/ + <U00016A40>..<U00016A5E>;<U00016A60>..<U00016A69>;/ + <U00016A6E>..<U00016ABE>;<U00016AC0>..<U00016AC9>;/ + <U00016AD0>..<U00016AED>;<U00016AF0>..<U00016AF5>;/ + <U00016B00>..<U00016B45>;<U00016B50>..<U00016B59>;/ + <U00016B5B>..<U00016B61>;<U00016B63>..<U00016B77>;/ + <U00016B7D>..<U00016B8F>;<U00016D40>..<U00016D79>;/ <U00016E40>..<U00016E9A>;<U00016F00>..<U00016F4A>;/ <U00016F4F>..<U00016F87>;<U00016F8F>..<U00016F9F>;/ <U00016FE0>..<U00016FE4>;<U00016FF0>..<U00016FF1>;/ <U00017000>..<U000187F7>;<U00018800>..<U00018CD5>;/ - <U00018D00>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ + <U00018CFF>..<U00018D08>;<U0001AFF0>..<U0001AFF3>;/ <U0001AFF5>..<U0001AFFB>;<U0001AFFD>..<U0001AFFE>;/ <U0001B000>..<U0001B122>;<U0001B132>;<U0001B150>..<U0001B152>;/ <U0001B155>;<U0001B164>..<U0001B167>;<U0001B170>..<U0001B2FB>;/ <U0001BC00>..<U0001BC6A>;<U0001BC70>..<U0001BC7C>;/ <U0001BC80>..<U0001BC88>;<U0001BC90>..<U0001BC99>;/ - <U0001BC9C>..<U0001BCA3>;<U0001CF00>..<U0001CF2D>;/ + <U0001BC9C>..<U0001BCA3>;<U0001CC00>..<U0001CCF9>;/ + <U0001CD00>..<U0001CEB3>;<U0001CF00>..<U0001CF2D>;/ <U0001CF30>..<U0001CF46>;<U0001CF50>..<U0001CFC3>;/ <U0001D000>..<U0001D0F5>;<U0001D100>..<U0001D126>;/ <U0001D129>..<U0001D1EA>;<U0001D200>..<U0001D245>;/ @@ -1220,16 +1263,16 @@ print / <U0001E100>..<U0001E12C>;<U0001E130>..<U0001E13D>;/ <U0001E140>..<U0001E149>;<U0001E14E>..<U0001E14F>;/ <U0001E290>..<U0001E2AE>;<U0001E2C0>..<U0001E2F9>;<U0001E2FF>;/ - <U0001E4D0>..<U0001E4F9>;<U0001E7E0>..<U0001E7E6>;/ - <U0001E7E8>..<U0001E7EB>;<U0001E7ED>..<U0001E7EE>;/ - <U0001E7F0>..<U0001E7FE>;<U0001E800>..<U0001E8C4>;/ - <U0001E8C7>..<U0001E8D6>;<U0001E900>..<U0001E94B>;/ - <U0001E950>..<U0001E959>;<U0001E95E>..<U0001E95F>;/ - <U0001EC71>..<U0001ECB4>;<U0001ED01>..<U0001ED3D>;/ - <U0001EE00>..<U0001EE03>;<U0001EE05>..<U0001EE1F>;/ - <U0001EE21>..<U0001EE22>;<U0001EE24>;<U0001EE27>;/ - <U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;<U0001EE39>;/ - <U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ + <U0001E4D0>..<U0001E4F9>;<U0001E5D0>..<U0001E5FA>;<U0001E5FF>;/ + <U0001E7E0>..<U0001E7E6>;<U0001E7E8>..<U0001E7EB>;/ + <U0001E7ED>..<U0001E7EE>;<U0001E7F0>..<U0001E7FE>;/ + <U0001E800>..<U0001E8C4>;<U0001E8C7>..<U0001E8D6>;/ + <U0001E900>..<U0001E94B>;<U0001E950>..<U0001E959>;/ + <U0001E95E>..<U0001E95F>;<U0001EC71>..<U0001ECB4>;/ + <U0001ED01>..<U0001ED3D>;<U0001EE00>..<U0001EE03>;/ + <U0001EE05>..<U0001EE1F>;<U0001EE21>..<U0001EE22>;<U0001EE24>;/ + <U0001EE27>;<U0001EE29>..<U0001EE32>;<U0001EE34>..<U0001EE37>;/ + <U0001EE39>;<U0001EE3B>;<U0001EE42>;<U0001EE47>;<U0001EE49>;<U0001EE4B>;/ <U0001EE4D>..<U0001EE4F>;<U0001EE51>..<U0001EE52>;<U0001EE54>;/ <U0001EE57>;<U0001EE59>;<U0001EE5B>;<U0001EE5D>;<U0001EE5F>;/ <U0001EE61>..<U0001EE62>;<U0001EE64>;<U0001EE67>..<U0001EE6A>;/ @@ -1249,19 +1292,19 @@ print / <U0001F7E0>..<U0001F7EB>;<U0001F7F0>;<U0001F800>..<U0001F80B>;/ <U0001F810>..<U0001F847>;<U0001F850>..<U0001F859>;/ <U0001F860>..<U0001F887>;<U0001F890>..<U0001F8AD>;/ - <U0001F8B0>..<U0001F8B1>;<U0001F900>..<U0001FA53>;/ - <U0001FA60>..<U0001FA6D>;<U0001FA70>..<U0001FA7C>;/ - <U0001FA80>..<U0001FA88>;<U0001FA90>..<U0001FABD>;/ - <U0001FABF>..<U0001FAC5>;<U0001FACE>..<U0001FADB>;/ - <U0001FAE0>..<U0001FAE8>;<U0001FAF0>..<U0001FAF8>;/ - <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBCA>;/ - <U0001FBF0>..<U0001FBF9>;<U00020000>..<U0002A6DF>;/ - <U0002A700>..<U0002B739>;<U0002B740>..<U0002B81D>;/ - <U0002B820>..<U0002CEA1>;<U0002CEB0>..<U0002EBE0>;/ - <U0002EBF0>..<U0002EE5D>;<U0002F800>..<U0002FA1D>;/ - <U00030000>..<U0003134A>;<U00031350>..<U000323AF>;<U000E0001>;/ - <U000E0020>..<U000E007F>;<U000E0100>..<U000E01EF>;/ - <U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD> + <U0001F8B0>..<U0001F8BB>;<U0001F8C0>..<U0001F8C1>;/ + <U0001F900>..<U0001FA53>;<U0001FA60>..<U0001FA6D>;/ + <U0001FA70>..<U0001FA7C>;<U0001FA80>..<U0001FA89>;/ + <U0001FA8F>..<U0001FAC6>;<U0001FACE>..<U0001FADC>;/ + <U0001FADF>..<U0001FAE9>;<U0001FAF0>..<U0001FAF8>;/ + <U0001FB00>..<U0001FB92>;<U0001FB94>..<U0001FBF9>;/ + <U00020000>..<U0002A6DF>;<U0002A700>..<U0002B739>;/ + <U0002B740>..<U0002B81D>;<U0002B820>..<U0002CEA1>;/ + <U0002CEB0>..<U0002EBE0>;<U0002EBF0>..<U0002EE5D>;/ + <U0002F800>..<U0002FA1D>;<U00030000>..<U0003134A>;/ + <U00031350>..<U000323AF>;<U000E0001>;<U000E0020>..<U000E007F>;/ + <U000E0100>..<U000E01EF>;<U000F0000>..<U000FFFFD>;/ + <U00100000>..<U0010FFFD> % The "xdigit" class must only contain the BASIC LATIN digits and A-F, a-f, % says ISO C 99 (sections 7.25.2.1.12 and 6.4.4.1). @@ -1306,402 +1349,414 @@ toupper / (<U0177>,<U0176>);(<U017A>,<U0179>);(<U017C>,<U017B>);(<U017E>,<U017D>);/ (<U017F>,<U0053>);(<U0180>,<U0243>);(<U0183>,<U0182>);(<U0185>,<U0184>);/ (<U0188>,<U0187>);(<U018C>,<U018B>);(<U0192>,<U0191>);(<U0195>,<U01F6>);/ - (<U0199>,<U0198>);(<U019A>,<U023D>);(<U019E>,<U0220>);(<U01A1>,<U01A0>);/ - (<U01A3>,<U01A2>);(<U01A5>,<U01A4>);(<U01A8>,<U01A7>);(<U01AD>,<U01AC>);/ - (<U01B0>,<U01AF>);(<U01B4>,<U01B3>);(<U01B6>,<U01B5>);(<U01B9>,<U01B8>);/ - (<U01BD>,<U01BC>);(<U01BF>,<U01F7>);(<U01C5>,<U01C4>);(<U01C6>,<U01C4>);/ - (<U01C8>,<U01C7>);(<U01C9>,<U01C7>);(<U01CB>,<U01CA>);(<U01CC>,<U01CA>);/ - (<U01CE>,<U01CD>);(<U01D0>,<U01CF>);(<U01D2>,<U01D1>);(<U01D4>,<U01D3>);/ - (<U01D6>,<U01D5>);(<U01D8>,<U01D7>);(<U01DA>,<U01D9>);(<U01DC>,<U01DB>);/ - (<U01DD>,<U018E>);(<U01DF>,<U01DE>);(<U01E1>,<U01E0>);(<U01E3>,<U01E2>);/ - (<U01E5>,<U01E4>);(<U01E7>,<U01E6>);(<U01E9>,<U01E8>);(<U01EB>,<U01EA>);/ - (<U01ED>,<U01EC>);(<U01EF>,<U01EE>);(<U01F2>,<U01F1>);(<U01F3>,<U01F1>);/ - (<U01F5>,<U01F4>);(<U01F9>,<U01F8>);(<U01FB>,<U01FA>);(<U01FD>,<U01FC>);/ - (<U01FF>,<U01FE>);(<U0201>,<U0200>);(<U0203>,<U0202>);(<U0205>,<U0204>);/ - (<U0207>,<U0206>);(<U0209>,<U0208>);(<U020B>,<U020A>);(<U020D>,<U020C>);/ - (<U020F>,<U020E>);(<U0211>,<U0210>);(<U0213>,<U0212>);(<U0215>,<U0214>);/ - (<U0217>,<U0216>);(<U0219>,<U0218>);(<U021B>,<U021A>);(<U021D>,<U021C>);/ - (<U021F>,<U021E>);(<U0223>,<U0222>);(<U0225>,<U0224>);(<U0227>,<U0226>);/ - (<U0229>,<U0228>);(<U022B>,<U022A>);(<U022D>,<U022C>);(<U022F>,<U022E>);/ - (<U0231>,<U0230>);(<U0233>,<U0232>);(<U023C>,<U023B>);(<U023F>,<U2C7E>);/ - (<U0240>,<U2C7F>);(<U0242>,<U0241>);(<U0247>,<U0246>);(<U0249>,<U0248>);/ - (<U024B>,<U024A>);(<U024D>,<U024C>);(<U024F>,<U024E>);(<U0250>,<U2C6F>);/ - (<U0251>,<U2C6D>);(<U0252>,<U2C70>);(<U0253>,<U0181>);(<U0254>,<U0186>);/ - (<U0256>,<U0189>);(<U0257>,<U018A>);(<U0259>,<U018F>);(<U025B>,<U0190>);/ - (<U025C>,<UA7AB>);(<U0260>,<U0193>);(<U0261>,<UA7AC>);(<U0263>,<U0194>);/ - (<U0265>,<UA78D>);(<U0266>,<UA7AA>);(<U0268>,<U0197>);(<U0269>,<U0196>);/ - (<U026A>,<UA7AE>);(<U026B>,<U2C62>);(<U026C>,<UA7AD>);(<U026F>,<U019C>);/ - (<U0271>,<U2C6E>);(<U0272>,<U019D>);(<U0275>,<U019F>);(<U027D>,<U2C64>);/ - (<U0280>,<U01A6>);(<U0282>,<UA7C5>);(<U0283>,<U01A9>);(<U0287>,<UA7B1>);/ - (<U0288>,<U01AE>);(<U0289>,<U0244>);(<U028A>,<U01B1>);(<U028B>,<U01B2>);/ - (<U028C>,<U0245>);(<U0292>,<U01B7>);(<U029D>,<UA7B2>);(<U029E>,<UA7B0>);/ - (<U0345>,<U0399>);(<U0371>,<U0370>);(<U0373>,<U0372>);(<U0377>,<U0376>);/ - (<U037B>,<U03FD>);(<U037C>,<U03FE>);(<U037D>,<U03FF>);(<U03AC>,<U0386>);/ - (<U03AD>,<U0388>);(<U03AE>,<U0389>);(<U03AF>,<U038A>);(<U03B1>,<U0391>);/ - (<U03B2>,<U0392>);(<U03B3>,<U0393>);(<U03B4>,<U0394>);(<U03B5>,<U0395>);/ - (<U03B6>,<U0396>);(<U03B7>,<U0397>);(<U03B8>,<U0398>);(<U03B9>,<U0399>);/ - (<U03BA>,<U039A>);(<U03BB>,<U039B>);(<U03BC>,<U039C>);(<U03BD>,<U039D>);/ - (<U03BE>,<U039E>);(<U03BF>,<U039F>);(<U03C0>,<U03A0>);(<U03C1>,<U03A1>);/ - (<U03C2>,<U03A3>);(<U03C3>,<U03A3>);(<U03C4>,<U03A4>);(<U03C5>,<U03A5>);/ - (<U03C6>,<U03A6>);(<U03C7>,<U03A7>);(<U03C8>,<U03A8>);(<U03C9>,<U03A9>);/ - (<U03CA>,<U03AA>);(<U03CB>,<U03AB>);(<U03CC>,<U038C>);(<U03CD>,<U038E>);/ - (<U03CE>,<U038F>);(<U03D0>,<U0392>);(<U03D1>,<U0398>);(<U03D5>,<U03A6>);/ - (<U03D6>,<U03A0>);(<U03D7>,<U03CF>);(<U03D9>,<U03D8>);(<U03DB>,<U03DA>);/ - (<U03DD>,<U03DC>);(<U03DF>,<U03DE>);(<U03E1>,<U03E0>);(<U03E3>,<U03E2>);/ - (<U03E5>,<U03E4>);(<U03E7>,<U03E6>);(<U03E9>,<U03E8>);(<U03EB>,<U03EA>);/ - (<U03ED>,<U03EC>);(<U03EF>,<U03EE>);(<U03F0>,<U039A>);(<U03F1>,<U03A1>);/ - (<U03F2>,<U03F9>);(<U03F3>,<U037F>);(<U03F5>,<U0395>);(<U03F8>,<U03F7>);/ - (<U03FB>,<U03FA>);(<U0430>,<U0410>);(<U0431>,<U0411>);(<U0432>,<U0412>);/ - (<U0433>,<U0413>);(<U0434>,<U0414>);(<U0435>,<U0415>);(<U0436>,<U0416>);/ - (<U0437>,<U0417>);(<U0438>,<U0418>);(<U0439>,<U0419>);(<U043A>,<U041A>);/ - (<U043B>,<U041B>);(<U043C>,<U041C>);(<U043D>,<U041D>);(<U043E>,<U041E>);/ - (<U043F>,<U041F>);(<U0440>,<U0420>);(<U0441>,<U0421>);(<U0442>,<U0422>);/ - (<U0443>,<U0423>);(<U0444>,<U0424>);(<U0445>,<U0425>);(<U0446>,<U0426>);/ - (<U0447>,<U0427>);(<U0448>,<U0428>);(<U0449>,<U0429>);(<U044A>,<U042A>);/ - (<U044B>,<U042B>);(<U044C>,<U042C>);(<U044D>,<U042D>);(<U044E>,<U042E>);/ - (<U044F>,<U042F>);(<U0450>,<U0400>);(<U0451>,<U0401>);(<U0452>,<U0402>);/ - (<U0453>,<U0403>);(<U0454>,<U0404>);(<U0455>,<U0405>);(<U0456>,<U0406>);/ - (<U0457>,<U0407>);(<U0458>,<U0408>);(<U0459>,<U0409>);(<U045A>,<U040A>);/ - (<U045B>,<U040B>);(<U045C>,<U040C>);(<U045D>,<U040D>);(<U045E>,<U040E>);/ - (<U045F>,<U040F>);(<U0461>,<U0460>);(<U0463>,<U0462>);(<U0465>,<U0464>);/ - (<U0467>,<U0466>);(<U0469>,<U0468>);(<U046B>,<U046A>);(<U046D>,<U046C>);/ - (<U046F>,<U046E>);(<U0471>,<U0470>);(<U0473>,<U0472>);(<U0475>,<U0474>);/ - (<U0477>,<U0476>);(<U0479>,<U0478>);(<U047B>,<U047A>);(<U047D>,<U047C>);/ - (<U047F>,<U047E>);(<U0481>,<U0480>);(<U048B>,<U048A>);(<U048D>,<U048C>);/ - (<U048F>,<U048E>);(<U0491>,<U0490>);(<U0493>,<U0492>);(<U0495>,<U0494>);/ - (<U0497>,<U0496>);(<U0499>,<U0498>);(<U049B>,<U049A>);(<U049D>,<U049C>);/ - (<U049F>,<U049E>);(<U04A1>,<U04A0>);(<U04A3>,<U04A2>);(<U04A5>,<U04A4>);/ - (<U04A7>,<U04A6>);(<U04A9>,<U04A8>);(<U04AB>,<U04AA>);(<U04AD>,<U04AC>);/ - (<U04AF>,<U04AE>);(<U04B1>,<U04B0>);(<U04B3>,<U04B2>);(<U04B5>,<U04B4>);/ - (<U04B7>,<U04B6>);(<U04B9>,<U04B8>);(<U04BB>,<U04BA>);(<U04BD>,<U04BC>);/ - (<U04BF>,<U04BE>);(<U04C2>,<U04C1>);(<U04C4>,<U04C3>);(<U04C6>,<U04C5>);/ - (<U04C8>,<U04C7>);(<U04CA>,<U04C9>);(<U04CC>,<U04CB>);(<U04CE>,<U04CD>);/ - (<U04CF>,<U04C0>);(<U04D1>,<U04D0>);(<U04D3>,<U04D2>);(<U04D5>,<U04D4>);/ - (<U04D7>,<U04D6>);(<U04D9>,<U04D8>);(<U04DB>,<U04DA>);(<U04DD>,<U04DC>);/ - (<U04DF>,<U04DE>);(<U04E1>,<U04E0>);(<U04E3>,<U04E2>);(<U04E5>,<U04E4>);/ - (<U04E7>,<U04E6>);(<U04E9>,<U04E8>);(<U04EB>,<U04EA>);(<U04ED>,<U04EC>);/ - (<U04EF>,<U04EE>);(<U04F1>,<U04F0>);(<U04F3>,<U04F2>);(<U04F5>,<U04F4>);/ - (<U04F7>,<U04F6>);(<U04F9>,<U04F8>);(<U04FB>,<U04FA>);(<U04FD>,<U04FC>);/ - (<U04FF>,<U04FE>);(<U0501>,<U0500>);(<U0503>,<U0502>);(<U0505>,<U0504>);/ - (<U0507>,<U0506>);(<U0509>,<U0508>);(<U050B>,<U050A>);(<U050D>,<U050C>);/ - (<U050F>,<U050E>);(<U0511>,<U0510>);(<U0513>,<U0512>);(<U0515>,<U0514>);/ - (<U0517>,<U0516>);(<U0519>,<U0518>);(<U051B>,<U051A>);(<U051D>,<U051C>);/ - (<U051F>,<U051E>);(<U0521>,<U0520>);(<U0523>,<U0522>);(<U0525>,<U0524>);/ - (<U0527>,<U0526>);(<U0529>,<U0528>);(<U052B>,<U052A>);(<U052D>,<U052C>);/ - (<U052F>,<U052E>);(<U0561>,<U0531>);(<U0562>,<U0532>);(<U0563>,<U0533>);/ - (<U0564>,<U0534>);(<U0565>,<U0535>);(<U0566>,<U0536>);(<U0567>,<U0537>);/ - (<U0568>,<U0538>);(<U0569>,<U0539>);(<U056A>,<U053A>);(<U056B>,<U053B>);/ - (<U056C>,<U053C>);(<U056D>,<U053D>);(<U056E>,<U053E>);(<U056F>,<U053F>);/ - (<U0570>,<U0540>);(<U0571>,<U0541>);(<U0572>,<U0542>);(<U0573>,<U0543>);/ - (<U0574>,<U0544>);(<U0575>,<U0545>);(<U0576>,<U0546>);(<U0577>,<U0547>);/ - (<U0578>,<U0548>);(<U0579>,<U0549>);(<U057A>,<U054A>);(<U057B>,<U054B>);/ - (<U057C>,<U054C>);(<U057D>,<U054D>);(<U057E>,<U054E>);(<U057F>,<U054F>);/ - (<U0580>,<U0550>);(<U0581>,<U0551>);(<U0582>,<U0552>);(<U0583>,<U0553>);/ - (<U0584>,<U0554>);(<U0585>,<U0555>);(<U0586>,<U0556>);(<U10D0>,<U1C90>);/ - (<U10D1>,<U1C91>);(<U10D2>,<U1C92>);(<U10D3>,<U1C93>);(<U10D4>,<U1C94>);/ - (<U10D5>,<U1C95>);(<U10D6>,<U1C96>);(<U10D7>,<U1C97>);(<U10D8>,<U1C98>);/ - (<U10D9>,<U1C99>);(<U10DA>,<U1C9A>);(<U10DB>,<U1C9B>);(<U10DC>,<U1C9C>);/ - (<U10DD>,<U1C9D>);(<U10DE>,<U1C9E>);(<U10DF>,<U1C9F>);(<U10E0>,<U1CA0>);/ - (<U10E1>,<U1CA1>);(<U10E2>,<U1CA2>);(<U10E3>,<U1CA3>);(<U10E4>,<U1CA4>);/ - (<U10E5>,<U1CA5>);(<U10E6>,<U1CA6>);(<U10E7>,<U1CA7>);(<U10E8>,<U1CA8>);/ - (<U10E9>,<U1CA9>);(<U10EA>,<U1CAA>);(<U10EB>,<U1CAB>);(<U10EC>,<U1CAC>);/ - (<U10ED>,<U1CAD>);(<U10EE>,<U1CAE>);(<U10EF>,<U1CAF>);(<U10F0>,<U1CB0>);/ - (<U10F1>,<U1CB1>);(<U10F2>,<U1CB2>);(<U10F3>,<U1CB3>);(<U10F4>,<U1CB4>);/ - (<U10F5>,<U1CB5>);(<U10F6>,<U1CB6>);(<U10F7>,<U1CB7>);(<U10F8>,<U1CB8>);/ - (<U10F9>,<U1CB9>);(<U10FA>,<U1CBA>);(<U10FD>,<U1CBD>);(<U10FE>,<U1CBE>);/ - (<U10FF>,<U1CBF>);(<U13F8>,<U13F0>);(<U13F9>,<U13F1>);(<U13FA>,<U13F2>);/ - (<U13FB>,<U13F3>);(<U13FC>,<U13F4>);(<U13FD>,<U13F5>);(<U1C80>,<U0412>);/ - (<U1C81>,<U0414>);(<U1C82>,<U041E>);(<U1C83>,<U0421>);(<U1C84>,<U0422>);/ - (<U1C85>,<U0422>);(<U1C86>,<U042A>);(<U1C87>,<U0462>);(<U1C88>,<UA64A>);/ - (<U1D79>,<UA77D>);(<U1D7D>,<U2C63>);(<U1D8E>,<UA7C6>);(<U1E01>,<U1E00>);/ - (<U1E03>,<U1E02>);(<U1E05>,<U1E04>);(<U1E07>,<U1E06>);(<U1E09>,<U1E08>);/ - (<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);/ - (<U1E13>,<U1E12>);(<U1E15>,<U1E14>);(<U1E17>,<U1E16>);(<U1E19>,<U1E18>);/ - (<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);/ - (<U1E23>,<U1E22>);(<U1E25>,<U1E24>);(<U1E27>,<U1E26>);(<U1E29>,<U1E28>);/ - (<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);/ - (<U1E33>,<U1E32>);(<U1E35>,<U1E34>);(<U1E37>,<U1E36>);(<U1E39>,<U1E38>);/ - (<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);/ - (<U1E43>,<U1E42>);(<U1E45>,<U1E44>);(<U1E47>,<U1E46>);(<U1E49>,<U1E48>);/ - (<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);/ - (<U1E53>,<U1E52>);(<U1E55>,<U1E54>);(<U1E57>,<U1E56>);(<U1E59>,<U1E58>);/ - (<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);/ - (<U1E63>,<U1E62>);(<U1E65>,<U1E64>);(<U1E67>,<U1E66>);(<U1E69>,<U1E68>);/ - (<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);/ - (<U1E73>,<U1E72>);(<U1E75>,<U1E74>);(<U1E77>,<U1E76>);(<U1E79>,<U1E78>);/ - (<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);/ - (<U1E83>,<U1E82>);(<U1E85>,<U1E84>);(<U1E87>,<U1E86>);(<U1E89>,<U1E88>);/ - (<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);/ - (<U1E93>,<U1E92>);(<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);/ - (<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);/ - (<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);/ - (<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);/ - (<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);/ - (<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);/ - (<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);/ - (<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);/ - (<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);/ - (<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);/ - (<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);/ - (<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);/ - (<U1EFB>,<U1EFA>);(<U1EFD>,<U1EFC>);(<U1EFF>,<U1EFE>);(<U1F00>,<U1F08>);/ - (<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);/ - (<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);/ - (<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);/ - (<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);/ - (<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);/ - (<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);/ - (<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);/ - (<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);/ - (<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);/ - (<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);/ - (<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);/ - (<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);/ - (<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);/ - (<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);/ - (<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);/ - (<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);/ - (<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);/ - (<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);/ - (<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);/ - (<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);/ - (<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);/ - (<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);/ - (<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);/ - (<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);/ - (<U214E>,<U2132>);(<U2170>,<U2160>);(<U2171>,<U2161>);(<U2172>,<U2162>);/ - (<U2173>,<U2163>);(<U2174>,<U2164>);(<U2175>,<U2165>);(<U2176>,<U2166>);/ - (<U2177>,<U2167>);(<U2178>,<U2168>);(<U2179>,<U2169>);(<U217A>,<U216A>);/ - (<U217B>,<U216B>);(<U217C>,<U216C>);(<U217D>,<U216D>);(<U217E>,<U216E>);/ - (<U217F>,<U216F>);(<U2184>,<U2183>);(<U24D0>,<U24B6>);(<U24D1>,<U24B7>);/ - (<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);(<U24D5>,<U24BB>);/ - (<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);(<U24D9>,<U24BF>);/ - (<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);(<U24DD>,<U24C3>);/ - (<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);(<U24E1>,<U24C7>);/ - (<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);(<U24E5>,<U24CB>);/ - (<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);(<U24E9>,<U24CF>);/ - (<U2C30>,<U2C00>);(<U2C31>,<U2C01>);(<U2C32>,<U2C02>);(<U2C33>,<U2C03>);/ - (<U2C34>,<U2C04>);(<U2C35>,<U2C05>);(<U2C36>,<U2C06>);(<U2C37>,<U2C07>);/ - (<U2C38>,<U2C08>);(<U2C39>,<U2C09>);(<U2C3A>,<U2C0A>);(<U2C3B>,<U2C0B>);/ - (<U2C3C>,<U2C0C>);(<U2C3D>,<U2C0D>);(<U2C3E>,<U2C0E>);(<U2C3F>,<U2C0F>);/ - (<U2C40>,<U2C10>);(<U2C41>,<U2C11>);(<U2C42>,<U2C12>);(<U2C43>,<U2C13>);/ - (<U2C44>,<U2C14>);(<U2C45>,<U2C15>);(<U2C46>,<U2C16>);(<U2C47>,<U2C17>);/ - (<U2C48>,<U2C18>);(<U2C49>,<U2C19>);(<U2C4A>,<U2C1A>);(<U2C4B>,<U2C1B>);/ - (<U2C4C>,<U2C1C>);(<U2C4D>,<U2C1D>);(<U2C4E>,<U2C1E>);(<U2C4F>,<U2C1F>);/ - (<U2C50>,<U2C20>);(<U2C51>,<U2C21>);(<U2C52>,<U2C22>);(<U2C53>,<U2C23>);/ - (<U2C54>,<U2C24>);(<U2C55>,<U2C25>);(<U2C56>,<U2C26>);(<U2C57>,<U2C27>);/ - (<U2C58>,<U2C28>);(<U2C59>,<U2C29>);(<U2C5A>,<U2C2A>);(<U2C5B>,<U2C2B>);/ - (<U2C5C>,<U2C2C>);(<U2C5D>,<U2C2D>);(<U2C5E>,<U2C2E>);(<U2C5F>,<U2C2F>);/ - (<U2C61>,<U2C60>);(<U2C65>,<U023A>);(<U2C66>,<U023E>);(<U2C68>,<U2C67>);/ - (<U2C6A>,<U2C69>);(<U2C6C>,<U2C6B>);(<U2C73>,<U2C72>);(<U2C76>,<U2C75>);/ - (<U2C81>,<U2C80>);(<U2C83>,<U2C82>);(<U2C85>,<U2C84>);(<U2C87>,<U2C86>);/ - (<U2C89>,<U2C88>);(<U2C8B>,<U2C8A>);(<U2C8D>,<U2C8C>);(<U2C8F>,<U2C8E>);/ - (<U2C91>,<U2C90>);(<U2C93>,<U2C92>);(<U2C95>,<U2C94>);(<U2C97>,<U2C96>);/ - (<U2C99>,<U2C98>);(<U2C9B>,<U2C9A>);(<U2C9D>,<U2C9C>);(<U2C9F>,<U2C9E>);/ - (<U2CA1>,<U2CA0>);(<U2CA3>,<U2CA2>);(<U2CA5>,<U2CA4>);(<U2CA7>,<U2CA6>);/ - (<U2CA9>,<U2CA8>);(<U2CAB>,<U2CAA>);(<U2CAD>,<U2CAC>);(<U2CAF>,<U2CAE>);/ - (<U2CB1>,<U2CB0>);(<U2CB3>,<U2CB2>);(<U2CB5>,<U2CB4>);(<U2CB7>,<U2CB6>);/ - (<U2CB9>,<U2CB8>);(<U2CBB>,<U2CBA>);(<U2CBD>,<U2CBC>);(<U2CBF>,<U2CBE>);/ - (<U2CC1>,<U2CC0>);(<U2CC3>,<U2CC2>);(<U2CC5>,<U2CC4>);(<U2CC7>,<U2CC6>);/ - (<U2CC9>,<U2CC8>);(<U2CCB>,<U2CCA>);(<U2CCD>,<U2CCC>);(<U2CCF>,<U2CCE>);/ - (<U2CD1>,<U2CD0>);(<U2CD3>,<U2CD2>);(<U2CD5>,<U2CD4>);(<U2CD7>,<U2CD6>);/ - (<U2CD9>,<U2CD8>);(<U2CDB>,<U2CDA>);(<U2CDD>,<U2CDC>);(<U2CDF>,<U2CDE>);/ - (<U2CE1>,<U2CE0>);(<U2CE3>,<U2CE2>);(<U2CEC>,<U2CEB>);(<U2CEE>,<U2CED>);/ - (<U2CF3>,<U2CF2>);(<U2D00>,<U10A0>);(<U2D01>,<U10A1>);(<U2D02>,<U10A2>);/ - (<U2D03>,<U10A3>);(<U2D04>,<U10A4>);(<U2D05>,<U10A5>);(<U2D06>,<U10A6>);/ - (<U2D07>,<U10A7>);(<U2D08>,<U10A8>);(<U2D09>,<U10A9>);(<U2D0A>,<U10AA>);/ - (<U2D0B>,<U10AB>);(<U2D0C>,<U10AC>);(<U2D0D>,<U10AD>);(<U2D0E>,<U10AE>);/ - (<U2D0F>,<U10AF>);(<U2D10>,<U10B0>);(<U2D11>,<U10B1>);(<U2D12>,<U10B2>);/ - (<U2D13>,<U10B3>);(<U2D14>,<U10B4>);(<U2D15>,<U10B5>);(<U2D16>,<U10B6>);/ - (<U2D17>,<U10B7>);(<U2D18>,<U10B8>);(<U2D19>,<U10B9>);(<U2D1A>,<U10BA>);/ - (<U2D1B>,<U10BB>);(<U2D1C>,<U10BC>);(<U2D1D>,<U10BD>);(<U2D1E>,<U10BE>);/ - (<U2D1F>,<U10BF>);(<U2D20>,<U10C0>);(<U2D21>,<U10C1>);(<U2D22>,<U10C2>);/ - (<U2D23>,<U10C3>);(<U2D24>,<U10C4>);(<U2D25>,<U10C5>);(<U2D27>,<U10C7>);/ - (<U2D2D>,<U10CD>);(<UA641>,<UA640>);(<UA643>,<UA642>);(<UA645>,<UA644>);/ - (<UA647>,<UA646>);(<UA649>,<UA648>);(<UA64B>,<UA64A>);(<UA64D>,<UA64C>);/ - (<UA64F>,<UA64E>);(<UA651>,<UA650>);(<UA653>,<UA652>);(<UA655>,<UA654>);/ - (<UA657>,<UA656>);(<UA659>,<UA658>);(<UA65B>,<UA65A>);(<UA65D>,<UA65C>);/ - (<UA65F>,<UA65E>);(<UA661>,<UA660>);(<UA663>,<UA662>);(<UA665>,<UA664>);/ - (<UA667>,<UA666>);(<UA669>,<UA668>);(<UA66B>,<UA66A>);(<UA66D>,<UA66C>);/ - (<UA681>,<UA680>);(<UA683>,<UA682>);(<UA685>,<UA684>);(<UA687>,<UA686>);/ - (<UA689>,<UA688>);(<UA68B>,<UA68A>);(<UA68D>,<UA68C>);(<UA68F>,<UA68E>);/ - (<UA691>,<UA690>);(<UA693>,<UA692>);(<UA695>,<UA694>);(<UA697>,<UA696>);/ - (<UA699>,<UA698>);(<UA69B>,<UA69A>);(<UA723>,<UA722>);(<UA725>,<UA724>);/ - (<UA727>,<UA726>);(<UA729>,<UA728>);(<UA72B>,<UA72A>);(<UA72D>,<UA72C>);/ - (<UA72F>,<UA72E>);(<UA733>,<UA732>);(<UA735>,<UA734>);(<UA737>,<UA736>);/ - (<UA739>,<UA738>);(<UA73B>,<UA73A>);(<UA73D>,<UA73C>);(<UA73F>,<UA73E>);/ - (<UA741>,<UA740>);(<UA743>,<UA742>);(<UA745>,<UA744>);(<UA747>,<UA746>);/ - (<UA749>,<UA748>);(<UA74B>,<UA74A>);(<UA74D>,<UA74C>);(<UA74F>,<UA74E>);/ - (<UA751>,<UA750>);(<UA753>,<UA752>);(<UA755>,<UA754>);(<UA757>,<UA756>);/ - (<UA759>,<UA758>);(<UA75B>,<UA75A>);(<UA75D>,<UA75C>);(<UA75F>,<UA75E>);/ - (<UA761>,<UA760>);(<UA763>,<UA762>);(<UA765>,<UA764>);(<UA767>,<UA766>);/ - (<UA769>,<UA768>);(<UA76B>,<UA76A>);(<UA76D>,<UA76C>);(<UA76F>,<UA76E>);/ - (<UA77A>,<UA779>);(<UA77C>,<UA77B>);(<UA77F>,<UA77E>);(<UA781>,<UA780>);/ - (<UA783>,<UA782>);(<UA785>,<UA784>);(<UA787>,<UA786>);(<UA78C>,<UA78B>);/ - (<UA791>,<UA790>);(<UA793>,<UA792>);(<UA794>,<UA7C4>);(<UA797>,<UA796>);/ - (<UA799>,<UA798>);(<UA79B>,<UA79A>);(<UA79D>,<UA79C>);(<UA79F>,<UA79E>);/ - (<UA7A1>,<UA7A0>);(<UA7A3>,<UA7A2>);(<UA7A5>,<UA7A4>);(<UA7A7>,<UA7A6>);/ - (<UA7A9>,<UA7A8>);(<UA7B5>,<UA7B4>);(<UA7B7>,<UA7B6>);(<UA7B9>,<UA7B8>);/ - (<UA7BB>,<UA7BA>);(<UA7BD>,<UA7BC>);(<UA7BF>,<UA7BE>);(<UA7C1>,<UA7C0>);/ - (<UA7C3>,<UA7C2>);(<UA7C8>,<UA7C7>);(<UA7CA>,<UA7C9>);(<UA7D1>,<UA7D0>);/ - (<UA7D7>,<UA7D6>);(<UA7D9>,<UA7D8>);(<UA7F6>,<UA7F5>);(<UAB53>,<UA7B3>);/ - (<UAB70>,<U13A0>);(<UAB71>,<U13A1>);(<UAB72>,<U13A2>);(<UAB73>,<U13A3>);/ - (<UAB74>,<U13A4>);(<UAB75>,<U13A5>);(<UAB76>,<U13A6>);(<UAB77>,<U13A7>);/ - (<UAB78>,<U13A8>);(<UAB79>,<U13A9>);(<UAB7A>,<U13AA>);(<UAB7B>,<U13AB>);/ - (<UAB7C>,<U13AC>);(<UAB7D>,<U13AD>);(<UAB7E>,<U13AE>);(<UAB7F>,<U13AF>);/ - (<UAB80>,<U13B0>);(<UAB81>,<U13B1>);(<UAB82>,<U13B2>);(<UAB83>,<U13B3>);/ - (<UAB84>,<U13B4>);(<UAB85>,<U13B5>);(<UAB86>,<U13B6>);(<UAB87>,<U13B7>);/ - (<UAB88>,<U13B8>);(<UAB89>,<U13B9>);(<UAB8A>,<U13BA>);(<UAB8B>,<U13BB>);/ - (<UAB8C>,<U13BC>);(<UAB8D>,<U13BD>);(<UAB8E>,<U13BE>);(<UAB8F>,<U13BF>);/ - (<UAB90>,<U13C0>);(<UAB91>,<U13C1>);(<UAB92>,<U13C2>);(<UAB93>,<U13C3>);/ - (<UAB94>,<U13C4>);(<UAB95>,<U13C5>);(<UAB96>,<U13C6>);(<UAB97>,<U13C7>);/ - (<UAB98>,<U13C8>);(<UAB99>,<U13C9>);(<UAB9A>,<U13CA>);(<UAB9B>,<U13CB>);/ - (<UAB9C>,<U13CC>);(<UAB9D>,<U13CD>);(<UAB9E>,<U13CE>);(<UAB9F>,<U13CF>);/ - (<UABA0>,<U13D0>);(<UABA1>,<U13D1>);(<UABA2>,<U13D2>);(<UABA3>,<U13D3>);/ - (<UABA4>,<U13D4>);(<UABA5>,<U13D5>);(<UABA6>,<U13D6>);(<UABA7>,<U13D7>);/ - (<UABA8>,<U13D8>);(<UABA9>,<U13D9>);(<UABAA>,<U13DA>);(<UABAB>,<U13DB>);/ - (<UABAC>,<U13DC>);(<UABAD>,<U13DD>);(<UABAE>,<U13DE>);(<UABAF>,<U13DF>);/ - (<UABB0>,<U13E0>);(<UABB1>,<U13E1>);(<UABB2>,<U13E2>);(<UABB3>,<U13E3>);/ - (<UABB4>,<U13E4>);(<UABB5>,<U13E5>);(<UABB6>,<U13E6>);(<UABB7>,<U13E7>);/ - (<UABB8>,<U13E8>);(<UABB9>,<U13E9>);(<UABBA>,<U13EA>);(<UABBB>,<U13EB>);/ - (<UABBC>,<U13EC>);(<UABBD>,<U13ED>);(<UABBE>,<U13EE>);(<UABBF>,<U13EF>);/ - (<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);(<UFF44>,<UFF24>);/ - (<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);(<UFF48>,<UFF28>);/ - (<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);/ - (<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);/ - (<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);(<UFF54>,<UFF34>);/ - (<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);(<UFF58>,<UFF38>);/ - (<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);(<U00010428>,<U00010400>);/ - (<U00010429>,<U00010401>);(<U0001042A>,<U00010402>);/ - (<U0001042B>,<U00010403>);(<U0001042C>,<U00010404>);/ - (<U0001042D>,<U00010405>);(<U0001042E>,<U00010406>);/ - (<U0001042F>,<U00010407>);(<U00010430>,<U00010408>);/ - (<U00010431>,<U00010409>);(<U00010432>,<U0001040A>);/ - (<U00010433>,<U0001040B>);(<U00010434>,<U0001040C>);/ - (<U00010435>,<U0001040D>);(<U00010436>,<U0001040E>);/ - (<U00010437>,<U0001040F>);(<U00010438>,<U00010410>);/ - (<U00010439>,<U00010411>);(<U0001043A>,<U00010412>);/ - (<U0001043B>,<U00010413>);(<U0001043C>,<U00010414>);/ - (<U0001043D>,<U00010415>);(<U0001043E>,<U00010416>);/ - (<U0001043F>,<U00010417>);(<U00010440>,<U00010418>);/ - (<U00010441>,<U00010419>);(<U00010442>,<U0001041A>);/ - (<U00010443>,<U0001041B>);(<U00010444>,<U0001041C>);/ - (<U00010445>,<U0001041D>);(<U00010446>,<U0001041E>);/ - (<U00010447>,<U0001041F>);(<U00010448>,<U00010420>);/ - (<U00010449>,<U00010421>);(<U0001044A>,<U00010422>);/ - (<U0001044B>,<U00010423>);(<U0001044C>,<U00010424>);/ - (<U0001044D>,<U00010425>);(<U0001044E>,<U00010426>);/ - (<U0001044F>,<U00010427>);(<U000104D8>,<U000104B0>);/ - (<U000104D9>,<U000104B1>);(<U000104DA>,<U000104B2>);/ - (<U000104DB>,<U000104B3>);(<U000104DC>,<U000104B4>);/ - (<U000104DD>,<U000104B5>);(<U000104DE>,<U000104B6>);/ - (<U000104DF>,<U000104B7>);(<U000104E0>,<U000104B8>);/ - (<U000104E1>,<U000104B9>);(<U000104E2>,<U000104BA>);/ - (<U000104E3>,<U000104BB>);(<U000104E4>,<U000104BC>);/ - (<U000104E5>,<U000104BD>);(<U000104E6>,<U000104BE>);/ - (<U000104E7>,<U000104BF>);(<U000104E8>,<U000104C0>);/ - (<U000104E9>,<U000104C1>);(<U000104EA>,<U000104C2>);/ - (<U000104EB>,<U000104C3>);(<U000104EC>,<U000104C4>);/ - (<U000104ED>,<U000104C5>);(<U000104EE>,<U000104C6>);/ - (<U000104EF>,<U000104C7>);(<U000104F0>,<U000104C8>);/ - (<U000104F1>,<U000104C9>);(<U000104F2>,<U000104CA>);/ - (<U000104F3>,<U000104CB>);(<U000104F4>,<U000104CC>);/ - (<U000104F5>,<U000104CD>);(<U000104F6>,<U000104CE>);/ - (<U000104F7>,<U000104CF>);(<U000104F8>,<U000104D0>);/ - (<U000104F9>,<U000104D1>);(<U000104FA>,<U000104D2>);/ - (<U000104FB>,<U000104D3>);(<U00010597>,<U00010570>);/ - (<U00010598>,<U00010571>);(<U00010599>,<U00010572>);/ - (<U0001059A>,<U00010573>);(<U0001059B>,<U00010574>);/ - (<U0001059C>,<U00010575>);(<U0001059D>,<U00010576>);/ - (<U0001059E>,<U00010577>);(<U0001059F>,<U00010578>);/ - (<U000105A0>,<U00010579>);(<U000105A1>,<U0001057A>);/ - (<U000105A3>,<U0001057C>);(<U000105A4>,<U0001057D>);/ - (<U000105A5>,<U0001057E>);(<U000105A6>,<U0001057F>);/ - (<U000105A7>,<U00010580>);(<U000105A8>,<U00010581>);/ - (<U000105A9>,<U00010582>);(<U000105AA>,<U00010583>);/ - (<U000105AB>,<U00010584>);(<U000105AC>,<U00010585>);/ - (<U000105AD>,<U00010586>);(<U000105AE>,<U00010587>);/ - (<U000105AF>,<U00010588>);(<U000105B0>,<U00010589>);/ - (<U000105B1>,<U0001058A>);(<U000105B3>,<U0001058C>);/ - (<U000105B4>,<U0001058D>);(<U000105B5>,<U0001058E>);/ - (<U000105B6>,<U0001058F>);(<U000105B7>,<U00010590>);/ - (<U000105B8>,<U00010591>);(<U000105B9>,<U00010592>);/ - (<U000105BB>,<U00010594>);(<U000105BC>,<U00010595>);/ - (<U00010CC0>,<U00010C80>);(<U00010CC1>,<U00010C81>);/ - (<U00010CC2>,<U00010C82>);(<U00010CC3>,<U00010C83>);/ - (<U00010CC4>,<U00010C84>);(<U00010CC5>,<U00010C85>);/ - (<U00010CC6>,<U00010C86>);(<U00010CC7>,<U00010C87>);/ - (<U00010CC8>,<U00010C88>);(<U00010CC9>,<U00010C89>);/ - (<U00010CCA>,<U00010C8A>);(<U00010CCB>,<U00010C8B>);/ - (<U00010CCC>,<U00010C8C>);(<U00010CCD>,<U00010C8D>);/ - (<U00010CCE>,<U00010C8E>);(<U00010CCF>,<U00010C8F>);/ - (<U00010CD0>,<U00010C90>);(<U00010CD1>,<U00010C91>);/ - (<U00010CD2>,<U00010C92>);(<U00010CD3>,<U00010C93>);/ - (<U00010CD4>,<U00010C94>);(<U00010CD5>,<U00010C95>);/ - (<U00010CD6>,<U00010C96>);(<U00010CD7>,<U00010C97>);/ - (<U00010CD8>,<U00010C98>);(<U00010CD9>,<U00010C99>);/ - (<U00010CDA>,<U00010C9A>);(<U00010CDB>,<U00010C9B>);/ - (<U00010CDC>,<U00010C9C>);(<U00010CDD>,<U00010C9D>);/ - (<U00010CDE>,<U00010C9E>);(<U00010CDF>,<U00010C9F>);/ - (<U00010CE0>,<U00010CA0>);(<U00010CE1>,<U00010CA1>);/ - (<U00010CE2>,<U00010CA2>);(<U00010CE3>,<U00010CA3>);/ - (<U00010CE4>,<U00010CA4>);(<U00010CE5>,<U00010CA5>);/ - (<U00010CE6>,<U00010CA6>);(<U00010CE7>,<U00010CA7>);/ - (<U00010CE8>,<U00010CA8>);(<U00010CE9>,<U00010CA9>);/ - (<U00010CEA>,<U00010CAA>);(<U00010CEB>,<U00010CAB>);/ - (<U00010CEC>,<U00010CAC>);(<U00010CED>,<U00010CAD>);/ - (<U00010CEE>,<U00010CAE>);(<U00010CEF>,<U00010CAF>);/ - (<U00010CF0>,<U00010CB0>);(<U00010CF1>,<U00010CB1>);/ - (<U00010CF2>,<U00010CB2>);(<U000118C0>,<U000118A0>);/ - (<U000118C1>,<U000118A1>);(<U000118C2>,<U000118A2>);/ - (<U000118C3>,<U000118A3>);(<U000118C4>,<U000118A4>);/ - (<U000118C5>,<U000118A5>);(<U000118C6>,<U000118A6>);/ - (<U000118C7>,<U000118A7>);(<U000118C8>,<U000118A8>);/ - (<U000118C9>,<U000118A9>);(<U000118CA>,<U000118AA>);/ - (<U000118CB>,<U000118AB>);(<U000118CC>,<U000118AC>);/ - (<U000118CD>,<U000118AD>);(<U000118CE>,<U000118AE>);/ - (<U000118CF>,<U000118AF>);(<U000118D0>,<U000118B0>);/ - (<U000118D1>,<U000118B1>);(<U000118D2>,<U000118B2>);/ - (<U000118D3>,<U000118B3>);(<U000118D4>,<U000118B4>);/ - (<U000118D5>,<U000118B5>);(<U000118D6>,<U000118B6>);/ - (<U000118D7>,<U000118B7>);(<U000118D8>,<U000118B8>);/ - (<U000118D9>,<U000118B9>);(<U000118DA>,<U000118BA>);/ - (<U000118DB>,<U000118BB>);(<U000118DC>,<U000118BC>);/ - (<U000118DD>,<U000118BD>);(<U000118DE>,<U000118BE>);/ - (<U000118DF>,<U000118BF>);(<U00016E60>,<U00016E40>);/ - (<U00016E61>,<U00016E41>);(<U00016E62>,<U00016E42>);/ - (<U00016E63>,<U00016E43>);(<U00016E64>,<U00016E44>);/ - (<U00016E65>,<U00016E45>);(<U00016E66>,<U00016E46>);/ - (<U00016E67>,<U00016E47>);(<U00016E68>,<U00016E48>);/ - (<U00016E69>,<U00016E49>);(<U00016E6A>,<U00016E4A>);/ - (<U00016E6B>,<U00016E4B>);(<U00016E6C>,<U00016E4C>);/ - (<U00016E6D>,<U00016E4D>);(<U00016E6E>,<U00016E4E>);/ - (<U00016E6F>,<U00016E4F>);(<U00016E70>,<U00016E50>);/ - (<U00016E71>,<U00016E51>);(<U00016E72>,<U00016E52>);/ - (<U00016E73>,<U00016E53>);(<U00016E74>,<U00016E54>);/ - (<U00016E75>,<U00016E55>);(<U00016E76>,<U00016E56>);/ - (<U00016E77>,<U00016E57>);(<U00016E78>,<U00016E58>);/ - (<U00016E79>,<U00016E59>);(<U00016E7A>,<U00016E5A>);/ - (<U00016E7B>,<U00016E5B>);(<U00016E7C>,<U00016E5C>);/ - (<U00016E7D>,<U00016E5D>);(<U00016E7E>,<U00016E5E>);/ - (<U00016E7F>,<U00016E5F>);(<U0001E922>,<U0001E900>);/ - (<U0001E923>,<U0001E901>);(<U0001E924>,<U0001E902>);/ - (<U0001E925>,<U0001E903>);(<U0001E926>,<U0001E904>);/ - (<U0001E927>,<U0001E905>);(<U0001E928>,<U0001E906>);/ - (<U0001E929>,<U0001E907>);(<U0001E92A>,<U0001E908>);/ - (<U0001E92B>,<U0001E909>);(<U0001E92C>,<U0001E90A>);/ - (<U0001E92D>,<U0001E90B>);(<U0001E92E>,<U0001E90C>);/ - (<U0001E92F>,<U0001E90D>);(<U0001E930>,<U0001E90E>);/ - (<U0001E931>,<U0001E90F>);(<U0001E932>,<U0001E910>);/ - (<U0001E933>,<U0001E911>);(<U0001E934>,<U0001E912>);/ - (<U0001E935>,<U0001E913>);(<U0001E936>,<U0001E914>);/ - (<U0001E937>,<U0001E915>);(<U0001E938>,<U0001E916>);/ - (<U0001E939>,<U0001E917>);(<U0001E93A>,<U0001E918>);/ - (<U0001E93B>,<U0001E919>);(<U0001E93C>,<U0001E91A>);/ - (<U0001E93D>,<U0001E91B>);(<U0001E93E>,<U0001E91C>);/ - (<U0001E93F>,<U0001E91D>);(<U0001E940>,<U0001E91E>);/ - (<U0001E941>,<U0001E91F>);(<U0001E942>,<U0001E920>);/ - (<U0001E943>,<U0001E921>) + (<U0199>,<U0198>);(<U019A>,<U023D>);(<U019B>,<UA7DC>);(<U019E>,<U0220>);/ + (<U01A1>,<U01A0>);(<U01A3>,<U01A2>);(<U01A5>,<U01A4>);(<U01A8>,<U01A7>);/ + (<U01AD>,<U01AC>);(<U01B0>,<U01AF>);(<U01B4>,<U01B3>);(<U01B6>,<U01B5>);/ + (<U01B9>,<U01B8>);(<U01BD>,<U01BC>);(<U01BF>,<U01F7>);(<U01C5>,<U01C4>);/ + (<U01C6>,<U01C4>);(<U01C8>,<U01C7>);(<U01C9>,<U01C7>);(<U01CB>,<U01CA>);/ + (<U01CC>,<U01CA>);(<U01CE>,<U01CD>);(<U01D0>,<U01CF>);(<U01D2>,<U01D1>);/ + (<U01D4>,<U01D3>);(<U01D6>,<U01D5>);(<U01D8>,<U01D7>);(<U01DA>,<U01D9>);/ + (<U01DC>,<U01DB>);(<U01DD>,<U018E>);(<U01DF>,<U01DE>);(<U01E1>,<U01E0>);/ + (<U01E3>,<U01E2>);(<U01E5>,<U01E4>);(<U01E7>,<U01E6>);(<U01E9>,<U01E8>);/ + (<U01EB>,<U01EA>);(<U01ED>,<U01EC>);(<U01EF>,<U01EE>);(<U01F2>,<U01F1>);/ + (<U01F3>,<U01F1>);(<U01F5>,<U01F4>);(<U01F9>,<U01F8>);(<U01FB>,<U01FA>);/ + (<U01FD>,<U01FC>);(<U01FF>,<U01FE>);(<U0201>,<U0200>);(<U0203>,<U0202>);/ + (<U0205>,<U0204>);(<U0207>,<U0206>);(<U0209>,<U0208>);(<U020B>,<U020A>);/ + (<U020D>,<U020C>);(<U020F>,<U020E>);(<U0211>,<U0210>);(<U0213>,<U0212>);/ + (<U0215>,<U0214>);(<U0217>,<U0216>);(<U0219>,<U0218>);(<U021B>,<U021A>);/ + (<U021D>,<U021C>);(<U021F>,<U021E>);(<U0223>,<U0222>);(<U0225>,<U0224>);/ + (<U0227>,<U0226>);(<U0229>,<U0228>);(<U022B>,<U022A>);(<U022D>,<U022C>);/ + (<U022F>,<U022E>);(<U0231>,<U0230>);(<U0233>,<U0232>);(<U023C>,<U023B>);/ + (<U023F>,<U2C7E>);(<U0240>,<U2C7F>);(<U0242>,<U0241>);(<U0247>,<U0246>);/ + (<U0249>,<U0248>);(<U024B>,<U024A>);(<U024D>,<U024C>);(<U024F>,<U024E>);/ + (<U0250>,<U2C6F>);(<U0251>,<U2C6D>);(<U0252>,<U2C70>);(<U0253>,<U0181>);/ + (<U0254>,<U0186>);(<U0256>,<U0189>);(<U0257>,<U018A>);(<U0259>,<U018F>);/ + (<U025B>,<U0190>);(<U025C>,<UA7AB>);(<U0260>,<U0193>);(<U0261>,<UA7AC>);/ + (<U0263>,<U0194>);(<U0264>,<UA7CB>);(<U0265>,<UA78D>);(<U0266>,<UA7AA>);/ + (<U0268>,<U0197>);(<U0269>,<U0196>);(<U026A>,<UA7AE>);(<U026B>,<U2C62>);/ + (<U026C>,<UA7AD>);(<U026F>,<U019C>);(<U0271>,<U2C6E>);(<U0272>,<U019D>);/ + (<U0275>,<U019F>);(<U027D>,<U2C64>);(<U0280>,<U01A6>);(<U0282>,<UA7C5>);/ + (<U0283>,<U01A9>);(<U0287>,<UA7B1>);(<U0288>,<U01AE>);(<U0289>,<U0244>);/ + (<U028A>,<U01B1>);(<U028B>,<U01B2>);(<U028C>,<U0245>);(<U0292>,<U01B7>);/ + (<U029D>,<UA7B2>);(<U029E>,<UA7B0>);(<U0345>,<U0399>);(<U0371>,<U0370>);/ + (<U0373>,<U0372>);(<U0377>,<U0376>);(<U037B>,<U03FD>);(<U037C>,<U03FE>);/ + (<U037D>,<U03FF>);(<U03AC>,<U0386>);(<U03AD>,<U0388>);(<U03AE>,<U0389>);/ + (<U03AF>,<U038A>);(<U03B1>,<U0391>);(<U03B2>,<U0392>);(<U03B3>,<U0393>);/ + (<U03B4>,<U0394>);(<U03B5>,<U0395>);(<U03B6>,<U0396>);(<U03B7>,<U0397>);/ + (<U03B8>,<U0398>);(<U03B9>,<U0399>);(<U03BA>,<U039A>);(<U03BB>,<U039B>);/ + (<U03BC>,<U039C>);(<U03BD>,<U039D>);(<U03BE>,<U039E>);(<U03BF>,<U039F>);/ + (<U03C0>,<U03A0>);(<U03C1>,<U03A1>);(<U03C2>,<U03A3>);(<U03C3>,<U03A3>);/ + (<U03C4>,<U03A4>);(<U03C5>,<U03A5>);(<U03C6>,<U03A6>);(<U03C7>,<U03A7>);/ + (<U03C8>,<U03A8>);(<U03C9>,<U03A9>);(<U03CA>,<U03AA>);(<U03CB>,<U03AB>);/ + (<U03CC>,<U038C>);(<U03CD>,<U038E>);(<U03CE>,<U038F>);(<U03D0>,<U0392>);/ + (<U03D1>,<U0398>);(<U03D5>,<U03A6>);(<U03D6>,<U03A0>);(<U03D7>,<U03CF>);/ + (<U03D9>,<U03D8>);(<U03DB>,<U03DA>);(<U03DD>,<U03DC>);(<U03DF>,<U03DE>);/ + (<U03E1>,<U03E0>);(<U03E3>,<U03E2>);(<U03E5>,<U03E4>);(<U03E7>,<U03E6>);/ + (<U03E9>,<U03E8>);(<U03EB>,<U03EA>);(<U03ED>,<U03EC>);(<U03EF>,<U03EE>);/ + (<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03F9>);(<U03F3>,<U037F>);/ + (<U03F5>,<U0395>);(<U03F8>,<U03F7>);(<U03FB>,<U03FA>);(<U0430>,<U0410>);/ + (<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);(<U0434>,<U0414>);/ + (<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);(<U0438>,<U0418>);/ + (<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);(<U043C>,<U041C>);/ + (<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);(<U0440>,<U0420>);/ + (<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);(<U0444>,<U0424>);/ + (<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);(<U0448>,<U0428>);/ + (<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);(<U044C>,<U042C>);/ + (<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);(<U0450>,<U0400>);/ + (<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);(<U0454>,<U0404>);/ + (<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);(<U0458>,<U0408>);/ + (<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);(<U045C>,<U040C>);/ + (<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);(<U0461>,<U0460>);/ + (<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);(<U0469>,<U0468>);/ + (<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);(<U0471>,<U0470>);/ + (<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);(<U0479>,<U0478>);/ + (<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);(<U0481>,<U0480>);/ + (<U048B>,<U048A>);(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);/ + (<U0493>,<U0492>);(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);/ + (<U049B>,<U049A>);(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);/ + (<U04A3>,<U04A2>);(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);/ + (<U04AB>,<U04AA>);(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);/ + (<U04B3>,<U04B2>);(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);/ + (<U04BB>,<U04BA>);(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);/ + (<U04C4>,<U04C3>);(<U04C6>,<U04C5>);(<U04C8>,<U04C7>);(<U04CA>,<U04C9>);/ + (<U04CC>,<U04CB>);(<U04CE>,<U04CD>);(<U04CF>,<U04C0>);(<U04D1>,<U04D0>);/ + (<U04D3>,<U04D2>);(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);/ + (<U04DB>,<U04DA>);(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);/ + (<U04E3>,<U04E2>);(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);/ + (<U04EB>,<U04EA>);(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);/ + (<U04F3>,<U04F2>);(<U04F5>,<U04F4>);(<U04F7>,<U04F6>);(<U04F9>,<U04F8>);/ + (<U04FB>,<U04FA>);(<U04FD>,<U04FC>);(<U04FF>,<U04FE>);(<U0501>,<U0500>);/ + (<U0503>,<U0502>);(<U0505>,<U0504>);(<U0507>,<U0506>);(<U0509>,<U0508>);/ + (<U050B>,<U050A>);(<U050D>,<U050C>);(<U050F>,<U050E>);(<U0511>,<U0510>);/ + (<U0513>,<U0512>);(<U0515>,<U0514>);(<U0517>,<U0516>);(<U0519>,<U0518>);/ + (<U051B>,<U051A>);(<U051D>,<U051C>);(<U051F>,<U051E>);(<U0521>,<U0520>);/ + (<U0523>,<U0522>);(<U0525>,<U0524>);(<U0527>,<U0526>);(<U0529>,<U0528>);/ + (<U052B>,<U052A>);(<U052D>,<U052C>);(<U052F>,<U052E>);(<U0561>,<U0531>);/ + (<U0562>,<U0532>);(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);/ + (<U0566>,<U0536>);(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);/ + (<U056A>,<U053A>);(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);/ + (<U056E>,<U053E>);(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);/ + (<U0572>,<U0542>);(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);/ + (<U0576>,<U0546>);(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);/ + (<U057A>,<U054A>);(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);/ + (<U057E>,<U054E>);(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);/ + (<U0582>,<U0552>);(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);/ + (<U0586>,<U0556>);(<U10D0>,<U1C90>);(<U10D1>,<U1C91>);(<U10D2>,<U1C92>);/ + (<U10D3>,<U1C93>);(<U10D4>,<U1C94>);(<U10D5>,<U1C95>);(<U10D6>,<U1C96>);/ + (<U10D7>,<U1C97>);(<U10D8>,<U1C98>);(<U10D9>,<U1C99>);(<U10DA>,<U1C9A>);/ + (<U10DB>,<U1C9B>);(<U10DC>,<U1C9C>);(<U10DD>,<U1C9D>);(<U10DE>,<U1C9E>);/ + (<U10DF>,<U1C9F>);(<U10E0>,<U1CA0>);(<U10E1>,<U1CA1>);(<U10E2>,<U1CA2>);/ + (<U10E3>,<U1CA3>);(<U10E4>,<U1CA4>);(<U10E5>,<U1CA5>);(<U10E6>,<U1CA6>);/ + (<U10E7>,<U1CA7>);(<U10E8>,<U1CA8>);(<U10E9>,<U1CA9>);(<U10EA>,<U1CAA>);/ + (<U10EB>,<U1CAB>);(<U10EC>,<U1CAC>);(<U10ED>,<U1CAD>);(<U10EE>,<U1CAE>);/ + (<U10EF>,<U1CAF>);(<U10F0>,<U1CB0>);(<U10F1>,<U1CB1>);(<U10F2>,<U1CB2>);/ + (<U10F3>,<U1CB3>);(<U10F4>,<U1CB4>);(<U10F5>,<U1CB5>);(<U10F6>,<U1CB6>);/ + (<U10F7>,<U1CB7>);(<U10F8>,<U1CB8>);(<U10F9>,<U1CB9>);(<U10FA>,<U1CBA>);/ + (<U10FD>,<U1CBD>);(<U10FE>,<U1CBE>);(<U10FF>,<U1CBF>);(<U13F8>,<U13F0>);/ + (<U13F9>,<U13F1>);(<U13FA>,<U13F2>);(<U13FB>,<U13F3>);(<U13FC>,<U13F4>);/ + (<U13FD>,<U13F5>);(<U1C80>,<U0412>);(<U1C81>,<U0414>);(<U1C82>,<U041E>);/ + (<U1C83>,<U0421>);(<U1C84>,<U0422>);(<U1C85>,<U0422>);(<U1C86>,<U042A>);/ + (<U1C87>,<U0462>);(<U1C88>,<UA64A>);(<U1C8A>,<U1C89>);(<U1D79>,<UA77D>);/ + (<U1D7D>,<U2C63>);(<U1D8E>,<UA7C6>);(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);/ + (<U1E05>,<U1E04>);(<U1E07>,<U1E06>);(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);/ + (<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);/ + (<U1E15>,<U1E14>);(<U1E17>,<U1E16>);(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);/ + (<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);/ + (<U1E25>,<U1E24>);(<U1E27>,<U1E26>);(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);/ + (<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);/ + (<U1E35>,<U1E34>);(<U1E37>,<U1E36>);(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);/ + (<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);/ + (<U1E45>,<U1E44>);(<U1E47>,<U1E46>);(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);/ + (<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);/ + (<U1E55>,<U1E54>);(<U1E57>,<U1E56>);(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);/ + (<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);/ + (<U1E65>,<U1E64>);(<U1E67>,<U1E66>);(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);/ + (<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);/ + (<U1E75>,<U1E74>);(<U1E77>,<U1E76>);(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);/ + (<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);/ + (<U1E85>,<U1E84>);(<U1E87>,<U1E86>);(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);/ + (<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);/ + (<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);/ + (<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);/ + (<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);/ + (<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);/ + (<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);/ + (<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);/ + (<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);/ + (<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);/ + (<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);/ + (<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);/ + (<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);/ + (<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);(<U1EFB>,<U1EFA>);/ + (<U1EFD>,<U1EFC>);(<U1EFF>,<U1EFE>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);/ + (<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);/ + (<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);/ + (<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);/ + (<U1F20>,<U1F28>);(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);/ + (<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);/ + (<U1F30>,<U1F38>);(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);/ + (<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);/ + (<U1F40>,<U1F48>);(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);/ + (<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);/ + (<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);/ + (<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);/ + (<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);/ + (<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);/ + (<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);/ + (<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);/ + (<U1F80>,<U1F88>);(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);/ + (<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);/ + (<U1F90>,<U1F98>);(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);/ + (<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);/ + (<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);/ + (<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);/ + (<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);/ + (<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);/ + (<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U214E>,<U2132>);/ + (<U2170>,<U2160>);(<U2171>,<U2161>);(<U2172>,<U2162>);(<U2173>,<U2163>);/ + (<U2174>,<U2164>);(<U2175>,<U2165>);(<U2176>,<U2166>);(<U2177>,<U2167>);/ + (<U2178>,<U2168>);(<U2179>,<U2169>);(<U217A>,<U216A>);(<U217B>,<U216B>);/ + (<U217C>,<U216C>);(<U217D>,<U216D>);(<U217E>,<U216E>);(<U217F>,<U216F>);/ + (<U2184>,<U2183>);(<U24D0>,<U24B6>);(<U24D1>,<U24B7>);(<U24D2>,<U24B8>);/ + (<U24D3>,<U24B9>);(<U24D4>,<U24BA>);(<U24D5>,<U24BB>);(<U24D6>,<U24BC>);/ + (<U24D7>,<U24BD>);(<U24D8>,<U24BE>);(<U24D9>,<U24BF>);(<U24DA>,<U24C0>);/ + (<U24DB>,<U24C1>);(<U24DC>,<U24C2>);(<U24DD>,<U24C3>);(<U24DE>,<U24C4>);/ + (<U24DF>,<U24C5>);(<U24E0>,<U24C6>);(<U24E1>,<U24C7>);(<U24E2>,<U24C8>);/ + (<U24E3>,<U24C9>);(<U24E4>,<U24CA>);(<U24E5>,<U24CB>);(<U24E6>,<U24CC>);/ + (<U24E7>,<U24CD>);(<U24E8>,<U24CE>);(<U24E9>,<U24CF>);(<U2C30>,<U2C00>);/ + (<U2C31>,<U2C01>);(<U2C32>,<U2C02>);(<U2C33>,<U2C03>);(<U2C34>,<U2C04>);/ + (<U2C35>,<U2C05>);(<U2C36>,<U2C06>);(<U2C37>,<U2C07>);(<U2C38>,<U2C08>);/ + (<U2C39>,<U2C09>);(<U2C3A>,<U2C0A>);(<U2C3B>,<U2C0B>);(<U2C3C>,<U2C0C>);/ + (<U2C3D>,<U2C0D>);(<U2C3E>,<U2C0E>);(<U2C3F>,<U2C0F>);(<U2C40>,<U2C10>);/ + (<U2C41>,<U2C11>);(<U2C42>,<U2C12>);(<U2C43>,<U2C13>);(<U2C44>,<U2C14>);/ + (<U2C45>,<U2C15>);(<U2C46>,<U2C16>);(<U2C47>,<U2C17>);(<U2C48>,<U2C18>);/ + (<U2C49>,<U2C19>);(<U2C4A>,<U2C1A>);(<U2C4B>,<U2C1B>);(<U2C4C>,<U2C1C>);/ + (<U2C4D>,<U2C1D>);(<U2C4E>,<U2C1E>);(<U2C4F>,<U2C1F>);(<U2C50>,<U2C20>);/ + (<U2C51>,<U2C21>);(<U2C52>,<U2C22>);(<U2C53>,<U2C23>);(<U2C54>,<U2C24>);/ + (<U2C55>,<U2C25>);(<U2C56>,<U2C26>);(<U2C57>,<U2C27>);(<U2C58>,<U2C28>);/ + (<U2C59>,<U2C29>);(<U2C5A>,<U2C2A>);(<U2C5B>,<U2C2B>);(<U2C5C>,<U2C2C>);/ + (<U2C5D>,<U2C2D>);(<U2C5E>,<U2C2E>);(<U2C5F>,<U2C2F>);(<U2C61>,<U2C60>);/ + (<U2C65>,<U023A>);(<U2C66>,<U023E>);(<U2C68>,<U2C67>);(<U2C6A>,<U2C69>);/ + (<U2C6C>,<U2C6B>);(<U2C73>,<U2C72>);(<U2C76>,<U2C75>);(<U2C81>,<U2C80>);/ + (<U2C83>,<U2C82>);(<U2C85>,<U2C84>);(<U2C87>,<U2C86>);(<U2C89>,<U2C88>);/ + (<U2C8B>,<U2C8A>);(<U2C8D>,<U2C8C>);(<U2C8F>,<U2C8E>);(<U2C91>,<U2C90>);/ + (<U2C93>,<U2C92>);(<U2C95>,<U2C94>);(<U2C97>,<U2C96>);(<U2C99>,<U2C98>);/ + (<U2C9B>,<U2C9A>);(<U2C9D>,<U2C9C>);(<U2C9F>,<U2C9E>);(<U2CA1>,<U2CA0>);/ + (<U2CA3>,<U2CA2>);(<U2CA5>,<U2CA4>);(<U2CA7>,<U2CA6>);(<U2CA9>,<U2CA8>);/ + (<U2CAB>,<U2CAA>);(<U2CAD>,<U2CAC>);(<U2CAF>,<U2CAE>);(<U2CB1>,<U2CB0>);/ + (<U2CB3>,<U2CB2>);(<U2CB5>,<U2CB4>);(<U2CB7>,<U2CB6>);(<U2CB9>,<U2CB8>);/ + (<U2CBB>,<U2CBA>);(<U2CBD>,<U2CBC>);(<U2CBF>,<U2CBE>);(<U2CC1>,<U2CC0>);/ + (<U2CC3>,<U2CC2>);(<U2CC5>,<U2CC4>);(<U2CC7>,<U2CC6>);(<U2CC9>,<U2CC8>);/ + (<U2CCB>,<U2CCA>);(<U2CCD>,<U2CCC>);(<U2CCF>,<U2CCE>);(<U2CD1>,<U2CD0>);/ + (<U2CD3>,<U2CD2>);(<U2CD5>,<U2CD4>);(<U2CD7>,<U2CD6>);(<U2CD9>,<U2CD8>);/ + (<U2CDB>,<U2CDA>);(<U2CDD>,<U2CDC>);(<U2CDF>,<U2CDE>);(<U2CE1>,<U2CE0>);/ + (<U2CE3>,<U2CE2>);(<U2CEC>,<U2CEB>);(<U2CEE>,<U2CED>);(<U2CF3>,<U2CF2>);/ + (<U2D00>,<U10A0>);(<U2D01>,<U10A1>);(<U2D02>,<U10A2>);(<U2D03>,<U10A3>);/ + (<U2D04>,<U10A4>);(<U2D05>,<U10A5>);(<U2D06>,<U10A6>);(<U2D07>,<U10A7>);/ + (<U2D08>,<U10A8>);(<U2D09>,<U10A9>);(<U2D0A>,<U10AA>);(<U2D0B>,<U10AB>);/ + (<U2D0C>,<U10AC>);(<U2D0D>,<U10AD>);(<U2D0E>,<U10AE>);(<U2D0F>,<U10AF>);/ + (<U2D10>,<U10B0>);(<U2D11>,<U10B1>);(<U2D12>,<U10B2>);(<U2D13>,<U10B3>);/ + (<U2D14>,<U10B4>);(<U2D15>,<U10B5>);(<U2D16>,<U10B6>);(<U2D17>,<U10B7>);/ + (<U2D18>,<U10B8>);(<U2D19>,<U10B9>);(<U2D1A>,<U10BA>);(<U2D1B>,<U10BB>);/ + (<U2D1C>,<U10BC>);(<U2D1D>,<U10BD>);(<U2D1E>,<U10BE>);(<U2D1F>,<U10BF>);/ + (<U2D20>,<U10C0>);(<U2D21>,<U10C1>);(<U2D22>,<U10C2>);(<U2D23>,<U10C3>);/ + (<U2D24>,<U10C4>);(<U2D25>,<U10C5>);(<U2D27>,<U10C7>);(<U2D2D>,<U10CD>);/ + (<UA641>,<UA640>);(<UA643>,<UA642>);(<UA645>,<UA644>);(<UA647>,<UA646>);/ + (<UA649>,<UA648>);(<UA64B>,<UA64A>);(<UA64D>,<UA64C>);(<UA64F>,<UA64E>);/ + (<UA651>,<UA650>);(<UA653>,<UA652>);(<UA655>,<UA654>);(<UA657>,<UA656>);/ + (<UA659>,<UA658>);(<UA65B>,<UA65A>);(<UA65D>,<UA65C>);(<UA65F>,<UA65E>);/ + (<UA661>,<UA660>);(<UA663>,<UA662>);(<UA665>,<UA664>);(<UA667>,<UA666>);/ + (<UA669>,<UA668>);(<UA66B>,<UA66A>);(<UA66D>,<UA66C>);(<UA681>,<UA680>);/ + (<UA683>,<UA682>);(<UA685>,<UA684>);(<UA687>,<UA686>);(<UA689>,<UA688>);/ + (<UA68B>,<UA68A>);(<UA68D>,<UA68C>);(<UA68F>,<UA68E>);(<UA691>,<UA690>);/ + (<UA693>,<UA692>);(<UA695>,<UA694>);(<UA697>,<UA696>);(<UA699>,<UA698>);/ + (<UA69B>,<UA69A>);(<UA723>,<UA722>);(<UA725>,<UA724>);(<UA727>,<UA726>);/ + (<UA729>,<UA728>);(<UA72B>,<UA72A>);(<UA72D>,<UA72C>);(<UA72F>,<UA72E>);/ + (<UA733>,<UA732>);(<UA735>,<UA734>);(<UA737>,<UA736>);(<UA739>,<UA738>);/ + (<UA73B>,<UA73A>);(<UA73D>,<UA73C>);(<UA73F>,<UA73E>);(<UA741>,<UA740>);/ + (<UA743>,<UA742>);(<UA745>,<UA744>);(<UA747>,<UA746>);(<UA749>,<UA748>);/ + (<UA74B>,<UA74A>);(<UA74D>,<UA74C>);(<UA74F>,<UA74E>);(<UA751>,<UA750>);/ + (<UA753>,<UA752>);(<UA755>,<UA754>);(<UA757>,<UA756>);(<UA759>,<UA758>);/ + (<UA75B>,<UA75A>);(<UA75D>,<UA75C>);(<UA75F>,<UA75E>);(<UA761>,<UA760>);/ + (<UA763>,<UA762>);(<UA765>,<UA764>);(<UA767>,<UA766>);(<UA769>,<UA768>);/ + (<UA76B>,<UA76A>);(<UA76D>,<UA76C>);(<UA76F>,<UA76E>);(<UA77A>,<UA779>);/ + (<UA77C>,<UA77B>);(<UA77F>,<UA77E>);(<UA781>,<UA780>);(<UA783>,<UA782>);/ + (<UA785>,<UA784>);(<UA787>,<UA786>);(<UA78C>,<UA78B>);(<UA791>,<UA790>);/ + (<UA793>,<UA792>);(<UA794>,<UA7C4>);(<UA797>,<UA796>);(<UA799>,<UA798>);/ + (<UA79B>,<UA79A>);(<UA79D>,<UA79C>);(<UA79F>,<UA79E>);(<UA7A1>,<UA7A0>);/ + (<UA7A3>,<UA7A2>);(<UA7A5>,<UA7A4>);(<UA7A7>,<UA7A6>);(<UA7A9>,<UA7A8>);/ + (<UA7B5>,<UA7B4>);(<UA7B7>,<UA7B6>);(<UA7B9>,<UA7B8>);(<UA7BB>,<UA7BA>);/ + (<UA7BD>,<UA7BC>);(<UA7BF>,<UA7BE>);(<UA7C1>,<UA7C0>);(<UA7C3>,<UA7C2>);/ + (<UA7C8>,<UA7C7>);(<UA7CA>,<UA7C9>);(<UA7CD>,<UA7CC>);(<UA7D1>,<UA7D0>);/ + (<UA7D7>,<UA7D6>);(<UA7D9>,<UA7D8>);(<UA7DB>,<UA7DA>);(<UA7F6>,<UA7F5>);/ + (<UAB53>,<UA7B3>);(<UAB70>,<U13A0>);(<UAB71>,<U13A1>);(<UAB72>,<U13A2>);/ + (<UAB73>,<U13A3>);(<UAB74>,<U13A4>);(<UAB75>,<U13A5>);(<UAB76>,<U13A6>);/ + (<UAB77>,<U13A7>);(<UAB78>,<U13A8>);(<UAB79>,<U13A9>);(<UAB7A>,<U13AA>);/ + (<UAB7B>,<U13AB>);(<UAB7C>,<U13AC>);(<UAB7D>,<U13AD>);(<UAB7E>,<U13AE>);/ + (<UAB7F>,<U13AF>);(<UAB80>,<U13B0>);(<UAB81>,<U13B1>);(<UAB82>,<U13B2>);/ + (<UAB83>,<U13B3>);(<UAB84>,<U13B4>);(<UAB85>,<U13B5>);(<UAB86>,<U13B6>);/ + (<UAB87>,<U13B7>);(<UAB88>,<U13B8>);(<UAB89>,<U13B9>);(<UAB8A>,<U13BA>);/ + (<UAB8B>,<U13BB>);(<UAB8C>,<U13BC>);(<UAB8D>,<U13BD>);(<UAB8E>,<U13BE>);/ + (<UAB8F>,<U13BF>);(<UAB90>,<U13C0>);(<UAB91>,<U13C1>);(<UAB92>,<U13C2>);/ + (<UAB93>,<U13C3>);(<UAB94>,<U13C4>);(<UAB95>,<U13C5>);(<UAB96>,<U13C6>);/ + (<UAB97>,<U13C7>);(<UAB98>,<U13C8>);(<UAB99>,<U13C9>);(<UAB9A>,<U13CA>);/ + (<UAB9B>,<U13CB>);(<UAB9C>,<U13CC>);(<UAB9D>,<U13CD>);(<UAB9E>,<U13CE>);/ + (<UAB9F>,<U13CF>);(<UABA0>,<U13D0>);(<UABA1>,<U13D1>);(<UABA2>,<U13D2>);/ + (<UABA3>,<U13D3>);(<UABA4>,<U13D4>);(<UABA5>,<U13D5>);(<UABA6>,<U13D6>);/ + (<UABA7>,<U13D7>);(<UABA8>,<U13D8>);(<UABA9>,<U13D9>);(<UABAA>,<U13DA>);/ + (<UABAB>,<U13DB>);(<UABAC>,<U13DC>);(<UABAD>,<U13DD>);(<UABAE>,<U13DE>);/ + (<UABAF>,<U13DF>);(<UABB0>,<U13E0>);(<UABB1>,<U13E1>);(<UABB2>,<U13E2>);/ + (<UABB3>,<U13E3>);(<UABB4>,<U13E4>);(<UABB5>,<U13E5>);(<UABB6>,<U13E6>);/ + (<UABB7>,<U13E7>);(<UABB8>,<U13E8>);(<UABB9>,<U13E9>);(<UABBA>,<U13EA>);/ + (<UABBB>,<U13EB>);(<UABBC>,<U13EC>);(<UABBD>,<U13ED>);(<UABBE>,<U13EE>);/ + (<UABBF>,<U13EF>);(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);/ + (<UFF44>,<UFF24>);(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);/ + (<UFF48>,<UFF28>);(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);/ + (<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);/ + (<UFF50>,<UFF30>);(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);/ + (<UFF54>,<UFF34>);(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);/ + (<UFF58>,<UFF38>);(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);/ + (<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/ + (<U0001042A>,<U00010402>);(<U0001042B>,<U00010403>);/ + (<U0001042C>,<U00010404>);(<U0001042D>,<U00010405>);/ + (<U0001042E>,<U00010406>);(<U0001042F>,<U00010407>);/ + (<U00010430>,<U00010408>);(<U00010431>,<U00010409>);/ + (<U00010432>,<U0001040A>);(<U00010433>,<U0001040B>);/ + (<U00010434>,<U0001040C>);(<U00010435>,<U0001040D>);/ + (<U00010436>,<U0001040E>);(<U00010437>,<U0001040F>);/ + (<U00010438>,<U00010410>);(<U00010439>,<U00010411>);/ + (<U0001043A>,<U00010412>);(<U0001043B>,<U00010413>);/ + (<U0001043C>,<U00010414>);(<U0001043D>,<U00010415>);/ + (<U0001043E>,<U00010416>);(<U0001043F>,<U00010417>);/ + (<U00010440>,<U00010418>);(<U00010441>,<U00010419>);/ + (<U00010442>,<U0001041A>);(<U00010443>,<U0001041B>);/ + (<U00010444>,<U0001041C>);(<U00010445>,<U0001041D>);/ + (<U00010446>,<U0001041E>);(<U00010447>,<U0001041F>);/ + (<U00010448>,<U00010420>);(<U00010449>,<U00010421>);/ + (<U0001044A>,<U00010422>);(<U0001044B>,<U00010423>);/ + (<U0001044C>,<U00010424>);(<U0001044D>,<U00010425>);/ + (<U0001044E>,<U00010426>);(<U0001044F>,<U00010427>);/ + (<U000104D8>,<U000104B0>);(<U000104D9>,<U000104B1>);/ + (<U000104DA>,<U000104B2>);(<U000104DB>,<U000104B3>);/ + (<U000104DC>,<U000104B4>);(<U000104DD>,<U000104B5>);/ + (<U000104DE>,<U000104B6>);(<U000104DF>,<U000104B7>);/ + (<U000104E0>,<U000104B8>);(<U000104E1>,<U000104B9>);/ + (<U000104E2>,<U000104BA>);(<U000104E3>,<U000104BB>);/ + (<U000104E4>,<U000104BC>);(<U000104E5>,<U000104BD>);/ + (<U000104E6>,<U000104BE>);(<U000104E7>,<U000104BF>);/ + (<U000104E8>,<U000104C0>);(<U000104E9>,<U000104C1>);/ + (<U000104EA>,<U000104C2>);(<U000104EB>,<U000104C3>);/ + (<U000104EC>,<U000104C4>);(<U000104ED>,<U000104C5>);/ + (<U000104EE>,<U000104C6>);(<U000104EF>,<U000104C7>);/ + (<U000104F0>,<U000104C8>);(<U000104F1>,<U000104C9>);/ + (<U000104F2>,<U000104CA>);(<U000104F3>,<U000104CB>);/ + (<U000104F4>,<U000104CC>);(<U000104F5>,<U000104CD>);/ + (<U000104F6>,<U000104CE>);(<U000104F7>,<U000104CF>);/ + (<U000104F8>,<U000104D0>);(<U000104F9>,<U000104D1>);/ + (<U000104FA>,<U000104D2>);(<U000104FB>,<U000104D3>);/ + (<U00010597>,<U00010570>);(<U00010598>,<U00010571>);/ + (<U00010599>,<U00010572>);(<U0001059A>,<U00010573>);/ + (<U0001059B>,<U00010574>);(<U0001059C>,<U00010575>);/ + (<U0001059D>,<U00010576>);(<U0001059E>,<U00010577>);/ + (<U0001059F>,<U00010578>);(<U000105A0>,<U00010579>);/ + (<U000105A1>,<U0001057A>);(<U000105A3>,<U0001057C>);/ + (<U000105A4>,<U0001057D>);(<U000105A5>,<U0001057E>);/ + (<U000105A6>,<U0001057F>);(<U000105A7>,<U00010580>);/ + (<U000105A8>,<U00010581>);(<U000105A9>,<U00010582>);/ + (<U000105AA>,<U00010583>);(<U000105AB>,<U00010584>);/ + (<U000105AC>,<U00010585>);(<U000105AD>,<U00010586>);/ + (<U000105AE>,<U00010587>);(<U000105AF>,<U00010588>);/ + (<U000105B0>,<U00010589>);(<U000105B1>,<U0001058A>);/ + (<U000105B3>,<U0001058C>);(<U000105B4>,<U0001058D>);/ + (<U000105B5>,<U0001058E>);(<U000105B6>,<U0001058F>);/ + (<U000105B7>,<U00010590>);(<U000105B8>,<U00010591>);/ + (<U000105B9>,<U00010592>);(<U000105BB>,<U00010594>);/ + (<U000105BC>,<U00010595>);(<U00010CC0>,<U00010C80>);/ + (<U00010CC1>,<U00010C81>);(<U00010CC2>,<U00010C82>);/ + (<U00010CC3>,<U00010C83>);(<U00010CC4>,<U00010C84>);/ + (<U00010CC5>,<U00010C85>);(<U00010CC6>,<U00010C86>);/ + (<U00010CC7>,<U00010C87>);(<U00010CC8>,<U00010C88>);/ + (<U00010CC9>,<U00010C89>);(<U00010CCA>,<U00010C8A>);/ + (<U00010CCB>,<U00010C8B>);(<U00010CCC>,<U00010C8C>);/ + (<U00010CCD>,<U00010C8D>);(<U00010CCE>,<U00010C8E>);/ + (<U00010CCF>,<U00010C8F>);(<U00010CD0>,<U00010C90>);/ + (<U00010CD1>,<U00010C91>);(<U00010CD2>,<U00010C92>);/ + (<U00010CD3>,<U00010C93>);(<U00010CD4>,<U00010C94>);/ + (<U00010CD5>,<U00010C95>);(<U00010CD6>,<U00010C96>);/ + (<U00010CD7>,<U00010C97>);(<U00010CD8>,<U00010C98>);/ + (<U00010CD9>,<U00010C99>);(<U00010CDA>,<U00010C9A>);/ + (<U00010CDB>,<U00010C9B>);(<U00010CDC>,<U00010C9C>);/ + (<U00010CDD>,<U00010C9D>);(<U00010CDE>,<U00010C9E>);/ + (<U00010CDF>,<U00010C9F>);(<U00010CE0>,<U00010CA0>);/ + (<U00010CE1>,<U00010CA1>);(<U00010CE2>,<U00010CA2>);/ + (<U00010CE3>,<U00010CA3>);(<U00010CE4>,<U00010CA4>);/ + (<U00010CE5>,<U00010CA5>);(<U00010CE6>,<U00010CA6>);/ + (<U00010CE7>,<U00010CA7>);(<U00010CE8>,<U00010CA8>);/ + (<U00010CE9>,<U00010CA9>);(<U00010CEA>,<U00010CAA>);/ + (<U00010CEB>,<U00010CAB>);(<U00010CEC>,<U00010CAC>);/ + (<U00010CED>,<U00010CAD>);(<U00010CEE>,<U00010CAE>);/ + (<U00010CEF>,<U00010CAF>);(<U00010CF0>,<U00010CB0>);/ + (<U00010CF1>,<U00010CB1>);(<U00010CF2>,<U00010CB2>);/ + (<U00010D70>,<U00010D50>);(<U00010D71>,<U00010D51>);/ + (<U00010D72>,<U00010D52>);(<U00010D73>,<U00010D53>);/ + (<U00010D74>,<U00010D54>);(<U00010D75>,<U00010D55>);/ + (<U00010D76>,<U00010D56>);(<U00010D77>,<U00010D57>);/ + (<U00010D78>,<U00010D58>);(<U00010D79>,<U00010D59>);/ + (<U00010D7A>,<U00010D5A>);(<U00010D7B>,<U00010D5B>);/ + (<U00010D7C>,<U00010D5C>);(<U00010D7D>,<U00010D5D>);/ + (<U00010D7E>,<U00010D5E>);(<U00010D7F>,<U00010D5F>);/ + (<U00010D80>,<U00010D60>);(<U00010D81>,<U00010D61>);/ + (<U00010D82>,<U00010D62>);(<U00010D83>,<U00010D63>);/ + (<U00010D84>,<U00010D64>);(<U00010D85>,<U00010D65>);/ + (<U000118C0>,<U000118A0>);(<U000118C1>,<U000118A1>);/ + (<U000118C2>,<U000118A2>);(<U000118C3>,<U000118A3>);/ + (<U000118C4>,<U000118A4>);(<U000118C5>,<U000118A5>);/ + (<U000118C6>,<U000118A6>);(<U000118C7>,<U000118A7>);/ + (<U000118C8>,<U000118A8>);(<U000118C9>,<U000118A9>);/ + (<U000118CA>,<U000118AA>);(<U000118CB>,<U000118AB>);/ + (<U000118CC>,<U000118AC>);(<U000118CD>,<U000118AD>);/ + (<U000118CE>,<U000118AE>);(<U000118CF>,<U000118AF>);/ + (<U000118D0>,<U000118B0>);(<U000118D1>,<U000118B1>);/ + (<U000118D2>,<U000118B2>);(<U000118D3>,<U000118B3>);/ + (<U000118D4>,<U000118B4>);(<U000118D5>,<U000118B5>);/ + (<U000118D6>,<U000118B6>);(<U000118D7>,<U000118B7>);/ + (<U000118D8>,<U000118B8>);(<U000118D9>,<U000118B9>);/ + (<U000118DA>,<U000118BA>);(<U000118DB>,<U000118BB>);/ + (<U000118DC>,<U000118BC>);(<U000118DD>,<U000118BD>);/ + (<U000118DE>,<U000118BE>);(<U000118DF>,<U000118BF>);/ + (<U00016E60>,<U00016E40>);(<U00016E61>,<U00016E41>);/ + (<U00016E62>,<U00016E42>);(<U00016E63>,<U00016E43>);/ + (<U00016E64>,<U00016E44>);(<U00016E65>,<U00016E45>);/ + (<U00016E66>,<U00016E46>);(<U00016E67>,<U00016E47>);/ + (<U00016E68>,<U00016E48>);(<U00016E69>,<U00016E49>);/ + (<U00016E6A>,<U00016E4A>);(<U00016E6B>,<U00016E4B>);/ + (<U00016E6C>,<U00016E4C>);(<U00016E6D>,<U00016E4D>);/ + (<U00016E6E>,<U00016E4E>);(<U00016E6F>,<U00016E4F>);/ + (<U00016E70>,<U00016E50>);(<U00016E71>,<U00016E51>);/ + (<U00016E72>,<U00016E52>);(<U00016E73>,<U00016E53>);/ + (<U00016E74>,<U00016E54>);(<U00016E75>,<U00016E55>);/ + (<U00016E76>,<U00016E56>);(<U00016E77>,<U00016E57>);/ + (<U00016E78>,<U00016E58>);(<U00016E79>,<U00016E59>);/ + (<U00016E7A>,<U00016E5A>);(<U00016E7B>,<U00016E5B>);/ + (<U00016E7C>,<U00016E5C>);(<U00016E7D>,<U00016E5D>);/ + (<U00016E7E>,<U00016E5E>);(<U00016E7F>,<U00016E5F>);/ + (<U0001E922>,<U0001E900>);(<U0001E923>,<U0001E901>);/ + (<U0001E924>,<U0001E902>);(<U0001E925>,<U0001E903>);/ + (<U0001E926>,<U0001E904>);(<U0001E927>,<U0001E905>);/ + (<U0001E928>,<U0001E906>);(<U0001E929>,<U0001E907>);/ + (<U0001E92A>,<U0001E908>);(<U0001E92B>,<U0001E909>);/ + (<U0001E92C>,<U0001E90A>);(<U0001E92D>,<U0001E90B>);/ + (<U0001E92E>,<U0001E90C>);(<U0001E92F>,<U0001E90D>);/ + (<U0001E930>,<U0001E90E>);(<U0001E931>,<U0001E90F>);/ + (<U0001E932>,<U0001E910>);(<U0001E933>,<U0001E911>);/ + (<U0001E934>,<U0001E912>);(<U0001E935>,<U0001E913>);/ + (<U0001E936>,<U0001E914>);(<U0001E937>,<U0001E915>);/ + (<U0001E938>,<U0001E916>);(<U0001E939>,<U0001E917>);/ + (<U0001E93A>,<U0001E918>);(<U0001E93B>,<U0001E919>);/ + (<U0001E93C>,<U0001E91A>);(<U0001E93D>,<U0001E91B>);/ + (<U0001E93E>,<U0001E91C>);(<U0001E93F>,<U0001E91D>);/ + (<U0001E940>,<U0001E91E>);(<U0001E941>,<U0001E91F>);/ + (<U0001E942>,<U0001E920>);(<U0001E943>,<U0001E921>) tolower / (<U0041>,<U0061>);(<U0042>,<U0062>);(<U0043>,<U0063>);(<U0044>,<U0064>);/ @@ -1852,281 +1907,294 @@ tolower / (<U13E7>,<UABB7>);(<U13E8>,<UABB8>);(<U13E9>,<UABB9>);(<U13EA>,<UABBA>);/ (<U13EB>,<UABBB>);(<U13EC>,<UABBC>);(<U13ED>,<UABBD>);(<U13EE>,<UABBE>);/ (<U13EF>,<UABBF>);(<U13F0>,<U13F8>);(<U13F1>,<U13F9>);(<U13F2>,<U13FA>);/ - (<U13F3>,<U13FB>);(<U13F4>,<U13FC>);(<U13F5>,<U13FD>);(<U1C90>,<U10D0>);/ - (<U1C91>,<U10D1>);(<U1C92>,<U10D2>);(<U1C93>,<U10D3>);(<U1C94>,<U10D4>);/ - (<U1C95>,<U10D5>);(<U1C96>,<U10D6>);(<U1C97>,<U10D7>);(<U1C98>,<U10D8>);/ - (<U1C99>,<U10D9>);(<U1C9A>,<U10DA>);(<U1C9B>,<U10DB>);(<U1C9C>,<U10DC>);/ - (<U1C9D>,<U10DD>);(<U1C9E>,<U10DE>);(<U1C9F>,<U10DF>);(<U1CA0>,<U10E0>);/ - (<U1CA1>,<U10E1>);(<U1CA2>,<U10E2>);(<U1CA3>,<U10E3>);(<U1CA4>,<U10E4>);/ - (<U1CA5>,<U10E5>);(<U1CA6>,<U10E6>);(<U1CA7>,<U10E7>);(<U1CA8>,<U10E8>);/ - (<U1CA9>,<U10E9>);(<U1CAA>,<U10EA>);(<U1CAB>,<U10EB>);(<U1CAC>,<U10EC>);/ - (<U1CAD>,<U10ED>);(<U1CAE>,<U10EE>);(<U1CAF>,<U10EF>);(<U1CB0>,<U10F0>);/ - (<U1CB1>,<U10F1>);(<U1CB2>,<U10F2>);(<U1CB3>,<U10F3>);(<U1CB4>,<U10F4>);/ - (<U1CB5>,<U10F5>);(<U1CB6>,<U10F6>);(<U1CB7>,<U10F7>);(<U1CB8>,<U10F8>);/ - (<U1CB9>,<U10F9>);(<U1CBA>,<U10FA>);(<U1CBD>,<U10FD>);(<U1CBE>,<U10FE>);/ - (<U1CBF>,<U10FF>);(<U1E00>,<U1E01>);(<U1E02>,<U1E03>);(<U1E04>,<U1E05>);/ - (<U1E06>,<U1E07>);(<U1E08>,<U1E09>);(<U1E0A>,<U1E0B>);(<U1E0C>,<U1E0D>);/ - (<U1E0E>,<U1E0F>);(<U1E10>,<U1E11>);(<U1E12>,<U1E13>);(<U1E14>,<U1E15>);/ - (<U1E16>,<U1E17>);(<U1E18>,<U1E19>);(<U1E1A>,<U1E1B>);(<U1E1C>,<U1E1D>);/ - (<U1E1E>,<U1E1F>);(<U1E20>,<U1E21>);(<U1E22>,<U1E23>);(<U1E24>,<U1E25>);/ - (<U1E26>,<U1E27>);(<U1E28>,<U1E29>);(<U1E2A>,<U1E2B>);(<U1E2C>,<U1E2D>);/ - (<U1E2E>,<U1E2F>);(<U1E30>,<U1E31>);(<U1E32>,<U1E33>);(<U1E34>,<U1E35>);/ - (<U1E36>,<U1E37>);(<U1E38>,<U1E39>);(<U1E3A>,<U1E3B>);(<U1E3C>,<U1E3D>);/ - (<U1E3E>,<U1E3F>);(<U1E40>,<U1E41>);(<U1E42>,<U1E43>);(<U1E44>,<U1E45>);/ - (<U1E46>,<U1E47>);(<U1E48>,<U1E49>);(<U1E4A>,<U1E4B>);(<U1E4C>,<U1E4D>);/ - (<U1E4E>,<U1E4F>);(<U1E50>,<U1E51>);(<U1E52>,<U1E53>);(<U1E54>,<U1E55>);/ - (<U1E56>,<U1E57>);(<U1E58>,<U1E59>);(<U1E5A>,<U1E5B>);(<U1E5C>,<U1E5D>);/ - (<U1E5E>,<U1E5F>);(<U1E60>,<U1E61>);(<U1E62>,<U1E63>);(<U1E64>,<U1E65>);/ - (<U1E66>,<U1E67>);(<U1E68>,<U1E69>);(<U1E6A>,<U1E6B>);(<U1E6C>,<U1E6D>);/ - (<U1E6E>,<U1E6F>);(<U1E70>,<U1E71>);(<U1E72>,<U1E73>);(<U1E74>,<U1E75>);/ - (<U1E76>,<U1E77>);(<U1E78>,<U1E79>);(<U1E7A>,<U1E7B>);(<U1E7C>,<U1E7D>);/ - (<U1E7E>,<U1E7F>);(<U1E80>,<U1E81>);(<U1E82>,<U1E83>);(<U1E84>,<U1E85>);/ - (<U1E86>,<U1E87>);(<U1E88>,<U1E89>);(<U1E8A>,<U1E8B>);(<U1E8C>,<U1E8D>);/ - (<U1E8E>,<U1E8F>);(<U1E90>,<U1E91>);(<U1E92>,<U1E93>);(<U1E94>,<U1E95>);/ - (<U1E9E>,<U00DF>);(<U1EA0>,<U1EA1>);(<U1EA2>,<U1EA3>);(<U1EA4>,<U1EA5>);/ - (<U1EA6>,<U1EA7>);(<U1EA8>,<U1EA9>);(<U1EAA>,<U1EAB>);(<U1EAC>,<U1EAD>);/ - (<U1EAE>,<U1EAF>);(<U1EB0>,<U1EB1>);(<U1EB2>,<U1EB3>);(<U1EB4>,<U1EB5>);/ - (<U1EB6>,<U1EB7>);(<U1EB8>,<U1EB9>);(<U1EBA>,<U1EBB>);(<U1EBC>,<U1EBD>);/ - (<U1EBE>,<U1EBF>);(<U1EC0>,<U1EC1>);(<U1EC2>,<U1EC3>);(<U1EC4>,<U1EC5>);/ - (<U1EC6>,<U1EC7>);(<U1EC8>,<U1EC9>);(<U1ECA>,<U1ECB>);(<U1ECC>,<U1ECD>);/ - (<U1ECE>,<U1ECF>);(<U1ED0>,<U1ED1>);(<U1ED2>,<U1ED3>);(<U1ED4>,<U1ED5>);/ - (<U1ED6>,<U1ED7>);(<U1ED8>,<U1ED9>);(<U1EDA>,<U1EDB>);(<U1EDC>,<U1EDD>);/ - (<U1EDE>,<U1EDF>);(<U1EE0>,<U1EE1>);(<U1EE2>,<U1EE3>);(<U1EE4>,<U1EE5>);/ - (<U1EE6>,<U1EE7>);(<U1EE8>,<U1EE9>);(<U1EEA>,<U1EEB>);(<U1EEC>,<U1EED>);/ - (<U1EEE>,<U1EEF>);(<U1EF0>,<U1EF1>);(<U1EF2>,<U1EF3>);(<U1EF4>,<U1EF5>);/ - (<U1EF6>,<U1EF7>);(<U1EF8>,<U1EF9>);(<U1EFA>,<U1EFB>);(<U1EFC>,<U1EFD>);/ - (<U1EFE>,<U1EFF>);(<U1F08>,<U1F00>);(<U1F09>,<U1F01>);(<U1F0A>,<U1F02>);/ - (<U1F0B>,<U1F03>);(<U1F0C>,<U1F04>);(<U1F0D>,<U1F05>);(<U1F0E>,<U1F06>);/ - (<U1F0F>,<U1F07>);(<U1F18>,<U1F10>);(<U1F19>,<U1F11>);(<U1F1A>,<U1F12>);/ - (<U1F1B>,<U1F13>);(<U1F1C>,<U1F14>);(<U1F1D>,<U1F15>);(<U1F28>,<U1F20>);/ - (<U1F29>,<U1F21>);(<U1F2A>,<U1F22>);(<U1F2B>,<U1F23>);(<U1F2C>,<U1F24>);/ - (<U1F2D>,<U1F25>);(<U1F2E>,<U1F26>);(<U1F2F>,<U1F27>);(<U1F38>,<U1F30>);/ - (<U1F39>,<U1F31>);(<U1F3A>,<U1F32>);(<U1F3B>,<U1F33>);(<U1F3C>,<U1F34>);/ - (<U1F3D>,<U1F35>);(<U1F3E>,<U1F36>);(<U1F3F>,<U1F37>);(<U1F48>,<U1F40>);/ - (<U1F49>,<U1F41>);(<U1F4A>,<U1F42>);(<U1F4B>,<U1F43>);(<U1F4C>,<U1F44>);/ - (<U1F4D>,<U1F45>);(<U1F59>,<U1F51>);(<U1F5B>,<U1F53>);(<U1F5D>,<U1F55>);/ - (<U1F5F>,<U1F57>);(<U1F68>,<U1F60>);(<U1F69>,<U1F61>);(<U1F6A>,<U1F62>);/ - (<U1F6B>,<U1F63>);(<U1F6C>,<U1F64>);(<U1F6D>,<U1F65>);(<U1F6E>,<U1F66>);/ - (<U1F6F>,<U1F67>);(<U1F88>,<U1F80>);(<U1F89>,<U1F81>);(<U1F8A>,<U1F82>);/ - (<U1F8B>,<U1F83>);(<U1F8C>,<U1F84>);(<U1F8D>,<U1F85>);(<U1F8E>,<U1F86>);/ - (<U1F8F>,<U1F87>);(<U1F98>,<U1F90>);(<U1F99>,<U1F91>);(<U1F9A>,<U1F92>);/ - (<U1F9B>,<U1F93>);(<U1F9C>,<U1F94>);(<U1F9D>,<U1F95>);(<U1F9E>,<U1F96>);/ - (<U1F9F>,<U1F97>);(<U1FA8>,<U1FA0>);(<U1FA9>,<U1FA1>);(<U1FAA>,<U1FA2>);/ - (<U1FAB>,<U1FA3>);(<U1FAC>,<U1FA4>);(<U1FAD>,<U1FA5>);(<U1FAE>,<U1FA6>);/ - (<U1FAF>,<U1FA7>);(<U1FB8>,<U1FB0>);(<U1FB9>,<U1FB1>);(<U1FBA>,<U1F70>);/ - (<U1FBB>,<U1F71>);(<U1FBC>,<U1FB3>);(<U1FC8>,<U1F72>);(<U1FC9>,<U1F73>);/ - (<U1FCA>,<U1F74>);(<U1FCB>,<U1F75>);(<U1FCC>,<U1FC3>);(<U1FD8>,<U1FD0>);/ - (<U1FD9>,<U1FD1>);(<U1FDA>,<U1F76>);(<U1FDB>,<U1F77>);(<U1FE8>,<U1FE0>);/ - (<U1FE9>,<U1FE1>);(<U1FEA>,<U1F7A>);(<U1FEB>,<U1F7B>);(<U1FEC>,<U1FE5>);/ - (<U1FF8>,<U1F78>);(<U1FF9>,<U1F79>);(<U1FFA>,<U1F7C>);(<U1FFB>,<U1F7D>);/ - (<U1FFC>,<U1FF3>);(<U2126>,<U03C9>);(<U212A>,<U006B>);(<U212B>,<U00E5>);/ - (<U2132>,<U214E>);(<U2160>,<U2170>);(<U2161>,<U2171>);(<U2162>,<U2172>);/ - (<U2163>,<U2173>);(<U2164>,<U2174>);(<U2165>,<U2175>);(<U2166>,<U2176>);/ - (<U2167>,<U2177>);(<U2168>,<U2178>);(<U2169>,<U2179>);(<U216A>,<U217A>);/ - (<U216B>,<U217B>);(<U216C>,<U217C>);(<U216D>,<U217D>);(<U216E>,<U217E>);/ - (<U216F>,<U217F>);(<U2183>,<U2184>);(<U24B6>,<U24D0>);(<U24B7>,<U24D1>);/ - (<U24B8>,<U24D2>);(<U24B9>,<U24D3>);(<U24BA>,<U24D4>);(<U24BB>,<U24D5>);/ - (<U24BC>,<U24D6>);(<U24BD>,<U24D7>);(<U24BE>,<U24D8>);(<U24BF>,<U24D9>);/ - (<U24C0>,<U24DA>);(<U24C1>,<U24DB>);(<U24C2>,<U24DC>);(<U24C3>,<U24DD>);/ - (<U24C4>,<U24DE>);(<U24C5>,<U24DF>);(<U24C6>,<U24E0>);(<U24C7>,<U24E1>);/ - (<U24C8>,<U24E2>);(<U24C9>,<U24E3>);(<U24CA>,<U24E4>);(<U24CB>,<U24E5>);/ - (<U24CC>,<U24E6>);(<U24CD>,<U24E7>);(<U24CE>,<U24E8>);(<U24CF>,<U24E9>);/ - (<U2C00>,<U2C30>);(<U2C01>,<U2C31>);(<U2C02>,<U2C32>);(<U2C03>,<U2C33>);/ - (<U2C04>,<U2C34>);(<U2C05>,<U2C35>);(<U2C06>,<U2C36>);(<U2C07>,<U2C37>);/ - (<U2C08>,<U2C38>);(<U2C09>,<U2C39>);(<U2C0A>,<U2C3A>);(<U2C0B>,<U2C3B>);/ - (<U2C0C>,<U2C3C>);(<U2C0D>,<U2C3D>);(<U2C0E>,<U2C3E>);(<U2C0F>,<U2C3F>);/ - (<U2C10>,<U2C40>);(<U2C11>,<U2C41>);(<U2C12>,<U2C42>);(<U2C13>,<U2C43>);/ - (<U2C14>,<U2C44>);(<U2C15>,<U2C45>);(<U2C16>,<U2C46>);(<U2C17>,<U2C47>);/ - (<U2C18>,<U2C48>);(<U2C19>,<U2C49>);(<U2C1A>,<U2C4A>);(<U2C1B>,<U2C4B>);/ - (<U2C1C>,<U2C4C>);(<U2C1D>,<U2C4D>);(<U2C1E>,<U2C4E>);(<U2C1F>,<U2C4F>);/ - (<U2C20>,<U2C50>);(<U2C21>,<U2C51>);(<U2C22>,<U2C52>);(<U2C23>,<U2C53>);/ - (<U2C24>,<U2C54>);(<U2C25>,<U2C55>);(<U2C26>,<U2C56>);(<U2C27>,<U2C57>);/ - (<U2C28>,<U2C58>);(<U2C29>,<U2C59>);(<U2C2A>,<U2C5A>);(<U2C2B>,<U2C5B>);/ - (<U2C2C>,<U2C5C>);(<U2C2D>,<U2C5D>);(<U2C2E>,<U2C5E>);(<U2C2F>,<U2C5F>);/ - (<U2C60>,<U2C61>);(<U2C62>,<U026B>);(<U2C63>,<U1D7D>);(<U2C64>,<U027D>);/ - (<U2C67>,<U2C68>);(<U2C69>,<U2C6A>);(<U2C6B>,<U2C6C>);(<U2C6D>,<U0251>);/ - (<U2C6E>,<U0271>);(<U2C6F>,<U0250>);(<U2C70>,<U0252>);(<U2C72>,<U2C73>);/ - (<U2C75>,<U2C76>);(<U2C7E>,<U023F>);(<U2C7F>,<U0240>);(<U2C80>,<U2C81>);/ - (<U2C82>,<U2C83>);(<U2C84>,<U2C85>);(<U2C86>,<U2C87>);(<U2C88>,<U2C89>);/ - (<U2C8A>,<U2C8B>);(<U2C8C>,<U2C8D>);(<U2C8E>,<U2C8F>);(<U2C90>,<U2C91>);/ - (<U2C92>,<U2C93>);(<U2C94>,<U2C95>);(<U2C96>,<U2C97>);(<U2C98>,<U2C99>);/ - (<U2C9A>,<U2C9B>);(<U2C9C>,<U2C9D>);(<U2C9E>,<U2C9F>);(<U2CA0>,<U2CA1>);/ - (<U2CA2>,<U2CA3>);(<U2CA4>,<U2CA5>);(<U2CA6>,<U2CA7>);(<U2CA8>,<U2CA9>);/ - (<U2CAA>,<U2CAB>);(<U2CAC>,<U2CAD>);(<U2CAE>,<U2CAF>);(<U2CB0>,<U2CB1>);/ - (<U2CB2>,<U2CB3>);(<U2CB4>,<U2CB5>);(<U2CB6>,<U2CB7>);(<U2CB8>,<U2CB9>);/ - (<U2CBA>,<U2CBB>);(<U2CBC>,<U2CBD>);(<U2CBE>,<U2CBF>);(<U2CC0>,<U2CC1>);/ - (<U2CC2>,<U2CC3>);(<U2CC4>,<U2CC5>);(<U2CC6>,<U2CC7>);(<U2CC8>,<U2CC9>);/ - (<U2CCA>,<U2CCB>);(<U2CCC>,<U2CCD>);(<U2CCE>,<U2CCF>);(<U2CD0>,<U2CD1>);/ - (<U2CD2>,<U2CD3>);(<U2CD4>,<U2CD5>);(<U2CD6>,<U2CD7>);(<U2CD8>,<U2CD9>);/ - (<U2CDA>,<U2CDB>);(<U2CDC>,<U2CDD>);(<U2CDE>,<U2CDF>);(<U2CE0>,<U2CE1>);/ - (<U2CE2>,<U2CE3>);(<U2CEB>,<U2CEC>);(<U2CED>,<U2CEE>);(<U2CF2>,<U2CF3>);/ - (<UA640>,<UA641>);(<UA642>,<UA643>);(<UA644>,<UA645>);(<UA646>,<UA647>);/ - (<UA648>,<UA649>);(<UA64A>,<UA64B>);(<UA64C>,<UA64D>);(<UA64E>,<UA64F>);/ - (<UA650>,<UA651>);(<UA652>,<UA653>);(<UA654>,<UA655>);(<UA656>,<UA657>);/ - (<UA658>,<UA659>);(<UA65A>,<UA65B>);(<UA65C>,<UA65D>);(<UA65E>,<UA65F>);/ - (<UA660>,<UA661>);(<UA662>,<UA663>);(<UA664>,<UA665>);(<UA666>,<UA667>);/ - (<UA668>,<UA669>);(<UA66A>,<UA66B>);(<UA66C>,<UA66D>);(<UA680>,<UA681>);/ - (<UA682>,<UA683>);(<UA684>,<UA685>);(<UA686>,<UA687>);(<UA688>,<UA689>);/ - (<UA68A>,<UA68B>);(<UA68C>,<UA68D>);(<UA68E>,<UA68F>);(<UA690>,<UA691>);/ - (<UA692>,<UA693>);(<UA694>,<UA695>);(<UA696>,<UA697>);(<UA698>,<UA699>);/ - (<UA69A>,<UA69B>);(<UA722>,<UA723>);(<UA724>,<UA725>);(<UA726>,<UA727>);/ - (<UA728>,<UA729>);(<UA72A>,<UA72B>);(<UA72C>,<UA72D>);(<UA72E>,<UA72F>);/ - (<UA732>,<UA733>);(<UA734>,<UA735>);(<UA736>,<UA737>);(<UA738>,<UA739>);/ - (<UA73A>,<UA73B>);(<UA73C>,<UA73D>);(<UA73E>,<UA73F>);(<UA740>,<UA741>);/ - (<UA742>,<UA743>);(<UA744>,<UA745>);(<UA746>,<UA747>);(<UA748>,<UA749>);/ - (<UA74A>,<UA74B>);(<UA74C>,<UA74D>);(<UA74E>,<UA74F>);(<UA750>,<UA751>);/ - (<UA752>,<UA753>);(<UA754>,<UA755>);(<UA756>,<UA757>);(<UA758>,<UA759>);/ - (<UA75A>,<UA75B>);(<UA75C>,<UA75D>);(<UA75E>,<UA75F>);(<UA760>,<UA761>);/ - (<UA762>,<UA763>);(<UA764>,<UA765>);(<UA766>,<UA767>);(<UA768>,<UA769>);/ - (<UA76A>,<UA76B>);(<UA76C>,<UA76D>);(<UA76E>,<UA76F>);(<UA779>,<UA77A>);/ - (<UA77B>,<UA77C>);(<UA77D>,<U1D79>);(<UA77E>,<UA77F>);(<UA780>,<UA781>);/ - (<UA782>,<UA783>);(<UA784>,<UA785>);(<UA786>,<UA787>);(<UA78B>,<UA78C>);/ - (<UA78D>,<U0265>);(<UA790>,<UA791>);(<UA792>,<UA793>);(<UA796>,<UA797>);/ - (<UA798>,<UA799>);(<UA79A>,<UA79B>);(<UA79C>,<UA79D>);(<UA79E>,<UA79F>);/ - (<UA7A0>,<UA7A1>);(<UA7A2>,<UA7A3>);(<UA7A4>,<UA7A5>);(<UA7A6>,<UA7A7>);/ - (<UA7A8>,<UA7A9>);(<UA7AA>,<U0266>);(<UA7AB>,<U025C>);(<UA7AC>,<U0261>);/ - (<UA7AD>,<U026C>);(<UA7AE>,<U026A>);(<UA7B0>,<U029E>);(<UA7B1>,<U0287>);/ - (<UA7B2>,<U029D>);(<UA7B3>,<UAB53>);(<UA7B4>,<UA7B5>);(<UA7B6>,<UA7B7>);/ - (<UA7B8>,<UA7B9>);(<UA7BA>,<UA7BB>);(<UA7BC>,<UA7BD>);(<UA7BE>,<UA7BF>);/ - (<UA7C0>,<UA7C1>);(<UA7C2>,<UA7C3>);(<UA7C4>,<UA794>);(<UA7C5>,<U0282>);/ - (<UA7C6>,<U1D8E>);(<UA7C7>,<UA7C8>);(<UA7C9>,<UA7CA>);(<UA7D0>,<UA7D1>);/ - (<UA7D6>,<UA7D7>);(<UA7D8>,<UA7D9>);(<UA7F5>,<UA7F6>);(<UFF21>,<UFF41>);/ - (<UFF22>,<UFF42>);(<UFF23>,<UFF43>);(<UFF24>,<UFF44>);(<UFF25>,<UFF45>);/ - (<UFF26>,<UFF46>);(<UFF27>,<UFF47>);(<UFF28>,<UFF48>);(<UFF29>,<UFF49>);/ - (<UFF2A>,<UFF4A>);(<UFF2B>,<UFF4B>);(<UFF2C>,<UFF4C>);(<UFF2D>,<UFF4D>);/ - (<UFF2E>,<UFF4E>);(<UFF2F>,<UFF4F>);(<UFF30>,<UFF50>);(<UFF31>,<UFF51>);/ - (<UFF32>,<UFF52>);(<UFF33>,<UFF53>);(<UFF34>,<UFF54>);(<UFF35>,<UFF55>);/ - (<UFF36>,<UFF56>);(<UFF37>,<UFF57>);(<UFF38>,<UFF58>);(<UFF39>,<UFF59>);/ - (<UFF3A>,<UFF5A>);(<U00010400>,<U00010428>);(<U00010401>,<U00010429>);/ - (<U00010402>,<U0001042A>);(<U00010403>,<U0001042B>);/ - (<U00010404>,<U0001042C>);(<U00010405>,<U0001042D>);/ - (<U00010406>,<U0001042E>);(<U00010407>,<U0001042F>);/ - (<U00010408>,<U00010430>);(<U00010409>,<U00010431>);/ - (<U0001040A>,<U00010432>);(<U0001040B>,<U00010433>);/ - (<U0001040C>,<U00010434>);(<U0001040D>,<U00010435>);/ - (<U0001040E>,<U00010436>);(<U0001040F>,<U00010437>);/ - (<U00010410>,<U00010438>);(<U00010411>,<U00010439>);/ - (<U00010412>,<U0001043A>);(<U00010413>,<U0001043B>);/ - (<U00010414>,<U0001043C>);(<U00010415>,<U0001043D>);/ - (<U00010416>,<U0001043E>);(<U00010417>,<U0001043F>);/ - (<U00010418>,<U00010440>);(<U00010419>,<U00010441>);/ - (<U0001041A>,<U00010442>);(<U0001041B>,<U00010443>);/ - (<U0001041C>,<U00010444>);(<U0001041D>,<U00010445>);/ - (<U0001041E>,<U00010446>);(<U0001041F>,<U00010447>);/ - (<U00010420>,<U00010448>);(<U00010421>,<U00010449>);/ - (<U00010422>,<U0001044A>);(<U00010423>,<U0001044B>);/ - (<U00010424>,<U0001044C>);(<U00010425>,<U0001044D>);/ - (<U00010426>,<U0001044E>);(<U00010427>,<U0001044F>);/ - (<U000104B0>,<U000104D8>);(<U000104B1>,<U000104D9>);/ - (<U000104B2>,<U000104DA>);(<U000104B3>,<U000104DB>);/ - (<U000104B4>,<U000104DC>);(<U000104B5>,<U000104DD>);/ - (<U000104B6>,<U000104DE>);(<U000104B7>,<U000104DF>);/ - (<U000104B8>,<U000104E0>);(<U000104B9>,<U000104E1>);/ - (<U000104BA>,<U000104E2>);(<U000104BB>,<U000104E3>);/ - (<U000104BC>,<U000104E4>);(<U000104BD>,<U000104E5>);/ - (<U000104BE>,<U000104E6>);(<U000104BF>,<U000104E7>);/ - (<U000104C0>,<U000104E8>);(<U000104C1>,<U000104E9>);/ - (<U000104C2>,<U000104EA>);(<U000104C3>,<U000104EB>);/ - (<U000104C4>,<U000104EC>);(<U000104C5>,<U000104ED>);/ - (<U000104C6>,<U000104EE>);(<U000104C7>,<U000104EF>);/ - (<U000104C8>,<U000104F0>);(<U000104C9>,<U000104F1>);/ - (<U000104CA>,<U000104F2>);(<U000104CB>,<U000104F3>);/ - (<U000104CC>,<U000104F4>);(<U000104CD>,<U000104F5>);/ - (<U000104CE>,<U000104F6>);(<U000104CF>,<U000104F7>);/ - (<U000104D0>,<U000104F8>);(<U000104D1>,<U000104F9>);/ - (<U000104D2>,<U000104FA>);(<U000104D3>,<U000104FB>);/ - (<U00010570>,<U00010597>);(<U00010571>,<U00010598>);/ - (<U00010572>,<U00010599>);(<U00010573>,<U0001059A>);/ - (<U00010574>,<U0001059B>);(<U00010575>,<U0001059C>);/ - (<U00010576>,<U0001059D>);(<U00010577>,<U0001059E>);/ - (<U00010578>,<U0001059F>);(<U00010579>,<U000105A0>);/ - (<U0001057A>,<U000105A1>);(<U0001057C>,<U000105A3>);/ - (<U0001057D>,<U000105A4>);(<U0001057E>,<U000105A5>);/ - (<U0001057F>,<U000105A6>);(<U00010580>,<U000105A7>);/ - (<U00010581>,<U000105A8>);(<U00010582>,<U000105A9>);/ - (<U00010583>,<U000105AA>);(<U00010584>,<U000105AB>);/ - (<U00010585>,<U000105AC>);(<U00010586>,<U000105AD>);/ - (<U00010587>,<U000105AE>);(<U00010588>,<U000105AF>);/ - (<U00010589>,<U000105B0>);(<U0001058A>,<U000105B1>);/ - (<U0001058C>,<U000105B3>);(<U0001058D>,<U000105B4>);/ - (<U0001058E>,<U000105B5>);(<U0001058F>,<U000105B6>);/ - (<U00010590>,<U000105B7>);(<U00010591>,<U000105B8>);/ - (<U00010592>,<U000105B9>);(<U00010594>,<U000105BB>);/ - (<U00010595>,<U000105BC>);(<U00010C80>,<U00010CC0>);/ - (<U00010C81>,<U00010CC1>);(<U00010C82>,<U00010CC2>);/ - (<U00010C83>,<U00010CC3>);(<U00010C84>,<U00010CC4>);/ - (<U00010C85>,<U00010CC5>);(<U00010C86>,<U00010CC6>);/ - (<U00010C87>,<U00010CC7>);(<U00010C88>,<U00010CC8>);/ - (<U00010C89>,<U00010CC9>);(<U00010C8A>,<U00010CCA>);/ - (<U00010C8B>,<U00010CCB>);(<U00010C8C>,<U00010CCC>);/ - (<U00010C8D>,<U00010CCD>);(<U00010C8E>,<U00010CCE>);/ - (<U00010C8F>,<U00010CCF>);(<U00010C90>,<U00010CD0>);/ - (<U00010C91>,<U00010CD1>);(<U00010C92>,<U00010CD2>);/ - (<U00010C93>,<U00010CD3>);(<U00010C94>,<U00010CD4>);/ - (<U00010C95>,<U00010CD5>);(<U00010C96>,<U00010CD6>);/ - (<U00010C97>,<U00010CD7>);(<U00010C98>,<U00010CD8>);/ - (<U00010C99>,<U00010CD9>);(<U00010C9A>,<U00010CDA>);/ - (<U00010C9B>,<U00010CDB>);(<U00010C9C>,<U00010CDC>);/ - (<U00010C9D>,<U00010CDD>);(<U00010C9E>,<U00010CDE>);/ - (<U00010C9F>,<U00010CDF>);(<U00010CA0>,<U00010CE0>);/ - (<U00010CA1>,<U00010CE1>);(<U00010CA2>,<U00010CE2>);/ - (<U00010CA3>,<U00010CE3>);(<U00010CA4>,<U00010CE4>);/ - (<U00010CA5>,<U00010CE5>);(<U00010CA6>,<U00010CE6>);/ - (<U00010CA7>,<U00010CE7>);(<U00010CA8>,<U00010CE8>);/ - (<U00010CA9>,<U00010CE9>);(<U00010CAA>,<U00010CEA>);/ - (<U00010CAB>,<U00010CEB>);(<U00010CAC>,<U00010CEC>);/ - (<U00010CAD>,<U00010CED>);(<U00010CAE>,<U00010CEE>);/ - (<U00010CAF>,<U00010CEF>);(<U00010CB0>,<U00010CF0>);/ - (<U00010CB1>,<U00010CF1>);(<U00010CB2>,<U00010CF2>);/ - (<U000118A0>,<U000118C0>);(<U000118A1>,<U000118C1>);/ - (<U000118A2>,<U000118C2>);(<U000118A3>,<U000118C3>);/ - (<U000118A4>,<U000118C4>);(<U000118A5>,<U000118C5>);/ - (<U000118A6>,<U000118C6>);(<U000118A7>,<U000118C7>);/ - (<U000118A8>,<U000118C8>);(<U000118A9>,<U000118C9>);/ - (<U000118AA>,<U000118CA>);(<U000118AB>,<U000118CB>);/ - (<U000118AC>,<U000118CC>);(<U000118AD>,<U000118CD>);/ - (<U000118AE>,<U000118CE>);(<U000118AF>,<U000118CF>);/ - (<U000118B0>,<U000118D0>);(<U000118B1>,<U000118D1>);/ - (<U000118B2>,<U000118D2>);(<U000118B3>,<U000118D3>);/ - (<U000118B4>,<U000118D4>);(<U000118B5>,<U000118D5>);/ - (<U000118B6>,<U000118D6>);(<U000118B7>,<U000118D7>);/ - (<U000118B8>,<U000118D8>);(<U000118B9>,<U000118D9>);/ - (<U000118BA>,<U000118DA>);(<U000118BB>,<U000118DB>);/ - (<U000118BC>,<U000118DC>);(<U000118BD>,<U000118DD>);/ - (<U000118BE>,<U000118DE>);(<U000118BF>,<U000118DF>);/ - (<U00016E40>,<U00016E60>);(<U00016E41>,<U00016E61>);/ - (<U00016E42>,<U00016E62>);(<U00016E43>,<U00016E63>);/ - (<U00016E44>,<U00016E64>);(<U00016E45>,<U00016E65>);/ - (<U00016E46>,<U00016E66>);(<U00016E47>,<U00016E67>);/ - (<U00016E48>,<U00016E68>);(<U00016E49>,<U00016E69>);/ - (<U00016E4A>,<U00016E6A>);(<U00016E4B>,<U00016E6B>);/ - (<U00016E4C>,<U00016E6C>);(<U00016E4D>,<U00016E6D>);/ - (<U00016E4E>,<U00016E6E>);(<U00016E4F>,<U00016E6F>);/ - (<U00016E50>,<U00016E70>);(<U00016E51>,<U00016E71>);/ - (<U00016E52>,<U00016E72>);(<U00016E53>,<U00016E73>);/ - (<U00016E54>,<U00016E74>);(<U00016E55>,<U00016E75>);/ - (<U00016E56>,<U00016E76>);(<U00016E57>,<U00016E77>);/ - (<U00016E58>,<U00016E78>);(<U00016E59>,<U00016E79>);/ - (<U00016E5A>,<U00016E7A>);(<U00016E5B>,<U00016E7B>);/ - (<U00016E5C>,<U00016E7C>);(<U00016E5D>,<U00016E7D>);/ - (<U00016E5E>,<U00016E7E>);(<U00016E5F>,<U00016E7F>);/ - (<U0001E900>,<U0001E922>);(<U0001E901>,<U0001E923>);/ - (<U0001E902>,<U0001E924>);(<U0001E903>,<U0001E925>);/ - (<U0001E904>,<U0001E926>);(<U0001E905>,<U0001E927>);/ - (<U0001E906>,<U0001E928>);(<U0001E907>,<U0001E929>);/ - (<U0001E908>,<U0001E92A>);(<U0001E909>,<U0001E92B>);/ - (<U0001E90A>,<U0001E92C>);(<U0001E90B>,<U0001E92D>);/ - (<U0001E90C>,<U0001E92E>);(<U0001E90D>,<U0001E92F>);/ - (<U0001E90E>,<U0001E930>);(<U0001E90F>,<U0001E931>);/ - (<U0001E910>,<U0001E932>);(<U0001E911>,<U0001E933>);/ - (<U0001E912>,<U0001E934>);(<U0001E913>,<U0001E935>);/ - (<U0001E914>,<U0001E936>);(<U0001E915>,<U0001E937>);/ - (<U0001E916>,<U0001E938>);(<U0001E917>,<U0001E939>);/ - (<U0001E918>,<U0001E93A>);(<U0001E919>,<U0001E93B>);/ - (<U0001E91A>,<U0001E93C>);(<U0001E91B>,<U0001E93D>);/ - (<U0001E91C>,<U0001E93E>);(<U0001E91D>,<U0001E93F>);/ - (<U0001E91E>,<U0001E940>);(<U0001E91F>,<U0001E941>);/ - (<U0001E920>,<U0001E942>);(<U0001E921>,<U0001E943>) + (<U13F3>,<U13FB>);(<U13F4>,<U13FC>);(<U13F5>,<U13FD>);(<U1C89>,<U1C8A>);/ + (<U1C90>,<U10D0>);(<U1C91>,<U10D1>);(<U1C92>,<U10D2>);(<U1C93>,<U10D3>);/ + (<U1C94>,<U10D4>);(<U1C95>,<U10D5>);(<U1C96>,<U10D6>);(<U1C97>,<U10D7>);/ + (<U1C98>,<U10D8>);(<U1C99>,<U10D9>);(<U1C9A>,<U10DA>);(<U1C9B>,<U10DB>);/ + (<U1C9C>,<U10DC>);(<U1C9D>,<U10DD>);(<U1C9E>,<U10DE>);(<U1C9F>,<U10DF>);/ + (<U1CA0>,<U10E0>);(<U1CA1>,<U10E1>);(<U1CA2>,<U10E2>);(<U1CA3>,<U10E3>);/ + (<U1CA4>,<U10E4>);(<U1CA5>,<U10E5>);(<U1CA6>,<U10E6>);(<U1CA7>,<U10E7>);/ + (<U1CA8>,<U10E8>);(<U1CA9>,<U10E9>);(<U1CAA>,<U10EA>);(<U1CAB>,<U10EB>);/ + (<U1CAC>,<U10EC>);(<U1CAD>,<U10ED>);(<U1CAE>,<U10EE>);(<U1CAF>,<U10EF>);/ + (<U1CB0>,<U10F0>);(<U1CB1>,<U10F1>);(<U1CB2>,<U10F2>);(<U1CB3>,<U10F3>);/ + (<U1CB4>,<U10F4>);(<U1CB5>,<U10F5>);(<U1CB6>,<U10F6>);(<U1CB7>,<U10F7>);/ + (<U1CB8>,<U10F8>);(<U1CB9>,<U10F9>);(<U1CBA>,<U10FA>);(<U1CBD>,<U10FD>);/ + (<U1CBE>,<U10FE>);(<U1CBF>,<U10FF>);(<U1E00>,<U1E01>);(<U1E02>,<U1E03>);/ + (<U1E04>,<U1E05>);(<U1E06>,<U1E07>);(<U1E08>,<U1E09>);(<U1E0A>,<U1E0B>);/ + (<U1E0C>,<U1E0D>);(<U1E0E>,<U1E0F>);(<U1E10>,<U1E11>);(<U1E12>,<U1E13>);/ + (<U1E14>,<U1E15>);(<U1E16>,<U1E17>);(<U1E18>,<U1E19>);(<U1E1A>,<U1E1B>);/ + (<U1E1C>,<U1E1D>);(<U1E1E>,<U1E1F>);(<U1E20>,<U1E21>);(<U1E22>,<U1E23>);/ + (<U1E24>,<U1E25>);(<U1E26>,<U1E27>);(<U1E28>,<U1E29>);(<U1E2A>,<U1E2B>);/ + (<U1E2C>,<U1E2D>);(<U1E2E>,<U1E2F>);(<U1E30>,<U1E31>);(<U1E32>,<U1E33>);/ + (<U1E34>,<U1E35>);(<U1E36>,<U1E37>);(<U1E38>,<U1E39>);(<U1E3A>,<U1E3B>);/ + (<U1E3C>,<U1E3D>);(<U1E3E>,<U1E3F>);(<U1E40>,<U1E41>);(<U1E42>,<U1E43>);/ + (<U1E44>,<U1E45>);(<U1E46>,<U1E47>);(<U1E48>,<U1E49>);(<U1E4A>,<U1E4B>);/ + (<U1E4C>,<U1E4D>);(<U1E4E>,<U1E4F>);(<U1E50>,<U1E51>);(<U1E52>,<U1E53>);/ + (<U1E54>,<U1E55>);(<U1E56>,<U1E57>);(<U1E58>,<U1E59>);(<U1E5A>,<U1E5B>);/ + (<U1E5C>,<U1E5D>);(<U1E5E>,<U1E5F>);(<U1E60>,<U1E61>);(<U1E62>,<U1E63>);/ + (<U1E64>,<U1E65>);(<U1E66>,<U1E67>);(<U1E68>,<U1E69>);(<U1E6A>,<U1E6B>);/ + (<U1E6C>,<U1E6D>);(<U1E6E>,<U1E6F>);(<U1E70>,<U1E71>);(<U1E72>,<U1E73>);/ + (<U1E74>,<U1E75>);(<U1E76>,<U1E77>);(<U1E78>,<U1E79>);(<U1E7A>,<U1E7B>);/ + (<U1E7C>,<U1E7D>);(<U1E7E>,<U1E7F>);(<U1E80>,<U1E81>);(<U1E82>,<U1E83>);/ + (<U1E84>,<U1E85>);(<U1E86>,<U1E87>);(<U1E88>,<U1E89>);(<U1E8A>,<U1E8B>);/ + (<U1E8C>,<U1E8D>);(<U1E8E>,<U1E8F>);(<U1E90>,<U1E91>);(<U1E92>,<U1E93>);/ + (<U1E94>,<U1E95>);(<U1E9E>,<U00DF>);(<U1EA0>,<U1EA1>);(<U1EA2>,<U1EA3>);/ + (<U1EA4>,<U1EA5>);(<U1EA6>,<U1EA7>);(<U1EA8>,<U1EA9>);(<U1EAA>,<U1EAB>);/ + (<U1EAC>,<U1EAD>);(<U1EAE>,<U1EAF>);(<U1EB0>,<U1EB1>);(<U1EB2>,<U1EB3>);/ + (<U1EB4>,<U1EB5>);(<U1EB6>,<U1EB7>);(<U1EB8>,<U1EB9>);(<U1EBA>,<U1EBB>);/ + (<U1EBC>,<U1EBD>);(<U1EBE>,<U1EBF>);(<U1EC0>,<U1EC1>);(<U1EC2>,<U1EC3>);/ + (<U1EC4>,<U1EC5>);(<U1EC6>,<U1EC7>);(<U1EC8>,<U1EC9>);(<U1ECA>,<U1ECB>);/ + (<U1ECC>,<U1ECD>);(<U1ECE>,<U1ECF>);(<U1ED0>,<U1ED1>);(<U1ED2>,<U1ED3>);/ + (<U1ED4>,<U1ED5>);(<U1ED6>,<U1ED7>);(<U1ED8>,<U1ED9>);(<U1EDA>,<U1EDB>);/ + (<U1EDC>,<U1EDD>);(<U1EDE>,<U1EDF>);(<U1EE0>,<U1EE1>);(<U1EE2>,<U1EE3>);/ + (<U1EE4>,<U1EE5>);(<U1EE6>,<U1EE7>);(<U1EE8>,<U1EE9>);(<U1EEA>,<U1EEB>);/ + (<U1EEC>,<U1EED>);(<U1EEE>,<U1EEF>);(<U1EF0>,<U1EF1>);(<U1EF2>,<U1EF3>);/ + (<U1EF4>,<U1EF5>);(<U1EF6>,<U1EF7>);(<U1EF8>,<U1EF9>);(<U1EFA>,<U1EFB>);/ + (<U1EFC>,<U1EFD>);(<U1EFE>,<U1EFF>);(<U1F08>,<U1F00>);(<U1F09>,<U1F01>);/ + (<U1F0A>,<U1F02>);(<U1F0B>,<U1F03>);(<U1F0C>,<U1F04>);(<U1F0D>,<U1F05>);/ + (<U1F0E>,<U1F06>);(<U1F0F>,<U1F07>);(<U1F18>,<U1F10>);(<U1F19>,<U1F11>);/ + (<U1F1A>,<U1F12>);(<U1F1B>,<U1F13>);(<U1F1C>,<U1F14>);(<U1F1D>,<U1F15>);/ + (<U1F28>,<U1F20>);(<U1F29>,<U1F21>);(<U1F2A>,<U1F22>);(<U1F2B>,<U1F23>);/ + (<U1F2C>,<U1F24>);(<U1F2D>,<U1F25>);(<U1F2E>,<U1F26>);(<U1F2F>,<U1F27>);/ + (<U1F38>,<U1F30>);(<U1F39>,<U1F31>);(<U1F3A>,<U1F32>);(<U1F3B>,<U1F33>);/ + (<U1F3C>,<U1F34>);(<U1F3D>,<U1F35>);(<U1F3E>,<U1F36>);(<U1F3F>,<U1F37>);/ + (<U1F48>,<U1F40>);(<U1F49>,<U1F41>);(<U1F4A>,<U1F42>);(<U1F4B>,<U1F43>);/ + (<U1F4C>,<U1F44>);(<U1F4D>,<U1F45>);(<U1F59>,<U1F51>);(<U1F5B>,<U1F53>);/ + (<U1F5D>,<U1F55>);(<U1F5F>,<U1F57>);(<U1F68>,<U1F60>);(<U1F69>,<U1F61>);/ + (<U1F6A>,<U1F62>);(<U1F6B>,<U1F63>);(<U1F6C>,<U1F64>);(<U1F6D>,<U1F65>);/ + (<U1F6E>,<U1F66>);(<U1F6F>,<U1F67>);(<U1F88>,<U1F80>);(<U1F89>,<U1F81>);/ + (<U1F8A>,<U1F82>);(<U1F8B>,<U1F83>);(<U1F8C>,<U1F84>);(<U1F8D>,<U1F85>);/ + (<U1F8E>,<U1F86>);(<U1F8F>,<U1F87>);(<U1F98>,<U1F90>);(<U1F99>,<U1F91>);/ + (<U1F9A>,<U1F92>);(<U1F9B>,<U1F93>);(<U1F9C>,<U1F94>);(<U1F9D>,<U1F95>);/ + (<U1F9E>,<U1F96>);(<U1F9F>,<U1F97>);(<U1FA8>,<U1FA0>);(<U1FA9>,<U1FA1>);/ + (<U1FAA>,<U1FA2>);(<U1FAB>,<U1FA3>);(<U1FAC>,<U1FA4>);(<U1FAD>,<U1FA5>);/ + (<U1FAE>,<U1FA6>);(<U1FAF>,<U1FA7>);(<U1FB8>,<U1FB0>);(<U1FB9>,<U1FB1>);/ + (<U1FBA>,<U1F70>);(<U1FBB>,<U1F71>);(<U1FBC>,<U1FB3>);(<U1FC8>,<U1F72>);/ + (<U1FC9>,<U1F73>);(<U1FCA>,<U1F74>);(<U1FCB>,<U1F75>);(<U1FCC>,<U1FC3>);/ + (<U1FD8>,<U1FD0>);(<U1FD9>,<U1FD1>);(<U1FDA>,<U1F76>);(<U1FDB>,<U1F77>);/ + (<U1FE8>,<U1FE0>);(<U1FE9>,<U1FE1>);(<U1FEA>,<U1F7A>);(<U1FEB>,<U1F7B>);/ + (<U1FEC>,<U1FE5>);(<U1FF8>,<U1F78>);(<U1FF9>,<U1F79>);(<U1FFA>,<U1F7C>);/ + (<U1FFB>,<U1F7D>);(<U1FFC>,<U1FF3>);(<U2126>,<U03C9>);(<U212A>,<U006B>);/ + (<U212B>,<U00E5>);(<U2132>,<U214E>);(<U2160>,<U2170>);(<U2161>,<U2171>);/ + (<U2162>,<U2172>);(<U2163>,<U2173>);(<U2164>,<U2174>);(<U2165>,<U2175>);/ + (<U2166>,<U2176>);(<U2167>,<U2177>);(<U2168>,<U2178>);(<U2169>,<U2179>);/ + (<U216A>,<U217A>);(<U216B>,<U217B>);(<U216C>,<U217C>);(<U216D>,<U217D>);/ + (<U216E>,<U217E>);(<U216F>,<U217F>);(<U2183>,<U2184>);(<U24B6>,<U24D0>);/ + (<U24B7>,<U24D1>);(<U24B8>,<U24D2>);(<U24B9>,<U24D3>);(<U24BA>,<U24D4>);/ + (<U24BB>,<U24D5>);(<U24BC>,<U24D6>);(<U24BD>,<U24D7>);(<U24BE>,<U24D8>);/ + (<U24BF>,<U24D9>);(<U24C0>,<U24DA>);(<U24C1>,<U24DB>);(<U24C2>,<U24DC>);/ + (<U24C3>,<U24DD>);(<U24C4>,<U24DE>);(<U24C5>,<U24DF>);(<U24C6>,<U24E0>);/ + (<U24C7>,<U24E1>);(<U24C8>,<U24E2>);(<U24C9>,<U24E3>);(<U24CA>,<U24E4>);/ + (<U24CB>,<U24E5>);(<U24CC>,<U24E6>);(<U24CD>,<U24E7>);(<U24CE>,<U24E8>);/ + (<U24CF>,<U24E9>);(<U2C00>,<U2C30>);(<U2C01>,<U2C31>);(<U2C02>,<U2C32>);/ + (<U2C03>,<U2C33>);(<U2C04>,<U2C34>);(<U2C05>,<U2C35>);(<U2C06>,<U2C36>);/ + (<U2C07>,<U2C37>);(<U2C08>,<U2C38>);(<U2C09>,<U2C39>);(<U2C0A>,<U2C3A>);/ + (<U2C0B>,<U2C3B>);(<U2C0C>,<U2C3C>);(<U2C0D>,<U2C3D>);(<U2C0E>,<U2C3E>);/ + (<U2C0F>,<U2C3F>);(<U2C10>,<U2C40>);(<U2C11>,<U2C41>);(<U2C12>,<U2C42>);/ + (<U2C13>,<U2C43>);(<U2C14>,<U2C44>);(<U2C15>,<U2C45>);(<U2C16>,<U2C46>);/ + (<U2C17>,<U2C47>);(<U2C18>,<U2C48>);(<U2C19>,<U2C49>);(<U2C1A>,<U2C4A>);/ + (<U2C1B>,<U2C4B>);(<U2C1C>,<U2C4C>);(<U2C1D>,<U2C4D>);(<U2C1E>,<U2C4E>);/ + (<U2C1F>,<U2C4F>);(<U2C20>,<U2C50>);(<U2C21>,<U2C51>);(<U2C22>,<U2C52>);/ + (<U2C23>,<U2C53>);(<U2C24>,<U2C54>);(<U2C25>,<U2C55>);(<U2C26>,<U2C56>);/ + (<U2C27>,<U2C57>);(<U2C28>,<U2C58>);(<U2C29>,<U2C59>);(<U2C2A>,<U2C5A>);/ + (<U2C2B>,<U2C5B>);(<U2C2C>,<U2C5C>);(<U2C2D>,<U2C5D>);(<U2C2E>,<U2C5E>);/ + (<U2C2F>,<U2C5F>);(<U2C60>,<U2C61>);(<U2C62>,<U026B>);(<U2C63>,<U1D7D>);/ + (<U2C64>,<U027D>);(<U2C67>,<U2C68>);(<U2C69>,<U2C6A>);(<U2C6B>,<U2C6C>);/ + (<U2C6D>,<U0251>);(<U2C6E>,<U0271>);(<U2C6F>,<U0250>);(<U2C70>,<U0252>);/ + (<U2C72>,<U2C73>);(<U2C75>,<U2C76>);(<U2C7E>,<U023F>);(<U2C7F>,<U0240>);/ + (<U2C80>,<U2C81>);(<U2C82>,<U2C83>);(<U2C84>,<U2C85>);(<U2C86>,<U2C87>);/ + (<U2C88>,<U2C89>);(<U2C8A>,<U2C8B>);(<U2C8C>,<U2C8D>);(<U2C8E>,<U2C8F>);/ + (<U2C90>,<U2C91>);(<U2C92>,<U2C93>);(<U2C94>,<U2C95>);(<U2C96>,<U2C97>);/ + (<U2C98>,<U2C99>);(<U2C9A>,<U2C9B>);(<U2C9C>,<U2C9D>);(<U2C9E>,<U2C9F>);/ + (<U2CA0>,<U2CA1>);(<U2CA2>,<U2CA3>);(<U2CA4>,<U2CA5>);(<U2CA6>,<U2CA7>);/ + (<U2CA8>,<U2CA9>);(<U2CAA>,<U2CAB>);(<U2CAC>,<U2CAD>);(<U2CAE>,<U2CAF>);/ + (<U2CB0>,<U2CB1>);(<U2CB2>,<U2CB3>);(<U2CB4>,<U2CB5>);(<U2CB6>,<U2CB7>);/ + (<U2CB8>,<U2CB9>);(<U2CBA>,<U2CBB>);(<U2CBC>,<U2CBD>);(<U2CBE>,<U2CBF>);/ + (<U2CC0>,<U2CC1>);(<U2CC2>,<U2CC3>);(<U2CC4>,<U2CC5>);(<U2CC6>,<U2CC7>);/ + (<U2CC8>,<U2CC9>);(<U2CCA>,<U2CCB>);(<U2CCC>,<U2CCD>);(<U2CCE>,<U2CCF>);/ + (<U2CD0>,<U2CD1>);(<U2CD2>,<U2CD3>);(<U2CD4>,<U2CD5>);(<U2CD6>,<U2CD7>);/ + (<U2CD8>,<U2CD9>);(<U2CDA>,<U2CDB>);(<U2CDC>,<U2CDD>);(<U2CDE>,<U2CDF>);/ + (<U2CE0>,<U2CE1>);(<U2CE2>,<U2CE3>);(<U2CEB>,<U2CEC>);(<U2CED>,<U2CEE>);/ + (<U2CF2>,<U2CF3>);(<UA640>,<UA641>);(<UA642>,<UA643>);(<UA644>,<UA645>);/ + (<UA646>,<UA647>);(<UA648>,<UA649>);(<UA64A>,<UA64B>);(<UA64C>,<UA64D>);/ + (<UA64E>,<UA64F>);(<UA650>,<UA651>);(<UA652>,<UA653>);(<UA654>,<UA655>);/ + (<UA656>,<UA657>);(<UA658>,<UA659>);(<UA65A>,<UA65B>);(<UA65C>,<UA65D>);/ + (<UA65E>,<UA65F>);(<UA660>,<UA661>);(<UA662>,<UA663>);(<UA664>,<UA665>);/ + (<UA666>,<UA667>);(<UA668>,<UA669>);(<UA66A>,<UA66B>);(<UA66C>,<UA66D>);/ + (<UA680>,<UA681>);(<UA682>,<UA683>);(<UA684>,<UA685>);(<UA686>,<UA687>);/ + (<UA688>,<UA689>);(<UA68A>,<UA68B>);(<UA68C>,<UA68D>);(<UA68E>,<UA68F>);/ + (<UA690>,<UA691>);(<UA692>,<UA693>);(<UA694>,<UA695>);(<UA696>,<UA697>);/ + (<UA698>,<UA699>);(<UA69A>,<UA69B>);(<UA722>,<UA723>);(<UA724>,<UA725>);/ + (<UA726>,<UA727>);(<UA728>,<UA729>);(<UA72A>,<UA72B>);(<UA72C>,<UA72D>);/ + (<UA72E>,<UA72F>);(<UA732>,<UA733>);(<UA734>,<UA735>);(<UA736>,<UA737>);/ + (<UA738>,<UA739>);(<UA73A>,<UA73B>);(<UA73C>,<UA73D>);(<UA73E>,<UA73F>);/ + (<UA740>,<UA741>);(<UA742>,<UA743>);(<UA744>,<UA745>);(<UA746>,<UA747>);/ + (<UA748>,<UA749>);(<UA74A>,<UA74B>);(<UA74C>,<UA74D>);(<UA74E>,<UA74F>);/ + (<UA750>,<UA751>);(<UA752>,<UA753>);(<UA754>,<UA755>);(<UA756>,<UA757>);/ + (<UA758>,<UA759>);(<UA75A>,<UA75B>);(<UA75C>,<UA75D>);(<UA75E>,<UA75F>);/ + (<UA760>,<UA761>);(<UA762>,<UA763>);(<UA764>,<UA765>);(<UA766>,<UA767>);/ + (<UA768>,<UA769>);(<UA76A>,<UA76B>);(<UA76C>,<UA76D>);(<UA76E>,<UA76F>);/ + (<UA779>,<UA77A>);(<UA77B>,<UA77C>);(<UA77D>,<U1D79>);(<UA77E>,<UA77F>);/ + (<UA780>,<UA781>);(<UA782>,<UA783>);(<UA784>,<UA785>);(<UA786>,<UA787>);/ + (<UA78B>,<UA78C>);(<UA78D>,<U0265>);(<UA790>,<UA791>);(<UA792>,<UA793>);/ + (<UA796>,<UA797>);(<UA798>,<UA799>);(<UA79A>,<UA79B>);(<UA79C>,<UA79D>);/ + (<UA79E>,<UA79F>);(<UA7A0>,<UA7A1>);(<UA7A2>,<UA7A3>);(<UA7A4>,<UA7A5>);/ + (<UA7A6>,<UA7A7>);(<UA7A8>,<UA7A9>);(<UA7AA>,<U0266>);(<UA7AB>,<U025C>);/ + (<UA7AC>,<U0261>);(<UA7AD>,<U026C>);(<UA7AE>,<U026A>);(<UA7B0>,<U029E>);/ + (<UA7B1>,<U0287>);(<UA7B2>,<U029D>);(<UA7B3>,<UAB53>);(<UA7B4>,<UA7B5>);/ + (<UA7B6>,<UA7B7>);(<UA7B8>,<UA7B9>);(<UA7BA>,<UA7BB>);(<UA7BC>,<UA7BD>);/ + (<UA7BE>,<UA7BF>);(<UA7C0>,<UA7C1>);(<UA7C2>,<UA7C3>);(<UA7C4>,<UA794>);/ + (<UA7C5>,<U0282>);(<UA7C6>,<U1D8E>);(<UA7C7>,<UA7C8>);(<UA7C9>,<UA7CA>);/ + (<UA7CB>,<U0264>);(<UA7CC>,<UA7CD>);(<UA7D0>,<UA7D1>);(<UA7D6>,<UA7D7>);/ + (<UA7D8>,<UA7D9>);(<UA7DA>,<UA7DB>);(<UA7DC>,<U019B>);(<UA7F5>,<UA7F6>);/ + (<UFF21>,<UFF41>);(<UFF22>,<UFF42>);(<UFF23>,<UFF43>);(<UFF24>,<UFF44>);/ + (<UFF25>,<UFF45>);(<UFF26>,<UFF46>);(<UFF27>,<UFF47>);(<UFF28>,<UFF48>);/ + (<UFF29>,<UFF49>);(<UFF2A>,<UFF4A>);(<UFF2B>,<UFF4B>);(<UFF2C>,<UFF4C>);/ + (<UFF2D>,<UFF4D>);(<UFF2E>,<UFF4E>);(<UFF2F>,<UFF4F>);(<UFF30>,<UFF50>);/ + (<UFF31>,<UFF51>);(<UFF32>,<UFF52>);(<UFF33>,<UFF53>);(<UFF34>,<UFF54>);/ + (<UFF35>,<UFF55>);(<UFF36>,<UFF56>);(<UFF37>,<UFF57>);(<UFF38>,<UFF58>);/ + (<UFF39>,<UFF59>);(<UFF3A>,<UFF5A>);(<U00010400>,<U00010428>);/ + (<U00010401>,<U00010429>);(<U00010402>,<U0001042A>);/ + (<U00010403>,<U0001042B>);(<U00010404>,<U0001042C>);/ + (<U00010405>,<U0001042D>);(<U00010406>,<U0001042E>);/ + (<U00010407>,<U0001042F>);(<U00010408>,<U00010430>);/ + (<U00010409>,<U00010431>);(<U0001040A>,<U00010432>);/ + (<U0001040B>,<U00010433>);(<U0001040C>,<U00010434>);/ + (<U0001040D>,<U00010435>);(<U0001040E>,<U00010436>);/ + (<U0001040F>,<U00010437>);(<U00010410>,<U00010438>);/ + (<U00010411>,<U00010439>);(<U00010412>,<U0001043A>);/ + (<U00010413>,<U0001043B>);(<U00010414>,<U0001043C>);/ + (<U00010415>,<U0001043D>);(<U00010416>,<U0001043E>);/ + (<U00010417>,<U0001043F>);(<U00010418>,<U00010440>);/ + (<U00010419>,<U00010441>);(<U0001041A>,<U00010442>);/ + (<U0001041B>,<U00010443>);(<U0001041C>,<U00010444>);/ + (<U0001041D>,<U00010445>);(<U0001041E>,<U00010446>);/ + (<U0001041F>,<U00010447>);(<U00010420>,<U00010448>);/ + (<U00010421>,<U00010449>);(<U00010422>,<U0001044A>);/ + (<U00010423>,<U0001044B>);(<U00010424>,<U0001044C>);/ + (<U00010425>,<U0001044D>);(<U00010426>,<U0001044E>);/ + (<U00010427>,<U0001044F>);(<U000104B0>,<U000104D8>);/ + (<U000104B1>,<U000104D9>);(<U000104B2>,<U000104DA>);/ + (<U000104B3>,<U000104DB>);(<U000104B4>,<U000104DC>);/ + (<U000104B5>,<U000104DD>);(<U000104B6>,<U000104DE>);/ + (<U000104B7>,<U000104DF>);(<U000104B8>,<U000104E0>);/ + (<U000104B9>,<U000104E1>);(<U000104BA>,<U000104E2>);/ + (<U000104BB>,<U000104E3>);(<U000104BC>,<U000104E4>);/ + (<U000104BD>,<U000104E5>);(<U000104BE>,<U000104E6>);/ + (<U000104BF>,<U000104E7>);(<U000104C0>,<U000104E8>);/ + (<U000104C1>,<U000104E9>);(<U000104C2>,<U000104EA>);/ + (<U000104C3>,<U000104EB>);(<U000104C4>,<U000104EC>);/ + (<U000104C5>,<U000104ED>);(<U000104C6>,<U000104EE>);/ + (<U000104C7>,<U000104EF>);(<U000104C8>,<U000104F0>);/ + (<U000104C9>,<U000104F1>);(<U000104CA>,<U000104F2>);/ + (<U000104CB>,<U000104F3>);(<U000104CC>,<U000104F4>);/ + (<U000104CD>,<U000104F5>);(<U000104CE>,<U000104F6>);/ + (<U000104CF>,<U000104F7>);(<U000104D0>,<U000104F8>);/ + (<U000104D1>,<U000104F9>);(<U000104D2>,<U000104FA>);/ + (<U000104D3>,<U000104FB>);(<U00010570>,<U00010597>);/ + (<U00010571>,<U00010598>);(<U00010572>,<U00010599>);/ + (<U00010573>,<U0001059A>);(<U00010574>,<U0001059B>);/ + (<U00010575>,<U0001059C>);(<U00010576>,<U0001059D>);/ + (<U00010577>,<U0001059E>);(<U00010578>,<U0001059F>);/ + (<U00010579>,<U000105A0>);(<U0001057A>,<U000105A1>);/ + (<U0001057C>,<U000105A3>);(<U0001057D>,<U000105A4>);/ + (<U0001057E>,<U000105A5>);(<U0001057F>,<U000105A6>);/ + (<U00010580>,<U000105A7>);(<U00010581>,<U000105A8>);/ + (<U00010582>,<U000105A9>);(<U00010583>,<U000105AA>);/ + (<U00010584>,<U000105AB>);(<U00010585>,<U000105AC>);/ + (<U00010586>,<U000105AD>);(<U00010587>,<U000105AE>);/ + (<U00010588>,<U000105AF>);(<U00010589>,<U000105B0>);/ + (<U0001058A>,<U000105B1>);(<U0001058C>,<U000105B3>);/ + (<U0001058D>,<U000105B4>);(<U0001058E>,<U000105B5>);/ + (<U0001058F>,<U000105B6>);(<U00010590>,<U000105B7>);/ + (<U00010591>,<U000105B8>);(<U00010592>,<U000105B9>);/ + (<U00010594>,<U000105BB>);(<U00010595>,<U000105BC>);/ + (<U00010C80>,<U00010CC0>);(<U00010C81>,<U00010CC1>);/ + (<U00010C82>,<U00010CC2>);(<U00010C83>,<U00010CC3>);/ + (<U00010C84>,<U00010CC4>);(<U00010C85>,<U00010CC5>);/ + (<U00010C86>,<U00010CC6>);(<U00010C87>,<U00010CC7>);/ + (<U00010C88>,<U00010CC8>);(<U00010C89>,<U00010CC9>);/ + (<U00010C8A>,<U00010CCA>);(<U00010C8B>,<U00010CCB>);/ + (<U00010C8C>,<U00010CCC>);(<U00010C8D>,<U00010CCD>);/ + (<U00010C8E>,<U00010CCE>);(<U00010C8F>,<U00010CCF>);/ + (<U00010C90>,<U00010CD0>);(<U00010C91>,<U00010CD1>);/ + (<U00010C92>,<U00010CD2>);(<U00010C93>,<U00010CD3>);/ + (<U00010C94>,<U00010CD4>);(<U00010C95>,<U00010CD5>);/ + (<U00010C96>,<U00010CD6>);(<U00010C97>,<U00010CD7>);/ + (<U00010C98>,<U00010CD8>);(<U00010C99>,<U00010CD9>);/ + (<U00010C9A>,<U00010CDA>);(<U00010C9B>,<U00010CDB>);/ + (<U00010C9C>,<U00010CDC>);(<U00010C9D>,<U00010CDD>);/ + (<U00010C9E>,<U00010CDE>);(<U00010C9F>,<U00010CDF>);/ + (<U00010CA0>,<U00010CE0>);(<U00010CA1>,<U00010CE1>);/ + (<U00010CA2>,<U00010CE2>);(<U00010CA3>,<U00010CE3>);/ + (<U00010CA4>,<U00010CE4>);(<U00010CA5>,<U00010CE5>);/ + (<U00010CA6>,<U00010CE6>);(<U00010CA7>,<U00010CE7>);/ + (<U00010CA8>,<U00010CE8>);(<U00010CA9>,<U00010CE9>);/ + (<U00010CAA>,<U00010CEA>);(<U00010CAB>,<U00010CEB>);/ + (<U00010CAC>,<U00010CEC>);(<U00010CAD>,<U00010CED>);/ + (<U00010CAE>,<U00010CEE>);(<U00010CAF>,<U00010CEF>);/ + (<U00010CB0>,<U00010CF0>);(<U00010CB1>,<U00010CF1>);/ + (<U00010CB2>,<U00010CF2>);(<U00010D50>,<U00010D70>);/ + (<U00010D51>,<U00010D71>);(<U00010D52>,<U00010D72>);/ + (<U00010D53>,<U00010D73>);(<U00010D54>,<U00010D74>);/ + (<U00010D55>,<U00010D75>);(<U00010D56>,<U00010D76>);/ + (<U00010D57>,<U00010D77>);(<U00010D58>,<U00010D78>);/ + (<U00010D59>,<U00010D79>);(<U00010D5A>,<U00010D7A>);/ + (<U00010D5B>,<U00010D7B>);(<U00010D5C>,<U00010D7C>);/ + (<U00010D5D>,<U00010D7D>);(<U00010D5E>,<U00010D7E>);/ + (<U00010D5F>,<U00010D7F>);(<U00010D60>,<U00010D80>);/ + (<U00010D61>,<U00010D81>);(<U00010D62>,<U00010D82>);/ + (<U00010D63>,<U00010D83>);(<U00010D64>,<U00010D84>);/ + (<U00010D65>,<U00010D85>);(<U000118A0>,<U000118C0>);/ + (<U000118A1>,<U000118C1>);(<U000118A2>,<U000118C2>);/ + (<U000118A3>,<U000118C3>);(<U000118A4>,<U000118C4>);/ + (<U000118A5>,<U000118C5>);(<U000118A6>,<U000118C6>);/ + (<U000118A7>,<U000118C7>);(<U000118A8>,<U000118C8>);/ + (<U000118A9>,<U000118C9>);(<U000118AA>,<U000118CA>);/ + (<U000118AB>,<U000118CB>);(<U000118AC>,<U000118CC>);/ + (<U000118AD>,<U000118CD>);(<U000118AE>,<U000118CE>);/ + (<U000118AF>,<U000118CF>);(<U000118B0>,<U000118D0>);/ + (<U000118B1>,<U000118D1>);(<U000118B2>,<U000118D2>);/ + (<U000118B3>,<U000118D3>);(<U000118B4>,<U000118D4>);/ + (<U000118B5>,<U000118D5>);(<U000118B6>,<U000118D6>);/ + (<U000118B7>,<U000118D7>);(<U000118B8>,<U000118D8>);/ + (<U000118B9>,<U000118D9>);(<U000118BA>,<U000118DA>);/ + (<U000118BB>,<U000118DB>);(<U000118BC>,<U000118DC>);/ + (<U000118BD>,<U000118DD>);(<U000118BE>,<U000118DE>);/ + (<U000118BF>,<U000118DF>);(<U00016E40>,<U00016E60>);/ + (<U00016E41>,<U00016E61>);(<U00016E42>,<U00016E62>);/ + (<U00016E43>,<U00016E63>);(<U00016E44>,<U00016E64>);/ + (<U00016E45>,<U00016E65>);(<U00016E46>,<U00016E66>);/ + (<U00016E47>,<U00016E67>);(<U00016E48>,<U00016E68>);/ + (<U00016E49>,<U00016E69>);(<U00016E4A>,<U00016E6A>);/ + (<U00016E4B>,<U00016E6B>);(<U00016E4C>,<U00016E6C>);/ + (<U00016E4D>,<U00016E6D>);(<U00016E4E>,<U00016E6E>);/ + (<U00016E4F>,<U00016E6F>);(<U00016E50>,<U00016E70>);/ + (<U00016E51>,<U00016E71>);(<U00016E52>,<U00016E72>);/ + (<U00016E53>,<U00016E73>);(<U00016E54>,<U00016E74>);/ + (<U00016E55>,<U00016E75>);(<U00016E56>,<U00016E76>);/ + (<U00016E57>,<U00016E77>);(<U00016E58>,<U00016E78>);/ + (<U00016E59>,<U00016E79>);(<U00016E5A>,<U00016E7A>);/ + (<U00016E5B>,<U00016E7B>);(<U00016E5C>,<U00016E7C>);/ + (<U00016E5D>,<U00016E7D>);(<U00016E5E>,<U00016E7E>);/ + (<U00016E5F>,<U00016E7F>);(<U0001E900>,<U0001E922>);/ + (<U0001E901>,<U0001E923>);(<U0001E902>,<U0001E924>);/ + (<U0001E903>,<U0001E925>);(<U0001E904>,<U0001E926>);/ + (<U0001E905>,<U0001E927>);(<U0001E906>,<U0001E928>);/ + (<U0001E907>,<U0001E929>);(<U0001E908>,<U0001E92A>);/ + (<U0001E909>,<U0001E92B>);(<U0001E90A>,<U0001E92C>);/ + (<U0001E90B>,<U0001E92D>);(<U0001E90C>,<U0001E92E>);/ + (<U0001E90D>,<U0001E92F>);(<U0001E90E>,<U0001E930>);/ + (<U0001E90F>,<U0001E931>);(<U0001E910>,<U0001E932>);/ + (<U0001E911>,<U0001E933>);(<U0001E912>,<U0001E934>);/ + (<U0001E913>,<U0001E935>);(<U0001E914>,<U0001E936>);/ + (<U0001E915>,<U0001E937>);(<U0001E916>,<U0001E938>);/ + (<U0001E917>,<U0001E939>);(<U0001E918>,<U0001E93A>);/ + (<U0001E919>,<U0001E93B>);(<U0001E91A>,<U0001E93C>);/ + (<U0001E91B>,<U0001E93D>);(<U0001E91C>,<U0001E93E>);/ + (<U0001E91D>,<U0001E93F>);(<U0001E91E>,<U0001E940>);/ + (<U0001E91F>,<U0001E941>);(<U0001E920>,<U0001E942>);/ + (<U0001E921>,<U0001E943>) map "totitle"; / (<U0061>,<U0041>);(<U0062>,<U0042>);(<U0063>,<U0043>);(<U0064>,<U0044>);/ @@ -2161,261 +2229,262 @@ map "totitle"; / (<U0177>,<U0176>);(<U017A>,<U0179>);(<U017C>,<U017B>);(<U017E>,<U017D>);/ (<U017F>,<U0053>);(<U0180>,<U0243>);(<U0183>,<U0182>);(<U0185>,<U0184>);/ (<U0188>,<U0187>);(<U018C>,<U018B>);(<U0192>,<U0191>);(<U0195>,<U01F6>);/ - (<U0199>,<U0198>);(<U019A>,<U023D>);(<U019E>,<U0220>);(<U01A1>,<U01A0>);/ - (<U01A3>,<U01A2>);(<U01A5>,<U01A4>);(<U01A8>,<U01A7>);(<U01AD>,<U01AC>);/ - (<U01B0>,<U01AF>);(<U01B4>,<U01B3>);(<U01B6>,<U01B5>);(<U01B9>,<U01B8>);/ - (<U01BD>,<U01BC>);(<U01BF>,<U01F7>);(<U01C4>,<U01C5>);(<U01C6>,<U01C5>);/ - (<U01C7>,<U01C8>);(<U01C9>,<U01C8>);(<U01CA>,<U01CB>);(<U01CC>,<U01CB>);/ - (<U01CE>,<U01CD>);(<U01D0>,<U01CF>);(<U01D2>,<U01D1>);(<U01D4>,<U01D3>);/ - (<U01D6>,<U01D5>);(<U01D8>,<U01D7>);(<U01DA>,<U01D9>);(<U01DC>,<U01DB>);/ - (<U01DD>,<U018E>);(<U01DF>,<U01DE>);(<U01E1>,<U01E0>);(<U01E3>,<U01E2>);/ - (<U01E5>,<U01E4>);(<U01E7>,<U01E6>);(<U01E9>,<U01E8>);(<U01EB>,<U01EA>);/ - (<U01ED>,<U01EC>);(<U01EF>,<U01EE>);(<U01F1>,<U01F2>);(<U01F3>,<U01F2>);/ - (<U01F5>,<U01F4>);(<U01F9>,<U01F8>);(<U01FB>,<U01FA>);(<U01FD>,<U01FC>);/ - (<U01FF>,<U01FE>);(<U0201>,<U0200>);(<U0203>,<U0202>);(<U0205>,<U0204>);/ - (<U0207>,<U0206>);(<U0209>,<U0208>);(<U020B>,<U020A>);(<U020D>,<U020C>);/ - (<U020F>,<U020E>);(<U0211>,<U0210>);(<U0213>,<U0212>);(<U0215>,<U0214>);/ - (<U0217>,<U0216>);(<U0219>,<U0218>);(<U021B>,<U021A>);(<U021D>,<U021C>);/ - (<U021F>,<U021E>);(<U0223>,<U0222>);(<U0225>,<U0224>);(<U0227>,<U0226>);/ - (<U0229>,<U0228>);(<U022B>,<U022A>);(<U022D>,<U022C>);(<U022F>,<U022E>);/ - (<U0231>,<U0230>);(<U0233>,<U0232>);(<U023C>,<U023B>);(<U023F>,<U2C7E>);/ - (<U0240>,<U2C7F>);(<U0242>,<U0241>);(<U0247>,<U0246>);(<U0249>,<U0248>);/ - (<U024B>,<U024A>);(<U024D>,<U024C>);(<U024F>,<U024E>);(<U0250>,<U2C6F>);/ - (<U0251>,<U2C6D>);(<U0252>,<U2C70>);(<U0253>,<U0181>);(<U0254>,<U0186>);/ - (<U0256>,<U0189>);(<U0257>,<U018A>);(<U0259>,<U018F>);(<U025B>,<U0190>);/ - (<U025C>,<UA7AB>);(<U0260>,<U0193>);(<U0261>,<UA7AC>);(<U0263>,<U0194>);/ - (<U0265>,<UA78D>);(<U0266>,<UA7AA>);(<U0268>,<U0197>);(<U0269>,<U0196>);/ - (<U026A>,<UA7AE>);(<U026B>,<U2C62>);(<U026C>,<UA7AD>);(<U026F>,<U019C>);/ - (<U0271>,<U2C6E>);(<U0272>,<U019D>);(<U0275>,<U019F>);(<U027D>,<U2C64>);/ - (<U0280>,<U01A6>);(<U0282>,<UA7C5>);(<U0283>,<U01A9>);(<U0287>,<UA7B1>);/ - (<U0288>,<U01AE>);(<U0289>,<U0244>);(<U028A>,<U01B1>);(<U028B>,<U01B2>);/ - (<U028C>,<U0245>);(<U0292>,<U01B7>);(<U029D>,<UA7B2>);(<U029E>,<UA7B0>);/ - (<U0345>,<U0399>);(<U0371>,<U0370>);(<U0373>,<U0372>);(<U0377>,<U0376>);/ - (<U037B>,<U03FD>);(<U037C>,<U03FE>);(<U037D>,<U03FF>);(<U03AC>,<U0386>);/ - (<U03AD>,<U0388>);(<U03AE>,<U0389>);(<U03AF>,<U038A>);(<U03B1>,<U0391>);/ - (<U03B2>,<U0392>);(<U03B3>,<U0393>);(<U03B4>,<U0394>);(<U03B5>,<U0395>);/ - (<U03B6>,<U0396>);(<U03B7>,<U0397>);(<U03B8>,<U0398>);(<U03B9>,<U0399>);/ - (<U03BA>,<U039A>);(<U03BB>,<U039B>);(<U03BC>,<U039C>);(<U03BD>,<U039D>);/ - (<U03BE>,<U039E>);(<U03BF>,<U039F>);(<U03C0>,<U03A0>);(<U03C1>,<U03A1>);/ - (<U03C2>,<U03A3>);(<U03C3>,<U03A3>);(<U03C4>,<U03A4>);(<U03C5>,<U03A5>);/ - (<U03C6>,<U03A6>);(<U03C7>,<U03A7>);(<U03C8>,<U03A8>);(<U03C9>,<U03A9>);/ - (<U03CA>,<U03AA>);(<U03CB>,<U03AB>);(<U03CC>,<U038C>);(<U03CD>,<U038E>);/ - (<U03CE>,<U038F>);(<U03D0>,<U0392>);(<U03D1>,<U0398>);(<U03D5>,<U03A6>);/ - (<U03D6>,<U03A0>);(<U03D7>,<U03CF>);(<U03D9>,<U03D8>);(<U03DB>,<U03DA>);/ - (<U03DD>,<U03DC>);(<U03DF>,<U03DE>);(<U03E1>,<U03E0>);(<U03E3>,<U03E2>);/ - (<U03E5>,<U03E4>);(<U03E7>,<U03E6>);(<U03E9>,<U03E8>);(<U03EB>,<U03EA>);/ - (<U03ED>,<U03EC>);(<U03EF>,<U03EE>);(<U03F0>,<U039A>);(<U03F1>,<U03A1>);/ - (<U03F2>,<U03F9>);(<U03F3>,<U037F>);(<U03F5>,<U0395>);(<U03F8>,<U03F7>);/ - (<U03FB>,<U03FA>);(<U0430>,<U0410>);(<U0431>,<U0411>);(<U0432>,<U0412>);/ - (<U0433>,<U0413>);(<U0434>,<U0414>);(<U0435>,<U0415>);(<U0436>,<U0416>);/ - (<U0437>,<U0417>);(<U0438>,<U0418>);(<U0439>,<U0419>);(<U043A>,<U041A>);/ - (<U043B>,<U041B>);(<U043C>,<U041C>);(<U043D>,<U041D>);(<U043E>,<U041E>);/ - (<U043F>,<U041F>);(<U0440>,<U0420>);(<U0441>,<U0421>);(<U0442>,<U0422>);/ - (<U0443>,<U0423>);(<U0444>,<U0424>);(<U0445>,<U0425>);(<U0446>,<U0426>);/ - (<U0447>,<U0427>);(<U0448>,<U0428>);(<U0449>,<U0429>);(<U044A>,<U042A>);/ - (<U044B>,<U042B>);(<U044C>,<U042C>);(<U044D>,<U042D>);(<U044E>,<U042E>);/ - (<U044F>,<U042F>);(<U0450>,<U0400>);(<U0451>,<U0401>);(<U0452>,<U0402>);/ - (<U0453>,<U0403>);(<U0454>,<U0404>);(<U0455>,<U0405>);(<U0456>,<U0406>);/ - (<U0457>,<U0407>);(<U0458>,<U0408>);(<U0459>,<U0409>);(<U045A>,<U040A>);/ - (<U045B>,<U040B>);(<U045C>,<U040C>);(<U045D>,<U040D>);(<U045E>,<U040E>);/ - (<U045F>,<U040F>);(<U0461>,<U0460>);(<U0463>,<U0462>);(<U0465>,<U0464>);/ - (<U0467>,<U0466>);(<U0469>,<U0468>);(<U046B>,<U046A>);(<U046D>,<U046C>);/ - (<U046F>,<U046E>);(<U0471>,<U0470>);(<U0473>,<U0472>);(<U0475>,<U0474>);/ - (<U0477>,<U0476>);(<U0479>,<U0478>);(<U047B>,<U047A>);(<U047D>,<U047C>);/ - (<U047F>,<U047E>);(<U0481>,<U0480>);(<U048B>,<U048A>);(<U048D>,<U048C>);/ - (<U048F>,<U048E>);(<U0491>,<U0490>);(<U0493>,<U0492>);(<U0495>,<U0494>);/ - (<U0497>,<U0496>);(<U0499>,<U0498>);(<U049B>,<U049A>);(<U049D>,<U049C>);/ - (<U049F>,<U049E>);(<U04A1>,<U04A0>);(<U04A3>,<U04A2>);(<U04A5>,<U04A4>);/ - (<U04A7>,<U04A6>);(<U04A9>,<U04A8>);(<U04AB>,<U04AA>);(<U04AD>,<U04AC>);/ - (<U04AF>,<U04AE>);(<U04B1>,<U04B0>);(<U04B3>,<U04B2>);(<U04B5>,<U04B4>);/ - (<U04B7>,<U04B6>);(<U04B9>,<U04B8>);(<U04BB>,<U04BA>);(<U04BD>,<U04BC>);/ - (<U04BF>,<U04BE>);(<U04C2>,<U04C1>);(<U04C4>,<U04C3>);(<U04C6>,<U04C5>);/ - (<U04C8>,<U04C7>);(<U04CA>,<U04C9>);(<U04CC>,<U04CB>);(<U04CE>,<U04CD>);/ - (<U04CF>,<U04C0>);(<U04D1>,<U04D0>);(<U04D3>,<U04D2>);(<U04D5>,<U04D4>);/ - (<U04D7>,<U04D6>);(<U04D9>,<U04D8>);(<U04DB>,<U04DA>);(<U04DD>,<U04DC>);/ - (<U04DF>,<U04DE>);(<U04E1>,<U04E0>);(<U04E3>,<U04E2>);(<U04E5>,<U04E4>);/ - (<U04E7>,<U04E6>);(<U04E9>,<U04E8>);(<U04EB>,<U04EA>);(<U04ED>,<U04EC>);/ - (<U04EF>,<U04EE>);(<U04F1>,<U04F0>);(<U04F3>,<U04F2>);(<U04F5>,<U04F4>);/ - (<U04F7>,<U04F6>);(<U04F9>,<U04F8>);(<U04FB>,<U04FA>);(<U04FD>,<U04FC>);/ - (<U04FF>,<U04FE>);(<U0501>,<U0500>);(<U0503>,<U0502>);(<U0505>,<U0504>);/ - (<U0507>,<U0506>);(<U0509>,<U0508>);(<U050B>,<U050A>);(<U050D>,<U050C>);/ - (<U050F>,<U050E>);(<U0511>,<U0510>);(<U0513>,<U0512>);(<U0515>,<U0514>);/ - (<U0517>,<U0516>);(<U0519>,<U0518>);(<U051B>,<U051A>);(<U051D>,<U051C>);/ - (<U051F>,<U051E>);(<U0521>,<U0520>);(<U0523>,<U0522>);(<U0525>,<U0524>);/ - (<U0527>,<U0526>);(<U0529>,<U0528>);(<U052B>,<U052A>);(<U052D>,<U052C>);/ - (<U052F>,<U052E>);(<U0561>,<U0531>);(<U0562>,<U0532>);(<U0563>,<U0533>);/ - (<U0564>,<U0534>);(<U0565>,<U0535>);(<U0566>,<U0536>);(<U0567>,<U0537>);/ - (<U0568>,<U0538>);(<U0569>,<U0539>);(<U056A>,<U053A>);(<U056B>,<U053B>);/ - (<U056C>,<U053C>);(<U056D>,<U053D>);(<U056E>,<U053E>);(<U056F>,<U053F>);/ - (<U0570>,<U0540>);(<U0571>,<U0541>);(<U0572>,<U0542>);(<U0573>,<U0543>);/ - (<U0574>,<U0544>);(<U0575>,<U0545>);(<U0576>,<U0546>);(<U0577>,<U0547>);/ - (<U0578>,<U0548>);(<U0579>,<U0549>);(<U057A>,<U054A>);(<U057B>,<U054B>);/ - (<U057C>,<U054C>);(<U057D>,<U054D>);(<U057E>,<U054E>);(<U057F>,<U054F>);/ - (<U0580>,<U0550>);(<U0581>,<U0551>);(<U0582>,<U0552>);(<U0583>,<U0553>);/ - (<U0584>,<U0554>);(<U0585>,<U0555>);(<U0586>,<U0556>);(<U13F8>,<U13F0>);/ - (<U13F9>,<U13F1>);(<U13FA>,<U13F2>);(<U13FB>,<U13F3>);(<U13FC>,<U13F4>);/ - (<U13FD>,<U13F5>);(<U1C80>,<U0412>);(<U1C81>,<U0414>);(<U1C82>,<U041E>);/ - (<U1C83>,<U0421>);(<U1C84>,<U0422>);(<U1C85>,<U0422>);(<U1C86>,<U042A>);/ - (<U1C87>,<U0462>);(<U1C88>,<UA64A>);(<U1D79>,<UA77D>);(<U1D7D>,<U2C63>);/ - (<U1D8E>,<UA7C6>);(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);/ - (<U1E07>,<U1E06>);(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);/ - (<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);/ - (<U1E17>,<U1E16>);(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);/ - (<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);/ - (<U1E27>,<U1E26>);(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);/ - (<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);/ - (<U1E37>,<U1E36>);(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);/ - (<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);/ - (<U1E47>,<U1E46>);(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);/ - (<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);/ - (<U1E57>,<U1E56>);(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);/ - (<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);/ - (<U1E67>,<U1E66>);(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);/ - (<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);/ - (<U1E77>,<U1E76>);(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);/ - (<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);/ - (<U1E87>,<U1E86>);(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);/ - (<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);/ - (<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);/ - (<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);/ - (<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);/ - (<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);/ - (<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);/ - (<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);/ - (<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);/ - (<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);/ - (<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);/ - (<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);/ - (<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);/ - (<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);(<U1EFB>,<U1EFA>);(<U1EFD>,<U1EFC>);/ - (<U1EFF>,<U1EFE>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);/ - (<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);/ - (<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);/ - (<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);/ - (<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);/ - (<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);/ - (<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);/ - (<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);/ - (<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);/ - (<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);/ - (<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);/ - (<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);/ - (<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);/ - (<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);/ - (<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);/ - (<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);/ - (<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);/ - (<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);/ - (<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);/ - (<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);/ - (<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);/ - (<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);/ - (<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);/ - (<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);/ - (<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U214E>,<U2132>);(<U2170>,<U2160>);/ - (<U2171>,<U2161>);(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);/ - (<U2175>,<U2165>);(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);/ - (<U2179>,<U2169>);(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);/ - (<U217D>,<U216D>);(<U217E>,<U216E>);(<U217F>,<U216F>);(<U2184>,<U2183>);/ - (<U24D0>,<U24B6>);(<U24D1>,<U24B7>);(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);/ - (<U24D4>,<U24BA>);(<U24D5>,<U24BB>);(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);/ - (<U24D8>,<U24BE>);(<U24D9>,<U24BF>);(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);/ - (<U24DC>,<U24C2>);(<U24DD>,<U24C3>);(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);/ - (<U24E0>,<U24C6>);(<U24E1>,<U24C7>);(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);/ - (<U24E4>,<U24CA>);(<U24E5>,<U24CB>);(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);/ - (<U24E8>,<U24CE>);(<U24E9>,<U24CF>);(<U2C30>,<U2C00>);(<U2C31>,<U2C01>);/ - (<U2C32>,<U2C02>);(<U2C33>,<U2C03>);(<U2C34>,<U2C04>);(<U2C35>,<U2C05>);/ - (<U2C36>,<U2C06>);(<U2C37>,<U2C07>);(<U2C38>,<U2C08>);(<U2C39>,<U2C09>);/ - (<U2C3A>,<U2C0A>);(<U2C3B>,<U2C0B>);(<U2C3C>,<U2C0C>);(<U2C3D>,<U2C0D>);/ - (<U2C3E>,<U2C0E>);(<U2C3F>,<U2C0F>);(<U2C40>,<U2C10>);(<U2C41>,<U2C11>);/ - (<U2C42>,<U2C12>);(<U2C43>,<U2C13>);(<U2C44>,<U2C14>);(<U2C45>,<U2C15>);/ - (<U2C46>,<U2C16>);(<U2C47>,<U2C17>);(<U2C48>,<U2C18>);(<U2C49>,<U2C19>);/ - (<U2C4A>,<U2C1A>);(<U2C4B>,<U2C1B>);(<U2C4C>,<U2C1C>);(<U2C4D>,<U2C1D>);/ - (<U2C4E>,<U2C1E>);(<U2C4F>,<U2C1F>);(<U2C50>,<U2C20>);(<U2C51>,<U2C21>);/ - (<U2C52>,<U2C22>);(<U2C53>,<U2C23>);(<U2C54>,<U2C24>);(<U2C55>,<U2C25>);/ - (<U2C56>,<U2C26>);(<U2C57>,<U2C27>);(<U2C58>,<U2C28>);(<U2C59>,<U2C29>);/ - (<U2C5A>,<U2C2A>);(<U2C5B>,<U2C2B>);(<U2C5C>,<U2C2C>);(<U2C5D>,<U2C2D>);/ - (<U2C5E>,<U2C2E>);(<U2C5F>,<U2C2F>);(<U2C61>,<U2C60>);(<U2C65>,<U023A>);/ - (<U2C66>,<U023E>);(<U2C68>,<U2C67>);(<U2C6A>,<U2C69>);(<U2C6C>,<U2C6B>);/ - (<U2C73>,<U2C72>);(<U2C76>,<U2C75>);(<U2C81>,<U2C80>);(<U2C83>,<U2C82>);/ - (<U2C85>,<U2C84>);(<U2C87>,<U2C86>);(<U2C89>,<U2C88>);(<U2C8B>,<U2C8A>);/ - (<U2C8D>,<U2C8C>);(<U2C8F>,<U2C8E>);(<U2C91>,<U2C90>);(<U2C93>,<U2C92>);/ - (<U2C95>,<U2C94>);(<U2C97>,<U2C96>);(<U2C99>,<U2C98>);(<U2C9B>,<U2C9A>);/ - (<U2C9D>,<U2C9C>);(<U2C9F>,<U2C9E>);(<U2CA1>,<U2CA0>);(<U2CA3>,<U2CA2>);/ - (<U2CA5>,<U2CA4>);(<U2CA7>,<U2CA6>);(<U2CA9>,<U2CA8>);(<U2CAB>,<U2CAA>);/ - (<U2CAD>,<U2CAC>);(<U2CAF>,<U2CAE>);(<U2CB1>,<U2CB0>);(<U2CB3>,<U2CB2>);/ - (<U2CB5>,<U2CB4>);(<U2CB7>,<U2CB6>);(<U2CB9>,<U2CB8>);(<U2CBB>,<U2CBA>);/ - (<U2CBD>,<U2CBC>);(<U2CBF>,<U2CBE>);(<U2CC1>,<U2CC0>);(<U2CC3>,<U2CC2>);/ - (<U2CC5>,<U2CC4>);(<U2CC7>,<U2CC6>);(<U2CC9>,<U2CC8>);(<U2CCB>,<U2CCA>);/ - (<U2CCD>,<U2CCC>);(<U2CCF>,<U2CCE>);(<U2CD1>,<U2CD0>);(<U2CD3>,<U2CD2>);/ - (<U2CD5>,<U2CD4>);(<U2CD7>,<U2CD6>);(<U2CD9>,<U2CD8>);(<U2CDB>,<U2CDA>);/ - (<U2CDD>,<U2CDC>);(<U2CDF>,<U2CDE>);(<U2CE1>,<U2CE0>);(<U2CE3>,<U2CE2>);/ - (<U2CEC>,<U2CEB>);(<U2CEE>,<U2CED>);(<U2CF3>,<U2CF2>);(<U2D00>,<U10A0>);/ - (<U2D01>,<U10A1>);(<U2D02>,<U10A2>);(<U2D03>,<U10A3>);(<U2D04>,<U10A4>);/ - (<U2D05>,<U10A5>);(<U2D06>,<U10A6>);(<U2D07>,<U10A7>);(<U2D08>,<U10A8>);/ - (<U2D09>,<U10A9>);(<U2D0A>,<U10AA>);(<U2D0B>,<U10AB>);(<U2D0C>,<U10AC>);/ - (<U2D0D>,<U10AD>);(<U2D0E>,<U10AE>);(<U2D0F>,<U10AF>);(<U2D10>,<U10B0>);/ - (<U2D11>,<U10B1>);(<U2D12>,<U10B2>);(<U2D13>,<U10B3>);(<U2D14>,<U10B4>);/ - (<U2D15>,<U10B5>);(<U2D16>,<U10B6>);(<U2D17>,<U10B7>);(<U2D18>,<U10B8>);/ - (<U2D19>,<U10B9>);(<U2D1A>,<U10BA>);(<U2D1B>,<U10BB>);(<U2D1C>,<U10BC>);/ - (<U2D1D>,<U10BD>);(<U2D1E>,<U10BE>);(<U2D1F>,<U10BF>);(<U2D20>,<U10C0>);/ - (<U2D21>,<U10C1>);(<U2D22>,<U10C2>);(<U2D23>,<U10C3>);(<U2D24>,<U10C4>);/ - (<U2D25>,<U10C5>);(<U2D27>,<U10C7>);(<U2D2D>,<U10CD>);(<UA641>,<UA640>);/ - (<UA643>,<UA642>);(<UA645>,<UA644>);(<UA647>,<UA646>);(<UA649>,<UA648>);/ - (<UA64B>,<UA64A>);(<UA64D>,<UA64C>);(<UA64F>,<UA64E>);(<UA651>,<UA650>);/ - (<UA653>,<UA652>);(<UA655>,<UA654>);(<UA657>,<UA656>);(<UA659>,<UA658>);/ - (<UA65B>,<UA65A>);(<UA65D>,<UA65C>);(<UA65F>,<UA65E>);(<UA661>,<UA660>);/ - (<UA663>,<UA662>);(<UA665>,<UA664>);(<UA667>,<UA666>);(<UA669>,<UA668>);/ - (<UA66B>,<UA66A>);(<UA66D>,<UA66C>);(<UA681>,<UA680>);(<UA683>,<UA682>);/ - (<UA685>,<UA684>);(<UA687>,<UA686>);(<UA689>,<UA688>);(<UA68B>,<UA68A>);/ - (<UA68D>,<UA68C>);(<UA68F>,<UA68E>);(<UA691>,<UA690>);(<UA693>,<UA692>);/ - (<UA695>,<UA694>);(<UA697>,<UA696>);(<UA699>,<UA698>);(<UA69B>,<UA69A>);/ - (<UA723>,<UA722>);(<UA725>,<UA724>);(<UA727>,<UA726>);(<UA729>,<UA728>);/ - (<UA72B>,<UA72A>);(<UA72D>,<UA72C>);(<UA72F>,<UA72E>);(<UA733>,<UA732>);/ - (<UA735>,<UA734>);(<UA737>,<UA736>);(<UA739>,<UA738>);(<UA73B>,<UA73A>);/ - (<UA73D>,<UA73C>);(<UA73F>,<UA73E>);(<UA741>,<UA740>);(<UA743>,<UA742>);/ - (<UA745>,<UA744>);(<UA747>,<UA746>);(<UA749>,<UA748>);(<UA74B>,<UA74A>);/ - (<UA74D>,<UA74C>);(<UA74F>,<UA74E>);(<UA751>,<UA750>);(<UA753>,<UA752>);/ - (<UA755>,<UA754>);(<UA757>,<UA756>);(<UA759>,<UA758>);(<UA75B>,<UA75A>);/ - (<UA75D>,<UA75C>);(<UA75F>,<UA75E>);(<UA761>,<UA760>);(<UA763>,<UA762>);/ - (<UA765>,<UA764>);(<UA767>,<UA766>);(<UA769>,<UA768>);(<UA76B>,<UA76A>);/ - (<UA76D>,<UA76C>);(<UA76F>,<UA76E>);(<UA77A>,<UA779>);(<UA77C>,<UA77B>);/ - (<UA77F>,<UA77E>);(<UA781>,<UA780>);(<UA783>,<UA782>);(<UA785>,<UA784>);/ - (<UA787>,<UA786>);(<UA78C>,<UA78B>);(<UA791>,<UA790>);(<UA793>,<UA792>);/ - (<UA794>,<UA7C4>);(<UA797>,<UA796>);(<UA799>,<UA798>);(<UA79B>,<UA79A>);/ - (<UA79D>,<UA79C>);(<UA79F>,<UA79E>);(<UA7A1>,<UA7A0>);(<UA7A3>,<UA7A2>);/ - (<UA7A5>,<UA7A4>);(<UA7A7>,<UA7A6>);(<UA7A9>,<UA7A8>);(<UA7B5>,<UA7B4>);/ - (<UA7B7>,<UA7B6>);(<UA7B9>,<UA7B8>);(<UA7BB>,<UA7BA>);(<UA7BD>,<UA7BC>);/ - (<UA7BF>,<UA7BE>);(<UA7C1>,<UA7C0>);(<UA7C3>,<UA7C2>);(<UA7C8>,<UA7C7>);/ - (<UA7CA>,<UA7C9>);(<UA7D1>,<UA7D0>);(<UA7D7>,<UA7D6>);(<UA7D9>,<UA7D8>);/ - (<UA7F6>,<UA7F5>);(<UAB53>,<UA7B3>);(<UAB70>,<U13A0>);(<UAB71>,<U13A1>);/ - (<UAB72>,<U13A2>);(<UAB73>,<U13A3>);(<UAB74>,<U13A4>);(<UAB75>,<U13A5>);/ - (<UAB76>,<U13A6>);(<UAB77>,<U13A7>);(<UAB78>,<U13A8>);(<UAB79>,<U13A9>);/ - (<UAB7A>,<U13AA>);(<UAB7B>,<U13AB>);(<UAB7C>,<U13AC>);(<UAB7D>,<U13AD>);/ - (<UAB7E>,<U13AE>);(<UAB7F>,<U13AF>);(<UAB80>,<U13B0>);(<UAB81>,<U13B1>);/ - (<UAB82>,<U13B2>);(<UAB83>,<U13B3>);(<UAB84>,<U13B4>);(<UAB85>,<U13B5>);/ - (<UAB86>,<U13B6>);(<UAB87>,<U13B7>);(<UAB88>,<U13B8>);(<UAB89>,<U13B9>);/ - (<UAB8A>,<U13BA>);(<UAB8B>,<U13BB>);(<UAB8C>,<U13BC>);(<UAB8D>,<U13BD>);/ - (<UAB8E>,<U13BE>);(<UAB8F>,<U13BF>);(<UAB90>,<U13C0>);(<UAB91>,<U13C1>);/ - (<UAB92>,<U13C2>);(<UAB93>,<U13C3>);(<UAB94>,<U13C4>);(<UAB95>,<U13C5>);/ - (<UAB96>,<U13C6>);(<UAB97>,<U13C7>);(<UAB98>,<U13C8>);(<UAB99>,<U13C9>);/ - (<UAB9A>,<U13CA>);(<UAB9B>,<U13CB>);(<UAB9C>,<U13CC>);(<UAB9D>,<U13CD>);/ - (<UAB9E>,<U13CE>);(<UAB9F>,<U13CF>);(<UABA0>,<U13D0>);(<UABA1>,<U13D1>);/ - (<UABA2>,<U13D2>);(<UABA3>,<U13D3>);(<UABA4>,<U13D4>);(<UABA5>,<U13D5>);/ - (<UABA6>,<U13D6>);(<UABA7>,<U13D7>);(<UABA8>,<U13D8>);(<UABA9>,<U13D9>);/ - (<UABAA>,<U13DA>);(<UABAB>,<U13DB>);(<UABAC>,<U13DC>);(<UABAD>,<U13DD>);/ - (<UABAE>,<U13DE>);(<UABAF>,<U13DF>);(<UABB0>,<U13E0>);(<UABB1>,<U13E1>);/ - (<UABB2>,<U13E2>);(<UABB3>,<U13E3>);(<UABB4>,<U13E4>);(<UABB5>,<U13E5>);/ - (<UABB6>,<U13E6>);(<UABB7>,<U13E7>);(<UABB8>,<U13E8>);(<UABB9>,<U13E9>);/ - (<UABBA>,<U13EA>);(<UABBB>,<U13EB>);(<UABBC>,<U13EC>);(<UABBD>,<U13ED>);/ - (<UABBE>,<U13EE>);(<UABBF>,<U13EF>);(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);/ - (<UFF43>,<UFF23>);(<UFF44>,<UFF24>);(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);/ - (<UFF47>,<UFF27>);(<UFF48>,<UFF28>);(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);/ - (<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);/ - (<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);/ - (<UFF53>,<UFF33>);(<UFF54>,<UFF34>);(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);/ - (<UFF57>,<UFF37>);(<UFF58>,<UFF38>);(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);/ - (<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/ + (<U0199>,<U0198>);(<U019A>,<U023D>);(<U019B>,<UA7DC>);(<U019E>,<U0220>);/ + (<U01A1>,<U01A0>);(<U01A3>,<U01A2>);(<U01A5>,<U01A4>);(<U01A8>,<U01A7>);/ + (<U01AD>,<U01AC>);(<U01B0>,<U01AF>);(<U01B4>,<U01B3>);(<U01B6>,<U01B5>);/ + (<U01B9>,<U01B8>);(<U01BD>,<U01BC>);(<U01BF>,<U01F7>);(<U01C4>,<U01C5>);/ + (<U01C6>,<U01C5>);(<U01C7>,<U01C8>);(<U01C9>,<U01C8>);(<U01CA>,<U01CB>);/ + (<U01CC>,<U01CB>);(<U01CE>,<U01CD>);(<U01D0>,<U01CF>);(<U01D2>,<U01D1>);/ + (<U01D4>,<U01D3>);(<U01D6>,<U01D5>);(<U01D8>,<U01D7>);(<U01DA>,<U01D9>);/ + (<U01DC>,<U01DB>);(<U01DD>,<U018E>);(<U01DF>,<U01DE>);(<U01E1>,<U01E0>);/ + (<U01E3>,<U01E2>);(<U01E5>,<U01E4>);(<U01E7>,<U01E6>);(<U01E9>,<U01E8>);/ + (<U01EB>,<U01EA>);(<U01ED>,<U01EC>);(<U01EF>,<U01EE>);(<U01F1>,<U01F2>);/ + (<U01F3>,<U01F2>);(<U01F5>,<U01F4>);(<U01F9>,<U01F8>);(<U01FB>,<U01FA>);/ + (<U01FD>,<U01FC>);(<U01FF>,<U01FE>);(<U0201>,<U0200>);(<U0203>,<U0202>);/ + (<U0205>,<U0204>);(<U0207>,<U0206>);(<U0209>,<U0208>);(<U020B>,<U020A>);/ + (<U020D>,<U020C>);(<U020F>,<U020E>);(<U0211>,<U0210>);(<U0213>,<U0212>);/ + (<U0215>,<U0214>);(<U0217>,<U0216>);(<U0219>,<U0218>);(<U021B>,<U021A>);/ + (<U021D>,<U021C>);(<U021F>,<U021E>);(<U0223>,<U0222>);(<U0225>,<U0224>);/ + (<U0227>,<U0226>);(<U0229>,<U0228>);(<U022B>,<U022A>);(<U022D>,<U022C>);/ + (<U022F>,<U022E>);(<U0231>,<U0230>);(<U0233>,<U0232>);(<U023C>,<U023B>);/ + (<U023F>,<U2C7E>);(<U0240>,<U2C7F>);(<U0242>,<U0241>);(<U0247>,<U0246>);/ + (<U0249>,<U0248>);(<U024B>,<U024A>);(<U024D>,<U024C>);(<U024F>,<U024E>);/ + (<U0250>,<U2C6F>);(<U0251>,<U2C6D>);(<U0252>,<U2C70>);(<U0253>,<U0181>);/ + (<U0254>,<U0186>);(<U0256>,<U0189>);(<U0257>,<U018A>);(<U0259>,<U018F>);/ + (<U025B>,<U0190>);(<U025C>,<UA7AB>);(<U0260>,<U0193>);(<U0261>,<UA7AC>);/ + (<U0263>,<U0194>);(<U0264>,<UA7CB>);(<U0265>,<UA78D>);(<U0266>,<UA7AA>);/ + (<U0268>,<U0197>);(<U0269>,<U0196>);(<U026A>,<UA7AE>);(<U026B>,<U2C62>);/ + (<U026C>,<UA7AD>);(<U026F>,<U019C>);(<U0271>,<U2C6E>);(<U0272>,<U019D>);/ + (<U0275>,<U019F>);(<U027D>,<U2C64>);(<U0280>,<U01A6>);(<U0282>,<UA7C5>);/ + (<U0283>,<U01A9>);(<U0287>,<UA7B1>);(<U0288>,<U01AE>);(<U0289>,<U0244>);/ + (<U028A>,<U01B1>);(<U028B>,<U01B2>);(<U028C>,<U0245>);(<U0292>,<U01B7>);/ + (<U029D>,<UA7B2>);(<U029E>,<UA7B0>);(<U0345>,<U0399>);(<U0371>,<U0370>);/ + (<U0373>,<U0372>);(<U0377>,<U0376>);(<U037B>,<U03FD>);(<U037C>,<U03FE>);/ + (<U037D>,<U03FF>);(<U03AC>,<U0386>);(<U03AD>,<U0388>);(<U03AE>,<U0389>);/ + (<U03AF>,<U038A>);(<U03B1>,<U0391>);(<U03B2>,<U0392>);(<U03B3>,<U0393>);/ + (<U03B4>,<U0394>);(<U03B5>,<U0395>);(<U03B6>,<U0396>);(<U03B7>,<U0397>);/ + (<U03B8>,<U0398>);(<U03B9>,<U0399>);(<U03BA>,<U039A>);(<U03BB>,<U039B>);/ + (<U03BC>,<U039C>);(<U03BD>,<U039D>);(<U03BE>,<U039E>);(<U03BF>,<U039F>);/ + (<U03C0>,<U03A0>);(<U03C1>,<U03A1>);(<U03C2>,<U03A3>);(<U03C3>,<U03A3>);/ + (<U03C4>,<U03A4>);(<U03C5>,<U03A5>);(<U03C6>,<U03A6>);(<U03C7>,<U03A7>);/ + (<U03C8>,<U03A8>);(<U03C9>,<U03A9>);(<U03CA>,<U03AA>);(<U03CB>,<U03AB>);/ + (<U03CC>,<U038C>);(<U03CD>,<U038E>);(<U03CE>,<U038F>);(<U03D0>,<U0392>);/ + (<U03D1>,<U0398>);(<U03D5>,<U03A6>);(<U03D6>,<U03A0>);(<U03D7>,<U03CF>);/ + (<U03D9>,<U03D8>);(<U03DB>,<U03DA>);(<U03DD>,<U03DC>);(<U03DF>,<U03DE>);/ + (<U03E1>,<U03E0>);(<U03E3>,<U03E2>);(<U03E5>,<U03E4>);(<U03E7>,<U03E6>);/ + (<U03E9>,<U03E8>);(<U03EB>,<U03EA>);(<U03ED>,<U03EC>);(<U03EF>,<U03EE>);/ + (<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03F9>);(<U03F3>,<U037F>);/ + (<U03F5>,<U0395>);(<U03F8>,<U03F7>);(<U03FB>,<U03FA>);(<U0430>,<U0410>);/ + (<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);(<U0434>,<U0414>);/ + (<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);(<U0438>,<U0418>);/ + (<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);(<U043C>,<U041C>);/ + (<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);(<U0440>,<U0420>);/ + (<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);(<U0444>,<U0424>);/ + (<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);(<U0448>,<U0428>);/ + (<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);(<U044C>,<U042C>);/ + (<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);(<U0450>,<U0400>);/ + (<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);(<U0454>,<U0404>);/ + (<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);(<U0458>,<U0408>);/ + (<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);(<U045C>,<U040C>);/ + (<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);(<U0461>,<U0460>);/ + (<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);(<U0469>,<U0468>);/ + (<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);(<U0471>,<U0470>);/ + (<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);(<U0479>,<U0478>);/ + (<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);(<U0481>,<U0480>);/ + (<U048B>,<U048A>);(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);/ + (<U0493>,<U0492>);(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);/ + (<U049B>,<U049A>);(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);/ + (<U04A3>,<U04A2>);(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);/ + (<U04AB>,<U04AA>);(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);/ + (<U04B3>,<U04B2>);(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);/ + (<U04BB>,<U04BA>);(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);/ + (<U04C4>,<U04C3>);(<U04C6>,<U04C5>);(<U04C8>,<U04C7>);(<U04CA>,<U04C9>);/ + (<U04CC>,<U04CB>);(<U04CE>,<U04CD>);(<U04CF>,<U04C0>);(<U04D1>,<U04D0>);/ + (<U04D3>,<U04D2>);(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);/ + (<U04DB>,<U04DA>);(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);/ + (<U04E3>,<U04E2>);(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);/ + (<U04EB>,<U04EA>);(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);/ + (<U04F3>,<U04F2>);(<U04F5>,<U04F4>);(<U04F7>,<U04F6>);(<U04F9>,<U04F8>);/ + (<U04FB>,<U04FA>);(<U04FD>,<U04FC>);(<U04FF>,<U04FE>);(<U0501>,<U0500>);/ + (<U0503>,<U0502>);(<U0505>,<U0504>);(<U0507>,<U0506>);(<U0509>,<U0508>);/ + (<U050B>,<U050A>);(<U050D>,<U050C>);(<U050F>,<U050E>);(<U0511>,<U0510>);/ + (<U0513>,<U0512>);(<U0515>,<U0514>);(<U0517>,<U0516>);(<U0519>,<U0518>);/ + (<U051B>,<U051A>);(<U051D>,<U051C>);(<U051F>,<U051E>);(<U0521>,<U0520>);/ + (<U0523>,<U0522>);(<U0525>,<U0524>);(<U0527>,<U0526>);(<U0529>,<U0528>);/ + (<U052B>,<U052A>);(<U052D>,<U052C>);(<U052F>,<U052E>);(<U0561>,<U0531>);/ + (<U0562>,<U0532>);(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);/ + (<U0566>,<U0536>);(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);/ + (<U056A>,<U053A>);(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);/ + (<U056E>,<U053E>);(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);/ + (<U0572>,<U0542>);(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);/ + (<U0576>,<U0546>);(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);/ + (<U057A>,<U054A>);(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);/ + (<U057E>,<U054E>);(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);/ + (<U0582>,<U0552>);(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);/ + (<U0586>,<U0556>);(<U13F8>,<U13F0>);(<U13F9>,<U13F1>);(<U13FA>,<U13F2>);/ + (<U13FB>,<U13F3>);(<U13FC>,<U13F4>);(<U13FD>,<U13F5>);(<U1C80>,<U0412>);/ + (<U1C81>,<U0414>);(<U1C82>,<U041E>);(<U1C83>,<U0421>);(<U1C84>,<U0422>);/ + (<U1C85>,<U0422>);(<U1C86>,<U042A>);(<U1C87>,<U0462>);(<U1C88>,<UA64A>);/ + (<U1C8A>,<U1C89>);(<U1D79>,<UA77D>);(<U1D7D>,<U2C63>);(<U1D8E>,<UA7C6>);/ + (<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);(<U1E07>,<U1E06>);/ + (<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);/ + (<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);(<U1E17>,<U1E16>);/ + (<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);/ + (<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);(<U1E27>,<U1E26>);/ + (<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);/ + (<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);(<U1E37>,<U1E36>);/ + (<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);/ + (<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);(<U1E47>,<U1E46>);/ + (<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);/ + (<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);(<U1E57>,<U1E56>);/ + (<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);/ + (<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);(<U1E67>,<U1E66>);/ + (<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);/ + (<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);(<U1E77>,<U1E76>);/ + (<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);/ + (<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);(<U1E87>,<U1E86>);/ + (<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);/ + (<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);/ + (<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);/ + (<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);/ + (<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);/ + (<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);/ + (<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);/ + (<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);/ + (<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);/ + (<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);/ + (<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);/ + (<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);/ + (<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);/ + (<U1EF9>,<U1EF8>);(<U1EFB>,<U1EFA>);(<U1EFD>,<U1EFC>);(<U1EFF>,<U1EFE>);/ + (<U1F00>,<U1F08>);(<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);/ + (<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);/ + (<U1F10>,<U1F18>);(<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);/ + (<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);(<U1F21>,<U1F29>);/ + (<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);/ + (<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);(<U1F31>,<U1F39>);/ + (<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);/ + (<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);(<U1F41>,<U1F49>);/ + (<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);/ + (<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);/ + (<U1F60>,<U1F68>);(<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);/ + (<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);/ + (<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);/ + (<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);/ + (<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);/ + (<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);(<U1F81>,<U1F89>);/ + (<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);/ + (<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);(<U1F91>,<U1F99>);/ + (<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);/ + (<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);/ + (<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);/ + (<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);/ + (<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);/ + (<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);/ + (<U1FF3>,<U1FFC>);(<U214E>,<U2132>);(<U2170>,<U2160>);(<U2171>,<U2161>);/ + (<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);(<U2175>,<U2165>);/ + (<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);(<U2179>,<U2169>);/ + (<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);(<U217D>,<U216D>);/ + (<U217E>,<U216E>);(<U217F>,<U216F>);(<U2184>,<U2183>);(<U24D0>,<U24B6>);/ + (<U24D1>,<U24B7>);(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);/ + (<U24D5>,<U24BB>);(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);/ + (<U24D9>,<U24BF>);(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);/ + (<U24DD>,<U24C3>);(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);/ + (<U24E1>,<U24C7>);(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);/ + (<U24E5>,<U24CB>);(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);/ + (<U24E9>,<U24CF>);(<U2C30>,<U2C00>);(<U2C31>,<U2C01>);(<U2C32>,<U2C02>);/ + (<U2C33>,<U2C03>);(<U2C34>,<U2C04>);(<U2C35>,<U2C05>);(<U2C36>,<U2C06>);/ + (<U2C37>,<U2C07>);(<U2C38>,<U2C08>);(<U2C39>,<U2C09>);(<U2C3A>,<U2C0A>);/ + (<U2C3B>,<U2C0B>);(<U2C3C>,<U2C0C>);(<U2C3D>,<U2C0D>);(<U2C3E>,<U2C0E>);/ + (<U2C3F>,<U2C0F>);(<U2C40>,<U2C10>);(<U2C41>,<U2C11>);(<U2C42>,<U2C12>);/ + (<U2C43>,<U2C13>);(<U2C44>,<U2C14>);(<U2C45>,<U2C15>);(<U2C46>,<U2C16>);/ + (<U2C47>,<U2C17>);(<U2C48>,<U2C18>);(<U2C49>,<U2C19>);(<U2C4A>,<U2C1A>);/ + (<U2C4B>,<U2C1B>);(<U2C4C>,<U2C1C>);(<U2C4D>,<U2C1D>);(<U2C4E>,<U2C1E>);/ + (<U2C4F>,<U2C1F>);(<U2C50>,<U2C20>);(<U2C51>,<U2C21>);(<U2C52>,<U2C22>);/ + (<U2C53>,<U2C23>);(<U2C54>,<U2C24>);(<U2C55>,<U2C25>);(<U2C56>,<U2C26>);/ + (<U2C57>,<U2C27>);(<U2C58>,<U2C28>);(<U2C59>,<U2C29>);(<U2C5A>,<U2C2A>);/ + (<U2C5B>,<U2C2B>);(<U2C5C>,<U2C2C>);(<U2C5D>,<U2C2D>);(<U2C5E>,<U2C2E>);/ + (<U2C5F>,<U2C2F>);(<U2C61>,<U2C60>);(<U2C65>,<U023A>);(<U2C66>,<U023E>);/ + (<U2C68>,<U2C67>);(<U2C6A>,<U2C69>);(<U2C6C>,<U2C6B>);(<U2C73>,<U2C72>);/ + (<U2C76>,<U2C75>);(<U2C81>,<U2C80>);(<U2C83>,<U2C82>);(<U2C85>,<U2C84>);/ + (<U2C87>,<U2C86>);(<U2C89>,<U2C88>);(<U2C8B>,<U2C8A>);(<U2C8D>,<U2C8C>);/ + (<U2C8F>,<U2C8E>);(<U2C91>,<U2C90>);(<U2C93>,<U2C92>);(<U2C95>,<U2C94>);/ + (<U2C97>,<U2C96>);(<U2C99>,<U2C98>);(<U2C9B>,<U2C9A>);(<U2C9D>,<U2C9C>);/ + (<U2C9F>,<U2C9E>);(<U2CA1>,<U2CA0>);(<U2CA3>,<U2CA2>);(<U2CA5>,<U2CA4>);/ + (<U2CA7>,<U2CA6>);(<U2CA9>,<U2CA8>);(<U2CAB>,<U2CAA>);(<U2CAD>,<U2CAC>);/ + (<U2CAF>,<U2CAE>);(<U2CB1>,<U2CB0>);(<U2CB3>,<U2CB2>);(<U2CB5>,<U2CB4>);/ + (<U2CB7>,<U2CB6>);(<U2CB9>,<U2CB8>);(<U2CBB>,<U2CBA>);(<U2CBD>,<U2CBC>);/ + (<U2CBF>,<U2CBE>);(<U2CC1>,<U2CC0>);(<U2CC3>,<U2CC2>);(<U2CC5>,<U2CC4>);/ + (<U2CC7>,<U2CC6>);(<U2CC9>,<U2CC8>);(<U2CCB>,<U2CCA>);(<U2CCD>,<U2CCC>);/ + (<U2CCF>,<U2CCE>);(<U2CD1>,<U2CD0>);(<U2CD3>,<U2CD2>);(<U2CD5>,<U2CD4>);/ + (<U2CD7>,<U2CD6>);(<U2CD9>,<U2CD8>);(<U2CDB>,<U2CDA>);(<U2CDD>,<U2CDC>);/ + (<U2CDF>,<U2CDE>);(<U2CE1>,<U2CE0>);(<U2CE3>,<U2CE2>);(<U2CEC>,<U2CEB>);/ + (<U2CEE>,<U2CED>);(<U2CF3>,<U2CF2>);(<U2D00>,<U10A0>);(<U2D01>,<U10A1>);/ + (<U2D02>,<U10A2>);(<U2D03>,<U10A3>);(<U2D04>,<U10A4>);(<U2D05>,<U10A5>);/ + (<U2D06>,<U10A6>);(<U2D07>,<U10A7>);(<U2D08>,<U10A8>);(<U2D09>,<U10A9>);/ + (<U2D0A>,<U10AA>);(<U2D0B>,<U10AB>);(<U2D0C>,<U10AC>);(<U2D0D>,<U10AD>);/ + (<U2D0E>,<U10AE>);(<U2D0F>,<U10AF>);(<U2D10>,<U10B0>);(<U2D11>,<U10B1>);/ + (<U2D12>,<U10B2>);(<U2D13>,<U10B3>);(<U2D14>,<U10B4>);(<U2D15>,<U10B5>);/ + (<U2D16>,<U10B6>);(<U2D17>,<U10B7>);(<U2D18>,<U10B8>);(<U2D19>,<U10B9>);/ + (<U2D1A>,<U10BA>);(<U2D1B>,<U10BB>);(<U2D1C>,<U10BC>);(<U2D1D>,<U10BD>);/ + (<U2D1E>,<U10BE>);(<U2D1F>,<U10BF>);(<U2D20>,<U10C0>);(<U2D21>,<U10C1>);/ + (<U2D22>,<U10C2>);(<U2D23>,<U10C3>);(<U2D24>,<U10C4>);(<U2D25>,<U10C5>);/ + (<U2D27>,<U10C7>);(<U2D2D>,<U10CD>);(<UA641>,<UA640>);(<UA643>,<UA642>);/ + (<UA645>,<UA644>);(<UA647>,<UA646>);(<UA649>,<UA648>);(<UA64B>,<UA64A>);/ + (<UA64D>,<UA64C>);(<UA64F>,<UA64E>);(<UA651>,<UA650>);(<UA653>,<UA652>);/ + (<UA655>,<UA654>);(<UA657>,<UA656>);(<UA659>,<UA658>);(<UA65B>,<UA65A>);/ + (<UA65D>,<UA65C>);(<UA65F>,<UA65E>);(<UA661>,<UA660>);(<UA663>,<UA662>);/ + (<UA665>,<UA664>);(<UA667>,<UA666>);(<UA669>,<UA668>);(<UA66B>,<UA66A>);/ + (<UA66D>,<UA66C>);(<UA681>,<UA680>);(<UA683>,<UA682>);(<UA685>,<UA684>);/ + (<UA687>,<UA686>);(<UA689>,<UA688>);(<UA68B>,<UA68A>);(<UA68D>,<UA68C>);/ + (<UA68F>,<UA68E>);(<UA691>,<UA690>);(<UA693>,<UA692>);(<UA695>,<UA694>);/ + (<UA697>,<UA696>);(<UA699>,<UA698>);(<UA69B>,<UA69A>);(<UA723>,<UA722>);/ + (<UA725>,<UA724>);(<UA727>,<UA726>);(<UA729>,<UA728>);(<UA72B>,<UA72A>);/ + (<UA72D>,<UA72C>);(<UA72F>,<UA72E>);(<UA733>,<UA732>);(<UA735>,<UA734>);/ + (<UA737>,<UA736>);(<UA739>,<UA738>);(<UA73B>,<UA73A>);(<UA73D>,<UA73C>);/ + (<UA73F>,<UA73E>);(<UA741>,<UA740>);(<UA743>,<UA742>);(<UA745>,<UA744>);/ + (<UA747>,<UA746>);(<UA749>,<UA748>);(<UA74B>,<UA74A>);(<UA74D>,<UA74C>);/ + (<UA74F>,<UA74E>);(<UA751>,<UA750>);(<UA753>,<UA752>);(<UA755>,<UA754>);/ + (<UA757>,<UA756>);(<UA759>,<UA758>);(<UA75B>,<UA75A>);(<UA75D>,<UA75C>);/ + (<UA75F>,<UA75E>);(<UA761>,<UA760>);(<UA763>,<UA762>);(<UA765>,<UA764>);/ + (<UA767>,<UA766>);(<UA769>,<UA768>);(<UA76B>,<UA76A>);(<UA76D>,<UA76C>);/ + (<UA76F>,<UA76E>);(<UA77A>,<UA779>);(<UA77C>,<UA77B>);(<UA77F>,<UA77E>);/ + (<UA781>,<UA780>);(<UA783>,<UA782>);(<UA785>,<UA784>);(<UA787>,<UA786>);/ + (<UA78C>,<UA78B>);(<UA791>,<UA790>);(<UA793>,<UA792>);(<UA794>,<UA7C4>);/ + (<UA797>,<UA796>);(<UA799>,<UA798>);(<UA79B>,<UA79A>);(<UA79D>,<UA79C>);/ + (<UA79F>,<UA79E>);(<UA7A1>,<UA7A0>);(<UA7A3>,<UA7A2>);(<UA7A5>,<UA7A4>);/ + (<UA7A7>,<UA7A6>);(<UA7A9>,<UA7A8>);(<UA7B5>,<UA7B4>);(<UA7B7>,<UA7B6>);/ + (<UA7B9>,<UA7B8>);(<UA7BB>,<UA7BA>);(<UA7BD>,<UA7BC>);(<UA7BF>,<UA7BE>);/ + (<UA7C1>,<UA7C0>);(<UA7C3>,<UA7C2>);(<UA7C8>,<UA7C7>);(<UA7CA>,<UA7C9>);/ + (<UA7CD>,<UA7CC>);(<UA7D1>,<UA7D0>);(<UA7D7>,<UA7D6>);(<UA7D9>,<UA7D8>);/ + (<UA7DB>,<UA7DA>);(<UA7F6>,<UA7F5>);(<UAB53>,<UA7B3>);(<UAB70>,<U13A0>);/ + (<UAB71>,<U13A1>);(<UAB72>,<U13A2>);(<UAB73>,<U13A3>);(<UAB74>,<U13A4>);/ + (<UAB75>,<U13A5>);(<UAB76>,<U13A6>);(<UAB77>,<U13A7>);(<UAB78>,<U13A8>);/ + (<UAB79>,<U13A9>);(<UAB7A>,<U13AA>);(<UAB7B>,<U13AB>);(<UAB7C>,<U13AC>);/ + (<UAB7D>,<U13AD>);(<UAB7E>,<U13AE>);(<UAB7F>,<U13AF>);(<UAB80>,<U13B0>);/ + (<UAB81>,<U13B1>);(<UAB82>,<U13B2>);(<UAB83>,<U13B3>);(<UAB84>,<U13B4>);/ + (<UAB85>,<U13B5>);(<UAB86>,<U13B6>);(<UAB87>,<U13B7>);(<UAB88>,<U13B8>);/ + (<UAB89>,<U13B9>);(<UAB8A>,<U13BA>);(<UAB8B>,<U13BB>);(<UAB8C>,<U13BC>);/ + (<UAB8D>,<U13BD>);(<UAB8E>,<U13BE>);(<UAB8F>,<U13BF>);(<UAB90>,<U13C0>);/ + (<UAB91>,<U13C1>);(<UAB92>,<U13C2>);(<UAB93>,<U13C3>);(<UAB94>,<U13C4>);/ + (<UAB95>,<U13C5>);(<UAB96>,<U13C6>);(<UAB97>,<U13C7>);(<UAB98>,<U13C8>);/ + (<UAB99>,<U13C9>);(<UAB9A>,<U13CA>);(<UAB9B>,<U13CB>);(<UAB9C>,<U13CC>);/ + (<UAB9D>,<U13CD>);(<UAB9E>,<U13CE>);(<UAB9F>,<U13CF>);(<UABA0>,<U13D0>);/ + (<UABA1>,<U13D1>);(<UABA2>,<U13D2>);(<UABA3>,<U13D3>);(<UABA4>,<U13D4>);/ + (<UABA5>,<U13D5>);(<UABA6>,<U13D6>);(<UABA7>,<U13D7>);(<UABA8>,<U13D8>);/ + (<UABA9>,<U13D9>);(<UABAA>,<U13DA>);(<UABAB>,<U13DB>);(<UABAC>,<U13DC>);/ + (<UABAD>,<U13DD>);(<UABAE>,<U13DE>);(<UABAF>,<U13DF>);(<UABB0>,<U13E0>);/ + (<UABB1>,<U13E1>);(<UABB2>,<U13E2>);(<UABB3>,<U13E3>);(<UABB4>,<U13E4>);/ + (<UABB5>,<U13E5>);(<UABB6>,<U13E6>);(<UABB7>,<U13E7>);(<UABB8>,<U13E8>);/ + (<UABB9>,<U13E9>);(<UABBA>,<U13EA>);(<UABBB>,<U13EB>);(<UABBC>,<U13EC>);/ + (<UABBD>,<U13ED>);(<UABBE>,<U13EE>);(<UABBF>,<U13EF>);(<UFF41>,<UFF21>);/ + (<UFF42>,<UFF22>);(<UFF43>,<UFF23>);(<UFF44>,<UFF24>);(<UFF45>,<UFF25>);/ + (<UFF46>,<UFF26>);(<UFF47>,<UFF27>);(<UFF48>,<UFF28>);(<UFF49>,<UFF29>);/ + (<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);/ + (<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);(<UFF51>,<UFF31>);/ + (<UFF52>,<UFF32>);(<UFF53>,<UFF33>);(<UFF54>,<UFF34>);(<UFF55>,<UFF35>);/ + (<UFF56>,<UFF36>);(<UFF57>,<UFF37>);(<UFF58>,<UFF38>);(<UFF59>,<UFF39>);/ + (<UFF5A>,<UFF3A>);(<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/ (<U0001042A>,<U00010402>);(<U0001042B>,<U00010403>);/ (<U0001042C>,<U00010404>);(<U0001042D>,<U00010405>);/ (<U0001042E>,<U00010406>);(<U0001042F>,<U00010407>);/ @@ -2496,6 +2565,17 @@ map "totitle"; / (<U00010CED>,<U00010CAD>);(<U00010CEE>,<U00010CAE>);/ (<U00010CEF>,<U00010CAF>);(<U00010CF0>,<U00010CB0>);/ (<U00010CF1>,<U00010CB1>);(<U00010CF2>,<U00010CB2>);/ + (<U00010D70>,<U00010D50>);(<U00010D71>,<U00010D51>);/ + (<U00010D72>,<U00010D52>);(<U00010D73>,<U00010D53>);/ + (<U00010D74>,<U00010D54>);(<U00010D75>,<U00010D55>);/ + (<U00010D76>,<U00010D56>);(<U00010D77>,<U00010D57>);/ + (<U00010D78>,<U00010D58>);(<U00010D79>,<U00010D59>);/ + (<U00010D7A>,<U00010D5A>);(<U00010D7B>,<U00010D5B>);/ + (<U00010D7C>,<U00010D5C>);(<U00010D7D>,<U00010D5D>);/ + (<U00010D7E>,<U00010D5E>);(<U00010D7F>,<U00010D5F>);/ + (<U00010D80>,<U00010D60>);(<U00010D81>,<U00010D61>);/ + (<U00010D82>,<U00010D62>);(<U00010D83>,<U00010D63>);/ + (<U00010D84>,<U00010D64>);(<U00010D85>,<U00010D65>);/ (<U000118C0>,<U000118A0>);(<U000118C1>,<U000118A1>);/ (<U000118C2>,<U000118A2>);(<U000118C3>,<U000118A3>);/ (<U000118C4>,<U000118A4>);(<U000118C5>,<U000118A5>);/ @@ -2555,7 +2635,7 @@ class "combining"; / <U06E7>..<U06E8>;<U06EA>..<U06ED>;<U0711>;<U0730>..<U074A>;/ <U07A6>..<U07B0>;<U07EB>..<U07F3>;<U07FD>;<U0816>..<U0819>;/ <U081B>..<U0823>;<U0825>..<U0827>;<U0829>..<U082D>;<U0859>..<U085B>;/ - <U0898>..<U089F>;<U08CA>..<U08E1>;<U08E3>..<U0903>;<U093A>..<U093C>;/ + <U0897>..<U089F>;<U08CA>..<U08E1>;<U08E3>..<U0903>;<U093A>..<U093C>;/ <U093E>..<U094F>;<U0951>..<U0957>;<U0962>..<U0963>;<U0981>..<U0983>;/ <U09BC>;<U09BE>..<U09C4>;<U09C7>..<U09C8>;<U09CB>..<U09CD>;<U09D7>;/ <U09E2>..<U09E3>;<U09FE>;<U0A01>..<U0A03>;<U0A3C>;<U0A3E>..<U0A42>;/ @@ -2597,21 +2677,24 @@ class "combining"; / <U00010376>..<U0001037A>;<U00010A01>..<U00010A03>;/ <U00010A05>..<U00010A06>;<U00010A0C>..<U00010A0F>;/ <U00010A38>..<U00010A3A>;<U00010A3F>;<U00010AE5>..<U00010AE6>;/ - <U00010D24>..<U00010D27>;<U00010EAB>..<U00010EAC>;/ - <U00010EFD>..<U00010EFF>;<U00010F46>..<U00010F50>;/ - <U00010F82>..<U00010F85>;<U00011000>..<U00011002>;/ - <U00011038>..<U00011046>;<U00011070>;<U00011073>..<U00011074>;/ - <U0001107F>..<U00011082>;<U000110B0>..<U000110BA>;<U000110C2>;/ - <U00011100>..<U00011102>;<U00011127>..<U00011134>;/ - <U00011145>..<U00011146>;<U00011173>;<U00011180>..<U00011182>;/ - <U000111B3>..<U000111C0>;<U000111C9>..<U000111CC>;/ - <U000111CE>..<U000111CF>;<U0001122C>..<U00011237>;<U0001123E>;/ - <U00011241>;<U000112DF>..<U000112EA>;<U00011300>..<U00011303>;/ + <U00010D24>..<U00010D27>;<U00010D69>..<U00010D6D>;/ + <U00010EAB>..<U00010EAC>;<U00010EFC>..<U00010EFF>;/ + <U00010F46>..<U00010F50>;<U00010F82>..<U00010F85>;/ + <U00011000>..<U00011002>;<U00011038>..<U00011046>;<U00011070>;/ + <U00011073>..<U00011074>;<U0001107F>..<U00011082>;/ + <U000110B0>..<U000110BA>;<U000110C2>;<U00011100>..<U00011102>;/ + <U00011127>..<U00011134>;<U00011145>..<U00011146>;<U00011173>;/ + <U00011180>..<U00011182>;<U000111B3>..<U000111C0>;/ + <U000111C9>..<U000111CC>;<U000111CE>..<U000111CF>;/ + <U0001122C>..<U00011237>;<U0001123E>;<U00011241>;/ + <U000112DF>..<U000112EA>;<U00011300>..<U00011303>;/ <U0001133B>..<U0001133C>;<U0001133E>..<U00011344>;/ <U00011347>..<U00011348>;<U0001134B>..<U0001134D>;<U00011357>;/ <U00011362>..<U00011363>;<U00011366>..<U0001136C>;/ - <U00011370>..<U00011374>;<U00011435>..<U00011446>;<U0001145E>;/ - <U000114B0>..<U000114C3>;<U000115AF>..<U000115B5>;/ + <U00011370>..<U00011374>;<U000113B8>..<U000113C0>;<U000113C2>;/ + <U000113C5>;<U000113C7>..<U000113CA>;<U000113CC>..<U000113D0>;/ + <U000113D2>;<U000113E1>..<U000113E2>;<U00011435>..<U00011446>;/ + <U0001145E>;<U000114B0>..<U000114C3>;<U000115AF>..<U000115B5>;/ <U000115B8>..<U000115C0>;<U000115DC>..<U000115DD>;/ <U00011630>..<U00011640>;<U000116AB>..<U000116B7>;/ <U0001171D>..<U0001172B>;<U0001182C>..<U0001183A>;/ @@ -2627,7 +2710,8 @@ class "combining"; / <U00011D8A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ <U00011D93>..<U00011D97>;<U00011EF3>..<U00011EF6>;/ <U00011F00>..<U00011F01>;<U00011F03>;<U00011F34>..<U00011F3A>;/ - <U00011F3E>..<U00011F42>;<U00013440>;<U00013447>..<U00013455>;/ + <U00011F3E>..<U00011F42>;<U00011F5A>;<U00013440>;/ + <U00013447>..<U00013455>;<U0001611E>..<U0001612F>;/ <U00016AF0>..<U00016AF4>;<U00016B30>..<U00016B36>;<U00016F4F>;/ <U00016F51>..<U00016F87>;<U00016F8F>..<U00016F92>;<U00016FE4>;/ <U00016FF0>..<U00016FF1>;<U0001BC9D>..<U0001BC9E>;/ @@ -2641,8 +2725,8 @@ class "combining"; / <U0001E01B>..<U0001E021>;<U0001E023>..<U0001E024>;/ <U0001E026>..<U0001E02A>;<U0001E08F>;<U0001E130>..<U0001E136>;/ <U0001E2AE>;<U0001E2EC>..<U0001E2EF>;<U0001E4EC>..<U0001E4EF>;/ - <U0001E8D0>..<U0001E8D6>;<U0001E944>..<U0001E94A>;/ - <U000E0100>..<U000E01EF> + <U0001E5EE>..<U0001E5EF>;<U0001E8D0>..<U0001E8D6>;/ + <U0001E944>..<U0001E94A>;<U000E0100>..<U000E01EF> % The "combining_level3" class reflects ISO/IEC 10646-1 annex B.2 % That is, combining characters of level 3. @@ -2684,7 +2768,7 @@ class "combining_level3"; / <UAA4C>..<UAA4D>;<UAA7B>..<UAA7D>;<UAAEB>..<UAAEF>;<UAAF5>..<UAAF6>;/ <UABE3>..<UABEA>;<UABEC>..<UABED>;<UFB1E>;<UFE00>..<UFE0F>;/ <U00010A01>..<U00010A03>;<U00010A05>..<U00010A06>;<U00010A0C>;/ - <U00010A0E>;<U00010A39>;<U00010A3F>;<U00011000>..<U00011002>;/ + <U00010A0E>;<U00010A39>;<U00010A3F>;<U00010EFC>;<U00011000>..<U00011002>;/ <U00011038>..<U00011046>;<U00011070>;<U00011073>..<U00011074>;/ <U0001107F>..<U00011082>;<U000110B0>..<U000110BA>;<U000110C2>;/ <U00011127>..<U00011134>;<U00011145>..<U00011146>;<U00011173>;/ @@ -2694,7 +2778,9 @@ class "combining_level3"; / <U000112DF>..<U000112EA>;<U00011300>..<U00011303>;/ <U0001133B>..<U0001133C>;<U0001133E>..<U00011344>;/ <U00011347>..<U00011348>;<U0001134B>..<U0001134D>;<U00011357>;/ - <U00011362>..<U00011363>;<U00011435>..<U00011446>;/ + <U00011362>..<U00011363>;<U000113B8>..<U000113C0>;<U000113C2>;/ + <U000113C5>;<U000113C7>..<U000113CA>;<U000113CC>..<U000113D0>;/ + <U000113D2>;<U000113E1>..<U000113E2>;<U00011435>..<U00011446>;/ <U000114B0>..<U000114C3>;<U000115AF>..<U000115B5>;/ <U000115B8>..<U000115C0>;<U000115DC>..<U000115DD>;/ <U00011630>..<U00011640>;<U000116AB>..<U000116B7>;/ @@ -2711,7 +2797,8 @@ class "combining_level3"; / <U00011D8A>..<U00011D8E>;<U00011D90>..<U00011D91>;/ <U00011D93>..<U00011D97>;<U00011EF3>..<U00011EF6>;/ <U00011F00>..<U00011F01>;<U00011F03>;<U00011F34>..<U00011F3A>;/ - <U00011F3E>..<U00011F42>;<U00013440>;<U00013447>..<U00013455>;/ + <U00011F3E>..<U00011F42>;<U00011F5A>;<U00013440>;/ + <U00013447>..<U00013455>;<U0001611E>..<U0001612F>;/ <U00016AF0>..<U00016AF4>;<U00016F4F>;<U00016F51>..<U00016F87>;/ <U00016F8F>..<U00016F92>;<U00016FE4>;<U00016FF0>..<U00016FF1>;/ <U0001BC9D>..<U0001BC9E>;<U0001CF00>..<U0001CF2D>;/ diff --git a/localedata/locales/translit_circle b/localedata/locales/translit_circle index 20fd57168f..308cf627fe 100644 --- a/localedata/locales/translit_circle +++ b/localedata/locales/translit_circle @@ -9,7 +9,7 @@ comment_char % % otherwise be governed by that license. % Transliterations of encircled characters. -% Generated automatically from UnicodeData.txt by gen_translit_circle.py on 2023-09-15 for Unicode 15.1.0. +% Generated automatically from UnicodeData.txt by gen_translit_circle.py on 2024-09-12 for Unicode 16.0.0. LC_CTYPE diff --git a/localedata/locales/translit_cjk_compat b/localedata/locales/translit_cjk_compat index 7951e0cd64..de1d39d2ff 100644 --- a/localedata/locales/translit_cjk_compat +++ b/localedata/locales/translit_cjk_compat @@ -9,7 +9,7 @@ comment_char % % otherwise be governed by that license. % Transliterations of CJK compatibility characters. -% Generated automatically from UnicodeData.txt by gen_translit_cjk_compat.py on 2023-09-15 for Unicode 15.1.0. +% Generated automatically from UnicodeData.txt by gen_translit_cjk_compat.py on 2024-09-12 for Unicode 16.0.0. LC_CTYPE diff --git a/localedata/locales/translit_combining b/localedata/locales/translit_combining index ce2f19eee1..c0de4bfd74 100644 --- a/localedata/locales/translit_combining +++ b/localedata/locales/translit_combining @@ -10,7 +10,7 @@ comment_char % % Transliterations that remove all combining characters (accents, % pronounciation marks, etc.). -% Generated automatically from UnicodeData.txt by gen_translit_combining.py on 2023-09-15 for Unicode 15.1.0. +% Generated automatically from UnicodeData.txt by gen_translit_combining.py on 2024-09-12 for Unicode 16.0.0. LC_CTYPE @@ -446,6 +446,8 @@ translit_start <U06EC> "" % ARABIC SMALL LOW MEEM <U06ED> "" +% ARABIC PEPET +<U0897> "" % ARABIC SMALL HIGH WORD AL-JUZ <U0898> "" % ARABIC SMALL LOW WORD ISHMAAM @@ -878,10 +880,22 @@ translit_start <U00010D26> "" % HANIFI ROHINGYA SIGN TASSI <U00010D27> "" +% GARAY VOWEL SIGN E +<U00010D69> "" +% GARAY CONSONANT GEMINATION MARK +<U00010D6A> "" +% GARAY COMBINING DOT ABOVE +<U00010D6B> "" +% GARAY COMBINING DOUBLE DOT ABOVE +<U00010D6C> "" +% GARAY CONSONANT NASALIZATION MARK +<U00010D6D> "" % YEZIDI COMBINING HAMZA MARK <U00010EAB> "" % YEZIDI COMBINING MADDA MARK <U00010EAC> "" +% ARABIC COMBINING ALEF OVERLAY +<U00010EFC> "" % ARABIC SMALL LOW WORD SAKTA <U00010EFD> "" % ARABIC SMALL LOW WORD QASR @@ -920,6 +934,48 @@ translit_start <U00010F85> "" % COMBINING BINDU BELOW <U0001133B> "" +% TULU-TIGALARI VOWEL SIGN AA +<U000113B8> "" +% TULU-TIGALARI VOWEL SIGN I +<U000113B9> "" +% TULU-TIGALARI VOWEL SIGN II +<U000113BA> "" +% TULU-TIGALARI VOWEL SIGN U +<U000113BB> "" +% TULU-TIGALARI VOWEL SIGN UU +<U000113BC> "" +% TULU-TIGALARI VOWEL SIGN VOCALIC R +<U000113BD> "" +% TULU-TIGALARI VOWEL SIGN VOCALIC RR +<U000113BE> "" +% TULU-TIGALARI VOWEL SIGN VOCALIC L +<U000113BF> "" +% TULU-TIGALARI VOWEL SIGN VOCALIC LL +<U000113C0> "" +% TULU-TIGALARI VOWEL SIGN EE +<U000113C2> "" +% TULU-TIGALARI VOWEL SIGN AI +<U000113C5> "" +% TULU-TIGALARI VOWEL SIGN OO +<U000113C7> "" +% TULU-TIGALARI VOWEL SIGN AU +<U000113C8> "" +% TULU-TIGALARI AU LENGTH MARK +<U000113C9> "" +% TULU-TIGALARI SIGN CANDRA ANUNASIKA +<U000113CA> "" +% TULU-TIGALARI SIGN ANUSVARA +<U000113CC> "" +% TULU-TIGALARI SIGN VISARGA +<U000113CD> "" +% TULU-TIGALARI SIGN VIRAMA +<U000113CE> "" +% TULU-TIGALARI SIGN LOOPED VIRAMA +<U000113CF> "" +% TULU-TIGALARI CONJOINER +<U000113D0> "" +% TULU-TIGALARI GEMINATION MARK +<U000113D2> "" % NEWA VOWEL SIGN AA <U00011435> "" % NEWA VOWEL SIGN I @@ -1346,6 +1402,8 @@ translit_start <U00011F41> "" % KAWI CONJOINER <U00011F42> "" +% KAWI SIGN NUKTA +<U00011F5A> "" % EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY <U00013440> "" % EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START @@ -1378,6 +1436,42 @@ translit_start <U00013454> "" % EGYPTIAN HIEROGLYPH MODIFIER DAMAGED <U00013455> "" +% GURUNG KHEMA VOWEL SIGN AA +<U0001611E> "" +% GURUNG KHEMA VOWEL SIGN I +<U0001611F> "" +% GURUNG KHEMA VOWEL SIGN II +<U00016120> "" +% GURUNG KHEMA VOWEL SIGN U +<U00016121> "" +% GURUNG KHEMA VOWEL SIGN UU +<U00016122> "" +% GURUNG KHEMA VOWEL SIGN E +<U00016123> "" +% GURUNG KHEMA VOWEL SIGN EE +<U00016124> "" +% GURUNG KHEMA VOWEL SIGN AI +<U00016125> "" +% GURUNG KHEMA VOWEL SIGN O +<U00016126> "" +% GURUNG KHEMA VOWEL SIGN OO +<U00016127> "" +% GURUNG KHEMA VOWEL SIGN AU +<U00016128> "" +% GURUNG KHEMA VOWEL LENGTH MARK +<U00016129> "" +% GURUNG KHEMA CONSONANT SIGN MEDIAL YA +<U0001612A> "" +% GURUNG KHEMA CONSONANT SIGN MEDIAL VA +<U0001612B> "" +% GURUNG KHEMA CONSONANT SIGN MEDIAL HA +<U0001612C> "" +% GURUNG KHEMA SIGN ANUSVARA +<U0001612D> "" +% GURUNG KHEMA CONSONANT SIGN MEDIAL RA +<U0001612E> "" +% GURUNG KHEMA SIGN THOLHOMA +<U0001612F> "" % KHITAN SMALL SCRIPT FILLER <U00016FE4> "" % VIETNAMESE ALTERNATE READING MARK CA @@ -1636,6 +1730,10 @@ translit_start <U0001E4EE> "" % NAG MUNDARI SIGN SUTUH <U0001E4EF> "" +% OL ONAL SIGN MU +<U0001E5EE> "" +% OL ONAL SIGN IKIR +<U0001E5EF> "" % ADLAM ALIF LENGTHENER <U0001E944> "" % ADLAM VOWEL LENGTHENER @@ -3705,6 +3803,24 @@ translit_start <UFB4D> <U05DB> % HEBREW LETTER PE WITH RAFE <UFB4E> <U05E4> +% TODHRI LETTER EI +<U000105C9> <U000105D2> +% TODHRI LETTER U +<U000105E4> <U000105DA> +% TULU-TIGALARI LETTER II +<U00011383> <U00011382> +% TULU-TIGALARI LETTER UU +<U00011385> <U00011384> +% TULU-TIGALARI LETTER AI +<U0001138E> <U0001138B> +% TULU-TIGALARI LETTER AU +<U00011391> <U00011390> +% KIRAT RAI VOWEL SIGN AI +<U00016D68> "<U00016D67><U00016D67>" +% KIRAT RAI VOWEL SIGN O +<U00016D69> "<U00016D63><U00016D67>" +% KIRAT RAI VOWEL SIGN AU +<U00016D6A> "<U00016D63><U00016D67><U00016D67>" translit_end diff --git a/localedata/locales/translit_compat b/localedata/locales/translit_compat index 7a214b2723..dd36388010 100644 --- a/localedata/locales/translit_compat +++ b/localedata/locales/translit_compat @@ -9,7 +9,7 @@ comment_char % % otherwise be governed by that license. % Transliterations of compatibility characters and ligatures. -% Generated automatically from UnicodeData.txt by gen_translit_compat.py on 2023-09-15 for Unicode 15.1.0. +% Generated automatically from UnicodeData.txt by gen_translit_compat.py on 2024-09-12 for Unicode 16.0.0. LC_CTYPE diff --git a/localedata/locales/translit_font b/localedata/locales/translit_font index a977ae1f29..dc45eb7795 100644 --- a/localedata/locales/translit_font +++ b/localedata/locales/translit_font @@ -9,7 +9,7 @@ comment_char % % otherwise be governed by that license. % Transliterations of font equivalents. -% Generated automatically from UnicodeData.txt by gen_translit_font.py on 2023-09-15 for Unicode 15.1.0. +% Generated automatically from UnicodeData.txt by gen_translit_font.py on 2024-09-12 for Unicode 16.0.0. LC_CTYPE @@ -62,6 +62,42 @@ translit_start <UFB27> <U05E8> % HEBREW LETTER WIDE RESH <UFB28> <U05EA> % HEBREW LETTER WIDE TAV <UFB29> <U002B> % HEBREW LETTER ALTERNATIVE PLUS SIGN +<U0001CCD6> <U0041> % OUTLINED LATIN CAPITAL LETTER A +<U0001CCD7> <U0042> % OUTLINED LATIN CAPITAL LETTER B +<U0001CCD8> <U0043> % OUTLINED LATIN CAPITAL LETTER C +<U0001CCD9> <U0044> % OUTLINED LATIN CAPITAL LETTER D +<U0001CCDA> <U0045> % OUTLINED LATIN CAPITAL LETTER E +<U0001CCDB> <U0046> % OUTLINED LATIN CAPITAL LETTER F +<U0001CCDC> <U0047> % OUTLINED LATIN CAPITAL LETTER G +<U0001CCDD> <U0048> % OUTLINED LATIN CAPITAL LETTER H +<U0001CCDE> <U0049> % OUTLINED LATIN CAPITAL LETTER I +<U0001CCDF> <U004A> % OUTLINED LATIN CAPITAL LETTER J +<U0001CCE0> <U004B> % OUTLINED LATIN CAPITAL LETTER K +<U0001CCE1> <U004C> % OUTLINED LATIN CAPITAL LETTER L +<U0001CCE2> <U004D> % OUTLINED LATIN CAPITAL LETTER M +<U0001CCE3> <U004E> % OUTLINED LATIN CAPITAL LETTER N +<U0001CCE4> <U004F> % OUTLINED LATIN CAPITAL LETTER O +<U0001CCE5> <U0050> % OUTLINED LATIN CAPITAL LETTER P +<U0001CCE6> <U0051> % OUTLINED LATIN CAPITAL LETTER Q +<U0001CCE7> <U0052> % OUTLINED LATIN CAPITAL LETTER R +<U0001CCE8> <U0053> % OUTLINED LATIN CAPITAL LETTER S +<U0001CCE9> <U0054> % OUTLINED LATIN CAPITAL LETTER T +<U0001CCEA> <U0055> % OUTLINED LATIN CAPITAL LETTER U +<U0001CCEB> <U0056> % OUTLINED LATIN CAPITAL LETTER V +<U0001CCEC> <U0057> % OUTLINED LATIN CAPITAL LETTER W +<U0001CCED> <U0058> % OUTLINED LATIN CAPITAL LETTER X +<U0001CCEE> <U0059> % OUTLINED LATIN CAPITAL LETTER Y +<U0001CCEF> <U005A> % OUTLINED LATIN CAPITAL LETTER Z +<U0001CCF0> <U0030> % OUTLINED DIGIT ZERO +<U0001CCF1> <U0031> % OUTLINED DIGIT ONE +<U0001CCF2> <U0032> % OUTLINED DIGIT TWO +<U0001CCF3> <U0033> % OUTLINED DIGIT THREE +<U0001CCF4> <U0034> % OUTLINED DIGIT FOUR +<U0001CCF5> <U0035> % OUTLINED DIGIT FIVE +<U0001CCF6> <U0036> % OUTLINED DIGIT SIX +<U0001CCF7> <U0037> % OUTLINED DIGIT SEVEN +<U0001CCF8> <U0038> % OUTLINED DIGIT EIGHT +<U0001CCF9> <U0039> % OUTLINED DIGIT NINE <U0001D400> <U0041> % MATHEMATICAL BOLD CAPITAL A <U0001D401> <U0042> % MATHEMATICAL BOLD CAPITAL B <U0001D402> <U0043> % MATHEMATICAL BOLD CAPITAL C diff --git a/localedata/locales/translit_fraction b/localedata/locales/translit_fraction index 115273ce05..06651c198b 100644 --- a/localedata/locales/translit_fraction +++ b/localedata/locales/translit_fraction @@ -9,7 +9,7 @@ comment_char % % otherwise be governed by that license. % Transliterations of fractions. -% Generated automatically from UnicodeData.txt by gen_translit_fraction.py on 2023-09-15 for Unicode 15.1.0. +% Generated automatically from UnicodeData.txt by gen_translit_fraction.py on 2024-09-12 for Unicode 16.0.0. % The replacements have been surrounded with spaces, because fractions are % often preceded by a decimal number and followed by a unit or a math symbol. diff --git a/localedata/unicode-gen/DerivedCoreProperties.txt b/localedata/unicode-gen/DerivedCoreProperties.txt index 220c55685d..1075638f1a 100644 --- a/localedata/unicode-gen/DerivedCoreProperties.txt +++ b/localedata/unicode-gen/DerivedCoreProperties.txt @@ -1,8 +1,8 @@ -# DerivedCoreProperties-15.1.0.txt -# Date: 2023-08-07, 15:21:24 GMT -# © 2023 Unicode®, Inc. +# DerivedCoreProperties-16.0.0.txt +# Date: 2024-05-31, 18:09:32 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -177,6 +177,7 @@ FF5C ; Math # Sm FULLWIDTH VERTICAL LINE FF5E ; Math # Sm FULLWIDTH TILDE FFE2 ; Math # Sm FULLWIDTH NOT SIGN FFE9..FFEC ; Math # Sm [4] HALFWIDTH LEFTWARDS ARROW..HALFWIDTH DOWNWARDS ARROW +10D8E..10D8F ; Math # Sm [2] GARAY PLUS SIGN..GARAY MINUS SIGN 1D400..1D454 ; Math # L& [85] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G 1D456..1D49C ; Math # L& [71] MATHEMATICAL ITALIC SMALL I..MATHEMATICAL SCRIPT CAPITAL A 1D49E..1D49F ; Math # L& [2] MATHEMATICAL SCRIPT CAPITAL C..MATHEMATICAL SCRIPT CAPITAL D @@ -253,7 +254,7 @@ FFE9..FFEC ; Math # Sm [4] HALFWIDTH LEFTWARDS ARROW..HALFWIDTH DOWNWARDS A 1EEAB..1EEBB ; Math # Lo [17] ARABIC MATHEMATICAL DOUBLE-STRUCK LAM..ARABIC MATHEMATICAL DOUBLE-STRUCK GHAIN 1EEF0..1EEF1 ; Math # Sm [2] ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL..ARABIC MATHEMATICAL OPERATOR HAH WITH DAL -# Total code points: 2310 +# Total code points: 2312 # ================================================ @@ -280,6 +281,7 @@ FFE9..FFEC ; Math # Sm [4] HALFWIDTH LEFTWARDS ARROW..HALFWIDTH DOWNWARDS A 02EC ; Alphabetic # Lm MODIFIER LETTER VOICING 02EE ; Alphabetic # Lm MODIFIER LETTER DOUBLE APOSTROPHE 0345 ; Alphabetic # Mn COMBINING GREEK YPOGEGRAMMENI +0363..036F ; Alphabetic # Mn [13] COMBINING LATIN SMALL LETTER A..COMBINING LATIN SMALL LETTER X 0370..0373 ; Alphabetic # L& [4] GREEK CAPITAL LETTER HETA..GREEK SMALL LETTER ARCHAIC SAMPI 0374 ; Alphabetic # Lm GREEK NUMERAL SIGN 0376..0377 ; Alphabetic # L& [2] GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA..GREEK SMALL LETTER PAMPHYLIAN DIGAMMA @@ -343,6 +345,7 @@ FFE9..FFEC ; Math # Sm [4] HALFWIDTH LEFTWARDS ARROW..HALFWIDTH DOWNWARDS A 0860..086A ; Alphabetic # Lo [11] SYRIAC LETTER MALAYALAM NGA..SYRIAC LETTER MALAYALAM SSA 0870..0887 ; Alphabetic # Lo [24] ARABIC LETTER ALEF WITH ATTACHED FATHA..ARABIC BASELINE ROUND DOT 0889..088E ; Alphabetic # Lo [6] ARABIC LETTER NOON WITH INVERTED SMALL V..ARABIC VERTICAL TAIL +0897 ; Alphabetic # Mn ARABIC PEPET 08A0..08C8 ; Alphabetic # Lo [41] ARABIC LETTER BEH WITH SMALL V BELOW..ARABIC LETTER GRAF 08C9 ; Alphabetic # Lm ARABIC SMALL FARSI YEH 08D4..08DF ; Alphabetic # Mn [12] ARABIC SMALL HIGH WORD AR-RUB..ARABIC SMALL HIGH WORD WAQFA @@ -710,7 +713,7 @@ FFE9..FFEC ; Math # Sm [4] HALFWIDTH LEFTWARDS ARROW..HALFWIDTH DOWNWARDS A 1C4D..1C4F ; Alphabetic # Lo [3] LEPCHA LETTER TTA..LEPCHA LETTER DDA 1C5A..1C77 ; Alphabetic # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; Alphabetic # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD -1C80..1C88 ; Alphabetic # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; Alphabetic # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; Alphabetic # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; Alphabetic # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CE9..1CEC ; Alphabetic # Lo [4] VEDIC SIGN ANUSVARA ANTARGOMUKHA..VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL @@ -723,7 +726,7 @@ FFE9..FFEC ; Math # Sm [4] HALFWIDTH LEFTWARDS ARROW..HALFWIDTH DOWNWARDS A 1D78 ; Alphabetic # Lm MODIFIER LETTER CYRILLIC EN 1D79..1D9A ; Alphabetic # L& [34] LATIN SMALL LETTER INSULAR G..LATIN SMALL LETTER EZH WITH RETROFLEX HOOK 1D9B..1DBF ; Alphabetic # Lm [37] MODIFIER LETTER SMALL TURNED ALPHA..MODIFIER LETTER SMALL THETA -1DE7..1DF4 ; Alphabetic # Mn [14] COMBINING LATIN SMALL LETTER ALPHA..COMBINING LATIN SMALL LETTER U WITH DIAERESIS +1DD3..1DF4 ; Alphabetic # Mn [34] COMBINING LATIN SMALL LETTER FLATTENED OPEN A ABOVE..COMBINING LATIN SMALL LETTER U WITH DIAERESIS 1E00..1F15 ; Alphabetic # L& [278] LATIN CAPITAL LETTER A WITH RING BELOW..GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA 1F18..1F1D ; Alphabetic # L& [6] GREEK CAPITAL LETTER EPSILON WITH PSILI..GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA 1F20..1F45 ; Alphabetic # L& [38] GREEK SMALL LETTER ETA WITH PSILI..GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA @@ -830,10 +833,10 @@ A771..A787 ; Alphabetic # L& [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER A788 ; Alphabetic # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A78B..A78E ; Alphabetic # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; Alphabetic # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; Alphabetic # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; Alphabetic # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; Alphabetic # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; Alphabetic # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; Alphabetic # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; Alphabetic # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; Alphabetic # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; Alphabetic # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; Alphabetic # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -998,6 +1001,7 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 105A3..105B1 ; Alphabetic # L& [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; Alphabetic # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; Alphabetic # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; Alphabetic # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; Alphabetic # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; Alphabetic # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; Alphabetic # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -1038,9 +1042,18 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 10CC0..10CF2 ; Alphabetic # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US 10D00..10D23 ; Alphabetic # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA 10D24..10D27 ; Alphabetic # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI +10D4A..10D4D ; Alphabetic # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; Alphabetic # Lm GARAY VOWEL LENGTH MARK +10D4F ; Alphabetic # Lo GARAY SUKUN +10D50..10D65 ; Alphabetic # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D69 ; Alphabetic # Mn GARAY VOWEL SIGN E +10D6F ; Alphabetic # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; Alphabetic # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 10E80..10EA9 ; Alphabetic # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EAB..10EAC ; Alphabetic # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK 10EB0..10EB1 ; Alphabetic # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE +10EC2..10EC4 ; Alphabetic # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW +10EFC ; Alphabetic # Mn ARABIC COMBINING ALEF OVERLAY 10F00..10F1C ; Alphabetic # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F27 ; Alphabetic # Lo OLD SOGDIAN LIGATURE AYIN-DALETH 10F30..10F45 ; Alphabetic # Lo [22] SOGDIAN LETTER ALEPH..SOGDIAN INDEPENDENT SHIN @@ -1121,6 +1134,19 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 11357 ; Alphabetic # Mc GRANTHA AU LENGTH MARK 1135D..11361 ; Alphabetic # Lo [5] GRANTHA SIGN PLUTA..GRANTHA LETTER VOCALIC LL 11362..11363 ; Alphabetic # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL +11380..11389 ; Alphabetic # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; Alphabetic # Lo TULU-TIGALARI LETTER EE +1138E ; Alphabetic # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; Alphabetic # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; Alphabetic # Lo TULU-TIGALARI SIGN AVAGRAHA +113B8..113BA ; Alphabetic # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; Alphabetic # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; Alphabetic # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; Alphabetic # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; Alphabetic # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; Alphabetic # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113D1 ; Alphabetic # Lo TULU-TIGALARI REPHA +113D3 ; Alphabetic # Lo TULU-TIGALARI SIGN PLUTA 11400..11434 ; Alphabetic # Lo [53] NEWA LETTER A..NEWA LETTER HA 11435..11437 ; Alphabetic # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11438..1143F ; Alphabetic # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI @@ -1163,7 +1189,9 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 116B0..116B5 ; Alphabetic # Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU 116B8 ; Alphabetic # Lo TAKRI LETTER ARCHAIC KHA 11700..1171A ; Alphabetic # Lo [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA -1171D..1171F ; Alphabetic # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; Alphabetic # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; Alphabetic # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; Alphabetic # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; Alphabetic # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; Alphabetic # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; Alphabetic # Mc AHOM VOWEL SIGN E @@ -1211,6 +1239,7 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 11A97 ; Alphabetic # Mc SOYOMBO SIGN VISARGA 11A9D ; Alphabetic # Lo SOYOMBO MARK PLUTA 11AB0..11AF8 ; Alphabetic # Lo [73] CANADIAN SYLLABICS NATTILIK HI..PAU CIN HAU GLOTTAL STOP FINAL +11BC0..11BE0 ; Alphabetic # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO 11C00..11C08 ; Alphabetic # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; Alphabetic # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C2F ; Alphabetic # Mc BHAIKSUKI VOWEL SIGN AA @@ -1264,7 +1293,12 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 12F90..12FF0 ; Alphabetic # Lo [97] CYPRO-MINOAN SIGN CM001..CYPRO-MINOAN SIGN CM114 13000..1342F ; Alphabetic # Lo [1072] EGYPTIAN HIEROGLYPH A001..EGYPTIAN HIEROGLYPH V011D 13441..13446 ; Alphabetic # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN +13460..143FA ; Alphabetic # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; Alphabetic # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; Alphabetic # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA +1611E..16129 ; Alphabetic # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; Alphabetic # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612E ; Alphabetic # Mn [2] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA CONSONANT SIGN MEDIAL RA 16800..16A38 ; Alphabetic # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; Alphabetic # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A70..16ABE ; Alphabetic # Lo [79] TANGSA LETTER OZ..TANGSA LETTER ZA @@ -1273,6 +1307,9 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 16B40..16B43 ; Alphabetic # Lm [4] PAHAWH HMONG SIGN VOS SEEV..PAHAWH HMONG SIGN IB YAM 16B63..16B77 ; Alphabetic # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; Alphabetic # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; Alphabetic # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; Alphabetic # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; Alphabetic # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT 16E40..16E7F ; Alphabetic # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16F00..16F4A ; Alphabetic # Lo [75] MIAO LETTER PA..MIAO LETTER RTE 16F4F ; Alphabetic # Mn MIAO SIGN CONSONANT MODIFIER BAR @@ -1285,7 +1322,7 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 16FF0..16FF1 ; Alphabetic # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY 17000..187F7 ; Alphabetic # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18CD5 ; Alphabetic # Lo [1238] TANGUT COMPONENT-001..KHITAN SMALL SCRIPT CHARACTER-18CD5 -18D00..18D08 ; Alphabetic # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 +18CFF..18D08 ; Alphabetic # Lo [10] KHITAN SMALL SCRIPT CHARACTER-18CFF..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; Alphabetic # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; Alphabetic # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 1AFFD..1AFFE ; Alphabetic # Lm [2] KATAKANA LETTER MINNAN NASALIZED TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-8 @@ -1348,6 +1385,8 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 1E2C0..1E2EB ; Alphabetic # Lo [44] WANCHO LETTER AA..WANCHO LETTER YIH 1E4D0..1E4EA ; Alphabetic # Lo [27] NAG MUNDARI LETTER O..NAG MUNDARI LETTER ELL 1E4EB ; Alphabetic # Lm NAG MUNDARI SIGN OJOD +1E5D0..1E5ED ; Alphabetic # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5F0 ; Alphabetic # Lo OL ONAL SIGN HODDOND 1E7E0..1E7E6 ; Alphabetic # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; Alphabetic # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; Alphabetic # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -1402,7 +1441,7 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 30000..3134A ; Alphabetic # Lo [4939] CJK UNIFIED IDEOGRAPH-30000..CJK UNIFIED IDEOGRAPH-3134A 31350..323AF ; Alphabetic # Lo [4192] CJK UNIFIED IDEOGRAPH-31350..CJK UNIFIED IDEOGRAPH-323AF -# Total code points: 138387 +# Total code points: 142759 # ================================================ @@ -1691,6 +1730,7 @@ FFDA..FFDC ; Alphabetic # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANG 10FD..10FF ; Lowercase # L& [3] GEORGIAN LETTER AEN..GEORGIAN LETTER LABIAL SIGN 13F8..13FD ; Lowercase # L& [6] CHEROKEE SMALL LETTER YE..CHEROKEE SMALL LETTER MV 1C80..1C88 ; Lowercase # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C8A ; Lowercase # L& CYRILLIC SMALL LETTER TJE 1D00..1D2B ; Lowercase # L& [44] LATIN LETTER SMALL CAPITAL A..CYRILLIC LETTER SMALL CAPITAL EL 1D2C..1D6A ; Lowercase # Lm [63] MODIFIER LETTER CAPITAL A..GREEK SUBSCRIPT SMALL LETTER CHI 1D6B..1D77 ; Lowercase # L& [13] LATIN SMALL LETTER UE..LATIN SMALL LETTER TURNED G @@ -2032,11 +2072,13 @@ A7C1 ; Lowercase # L& LATIN SMALL LETTER OLD POLISH O A7C3 ; Lowercase # L& LATIN SMALL LETTER ANGLICANA W A7C8 ; Lowercase # L& LATIN SMALL LETTER D WITH SHORT STROKE OVERLAY A7CA ; Lowercase # L& LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A7CD ; Lowercase # L& LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D1 ; Lowercase # L& LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; Lowercase # L& LATIN SMALL LETTER DOUBLE THORN A7D5 ; Lowercase # L& LATIN SMALL LETTER DOUBLE WYNN A7D7 ; Lowercase # L& LATIN SMALL LETTER MIDDLE SCOTS S A7D9 ; Lowercase # L& LATIN SMALL LETTER SIGMOID S +A7DB ; Lowercase # L& LATIN SMALL LETTER LAMBDA A7F2..A7F4 ; Lowercase # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F6 ; Lowercase # L& LATIN SMALL LETTER REVERSED HALF H A7F8..A7F9 ; Lowercase # Lm [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE @@ -2060,6 +2102,7 @@ FF41..FF5A ; Lowercase # L& [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH L 10787..107B0 ; Lowercase # Lm [42] MODIFIER LETTER SMALL DZ DIGRAPH..MODIFIER LETTER SMALL V WITH RIGHT HOOK 107B2..107BA ; Lowercase # Lm [9] MODIFIER LETTER SMALL CAPITAL Y..MODIFIER LETTER SMALL S WITH CURL 10CC0..10CF2 ; Lowercase # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US +10D70..10D85 ; Lowercase # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 118C0..118DF ; Lowercase # L& [32] WARANG CITI SMALL LETTER NGAA..WARANG CITI SMALL LETTER VIYO 16E60..16E7F ; Lowercase # L& [32] MEDEFAIDRIN SMALL LETTER M..MEDEFAIDRIN SMALL LETTER Y 1D41A..1D433 ; Lowercase # L& [26] MATHEMATICAL BOLD SMALL A..MATHEMATICAL BOLD SMALL Z @@ -2096,7 +2139,7 @@ FF41..FF5A ; Lowercase # L& [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH L 1E030..1E06D ; Lowercase # Lm [62] MODIFIER LETTER CYRILLIC SMALL A..MODIFIER LETTER CYRILLIC SMALL STRAIGHT U WITH STROKE 1E922..1E943 ; Lowercase # L& [34] ADLAM SMALL LETTER ALIF..ADLAM SMALL LETTER SHA -# Total code points: 2544 +# Total code points: 2569 # ================================================ @@ -2379,6 +2422,7 @@ FF41..FF5A ; Lowercase # L& [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH L 10C7 ; Uppercase # L& GEORGIAN CAPITAL LETTER YN 10CD ; Uppercase # L& GEORGIAN CAPITAL LETTER AEN 13A0..13F5 ; Uppercase # L& [86] CHEROKEE LETTER A..CHEROKEE LETTER MV +1C89 ; Uppercase # L& CYRILLIC CAPITAL LETTER TJE 1C90..1CBA ; Uppercase # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; Uppercase # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1E00 ; Uppercase # L& LATIN CAPITAL LETTER A WITH RING BELOW @@ -2705,9 +2749,12 @@ A7C0 ; Uppercase # L& LATIN CAPITAL LETTER OLD POLISH O A7C2 ; Uppercase # L& LATIN CAPITAL LETTER ANGLICANA W A7C4..A7C7 ; Uppercase # L& [4] LATIN CAPITAL LETTER C WITH PALATAL HOOK..LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY A7C9 ; Uppercase # L& LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY +A7CB..A7CC ; Uppercase # L& [2] LATIN CAPITAL LETTER RAMS HORN..LATIN CAPITAL LETTER S WITH DIAGONAL STROKE A7D0 ; Uppercase # L& LATIN CAPITAL LETTER CLOSED INSULAR G A7D6 ; Uppercase # L& LATIN CAPITAL LETTER MIDDLE SCOTS S A7D8 ; Uppercase # L& LATIN CAPITAL LETTER SIGMOID S +A7DA ; Uppercase # L& LATIN CAPITAL LETTER LAMBDA +A7DC ; Uppercase # L& LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F5 ; Uppercase # L& LATIN CAPITAL LETTER REVERSED HALF H FF21..FF3A ; Uppercase # L& [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH LATIN CAPITAL LETTER Z 10400..10427 ; Uppercase # L& [40] DESERET CAPITAL LETTER LONG I..DESERET CAPITAL LETTER EW @@ -2717,6 +2764,7 @@ FF21..FF3A ; Uppercase # L& [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH 1058C..10592 ; Uppercase # L& [7] VITHKUQI CAPITAL LETTER SE..VITHKUQI CAPITAL LETTER XE 10594..10595 ; Uppercase # L& [2] VITHKUQI CAPITAL LETTER Y..VITHKUQI CAPITAL LETTER ZE 10C80..10CB2 ; Uppercase # L& [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US +10D50..10D65 ; Uppercase # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA 118A0..118BF ; Uppercase # L& [32] WARANG CITI CAPITAL LETTER NGAA..WARANG CITI CAPITAL LETTER VIYO 16E40..16E5F ; Uppercase # L& [32] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN CAPITAL LETTER Y 1D400..1D419 ; Uppercase # L& [26] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL BOLD CAPITAL Z @@ -2755,7 +2803,7 @@ FF21..FF3A ; Uppercase # L& [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH 1F150..1F169 ; Uppercase # So [26] NEGATIVE CIRCLED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z 1F170..1F189 ; Uppercase # So [26] NEGATIVE SQUARED LATIN CAPITAL LETTER A..NEGATIVE SQUARED LATIN CAPITAL LETTER Z -# Total code points: 1951 +# Total code points: 1978 # ================================================ @@ -2800,7 +2848,7 @@ FF21..FF3A ; Uppercase # L& [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH 10FD..10FF ; Cased # L& [3] GEORGIAN LETTER AEN..GEORGIAN LETTER LABIAL SIGN 13A0..13F5 ; Cased # L& [86] CHEROKEE LETTER A..CHEROKEE LETTER MV 13F8..13FD ; Cased # L& [6] CHEROKEE SMALL LETTER YE..CHEROKEE SMALL LETTER MV -1C80..1C88 ; Cased # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; Cased # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; Cased # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; Cased # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1D00..1D2B ; Cased # L& [44] LATIN LETTER SMALL CAPITAL A..CYRILLIC LETTER SMALL CAPITAL EL @@ -2863,10 +2911,10 @@ A722..A76F ; Cased # L& [78] LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF..LATIN A770 ; Cased # Lm MODIFIER LETTER US A771..A787 ; Cased # L& [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER INSULAR T A78B..A78E ; Cased # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT -A790..A7CA ; Cased # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; Cased # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; Cased # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; Cased # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; Cased # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; Cased # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; Cased # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; Cased # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F8..A7F9 ; Cased # Lm [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE @@ -2897,6 +2945,8 @@ FF41..FF5A ; Cased # L& [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN 107B2..107BA ; Cased # Lm [9] MODIFIER LETTER SMALL CAPITAL Y..MODIFIER LETTER SMALL S WITH CURL 10C80..10CB2 ; Cased # L& [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US 10CC0..10CF2 ; Cased # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US +10D50..10D65 ; Cased # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D70..10D85 ; Cased # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 118A0..118DF ; Cased # L& [64] WARANG CITI CAPITAL LETTER NGAA..WARANG CITI SMALL LETTER VIYO 16E40..16E7F ; Cased # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 1D400..1D454 ; Cased # L& [85] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G @@ -2938,7 +2988,7 @@ FF41..FF5A ; Cased # L& [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN 1F150..1F169 ; Cased # So [26] NEGATIVE CIRCLED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z 1F170..1F189 ; Cased # So [26] NEGATIVE SQUARED LATIN CAPITAL LETTER A..NEGATIVE SQUARED LATIN CAPITAL LETTER Z -# Total code points: 4526 +# Total code points: 4578 # ================================================ @@ -3015,7 +3065,7 @@ FF41..FF5A ; Cased # L& [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN 0859..085B ; Case_Ignorable # Mn [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK 0888 ; Case_Ignorable # Sk ARABIC RAISED ROUND DOT 0890..0891 ; Case_Ignorable # Cf [2] ARABIC POUND MARK ABOVE..ARABIC PIASTRE MARK ABOVE -0898..089F ; Case_Ignorable # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; Case_Ignorable # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08C9 ; Case_Ignorable # Lm ARABIC SMALL FARSI YEH 08CA..08E1 ; Case_Ignorable # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA 08E2 ; Case_Ignorable # Cf ARABIC DISPUTED END OF AYAH @@ -3296,8 +3346,11 @@ FFF9..FFFB ; Case_Ignorable # Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLI 10A3F ; Case_Ignorable # Mn KHAROSHTHI VIRAMA 10AE5..10AE6 ; Case_Ignorable # Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW 10D24..10D27 ; Case_Ignorable # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI +10D4E ; Case_Ignorable # Lm GARAY VOWEL LENGTH MARK +10D69..10D6D ; Case_Ignorable # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK +10D6F ; Case_Ignorable # Lm GARAY REDUPLICATION MARK 10EAB..10EAC ; Case_Ignorable # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK -10EFD..10EFF ; Case_Ignorable # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EFC..10EFF ; Case_Ignorable # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F46..10F50 ; Case_Ignorable # Mn [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW 10F82..10F85 ; Case_Ignorable # Mn [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW 11001 ; Case_Ignorable # Mn BRAHMI SIGN ANUSVARA @@ -3330,6 +3383,11 @@ FFF9..FFFB ; Case_Ignorable # Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLI 11340 ; Case_Ignorable # Mn GRANTHA VOWEL SIGN II 11366..1136C ; Case_Ignorable # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; Case_Ignorable # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +113BB..113C0 ; Case_Ignorable # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113CE ; Case_Ignorable # Mn TULU-TIGALARI SIGN VIRAMA +113D0 ; Case_Ignorable # Mn TULU-TIGALARI CONJOINER +113D2 ; Case_Ignorable # Mn TULU-TIGALARI GEMINATION MARK +113E1..113E2 ; Case_Ignorable # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11438..1143F ; Case_Ignorable # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI 11442..11444 ; Case_Ignorable # Mn [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA 11446 ; Case_Ignorable # Mn NEWA SIGN NUKTA @@ -3349,7 +3407,8 @@ FFF9..FFFB ; Case_Ignorable # Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLI 116AD ; Case_Ignorable # Mn TAKRI VOWEL SIGN AA 116B0..116B5 ; Case_Ignorable # Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU 116B7 ; Case_Ignorable # Mn TAKRI SIGN NUKTA -1171D..1171F ; Case_Ignorable # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; Case_Ignorable # Mn AHOM CONSONANT SIGN MEDIAL LA +1171F ; Case_Ignorable # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11722..11725 ; Case_Ignorable # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11727..1172B ; Case_Ignorable # Mn [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER 1182F..11837 ; Case_Ignorable # Mn [9] DOGRA VOWEL SIGN U..DOGRA SIGN ANUSVARA @@ -3388,12 +3447,17 @@ FFF9..FFFB ; Case_Ignorable # Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLI 11F36..11F3A ; Case_Ignorable # Mn [5] KAWI VOWEL SIGN I..KAWI VOWEL SIGN VOCALIC R 11F40 ; Case_Ignorable # Mn KAWI VOWEL SIGN EU 11F42 ; Case_Ignorable # Mn KAWI CONJOINER +11F5A ; Case_Ignorable # Mn KAWI SIGN NUKTA 13430..1343F ; Case_Ignorable # Cf [16] EGYPTIAN HIEROGLYPH VERTICAL JOINER..EGYPTIAN HIEROGLYPH END WALLED ENCLOSURE 13440 ; Case_Ignorable # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13447..13455 ; Case_Ignorable # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +1611E..16129 ; Case_Ignorable # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612D..1612F ; Case_Ignorable # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA 16AF0..16AF4 ; Case_Ignorable # Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE 16B30..16B36 ; Case_Ignorable # Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM 16B40..16B43 ; Case_Ignorable # Lm [4] PAHAWH HMONG SIGN VOS SEEV..PAHAWH HMONG SIGN IB YAM +16D40..16D42 ; Case_Ignorable # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D6B..16D6C ; Case_Ignorable # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT 16F4F ; Case_Ignorable # Mn MIAO SIGN CONSONANT MODIFIER BAR 16F8F..16F92 ; Case_Ignorable # Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW 16F93..16F9F ; Case_Ignorable # Lm [13] MIAO LETTER TONE-2..MIAO LETTER REFORMED TONE-8 @@ -3432,6 +3496,7 @@ FFF9..FFFB ; Case_Ignorable # Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLI 1E2EC..1E2EF ; Case_Ignorable # Mn [4] WANCHO TONE TUP..WANCHO TONE KOINI 1E4EB ; Case_Ignorable # Lm NAG MUNDARI SIGN OJOD 1E4EC..1E4EF ; Case_Ignorable # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH +1E5EE..1E5EF ; Case_Ignorable # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR 1E8D0..1E8D6 ; Case_Ignorable # Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS 1E944..1E94A ; Case_Ignorable # Mn [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA 1E94B ; Case_Ignorable # Lm ADLAM NASALIZATION MARK @@ -3440,7 +3505,7 @@ E0001 ; Case_Ignorable # Cf LANGUAGE TAG E0020..E007F ; Case_Ignorable # Cf [96] TAG SPACE..CANCEL TAG E0100..E01EF ; Case_Ignorable # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 -# Total code points: 2707 +# Total code points: 2749 # ================================================ @@ -3724,6 +3789,7 @@ E0100..E01EF ; Case_Ignorable # Mn [240] VARIATION SELECTOR-17..VARIATION SELEC 10C7 ; Changes_When_Lowercased # L& GEORGIAN CAPITAL LETTER YN 10CD ; Changes_When_Lowercased # L& GEORGIAN CAPITAL LETTER AEN 13A0..13F5 ; Changes_When_Lowercased # L& [86] CHEROKEE LETTER A..CHEROKEE LETTER MV +1C89 ; Changes_When_Lowercased # L& CYRILLIC CAPITAL LETTER TJE 1C90..1CBA ; Changes_When_Lowercased # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; Changes_When_Lowercased # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1E00 ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER A WITH RING BELOW @@ -4043,9 +4109,12 @@ A7C0 ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER OLD POLI A7C2 ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER ANGLICANA W A7C4..A7C7 ; Changes_When_Lowercased # L& [4] LATIN CAPITAL LETTER C WITH PALATAL HOOK..LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY A7C9 ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY +A7CB..A7CC ; Changes_When_Lowercased # L& [2] LATIN CAPITAL LETTER RAMS HORN..LATIN CAPITAL LETTER S WITH DIAGONAL STROKE A7D0 ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER CLOSED INSULAR G A7D6 ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER MIDDLE SCOTS S A7D8 ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER SIGMOID S +A7DA ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER LAMBDA +A7DC ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F5 ; Changes_When_Lowercased # L& LATIN CAPITAL LETTER REVERSED HALF H FF21..FF3A ; Changes_When_Lowercased # L& [26] FULLWIDTH LATIN CAPITAL LETTER A..FULLWIDTH LATIN CAPITAL LETTER Z 10400..10427 ; Changes_When_Lowercased # L& [40] DESERET CAPITAL LETTER LONG I..DESERET CAPITAL LETTER EW @@ -4055,11 +4124,12 @@ FF21..FF3A ; Changes_When_Lowercased # L& [26] FULLWIDTH LATIN CAPITAL LETTE 1058C..10592 ; Changes_When_Lowercased # L& [7] VITHKUQI CAPITAL LETTER SE..VITHKUQI CAPITAL LETTER XE 10594..10595 ; Changes_When_Lowercased # L& [2] VITHKUQI CAPITAL LETTER Y..VITHKUQI CAPITAL LETTER ZE 10C80..10CB2 ; Changes_When_Lowercased # L& [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US +10D50..10D65 ; Changes_When_Lowercased # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA 118A0..118BF ; Changes_When_Lowercased # L& [32] WARANG CITI CAPITAL LETTER NGAA..WARANG CITI CAPITAL LETTER VIYO 16E40..16E5F ; Changes_When_Lowercased # L& [32] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN CAPITAL LETTER Y 1E900..1E921 ; Changes_When_Lowercased # L& [34] ADLAM CAPITAL LETTER ALIF..ADLAM CAPITAL LETTER SHA -# Total code points: 1433 +# Total code points: 1460 # ================================================ @@ -4140,7 +4210,7 @@ FF21..FF3A ; Changes_When_Lowercased # L& [26] FULLWIDTH LATIN CAPITAL LETTE 018C ; Changes_When_Uppercased # L& LATIN SMALL LETTER D WITH TOPBAR 0192 ; Changes_When_Uppercased # L& LATIN SMALL LETTER F WITH HOOK 0195 ; Changes_When_Uppercased # L& LATIN SMALL LETTER HV -0199..019A ; Changes_When_Uppercased # L& [2] LATIN SMALL LETTER K WITH HOOK..LATIN SMALL LETTER L WITH BAR +0199..019B ; Changes_When_Uppercased # L& [3] LATIN SMALL LETTER K WITH HOOK..LATIN SMALL LETTER LAMBDA WITH STROKE 019E ; Changes_When_Uppercased # L& LATIN SMALL LETTER N WITH LONG RIGHT LEG 01A1 ; Changes_When_Uppercased # L& LATIN SMALL LETTER O WITH HORN 01A3 ; Changes_When_Uppercased # L& LATIN SMALL LETTER OI @@ -4216,8 +4286,7 @@ FF21..FF3A ; Changes_When_Lowercased # L& [26] FULLWIDTH LATIN CAPITAL LETTE 0259 ; Changes_When_Uppercased # L& LATIN SMALL LETTER SCHWA 025B..025C ; Changes_When_Uppercased # L& [2] LATIN SMALL LETTER OPEN E..LATIN SMALL LETTER REVERSED OPEN E 0260..0261 ; Changes_When_Uppercased # L& [2] LATIN SMALL LETTER G WITH HOOK..LATIN SMALL LETTER SCRIPT G -0263 ; Changes_When_Uppercased # L& LATIN SMALL LETTER GAMMA -0265..0266 ; Changes_When_Uppercased # L& [2] LATIN SMALL LETTER TURNED H..LATIN SMALL LETTER H WITH HOOK +0263..0266 ; Changes_When_Uppercased # L& [4] LATIN SMALL LETTER GAMMA..LATIN SMALL LETTER H WITH HOOK 0268..026C ; Changes_When_Uppercased # L& [5] LATIN SMALL LETTER I WITH STROKE..LATIN SMALL LETTER L WITH BELT 026F ; Changes_When_Uppercased # L& LATIN SMALL LETTER TURNED M 0271..0272 ; Changes_When_Uppercased # L& [2] LATIN SMALL LETTER M WITH HOOK..LATIN SMALL LETTER N WITH LEFT HOOK @@ -4357,6 +4426,7 @@ FF21..FF3A ; Changes_When_Lowercased # L& [26] FULLWIDTH LATIN CAPITAL LETTE 10FD..10FF ; Changes_When_Uppercased # L& [3] GEORGIAN LETTER AEN..GEORGIAN LETTER LABIAL SIGN 13F8..13FD ; Changes_When_Uppercased # L& [6] CHEROKEE SMALL LETTER YE..CHEROKEE SMALL LETTER MV 1C80..1C88 ; Changes_When_Uppercased # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C8A ; Changes_When_Uppercased # L& CYRILLIC SMALL LETTER TJE 1D79 ; Changes_When_Uppercased # L& LATIN SMALL LETTER INSULAR G 1D7D ; Changes_When_Uppercased # L& LATIN SMALL LETTER P WITH STROKE 1D8E ; Changes_When_Uppercased # L& LATIN SMALL LETTER Z WITH PALATAL HOOK @@ -4676,9 +4746,11 @@ A7C1 ; Changes_When_Uppercased # L& LATIN SMALL LETTER OLD POLISH A7C3 ; Changes_When_Uppercased # L& LATIN SMALL LETTER ANGLICANA W A7C8 ; Changes_When_Uppercased # L& LATIN SMALL LETTER D WITH SHORT STROKE OVERLAY A7CA ; Changes_When_Uppercased # L& LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A7CD ; Changes_When_Uppercased # L& LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D1 ; Changes_When_Uppercased # L& LATIN SMALL LETTER CLOSED INSULAR G A7D7 ; Changes_When_Uppercased # L& LATIN SMALL LETTER MIDDLE SCOTS S A7D9 ; Changes_When_Uppercased # L& LATIN SMALL LETTER SIGMOID S +A7DB ; Changes_When_Uppercased # L& LATIN SMALL LETTER LAMBDA A7F6 ; Changes_When_Uppercased # L& LATIN SMALL LETTER REVERSED HALF H AB53 ; Changes_When_Uppercased # L& LATIN SMALL LETTER CHI AB70..ABBF ; Changes_When_Uppercased # L& [80] CHEROKEE SMALL LETTER A..CHEROKEE SMALL LETTER YA @@ -4692,11 +4764,12 @@ FF41..FF5A ; Changes_When_Uppercased # L& [26] FULLWIDTH LATIN SMALL LETTER 105B3..105B9 ; Changes_When_Uppercased # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; Changes_When_Uppercased # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE 10CC0..10CF2 ; Changes_When_Uppercased # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US +10D70..10D85 ; Changes_When_Uppercased # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 118C0..118DF ; Changes_When_Uppercased # L& [32] WARANG CITI SMALL LETTER NGAA..WARANG CITI SMALL LETTER VIYO 16E60..16E7F ; Changes_When_Uppercased # L& [32] MEDEFAIDRIN SMALL LETTER M..MEDEFAIDRIN SMALL LETTER Y 1E922..1E943 ; Changes_When_Uppercased # L& [34] ADLAM SMALL LETTER ALIF..ADLAM SMALL LETTER SHA -# Total code points: 1525 +# Total code points: 1552 # ================================================ @@ -4777,7 +4850,7 @@ FF41..FF5A ; Changes_When_Uppercased # L& [26] FULLWIDTH LATIN SMALL LETTER 018C ; Changes_When_Titlecased # L& LATIN SMALL LETTER D WITH TOPBAR 0192 ; Changes_When_Titlecased # L& LATIN SMALL LETTER F WITH HOOK 0195 ; Changes_When_Titlecased # L& LATIN SMALL LETTER HV -0199..019A ; Changes_When_Titlecased # L& [2] LATIN SMALL LETTER K WITH HOOK..LATIN SMALL LETTER L WITH BAR +0199..019B ; Changes_When_Titlecased # L& [3] LATIN SMALL LETTER K WITH HOOK..LATIN SMALL LETTER LAMBDA WITH STROKE 019E ; Changes_When_Titlecased # L& LATIN SMALL LETTER N WITH LONG RIGHT LEG 01A1 ; Changes_When_Titlecased # L& LATIN SMALL LETTER O WITH HORN 01A3 ; Changes_When_Titlecased # L& LATIN SMALL LETTER OI @@ -4854,8 +4927,7 @@ FF41..FF5A ; Changes_When_Uppercased # L& [26] FULLWIDTH LATIN SMALL LETTER 0259 ; Changes_When_Titlecased # L& LATIN SMALL LETTER SCHWA 025B..025C ; Changes_When_Titlecased # L& [2] LATIN SMALL LETTER OPEN E..LATIN SMALL LETTER REVERSED OPEN E 0260..0261 ; Changes_When_Titlecased # L& [2] LATIN SMALL LETTER G WITH HOOK..LATIN SMALL LETTER SCRIPT G -0263 ; Changes_When_Titlecased # L& LATIN SMALL LETTER GAMMA -0265..0266 ; Changes_When_Titlecased # L& [2] LATIN SMALL LETTER TURNED H..LATIN SMALL LETTER H WITH HOOK +0263..0266 ; Changes_When_Titlecased # L& [4] LATIN SMALL LETTER GAMMA..LATIN SMALL LETTER H WITH HOOK 0268..026C ; Changes_When_Titlecased # L& [5] LATIN SMALL LETTER I WITH STROKE..LATIN SMALL LETTER L WITH BELT 026F ; Changes_When_Titlecased # L& LATIN SMALL LETTER TURNED M 0271..0272 ; Changes_When_Titlecased # L& [2] LATIN SMALL LETTER M WITH HOOK..LATIN SMALL LETTER N WITH LEFT HOOK @@ -4993,6 +5065,7 @@ FF41..FF5A ; Changes_When_Uppercased # L& [26] FULLWIDTH LATIN SMALL LETTER 0561..0587 ; Changes_When_Titlecased # L& [39] ARMENIAN SMALL LETTER AYB..ARMENIAN SMALL LIGATURE ECH YIWN 13F8..13FD ; Changes_When_Titlecased # L& [6] CHEROKEE SMALL LETTER YE..CHEROKEE SMALL LETTER MV 1C80..1C88 ; Changes_When_Titlecased # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C8A ; Changes_When_Titlecased # L& CYRILLIC SMALL LETTER TJE 1D79 ; Changes_When_Titlecased # L& LATIN SMALL LETTER INSULAR G 1D7D ; Changes_When_Titlecased # L& LATIN SMALL LETTER P WITH STROKE 1D8E ; Changes_When_Titlecased # L& LATIN SMALL LETTER Z WITH PALATAL HOOK @@ -5312,9 +5385,11 @@ A7C1 ; Changes_When_Titlecased # L& LATIN SMALL LETTER OLD POLISH A7C3 ; Changes_When_Titlecased # L& LATIN SMALL LETTER ANGLICANA W A7C8 ; Changes_When_Titlecased # L& LATIN SMALL LETTER D WITH SHORT STROKE OVERLAY A7CA ; Changes_When_Titlecased # L& LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A7CD ; Changes_When_Titlecased # L& LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D1 ; Changes_When_Titlecased # L& LATIN SMALL LETTER CLOSED INSULAR G A7D7 ; Changes_When_Titlecased # L& LATIN SMALL LETTER MIDDLE SCOTS S A7D9 ; Changes_When_Titlecased # L& LATIN SMALL LETTER SIGMOID S +A7DB ; Changes_When_Titlecased # L& LATIN SMALL LETTER LAMBDA A7F6 ; Changes_When_Titlecased # L& LATIN SMALL LETTER REVERSED HALF H AB53 ; Changes_When_Titlecased # L& LATIN SMALL LETTER CHI AB70..ABBF ; Changes_When_Titlecased # L& [80] CHEROKEE SMALL LETTER A..CHEROKEE SMALL LETTER YA @@ -5328,11 +5403,12 @@ FF41..FF5A ; Changes_When_Titlecased # L& [26] FULLWIDTH LATIN SMALL LETTER 105B3..105B9 ; Changes_When_Titlecased # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; Changes_When_Titlecased # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE 10CC0..10CF2 ; Changes_When_Titlecased # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US +10D70..10D85 ; Changes_When_Titlecased # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 118C0..118DF ; Changes_When_Titlecased # L& [32] WARANG CITI SMALL LETTER NGAA..WARANG CITI SMALL LETTER VIYO 16E60..16E7F ; Changes_When_Titlecased # L& [32] MEDEFAIDRIN SMALL LETTER M..MEDEFAIDRIN SMALL LETTER Y 1E922..1E943 ; Changes_When_Titlecased # L& [34] ADLAM SMALL LETTER ALIF..ADLAM SMALL LETTER SHA -# Total code points: 1452 +# Total code points: 1479 # ================================================ @@ -5623,7 +5699,7 @@ FF41..FF5A ; Changes_When_Titlecased # L& [26] FULLWIDTH LATIN SMALL LETTER 10C7 ; Changes_When_Casefolded # L& GEORGIAN CAPITAL LETTER YN 10CD ; Changes_When_Casefolded # L& GEORGIAN CAPITAL LETTER AEN 13F8..13FD ; Changes_When_Casefolded # L& [6] CHEROKEE SMALL LETTER YE..CHEROKEE SMALL LETTER MV -1C80..1C88 ; Changes_When_Casefolded # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C89 ; Changes_When_Casefolded # L& [10] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC CAPITAL LETTER TJE 1C90..1CBA ; Changes_When_Casefolded # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; Changes_When_Casefolded # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1E00 ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER A WITH RING BELOW @@ -5945,9 +6021,12 @@ A7C0 ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER OLD POLI A7C2 ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER ANGLICANA W A7C4..A7C7 ; Changes_When_Casefolded # L& [4] LATIN CAPITAL LETTER C WITH PALATAL HOOK..LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY A7C9 ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY +A7CB..A7CC ; Changes_When_Casefolded # L& [2] LATIN CAPITAL LETTER RAMS HORN..LATIN CAPITAL LETTER S WITH DIAGONAL STROKE A7D0 ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER CLOSED INSULAR G A7D6 ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER MIDDLE SCOTS S A7D8 ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER SIGMOID S +A7DA ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER LAMBDA +A7DC ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F5 ; Changes_When_Casefolded # L& LATIN CAPITAL LETTER REVERSED HALF H AB70..ABBF ; Changes_When_Casefolded # L& [80] CHEROKEE SMALL LETTER A..CHEROKEE SMALL LETTER YA FB00..FB06 ; Changes_When_Casefolded # L& [7] LATIN SMALL LIGATURE FF..LATIN SMALL LIGATURE ST @@ -5960,11 +6039,12 @@ FF21..FF3A ; Changes_When_Casefolded # L& [26] FULLWIDTH LATIN CAPITAL LETTE 1058C..10592 ; Changes_When_Casefolded # L& [7] VITHKUQI CAPITAL LETTER SE..VITHKUQI CAPITAL LETTER XE 10594..10595 ; Changes_When_Casefolded # L& [2] VITHKUQI CAPITAL LETTER Y..VITHKUQI CAPITAL LETTER ZE 10C80..10CB2 ; Changes_When_Casefolded # L& [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US +10D50..10D65 ; Changes_When_Casefolded # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA 118A0..118BF ; Changes_When_Casefolded # L& [32] WARANG CITI CAPITAL LETTER NGAA..WARANG CITI CAPITAL LETTER VIYO 16E40..16E5F ; Changes_When_Casefolded # L& [32] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN CAPITAL LETTER Y 1E900..1E921 ; Changes_When_Casefolded # L& [34] ADLAM CAPITAL LETTER ALIF..ADLAM CAPITAL LETTER SHA -# Total code points: 1506 +# Total code points: 1533 # ================================================ @@ -5980,8 +6060,7 @@ FF21..FF3A ; Changes_When_Casefolded # L& [26] FULLWIDTH LATIN CAPITAL LETTE 00D8..00F6 ; Changes_When_Casemapped # L& [31] LATIN CAPITAL LETTER O WITH STROKE..LATIN SMALL LETTER O WITH DIAERESIS 00F8..0137 ; Changes_When_Casemapped # L& [64] LATIN SMALL LETTER O WITH STROKE..LATIN SMALL LETTER K WITH CEDILLA 0139..018C ; Changes_When_Casemapped # L& [84] LATIN CAPITAL LETTER L WITH ACUTE..LATIN SMALL LETTER D WITH TOPBAR -018E..019A ; Changes_When_Casemapped # L& [13] LATIN CAPITAL LETTER REVERSED E..LATIN SMALL LETTER L WITH BAR -019C..01A9 ; Changes_When_Casemapped # L& [14] LATIN CAPITAL LETTER TURNED M..LATIN CAPITAL LETTER ESH +018E..01A9 ; Changes_When_Casemapped # L& [28] LATIN CAPITAL LETTER REVERSED E..LATIN CAPITAL LETTER ESH 01AC..01B9 ; Changes_When_Casemapped # L& [14] LATIN CAPITAL LETTER T WITH HOOK..LATIN SMALL LETTER EZH REVERSED 01BC..01BD ; Changes_When_Casemapped # L& [2] LATIN CAPITAL LETTER TONE FIVE..LATIN SMALL LETTER TONE FIVE 01BF ; Changes_When_Casemapped # L& LATIN LETTER WYNN @@ -5992,8 +6071,7 @@ FF21..FF3A ; Changes_When_Casefolded # L& [26] FULLWIDTH LATIN CAPITAL LETTE 0259 ; Changes_When_Casemapped # L& LATIN SMALL LETTER SCHWA 025B..025C ; Changes_When_Casemapped # L& [2] LATIN SMALL LETTER OPEN E..LATIN SMALL LETTER REVERSED OPEN E 0260..0261 ; Changes_When_Casemapped # L& [2] LATIN SMALL LETTER G WITH HOOK..LATIN SMALL LETTER SCRIPT G -0263 ; Changes_When_Casemapped # L& LATIN SMALL LETTER GAMMA -0265..0266 ; Changes_When_Casemapped # L& [2] LATIN SMALL LETTER TURNED H..LATIN SMALL LETTER H WITH HOOK +0263..0266 ; Changes_When_Casemapped # L& [4] LATIN SMALL LETTER GAMMA..LATIN SMALL LETTER H WITH HOOK 0268..026C ; Changes_When_Casemapped # L& [5] LATIN SMALL LETTER I WITH STROKE..LATIN SMALL LETTER L WITH BELT 026F ; Changes_When_Casemapped # L& LATIN SMALL LETTER TURNED M 0271..0272 ; Changes_When_Casemapped # L& [2] LATIN SMALL LETTER M WITH HOOK..LATIN SMALL LETTER N WITH LEFT HOOK @@ -6027,7 +6105,7 @@ FF21..FF3A ; Changes_When_Casefolded # L& [26] FULLWIDTH LATIN CAPITAL LETTE 10FD..10FF ; Changes_When_Casemapped # L& [3] GEORGIAN LETTER AEN..GEORGIAN LETTER LABIAL SIGN 13A0..13F5 ; Changes_When_Casemapped # L& [86] CHEROKEE LETTER A..CHEROKEE LETTER MV 13F8..13FD ; Changes_When_Casemapped # L& [6] CHEROKEE SMALL LETTER YE..CHEROKEE SMALL LETTER MV -1C80..1C88 ; Changes_When_Casemapped # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; Changes_When_Casemapped # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; Changes_When_Casemapped # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; Changes_When_Casemapped # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1D79 ; Changes_When_Casemapped # L& LATIN SMALL LETTER INSULAR G @@ -6078,9 +6156,9 @@ A779..A787 ; Changes_When_Casemapped # L& [15] LATIN CAPITAL LETTER INSULAR A78B..A78D ; Changes_When_Casemapped # L& [3] LATIN CAPITAL LETTER SALTILLO..LATIN CAPITAL LETTER TURNED H A790..A794 ; Changes_When_Casemapped # L& [5] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER C WITH PALATAL HOOK A796..A7AE ; Changes_When_Casemapped # L& [25] LATIN CAPITAL LETTER B WITH FLOURISH..LATIN CAPITAL LETTER SMALL CAPITAL I -A7B0..A7CA ; Changes_When_Casemapped # L& [27] LATIN CAPITAL LETTER TURNED K..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A7B0..A7CD ; Changes_When_Casemapped # L& [30] LATIN CAPITAL LETTER TURNED K..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; Changes_When_Casemapped # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G -A7D6..A7D9 ; Changes_When_Casemapped # L& [4] LATIN CAPITAL LETTER MIDDLE SCOTS S..LATIN SMALL LETTER SIGMOID S +A7D6..A7DC ; Changes_When_Casemapped # L& [7] LATIN CAPITAL LETTER MIDDLE SCOTS S..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F5..A7F6 ; Changes_When_Casemapped # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H AB53 ; Changes_When_Casemapped # L& LATIN SMALL LETTER CHI AB70..ABBF ; Changes_When_Casemapped # L& [80] CHEROKEE SMALL LETTER A..CHEROKEE SMALL LETTER YA @@ -6101,11 +6179,13 @@ FF41..FF5A ; Changes_When_Casemapped # L& [26] FULLWIDTH LATIN SMALL LETTER 105BB..105BC ; Changes_When_Casemapped # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE 10C80..10CB2 ; Changes_When_Casemapped # L& [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US 10CC0..10CF2 ; Changes_When_Casemapped # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US +10D50..10D65 ; Changes_When_Casemapped # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D70..10D85 ; Changes_When_Casemapped # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 118A0..118DF ; Changes_When_Casemapped # L& [64] WARANG CITI CAPITAL LETTER NGAA..WARANG CITI SMALL LETTER VIYO 16E40..16E7F ; Changes_When_Casemapped # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 1E900..1E943 ; Changes_When_Casemapped # L& [68] ADLAM CAPITAL LETTER ALIF..ADLAM SMALL LETTER SHA -# Total code points: 2927 +# Total code points: 2981 # ================================================ @@ -6364,7 +6444,7 @@ FF41..FF5A ; Changes_When_Casemapped # L& [26] FULLWIDTH LATIN SMALL LETTER 1C4D..1C4F ; ID_Start # Lo [3] LEPCHA LETTER TTA..LEPCHA LETTER DDA 1C5A..1C77 ; ID_Start # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; ID_Start # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD -1C80..1C88 ; ID_Start # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; ID_Start # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; ID_Start # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; ID_Start # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CE9..1CEC ; ID_Start # Lo [4] VEDIC SIGN ANUSVARA ANTARGOMUKHA..VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL @@ -6481,10 +6561,10 @@ A771..A787 ; ID_Start # L& [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER I A788 ; ID_Start # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A78B..A78E ; ID_Start # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; ID_Start # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; ID_Start # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; ID_Start # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; ID_Start # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; ID_Start # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; ID_Start # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; ID_Start # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; ID_Start # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; ID_Start # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; ID_Start # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -6603,6 +6683,7 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 105A3..105B1 ; ID_Start # L& [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; ID_Start # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; ID_Start # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; ID_Start # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; ID_Start # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; ID_Start # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; ID_Start # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -6639,8 +6720,15 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 10C80..10CB2 ; ID_Start # L& [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US 10CC0..10CF2 ; ID_Start # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US 10D00..10D23 ; ID_Start # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA +10D4A..10D4D ; ID_Start # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; ID_Start # Lm GARAY VOWEL LENGTH MARK +10D4F ; ID_Start # Lo GARAY SUKUN +10D50..10D65 ; ID_Start # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D6F ; ID_Start # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; ID_Start # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 10E80..10EA9 ; ID_Start # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EB0..10EB1 ; ID_Start # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE +10EC2..10EC4 ; ID_Start # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW 10F00..10F1C ; ID_Start # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F27 ; ID_Start # Lo OLD SOGDIAN LIGATURE AYIN-DALETH 10F30..10F45 ; ID_Start # Lo [22] SOGDIAN LETTER ALEPH..SOGDIAN INDEPENDENT SHIN @@ -6679,6 +6767,13 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 1133D ; ID_Start # Lo GRANTHA SIGN AVAGRAHA 11350 ; ID_Start # Lo GRANTHA OM 1135D..11361 ; ID_Start # Lo [5] GRANTHA SIGN PLUTA..GRANTHA LETTER VOCALIC LL +11380..11389 ; ID_Start # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; ID_Start # Lo TULU-TIGALARI LETTER EE +1138E ; ID_Start # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; ID_Start # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; ID_Start # Lo TULU-TIGALARI SIGN AVAGRAHA +113D1 ; ID_Start # Lo TULU-TIGALARI REPHA +113D3 ; ID_Start # Lo TULU-TIGALARI SIGN PLUTA 11400..11434 ; ID_Start # Lo [53] NEWA LETTER A..NEWA LETTER HA 11447..1144A ; ID_Start # Lo [4] NEWA SIGN AVAGRAHA..NEWA SIDDHI 1145F..11461 ; ID_Start # Lo [3] NEWA LETTER VEDIC ANUSVARA..NEWA SIGN UPADHMANIYA @@ -6713,6 +6808,7 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 11A5C..11A89 ; ID_Start # Lo [46] SOYOMBO LETTER KA..SOYOMBO CLUSTER-INITIAL LETTER SA 11A9D ; ID_Start # Lo SOYOMBO MARK PLUTA 11AB0..11AF8 ; ID_Start # Lo [73] CANADIAN SYLLABICS NATTILIK HI..PAU CIN HAU GLOTTAL STOP FINAL +11BC0..11BE0 ; ID_Start # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO 11C00..11C08 ; ID_Start # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; ID_Start # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C40 ; ID_Start # Lo BHAIKSUKI SIGN AVAGRAHA @@ -6736,7 +6832,9 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 12F90..12FF0 ; ID_Start # Lo [97] CYPRO-MINOAN SIGN CM001..CYPRO-MINOAN SIGN CM114 13000..1342F ; ID_Start # Lo [1072] EGYPTIAN HIEROGLYPH A001..EGYPTIAN HIEROGLYPH V011D 13441..13446 ; ID_Start # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN +13460..143FA ; ID_Start # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; ID_Start # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; ID_Start # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA 16800..16A38 ; ID_Start # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; ID_Start # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A70..16ABE ; ID_Start # Lo [79] TANGSA LETTER OZ..TANGSA LETTER ZA @@ -6745,6 +6843,9 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 16B40..16B43 ; ID_Start # Lm [4] PAHAWH HMONG SIGN VOS SEEV..PAHAWH HMONG SIGN IB YAM 16B63..16B77 ; ID_Start # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; ID_Start # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; ID_Start # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; ID_Start # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; ID_Start # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT 16E40..16E7F ; ID_Start # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16F00..16F4A ; ID_Start # Lo [75] MIAO LETTER PA..MIAO LETTER RTE 16F50 ; ID_Start # Lo MIAO LETTER NASALIZATION @@ -6753,7 +6854,7 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 16FE3 ; ID_Start # Lm OLD CHINESE ITERATION MARK 17000..187F7 ; ID_Start # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18CD5 ; ID_Start # Lo [1238] TANGUT COMPONENT-001..KHITAN SMALL SCRIPT CHARACTER-18CD5 -18D00..18D08 ; ID_Start # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 +18CFF..18D08 ; ID_Start # Lo [10] KHITAN SMALL SCRIPT CHARACTER-18CFF..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; ID_Start # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; ID_Start # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 1AFFD..1AFFE ; ID_Start # Lm [2] KATAKANA LETTER MINNAN NASALIZED TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-8 @@ -6809,6 +6910,8 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 1E2C0..1E2EB ; ID_Start # Lo [44] WANCHO LETTER AA..WANCHO LETTER YIH 1E4D0..1E4EA ; ID_Start # Lo [27] NAG MUNDARI LETTER O..NAG MUNDARI LETTER ELL 1E4EB ; ID_Start # Lm NAG MUNDARI SIGN OJOD +1E5D0..1E5ED ; ID_Start # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5F0 ; ID_Start # Lo OL ONAL SIGN HODDOND 1E7E0..1E7E6 ; ID_Start # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; ID_Start # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; ID_Start # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -6859,7 +6962,7 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 30000..3134A ; ID_Start # Lo [4939] CJK UNIFIED IDEOGRAPH-30000..CJK UNIFIED IDEOGRAPH-3134A 31350..323AF ; ID_Start # Lo [4192] CJK UNIFIED IDEOGRAPH-31350..CJK UNIFIED IDEOGRAPH-323AF -# Total code points: 136967 +# Total code points: 141269 # ================================================ @@ -6966,7 +7069,7 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 0860..086A ; ID_Continue # Lo [11] SYRIAC LETTER MALAYALAM NGA..SYRIAC LETTER MALAYALAM SSA 0870..0887 ; ID_Continue # Lo [24] ARABIC LETTER ALEF WITH ATTACHED FATHA..ARABIC BASELINE ROUND DOT 0889..088E ; ID_Continue # Lo [6] ARABIC LETTER NOON WITH INVERTED SMALL V..ARABIC VERTICAL TAIL -0898..089F ; ID_Continue # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; ID_Continue # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08A0..08C8 ; ID_Continue # Lo [41] ARABIC LETTER BEH WITH SMALL V BELOW..ARABIC LETTER GRAF 08C9 ; ID_Continue # Lm ARABIC SMALL FARSI YEH 08CA..08E1 ; ID_Continue # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA @@ -7399,7 +7502,7 @@ FFDA..FFDC ; ID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 1C50..1C59 ; ID_Continue # Nd [10] OL CHIKI DIGIT ZERO..OL CHIKI DIGIT NINE 1C5A..1C77 ; ID_Continue # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; ID_Continue # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD -1C80..1C88 ; ID_Continue # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; ID_Continue # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; ID_Continue # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; ID_Continue # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CD0..1CD2 ; ID_Continue # Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA @@ -7543,10 +7646,10 @@ A771..A787 ; ID_Continue # L& [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTE A788 ; ID_Continue # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A78B..A78E ; ID_Continue # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; ID_Continue # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; ID_Continue # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; ID_Continue # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; ID_Continue # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; ID_Continue # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; ID_Continue # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; ID_Continue # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; ID_Continue # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; ID_Continue # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; ID_Continue # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -7735,6 +7838,7 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 105A3..105B1 ; ID_Continue # L& [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; ID_Continue # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; ID_Continue # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; ID_Continue # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; ID_Continue # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; ID_Continue # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; ID_Continue # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -7779,10 +7883,19 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 10D00..10D23 ; ID_Continue # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA 10D24..10D27 ; ID_Continue # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI 10D30..10D39 ; ID_Continue # Nd [10] HANIFI ROHINGYA DIGIT ZERO..HANIFI ROHINGYA DIGIT NINE +10D40..10D49 ; ID_Continue # Nd [10] GARAY DIGIT ZERO..GARAY DIGIT NINE +10D4A..10D4D ; ID_Continue # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; ID_Continue # Lm GARAY VOWEL LENGTH MARK +10D4F ; ID_Continue # Lo GARAY SUKUN +10D50..10D65 ; ID_Continue # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D69..10D6D ; ID_Continue # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK +10D6F ; ID_Continue # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; ID_Continue # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 10E80..10EA9 ; ID_Continue # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EAB..10EAC ; ID_Continue # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK 10EB0..10EB1 ; ID_Continue # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE -10EFD..10EFF ; ID_Continue # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EC2..10EC4 ; ID_Continue # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW +10EFC..10EFF ; ID_Continue # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F00..10F1C ; ID_Continue # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F27 ; ID_Continue # Lo OLD SOGDIAN LIGATURE AYIN-DALETH 10F30..10F45 ; ID_Continue # Lo [22] SOGDIAN LETTER ALEPH..SOGDIAN INDEPENDENT SHIN @@ -7878,6 +7991,24 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 11362..11363 ; ID_Continue # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL 11366..1136C ; ID_Continue # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; ID_Continue # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +11380..11389 ; ID_Continue # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; ID_Continue # Lo TULU-TIGALARI LETTER EE +1138E ; ID_Continue # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; ID_Continue # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; ID_Continue # Lo TULU-TIGALARI SIGN AVAGRAHA +113B8..113BA ; ID_Continue # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; ID_Continue # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; ID_Continue # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; ID_Continue # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; ID_Continue # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; ID_Continue # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113CE ; ID_Continue # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; ID_Continue # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; ID_Continue # Mn TULU-TIGALARI CONJOINER +113D1 ; ID_Continue # Lo TULU-TIGALARI REPHA +113D2 ; ID_Continue # Mn TULU-TIGALARI GEMINATION MARK +113D3 ; ID_Continue # Lo TULU-TIGALARI SIGN PLUTA +113E1..113E2 ; ID_Continue # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11400..11434 ; ID_Continue # Lo [53] NEWA LETTER A..NEWA LETTER HA 11435..11437 ; ID_Continue # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11438..1143F ; ID_Continue # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI @@ -7929,8 +8060,11 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 116B7 ; ID_Continue # Mn TAKRI SIGN NUKTA 116B8 ; ID_Continue # Lo TAKRI LETTER ARCHAIC KHA 116C0..116C9 ; ID_Continue # Nd [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE +116D0..116E3 ; ID_Continue # Nd [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE 11700..1171A ; ID_Continue # Lo [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA -1171D..1171F ; ID_Continue # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; ID_Continue # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; ID_Continue # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; ID_Continue # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; ID_Continue # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; ID_Continue # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; ID_Continue # Mc AHOM VOWEL SIGN E @@ -7988,6 +8122,8 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 11A98..11A99 ; ID_Continue # Mn [2] SOYOMBO GEMINATION MARK..SOYOMBO SUBJOINER 11A9D ; ID_Continue # Lo SOYOMBO MARK PLUTA 11AB0..11AF8 ; ID_Continue # Lo [73] CANADIAN SYLLABICS NATTILIK HI..PAU CIN HAU GLOTTAL STOP FINAL +11BC0..11BE0 ; ID_Continue # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO +11BF0..11BF9 ; ID_Continue # Nd [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE 11C00..11C08 ; ID_Continue # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; ID_Continue # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C2F ; ID_Continue # Mc BHAIKSUKI VOWEL SIGN AA @@ -8041,6 +8177,7 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 11F41 ; ID_Continue # Mc KAWI SIGN KILLER 11F42 ; ID_Continue # Mn KAWI CONJOINER 11F50..11F59 ; ID_Continue # Nd [10] KAWI DIGIT ZERO..KAWI DIGIT NINE +11F5A ; ID_Continue # Mn KAWI SIGN NUKTA 11FB0 ; ID_Continue # Lo LISU LETTER YHA 12000..12399 ; ID_Continue # Lo [922] CUNEIFORM SIGN A..CUNEIFORM SIGN U U 12400..1246E ; ID_Continue # Nl [111] CUNEIFORM NUMERIC SIGN TWO ASH..CUNEIFORM NUMERIC SIGN NINE U VARIANT FORM @@ -8050,7 +8187,13 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 13440 ; ID_Continue # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13441..13446 ; ID_Continue # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN 13447..13455 ; ID_Continue # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +13460..143FA ; ID_Continue # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; ID_Continue # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; ID_Continue # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA +1611E..16129 ; ID_Continue # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; ID_Continue # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612F ; ID_Continue # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA +16130..16139 ; ID_Continue # Nd [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE 16800..16A38 ; ID_Continue # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; ID_Continue # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A60..16A69 ; ID_Continue # Nd [10] MRO DIGIT ZERO..MRO DIGIT NINE @@ -8064,6 +8207,10 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 16B50..16B59 ; ID_Continue # Nd [10] PAHAWH HMONG DIGIT ZERO..PAHAWH HMONG DIGIT NINE 16B63..16B77 ; ID_Continue # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; ID_Continue # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; ID_Continue # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; ID_Continue # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; ID_Continue # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT +16D70..16D79 ; ID_Continue # Nd [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE 16E40..16E7F ; ID_Continue # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16F00..16F4A ; ID_Continue # Lo [75] MIAO LETTER PA..MIAO LETTER RTE 16F4F ; ID_Continue # Mn MIAO SIGN CONSONANT MODIFIER BAR @@ -8077,7 +8224,7 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 16FF0..16FF1 ; ID_Continue # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY 17000..187F7 ; ID_Continue # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18CD5 ; ID_Continue # Lo [1238] TANGUT COMPONENT-001..KHITAN SMALL SCRIPT CHARACTER-18CD5 -18D00..18D08 ; ID_Continue # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 +18CFF..18D08 ; ID_Continue # Lo [10] KHITAN SMALL SCRIPT CHARACTER-18CFF..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; ID_Continue # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; ID_Continue # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 1AFFD..1AFFE ; ID_Continue # Lm [2] KATAKANA LETTER MINNAN NASALIZED TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-8 @@ -8092,6 +8239,7 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 1BC80..1BC88 ; ID_Continue # Lo [9] DUPLOYAN AFFIX HIGH ACUTE..DUPLOYAN AFFIX HIGH VERTICAL 1BC90..1BC99 ; ID_Continue # Lo [10] DUPLOYAN AFFIX LOW ACUTE..DUPLOYAN AFFIX LOW ARROW 1BC9D..1BC9E ; ID_Continue # Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK +1CCF0..1CCF9 ; ID_Continue # Nd [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE 1CF00..1CF2D ; ID_Continue # Mn [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT 1CF30..1CF46 ; ID_Continue # Mn [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG 1D165..1D166 ; ID_Continue # Mc [2] MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING SPRECHGESANG STEM @@ -8163,6 +8311,10 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 1E4EB ; ID_Continue # Lm NAG MUNDARI SIGN OJOD 1E4EC..1E4EF ; ID_Continue # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH 1E4F0..1E4F9 ; ID_Continue # Nd [10] NAG MUNDARI DIGIT ZERO..NAG MUNDARI DIGIT NINE +1E5D0..1E5ED ; ID_Continue # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5EE..1E5EF ; ID_Continue # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR +1E5F0 ; ID_Continue # Lo OL ONAL SIGN HODDOND +1E5F1..1E5FA ; ID_Continue # Nd [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE 1E7E0..1E7E6 ; ID_Continue # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; ID_Continue # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; ID_Continue # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -8218,7 +8370,7 @@ FFDA..FFDC ; ID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HAN 31350..323AF ; ID_Continue # Lo [4192] CJK UNIFIED IDEOGRAPH-31350..CJK UNIFIED IDEOGRAPH-323AF E0100..E01EF ; ID_Continue # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 -# Total code points: 140108 +# Total code points: 144541 # ================================================ @@ -8474,7 +8626,7 @@ E0100..E01EF ; ID_Continue # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR 1C4D..1C4F ; XID_Start # Lo [3] LEPCHA LETTER TTA..LEPCHA LETTER DDA 1C5A..1C77 ; XID_Start # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; XID_Start # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD -1C80..1C88 ; XID_Start # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; XID_Start # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; XID_Start # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; XID_Start # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CE9..1CEC ; XID_Start # Lo [4] VEDIC SIGN ANUSVARA ANTARGOMUKHA..VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL @@ -8590,10 +8742,10 @@ A771..A787 ; XID_Start # L& [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER A788 ; XID_Start # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A78B..A78E ; XID_Start # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; XID_Start # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; XID_Start # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; XID_Start # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; XID_Start # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; XID_Start # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; XID_Start # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; XID_Start # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; XID_Start # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; XID_Start # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; XID_Start # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -8717,6 +8869,7 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 105A3..105B1 ; XID_Start # L& [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; XID_Start # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; XID_Start # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; XID_Start # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; XID_Start # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; XID_Start # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; XID_Start # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -8753,8 +8906,15 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 10C80..10CB2 ; XID_Start # L& [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US 10CC0..10CF2 ; XID_Start # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US 10D00..10D23 ; XID_Start # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA +10D4A..10D4D ; XID_Start # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; XID_Start # Lm GARAY VOWEL LENGTH MARK +10D4F ; XID_Start # Lo GARAY SUKUN +10D50..10D65 ; XID_Start # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D6F ; XID_Start # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; XID_Start # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 10E80..10EA9 ; XID_Start # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EB0..10EB1 ; XID_Start # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE +10EC2..10EC4 ; XID_Start # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW 10F00..10F1C ; XID_Start # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F27 ; XID_Start # Lo OLD SOGDIAN LIGATURE AYIN-DALETH 10F30..10F45 ; XID_Start # Lo [22] SOGDIAN LETTER ALEPH..SOGDIAN INDEPENDENT SHIN @@ -8793,6 +8953,13 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 1133D ; XID_Start # Lo GRANTHA SIGN AVAGRAHA 11350 ; XID_Start # Lo GRANTHA OM 1135D..11361 ; XID_Start # Lo [5] GRANTHA SIGN PLUTA..GRANTHA LETTER VOCALIC LL +11380..11389 ; XID_Start # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; XID_Start # Lo TULU-TIGALARI LETTER EE +1138E ; XID_Start # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; XID_Start # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; XID_Start # Lo TULU-TIGALARI SIGN AVAGRAHA +113D1 ; XID_Start # Lo TULU-TIGALARI REPHA +113D3 ; XID_Start # Lo TULU-TIGALARI SIGN PLUTA 11400..11434 ; XID_Start # Lo [53] NEWA LETTER A..NEWA LETTER HA 11447..1144A ; XID_Start # Lo [4] NEWA SIGN AVAGRAHA..NEWA SIDDHI 1145F..11461 ; XID_Start # Lo [3] NEWA LETTER VEDIC ANUSVARA..NEWA SIGN UPADHMANIYA @@ -8827,6 +8994,7 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 11A5C..11A89 ; XID_Start # Lo [46] SOYOMBO LETTER KA..SOYOMBO CLUSTER-INITIAL LETTER SA 11A9D ; XID_Start # Lo SOYOMBO MARK PLUTA 11AB0..11AF8 ; XID_Start # Lo [73] CANADIAN SYLLABICS NATTILIK HI..PAU CIN HAU GLOTTAL STOP FINAL +11BC0..11BE0 ; XID_Start # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO 11C00..11C08 ; XID_Start # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; XID_Start # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C40 ; XID_Start # Lo BHAIKSUKI SIGN AVAGRAHA @@ -8850,7 +9018,9 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 12F90..12FF0 ; XID_Start # Lo [97] CYPRO-MINOAN SIGN CM001..CYPRO-MINOAN SIGN CM114 13000..1342F ; XID_Start # Lo [1072] EGYPTIAN HIEROGLYPH A001..EGYPTIAN HIEROGLYPH V011D 13441..13446 ; XID_Start # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN +13460..143FA ; XID_Start # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; XID_Start # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; XID_Start # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA 16800..16A38 ; XID_Start # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; XID_Start # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A70..16ABE ; XID_Start # Lo [79] TANGSA LETTER OZ..TANGSA LETTER ZA @@ -8859,6 +9029,9 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 16B40..16B43 ; XID_Start # Lm [4] PAHAWH HMONG SIGN VOS SEEV..PAHAWH HMONG SIGN IB YAM 16B63..16B77 ; XID_Start # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; XID_Start # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; XID_Start # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; XID_Start # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; XID_Start # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT 16E40..16E7F ; XID_Start # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16F00..16F4A ; XID_Start # Lo [75] MIAO LETTER PA..MIAO LETTER RTE 16F50 ; XID_Start # Lo MIAO LETTER NASALIZATION @@ -8867,7 +9040,7 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 16FE3 ; XID_Start # Lm OLD CHINESE ITERATION MARK 17000..187F7 ; XID_Start # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18CD5 ; XID_Start # Lo [1238] TANGUT COMPONENT-001..KHITAN SMALL SCRIPT CHARACTER-18CD5 -18D00..18D08 ; XID_Start # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 +18CFF..18D08 ; XID_Start # Lo [10] KHITAN SMALL SCRIPT CHARACTER-18CFF..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; XID_Start # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; XID_Start # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 1AFFD..1AFFE ; XID_Start # Lm [2] KATAKANA LETTER MINNAN NASALIZED TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-8 @@ -8923,6 +9096,8 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 1E2C0..1E2EB ; XID_Start # Lo [44] WANCHO LETTER AA..WANCHO LETTER YIH 1E4D0..1E4EA ; XID_Start # Lo [27] NAG MUNDARI LETTER O..NAG MUNDARI LETTER ELL 1E4EB ; XID_Start # Lm NAG MUNDARI SIGN OJOD +1E5D0..1E5ED ; XID_Start # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5F0 ; XID_Start # Lo OL ONAL SIGN HODDOND 1E7E0..1E7E6 ; XID_Start # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; XID_Start # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; XID_Start # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -8973,7 +9148,7 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 30000..3134A ; XID_Start # Lo [4939] CJK UNIFIED IDEOGRAPH-30000..CJK UNIFIED IDEOGRAPH-3134A 31350..323AF ; XID_Start # Lo [4192] CJK UNIFIED IDEOGRAPH-31350..CJK UNIFIED IDEOGRAPH-323AF -# Total code points: 136944 +# Total code points: 141246 # ================================================ @@ -9076,7 +9251,7 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 0860..086A ; XID_Continue # Lo [11] SYRIAC LETTER MALAYALAM NGA..SYRIAC LETTER MALAYALAM SSA 0870..0887 ; XID_Continue # Lo [24] ARABIC LETTER ALEF WITH ATTACHED FATHA..ARABIC BASELINE ROUND DOT 0889..088E ; XID_Continue # Lo [6] ARABIC LETTER NOON WITH INVERTED SMALL V..ARABIC VERTICAL TAIL -0898..089F ; XID_Continue # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; XID_Continue # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08A0..08C8 ; XID_Continue # Lo [41] ARABIC LETTER BEH WITH SMALL V BELOW..ARABIC LETTER GRAF 08C9 ; XID_Continue # Lm ARABIC SMALL FARSI YEH 08CA..08E1 ; XID_Continue # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA @@ -9509,7 +9684,7 @@ FFDA..FFDC ; XID_Start # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGU 1C50..1C59 ; XID_Continue # Nd [10] OL CHIKI DIGIT ZERO..OL CHIKI DIGIT NINE 1C5A..1C77 ; XID_Continue # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; XID_Continue # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD -1C80..1C88 ; XID_Continue # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; XID_Continue # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; XID_Continue # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; XID_Continue # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CD0..1CD2 ; XID_Continue # Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA @@ -9652,10 +9827,10 @@ A771..A787 ; XID_Continue # L& [23] LATIN SMALL LETTER DUM..LATIN SMALL LETT A788 ; XID_Continue # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A78B..A78E ; XID_Continue # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; XID_Continue # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; XID_Continue # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; XID_Continue # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; XID_Continue # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; XID_Continue # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; XID_Continue # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; XID_Continue # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; XID_Continue # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; XID_Continue # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; XID_Continue # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -9850,6 +10025,7 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 105A3..105B1 ; XID_Continue # L& [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; XID_Continue # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; XID_Continue # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; XID_Continue # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; XID_Continue # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; XID_Continue # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; XID_Continue # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -9894,10 +10070,19 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 10D00..10D23 ; XID_Continue # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA 10D24..10D27 ; XID_Continue # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI 10D30..10D39 ; XID_Continue # Nd [10] HANIFI ROHINGYA DIGIT ZERO..HANIFI ROHINGYA DIGIT NINE +10D40..10D49 ; XID_Continue # Nd [10] GARAY DIGIT ZERO..GARAY DIGIT NINE +10D4A..10D4D ; XID_Continue # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; XID_Continue # Lm GARAY VOWEL LENGTH MARK +10D4F ; XID_Continue # Lo GARAY SUKUN +10D50..10D65 ; XID_Continue # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D69..10D6D ; XID_Continue # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK +10D6F ; XID_Continue # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; XID_Continue # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 10E80..10EA9 ; XID_Continue # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EAB..10EAC ; XID_Continue # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK 10EB0..10EB1 ; XID_Continue # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE -10EFD..10EFF ; XID_Continue # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EC2..10EC4 ; XID_Continue # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW +10EFC..10EFF ; XID_Continue # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F00..10F1C ; XID_Continue # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F27 ; XID_Continue # Lo OLD SOGDIAN LIGATURE AYIN-DALETH 10F30..10F45 ; XID_Continue # Lo [22] SOGDIAN LETTER ALEPH..SOGDIAN INDEPENDENT SHIN @@ -9993,6 +10178,24 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 11362..11363 ; XID_Continue # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL 11366..1136C ; XID_Continue # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; XID_Continue # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +11380..11389 ; XID_Continue # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; XID_Continue # Lo TULU-TIGALARI LETTER EE +1138E ; XID_Continue # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; XID_Continue # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; XID_Continue # Lo TULU-TIGALARI SIGN AVAGRAHA +113B8..113BA ; XID_Continue # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; XID_Continue # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; XID_Continue # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; XID_Continue # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; XID_Continue # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; XID_Continue # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113CE ; XID_Continue # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; XID_Continue # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; XID_Continue # Mn TULU-TIGALARI CONJOINER +113D1 ; XID_Continue # Lo TULU-TIGALARI REPHA +113D2 ; XID_Continue # Mn TULU-TIGALARI GEMINATION MARK +113D3 ; XID_Continue # Lo TULU-TIGALARI SIGN PLUTA +113E1..113E2 ; XID_Continue # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11400..11434 ; XID_Continue # Lo [53] NEWA LETTER A..NEWA LETTER HA 11435..11437 ; XID_Continue # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11438..1143F ; XID_Continue # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI @@ -10044,8 +10247,11 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 116B7 ; XID_Continue # Mn TAKRI SIGN NUKTA 116B8 ; XID_Continue # Lo TAKRI LETTER ARCHAIC KHA 116C0..116C9 ; XID_Continue # Nd [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE +116D0..116E3 ; XID_Continue # Nd [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE 11700..1171A ; XID_Continue # Lo [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA -1171D..1171F ; XID_Continue # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; XID_Continue # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; XID_Continue # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; XID_Continue # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; XID_Continue # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; XID_Continue # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; XID_Continue # Mc AHOM VOWEL SIGN E @@ -10103,6 +10309,8 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 11A98..11A99 ; XID_Continue # Mn [2] SOYOMBO GEMINATION MARK..SOYOMBO SUBJOINER 11A9D ; XID_Continue # Lo SOYOMBO MARK PLUTA 11AB0..11AF8 ; XID_Continue # Lo [73] CANADIAN SYLLABICS NATTILIK HI..PAU CIN HAU GLOTTAL STOP FINAL +11BC0..11BE0 ; XID_Continue # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO +11BF0..11BF9 ; XID_Continue # Nd [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE 11C00..11C08 ; XID_Continue # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; XID_Continue # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C2F ; XID_Continue # Mc BHAIKSUKI VOWEL SIGN AA @@ -10156,6 +10364,7 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 11F41 ; XID_Continue # Mc KAWI SIGN KILLER 11F42 ; XID_Continue # Mn KAWI CONJOINER 11F50..11F59 ; XID_Continue # Nd [10] KAWI DIGIT ZERO..KAWI DIGIT NINE +11F5A ; XID_Continue # Mn KAWI SIGN NUKTA 11FB0 ; XID_Continue # Lo LISU LETTER YHA 12000..12399 ; XID_Continue # Lo [922] CUNEIFORM SIGN A..CUNEIFORM SIGN U U 12400..1246E ; XID_Continue # Nl [111] CUNEIFORM NUMERIC SIGN TWO ASH..CUNEIFORM NUMERIC SIGN NINE U VARIANT FORM @@ -10165,7 +10374,13 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 13440 ; XID_Continue # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13441..13446 ; XID_Continue # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN 13447..13455 ; XID_Continue # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +13460..143FA ; XID_Continue # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; XID_Continue # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; XID_Continue # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA +1611E..16129 ; XID_Continue # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; XID_Continue # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612F ; XID_Continue # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA +16130..16139 ; XID_Continue # Nd [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE 16800..16A38 ; XID_Continue # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; XID_Continue # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A60..16A69 ; XID_Continue # Nd [10] MRO DIGIT ZERO..MRO DIGIT NINE @@ -10179,6 +10394,10 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 16B50..16B59 ; XID_Continue # Nd [10] PAHAWH HMONG DIGIT ZERO..PAHAWH HMONG DIGIT NINE 16B63..16B77 ; XID_Continue # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; XID_Continue # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; XID_Continue # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; XID_Continue # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; XID_Continue # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT +16D70..16D79 ; XID_Continue # Nd [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE 16E40..16E7F ; XID_Continue # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16F00..16F4A ; XID_Continue # Lo [75] MIAO LETTER PA..MIAO LETTER RTE 16F4F ; XID_Continue # Mn MIAO SIGN CONSONANT MODIFIER BAR @@ -10192,7 +10411,7 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 16FF0..16FF1 ; XID_Continue # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY 17000..187F7 ; XID_Continue # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18CD5 ; XID_Continue # Lo [1238] TANGUT COMPONENT-001..KHITAN SMALL SCRIPT CHARACTER-18CD5 -18D00..18D08 ; XID_Continue # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 +18CFF..18D08 ; XID_Continue # Lo [10] KHITAN SMALL SCRIPT CHARACTER-18CFF..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; XID_Continue # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; XID_Continue # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 1AFFD..1AFFE ; XID_Continue # Lm [2] KATAKANA LETTER MINNAN NASALIZED TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-8 @@ -10207,6 +10426,7 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 1BC80..1BC88 ; XID_Continue # Lo [9] DUPLOYAN AFFIX HIGH ACUTE..DUPLOYAN AFFIX HIGH VERTICAL 1BC90..1BC99 ; XID_Continue # Lo [10] DUPLOYAN AFFIX LOW ACUTE..DUPLOYAN AFFIX LOW ARROW 1BC9D..1BC9E ; XID_Continue # Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK +1CCF0..1CCF9 ; XID_Continue # Nd [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE 1CF00..1CF2D ; XID_Continue # Mn [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT 1CF30..1CF46 ; XID_Continue # Mn [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG 1D165..1D166 ; XID_Continue # Mc [2] MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING SPRECHGESANG STEM @@ -10278,6 +10498,10 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 1E4EB ; XID_Continue # Lm NAG MUNDARI SIGN OJOD 1E4EC..1E4EF ; XID_Continue # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH 1E4F0..1E4F9 ; XID_Continue # Nd [10] NAG MUNDARI DIGIT ZERO..NAG MUNDARI DIGIT NINE +1E5D0..1E5ED ; XID_Continue # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5EE..1E5EF ; XID_Continue # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR +1E5F0 ; XID_Continue # Lo OL ONAL SIGN HODDOND +1E5F1..1E5FA ; XID_Continue # Nd [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE 1E7E0..1E7E6 ; XID_Continue # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; XID_Continue # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; XID_Continue # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -10333,7 +10557,7 @@ FFDA..FFDC ; XID_Continue # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HA 31350..323AF ; XID_Continue # Lo [4192] CJK UNIFIED IDEOGRAPH-31350..CJK UNIFIED IDEOGRAPH-323AF E0100..E01EF ; XID_Continue # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 -# Total code points: 140089 +# Total code points: 144522 # ================================================ @@ -10418,7 +10642,7 @@ E01F0..E0FFF ; Default_Ignorable_Code_Point # Cn [3600] <reserved-E01F0>..<rese 0825..0827 ; Grapheme_Extend # Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U 0829..082D ; Grapheme_Extend # Mn [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA 0859..085B ; Grapheme_Extend # Mn [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK -0898..089F ; Grapheme_Extend # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; Grapheme_Extend # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08CA..08E1 ; Grapheme_Extend # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA 08E3..0902 ; Grapheme_Extend # Mn [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA 093A ; Grapheme_Extend # Mn DEVANAGARI VOWEL SIGN OE @@ -10475,8 +10699,11 @@ E01F0..E0FFF ; Default_Ignorable_Code_Point # Cn [3600] <reserved-E01F0>..<rese 0C81 ; Grapheme_Extend # Mn KANNADA SIGN CANDRABINDU 0CBC ; Grapheme_Extend # Mn KANNADA SIGN NUKTA 0CBF ; Grapheme_Extend # Mn KANNADA VOWEL SIGN I +0CC0 ; Grapheme_Extend # Mc KANNADA VOWEL SIGN II 0CC2 ; Grapheme_Extend # Mc KANNADA VOWEL SIGN UU 0CC6 ; Grapheme_Extend # Mn KANNADA VOWEL SIGN E +0CC7..0CC8 ; Grapheme_Extend # Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI +0CCA..0CCB ; Grapheme_Extend # Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO 0CCC..0CCD ; Grapheme_Extend # Mn [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA 0CD5..0CD6 ; Grapheme_Extend # Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK 0CE2..0CE3 ; Grapheme_Extend # Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL @@ -10522,7 +10749,9 @@ E01F0..E0FFF ; Default_Ignorable_Code_Point # Cn [3600] <reserved-E01F0>..<rese 109D ; Grapheme_Extend # Mn MYANMAR VOWEL SIGN AITON AI 135D..135F ; Grapheme_Extend # Mn [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK 1712..1714 ; Grapheme_Extend # Mn [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA +1715 ; Grapheme_Extend # Mc TAGALOG SIGN PAMUDPOD 1732..1733 ; Grapheme_Extend # Mn [2] HANUNOO VOWEL SIGN I..HANUNOO VOWEL SIGN U +1734 ; Grapheme_Extend # Mc HANUNOO SIGN PAMUDPOD 1752..1753 ; Grapheme_Extend # Mn [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U 1772..1773 ; Grapheme_Extend # Mn [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U 17B4..17B5 ; Grapheme_Extend # Mn [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA @@ -10554,17 +10783,22 @@ E01F0..E0FFF ; Default_Ignorable_Code_Point # Cn [3600] <reserved-E01F0>..<rese 1B34 ; Grapheme_Extend # Mn BALINESE SIGN REREKAN 1B35 ; Grapheme_Extend # Mc BALINESE VOWEL SIGN TEDUNG 1B36..1B3A ; Grapheme_Extend # Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA +1B3B ; Grapheme_Extend # Mc BALINESE VOWEL SIGN RA REPA TEDUNG 1B3C ; Grapheme_Extend # Mn BALINESE VOWEL SIGN LA LENGA +1B3D ; Grapheme_Extend # Mc BALINESE VOWEL SIGN LA LENGA TEDUNG 1B42 ; Grapheme_Extend # Mn BALINESE VOWEL SIGN PEPET +1B43..1B44 ; Grapheme_Extend # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG 1B6B..1B73 ; Grapheme_Extend # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG 1B80..1B81 ; Grapheme_Extend # Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR 1BA2..1BA5 ; Grapheme_Extend # Mn [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU 1BA8..1BA9 ; Grapheme_Extend # Mn [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG +1BAA ; Grapheme_Extend # Mc SUNDANESE SIGN PAMAAEH 1BAB..1BAD ; Grapheme_Extend # Mn [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA 1BE6 ; Grapheme_Extend # Mn BATAK SIGN TOMPI 1BE8..1BE9 ; Grapheme_Extend # Mn [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE 1BED ; Grapheme_Extend # Mn BATAK VOWEL SIGN KARO O 1BEF..1BF1 ; Grapheme_Extend # Mn [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H +1BF2..1BF3 ; Grapheme_Extend # Mc [2] BATAK PANGOLAT..BATAK PANONGONAN 1C2C..1C33 ; Grapheme_Extend # Mn [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T 1C36..1C37 ; Grapheme_Extend # Mn [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA 1CD0..1CD2 ; Grapheme_Extend # Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA @@ -10601,10 +10835,12 @@ A8E0..A8F1 ; Grapheme_Extend # Mn [18] COMBINING DEVANAGARI DIGIT ZERO..COMB A8FF ; Grapheme_Extend # Mn DEVANAGARI VOWEL SIGN AY A926..A92D ; Grapheme_Extend # Mn [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU A947..A951 ; Grapheme_Extend # Mn [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R +A953 ; Grapheme_Extend # Mc REJANG VIRAMA A980..A982 ; Grapheme_Extend # Mn [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR A9B3 ; Grapheme_Extend # Mn JAVANESE SIGN CECAK TELU A9B6..A9B9 ; Grapheme_Extend # Mn [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT A9BC..A9BD ; Grapheme_Extend # Mn [2] JAVANESE VOWEL SIGN PEPET..JAVANESE CONSONANT SIGN KERET +A9C0 ; Grapheme_Extend # Mc JAVANESE PANGKON A9E5 ; Grapheme_Extend # Mn MYANMAR SIGN SHAN SAW AA29..AA2E ; Grapheme_Extend # Mn [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE AA31..AA32 ; Grapheme_Extend # Mn [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE @@ -10636,8 +10872,9 @@ FF9E..FF9F ; Grapheme_Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK. 10A3F ; Grapheme_Extend # Mn KHAROSHTHI VIRAMA 10AE5..10AE6 ; Grapheme_Extend # Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW 10D24..10D27 ; Grapheme_Extend # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI +10D69..10D6D ; Grapheme_Extend # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK 10EAB..10EAC ; Grapheme_Extend # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK -10EFD..10EFF ; Grapheme_Extend # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EFC..10EFF ; Grapheme_Extend # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F46..10F50 ; Grapheme_Extend # Mn [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW 10F82..10F85 ; Grapheme_Extend # Mn [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW 11001 ; Grapheme_Extend # Mn BRAHMI SIGN ANUSVARA @@ -10654,10 +10891,12 @@ FF9E..FF9F ; Grapheme_Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK. 11173 ; Grapheme_Extend # Mn MAHAJANI SIGN NUKTA 11180..11181 ; Grapheme_Extend # Mn [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA 111B6..111BE ; Grapheme_Extend # Mn [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O +111C0 ; Grapheme_Extend # Mc SHARADA SIGN VIRAMA 111C9..111CC ; Grapheme_Extend # Mn [4] SHARADA SANDHI MARK..SHARADA EXTRA SHORT VOWEL MARK 111CF ; Grapheme_Extend # Mn SHARADA SIGN INVERTED CANDRABINDU 1122F..11231 ; Grapheme_Extend # Mn [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI 11234 ; Grapheme_Extend # Mn KHOJKI SIGN ANUSVARA +11235 ; Grapheme_Extend # Mc KHOJKI SIGN VIRAMA 11236..11237 ; Grapheme_Extend # Mn [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA 1123E ; Grapheme_Extend # Mn KHOJKI SIGN SUKUN 11241 ; Grapheme_Extend # Mn KHOJKI VOWEL SIGN VOCALIC R @@ -10667,9 +10906,20 @@ FF9E..FF9F ; Grapheme_Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK. 1133B..1133C ; Grapheme_Extend # Mn [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA 1133E ; Grapheme_Extend # Mc GRANTHA VOWEL SIGN AA 11340 ; Grapheme_Extend # Mn GRANTHA VOWEL SIGN II +1134D ; Grapheme_Extend # Mc GRANTHA SIGN VIRAMA 11357 ; Grapheme_Extend # Mc GRANTHA AU LENGTH MARK 11366..1136C ; Grapheme_Extend # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; Grapheme_Extend # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +113B8 ; Grapheme_Extend # Mc TULU-TIGALARI VOWEL SIGN AA +113BB..113C0 ; Grapheme_Extend # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; Grapheme_Extend # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; Grapheme_Extend # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113C9 ; Grapheme_Extend # Mc [3] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI AU LENGTH MARK +113CE ; Grapheme_Extend # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; Grapheme_Extend # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; Grapheme_Extend # Mn TULU-TIGALARI CONJOINER +113D2 ; Grapheme_Extend # Mn TULU-TIGALARI GEMINATION MARK +113E1..113E2 ; Grapheme_Extend # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11438..1143F ; Grapheme_Extend # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI 11442..11444 ; Grapheme_Extend # Mn [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA 11446 ; Grapheme_Extend # Mn NEWA SIGN NUKTA @@ -10691,14 +10941,17 @@ FF9E..FF9F ; Grapheme_Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK. 116AB ; Grapheme_Extend # Mn TAKRI SIGN ANUSVARA 116AD ; Grapheme_Extend # Mn TAKRI VOWEL SIGN AA 116B0..116B5 ; Grapheme_Extend # Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU +116B6 ; Grapheme_Extend # Mc TAKRI SIGN VIRAMA 116B7 ; Grapheme_Extend # Mn TAKRI SIGN NUKTA -1171D..1171F ; Grapheme_Extend # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; Grapheme_Extend # Mn AHOM CONSONANT SIGN MEDIAL LA +1171F ; Grapheme_Extend # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11722..11725 ; Grapheme_Extend # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11727..1172B ; Grapheme_Extend # Mn [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER 1182F..11837 ; Grapheme_Extend # Mn [9] DOGRA VOWEL SIGN U..DOGRA SIGN ANUSVARA 11839..1183A ; Grapheme_Extend # Mn [2] DOGRA SIGN VIRAMA..DOGRA SIGN NUKTA 11930 ; Grapheme_Extend # Mc DIVES AKURU VOWEL SIGN AA 1193B..1193C ; Grapheme_Extend # Mn [2] DIVES AKURU SIGN ANUSVARA..DIVES AKURU SIGN CANDRABINDU +1193D ; Grapheme_Extend # Mc DIVES AKURU SIGN HALANTA 1193E ; Grapheme_Extend # Mn DIVES AKURU VIRAMA 11943 ; Grapheme_Extend # Mn DIVES AKURU SIGN NUKTA 119D4..119D7 ; Grapheme_Extend # Mn [4] NANDINAGARI VOWEL SIGN U..NANDINAGARI VOWEL SIGN VOCALIC RR @@ -10731,20 +10984,25 @@ FF9E..FF9F ; Grapheme_Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK. 11F00..11F01 ; Grapheme_Extend # Mn [2] KAWI SIGN CANDRABINDU..KAWI SIGN ANUSVARA 11F36..11F3A ; Grapheme_Extend # Mn [5] KAWI VOWEL SIGN I..KAWI VOWEL SIGN VOCALIC R 11F40 ; Grapheme_Extend # Mn KAWI VOWEL SIGN EU +11F41 ; Grapheme_Extend # Mc KAWI SIGN KILLER 11F42 ; Grapheme_Extend # Mn KAWI CONJOINER +11F5A ; Grapheme_Extend # Mn KAWI SIGN NUKTA 13440 ; Grapheme_Extend # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13447..13455 ; Grapheme_Extend # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +1611E..16129 ; Grapheme_Extend # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612D..1612F ; Grapheme_Extend # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA 16AF0..16AF4 ; Grapheme_Extend # Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE 16B30..16B36 ; Grapheme_Extend # Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM 16F4F ; Grapheme_Extend # Mn MIAO SIGN CONSONANT MODIFIER BAR 16F8F..16F92 ; Grapheme_Extend # Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW 16FE4 ; Grapheme_Extend # Mn KHITAN SMALL SCRIPT FILLER +16FF0..16FF1 ; Grapheme_Extend # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY 1BC9D..1BC9E ; Grapheme_Extend # Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK 1CF00..1CF2D ; Grapheme_Extend # Mn [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT 1CF30..1CF46 ; Grapheme_Extend # Mn [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG -1D165 ; Grapheme_Extend # Mc MUSICAL SYMBOL COMBINING STEM +1D165..1D166 ; Grapheme_Extend # Mc [2] MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING SPRECHGESANG STEM 1D167..1D169 ; Grapheme_Extend # Mn [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3 -1D16E..1D172 ; Grapheme_Extend # Mc [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5 +1D16D..1D172 ; Grapheme_Extend # Mc [6] MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5 1D17B..1D182 ; Grapheme_Extend # Mn [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE 1D185..1D18B ; Grapheme_Extend # Mn [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE 1D1AA..1D1AD ; Grapheme_Extend # Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO @@ -10765,12 +11023,13 @@ FF9E..FF9F ; Grapheme_Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK. 1E2AE ; Grapheme_Extend # Mn TOTO SIGN RISING TONE 1E2EC..1E2EF ; Grapheme_Extend # Mn [4] WANCHO TONE TUP..WANCHO TONE KOINI 1E4EC..1E4EF ; Grapheme_Extend # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH +1E5EE..1E5EF ; Grapheme_Extend # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR 1E8D0..1E8D6 ; Grapheme_Extend # Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS 1E944..1E94A ; Grapheme_Extend # Mn [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA E0020..E007F ; Grapheme_Extend # Cf [96] TAG SPACE..CANCEL TAG E0100..E01EF ; Grapheme_Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 -# Total code points: 2125 +# Total code points: 2193 # ================================================ @@ -11062,10 +11321,8 @@ E0100..E01EF ; Grapheme_Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELE 0CB5..0CB9 ; Grapheme_Base # Lo [5] KANNADA LETTER VA..KANNADA LETTER HA 0CBD ; Grapheme_Base # Lo KANNADA SIGN AVAGRAHA 0CBE ; Grapheme_Base # Mc KANNADA VOWEL SIGN AA -0CC0..0CC1 ; Grapheme_Base # Mc [2] KANNADA VOWEL SIGN II..KANNADA VOWEL SIGN U +0CC1 ; Grapheme_Base # Mc KANNADA VOWEL SIGN U 0CC3..0CC4 ; Grapheme_Base # Mc [2] KANNADA VOWEL SIGN VOCALIC R..KANNADA VOWEL SIGN VOCALIC RR -0CC7..0CC8 ; Grapheme_Base # Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI -0CCA..0CCB ; Grapheme_Base # Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO 0CDD..0CDE ; Grapheme_Base # Lo [2] KANNADA LETTER NAKAARA POLLU..KANNADA LETTER FA 0CE0..0CE1 ; Grapheme_Base # Lo [2] KANNADA LETTER VOCALIC RR..KANNADA LETTER VOCALIC LL 0CE6..0CEF ; Grapheme_Base # Nd [10] KANNADA DIGIT ZERO..KANNADA DIGIT NINE @@ -11214,9 +11471,7 @@ E0100..E01EF ; Grapheme_Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELE 16EE..16F0 ; Grapheme_Base # Nl [3] RUNIC ARLAUG SYMBOL..RUNIC BELGTHOR SYMBOL 16F1..16F8 ; Grapheme_Base # Lo [8] RUNIC LETTER K..RUNIC LETTER FRANKS CASKET AESC 1700..1711 ; Grapheme_Base # Lo [18] TAGALOG LETTER A..TAGALOG LETTER HA -1715 ; Grapheme_Base # Mc TAGALOG SIGN PAMUDPOD 171F..1731 ; Grapheme_Base # Lo [19] TAGALOG LETTER ARCHAIC RA..HANUNOO LETTER HA -1734 ; Grapheme_Base # Mc HANUNOO SIGN PAMUDPOD 1735..1736 ; Grapheme_Base # Po [2] PHILIPPINE SINGLE PUNCTUATION..PHILIPPINE DOUBLE PUNCTUATION 1740..1751 ; Grapheme_Base # Lo [18] BUHID LETTER A..BUHID LETTER HA 1760..176C ; Grapheme_Base # Lo [13] TAGBANWA LETTER A..TAGBANWA LETTER YA @@ -11274,27 +11529,24 @@ E0100..E01EF ; Grapheme_Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELE 1AA8..1AAD ; Grapheme_Base # Po [6] TAI THAM SIGN KAAN..TAI THAM SIGN CAANG 1B04 ; Grapheme_Base # Mc BALINESE SIGN BISAH 1B05..1B33 ; Grapheme_Base # Lo [47] BALINESE LETTER AKARA..BALINESE LETTER HA -1B3B ; Grapheme_Base # Mc BALINESE VOWEL SIGN RA REPA TEDUNG -1B3D..1B41 ; Grapheme_Base # Mc [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG -1B43..1B44 ; Grapheme_Base # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG +1B3E..1B41 ; Grapheme_Base # Mc [4] BALINESE VOWEL SIGN TALING..BALINESE VOWEL SIGN TALING REPA TEDUNG 1B45..1B4C ; Grapheme_Base # Lo [8] BALINESE LETTER KAF SASAK..BALINESE LETTER ARCHAIC JNYA +1B4E..1B4F ; Grapheme_Base # Po [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN 1B50..1B59 ; Grapheme_Base # Nd [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE 1B5A..1B60 ; Grapheme_Base # Po [7] BALINESE PANTI..BALINESE PAMENENG 1B61..1B6A ; Grapheme_Base # So [10] BALINESE MUSICAL SYMBOL DONG..BALINESE MUSICAL SYMBOL DANG GEDE 1B74..1B7C ; Grapheme_Base # So [9] BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING -1B7D..1B7E ; Grapheme_Base # Po [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG +1B7D..1B7F ; Grapheme_Base # Po [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK 1B82 ; Grapheme_Base # Mc SUNDANESE SIGN PANGWISAD 1B83..1BA0 ; Grapheme_Base # Lo [30] SUNDANESE LETTER A..SUNDANESE LETTER HA 1BA1 ; Grapheme_Base # Mc SUNDANESE CONSONANT SIGN PAMINGKAL 1BA6..1BA7 ; Grapheme_Base # Mc [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG -1BAA ; Grapheme_Base # Mc SUNDANESE SIGN PAMAAEH 1BAE..1BAF ; Grapheme_Base # Lo [2] SUNDANESE LETTER KHA..SUNDANESE LETTER SYA 1BB0..1BB9 ; Grapheme_Base # Nd [10] SUNDANESE DIGIT ZERO..SUNDANESE DIGIT NINE 1BBA..1BE5 ; Grapheme_Base # Lo [44] SUNDANESE AVAGRAHA..BATAK LETTER U 1BE7 ; Grapheme_Base # Mc BATAK VOWEL SIGN E 1BEA..1BEC ; Grapheme_Base # Mc [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O 1BEE ; Grapheme_Base # Mc BATAK VOWEL SIGN U -1BF2..1BF3 ; Grapheme_Base # Mc [2] BATAK PANGOLAT..BATAK PANONGONAN 1BFC..1BFF ; Grapheme_Base # Po [4] BATAK SYMBOL BINDU NA METEK..BATAK SYMBOL BINDU PANGOLAT 1C00..1C23 ; Grapheme_Base # Lo [36] LEPCHA LETTER KA..LEPCHA LETTER A 1C24..1C2B ; Grapheme_Base # Mc [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU @@ -11306,7 +11558,7 @@ E0100..E01EF ; Grapheme_Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELE 1C5A..1C77 ; Grapheme_Base # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; Grapheme_Base # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD 1C7E..1C7F ; Grapheme_Base # Po [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD -1C80..1C88 ; Grapheme_Base # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; Grapheme_Base # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; Grapheme_Base # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; Grapheme_Base # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CC0..1CC7 ; Grapheme_Base # Po [8] SUNDANESE PUNCTUATION BINDU SURYA..SUNDANESE PUNCTUATION BINDU BA SATANGA @@ -11461,7 +11713,7 @@ E0100..E01EF ; Grapheme_Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELE 239B..23B3 ; Grapheme_Base # Sm [25] LEFT PARENTHESIS UPPER HOOK..SUMMATION BOTTOM 23B4..23DB ; Grapheme_Base # So [40] TOP SQUARE BRACKET..FUSE 23DC..23E1 ; Grapheme_Base # Sm [6] TOP PARENTHESIS..BOTTOM TORTOISE SHELL BRACKET -23E2..2426 ; Grapheme_Base # So [69] WHITE TRAPEZIUM..SYMBOL FOR SUBSTITUTE FORM TWO +23E2..2429 ; Grapheme_Base # So [72] WHITE TRAPEZIUM..SYMBOL FOR DELETE MEDIUM SHADE FORM 2440..244A ; Grapheme_Base # So [11] OCR HOOK..OCR DOUBLE BACKSLASH 2460..249B ; Grapheme_Base # No [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP 249C..24E9 ; Grapheme_Base # So [78] PARENTHESIZED LATIN SMALL LETTER A..CIRCLED LATIN SMALL LETTER Z @@ -11676,7 +11928,7 @@ E0100..E01EF ; Grapheme_Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELE 3192..3195 ; Grapheme_Base # No [4] IDEOGRAPHIC ANNOTATION ONE MARK..IDEOGRAPHIC ANNOTATION FOUR MARK 3196..319F ; Grapheme_Base # So [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK 31A0..31BF ; Grapheme_Base # Lo [32] BOPOMOFO LETTER BU..BOPOMOFO LETTER AH -31C0..31E3 ; Grapheme_Base # So [36] CJK STROKE T..CJK STROKE Q +31C0..31E5 ; Grapheme_Base # So [38] CJK STROKE T..CJK STROKE SZP 31EF ; Grapheme_Base # So IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION 31F0..31FF ; Grapheme_Base # Lo [16] KATAKANA LETTER SMALL KU..KATAKANA LETTER SMALL RO 3200..321E ; Grapheme_Base # So [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU @@ -11725,10 +11977,10 @@ A788 ; Grapheme_Base # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A789..A78A ; Grapheme_Base # Sk [2] MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN A78B..A78E ; Grapheme_Base # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; Grapheme_Base # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; Grapheme_Base # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; Grapheme_Base # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; Grapheme_Base # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; Grapheme_Base # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; Grapheme_Base # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; Grapheme_Base # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; Grapheme_Base # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; Grapheme_Base # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; Grapheme_Base # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -11761,14 +12013,14 @@ A900..A909 ; Grapheme_Base # Nd [10] KAYAH LI DIGIT ZERO..KAYAH LI DIGIT NIN A90A..A925 ; Grapheme_Base # Lo [28] KAYAH LI LETTER KA..KAYAH LI LETTER OO A92E..A92F ; Grapheme_Base # Po [2] KAYAH LI SIGN CWI..KAYAH LI SIGN SHYA A930..A946 ; Grapheme_Base # Lo [23] REJANG LETTER KA..REJANG LETTER A -A952..A953 ; Grapheme_Base # Mc [2] REJANG CONSONANT SIGN H..REJANG VIRAMA +A952 ; Grapheme_Base # Mc REJANG CONSONANT SIGN H A95F ; Grapheme_Base # Po REJANG SECTION MARK A960..A97C ; Grapheme_Base # Lo [29] HANGUL CHOSEONG TIKEUT-MIEUM..HANGUL CHOSEONG SSANGYEORINHIEUH A983 ; Grapheme_Base # Mc JAVANESE SIGN WIGNYAN A984..A9B2 ; Grapheme_Base # Lo [47] JAVANESE LETTER A..JAVANESE LETTER HA A9B4..A9B5 ; Grapheme_Base # Mc [2] JAVANESE VOWEL SIGN TARUNG..JAVANESE VOWEL SIGN TOLONG A9BA..A9BB ; Grapheme_Base # Mc [2] JAVANESE VOWEL SIGN TALING..JAVANESE VOWEL SIGN DIRGA MURE -A9BE..A9C0 ; Grapheme_Base # Mc [3] JAVANESE CONSONANT SIGN PENGKAL..JAVANESE PANGKON +A9BE..A9BF ; Grapheme_Base # Mc [2] JAVANESE CONSONANT SIGN PENGKAL..JAVANESE CONSONANT SIGN CAKRA A9C1..A9CD ; Grapheme_Base # Po [13] JAVANESE LEFT RERENGGAN..JAVANESE TURNED PADA PISELEH A9CF ; Grapheme_Base # Lm JAVANESE PANGRANGKEP A9D0..A9D9 ; Grapheme_Base # Nd [10] JAVANESE DIGIT ZERO..JAVANESE DIGIT NINE @@ -12000,6 +12252,7 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 105A3..105B1 ; Grapheme_Base # L& [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; Grapheme_Base # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; Grapheme_Base # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; Grapheme_Base # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; Grapheme_Base # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; Grapheme_Base # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; Grapheme_Base # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -12063,10 +12316,20 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 10CFA..10CFF ; Grapheme_Base # No [6] OLD HUNGARIAN NUMBER ONE..OLD HUNGARIAN NUMBER ONE THOUSAND 10D00..10D23 ; Grapheme_Base # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA 10D30..10D39 ; Grapheme_Base # Nd [10] HANIFI ROHINGYA DIGIT ZERO..HANIFI ROHINGYA DIGIT NINE +10D40..10D49 ; Grapheme_Base # Nd [10] GARAY DIGIT ZERO..GARAY DIGIT NINE +10D4A..10D4D ; Grapheme_Base # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; Grapheme_Base # Lm GARAY VOWEL LENGTH MARK +10D4F ; Grapheme_Base # Lo GARAY SUKUN +10D50..10D65 ; Grapheme_Base # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D6E ; Grapheme_Base # Pd GARAY HYPHEN +10D6F ; Grapheme_Base # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; Grapheme_Base # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA +10D8E..10D8F ; Grapheme_Base # Sm [2] GARAY PLUS SIGN..GARAY MINUS SIGN 10E60..10E7E ; Grapheme_Base # No [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS 10E80..10EA9 ; Grapheme_Base # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EAD ; Grapheme_Base # Pd YEZIDI HYPHENATION MARK 10EB0..10EB1 ; Grapheme_Base # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE +10EC2..10EC4 ; Grapheme_Base # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW 10F00..10F1C ; Grapheme_Base # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F1D..10F26 ; Grapheme_Base # No [10] OLD SOGDIAN NUMBER ONE..OLD SOGDIAN FRACTION ONE HALF 10F27 ; Grapheme_Base # Lo OLD SOGDIAN LIGATURE AYIN-DALETH @@ -12107,7 +12370,7 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 11182 ; Grapheme_Base # Mc SHARADA SIGN VISARGA 11183..111B2 ; Grapheme_Base # Lo [48] SHARADA LETTER A..SHARADA LETTER HA 111B3..111B5 ; Grapheme_Base # Mc [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II -111BF..111C0 ; Grapheme_Base # Mc [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA +111BF ; Grapheme_Base # Mc SHARADA VOWEL SIGN AU 111C1..111C4 ; Grapheme_Base # Lo [4] SHARADA SIGN AVAGRAHA..SHARADA OM 111C5..111C8 ; Grapheme_Base # Po [4] SHARADA DANDA..SHARADA SEPARATOR 111CD ; Grapheme_Base # Po SHARADA SUTRA MARK @@ -12122,7 +12385,6 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 11213..1122B ; Grapheme_Base # Lo [25] KHOJKI LETTER NYA..KHOJKI LETTER LLA 1122C..1122E ; Grapheme_Base # Mc [3] KHOJKI VOWEL SIGN AA..KHOJKI VOWEL SIGN II 11232..11233 ; Grapheme_Base # Mc [2] KHOJKI VOWEL SIGN O..KHOJKI VOWEL SIGN AU -11235 ; Grapheme_Base # Mc KHOJKI SIGN VIRAMA 11238..1123D ; Grapheme_Base # Po [6] KHOJKI DANDA..KHOJKI ABBREVIATION SIGN 1123F..11240 ; Grapheme_Base # Lo [2] KHOJKI LETTER QA..KHOJKI LETTER SHORT I 11280..11286 ; Grapheme_Base # Lo [7] MULTANI LETTER A..MULTANI LETTER GA @@ -12145,10 +12407,22 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 1133F ; Grapheme_Base # Mc GRANTHA VOWEL SIGN I 11341..11344 ; Grapheme_Base # Mc [4] GRANTHA VOWEL SIGN U..GRANTHA VOWEL SIGN VOCALIC RR 11347..11348 ; Grapheme_Base # Mc [2] GRANTHA VOWEL SIGN EE..GRANTHA VOWEL SIGN AI -1134B..1134D ; Grapheme_Base # Mc [3] GRANTHA VOWEL SIGN OO..GRANTHA SIGN VIRAMA +1134B..1134C ; Grapheme_Base # Mc [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU 11350 ; Grapheme_Base # Lo GRANTHA OM 1135D..11361 ; Grapheme_Base # Lo [5] GRANTHA SIGN PLUTA..GRANTHA LETTER VOCALIC LL 11362..11363 ; Grapheme_Base # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL +11380..11389 ; Grapheme_Base # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; Grapheme_Base # Lo TULU-TIGALARI LETTER EE +1138E ; Grapheme_Base # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; Grapheme_Base # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; Grapheme_Base # Lo TULU-TIGALARI SIGN AVAGRAHA +113B9..113BA ; Grapheme_Base # Mc [2] TULU-TIGALARI VOWEL SIGN I..TULU-TIGALARI VOWEL SIGN II +113CA ; Grapheme_Base # Mc TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; Grapheme_Base # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113D1 ; Grapheme_Base # Lo TULU-TIGALARI REPHA +113D3 ; Grapheme_Base # Lo TULU-TIGALARI SIGN PLUTA +113D4..113D5 ; Grapheme_Base # Po [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA +113D7..113D8 ; Grapheme_Base # Po [2] TULU-TIGALARI SIGN OM PUSHPIKA..TULU-TIGALARI SIGN SHRII PUSHPIKA 11400..11434 ; Grapheme_Base # Lo [53] NEWA LETTER A..NEWA LETTER HA 11435..11437 ; Grapheme_Base # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11440..11441 ; Grapheme_Base # Mc [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU @@ -12186,11 +12460,12 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 11680..116AA ; Grapheme_Base # Lo [43] TAKRI LETTER A..TAKRI LETTER RRA 116AC ; Grapheme_Base # Mc TAKRI SIGN VISARGA 116AE..116AF ; Grapheme_Base # Mc [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II -116B6 ; Grapheme_Base # Mc TAKRI SIGN VIRAMA 116B8 ; Grapheme_Base # Lo TAKRI LETTER ARCHAIC KHA 116B9 ; Grapheme_Base # Po TAKRI ABBREVIATION SIGN 116C0..116C9 ; Grapheme_Base # Nd [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE +116D0..116E3 ; Grapheme_Base # Nd [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE 11700..1171A ; Grapheme_Base # Lo [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA +1171E ; Grapheme_Base # Mc AHOM CONSONANT SIGN MEDIAL RA 11720..11721 ; Grapheme_Base # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11726 ; Grapheme_Base # Mc AHOM VOWEL SIGN E 11730..11739 ; Grapheme_Base # Nd [10] AHOM DIGIT ZERO..AHOM DIGIT NINE @@ -12212,7 +12487,6 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 11918..1192F ; Grapheme_Base # Lo [24] DIVES AKURU LETTER DDA..DIVES AKURU LETTER ZA 11931..11935 ; Grapheme_Base # Mc [5] DIVES AKURU VOWEL SIGN I..DIVES AKURU VOWEL SIGN E 11937..11938 ; Grapheme_Base # Mc [2] DIVES AKURU VOWEL SIGN AI..DIVES AKURU VOWEL SIGN O -1193D ; Grapheme_Base # Mc DIVES AKURU SIGN HALANTA 1193F ; Grapheme_Base # Lo DIVES AKURU PREFIXED NASAL SIGN 11940 ; Grapheme_Base # Mc DIVES AKURU MEDIAL YA 11941 ; Grapheme_Base # Lo DIVES AKURU INITIAL RA @@ -12241,6 +12515,9 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 11A9E..11AA2 ; Grapheme_Base # Po [5] SOYOMBO HEAD MARK WITH MOON AND SUN AND TRIPLE FLAME..SOYOMBO TERMINAL MARK-2 11AB0..11AF8 ; Grapheme_Base # Lo [73] CANADIAN SYLLABICS NATTILIK HI..PAU CIN HAU GLOTTAL STOP FINAL 11B00..11B09 ; Grapheme_Base # Po [10] DEVANAGARI HEAD MARK..DEVANAGARI SIGN MINDU +11BC0..11BE0 ; Grapheme_Base # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO +11BE1 ; Grapheme_Base # Po SUNUWAR SIGN PVO +11BF0..11BF9 ; Grapheme_Base # Nd [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE 11C00..11C08 ; Grapheme_Base # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; Grapheme_Base # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C2F ; Grapheme_Base # Mc BHAIKSUKI VOWEL SIGN AA @@ -12276,7 +12553,6 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 11F12..11F33 ; Grapheme_Base # Lo [34] KAWI LETTER KA..KAWI LETTER JNYA 11F34..11F35 ; Grapheme_Base # Mc [2] KAWI VOWEL SIGN AA..KAWI VOWEL SIGN ALTERNATE AA 11F3E..11F3F ; Grapheme_Base # Mc [2] KAWI VOWEL SIGN E..KAWI VOWEL SIGN AI -11F41 ; Grapheme_Base # Mc KAWI SIGN KILLER 11F43..11F4F ; Grapheme_Base # Po [13] KAWI DANDA..KAWI PUNCTUATION CLOSING SPIRAL 11F50..11F59 ; Grapheme_Base # Nd [10] KAWI DIGIT ZERO..KAWI DIGIT NINE 11FB0 ; Grapheme_Base # Lo LISU LETTER YHA @@ -12293,7 +12569,11 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 12FF1..12FF2 ; Grapheme_Base # Po [2] CYPRO-MINOAN SIGN CM301..CYPRO-MINOAN SIGN CM302 13000..1342F ; Grapheme_Base # Lo [1072] EGYPTIAN HIEROGLYPH A001..EGYPTIAN HIEROGLYPH V011D 13441..13446 ; Grapheme_Base # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN +13460..143FA ; Grapheme_Base # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; Grapheme_Base # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; Grapheme_Base # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA +1612A..1612C ; Grapheme_Base # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +16130..16139 ; Grapheme_Base # Nd [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE 16800..16A38 ; Grapheme_Base # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; Grapheme_Base # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A60..16A69 ; Grapheme_Base # Nd [10] MRO DIGIT ZERO..MRO DIGIT NINE @@ -12312,6 +12592,11 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 16B5B..16B61 ; Grapheme_Base # No [7] PAHAWH HMONG NUMBER TENS..PAHAWH HMONG NUMBER TRILLIONS 16B63..16B77 ; Grapheme_Base # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; Grapheme_Base # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; Grapheme_Base # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; Grapheme_Base # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; Grapheme_Base # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT +16D6D..16D6F ; Grapheme_Base # Po [3] KIRAT RAI SIGN YUPI..KIRAT RAI DOUBLE DANDA +16D70..16D79 ; Grapheme_Base # Nd [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE 16E40..16E7F ; Grapheme_Base # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16E80..16E96 ; Grapheme_Base # No [23] MEDEFAIDRIN DIGIT ZERO..MEDEFAIDRIN DIGIT THREE ALTERNATE FORM 16E97..16E9A ; Grapheme_Base # Po [4] MEDEFAIDRIN COMMA..MEDEFAIDRIN EXCLAMATION OH @@ -12322,10 +12607,9 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 16FE0..16FE1 ; Grapheme_Base # Lm [2] TANGUT ITERATION MARK..NUSHU ITERATION MARK 16FE2 ; Grapheme_Base # Po OLD CHINESE HOOK MARK 16FE3 ; Grapheme_Base # Lm OLD CHINESE ITERATION MARK -16FF0..16FF1 ; Grapheme_Base # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY 17000..187F7 ; Grapheme_Base # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18CD5 ; Grapheme_Base # Lo [1238] TANGUT COMPONENT-001..KHITAN SMALL SCRIPT CHARACTER-18CD5 -18D00..18D08 ; Grapheme_Base # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 +18CFF..18D08 ; Grapheme_Base # Lo [10] KHITAN SMALL SCRIPT CHARACTER-18CFF..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; Grapheme_Base # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; Grapheme_Base # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 1AFFD..1AFFE ; Grapheme_Base # Lm [2] KATAKANA LETTER MINNAN NASALIZED TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-8 @@ -12341,13 +12625,14 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 1BC90..1BC99 ; Grapheme_Base # Lo [10] DUPLOYAN AFFIX LOW ACUTE..DUPLOYAN AFFIX LOW ARROW 1BC9C ; Grapheme_Base # So DUPLOYAN SIGN O WITH CROSS 1BC9F ; Grapheme_Base # Po DUPLOYAN PUNCTUATION CHINOOK FULL STOP +1CC00..1CCEF ; Grapheme_Base # So [240] UP-POINTING GO-KART..OUTLINED LATIN CAPITAL LETTER Z +1CCF0..1CCF9 ; Grapheme_Base # Nd [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE +1CD00..1CEB3 ; Grapheme_Base # So [436] BLOCK OCTANT-3..BLACK RIGHT TRIANGLE CARET 1CF50..1CFC3 ; Grapheme_Base # So [116] ZNAMENNY NEUME KRYUK..ZNAMENNY NEUME PAUK 1D000..1D0F5 ; Grapheme_Base # So [246] BYZANTINE MUSICAL SYMBOL PSILI..BYZANTINE MUSICAL SYMBOL GORGON NEO KATO 1D100..1D126 ; Grapheme_Base # So [39] MUSICAL SYMBOL SINGLE BARLINE..MUSICAL SYMBOL DRUM CLEF-2 1D129..1D164 ; Grapheme_Base # So [60] MUSICAL SYMBOL MULTIPLE MEASURE REST..MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE -1D166 ; Grapheme_Base # Mc MUSICAL SYMBOL COMBINING SPRECHGESANG STEM 1D16A..1D16C ; Grapheme_Base # So [3] MUSICAL SYMBOL FINGERED TREMOLO-1..MUSICAL SYMBOL FINGERED TREMOLO-3 -1D16D ; Grapheme_Base # Mc MUSICAL SYMBOL COMBINING AUGMENTATION DOT 1D183..1D184 ; Grapheme_Base # So [2] MUSICAL SYMBOL ARPEGGIATO UP..MUSICAL SYMBOL ARPEGGIATO DOWN 1D18C..1D1A9 ; Grapheme_Base # So [30] MUSICAL SYMBOL RINFORZANDO..MUSICAL SYMBOL DEGREE SLASH 1D1AE..1D1EA ; Grapheme_Base # So [61] MUSICAL SYMBOL PEDAL MARK..MUSICAL SYMBOL KORON @@ -12421,6 +12706,10 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 1E4D0..1E4EA ; Grapheme_Base # Lo [27] NAG MUNDARI LETTER O..NAG MUNDARI LETTER ELL 1E4EB ; Grapheme_Base # Lm NAG MUNDARI SIGN OJOD 1E4F0..1E4F9 ; Grapheme_Base # Nd [10] NAG MUNDARI DIGIT ZERO..NAG MUNDARI DIGIT NINE +1E5D0..1E5ED ; Grapheme_Base # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5F0 ; Grapheme_Base # Lo OL ONAL SIGN HODDOND +1E5F1..1E5FA ; Grapheme_Base # Nd [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE +1E5FF ; Grapheme_Base # Po OL ONAL ABBREVIATION SIGN 1E7E0..1E7E6 ; Grapheme_Base # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; Grapheme_Base # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; Grapheme_Base # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -12500,18 +12789,18 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 1F850..1F859 ; Grapheme_Base # So [10] LEFTWARDS SANS-SERIF ARROW..UP DOWN SANS-SERIF ARROW 1F860..1F887 ; Grapheme_Base # So [40] WIDE-HEADED LEFTWARDS LIGHT BARB ARROW..WIDE-HEADED SOUTH WEST VERY HEAVY BARB ARROW 1F890..1F8AD ; Grapheme_Base # So [30] LEFTWARDS TRIANGLE ARROWHEAD..WHITE ARROW SHAFT WIDTH TWO THIRDS -1F8B0..1F8B1 ; Grapheme_Base # So [2] ARROW POINTING UPWARDS THEN NORTH WEST..ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST +1F8B0..1F8BB ; Grapheme_Base # So [12] ARROW POINTING UPWARDS THEN NORTH WEST..SOUTH WEST ARROW FROM BAR +1F8C0..1F8C1 ; Grapheme_Base # So [2] LEFTWARDS ARROW FROM DOWNWARDS ARROW..RIGHTWARDS ARROW FROM DOWNWARDS ARROW 1F900..1FA53 ; Grapheme_Base # So [340] CIRCLED CROSS FORMEE WITH FOUR DOTS..BLACK CHESS KNIGHT-BISHOP 1FA60..1FA6D ; Grapheme_Base # So [14] XIANGQI RED GENERAL..XIANGQI BLACK SOLDIER 1FA70..1FA7C ; Grapheme_Base # So [13] BALLET SHOES..CRUTCH -1FA80..1FA88 ; Grapheme_Base # So [9] YO-YO..FLUTE -1FA90..1FABD ; Grapheme_Base # So [46] RINGED PLANET..WING -1FABF..1FAC5 ; Grapheme_Base # So [7] GOOSE..PERSON WITH CROWN -1FACE..1FADB ; Grapheme_Base # So [14] MOOSE..PEA POD -1FAE0..1FAE8 ; Grapheme_Base # So [9] MELTING FACE..SHAKING FACE +1FA80..1FA89 ; Grapheme_Base # So [10] YO-YO..HARP +1FA8F..1FAC6 ; Grapheme_Base # So [56] SHOVEL..FINGERPRINT +1FACE..1FADC ; Grapheme_Base # So [15] MOOSE..ROOT VEGETABLE +1FADF..1FAE9 ; Grapheme_Base # So [11] SPLATTER..FACE WITH BAGS UNDER EYES 1FAF0..1FAF8 ; Grapheme_Base # So [9] HAND WITH INDEX FINGER AND THUMB CROSSED..RIGHTWARDS PUSHING HAND 1FB00..1FB92 ; Grapheme_Base # So [147] BLOCK SEXTANT-1..UPPER HALF INVERSE MEDIUM SHADE AND LOWER HALF BLOCK -1FB94..1FBCA ; Grapheme_Base # So [55] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..WHITE UP-POINTING CHEVRON +1FB94..1FBEF ; Grapheme_Base # So [92] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE 1FBF0..1FBF9 ; Grapheme_Base # Nd [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE 20000..2A6DF ; Grapheme_Base # Lo [42720] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6DF 2A700..2B739 ; Grapheme_Base # Lo [4154] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B739 @@ -12523,7 +12812,7 @@ FFFC..FFFD ; Grapheme_Base # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEME 30000..3134A ; Grapheme_Base # Lo [4939] CJK UNIFIED IDEOGRAPH-30000..CJK UNIFIED IDEOGRAPH-3134A 31350..323AF ; Grapheme_Base # Lo [4192] CJK UNIFIED IDEOGRAPH-31350..CJK UNIFIED IDEOGRAPH-323AF -# Total code points: 147613 +# Total code points: 152730 # ================================================ @@ -12573,6 +12862,9 @@ ABED ; Grapheme_Link # Mn MEETEI MAYEK APUN IYEK 11235 ; Grapheme_Link # Mc KHOJKI SIGN VIRAMA 112EA ; Grapheme_Link # Mn KHUDAWADI SIGN VIRAMA 1134D ; Grapheme_Link # Mc GRANTHA SIGN VIRAMA +113CE ; Grapheme_Link # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; Grapheme_Link # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; Grapheme_Link # Mn TULU-TIGALARI CONJOINER 11442 ; Grapheme_Link # Mn NEWA SIGN VIRAMA 114C2 ; Grapheme_Link # Mn TIRHUTA SIGN VIRAMA 115BF ; Grapheme_Link # Mn SIDDHAM SIGN VIRAMA @@ -12591,8 +12883,9 @@ ABED ; Grapheme_Link # Mn MEETEI MAYEK APUN IYEK 11D97 ; Grapheme_Link # Mn GUNJALA GONDI VIRAMA 11F41 ; Grapheme_Link # Mc KAWI SIGN KILLER 11F42 ; Grapheme_Link # Mn KAWI CONJOINER +1612F ; Grapheme_Link # Mn GURUNG KHEMA SIGN THOLHOMA -# Total code points: 65 +# Total code points: 69 # ================================================ @@ -12656,9 +12949,9 @@ ABED ; Grapheme_Link # Mn MEETEI MAYEK APUN IYEK # Indic_Conjunct_Break=Extend -0300..034E ; InCB; Extend # Mn [79] COMBINING GRAVE ACCENT..COMBINING UPWARDS ARROW BELOW -0350..036F ; InCB; Extend # Mn [32] COMBINING RIGHT ARROWHEAD ABOVE..COMBINING LATIN SMALL LETTER X +0300..036F ; InCB; Extend # Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X 0483..0487 ; InCB; Extend # Mn [5] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE +0488..0489 ; InCB; Extend # Me [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN 0591..05BD ; InCB; Extend # Mn [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG 05BF ; InCB; Extend # Mn HEBREW POINT RAFE 05C1..05C2 ; InCB; Extend # Mn [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT @@ -12673,6 +12966,7 @@ ABED ; Grapheme_Link # Mn MEETEI MAYEK APUN IYEK 06EA..06ED ; InCB; Extend # Mn [4] ARABIC EMPTY CENTRE LOW STOP..ARABIC SMALL LOW MEEM 0711 ; InCB; Extend # Mn SYRIAC LETTER SUPERSCRIPT ALAPH 0730..074A ; InCB; Extend # Mn [27] SYRIAC PTHAHA ABOVE..SYRIAC BARREKH +07A6..07B0 ; InCB; Extend # Mn [11] THAANA ABAFILI..THAANA SUKUN 07EB..07F3 ; InCB; Extend # Mn [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE 07FD ; InCB; Extend # Mn NKO DANTAYALAN 0816..0819 ; InCB; Extend # Mn [4] SAMARITAN MARK IN..SAMARITAN MARK DAGESH @@ -12680,55 +12974,160 @@ ABED ; Grapheme_Link # Mn MEETEI MAYEK APUN IYEK 0825..0827 ; InCB; Extend # Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U 0829..082D ; InCB; Extend # Mn [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA 0859..085B ; InCB; Extend # Mn [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK -0898..089F ; InCB; Extend # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; InCB; Extend # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08CA..08E1 ; InCB; Extend # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA -08E3..08FF ; InCB; Extend # Mn [29] ARABIC TURNED DAMMA BELOW..ARABIC MARK SIDEWAYS NOON GHUNNA +08E3..0902 ; InCB; Extend # Mn [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA +093A ; InCB; Extend # Mn DEVANAGARI VOWEL SIGN OE 093C ; InCB; Extend # Mn DEVANAGARI SIGN NUKTA -0951..0954 ; InCB; Extend # Mn [4] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI ACUTE ACCENT +0941..0948 ; InCB; Extend # Mn [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI +0951..0957 ; InCB; Extend # Mn [7] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI VOWEL SIGN UUE +0962..0963 ; InCB; Extend # Mn [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL +0981 ; InCB; Extend # Mn BENGALI SIGN CANDRABINDU 09BC ; InCB; Extend # Mn BENGALI SIGN NUKTA +09BE ; InCB; Extend # Mc BENGALI VOWEL SIGN AA +09C1..09C4 ; InCB; Extend # Mn [4] BENGALI VOWEL SIGN U..BENGALI VOWEL SIGN VOCALIC RR +09D7 ; InCB; Extend # Mc BENGALI AU LENGTH MARK +09E2..09E3 ; InCB; Extend # Mn [2] BENGALI VOWEL SIGN VOCALIC L..BENGALI VOWEL SIGN VOCALIC LL 09FE ; InCB; Extend # Mn BENGALI SANDHI MARK +0A01..0A02 ; InCB; Extend # Mn [2] GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN BINDI 0A3C ; InCB; Extend # Mn GURMUKHI SIGN NUKTA +0A41..0A42 ; InCB; Extend # Mn [2] GURMUKHI VOWEL SIGN U..GURMUKHI VOWEL SIGN UU +0A47..0A48 ; InCB; Extend # Mn [2] GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI +0A4B..0A4D ; InCB; Extend # Mn [3] GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA +0A51 ; InCB; Extend # Mn GURMUKHI SIGN UDAAT +0A70..0A71 ; InCB; Extend # Mn [2] GURMUKHI TIPPI..GURMUKHI ADDAK +0A75 ; InCB; Extend # Mn GURMUKHI SIGN YAKASH +0A81..0A82 ; InCB; Extend # Mn [2] GUJARATI SIGN CANDRABINDU..GUJARATI SIGN ANUSVARA 0ABC ; InCB; Extend # Mn GUJARATI SIGN NUKTA +0AC1..0AC5 ; InCB; Extend # Mn [5] GUJARATI VOWEL SIGN U..GUJARATI VOWEL SIGN CANDRA E +0AC7..0AC8 ; InCB; Extend # Mn [2] GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN AI +0AE2..0AE3 ; InCB; Extend # Mn [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL +0AFA..0AFF ; InCB; Extend # Mn [6] GUJARATI SIGN SUKUN..GUJARATI SIGN TWO-CIRCLE NUKTA ABOVE +0B01 ; InCB; Extend # Mn ORIYA SIGN CANDRABINDU 0B3C ; InCB; Extend # Mn ORIYA SIGN NUKTA +0B3E ; InCB; Extend # Mc ORIYA VOWEL SIGN AA +0B3F ; InCB; Extend # Mn ORIYA VOWEL SIGN I +0B41..0B44 ; InCB; Extend # Mn [4] ORIYA VOWEL SIGN U..ORIYA VOWEL SIGN VOCALIC RR +0B55..0B56 ; InCB; Extend # Mn [2] ORIYA SIGN OVERLINE..ORIYA AI LENGTH MARK +0B57 ; InCB; Extend # Mc ORIYA AU LENGTH MARK +0B62..0B63 ; InCB; Extend # Mn [2] ORIYA VOWEL SIGN VOCALIC L..ORIYA VOWEL SIGN VOCALIC LL +0B82 ; InCB; Extend # Mn TAMIL SIGN ANUSVARA +0BBE ; InCB; Extend # Mc TAMIL VOWEL SIGN AA +0BC0 ; InCB; Extend # Mn TAMIL VOWEL SIGN II +0BCD ; InCB; Extend # Mn TAMIL SIGN VIRAMA +0BD7 ; InCB; Extend # Mc TAMIL AU LENGTH MARK +0C00 ; InCB; Extend # Mn TELUGU SIGN COMBINING CANDRABINDU ABOVE +0C04 ; InCB; Extend # Mn TELUGU SIGN COMBINING ANUSVARA ABOVE 0C3C ; InCB; Extend # Mn TELUGU SIGN NUKTA +0C3E..0C40 ; InCB; Extend # Mn [3] TELUGU VOWEL SIGN AA..TELUGU VOWEL SIGN II +0C46..0C48 ; InCB; Extend # Mn [3] TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI +0C4A..0C4C ; InCB; Extend # Mn [3] TELUGU VOWEL SIGN O..TELUGU VOWEL SIGN AU 0C55..0C56 ; InCB; Extend # Mn [2] TELUGU LENGTH MARK..TELUGU AI LENGTH MARK +0C62..0C63 ; InCB; Extend # Mn [2] TELUGU VOWEL SIGN VOCALIC L..TELUGU VOWEL SIGN VOCALIC LL +0C81 ; InCB; Extend # Mn KANNADA SIGN CANDRABINDU 0CBC ; InCB; Extend # Mn KANNADA SIGN NUKTA +0CBF ; InCB; Extend # Mn KANNADA VOWEL SIGN I +0CC0 ; InCB; Extend # Mc KANNADA VOWEL SIGN II +0CC2 ; InCB; Extend # Mc KANNADA VOWEL SIGN UU +0CC6 ; InCB; Extend # Mn KANNADA VOWEL SIGN E +0CC7..0CC8 ; InCB; Extend # Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI +0CCA..0CCB ; InCB; Extend # Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO +0CCC..0CCD ; InCB; Extend # Mn [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA +0CD5..0CD6 ; InCB; Extend # Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK +0CE2..0CE3 ; InCB; Extend # Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL +0D00..0D01 ; InCB; Extend # Mn [2] MALAYALAM SIGN COMBINING ANUSVARA ABOVE..MALAYALAM SIGN CANDRABINDU 0D3B..0D3C ; InCB; Extend # Mn [2] MALAYALAM SIGN VERTICAL BAR VIRAMA..MALAYALAM SIGN CIRCULAR VIRAMA -0E38..0E3A ; InCB; Extend # Mn [3] THAI CHARACTER SARA U..THAI CHARACTER PHINTHU -0E48..0E4B ; InCB; Extend # Mn [4] THAI CHARACTER MAI EK..THAI CHARACTER MAI CHATTAWA -0EB8..0EBA ; InCB; Extend # Mn [3] LAO VOWEL SIGN U..LAO SIGN PALI VIRAMA -0EC8..0ECB ; InCB; Extend # Mn [4] LAO TONE MAI EK..LAO TONE MAI CATAWA +0D3E ; InCB; Extend # Mc MALAYALAM VOWEL SIGN AA +0D41..0D44 ; InCB; Extend # Mn [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR +0D57 ; InCB; Extend # Mc MALAYALAM AU LENGTH MARK +0D62..0D63 ; InCB; Extend # Mn [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL +0D81 ; InCB; Extend # Mn SINHALA SIGN CANDRABINDU +0DCA ; InCB; Extend # Mn SINHALA SIGN AL-LAKUNA +0DCF ; InCB; Extend # Mc SINHALA VOWEL SIGN AELA-PILLA +0DD2..0DD4 ; InCB; Extend # Mn [3] SINHALA VOWEL SIGN KETTI IS-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA +0DD6 ; InCB; Extend # Mn SINHALA VOWEL SIGN DIGA PAA-PILLA +0DDF ; InCB; Extend # Mc SINHALA VOWEL SIGN GAYANUKITTA +0E31 ; InCB; Extend # Mn THAI CHARACTER MAI HAN-AKAT +0E34..0E3A ; InCB; Extend # Mn [7] THAI CHARACTER SARA I..THAI CHARACTER PHINTHU +0E47..0E4E ; InCB; Extend # Mn [8] THAI CHARACTER MAITAIKHU..THAI CHARACTER YAMAKKAN +0EB1 ; InCB; Extend # Mn LAO VOWEL SIGN MAI KAN +0EB4..0EBC ; InCB; Extend # Mn [9] LAO VOWEL SIGN I..LAO SEMIVOWEL SIGN LO +0EC8..0ECE ; InCB; Extend # Mn [7] LAO TONE MAI EK..LAO YAMAKKAN 0F18..0F19 ; InCB; Extend # Mn [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS 0F35 ; InCB; Extend # Mn TIBETAN MARK NGAS BZUNG NYI ZLA 0F37 ; InCB; Extend # Mn TIBETAN MARK NGAS BZUNG SGOR RTAGS 0F39 ; InCB; Extend # Mn TIBETAN MARK TSA -PHRU -0F71..0F72 ; InCB; Extend # Mn [2] TIBETAN VOWEL SIGN AA..TIBETAN VOWEL SIGN I -0F74 ; InCB; Extend # Mn TIBETAN VOWEL SIGN U -0F7A..0F7D ; InCB; Extend # Mn [4] TIBETAN VOWEL SIGN E..TIBETAN VOWEL SIGN OO -0F80 ; InCB; Extend # Mn TIBETAN VOWEL SIGN REVERSED I -0F82..0F84 ; InCB; Extend # Mn [3] TIBETAN SIGN NYI ZLA NAA DA..TIBETAN MARK HALANTA +0F71..0F7E ; InCB; Extend # Mn [14] TIBETAN VOWEL SIGN AA..TIBETAN SIGN RJES SU NGA RO +0F80..0F84 ; InCB; Extend # Mn [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA 0F86..0F87 ; InCB; Extend # Mn [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS +0F8D..0F97 ; InCB; Extend # Mn [11] TIBETAN SUBJOINED SIGN LCE TSA CAN..TIBETAN SUBJOINED LETTER JA +0F99..0FBC ; InCB; Extend # Mn [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA 0FC6 ; InCB; Extend # Mn TIBETAN SYMBOL PADMA GDAN -1037 ; InCB; Extend # Mn MYANMAR SIGN DOT BELOW +102D..1030 ; InCB; Extend # Mn [4] MYANMAR VOWEL SIGN I..MYANMAR VOWEL SIGN UU +1032..1037 ; InCB; Extend # Mn [6] MYANMAR VOWEL SIGN AI..MYANMAR SIGN DOT BELOW 1039..103A ; InCB; Extend # Mn [2] MYANMAR SIGN VIRAMA..MYANMAR SIGN ASAT +103D..103E ; InCB; Extend # Mn [2] MYANMAR CONSONANT SIGN MEDIAL WA..MYANMAR CONSONANT SIGN MEDIAL HA +1058..1059 ; InCB; Extend # Mn [2] MYANMAR VOWEL SIGN VOCALIC L..MYANMAR VOWEL SIGN VOCALIC LL +105E..1060 ; InCB; Extend # Mn [3] MYANMAR CONSONANT SIGN MON MEDIAL NA..MYANMAR CONSONANT SIGN MON MEDIAL LA +1071..1074 ; InCB; Extend # Mn [4] MYANMAR VOWEL SIGN GEBA KAREN I..MYANMAR VOWEL SIGN KAYAH EE +1082 ; InCB; Extend # Mn MYANMAR CONSONANT SIGN SHAN MEDIAL WA +1085..1086 ; InCB; Extend # Mn [2] MYANMAR VOWEL SIGN SHAN E ABOVE..MYANMAR VOWEL SIGN SHAN FINAL Y 108D ; InCB; Extend # Mn MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE +109D ; InCB; Extend # Mn MYANMAR VOWEL SIGN AITON AI 135D..135F ; InCB; Extend # Mn [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK -1714 ; InCB; Extend # Mn TAGALOG SIGN VIRAMA -17D2 ; InCB; Extend # Mn KHMER SIGN COENG +1712..1714 ; InCB; Extend # Mn [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA +1715 ; InCB; Extend # Mc TAGALOG SIGN PAMUDPOD +1732..1733 ; InCB; Extend # Mn [2] HANUNOO VOWEL SIGN I..HANUNOO VOWEL SIGN U +1734 ; InCB; Extend # Mc HANUNOO SIGN PAMUDPOD +1752..1753 ; InCB; Extend # Mn [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U +1772..1773 ; InCB; Extend # Mn [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U +17B4..17B5 ; InCB; Extend # Mn [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA +17B7..17BD ; InCB; Extend # Mn [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA +17C6 ; InCB; Extend # Mn KHMER SIGN NIKAHIT +17C9..17D3 ; InCB; Extend # Mn [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT 17DD ; InCB; Extend # Mn KHMER SIGN ATTHACAN +180B..180D ; InCB; Extend # Mn [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE +180F ; InCB; Extend # Mn MONGOLIAN FREE VARIATION SELECTOR FOUR +1885..1886 ; InCB; Extend # Mn [2] MONGOLIAN LETTER ALI GALI BALUDA..MONGOLIAN LETTER ALI GALI THREE BALUDA 18A9 ; InCB; Extend # Mn MONGOLIAN LETTER ALI GALI DAGALGA +1920..1922 ; InCB; Extend # Mn [3] LIMBU VOWEL SIGN A..LIMBU VOWEL SIGN U +1927..1928 ; InCB; Extend # Mn [2] LIMBU VOWEL SIGN E..LIMBU VOWEL SIGN O +1932 ; InCB; Extend # Mn LIMBU SMALL LETTER ANUSVARA 1939..193B ; InCB; Extend # Mn [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I 1A17..1A18 ; InCB; Extend # Mn [2] BUGINESE VOWEL SIGN I..BUGINESE VOWEL SIGN U +1A1B ; InCB; Extend # Mn BUGINESE VOWEL SIGN AE +1A56 ; InCB; Extend # Mn TAI THAM CONSONANT SIGN MEDIAL LA +1A58..1A5E ; InCB; Extend # Mn [7] TAI THAM SIGN MAI KANG LAI..TAI THAM CONSONANT SIGN SA 1A60 ; InCB; Extend # Mn TAI THAM SIGN SAKOT -1A75..1A7C ; InCB; Extend # Mn [8] TAI THAM SIGN TONE-1..TAI THAM SIGN KHUEN-LUE KARAN +1A62 ; InCB; Extend # Mn TAI THAM VOWEL SIGN MAI SAT +1A65..1A6C ; InCB; Extend # Mn [8] TAI THAM VOWEL SIGN I..TAI THAM VOWEL SIGN OA BELOW +1A73..1A7C ; InCB; Extend # Mn [10] TAI THAM VOWEL SIGN OA ABOVE..TAI THAM SIGN KHUEN-LUE KARAN 1A7F ; InCB; Extend # Mn TAI THAM COMBINING CRYPTOGRAMMIC DOT 1AB0..1ABD ; InCB; Extend # Mn [14] COMBINING DOUBLED CIRCUMFLEX ACCENT..COMBINING PARENTHESES BELOW +1ABE ; InCB; Extend # Me COMBINING PARENTHESES OVERLAY 1ABF..1ACE ; InCB; Extend # Mn [16] COMBINING LATIN SMALL LETTER W BELOW..COMBINING LATIN SMALL LETTER INSULAR T +1B00..1B03 ; InCB; Extend # Mn [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG 1B34 ; InCB; Extend # Mn BALINESE SIGN REREKAN +1B35 ; InCB; Extend # Mc BALINESE VOWEL SIGN TEDUNG +1B36..1B3A ; InCB; Extend # Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA +1B3B ; InCB; Extend # Mc BALINESE VOWEL SIGN RA REPA TEDUNG +1B3C ; InCB; Extend # Mn BALINESE VOWEL SIGN LA LENGA +1B3D ; InCB; Extend # Mc BALINESE VOWEL SIGN LA LENGA TEDUNG +1B42 ; InCB; Extend # Mn BALINESE VOWEL SIGN PEPET +1B43..1B44 ; InCB; Extend # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG 1B6B..1B73 ; InCB; Extend # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG -1BAB ; InCB; Extend # Mn SUNDANESE SIGN VIRAMA +1B80..1B81 ; InCB; Extend # Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR +1BA2..1BA5 ; InCB; Extend # Mn [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU +1BA8..1BA9 ; InCB; Extend # Mn [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG +1BAA ; InCB; Extend # Mc SUNDANESE SIGN PAMAAEH +1BAB..1BAD ; InCB; Extend # Mn [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA 1BE6 ; InCB; Extend # Mn BATAK SIGN TOMPI -1C37 ; InCB; Extend # Mn LEPCHA SIGN NUKTA +1BE8..1BE9 ; InCB; Extend # Mn [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE +1BED ; InCB; Extend # Mn BATAK VOWEL SIGN KARO O +1BEF..1BF1 ; InCB; Extend # Mn [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H +1BF2..1BF3 ; InCB; Extend # Mc [2] BATAK PANGOLAT..BATAK PANONGONAN +1C2C..1C33 ; InCB; Extend # Mn [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T +1C36..1C37 ; InCB; Extend # Mn [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA 1CD0..1CD2 ; InCB; Extend # Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA 1CD4..1CE0 ; InCB; Extend # Mn [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA 1CE2..1CE8 ; InCB; Extend # Mn [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL @@ -12738,7 +13137,9 @@ ABED ; Grapheme_Link # Mn MEETEI MAYEK APUN IYEK 1DC0..1DFF ; InCB; Extend # Mn [64] COMBINING DOTTED GRAVE ACCENT..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW 200D ; InCB; Extend # Cf ZERO WIDTH JOINER 20D0..20DC ; InCB; Extend # Mn [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE +20DD..20E0 ; InCB; Extend # Me [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH 20E1 ; InCB; Extend # Mn COMBINING LEFT RIGHT ARROW ABOVE +20E2..20E4 ; InCB; Extend # Me [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE 20E5..20F0 ; InCB; Extend # Mn [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE 2CEF..2CF1 ; InCB; Extend # Mn [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS 2D7F ; InCB; Extend # Mn TIFINAGH CONSONANT JOINER @@ -12747,73 +13148,198 @@ ABED ; Grapheme_Link # Mn MEETEI MAYEK APUN IYEK 302E..302F ; InCB; Extend # Mc [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK 3099..309A ; InCB; Extend # Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK A66F ; InCB; Extend # Mn COMBINING CYRILLIC VZMET +A670..A672 ; InCB; Extend # Me [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN A674..A67D ; InCB; Extend # Mn [10] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK A69E..A69F ; InCB; Extend # Mn [2] COMBINING CYRILLIC LETTER EF..COMBINING CYRILLIC LETTER IOTIFIED E A6F0..A6F1 ; InCB; Extend # Mn [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS +A802 ; InCB; Extend # Mn SYLOTI NAGRI SIGN DVISVARA +A806 ; InCB; Extend # Mn SYLOTI NAGRI SIGN HASANTA +A80B ; InCB; Extend # Mn SYLOTI NAGRI SIGN ANUSVARA +A825..A826 ; InCB; Extend # Mn [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E A82C ; InCB; Extend # Mn SYLOTI NAGRI SIGN ALTERNATE HASANTA +A8C4..A8C5 ; InCB; Extend # Mn [2] SAURASHTRA SIGN VIRAMA..SAURASHTRA SIGN CANDRABINDU A8E0..A8F1 ; InCB; Extend # Mn [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA -A92B..A92D ; InCB; Extend # Mn [3] KAYAH LI TONE PLOPHU..KAYAH LI TONE CALYA PLOPHU +A8FF ; InCB; Extend # Mn DEVANAGARI VOWEL SIGN AY +A926..A92D ; InCB; Extend # Mn [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU +A947..A951 ; InCB; Extend # Mn [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R +A953 ; InCB; Extend # Mc REJANG VIRAMA +A980..A982 ; InCB; Extend # Mn [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR A9B3 ; InCB; Extend # Mn JAVANESE SIGN CECAK TELU +A9B6..A9B9 ; InCB; Extend # Mn [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT +A9BC..A9BD ; InCB; Extend # Mn [2] JAVANESE VOWEL SIGN PEPET..JAVANESE CONSONANT SIGN KERET +A9C0 ; InCB; Extend # Mc JAVANESE PANGKON +A9E5 ; InCB; Extend # Mn MYANMAR SIGN SHAN SAW +AA29..AA2E ; InCB; Extend # Mn [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE +AA31..AA32 ; InCB; Extend # Mn [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE +AA35..AA36 ; InCB; Extend # Mn [2] CHAM CONSONANT SIGN LA..CHAM CONSONANT SIGN WA +AA43 ; InCB; Extend # Mn CHAM CONSONANT SIGN FINAL NG +AA4C ; InCB; Extend # Mn CHAM CONSONANT SIGN FINAL M +AA7C ; InCB; Extend # Mn MYANMAR SIGN TAI LAING TONE-2 AAB0 ; InCB; Extend # Mn TAI VIET MAI KANG AAB2..AAB4 ; InCB; Extend # Mn [3] TAI VIET VOWEL I..TAI VIET VOWEL U AAB7..AAB8 ; InCB; Extend # Mn [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA AABE..AABF ; InCB; Extend # Mn [2] TAI VIET VOWEL AM..TAI VIET TONE MAI EK AAC1 ; InCB; Extend # Mn TAI VIET TONE MAI THO +AAEC..AAED ; InCB; Extend # Mn [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI AAF6 ; InCB; Extend # Mn MEETEI MAYEK VIRAMA +ABE5 ; InCB; Extend # Mn MEETEI MAYEK VOWEL SIGN ANAP +ABE8 ; InCB; Extend # Mn MEETEI MAYEK VOWEL SIGN UNAP ABED ; InCB; Extend # Mn MEETEI MAYEK APUN IYEK FB1E ; InCB; Extend # Mn HEBREW POINT JUDEO-SPANISH VARIKA +FE00..FE0F ; InCB; Extend # Mn [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16 FE20..FE2F ; InCB; Extend # Mn [16] COMBINING LIGATURE LEFT HALF..COMBINING CYRILLIC TITLO RIGHT HALF +FF9E..FF9F ; InCB; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK 101FD ; InCB; Extend # Mn PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE 102E0 ; InCB; Extend # Mn COPTIC EPACT THOUSANDS MARK 10376..1037A ; InCB; Extend # Mn [5] COMBINING OLD PERMIC LETTER AN..COMBINING OLD PERMIC LETTER SII -10A0D ; InCB; Extend # Mn KHAROSHTHI SIGN DOUBLE RING BELOW -10A0F ; InCB; Extend # Mn KHAROSHTHI SIGN VISARGA +10A01..10A03 ; InCB; Extend # Mn [3] KHAROSHTHI VOWEL SIGN I..KHAROSHTHI VOWEL SIGN VOCALIC R +10A05..10A06 ; InCB; Extend # Mn [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O +10A0C..10A0F ; InCB; Extend # Mn [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA 10A38..10A3A ; InCB; Extend # Mn [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW 10A3F ; InCB; Extend # Mn KHAROSHTHI VIRAMA 10AE5..10AE6 ; InCB; Extend # Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW 10D24..10D27 ; InCB; Extend # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI +10D69..10D6D ; InCB; Extend # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK 10EAB..10EAC ; InCB; Extend # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK -10EFD..10EFF ; InCB; Extend # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EFC..10EFF ; InCB; Extend # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F46..10F50 ; InCB; Extend # Mn [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW 10F82..10F85 ; InCB; Extend # Mn [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW +11001 ; InCB; Extend # Mn BRAHMI SIGN ANUSVARA +11038..11046 ; InCB; Extend # Mn [15] BRAHMI VOWEL SIGN AA..BRAHMI VIRAMA 11070 ; InCB; Extend # Mn BRAHMI SIGN OLD TAMIL VIRAMA -1107F ; InCB; Extend # Mn BRAHMI NUMBER JOINER -110BA ; InCB; Extend # Mn KAITHI SIGN NUKTA +11073..11074 ; InCB; Extend # Mn [2] BRAHMI VOWEL SIGN OLD TAMIL SHORT E..BRAHMI VOWEL SIGN OLD TAMIL SHORT O +1107F..11081 ; InCB; Extend # Mn [3] BRAHMI NUMBER JOINER..KAITHI SIGN ANUSVARA +110B3..110B6 ; InCB; Extend # Mn [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI +110B9..110BA ; InCB; Extend # Mn [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA +110C2 ; InCB; Extend # Mn KAITHI VOWEL SIGN VOCALIC R 11100..11102 ; InCB; Extend # Mn [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA -11133..11134 ; InCB; Extend # Mn [2] CHAKMA VIRAMA..CHAKMA MAAYYAA +11127..1112B ; InCB; Extend # Mn [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU +1112D..11134 ; InCB; Extend # Mn [8] CHAKMA VOWEL SIGN AI..CHAKMA MAAYYAA 11173 ; InCB; Extend # Mn MAHAJANI SIGN NUKTA -111CA ; InCB; Extend # Mn SHARADA SIGN NUKTA -11236 ; InCB; Extend # Mn KHOJKI SIGN NUKTA -112E9..112EA ; InCB; Extend # Mn [2] KHUDAWADI SIGN NUKTA..KHUDAWADI SIGN VIRAMA +11180..11181 ; InCB; Extend # Mn [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA +111B6..111BE ; InCB; Extend # Mn [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O +111C0 ; InCB; Extend # Mc SHARADA SIGN VIRAMA +111C9..111CC ; InCB; Extend # Mn [4] SHARADA SANDHI MARK..SHARADA EXTRA SHORT VOWEL MARK +111CF ; InCB; Extend # Mn SHARADA SIGN INVERTED CANDRABINDU +1122F..11231 ; InCB; Extend # Mn [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI +11234 ; InCB; Extend # Mn KHOJKI SIGN ANUSVARA +11235 ; InCB; Extend # Mc KHOJKI SIGN VIRAMA +11236..11237 ; InCB; Extend # Mn [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA +1123E ; InCB; Extend # Mn KHOJKI SIGN SUKUN +11241 ; InCB; Extend # Mn KHOJKI VOWEL SIGN VOCALIC R +112DF ; InCB; Extend # Mn KHUDAWADI SIGN ANUSVARA +112E3..112EA ; InCB; Extend # Mn [8] KHUDAWADI VOWEL SIGN U..KHUDAWADI SIGN VIRAMA +11300..11301 ; InCB; Extend # Mn [2] GRANTHA SIGN COMBINING ANUSVARA ABOVE..GRANTHA SIGN CANDRABINDU 1133B..1133C ; InCB; Extend # Mn [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA +1133E ; InCB; Extend # Mc GRANTHA VOWEL SIGN AA +11340 ; InCB; Extend # Mn GRANTHA VOWEL SIGN II +1134D ; InCB; Extend # Mc GRANTHA SIGN VIRAMA +11357 ; InCB; Extend # Mc GRANTHA AU LENGTH MARK 11366..1136C ; InCB; Extend # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; InCB; Extend # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +113B8 ; InCB; Extend # Mc TULU-TIGALARI VOWEL SIGN AA +113BB..113C0 ; InCB; Extend # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; InCB; Extend # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; InCB; Extend # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113C9 ; InCB; Extend # Mc [3] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI AU LENGTH MARK +113CE ; InCB; Extend # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; InCB; Extend # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; InCB; Extend # Mn TULU-TIGALARI CONJOINER +113D2 ; InCB; Extend # Mn TULU-TIGALARI GEMINATION MARK +113E1..113E2 ; InCB; Extend # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA +11438..1143F ; InCB; Extend # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI +11442..11444 ; InCB; Extend # Mn [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA 11446 ; InCB; Extend # Mn NEWA SIGN NUKTA 1145E ; InCB; Extend # Mn NEWA SANDHI MARK -114C3 ; InCB; Extend # Mn TIRHUTA SIGN NUKTA -115C0 ; InCB; Extend # Mn SIDDHAM SIGN NUKTA +114B0 ; InCB; Extend # Mc TIRHUTA VOWEL SIGN AA +114B3..114B8 ; InCB; Extend # Mn [6] TIRHUTA VOWEL SIGN U..TIRHUTA VOWEL SIGN VOCALIC LL +114BA ; InCB; Extend # Mn TIRHUTA VOWEL SIGN SHORT E +114BD ; InCB; Extend # Mc TIRHUTA VOWEL SIGN SHORT O +114BF..114C0 ; InCB; Extend # Mn [2] TIRHUTA SIGN CANDRABINDU..TIRHUTA SIGN ANUSVARA +114C2..114C3 ; InCB; Extend # Mn [2] TIRHUTA SIGN VIRAMA..TIRHUTA SIGN NUKTA +115AF ; InCB; Extend # Mc SIDDHAM VOWEL SIGN AA +115B2..115B5 ; InCB; Extend # Mn [4] SIDDHAM VOWEL SIGN U..SIDDHAM VOWEL SIGN VOCALIC RR +115BC..115BD ; InCB; Extend # Mn [2] SIDDHAM SIGN CANDRABINDU..SIDDHAM SIGN ANUSVARA +115BF..115C0 ; InCB; Extend # Mn [2] SIDDHAM SIGN VIRAMA..SIDDHAM SIGN NUKTA +115DC..115DD ; InCB; Extend # Mn [2] SIDDHAM VOWEL SIGN ALTERNATE U..SIDDHAM VOWEL SIGN ALTERNATE UU +11633..1163A ; InCB; Extend # Mn [8] MODI VOWEL SIGN U..MODI VOWEL SIGN AI +1163D ; InCB; Extend # Mn MODI SIGN ANUSVARA +1163F..11640 ; InCB; Extend # Mn [2] MODI SIGN VIRAMA..MODI SIGN ARDHACANDRA +116AB ; InCB; Extend # Mn TAKRI SIGN ANUSVARA +116AD ; InCB; Extend # Mn TAKRI VOWEL SIGN AA +116B0..116B5 ; InCB; Extend # Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU +116B6 ; InCB; Extend # Mc TAKRI SIGN VIRAMA 116B7 ; InCB; Extend # Mn TAKRI SIGN NUKTA -1172B ; InCB; Extend # Mn AHOM SIGN KILLER -1183A ; InCB; Extend # Mn DOGRA SIGN NUKTA +1171D ; InCB; Extend # Mn AHOM CONSONANT SIGN MEDIAL LA +1171F ; InCB; Extend # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA +11722..11725 ; InCB; Extend # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU +11727..1172B ; InCB; Extend # Mn [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER +1182F..11837 ; InCB; Extend # Mn [9] DOGRA VOWEL SIGN U..DOGRA SIGN ANUSVARA +11839..1183A ; InCB; Extend # Mn [2] DOGRA SIGN VIRAMA..DOGRA SIGN NUKTA +11930 ; InCB; Extend # Mc DIVES AKURU VOWEL SIGN AA +1193B..1193C ; InCB; Extend # Mn [2] DIVES AKURU SIGN ANUSVARA..DIVES AKURU SIGN CANDRABINDU +1193D ; InCB; Extend # Mc DIVES AKURU SIGN HALANTA 1193E ; InCB; Extend # Mn DIVES AKURU VIRAMA 11943 ; InCB; Extend # Mn DIVES AKURU SIGN NUKTA -11A34 ; InCB; Extend # Mn ZANABAZAR SQUARE SIGN VIRAMA +119D4..119D7 ; InCB; Extend # Mn [4] NANDINAGARI VOWEL SIGN U..NANDINAGARI VOWEL SIGN VOCALIC RR +119DA..119DB ; InCB; Extend # Mn [2] NANDINAGARI VOWEL SIGN E..NANDINAGARI VOWEL SIGN AI +119E0 ; InCB; Extend # Mn NANDINAGARI SIGN VIRAMA +11A01..11A0A ; InCB; Extend # Mn [10] ZANABAZAR SQUARE VOWEL SIGN I..ZANABAZAR SQUARE VOWEL LENGTH MARK +11A33..11A38 ; InCB; Extend # Mn [6] ZANABAZAR SQUARE FINAL CONSONANT MARK..ZANABAZAR SQUARE SIGN ANUSVARA +11A3B..11A3E ; InCB; Extend # Mn [4] ZANABAZAR SQUARE CLUSTER-FINAL LETTER YA..ZANABAZAR SQUARE CLUSTER-FINAL LETTER VA 11A47 ; InCB; Extend # Mn ZANABAZAR SQUARE SUBJOINER -11A99 ; InCB; Extend # Mn SOYOMBO SUBJOINER -11D42 ; InCB; Extend # Mn MASARAM GONDI SIGN NUKTA -11D44..11D45 ; InCB; Extend # Mn [2] MASARAM GONDI SIGN HALANTA..MASARAM GONDI VIRAMA +11A51..11A56 ; InCB; Extend # Mn [6] SOYOMBO VOWEL SIGN I..SOYOMBO VOWEL SIGN OE +11A59..11A5B ; InCB; Extend # Mn [3] SOYOMBO VOWEL SIGN VOCALIC R..SOYOMBO VOWEL LENGTH MARK +11A8A..11A96 ; InCB; Extend # Mn [13] SOYOMBO FINAL CONSONANT SIGN G..SOYOMBO SIGN ANUSVARA +11A98..11A99 ; InCB; Extend # Mn [2] SOYOMBO GEMINATION MARK..SOYOMBO SUBJOINER +11C30..11C36 ; InCB; Extend # Mn [7] BHAIKSUKI VOWEL SIGN I..BHAIKSUKI VOWEL SIGN VOCALIC L +11C38..11C3D ; InCB; Extend # Mn [6] BHAIKSUKI VOWEL SIGN E..BHAIKSUKI SIGN ANUSVARA +11C3F ; InCB; Extend # Mn BHAIKSUKI SIGN VIRAMA +11C92..11CA7 ; InCB; Extend # Mn [22] MARCHEN SUBJOINED LETTER KA..MARCHEN SUBJOINED LETTER ZA +11CAA..11CB0 ; InCB; Extend # Mn [7] MARCHEN SUBJOINED LETTER RA..MARCHEN VOWEL SIGN AA +11CB2..11CB3 ; InCB; Extend # Mn [2] MARCHEN VOWEL SIGN U..MARCHEN VOWEL SIGN E +11CB5..11CB6 ; InCB; Extend # Mn [2] MARCHEN SIGN ANUSVARA..MARCHEN SIGN CANDRABINDU +11D31..11D36 ; InCB; Extend # Mn [6] MASARAM GONDI VOWEL SIGN AA..MASARAM GONDI VOWEL SIGN VOCALIC R +11D3A ; InCB; Extend # Mn MASARAM GONDI VOWEL SIGN E +11D3C..11D3D ; InCB; Extend # Mn [2] MASARAM GONDI VOWEL SIGN AI..MASARAM GONDI VOWEL SIGN O +11D3F..11D45 ; InCB; Extend # Mn [7] MASARAM GONDI VOWEL SIGN AU..MASARAM GONDI VIRAMA +11D47 ; InCB; Extend # Mn MASARAM GONDI RA-KARA +11D90..11D91 ; InCB; Extend # Mn [2] GUNJALA GONDI VOWEL SIGN EE..GUNJALA GONDI VOWEL SIGN AI +11D95 ; InCB; Extend # Mn GUNJALA GONDI SIGN ANUSVARA 11D97 ; InCB; Extend # Mn GUNJALA GONDI VIRAMA +11EF3..11EF4 ; InCB; Extend # Mn [2] MAKASAR VOWEL SIGN I..MAKASAR VOWEL SIGN U +11F00..11F01 ; InCB; Extend # Mn [2] KAWI SIGN CANDRABINDU..KAWI SIGN ANUSVARA +11F36..11F3A ; InCB; Extend # Mn [5] KAWI VOWEL SIGN I..KAWI VOWEL SIGN VOCALIC R +11F40 ; InCB; Extend # Mn KAWI VOWEL SIGN EU +11F41 ; InCB; Extend # Mc KAWI SIGN KILLER 11F42 ; InCB; Extend # Mn KAWI CONJOINER +11F5A ; InCB; Extend # Mn KAWI SIGN NUKTA +13440 ; InCB; Extend # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY +13447..13455 ; InCB; Extend # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +1611E..16129 ; InCB; Extend # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612D..1612F ; InCB; Extend # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA 16AF0..16AF4 ; InCB; Extend # Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE 16B30..16B36 ; InCB; Extend # Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM -1BC9E ; InCB; Extend # Mn DUPLOYAN DOUBLE MARK -1D165 ; InCB; Extend # Mc MUSICAL SYMBOL COMBINING STEM +16F4F ; InCB; Extend # Mn MIAO SIGN CONSONANT MODIFIER BAR +16F8F..16F92 ; InCB; Extend # Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW +16FE4 ; InCB; Extend # Mn KHITAN SMALL SCRIPT FILLER +16FF0..16FF1 ; InCB; Extend # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY +1BC9D..1BC9E ; InCB; Extend # Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK +1CF00..1CF2D ; InCB; Extend # Mn [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT +1CF30..1CF46 ; InCB; Extend # Mn [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG +1D165..1D166 ; InCB; Extend # Mc [2] MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING SPRECHGESANG STEM 1D167..1D169 ; InCB; Extend # Mn [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3 -1D16E..1D172 ; InCB; Extend # Mc [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5 +1D16D..1D172 ; InCB; Extend # Mc [6] MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5 1D17B..1D182 ; InCB; Extend # Mn [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE 1D185..1D18B ; InCB; Extend # Mn [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE 1D1AA..1D1AD ; InCB; Extend # Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO 1D242..1D244 ; InCB; Extend # Mn [3] COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME +1DA00..1DA36 ; InCB; Extend # Mn [55] SIGNWRITING HEAD RIM..SIGNWRITING AIR SUCKING IN +1DA3B..1DA6C ; InCB; Extend # Mn [50] SIGNWRITING MOUTH CLOSED NEUTRAL..SIGNWRITING EXCITEMENT +1DA75 ; InCB; Extend # Mn SIGNWRITING UPPER BODY TILTING FROM HIP JOINTS +1DA84 ; InCB; Extend # Mn SIGNWRITING LOCATION HEAD NECK +1DA9B..1DA9F ; InCB; Extend # Mn [5] SIGNWRITING FILL MODIFIER-2..SIGNWRITING FILL MODIFIER-6 +1DAA1..1DAAF ; InCB; Extend # Mn [15] SIGNWRITING ROTATION MODIFIER-2..SIGNWRITING ROTATION MODIFIER-16 1E000..1E006 ; InCB; Extend # Mn [7] COMBINING GLAGOLITIC LETTER AZU..COMBINING GLAGOLITIC LETTER ZHIVETE 1E008..1E018 ; InCB; Extend # Mn [17] COMBINING GLAGOLITIC LETTER ZEMLJA..COMBINING GLAGOLITIC LETTER HERU 1E01B..1E021 ; InCB; Extend # Mn [7] COMBINING GLAGOLITIC LETTER SHTA..COMBINING GLAGOLITIC LETTER YATI @@ -12824,9 +13350,13 @@ FE20..FE2F ; InCB; Extend # Mn [16] COMBINING LIGATURE LEFT HALF..COMBINING 1E2AE ; InCB; Extend # Mn TOTO SIGN RISING TONE 1E2EC..1E2EF ; InCB; Extend # Mn [4] WANCHO TONE TUP..WANCHO TONE KOINI 1E4EC..1E4EF ; InCB; Extend # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH +1E5EE..1E5EF ; InCB; Extend # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR 1E8D0..1E8D6 ; InCB; Extend # Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS 1E944..1E94A ; InCB; Extend # Mn [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA +1F3FB..1F3FF ; InCB; Extend # Sk [5] EMOJI MODIFIER FITZPATRICK TYPE-1-2..EMOJI MODIFIER FITZPATRICK TYPE-6 +E0020..E007F ; InCB; Extend # Cf [96] TAG SPACE..CANCEL TAG +E0100..E01EF ; InCB; Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 -# Total code points: 884 +# Total code points: 2192 # EOF diff --git a/localedata/unicode-gen/EastAsianWidth.txt b/localedata/unicode-gen/EastAsianWidth.txt index 02df4df475..99f7a31ea5 100644 --- a/localedata/unicode-gen/EastAsianWidth.txt +++ b/localedata/unicode-gen/EastAsianWidth.txt @@ -1,8 +1,8 @@ -# EastAsianWidth-15.1.0.txt -# Date: 2023-07-28, 23:34:08 GMT -# © 2023 Unicode®, Inc. +# EastAsianWidth-16.0.0.txt +# Date: 2024-04-30, 21:48:20 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -334,7 +334,7 @@ 0888 ; N # Sk ARABIC RAISED ROUND DOT 0889..088E ; N # Lo [6] ARABIC LETTER NOON WITH INVERTED SMALL V..ARABIC VERTICAL TAIL 0890..0891 ; N # Cf [2] ARABIC POUND MARK ABOVE..ARABIC PIASTRE MARK ABOVE -0898..089F ; N # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; N # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08A0..08C8 ; N # Lo [41] ARABIC LETTER BEH WITH SMALL V BELOW..ARABIC LETTER GRAF 08C9 ; N # Lm ARABIC SMALL FARSI YEH 08CA..08E1 ; N # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA @@ -819,12 +819,13 @@ 1B42 ; N # Mn BALINESE VOWEL SIGN PEPET 1B43..1B44 ; N # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG 1B45..1B4C ; N # Lo [8] BALINESE LETTER KAF SASAK..BALINESE LETTER ARCHAIC JNYA +1B4E..1B4F ; N # Po [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN 1B50..1B59 ; N # Nd [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE 1B5A..1B60 ; N # Po [7] BALINESE PANTI..BALINESE PAMENENG 1B61..1B6A ; N # So [10] BALINESE MUSICAL SYMBOL DONG..BALINESE MUSICAL SYMBOL DANG GEDE 1B6B..1B73 ; N # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG 1B74..1B7C ; N # So [9] BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING -1B7D..1B7E ; N # Po [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG +1B7D..1B7F ; N # Po [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK 1B80..1B81 ; N # Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR 1B82 ; N # Mc SUNDANESE SIGN PANGWISAD 1B83..1BA0 ; N # Lo [30] SUNDANESE LETTER A..SUNDANESE LETTER HA @@ -859,7 +860,7 @@ 1C5A..1C77 ; N # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; N # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD 1C7E..1C7F ; N # Po [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD -1C80..1C88 ; N # Ll [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; N # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; N # Lu [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; N # Lu [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CC0..1CC7 ; N # Po [8] SUNDANESE PUNCTUATION BINDU SURYA..SUNDANESE PUNCTUATION BINDU BA SATANGA @@ -1142,7 +1143,7 @@ 23F1..23F2 ; N # So [2] STOPWATCH..TIMER CLOCK 23F3 ; W # So HOURGLASS WITH FLOWING SAND 23F4..23FF ; N # So [12] BLACK MEDIUM LEFT-POINTING TRIANGLE..OBSERVER EYE SYMBOL -2400..2426 ; N # So [39] SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO +2400..2429 ; N # So [42] SYMBOL FOR NULL..SYMBOL FOR DELETE MEDIUM SHADE FORM 2440..244A ; N # So [11] OCR HOOK..OCR DOUBLE BACKSLASH 2460..249B ; A # No [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP 249C..24E9 ; A # So [78] PARENTHESIZED LATIN SMALL LETTER A..CIRCLED LATIN SMALL LETTER Z @@ -1195,7 +1196,9 @@ 261C ; A # So WHITE LEFT POINTING INDEX 261D ; N # So WHITE UP POINTING INDEX 261E ; A # So WHITE RIGHT POINTING INDEX -261F..263F ; N # So [33] WHITE DOWN POINTING INDEX..MERCURY +261F..262F ; N # So [17] WHITE DOWN POINTING INDEX..YIN YANG +2630..2637 ; W # So [8] TRIGRAM FOR HEAVEN..TRIGRAM FOR EARTH +2638..263F ; N # So [8] WHEEL OF DHARMA..MERCURY 2640 ; A # So FEMALE SIGN 2641 ; N # So EARTH 2642 ; A # So MALE SIGN @@ -1213,7 +1216,9 @@ 266F ; A # Sm MUSIC SHARP SIGN 2670..267E ; N # So [15] WEST SYRIAC CROSS..PERMANENT PAPER SIGN 267F ; W # So WHEELCHAIR SYMBOL -2680..2692 ; N # So [19] DIE FACE-1..HAMMER AND PICK +2680..2689 ; N # So [10] DIE FACE-1..BLACK CIRCLE WITH TWO WHITE DOTS +268A..268F ; W # So [6] MONOGRAM FOR YANG..DIGRAM FOR GREATER YIN +2690..2692 ; N # So [3] WHITE FLAG..HAMMER AND PICK 2693 ; W # So ANCHOR 2694..269D ; N # So [10] CROSSED SWORDS..OUTLINED WHITE STAR 269E..269F ; A # So [2] THREE LINES CONVERGING RIGHT..THREE LINES CONVERGING LEFT @@ -1487,7 +1492,7 @@ 3192..3195 ; W # No [4] IDEOGRAPHIC ANNOTATION ONE MARK..IDEOGRAPHIC ANNOTATION FOUR MARK 3196..319F ; W # So [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK 31A0..31BF ; W # Lo [32] BOPOMOFO LETTER BU..BOPOMOFO LETTER AH -31C0..31E3 ; W # So [36] CJK STROKE T..CJK STROKE Q +31C0..31E5 ; W # So [38] CJK STROKE T..CJK STROKE SZP 31EF ; W # So IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION 31F0..31FF ; W # Lo [16] KATAKANA LETTER SMALL KU..KATAKANA LETTER SMALL RO 3200..321E ; W # So [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU @@ -1503,7 +1508,7 @@ 32C0..32FF ; W # So [64] IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY..SQUARE ERA NAME REIWA 3300..33FF ; W # So [256] SQUARE APAATO..SQUARE GAL 3400..4DBF ; W # Lo [6592] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DBF -4DC0..4DFF ; N # So [64] HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION +4DC0..4DFF ; W # So [64] HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION 4E00..9FFF ; W # Lo [20992] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FFF A000..A014 ; W # Lo [21] YI SYLLABLE IT..YI SYLLABLE E A015 ; W # Lm YI SYLLABLE WU @@ -1543,10 +1548,10 @@ A788 ; N # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A789..A78A ; N # Sk [2] MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN A78B..A78E ; N # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; N # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; N # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; N # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; N # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; N # Ll LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; N # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; N # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; N # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; N # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; N # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -1870,6 +1875,7 @@ FFFD ; A # So REPLACEMENT CHARACTER 105A3..105B1 ; N # Ll [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; N # Ll [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; N # Ll [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; N # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; N # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; N # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; N # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -1942,12 +1948,23 @@ FFFD ; A # So REPLACEMENT CHARACTER 10D00..10D23 ; N # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA 10D24..10D27 ; N # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI 10D30..10D39 ; N # Nd [10] HANIFI ROHINGYA DIGIT ZERO..HANIFI ROHINGYA DIGIT NINE +10D40..10D49 ; N # Nd [10] GARAY DIGIT ZERO..GARAY DIGIT NINE +10D4A..10D4D ; N # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; N # Lm GARAY VOWEL LENGTH MARK +10D4F ; N # Lo GARAY SUKUN +10D50..10D65 ; N # Lu [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D69..10D6D ; N # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK +10D6E ; N # Pd GARAY HYPHEN +10D6F ; N # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; N # Ll [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA +10D8E..10D8F ; N # Sm [2] GARAY PLUS SIGN..GARAY MINUS SIGN 10E60..10E7E ; N # No [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS 10E80..10EA9 ; N # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EAB..10EAC ; N # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK 10EAD ; N # Pd YEZIDI HYPHENATION MARK 10EB0..10EB1 ; N # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE -10EFD..10EFF ; N # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EC2..10EC4 ; N # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW +10EFC..10EFF ; N # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F00..10F1C ; N # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F1D..10F26 ; N # No [10] OLD SOGDIAN NUMBER ONE..OLD SOGDIAN FRACTION ONE HALF 10F27 ; N # Lo OLD SOGDIAN LIGATURE AYIN-DALETH @@ -2064,6 +2081,26 @@ FFFD ; A # So REPLACEMENT CHARACTER 11362..11363 ; N # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL 11366..1136C ; N # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; N # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +11380..11389 ; N # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; N # Lo TULU-TIGALARI LETTER EE +1138E ; N # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; N # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; N # Lo TULU-TIGALARI SIGN AVAGRAHA +113B8..113BA ; N # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; N # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; N # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; N # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; N # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; N # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113CE ; N # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; N # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; N # Mn TULU-TIGALARI CONJOINER +113D1 ; N # Lo TULU-TIGALARI REPHA +113D2 ; N # Mn TULU-TIGALARI GEMINATION MARK +113D3 ; N # Lo TULU-TIGALARI SIGN PLUTA +113D4..113D5 ; N # Po [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA +113D7..113D8 ; N # Po [2] TULU-TIGALARI SIGN OM PUSHPIKA..TULU-TIGALARI SIGN SHRII PUSHPIKA +113E1..113E2 ; N # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11400..11434 ; N # Lo [53] NEWA LETTER A..NEWA LETTER HA 11435..11437 ; N # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11438..1143F ; N # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI @@ -2123,8 +2160,11 @@ FFFD ; A # So REPLACEMENT CHARACTER 116B8 ; N # Lo TAKRI LETTER ARCHAIC KHA 116B9 ; N # Po TAKRI ABBREVIATION SIGN 116C0..116C9 ; N # Nd [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE +116D0..116E3 ; N # Nd [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE 11700..1171A ; N # Lo [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA -1171D..1171F ; N # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; N # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; N # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; N # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; N # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; N # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; N # Mc AHOM VOWEL SIGN E @@ -2195,6 +2235,9 @@ FFFD ; A # So REPLACEMENT CHARACTER 11AB0..11ABF ; N # Lo [16] CANADIAN SYLLABICS NATTILIK HI..CANADIAN SYLLABICS SPA 11AC0..11AF8 ; N # Lo [57] PAU CIN HAU LETTER PA..PAU CIN HAU GLOTTAL STOP FINAL 11B00..11B09 ; N # Po [10] DEVANAGARI HEAD MARK..DEVANAGARI SIGN MINDU +11BC0..11BE0 ; N # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO +11BE1 ; N # Po SUNUWAR SIGN PVO +11BF0..11BF9 ; N # Nd [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE 11C00..11C08 ; N # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; N # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C2F ; N # Mc BHAIKSUKI VOWEL SIGN AA @@ -2253,6 +2296,7 @@ FFFD ; A # So REPLACEMENT CHARACTER 11F42 ; N # Mn KAWI CONJOINER 11F43..11F4F ; N # Po [13] KAWI DANDA..KAWI PUNCTUATION CLOSING SPIRAL 11F50..11F59 ; N # Nd [10] KAWI DIGIT ZERO..KAWI DIGIT NINE +11F5A ; N # Mn KAWI SIGN NUKTA 11FB0 ; N # Lo LISU LETTER YHA 11FC0..11FD4 ; N # No [21] TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH..TAMIL FRACTION DOWNSCALING FACTOR KIIZH 11FD5..11FDC ; N # So [8] TAMIL SIGN NEL..TAMIL SIGN MUKKURUNI @@ -2270,7 +2314,13 @@ FFFD ; A # So REPLACEMENT CHARACTER 13440 ; N # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13441..13446 ; N # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN 13447..13455 ; N # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +13460..143FA ; N # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; N # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; N # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA +1611E..16129 ; N # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; N # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612F ; N # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA +16130..16139 ; N # Nd [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE 16800..16A38 ; N # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; N # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A60..16A69 ; N # Nd [10] MRO DIGIT ZERO..MRO DIGIT NINE @@ -2291,6 +2341,11 @@ FFFD ; A # So REPLACEMENT CHARACTER 16B5B..16B61 ; N # No [7] PAHAWH HMONG NUMBER TENS..PAHAWH HMONG NUMBER TRILLIONS 16B63..16B77 ; N # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; N # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; N # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; N # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; N # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT +16D6D..16D6F ; N # Po [3] KIRAT RAI SIGN YUPI..KIRAT RAI DOUBLE DANDA +16D70..16D79 ; N # Nd [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE 16E40..16E7F ; N # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16E80..16E96 ; N # No [23] MEDEFAIDRIN DIGIT ZERO..MEDEFAIDRIN DIGIT THREE ALTERNATE FORM 16E97..16E9A ; N # Po [4] MEDEFAIDRIN COMMA..MEDEFAIDRIN EXCLAMATION OH @@ -2308,6 +2363,7 @@ FFFD ; A # So REPLACEMENT CHARACTER 17000..187F7 ; W # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18AFF ; W # Lo [768] TANGUT COMPONENT-001..TANGUT COMPONENT-768 18B00..18CD5 ; W # Lo [470] KHITAN SMALL SCRIPT CHARACTER-18B00..KHITAN SMALL SCRIPT CHARACTER-18CD5 +18CFF ; W # Lo KHITAN SMALL SCRIPT CHARACTER-18CFF 18D00..18D08 ; W # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; W # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; W # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 @@ -2327,6 +2383,9 @@ FFFD ; A # So REPLACEMENT CHARACTER 1BC9D..1BC9E ; N # Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK 1BC9F ; N # Po DUPLOYAN PUNCTUATION CHINOOK FULL STOP 1BCA0..1BCA3 ; N # Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP +1CC00..1CCEF ; N # So [240] UP-POINTING GO-KART..OUTLINED LATIN CAPITAL LETTER Z +1CCF0..1CCF9 ; N # Nd [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE +1CD00..1CEB3 ; N # So [436] BLOCK OCTANT-3..BLACK RIGHT TRIANGLE CARET 1CF00..1CF2D ; N # Mn [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT 1CF30..1CF46 ; N # Mn [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG 1CF50..1CFC3 ; N # So [116] ZNAMENNY NEUME KRYUK..ZNAMENNY NEUME PAUK @@ -2349,8 +2408,9 @@ FFFD ; A # So REPLACEMENT CHARACTER 1D245 ; N # So GREEK MUSICAL LEIMMA 1D2C0..1D2D3 ; N # No [20] KAKTOVIK NUMERAL ZERO..KAKTOVIK NUMERAL NINETEEN 1D2E0..1D2F3 ; N # No [20] MAYAN NUMERAL ZERO..MAYAN NUMERAL NINETEEN -1D300..1D356 ; N # So [87] MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING -1D360..1D378 ; N # No [25] COUNTING ROD UNIT DIGIT ONE..TALLY MARK FIVE +1D300..1D356 ; W # So [87] MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING +1D360..1D376 ; W # No [23] COUNTING ROD UNIT DIGIT ONE..IDEOGRAPHIC TALLY MARK FIVE +1D377..1D378 ; N # No [2] TALLY MARK ONE..TALLY MARK FIVE 1D400..1D454 ; N # L& [85] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G 1D456..1D49C ; N # L& [71] MATHEMATICAL ITALIC SMALL I..MATHEMATICAL SCRIPT CAPITAL A 1D49E..1D49F ; N # Lu [2] MATHEMATICAL SCRIPT CAPITAL C..MATHEMATICAL SCRIPT CAPITAL D @@ -2431,6 +2491,11 @@ FFFD ; A # So REPLACEMENT CHARACTER 1E4EB ; N # Lm NAG MUNDARI SIGN OJOD 1E4EC..1E4EF ; N # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH 1E4F0..1E4F9 ; N # Nd [10] NAG MUNDARI DIGIT ZERO..NAG MUNDARI DIGIT NINE +1E5D0..1E5ED ; N # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5EE..1E5EF ; N # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR +1E5F0 ; N # Lo OL ONAL SIGN HODDOND +1E5F1..1E5FA ; N # Nd [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE +1E5FF ; N # Po OL ONAL ABBREVIATION SIGN 1E7E0..1E7E6 ; N # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; N # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; N # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -2574,7 +2639,8 @@ FFFD ; A # So REPLACEMENT CHARACTER 1F850..1F859 ; N # So [10] LEFTWARDS SANS-SERIF ARROW..UP DOWN SANS-SERIF ARROW 1F860..1F887 ; N # So [40] WIDE-HEADED LEFTWARDS LIGHT BARB ARROW..WIDE-HEADED SOUTH WEST VERY HEAVY BARB ARROW 1F890..1F8AD ; N # So [30] LEFTWARDS TRIANGLE ARROWHEAD..WHITE ARROW SHAFT WIDTH TWO THIRDS -1F8B0..1F8B1 ; N # So [2] ARROW POINTING UPWARDS THEN NORTH WEST..ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST +1F8B0..1F8BB ; N # So [12] ARROW POINTING UPWARDS THEN NORTH WEST..SOUTH WEST ARROW FROM BAR +1F8C0..1F8C1 ; N # So [2] LEFTWARDS ARROW FROM DOWNWARDS ARROW..RIGHTWARDS ARROW FROM DOWNWARDS ARROW 1F900..1F90B ; N # So [12] CIRCLED CROSS FORMEE WITH FOUR DOTS..DOWNWARD FACING NOTCHED HOOK WITH DOT 1F90C..1F93A ; W # So [47] PINCHED FINGERS..FENCER 1F93B ; N # So MODERN PENTATHLON @@ -2584,14 +2650,13 @@ FFFD ; A # So REPLACEMENT CHARACTER 1FA00..1FA53 ; N # So [84] NEUTRAL CHESS KING..BLACK CHESS KNIGHT-BISHOP 1FA60..1FA6D ; N # So [14] XIANGQI RED GENERAL..XIANGQI BLACK SOLDIER 1FA70..1FA7C ; W # So [13] BALLET SHOES..CRUTCH -1FA80..1FA88 ; W # So [9] YO-YO..FLUTE -1FA90..1FABD ; W # So [46] RINGED PLANET..WING -1FABF..1FAC5 ; W # So [7] GOOSE..PERSON WITH CROWN -1FACE..1FADB ; W # So [14] MOOSE..PEA POD -1FAE0..1FAE8 ; W # So [9] MELTING FACE..SHAKING FACE +1FA80..1FA89 ; W # So [10] YO-YO..HARP +1FA8F..1FAC6 ; W # So [56] SHOVEL..FINGERPRINT +1FACE..1FADC ; W # So [15] MOOSE..ROOT VEGETABLE +1FADF..1FAE9 ; W # So [11] SPLATTER..FACE WITH BAGS UNDER EYES 1FAF0..1FAF8 ; W # So [9] HAND WITH INDEX FINGER AND THUMB CROSSED..RIGHTWARDS PUSHING HAND 1FB00..1FB92 ; N # So [147] BLOCK SEXTANT-1..UPPER HALF INVERSE MEDIUM SHADE AND LOWER HALF BLOCK -1FB94..1FBCA ; N # So [55] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..WHITE UP-POINTING CHEVRON +1FB94..1FBEF ; N # So [92] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE 1FBF0..1FBF9 ; N # Nd [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE 20000..2A6DF ; W # Lo [42720] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6DF 2A6E0..2A6FF ; W # Cn [32] <reserved-2A6E0>..<reserved-2A6FF> diff --git a/localedata/unicode-gen/HangulSyllableType.txt b/localedata/unicode-gen/HangulSyllableType.txt index 98dafb10f1..56b5eea076 100644 --- a/localedata/unicode-gen/HangulSyllableType.txt +++ b/localedata/unicode-gen/HangulSyllableType.txt @@ -1,8 +1,8 @@ -# HangulSyllableType-15.1.0.txt -# Date: 2023-01-05, 20:34:42 GMT -# © 2023 Unicode®, Inc. +# HangulSyllableType-16.0.0.txt +# Date: 2024-04-30, 21:48:21 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ diff --git a/localedata/unicode-gen/Makefile b/localedata/unicode-gen/Makefile index 48cefc2b8d..c0613110cc 100644 --- a/localedata/unicode-gen/Makefile +++ b/localedata/unicode-gen/Makefile @@ -36,7 +36,7 @@ # files for making modifications. -UNICODE_VERSION = 15.1.0 +UNICODE_VERSION = 16.0.0 PYTHON3 = python3 WGET = wget diff --git a/localedata/unicode-gen/UnicodeData.txt b/localedata/unicode-gen/UnicodeData.txt index bdcc41850d..64258a3739 100644 --- a/localedata/unicode-gen/UnicodeData.txt +++ b/localedata/unicode-gen/UnicodeData.txt @@ -409,7 +409,7 @@ 0198;LATIN CAPITAL LETTER K WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER K HOOK;;;0199; 0199;LATIN SMALL LETTER K WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER K HOOK;;0198;;0198 019A;LATIN SMALL LETTER L WITH BAR;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED L;;023D;;023D -019B;LATIN SMALL LETTER LAMBDA WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED LAMBDA;;;; +019B;LATIN SMALL LETTER LAMBDA WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED LAMBDA;;A7DC;;A7DC 019C;LATIN CAPITAL LETTER TURNED M;Lu;0;L;;;;;N;;;;026F; 019D;LATIN CAPITAL LETTER N WITH LEFT HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER N HOOK;;;0272; 019E;LATIN SMALL LETTER N WITH LONG RIGHT LEG;Ll;0;L;;;;;N;;;0220;;0220 @@ -610,7 +610,7 @@ 0261;LATIN SMALL LETTER SCRIPT G;Ll;0;L;;;;;N;;;A7AC;;A7AC 0262;LATIN LETTER SMALL CAPITAL G;Ll;0;L;;;;;N;;;;; 0263;LATIN SMALL LETTER GAMMA;Ll;0;L;;;;;N;;;0194;;0194 -0264;LATIN SMALL LETTER RAMS HORN;Ll;0;L;;;;;N;LATIN SMALL LETTER BABY GAMMA;;;; +0264;LATIN SMALL LETTER RAMS HORN;Ll;0;L;;;;;N;LATIN SMALL LETTER BABY GAMMA;;A7CB;;A7CB 0265;LATIN SMALL LETTER TURNED H;Ll;0;L;;;;;N;;;A78D;;A78D 0266;LATIN SMALL LETTER H WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER H HOOK;;A7AA;;A7AA 0267;LATIN SMALL LETTER HENG WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER HENG HOOK;;;; @@ -2123,6 +2123,7 @@ 088E;ARABIC VERTICAL TAIL;Lo;0;AL;;;;;N;;;;; 0890;ARABIC POUND MARK ABOVE;Cf;0;AN;;;;;N;;;;; 0891;ARABIC PIASTRE MARK ABOVE;Cf;0;AN;;;;;N;;;;; +0897;ARABIC PEPET;Mn;230;NSM;;;;;N;;;;; 0898;ARABIC SMALL HIGH WORD AL-JUZ;Mn;230;NSM;;;;;N;;;;; 0899;ARABIC SMALL LOW WORD ISHMAAM;Mn;220;NSM;;;;;N;;;;; 089A;ARABIC SMALL LOW WORD IMAALA;Mn;220;NSM;;;;;N;;;;; @@ -6213,6 +6214,8 @@ 1B4A;BALINESE LETTER ZAL SASAK;Lo;0;L;;;;;N;;;;; 1B4B;BALINESE LETTER ASYURA SASAK;Lo;0;L;;;;;N;;;;; 1B4C;BALINESE LETTER ARCHAIC JNYA;Lo;0;L;;;;;N;;;;; +1B4E;BALINESE INVERTED CARIK SIKI;Po;0;L;;;;;N;;;;; +1B4F;BALINESE INVERTED CARIK PAREREN;Po;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;;;;; @@ -6260,6 +6263,7 @@ 1B7C;BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING;So;0;L;;;;;N;;;;; 1B7D;BALINESE PANTI LANTANG;Po;0;L;;;;;N;;;;; 1B7E;BALINESE PAMADA LANTANG;Po;0;L;;;;;N;;;;; +1B7F;BALINESE PANTI BAWAK;Po;0;L;;;;;N;;;;; 1B80;SUNDANESE SIGN PANYECEK;Mn;0;NSM;;;;;N;;;;; 1B81;SUNDANESE SIGN PANGLAYAR;Mn;0;NSM;;;;;N;;;;; 1B82;SUNDANESE SIGN PANGWISAD;Mc;0;L;;;;;N;;;;; @@ -6511,6 +6515,8 @@ 1C86;CYRILLIC SMALL LETTER TALL HARD SIGN;Ll;0;L;;;;;N;;;042A;;042A 1C87;CYRILLIC SMALL LETTER TALL YAT;Ll;0;L;;;;;N;;;0462;;0462 1C88;CYRILLIC SMALL LETTER UNBLENDED UK;Ll;0;L;;;;;N;;;A64A;;A64A +1C89;CYRILLIC CAPITAL LETTER TJE;Lu;0;L;;;;;N;;;;1C8A; +1C8A;CYRILLIC SMALL LETTER TJE;Ll;0;L;;;;;N;;;1C89;;1C89 1C90;GEORGIAN MTAVRULI CAPITAL LETTER AN;Lu;0;L;;;;;N;;;;10D0; 1C91;GEORGIAN MTAVRULI CAPITAL LETTER BAN;Lu;0;L;;;;;N;;;;10D1; 1C92;GEORGIAN MTAVRULI CAPITAL LETTER GAN;Lu;0;L;;;;;N;;;;10D2; @@ -7933,7 +7939,7 @@ 226A;MUCH LESS-THAN;Sm;0;ON;;;;;Y;MUCH LESS THAN;;;; 226B;MUCH GREATER-THAN;Sm;0;ON;;;;;Y;MUCH GREATER THAN;;;; 226C;BETWEEN;Sm;0;ON;;;;;N;;;;; -226D;NOT EQUIVALENT TO;Sm;0;ON;224D 0338;;;;N;;;;; +226D;NOT EQUIVALENT TO;Sm;0;ON;224D 0338;;;;Y;;;;; 226E;NOT LESS-THAN;Sm;0;ON;003C 0338;;;;Y;NOT LESS THAN;;;; 226F;NOT GREATER-THAN;Sm;0;ON;003E 0338;;;;Y;NOT GREATER THAN;;;; 2270;NEITHER LESS-THAN NOR EQUAL TO;Sm;0;ON;2264 0338;;;;Y;NEITHER LESS THAN NOR EQUAL TO;;;; @@ -8375,6 +8381,9 @@ 2424;SYMBOL FOR NEWLINE;So;0;ON;;;;;N;GRAPHIC FOR NEWLINE;;;; 2425;SYMBOL FOR DELETE FORM TWO;So;0;ON;;;;;N;;;;; 2426;SYMBOL FOR SUBSTITUTE FORM TWO;So;0;ON;;;;;N;;;;; +2427;SYMBOL FOR DELETE SQUARE CHECKER BOARD FORM;So;0;ON;;;;;N;;;;; +2428;SYMBOL FOR DELETE RECTANGULAR CHECKER BOARD FORM;So;0;ON;;;;;N;;;;; +2429;SYMBOL FOR DELETE MEDIUM SHADE FORM;So;0;ON;;;;;N;;;;; 2440;OCR HOOK;So;0;ON;;;;;N;;;;; 2441;OCR CHAIR;So;0;ON;;;;;N;;;;; 2442;OCR FORK;So;0;ON;;;;;N;;;;; @@ -11709,6 +11718,8 @@ 31E1;CJK STROKE HZZZG;So;0;ON;;;;;N;;;;; 31E2;CJK STROKE PG;So;0;ON;;;;;N;;;;; 31E3;CJK STROKE Q;So;0;ON;;;;;N;;;;; +31E4;CJK STROKE HXG;So;0;ON;;;;;N;;;;; +31E5;CJK STROKE SZP;So;0;ON;;;;;N;;;;; 31EF;IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION;So;0;ON;;;;;N;;;;; 31F0;KATAKANA LETTER SMALL KU;Lo;0;L;;;;;N;;;;; 31F1;KATAKANA LETTER SMALL SI;Lo;0;L;;;;;N;;;;; @@ -14260,6 +14271,9 @@ A7C7;LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY;Lu;0;L;;;;;N;;;;A7C8; A7C8;LATIN SMALL LETTER D WITH SHORT STROKE OVERLAY;Ll;0;L;;;;;N;;;A7C7;;A7C7 A7C9;LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY;Lu;0;L;;;;;N;;;;A7CA; A7CA;LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY;Ll;0;L;;;;;N;;;A7C9;;A7C9 +A7CB;LATIN CAPITAL LETTER RAMS HORN;Lu;0;L;;;;;N;;;;0264; +A7CC;LATIN CAPITAL LETTER S WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;A7CD; +A7CD;LATIN SMALL LETTER S WITH DIAGONAL STROKE;Ll;0;L;;;;;N;;;A7CC;;A7CC A7D0;LATIN CAPITAL LETTER CLOSED INSULAR G;Lu;0;L;;;;;N;;;;A7D1; A7D1;LATIN SMALL LETTER CLOSED INSULAR G;Ll;0;L;;;;;N;;;A7D0;;A7D0 A7D3;LATIN SMALL LETTER DOUBLE THORN;Ll;0;L;;;;;N;;;;; @@ -14268,6 +14282,9 @@ A7D6;LATIN CAPITAL LETTER MIDDLE SCOTS S;Lu;0;L;;;;;N;;;;A7D7; A7D7;LATIN SMALL LETTER MIDDLE SCOTS S;Ll;0;L;;;;;N;;;A7D6;;A7D6 A7D8;LATIN CAPITAL LETTER SIGMOID S;Lu;0;L;;;;;N;;;;A7D9; A7D9;LATIN SMALL LETTER SIGMOID S;Ll;0;L;;;;;N;;;A7D8;;A7D8 +A7DA;LATIN CAPITAL LETTER LAMBDA;Lu;0;L;;;;;N;;;;A7DB; +A7DB;LATIN SMALL LETTER LAMBDA;Ll;0;L;;;;;N;;;A7DA;;A7DA +A7DC;LATIN CAPITAL LETTER LAMBDA WITH STROKE;Lu;0;L;;;;;N;;;;019B; A7F2;MODIFIER LETTER CAPITAL C;Lm;0;L;<super> 0043;;;;N;;;;; A7F3;MODIFIER LETTER CAPITAL F;Lm;0;L;<super> 0046;;;;N;;;;; A7F4;MODIFIER LETTER CAPITAL Q;Lm;0;L;<super> 0051;;;;N;;;;; @@ -18001,6 +18018,58 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 105B9;VITHKUQI SMALL LETTER XE;Ll;0;L;;;;;N;;;10592;;10592 105BB;VITHKUQI SMALL LETTER Y;Ll;0;L;;;;;N;;;10594;;10594 105BC;VITHKUQI SMALL LETTER ZE;Ll;0;L;;;;;N;;;10595;;10595 +105C0;TODHRI LETTER A;Lo;0;L;;;;;N;;;;; +105C1;TODHRI LETTER AS;Lo;0;L;;;;;N;;;;; +105C2;TODHRI LETTER BA;Lo;0;L;;;;;N;;;;; +105C3;TODHRI LETTER MBA;Lo;0;L;;;;;N;;;;; +105C4;TODHRI LETTER CA;Lo;0;L;;;;;N;;;;; +105C5;TODHRI LETTER CHA;Lo;0;L;;;;;N;;;;; +105C6;TODHRI LETTER DA;Lo;0;L;;;;;N;;;;; +105C7;TODHRI LETTER NDA;Lo;0;L;;;;;N;;;;; +105C8;TODHRI LETTER DHA;Lo;0;L;;;;;N;;;;; +105C9;TODHRI LETTER EI;Lo;0;L;105D2 0307;;;;N;;;;; +105CA;TODHRI LETTER E;Lo;0;L;;;;;N;;;;; +105CB;TODHRI LETTER FA;Lo;0;L;;;;;N;;;;; +105CC;TODHRI LETTER GA;Lo;0;L;;;;;N;;;;; +105CD;TODHRI LETTER NGA;Lo;0;L;;;;;N;;;;; +105CE;TODHRI LETTER GJA;Lo;0;L;;;;;N;;;;; +105CF;TODHRI LETTER NGJA;Lo;0;L;;;;;N;;;;; +105D0;TODHRI LETTER HA;Lo;0;L;;;;;N;;;;; +105D1;TODHRI LETTER HJA;Lo;0;L;;;;;N;;;;; +105D2;TODHRI LETTER I;Lo;0;L;;;;;N;;;;; +105D3;TODHRI LETTER JA;Lo;0;L;;;;;N;;;;; +105D4;TODHRI LETTER KA;Lo;0;L;;;;;N;;;;; +105D5;TODHRI LETTER LA;Lo;0;L;;;;;N;;;;; +105D6;TODHRI LETTER LLA;Lo;0;L;;;;;N;;;;; +105D7;TODHRI LETTER MA;Lo;0;L;;;;;N;;;;; +105D8;TODHRI LETTER NA;Lo;0;L;;;;;N;;;;; +105D9;TODHRI LETTER NJAN;Lo;0;L;;;;;N;;;;; +105DA;TODHRI LETTER O;Lo;0;L;;;;;N;;;;; +105DB;TODHRI LETTER PA;Lo;0;L;;;;;N;;;;; +105DC;TODHRI LETTER QA;Lo;0;L;;;;;N;;;;; +105DD;TODHRI LETTER RA;Lo;0;L;;;;;N;;;;; +105DE;TODHRI LETTER RRA;Lo;0;L;;;;;N;;;;; +105DF;TODHRI LETTER SA;Lo;0;L;;;;;N;;;;; +105E0;TODHRI LETTER SHA;Lo;0;L;;;;;N;;;;; +105E1;TODHRI LETTER SHTA;Lo;0;L;;;;;N;;;;; +105E2;TODHRI LETTER TA;Lo;0;L;;;;;N;;;;; +105E3;TODHRI LETTER THA;Lo;0;L;;;;;N;;;;; +105E4;TODHRI LETTER U;Lo;0;L;105DA 0307;;;;N;;;;; +105E5;TODHRI LETTER VA;Lo;0;L;;;;;N;;;;; +105E6;TODHRI LETTER XA;Lo;0;L;;;;;N;;;;; +105E7;TODHRI LETTER NXA;Lo;0;L;;;;;N;;;;; +105E8;TODHRI LETTER XHA;Lo;0;L;;;;;N;;;;; +105E9;TODHRI LETTER NXHA;Lo;0;L;;;;;N;;;;; +105EA;TODHRI LETTER Y;Lo;0;L;;;;;N;;;;; +105EB;TODHRI LETTER JY;Lo;0;L;;;;;N;;;;; +105EC;TODHRI LETTER ZA;Lo;0;L;;;;;N;;;;; +105ED;TODHRI LETTER ZHA;Lo;0;L;;;;;N;;;;; +105EE;TODHRI LETTER GHA;Lo;0;L;;;;;N;;;;; +105EF;TODHRI LETTER STA;Lo;0;L;;;;;N;;;;; +105F0;TODHRI LETTER SKAN;Lo;0;L;;;;;N;;;;; +105F1;TODHRI LETTER KHA;Lo;0;L;;;;;N;;;;; +105F2;TODHRI LETTER PSA;Lo;0;L;;;;;N;;;;; +105F3;TODHRI LETTER OO;Lo;0;L;;;;;N;;;;; 10600;LINEAR A SIGN AB001;Lo;0;L;;;;;N;;;;; 10601;LINEAR A SIGN AB002;Lo;0;L;;;;;N;;;;; 10602;LINEAR A SIGN AB003;Lo;0;L;;;;;N;;;;; @@ -19322,6 +19391,75 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 10D37;HANIFI ROHINGYA DIGIT SEVEN;Nd;0;AN;;7;7;7;N;;;;; 10D38;HANIFI ROHINGYA DIGIT EIGHT;Nd;0;AN;;8;8;8;N;;;;; 10D39;HANIFI ROHINGYA DIGIT NINE;Nd;0;AN;;9;9;9;N;;;;; +10D40;GARAY DIGIT ZERO;Nd;0;AN;;0;0;0;N;;;;; +10D41;GARAY DIGIT ONE;Nd;0;AN;;1;1;1;N;;;;; +10D42;GARAY DIGIT TWO;Nd;0;AN;;2;2;2;N;;;;; +10D43;GARAY DIGIT THREE;Nd;0;AN;;3;3;3;N;;;;; +10D44;GARAY DIGIT FOUR;Nd;0;AN;;4;4;4;N;;;;; +10D45;GARAY DIGIT FIVE;Nd;0;AN;;5;5;5;N;;;;; +10D46;GARAY DIGIT SIX;Nd;0;AN;;6;6;6;N;;;;; +10D47;GARAY DIGIT SEVEN;Nd;0;AN;;7;7;7;N;;;;; +10D48;GARAY DIGIT EIGHT;Nd;0;AN;;8;8;8;N;;;;; +10D49;GARAY DIGIT NINE;Nd;0;AN;;9;9;9;N;;;;; +10D4A;GARAY VOWEL SIGN A;Lo;0;R;;;;;N;;;;; +10D4B;GARAY VOWEL SIGN I;Lo;0;R;;;;;N;;;;; +10D4C;GARAY VOWEL SIGN O;Lo;0;R;;;;;N;;;;; +10D4D;GARAY VOWEL SIGN EE;Lo;0;R;;;;;N;;;;; +10D4E;GARAY VOWEL LENGTH MARK;Lm;0;R;;;;;N;;;;; +10D4F;GARAY SUKUN;Lo;0;R;;;;;N;;;;; +10D50;GARAY CAPITAL LETTER A;Lu;0;R;;;;;N;;;;10D70; +10D51;GARAY CAPITAL LETTER CA;Lu;0;R;;;;;N;;;;10D71; +10D52;GARAY CAPITAL LETTER MA;Lu;0;R;;;;;N;;;;10D72; +10D53;GARAY CAPITAL LETTER KA;Lu;0;R;;;;;N;;;;10D73; +10D54;GARAY CAPITAL LETTER BA;Lu;0;R;;;;;N;;;;10D74; +10D55;GARAY CAPITAL LETTER JA;Lu;0;R;;;;;N;;;;10D75; +10D56;GARAY CAPITAL LETTER SA;Lu;0;R;;;;;N;;;;10D76; +10D57;GARAY CAPITAL LETTER WA;Lu;0;R;;;;;N;;;;10D77; +10D58;GARAY CAPITAL LETTER LA;Lu;0;R;;;;;N;;;;10D78; +10D59;GARAY CAPITAL LETTER GA;Lu;0;R;;;;;N;;;;10D79; +10D5A;GARAY CAPITAL LETTER DA;Lu;0;R;;;;;N;;;;10D7A; +10D5B;GARAY CAPITAL LETTER XA;Lu;0;R;;;;;N;;;;10D7B; +10D5C;GARAY CAPITAL LETTER YA;Lu;0;R;;;;;N;;;;10D7C; +10D5D;GARAY CAPITAL LETTER TA;Lu;0;R;;;;;N;;;;10D7D; +10D5E;GARAY CAPITAL LETTER RA;Lu;0;R;;;;;N;;;;10D7E; +10D5F;GARAY CAPITAL LETTER NYA;Lu;0;R;;;;;N;;;;10D7F; +10D60;GARAY CAPITAL LETTER FA;Lu;0;R;;;;;N;;;;10D80; +10D61;GARAY CAPITAL LETTER NA;Lu;0;R;;;;;N;;;;10D81; +10D62;GARAY CAPITAL LETTER PA;Lu;0;R;;;;;N;;;;10D82; +10D63;GARAY CAPITAL LETTER HA;Lu;0;R;;;;;N;;;;10D83; +10D64;GARAY CAPITAL LETTER OLD KA;Lu;0;R;;;;;N;;;;10D84; +10D65;GARAY CAPITAL LETTER OLD NA;Lu;0;R;;;;;N;;;;10D85; +10D69;GARAY VOWEL SIGN E;Mn;230;NSM;;;;;N;;;;; +10D6A;GARAY CONSONANT GEMINATION MARK;Mn;230;NSM;;;;;N;;;;; +10D6B;GARAY COMBINING DOT ABOVE;Mn;230;NSM;;;;;N;;;;; +10D6C;GARAY COMBINING DOUBLE DOT ABOVE;Mn;230;NSM;;;;;N;;;;; +10D6D;GARAY CONSONANT NASALIZATION MARK;Mn;230;NSM;;;;;N;;;;; +10D6E;GARAY HYPHEN;Pd;0;ON;;;;;N;;;;; +10D6F;GARAY REDUPLICATION MARK;Lm;0;R;;;;;N;;;;; +10D70;GARAY SMALL LETTER A;Ll;0;R;;;;;N;;;10D50;;10D50 +10D71;GARAY SMALL LETTER CA;Ll;0;R;;;;;N;;;10D51;;10D51 +10D72;GARAY SMALL LETTER MA;Ll;0;R;;;;;N;;;10D52;;10D52 +10D73;GARAY SMALL LETTER KA;Ll;0;R;;;;;N;;;10D53;;10D53 +10D74;GARAY SMALL LETTER BA;Ll;0;R;;;;;N;;;10D54;;10D54 +10D75;GARAY SMALL LETTER JA;Ll;0;R;;;;;N;;;10D55;;10D55 +10D76;GARAY SMALL LETTER SA;Ll;0;R;;;;;N;;;10D56;;10D56 +10D77;GARAY SMALL LETTER WA;Ll;0;R;;;;;N;;;10D57;;10D57 +10D78;GARAY SMALL LETTER LA;Ll;0;R;;;;;N;;;10D58;;10D58 +10D79;GARAY SMALL LETTER GA;Ll;0;R;;;;;N;;;10D59;;10D59 +10D7A;GARAY SMALL LETTER DA;Ll;0;R;;;;;N;;;10D5A;;10D5A +10D7B;GARAY SMALL LETTER XA;Ll;0;R;;;;;N;;;10D5B;;10D5B +10D7C;GARAY SMALL LETTER YA;Ll;0;R;;;;;N;;;10D5C;;10D5C +10D7D;GARAY SMALL LETTER TA;Ll;0;R;;;;;N;;;10D5D;;10D5D +10D7E;GARAY SMALL LETTER RA;Ll;0;R;;;;;N;;;10D5E;;10D5E +10D7F;GARAY SMALL LETTER NYA;Ll;0;R;;;;;N;;;10D5F;;10D5F +10D80;GARAY SMALL LETTER FA;Ll;0;R;;;;;N;;;10D60;;10D60 +10D81;GARAY SMALL LETTER NA;Ll;0;R;;;;;N;;;10D61;;10D61 +10D82;GARAY SMALL LETTER PA;Ll;0;R;;;;;N;;;10D62;;10D62 +10D83;GARAY SMALL LETTER HA;Ll;0;R;;;;;N;;;10D63;;10D63 +10D84;GARAY SMALL LETTER OLD KA;Ll;0;R;;;;;N;;;10D64;;10D64 +10D85;GARAY SMALL LETTER OLD NA;Ll;0;R;;;;;N;;;10D65;;10D65 +10D8E;GARAY PLUS SIGN;Sm;0;R;;;;;N;;;;; +10D8F;GARAY MINUS SIGN;Sm;0;R;;;;;N;;;;; 10E60;RUMI DIGIT ONE;No;0;AN;;;1;1;N;;;;; 10E61;RUMI DIGIT TWO;No;0;AN;;;2;2;N;;;;; 10E62;RUMI DIGIT THREE;No;0;AN;;;3;3;N;;;;; @@ -19400,6 +19538,10 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 10EAD;YEZIDI HYPHENATION MARK;Pd;0;R;;;;;N;;;;; 10EB0;YEZIDI LETTER LAM WITH DOT ABOVE;Lo;0;R;;;;;N;;;;; 10EB1;YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE;Lo;0;R;;;;;N;;;;; +10EC2;ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW;Lo;0;AL;;;;;N;;;;; +10EC3;ARABIC LETTER TAH WITH TWO DOTS VERTICALLY BELOW;Lo;0;AL;;;;;N;;;;; +10EC4;ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW;Lo;0;AL;;;;;N;;;;; +10EFC;ARABIC COMBINING ALEF OVERLAY;Mn;0;NSM;;;;;N;;;;; 10EFD;ARABIC SMALL LOW WORD SAKTA;Mn;220;NSM;;;;;N;;;;; 10EFE;ARABIC SMALL LOW WORD QASR;Mn;220;NSM;;;;;N;;;;; 10EFF;ARABIC SMALL LOW WORD MADDA;Mn;220;NSM;;;;;N;;;;; @@ -20264,6 +20406,86 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 11372;COMBINING GRANTHA LETTER NA;Mn;230;NSM;;;;;N;;;;; 11373;COMBINING GRANTHA LETTER VI;Mn;230;NSM;;;;;N;;;;; 11374;COMBINING GRANTHA LETTER PA;Mn;230;NSM;;;;;N;;;;; +11380;TULU-TIGALARI LETTER A;Lo;0;L;;;;;N;;;;; +11381;TULU-TIGALARI LETTER AA;Lo;0;L;;;;;N;;;;; +11382;TULU-TIGALARI LETTER I;Lo;0;L;;;;;N;;;;; +11383;TULU-TIGALARI LETTER II;Lo;0;L;11382 113C9;;;;N;;;;; +11384;TULU-TIGALARI LETTER U;Lo;0;L;;;;;N;;;;; +11385;TULU-TIGALARI LETTER UU;Lo;0;L;11384 113BB;;;;N;;;;; +11386;TULU-TIGALARI LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; +11387;TULU-TIGALARI LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; +11388;TULU-TIGALARI LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; +11389;TULU-TIGALARI LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; +1138B;TULU-TIGALARI LETTER EE;Lo;0;L;;;;;N;;;;; +1138E;TULU-TIGALARI LETTER AI;Lo;0;L;1138B 113C2;;;;N;;;;; +11390;TULU-TIGALARI LETTER OO;Lo;0;L;;;;;N;;;;; +11391;TULU-TIGALARI LETTER AU;Lo;0;L;11390 113C9;;;;N;;;;; +11392;TULU-TIGALARI LETTER KA;Lo;0;L;;;;;N;;;;; +11393;TULU-TIGALARI LETTER KHA;Lo;0;L;;;;;N;;;;; +11394;TULU-TIGALARI LETTER GA;Lo;0;L;;;;;N;;;;; +11395;TULU-TIGALARI LETTER GHA;Lo;0;L;;;;;N;;;;; +11396;TULU-TIGALARI LETTER NGA;Lo;0;L;;;;;N;;;;; +11397;TULU-TIGALARI LETTER CA;Lo;0;L;;;;;N;;;;; +11398;TULU-TIGALARI LETTER CHA;Lo;0;L;;;;;N;;;;; +11399;TULU-TIGALARI LETTER JA;Lo;0;L;;;;;N;;;;; +1139A;TULU-TIGALARI LETTER JHA;Lo;0;L;;;;;N;;;;; +1139B;TULU-TIGALARI LETTER NYA;Lo;0;L;;;;;N;;;;; +1139C;TULU-TIGALARI LETTER TTA;Lo;0;L;;;;;N;;;;; +1139D;TULU-TIGALARI LETTER TTHA;Lo;0;L;;;;;N;;;;; +1139E;TULU-TIGALARI LETTER DDA;Lo;0;L;;;;;N;;;;; +1139F;TULU-TIGALARI LETTER DDHA;Lo;0;L;;;;;N;;;;; +113A0;TULU-TIGALARI LETTER NNA;Lo;0;L;;;;;N;;;;; +113A1;TULU-TIGALARI LETTER TA;Lo;0;L;;;;;N;;;;; +113A2;TULU-TIGALARI LETTER THA;Lo;0;L;;;;;N;;;;; +113A3;TULU-TIGALARI LETTER DA;Lo;0;L;;;;;N;;;;; +113A4;TULU-TIGALARI LETTER DHA;Lo;0;L;;;;;N;;;;; +113A5;TULU-TIGALARI LETTER NA;Lo;0;L;;;;;N;;;;; +113A6;TULU-TIGALARI LETTER PA;Lo;0;L;;;;;N;;;;; +113A7;TULU-TIGALARI LETTER PHA;Lo;0;L;;;;;N;;;;; +113A8;TULU-TIGALARI LETTER BA;Lo;0;L;;;;;N;;;;; +113A9;TULU-TIGALARI LETTER BHA;Lo;0;L;;;;;N;;;;; +113AA;TULU-TIGALARI LETTER MA;Lo;0;L;;;;;N;;;;; +113AB;TULU-TIGALARI LETTER YA;Lo;0;L;;;;;N;;;;; +113AC;TULU-TIGALARI LETTER RA;Lo;0;L;;;;;N;;;;; +113AD;TULU-TIGALARI LETTER LA;Lo;0;L;;;;;N;;;;; +113AE;TULU-TIGALARI LETTER VA;Lo;0;L;;;;;N;;;;; +113AF;TULU-TIGALARI LETTER SHA;Lo;0;L;;;;;N;;;;; +113B0;TULU-TIGALARI LETTER SSA;Lo;0;L;;;;;N;;;;; +113B1;TULU-TIGALARI LETTER SA;Lo;0;L;;;;;N;;;;; +113B2;TULU-TIGALARI LETTER HA;Lo;0;L;;;;;N;;;;; +113B3;TULU-TIGALARI LETTER LLA;Lo;0;L;;;;;N;;;;; +113B4;TULU-TIGALARI LETTER RRA;Lo;0;L;;;;;N;;;;; +113B5;TULU-TIGALARI LETTER LLLA;Lo;0;L;;;;;N;;;;; +113B7;TULU-TIGALARI SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; +113B8;TULU-TIGALARI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; +113B9;TULU-TIGALARI VOWEL SIGN I;Mc;0;L;;;;;N;;;;; +113BA;TULU-TIGALARI VOWEL SIGN II;Mc;0;L;;;;;N;;;;; +113BB;TULU-TIGALARI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; +113BC;TULU-TIGALARI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; +113BD;TULU-TIGALARI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; +113BE;TULU-TIGALARI VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;; +113BF;TULU-TIGALARI VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; +113C0;TULU-TIGALARI VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; +113C2;TULU-TIGALARI VOWEL SIGN EE;Mc;0;L;;;;;N;;;;; +113C5;TULU-TIGALARI VOWEL SIGN AI;Mc;0;L;113C2 113C2;;;;N;;;;; +113C7;TULU-TIGALARI VOWEL SIGN OO;Mc;0;L;113C2 113B8;;;;N;;;;; +113C8;TULU-TIGALARI VOWEL SIGN AU;Mc;0;L;113C2 113C9;;;;N;;;;; +113C9;TULU-TIGALARI AU LENGTH MARK;Mc;0;L;;;;;N;;;;; +113CA;TULU-TIGALARI SIGN CANDRA ANUNASIKA;Mc;0;L;;;;;N;;;;; +113CC;TULU-TIGALARI SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; +113CD;TULU-TIGALARI SIGN VISARGA;Mc;0;L;;;;;N;;;;; +113CE;TULU-TIGALARI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; +113CF;TULU-TIGALARI SIGN LOOPED VIRAMA;Mc;9;L;;;;;N;;;;; +113D0;TULU-TIGALARI CONJOINER;Mn;9;NSM;;;;;N;;;;; +113D1;TULU-TIGALARI REPHA;Lo;0;L;;;;;N;;;;; +113D2;TULU-TIGALARI GEMINATION MARK;Mn;0;NSM;;;;;N;;;;; +113D3;TULU-TIGALARI SIGN PLUTA;Lo;0;L;;;;;N;;;;; +113D4;TULU-TIGALARI DANDA;Po;0;L;;;;;N;;;;; +113D5;TULU-TIGALARI DOUBLE DANDA;Po;0;L;;;;;N;;;;; +113D7;TULU-TIGALARI SIGN OM PUSHPIKA;Po;0;L;;;;;N;;;;; +113D8;TULU-TIGALARI SIGN SHRII PUSHPIKA;Po;0;L;;;;;N;;;;; +113E1;TULU-TIGALARI VEDIC TONE SVARITA;Mn;0;NSM;;;;;N;;;;; +113E2;TULU-TIGALARI VEDIC TONE ANUDATTA;Mn;0;NSM;;;;;N;;;;; 11400;NEWA LETTER A;Lo;0;L;;;;;N;;;;; 11401;NEWA LETTER AA;Lo;0;L;;;;;N;;;;; 11402;NEWA LETTER I;Lo;0;L;;;;;N;;;;; @@ -20695,6 +20917,26 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 116C7;TAKRI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; 116C8;TAKRI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; 116C9;TAKRI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +116D0;MYANMAR PAO DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +116D1;MYANMAR PAO DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +116D2;MYANMAR PAO DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +116D3;MYANMAR PAO DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +116D4;MYANMAR PAO DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +116D5;MYANMAR PAO DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +116D6;MYANMAR PAO DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +116D7;MYANMAR PAO DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +116D8;MYANMAR PAO DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +116D9;MYANMAR PAO DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +116DA;MYANMAR EASTERN PWO KAREN DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +116DB;MYANMAR EASTERN PWO KAREN DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +116DC;MYANMAR EASTERN PWO KAREN DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +116DD;MYANMAR EASTERN PWO KAREN DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +116DE;MYANMAR EASTERN PWO KAREN DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +116DF;MYANMAR EASTERN PWO KAREN DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +116E0;MYANMAR EASTERN PWO KAREN DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +116E1;MYANMAR EASTERN PWO KAREN DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +116E2;MYANMAR EASTERN PWO KAREN DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +116E3;MYANMAR EASTERN PWO KAREN DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; 11700;AHOM LETTER KA;Lo;0;L;;;;;N;;;;; 11701;AHOM LETTER KHA;Lo;0;L;;;;;N;;;;; 11702;AHOM LETTER NGA;Lo;0;L;;;;;N;;;;; @@ -20723,7 +20965,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 11719;AHOM LETTER JHA;Lo;0;L;;;;;N;;;;; 1171A;AHOM LETTER ALTERNATE BA;Lo;0;L;;;;;N;;;;; 1171D;AHOM CONSONANT SIGN MEDIAL LA;Mn;0;NSM;;;;;N;;;;; -1171E;AHOM CONSONANT SIGN MEDIAL RA;Mn;0;NSM;;;;;N;;;;; +1171E;AHOM CONSONANT SIGN MEDIAL RA;Mc;0;L;;;;;N;;;;; 1171F;AHOM CONSONANT SIGN MEDIAL LIGATING RA;Mn;0;NSM;;;;;N;;;;; 11720;AHOM VOWEL SIGN A;Mc;0;L;;;;;N;;;;; 11721;AHOM VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; @@ -21279,6 +21521,50 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 11B07;DEVANAGARI SIGN WESTERN NINE-LIKE BHALE;Po;0;L;;;;;N;;;;; 11B08;DEVANAGARI SIGN REVERSED NINE-LIKE BHALE;Po;0;L;;;;;N;;;;; 11B09;DEVANAGARI SIGN MINDU;Po;0;L;;;;;N;;;;; +11BC0;SUNUWAR LETTER DEVI;Lo;0;L;;;;;N;;;;; +11BC1;SUNUWAR LETTER TASLA;Lo;0;L;;;;;N;;;;; +11BC2;SUNUWAR LETTER EKO;Lo;0;L;;;;;N;;;;; +11BC3;SUNUWAR LETTER IMAR;Lo;0;L;;;;;N;;;;; +11BC4;SUNUWAR LETTER REU;Lo;0;L;;;;;N;;;;; +11BC5;SUNUWAR LETTER UTTHI;Lo;0;L;;;;;N;;;;; +11BC6;SUNUWAR LETTER KIK;Lo;0;L;;;;;N;;;;; +11BC7;SUNUWAR LETTER MA;Lo;0;L;;;;;N;;;;; +11BC8;SUNUWAR LETTER APPHO;Lo;0;L;;;;;N;;;;; +11BC9;SUNUWAR LETTER PIP;Lo;0;L;;;;;N;;;;; +11BCA;SUNUWAR LETTER GIL;Lo;0;L;;;;;N;;;;; +11BCB;SUNUWAR LETTER HAMSO;Lo;0;L;;;;;N;;;;; +11BCC;SUNUWAR LETTER CARMI;Lo;0;L;;;;;N;;;;; +11BCD;SUNUWAR LETTER NAH;Lo;0;L;;;;;N;;;;; +11BCE;SUNUWAR LETTER BUR;Lo;0;L;;;;;N;;;;; +11BCF;SUNUWAR LETTER JYAH;Lo;0;L;;;;;N;;;;; +11BD0;SUNUWAR LETTER LOACHA;Lo;0;L;;;;;N;;;;; +11BD1;SUNUWAR LETTER OTTHI;Lo;0;L;;;;;N;;;;; +11BD2;SUNUWAR LETTER SHYELE;Lo;0;L;;;;;N;;;;; +11BD3;SUNUWAR LETTER VARCA;Lo;0;L;;;;;N;;;;; +11BD4;SUNUWAR LETTER YAT;Lo;0;L;;;;;N;;;;; +11BD5;SUNUWAR LETTER AVA;Lo;0;L;;;;;N;;;;; +11BD6;SUNUWAR LETTER AAL;Lo;0;L;;;;;N;;;;; +11BD7;SUNUWAR LETTER DONGA;Lo;0;L;;;;;N;;;;; +11BD8;SUNUWAR LETTER THARI;Lo;0;L;;;;;N;;;;; +11BD9;SUNUWAR LETTER PHAR;Lo;0;L;;;;;N;;;;; +11BDA;SUNUWAR LETTER NGAR;Lo;0;L;;;;;N;;;;; +11BDB;SUNUWAR LETTER KHA;Lo;0;L;;;;;N;;;;; +11BDC;SUNUWAR LETTER SHYER;Lo;0;L;;;;;N;;;;; +11BDD;SUNUWAR LETTER CHELAP;Lo;0;L;;;;;N;;;;; +11BDE;SUNUWAR LETTER TENTU;Lo;0;L;;;;;N;;;;; +11BDF;SUNUWAR LETTER THELE;Lo;0;L;;;;;N;;;;; +11BE0;SUNUWAR LETTER KLOKO;Lo;0;L;;;;;N;;;;; +11BE1;SUNUWAR SIGN PVO;Po;0;L;;;;;N;;;;; +11BF0;SUNUWAR DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +11BF1;SUNUWAR DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +11BF2;SUNUWAR DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +11BF3;SUNUWAR DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +11BF4;SUNUWAR DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +11BF5;SUNUWAR DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +11BF6;SUNUWAR DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +11BF7;SUNUWAR DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +11BF8;SUNUWAR DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +11BF9;SUNUWAR DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; 11C00;BHAIKSUKI LETTER A;Lo;0;L;;;;;N;;;;; 11C01;BHAIKSUKI LETTER AA;Lo;0;L;;;;;N;;;;; 11C02;BHAIKSUKI LETTER I;Lo;0;L;;;;;N;;;;; @@ -21693,6 +21979,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 11F57;KAWI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; 11F58;KAWI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; 11F59;KAWI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +11F5A;KAWI SIGN NUKTA;Mn;0;NSM;;;;;N;;;;; 11FB0;LISU LETTER YHA;Lo;0;L;;;;;N;;;;; 11FC0;TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH;No;0;L;;;;1/320;N;;;;; 11FC1;TAMIL FRACTION ONE ONE-HUNDRED-AND-SIXTIETH;No;0;L;;;;1/160;N;;;;; @@ -24188,6 +24475,4001 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 13453;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP AND END;Mn;0;NSM;;;;;N;;;;; 13454;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT BOTTOM AND END;Mn;0;NSM;;;;;N;;;;; 13455;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED;Mn;0;NSM;;;;;N;;;;; +13460;EGYPTIAN HIEROGLYPH-13460;Lo;0;L;;;;;N;;;;; +13461;EGYPTIAN HIEROGLYPH-13461;Lo;0;L;;;;;N;;;;; +13462;EGYPTIAN HIEROGLYPH-13462;Lo;0;L;;;;;N;;;;; +13463;EGYPTIAN HIEROGLYPH-13463;Lo;0;L;;;;;N;;;;; +13464;EGYPTIAN HIEROGLYPH-13464;Lo;0;L;;;;;N;;;;; +13465;EGYPTIAN HIEROGLYPH-13465;Lo;0;L;;;;;N;;;;; +13466;EGYPTIAN HIEROGLYPH-13466;Lo;0;L;;;;;N;;;;; +13467;EGYPTIAN HIEROGLYPH-13467;Lo;0;L;;;;;N;;;;; +13468;EGYPTIAN HIEROGLYPH-13468;Lo;0;L;;;;;N;;;;; +13469;EGYPTIAN HIEROGLYPH-13469;Lo;0;L;;;;;N;;;;; +1346A;EGYPTIAN HIEROGLYPH-1346A;Lo;0;L;;;;;N;;;;; +1346B;EGYPTIAN HIEROGLYPH-1346B;Lo;0;L;;;;;N;;;;; +1346C;EGYPTIAN HIEROGLYPH-1346C;Lo;0;L;;;;;N;;;;; +1346D;EGYPTIAN HIEROGLYPH-1346D;Lo;0;L;;;;;N;;;;; +1346E;EGYPTIAN HIEROGLYPH-1346E;Lo;0;L;;;;;N;;;;; +1346F;EGYPTIAN HIEROGLYPH-1346F;Lo;0;L;;;;;N;;;;; +13470;EGYPTIAN HIEROGLYPH-13470;Lo;0;L;;;;;N;;;;; +13471;EGYPTIAN HIEROGLYPH-13471;Lo;0;L;;;;;N;;;;; +13472;EGYPTIAN HIEROGLYPH-13472;Lo;0;L;;;;;N;;;;; +13473;EGYPTIAN HIEROGLYPH-13473;Lo;0;L;;;;;N;;;;; +13474;EGYPTIAN HIEROGLYPH-13474;Lo;0;L;;;;;N;;;;; +13475;EGYPTIAN HIEROGLYPH-13475;Lo;0;L;;;;;N;;;;; +13476;EGYPTIAN HIEROGLYPH-13476;Lo;0;L;;;;;N;;;;; +13477;EGYPTIAN HIEROGLYPH-13477;Lo;0;L;;;;;N;;;;; +13478;EGYPTIAN HIEROGLYPH-13478;Lo;0;L;;;;;N;;;;; +13479;EGYPTIAN HIEROGLYPH-13479;Lo;0;L;;;;;N;;;;; +1347A;EGYPTIAN HIEROGLYPH-1347A;Lo;0;L;;;;;N;;;;; +1347B;EGYPTIAN HIEROGLYPH-1347B;Lo;0;L;;;;;N;;;;; +1347C;EGYPTIAN HIEROGLYPH-1347C;Lo;0;L;;;;;N;;;;; +1347D;EGYPTIAN HIEROGLYPH-1347D;Lo;0;L;;;;;N;;;;; +1347E;EGYPTIAN HIEROGLYPH-1347E;Lo;0;L;;;;;N;;;;; +1347F;EGYPTIAN HIEROGLYPH-1347F;Lo;0;L;;;;;N;;;;; +13480;EGYPTIAN HIEROGLYPH-13480;Lo;0;L;;;;;N;;;;; +13481;EGYPTIAN HIEROGLYPH-13481;Lo;0;L;;;;;N;;;;; +13482;EGYPTIAN HIEROGLYPH-13482;Lo;0;L;;;;;N;;;;; +13483;EGYPTIAN HIEROGLYPH-13483;Lo;0;L;;;;;N;;;;; +13484;EGYPTIAN HIEROGLYPH-13484;Lo;0;L;;;;;N;;;;; +13485;EGYPTIAN HIEROGLYPH-13485;Lo;0;L;;;;;N;;;;; +13486;EGYPTIAN HIEROGLYPH-13486;Lo;0;L;;;;;N;;;;; +13487;EGYPTIAN HIEROGLYPH-13487;Lo;0;L;;;;;N;;;;; +13488;EGYPTIAN HIEROGLYPH-13488;Lo;0;L;;;;;N;;;;; +13489;EGYPTIAN HIEROGLYPH-13489;Lo;0;L;;;;;N;;;;; +1348A;EGYPTIAN HIEROGLYPH-1348A;Lo;0;L;;;;;N;;;;; +1348B;EGYPTIAN HIEROGLYPH-1348B;Lo;0;L;;;;;N;;;;; +1348C;EGYPTIAN HIEROGLYPH-1348C;Lo;0;L;;;;;N;;;;; +1348D;EGYPTIAN HIEROGLYPH-1348D;Lo;0;L;;;;;N;;;;; +1348E;EGYPTIAN HIEROGLYPH-1348E;Lo;0;L;;;;;N;;;;; +1348F;EGYPTIAN HIEROGLYPH-1348F;Lo;0;L;;;;;N;;;;; +13490;EGYPTIAN HIEROGLYPH-13490;Lo;0;L;;;;;N;;;;; +13491;EGYPTIAN HIEROGLYPH-13491;Lo;0;L;;;;;N;;;;; +13492;EGYPTIAN HIEROGLYPH-13492;Lo;0;L;;;;;N;;;;; +13493;EGYPTIAN HIEROGLYPH-13493;Lo;0;L;;;;;N;;;;; +13494;EGYPTIAN HIEROGLYPH-13494;Lo;0;L;;;;;N;;;;; +13495;EGYPTIAN HIEROGLYPH-13495;Lo;0;L;;;;;N;;;;; +13496;EGYPTIAN HIEROGLYPH-13496;Lo;0;L;;;;;N;;;;; +13497;EGYPTIAN HIEROGLYPH-13497;Lo;0;L;;;;;N;;;;; +13498;EGYPTIAN HIEROGLYPH-13498;Lo;0;L;;;;;N;;;;; +13499;EGYPTIAN HIEROGLYPH-13499;Lo;0;L;;;;;N;;;;; +1349A;EGYPTIAN HIEROGLYPH-1349A;Lo;0;L;;;;;N;;;;; +1349B;EGYPTIAN HIEROGLYPH-1349B;Lo;0;L;;;;;N;;;;; +1349C;EGYPTIAN HIEROGLYPH-1349C;Lo;0;L;;;;;N;;;;; +1349D;EGYPTIAN HIEROGLYPH-1349D;Lo;0;L;;;;;N;;;;; +1349E;EGYPTIAN HIEROGLYPH-1349E;Lo;0;L;;;;;N;;;;; +1349F;EGYPTIAN HIEROGLYPH-1349F;Lo;0;L;;;;;N;;;;; +134A0;EGYPTIAN HIEROGLYPH-134A0;Lo;0;L;;;;;N;;;;; +134A1;EGYPTIAN HIEROGLYPH-134A1;Lo;0;L;;;;;N;;;;; +134A2;EGYPTIAN HIEROGLYPH-134A2;Lo;0;L;;;;;N;;;;; +134A3;EGYPTIAN HIEROGLYPH-134A3;Lo;0;L;;;;;N;;;;; +134A4;EGYPTIAN HIEROGLYPH-134A4;Lo;0;L;;;;;N;;;;; +134A5;EGYPTIAN HIEROGLYPH-134A5;Lo;0;L;;;;;N;;;;; +134A6;EGYPTIAN HIEROGLYPH-134A6;Lo;0;L;;;;;N;;;;; +134A7;EGYPTIAN HIEROGLYPH-134A7;Lo;0;L;;;;;N;;;;; +134A8;EGYPTIAN HIEROGLYPH-134A8;Lo;0;L;;;;;N;;;;; +134A9;EGYPTIAN HIEROGLYPH-134A9;Lo;0;L;;;;;N;;;;; +134AA;EGYPTIAN HIEROGLYPH-134AA;Lo;0;L;;;;;N;;;;; +134AB;EGYPTIAN HIEROGLYPH-134AB;Lo;0;L;;;;;N;;;;; +134AC;EGYPTIAN HIEROGLYPH-134AC;Lo;0;L;;;;;N;;;;; +134AD;EGYPTIAN HIEROGLYPH-134AD;Lo;0;L;;;;;N;;;;; +134AE;EGYPTIAN HIEROGLYPH-134AE;Lo;0;L;;;;;N;;;;; +134AF;EGYPTIAN HIEROGLYPH-134AF;Lo;0;L;;;;;N;;;;; +134B0;EGYPTIAN HIEROGLYPH-134B0;Lo;0;L;;;;;N;;;;; +134B1;EGYPTIAN HIEROGLYPH-134B1;Lo;0;L;;;;;N;;;;; +134B2;EGYPTIAN HIEROGLYPH-134B2;Lo;0;L;;;;;N;;;;; +134B3;EGYPTIAN HIEROGLYPH-134B3;Lo;0;L;;;;;N;;;;; +134B4;EGYPTIAN HIEROGLYPH-134B4;Lo;0;L;;;;;N;;;;; +134B5;EGYPTIAN HIEROGLYPH-134B5;Lo;0;L;;;;;N;;;;; +134B6;EGYPTIAN HIEROGLYPH-134B6;Lo;0;L;;;;;N;;;;; +134B7;EGYPTIAN HIEROGLYPH-134B7;Lo;0;L;;;;;N;;;;; +134B8;EGYPTIAN HIEROGLYPH-134B8;Lo;0;L;;;;;N;;;;; +134B9;EGYPTIAN HIEROGLYPH-134B9;Lo;0;L;;;;;N;;;;; +134BA;EGYPTIAN HIEROGLYPH-134BA;Lo;0;L;;;;;N;;;;; +134BB;EGYPTIAN HIEROGLYPH-134BB;Lo;0;L;;;;;N;;;;; +134BC;EGYPTIAN HIEROGLYPH-134BC;Lo;0;L;;;;;N;;;;; +134BD;EGYPTIAN HIEROGLYPH-134BD;Lo;0;L;;;;;N;;;;; +134BE;EGYPTIAN HIEROGLYPH-134BE;Lo;0;L;;;;;N;;;;; +134BF;EGYPTIAN HIEROGLYPH-134BF;Lo;0;L;;;;;N;;;;; +134C0;EGYPTIAN HIEROGLYPH-134C0;Lo;0;L;;;;;N;;;;; +134C1;EGYPTIAN HIEROGLYPH-134C1;Lo;0;L;;;;;N;;;;; +134C2;EGYPTIAN HIEROGLYPH-134C2;Lo;0;L;;;;;N;;;;; +134C3;EGYPTIAN HIEROGLYPH-134C3;Lo;0;L;;;;;N;;;;; +134C4;EGYPTIAN HIEROGLYPH-134C4;Lo;0;L;;;;;N;;;;; +134C5;EGYPTIAN HIEROGLYPH-134C5;Lo;0;L;;;;;N;;;;; +134C6;EGYPTIAN HIEROGLYPH-134C6;Lo;0;L;;;;;N;;;;; +134C7;EGYPTIAN HIEROGLYPH-134C7;Lo;0;L;;;;;N;;;;; +134C8;EGYPTIAN HIEROGLYPH-134C8;Lo;0;L;;;;;N;;;;; +134C9;EGYPTIAN HIEROGLYPH-134C9;Lo;0;L;;;;;N;;;;; +134CA;EGYPTIAN HIEROGLYPH-134CA;Lo;0;L;;;;;N;;;;; +134CB;EGYPTIAN HIEROGLYPH-134CB;Lo;0;L;;;;;N;;;;; +134CC;EGYPTIAN HIEROGLYPH-134CC;Lo;0;L;;;;;N;;;;; +134CD;EGYPTIAN HIEROGLYPH-134CD;Lo;0;L;;;;;N;;;;; +134CE;EGYPTIAN HIEROGLYPH-134CE;Lo;0;L;;;;;N;;;;; +134CF;EGYPTIAN HIEROGLYPH-134CF;Lo;0;L;;;;;N;;;;; +134D0;EGYPTIAN HIEROGLYPH-134D0;Lo;0;L;;;;;N;;;;; +134D1;EGYPTIAN HIEROGLYPH-134D1;Lo;0;L;;;;;N;;;;; +134D2;EGYPTIAN HIEROGLYPH-134D2;Lo;0;L;;;;;N;;;;; +134D3;EGYPTIAN HIEROGLYPH-134D3;Lo;0;L;;;;;N;;;;; +134D4;EGYPTIAN HIEROGLYPH-134D4;Lo;0;L;;;;;N;;;;; +134D5;EGYPTIAN HIEROGLYPH-134D5;Lo;0;L;;;;;N;;;;; +134D6;EGYPTIAN HIEROGLYPH-134D6;Lo;0;L;;;;;N;;;;; +134D7;EGYPTIAN HIEROGLYPH-134D7;Lo;0;L;;;;;N;;;;; +134D8;EGYPTIAN HIEROGLYPH-134D8;Lo;0;L;;;;;N;;;;; +134D9;EGYPTIAN HIEROGLYPH-134D9;Lo;0;L;;;;;N;;;;; +134DA;EGYPTIAN HIEROGLYPH-134DA;Lo;0;L;;;;;N;;;;; +134DB;EGYPTIAN HIEROGLYPH-134DB;Lo;0;L;;;;;N;;;;; +134DC;EGYPTIAN HIEROGLYPH-134DC;Lo;0;L;;;;;N;;;;; +134DD;EGYPTIAN HIEROGLYPH-134DD;Lo;0;L;;;;;N;;;;; +134DE;EGYPTIAN HIEROGLYPH-134DE;Lo;0;L;;;;;N;;;;; +134DF;EGYPTIAN HIEROGLYPH-134DF;Lo;0;L;;;;;N;;;;; +134E0;EGYPTIAN HIEROGLYPH-134E0;Lo;0;L;;;;;N;;;;; +134E1;EGYPTIAN HIEROGLYPH-134E1;Lo;0;L;;;;;N;;;;; +134E2;EGYPTIAN HIEROGLYPH-134E2;Lo;0;L;;;;;N;;;;; +134E3;EGYPTIAN HIEROGLYPH-134E3;Lo;0;L;;;;;N;;;;; +134E4;EGYPTIAN HIEROGLYPH-134E4;Lo;0;L;;;;;N;;;;; +134E5;EGYPTIAN HIEROGLYPH-134E5;Lo;0;L;;;;;N;;;;; +134E6;EGYPTIAN HIEROGLYPH-134E6;Lo;0;L;;;;;N;;;;; +134E7;EGYPTIAN HIEROGLYPH-134E7;Lo;0;L;;;;;N;;;;; +134E8;EGYPTIAN HIEROGLYPH-134E8;Lo;0;L;;;;;N;;;;; +134E9;EGYPTIAN HIEROGLYPH-134E9;Lo;0;L;;;;;N;;;;; +134EA;EGYPTIAN HIEROGLYPH-134EA;Lo;0;L;;;;;N;;;;; +134EB;EGYPTIAN HIEROGLYPH-134EB;Lo;0;L;;;;;N;;;;; +134EC;EGYPTIAN HIEROGLYPH-134EC;Lo;0;L;;;;;N;;;;; +134ED;EGYPTIAN HIEROGLYPH-134ED;Lo;0;L;;;;;N;;;;; +134EE;EGYPTIAN HIEROGLYPH-134EE;Lo;0;L;;;;;N;;;;; +134EF;EGYPTIAN HIEROGLYPH-134EF;Lo;0;L;;;;;N;;;;; +134F0;EGYPTIAN HIEROGLYPH-134F0;Lo;0;L;;;;;N;;;;; +134F1;EGYPTIAN HIEROGLYPH-134F1;Lo;0;L;;;;;N;;;;; +134F2;EGYPTIAN HIEROGLYPH-134F2;Lo;0;L;;;;;N;;;;; +134F3;EGYPTIAN HIEROGLYPH-134F3;Lo;0;L;;;;;N;;;;; +134F4;EGYPTIAN HIEROGLYPH-134F4;Lo;0;L;;;;;N;;;;; +134F5;EGYPTIAN HIEROGLYPH-134F5;Lo;0;L;;;;;N;;;;; +134F6;EGYPTIAN HIEROGLYPH-134F6;Lo;0;L;;;;;N;;;;; +134F7;EGYPTIAN HIEROGLYPH-134F7;Lo;0;L;;;;;N;;;;; +134F8;EGYPTIAN HIEROGLYPH-134F8;Lo;0;L;;;;;N;;;;; +134F9;EGYPTIAN HIEROGLYPH-134F9;Lo;0;L;;;;;N;;;;; +134FA;EGYPTIAN HIEROGLYPH-134FA;Lo;0;L;;;;;N;;;;; +134FB;EGYPTIAN HIEROGLYPH-134FB;Lo;0;L;;;;;N;;;;; +134FC;EGYPTIAN HIEROGLYPH-134FC;Lo;0;L;;;;;N;;;;; +134FD;EGYPTIAN HIEROGLYPH-134FD;Lo;0;L;;;;;N;;;;; +134FE;EGYPTIAN HIEROGLYPH-134FE;Lo;0;L;;;;;N;;;;; +134FF;EGYPTIAN HIEROGLYPH-134FF;Lo;0;L;;;;;N;;;;; +13500;EGYPTIAN HIEROGLYPH-13500;Lo;0;L;;;;;N;;;;; +13501;EGYPTIAN HIEROGLYPH-13501;Lo;0;L;;;;;N;;;;; +13502;EGYPTIAN HIEROGLYPH-13502;Lo;0;L;;;;;N;;;;; +13503;EGYPTIAN HIEROGLYPH-13503;Lo;0;L;;;;;N;;;;; +13504;EGYPTIAN HIEROGLYPH-13504;Lo;0;L;;;;;N;;;;; +13505;EGYPTIAN HIEROGLYPH-13505;Lo;0;L;;;;;N;;;;; +13506;EGYPTIAN HIEROGLYPH-13506;Lo;0;L;;;;;N;;;;; +13507;EGYPTIAN HIEROGLYPH-13507;Lo;0;L;;;;;N;;;;; +13508;EGYPTIAN HIEROGLYPH-13508;Lo;0;L;;;;;N;;;;; +13509;EGYPTIAN HIEROGLYPH-13509;Lo;0;L;;;;;N;;;;; +1350A;EGYPTIAN HIEROGLYPH-1350A;Lo;0;L;;;;;N;;;;; +1350B;EGYPTIAN HIEROGLYPH-1350B;Lo;0;L;;;;;N;;;;; +1350C;EGYPTIAN HIEROGLYPH-1350C;Lo;0;L;;;;;N;;;;; +1350D;EGYPTIAN HIEROGLYPH-1350D;Lo;0;L;;;;;N;;;;; +1350E;EGYPTIAN HIEROGLYPH-1350E;Lo;0;L;;;;;N;;;;; +1350F;EGYPTIAN HIEROGLYPH-1350F;Lo;0;L;;;;;N;;;;; +13510;EGYPTIAN HIEROGLYPH-13510;Lo;0;L;;;;;N;;;;; +13511;EGYPTIAN HIEROGLYPH-13511;Lo;0;L;;;;;N;;;;; +13512;EGYPTIAN HIEROGLYPH-13512;Lo;0;L;;;;;N;;;;; +13513;EGYPTIAN HIEROGLYPH-13513;Lo;0;L;;;;;N;;;;; +13514;EGYPTIAN HIEROGLYPH-13514;Lo;0;L;;;;;N;;;;; +13515;EGYPTIAN HIEROGLYPH-13515;Lo;0;L;;;;;N;;;;; +13516;EGYPTIAN HIEROGLYPH-13516;Lo;0;L;;;;;N;;;;; +13517;EGYPTIAN HIEROGLYPH-13517;Lo;0;L;;;;;N;;;;; +13518;EGYPTIAN HIEROGLYPH-13518;Lo;0;L;;;;;N;;;;; +13519;EGYPTIAN HIEROGLYPH-13519;Lo;0;L;;;;;N;;;;; +1351A;EGYPTIAN HIEROGLYPH-1351A;Lo;0;L;;;;;N;;;;; +1351B;EGYPTIAN HIEROGLYPH-1351B;Lo;0;L;;;;;N;;;;; +1351C;EGYPTIAN HIEROGLYPH-1351C;Lo;0;L;;;;;N;;;;; +1351D;EGYPTIAN HIEROGLYPH-1351D;Lo;0;L;;;;;N;;;;; +1351E;EGYPTIAN HIEROGLYPH-1351E;Lo;0;L;;;;;N;;;;; +1351F;EGYPTIAN HIEROGLYPH-1351F;Lo;0;L;;;;;N;;;;; +13520;EGYPTIAN HIEROGLYPH-13520;Lo;0;L;;;;;N;;;;; +13521;EGYPTIAN HIEROGLYPH-13521;Lo;0;L;;;;;N;;;;; +13522;EGYPTIAN HIEROGLYPH-13522;Lo;0;L;;;;;N;;;;; +13523;EGYPTIAN HIEROGLYPH-13523;Lo;0;L;;;;;N;;;;; +13524;EGYPTIAN HIEROGLYPH-13524;Lo;0;L;;;;;N;;;;; +13525;EGYPTIAN HIEROGLYPH-13525;Lo;0;L;;;;;N;;;;; +13526;EGYPTIAN HIEROGLYPH-13526;Lo;0;L;;;;;N;;;;; +13527;EGYPTIAN HIEROGLYPH-13527;Lo;0;L;;;;;N;;;;; +13528;EGYPTIAN HIEROGLYPH-13528;Lo;0;L;;;;;N;;;;; +13529;EGYPTIAN HIEROGLYPH-13529;Lo;0;L;;;;;N;;;;; +1352A;EGYPTIAN HIEROGLYPH-1352A;Lo;0;L;;;;;N;;;;; +1352B;EGYPTIAN HIEROGLYPH-1352B;Lo;0;L;;;;;N;;;;; +1352C;EGYPTIAN HIEROGLYPH-1352C;Lo;0;L;;;;;N;;;;; +1352D;EGYPTIAN HIEROGLYPH-1352D;Lo;0;L;;;;;N;;;;; +1352E;EGYPTIAN HIEROGLYPH-1352E;Lo;0;L;;;;;N;;;;; +1352F;EGYPTIAN HIEROGLYPH-1352F;Lo;0;L;;;;;N;;;;; +13530;EGYPTIAN HIEROGLYPH-13530;Lo;0;L;;;;;N;;;;; +13531;EGYPTIAN HIEROGLYPH-13531;Lo;0;L;;;;;N;;;;; +13532;EGYPTIAN HIEROGLYPH-13532;Lo;0;L;;;;;N;;;;; +13533;EGYPTIAN HIEROGLYPH-13533;Lo;0;L;;;;;N;;;;; +13534;EGYPTIAN HIEROGLYPH-13534;Lo;0;L;;;;;N;;;;; +13535;EGYPTIAN HIEROGLYPH-13535;Lo;0;L;;;;;N;;;;; +13536;EGYPTIAN HIEROGLYPH-13536;Lo;0;L;;;;;N;;;;; +13537;EGYPTIAN HIEROGLYPH-13537;Lo;0;L;;;;;N;;;;; +13538;EGYPTIAN HIEROGLYPH-13538;Lo;0;L;;;;;N;;;;; +13539;EGYPTIAN HIEROGLYPH-13539;Lo;0;L;;;;;N;;;;; +1353A;EGYPTIAN HIEROGLYPH-1353A;Lo;0;L;;;;;N;;;;; +1353B;EGYPTIAN HIEROGLYPH-1353B;Lo;0;L;;;;;N;;;;; +1353C;EGYPTIAN HIEROGLYPH-1353C;Lo;0;L;;;;;N;;;;; +1353D;EGYPTIAN HIEROGLYPH-1353D;Lo;0;L;;;;;N;;;;; +1353E;EGYPTIAN HIEROGLYPH-1353E;Lo;0;L;;;;;N;;;;; +1353F;EGYPTIAN HIEROGLYPH-1353F;Lo;0;L;;;;;N;;;;; +13540;EGYPTIAN HIEROGLYPH-13540;Lo;0;L;;;;;N;;;;; +13541;EGYPTIAN HIEROGLYPH-13541;Lo;0;L;;;;;N;;;;; +13542;EGYPTIAN HIEROGLYPH-13542;Lo;0;L;;;;;N;;;;; +13543;EGYPTIAN HIEROGLYPH-13543;Lo;0;L;;;;;N;;;;; +13544;EGYPTIAN HIEROGLYPH-13544;Lo;0;L;;;;;N;;;;; +13545;EGYPTIAN HIEROGLYPH-13545;Lo;0;L;;;;;N;;;;; +13546;EGYPTIAN HIEROGLYPH-13546;Lo;0;L;;;;;N;;;;; +13547;EGYPTIAN HIEROGLYPH-13547;Lo;0;L;;;;;N;;;;; +13548;EGYPTIAN HIEROGLYPH-13548;Lo;0;L;;;;;N;;;;; +13549;EGYPTIAN HIEROGLYPH-13549;Lo;0;L;;;;;N;;;;; +1354A;EGYPTIAN HIEROGLYPH-1354A;Lo;0;L;;;;;N;;;;; +1354B;EGYPTIAN HIEROGLYPH-1354B;Lo;0;L;;;;;N;;;;; +1354C;EGYPTIAN HIEROGLYPH-1354C;Lo;0;L;;;;;N;;;;; +1354D;EGYPTIAN HIEROGLYPH-1354D;Lo;0;L;;;;;N;;;;; +1354E;EGYPTIAN HIEROGLYPH-1354E;Lo;0;L;;;;;N;;;;; +1354F;EGYPTIAN HIEROGLYPH-1354F;Lo;0;L;;;;;N;;;;; +13550;EGYPTIAN HIEROGLYPH-13550;Lo;0;L;;;;;N;;;;; +13551;EGYPTIAN HIEROGLYPH-13551;Lo;0;L;;;;;N;;;;; +13552;EGYPTIAN HIEROGLYPH-13552;Lo;0;L;;;;;N;;;;; +13553;EGYPTIAN HIEROGLYPH-13553;Lo;0;L;;;;;N;;;;; +13554;EGYPTIAN HIEROGLYPH-13554;Lo;0;L;;;;;N;;;;; +13555;EGYPTIAN HIEROGLYPH-13555;Lo;0;L;;;;;N;;;;; +13556;EGYPTIAN HIEROGLYPH-13556;Lo;0;L;;;;;N;;;;; +13557;EGYPTIAN HIEROGLYPH-13557;Lo;0;L;;;;;N;;;;; +13558;EGYPTIAN HIEROGLYPH-13558;Lo;0;L;;;;;N;;;;; +13559;EGYPTIAN HIEROGLYPH-13559;Lo;0;L;;;;;N;;;;; +1355A;EGYPTIAN HIEROGLYPH-1355A;Lo;0;L;;;;;N;;;;; +1355B;EGYPTIAN HIEROGLYPH-1355B;Lo;0;L;;;;;N;;;;; +1355C;EGYPTIAN HIEROGLYPH-1355C;Lo;0;L;;;;;N;;;;; +1355D;EGYPTIAN HIEROGLYPH-1355D;Lo;0;L;;;;;N;;;;; +1355E;EGYPTIAN HIEROGLYPH-1355E;Lo;0;L;;;;;N;;;;; +1355F;EGYPTIAN HIEROGLYPH-1355F;Lo;0;L;;;;;N;;;;; +13560;EGYPTIAN HIEROGLYPH-13560;Lo;0;L;;;;;N;;;;; +13561;EGYPTIAN HIEROGLYPH-13561;Lo;0;L;;;;;N;;;;; +13562;EGYPTIAN HIEROGLYPH-13562;Lo;0;L;;;;;N;;;;; +13563;EGYPTIAN HIEROGLYPH-13563;Lo;0;L;;;;;N;;;;; +13564;EGYPTIAN HIEROGLYPH-13564;Lo;0;L;;;;;N;;;;; +13565;EGYPTIAN HIEROGLYPH-13565;Lo;0;L;;;;;N;;;;; +13566;EGYPTIAN HIEROGLYPH-13566;Lo;0;L;;;;;N;;;;; +13567;EGYPTIAN HIEROGLYPH-13567;Lo;0;L;;;;;N;;;;; +13568;EGYPTIAN HIEROGLYPH-13568;Lo;0;L;;;;;N;;;;; +13569;EGYPTIAN HIEROGLYPH-13569;Lo;0;L;;;;;N;;;;; +1356A;EGYPTIAN HIEROGLYPH-1356A;Lo;0;L;;;;;N;;;;; +1356B;EGYPTIAN HIEROGLYPH-1356B;Lo;0;L;;;;;N;;;;; +1356C;EGYPTIAN HIEROGLYPH-1356C;Lo;0;L;;;;;N;;;;; +1356D;EGYPTIAN HIEROGLYPH-1356D;Lo;0;L;;;;;N;;;;; +1356E;EGYPTIAN HIEROGLYPH-1356E;Lo;0;L;;;;;N;;;;; +1356F;EGYPTIAN HIEROGLYPH-1356F;Lo;0;L;;;;;N;;;;; +13570;EGYPTIAN HIEROGLYPH-13570;Lo;0;L;;;;;N;;;;; +13571;EGYPTIAN HIEROGLYPH-13571;Lo;0;L;;;;;N;;;;; +13572;EGYPTIAN HIEROGLYPH-13572;Lo;0;L;;;;;N;;;;; +13573;EGYPTIAN HIEROGLYPH-13573;Lo;0;L;;;;;N;;;;; +13574;EGYPTIAN HIEROGLYPH-13574;Lo;0;L;;;;;N;;;;; +13575;EGYPTIAN HIEROGLYPH-13575;Lo;0;L;;;;;N;;;;; +13576;EGYPTIAN HIEROGLYPH-13576;Lo;0;L;;;;;N;;;;; +13577;EGYPTIAN HIEROGLYPH-13577;Lo;0;L;;;;;N;;;;; +13578;EGYPTIAN HIEROGLYPH-13578;Lo;0;L;;;;;N;;;;; +13579;EGYPTIAN HIEROGLYPH-13579;Lo;0;L;;;;;N;;;;; +1357A;EGYPTIAN HIEROGLYPH-1357A;Lo;0;L;;;;;N;;;;; +1357B;EGYPTIAN HIEROGLYPH-1357B;Lo;0;L;;;;;N;;;;; +1357C;EGYPTIAN HIEROGLYPH-1357C;Lo;0;L;;;;;N;;;;; +1357D;EGYPTIAN HIEROGLYPH-1357D;Lo;0;L;;;;;N;;;;; +1357E;EGYPTIAN HIEROGLYPH-1357E;Lo;0;L;;;;;N;;;;; +1357F;EGYPTIAN HIEROGLYPH-1357F;Lo;0;L;;;;;N;;;;; +13580;EGYPTIAN HIEROGLYPH-13580;Lo;0;L;;;;;N;;;;; +13581;EGYPTIAN HIEROGLYPH-13581;Lo;0;L;;;;;N;;;;; +13582;EGYPTIAN HIEROGLYPH-13582;Lo;0;L;;;;;N;;;;; +13583;EGYPTIAN HIEROGLYPH-13583;Lo;0;L;;;;;N;;;;; +13584;EGYPTIAN HIEROGLYPH-13584;Lo;0;L;;;;;N;;;;; +13585;EGYPTIAN HIEROGLYPH-13585;Lo;0;L;;;;;N;;;;; +13586;EGYPTIAN HIEROGLYPH-13586;Lo;0;L;;;;;N;;;;; +13587;EGYPTIAN HIEROGLYPH-13587;Lo;0;L;;;;;N;;;;; +13588;EGYPTIAN HIEROGLYPH-13588;Lo;0;L;;;;;N;;;;; +13589;EGYPTIAN HIEROGLYPH-13589;Lo;0;L;;;;;N;;;;; +1358A;EGYPTIAN HIEROGLYPH-1358A;Lo;0;L;;;;;N;;;;; +1358B;EGYPTIAN HIEROGLYPH-1358B;Lo;0;L;;;;;N;;;;; +1358C;EGYPTIAN HIEROGLYPH-1358C;Lo;0;L;;;;;N;;;;; +1358D;EGYPTIAN HIEROGLYPH-1358D;Lo;0;L;;;;;N;;;;; +1358E;EGYPTIAN HIEROGLYPH-1358E;Lo;0;L;;;;;N;;;;; +1358F;EGYPTIAN HIEROGLYPH-1358F;Lo;0;L;;;;;N;;;;; +13590;EGYPTIAN HIEROGLYPH-13590;Lo;0;L;;;;;N;;;;; +13591;EGYPTIAN HIEROGLYPH-13591;Lo;0;L;;;;;N;;;;; +13592;EGYPTIAN HIEROGLYPH-13592;Lo;0;L;;;;;N;;;;; +13593;EGYPTIAN HIEROGLYPH-13593;Lo;0;L;;;;;N;;;;; +13594;EGYPTIAN HIEROGLYPH-13594;Lo;0;L;;;;;N;;;;; +13595;EGYPTIAN HIEROGLYPH-13595;Lo;0;L;;;;;N;;;;; +13596;EGYPTIAN HIEROGLYPH-13596;Lo;0;L;;;;;N;;;;; +13597;EGYPTIAN HIEROGLYPH-13597;Lo;0;L;;;;;N;;;;; +13598;EGYPTIAN HIEROGLYPH-13598;Lo;0;L;;;;;N;;;;; +13599;EGYPTIAN HIEROGLYPH-13599;Lo;0;L;;;;;N;;;;; +1359A;EGYPTIAN HIEROGLYPH-1359A;Lo;0;L;;;;;N;;;;; +1359B;EGYPTIAN HIEROGLYPH-1359B;Lo;0;L;;;;;N;;;;; +1359C;EGYPTIAN HIEROGLYPH-1359C;Lo;0;L;;;;;N;;;;; +1359D;EGYPTIAN HIEROGLYPH-1359D;Lo;0;L;;;;;N;;;;; +1359E;EGYPTIAN HIEROGLYPH-1359E;Lo;0;L;;;;;N;;;;; +1359F;EGYPTIAN HIEROGLYPH-1359F;Lo;0;L;;;;;N;;;;; +135A0;EGYPTIAN HIEROGLYPH-135A0;Lo;0;L;;;;;N;;;;; +135A1;EGYPTIAN HIEROGLYPH-135A1;Lo;0;L;;;;;N;;;;; +135A2;EGYPTIAN HIEROGLYPH-135A2;Lo;0;L;;;;;N;;;;; +135A3;EGYPTIAN HIEROGLYPH-135A3;Lo;0;L;;;;;N;;;;; +135A4;EGYPTIAN HIEROGLYPH-135A4;Lo;0;L;;;;;N;;;;; +135A5;EGYPTIAN HIEROGLYPH-135A5;Lo;0;L;;;;;N;;;;; +135A6;EGYPTIAN HIEROGLYPH-135A6;Lo;0;L;;;;;N;;;;; +135A7;EGYPTIAN HIEROGLYPH-135A7;Lo;0;L;;;;;N;;;;; +135A8;EGYPTIAN HIEROGLYPH-135A8;Lo;0;L;;;;;N;;;;; +135A9;EGYPTIAN HIEROGLYPH-135A9;Lo;0;L;;;;;N;;;;; +135AA;EGYPTIAN HIEROGLYPH-135AA;Lo;0;L;;;;;N;;;;; +135AB;EGYPTIAN HIEROGLYPH-135AB;Lo;0;L;;;;;N;;;;; +135AC;EGYPTIAN HIEROGLYPH-135AC;Lo;0;L;;;;;N;;;;; +135AD;EGYPTIAN HIEROGLYPH-135AD;Lo;0;L;;;;;N;;;;; +135AE;EGYPTIAN HIEROGLYPH-135AE;Lo;0;L;;;;;N;;;;; +135AF;EGYPTIAN HIEROGLYPH-135AF;Lo;0;L;;;;;N;;;;; +135B0;EGYPTIAN HIEROGLYPH-135B0;Lo;0;L;;;;;N;;;;; +135B1;EGYPTIAN HIEROGLYPH-135B1;Lo;0;L;;;;;N;;;;; +135B2;EGYPTIAN HIEROGLYPH-135B2;Lo;0;L;;;;;N;;;;; +135B3;EGYPTIAN HIEROGLYPH-135B3;Lo;0;L;;;;;N;;;;; +135B4;EGYPTIAN HIEROGLYPH-135B4;Lo;0;L;;;;;N;;;;; +135B5;EGYPTIAN HIEROGLYPH-135B5;Lo;0;L;;;;;N;;;;; +135B6;EGYPTIAN HIEROGLYPH-135B6;Lo;0;L;;;;;N;;;;; +135B7;EGYPTIAN HIEROGLYPH-135B7;Lo;0;L;;;;;N;;;;; +135B8;EGYPTIAN HIEROGLYPH-135B8;Lo;0;L;;;;;N;;;;; +135B9;EGYPTIAN HIEROGLYPH-135B9;Lo;0;L;;;;;N;;;;; +135BA;EGYPTIAN HIEROGLYPH-135BA;Lo;0;L;;;;;N;;;;; +135BB;EGYPTIAN HIEROGLYPH-135BB;Lo;0;L;;;;;N;;;;; +135BC;EGYPTIAN HIEROGLYPH-135BC;Lo;0;L;;;;;N;;;;; +135BD;EGYPTIAN HIEROGLYPH-135BD;Lo;0;L;;;;;N;;;;; +135BE;EGYPTIAN HIEROGLYPH-135BE;Lo;0;L;;;;;N;;;;; +135BF;EGYPTIAN HIEROGLYPH-135BF;Lo;0;L;;;;;N;;;;; +135C0;EGYPTIAN HIEROGLYPH-135C0;Lo;0;L;;;;;N;;;;; +135C1;EGYPTIAN HIEROGLYPH-135C1;Lo;0;L;;;;;N;;;;; +135C2;EGYPTIAN HIEROGLYPH-135C2;Lo;0;L;;;;;N;;;;; +135C3;EGYPTIAN HIEROGLYPH-135C3;Lo;0;L;;;;;N;;;;; +135C4;EGYPTIAN HIEROGLYPH-135C4;Lo;0;L;;;;;N;;;;; +135C5;EGYPTIAN HIEROGLYPH-135C5;Lo;0;L;;;;;N;;;;; +135C6;EGYPTIAN HIEROGLYPH-135C6;Lo;0;L;;;;;N;;;;; +135C7;EGYPTIAN HIEROGLYPH-135C7;Lo;0;L;;;;;N;;;;; +135C8;EGYPTIAN HIEROGLYPH-135C8;Lo;0;L;;;;;N;;;;; +135C9;EGYPTIAN HIEROGLYPH-135C9;Lo;0;L;;;;;N;;;;; +135CA;EGYPTIAN HIEROGLYPH-135CA;Lo;0;L;;;;;N;;;;; +135CB;EGYPTIAN HIEROGLYPH-135CB;Lo;0;L;;;;;N;;;;; +135CC;EGYPTIAN HIEROGLYPH-135CC;Lo;0;L;;;;;N;;;;; +135CD;EGYPTIAN HIEROGLYPH-135CD;Lo;0;L;;;;;N;;;;; +135CE;EGYPTIAN HIEROGLYPH-135CE;Lo;0;L;;;;;N;;;;; +135CF;EGYPTIAN HIEROGLYPH-135CF;Lo;0;L;;;;;N;;;;; +135D0;EGYPTIAN HIEROGLYPH-135D0;Lo;0;L;;;;;N;;;;; +135D1;EGYPTIAN HIEROGLYPH-135D1;Lo;0;L;;;;;N;;;;; +135D2;EGYPTIAN HIEROGLYPH-135D2;Lo;0;L;;;;;N;;;;; +135D3;EGYPTIAN HIEROGLYPH-135D3;Lo;0;L;;;;;N;;;;; +135D4;EGYPTIAN HIEROGLYPH-135D4;Lo;0;L;;;;;N;;;;; +135D5;EGYPTIAN HIEROGLYPH-135D5;Lo;0;L;;;;;N;;;;; +135D6;EGYPTIAN HIEROGLYPH-135D6;Lo;0;L;;;;;N;;;;; +135D7;EGYPTIAN HIEROGLYPH-135D7;Lo;0;L;;;;;N;;;;; +135D8;EGYPTIAN HIEROGLYPH-135D8;Lo;0;L;;;;;N;;;;; +135D9;EGYPTIAN HIEROGLYPH-135D9;Lo;0;L;;;;;N;;;;; +135DA;EGYPTIAN HIEROGLYPH-135DA;Lo;0;L;;;;;N;;;;; +135DB;EGYPTIAN HIEROGLYPH-135DB;Lo;0;L;;;;;N;;;;; +135DC;EGYPTIAN HIEROGLYPH-135DC;Lo;0;L;;;;;N;;;;; +135DD;EGYPTIAN HIEROGLYPH-135DD;Lo;0;L;;;;;N;;;;; +135DE;EGYPTIAN HIEROGLYPH-135DE;Lo;0;L;;;;;N;;;;; +135DF;EGYPTIAN HIEROGLYPH-135DF;Lo;0;L;;;;;N;;;;; +135E0;EGYPTIAN HIEROGLYPH-135E0;Lo;0;L;;;;;N;;;;; +135E1;EGYPTIAN HIEROGLYPH-135E1;Lo;0;L;;;;;N;;;;; +135E2;EGYPTIAN HIEROGLYPH-135E2;Lo;0;L;;;;;N;;;;; +135E3;EGYPTIAN HIEROGLYPH-135E3;Lo;0;L;;;;;N;;;;; +135E4;EGYPTIAN HIEROGLYPH-135E4;Lo;0;L;;;;;N;;;;; +135E5;EGYPTIAN HIEROGLYPH-135E5;Lo;0;L;;;;;N;;;;; +135E6;EGYPTIAN HIEROGLYPH-135E6;Lo;0;L;;;;;N;;;;; +135E7;EGYPTIAN HIEROGLYPH-135E7;Lo;0;L;;;;;N;;;;; +135E8;EGYPTIAN HIEROGLYPH-135E8;Lo;0;L;;;;;N;;;;; +135E9;EGYPTIAN HIEROGLYPH-135E9;Lo;0;L;;;;;N;;;;; +135EA;EGYPTIAN HIEROGLYPH-135EA;Lo;0;L;;;;;N;;;;; +135EB;EGYPTIAN HIEROGLYPH-135EB;Lo;0;L;;;;;N;;;;; +135EC;EGYPTIAN HIEROGLYPH-135EC;Lo;0;L;;;;;N;;;;; +135ED;EGYPTIAN HIEROGLYPH-135ED;Lo;0;L;;;;;N;;;;; +135EE;EGYPTIAN HIEROGLYPH-135EE;Lo;0;L;;;;;N;;;;; +135EF;EGYPTIAN HIEROGLYPH-135EF;Lo;0;L;;;;;N;;;;; +135F0;EGYPTIAN HIEROGLYPH-135F0;Lo;0;L;;;;;N;;;;; +135F1;EGYPTIAN HIEROGLYPH-135F1;Lo;0;L;;;;;N;;;;; +135F2;EGYPTIAN HIEROGLYPH-135F2;Lo;0;L;;;;;N;;;;; +135F3;EGYPTIAN HIEROGLYPH-135F3;Lo;0;L;;;;;N;;;;; +135F4;EGYPTIAN HIEROGLYPH-135F4;Lo;0;L;;;;;N;;;;; +135F5;EGYPTIAN HIEROGLYPH-135F5;Lo;0;L;;;;;N;;;;; +135F6;EGYPTIAN HIEROGLYPH-135F6;Lo;0;L;;;;;N;;;;; +135F7;EGYPTIAN HIEROGLYPH-135F7;Lo;0;L;;;;;N;;;;; +135F8;EGYPTIAN HIEROGLYPH-135F8;Lo;0;L;;;;;N;;;;; +135F9;EGYPTIAN HIEROGLYPH-135F9;Lo;0;L;;;;;N;;;;; +135FA;EGYPTIAN HIEROGLYPH-135FA;Lo;0;L;;;;;N;;;;; +135FB;EGYPTIAN HIEROGLYPH-135FB;Lo;0;L;;;;;N;;;;; +135FC;EGYPTIAN HIEROGLYPH-135FC;Lo;0;L;;;;;N;;;;; +135FD;EGYPTIAN HIEROGLYPH-135FD;Lo;0;L;;;;;N;;;;; +135FE;EGYPTIAN HIEROGLYPH-135FE;Lo;0;L;;;;;N;;;;; +135FF;EGYPTIAN HIEROGLYPH-135FF;Lo;0;L;;;;;N;;;;; +13600;EGYPTIAN HIEROGLYPH-13600;Lo;0;L;;;;;N;;;;; +13601;EGYPTIAN HIEROGLYPH-13601;Lo;0;L;;;;;N;;;;; +13602;EGYPTIAN HIEROGLYPH-13602;Lo;0;L;;;;;N;;;;; +13603;EGYPTIAN HIEROGLYPH-13603;Lo;0;L;;;;;N;;;;; +13604;EGYPTIAN HIEROGLYPH-13604;Lo;0;L;;;;;N;;;;; +13605;EGYPTIAN HIEROGLYPH-13605;Lo;0;L;;;;;N;;;;; +13606;EGYPTIAN HIEROGLYPH-13606;Lo;0;L;;;;;N;;;;; +13607;EGYPTIAN HIEROGLYPH-13607;Lo;0;L;;;;;N;;;;; +13608;EGYPTIAN HIEROGLYPH-13608;Lo;0;L;;;;;N;;;;; +13609;EGYPTIAN HIEROGLYPH-13609;Lo;0;L;;;;;N;;;;; +1360A;EGYPTIAN HIEROGLYPH-1360A;Lo;0;L;;;;;N;;;;; +1360B;EGYPTIAN HIEROGLYPH-1360B;Lo;0;L;;;;;N;;;;; +1360C;EGYPTIAN HIEROGLYPH-1360C;Lo;0;L;;;;;N;;;;; +1360D;EGYPTIAN HIEROGLYPH-1360D;Lo;0;L;;;;;N;;;;; +1360E;EGYPTIAN HIEROGLYPH-1360E;Lo;0;L;;;;;N;;;;; +1360F;EGYPTIAN HIEROGLYPH-1360F;Lo;0;L;;;;;N;;;;; +13610;EGYPTIAN HIEROGLYPH-13610;Lo;0;L;;;;;N;;;;; +13611;EGYPTIAN HIEROGLYPH-13611;Lo;0;L;;;;;N;;;;; +13612;EGYPTIAN HIEROGLYPH-13612;Lo;0;L;;;;;N;;;;; +13613;EGYPTIAN HIEROGLYPH-13613;Lo;0;L;;;;;N;;;;; +13614;EGYPTIAN HIEROGLYPH-13614;Lo;0;L;;;;;N;;;;; +13615;EGYPTIAN HIEROGLYPH-13615;Lo;0;L;;;;;N;;;;; +13616;EGYPTIAN HIEROGLYPH-13616;Lo;0;L;;;;;N;;;;; +13617;EGYPTIAN HIEROGLYPH-13617;Lo;0;L;;;;;N;;;;; +13618;EGYPTIAN HIEROGLYPH-13618;Lo;0;L;;;;;N;;;;; +13619;EGYPTIAN HIEROGLYPH-13619;Lo;0;L;;;;;N;;;;; +1361A;EGYPTIAN HIEROGLYPH-1361A;Lo;0;L;;;;;N;;;;; +1361B;EGYPTIAN HIEROGLYPH-1361B;Lo;0;L;;;;;N;;;;; +1361C;EGYPTIAN HIEROGLYPH-1361C;Lo;0;L;;;;;N;;;;; +1361D;EGYPTIAN HIEROGLYPH-1361D;Lo;0;L;;;;;N;;;;; +1361E;EGYPTIAN HIEROGLYPH-1361E;Lo;0;L;;;;;N;;;;; +1361F;EGYPTIAN HIEROGLYPH-1361F;Lo;0;L;;;;;N;;;;; +13620;EGYPTIAN HIEROGLYPH-13620;Lo;0;L;;;;;N;;;;; +13621;EGYPTIAN HIEROGLYPH-13621;Lo;0;L;;;;;N;;;;; +13622;EGYPTIAN HIEROGLYPH-13622;Lo;0;L;;;;;N;;;;; +13623;EGYPTIAN HIEROGLYPH-13623;Lo;0;L;;;;;N;;;;; +13624;EGYPTIAN HIEROGLYPH-13624;Lo;0;L;;;;;N;;;;; +13625;EGYPTIAN HIEROGLYPH-13625;Lo;0;L;;;;;N;;;;; +13626;EGYPTIAN HIEROGLYPH-13626;Lo;0;L;;;;;N;;;;; +13627;EGYPTIAN HIEROGLYPH-13627;Lo;0;L;;;;;N;;;;; +13628;EGYPTIAN HIEROGLYPH-13628;Lo;0;L;;;;;N;;;;; +13629;EGYPTIAN HIEROGLYPH-13629;Lo;0;L;;;;;N;;;;; +1362A;EGYPTIAN HIEROGLYPH-1362A;Lo;0;L;;;;;N;;;;; +1362B;EGYPTIAN HIEROGLYPH-1362B;Lo;0;L;;;;;N;;;;; +1362C;EGYPTIAN HIEROGLYPH-1362C;Lo;0;L;;;;;N;;;;; +1362D;EGYPTIAN HIEROGLYPH-1362D;Lo;0;L;;;;;N;;;;; +1362E;EGYPTIAN HIEROGLYPH-1362E;Lo;0;L;;;;;N;;;;; +1362F;EGYPTIAN HIEROGLYPH-1362F;Lo;0;L;;;;;N;;;;; +13630;EGYPTIAN HIEROGLYPH-13630;Lo;0;L;;;;;N;;;;; +13631;EGYPTIAN HIEROGLYPH-13631;Lo;0;L;;;;;N;;;;; +13632;EGYPTIAN HIEROGLYPH-13632;Lo;0;L;;;;;N;;;;; +13633;EGYPTIAN HIEROGLYPH-13633;Lo;0;L;;;;;N;;;;; +13634;EGYPTIAN HIEROGLYPH-13634;Lo;0;L;;;;;N;;;;; +13635;EGYPTIAN HIEROGLYPH-13635;Lo;0;L;;;;;N;;;;; +13636;EGYPTIAN HIEROGLYPH-13636;Lo;0;L;;;;;N;;;;; +13637;EGYPTIAN HIEROGLYPH-13637;Lo;0;L;;;;;N;;;;; +13638;EGYPTIAN HIEROGLYPH-13638;Lo;0;L;;;;;N;;;;; +13639;EGYPTIAN HIEROGLYPH-13639;Lo;0;L;;;;;N;;;;; +1363A;EGYPTIAN HIEROGLYPH-1363A;Lo;0;L;;;;;N;;;;; +1363B;EGYPTIAN HIEROGLYPH-1363B;Lo;0;L;;;;;N;;;;; +1363C;EGYPTIAN HIEROGLYPH-1363C;Lo;0;L;;;;;N;;;;; +1363D;EGYPTIAN HIEROGLYPH-1363D;Lo;0;L;;;;;N;;;;; +1363E;EGYPTIAN HIEROGLYPH-1363E;Lo;0;L;;;;;N;;;;; +1363F;EGYPTIAN HIEROGLYPH-1363F;Lo;0;L;;;;;N;;;;; +13640;EGYPTIAN HIEROGLYPH-13640;Lo;0;L;;;;;N;;;;; +13641;EGYPTIAN HIEROGLYPH-13641;Lo;0;L;;;;;N;;;;; +13642;EGYPTIAN HIEROGLYPH-13642;Lo;0;L;;;;;N;;;;; +13643;EGYPTIAN HIEROGLYPH-13643;Lo;0;L;;;;;N;;;;; +13644;EGYPTIAN HIEROGLYPH-13644;Lo;0;L;;;;;N;;;;; +13645;EGYPTIAN HIEROGLYPH-13645;Lo;0;L;;;;;N;;;;; +13646;EGYPTIAN HIEROGLYPH-13646;Lo;0;L;;;;;N;;;;; +13647;EGYPTIAN HIEROGLYPH-13647;Lo;0;L;;;;;N;;;;; +13648;EGYPTIAN HIEROGLYPH-13648;Lo;0;L;;;;;N;;;;; +13649;EGYPTIAN HIEROGLYPH-13649;Lo;0;L;;;;;N;;;;; +1364A;EGYPTIAN HIEROGLYPH-1364A;Lo;0;L;;;;;N;;;;; +1364B;EGYPTIAN HIEROGLYPH-1364B;Lo;0;L;;;;;N;;;;; +1364C;EGYPTIAN HIEROGLYPH-1364C;Lo;0;L;;;;;N;;;;; +1364D;EGYPTIAN HIEROGLYPH-1364D;Lo;0;L;;;;;N;;;;; +1364E;EGYPTIAN HIEROGLYPH-1364E;Lo;0;L;;;;;N;;;;; +1364F;EGYPTIAN HIEROGLYPH-1364F;Lo;0;L;;;;;N;;;;; +13650;EGYPTIAN HIEROGLYPH-13650;Lo;0;L;;;;;N;;;;; +13651;EGYPTIAN HIEROGLYPH-13651;Lo;0;L;;;;;N;;;;; +13652;EGYPTIAN HIEROGLYPH-13652;Lo;0;L;;;;;N;;;;; +13653;EGYPTIAN HIEROGLYPH-13653;Lo;0;L;;;;;N;;;;; +13654;EGYPTIAN HIEROGLYPH-13654;Lo;0;L;;;;;N;;;;; +13655;EGYPTIAN HIEROGLYPH-13655;Lo;0;L;;;;;N;;;;; +13656;EGYPTIAN HIEROGLYPH-13656;Lo;0;L;;;;;N;;;;; +13657;EGYPTIAN HIEROGLYPH-13657;Lo;0;L;;;;;N;;;;; +13658;EGYPTIAN HIEROGLYPH-13658;Lo;0;L;;;;;N;;;;; +13659;EGYPTIAN HIEROGLYPH-13659;Lo;0;L;;;;;N;;;;; +1365A;EGYPTIAN HIEROGLYPH-1365A;Lo;0;L;;;;;N;;;;; +1365B;EGYPTIAN HIEROGLYPH-1365B;Lo;0;L;;;;;N;;;;; +1365C;EGYPTIAN HIEROGLYPH-1365C;Lo;0;L;;;;;N;;;;; +1365D;EGYPTIAN HIEROGLYPH-1365D;Lo;0;L;;;;;N;;;;; +1365E;EGYPTIAN HIEROGLYPH-1365E;Lo;0;L;;;;;N;;;;; +1365F;EGYPTIAN HIEROGLYPH-1365F;Lo;0;L;;;;;N;;;;; +13660;EGYPTIAN HIEROGLYPH-13660;Lo;0;L;;;;;N;;;;; +13661;EGYPTIAN HIEROGLYPH-13661;Lo;0;L;;;;;N;;;;; +13662;EGYPTIAN HIEROGLYPH-13662;Lo;0;L;;;;;N;;;;; +13663;EGYPTIAN HIEROGLYPH-13663;Lo;0;L;;;;;N;;;;; +13664;EGYPTIAN HIEROGLYPH-13664;Lo;0;L;;;;;N;;;;; +13665;EGYPTIAN HIEROGLYPH-13665;Lo;0;L;;;;;N;;;;; +13666;EGYPTIAN HIEROGLYPH-13666;Lo;0;L;;;;;N;;;;; +13667;EGYPTIAN HIEROGLYPH-13667;Lo;0;L;;;;;N;;;;; +13668;EGYPTIAN HIEROGLYPH-13668;Lo;0;L;;;;;N;;;;; +13669;EGYPTIAN HIEROGLYPH-13669;Lo;0;L;;;;;N;;;;; +1366A;EGYPTIAN HIEROGLYPH-1366A;Lo;0;L;;;;;N;;;;; +1366B;EGYPTIAN HIEROGLYPH-1366B;Lo;0;L;;;;;N;;;;; +1366C;EGYPTIAN HIEROGLYPH-1366C;Lo;0;L;;;;;N;;;;; +1366D;EGYPTIAN HIEROGLYPH-1366D;Lo;0;L;;;;;N;;;;; +1366E;EGYPTIAN HIEROGLYPH-1366E;Lo;0;L;;;;;N;;;;; +1366F;EGYPTIAN HIEROGLYPH-1366F;Lo;0;L;;;;;N;;;;; +13670;EGYPTIAN HIEROGLYPH-13670;Lo;0;L;;;;;N;;;;; +13671;EGYPTIAN HIEROGLYPH-13671;Lo;0;L;;;;;N;;;;; +13672;EGYPTIAN HIEROGLYPH-13672;Lo;0;L;;;;;N;;;;; +13673;EGYPTIAN HIEROGLYPH-13673;Lo;0;L;;;;;N;;;;; +13674;EGYPTIAN HIEROGLYPH-13674;Lo;0;L;;;;;N;;;;; +13675;EGYPTIAN HIEROGLYPH-13675;Lo;0;L;;;;;N;;;;; +13676;EGYPTIAN HIEROGLYPH-13676;Lo;0;L;;;;;N;;;;; +13677;EGYPTIAN HIEROGLYPH-13677;Lo;0;L;;;;;N;;;;; +13678;EGYPTIAN HIEROGLYPH-13678;Lo;0;L;;;;;N;;;;; +13679;EGYPTIAN HIEROGLYPH-13679;Lo;0;L;;;;;N;;;;; +1367A;EGYPTIAN HIEROGLYPH-1367A;Lo;0;L;;;;;N;;;;; +1367B;EGYPTIAN HIEROGLYPH-1367B;Lo;0;L;;;;;N;;;;; +1367C;EGYPTIAN HIEROGLYPH-1367C;Lo;0;L;;;;;N;;;;; +1367D;EGYPTIAN HIEROGLYPH-1367D;Lo;0;L;;;;;N;;;;; +1367E;EGYPTIAN HIEROGLYPH-1367E;Lo;0;L;;;;;N;;;;; +1367F;EGYPTIAN HIEROGLYPH-1367F;Lo;0;L;;;;;N;;;;; +13680;EGYPTIAN HIEROGLYPH-13680;Lo;0;L;;;;;N;;;;; +13681;EGYPTIAN HIEROGLYPH-13681;Lo;0;L;;;;;N;;;;; +13682;EGYPTIAN HIEROGLYPH-13682;Lo;0;L;;;;;N;;;;; +13683;EGYPTIAN HIEROGLYPH-13683;Lo;0;L;;;;;N;;;;; +13684;EGYPTIAN HIEROGLYPH-13684;Lo;0;L;;;;;N;;;;; +13685;EGYPTIAN HIEROGLYPH-13685;Lo;0;L;;;;;N;;;;; +13686;EGYPTIAN HIEROGLYPH-13686;Lo;0;L;;;;;N;;;;; +13687;EGYPTIAN HIEROGLYPH-13687;Lo;0;L;;;;;N;;;;; +13688;EGYPTIAN HIEROGLYPH-13688;Lo;0;L;;;;;N;;;;; +13689;EGYPTIAN HIEROGLYPH-13689;Lo;0;L;;;;;N;;;;; +1368A;EGYPTIAN HIEROGLYPH-1368A;Lo;0;L;;;;;N;;;;; +1368B;EGYPTIAN HIEROGLYPH-1368B;Lo;0;L;;;;;N;;;;; +1368C;EGYPTIAN HIEROGLYPH-1368C;Lo;0;L;;;;;N;;;;; +1368D;EGYPTIAN HIEROGLYPH-1368D;Lo;0;L;;;;;N;;;;; +1368E;EGYPTIAN HIEROGLYPH-1368E;Lo;0;L;;;;;N;;;;; +1368F;EGYPTIAN HIEROGLYPH-1368F;Lo;0;L;;;;;N;;;;; +13690;EGYPTIAN HIEROGLYPH-13690;Lo;0;L;;;;;N;;;;; +13691;EGYPTIAN HIEROGLYPH-13691;Lo;0;L;;;;;N;;;;; +13692;EGYPTIAN HIEROGLYPH-13692;Lo;0;L;;;;;N;;;;; +13693;EGYPTIAN HIEROGLYPH-13693;Lo;0;L;;;;;N;;;;; +13694;EGYPTIAN HIEROGLYPH-13694;Lo;0;L;;;;;N;;;;; +13695;EGYPTIAN HIEROGLYPH-13695;Lo;0;L;;;;;N;;;;; +13696;EGYPTIAN HIEROGLYPH-13696;Lo;0;L;;;;;N;;;;; +13697;EGYPTIAN HIEROGLYPH-13697;Lo;0;L;;;;;N;;;;; +13698;EGYPTIAN HIEROGLYPH-13698;Lo;0;L;;;;;N;;;;; +13699;EGYPTIAN HIEROGLYPH-13699;Lo;0;L;;;;;N;;;;; +1369A;EGYPTIAN HIEROGLYPH-1369A;Lo;0;L;;;;;N;;;;; +1369B;EGYPTIAN HIEROGLYPH-1369B;Lo;0;L;;;;;N;;;;; +1369C;EGYPTIAN HIEROGLYPH-1369C;Lo;0;L;;;;;N;;;;; +1369D;EGYPTIAN HIEROGLYPH-1369D;Lo;0;L;;;;;N;;;;; +1369E;EGYPTIAN HIEROGLYPH-1369E;Lo;0;L;;;;;N;;;;; +1369F;EGYPTIAN HIEROGLYPH-1369F;Lo;0;L;;;;;N;;;;; +136A0;EGYPTIAN HIEROGLYPH-136A0;Lo;0;L;;;;;N;;;;; +136A1;EGYPTIAN HIEROGLYPH-136A1;Lo;0;L;;;;;N;;;;; +136A2;EGYPTIAN HIEROGLYPH-136A2;Lo;0;L;;;;;N;;;;; +136A3;EGYPTIAN HIEROGLYPH-136A3;Lo;0;L;;;;;N;;;;; +136A4;EGYPTIAN HIEROGLYPH-136A4;Lo;0;L;;;;;N;;;;; +136A5;EGYPTIAN HIEROGLYPH-136A5;Lo;0;L;;;;;N;;;;; +136A6;EGYPTIAN HIEROGLYPH-136A6;Lo;0;L;;;;;N;;;;; +136A7;EGYPTIAN HIEROGLYPH-136A7;Lo;0;L;;;;;N;;;;; +136A8;EGYPTIAN HIEROGLYPH-136A8;Lo;0;L;;;;;N;;;;; +136A9;EGYPTIAN HIEROGLYPH-136A9;Lo;0;L;;;;;N;;;;; +136AA;EGYPTIAN HIEROGLYPH-136AA;Lo;0;L;;;;;N;;;;; +136AB;EGYPTIAN HIEROGLYPH-136AB;Lo;0;L;;;;;N;;;;; +136AC;EGYPTIAN HIEROGLYPH-136AC;Lo;0;L;;;;;N;;;;; +136AD;EGYPTIAN HIEROGLYPH-136AD;Lo;0;L;;;;;N;;;;; +136AE;EGYPTIAN HIEROGLYPH-136AE;Lo;0;L;;;;;N;;;;; +136AF;EGYPTIAN HIEROGLYPH-136AF;Lo;0;L;;;;;N;;;;; +136B0;EGYPTIAN HIEROGLYPH-136B0;Lo;0;L;;;;;N;;;;; +136B1;EGYPTIAN HIEROGLYPH-136B1;Lo;0;L;;;;;N;;;;; +136B2;EGYPTIAN HIEROGLYPH-136B2;Lo;0;L;;;;;N;;;;; +136B3;EGYPTIAN HIEROGLYPH-136B3;Lo;0;L;;;;;N;;;;; +136B4;EGYPTIAN HIEROGLYPH-136B4;Lo;0;L;;;;;N;;;;; +136B5;EGYPTIAN HIEROGLYPH-136B5;Lo;0;L;;;;;N;;;;; +136B6;EGYPTIAN HIEROGLYPH-136B6;Lo;0;L;;;;;N;;;;; +136B7;EGYPTIAN HIEROGLYPH-136B7;Lo;0;L;;;;;N;;;;; +136B8;EGYPTIAN HIEROGLYPH-136B8;Lo;0;L;;;;;N;;;;; +136B9;EGYPTIAN HIEROGLYPH-136B9;Lo;0;L;;;;;N;;;;; +136BA;EGYPTIAN HIEROGLYPH-136BA;Lo;0;L;;;;;N;;;;; +136BB;EGYPTIAN HIEROGLYPH-136BB;Lo;0;L;;;;;N;;;;; +136BC;EGYPTIAN HIEROGLYPH-136BC;Lo;0;L;;;;;N;;;;; +136BD;EGYPTIAN HIEROGLYPH-136BD;Lo;0;L;;;;;N;;;;; +136BE;EGYPTIAN HIEROGLYPH-136BE;Lo;0;L;;;;;N;;;;; +136BF;EGYPTIAN HIEROGLYPH-136BF;Lo;0;L;;;;;N;;;;; +136C0;EGYPTIAN HIEROGLYPH-136C0;Lo;0;L;;;;;N;;;;; +136C1;EGYPTIAN HIEROGLYPH-136C1;Lo;0;L;;;;;N;;;;; +136C2;EGYPTIAN HIEROGLYPH-136C2;Lo;0;L;;;;;N;;;;; +136C3;EGYPTIAN HIEROGLYPH-136C3;Lo;0;L;;;;;N;;;;; +136C4;EGYPTIAN HIEROGLYPH-136C4;Lo;0;L;;;;;N;;;;; +136C5;EGYPTIAN HIEROGLYPH-136C5;Lo;0;L;;;;;N;;;;; +136C6;EGYPTIAN HIEROGLYPH-136C6;Lo;0;L;;;;;N;;;;; +136C7;EGYPTIAN HIEROGLYPH-136C7;Lo;0;L;;;;;N;;;;; +136C8;EGYPTIAN HIEROGLYPH-136C8;Lo;0;L;;;;;N;;;;; +136C9;EGYPTIAN HIEROGLYPH-136C9;Lo;0;L;;;;;N;;;;; +136CA;EGYPTIAN HIEROGLYPH-136CA;Lo;0;L;;;;;N;;;;; +136CB;EGYPTIAN HIEROGLYPH-136CB;Lo;0;L;;;;;N;;;;; +136CC;EGYPTIAN HIEROGLYPH-136CC;Lo;0;L;;;;;N;;;;; +136CD;EGYPTIAN HIEROGLYPH-136CD;Lo;0;L;;;;;N;;;;; +136CE;EGYPTIAN HIEROGLYPH-136CE;Lo;0;L;;;;;N;;;;; +136CF;EGYPTIAN HIEROGLYPH-136CF;Lo;0;L;;;;;N;;;;; +136D0;EGYPTIAN HIEROGLYPH-136D0;Lo;0;L;;;;;N;;;;; +136D1;EGYPTIAN HIEROGLYPH-136D1;Lo;0;L;;;;;N;;;;; +136D2;EGYPTIAN HIEROGLYPH-136D2;Lo;0;L;;;;;N;;;;; +136D3;EGYPTIAN HIEROGLYPH-136D3;Lo;0;L;;;;;N;;;;; +136D4;EGYPTIAN HIEROGLYPH-136D4;Lo;0;L;;;;;N;;;;; +136D5;EGYPTIAN HIEROGLYPH-136D5;Lo;0;L;;;;;N;;;;; +136D6;EGYPTIAN HIEROGLYPH-136D6;Lo;0;L;;;;;N;;;;; +136D7;EGYPTIAN HIEROGLYPH-136D7;Lo;0;L;;;;;N;;;;; +136D8;EGYPTIAN HIEROGLYPH-136D8;Lo;0;L;;;;;N;;;;; +136D9;EGYPTIAN HIEROGLYPH-136D9;Lo;0;L;;;;;N;;;;; +136DA;EGYPTIAN HIEROGLYPH-136DA;Lo;0;L;;;;;N;;;;; +136DB;EGYPTIAN HIEROGLYPH-136DB;Lo;0;L;;;;;N;;;;; +136DC;EGYPTIAN HIEROGLYPH-136DC;Lo;0;L;;;;;N;;;;; +136DD;EGYPTIAN HIEROGLYPH-136DD;Lo;0;L;;;;;N;;;;; +136DE;EGYPTIAN HIEROGLYPH-136DE;Lo;0;L;;;;;N;;;;; +136DF;EGYPTIAN HIEROGLYPH-136DF;Lo;0;L;;;;;N;;;;; +136E0;EGYPTIAN HIEROGLYPH-136E0;Lo;0;L;;;;;N;;;;; +136E1;EGYPTIAN HIEROGLYPH-136E1;Lo;0;L;;;;;N;;;;; +136E2;EGYPTIAN HIEROGLYPH-136E2;Lo;0;L;;;;;N;;;;; +136E3;EGYPTIAN HIEROGLYPH-136E3;Lo;0;L;;;;;N;;;;; +136E4;EGYPTIAN HIEROGLYPH-136E4;Lo;0;L;;;;;N;;;;; +136E5;EGYPTIAN HIEROGLYPH-136E5;Lo;0;L;;;;;N;;;;; +136E6;EGYPTIAN HIEROGLYPH-136E6;Lo;0;L;;;;;N;;;;; +136E7;EGYPTIAN HIEROGLYPH-136E7;Lo;0;L;;;;;N;;;;; +136E8;EGYPTIAN HIEROGLYPH-136E8;Lo;0;L;;;;;N;;;;; +136E9;EGYPTIAN HIEROGLYPH-136E9;Lo;0;L;;;;;N;;;;; +136EA;EGYPTIAN HIEROGLYPH-136EA;Lo;0;L;;;;;N;;;;; +136EB;EGYPTIAN HIEROGLYPH-136EB;Lo;0;L;;;;;N;;;;; +136EC;EGYPTIAN HIEROGLYPH-136EC;Lo;0;L;;;;;N;;;;; +136ED;EGYPTIAN HIEROGLYPH-136ED;Lo;0;L;;;;;N;;;;; +136EE;EGYPTIAN HIEROGLYPH-136EE;Lo;0;L;;;;;N;;;;; +136EF;EGYPTIAN HIEROGLYPH-136EF;Lo;0;L;;;;;N;;;;; +136F0;EGYPTIAN HIEROGLYPH-136F0;Lo;0;L;;;;;N;;;;; +136F1;EGYPTIAN HIEROGLYPH-136F1;Lo;0;L;;;;;N;;;;; +136F2;EGYPTIAN HIEROGLYPH-136F2;Lo;0;L;;;;;N;;;;; +136F3;EGYPTIAN HIEROGLYPH-136F3;Lo;0;L;;;;;N;;;;; +136F4;EGYPTIAN HIEROGLYPH-136F4;Lo;0;L;;;;;N;;;;; +136F5;EGYPTIAN HIEROGLYPH-136F5;Lo;0;L;;;;;N;;;;; +136F6;EGYPTIAN HIEROGLYPH-136F6;Lo;0;L;;;;;N;;;;; +136F7;EGYPTIAN HIEROGLYPH-136F7;Lo;0;L;;;;;N;;;;; +136F8;EGYPTIAN HIEROGLYPH-136F8;Lo;0;L;;;;;N;;;;; +136F9;EGYPTIAN HIEROGLYPH-136F9;Lo;0;L;;;;;N;;;;; +136FA;EGYPTIAN HIEROGLYPH-136FA;Lo;0;L;;;;;N;;;;; +136FB;EGYPTIAN HIEROGLYPH-136FB;Lo;0;L;;;;;N;;;;; +136FC;EGYPTIAN HIEROGLYPH-136FC;Lo;0;L;;;;;N;;;;; +136FD;EGYPTIAN HIEROGLYPH-136FD;Lo;0;L;;;;;N;;;;; +136FE;EGYPTIAN HIEROGLYPH-136FE;Lo;0;L;;;;;N;;;;; +136FF;EGYPTIAN HIEROGLYPH-136FF;Lo;0;L;;;;;N;;;;; +13700;EGYPTIAN HIEROGLYPH-13700;Lo;0;L;;;;;N;;;;; +13701;EGYPTIAN HIEROGLYPH-13701;Lo;0;L;;;;;N;;;;; +13702;EGYPTIAN HIEROGLYPH-13702;Lo;0;L;;;;;N;;;;; +13703;EGYPTIAN HIEROGLYPH-13703;Lo;0;L;;;;;N;;;;; +13704;EGYPTIAN HIEROGLYPH-13704;Lo;0;L;;;;;N;;;;; +13705;EGYPTIAN HIEROGLYPH-13705;Lo;0;L;;;;;N;;;;; +13706;EGYPTIAN HIEROGLYPH-13706;Lo;0;L;;;;;N;;;;; +13707;EGYPTIAN HIEROGLYPH-13707;Lo;0;L;;;;;N;;;;; +13708;EGYPTIAN HIEROGLYPH-13708;Lo;0;L;;;;;N;;;;; +13709;EGYPTIAN HIEROGLYPH-13709;Lo;0;L;;;;;N;;;;; +1370A;EGYPTIAN HIEROGLYPH-1370A;Lo;0;L;;;;;N;;;;; +1370B;EGYPTIAN HIEROGLYPH-1370B;Lo;0;L;;;;;N;;;;; +1370C;EGYPTIAN HIEROGLYPH-1370C;Lo;0;L;;;;;N;;;;; +1370D;EGYPTIAN HIEROGLYPH-1370D;Lo;0;L;;;;;N;;;;; +1370E;EGYPTIAN HIEROGLYPH-1370E;Lo;0;L;;;;;N;;;;; +1370F;EGYPTIAN HIEROGLYPH-1370F;Lo;0;L;;;;;N;;;;; +13710;EGYPTIAN HIEROGLYPH-13710;Lo;0;L;;;;;N;;;;; +13711;EGYPTIAN HIEROGLYPH-13711;Lo;0;L;;;;;N;;;;; +13712;EGYPTIAN HIEROGLYPH-13712;Lo;0;L;;;;;N;;;;; +13713;EGYPTIAN HIEROGLYPH-13713;Lo;0;L;;;;;N;;;;; +13714;EGYPTIAN HIEROGLYPH-13714;Lo;0;L;;;;;N;;;;; +13715;EGYPTIAN HIEROGLYPH-13715;Lo;0;L;;;;;N;;;;; +13716;EGYPTIAN HIEROGLYPH-13716;Lo;0;L;;;;;N;;;;; +13717;EGYPTIAN HIEROGLYPH-13717;Lo;0;L;;;;;N;;;;; +13718;EGYPTIAN HIEROGLYPH-13718;Lo;0;L;;;;;N;;;;; +13719;EGYPTIAN HIEROGLYPH-13719;Lo;0;L;;;;;N;;;;; +1371A;EGYPTIAN HIEROGLYPH-1371A;Lo;0;L;;;;;N;;;;; +1371B;EGYPTIAN HIEROGLYPH-1371B;Lo;0;L;;;;;N;;;;; +1371C;EGYPTIAN HIEROGLYPH-1371C;Lo;0;L;;;;;N;;;;; +1371D;EGYPTIAN HIEROGLYPH-1371D;Lo;0;L;;;;;N;;;;; +1371E;EGYPTIAN HIEROGLYPH-1371E;Lo;0;L;;;;;N;;;;; +1371F;EGYPTIAN HIEROGLYPH-1371F;Lo;0;L;;;;;N;;;;; +13720;EGYPTIAN HIEROGLYPH-13720;Lo;0;L;;;;;N;;;;; +13721;EGYPTIAN HIEROGLYPH-13721;Lo;0;L;;;;;N;;;;; +13722;EGYPTIAN HIEROGLYPH-13722;Lo;0;L;;;;;N;;;;; +13723;EGYPTIAN HIEROGLYPH-13723;Lo;0;L;;;;;N;;;;; +13724;EGYPTIAN HIEROGLYPH-13724;Lo;0;L;;;;;N;;;;; +13725;EGYPTIAN HIEROGLYPH-13725;Lo;0;L;;;;;N;;;;; +13726;EGYPTIAN HIEROGLYPH-13726;Lo;0;L;;;;;N;;;;; +13727;EGYPTIAN HIEROGLYPH-13727;Lo;0;L;;;;;N;;;;; +13728;EGYPTIAN HIEROGLYPH-13728;Lo;0;L;;;;;N;;;;; +13729;EGYPTIAN HIEROGLYPH-13729;Lo;0;L;;;;;N;;;;; +1372A;EGYPTIAN HIEROGLYPH-1372A;Lo;0;L;;;;;N;;;;; +1372B;EGYPTIAN HIEROGLYPH-1372B;Lo;0;L;;;;;N;;;;; +1372C;EGYPTIAN HIEROGLYPH-1372C;Lo;0;L;;;;;N;;;;; +1372D;EGYPTIAN HIEROGLYPH-1372D;Lo;0;L;;;;;N;;;;; +1372E;EGYPTIAN HIEROGLYPH-1372E;Lo;0;L;;;;;N;;;;; +1372F;EGYPTIAN HIEROGLYPH-1372F;Lo;0;L;;;;;N;;;;; +13730;EGYPTIAN HIEROGLYPH-13730;Lo;0;L;;;;;N;;;;; +13731;EGYPTIAN HIEROGLYPH-13731;Lo;0;L;;;;;N;;;;; +13732;EGYPTIAN HIEROGLYPH-13732;Lo;0;L;;;;;N;;;;; +13733;EGYPTIAN HIEROGLYPH-13733;Lo;0;L;;;;;N;;;;; +13734;EGYPTIAN HIEROGLYPH-13734;Lo;0;L;;;;;N;;;;; +13735;EGYPTIAN HIEROGLYPH-13735;Lo;0;L;;;;;N;;;;; +13736;EGYPTIAN HIEROGLYPH-13736;Lo;0;L;;;;;N;;;;; +13737;EGYPTIAN HIEROGLYPH-13737;Lo;0;L;;;;;N;;;;; +13738;EGYPTIAN HIEROGLYPH-13738;Lo;0;L;;;;;N;;;;; +13739;EGYPTIAN HIEROGLYPH-13739;Lo;0;L;;;;;N;;;;; +1373A;EGYPTIAN HIEROGLYPH-1373A;Lo;0;L;;;;;N;;;;; +1373B;EGYPTIAN HIEROGLYPH-1373B;Lo;0;L;;;;;N;;;;; +1373C;EGYPTIAN HIEROGLYPH-1373C;Lo;0;L;;;;;N;;;;; +1373D;EGYPTIAN HIEROGLYPH-1373D;Lo;0;L;;;;;N;;;;; +1373E;EGYPTIAN HIEROGLYPH-1373E;Lo;0;L;;;;;N;;;;; +1373F;EGYPTIAN HIEROGLYPH-1373F;Lo;0;L;;;;;N;;;;; +13740;EGYPTIAN HIEROGLYPH-13740;Lo;0;L;;;;;N;;;;; +13741;EGYPTIAN HIEROGLYPH-13741;Lo;0;L;;;;;N;;;;; +13742;EGYPTIAN HIEROGLYPH-13742;Lo;0;L;;;;;N;;;;; +13743;EGYPTIAN HIEROGLYPH-13743;Lo;0;L;;;;;N;;;;; +13744;EGYPTIAN HIEROGLYPH-13744;Lo;0;L;;;;;N;;;;; +13745;EGYPTIAN HIEROGLYPH-13745;Lo;0;L;;;;;N;;;;; +13746;EGYPTIAN HIEROGLYPH-13746;Lo;0;L;;;;;N;;;;; +13747;EGYPTIAN HIEROGLYPH-13747;Lo;0;L;;;;;N;;;;; +13748;EGYPTIAN HIEROGLYPH-13748;Lo;0;L;;;;;N;;;;; +13749;EGYPTIAN HIEROGLYPH-13749;Lo;0;L;;;;;N;;;;; +1374A;EGYPTIAN HIEROGLYPH-1374A;Lo;0;L;;;;;N;;;;; +1374B;EGYPTIAN HIEROGLYPH-1374B;Lo;0;L;;;;;N;;;;; +1374C;EGYPTIAN HIEROGLYPH-1374C;Lo;0;L;;;;;N;;;;; +1374D;EGYPTIAN HIEROGLYPH-1374D;Lo;0;L;;;;;N;;;;; +1374E;EGYPTIAN HIEROGLYPH-1374E;Lo;0;L;;;;;N;;;;; +1374F;EGYPTIAN HIEROGLYPH-1374F;Lo;0;L;;;;;N;;;;; +13750;EGYPTIAN HIEROGLYPH-13750;Lo;0;L;;;;;N;;;;; +13751;EGYPTIAN HIEROGLYPH-13751;Lo;0;L;;;;;N;;;;; +13752;EGYPTIAN HIEROGLYPH-13752;Lo;0;L;;;;;N;;;;; +13753;EGYPTIAN HIEROGLYPH-13753;Lo;0;L;;;;;N;;;;; +13754;EGYPTIAN HIEROGLYPH-13754;Lo;0;L;;;;;N;;;;; +13755;EGYPTIAN HIEROGLYPH-13755;Lo;0;L;;;;;N;;;;; +13756;EGYPTIAN HIEROGLYPH-13756;Lo;0;L;;;;;N;;;;; +13757;EGYPTIAN HIEROGLYPH-13757;Lo;0;L;;;;;N;;;;; +13758;EGYPTIAN HIEROGLYPH-13758;Lo;0;L;;;;;N;;;;; +13759;EGYPTIAN HIEROGLYPH-13759;Lo;0;L;;;;;N;;;;; +1375A;EGYPTIAN HIEROGLYPH-1375A;Lo;0;L;;;;;N;;;;; +1375B;EGYPTIAN HIEROGLYPH-1375B;Lo;0;L;;;;;N;;;;; +1375C;EGYPTIAN HIEROGLYPH-1375C;Lo;0;L;;;;;N;;;;; +1375D;EGYPTIAN HIEROGLYPH-1375D;Lo;0;L;;;;;N;;;;; +1375E;EGYPTIAN HIEROGLYPH-1375E;Lo;0;L;;;;;N;;;;; +1375F;EGYPTIAN HIEROGLYPH-1375F;Lo;0;L;;;;;N;;;;; +13760;EGYPTIAN HIEROGLYPH-13760;Lo;0;L;;;;;N;;;;; +13761;EGYPTIAN HIEROGLYPH-13761;Lo;0;L;;;;;N;;;;; +13762;EGYPTIAN HIEROGLYPH-13762;Lo;0;L;;;;;N;;;;; +13763;EGYPTIAN HIEROGLYPH-13763;Lo;0;L;;;;;N;;;;; +13764;EGYPTIAN HIEROGLYPH-13764;Lo;0;L;;;;;N;;;;; +13765;EGYPTIAN HIEROGLYPH-13765;Lo;0;L;;;;;N;;;;; +13766;EGYPTIAN HIEROGLYPH-13766;Lo;0;L;;;;;N;;;;; +13767;EGYPTIAN HIEROGLYPH-13767;Lo;0;L;;;;;N;;;;; +13768;EGYPTIAN HIEROGLYPH-13768;Lo;0;L;;;;;N;;;;; +13769;EGYPTIAN HIEROGLYPH-13769;Lo;0;L;;;;;N;;;;; +1376A;EGYPTIAN HIEROGLYPH-1376A;Lo;0;L;;;;;N;;;;; +1376B;EGYPTIAN HIEROGLYPH-1376B;Lo;0;L;;;;;N;;;;; +1376C;EGYPTIAN HIEROGLYPH-1376C;Lo;0;L;;;;;N;;;;; +1376D;EGYPTIAN HIEROGLYPH-1376D;Lo;0;L;;;;;N;;;;; +1376E;EGYPTIAN HIEROGLYPH-1376E;Lo;0;L;;;;;N;;;;; +1376F;EGYPTIAN HIEROGLYPH-1376F;Lo;0;L;;;;;N;;;;; +13770;EGYPTIAN HIEROGLYPH-13770;Lo;0;L;;;;;N;;;;; +13771;EGYPTIAN HIEROGLYPH-13771;Lo;0;L;;;;;N;;;;; +13772;EGYPTIAN HIEROGLYPH-13772;Lo;0;L;;;;;N;;;;; +13773;EGYPTIAN HIEROGLYPH-13773;Lo;0;L;;;;;N;;;;; +13774;EGYPTIAN HIEROGLYPH-13774;Lo;0;L;;;;;N;;;;; +13775;EGYPTIAN HIEROGLYPH-13775;Lo;0;L;;;;;N;;;;; +13776;EGYPTIAN HIEROGLYPH-13776;Lo;0;L;;;;;N;;;;; +13777;EGYPTIAN HIEROGLYPH-13777;Lo;0;L;;;;;N;;;;; +13778;EGYPTIAN HIEROGLYPH-13778;Lo;0;L;;;;;N;;;;; +13779;EGYPTIAN HIEROGLYPH-13779;Lo;0;L;;;;;N;;;;; +1377A;EGYPTIAN HIEROGLYPH-1377A;Lo;0;L;;;;;N;;;;; +1377B;EGYPTIAN HIEROGLYPH-1377B;Lo;0;L;;;;;N;;;;; +1377C;EGYPTIAN HIEROGLYPH-1377C;Lo;0;L;;;;;N;;;;; +1377D;EGYPTIAN HIEROGLYPH-1377D;Lo;0;L;;;;;N;;;;; +1377E;EGYPTIAN HIEROGLYPH-1377E;Lo;0;L;;;;;N;;;;; +1377F;EGYPTIAN HIEROGLYPH-1377F;Lo;0;L;;;;;N;;;;; +13780;EGYPTIAN HIEROGLYPH-13780;Lo;0;L;;;;;N;;;;; +13781;EGYPTIAN HIEROGLYPH-13781;Lo;0;L;;;;;N;;;;; +13782;EGYPTIAN HIEROGLYPH-13782;Lo;0;L;;;;;N;;;;; +13783;EGYPTIAN HIEROGLYPH-13783;Lo;0;L;;;;;N;;;;; +13784;EGYPTIAN HIEROGLYPH-13784;Lo;0;L;;;;;N;;;;; +13785;EGYPTIAN HIEROGLYPH-13785;Lo;0;L;;;;;N;;;;; +13786;EGYPTIAN HIEROGLYPH-13786;Lo;0;L;;;;;N;;;;; +13787;EGYPTIAN HIEROGLYPH-13787;Lo;0;L;;;;;N;;;;; +13788;EGYPTIAN HIEROGLYPH-13788;Lo;0;L;;;;;N;;;;; +13789;EGYPTIAN HIEROGLYPH-13789;Lo;0;L;;;;;N;;;;; +1378A;EGYPTIAN HIEROGLYPH-1378A;Lo;0;L;;;;;N;;;;; +1378B;EGYPTIAN HIEROGLYPH-1378B;Lo;0;L;;;;;N;;;;; +1378C;EGYPTIAN HIEROGLYPH-1378C;Lo;0;L;;;;;N;;;;; +1378D;EGYPTIAN HIEROGLYPH-1378D;Lo;0;L;;;;;N;;;;; +1378E;EGYPTIAN HIEROGLYPH-1378E;Lo;0;L;;;;;N;;;;; +1378F;EGYPTIAN HIEROGLYPH-1378F;Lo;0;L;;;;;N;;;;; +13790;EGYPTIAN HIEROGLYPH-13790;Lo;0;L;;;;;N;;;;; +13791;EGYPTIAN HIEROGLYPH-13791;Lo;0;L;;;;;N;;;;; +13792;EGYPTIAN HIEROGLYPH-13792;Lo;0;L;;;;;N;;;;; +13793;EGYPTIAN HIEROGLYPH-13793;Lo;0;L;;;;;N;;;;; +13794;EGYPTIAN HIEROGLYPH-13794;Lo;0;L;;;;;N;;;;; +13795;EGYPTIAN HIEROGLYPH-13795;Lo;0;L;;;;;N;;;;; +13796;EGYPTIAN HIEROGLYPH-13796;Lo;0;L;;;;;N;;;;; +13797;EGYPTIAN HIEROGLYPH-13797;Lo;0;L;;;;;N;;;;; +13798;EGYPTIAN HIEROGLYPH-13798;Lo;0;L;;;;;N;;;;; +13799;EGYPTIAN HIEROGLYPH-13799;Lo;0;L;;;;;N;;;;; +1379A;EGYPTIAN HIEROGLYPH-1379A;Lo;0;L;;;;;N;;;;; +1379B;EGYPTIAN HIEROGLYPH-1379B;Lo;0;L;;;;;N;;;;; +1379C;EGYPTIAN HIEROGLYPH-1379C;Lo;0;L;;;;;N;;;;; +1379D;EGYPTIAN HIEROGLYPH-1379D;Lo;0;L;;;;;N;;;;; +1379E;EGYPTIAN HIEROGLYPH-1379E;Lo;0;L;;;;;N;;;;; +1379F;EGYPTIAN HIEROGLYPH-1379F;Lo;0;L;;;;;N;;;;; +137A0;EGYPTIAN HIEROGLYPH-137A0;Lo;0;L;;;;;N;;;;; +137A1;EGYPTIAN HIEROGLYPH-137A1;Lo;0;L;;;;;N;;;;; +137A2;EGYPTIAN HIEROGLYPH-137A2;Lo;0;L;;;;;N;;;;; +137A3;EGYPTIAN HIEROGLYPH-137A3;Lo;0;L;;;;;N;;;;; +137A4;EGYPTIAN HIEROGLYPH-137A4;Lo;0;L;;;;;N;;;;; +137A5;EGYPTIAN HIEROGLYPH-137A5;Lo;0;L;;;;;N;;;;; +137A6;EGYPTIAN HIEROGLYPH-137A6;Lo;0;L;;;;;N;;;;; +137A7;EGYPTIAN HIEROGLYPH-137A7;Lo;0;L;;;;;N;;;;; +137A8;EGYPTIAN HIEROGLYPH-137A8;Lo;0;L;;;;;N;;;;; +137A9;EGYPTIAN HIEROGLYPH-137A9;Lo;0;L;;;;;N;;;;; +137AA;EGYPTIAN HIEROGLYPH-137AA;Lo;0;L;;;;;N;;;;; +137AB;EGYPTIAN HIEROGLYPH-137AB;Lo;0;L;;;;;N;;;;; +137AC;EGYPTIAN HIEROGLYPH-137AC;Lo;0;L;;;;;N;;;;; +137AD;EGYPTIAN HIEROGLYPH-137AD;Lo;0;L;;;;;N;;;;; +137AE;EGYPTIAN HIEROGLYPH-137AE;Lo;0;L;;;;;N;;;;; +137AF;EGYPTIAN HIEROGLYPH-137AF;Lo;0;L;;;;;N;;;;; +137B0;EGYPTIAN HIEROGLYPH-137B0;Lo;0;L;;;;;N;;;;; +137B1;EGYPTIAN HIEROGLYPH-137B1;Lo;0;L;;;;;N;;;;; +137B2;EGYPTIAN HIEROGLYPH-137B2;Lo;0;L;;;;;N;;;;; +137B3;EGYPTIAN HIEROGLYPH-137B3;Lo;0;L;;;;;N;;;;; +137B4;EGYPTIAN HIEROGLYPH-137B4;Lo;0;L;;;;;N;;;;; +137B5;EGYPTIAN HIEROGLYPH-137B5;Lo;0;L;;;;;N;;;;; +137B6;EGYPTIAN HIEROGLYPH-137B6;Lo;0;L;;;;;N;;;;; +137B7;EGYPTIAN HIEROGLYPH-137B7;Lo;0;L;;;;;N;;;;; +137B8;EGYPTIAN HIEROGLYPH-137B8;Lo;0;L;;;;;N;;;;; +137B9;EGYPTIAN HIEROGLYPH-137B9;Lo;0;L;;;;;N;;;;; +137BA;EGYPTIAN HIEROGLYPH-137BA;Lo;0;L;;;;;N;;;;; +137BB;EGYPTIAN HIEROGLYPH-137BB;Lo;0;L;;;;;N;;;;; +137BC;EGYPTIAN HIEROGLYPH-137BC;Lo;0;L;;;;;N;;;;; +137BD;EGYPTIAN HIEROGLYPH-137BD;Lo;0;L;;;;;N;;;;; +137BE;EGYPTIAN HIEROGLYPH-137BE;Lo;0;L;;;;;N;;;;; +137BF;EGYPTIAN HIEROGLYPH-137BF;Lo;0;L;;;;;N;;;;; +137C0;EGYPTIAN HIEROGLYPH-137C0;Lo;0;L;;;;;N;;;;; +137C1;EGYPTIAN HIEROGLYPH-137C1;Lo;0;L;;;;;N;;;;; +137C2;EGYPTIAN HIEROGLYPH-137C2;Lo;0;L;;;;;N;;;;; +137C3;EGYPTIAN HIEROGLYPH-137C3;Lo;0;L;;;;;N;;;;; +137C4;EGYPTIAN HIEROGLYPH-137C4;Lo;0;L;;;;;N;;;;; +137C5;EGYPTIAN HIEROGLYPH-137C5;Lo;0;L;;;;;N;;;;; +137C6;EGYPTIAN HIEROGLYPH-137C6;Lo;0;L;;;;;N;;;;; +137C7;EGYPTIAN HIEROGLYPH-137C7;Lo;0;L;;;;;N;;;;; +137C8;EGYPTIAN HIEROGLYPH-137C8;Lo;0;L;;;;;N;;;;; +137C9;EGYPTIAN HIEROGLYPH-137C9;Lo;0;L;;;;;N;;;;; +137CA;EGYPTIAN HIEROGLYPH-137CA;Lo;0;L;;;;;N;;;;; +137CB;EGYPTIAN HIEROGLYPH-137CB;Lo;0;L;;;;;N;;;;; +137CC;EGYPTIAN HIEROGLYPH-137CC;Lo;0;L;;;;;N;;;;; +137CD;EGYPTIAN HIEROGLYPH-137CD;Lo;0;L;;;;;N;;;;; +137CE;EGYPTIAN HIEROGLYPH-137CE;Lo;0;L;;;;;N;;;;; +137CF;EGYPTIAN HIEROGLYPH-137CF;Lo;0;L;;;;;N;;;;; +137D0;EGYPTIAN HIEROGLYPH-137D0;Lo;0;L;;;;;N;;;;; +137D1;EGYPTIAN HIEROGLYPH-137D1;Lo;0;L;;;;;N;;;;; +137D2;EGYPTIAN HIEROGLYPH-137D2;Lo;0;L;;;;;N;;;;; +137D3;EGYPTIAN HIEROGLYPH-137D3;Lo;0;L;;;;;N;;;;; +137D4;EGYPTIAN HIEROGLYPH-137D4;Lo;0;L;;;;;N;;;;; +137D5;EGYPTIAN HIEROGLYPH-137D5;Lo;0;L;;;;;N;;;;; +137D6;EGYPTIAN HIEROGLYPH-137D6;Lo;0;L;;;;;N;;;;; +137D7;EGYPTIAN HIEROGLYPH-137D7;Lo;0;L;;;;;N;;;;; +137D8;EGYPTIAN HIEROGLYPH-137D8;Lo;0;L;;;;;N;;;;; +137D9;EGYPTIAN HIEROGLYPH-137D9;Lo;0;L;;;;;N;;;;; +137DA;EGYPTIAN HIEROGLYPH-137DA;Lo;0;L;;;;;N;;;;; +137DB;EGYPTIAN HIEROGLYPH-137DB;Lo;0;L;;;;;N;;;;; +137DC;EGYPTIAN HIEROGLYPH-137DC;Lo;0;L;;;;;N;;;;; +137DD;EGYPTIAN HIEROGLYPH-137DD;Lo;0;L;;;;;N;;;;; +137DE;EGYPTIAN HIEROGLYPH-137DE;Lo;0;L;;;;;N;;;;; +137DF;EGYPTIAN HIEROGLYPH-137DF;Lo;0;L;;;;;N;;;;; +137E0;EGYPTIAN HIEROGLYPH-137E0;Lo;0;L;;;;;N;;;;; +137E1;EGYPTIAN HIEROGLYPH-137E1;Lo;0;L;;;;;N;;;;; +137E2;EGYPTIAN HIEROGLYPH-137E2;Lo;0;L;;;;;N;;;;; +137E3;EGYPTIAN HIEROGLYPH-137E3;Lo;0;L;;;;;N;;;;; +137E4;EGYPTIAN HIEROGLYPH-137E4;Lo;0;L;;;;;N;;;;; +137E5;EGYPTIAN HIEROGLYPH-137E5;Lo;0;L;;;;;N;;;;; +137E6;EGYPTIAN HIEROGLYPH-137E6;Lo;0;L;;;;;N;;;;; +137E7;EGYPTIAN HIEROGLYPH-137E7;Lo;0;L;;;;;N;;;;; +137E8;EGYPTIAN HIEROGLYPH-137E8;Lo;0;L;;;;;N;;;;; +137E9;EGYPTIAN HIEROGLYPH-137E9;Lo;0;L;;;;;N;;;;; +137EA;EGYPTIAN HIEROGLYPH-137EA;Lo;0;L;;;;;N;;;;; +137EB;EGYPTIAN HIEROGLYPH-137EB;Lo;0;L;;;;;N;;;;; +137EC;EGYPTIAN HIEROGLYPH-137EC;Lo;0;L;;;;;N;;;;; +137ED;EGYPTIAN HIEROGLYPH-137ED;Lo;0;L;;;;;N;;;;; +137EE;EGYPTIAN HIEROGLYPH-137EE;Lo;0;L;;;;;N;;;;; +137EF;EGYPTIAN HIEROGLYPH-137EF;Lo;0;L;;;;;N;;;;; +137F0;EGYPTIAN HIEROGLYPH-137F0;Lo;0;L;;;;;N;;;;; +137F1;EGYPTIAN HIEROGLYPH-137F1;Lo;0;L;;;;;N;;;;; +137F2;EGYPTIAN HIEROGLYPH-137F2;Lo;0;L;;;;;N;;;;; +137F3;EGYPTIAN HIEROGLYPH-137F3;Lo;0;L;;;;;N;;;;; +137F4;EGYPTIAN HIEROGLYPH-137F4;Lo;0;L;;;;;N;;;;; +137F5;EGYPTIAN HIEROGLYPH-137F5;Lo;0;L;;;;;N;;;;; +137F6;EGYPTIAN HIEROGLYPH-137F6;Lo;0;L;;;;;N;;;;; +137F7;EGYPTIAN HIEROGLYPH-137F7;Lo;0;L;;;;;N;;;;; +137F8;EGYPTIAN HIEROGLYPH-137F8;Lo;0;L;;;;;N;;;;; +137F9;EGYPTIAN HIEROGLYPH-137F9;Lo;0;L;;;;;N;;;;; +137FA;EGYPTIAN HIEROGLYPH-137FA;Lo;0;L;;;;;N;;;;; +137FB;EGYPTIAN HIEROGLYPH-137FB;Lo;0;L;;;;;N;;;;; +137FC;EGYPTIAN HIEROGLYPH-137FC;Lo;0;L;;;;;N;;;;; +137FD;EGYPTIAN HIEROGLYPH-137FD;Lo;0;L;;;;;N;;;;; +137FE;EGYPTIAN HIEROGLYPH-137FE;Lo;0;L;;;;;N;;;;; +137FF;EGYPTIAN HIEROGLYPH-137FF;Lo;0;L;;;;;N;;;;; +13800;EGYPTIAN HIEROGLYPH-13800;Lo;0;L;;;;;N;;;;; +13801;EGYPTIAN HIEROGLYPH-13801;Lo;0;L;;;;;N;;;;; +13802;EGYPTIAN HIEROGLYPH-13802;Lo;0;L;;;;;N;;;;; +13803;EGYPTIAN HIEROGLYPH-13803;Lo;0;L;;;;;N;;;;; +13804;EGYPTIAN HIEROGLYPH-13804;Lo;0;L;;;;;N;;;;; +13805;EGYPTIAN HIEROGLYPH-13805;Lo;0;L;;;;;N;;;;; +13806;EGYPTIAN HIEROGLYPH-13806;Lo;0;L;;;;;N;;;;; +13807;EGYPTIAN HIEROGLYPH-13807;Lo;0;L;;;;;N;;;;; +13808;EGYPTIAN HIEROGLYPH-13808;Lo;0;L;;;;;N;;;;; +13809;EGYPTIAN HIEROGLYPH-13809;Lo;0;L;;;;;N;;;;; +1380A;EGYPTIAN HIEROGLYPH-1380A;Lo;0;L;;;;;N;;;;; +1380B;EGYPTIAN HIEROGLYPH-1380B;Lo;0;L;;;;;N;;;;; +1380C;EGYPTIAN HIEROGLYPH-1380C;Lo;0;L;;;;;N;;;;; +1380D;EGYPTIAN HIEROGLYPH-1380D;Lo;0;L;;;;;N;;;;; +1380E;EGYPTIAN HIEROGLYPH-1380E;Lo;0;L;;;;;N;;;;; +1380F;EGYPTIAN HIEROGLYPH-1380F;Lo;0;L;;;;;N;;;;; +13810;EGYPTIAN HIEROGLYPH-13810;Lo;0;L;;;;;N;;;;; +13811;EGYPTIAN HIEROGLYPH-13811;Lo;0;L;;;;;N;;;;; +13812;EGYPTIAN HIEROGLYPH-13812;Lo;0;L;;;;;N;;;;; +13813;EGYPTIAN HIEROGLYPH-13813;Lo;0;L;;;;;N;;;;; +13814;EGYPTIAN HIEROGLYPH-13814;Lo;0;L;;;;;N;;;;; +13815;EGYPTIAN HIEROGLYPH-13815;Lo;0;L;;;;;N;;;;; +13816;EGYPTIAN HIEROGLYPH-13816;Lo;0;L;;;;;N;;;;; +13817;EGYPTIAN HIEROGLYPH-13817;Lo;0;L;;;;;N;;;;; +13818;EGYPTIAN HIEROGLYPH-13818;Lo;0;L;;;;;N;;;;; +13819;EGYPTIAN HIEROGLYPH-13819;Lo;0;L;;;;;N;;;;; +1381A;EGYPTIAN HIEROGLYPH-1381A;Lo;0;L;;;;;N;;;;; +1381B;EGYPTIAN HIEROGLYPH-1381B;Lo;0;L;;;;;N;;;;; +1381C;EGYPTIAN HIEROGLYPH-1381C;Lo;0;L;;;;;N;;;;; +1381D;EGYPTIAN HIEROGLYPH-1381D;Lo;0;L;;;;;N;;;;; +1381E;EGYPTIAN HIEROGLYPH-1381E;Lo;0;L;;;;;N;;;;; +1381F;EGYPTIAN HIEROGLYPH-1381F;Lo;0;L;;;;;N;;;;; +13820;EGYPTIAN HIEROGLYPH-13820;Lo;0;L;;;;;N;;;;; +13821;EGYPTIAN HIEROGLYPH-13821;Lo;0;L;;;;;N;;;;; +13822;EGYPTIAN HIEROGLYPH-13822;Lo;0;L;;;;;N;;;;; +13823;EGYPTIAN HIEROGLYPH-13823;Lo;0;L;;;;;N;;;;; +13824;EGYPTIAN HIEROGLYPH-13824;Lo;0;L;;;;;N;;;;; +13825;EGYPTIAN HIEROGLYPH-13825;Lo;0;L;;;;;N;;;;; +13826;EGYPTIAN HIEROGLYPH-13826;Lo;0;L;;;;;N;;;;; +13827;EGYPTIAN HIEROGLYPH-13827;Lo;0;L;;;;;N;;;;; +13828;EGYPTIAN HIEROGLYPH-13828;Lo;0;L;;;;;N;;;;; +13829;EGYPTIAN HIEROGLYPH-13829;Lo;0;L;;;;;N;;;;; +1382A;EGYPTIAN HIEROGLYPH-1382A;Lo;0;L;;;;;N;;;;; +1382B;EGYPTIAN HIEROGLYPH-1382B;Lo;0;L;;;;;N;;;;; +1382C;EGYPTIAN HIEROGLYPH-1382C;Lo;0;L;;;;;N;;;;; +1382D;EGYPTIAN HIEROGLYPH-1382D;Lo;0;L;;;;;N;;;;; +1382E;EGYPTIAN HIEROGLYPH-1382E;Lo;0;L;;;;;N;;;;; +1382F;EGYPTIAN HIEROGLYPH-1382F;Lo;0;L;;;;;N;;;;; +13830;EGYPTIAN HIEROGLYPH-13830;Lo;0;L;;;;;N;;;;; +13831;EGYPTIAN HIEROGLYPH-13831;Lo;0;L;;;;;N;;;;; +13832;EGYPTIAN HIEROGLYPH-13832;Lo;0;L;;;;;N;;;;; +13833;EGYPTIAN HIEROGLYPH-13833;Lo;0;L;;;;;N;;;;; +13834;EGYPTIAN HIEROGLYPH-13834;Lo;0;L;;;;;N;;;;; +13835;EGYPTIAN HIEROGLYPH-13835;Lo;0;L;;;;;N;;;;; +13836;EGYPTIAN HIEROGLYPH-13836;Lo;0;L;;;;;N;;;;; +13837;EGYPTIAN HIEROGLYPH-13837;Lo;0;L;;;;;N;;;;; +13838;EGYPTIAN HIEROGLYPH-13838;Lo;0;L;;;;;N;;;;; +13839;EGYPTIAN HIEROGLYPH-13839;Lo;0;L;;;;;N;;;;; +1383A;EGYPTIAN HIEROGLYPH-1383A;Lo;0;L;;;;;N;;;;; +1383B;EGYPTIAN HIEROGLYPH-1383B;Lo;0;L;;;;;N;;;;; +1383C;EGYPTIAN HIEROGLYPH-1383C;Lo;0;L;;;;;N;;;;; +1383D;EGYPTIAN HIEROGLYPH-1383D;Lo;0;L;;;;;N;;;;; +1383E;EGYPTIAN HIEROGLYPH-1383E;Lo;0;L;;;;;N;;;;; +1383F;EGYPTIAN HIEROGLYPH-1383F;Lo;0;L;;;;;N;;;;; +13840;EGYPTIAN HIEROGLYPH-13840;Lo;0;L;;;;;N;;;;; +13841;EGYPTIAN HIEROGLYPH-13841;Lo;0;L;;;;;N;;;;; +13842;EGYPTIAN HIEROGLYPH-13842;Lo;0;L;;;;;N;;;;; +13843;EGYPTIAN HIEROGLYPH-13843;Lo;0;L;;;;;N;;;;; +13844;EGYPTIAN HIEROGLYPH-13844;Lo;0;L;;;;;N;;;;; +13845;EGYPTIAN HIEROGLYPH-13845;Lo;0;L;;;;;N;;;;; +13846;EGYPTIAN HIEROGLYPH-13846;Lo;0;L;;;;;N;;;;; +13847;EGYPTIAN HIEROGLYPH-13847;Lo;0;L;;;;;N;;;;; +13848;EGYPTIAN HIEROGLYPH-13848;Lo;0;L;;;;;N;;;;; +13849;EGYPTIAN HIEROGLYPH-13849;Lo;0;L;;;;;N;;;;; +1384A;EGYPTIAN HIEROGLYPH-1384A;Lo;0;L;;;;;N;;;;; +1384B;EGYPTIAN HIEROGLYPH-1384B;Lo;0;L;;;;;N;;;;; +1384C;EGYPTIAN HIEROGLYPH-1384C;Lo;0;L;;;;;N;;;;; +1384D;EGYPTIAN HIEROGLYPH-1384D;Lo;0;L;;;;;N;;;;; +1384E;EGYPTIAN HIEROGLYPH-1384E;Lo;0;L;;;;;N;;;;; +1384F;EGYPTIAN HIEROGLYPH-1384F;Lo;0;L;;;;;N;;;;; +13850;EGYPTIAN HIEROGLYPH-13850;Lo;0;L;;;;;N;;;;; +13851;EGYPTIAN HIEROGLYPH-13851;Lo;0;L;;;;;N;;;;; +13852;EGYPTIAN HIEROGLYPH-13852;Lo;0;L;;;;;N;;;;; +13853;EGYPTIAN HIEROGLYPH-13853;Lo;0;L;;;;;N;;;;; +13854;EGYPTIAN HIEROGLYPH-13854;Lo;0;L;;;;;N;;;;; +13855;EGYPTIAN HIEROGLYPH-13855;Lo;0;L;;;;;N;;;;; +13856;EGYPTIAN HIEROGLYPH-13856;Lo;0;L;;;;;N;;;;; +13857;EGYPTIAN HIEROGLYPH-13857;Lo;0;L;;;;;N;;;;; +13858;EGYPTIAN HIEROGLYPH-13858;Lo;0;L;;;;;N;;;;; +13859;EGYPTIAN HIEROGLYPH-13859;Lo;0;L;;;;;N;;;;; +1385A;EGYPTIAN HIEROGLYPH-1385A;Lo;0;L;;;;;N;;;;; +1385B;EGYPTIAN HIEROGLYPH-1385B;Lo;0;L;;;;;N;;;;; +1385C;EGYPTIAN HIEROGLYPH-1385C;Lo;0;L;;;;;N;;;;; +1385D;EGYPTIAN HIEROGLYPH-1385D;Lo;0;L;;;;;N;;;;; +1385E;EGYPTIAN HIEROGLYPH-1385E;Lo;0;L;;;;;N;;;;; +1385F;EGYPTIAN HIEROGLYPH-1385F;Lo;0;L;;;;;N;;;;; +13860;EGYPTIAN HIEROGLYPH-13860;Lo;0;L;;;;;N;;;;; +13861;EGYPTIAN HIEROGLYPH-13861;Lo;0;L;;;;;N;;;;; +13862;EGYPTIAN HIEROGLYPH-13862;Lo;0;L;;;;;N;;;;; +13863;EGYPTIAN HIEROGLYPH-13863;Lo;0;L;;;;;N;;;;; +13864;EGYPTIAN HIEROGLYPH-13864;Lo;0;L;;;;;N;;;;; +13865;EGYPTIAN HIEROGLYPH-13865;Lo;0;L;;;;;N;;;;; +13866;EGYPTIAN HIEROGLYPH-13866;Lo;0;L;;;;;N;;;;; +13867;EGYPTIAN HIEROGLYPH-13867;Lo;0;L;;;;;N;;;;; +13868;EGYPTIAN HIEROGLYPH-13868;Lo;0;L;;;;;N;;;;; +13869;EGYPTIAN HIEROGLYPH-13869;Lo;0;L;;;;;N;;;;; +1386A;EGYPTIAN HIEROGLYPH-1386A;Lo;0;L;;;;;N;;;;; +1386B;EGYPTIAN HIEROGLYPH-1386B;Lo;0;L;;;;;N;;;;; +1386C;EGYPTIAN HIEROGLYPH-1386C;Lo;0;L;;;;;N;;;;; +1386D;EGYPTIAN HIEROGLYPH-1386D;Lo;0;L;;;;;N;;;;; +1386E;EGYPTIAN HIEROGLYPH-1386E;Lo;0;L;;;;;N;;;;; +1386F;EGYPTIAN HIEROGLYPH-1386F;Lo;0;L;;;;;N;;;;; +13870;EGYPTIAN HIEROGLYPH-13870;Lo;0;L;;;;;N;;;;; +13871;EGYPTIAN HIEROGLYPH-13871;Lo;0;L;;;;;N;;;;; +13872;EGYPTIAN HIEROGLYPH-13872;Lo;0;L;;;;;N;;;;; +13873;EGYPTIAN HIEROGLYPH-13873;Lo;0;L;;;;;N;;;;; +13874;EGYPTIAN HIEROGLYPH-13874;Lo;0;L;;;;;N;;;;; +13875;EGYPTIAN HIEROGLYPH-13875;Lo;0;L;;;;;N;;;;; +13876;EGYPTIAN HIEROGLYPH-13876;Lo;0;L;;;;;N;;;;; +13877;EGYPTIAN HIEROGLYPH-13877;Lo;0;L;;;;;N;;;;; +13878;EGYPTIAN HIEROGLYPH-13878;Lo;0;L;;;;;N;;;;; +13879;EGYPTIAN HIEROGLYPH-13879;Lo;0;L;;;;;N;;;;; +1387A;EGYPTIAN HIEROGLYPH-1387A;Lo;0;L;;;;;N;;;;; +1387B;EGYPTIAN HIEROGLYPH-1387B;Lo;0;L;;;;;N;;;;; +1387C;EGYPTIAN HIEROGLYPH-1387C;Lo;0;L;;;;;N;;;;; +1387D;EGYPTIAN HIEROGLYPH-1387D;Lo;0;L;;;;;N;;;;; +1387E;EGYPTIAN HIEROGLYPH-1387E;Lo;0;L;;;;;N;;;;; +1387F;EGYPTIAN HIEROGLYPH-1387F;Lo;0;L;;;;;N;;;;; +13880;EGYPTIAN HIEROGLYPH-13880;Lo;0;L;;;;;N;;;;; +13881;EGYPTIAN HIEROGLYPH-13881;Lo;0;L;;;;;N;;;;; +13882;EGYPTIAN HIEROGLYPH-13882;Lo;0;L;;;;;N;;;;; +13883;EGYPTIAN HIEROGLYPH-13883;Lo;0;L;;;;;N;;;;; +13884;EGYPTIAN HIEROGLYPH-13884;Lo;0;L;;;;;N;;;;; +13885;EGYPTIAN HIEROGLYPH-13885;Lo;0;L;;;;;N;;;;; +13886;EGYPTIAN HIEROGLYPH-13886;Lo;0;L;;;;;N;;;;; +13887;EGYPTIAN HIEROGLYPH-13887;Lo;0;L;;;;;N;;;;; +13888;EGYPTIAN HIEROGLYPH-13888;Lo;0;L;;;;;N;;;;; +13889;EGYPTIAN HIEROGLYPH-13889;Lo;0;L;;;;;N;;;;; +1388A;EGYPTIAN HIEROGLYPH-1388A;Lo;0;L;;;;;N;;;;; +1388B;EGYPTIAN HIEROGLYPH-1388B;Lo;0;L;;;;;N;;;;; +1388C;EGYPTIAN HIEROGLYPH-1388C;Lo;0;L;;;;;N;;;;; +1388D;EGYPTIAN HIEROGLYPH-1388D;Lo;0;L;;;;;N;;;;; +1388E;EGYPTIAN HIEROGLYPH-1388E;Lo;0;L;;;;;N;;;;; +1388F;EGYPTIAN HIEROGLYPH-1388F;Lo;0;L;;;;;N;;;;; +13890;EGYPTIAN HIEROGLYPH-13890;Lo;0;L;;;;;N;;;;; +13891;EGYPTIAN HIEROGLYPH-13891;Lo;0;L;;;;;N;;;;; +13892;EGYPTIAN HIEROGLYPH-13892;Lo;0;L;;;;;N;;;;; +13893;EGYPTIAN HIEROGLYPH-13893;Lo;0;L;;;;;N;;;;; +13894;EGYPTIAN HIEROGLYPH-13894;Lo;0;L;;;;;N;;;;; +13895;EGYPTIAN HIEROGLYPH-13895;Lo;0;L;;;;;N;;;;; +13896;EGYPTIAN HIEROGLYPH-13896;Lo;0;L;;;;;N;;;;; +13897;EGYPTIAN HIEROGLYPH-13897;Lo;0;L;;;;;N;;;;; +13898;EGYPTIAN HIEROGLYPH-13898;Lo;0;L;;;;;N;;;;; +13899;EGYPTIAN HIEROGLYPH-13899;Lo;0;L;;;;;N;;;;; +1389A;EGYPTIAN HIEROGLYPH-1389A;Lo;0;L;;;;;N;;;;; +1389B;EGYPTIAN HIEROGLYPH-1389B;Lo;0;L;;;;;N;;;;; +1389C;EGYPTIAN HIEROGLYPH-1389C;Lo;0;L;;;;;N;;;;; +1389D;EGYPTIAN HIEROGLYPH-1389D;Lo;0;L;;;;;N;;;;; +1389E;EGYPTIAN HIEROGLYPH-1389E;Lo;0;L;;;;;N;;;;; +1389F;EGYPTIAN HIEROGLYPH-1389F;Lo;0;L;;;;;N;;;;; +138A0;EGYPTIAN HIEROGLYPH-138A0;Lo;0;L;;;;;N;;;;; +138A1;EGYPTIAN HIEROGLYPH-138A1;Lo;0;L;;;;;N;;;;; +138A2;EGYPTIAN HIEROGLYPH-138A2;Lo;0;L;;;;;N;;;;; +138A3;EGYPTIAN HIEROGLYPH-138A3;Lo;0;L;;;;;N;;;;; +138A4;EGYPTIAN HIEROGLYPH-138A4;Lo;0;L;;;;;N;;;;; +138A5;EGYPTIAN HIEROGLYPH-138A5;Lo;0;L;;;;;N;;;;; +138A6;EGYPTIAN HIEROGLYPH-138A6;Lo;0;L;;;;;N;;;;; +138A7;EGYPTIAN HIEROGLYPH-138A7;Lo;0;L;;;;;N;;;;; +138A8;EGYPTIAN HIEROGLYPH-138A8;Lo;0;L;;;;;N;;;;; +138A9;EGYPTIAN HIEROGLYPH-138A9;Lo;0;L;;;;;N;;;;; +138AA;EGYPTIAN HIEROGLYPH-138AA;Lo;0;L;;;;;N;;;;; +138AB;EGYPTIAN HIEROGLYPH-138AB;Lo;0;L;;;;;N;;;;; +138AC;EGYPTIAN HIEROGLYPH-138AC;Lo;0;L;;;;;N;;;;; +138AD;EGYPTIAN HIEROGLYPH-138AD;Lo;0;L;;;;;N;;;;; +138AE;EGYPTIAN HIEROGLYPH-138AE;Lo;0;L;;;;;N;;;;; +138AF;EGYPTIAN HIEROGLYPH-138AF;Lo;0;L;;;;;N;;;;; +138B0;EGYPTIAN HIEROGLYPH-138B0;Lo;0;L;;;;;N;;;;; +138B1;EGYPTIAN HIEROGLYPH-138B1;Lo;0;L;;;;;N;;;;; +138B2;EGYPTIAN HIEROGLYPH-138B2;Lo;0;L;;;;;N;;;;; +138B3;EGYPTIAN HIEROGLYPH-138B3;Lo;0;L;;;;;N;;;;; +138B4;EGYPTIAN HIEROGLYPH-138B4;Lo;0;L;;;;;N;;;;; +138B5;EGYPTIAN HIEROGLYPH-138B5;Lo;0;L;;;;;N;;;;; +138B6;EGYPTIAN HIEROGLYPH-138B6;Lo;0;L;;;;;N;;;;; +138B7;EGYPTIAN HIEROGLYPH-138B7;Lo;0;L;;;;;N;;;;; +138B8;EGYPTIAN HIEROGLYPH-138B8;Lo;0;L;;;;;N;;;;; +138B9;EGYPTIAN HIEROGLYPH-138B9;Lo;0;L;;;;;N;;;;; +138BA;EGYPTIAN HIEROGLYPH-138BA;Lo;0;L;;;;;N;;;;; +138BB;EGYPTIAN HIEROGLYPH-138BB;Lo;0;L;;;;;N;;;;; +138BC;EGYPTIAN HIEROGLYPH-138BC;Lo;0;L;;;;;N;;;;; +138BD;EGYPTIAN HIEROGLYPH-138BD;Lo;0;L;;;;;N;;;;; +138BE;EGYPTIAN HIEROGLYPH-138BE;Lo;0;L;;;;;N;;;;; +138BF;EGYPTIAN HIEROGLYPH-138BF;Lo;0;L;;;;;N;;;;; +138C0;EGYPTIAN HIEROGLYPH-138C0;Lo;0;L;;;;;N;;;;; +138C1;EGYPTIAN HIEROGLYPH-138C1;Lo;0;L;;;;;N;;;;; +138C2;EGYPTIAN HIEROGLYPH-138C2;Lo;0;L;;;;;N;;;;; +138C3;EGYPTIAN HIEROGLYPH-138C3;Lo;0;L;;;;;N;;;;; +138C4;EGYPTIAN HIEROGLYPH-138C4;Lo;0;L;;;;;N;;;;; +138C5;EGYPTIAN HIEROGLYPH-138C5;Lo;0;L;;;;;N;;;;; +138C6;EGYPTIAN HIEROGLYPH-138C6;Lo;0;L;;;;;N;;;;; +138C7;EGYPTIAN HIEROGLYPH-138C7;Lo;0;L;;;;;N;;;;; +138C8;EGYPTIAN HIEROGLYPH-138C8;Lo;0;L;;;;;N;;;;; +138C9;EGYPTIAN HIEROGLYPH-138C9;Lo;0;L;;;;;N;;;;; +138CA;EGYPTIAN HIEROGLYPH-138CA;Lo;0;L;;;;;N;;;;; +138CB;EGYPTIAN HIEROGLYPH-138CB;Lo;0;L;;;;;N;;;;; +138CC;EGYPTIAN HIEROGLYPH-138CC;Lo;0;L;;;;;N;;;;; +138CD;EGYPTIAN HIEROGLYPH-138CD;Lo;0;L;;;;;N;;;;; +138CE;EGYPTIAN HIEROGLYPH-138CE;Lo;0;L;;;;;N;;;;; +138CF;EGYPTIAN HIEROGLYPH-138CF;Lo;0;L;;;;;N;;;;; +138D0;EGYPTIAN HIEROGLYPH-138D0;Lo;0;L;;;;;N;;;;; +138D1;EGYPTIAN HIEROGLYPH-138D1;Lo;0;L;;;;;N;;;;; +138D2;EGYPTIAN HIEROGLYPH-138D2;Lo;0;L;;;;;N;;;;; +138D3;EGYPTIAN HIEROGLYPH-138D3;Lo;0;L;;;;;N;;;;; +138D4;EGYPTIAN HIEROGLYPH-138D4;Lo;0;L;;;;;N;;;;; +138D5;EGYPTIAN HIEROGLYPH-138D5;Lo;0;L;;;;;N;;;;; +138D6;EGYPTIAN HIEROGLYPH-138D6;Lo;0;L;;;;;N;;;;; +138D7;EGYPTIAN HIEROGLYPH-138D7;Lo;0;L;;;;;N;;;;; +138D8;EGYPTIAN HIEROGLYPH-138D8;Lo;0;L;;;;;N;;;;; +138D9;EGYPTIAN HIEROGLYPH-138D9;Lo;0;L;;;;;N;;;;; +138DA;EGYPTIAN HIEROGLYPH-138DA;Lo;0;L;;;;;N;;;;; +138DB;EGYPTIAN HIEROGLYPH-138DB;Lo;0;L;;;;;N;;;;; +138DC;EGYPTIAN HIEROGLYPH-138DC;Lo;0;L;;;;;N;;;;; +138DD;EGYPTIAN HIEROGLYPH-138DD;Lo;0;L;;;;;N;;;;; +138DE;EGYPTIAN HIEROGLYPH-138DE;Lo;0;L;;;;;N;;;;; +138DF;EGYPTIAN HIEROGLYPH-138DF;Lo;0;L;;;;;N;;;;; +138E0;EGYPTIAN HIEROGLYPH-138E0;Lo;0;L;;;;;N;;;;; +138E1;EGYPTIAN HIEROGLYPH-138E1;Lo;0;L;;;;;N;;;;; +138E2;EGYPTIAN HIEROGLYPH-138E2;Lo;0;L;;;;;N;;;;; +138E3;EGYPTIAN HIEROGLYPH-138E3;Lo;0;L;;;;;N;;;;; +138E4;EGYPTIAN HIEROGLYPH-138E4;Lo;0;L;;;;;N;;;;; +138E5;EGYPTIAN HIEROGLYPH-138E5;Lo;0;L;;;;;N;;;;; +138E6;EGYPTIAN HIEROGLYPH-138E6;Lo;0;L;;;;;N;;;;; +138E7;EGYPTIAN HIEROGLYPH-138E7;Lo;0;L;;;;;N;;;;; +138E8;EGYPTIAN HIEROGLYPH-138E8;Lo;0;L;;;;;N;;;;; +138E9;EGYPTIAN HIEROGLYPH-138E9;Lo;0;L;;;;;N;;;;; +138EA;EGYPTIAN HIEROGLYPH-138EA;Lo;0;L;;;;;N;;;;; +138EB;EGYPTIAN HIEROGLYPH-138EB;Lo;0;L;;;;;N;;;;; +138EC;EGYPTIAN HIEROGLYPH-138EC;Lo;0;L;;;;;N;;;;; +138ED;EGYPTIAN HIEROGLYPH-138ED;Lo;0;L;;;;;N;;;;; +138EE;EGYPTIAN HIEROGLYPH-138EE;Lo;0;L;;;;;N;;;;; +138EF;EGYPTIAN HIEROGLYPH-138EF;Lo;0;L;;;;;N;;;;; +138F0;EGYPTIAN HIEROGLYPH-138F0;Lo;0;L;;;;;N;;;;; +138F1;EGYPTIAN HIEROGLYPH-138F1;Lo;0;L;;;;;N;;;;; +138F2;EGYPTIAN HIEROGLYPH-138F2;Lo;0;L;;;;;N;;;;; +138F3;EGYPTIAN HIEROGLYPH-138F3;Lo;0;L;;;;;N;;;;; +138F4;EGYPTIAN HIEROGLYPH-138F4;Lo;0;L;;;;;N;;;;; +138F5;EGYPTIAN HIEROGLYPH-138F5;Lo;0;L;;;;;N;;;;; +138F6;EGYPTIAN HIEROGLYPH-138F6;Lo;0;L;;;;;N;;;;; +138F7;EGYPTIAN HIEROGLYPH-138F7;Lo;0;L;;;;;N;;;;; +138F8;EGYPTIAN HIEROGLYPH-138F8;Lo;0;L;;;;;N;;;;; +138F9;EGYPTIAN HIEROGLYPH-138F9;Lo;0;L;;;;;N;;;;; +138FA;EGYPTIAN HIEROGLYPH-138FA;Lo;0;L;;;;;N;;;;; +138FB;EGYPTIAN HIEROGLYPH-138FB;Lo;0;L;;;;;N;;;;; +138FC;EGYPTIAN HIEROGLYPH-138FC;Lo;0;L;;;;;N;;;;; +138FD;EGYPTIAN HIEROGLYPH-138FD;Lo;0;L;;;;;N;;;;; +138FE;EGYPTIAN HIEROGLYPH-138FE;Lo;0;L;;;;;N;;;;; +138FF;EGYPTIAN HIEROGLYPH-138FF;Lo;0;L;;;;;N;;;;; +13900;EGYPTIAN HIEROGLYPH-13900;Lo;0;L;;;;;N;;;;; +13901;EGYPTIAN HIEROGLYPH-13901;Lo;0;L;;;;;N;;;;; +13902;EGYPTIAN HIEROGLYPH-13902;Lo;0;L;;;;;N;;;;; +13903;EGYPTIAN HIEROGLYPH-13903;Lo;0;L;;;;;N;;;;; +13904;EGYPTIAN HIEROGLYPH-13904;Lo;0;L;;;;;N;;;;; +13905;EGYPTIAN HIEROGLYPH-13905;Lo;0;L;;;;;N;;;;; +13906;EGYPTIAN HIEROGLYPH-13906;Lo;0;L;;;;;N;;;;; +13907;EGYPTIAN HIEROGLYPH-13907;Lo;0;L;;;;;N;;;;; +13908;EGYPTIAN HIEROGLYPH-13908;Lo;0;L;;;;;N;;;;; +13909;EGYPTIAN HIEROGLYPH-13909;Lo;0;L;;;;;N;;;;; +1390A;EGYPTIAN HIEROGLYPH-1390A;Lo;0;L;;;;;N;;;;; +1390B;EGYPTIAN HIEROGLYPH-1390B;Lo;0;L;;;;;N;;;;; +1390C;EGYPTIAN HIEROGLYPH-1390C;Lo;0;L;;;;;N;;;;; +1390D;EGYPTIAN HIEROGLYPH-1390D;Lo;0;L;;;;;N;;;;; +1390E;EGYPTIAN HIEROGLYPH-1390E;Lo;0;L;;;;;N;;;;; +1390F;EGYPTIAN HIEROGLYPH-1390F;Lo;0;L;;;;;N;;;;; +13910;EGYPTIAN HIEROGLYPH-13910;Lo;0;L;;;;;N;;;;; +13911;EGYPTIAN HIEROGLYPH-13911;Lo;0;L;;;;;N;;;;; +13912;EGYPTIAN HIEROGLYPH-13912;Lo;0;L;;;;;N;;;;; +13913;EGYPTIAN HIEROGLYPH-13913;Lo;0;L;;;;;N;;;;; +13914;EGYPTIAN HIEROGLYPH-13914;Lo;0;L;;;;;N;;;;; +13915;EGYPTIAN HIEROGLYPH-13915;Lo;0;L;;;;;N;;;;; +13916;EGYPTIAN HIEROGLYPH-13916;Lo;0;L;;;;;N;;;;; +13917;EGYPTIAN HIEROGLYPH-13917;Lo;0;L;;;;;N;;;;; +13918;EGYPTIAN HIEROGLYPH-13918;Lo;0;L;;;;;N;;;;; +13919;EGYPTIAN HIEROGLYPH-13919;Lo;0;L;;;;;N;;;;; +1391A;EGYPTIAN HIEROGLYPH-1391A;Lo;0;L;;;;;N;;;;; +1391B;EGYPTIAN HIEROGLYPH-1391B;Lo;0;L;;;;;N;;;;; +1391C;EGYPTIAN HIEROGLYPH-1391C;Lo;0;L;;;;;N;;;;; +1391D;EGYPTIAN HIEROGLYPH-1391D;Lo;0;L;;;;;N;;;;; +1391E;EGYPTIAN HIEROGLYPH-1391E;Lo;0;L;;;;;N;;;;; +1391F;EGYPTIAN HIEROGLYPH-1391F;Lo;0;L;;;;;N;;;;; +13920;EGYPTIAN HIEROGLYPH-13920;Lo;0;L;;;;;N;;;;; +13921;EGYPTIAN HIEROGLYPH-13921;Lo;0;L;;;;;N;;;;; +13922;EGYPTIAN HIEROGLYPH-13922;Lo;0;L;;;;;N;;;;; +13923;EGYPTIAN HIEROGLYPH-13923;Lo;0;L;;;;;N;;;;; +13924;EGYPTIAN HIEROGLYPH-13924;Lo;0;L;;;;;N;;;;; +13925;EGYPTIAN HIEROGLYPH-13925;Lo;0;L;;;;;N;;;;; +13926;EGYPTIAN HIEROGLYPH-13926;Lo;0;L;;;;;N;;;;; +13927;EGYPTIAN HIEROGLYPH-13927;Lo;0;L;;;;;N;;;;; +13928;EGYPTIAN HIEROGLYPH-13928;Lo;0;L;;;;;N;;;;; +13929;EGYPTIAN HIEROGLYPH-13929;Lo;0;L;;;;;N;;;;; +1392A;EGYPTIAN HIEROGLYPH-1392A;Lo;0;L;;;;;N;;;;; +1392B;EGYPTIAN HIEROGLYPH-1392B;Lo;0;L;;;;;N;;;;; +1392C;EGYPTIAN HIEROGLYPH-1392C;Lo;0;L;;;;;N;;;;; +1392D;EGYPTIAN HIEROGLYPH-1392D;Lo;0;L;;;;;N;;;;; +1392E;EGYPTIAN HIEROGLYPH-1392E;Lo;0;L;;;;;N;;;;; +1392F;EGYPTIAN HIEROGLYPH-1392F;Lo;0;L;;;;;N;;;;; +13930;EGYPTIAN HIEROGLYPH-13930;Lo;0;L;;;;;N;;;;; +13931;EGYPTIAN HIEROGLYPH-13931;Lo;0;L;;;;;N;;;;; +13932;EGYPTIAN HIEROGLYPH-13932;Lo;0;L;;;;;N;;;;; +13933;EGYPTIAN HIEROGLYPH-13933;Lo;0;L;;;;;N;;;;; +13934;EGYPTIAN HIEROGLYPH-13934;Lo;0;L;;;;;N;;;;; +13935;EGYPTIAN HIEROGLYPH-13935;Lo;0;L;;;;;N;;;;; +13936;EGYPTIAN HIEROGLYPH-13936;Lo;0;L;;;;;N;;;;; +13937;EGYPTIAN HIEROGLYPH-13937;Lo;0;L;;;;;N;;;;; +13938;EGYPTIAN HIEROGLYPH-13938;Lo;0;L;;;;;N;;;;; +13939;EGYPTIAN HIEROGLYPH-13939;Lo;0;L;;;;;N;;;;; +1393A;EGYPTIAN HIEROGLYPH-1393A;Lo;0;L;;;;;N;;;;; +1393B;EGYPTIAN HIEROGLYPH-1393B;Lo;0;L;;;;;N;;;;; +1393C;EGYPTIAN HIEROGLYPH-1393C;Lo;0;L;;;;;N;;;;; +1393D;EGYPTIAN HIEROGLYPH-1393D;Lo;0;L;;;;;N;;;;; +1393E;EGYPTIAN HIEROGLYPH-1393E;Lo;0;L;;;;;N;;;;; +1393F;EGYPTIAN HIEROGLYPH-1393F;Lo;0;L;;;;;N;;;;; +13940;EGYPTIAN HIEROGLYPH-13940;Lo;0;L;;;;;N;;;;; +13941;EGYPTIAN HIEROGLYPH-13941;Lo;0;L;;;;;N;;;;; +13942;EGYPTIAN HIEROGLYPH-13942;Lo;0;L;;;;;N;;;;; +13943;EGYPTIAN HIEROGLYPH-13943;Lo;0;L;;;;;N;;;;; +13944;EGYPTIAN HIEROGLYPH-13944;Lo;0;L;;;;;N;;;;; +13945;EGYPTIAN HIEROGLYPH-13945;Lo;0;L;;;;;N;;;;; +13946;EGYPTIAN HIEROGLYPH-13946;Lo;0;L;;;;;N;;;;; +13947;EGYPTIAN HIEROGLYPH-13947;Lo;0;L;;;;;N;;;;; +13948;EGYPTIAN HIEROGLYPH-13948;Lo;0;L;;;;;N;;;;; +13949;EGYPTIAN HIEROGLYPH-13949;Lo;0;L;;;;;N;;;;; +1394A;EGYPTIAN HIEROGLYPH-1394A;Lo;0;L;;;;;N;;;;; +1394B;EGYPTIAN HIEROGLYPH-1394B;Lo;0;L;;;;;N;;;;; +1394C;EGYPTIAN HIEROGLYPH-1394C;Lo;0;L;;;;;N;;;;; +1394D;EGYPTIAN HIEROGLYPH-1394D;Lo;0;L;;;;;N;;;;; +1394E;EGYPTIAN HIEROGLYPH-1394E;Lo;0;L;;;;;N;;;;; +1394F;EGYPTIAN HIEROGLYPH-1394F;Lo;0;L;;;;;N;;;;; +13950;EGYPTIAN HIEROGLYPH-13950;Lo;0;L;;;;;N;;;;; +13951;EGYPTIAN HIEROGLYPH-13951;Lo;0;L;;;;;N;;;;; +13952;EGYPTIAN HIEROGLYPH-13952;Lo;0;L;;;;;N;;;;; +13953;EGYPTIAN HIEROGLYPH-13953;Lo;0;L;;;;;N;;;;; +13954;EGYPTIAN HIEROGLYPH-13954;Lo;0;L;;;;;N;;;;; +13955;EGYPTIAN HIEROGLYPH-13955;Lo;0;L;;;;;N;;;;; +13956;EGYPTIAN HIEROGLYPH-13956;Lo;0;L;;;;;N;;;;; +13957;EGYPTIAN HIEROGLYPH-13957;Lo;0;L;;;;;N;;;;; +13958;EGYPTIAN HIEROGLYPH-13958;Lo;0;L;;;;;N;;;;; +13959;EGYPTIAN HIEROGLYPH-13959;Lo;0;L;;;;;N;;;;; +1395A;EGYPTIAN HIEROGLYPH-1395A;Lo;0;L;;;;;N;;;;; +1395B;EGYPTIAN HIEROGLYPH-1395B;Lo;0;L;;;;;N;;;;; +1395C;EGYPTIAN HIEROGLYPH-1395C;Lo;0;L;;;;;N;;;;; +1395D;EGYPTIAN HIEROGLYPH-1395D;Lo;0;L;;;;;N;;;;; +1395E;EGYPTIAN HIEROGLYPH-1395E;Lo;0;L;;;;;N;;;;; +1395F;EGYPTIAN HIEROGLYPH-1395F;Lo;0;L;;;;;N;;;;; +13960;EGYPTIAN HIEROGLYPH-13960;Lo;0;L;;;;;N;;;;; +13961;EGYPTIAN HIEROGLYPH-13961;Lo;0;L;;;;;N;;;;; +13962;EGYPTIAN HIEROGLYPH-13962;Lo;0;L;;;;;N;;;;; +13963;EGYPTIAN HIEROGLYPH-13963;Lo;0;L;;;;;N;;;;; +13964;EGYPTIAN HIEROGLYPH-13964;Lo;0;L;;;;;N;;;;; +13965;EGYPTIAN HIEROGLYPH-13965;Lo;0;L;;;;;N;;;;; +13966;EGYPTIAN HIEROGLYPH-13966;Lo;0;L;;;;;N;;;;; +13967;EGYPTIAN HIEROGLYPH-13967;Lo;0;L;;;;;N;;;;; +13968;EGYPTIAN HIEROGLYPH-13968;Lo;0;L;;;;;N;;;;; +13969;EGYPTIAN HIEROGLYPH-13969;Lo;0;L;;;;;N;;;;; +1396A;EGYPTIAN HIEROGLYPH-1396A;Lo;0;L;;;;;N;;;;; +1396B;EGYPTIAN HIEROGLYPH-1396B;Lo;0;L;;;;;N;;;;; +1396C;EGYPTIAN HIEROGLYPH-1396C;Lo;0;L;;;;;N;;;;; +1396D;EGYPTIAN HIEROGLYPH-1396D;Lo;0;L;;;;;N;;;;; +1396E;EGYPTIAN HIEROGLYPH-1396E;Lo;0;L;;;;;N;;;;; +1396F;EGYPTIAN HIEROGLYPH-1396F;Lo;0;L;;;;;N;;;;; +13970;EGYPTIAN HIEROGLYPH-13970;Lo;0;L;;;;;N;;;;; +13971;EGYPTIAN HIEROGLYPH-13971;Lo;0;L;;;;;N;;;;; +13972;EGYPTIAN HIEROGLYPH-13972;Lo;0;L;;;;;N;;;;; +13973;EGYPTIAN HIEROGLYPH-13973;Lo;0;L;;;;;N;;;;; +13974;EGYPTIAN HIEROGLYPH-13974;Lo;0;L;;;;;N;;;;; +13975;EGYPTIAN HIEROGLYPH-13975;Lo;0;L;;;;;N;;;;; +13976;EGYPTIAN HIEROGLYPH-13976;Lo;0;L;;;;;N;;;;; +13977;EGYPTIAN HIEROGLYPH-13977;Lo;0;L;;;;;N;;;;; +13978;EGYPTIAN HIEROGLYPH-13978;Lo;0;L;;;;;N;;;;; +13979;EGYPTIAN HIEROGLYPH-13979;Lo;0;L;;;;;N;;;;; +1397A;EGYPTIAN HIEROGLYPH-1397A;Lo;0;L;;;;;N;;;;; +1397B;EGYPTIAN HIEROGLYPH-1397B;Lo;0;L;;;;;N;;;;; +1397C;EGYPTIAN HIEROGLYPH-1397C;Lo;0;L;;;;;N;;;;; +1397D;EGYPTIAN HIEROGLYPH-1397D;Lo;0;L;;;;;N;;;;; +1397E;EGYPTIAN HIEROGLYPH-1397E;Lo;0;L;;;;;N;;;;; +1397F;EGYPTIAN HIEROGLYPH-1397F;Lo;0;L;;;;;N;;;;; +13980;EGYPTIAN HIEROGLYPH-13980;Lo;0;L;;;;;N;;;;; +13981;EGYPTIAN HIEROGLYPH-13981;Lo;0;L;;;;;N;;;;; +13982;EGYPTIAN HIEROGLYPH-13982;Lo;0;L;;;;;N;;;;; +13983;EGYPTIAN HIEROGLYPH-13983;Lo;0;L;;;;;N;;;;; +13984;EGYPTIAN HIEROGLYPH-13984;Lo;0;L;;;;;N;;;;; +13985;EGYPTIAN HIEROGLYPH-13985;Lo;0;L;;;;;N;;;;; +13986;EGYPTIAN HIEROGLYPH-13986;Lo;0;L;;;;;N;;;;; +13987;EGYPTIAN HIEROGLYPH-13987;Lo;0;L;;;;;N;;;;; +13988;EGYPTIAN HIEROGLYPH-13988;Lo;0;L;;;;;N;;;;; +13989;EGYPTIAN HIEROGLYPH-13989;Lo;0;L;;;;;N;;;;; +1398A;EGYPTIAN HIEROGLYPH-1398A;Lo;0;L;;;;;N;;;;; +1398B;EGYPTIAN HIEROGLYPH-1398B;Lo;0;L;;;;;N;;;;; +1398C;EGYPTIAN HIEROGLYPH-1398C;Lo;0;L;;;;;N;;;;; +1398D;EGYPTIAN HIEROGLYPH-1398D;Lo;0;L;;;;;N;;;;; +1398E;EGYPTIAN HIEROGLYPH-1398E;Lo;0;L;;;;;N;;;;; +1398F;EGYPTIAN HIEROGLYPH-1398F;Lo;0;L;;;;;N;;;;; +13990;EGYPTIAN HIEROGLYPH-13990;Lo;0;L;;;;;N;;;;; +13991;EGYPTIAN HIEROGLYPH-13991;Lo;0;L;;;;;N;;;;; +13992;EGYPTIAN HIEROGLYPH-13992;Lo;0;L;;;;;N;;;;; +13993;EGYPTIAN HIEROGLYPH-13993;Lo;0;L;;;;;N;;;;; +13994;EGYPTIAN HIEROGLYPH-13994;Lo;0;L;;;;;N;;;;; +13995;EGYPTIAN HIEROGLYPH-13995;Lo;0;L;;;;;N;;;;; +13996;EGYPTIAN HIEROGLYPH-13996;Lo;0;L;;;;;N;;;;; +13997;EGYPTIAN HIEROGLYPH-13997;Lo;0;L;;;;;N;;;;; +13998;EGYPTIAN HIEROGLYPH-13998;Lo;0;L;;;;;N;;;;; +13999;EGYPTIAN HIEROGLYPH-13999;Lo;0;L;;;;;N;;;;; +1399A;EGYPTIAN HIEROGLYPH-1399A;Lo;0;L;;;;;N;;;;; +1399B;EGYPTIAN HIEROGLYPH-1399B;Lo;0;L;;;;;N;;;;; +1399C;EGYPTIAN HIEROGLYPH-1399C;Lo;0;L;;;;;N;;;;; +1399D;EGYPTIAN HIEROGLYPH-1399D;Lo;0;L;;;;;N;;;;; +1399E;EGYPTIAN HIEROGLYPH-1399E;Lo;0;L;;;;;N;;;;; +1399F;EGYPTIAN HIEROGLYPH-1399F;Lo;0;L;;;;;N;;;;; +139A0;EGYPTIAN HIEROGLYPH-139A0;Lo;0;L;;;;;N;;;;; +139A1;EGYPTIAN HIEROGLYPH-139A1;Lo;0;L;;;;;N;;;;; +139A2;EGYPTIAN HIEROGLYPH-139A2;Lo;0;L;;;;;N;;;;; +139A3;EGYPTIAN HIEROGLYPH-139A3;Lo;0;L;;;;;N;;;;; +139A4;EGYPTIAN HIEROGLYPH-139A4;Lo;0;L;;;;;N;;;;; +139A5;EGYPTIAN HIEROGLYPH-139A5;Lo;0;L;;;;;N;;;;; +139A6;EGYPTIAN HIEROGLYPH-139A6;Lo;0;L;;;;;N;;;;; +139A7;EGYPTIAN HIEROGLYPH-139A7;Lo;0;L;;;;;N;;;;; +139A8;EGYPTIAN HIEROGLYPH-139A8;Lo;0;L;;;;;N;;;;; +139A9;EGYPTIAN HIEROGLYPH-139A9;Lo;0;L;;;;;N;;;;; +139AA;EGYPTIAN HIEROGLYPH-139AA;Lo;0;L;;;;;N;;;;; +139AB;EGYPTIAN HIEROGLYPH-139AB;Lo;0;L;;;;;N;;;;; +139AC;EGYPTIAN HIEROGLYPH-139AC;Lo;0;L;;;;;N;;;;; +139AD;EGYPTIAN HIEROGLYPH-139AD;Lo;0;L;;;;;N;;;;; +139AE;EGYPTIAN HIEROGLYPH-139AE;Lo;0;L;;;;;N;;;;; +139AF;EGYPTIAN HIEROGLYPH-139AF;Lo;0;L;;;;;N;;;;; +139B0;EGYPTIAN HIEROGLYPH-139B0;Lo;0;L;;;;;N;;;;; +139B1;EGYPTIAN HIEROGLYPH-139B1;Lo;0;L;;;;;N;;;;; +139B2;EGYPTIAN HIEROGLYPH-139B2;Lo;0;L;;;;;N;;;;; +139B3;EGYPTIAN HIEROGLYPH-139B3;Lo;0;L;;;;;N;;;;; +139B4;EGYPTIAN HIEROGLYPH-139B4;Lo;0;L;;;;;N;;;;; +139B5;EGYPTIAN HIEROGLYPH-139B5;Lo;0;L;;;;;N;;;;; +139B6;EGYPTIAN HIEROGLYPH-139B6;Lo;0;L;;;;;N;;;;; +139B7;EGYPTIAN HIEROGLYPH-139B7;Lo;0;L;;;;;N;;;;; +139B8;EGYPTIAN HIEROGLYPH-139B8;Lo;0;L;;;;;N;;;;; +139B9;EGYPTIAN HIEROGLYPH-139B9;Lo;0;L;;;;;N;;;;; +139BA;EGYPTIAN HIEROGLYPH-139BA;Lo;0;L;;;;;N;;;;; +139BB;EGYPTIAN HIEROGLYPH-139BB;Lo;0;L;;;;;N;;;;; +139BC;EGYPTIAN HIEROGLYPH-139BC;Lo;0;L;;;;;N;;;;; +139BD;EGYPTIAN HIEROGLYPH-139BD;Lo;0;L;;;;;N;;;;; +139BE;EGYPTIAN HIEROGLYPH-139BE;Lo;0;L;;;;;N;;;;; +139BF;EGYPTIAN HIEROGLYPH-139BF;Lo;0;L;;;;;N;;;;; +139C0;EGYPTIAN HIEROGLYPH-139C0;Lo;0;L;;;;;N;;;;; +139C1;EGYPTIAN HIEROGLYPH-139C1;Lo;0;L;;;;;N;;;;; +139C2;EGYPTIAN HIEROGLYPH-139C2;Lo;0;L;;;;;N;;;;; +139C3;EGYPTIAN HIEROGLYPH-139C3;Lo;0;L;;;;;N;;;;; +139C4;EGYPTIAN HIEROGLYPH-139C4;Lo;0;L;;;;;N;;;;; +139C5;EGYPTIAN HIEROGLYPH-139C5;Lo;0;L;;;;;N;;;;; +139C6;EGYPTIAN HIEROGLYPH-139C6;Lo;0;L;;;;;N;;;;; +139C7;EGYPTIAN HIEROGLYPH-139C7;Lo;0;L;;;;;N;;;;; +139C8;EGYPTIAN HIEROGLYPH-139C8;Lo;0;L;;;;;N;;;;; +139C9;EGYPTIAN HIEROGLYPH-139C9;Lo;0;L;;;;;N;;;;; +139CA;EGYPTIAN HIEROGLYPH-139CA;Lo;0;L;;;;;N;;;;; +139CB;EGYPTIAN HIEROGLYPH-139CB;Lo;0;L;;;;;N;;;;; +139CC;EGYPTIAN HIEROGLYPH-139CC;Lo;0;L;;;;;N;;;;; +139CD;EGYPTIAN HIEROGLYPH-139CD;Lo;0;L;;;;;N;;;;; +139CE;EGYPTIAN HIEROGLYPH-139CE;Lo;0;L;;;;;N;;;;; +139CF;EGYPTIAN HIEROGLYPH-139CF;Lo;0;L;;;;;N;;;;; +139D0;EGYPTIAN HIEROGLYPH-139D0;Lo;0;L;;;;;N;;;;; +139D1;EGYPTIAN HIEROGLYPH-139D1;Lo;0;L;;;;;N;;;;; +139D2;EGYPTIAN HIEROGLYPH-139D2;Lo;0;L;;;;;N;;;;; +139D3;EGYPTIAN HIEROGLYPH-139D3;Lo;0;L;;;;;N;;;;; +139D4;EGYPTIAN HIEROGLYPH-139D4;Lo;0;L;;;;;N;;;;; +139D5;EGYPTIAN HIEROGLYPH-139D5;Lo;0;L;;;;;N;;;;; +139D6;EGYPTIAN HIEROGLYPH-139D6;Lo;0;L;;;;;N;;;;; +139D7;EGYPTIAN HIEROGLYPH-139D7;Lo;0;L;;;;;N;;;;; +139D8;EGYPTIAN HIEROGLYPH-139D8;Lo;0;L;;;;;N;;;;; +139D9;EGYPTIAN HIEROGLYPH-139D9;Lo;0;L;;;;;N;;;;; +139DA;EGYPTIAN HIEROGLYPH-139DA;Lo;0;L;;;;;N;;;;; +139DB;EGYPTIAN HIEROGLYPH-139DB;Lo;0;L;;;;;N;;;;; +139DC;EGYPTIAN HIEROGLYPH-139DC;Lo;0;L;;;;;N;;;;; +139DD;EGYPTIAN HIEROGLYPH-139DD;Lo;0;L;;;;;N;;;;; +139DE;EGYPTIAN HIEROGLYPH-139DE;Lo;0;L;;;;;N;;;;; +139DF;EGYPTIAN HIEROGLYPH-139DF;Lo;0;L;;;;;N;;;;; +139E0;EGYPTIAN HIEROGLYPH-139E0;Lo;0;L;;;;;N;;;;; +139E1;EGYPTIAN HIEROGLYPH-139E1;Lo;0;L;;;;;N;;;;; +139E2;EGYPTIAN HIEROGLYPH-139E2;Lo;0;L;;;;;N;;;;; +139E3;EGYPTIAN HIEROGLYPH-139E3;Lo;0;L;;;;;N;;;;; +139E4;EGYPTIAN HIEROGLYPH-139E4;Lo;0;L;;;;;N;;;;; +139E5;EGYPTIAN HIEROGLYPH-139E5;Lo;0;L;;;;;N;;;;; +139E6;EGYPTIAN HIEROGLYPH-139E6;Lo;0;L;;;;;N;;;;; +139E7;EGYPTIAN HIEROGLYPH-139E7;Lo;0;L;;;;;N;;;;; +139E8;EGYPTIAN HIEROGLYPH-139E8;Lo;0;L;;;;;N;;;;; +139E9;EGYPTIAN HIEROGLYPH-139E9;Lo;0;L;;;;;N;;;;; +139EA;EGYPTIAN HIEROGLYPH-139EA;Lo;0;L;;;;;N;;;;; +139EB;EGYPTIAN HIEROGLYPH-139EB;Lo;0;L;;;;;N;;;;; +139EC;EGYPTIAN HIEROGLYPH-139EC;Lo;0;L;;;;;N;;;;; +139ED;EGYPTIAN HIEROGLYPH-139ED;Lo;0;L;;;;;N;;;;; +139EE;EGYPTIAN HIEROGLYPH-139EE;Lo;0;L;;;;;N;;;;; +139EF;EGYPTIAN HIEROGLYPH-139EF;Lo;0;L;;;;;N;;;;; +139F0;EGYPTIAN HIEROGLYPH-139F0;Lo;0;L;;;;;N;;;;; +139F1;EGYPTIAN HIEROGLYPH-139F1;Lo;0;L;;;;;N;;;;; +139F2;EGYPTIAN HIEROGLYPH-139F2;Lo;0;L;;;;;N;;;;; +139F3;EGYPTIAN HIEROGLYPH-139F3;Lo;0;L;;;;;N;;;;; +139F4;EGYPTIAN HIEROGLYPH-139F4;Lo;0;L;;;;;N;;;;; +139F5;EGYPTIAN HIEROGLYPH-139F5;Lo;0;L;;;;;N;;;;; +139F6;EGYPTIAN HIEROGLYPH-139F6;Lo;0;L;;;;;N;;;;; +139F7;EGYPTIAN HIEROGLYPH-139F7;Lo;0;L;;;;;N;;;;; +139F8;EGYPTIAN HIEROGLYPH-139F8;Lo;0;L;;;;;N;;;;; +139F9;EGYPTIAN HIEROGLYPH-139F9;Lo;0;L;;;;;N;;;;; +139FA;EGYPTIAN HIEROGLYPH-139FA;Lo;0;L;;;;;N;;;;; +139FB;EGYPTIAN HIEROGLYPH-139FB;Lo;0;L;;;;;N;;;;; +139FC;EGYPTIAN HIEROGLYPH-139FC;Lo;0;L;;;;;N;;;;; +139FD;EGYPTIAN HIEROGLYPH-139FD;Lo;0;L;;;;;N;;;;; +139FE;EGYPTIAN HIEROGLYPH-139FE;Lo;0;L;;;;;N;;;;; +139FF;EGYPTIAN HIEROGLYPH-139FF;Lo;0;L;;;;;N;;;;; +13A00;EGYPTIAN HIEROGLYPH-13A00;Lo;0;L;;;;;N;;;;; +13A01;EGYPTIAN HIEROGLYPH-13A01;Lo;0;L;;;;;N;;;;; +13A02;EGYPTIAN HIEROGLYPH-13A02;Lo;0;L;;;;;N;;;;; +13A03;EGYPTIAN HIEROGLYPH-13A03;Lo;0;L;;;;;N;;;;; +13A04;EGYPTIAN HIEROGLYPH-13A04;Lo;0;L;;;;;N;;;;; +13A05;EGYPTIAN HIEROGLYPH-13A05;Lo;0;L;;;;;N;;;;; +13A06;EGYPTIAN HIEROGLYPH-13A06;Lo;0;L;;;;;N;;;;; +13A07;EGYPTIAN HIEROGLYPH-13A07;Lo;0;L;;;;;N;;;;; +13A08;EGYPTIAN HIEROGLYPH-13A08;Lo;0;L;;;;;N;;;;; +13A09;EGYPTIAN HIEROGLYPH-13A09;Lo;0;L;;;;;N;;;;; +13A0A;EGYPTIAN HIEROGLYPH-13A0A;Lo;0;L;;;;;N;;;;; +13A0B;EGYPTIAN HIEROGLYPH-13A0B;Lo;0;L;;;;;N;;;;; +13A0C;EGYPTIAN HIEROGLYPH-13A0C;Lo;0;L;;;;;N;;;;; +13A0D;EGYPTIAN HIEROGLYPH-13A0D;Lo;0;L;;;;;N;;;;; +13A0E;EGYPTIAN HIEROGLYPH-13A0E;Lo;0;L;;;;;N;;;;; +13A0F;EGYPTIAN HIEROGLYPH-13A0F;Lo;0;L;;;;;N;;;;; +13A10;EGYPTIAN HIEROGLYPH-13A10;Lo;0;L;;;;;N;;;;; +13A11;EGYPTIAN HIEROGLYPH-13A11;Lo;0;L;;;;;N;;;;; +13A12;EGYPTIAN HIEROGLYPH-13A12;Lo;0;L;;;;;N;;;;; +13A13;EGYPTIAN HIEROGLYPH-13A13;Lo;0;L;;;;;N;;;;; +13A14;EGYPTIAN HIEROGLYPH-13A14;Lo;0;L;;;;;N;;;;; +13A15;EGYPTIAN HIEROGLYPH-13A15;Lo;0;L;;;;;N;;;;; +13A16;EGYPTIAN HIEROGLYPH-13A16;Lo;0;L;;;;;N;;;;; +13A17;EGYPTIAN HIEROGLYPH-13A17;Lo;0;L;;;;;N;;;;; +13A18;EGYPTIAN HIEROGLYPH-13A18;Lo;0;L;;;;;N;;;;; +13A19;EGYPTIAN HIEROGLYPH-13A19;Lo;0;L;;;;;N;;;;; +13A1A;EGYPTIAN HIEROGLYPH-13A1A;Lo;0;L;;;;;N;;;;; +13A1B;EGYPTIAN HIEROGLYPH-13A1B;Lo;0;L;;;;;N;;;;; +13A1C;EGYPTIAN HIEROGLYPH-13A1C;Lo;0;L;;;;;N;;;;; +13A1D;EGYPTIAN HIEROGLYPH-13A1D;Lo;0;L;;;;;N;;;;; +13A1E;EGYPTIAN HIEROGLYPH-13A1E;Lo;0;L;;;;;N;;;;; +13A1F;EGYPTIAN HIEROGLYPH-13A1F;Lo;0;L;;;;;N;;;;; +13A20;EGYPTIAN HIEROGLYPH-13A20;Lo;0;L;;;;;N;;;;; +13A21;EGYPTIAN HIEROGLYPH-13A21;Lo;0;L;;;;;N;;;;; +13A22;EGYPTIAN HIEROGLYPH-13A22;Lo;0;L;;;;;N;;;;; +13A23;EGYPTIAN HIEROGLYPH-13A23;Lo;0;L;;;;;N;;;;; +13A24;EGYPTIAN HIEROGLYPH-13A24;Lo;0;L;;;;;N;;;;; +13A25;EGYPTIAN HIEROGLYPH-13A25;Lo;0;L;;;;;N;;;;; +13A26;EGYPTIAN HIEROGLYPH-13A26;Lo;0;L;;;;;N;;;;; +13A27;EGYPTIAN HIEROGLYPH-13A27;Lo;0;L;;;;;N;;;;; +13A28;EGYPTIAN HIEROGLYPH-13A28;Lo;0;L;;;;;N;;;;; +13A29;EGYPTIAN HIEROGLYPH-13A29;Lo;0;L;;;;;N;;;;; +13A2A;EGYPTIAN HIEROGLYPH-13A2A;Lo;0;L;;;;;N;;;;; +13A2B;EGYPTIAN HIEROGLYPH-13A2B;Lo;0;L;;;;;N;;;;; +13A2C;EGYPTIAN HIEROGLYPH-13A2C;Lo;0;L;;;;;N;;;;; +13A2D;EGYPTIAN HIEROGLYPH-13A2D;Lo;0;L;;;;;N;;;;; +13A2E;EGYPTIAN HIEROGLYPH-13A2E;Lo;0;L;;;;;N;;;;; +13A2F;EGYPTIAN HIEROGLYPH-13A2F;Lo;0;L;;;;;N;;;;; +13A30;EGYPTIAN HIEROGLYPH-13A30;Lo;0;L;;;;;N;;;;; +13A31;EGYPTIAN HIEROGLYPH-13A31;Lo;0;L;;;;;N;;;;; +13A32;EGYPTIAN HIEROGLYPH-13A32;Lo;0;L;;;;;N;;;;; +13A33;EGYPTIAN HIEROGLYPH-13A33;Lo;0;L;;;;;N;;;;; +13A34;EGYPTIAN HIEROGLYPH-13A34;Lo;0;L;;;;;N;;;;; +13A35;EGYPTIAN HIEROGLYPH-13A35;Lo;0;L;;;;;N;;;;; +13A36;EGYPTIAN HIEROGLYPH-13A36;Lo;0;L;;;;;N;;;;; +13A37;EGYPTIAN HIEROGLYPH-13A37;Lo;0;L;;;;;N;;;;; +13A38;EGYPTIAN HIEROGLYPH-13A38;Lo;0;L;;;;;N;;;;; +13A39;EGYPTIAN HIEROGLYPH-13A39;Lo;0;L;;;;;N;;;;; +13A3A;EGYPTIAN HIEROGLYPH-13A3A;Lo;0;L;;;;;N;;;;; +13A3B;EGYPTIAN HIEROGLYPH-13A3B;Lo;0;L;;;;;N;;;;; +13A3C;EGYPTIAN HIEROGLYPH-13A3C;Lo;0;L;;;;;N;;;;; +13A3D;EGYPTIAN HIEROGLYPH-13A3D;Lo;0;L;;;;;N;;;;; +13A3E;EGYPTIAN HIEROGLYPH-13A3E;Lo;0;L;;;;;N;;;;; +13A3F;EGYPTIAN HIEROGLYPH-13A3F;Lo;0;L;;;;;N;;;;; +13A40;EGYPTIAN HIEROGLYPH-13A40;Lo;0;L;;;;;N;;;;; +13A41;EGYPTIAN HIEROGLYPH-13A41;Lo;0;L;;;;;N;;;;; +13A42;EGYPTIAN HIEROGLYPH-13A42;Lo;0;L;;;;;N;;;;; +13A43;EGYPTIAN HIEROGLYPH-13A43;Lo;0;L;;;;;N;;;;; +13A44;EGYPTIAN HIEROGLYPH-13A44;Lo;0;L;;;;;N;;;;; +13A45;EGYPTIAN HIEROGLYPH-13A45;Lo;0;L;;;;;N;;;;; +13A46;EGYPTIAN HIEROGLYPH-13A46;Lo;0;L;;;;;N;;;;; +13A47;EGYPTIAN HIEROGLYPH-13A47;Lo;0;L;;;;;N;;;;; +13A48;EGYPTIAN HIEROGLYPH-13A48;Lo;0;L;;;;;N;;;;; +13A49;EGYPTIAN HIEROGLYPH-13A49;Lo;0;L;;;;;N;;;;; +13A4A;EGYPTIAN HIEROGLYPH-13A4A;Lo;0;L;;;;;N;;;;; +13A4B;EGYPTIAN HIEROGLYPH-13A4B;Lo;0;L;;;;;N;;;;; +13A4C;EGYPTIAN HIEROGLYPH-13A4C;Lo;0;L;;;;;N;;;;; +13A4D;EGYPTIAN HIEROGLYPH-13A4D;Lo;0;L;;;;;N;;;;; +13A4E;EGYPTIAN HIEROGLYPH-13A4E;Lo;0;L;;;;;N;;;;; +13A4F;EGYPTIAN HIEROGLYPH-13A4F;Lo;0;L;;;;;N;;;;; +13A50;EGYPTIAN HIEROGLYPH-13A50;Lo;0;L;;;;;N;;;;; +13A51;EGYPTIAN HIEROGLYPH-13A51;Lo;0;L;;;;;N;;;;; +13A52;EGYPTIAN HIEROGLYPH-13A52;Lo;0;L;;;;;N;;;;; +13A53;EGYPTIAN HIEROGLYPH-13A53;Lo;0;L;;;;;N;;;;; +13A54;EGYPTIAN HIEROGLYPH-13A54;Lo;0;L;;;;;N;;;;; +13A55;EGYPTIAN HIEROGLYPH-13A55;Lo;0;L;;;;;N;;;;; +13A56;EGYPTIAN HIEROGLYPH-13A56;Lo;0;L;;;;;N;;;;; +13A57;EGYPTIAN HIEROGLYPH-13A57;Lo;0;L;;;;;N;;;;; +13A58;EGYPTIAN HIEROGLYPH-13A58;Lo;0;L;;;;;N;;;;; +13A59;EGYPTIAN HIEROGLYPH-13A59;Lo;0;L;;;;;N;;;;; +13A5A;EGYPTIAN HIEROGLYPH-13A5A;Lo;0;L;;;;;N;;;;; +13A5B;EGYPTIAN HIEROGLYPH-13A5B;Lo;0;L;;;;;N;;;;; +13A5C;EGYPTIAN HIEROGLYPH-13A5C;Lo;0;L;;;;;N;;;;; +13A5D;EGYPTIAN HIEROGLYPH-13A5D;Lo;0;L;;;;;N;;;;; +13A5E;EGYPTIAN HIEROGLYPH-13A5E;Lo;0;L;;;;;N;;;;; +13A5F;EGYPTIAN HIEROGLYPH-13A5F;Lo;0;L;;;;;N;;;;; +13A60;EGYPTIAN HIEROGLYPH-13A60;Lo;0;L;;;;;N;;;;; +13A61;EGYPTIAN HIEROGLYPH-13A61;Lo;0;L;;;;;N;;;;; +13A62;EGYPTIAN HIEROGLYPH-13A62;Lo;0;L;;;;;N;;;;; +13A63;EGYPTIAN HIEROGLYPH-13A63;Lo;0;L;;;;;N;;;;; +13A64;EGYPTIAN HIEROGLYPH-13A64;Lo;0;L;;;;;N;;;;; +13A65;EGYPTIAN HIEROGLYPH-13A65;Lo;0;L;;;;;N;;;;; +13A66;EGYPTIAN HIEROGLYPH-13A66;Lo;0;L;;;;;N;;;;; +13A67;EGYPTIAN HIEROGLYPH-13A67;Lo;0;L;;;;;N;;;;; +13A68;EGYPTIAN HIEROGLYPH-13A68;Lo;0;L;;;;;N;;;;; +13A69;EGYPTIAN HIEROGLYPH-13A69;Lo;0;L;;;;;N;;;;; +13A6A;EGYPTIAN HIEROGLYPH-13A6A;Lo;0;L;;;;;N;;;;; +13A6B;EGYPTIAN HIEROGLYPH-13A6B;Lo;0;L;;;;;N;;;;; +13A6C;EGYPTIAN HIEROGLYPH-13A6C;Lo;0;L;;;;;N;;;;; +13A6D;EGYPTIAN HIEROGLYPH-13A6D;Lo;0;L;;;;;N;;;;; +13A6E;EGYPTIAN HIEROGLYPH-13A6E;Lo;0;L;;;;;N;;;;; +13A6F;EGYPTIAN HIEROGLYPH-13A6F;Lo;0;L;;;;;N;;;;; +13A70;EGYPTIAN HIEROGLYPH-13A70;Lo;0;L;;;;;N;;;;; +13A71;EGYPTIAN HIEROGLYPH-13A71;Lo;0;L;;;;;N;;;;; +13A72;EGYPTIAN HIEROGLYPH-13A72;Lo;0;L;;;;;N;;;;; +13A73;EGYPTIAN HIEROGLYPH-13A73;Lo;0;L;;;;;N;;;;; +13A74;EGYPTIAN HIEROGLYPH-13A74;Lo;0;L;;;;;N;;;;; +13A75;EGYPTIAN HIEROGLYPH-13A75;Lo;0;L;;;;;N;;;;; +13A76;EGYPTIAN HIEROGLYPH-13A76;Lo;0;L;;;;;N;;;;; +13A77;EGYPTIAN HIEROGLYPH-13A77;Lo;0;L;;;;;N;;;;; +13A78;EGYPTIAN HIEROGLYPH-13A78;Lo;0;L;;;;;N;;;;; +13A79;EGYPTIAN HIEROGLYPH-13A79;Lo;0;L;;;;;N;;;;; +13A7A;EGYPTIAN HIEROGLYPH-13A7A;Lo;0;L;;;;;N;;;;; +13A7B;EGYPTIAN HIEROGLYPH-13A7B;Lo;0;L;;;;;N;;;;; +13A7C;EGYPTIAN HIEROGLYPH-13A7C;Lo;0;L;;;;;N;;;;; +13A7D;EGYPTIAN HIEROGLYPH-13A7D;Lo;0;L;;;;;N;;;;; +13A7E;EGYPTIAN HIEROGLYPH-13A7E;Lo;0;L;;;;;N;;;;; +13A7F;EGYPTIAN HIEROGLYPH-13A7F;Lo;0;L;;;;;N;;;;; +13A80;EGYPTIAN HIEROGLYPH-13A80;Lo;0;L;;;;;N;;;;; +13A81;EGYPTIAN HIEROGLYPH-13A81;Lo;0;L;;;;;N;;;;; +13A82;EGYPTIAN HIEROGLYPH-13A82;Lo;0;L;;;;;N;;;;; +13A83;EGYPTIAN HIEROGLYPH-13A83;Lo;0;L;;;;;N;;;;; +13A84;EGYPTIAN HIEROGLYPH-13A84;Lo;0;L;;;;;N;;;;; +13A85;EGYPTIAN HIEROGLYPH-13A85;Lo;0;L;;;;;N;;;;; +13A86;EGYPTIAN HIEROGLYPH-13A86;Lo;0;L;;;;;N;;;;; +13A87;EGYPTIAN HIEROGLYPH-13A87;Lo;0;L;;;;;N;;;;; +13A88;EGYPTIAN HIEROGLYPH-13A88;Lo;0;L;;;;;N;;;;; +13A89;EGYPTIAN HIEROGLYPH-13A89;Lo;0;L;;;;;N;;;;; +13A8A;EGYPTIAN HIEROGLYPH-13A8A;Lo;0;L;;;;;N;;;;; +13A8B;EGYPTIAN HIEROGLYPH-13A8B;Lo;0;L;;;;;N;;;;; +13A8C;EGYPTIAN HIEROGLYPH-13A8C;Lo;0;L;;;;;N;;;;; +13A8D;EGYPTIAN HIEROGLYPH-13A8D;Lo;0;L;;;;;N;;;;; +13A8E;EGYPTIAN HIEROGLYPH-13A8E;Lo;0;L;;;;;N;;;;; +13A8F;EGYPTIAN HIEROGLYPH-13A8F;Lo;0;L;;;;;N;;;;; +13A90;EGYPTIAN HIEROGLYPH-13A90;Lo;0;L;;;;;N;;;;; +13A91;EGYPTIAN HIEROGLYPH-13A91;Lo;0;L;;;;;N;;;;; +13A92;EGYPTIAN HIEROGLYPH-13A92;Lo;0;L;;;;;N;;;;; +13A93;EGYPTIAN HIEROGLYPH-13A93;Lo;0;L;;;;;N;;;;; +13A94;EGYPTIAN HIEROGLYPH-13A94;Lo;0;L;;;;;N;;;;; +13A95;EGYPTIAN HIEROGLYPH-13A95;Lo;0;L;;;;;N;;;;; +13A96;EGYPTIAN HIEROGLYPH-13A96;Lo;0;L;;;;;N;;;;; +13A97;EGYPTIAN HIEROGLYPH-13A97;Lo;0;L;;;;;N;;;;; +13A98;EGYPTIAN HIEROGLYPH-13A98;Lo;0;L;;;;;N;;;;; +13A99;EGYPTIAN HIEROGLYPH-13A99;Lo;0;L;;;;;N;;;;; +13A9A;EGYPTIAN HIEROGLYPH-13A9A;Lo;0;L;;;;;N;;;;; +13A9B;EGYPTIAN HIEROGLYPH-13A9B;Lo;0;L;;;;;N;;;;; +13A9C;EGYPTIAN HIEROGLYPH-13A9C;Lo;0;L;;;;;N;;;;; +13A9D;EGYPTIAN HIEROGLYPH-13A9D;Lo;0;L;;;;;N;;;;; +13A9E;EGYPTIAN HIEROGLYPH-13A9E;Lo;0;L;;;;;N;;;;; +13A9F;EGYPTIAN HIEROGLYPH-13A9F;Lo;0;L;;;;;N;;;;; +13AA0;EGYPTIAN HIEROGLYPH-13AA0;Lo;0;L;;;;;N;;;;; +13AA1;EGYPTIAN HIEROGLYPH-13AA1;Lo;0;L;;;;;N;;;;; +13AA2;EGYPTIAN HIEROGLYPH-13AA2;Lo;0;L;;;;;N;;;;; +13AA3;EGYPTIAN HIEROGLYPH-13AA3;Lo;0;L;;;;;N;;;;; +13AA4;EGYPTIAN HIEROGLYPH-13AA4;Lo;0;L;;;;;N;;;;; +13AA5;EGYPTIAN HIEROGLYPH-13AA5;Lo;0;L;;;;;N;;;;; +13AA6;EGYPTIAN HIEROGLYPH-13AA6;Lo;0;L;;;;;N;;;;; +13AA7;EGYPTIAN HIEROGLYPH-13AA7;Lo;0;L;;;;;N;;;;; +13AA8;EGYPTIAN HIEROGLYPH-13AA8;Lo;0;L;;;;;N;;;;; +13AA9;EGYPTIAN HIEROGLYPH-13AA9;Lo;0;L;;;;;N;;;;; +13AAA;EGYPTIAN HIEROGLYPH-13AAA;Lo;0;L;;;;;N;;;;; +13AAB;EGYPTIAN HIEROGLYPH-13AAB;Lo;0;L;;;;;N;;;;; +13AAC;EGYPTIAN HIEROGLYPH-13AAC;Lo;0;L;;;;;N;;;;; +13AAD;EGYPTIAN HIEROGLYPH-13AAD;Lo;0;L;;;;;N;;;;; +13AAE;EGYPTIAN HIEROGLYPH-13AAE;Lo;0;L;;;;;N;;;;; +13AAF;EGYPTIAN HIEROGLYPH-13AAF;Lo;0;L;;;;;N;;;;; +13AB0;EGYPTIAN HIEROGLYPH-13AB0;Lo;0;L;;;;;N;;;;; +13AB1;EGYPTIAN HIEROGLYPH-13AB1;Lo;0;L;;;;;N;;;;; +13AB2;EGYPTIAN HIEROGLYPH-13AB2;Lo;0;L;;;;;N;;;;; +13AB3;EGYPTIAN HIEROGLYPH-13AB3;Lo;0;L;;;;;N;;;;; +13AB4;EGYPTIAN HIEROGLYPH-13AB4;Lo;0;L;;;;;N;;;;; +13AB5;EGYPTIAN HIEROGLYPH-13AB5;Lo;0;L;;;;;N;;;;; +13AB6;EGYPTIAN HIEROGLYPH-13AB6;Lo;0;L;;;;;N;;;;; +13AB7;EGYPTIAN HIEROGLYPH-13AB7;Lo;0;L;;;;;N;;;;; +13AB8;EGYPTIAN HIEROGLYPH-13AB8;Lo;0;L;;;;;N;;;;; +13AB9;EGYPTIAN HIEROGLYPH-13AB9;Lo;0;L;;;;;N;;;;; +13ABA;EGYPTIAN HIEROGLYPH-13ABA;Lo;0;L;;;;;N;;;;; +13ABB;EGYPTIAN HIEROGLYPH-13ABB;Lo;0;L;;;;;N;;;;; +13ABC;EGYPTIAN HIEROGLYPH-13ABC;Lo;0;L;;;;;N;;;;; +13ABD;EGYPTIAN HIEROGLYPH-13ABD;Lo;0;L;;;;;N;;;;; +13ABE;EGYPTIAN HIEROGLYPH-13ABE;Lo;0;L;;;;;N;;;;; +13ABF;EGYPTIAN HIEROGLYPH-13ABF;Lo;0;L;;;;;N;;;;; +13AC0;EGYPTIAN HIEROGLYPH-13AC0;Lo;0;L;;;;;N;;;;; +13AC1;EGYPTIAN HIEROGLYPH-13AC1;Lo;0;L;;;;;N;;;;; +13AC2;EGYPTIAN HIEROGLYPH-13AC2;Lo;0;L;;;;;N;;;;; +13AC3;EGYPTIAN HIEROGLYPH-13AC3;Lo;0;L;;;;;N;;;;; +13AC4;EGYPTIAN HIEROGLYPH-13AC4;Lo;0;L;;;;;N;;;;; +13AC5;EGYPTIAN HIEROGLYPH-13AC5;Lo;0;L;;;;;N;;;;; +13AC6;EGYPTIAN HIEROGLYPH-13AC6;Lo;0;L;;;;;N;;;;; +13AC7;EGYPTIAN HIEROGLYPH-13AC7;Lo;0;L;;;;;N;;;;; +13AC8;EGYPTIAN HIEROGLYPH-13AC8;Lo;0;L;;;;;N;;;;; +13AC9;EGYPTIAN HIEROGLYPH-13AC9;Lo;0;L;;;;;N;;;;; +13ACA;EGYPTIAN HIEROGLYPH-13ACA;Lo;0;L;;;;;N;;;;; +13ACB;EGYPTIAN HIEROGLYPH-13ACB;Lo;0;L;;;;;N;;;;; +13ACC;EGYPTIAN HIEROGLYPH-13ACC;Lo;0;L;;;;;N;;;;; +13ACD;EGYPTIAN HIEROGLYPH-13ACD;Lo;0;L;;;;;N;;;;; +13ACE;EGYPTIAN HIEROGLYPH-13ACE;Lo;0;L;;;;;N;;;;; +13ACF;EGYPTIAN HIEROGLYPH-13ACF;Lo;0;L;;;;;N;;;;; +13AD0;EGYPTIAN HIEROGLYPH-13AD0;Lo;0;L;;;;;N;;;;; +13AD1;EGYPTIAN HIEROGLYPH-13AD1;Lo;0;L;;;;;N;;;;; +13AD2;EGYPTIAN HIEROGLYPH-13AD2;Lo;0;L;;;;;N;;;;; +13AD3;EGYPTIAN HIEROGLYPH-13AD3;Lo;0;L;;;;;N;;;;; +13AD4;EGYPTIAN HIEROGLYPH-13AD4;Lo;0;L;;;;;N;;;;; +13AD5;EGYPTIAN HIEROGLYPH-13AD5;Lo;0;L;;;;;N;;;;; +13AD6;EGYPTIAN HIEROGLYPH-13AD6;Lo;0;L;;;;;N;;;;; +13AD7;EGYPTIAN HIEROGLYPH-13AD7;Lo;0;L;;;;;N;;;;; +13AD8;EGYPTIAN HIEROGLYPH-13AD8;Lo;0;L;;;;;N;;;;; +13AD9;EGYPTIAN HIEROGLYPH-13AD9;Lo;0;L;;;;;N;;;;; +13ADA;EGYPTIAN HIEROGLYPH-13ADA;Lo;0;L;;;;;N;;;;; +13ADB;EGYPTIAN HIEROGLYPH-13ADB;Lo;0;L;;;;;N;;;;; +13ADC;EGYPTIAN HIEROGLYPH-13ADC;Lo;0;L;;;;;N;;;;; +13ADD;EGYPTIAN HIEROGLYPH-13ADD;Lo;0;L;;;;;N;;;;; +13ADE;EGYPTIAN HIEROGLYPH-13ADE;Lo;0;L;;;;;N;;;;; +13ADF;EGYPTIAN HIEROGLYPH-13ADF;Lo;0;L;;;;;N;;;;; +13AE0;EGYPTIAN HIEROGLYPH-13AE0;Lo;0;L;;;;;N;;;;; +13AE1;EGYPTIAN HIEROGLYPH-13AE1;Lo;0;L;;;;;N;;;;; +13AE2;EGYPTIAN HIEROGLYPH-13AE2;Lo;0;L;;;;;N;;;;; +13AE3;EGYPTIAN HIEROGLYPH-13AE3;Lo;0;L;;;;;N;;;;; +13AE4;EGYPTIAN HIEROGLYPH-13AE4;Lo;0;L;;;;;N;;;;; +13AE5;EGYPTIAN HIEROGLYPH-13AE5;Lo;0;L;;;;;N;;;;; +13AE6;EGYPTIAN HIEROGLYPH-13AE6;Lo;0;L;;;;;N;;;;; +13AE7;EGYPTIAN HIEROGLYPH-13AE7;Lo;0;L;;;;;N;;;;; +13AE8;EGYPTIAN HIEROGLYPH-13AE8;Lo;0;L;;;;;N;;;;; +13AE9;EGYPTIAN HIEROGLYPH-13AE9;Lo;0;L;;;;;N;;;;; +13AEA;EGYPTIAN HIEROGLYPH-13AEA;Lo;0;L;;;;;N;;;;; +13AEB;EGYPTIAN HIEROGLYPH-13AEB;Lo;0;L;;;;;N;;;;; +13AEC;EGYPTIAN HIEROGLYPH-13AEC;Lo;0;L;;;;;N;;;;; +13AED;EGYPTIAN HIEROGLYPH-13AED;Lo;0;L;;;;;N;;;;; +13AEE;EGYPTIAN HIEROGLYPH-13AEE;Lo;0;L;;;;;N;;;;; +13AEF;EGYPTIAN HIEROGLYPH-13AEF;Lo;0;L;;;;;N;;;;; +13AF0;EGYPTIAN HIEROGLYPH-13AF0;Lo;0;L;;;;;N;;;;; +13AF1;EGYPTIAN HIEROGLYPH-13AF1;Lo;0;L;;;;;N;;;;; +13AF2;EGYPTIAN HIEROGLYPH-13AF2;Lo;0;L;;;;;N;;;;; +13AF3;EGYPTIAN HIEROGLYPH-13AF3;Lo;0;L;;;;;N;;;;; +13AF4;EGYPTIAN HIEROGLYPH-13AF4;Lo;0;L;;;;;N;;;;; +13AF5;EGYPTIAN HIEROGLYPH-13AF5;Lo;0;L;;;;;N;;;;; +13AF6;EGYPTIAN HIEROGLYPH-13AF6;Lo;0;L;;;;;N;;;;; +13AF7;EGYPTIAN HIEROGLYPH-13AF7;Lo;0;L;;;;;N;;;;; +13AF8;EGYPTIAN HIEROGLYPH-13AF8;Lo;0;L;;;;;N;;;;; +13AF9;EGYPTIAN HIEROGLYPH-13AF9;Lo;0;L;;;;;N;;;;; +13AFA;EGYPTIAN HIEROGLYPH-13AFA;Lo;0;L;;;;;N;;;;; +13AFB;EGYPTIAN HIEROGLYPH-13AFB;Lo;0;L;;;;;N;;;;; +13AFC;EGYPTIAN HIEROGLYPH-13AFC;Lo;0;L;;;;;N;;;;; +13AFD;EGYPTIAN HIEROGLYPH-13AFD;Lo;0;L;;;;;N;;;;; +13AFE;EGYPTIAN HIEROGLYPH-13AFE;Lo;0;L;;;;;N;;;;; +13AFF;EGYPTIAN HIEROGLYPH-13AFF;Lo;0;L;;;;;N;;;;; +13B00;EGYPTIAN HIEROGLYPH-13B00;Lo;0;L;;;;;N;;;;; +13B01;EGYPTIAN HIEROGLYPH-13B01;Lo;0;L;;;;;N;;;;; +13B02;EGYPTIAN HIEROGLYPH-13B02;Lo;0;L;;;;;N;;;;; +13B03;EGYPTIAN HIEROGLYPH-13B03;Lo;0;L;;;;;N;;;;; +13B04;EGYPTIAN HIEROGLYPH-13B04;Lo;0;L;;;;;N;;;;; +13B05;EGYPTIAN HIEROGLYPH-13B05;Lo;0;L;;;;;N;;;;; +13B06;EGYPTIAN HIEROGLYPH-13B06;Lo;0;L;;;;;N;;;;; +13B07;EGYPTIAN HIEROGLYPH-13B07;Lo;0;L;;;;;N;;;;; +13B08;EGYPTIAN HIEROGLYPH-13B08;Lo;0;L;;;;;N;;;;; +13B09;EGYPTIAN HIEROGLYPH-13B09;Lo;0;L;;;;;N;;;;; +13B0A;EGYPTIAN HIEROGLYPH-13B0A;Lo;0;L;;;;;N;;;;; +13B0B;EGYPTIAN HIEROGLYPH-13B0B;Lo;0;L;;;;;N;;;;; +13B0C;EGYPTIAN HIEROGLYPH-13B0C;Lo;0;L;;;;;N;;;;; +13B0D;EGYPTIAN HIEROGLYPH-13B0D;Lo;0;L;;;;;N;;;;; +13B0E;EGYPTIAN HIEROGLYPH-13B0E;Lo;0;L;;;;;N;;;;; +13B0F;EGYPTIAN HIEROGLYPH-13B0F;Lo;0;L;;;;;N;;;;; +13B10;EGYPTIAN HIEROGLYPH-13B10;Lo;0;L;;;;;N;;;;; +13B11;EGYPTIAN HIEROGLYPH-13B11;Lo;0;L;;;;;N;;;;; +13B12;EGYPTIAN HIEROGLYPH-13B12;Lo;0;L;;;;;N;;;;; +13B13;EGYPTIAN HIEROGLYPH-13B13;Lo;0;L;;;;;N;;;;; +13B14;EGYPTIAN HIEROGLYPH-13B14;Lo;0;L;;;;;N;;;;; +13B15;EGYPTIAN HIEROGLYPH-13B15;Lo;0;L;;;;;N;;;;; +13B16;EGYPTIAN HIEROGLYPH-13B16;Lo;0;L;;;;;N;;;;; +13B17;EGYPTIAN HIEROGLYPH-13B17;Lo;0;L;;;;;N;;;;; +13B18;EGYPTIAN HIEROGLYPH-13B18;Lo;0;L;;;;;N;;;;; +13B19;EGYPTIAN HIEROGLYPH-13B19;Lo;0;L;;;;;N;;;;; +13B1A;EGYPTIAN HIEROGLYPH-13B1A;Lo;0;L;;;;;N;;;;; +13B1B;EGYPTIAN HIEROGLYPH-13B1B;Lo;0;L;;;;;N;;;;; +13B1C;EGYPTIAN HIEROGLYPH-13B1C;Lo;0;L;;;;;N;;;;; +13B1D;EGYPTIAN HIEROGLYPH-13B1D;Lo;0;L;;;;;N;;;;; +13B1E;EGYPTIAN HIEROGLYPH-13B1E;Lo;0;L;;;;;N;;;;; +13B1F;EGYPTIAN HIEROGLYPH-13B1F;Lo;0;L;;;;;N;;;;; +13B20;EGYPTIAN HIEROGLYPH-13B20;Lo;0;L;;;;;N;;;;; +13B21;EGYPTIAN HIEROGLYPH-13B21;Lo;0;L;;;;;N;;;;; +13B22;EGYPTIAN HIEROGLYPH-13B22;Lo;0;L;;;;;N;;;;; +13B23;EGYPTIAN HIEROGLYPH-13B23;Lo;0;L;;;;;N;;;;; +13B24;EGYPTIAN HIEROGLYPH-13B24;Lo;0;L;;;;;N;;;;; +13B25;EGYPTIAN HIEROGLYPH-13B25;Lo;0;L;;;;;N;;;;; +13B26;EGYPTIAN HIEROGLYPH-13B26;Lo;0;L;;;;;N;;;;; +13B27;EGYPTIAN HIEROGLYPH-13B27;Lo;0;L;;;;;N;;;;; +13B28;EGYPTIAN HIEROGLYPH-13B28;Lo;0;L;;;;;N;;;;; +13B29;EGYPTIAN HIEROGLYPH-13B29;Lo;0;L;;;;;N;;;;; +13B2A;EGYPTIAN HIEROGLYPH-13B2A;Lo;0;L;;;;;N;;;;; +13B2B;EGYPTIAN HIEROGLYPH-13B2B;Lo;0;L;;;;;N;;;;; +13B2C;EGYPTIAN HIEROGLYPH-13B2C;Lo;0;L;;;;;N;;;;; +13B2D;EGYPTIAN HIEROGLYPH-13B2D;Lo;0;L;;;;;N;;;;; +13B2E;EGYPTIAN HIEROGLYPH-13B2E;Lo;0;L;;;;;N;;;;; +13B2F;EGYPTIAN HIEROGLYPH-13B2F;Lo;0;L;;;;;N;;;;; +13B30;EGYPTIAN HIEROGLYPH-13B30;Lo;0;L;;;;;N;;;;; +13B31;EGYPTIAN HIEROGLYPH-13B31;Lo;0;L;;;;;N;;;;; +13B32;EGYPTIAN HIEROGLYPH-13B32;Lo;0;L;;;;;N;;;;; +13B33;EGYPTIAN HIEROGLYPH-13B33;Lo;0;L;;;;;N;;;;; +13B34;EGYPTIAN HIEROGLYPH-13B34;Lo;0;L;;;;;N;;;;; +13B35;EGYPTIAN HIEROGLYPH-13B35;Lo;0;L;;;;;N;;;;; +13B36;EGYPTIAN HIEROGLYPH-13B36;Lo;0;L;;;;;N;;;;; +13B37;EGYPTIAN HIEROGLYPH-13B37;Lo;0;L;;;;;N;;;;; +13B38;EGYPTIAN HIEROGLYPH-13B38;Lo;0;L;;;;;N;;;;; +13B39;EGYPTIAN HIEROGLYPH-13B39;Lo;0;L;;;;;N;;;;; +13B3A;EGYPTIAN HIEROGLYPH-13B3A;Lo;0;L;;;;;N;;;;; +13B3B;EGYPTIAN HIEROGLYPH-13B3B;Lo;0;L;;;;;N;;;;; +13B3C;EGYPTIAN HIEROGLYPH-13B3C;Lo;0;L;;;;;N;;;;; +13B3D;EGYPTIAN HIEROGLYPH-13B3D;Lo;0;L;;;;;N;;;;; +13B3E;EGYPTIAN HIEROGLYPH-13B3E;Lo;0;L;;;;;N;;;;; +13B3F;EGYPTIAN HIEROGLYPH-13B3F;Lo;0;L;;;;;N;;;;; +13B40;EGYPTIAN HIEROGLYPH-13B40;Lo;0;L;;;;;N;;;;; +13B41;EGYPTIAN HIEROGLYPH-13B41;Lo;0;L;;;;;N;;;;; +13B42;EGYPTIAN HIEROGLYPH-13B42;Lo;0;L;;;;;N;;;;; +13B43;EGYPTIAN HIEROGLYPH-13B43;Lo;0;L;;;;;N;;;;; +13B44;EGYPTIAN HIEROGLYPH-13B44;Lo;0;L;;;;;N;;;;; +13B45;EGYPTIAN HIEROGLYPH-13B45;Lo;0;L;;;;;N;;;;; +13B46;EGYPTIAN HIEROGLYPH-13B46;Lo;0;L;;;;;N;;;;; +13B47;EGYPTIAN HIEROGLYPH-13B47;Lo;0;L;;;;;N;;;;; +13B48;EGYPTIAN HIEROGLYPH-13B48;Lo;0;L;;;;;N;;;;; +13B49;EGYPTIAN HIEROGLYPH-13B49;Lo;0;L;;;;;N;;;;; +13B4A;EGYPTIAN HIEROGLYPH-13B4A;Lo;0;L;;;;;N;;;;; +13B4B;EGYPTIAN HIEROGLYPH-13B4B;Lo;0;L;;;;;N;;;;; +13B4C;EGYPTIAN HIEROGLYPH-13B4C;Lo;0;L;;;;;N;;;;; +13B4D;EGYPTIAN HIEROGLYPH-13B4D;Lo;0;L;;;;;N;;;;; +13B4E;EGYPTIAN HIEROGLYPH-13B4E;Lo;0;L;;;;;N;;;;; +13B4F;EGYPTIAN HIEROGLYPH-13B4F;Lo;0;L;;;;;N;;;;; +13B50;EGYPTIAN HIEROGLYPH-13B50;Lo;0;L;;;;;N;;;;; +13B51;EGYPTIAN HIEROGLYPH-13B51;Lo;0;L;;;;;N;;;;; +13B52;EGYPTIAN HIEROGLYPH-13B52;Lo;0;L;;;;;N;;;;; +13B53;EGYPTIAN HIEROGLYPH-13B53;Lo;0;L;;;;;N;;;;; +13B54;EGYPTIAN HIEROGLYPH-13B54;Lo;0;L;;;;;N;;;;; +13B55;EGYPTIAN HIEROGLYPH-13B55;Lo;0;L;;;;;N;;;;; +13B56;EGYPTIAN HIEROGLYPH-13B56;Lo;0;L;;;;;N;;;;; +13B57;EGYPTIAN HIEROGLYPH-13B57;Lo;0;L;;;;;N;;;;; +13B58;EGYPTIAN HIEROGLYPH-13B58;Lo;0;L;;;;;N;;;;; +13B59;EGYPTIAN HIEROGLYPH-13B59;Lo;0;L;;;;;N;;;;; +13B5A;EGYPTIAN HIEROGLYPH-13B5A;Lo;0;L;;;;;N;;;;; +13B5B;EGYPTIAN HIEROGLYPH-13B5B;Lo;0;L;;;;;N;;;;; +13B5C;EGYPTIAN HIEROGLYPH-13B5C;Lo;0;L;;;;;N;;;;; +13B5D;EGYPTIAN HIEROGLYPH-13B5D;Lo;0;L;;;;;N;;;;; +13B5E;EGYPTIAN HIEROGLYPH-13B5E;Lo;0;L;;;;;N;;;;; +13B5F;EGYPTIAN HIEROGLYPH-13B5F;Lo;0;L;;;;;N;;;;; +13B60;EGYPTIAN HIEROGLYPH-13B60;Lo;0;L;;;;;N;;;;; +13B61;EGYPTIAN HIEROGLYPH-13B61;Lo;0;L;;;;;N;;;;; +13B62;EGYPTIAN HIEROGLYPH-13B62;Lo;0;L;;;;;N;;;;; +13B63;EGYPTIAN HIEROGLYPH-13B63;Lo;0;L;;;;;N;;;;; +13B64;EGYPTIAN HIEROGLYPH-13B64;Lo;0;L;;;;;N;;;;; +13B65;EGYPTIAN HIEROGLYPH-13B65;Lo;0;L;;;;;N;;;;; +13B66;EGYPTIAN HIEROGLYPH-13B66;Lo;0;L;;;;;N;;;;; +13B67;EGYPTIAN HIEROGLYPH-13B67;Lo;0;L;;;;;N;;;;; +13B68;EGYPTIAN HIEROGLYPH-13B68;Lo;0;L;;;;;N;;;;; +13B69;EGYPTIAN HIEROGLYPH-13B69;Lo;0;L;;;;;N;;;;; +13B6A;EGYPTIAN HIEROGLYPH-13B6A;Lo;0;L;;;;;N;;;;; +13B6B;EGYPTIAN HIEROGLYPH-13B6B;Lo;0;L;;;;;N;;;;; +13B6C;EGYPTIAN HIEROGLYPH-13B6C;Lo;0;L;;;;;N;;;;; +13B6D;EGYPTIAN HIEROGLYPH-13B6D;Lo;0;L;;;;;N;;;;; +13B6E;EGYPTIAN HIEROGLYPH-13B6E;Lo;0;L;;;;;N;;;;; +13B6F;EGYPTIAN HIEROGLYPH-13B6F;Lo;0;L;;;;;N;;;;; +13B70;EGYPTIAN HIEROGLYPH-13B70;Lo;0;L;;;;;N;;;;; +13B71;EGYPTIAN HIEROGLYPH-13B71;Lo;0;L;;;;;N;;;;; +13B72;EGYPTIAN HIEROGLYPH-13B72;Lo;0;L;;;;;N;;;;; +13B73;EGYPTIAN HIEROGLYPH-13B73;Lo;0;L;;;;;N;;;;; +13B74;EGYPTIAN HIEROGLYPH-13B74;Lo;0;L;;;;;N;;;;; +13B75;EGYPTIAN HIEROGLYPH-13B75;Lo;0;L;;;;;N;;;;; +13B76;EGYPTIAN HIEROGLYPH-13B76;Lo;0;L;;;;;N;;;;; +13B77;EGYPTIAN HIEROGLYPH-13B77;Lo;0;L;;;;;N;;;;; +13B78;EGYPTIAN HIEROGLYPH-13B78;Lo;0;L;;;;;N;;;;; +13B79;EGYPTIAN HIEROGLYPH-13B79;Lo;0;L;;;;;N;;;;; +13B7A;EGYPTIAN HIEROGLYPH-13B7A;Lo;0;L;;;;;N;;;;; +13B7B;EGYPTIAN HIEROGLYPH-13B7B;Lo;0;L;;;;;N;;;;; +13B7C;EGYPTIAN HIEROGLYPH-13B7C;Lo;0;L;;;;;N;;;;; +13B7D;EGYPTIAN HIEROGLYPH-13B7D;Lo;0;L;;;;;N;;;;; +13B7E;EGYPTIAN HIEROGLYPH-13B7E;Lo;0;L;;;;;N;;;;; +13B7F;EGYPTIAN HIEROGLYPH-13B7F;Lo;0;L;;;;;N;;;;; +13B80;EGYPTIAN HIEROGLYPH-13B80;Lo;0;L;;;;;N;;;;; +13B81;EGYPTIAN HIEROGLYPH-13B81;Lo;0;L;;;;;N;;;;; +13B82;EGYPTIAN HIEROGLYPH-13B82;Lo;0;L;;;;;N;;;;; +13B83;EGYPTIAN HIEROGLYPH-13B83;Lo;0;L;;;;;N;;;;; +13B84;EGYPTIAN HIEROGLYPH-13B84;Lo;0;L;;;;;N;;;;; +13B85;EGYPTIAN HIEROGLYPH-13B85;Lo;0;L;;;;;N;;;;; +13B86;EGYPTIAN HIEROGLYPH-13B86;Lo;0;L;;;;;N;;;;; +13B87;EGYPTIAN HIEROGLYPH-13B87;Lo;0;L;;;;;N;;;;; +13B88;EGYPTIAN HIEROGLYPH-13B88;Lo;0;L;;;;;N;;;;; +13B89;EGYPTIAN HIEROGLYPH-13B89;Lo;0;L;;;;;N;;;;; +13B8A;EGYPTIAN HIEROGLYPH-13B8A;Lo;0;L;;;;;N;;;;; +13B8B;EGYPTIAN HIEROGLYPH-13B8B;Lo;0;L;;;;;N;;;;; +13B8C;EGYPTIAN HIEROGLYPH-13B8C;Lo;0;L;;;;;N;;;;; +13B8D;EGYPTIAN HIEROGLYPH-13B8D;Lo;0;L;;;;;N;;;;; +13B8E;EGYPTIAN HIEROGLYPH-13B8E;Lo;0;L;;;;;N;;;;; +13B8F;EGYPTIAN HIEROGLYPH-13B8F;Lo;0;L;;;;;N;;;;; +13B90;EGYPTIAN HIEROGLYPH-13B90;Lo;0;L;;;;;N;;;;; +13B91;EGYPTIAN HIEROGLYPH-13B91;Lo;0;L;;;;;N;;;;; +13B92;EGYPTIAN HIEROGLYPH-13B92;Lo;0;L;;;;;N;;;;; +13B93;EGYPTIAN HIEROGLYPH-13B93;Lo;0;L;;;;;N;;;;; +13B94;EGYPTIAN HIEROGLYPH-13B94;Lo;0;L;;;;;N;;;;; +13B95;EGYPTIAN HIEROGLYPH-13B95;Lo;0;L;;;;;N;;;;; +13B96;EGYPTIAN HIEROGLYPH-13B96;Lo;0;L;;;;;N;;;;; +13B97;EGYPTIAN HIEROGLYPH-13B97;Lo;0;L;;;;;N;;;;; +13B98;EGYPTIAN HIEROGLYPH-13B98;Lo;0;L;;;;;N;;;;; +13B99;EGYPTIAN HIEROGLYPH-13B99;Lo;0;L;;;;;N;;;;; +13B9A;EGYPTIAN HIEROGLYPH-13B9A;Lo;0;L;;;;;N;;;;; +13B9B;EGYPTIAN HIEROGLYPH-13B9B;Lo;0;L;;;;;N;;;;; +13B9C;EGYPTIAN HIEROGLYPH-13B9C;Lo;0;L;;;;;N;;;;; +13B9D;EGYPTIAN HIEROGLYPH-13B9D;Lo;0;L;;;;;N;;;;; +13B9E;EGYPTIAN HIEROGLYPH-13B9E;Lo;0;L;;;;;N;;;;; +13B9F;EGYPTIAN HIEROGLYPH-13B9F;Lo;0;L;;;;;N;;;;; +13BA0;EGYPTIAN HIEROGLYPH-13BA0;Lo;0;L;;;;;N;;;;; +13BA1;EGYPTIAN HIEROGLYPH-13BA1;Lo;0;L;;;;;N;;;;; +13BA2;EGYPTIAN HIEROGLYPH-13BA2;Lo;0;L;;;;;N;;;;; +13BA3;EGYPTIAN HIEROGLYPH-13BA3;Lo;0;L;;;;;N;;;;; +13BA4;EGYPTIAN HIEROGLYPH-13BA4;Lo;0;L;;;;;N;;;;; +13BA5;EGYPTIAN HIEROGLYPH-13BA5;Lo;0;L;;;;;N;;;;; +13BA6;EGYPTIAN HIEROGLYPH-13BA6;Lo;0;L;;;;;N;;;;; +13BA7;EGYPTIAN HIEROGLYPH-13BA7;Lo;0;L;;;;;N;;;;; +13BA8;EGYPTIAN HIEROGLYPH-13BA8;Lo;0;L;;;;;N;;;;; +13BA9;EGYPTIAN HIEROGLYPH-13BA9;Lo;0;L;;;;;N;;;;; +13BAA;EGYPTIAN HIEROGLYPH-13BAA;Lo;0;L;;;;;N;;;;; +13BAB;EGYPTIAN HIEROGLYPH-13BAB;Lo;0;L;;;;;N;;;;; +13BAC;EGYPTIAN HIEROGLYPH-13BAC;Lo;0;L;;;;;N;;;;; +13BAD;EGYPTIAN HIEROGLYPH-13BAD;Lo;0;L;;;;;N;;;;; +13BAE;EGYPTIAN HIEROGLYPH-13BAE;Lo;0;L;;;;;N;;;;; +13BAF;EGYPTIAN HIEROGLYPH-13BAF;Lo;0;L;;;;;N;;;;; +13BB0;EGYPTIAN HIEROGLYPH-13BB0;Lo;0;L;;;;;N;;;;; +13BB1;EGYPTIAN HIEROGLYPH-13BB1;Lo;0;L;;;;;N;;;;; +13BB2;EGYPTIAN HIEROGLYPH-13BB2;Lo;0;L;;;;;N;;;;; +13BB3;EGYPTIAN HIEROGLYPH-13BB3;Lo;0;L;;;;;N;;;;; +13BB4;EGYPTIAN HIEROGLYPH-13BB4;Lo;0;L;;;;;N;;;;; +13BB5;EGYPTIAN HIEROGLYPH-13BB5;Lo;0;L;;;;;N;;;;; +13BB6;EGYPTIAN HIEROGLYPH-13BB6;Lo;0;L;;;;;N;;;;; +13BB7;EGYPTIAN HIEROGLYPH-13BB7;Lo;0;L;;;;;N;;;;; +13BB8;EGYPTIAN HIEROGLYPH-13BB8;Lo;0;L;;;;;N;;;;; +13BB9;EGYPTIAN HIEROGLYPH-13BB9;Lo;0;L;;;;;N;;;;; +13BBA;EGYPTIAN HIEROGLYPH-13BBA;Lo;0;L;;;;;N;;;;; +13BBB;EGYPTIAN HIEROGLYPH-13BBB;Lo;0;L;;;;;N;;;;; +13BBC;EGYPTIAN HIEROGLYPH-13BBC;Lo;0;L;;;;;N;;;;; +13BBD;EGYPTIAN HIEROGLYPH-13BBD;Lo;0;L;;;;;N;;;;; +13BBE;EGYPTIAN HIEROGLYPH-13BBE;Lo;0;L;;;;;N;;;;; +13BBF;EGYPTIAN HIEROGLYPH-13BBF;Lo;0;L;;;;;N;;;;; +13BC0;EGYPTIAN HIEROGLYPH-13BC0;Lo;0;L;;;;;N;;;;; +13BC1;EGYPTIAN HIEROGLYPH-13BC1;Lo;0;L;;;;;N;;;;; +13BC2;EGYPTIAN HIEROGLYPH-13BC2;Lo;0;L;;;;;N;;;;; +13BC3;EGYPTIAN HIEROGLYPH-13BC3;Lo;0;L;;;;;N;;;;; +13BC4;EGYPTIAN HIEROGLYPH-13BC4;Lo;0;L;;;;;N;;;;; +13BC5;EGYPTIAN HIEROGLYPH-13BC5;Lo;0;L;;;;;N;;;;; +13BC6;EGYPTIAN HIEROGLYPH-13BC6;Lo;0;L;;;;;N;;;;; +13BC7;EGYPTIAN HIEROGLYPH-13BC7;Lo;0;L;;;;;N;;;;; +13BC8;EGYPTIAN HIEROGLYPH-13BC8;Lo;0;L;;;;;N;;;;; +13BC9;EGYPTIAN HIEROGLYPH-13BC9;Lo;0;L;;;;;N;;;;; +13BCA;EGYPTIAN HIEROGLYPH-13BCA;Lo;0;L;;;;;N;;;;; +13BCB;EGYPTIAN HIEROGLYPH-13BCB;Lo;0;L;;;;;N;;;;; +13BCC;EGYPTIAN HIEROGLYPH-13BCC;Lo;0;L;;;;;N;;;;; +13BCD;EGYPTIAN HIEROGLYPH-13BCD;Lo;0;L;;;;;N;;;;; +13BCE;EGYPTIAN HIEROGLYPH-13BCE;Lo;0;L;;;;;N;;;;; +13BCF;EGYPTIAN HIEROGLYPH-13BCF;Lo;0;L;;;;;N;;;;; +13BD0;EGYPTIAN HIEROGLYPH-13BD0;Lo;0;L;;;;;N;;;;; +13BD1;EGYPTIAN HIEROGLYPH-13BD1;Lo;0;L;;;;;N;;;;; +13BD2;EGYPTIAN HIEROGLYPH-13BD2;Lo;0;L;;;;;N;;;;; +13BD3;EGYPTIAN HIEROGLYPH-13BD3;Lo;0;L;;;;;N;;;;; +13BD4;EGYPTIAN HIEROGLYPH-13BD4;Lo;0;L;;;;;N;;;;; +13BD5;EGYPTIAN HIEROGLYPH-13BD5;Lo;0;L;;;;;N;;;;; +13BD6;EGYPTIAN HIEROGLYPH-13BD6;Lo;0;L;;;;;N;;;;; +13BD7;EGYPTIAN HIEROGLYPH-13BD7;Lo;0;L;;;;;N;;;;; +13BD8;EGYPTIAN HIEROGLYPH-13BD8;Lo;0;L;;;;;N;;;;; +13BD9;EGYPTIAN HIEROGLYPH-13BD9;Lo;0;L;;;;;N;;;;; +13BDA;EGYPTIAN HIEROGLYPH-13BDA;Lo;0;L;;;;;N;;;;; +13BDB;EGYPTIAN HIEROGLYPH-13BDB;Lo;0;L;;;;;N;;;;; +13BDC;EGYPTIAN HIEROGLYPH-13BDC;Lo;0;L;;;;;N;;;;; +13BDD;EGYPTIAN HIEROGLYPH-13BDD;Lo;0;L;;;;;N;;;;; +13BDE;EGYPTIAN HIEROGLYPH-13BDE;Lo;0;L;;;;;N;;;;; +13BDF;EGYPTIAN HIEROGLYPH-13BDF;Lo;0;L;;;;;N;;;;; +13BE0;EGYPTIAN HIEROGLYPH-13BE0;Lo;0;L;;;;;N;;;;; +13BE1;EGYPTIAN HIEROGLYPH-13BE1;Lo;0;L;;;;;N;;;;; +13BE2;EGYPTIAN HIEROGLYPH-13BE2;Lo;0;L;;;;;N;;;;; +13BE3;EGYPTIAN HIEROGLYPH-13BE3;Lo;0;L;;;;;N;;;;; +13BE4;EGYPTIAN HIEROGLYPH-13BE4;Lo;0;L;;;;;N;;;;; +13BE5;EGYPTIAN HIEROGLYPH-13BE5;Lo;0;L;;;;;N;;;;; +13BE6;EGYPTIAN HIEROGLYPH-13BE6;Lo;0;L;;;;;N;;;;; +13BE7;EGYPTIAN HIEROGLYPH-13BE7;Lo;0;L;;;;;N;;;;; +13BE8;EGYPTIAN HIEROGLYPH-13BE8;Lo;0;L;;;;;N;;;;; +13BE9;EGYPTIAN HIEROGLYPH-13BE9;Lo;0;L;;;;;N;;;;; +13BEA;EGYPTIAN HIEROGLYPH-13BEA;Lo;0;L;;;;;N;;;;; +13BEB;EGYPTIAN HIEROGLYPH-13BEB;Lo;0;L;;;;;N;;;;; +13BEC;EGYPTIAN HIEROGLYPH-13BEC;Lo;0;L;;;;;N;;;;; +13BED;EGYPTIAN HIEROGLYPH-13BED;Lo;0;L;;;;;N;;;;; +13BEE;EGYPTIAN HIEROGLYPH-13BEE;Lo;0;L;;;;;N;;;;; +13BEF;EGYPTIAN HIEROGLYPH-13BEF;Lo;0;L;;;;;N;;;;; +13BF0;EGYPTIAN HIEROGLYPH-13BF0;Lo;0;L;;;;;N;;;;; +13BF1;EGYPTIAN HIEROGLYPH-13BF1;Lo;0;L;;;;;N;;;;; +13BF2;EGYPTIAN HIEROGLYPH-13BF2;Lo;0;L;;;;;N;;;;; +13BF3;EGYPTIAN HIEROGLYPH-13BF3;Lo;0;L;;;;;N;;;;; +13BF4;EGYPTIAN HIEROGLYPH-13BF4;Lo;0;L;;;;;N;;;;; +13BF5;EGYPTIAN HIEROGLYPH-13BF5;Lo;0;L;;;;;N;;;;; +13BF6;EGYPTIAN HIEROGLYPH-13BF6;Lo;0;L;;;;;N;;;;; +13BF7;EGYPTIAN HIEROGLYPH-13BF7;Lo;0;L;;;;;N;;;;; +13BF8;EGYPTIAN HIEROGLYPH-13BF8;Lo;0;L;;;;;N;;;;; +13BF9;EGYPTIAN HIEROGLYPH-13BF9;Lo;0;L;;;;;N;;;;; +13BFA;EGYPTIAN HIEROGLYPH-13BFA;Lo;0;L;;;;;N;;;;; +13BFB;EGYPTIAN HIEROGLYPH-13BFB;Lo;0;L;;;;;N;;;;; +13BFC;EGYPTIAN HIEROGLYPH-13BFC;Lo;0;L;;;;;N;;;;; +13BFD;EGYPTIAN HIEROGLYPH-13BFD;Lo;0;L;;;;;N;;;;; +13BFE;EGYPTIAN HIEROGLYPH-13BFE;Lo;0;L;;;;;N;;;;; +13BFF;EGYPTIAN HIEROGLYPH-13BFF;Lo;0;L;;;;;N;;;;; +13C00;EGYPTIAN HIEROGLYPH-13C00;Lo;0;L;;;;;N;;;;; +13C01;EGYPTIAN HIEROGLYPH-13C01;Lo;0;L;;;;;N;;;;; +13C02;EGYPTIAN HIEROGLYPH-13C02;Lo;0;L;;;;;N;;;;; +13C03;EGYPTIAN HIEROGLYPH-13C03;Lo;0;L;;;;;N;;;;; +13C04;EGYPTIAN HIEROGLYPH-13C04;Lo;0;L;;;;;N;;;;; +13C05;EGYPTIAN HIEROGLYPH-13C05;Lo;0;L;;;;;N;;;;; +13C06;EGYPTIAN HIEROGLYPH-13C06;Lo;0;L;;;;;N;;;;; +13C07;EGYPTIAN HIEROGLYPH-13C07;Lo;0;L;;;;;N;;;;; +13C08;EGYPTIAN HIEROGLYPH-13C08;Lo;0;L;;;;;N;;;;; +13C09;EGYPTIAN HIEROGLYPH-13C09;Lo;0;L;;;;;N;;;;; +13C0A;EGYPTIAN HIEROGLYPH-13C0A;Lo;0;L;;;;;N;;;;; +13C0B;EGYPTIAN HIEROGLYPH-13C0B;Lo;0;L;;;;;N;;;;; +13C0C;EGYPTIAN HIEROGLYPH-13C0C;Lo;0;L;;;;;N;;;;; +13C0D;EGYPTIAN HIEROGLYPH-13C0D;Lo;0;L;;;;;N;;;;; +13C0E;EGYPTIAN HIEROGLYPH-13C0E;Lo;0;L;;;;;N;;;;; +13C0F;EGYPTIAN HIEROGLYPH-13C0F;Lo;0;L;;;;;N;;;;; +13C10;EGYPTIAN HIEROGLYPH-13C10;Lo;0;L;;;;;N;;;;; +13C11;EGYPTIAN HIEROGLYPH-13C11;Lo;0;L;;;;;N;;;;; +13C12;EGYPTIAN HIEROGLYPH-13C12;Lo;0;L;;;;;N;;;;; +13C13;EGYPTIAN HIEROGLYPH-13C13;Lo;0;L;;;;;N;;;;; +13C14;EGYPTIAN HIEROGLYPH-13C14;Lo;0;L;;;;;N;;;;; +13C15;EGYPTIAN HIEROGLYPH-13C15;Lo;0;L;;;;;N;;;;; +13C16;EGYPTIAN HIEROGLYPH-13C16;Lo;0;L;;;;;N;;;;; +13C17;EGYPTIAN HIEROGLYPH-13C17;Lo;0;L;;;;;N;;;;; +13C18;EGYPTIAN HIEROGLYPH-13C18;Lo;0;L;;;;;N;;;;; +13C19;EGYPTIAN HIEROGLYPH-13C19;Lo;0;L;;;;;N;;;;; +13C1A;EGYPTIAN HIEROGLYPH-13C1A;Lo;0;L;;;;;N;;;;; +13C1B;EGYPTIAN HIEROGLYPH-13C1B;Lo;0;L;;;;;N;;;;; +13C1C;EGYPTIAN HIEROGLYPH-13C1C;Lo;0;L;;;;;N;;;;; +13C1D;EGYPTIAN HIEROGLYPH-13C1D;Lo;0;L;;;;;N;;;;; +13C1E;EGYPTIAN HIEROGLYPH-13C1E;Lo;0;L;;;;;N;;;;; +13C1F;EGYPTIAN HIEROGLYPH-13C1F;Lo;0;L;;;;;N;;;;; +13C20;EGYPTIAN HIEROGLYPH-13C20;Lo;0;L;;;;;N;;;;; +13C21;EGYPTIAN HIEROGLYPH-13C21;Lo;0;L;;;;;N;;;;; +13C22;EGYPTIAN HIEROGLYPH-13C22;Lo;0;L;;;;;N;;;;; +13C23;EGYPTIAN HIEROGLYPH-13C23;Lo;0;L;;;;;N;;;;; +13C24;EGYPTIAN HIEROGLYPH-13C24;Lo;0;L;;;;;N;;;;; +13C25;EGYPTIAN HIEROGLYPH-13C25;Lo;0;L;;;;;N;;;;; +13C26;EGYPTIAN HIEROGLYPH-13C26;Lo;0;L;;;;;N;;;;; +13C27;EGYPTIAN HIEROGLYPH-13C27;Lo;0;L;;;;;N;;;;; +13C28;EGYPTIAN HIEROGLYPH-13C28;Lo;0;L;;;;;N;;;;; +13C29;EGYPTIAN HIEROGLYPH-13C29;Lo;0;L;;;;;N;;;;; +13C2A;EGYPTIAN HIEROGLYPH-13C2A;Lo;0;L;;;;;N;;;;; +13C2B;EGYPTIAN HIEROGLYPH-13C2B;Lo;0;L;;;;;N;;;;; +13C2C;EGYPTIAN HIEROGLYPH-13C2C;Lo;0;L;;;;;N;;;;; +13C2D;EGYPTIAN HIEROGLYPH-13C2D;Lo;0;L;;;;;N;;;;; +13C2E;EGYPTIAN HIEROGLYPH-13C2E;Lo;0;L;;;;;N;;;;; +13C2F;EGYPTIAN HIEROGLYPH-13C2F;Lo;0;L;;;;;N;;;;; +13C30;EGYPTIAN HIEROGLYPH-13C30;Lo;0;L;;;;;N;;;;; +13C31;EGYPTIAN HIEROGLYPH-13C31;Lo;0;L;;;;;N;;;;; +13C32;EGYPTIAN HIEROGLYPH-13C32;Lo;0;L;;;;;N;;;;; +13C33;EGYPTIAN HIEROGLYPH-13C33;Lo;0;L;;;;;N;;;;; +13C34;EGYPTIAN HIEROGLYPH-13C34;Lo;0;L;;;;;N;;;;; +13C35;EGYPTIAN HIEROGLYPH-13C35;Lo;0;L;;;;;N;;;;; +13C36;EGYPTIAN HIEROGLYPH-13C36;Lo;0;L;;;;;N;;;;; +13C37;EGYPTIAN HIEROGLYPH-13C37;Lo;0;L;;;;;N;;;;; +13C38;EGYPTIAN HIEROGLYPH-13C38;Lo;0;L;;;;;N;;;;; +13C39;EGYPTIAN HIEROGLYPH-13C39;Lo;0;L;;;;;N;;;;; +13C3A;EGYPTIAN HIEROGLYPH-13C3A;Lo;0;L;;;;;N;;;;; +13C3B;EGYPTIAN HIEROGLYPH-13C3B;Lo;0;L;;;;;N;;;;; +13C3C;EGYPTIAN HIEROGLYPH-13C3C;Lo;0;L;;;;;N;;;;; +13C3D;EGYPTIAN HIEROGLYPH-13C3D;Lo;0;L;;;;;N;;;;; +13C3E;EGYPTIAN HIEROGLYPH-13C3E;Lo;0;L;;;;;N;;;;; +13C3F;EGYPTIAN HIEROGLYPH-13C3F;Lo;0;L;;;;;N;;;;; +13C40;EGYPTIAN HIEROGLYPH-13C40;Lo;0;L;;;;;N;;;;; +13C41;EGYPTIAN HIEROGLYPH-13C41;Lo;0;L;;;;;N;;;;; +13C42;EGYPTIAN HIEROGLYPH-13C42;Lo;0;L;;;;;N;;;;; +13C43;EGYPTIAN HIEROGLYPH-13C43;Lo;0;L;;;;;N;;;;; +13C44;EGYPTIAN HIEROGLYPH-13C44;Lo;0;L;;;;;N;;;;; +13C45;EGYPTIAN HIEROGLYPH-13C45;Lo;0;L;;;;;N;;;;; +13C46;EGYPTIAN HIEROGLYPH-13C46;Lo;0;L;;;;;N;;;;; +13C47;EGYPTIAN HIEROGLYPH-13C47;Lo;0;L;;;;;N;;;;; +13C48;EGYPTIAN HIEROGLYPH-13C48;Lo;0;L;;;;;N;;;;; +13C49;EGYPTIAN HIEROGLYPH-13C49;Lo;0;L;;;;;N;;;;; +13C4A;EGYPTIAN HIEROGLYPH-13C4A;Lo;0;L;;;;;N;;;;; +13C4B;EGYPTIAN HIEROGLYPH-13C4B;Lo;0;L;;;;;N;;;;; +13C4C;EGYPTIAN HIEROGLYPH-13C4C;Lo;0;L;;;;;N;;;;; +13C4D;EGYPTIAN HIEROGLYPH-13C4D;Lo;0;L;;;;;N;;;;; +13C4E;EGYPTIAN HIEROGLYPH-13C4E;Lo;0;L;;;;;N;;;;; +13C4F;EGYPTIAN HIEROGLYPH-13C4F;Lo;0;L;;;;;N;;;;; +13C50;EGYPTIAN HIEROGLYPH-13C50;Lo;0;L;;;;;N;;;;; +13C51;EGYPTIAN HIEROGLYPH-13C51;Lo;0;L;;;;;N;;;;; +13C52;EGYPTIAN HIEROGLYPH-13C52;Lo;0;L;;;;;N;;;;; +13C53;EGYPTIAN HIEROGLYPH-13C53;Lo;0;L;;;;;N;;;;; +13C54;EGYPTIAN HIEROGLYPH-13C54;Lo;0;L;;;;;N;;;;; +13C55;EGYPTIAN HIEROGLYPH-13C55;Lo;0;L;;;;;N;;;;; +13C56;EGYPTIAN HIEROGLYPH-13C56;Lo;0;L;;;;;N;;;;; +13C57;EGYPTIAN HIEROGLYPH-13C57;Lo;0;L;;;;;N;;;;; +13C58;EGYPTIAN HIEROGLYPH-13C58;Lo;0;L;;;;;N;;;;; +13C59;EGYPTIAN HIEROGLYPH-13C59;Lo;0;L;;;;;N;;;;; +13C5A;EGYPTIAN HIEROGLYPH-13C5A;Lo;0;L;;;;;N;;;;; +13C5B;EGYPTIAN HIEROGLYPH-13C5B;Lo;0;L;;;;;N;;;;; +13C5C;EGYPTIAN HIEROGLYPH-13C5C;Lo;0;L;;;;;N;;;;; +13C5D;EGYPTIAN HIEROGLYPH-13C5D;Lo;0;L;;;;;N;;;;; +13C5E;EGYPTIAN HIEROGLYPH-13C5E;Lo;0;L;;;;;N;;;;; +13C5F;EGYPTIAN HIEROGLYPH-13C5F;Lo;0;L;;;;;N;;;;; +13C60;EGYPTIAN HIEROGLYPH-13C60;Lo;0;L;;;;;N;;;;; +13C61;EGYPTIAN HIEROGLYPH-13C61;Lo;0;L;;;;;N;;;;; +13C62;EGYPTIAN HIEROGLYPH-13C62;Lo;0;L;;;;;N;;;;; +13C63;EGYPTIAN HIEROGLYPH-13C63;Lo;0;L;;;;;N;;;;; +13C64;EGYPTIAN HIEROGLYPH-13C64;Lo;0;L;;;;;N;;;;; +13C65;EGYPTIAN HIEROGLYPH-13C65;Lo;0;L;;;;;N;;;;; +13C66;EGYPTIAN HIEROGLYPH-13C66;Lo;0;L;;;;;N;;;;; +13C67;EGYPTIAN HIEROGLYPH-13C67;Lo;0;L;;;;;N;;;;; +13C68;EGYPTIAN HIEROGLYPH-13C68;Lo;0;L;;;;;N;;;;; +13C69;EGYPTIAN HIEROGLYPH-13C69;Lo;0;L;;;;;N;;;;; +13C6A;EGYPTIAN HIEROGLYPH-13C6A;Lo;0;L;;;;;N;;;;; +13C6B;EGYPTIAN HIEROGLYPH-13C6B;Lo;0;L;;;;;N;;;;; +13C6C;EGYPTIAN HIEROGLYPH-13C6C;Lo;0;L;;;;;N;;;;; +13C6D;EGYPTIAN HIEROGLYPH-13C6D;Lo;0;L;;;;;N;;;;; +13C6E;EGYPTIAN HIEROGLYPH-13C6E;Lo;0;L;;;;;N;;;;; +13C6F;EGYPTIAN HIEROGLYPH-13C6F;Lo;0;L;;;;;N;;;;; +13C70;EGYPTIAN HIEROGLYPH-13C70;Lo;0;L;;;;;N;;;;; +13C71;EGYPTIAN HIEROGLYPH-13C71;Lo;0;L;;;;;N;;;;; +13C72;EGYPTIAN HIEROGLYPH-13C72;Lo;0;L;;;;;N;;;;; +13C73;EGYPTIAN HIEROGLYPH-13C73;Lo;0;L;;;;;N;;;;; +13C74;EGYPTIAN HIEROGLYPH-13C74;Lo;0;L;;;;;N;;;;; +13C75;EGYPTIAN HIEROGLYPH-13C75;Lo;0;L;;;;;N;;;;; +13C76;EGYPTIAN HIEROGLYPH-13C76;Lo;0;L;;;;;N;;;;; +13C77;EGYPTIAN HIEROGLYPH-13C77;Lo;0;L;;;;;N;;;;; +13C78;EGYPTIAN HIEROGLYPH-13C78;Lo;0;L;;;;;N;;;;; +13C79;EGYPTIAN HIEROGLYPH-13C79;Lo;0;L;;;;;N;;;;; +13C7A;EGYPTIAN HIEROGLYPH-13C7A;Lo;0;L;;;;;N;;;;; +13C7B;EGYPTIAN HIEROGLYPH-13C7B;Lo;0;L;;;;;N;;;;; +13C7C;EGYPTIAN HIEROGLYPH-13C7C;Lo;0;L;;;;;N;;;;; +13C7D;EGYPTIAN HIEROGLYPH-13C7D;Lo;0;L;;;;;N;;;;; +13C7E;EGYPTIAN HIEROGLYPH-13C7E;Lo;0;L;;;;;N;;;;; +13C7F;EGYPTIAN HIEROGLYPH-13C7F;Lo;0;L;;;;;N;;;;; +13C80;EGYPTIAN HIEROGLYPH-13C80;Lo;0;L;;;;;N;;;;; +13C81;EGYPTIAN HIEROGLYPH-13C81;Lo;0;L;;;;;N;;;;; +13C82;EGYPTIAN HIEROGLYPH-13C82;Lo;0;L;;;;;N;;;;; +13C83;EGYPTIAN HIEROGLYPH-13C83;Lo;0;L;;;;;N;;;;; +13C84;EGYPTIAN HIEROGLYPH-13C84;Lo;0;L;;;;;N;;;;; +13C85;EGYPTIAN HIEROGLYPH-13C85;Lo;0;L;;;;;N;;;;; +13C86;EGYPTIAN HIEROGLYPH-13C86;Lo;0;L;;;;;N;;;;; +13C87;EGYPTIAN HIEROGLYPH-13C87;Lo;0;L;;;;;N;;;;; +13C88;EGYPTIAN HIEROGLYPH-13C88;Lo;0;L;;;;;N;;;;; +13C89;EGYPTIAN HIEROGLYPH-13C89;Lo;0;L;;;;;N;;;;; +13C8A;EGYPTIAN HIEROGLYPH-13C8A;Lo;0;L;;;;;N;;;;; +13C8B;EGYPTIAN HIEROGLYPH-13C8B;Lo;0;L;;;;;N;;;;; +13C8C;EGYPTIAN HIEROGLYPH-13C8C;Lo;0;L;;;;;N;;;;; +13C8D;EGYPTIAN HIEROGLYPH-13C8D;Lo;0;L;;;;;N;;;;; +13C8E;EGYPTIAN HIEROGLYPH-13C8E;Lo;0;L;;;;;N;;;;; +13C8F;EGYPTIAN HIEROGLYPH-13C8F;Lo;0;L;;;;;N;;;;; +13C90;EGYPTIAN HIEROGLYPH-13C90;Lo;0;L;;;;;N;;;;; +13C91;EGYPTIAN HIEROGLYPH-13C91;Lo;0;L;;;;;N;;;;; +13C92;EGYPTIAN HIEROGLYPH-13C92;Lo;0;L;;;;;N;;;;; +13C93;EGYPTIAN HIEROGLYPH-13C93;Lo;0;L;;;;;N;;;;; +13C94;EGYPTIAN HIEROGLYPH-13C94;Lo;0;L;;;;;N;;;;; +13C95;EGYPTIAN HIEROGLYPH-13C95;Lo;0;L;;;;;N;;;;; +13C96;EGYPTIAN HIEROGLYPH-13C96;Lo;0;L;;;;;N;;;;; +13C97;EGYPTIAN HIEROGLYPH-13C97;Lo;0;L;;;;;N;;;;; +13C98;EGYPTIAN HIEROGLYPH-13C98;Lo;0;L;;;;;N;;;;; +13C99;EGYPTIAN HIEROGLYPH-13C99;Lo;0;L;;;;;N;;;;; +13C9A;EGYPTIAN HIEROGLYPH-13C9A;Lo;0;L;;;;;N;;;;; +13C9B;EGYPTIAN HIEROGLYPH-13C9B;Lo;0;L;;;;;N;;;;; +13C9C;EGYPTIAN HIEROGLYPH-13C9C;Lo;0;L;;;;;N;;;;; +13C9D;EGYPTIAN HIEROGLYPH-13C9D;Lo;0;L;;;;;N;;;;; +13C9E;EGYPTIAN HIEROGLYPH-13C9E;Lo;0;L;;;;;N;;;;; +13C9F;EGYPTIAN HIEROGLYPH-13C9F;Lo;0;L;;;;;N;;;;; +13CA0;EGYPTIAN HIEROGLYPH-13CA0;Lo;0;L;;;;;N;;;;; +13CA1;EGYPTIAN HIEROGLYPH-13CA1;Lo;0;L;;;;;N;;;;; +13CA2;EGYPTIAN HIEROGLYPH-13CA2;Lo;0;L;;;;;N;;;;; +13CA3;EGYPTIAN HIEROGLYPH-13CA3;Lo;0;L;;;;;N;;;;; +13CA4;EGYPTIAN HIEROGLYPH-13CA4;Lo;0;L;;;;;N;;;;; +13CA5;EGYPTIAN HIEROGLYPH-13CA5;Lo;0;L;;;;;N;;;;; +13CA6;EGYPTIAN HIEROGLYPH-13CA6;Lo;0;L;;;;;N;;;;; +13CA7;EGYPTIAN HIEROGLYPH-13CA7;Lo;0;L;;;;;N;;;;; +13CA8;EGYPTIAN HIEROGLYPH-13CA8;Lo;0;L;;;;;N;;;;; +13CA9;EGYPTIAN HIEROGLYPH-13CA9;Lo;0;L;;;;;N;;;;; +13CAA;EGYPTIAN HIEROGLYPH-13CAA;Lo;0;L;;;;;N;;;;; +13CAB;EGYPTIAN HIEROGLYPH-13CAB;Lo;0;L;;;;;N;;;;; +13CAC;EGYPTIAN HIEROGLYPH-13CAC;Lo;0;L;;;;;N;;;;; +13CAD;EGYPTIAN HIEROGLYPH-13CAD;Lo;0;L;;;;;N;;;;; +13CAE;EGYPTIAN HIEROGLYPH-13CAE;Lo;0;L;;;;;N;;;;; +13CAF;EGYPTIAN HIEROGLYPH-13CAF;Lo;0;L;;;;;N;;;;; +13CB0;EGYPTIAN HIEROGLYPH-13CB0;Lo;0;L;;;;;N;;;;; +13CB1;EGYPTIAN HIEROGLYPH-13CB1;Lo;0;L;;;;;N;;;;; +13CB2;EGYPTIAN HIEROGLYPH-13CB2;Lo;0;L;;;;;N;;;;; +13CB3;EGYPTIAN HIEROGLYPH-13CB3;Lo;0;L;;;;;N;;;;; +13CB4;EGYPTIAN HIEROGLYPH-13CB4;Lo;0;L;;;;;N;;;;; +13CB5;EGYPTIAN HIEROGLYPH-13CB5;Lo;0;L;;;;;N;;;;; +13CB6;EGYPTIAN HIEROGLYPH-13CB6;Lo;0;L;;;;;N;;;;; +13CB7;EGYPTIAN HIEROGLYPH-13CB7;Lo;0;L;;;;;N;;;;; +13CB8;EGYPTIAN HIEROGLYPH-13CB8;Lo;0;L;;;;;N;;;;; +13CB9;EGYPTIAN HIEROGLYPH-13CB9;Lo;0;L;;;;;N;;;;; +13CBA;EGYPTIAN HIEROGLYPH-13CBA;Lo;0;L;;;;;N;;;;; +13CBB;EGYPTIAN HIEROGLYPH-13CBB;Lo;0;L;;;;;N;;;;; +13CBC;EGYPTIAN HIEROGLYPH-13CBC;Lo;0;L;;;;;N;;;;; +13CBD;EGYPTIAN HIEROGLYPH-13CBD;Lo;0;L;;;;;N;;;;; +13CBE;EGYPTIAN HIEROGLYPH-13CBE;Lo;0;L;;;;;N;;;;; +13CBF;EGYPTIAN HIEROGLYPH-13CBF;Lo;0;L;;;;;N;;;;; +13CC0;EGYPTIAN HIEROGLYPH-13CC0;Lo;0;L;;;;;N;;;;; +13CC1;EGYPTIAN HIEROGLYPH-13CC1;Lo;0;L;;;;;N;;;;; +13CC2;EGYPTIAN HIEROGLYPH-13CC2;Lo;0;L;;;;;N;;;;; +13CC3;EGYPTIAN HIEROGLYPH-13CC3;Lo;0;L;;;;;N;;;;; +13CC4;EGYPTIAN HIEROGLYPH-13CC4;Lo;0;L;;;;;N;;;;; +13CC5;EGYPTIAN HIEROGLYPH-13CC5;Lo;0;L;;;;;N;;;;; +13CC6;EGYPTIAN HIEROGLYPH-13CC6;Lo;0;L;;;;;N;;;;; +13CC7;EGYPTIAN HIEROGLYPH-13CC7;Lo;0;L;;;;;N;;;;; +13CC8;EGYPTIAN HIEROGLYPH-13CC8;Lo;0;L;;;;;N;;;;; +13CC9;EGYPTIAN HIEROGLYPH-13CC9;Lo;0;L;;;;;N;;;;; +13CCA;EGYPTIAN HIEROGLYPH-13CCA;Lo;0;L;;;;;N;;;;; +13CCB;EGYPTIAN HIEROGLYPH-13CCB;Lo;0;L;;;;;N;;;;; +13CCC;EGYPTIAN HIEROGLYPH-13CCC;Lo;0;L;;;;;N;;;;; +13CCD;EGYPTIAN HIEROGLYPH-13CCD;Lo;0;L;;;;;N;;;;; +13CCE;EGYPTIAN HIEROGLYPH-13CCE;Lo;0;L;;;;;N;;;;; +13CCF;EGYPTIAN HIEROGLYPH-13CCF;Lo;0;L;;;;;N;;;;; +13CD0;EGYPTIAN HIEROGLYPH-13CD0;Lo;0;L;;;;;N;;;;; +13CD1;EGYPTIAN HIEROGLYPH-13CD1;Lo;0;L;;;;;N;;;;; +13CD2;EGYPTIAN HIEROGLYPH-13CD2;Lo;0;L;;;;;N;;;;; +13CD3;EGYPTIAN HIEROGLYPH-13CD3;Lo;0;L;;;;;N;;;;; +13CD4;EGYPTIAN HIEROGLYPH-13CD4;Lo;0;L;;;;;N;;;;; +13CD5;EGYPTIAN HIEROGLYPH-13CD5;Lo;0;L;;;;;N;;;;; +13CD6;EGYPTIAN HIEROGLYPH-13CD6;Lo;0;L;;;;;N;;;;; +13CD7;EGYPTIAN HIEROGLYPH-13CD7;Lo;0;L;;;;;N;;;;; +13CD8;EGYPTIAN HIEROGLYPH-13CD8;Lo;0;L;;;;;N;;;;; +13CD9;EGYPTIAN HIEROGLYPH-13CD9;Lo;0;L;;;;;N;;;;; +13CDA;EGYPTIAN HIEROGLYPH-13CDA;Lo;0;L;;;;;N;;;;; +13CDB;EGYPTIAN HIEROGLYPH-13CDB;Lo;0;L;;;;;N;;;;; +13CDC;EGYPTIAN HIEROGLYPH-13CDC;Lo;0;L;;;;;N;;;;; +13CDD;EGYPTIAN HIEROGLYPH-13CDD;Lo;0;L;;;;;N;;;;; +13CDE;EGYPTIAN HIEROGLYPH-13CDE;Lo;0;L;;;;;N;;;;; +13CDF;EGYPTIAN HIEROGLYPH-13CDF;Lo;0;L;;;;;N;;;;; +13CE0;EGYPTIAN HIEROGLYPH-13CE0;Lo;0;L;;;;;N;;;;; +13CE1;EGYPTIAN HIEROGLYPH-13CE1;Lo;0;L;;;;;N;;;;; +13CE2;EGYPTIAN HIEROGLYPH-13CE2;Lo;0;L;;;;;N;;;;; +13CE3;EGYPTIAN HIEROGLYPH-13CE3;Lo;0;L;;;;;N;;;;; +13CE4;EGYPTIAN HIEROGLYPH-13CE4;Lo;0;L;;;;;N;;;;; +13CE5;EGYPTIAN HIEROGLYPH-13CE5;Lo;0;L;;;;;N;;;;; +13CE6;EGYPTIAN HIEROGLYPH-13CE6;Lo;0;L;;;;;N;;;;; +13CE7;EGYPTIAN HIEROGLYPH-13CE7;Lo;0;L;;;;;N;;;;; +13CE8;EGYPTIAN HIEROGLYPH-13CE8;Lo;0;L;;;;;N;;;;; +13CE9;EGYPTIAN HIEROGLYPH-13CE9;Lo;0;L;;;;;N;;;;; +13CEA;EGYPTIAN HIEROGLYPH-13CEA;Lo;0;L;;;;;N;;;;; +13CEB;EGYPTIAN HIEROGLYPH-13CEB;Lo;0;L;;;;;N;;;;; +13CEC;EGYPTIAN HIEROGLYPH-13CEC;Lo;0;L;;;;;N;;;;; +13CED;EGYPTIAN HIEROGLYPH-13CED;Lo;0;L;;;;;N;;;;; +13CEE;EGYPTIAN HIEROGLYPH-13CEE;Lo;0;L;;;;;N;;;;; +13CEF;EGYPTIAN HIEROGLYPH-13CEF;Lo;0;L;;;;;N;;;;; +13CF0;EGYPTIAN HIEROGLYPH-13CF0;Lo;0;L;;;;;N;;;;; +13CF1;EGYPTIAN HIEROGLYPH-13CF1;Lo;0;L;;;;;N;;;;; +13CF2;EGYPTIAN HIEROGLYPH-13CF2;Lo;0;L;;;;;N;;;;; +13CF3;EGYPTIAN HIEROGLYPH-13CF3;Lo;0;L;;;;;N;;;;; +13CF4;EGYPTIAN HIEROGLYPH-13CF4;Lo;0;L;;;;;N;;;;; +13CF5;EGYPTIAN HIEROGLYPH-13CF5;Lo;0;L;;;;;N;;;;; +13CF6;EGYPTIAN HIEROGLYPH-13CF6;Lo;0;L;;;;;N;;;;; +13CF7;EGYPTIAN HIEROGLYPH-13CF7;Lo;0;L;;;;;N;;;;; +13CF8;EGYPTIAN HIEROGLYPH-13CF8;Lo;0;L;;;;;N;;;;; +13CF9;EGYPTIAN HIEROGLYPH-13CF9;Lo;0;L;;;;;N;;;;; +13CFA;EGYPTIAN HIEROGLYPH-13CFA;Lo;0;L;;;;;N;;;;; +13CFB;EGYPTIAN HIEROGLYPH-13CFB;Lo;0;L;;;;;N;;;;; +13CFC;EGYPTIAN HIEROGLYPH-13CFC;Lo;0;L;;;;;N;;;;; +13CFD;EGYPTIAN HIEROGLYPH-13CFD;Lo;0;L;;;;;N;;;;; +13CFE;EGYPTIAN HIEROGLYPH-13CFE;Lo;0;L;;;;;N;;;;; +13CFF;EGYPTIAN HIEROGLYPH-13CFF;Lo;0;L;;;;;N;;;;; +13D00;EGYPTIAN HIEROGLYPH-13D00;Lo;0;L;;;;;N;;;;; +13D01;EGYPTIAN HIEROGLYPH-13D01;Lo;0;L;;;;;N;;;;; +13D02;EGYPTIAN HIEROGLYPH-13D02;Lo;0;L;;;;;N;;;;; +13D03;EGYPTIAN HIEROGLYPH-13D03;Lo;0;L;;;;;N;;;;; +13D04;EGYPTIAN HIEROGLYPH-13D04;Lo;0;L;;;;;N;;;;; +13D05;EGYPTIAN HIEROGLYPH-13D05;Lo;0;L;;;;;N;;;;; +13D06;EGYPTIAN HIEROGLYPH-13D06;Lo;0;L;;;;;N;;;;; +13D07;EGYPTIAN HIEROGLYPH-13D07;Lo;0;L;;;;;N;;;;; +13D08;EGYPTIAN HIEROGLYPH-13D08;Lo;0;L;;;;;N;;;;; +13D09;EGYPTIAN HIEROGLYPH-13D09;Lo;0;L;;;;;N;;;;; +13D0A;EGYPTIAN HIEROGLYPH-13D0A;Lo;0;L;;;;;N;;;;; +13D0B;EGYPTIAN HIEROGLYPH-13D0B;Lo;0;L;;;;;N;;;;; +13D0C;EGYPTIAN HIEROGLYPH-13D0C;Lo;0;L;;;;;N;;;;; +13D0D;EGYPTIAN HIEROGLYPH-13D0D;Lo;0;L;;;;;N;;;;; +13D0E;EGYPTIAN HIEROGLYPH-13D0E;Lo;0;L;;;;;N;;;;; +13D0F;EGYPTIAN HIEROGLYPH-13D0F;Lo;0;L;;;;;N;;;;; +13D10;EGYPTIAN HIEROGLYPH-13D10;Lo;0;L;;;;;N;;;;; +13D11;EGYPTIAN HIEROGLYPH-13D11;Lo;0;L;;;;;N;;;;; +13D12;EGYPTIAN HIEROGLYPH-13D12;Lo;0;L;;;;;N;;;;; +13D13;EGYPTIAN HIEROGLYPH-13D13;Lo;0;L;;;;;N;;;;; +13D14;EGYPTIAN HIEROGLYPH-13D14;Lo;0;L;;;;;N;;;;; +13D15;EGYPTIAN HIEROGLYPH-13D15;Lo;0;L;;;;;N;;;;; +13D16;EGYPTIAN HIEROGLYPH-13D16;Lo;0;L;;;;;N;;;;; +13D17;EGYPTIAN HIEROGLYPH-13D17;Lo;0;L;;;;;N;;;;; +13D18;EGYPTIAN HIEROGLYPH-13D18;Lo;0;L;;;;;N;;;;; +13D19;EGYPTIAN HIEROGLYPH-13D19;Lo;0;L;;;;;N;;;;; +13D1A;EGYPTIAN HIEROGLYPH-13D1A;Lo;0;L;;;;;N;;;;; +13D1B;EGYPTIAN HIEROGLYPH-13D1B;Lo;0;L;;;;;N;;;;; +13D1C;EGYPTIAN HIEROGLYPH-13D1C;Lo;0;L;;;;;N;;;;; +13D1D;EGYPTIAN HIEROGLYPH-13D1D;Lo;0;L;;;;;N;;;;; +13D1E;EGYPTIAN HIEROGLYPH-13D1E;Lo;0;L;;;;;N;;;;; +13D1F;EGYPTIAN HIEROGLYPH-13D1F;Lo;0;L;;;;;N;;;;; +13D20;EGYPTIAN HIEROGLYPH-13D20;Lo;0;L;;;;;N;;;;; +13D21;EGYPTIAN HIEROGLYPH-13D21;Lo;0;L;;;;;N;;;;; +13D22;EGYPTIAN HIEROGLYPH-13D22;Lo;0;L;;;;;N;;;;; +13D23;EGYPTIAN HIEROGLYPH-13D23;Lo;0;L;;;;;N;;;;; +13D24;EGYPTIAN HIEROGLYPH-13D24;Lo;0;L;;;;;N;;;;; +13D25;EGYPTIAN HIEROGLYPH-13D25;Lo;0;L;;;;;N;;;;; +13D26;EGYPTIAN HIEROGLYPH-13D26;Lo;0;L;;;;;N;;;;; +13D27;EGYPTIAN HIEROGLYPH-13D27;Lo;0;L;;;;;N;;;;; +13D28;EGYPTIAN HIEROGLYPH-13D28;Lo;0;L;;;;;N;;;;; +13D29;EGYPTIAN HIEROGLYPH-13D29;Lo;0;L;;;;;N;;;;; +13D2A;EGYPTIAN HIEROGLYPH-13D2A;Lo;0;L;;;;;N;;;;; +13D2B;EGYPTIAN HIEROGLYPH-13D2B;Lo;0;L;;;;;N;;;;; +13D2C;EGYPTIAN HIEROGLYPH-13D2C;Lo;0;L;;;;;N;;;;; +13D2D;EGYPTIAN HIEROGLYPH-13D2D;Lo;0;L;;;;;N;;;;; +13D2E;EGYPTIAN HIEROGLYPH-13D2E;Lo;0;L;;;;;N;;;;; +13D2F;EGYPTIAN HIEROGLYPH-13D2F;Lo;0;L;;;;;N;;;;; +13D30;EGYPTIAN HIEROGLYPH-13D30;Lo;0;L;;;;;N;;;;; +13D31;EGYPTIAN HIEROGLYPH-13D31;Lo;0;L;;;;;N;;;;; +13D32;EGYPTIAN HIEROGLYPH-13D32;Lo;0;L;;;;;N;;;;; +13D33;EGYPTIAN HIEROGLYPH-13D33;Lo;0;L;;;;;N;;;;; +13D34;EGYPTIAN HIEROGLYPH-13D34;Lo;0;L;;;;;N;;;;; +13D35;EGYPTIAN HIEROGLYPH-13D35;Lo;0;L;;;;;N;;;;; +13D36;EGYPTIAN HIEROGLYPH-13D36;Lo;0;L;;;;;N;;;;; +13D37;EGYPTIAN HIEROGLYPH-13D37;Lo;0;L;;;;;N;;;;; +13D38;EGYPTIAN HIEROGLYPH-13D38;Lo;0;L;;;;;N;;;;; +13D39;EGYPTIAN HIEROGLYPH-13D39;Lo;0;L;;;;;N;;;;; +13D3A;EGYPTIAN HIEROGLYPH-13D3A;Lo;0;L;;;;;N;;;;; +13D3B;EGYPTIAN HIEROGLYPH-13D3B;Lo;0;L;;;;;N;;;;; +13D3C;EGYPTIAN HIEROGLYPH-13D3C;Lo;0;L;;;;;N;;;;; +13D3D;EGYPTIAN HIEROGLYPH-13D3D;Lo;0;L;;;;;N;;;;; +13D3E;EGYPTIAN HIEROGLYPH-13D3E;Lo;0;L;;;;;N;;;;; +13D3F;EGYPTIAN HIEROGLYPH-13D3F;Lo;0;L;;;;;N;;;;; +13D40;EGYPTIAN HIEROGLYPH-13D40;Lo;0;L;;;;;N;;;;; +13D41;EGYPTIAN HIEROGLYPH-13D41;Lo;0;L;;;;;N;;;;; +13D42;EGYPTIAN HIEROGLYPH-13D42;Lo;0;L;;;;;N;;;;; +13D43;EGYPTIAN HIEROGLYPH-13D43;Lo;0;L;;;;;N;;;;; +13D44;EGYPTIAN HIEROGLYPH-13D44;Lo;0;L;;;;;N;;;;; +13D45;EGYPTIAN HIEROGLYPH-13D45;Lo;0;L;;;;;N;;;;; +13D46;EGYPTIAN HIEROGLYPH-13D46;Lo;0;L;;;;;N;;;;; +13D47;EGYPTIAN HIEROGLYPH-13D47;Lo;0;L;;;;;N;;;;; +13D48;EGYPTIAN HIEROGLYPH-13D48;Lo;0;L;;;;;N;;;;; +13D49;EGYPTIAN HIEROGLYPH-13D49;Lo;0;L;;;;;N;;;;; +13D4A;EGYPTIAN HIEROGLYPH-13D4A;Lo;0;L;;;;;N;;;;; +13D4B;EGYPTIAN HIEROGLYPH-13D4B;Lo;0;L;;;;;N;;;;; +13D4C;EGYPTIAN HIEROGLYPH-13D4C;Lo;0;L;;;;;N;;;;; +13D4D;EGYPTIAN HIEROGLYPH-13D4D;Lo;0;L;;;;;N;;;;; +13D4E;EGYPTIAN HIEROGLYPH-13D4E;Lo;0;L;;;;;N;;;;; +13D4F;EGYPTIAN HIEROGLYPH-13D4F;Lo;0;L;;;;;N;;;;; +13D50;EGYPTIAN HIEROGLYPH-13D50;Lo;0;L;;;;;N;;;;; +13D51;EGYPTIAN HIEROGLYPH-13D51;Lo;0;L;;;;;N;;;;; +13D52;EGYPTIAN HIEROGLYPH-13D52;Lo;0;L;;;;;N;;;;; +13D53;EGYPTIAN HIEROGLYPH-13D53;Lo;0;L;;;;;N;;;;; +13D54;EGYPTIAN HIEROGLYPH-13D54;Lo;0;L;;;;;N;;;;; +13D55;EGYPTIAN HIEROGLYPH-13D55;Lo;0;L;;;;;N;;;;; +13D56;EGYPTIAN HIEROGLYPH-13D56;Lo;0;L;;;;;N;;;;; +13D57;EGYPTIAN HIEROGLYPH-13D57;Lo;0;L;;;;;N;;;;; +13D58;EGYPTIAN HIEROGLYPH-13D58;Lo;0;L;;;;;N;;;;; +13D59;EGYPTIAN HIEROGLYPH-13D59;Lo;0;L;;;;;N;;;;; +13D5A;EGYPTIAN HIEROGLYPH-13D5A;Lo;0;L;;;;;N;;;;; +13D5B;EGYPTIAN HIEROGLYPH-13D5B;Lo;0;L;;;;;N;;;;; +13D5C;EGYPTIAN HIEROGLYPH-13D5C;Lo;0;L;;;;;N;;;;; +13D5D;EGYPTIAN HIEROGLYPH-13D5D;Lo;0;L;;;;;N;;;;; +13D5E;EGYPTIAN HIEROGLYPH-13D5E;Lo;0;L;;;;;N;;;;; +13D5F;EGYPTIAN HIEROGLYPH-13D5F;Lo;0;L;;;;;N;;;;; +13D60;EGYPTIAN HIEROGLYPH-13D60;Lo;0;L;;;;;N;;;;; +13D61;EGYPTIAN HIEROGLYPH-13D61;Lo;0;L;;;;;N;;;;; +13D62;EGYPTIAN HIEROGLYPH-13D62;Lo;0;L;;;;;N;;;;; +13D63;EGYPTIAN HIEROGLYPH-13D63;Lo;0;L;;;;;N;;;;; +13D64;EGYPTIAN HIEROGLYPH-13D64;Lo;0;L;;;;;N;;;;; +13D65;EGYPTIAN HIEROGLYPH-13D65;Lo;0;L;;;;;N;;;;; +13D66;EGYPTIAN HIEROGLYPH-13D66;Lo;0;L;;;;;N;;;;; +13D67;EGYPTIAN HIEROGLYPH-13D67;Lo;0;L;;;;;N;;;;; +13D68;EGYPTIAN HIEROGLYPH-13D68;Lo;0;L;;;;;N;;;;; +13D69;EGYPTIAN HIEROGLYPH-13D69;Lo;0;L;;;;;N;;;;; +13D6A;EGYPTIAN HIEROGLYPH-13D6A;Lo;0;L;;;;;N;;;;; +13D6B;EGYPTIAN HIEROGLYPH-13D6B;Lo;0;L;;;;;N;;;;; +13D6C;EGYPTIAN HIEROGLYPH-13D6C;Lo;0;L;;;;;N;;;;; +13D6D;EGYPTIAN HIEROGLYPH-13D6D;Lo;0;L;;;;;N;;;;; +13D6E;EGYPTIAN HIEROGLYPH-13D6E;Lo;0;L;;;;;N;;;;; +13D6F;EGYPTIAN HIEROGLYPH-13D6F;Lo;0;L;;;;;N;;;;; +13D70;EGYPTIAN HIEROGLYPH-13D70;Lo;0;L;;;;;N;;;;; +13D71;EGYPTIAN HIEROGLYPH-13D71;Lo;0;L;;;;;N;;;;; +13D72;EGYPTIAN HIEROGLYPH-13D72;Lo;0;L;;;;;N;;;;; +13D73;EGYPTIAN HIEROGLYPH-13D73;Lo;0;L;;;;;N;;;;; +13D74;EGYPTIAN HIEROGLYPH-13D74;Lo;0;L;;;;;N;;;;; +13D75;EGYPTIAN HIEROGLYPH-13D75;Lo;0;L;;;;;N;;;;; +13D76;EGYPTIAN HIEROGLYPH-13D76;Lo;0;L;;;;;N;;;;; +13D77;EGYPTIAN HIEROGLYPH-13D77;Lo;0;L;;;;;N;;;;; +13D78;EGYPTIAN HIEROGLYPH-13D78;Lo;0;L;;;;;N;;;;; +13D79;EGYPTIAN HIEROGLYPH-13D79;Lo;0;L;;;;;N;;;;; +13D7A;EGYPTIAN HIEROGLYPH-13D7A;Lo;0;L;;;;;N;;;;; +13D7B;EGYPTIAN HIEROGLYPH-13D7B;Lo;0;L;;;;;N;;;;; +13D7C;EGYPTIAN HIEROGLYPH-13D7C;Lo;0;L;;;;;N;;;;; +13D7D;EGYPTIAN HIEROGLYPH-13D7D;Lo;0;L;;;;;N;;;;; +13D7E;EGYPTIAN HIEROGLYPH-13D7E;Lo;0;L;;;;;N;;;;; +13D7F;EGYPTIAN HIEROGLYPH-13D7F;Lo;0;L;;;;;N;;;;; +13D80;EGYPTIAN HIEROGLYPH-13D80;Lo;0;L;;;;;N;;;;; +13D81;EGYPTIAN HIEROGLYPH-13D81;Lo;0;L;;;;;N;;;;; +13D82;EGYPTIAN HIEROGLYPH-13D82;Lo;0;L;;;;;N;;;;; +13D83;EGYPTIAN HIEROGLYPH-13D83;Lo;0;L;;;;;N;;;;; +13D84;EGYPTIAN HIEROGLYPH-13D84;Lo;0;L;;;;;N;;;;; +13D85;EGYPTIAN HIEROGLYPH-13D85;Lo;0;L;;;;;N;;;;; +13D86;EGYPTIAN HIEROGLYPH-13D86;Lo;0;L;;;;;N;;;;; +13D87;EGYPTIAN HIEROGLYPH-13D87;Lo;0;L;;;;;N;;;;; +13D88;EGYPTIAN HIEROGLYPH-13D88;Lo;0;L;;;;;N;;;;; +13D89;EGYPTIAN HIEROGLYPH-13D89;Lo;0;L;;;;;N;;;;; +13D8A;EGYPTIAN HIEROGLYPH-13D8A;Lo;0;L;;;;;N;;;;; +13D8B;EGYPTIAN HIEROGLYPH-13D8B;Lo;0;L;;;;;N;;;;; +13D8C;EGYPTIAN HIEROGLYPH-13D8C;Lo;0;L;;;;;N;;;;; +13D8D;EGYPTIAN HIEROGLYPH-13D8D;Lo;0;L;;;;;N;;;;; +13D8E;EGYPTIAN HIEROGLYPH-13D8E;Lo;0;L;;;;;N;;;;; +13D8F;EGYPTIAN HIEROGLYPH-13D8F;Lo;0;L;;;;;N;;;;; +13D90;EGYPTIAN HIEROGLYPH-13D90;Lo;0;L;;;;;N;;;;; +13D91;EGYPTIAN HIEROGLYPH-13D91;Lo;0;L;;;;;N;;;;; +13D92;EGYPTIAN HIEROGLYPH-13D92;Lo;0;L;;;;;N;;;;; +13D93;EGYPTIAN HIEROGLYPH-13D93;Lo;0;L;;;;;N;;;;; +13D94;EGYPTIAN HIEROGLYPH-13D94;Lo;0;L;;;;;N;;;;; +13D95;EGYPTIAN HIEROGLYPH-13D95;Lo;0;L;;;;;N;;;;; +13D96;EGYPTIAN HIEROGLYPH-13D96;Lo;0;L;;;;;N;;;;; +13D97;EGYPTIAN HIEROGLYPH-13D97;Lo;0;L;;;;;N;;;;; +13D98;EGYPTIAN HIEROGLYPH-13D98;Lo;0;L;;;;;N;;;;; +13D99;EGYPTIAN HIEROGLYPH-13D99;Lo;0;L;;;;;N;;;;; +13D9A;EGYPTIAN HIEROGLYPH-13D9A;Lo;0;L;;;;;N;;;;; +13D9B;EGYPTIAN HIEROGLYPH-13D9B;Lo;0;L;;;;;N;;;;; +13D9C;EGYPTIAN HIEROGLYPH-13D9C;Lo;0;L;;;;;N;;;;; +13D9D;EGYPTIAN HIEROGLYPH-13D9D;Lo;0;L;;;;;N;;;;; +13D9E;EGYPTIAN HIEROGLYPH-13D9E;Lo;0;L;;;;;N;;;;; +13D9F;EGYPTIAN HIEROGLYPH-13D9F;Lo;0;L;;;;;N;;;;; +13DA0;EGYPTIAN HIEROGLYPH-13DA0;Lo;0;L;;;;;N;;;;; +13DA1;EGYPTIAN HIEROGLYPH-13DA1;Lo;0;L;;;;;N;;;;; +13DA2;EGYPTIAN HIEROGLYPH-13DA2;Lo;0;L;;;;;N;;;;; +13DA3;EGYPTIAN HIEROGLYPH-13DA3;Lo;0;L;;;;;N;;;;; +13DA4;EGYPTIAN HIEROGLYPH-13DA4;Lo;0;L;;;;;N;;;;; +13DA5;EGYPTIAN HIEROGLYPH-13DA5;Lo;0;L;;;;;N;;;;; +13DA6;EGYPTIAN HIEROGLYPH-13DA6;Lo;0;L;;;;;N;;;;; +13DA7;EGYPTIAN HIEROGLYPH-13DA7;Lo;0;L;;;;;N;;;;; +13DA8;EGYPTIAN HIEROGLYPH-13DA8;Lo;0;L;;;;;N;;;;; +13DA9;EGYPTIAN HIEROGLYPH-13DA9;Lo;0;L;;;;;N;;;;; +13DAA;EGYPTIAN HIEROGLYPH-13DAA;Lo;0;L;;;;;N;;;;; +13DAB;EGYPTIAN HIEROGLYPH-13DAB;Lo;0;L;;;;;N;;;;; +13DAC;EGYPTIAN HIEROGLYPH-13DAC;Lo;0;L;;;;;N;;;;; +13DAD;EGYPTIAN HIEROGLYPH-13DAD;Lo;0;L;;;;;N;;;;; +13DAE;EGYPTIAN HIEROGLYPH-13DAE;Lo;0;L;;;;;N;;;;; +13DAF;EGYPTIAN HIEROGLYPH-13DAF;Lo;0;L;;;;;N;;;;; +13DB0;EGYPTIAN HIEROGLYPH-13DB0;Lo;0;L;;;;;N;;;;; +13DB1;EGYPTIAN HIEROGLYPH-13DB1;Lo;0;L;;;;;N;;;;; +13DB2;EGYPTIAN HIEROGLYPH-13DB2;Lo;0;L;;;;;N;;;;; +13DB3;EGYPTIAN HIEROGLYPH-13DB3;Lo;0;L;;;;;N;;;;; +13DB4;EGYPTIAN HIEROGLYPH-13DB4;Lo;0;L;;;;;N;;;;; +13DB5;EGYPTIAN HIEROGLYPH-13DB5;Lo;0;L;;;;;N;;;;; +13DB6;EGYPTIAN HIEROGLYPH-13DB6;Lo;0;L;;;;;N;;;;; +13DB7;EGYPTIAN HIEROGLYPH-13DB7;Lo;0;L;;;;;N;;;;; +13DB8;EGYPTIAN HIEROGLYPH-13DB8;Lo;0;L;;;;;N;;;;; +13DB9;EGYPTIAN HIEROGLYPH-13DB9;Lo;0;L;;;;;N;;;;; +13DBA;EGYPTIAN HIEROGLYPH-13DBA;Lo;0;L;;;;;N;;;;; +13DBB;EGYPTIAN HIEROGLYPH-13DBB;Lo;0;L;;;;;N;;;;; +13DBC;EGYPTIAN HIEROGLYPH-13DBC;Lo;0;L;;;;;N;;;;; +13DBD;EGYPTIAN HIEROGLYPH-13DBD;Lo;0;L;;;;;N;;;;; +13DBE;EGYPTIAN HIEROGLYPH-13DBE;Lo;0;L;;;;;N;;;;; +13DBF;EGYPTIAN HIEROGLYPH-13DBF;Lo;0;L;;;;;N;;;;; +13DC0;EGYPTIAN HIEROGLYPH-13DC0;Lo;0;L;;;;;N;;;;; +13DC1;EGYPTIAN HIEROGLYPH-13DC1;Lo;0;L;;;;;N;;;;; +13DC2;EGYPTIAN HIEROGLYPH-13DC2;Lo;0;L;;;;;N;;;;; +13DC3;EGYPTIAN HIEROGLYPH-13DC3;Lo;0;L;;;;;N;;;;; +13DC4;EGYPTIAN HIEROGLYPH-13DC4;Lo;0;L;;;;;N;;;;; +13DC5;EGYPTIAN HIEROGLYPH-13DC5;Lo;0;L;;;;;N;;;;; +13DC6;EGYPTIAN HIEROGLYPH-13DC6;Lo;0;L;;;;;N;;;;; +13DC7;EGYPTIAN HIEROGLYPH-13DC7;Lo;0;L;;;;;N;;;;; +13DC8;EGYPTIAN HIEROGLYPH-13DC8;Lo;0;L;;;;;N;;;;; +13DC9;EGYPTIAN HIEROGLYPH-13DC9;Lo;0;L;;;;;N;;;;; +13DCA;EGYPTIAN HIEROGLYPH-13DCA;Lo;0;L;;;;;N;;;;; +13DCB;EGYPTIAN HIEROGLYPH-13DCB;Lo;0;L;;;;;N;;;;; +13DCC;EGYPTIAN HIEROGLYPH-13DCC;Lo;0;L;;;;;N;;;;; +13DCD;EGYPTIAN HIEROGLYPH-13DCD;Lo;0;L;;;;;N;;;;; +13DCE;EGYPTIAN HIEROGLYPH-13DCE;Lo;0;L;;;;;N;;;;; +13DCF;EGYPTIAN HIEROGLYPH-13DCF;Lo;0;L;;;;;N;;;;; +13DD0;EGYPTIAN HIEROGLYPH-13DD0;Lo;0;L;;;;;N;;;;; +13DD1;EGYPTIAN HIEROGLYPH-13DD1;Lo;0;L;;;;;N;;;;; +13DD2;EGYPTIAN HIEROGLYPH-13DD2;Lo;0;L;;;;;N;;;;; +13DD3;EGYPTIAN HIEROGLYPH-13DD3;Lo;0;L;;;;;N;;;;; +13DD4;EGYPTIAN HIEROGLYPH-13DD4;Lo;0;L;;;;;N;;;;; +13DD5;EGYPTIAN HIEROGLYPH-13DD5;Lo;0;L;;;;;N;;;;; +13DD6;EGYPTIAN HIEROGLYPH-13DD6;Lo;0;L;;;;;N;;;;; +13DD7;EGYPTIAN HIEROGLYPH-13DD7;Lo;0;L;;;;;N;;;;; +13DD8;EGYPTIAN HIEROGLYPH-13DD8;Lo;0;L;;;;;N;;;;; +13DD9;EGYPTIAN HIEROGLYPH-13DD9;Lo;0;L;;;;;N;;;;; +13DDA;EGYPTIAN HIEROGLYPH-13DDA;Lo;0;L;;;;;N;;;;; +13DDB;EGYPTIAN HIEROGLYPH-13DDB;Lo;0;L;;;;;N;;;;; +13DDC;EGYPTIAN HIEROGLYPH-13DDC;Lo;0;L;;;;;N;;;;; +13DDD;EGYPTIAN HIEROGLYPH-13DDD;Lo;0;L;;;;;N;;;;; +13DDE;EGYPTIAN HIEROGLYPH-13DDE;Lo;0;L;;;;;N;;;;; +13DDF;EGYPTIAN HIEROGLYPH-13DDF;Lo;0;L;;;;;N;;;;; +13DE0;EGYPTIAN HIEROGLYPH-13DE0;Lo;0;L;;;;;N;;;;; +13DE1;EGYPTIAN HIEROGLYPH-13DE1;Lo;0;L;;;;;N;;;;; +13DE2;EGYPTIAN HIEROGLYPH-13DE2;Lo;0;L;;;;;N;;;;; +13DE3;EGYPTIAN HIEROGLYPH-13DE3;Lo;0;L;;;;;N;;;;; +13DE4;EGYPTIAN HIEROGLYPH-13DE4;Lo;0;L;;;;;N;;;;; +13DE5;EGYPTIAN HIEROGLYPH-13DE5;Lo;0;L;;;;;N;;;;; +13DE6;EGYPTIAN HIEROGLYPH-13DE6;Lo;0;L;;;;;N;;;;; +13DE7;EGYPTIAN HIEROGLYPH-13DE7;Lo;0;L;;;;;N;;;;; +13DE8;EGYPTIAN HIEROGLYPH-13DE8;Lo;0;L;;;;;N;;;;; +13DE9;EGYPTIAN HIEROGLYPH-13DE9;Lo;0;L;;;;;N;;;;; +13DEA;EGYPTIAN HIEROGLYPH-13DEA;Lo;0;L;;;;;N;;;;; +13DEB;EGYPTIAN HIEROGLYPH-13DEB;Lo;0;L;;;;;N;;;;; +13DEC;EGYPTIAN HIEROGLYPH-13DEC;Lo;0;L;;;;;N;;;;; +13DED;EGYPTIAN HIEROGLYPH-13DED;Lo;0;L;;;;;N;;;;; +13DEE;EGYPTIAN HIEROGLYPH-13DEE;Lo;0;L;;;;;N;;;;; +13DEF;EGYPTIAN HIEROGLYPH-13DEF;Lo;0;L;;;;;N;;;;; +13DF0;EGYPTIAN HIEROGLYPH-13DF0;Lo;0;L;;;;;N;;;;; +13DF1;EGYPTIAN HIEROGLYPH-13DF1;Lo;0;L;;;;;N;;;;; +13DF2;EGYPTIAN HIEROGLYPH-13DF2;Lo;0;L;;;;;N;;;;; +13DF3;EGYPTIAN HIEROGLYPH-13DF3;Lo;0;L;;;;;N;;;;; +13DF4;EGYPTIAN HIEROGLYPH-13DF4;Lo;0;L;;;;;N;;;;; +13DF5;EGYPTIAN HIEROGLYPH-13DF5;Lo;0;L;;;;;N;;;;; +13DF6;EGYPTIAN HIEROGLYPH-13DF6;Lo;0;L;;;;;N;;;;; +13DF7;EGYPTIAN HIEROGLYPH-13DF7;Lo;0;L;;;;;N;;;;; +13DF8;EGYPTIAN HIEROGLYPH-13DF8;Lo;0;L;;;;;N;;;;; +13DF9;EGYPTIAN HIEROGLYPH-13DF9;Lo;0;L;;;;;N;;;;; +13DFA;EGYPTIAN HIEROGLYPH-13DFA;Lo;0;L;;;;;N;;;;; +13DFB;EGYPTIAN HIEROGLYPH-13DFB;Lo;0;L;;;;;N;;;;; +13DFC;EGYPTIAN HIEROGLYPH-13DFC;Lo;0;L;;;;;N;;;;; +13DFD;EGYPTIAN HIEROGLYPH-13DFD;Lo;0;L;;;;;N;;;;; +13DFE;EGYPTIAN HIEROGLYPH-13DFE;Lo;0;L;;;;;N;;;;; +13DFF;EGYPTIAN HIEROGLYPH-13DFF;Lo;0;L;;;;;N;;;;; +13E00;EGYPTIAN HIEROGLYPH-13E00;Lo;0;L;;;;;N;;;;; +13E01;EGYPTIAN HIEROGLYPH-13E01;Lo;0;L;;;;;N;;;;; +13E02;EGYPTIAN HIEROGLYPH-13E02;Lo;0;L;;;;;N;;;;; +13E03;EGYPTIAN HIEROGLYPH-13E03;Lo;0;L;;;;;N;;;;; +13E04;EGYPTIAN HIEROGLYPH-13E04;Lo;0;L;;;;;N;;;;; +13E05;EGYPTIAN HIEROGLYPH-13E05;Lo;0;L;;;;;N;;;;; +13E06;EGYPTIAN HIEROGLYPH-13E06;Lo;0;L;;;;;N;;;;; +13E07;EGYPTIAN HIEROGLYPH-13E07;Lo;0;L;;;;;N;;;;; +13E08;EGYPTIAN HIEROGLYPH-13E08;Lo;0;L;;;;;N;;;;; +13E09;EGYPTIAN HIEROGLYPH-13E09;Lo;0;L;;;;;N;;;;; +13E0A;EGYPTIAN HIEROGLYPH-13E0A;Lo;0;L;;;;;N;;;;; +13E0B;EGYPTIAN HIEROGLYPH-13E0B;Lo;0;L;;;;;N;;;;; +13E0C;EGYPTIAN HIEROGLYPH-13E0C;Lo;0;L;;;;;N;;;;; +13E0D;EGYPTIAN HIEROGLYPH-13E0D;Lo;0;L;;;;;N;;;;; +13E0E;EGYPTIAN HIEROGLYPH-13E0E;Lo;0;L;;;;;N;;;;; +13E0F;EGYPTIAN HIEROGLYPH-13E0F;Lo;0;L;;;;;N;;;;; +13E10;EGYPTIAN HIEROGLYPH-13E10;Lo;0;L;;;;;N;;;;; +13E11;EGYPTIAN HIEROGLYPH-13E11;Lo;0;L;;;;;N;;;;; +13E12;EGYPTIAN HIEROGLYPH-13E12;Lo;0;L;;;;;N;;;;; +13E13;EGYPTIAN HIEROGLYPH-13E13;Lo;0;L;;;;;N;;;;; +13E14;EGYPTIAN HIEROGLYPH-13E14;Lo;0;L;;;;;N;;;;; +13E15;EGYPTIAN HIEROGLYPH-13E15;Lo;0;L;;;;;N;;;;; +13E16;EGYPTIAN HIEROGLYPH-13E16;Lo;0;L;;;;;N;;;;; +13E17;EGYPTIAN HIEROGLYPH-13E17;Lo;0;L;;;;;N;;;;; +13E18;EGYPTIAN HIEROGLYPH-13E18;Lo;0;L;;;;;N;;;;; +13E19;EGYPTIAN HIEROGLYPH-13E19;Lo;0;L;;;;;N;;;;; +13E1A;EGYPTIAN HIEROGLYPH-13E1A;Lo;0;L;;;;;N;;;;; +13E1B;EGYPTIAN HIEROGLYPH-13E1B;Lo;0;L;;;;;N;;;;; +13E1C;EGYPTIAN HIEROGLYPH-13E1C;Lo;0;L;;;;;N;;;;; +13E1D;EGYPTIAN HIEROGLYPH-13E1D;Lo;0;L;;;;;N;;;;; +13E1E;EGYPTIAN HIEROGLYPH-13E1E;Lo;0;L;;;;;N;;;;; +13E1F;EGYPTIAN HIEROGLYPH-13E1F;Lo;0;L;;;;;N;;;;; +13E20;EGYPTIAN HIEROGLYPH-13E20;Lo;0;L;;;;;N;;;;; +13E21;EGYPTIAN HIEROGLYPH-13E21;Lo;0;L;;;;;N;;;;; +13E22;EGYPTIAN HIEROGLYPH-13E22;Lo;0;L;;;;;N;;;;; +13E23;EGYPTIAN HIEROGLYPH-13E23;Lo;0;L;;;;;N;;;;; +13E24;EGYPTIAN HIEROGLYPH-13E24;Lo;0;L;;;;;N;;;;; +13E25;EGYPTIAN HIEROGLYPH-13E25;Lo;0;L;;;;;N;;;;; +13E26;EGYPTIAN HIEROGLYPH-13E26;Lo;0;L;;;;;N;;;;; +13E27;EGYPTIAN HIEROGLYPH-13E27;Lo;0;L;;;;;N;;;;; +13E28;EGYPTIAN HIEROGLYPH-13E28;Lo;0;L;;;;;N;;;;; +13E29;EGYPTIAN HIEROGLYPH-13E29;Lo;0;L;;;;;N;;;;; +13E2A;EGYPTIAN HIEROGLYPH-13E2A;Lo;0;L;;;;;N;;;;; +13E2B;EGYPTIAN HIEROGLYPH-13E2B;Lo;0;L;;;;;N;;;;; +13E2C;EGYPTIAN HIEROGLYPH-13E2C;Lo;0;L;;;;;N;;;;; +13E2D;EGYPTIAN HIEROGLYPH-13E2D;Lo;0;L;;;;;N;;;;; +13E2E;EGYPTIAN HIEROGLYPH-13E2E;Lo;0;L;;;;;N;;;;; +13E2F;EGYPTIAN HIEROGLYPH-13E2F;Lo;0;L;;;;;N;;;;; +13E30;EGYPTIAN HIEROGLYPH-13E30;Lo;0;L;;;;;N;;;;; +13E31;EGYPTIAN HIEROGLYPH-13E31;Lo;0;L;;;;;N;;;;; +13E32;EGYPTIAN HIEROGLYPH-13E32;Lo;0;L;;;;;N;;;;; +13E33;EGYPTIAN HIEROGLYPH-13E33;Lo;0;L;;;;;N;;;;; +13E34;EGYPTIAN HIEROGLYPH-13E34;Lo;0;L;;;;;N;;;;; +13E35;EGYPTIAN HIEROGLYPH-13E35;Lo;0;L;;;;;N;;;;; +13E36;EGYPTIAN HIEROGLYPH-13E36;Lo;0;L;;;;;N;;;;; +13E37;EGYPTIAN HIEROGLYPH-13E37;Lo;0;L;;;;;N;;;;; +13E38;EGYPTIAN HIEROGLYPH-13E38;Lo;0;L;;;;;N;;;;; +13E39;EGYPTIAN HIEROGLYPH-13E39;Lo;0;L;;;;;N;;;;; +13E3A;EGYPTIAN HIEROGLYPH-13E3A;Lo;0;L;;;;;N;;;;; +13E3B;EGYPTIAN HIEROGLYPH-13E3B;Lo;0;L;;;;;N;;;;; +13E3C;EGYPTIAN HIEROGLYPH-13E3C;Lo;0;L;;;;;N;;;;; +13E3D;EGYPTIAN HIEROGLYPH-13E3D;Lo;0;L;;;;;N;;;;; +13E3E;EGYPTIAN HIEROGLYPH-13E3E;Lo;0;L;;;;;N;;;;; +13E3F;EGYPTIAN HIEROGLYPH-13E3F;Lo;0;L;;;;;N;;;;; +13E40;EGYPTIAN HIEROGLYPH-13E40;Lo;0;L;;;;;N;;;;; +13E41;EGYPTIAN HIEROGLYPH-13E41;Lo;0;L;;;;;N;;;;; +13E42;EGYPTIAN HIEROGLYPH-13E42;Lo;0;L;;;;;N;;;;; +13E43;EGYPTIAN HIEROGLYPH-13E43;Lo;0;L;;;;;N;;;;; +13E44;EGYPTIAN HIEROGLYPH-13E44;Lo;0;L;;;;;N;;;;; +13E45;EGYPTIAN HIEROGLYPH-13E45;Lo;0;L;;;;;N;;;;; +13E46;EGYPTIAN HIEROGLYPH-13E46;Lo;0;L;;;;;N;;;;; +13E47;EGYPTIAN HIEROGLYPH-13E47;Lo;0;L;;;;;N;;;;; +13E48;EGYPTIAN HIEROGLYPH-13E48;Lo;0;L;;;;;N;;;;; +13E49;EGYPTIAN HIEROGLYPH-13E49;Lo;0;L;;;;;N;;;;; +13E4A;EGYPTIAN HIEROGLYPH-13E4A;Lo;0;L;;;;;N;;;;; +13E4B;EGYPTIAN HIEROGLYPH-13E4B;Lo;0;L;;;;;N;;;;; +13E4C;EGYPTIAN HIEROGLYPH-13E4C;Lo;0;L;;;;;N;;;;; +13E4D;EGYPTIAN HIEROGLYPH-13E4D;Lo;0;L;;;;;N;;;;; +13E4E;EGYPTIAN HIEROGLYPH-13E4E;Lo;0;L;;;;;N;;;;; +13E4F;EGYPTIAN HIEROGLYPH-13E4F;Lo;0;L;;;;;N;;;;; +13E50;EGYPTIAN HIEROGLYPH-13E50;Lo;0;L;;;;;N;;;;; +13E51;EGYPTIAN HIEROGLYPH-13E51;Lo;0;L;;;;;N;;;;; +13E52;EGYPTIAN HIEROGLYPH-13E52;Lo;0;L;;;;;N;;;;; +13E53;EGYPTIAN HIEROGLYPH-13E53;Lo;0;L;;;;;N;;;;; +13E54;EGYPTIAN HIEROGLYPH-13E54;Lo;0;L;;;;;N;;;;; +13E55;EGYPTIAN HIEROGLYPH-13E55;Lo;0;L;;;;;N;;;;; +13E56;EGYPTIAN HIEROGLYPH-13E56;Lo;0;L;;;;;N;;;;; +13E57;EGYPTIAN HIEROGLYPH-13E57;Lo;0;L;;;;;N;;;;; +13E58;EGYPTIAN HIEROGLYPH-13E58;Lo;0;L;;;;;N;;;;; +13E59;EGYPTIAN HIEROGLYPH-13E59;Lo;0;L;;;;;N;;;;; +13E5A;EGYPTIAN HIEROGLYPH-13E5A;Lo;0;L;;;;;N;;;;; +13E5B;EGYPTIAN HIEROGLYPH-13E5B;Lo;0;L;;;;;N;;;;; +13E5C;EGYPTIAN HIEROGLYPH-13E5C;Lo;0;L;;;;;N;;;;; +13E5D;EGYPTIAN HIEROGLYPH-13E5D;Lo;0;L;;;;;N;;;;; +13E5E;EGYPTIAN HIEROGLYPH-13E5E;Lo;0;L;;;;;N;;;;; +13E5F;EGYPTIAN HIEROGLYPH-13E5F;Lo;0;L;;;;;N;;;;; +13E60;EGYPTIAN HIEROGLYPH-13E60;Lo;0;L;;;;;N;;;;; +13E61;EGYPTIAN HIEROGLYPH-13E61;Lo;0;L;;;;;N;;;;; +13E62;EGYPTIAN HIEROGLYPH-13E62;Lo;0;L;;;;;N;;;;; +13E63;EGYPTIAN HIEROGLYPH-13E63;Lo;0;L;;;;;N;;;;; +13E64;EGYPTIAN HIEROGLYPH-13E64;Lo;0;L;;;;;N;;;;; +13E65;EGYPTIAN HIEROGLYPH-13E65;Lo;0;L;;;;;N;;;;; +13E66;EGYPTIAN HIEROGLYPH-13E66;Lo;0;L;;;;;N;;;;; +13E67;EGYPTIAN HIEROGLYPH-13E67;Lo;0;L;;;;;N;;;;; +13E68;EGYPTIAN HIEROGLYPH-13E68;Lo;0;L;;;;;N;;;;; +13E69;EGYPTIAN HIEROGLYPH-13E69;Lo;0;L;;;;;N;;;;; +13E6A;EGYPTIAN HIEROGLYPH-13E6A;Lo;0;L;;;;;N;;;;; +13E6B;EGYPTIAN HIEROGLYPH-13E6B;Lo;0;L;;;;;N;;;;; +13E6C;EGYPTIAN HIEROGLYPH-13E6C;Lo;0;L;;;;;N;;;;; +13E6D;EGYPTIAN HIEROGLYPH-13E6D;Lo;0;L;;;;;N;;;;; +13E6E;EGYPTIAN HIEROGLYPH-13E6E;Lo;0;L;;;;;N;;;;; +13E6F;EGYPTIAN HIEROGLYPH-13E6F;Lo;0;L;;;;;N;;;;; +13E70;EGYPTIAN HIEROGLYPH-13E70;Lo;0;L;;;;;N;;;;; +13E71;EGYPTIAN HIEROGLYPH-13E71;Lo;0;L;;;;;N;;;;; +13E72;EGYPTIAN HIEROGLYPH-13E72;Lo;0;L;;;;;N;;;;; +13E73;EGYPTIAN HIEROGLYPH-13E73;Lo;0;L;;;;;N;;;;; +13E74;EGYPTIAN HIEROGLYPH-13E74;Lo;0;L;;;;;N;;;;; +13E75;EGYPTIAN HIEROGLYPH-13E75;Lo;0;L;;;;;N;;;;; +13E76;EGYPTIAN HIEROGLYPH-13E76;Lo;0;L;;;;;N;;;;; +13E77;EGYPTIAN HIEROGLYPH-13E77;Lo;0;L;;;;;N;;;;; +13E78;EGYPTIAN HIEROGLYPH-13E78;Lo;0;L;;;;;N;;;;; +13E79;EGYPTIAN HIEROGLYPH-13E79;Lo;0;L;;;;;N;;;;; +13E7A;EGYPTIAN HIEROGLYPH-13E7A;Lo;0;L;;;;;N;;;;; +13E7B;EGYPTIAN HIEROGLYPH-13E7B;Lo;0;L;;;;;N;;;;; +13E7C;EGYPTIAN HIEROGLYPH-13E7C;Lo;0;L;;;;;N;;;;; +13E7D;EGYPTIAN HIEROGLYPH-13E7D;Lo;0;L;;;;;N;;;;; +13E7E;EGYPTIAN HIEROGLYPH-13E7E;Lo;0;L;;;;;N;;;;; +13E7F;EGYPTIAN HIEROGLYPH-13E7F;Lo;0;L;;;;;N;;;;; +13E80;EGYPTIAN HIEROGLYPH-13E80;Lo;0;L;;;;;N;;;;; +13E81;EGYPTIAN HIEROGLYPH-13E81;Lo;0;L;;;;;N;;;;; +13E82;EGYPTIAN HIEROGLYPH-13E82;Lo;0;L;;;;;N;;;;; +13E83;EGYPTIAN HIEROGLYPH-13E83;Lo;0;L;;;;;N;;;;; +13E84;EGYPTIAN HIEROGLYPH-13E84;Lo;0;L;;;;;N;;;;; +13E85;EGYPTIAN HIEROGLYPH-13E85;Lo;0;L;;;;;N;;;;; +13E86;EGYPTIAN HIEROGLYPH-13E86;Lo;0;L;;;;;N;;;;; +13E87;EGYPTIAN HIEROGLYPH-13E87;Lo;0;L;;;;;N;;;;; +13E88;EGYPTIAN HIEROGLYPH-13E88;Lo;0;L;;;;;N;;;;; +13E89;EGYPTIAN HIEROGLYPH-13E89;Lo;0;L;;;;;N;;;;; +13E8A;EGYPTIAN HIEROGLYPH-13E8A;Lo;0;L;;;;;N;;;;; +13E8B;EGYPTIAN HIEROGLYPH-13E8B;Lo;0;L;;;;;N;;;;; +13E8C;EGYPTIAN HIEROGLYPH-13E8C;Lo;0;L;;;;;N;;;;; +13E8D;EGYPTIAN HIEROGLYPH-13E8D;Lo;0;L;;;;;N;;;;; +13E8E;EGYPTIAN HIEROGLYPH-13E8E;Lo;0;L;;;;;N;;;;; +13E8F;EGYPTIAN HIEROGLYPH-13E8F;Lo;0;L;;;;;N;;;;; +13E90;EGYPTIAN HIEROGLYPH-13E90;Lo;0;L;;;;;N;;;;; +13E91;EGYPTIAN HIEROGLYPH-13E91;Lo;0;L;;;;;N;;;;; +13E92;EGYPTIAN HIEROGLYPH-13E92;Lo;0;L;;;;;N;;;;; +13E93;EGYPTIAN HIEROGLYPH-13E93;Lo;0;L;;;;;N;;;;; +13E94;EGYPTIAN HIEROGLYPH-13E94;Lo;0;L;;;;;N;;;;; +13E95;EGYPTIAN HIEROGLYPH-13E95;Lo;0;L;;;;;N;;;;; +13E96;EGYPTIAN HIEROGLYPH-13E96;Lo;0;L;;;;;N;;;;; +13E97;EGYPTIAN HIEROGLYPH-13E97;Lo;0;L;;;;;N;;;;; +13E98;EGYPTIAN HIEROGLYPH-13E98;Lo;0;L;;;;;N;;;;; +13E99;EGYPTIAN HIEROGLYPH-13E99;Lo;0;L;;;;;N;;;;; +13E9A;EGYPTIAN HIEROGLYPH-13E9A;Lo;0;L;;;;;N;;;;; +13E9B;EGYPTIAN HIEROGLYPH-13E9B;Lo;0;L;;;;;N;;;;; +13E9C;EGYPTIAN HIEROGLYPH-13E9C;Lo;0;L;;;;;N;;;;; +13E9D;EGYPTIAN HIEROGLYPH-13E9D;Lo;0;L;;;;;N;;;;; +13E9E;EGYPTIAN HIEROGLYPH-13E9E;Lo;0;L;;;;;N;;;;; +13E9F;EGYPTIAN HIEROGLYPH-13E9F;Lo;0;L;;;;;N;;;;; +13EA0;EGYPTIAN HIEROGLYPH-13EA0;Lo;0;L;;;;;N;;;;; +13EA1;EGYPTIAN HIEROGLYPH-13EA1;Lo;0;L;;;;;N;;;;; +13EA2;EGYPTIAN HIEROGLYPH-13EA2;Lo;0;L;;;;;N;;;;; +13EA3;EGYPTIAN HIEROGLYPH-13EA3;Lo;0;L;;;;;N;;;;; +13EA4;EGYPTIAN HIEROGLYPH-13EA4;Lo;0;L;;;;;N;;;;; +13EA5;EGYPTIAN HIEROGLYPH-13EA5;Lo;0;L;;;;;N;;;;; +13EA6;EGYPTIAN HIEROGLYPH-13EA6;Lo;0;L;;;;;N;;;;; +13EA7;EGYPTIAN HIEROGLYPH-13EA7;Lo;0;L;;;;;N;;;;; +13EA8;EGYPTIAN HIEROGLYPH-13EA8;Lo;0;L;;;;;N;;;;; +13EA9;EGYPTIAN HIEROGLYPH-13EA9;Lo;0;L;;;;;N;;;;; +13EAA;EGYPTIAN HIEROGLYPH-13EAA;Lo;0;L;;;;;N;;;;; +13EAB;EGYPTIAN HIEROGLYPH-13EAB;Lo;0;L;;;;;N;;;;; +13EAC;EGYPTIAN HIEROGLYPH-13EAC;Lo;0;L;;;;;N;;;;; +13EAD;EGYPTIAN HIEROGLYPH-13EAD;Lo;0;L;;;;;N;;;;; +13EAE;EGYPTIAN HIEROGLYPH-13EAE;Lo;0;L;;;;;N;;;;; +13EAF;EGYPTIAN HIEROGLYPH-13EAF;Lo;0;L;;;;;N;;;;; +13EB0;EGYPTIAN HIEROGLYPH-13EB0;Lo;0;L;;;;;N;;;;; +13EB1;EGYPTIAN HIEROGLYPH-13EB1;Lo;0;L;;;;;N;;;;; +13EB2;EGYPTIAN HIEROGLYPH-13EB2;Lo;0;L;;;;;N;;;;; +13EB3;EGYPTIAN HIEROGLYPH-13EB3;Lo;0;L;;;;;N;;;;; +13EB4;EGYPTIAN HIEROGLYPH-13EB4;Lo;0;L;;;;;N;;;;; +13EB5;EGYPTIAN HIEROGLYPH-13EB5;Lo;0;L;;;;;N;;;;; +13EB6;EGYPTIAN HIEROGLYPH-13EB6;Lo;0;L;;;;;N;;;;; +13EB7;EGYPTIAN HIEROGLYPH-13EB7;Lo;0;L;;;;;N;;;;; +13EB8;EGYPTIAN HIEROGLYPH-13EB8;Lo;0;L;;;;;N;;;;; +13EB9;EGYPTIAN HIEROGLYPH-13EB9;Lo;0;L;;;;;N;;;;; +13EBA;EGYPTIAN HIEROGLYPH-13EBA;Lo;0;L;;;;;N;;;;; +13EBB;EGYPTIAN HIEROGLYPH-13EBB;Lo;0;L;;;;;N;;;;; +13EBC;EGYPTIAN HIEROGLYPH-13EBC;Lo;0;L;;;;;N;;;;; +13EBD;EGYPTIAN HIEROGLYPH-13EBD;Lo;0;L;;;;;N;;;;; +13EBE;EGYPTIAN HIEROGLYPH-13EBE;Lo;0;L;;;;;N;;;;; +13EBF;EGYPTIAN HIEROGLYPH-13EBF;Lo;0;L;;;;;N;;;;; +13EC0;EGYPTIAN HIEROGLYPH-13EC0;Lo;0;L;;;;;N;;;;; +13EC1;EGYPTIAN HIEROGLYPH-13EC1;Lo;0;L;;;;;N;;;;; +13EC2;EGYPTIAN HIEROGLYPH-13EC2;Lo;0;L;;;;;N;;;;; +13EC3;EGYPTIAN HIEROGLYPH-13EC3;Lo;0;L;;;;;N;;;;; +13EC4;EGYPTIAN HIEROGLYPH-13EC4;Lo;0;L;;;;;N;;;;; +13EC5;EGYPTIAN HIEROGLYPH-13EC5;Lo;0;L;;;;;N;;;;; +13EC6;EGYPTIAN HIEROGLYPH-13EC6;Lo;0;L;;;;;N;;;;; +13EC7;EGYPTIAN HIEROGLYPH-13EC7;Lo;0;L;;;;;N;;;;; +13EC8;EGYPTIAN HIEROGLYPH-13EC8;Lo;0;L;;;;;N;;;;; +13EC9;EGYPTIAN HIEROGLYPH-13EC9;Lo;0;L;;;;;N;;;;; +13ECA;EGYPTIAN HIEROGLYPH-13ECA;Lo;0;L;;;;;N;;;;; +13ECB;EGYPTIAN HIEROGLYPH-13ECB;Lo;0;L;;;;;N;;;;; +13ECC;EGYPTIAN HIEROGLYPH-13ECC;Lo;0;L;;;;;N;;;;; +13ECD;EGYPTIAN HIEROGLYPH-13ECD;Lo;0;L;;;;;N;;;;; +13ECE;EGYPTIAN HIEROGLYPH-13ECE;Lo;0;L;;;;;N;;;;; +13ECF;EGYPTIAN HIEROGLYPH-13ECF;Lo;0;L;;;;;N;;;;; +13ED0;EGYPTIAN HIEROGLYPH-13ED0;Lo;0;L;;;;;N;;;;; +13ED1;EGYPTIAN HIEROGLYPH-13ED1;Lo;0;L;;;;;N;;;;; +13ED2;EGYPTIAN HIEROGLYPH-13ED2;Lo;0;L;;;;;N;;;;; +13ED3;EGYPTIAN HIEROGLYPH-13ED3;Lo;0;L;;;;;N;;;;; +13ED4;EGYPTIAN HIEROGLYPH-13ED4;Lo;0;L;;;;;N;;;;; +13ED5;EGYPTIAN HIEROGLYPH-13ED5;Lo;0;L;;;;;N;;;;; +13ED6;EGYPTIAN HIEROGLYPH-13ED6;Lo;0;L;;;;;N;;;;; +13ED7;EGYPTIAN HIEROGLYPH-13ED7;Lo;0;L;;;;;N;;;;; +13ED8;EGYPTIAN HIEROGLYPH-13ED8;Lo;0;L;;;;;N;;;;; +13ED9;EGYPTIAN HIEROGLYPH-13ED9;Lo;0;L;;;;;N;;;;; +13EDA;EGYPTIAN HIEROGLYPH-13EDA;Lo;0;L;;;;;N;;;;; +13EDB;EGYPTIAN HIEROGLYPH-13EDB;Lo;0;L;;;;;N;;;;; +13EDC;EGYPTIAN HIEROGLYPH-13EDC;Lo;0;L;;;;;N;;;;; +13EDD;EGYPTIAN HIEROGLYPH-13EDD;Lo;0;L;;;;;N;;;;; +13EDE;EGYPTIAN HIEROGLYPH-13EDE;Lo;0;L;;;;;N;;;;; +13EDF;EGYPTIAN HIEROGLYPH-13EDF;Lo;0;L;;;;;N;;;;; +13EE0;EGYPTIAN HIEROGLYPH-13EE0;Lo;0;L;;;;;N;;;;; +13EE1;EGYPTIAN HIEROGLYPH-13EE1;Lo;0;L;;;;;N;;;;; +13EE2;EGYPTIAN HIEROGLYPH-13EE2;Lo;0;L;;;;;N;;;;; +13EE3;EGYPTIAN HIEROGLYPH-13EE3;Lo;0;L;;;;;N;;;;; +13EE4;EGYPTIAN HIEROGLYPH-13EE4;Lo;0;L;;;;;N;;;;; +13EE5;EGYPTIAN HIEROGLYPH-13EE5;Lo;0;L;;;;;N;;;;; +13EE6;EGYPTIAN HIEROGLYPH-13EE6;Lo;0;L;;;;;N;;;;; +13EE7;EGYPTIAN HIEROGLYPH-13EE7;Lo;0;L;;;;;N;;;;; +13EE8;EGYPTIAN HIEROGLYPH-13EE8;Lo;0;L;;;;;N;;;;; +13EE9;EGYPTIAN HIEROGLYPH-13EE9;Lo;0;L;;;;;N;;;;; +13EEA;EGYPTIAN HIEROGLYPH-13EEA;Lo;0;L;;;;;N;;;;; +13EEB;EGYPTIAN HIEROGLYPH-13EEB;Lo;0;L;;;;;N;;;;; +13EEC;EGYPTIAN HIEROGLYPH-13EEC;Lo;0;L;;;;;N;;;;; +13EED;EGYPTIAN HIEROGLYPH-13EED;Lo;0;L;;;;;N;;;;; +13EEE;EGYPTIAN HIEROGLYPH-13EEE;Lo;0;L;;;;;N;;;;; +13EEF;EGYPTIAN HIEROGLYPH-13EEF;Lo;0;L;;;;;N;;;;; +13EF0;EGYPTIAN HIEROGLYPH-13EF0;Lo;0;L;;;;;N;;;;; +13EF1;EGYPTIAN HIEROGLYPH-13EF1;Lo;0;L;;;;;N;;;;; +13EF2;EGYPTIAN HIEROGLYPH-13EF2;Lo;0;L;;;;;N;;;;; +13EF3;EGYPTIAN HIEROGLYPH-13EF3;Lo;0;L;;;;;N;;;;; +13EF4;EGYPTIAN HIEROGLYPH-13EF4;Lo;0;L;;;;;N;;;;; +13EF5;EGYPTIAN HIEROGLYPH-13EF5;Lo;0;L;;;;;N;;;;; +13EF6;EGYPTIAN HIEROGLYPH-13EF6;Lo;0;L;;;;;N;;;;; +13EF7;EGYPTIAN HIEROGLYPH-13EF7;Lo;0;L;;;;;N;;;;; +13EF8;EGYPTIAN HIEROGLYPH-13EF8;Lo;0;L;;;;;N;;;;; +13EF9;EGYPTIAN HIEROGLYPH-13EF9;Lo;0;L;;;;;N;;;;; +13EFA;EGYPTIAN HIEROGLYPH-13EFA;Lo;0;L;;;;;N;;;;; +13EFB;EGYPTIAN HIEROGLYPH-13EFB;Lo;0;L;;;;;N;;;;; +13EFC;EGYPTIAN HIEROGLYPH-13EFC;Lo;0;L;;;;;N;;;;; +13EFD;EGYPTIAN HIEROGLYPH-13EFD;Lo;0;L;;;;;N;;;;; +13EFE;EGYPTIAN HIEROGLYPH-13EFE;Lo;0;L;;;;;N;;;;; +13EFF;EGYPTIAN HIEROGLYPH-13EFF;Lo;0;L;;;;;N;;;;; +13F00;EGYPTIAN HIEROGLYPH-13F00;Lo;0;L;;;;;N;;;;; +13F01;EGYPTIAN HIEROGLYPH-13F01;Lo;0;L;;;;;N;;;;; +13F02;EGYPTIAN HIEROGLYPH-13F02;Lo;0;L;;;;;N;;;;; +13F03;EGYPTIAN HIEROGLYPH-13F03;Lo;0;L;;;;;N;;;;; +13F04;EGYPTIAN HIEROGLYPH-13F04;Lo;0;L;;;;;N;;;;; +13F05;EGYPTIAN HIEROGLYPH-13F05;Lo;0;L;;;;;N;;;;; +13F06;EGYPTIAN HIEROGLYPH-13F06;Lo;0;L;;;;;N;;;;; +13F07;EGYPTIAN HIEROGLYPH-13F07;Lo;0;L;;;;;N;;;;; +13F08;EGYPTIAN HIEROGLYPH-13F08;Lo;0;L;;;;;N;;;;; +13F09;EGYPTIAN HIEROGLYPH-13F09;Lo;0;L;;;;;N;;;;; +13F0A;EGYPTIAN HIEROGLYPH-13F0A;Lo;0;L;;;;;N;;;;; +13F0B;EGYPTIAN HIEROGLYPH-13F0B;Lo;0;L;;;;;N;;;;; +13F0C;EGYPTIAN HIEROGLYPH-13F0C;Lo;0;L;;;;;N;;;;; +13F0D;EGYPTIAN HIEROGLYPH-13F0D;Lo;0;L;;;;;N;;;;; +13F0E;EGYPTIAN HIEROGLYPH-13F0E;Lo;0;L;;;;;N;;;;; +13F0F;EGYPTIAN HIEROGLYPH-13F0F;Lo;0;L;;;;;N;;;;; +13F10;EGYPTIAN HIEROGLYPH-13F10;Lo;0;L;;;;;N;;;;; +13F11;EGYPTIAN HIEROGLYPH-13F11;Lo;0;L;;;;;N;;;;; +13F12;EGYPTIAN HIEROGLYPH-13F12;Lo;0;L;;;;;N;;;;; +13F13;EGYPTIAN HIEROGLYPH-13F13;Lo;0;L;;;;;N;;;;; +13F14;EGYPTIAN HIEROGLYPH-13F14;Lo;0;L;;;;;N;;;;; +13F15;EGYPTIAN HIEROGLYPH-13F15;Lo;0;L;;;;;N;;;;; +13F16;EGYPTIAN HIEROGLYPH-13F16;Lo;0;L;;;;;N;;;;; +13F17;EGYPTIAN HIEROGLYPH-13F17;Lo;0;L;;;;;N;;;;; +13F18;EGYPTIAN HIEROGLYPH-13F18;Lo;0;L;;;;;N;;;;; +13F19;EGYPTIAN HIEROGLYPH-13F19;Lo;0;L;;;;;N;;;;; +13F1A;EGYPTIAN HIEROGLYPH-13F1A;Lo;0;L;;;;;N;;;;; +13F1B;EGYPTIAN HIEROGLYPH-13F1B;Lo;0;L;;;;;N;;;;; +13F1C;EGYPTIAN HIEROGLYPH-13F1C;Lo;0;L;;;;;N;;;;; +13F1D;EGYPTIAN HIEROGLYPH-13F1D;Lo;0;L;;;;;N;;;;; +13F1E;EGYPTIAN HIEROGLYPH-13F1E;Lo;0;L;;;;;N;;;;; +13F1F;EGYPTIAN HIEROGLYPH-13F1F;Lo;0;L;;;;;N;;;;; +13F20;EGYPTIAN HIEROGLYPH-13F20;Lo;0;L;;;;;N;;;;; +13F21;EGYPTIAN HIEROGLYPH-13F21;Lo;0;L;;;;;N;;;;; +13F22;EGYPTIAN HIEROGLYPH-13F22;Lo;0;L;;;;;N;;;;; +13F23;EGYPTIAN HIEROGLYPH-13F23;Lo;0;L;;;;;N;;;;; +13F24;EGYPTIAN HIEROGLYPH-13F24;Lo;0;L;;;;;N;;;;; +13F25;EGYPTIAN HIEROGLYPH-13F25;Lo;0;L;;;;;N;;;;; +13F26;EGYPTIAN HIEROGLYPH-13F26;Lo;0;L;;;;;N;;;;; +13F27;EGYPTIAN HIEROGLYPH-13F27;Lo;0;L;;;;;N;;;;; +13F28;EGYPTIAN HIEROGLYPH-13F28;Lo;0;L;;;;;N;;;;; +13F29;EGYPTIAN HIEROGLYPH-13F29;Lo;0;L;;;;;N;;;;; +13F2A;EGYPTIAN HIEROGLYPH-13F2A;Lo;0;L;;;;;N;;;;; +13F2B;EGYPTIAN HIEROGLYPH-13F2B;Lo;0;L;;;;;N;;;;; +13F2C;EGYPTIAN HIEROGLYPH-13F2C;Lo;0;L;;;;;N;;;;; +13F2D;EGYPTIAN HIEROGLYPH-13F2D;Lo;0;L;;;;;N;;;;; +13F2E;EGYPTIAN HIEROGLYPH-13F2E;Lo;0;L;;;;;N;;;;; +13F2F;EGYPTIAN HIEROGLYPH-13F2F;Lo;0;L;;;;;N;;;;; +13F30;EGYPTIAN HIEROGLYPH-13F30;Lo;0;L;;;;;N;;;;; +13F31;EGYPTIAN HIEROGLYPH-13F31;Lo;0;L;;;;;N;;;;; +13F32;EGYPTIAN HIEROGLYPH-13F32;Lo;0;L;;;;;N;;;;; +13F33;EGYPTIAN HIEROGLYPH-13F33;Lo;0;L;;;;;N;;;;; +13F34;EGYPTIAN HIEROGLYPH-13F34;Lo;0;L;;;;;N;;;;; +13F35;EGYPTIAN HIEROGLYPH-13F35;Lo;0;L;;;;;N;;;;; +13F36;EGYPTIAN HIEROGLYPH-13F36;Lo;0;L;;;;;N;;;;; +13F37;EGYPTIAN HIEROGLYPH-13F37;Lo;0;L;;;;;N;;;;; +13F38;EGYPTIAN HIEROGLYPH-13F38;Lo;0;L;;;;;N;;;;; +13F39;EGYPTIAN HIEROGLYPH-13F39;Lo;0;L;;;;;N;;;;; +13F3A;EGYPTIAN HIEROGLYPH-13F3A;Lo;0;L;;;;;N;;;;; +13F3B;EGYPTIAN HIEROGLYPH-13F3B;Lo;0;L;;;;;N;;;;; +13F3C;EGYPTIAN HIEROGLYPH-13F3C;Lo;0;L;;;;;N;;;;; +13F3D;EGYPTIAN HIEROGLYPH-13F3D;Lo;0;L;;;;;N;;;;; +13F3E;EGYPTIAN HIEROGLYPH-13F3E;Lo;0;L;;;;;N;;;;; +13F3F;EGYPTIAN HIEROGLYPH-13F3F;Lo;0;L;;;;;N;;;;; +13F40;EGYPTIAN HIEROGLYPH-13F40;Lo;0;L;;;;;N;;;;; +13F41;EGYPTIAN HIEROGLYPH-13F41;Lo;0;L;;;;;N;;;;; +13F42;EGYPTIAN HIEROGLYPH-13F42;Lo;0;L;;;;;N;;;;; +13F43;EGYPTIAN HIEROGLYPH-13F43;Lo;0;L;;;;;N;;;;; +13F44;EGYPTIAN HIEROGLYPH-13F44;Lo;0;L;;;;;N;;;;; +13F45;EGYPTIAN HIEROGLYPH-13F45;Lo;0;L;;;;;N;;;;; +13F46;EGYPTIAN HIEROGLYPH-13F46;Lo;0;L;;;;;N;;;;; +13F47;EGYPTIAN HIEROGLYPH-13F47;Lo;0;L;;;;;N;;;;; +13F48;EGYPTIAN HIEROGLYPH-13F48;Lo;0;L;;;;;N;;;;; +13F49;EGYPTIAN HIEROGLYPH-13F49;Lo;0;L;;;;;N;;;;; +13F4A;EGYPTIAN HIEROGLYPH-13F4A;Lo;0;L;;;;;N;;;;; +13F4B;EGYPTIAN HIEROGLYPH-13F4B;Lo;0;L;;;;;N;;;;; +13F4C;EGYPTIAN HIEROGLYPH-13F4C;Lo;0;L;;;;;N;;;;; +13F4D;EGYPTIAN HIEROGLYPH-13F4D;Lo;0;L;;;;;N;;;;; +13F4E;EGYPTIAN HIEROGLYPH-13F4E;Lo;0;L;;;;;N;;;;; +13F4F;EGYPTIAN HIEROGLYPH-13F4F;Lo;0;L;;;;;N;;;;; +13F50;EGYPTIAN HIEROGLYPH-13F50;Lo;0;L;;;;;N;;;;; +13F51;EGYPTIAN HIEROGLYPH-13F51;Lo;0;L;;;;;N;;;;; +13F52;EGYPTIAN HIEROGLYPH-13F52;Lo;0;L;;;;;N;;;;; +13F53;EGYPTIAN HIEROGLYPH-13F53;Lo;0;L;;;;;N;;;;; +13F54;EGYPTIAN HIEROGLYPH-13F54;Lo;0;L;;;;;N;;;;; +13F55;EGYPTIAN HIEROGLYPH-13F55;Lo;0;L;;;;;N;;;;; +13F56;EGYPTIAN HIEROGLYPH-13F56;Lo;0;L;;;;;N;;;;; +13F57;EGYPTIAN HIEROGLYPH-13F57;Lo;0;L;;;;;N;;;;; +13F58;EGYPTIAN HIEROGLYPH-13F58;Lo;0;L;;;;;N;;;;; +13F59;EGYPTIAN HIEROGLYPH-13F59;Lo;0;L;;;;;N;;;;; +13F5A;EGYPTIAN HIEROGLYPH-13F5A;Lo;0;L;;;;;N;;;;; +13F5B;EGYPTIAN HIEROGLYPH-13F5B;Lo;0;L;;;;;N;;;;; +13F5C;EGYPTIAN HIEROGLYPH-13F5C;Lo;0;L;;;;;N;;;;; +13F5D;EGYPTIAN HIEROGLYPH-13F5D;Lo;0;L;;;;;N;;;;; +13F5E;EGYPTIAN HIEROGLYPH-13F5E;Lo;0;L;;;;;N;;;;; +13F5F;EGYPTIAN HIEROGLYPH-13F5F;Lo;0;L;;;;;N;;;;; +13F60;EGYPTIAN HIEROGLYPH-13F60;Lo;0;L;;;;;N;;;;; +13F61;EGYPTIAN HIEROGLYPH-13F61;Lo;0;L;;;;;N;;;;; +13F62;EGYPTIAN HIEROGLYPH-13F62;Lo;0;L;;;;;N;;;;; +13F63;EGYPTIAN HIEROGLYPH-13F63;Lo;0;L;;;;;N;;;;; +13F64;EGYPTIAN HIEROGLYPH-13F64;Lo;0;L;;;;;N;;;;; +13F65;EGYPTIAN HIEROGLYPH-13F65;Lo;0;L;;;;;N;;;;; +13F66;EGYPTIAN HIEROGLYPH-13F66;Lo;0;L;;;;;N;;;;; +13F67;EGYPTIAN HIEROGLYPH-13F67;Lo;0;L;;;;;N;;;;; +13F68;EGYPTIAN HIEROGLYPH-13F68;Lo;0;L;;;;;N;;;;; +13F69;EGYPTIAN HIEROGLYPH-13F69;Lo;0;L;;;;;N;;;;; +13F6A;EGYPTIAN HIEROGLYPH-13F6A;Lo;0;L;;;;;N;;;;; +13F6B;EGYPTIAN HIEROGLYPH-13F6B;Lo;0;L;;;;;N;;;;; +13F6C;EGYPTIAN HIEROGLYPH-13F6C;Lo;0;L;;;;;N;;;;; +13F6D;EGYPTIAN HIEROGLYPH-13F6D;Lo;0;L;;;;;N;;;;; +13F6E;EGYPTIAN HIEROGLYPH-13F6E;Lo;0;L;;;;;N;;;;; +13F6F;EGYPTIAN HIEROGLYPH-13F6F;Lo;0;L;;;;;N;;;;; +13F70;EGYPTIAN HIEROGLYPH-13F70;Lo;0;L;;;;;N;;;;; +13F71;EGYPTIAN HIEROGLYPH-13F71;Lo;0;L;;;;;N;;;;; +13F72;EGYPTIAN HIEROGLYPH-13F72;Lo;0;L;;;;;N;;;;; +13F73;EGYPTIAN HIEROGLYPH-13F73;Lo;0;L;;;;;N;;;;; +13F74;EGYPTIAN HIEROGLYPH-13F74;Lo;0;L;;;;;N;;;;; +13F75;EGYPTIAN HIEROGLYPH-13F75;Lo;0;L;;;;;N;;;;; +13F76;EGYPTIAN HIEROGLYPH-13F76;Lo;0;L;;;;;N;;;;; +13F77;EGYPTIAN HIEROGLYPH-13F77;Lo;0;L;;;;;N;;;;; +13F78;EGYPTIAN HIEROGLYPH-13F78;Lo;0;L;;;;;N;;;;; +13F79;EGYPTIAN HIEROGLYPH-13F79;Lo;0;L;;;;;N;;;;; +13F7A;EGYPTIAN HIEROGLYPH-13F7A;Lo;0;L;;;;;N;;;;; +13F7B;EGYPTIAN HIEROGLYPH-13F7B;Lo;0;L;;;;;N;;;;; +13F7C;EGYPTIAN HIEROGLYPH-13F7C;Lo;0;L;;;;;N;;;;; +13F7D;EGYPTIAN HIEROGLYPH-13F7D;Lo;0;L;;;;;N;;;;; +13F7E;EGYPTIAN HIEROGLYPH-13F7E;Lo;0;L;;;;;N;;;;; +13F7F;EGYPTIAN HIEROGLYPH-13F7F;Lo;0;L;;;;;N;;;;; +13F80;EGYPTIAN HIEROGLYPH-13F80;Lo;0;L;;;;;N;;;;; +13F81;EGYPTIAN HIEROGLYPH-13F81;Lo;0;L;;;;;N;;;;; +13F82;EGYPTIAN HIEROGLYPH-13F82;Lo;0;L;;;;;N;;;;; +13F83;EGYPTIAN HIEROGLYPH-13F83;Lo;0;L;;;;;N;;;;; +13F84;EGYPTIAN HIEROGLYPH-13F84;Lo;0;L;;;;;N;;;;; +13F85;EGYPTIAN HIEROGLYPH-13F85;Lo;0;L;;;;;N;;;;; +13F86;EGYPTIAN HIEROGLYPH-13F86;Lo;0;L;;;;;N;;;;; +13F87;EGYPTIAN HIEROGLYPH-13F87;Lo;0;L;;;;;N;;;;; +13F88;EGYPTIAN HIEROGLYPH-13F88;Lo;0;L;;;;;N;;;;; +13F89;EGYPTIAN HIEROGLYPH-13F89;Lo;0;L;;;;;N;;;;; +13F8A;EGYPTIAN HIEROGLYPH-13F8A;Lo;0;L;;;;;N;;;;; +13F8B;EGYPTIAN HIEROGLYPH-13F8B;Lo;0;L;;;;;N;;;;; +13F8C;EGYPTIAN HIEROGLYPH-13F8C;Lo;0;L;;;;;N;;;;; +13F8D;EGYPTIAN HIEROGLYPH-13F8D;Lo;0;L;;;;;N;;;;; +13F8E;EGYPTIAN HIEROGLYPH-13F8E;Lo;0;L;;;;;N;;;;; +13F8F;EGYPTIAN HIEROGLYPH-13F8F;Lo;0;L;;;;;N;;;;; +13F90;EGYPTIAN HIEROGLYPH-13F90;Lo;0;L;;;;;N;;;;; +13F91;EGYPTIAN HIEROGLYPH-13F91;Lo;0;L;;;;;N;;;;; +13F92;EGYPTIAN HIEROGLYPH-13F92;Lo;0;L;;;;;N;;;;; +13F93;EGYPTIAN HIEROGLYPH-13F93;Lo;0;L;;;;;N;;;;; +13F94;EGYPTIAN HIEROGLYPH-13F94;Lo;0;L;;;;;N;;;;; +13F95;EGYPTIAN HIEROGLYPH-13F95;Lo;0;L;;;;;N;;;;; +13F96;EGYPTIAN HIEROGLYPH-13F96;Lo;0;L;;;;;N;;;;; +13F97;EGYPTIAN HIEROGLYPH-13F97;Lo;0;L;;;;;N;;;;; +13F98;EGYPTIAN HIEROGLYPH-13F98;Lo;0;L;;;;;N;;;;; +13F99;EGYPTIAN HIEROGLYPH-13F99;Lo;0;L;;;;;N;;;;; +13F9A;EGYPTIAN HIEROGLYPH-13F9A;Lo;0;L;;;;;N;;;;; +13F9B;EGYPTIAN HIEROGLYPH-13F9B;Lo;0;L;;;;;N;;;;; +13F9C;EGYPTIAN HIEROGLYPH-13F9C;Lo;0;L;;;;;N;;;;; +13F9D;EGYPTIAN HIEROGLYPH-13F9D;Lo;0;L;;;;;N;;;;; +13F9E;EGYPTIAN HIEROGLYPH-13F9E;Lo;0;L;;;;;N;;;;; +13F9F;EGYPTIAN HIEROGLYPH-13F9F;Lo;0;L;;;;;N;;;;; +13FA0;EGYPTIAN HIEROGLYPH-13FA0;Lo;0;L;;;;;N;;;;; +13FA1;EGYPTIAN HIEROGLYPH-13FA1;Lo;0;L;;;;;N;;;;; +13FA2;EGYPTIAN HIEROGLYPH-13FA2;Lo;0;L;;;;;N;;;;; +13FA3;EGYPTIAN HIEROGLYPH-13FA3;Lo;0;L;;;;;N;;;;; +13FA4;EGYPTIAN HIEROGLYPH-13FA4;Lo;0;L;;;;;N;;;;; +13FA5;EGYPTIAN HIEROGLYPH-13FA5;Lo;0;L;;;;;N;;;;; +13FA6;EGYPTIAN HIEROGLYPH-13FA6;Lo;0;L;;;;;N;;;;; +13FA7;EGYPTIAN HIEROGLYPH-13FA7;Lo;0;L;;;;;N;;;;; +13FA8;EGYPTIAN HIEROGLYPH-13FA8;Lo;0;L;;;;;N;;;;; +13FA9;EGYPTIAN HIEROGLYPH-13FA9;Lo;0;L;;;;;N;;;;; +13FAA;EGYPTIAN HIEROGLYPH-13FAA;Lo;0;L;;;;;N;;;;; +13FAB;EGYPTIAN HIEROGLYPH-13FAB;Lo;0;L;;;;;N;;;;; +13FAC;EGYPTIAN HIEROGLYPH-13FAC;Lo;0;L;;;;;N;;;;; +13FAD;EGYPTIAN HIEROGLYPH-13FAD;Lo;0;L;;;;;N;;;;; +13FAE;EGYPTIAN HIEROGLYPH-13FAE;Lo;0;L;;;;;N;;;;; +13FAF;EGYPTIAN HIEROGLYPH-13FAF;Lo;0;L;;;;;N;;;;; +13FB0;EGYPTIAN HIEROGLYPH-13FB0;Lo;0;L;;;;;N;;;;; +13FB1;EGYPTIAN HIEROGLYPH-13FB1;Lo;0;L;;;;;N;;;;; +13FB2;EGYPTIAN HIEROGLYPH-13FB2;Lo;0;L;;;;;N;;;;; +13FB3;EGYPTIAN HIEROGLYPH-13FB3;Lo;0;L;;;;;N;;;;; +13FB4;EGYPTIAN HIEROGLYPH-13FB4;Lo;0;L;;;;;N;;;;; +13FB5;EGYPTIAN HIEROGLYPH-13FB5;Lo;0;L;;;;;N;;;;; +13FB6;EGYPTIAN HIEROGLYPH-13FB6;Lo;0;L;;;;;N;;;;; +13FB7;EGYPTIAN HIEROGLYPH-13FB7;Lo;0;L;;;;;N;;;;; +13FB8;EGYPTIAN HIEROGLYPH-13FB8;Lo;0;L;;;;;N;;;;; +13FB9;EGYPTIAN HIEROGLYPH-13FB9;Lo;0;L;;;;;N;;;;; +13FBA;EGYPTIAN HIEROGLYPH-13FBA;Lo;0;L;;;;;N;;;;; +13FBB;EGYPTIAN HIEROGLYPH-13FBB;Lo;0;L;;;;;N;;;;; +13FBC;EGYPTIAN HIEROGLYPH-13FBC;Lo;0;L;;;;;N;;;;; +13FBD;EGYPTIAN HIEROGLYPH-13FBD;Lo;0;L;;;;;N;;;;; +13FBE;EGYPTIAN HIEROGLYPH-13FBE;Lo;0;L;;;;;N;;;;; +13FBF;EGYPTIAN HIEROGLYPH-13FBF;Lo;0;L;;;;;N;;;;; +13FC0;EGYPTIAN HIEROGLYPH-13FC0;Lo;0;L;;;;;N;;;;; +13FC1;EGYPTIAN HIEROGLYPH-13FC1;Lo;0;L;;;;;N;;;;; +13FC2;EGYPTIAN HIEROGLYPH-13FC2;Lo;0;L;;;;;N;;;;; +13FC3;EGYPTIAN HIEROGLYPH-13FC3;Lo;0;L;;;;;N;;;;; +13FC4;EGYPTIAN HIEROGLYPH-13FC4;Lo;0;L;;;;;N;;;;; +13FC5;EGYPTIAN HIEROGLYPH-13FC5;Lo;0;L;;;;;N;;;;; +13FC6;EGYPTIAN HIEROGLYPH-13FC6;Lo;0;L;;;;;N;;;;; +13FC7;EGYPTIAN HIEROGLYPH-13FC7;Lo;0;L;;;;;N;;;;; +13FC8;EGYPTIAN HIEROGLYPH-13FC8;Lo;0;L;;;;;N;;;;; +13FC9;EGYPTIAN HIEROGLYPH-13FC9;Lo;0;L;;;;;N;;;;; +13FCA;EGYPTIAN HIEROGLYPH-13FCA;Lo;0;L;;;;;N;;;;; +13FCB;EGYPTIAN HIEROGLYPH-13FCB;Lo;0;L;;;;;N;;;;; +13FCC;EGYPTIAN HIEROGLYPH-13FCC;Lo;0;L;;;;;N;;;;; +13FCD;EGYPTIAN HIEROGLYPH-13FCD;Lo;0;L;;;;;N;;;;; +13FCE;EGYPTIAN HIEROGLYPH-13FCE;Lo;0;L;;;;;N;;;;; +13FCF;EGYPTIAN HIEROGLYPH-13FCF;Lo;0;L;;;;;N;;;;; +13FD0;EGYPTIAN HIEROGLYPH-13FD0;Lo;0;L;;;;;N;;;;; +13FD1;EGYPTIAN HIEROGLYPH-13FD1;Lo;0;L;;;;;N;;;;; +13FD2;EGYPTIAN HIEROGLYPH-13FD2;Lo;0;L;;;;;N;;;;; +13FD3;EGYPTIAN HIEROGLYPH-13FD3;Lo;0;L;;;;;N;;;;; +13FD4;EGYPTIAN HIEROGLYPH-13FD4;Lo;0;L;;;;;N;;;;; +13FD5;EGYPTIAN HIEROGLYPH-13FD5;Lo;0;L;;;;;N;;;;; +13FD6;EGYPTIAN HIEROGLYPH-13FD6;Lo;0;L;;;;;N;;;;; +13FD7;EGYPTIAN HIEROGLYPH-13FD7;Lo;0;L;;;;;N;;;;; +13FD8;EGYPTIAN HIEROGLYPH-13FD8;Lo;0;L;;;;;N;;;;; +13FD9;EGYPTIAN HIEROGLYPH-13FD9;Lo;0;L;;;;;N;;;;; +13FDA;EGYPTIAN HIEROGLYPH-13FDA;Lo;0;L;;;;;N;;;;; +13FDB;EGYPTIAN HIEROGLYPH-13FDB;Lo;0;L;;;;;N;;;;; +13FDC;EGYPTIAN HIEROGLYPH-13FDC;Lo;0;L;;;;;N;;;;; +13FDD;EGYPTIAN HIEROGLYPH-13FDD;Lo;0;L;;;;;N;;;;; +13FDE;EGYPTIAN HIEROGLYPH-13FDE;Lo;0;L;;;;;N;;;;; +13FDF;EGYPTIAN HIEROGLYPH-13FDF;Lo;0;L;;;;;N;;;;; +13FE0;EGYPTIAN HIEROGLYPH-13FE0;Lo;0;L;;;;;N;;;;; +13FE1;EGYPTIAN HIEROGLYPH-13FE1;Lo;0;L;;;;;N;;;;; +13FE2;EGYPTIAN HIEROGLYPH-13FE2;Lo;0;L;;;;;N;;;;; +13FE3;EGYPTIAN HIEROGLYPH-13FE3;Lo;0;L;;;;;N;;;;; +13FE4;EGYPTIAN HIEROGLYPH-13FE4;Lo;0;L;;;;;N;;;;; +13FE5;EGYPTIAN HIEROGLYPH-13FE5;Lo;0;L;;;;;N;;;;; +13FE6;EGYPTIAN HIEROGLYPH-13FE6;Lo;0;L;;;;;N;;;;; +13FE7;EGYPTIAN HIEROGLYPH-13FE7;Lo;0;L;;;;;N;;;;; +13FE8;EGYPTIAN HIEROGLYPH-13FE8;Lo;0;L;;;;;N;;;;; +13FE9;EGYPTIAN HIEROGLYPH-13FE9;Lo;0;L;;;;;N;;;;; +13FEA;EGYPTIAN HIEROGLYPH-13FEA;Lo;0;L;;;;;N;;;;; +13FEB;EGYPTIAN HIEROGLYPH-13FEB;Lo;0;L;;;;;N;;;;; +13FEC;EGYPTIAN HIEROGLYPH-13FEC;Lo;0;L;;;;;N;;;;; +13FED;EGYPTIAN HIEROGLYPH-13FED;Lo;0;L;;;;;N;;;;; +13FEE;EGYPTIAN HIEROGLYPH-13FEE;Lo;0;L;;;;;N;;;;; +13FEF;EGYPTIAN HIEROGLYPH-13FEF;Lo;0;L;;;;;N;;;;; +13FF0;EGYPTIAN HIEROGLYPH-13FF0;Lo;0;L;;;;;N;;;;; +13FF1;EGYPTIAN HIEROGLYPH-13FF1;Lo;0;L;;;;;N;;;;; +13FF2;EGYPTIAN HIEROGLYPH-13FF2;Lo;0;L;;;;;N;;;;; +13FF3;EGYPTIAN HIEROGLYPH-13FF3;Lo;0;L;;;;;N;;;;; +13FF4;EGYPTIAN HIEROGLYPH-13FF4;Lo;0;L;;;;;N;;;;; +13FF5;EGYPTIAN HIEROGLYPH-13FF5;Lo;0;L;;;;;N;;;;; +13FF6;EGYPTIAN HIEROGLYPH-13FF6;Lo;0;L;;;;;N;;;;; +13FF7;EGYPTIAN HIEROGLYPH-13FF7;Lo;0;L;;;;;N;;;;; +13FF8;EGYPTIAN HIEROGLYPH-13FF8;Lo;0;L;;;;;N;;;;; +13FF9;EGYPTIAN HIEROGLYPH-13FF9;Lo;0;L;;;;;N;;;;; +13FFA;EGYPTIAN HIEROGLYPH-13FFA;Lo;0;L;;;;;N;;;;; +13FFB;EGYPTIAN HIEROGLYPH-13FFB;Lo;0;L;;;;;N;;;;; +13FFC;EGYPTIAN HIEROGLYPH-13FFC;Lo;0;L;;;;;N;;;;; +13FFD;EGYPTIAN HIEROGLYPH-13FFD;Lo;0;L;;;;;N;;;;; +13FFE;EGYPTIAN HIEROGLYPH-13FFE;Lo;0;L;;;;;N;;;;; +13FFF;EGYPTIAN HIEROGLYPH-13FFF;Lo;0;L;;;;;N;;;;; +14000;EGYPTIAN HIEROGLYPH-14000;Lo;0;L;;;;;N;;;;; +14001;EGYPTIAN HIEROGLYPH-14001;Lo;0;L;;;;;N;;;;; +14002;EGYPTIAN HIEROGLYPH-14002;Lo;0;L;;;;;N;;;;; +14003;EGYPTIAN HIEROGLYPH-14003;Lo;0;L;;;;;N;;;;; +14004;EGYPTIAN HIEROGLYPH-14004;Lo;0;L;;;;;N;;;;; +14005;EGYPTIAN HIEROGLYPH-14005;Lo;0;L;;;;;N;;;;; +14006;EGYPTIAN HIEROGLYPH-14006;Lo;0;L;;;;;N;;;;; +14007;EGYPTIAN HIEROGLYPH-14007;Lo;0;L;;;;;N;;;;; +14008;EGYPTIAN HIEROGLYPH-14008;Lo;0;L;;;;;N;;;;; +14009;EGYPTIAN HIEROGLYPH-14009;Lo;0;L;;;;;N;;;;; +1400A;EGYPTIAN HIEROGLYPH-1400A;Lo;0;L;;;;;N;;;;; +1400B;EGYPTIAN HIEROGLYPH-1400B;Lo;0;L;;;;;N;;;;; +1400C;EGYPTIAN HIEROGLYPH-1400C;Lo;0;L;;;;;N;;;;; +1400D;EGYPTIAN HIEROGLYPH-1400D;Lo;0;L;;;;;N;;;;; +1400E;EGYPTIAN HIEROGLYPH-1400E;Lo;0;L;;;;;N;;;;; +1400F;EGYPTIAN HIEROGLYPH-1400F;Lo;0;L;;;;;N;;;;; +14010;EGYPTIAN HIEROGLYPH-14010;Lo;0;L;;;;;N;;;;; +14011;EGYPTIAN HIEROGLYPH-14011;Lo;0;L;;;;;N;;;;; +14012;EGYPTIAN HIEROGLYPH-14012;Lo;0;L;;;;;N;;;;; +14013;EGYPTIAN HIEROGLYPH-14013;Lo;0;L;;;;;N;;;;; +14014;EGYPTIAN HIEROGLYPH-14014;Lo;0;L;;;;;N;;;;; +14015;EGYPTIAN HIEROGLYPH-14015;Lo;0;L;;;;;N;;;;; +14016;EGYPTIAN HIEROGLYPH-14016;Lo;0;L;;;;;N;;;;; +14017;EGYPTIAN HIEROGLYPH-14017;Lo;0;L;;;;;N;;;;; +14018;EGYPTIAN HIEROGLYPH-14018;Lo;0;L;;;;;N;;;;; +14019;EGYPTIAN HIEROGLYPH-14019;Lo;0;L;;;;;N;;;;; +1401A;EGYPTIAN HIEROGLYPH-1401A;Lo;0;L;;;;;N;;;;; +1401B;EGYPTIAN HIEROGLYPH-1401B;Lo;0;L;;;;;N;;;;; +1401C;EGYPTIAN HIEROGLYPH-1401C;Lo;0;L;;;;;N;;;;; +1401D;EGYPTIAN HIEROGLYPH-1401D;Lo;0;L;;;;;N;;;;; +1401E;EGYPTIAN HIEROGLYPH-1401E;Lo;0;L;;;;;N;;;;; +1401F;EGYPTIAN HIEROGLYPH-1401F;Lo;0;L;;;;;N;;;;; +14020;EGYPTIAN HIEROGLYPH-14020;Lo;0;L;;;;;N;;;;; +14021;EGYPTIAN HIEROGLYPH-14021;Lo;0;L;;;;;N;;;;; +14022;EGYPTIAN HIEROGLYPH-14022;Lo;0;L;;;;;N;;;;; +14023;EGYPTIAN HIEROGLYPH-14023;Lo;0;L;;;;;N;;;;; +14024;EGYPTIAN HIEROGLYPH-14024;Lo;0;L;;;;;N;;;;; +14025;EGYPTIAN HIEROGLYPH-14025;Lo;0;L;;;;;N;;;;; +14026;EGYPTIAN HIEROGLYPH-14026;Lo;0;L;;;;;N;;;;; +14027;EGYPTIAN HIEROGLYPH-14027;Lo;0;L;;;;;N;;;;; +14028;EGYPTIAN HIEROGLYPH-14028;Lo;0;L;;;;;N;;;;; +14029;EGYPTIAN HIEROGLYPH-14029;Lo;0;L;;;;;N;;;;; +1402A;EGYPTIAN HIEROGLYPH-1402A;Lo;0;L;;;;;N;;;;; +1402B;EGYPTIAN HIEROGLYPH-1402B;Lo;0;L;;;;;N;;;;; +1402C;EGYPTIAN HIEROGLYPH-1402C;Lo;0;L;;;;;N;;;;; +1402D;EGYPTIAN HIEROGLYPH-1402D;Lo;0;L;;;;;N;;;;; +1402E;EGYPTIAN HIEROGLYPH-1402E;Lo;0;L;;;;;N;;;;; +1402F;EGYPTIAN HIEROGLYPH-1402F;Lo;0;L;;;;;N;;;;; +14030;EGYPTIAN HIEROGLYPH-14030;Lo;0;L;;;;;N;;;;; +14031;EGYPTIAN HIEROGLYPH-14031;Lo;0;L;;;;;N;;;;; +14032;EGYPTIAN HIEROGLYPH-14032;Lo;0;L;;;;;N;;;;; +14033;EGYPTIAN HIEROGLYPH-14033;Lo;0;L;;;;;N;;;;; +14034;EGYPTIAN HIEROGLYPH-14034;Lo;0;L;;;;;N;;;;; +14035;EGYPTIAN HIEROGLYPH-14035;Lo;0;L;;;;;N;;;;; +14036;EGYPTIAN HIEROGLYPH-14036;Lo;0;L;;;;;N;;;;; +14037;EGYPTIAN HIEROGLYPH-14037;Lo;0;L;;;;;N;;;;; +14038;EGYPTIAN HIEROGLYPH-14038;Lo;0;L;;;;;N;;;;; +14039;EGYPTIAN HIEROGLYPH-14039;Lo;0;L;;;;;N;;;;; +1403A;EGYPTIAN HIEROGLYPH-1403A;Lo;0;L;;;;;N;;;;; +1403B;EGYPTIAN HIEROGLYPH-1403B;Lo;0;L;;;;;N;;;;; +1403C;EGYPTIAN HIEROGLYPH-1403C;Lo;0;L;;;;;N;;;;; +1403D;EGYPTIAN HIEROGLYPH-1403D;Lo;0;L;;;;;N;;;;; +1403E;EGYPTIAN HIEROGLYPH-1403E;Lo;0;L;;;;;N;;;;; +1403F;EGYPTIAN HIEROGLYPH-1403F;Lo;0;L;;;;;N;;;;; +14040;EGYPTIAN HIEROGLYPH-14040;Lo;0;L;;;;;N;;;;; +14041;EGYPTIAN HIEROGLYPH-14041;Lo;0;L;;;;;N;;;;; +14042;EGYPTIAN HIEROGLYPH-14042;Lo;0;L;;;;;N;;;;; +14043;EGYPTIAN HIEROGLYPH-14043;Lo;0;L;;;;;N;;;;; +14044;EGYPTIAN HIEROGLYPH-14044;Lo;0;L;;;;;N;;;;; +14045;EGYPTIAN HIEROGLYPH-14045;Lo;0;L;;;;;N;;;;; +14046;EGYPTIAN HIEROGLYPH-14046;Lo;0;L;;;;;N;;;;; +14047;EGYPTIAN HIEROGLYPH-14047;Lo;0;L;;;;;N;;;;; +14048;EGYPTIAN HIEROGLYPH-14048;Lo;0;L;;;;;N;;;;; +14049;EGYPTIAN HIEROGLYPH-14049;Lo;0;L;;;;;N;;;;; +1404A;EGYPTIAN HIEROGLYPH-1404A;Lo;0;L;;;;;N;;;;; +1404B;EGYPTIAN HIEROGLYPH-1404B;Lo;0;L;;;;;N;;;;; +1404C;EGYPTIAN HIEROGLYPH-1404C;Lo;0;L;;;;;N;;;;; +1404D;EGYPTIAN HIEROGLYPH-1404D;Lo;0;L;;;;;N;;;;; +1404E;EGYPTIAN HIEROGLYPH-1404E;Lo;0;L;;;;;N;;;;; +1404F;EGYPTIAN HIEROGLYPH-1404F;Lo;0;L;;;;;N;;;;; +14050;EGYPTIAN HIEROGLYPH-14050;Lo;0;L;;;;;N;;;;; +14051;EGYPTIAN HIEROGLYPH-14051;Lo;0;L;;;;;N;;;;; +14052;EGYPTIAN HIEROGLYPH-14052;Lo;0;L;;;;;N;;;;; +14053;EGYPTIAN HIEROGLYPH-14053;Lo;0;L;;;;;N;;;;; +14054;EGYPTIAN HIEROGLYPH-14054;Lo;0;L;;;;;N;;;;; +14055;EGYPTIAN HIEROGLYPH-14055;Lo;0;L;;;;;N;;;;; +14056;EGYPTIAN HIEROGLYPH-14056;Lo;0;L;;;;;N;;;;; +14057;EGYPTIAN HIEROGLYPH-14057;Lo;0;L;;;;;N;;;;; +14058;EGYPTIAN HIEROGLYPH-14058;Lo;0;L;;;;;N;;;;; +14059;EGYPTIAN HIEROGLYPH-14059;Lo;0;L;;;;;N;;;;; +1405A;EGYPTIAN HIEROGLYPH-1405A;Lo;0;L;;;;;N;;;;; +1405B;EGYPTIAN HIEROGLYPH-1405B;Lo;0;L;;;;;N;;;;; +1405C;EGYPTIAN HIEROGLYPH-1405C;Lo;0;L;;;;;N;;;;; +1405D;EGYPTIAN HIEROGLYPH-1405D;Lo;0;L;;;;;N;;;;; +1405E;EGYPTIAN HIEROGLYPH-1405E;Lo;0;L;;;;;N;;;;; +1405F;EGYPTIAN HIEROGLYPH-1405F;Lo;0;L;;;;;N;;;;; +14060;EGYPTIAN HIEROGLYPH-14060;Lo;0;L;;;;;N;;;;; +14061;EGYPTIAN HIEROGLYPH-14061;Lo;0;L;;;;;N;;;;; +14062;EGYPTIAN HIEROGLYPH-14062;Lo;0;L;;;;;N;;;;; +14063;EGYPTIAN HIEROGLYPH-14063;Lo;0;L;;;;;N;;;;; +14064;EGYPTIAN HIEROGLYPH-14064;Lo;0;L;;;;;N;;;;; +14065;EGYPTIAN HIEROGLYPH-14065;Lo;0;L;;;;;N;;;;; +14066;EGYPTIAN HIEROGLYPH-14066;Lo;0;L;;;;;N;;;;; +14067;EGYPTIAN HIEROGLYPH-14067;Lo;0;L;;;;;N;;;;; +14068;EGYPTIAN HIEROGLYPH-14068;Lo;0;L;;;;;N;;;;; +14069;EGYPTIAN HIEROGLYPH-14069;Lo;0;L;;;;;N;;;;; +1406A;EGYPTIAN HIEROGLYPH-1406A;Lo;0;L;;;;;N;;;;; +1406B;EGYPTIAN HIEROGLYPH-1406B;Lo;0;L;;;;;N;;;;; +1406C;EGYPTIAN HIEROGLYPH-1406C;Lo;0;L;;;;;N;;;;; +1406D;EGYPTIAN HIEROGLYPH-1406D;Lo;0;L;;;;;N;;;;; +1406E;EGYPTIAN HIEROGLYPH-1406E;Lo;0;L;;;;;N;;;;; +1406F;EGYPTIAN HIEROGLYPH-1406F;Lo;0;L;;;;;N;;;;; +14070;EGYPTIAN HIEROGLYPH-14070;Lo;0;L;;;;;N;;;;; +14071;EGYPTIAN HIEROGLYPH-14071;Lo;0;L;;;;;N;;;;; +14072;EGYPTIAN HIEROGLYPH-14072;Lo;0;L;;;;;N;;;;; +14073;EGYPTIAN HIEROGLYPH-14073;Lo;0;L;;;;;N;;;;; +14074;EGYPTIAN HIEROGLYPH-14074;Lo;0;L;;;;;N;;;;; +14075;EGYPTIAN HIEROGLYPH-14075;Lo;0;L;;;;;N;;;;; +14076;EGYPTIAN HIEROGLYPH-14076;Lo;0;L;;;;;N;;;;; +14077;EGYPTIAN HIEROGLYPH-14077;Lo;0;L;;;;;N;;;;; +14078;EGYPTIAN HIEROGLYPH-14078;Lo;0;L;;;;;N;;;;; +14079;EGYPTIAN HIEROGLYPH-14079;Lo;0;L;;;;;N;;;;; +1407A;EGYPTIAN HIEROGLYPH-1407A;Lo;0;L;;;;;N;;;;; +1407B;EGYPTIAN HIEROGLYPH-1407B;Lo;0;L;;;;;N;;;;; +1407C;EGYPTIAN HIEROGLYPH-1407C;Lo;0;L;;;;;N;;;;; +1407D;EGYPTIAN HIEROGLYPH-1407D;Lo;0;L;;;;;N;;;;; +1407E;EGYPTIAN HIEROGLYPH-1407E;Lo;0;L;;;;;N;;;;; +1407F;EGYPTIAN HIEROGLYPH-1407F;Lo;0;L;;;;;N;;;;; +14080;EGYPTIAN HIEROGLYPH-14080;Lo;0;L;;;;;N;;;;; +14081;EGYPTIAN HIEROGLYPH-14081;Lo;0;L;;;;;N;;;;; +14082;EGYPTIAN HIEROGLYPH-14082;Lo;0;L;;;;;N;;;;; +14083;EGYPTIAN HIEROGLYPH-14083;Lo;0;L;;;;;N;;;;; +14084;EGYPTIAN HIEROGLYPH-14084;Lo;0;L;;;;;N;;;;; +14085;EGYPTIAN HIEROGLYPH-14085;Lo;0;L;;;;;N;;;;; +14086;EGYPTIAN HIEROGLYPH-14086;Lo;0;L;;;;;N;;;;; +14087;EGYPTIAN HIEROGLYPH-14087;Lo;0;L;;;;;N;;;;; +14088;EGYPTIAN HIEROGLYPH-14088;Lo;0;L;;;;;N;;;;; +14089;EGYPTIAN HIEROGLYPH-14089;Lo;0;L;;;;;N;;;;; +1408A;EGYPTIAN HIEROGLYPH-1408A;Lo;0;L;;;;;N;;;;; +1408B;EGYPTIAN HIEROGLYPH-1408B;Lo;0;L;;;;;N;;;;; +1408C;EGYPTIAN HIEROGLYPH-1408C;Lo;0;L;;;;;N;;;;; +1408D;EGYPTIAN HIEROGLYPH-1408D;Lo;0;L;;;;;N;;;;; +1408E;EGYPTIAN HIEROGLYPH-1408E;Lo;0;L;;;;;N;;;;; +1408F;EGYPTIAN HIEROGLYPH-1408F;Lo;0;L;;;;;N;;;;; +14090;EGYPTIAN HIEROGLYPH-14090;Lo;0;L;;;;;N;;;;; +14091;EGYPTIAN HIEROGLYPH-14091;Lo;0;L;;;;;N;;;;; +14092;EGYPTIAN HIEROGLYPH-14092;Lo;0;L;;;;;N;;;;; +14093;EGYPTIAN HIEROGLYPH-14093;Lo;0;L;;;;;N;;;;; +14094;EGYPTIAN HIEROGLYPH-14094;Lo;0;L;;;;;N;;;;; +14095;EGYPTIAN HIEROGLYPH-14095;Lo;0;L;;;;;N;;;;; +14096;EGYPTIAN HIEROGLYPH-14096;Lo;0;L;;;;;N;;;;; +14097;EGYPTIAN HIEROGLYPH-14097;Lo;0;L;;;;;N;;;;; +14098;EGYPTIAN HIEROGLYPH-14098;Lo;0;L;;;;;N;;;;; +14099;EGYPTIAN HIEROGLYPH-14099;Lo;0;L;;;;;N;;;;; +1409A;EGYPTIAN HIEROGLYPH-1409A;Lo;0;L;;;;;N;;;;; +1409B;EGYPTIAN HIEROGLYPH-1409B;Lo;0;L;;;;;N;;;;; +1409C;EGYPTIAN HIEROGLYPH-1409C;Lo;0;L;;;;;N;;;;; +1409D;EGYPTIAN HIEROGLYPH-1409D;Lo;0;L;;;;;N;;;;; +1409E;EGYPTIAN HIEROGLYPH-1409E;Lo;0;L;;;;;N;;;;; +1409F;EGYPTIAN HIEROGLYPH-1409F;Lo;0;L;;;;;N;;;;; +140A0;EGYPTIAN HIEROGLYPH-140A0;Lo;0;L;;;;;N;;;;; +140A1;EGYPTIAN HIEROGLYPH-140A1;Lo;0;L;;;;;N;;;;; +140A2;EGYPTIAN HIEROGLYPH-140A2;Lo;0;L;;;;;N;;;;; +140A3;EGYPTIAN HIEROGLYPH-140A3;Lo;0;L;;;;;N;;;;; +140A4;EGYPTIAN HIEROGLYPH-140A4;Lo;0;L;;;;;N;;;;; +140A5;EGYPTIAN HIEROGLYPH-140A5;Lo;0;L;;;;;N;;;;; +140A6;EGYPTIAN HIEROGLYPH-140A6;Lo;0;L;;;;;N;;;;; +140A7;EGYPTIAN HIEROGLYPH-140A7;Lo;0;L;;;;;N;;;;; +140A8;EGYPTIAN HIEROGLYPH-140A8;Lo;0;L;;;;;N;;;;; +140A9;EGYPTIAN HIEROGLYPH-140A9;Lo;0;L;;;;;N;;;;; +140AA;EGYPTIAN HIEROGLYPH-140AA;Lo;0;L;;;;;N;;;;; +140AB;EGYPTIAN HIEROGLYPH-140AB;Lo;0;L;;;;;N;;;;; +140AC;EGYPTIAN HIEROGLYPH-140AC;Lo;0;L;;;;;N;;;;; +140AD;EGYPTIAN HIEROGLYPH-140AD;Lo;0;L;;;;;N;;;;; +140AE;EGYPTIAN HIEROGLYPH-140AE;Lo;0;L;;;;;N;;;;; +140AF;EGYPTIAN HIEROGLYPH-140AF;Lo;0;L;;;;;N;;;;; +140B0;EGYPTIAN HIEROGLYPH-140B0;Lo;0;L;;;;;N;;;;; +140B1;EGYPTIAN HIEROGLYPH-140B1;Lo;0;L;;;;;N;;;;; +140B2;EGYPTIAN HIEROGLYPH-140B2;Lo;0;L;;;;;N;;;;; +140B3;EGYPTIAN HIEROGLYPH-140B3;Lo;0;L;;;;;N;;;;; +140B4;EGYPTIAN HIEROGLYPH-140B4;Lo;0;L;;;;;N;;;;; +140B5;EGYPTIAN HIEROGLYPH-140B5;Lo;0;L;;;;;N;;;;; +140B6;EGYPTIAN HIEROGLYPH-140B6;Lo;0;L;;;;;N;;;;; +140B7;EGYPTIAN HIEROGLYPH-140B7;Lo;0;L;;;;;N;;;;; +140B8;EGYPTIAN HIEROGLYPH-140B8;Lo;0;L;;;;;N;;;;; +140B9;EGYPTIAN HIEROGLYPH-140B9;Lo;0;L;;;;;N;;;;; +140BA;EGYPTIAN HIEROGLYPH-140BA;Lo;0;L;;;;;N;;;;; +140BB;EGYPTIAN HIEROGLYPH-140BB;Lo;0;L;;;;;N;;;;; +140BC;EGYPTIAN HIEROGLYPH-140BC;Lo;0;L;;;;;N;;;;; +140BD;EGYPTIAN HIEROGLYPH-140BD;Lo;0;L;;;;;N;;;;; +140BE;EGYPTIAN HIEROGLYPH-140BE;Lo;0;L;;;;;N;;;;; +140BF;EGYPTIAN HIEROGLYPH-140BF;Lo;0;L;;;;;N;;;;; +140C0;EGYPTIAN HIEROGLYPH-140C0;Lo;0;L;;;;;N;;;;; +140C1;EGYPTIAN HIEROGLYPH-140C1;Lo;0;L;;;;;N;;;;; +140C2;EGYPTIAN HIEROGLYPH-140C2;Lo;0;L;;;;;N;;;;; +140C3;EGYPTIAN HIEROGLYPH-140C3;Lo;0;L;;;;;N;;;;; +140C4;EGYPTIAN HIEROGLYPH-140C4;Lo;0;L;;;;;N;;;;; +140C5;EGYPTIAN HIEROGLYPH-140C5;Lo;0;L;;;;;N;;;;; +140C6;EGYPTIAN HIEROGLYPH-140C6;Lo;0;L;;;;;N;;;;; +140C7;EGYPTIAN HIEROGLYPH-140C7;Lo;0;L;;;;;N;;;;; +140C8;EGYPTIAN HIEROGLYPH-140C8;Lo;0;L;;;;;N;;;;; +140C9;EGYPTIAN HIEROGLYPH-140C9;Lo;0;L;;;;;N;;;;; +140CA;EGYPTIAN HIEROGLYPH-140CA;Lo;0;L;;;;;N;;;;; +140CB;EGYPTIAN HIEROGLYPH-140CB;Lo;0;L;;;;;N;;;;; +140CC;EGYPTIAN HIEROGLYPH-140CC;Lo;0;L;;;;;N;;;;; +140CD;EGYPTIAN HIEROGLYPH-140CD;Lo;0;L;;;;;N;;;;; +140CE;EGYPTIAN HIEROGLYPH-140CE;Lo;0;L;;;;;N;;;;; +140CF;EGYPTIAN HIEROGLYPH-140CF;Lo;0;L;;;;;N;;;;; +140D0;EGYPTIAN HIEROGLYPH-140D0;Lo;0;L;;;;;N;;;;; +140D1;EGYPTIAN HIEROGLYPH-140D1;Lo;0;L;;;;;N;;;;; +140D2;EGYPTIAN HIEROGLYPH-140D2;Lo;0;L;;;;;N;;;;; +140D3;EGYPTIAN HIEROGLYPH-140D3;Lo;0;L;;;;;N;;;;; +140D4;EGYPTIAN HIEROGLYPH-140D4;Lo;0;L;;;;;N;;;;; +140D5;EGYPTIAN HIEROGLYPH-140D5;Lo;0;L;;;;;N;;;;; +140D6;EGYPTIAN HIEROGLYPH-140D6;Lo;0;L;;;;;N;;;;; +140D7;EGYPTIAN HIEROGLYPH-140D7;Lo;0;L;;;;;N;;;;; +140D8;EGYPTIAN HIEROGLYPH-140D8;Lo;0;L;;;;;N;;;;; +140D9;EGYPTIAN HIEROGLYPH-140D9;Lo;0;L;;;;;N;;;;; +140DA;EGYPTIAN HIEROGLYPH-140DA;Lo;0;L;;;;;N;;;;; +140DB;EGYPTIAN HIEROGLYPH-140DB;Lo;0;L;;;;;N;;;;; +140DC;EGYPTIAN HIEROGLYPH-140DC;Lo;0;L;;;;;N;;;;; +140DD;EGYPTIAN HIEROGLYPH-140DD;Lo;0;L;;;;;N;;;;; +140DE;EGYPTIAN HIEROGLYPH-140DE;Lo;0;L;;;;;N;;;;; +140DF;EGYPTIAN HIEROGLYPH-140DF;Lo;0;L;;;;;N;;;;; +140E0;EGYPTIAN HIEROGLYPH-140E0;Lo;0;L;;;;;N;;;;; +140E1;EGYPTIAN HIEROGLYPH-140E1;Lo;0;L;;;;;N;;;;; +140E2;EGYPTIAN HIEROGLYPH-140E2;Lo;0;L;;;;;N;;;;; +140E3;EGYPTIAN HIEROGLYPH-140E3;Lo;0;L;;;;;N;;;;; +140E4;EGYPTIAN HIEROGLYPH-140E4;Lo;0;L;;;;;N;;;;; +140E5;EGYPTIAN HIEROGLYPH-140E5;Lo;0;L;;;;;N;;;;; +140E6;EGYPTIAN HIEROGLYPH-140E6;Lo;0;L;;;;;N;;;;; +140E7;EGYPTIAN HIEROGLYPH-140E7;Lo;0;L;;;;;N;;;;; +140E8;EGYPTIAN HIEROGLYPH-140E8;Lo;0;L;;;;;N;;;;; +140E9;EGYPTIAN HIEROGLYPH-140E9;Lo;0;L;;;;;N;;;;; +140EA;EGYPTIAN HIEROGLYPH-140EA;Lo;0;L;;;;;N;;;;; +140EB;EGYPTIAN HIEROGLYPH-140EB;Lo;0;L;;;;;N;;;;; +140EC;EGYPTIAN HIEROGLYPH-140EC;Lo;0;L;;;;;N;;;;; +140ED;EGYPTIAN HIEROGLYPH-140ED;Lo;0;L;;;;;N;;;;; +140EE;EGYPTIAN HIEROGLYPH-140EE;Lo;0;L;;;;;N;;;;; +140EF;EGYPTIAN HIEROGLYPH-140EF;Lo;0;L;;;;;N;;;;; +140F0;EGYPTIAN HIEROGLYPH-140F0;Lo;0;L;;;;;N;;;;; +140F1;EGYPTIAN HIEROGLYPH-140F1;Lo;0;L;;;;;N;;;;; +140F2;EGYPTIAN HIEROGLYPH-140F2;Lo;0;L;;;;;N;;;;; +140F3;EGYPTIAN HIEROGLYPH-140F3;Lo;0;L;;;;;N;;;;; +140F4;EGYPTIAN HIEROGLYPH-140F4;Lo;0;L;;;;;N;;;;; +140F5;EGYPTIAN HIEROGLYPH-140F5;Lo;0;L;;;;;N;;;;; +140F6;EGYPTIAN HIEROGLYPH-140F6;Lo;0;L;;;;;N;;;;; +140F7;EGYPTIAN HIEROGLYPH-140F7;Lo;0;L;;;;;N;;;;; +140F8;EGYPTIAN HIEROGLYPH-140F8;Lo;0;L;;;;;N;;;;; +140F9;EGYPTIAN HIEROGLYPH-140F9;Lo;0;L;;;;;N;;;;; +140FA;EGYPTIAN HIEROGLYPH-140FA;Lo;0;L;;;;;N;;;;; +140FB;EGYPTIAN HIEROGLYPH-140FB;Lo;0;L;;;;;N;;;;; +140FC;EGYPTIAN HIEROGLYPH-140FC;Lo;0;L;;;;;N;;;;; +140FD;EGYPTIAN HIEROGLYPH-140FD;Lo;0;L;;;;;N;;;;; +140FE;EGYPTIAN HIEROGLYPH-140FE;Lo;0;L;;;;;N;;;;; +140FF;EGYPTIAN HIEROGLYPH-140FF;Lo;0;L;;;;;N;;;;; +14100;EGYPTIAN HIEROGLYPH-14100;Lo;0;L;;;;;N;;;;; +14101;EGYPTIAN HIEROGLYPH-14101;Lo;0;L;;;;;N;;;;; +14102;EGYPTIAN HIEROGLYPH-14102;Lo;0;L;;;;;N;;;;; +14103;EGYPTIAN HIEROGLYPH-14103;Lo;0;L;;;;;N;;;;; +14104;EGYPTIAN HIEROGLYPH-14104;Lo;0;L;;;;;N;;;;; +14105;EGYPTIAN HIEROGLYPH-14105;Lo;0;L;;;;;N;;;;; +14106;EGYPTIAN HIEROGLYPH-14106;Lo;0;L;;;;;N;;;;; +14107;EGYPTIAN HIEROGLYPH-14107;Lo;0;L;;;;;N;;;;; +14108;EGYPTIAN HIEROGLYPH-14108;Lo;0;L;;;;;N;;;;; +14109;EGYPTIAN HIEROGLYPH-14109;Lo;0;L;;;;;N;;;;; +1410A;EGYPTIAN HIEROGLYPH-1410A;Lo;0;L;;;;;N;;;;; +1410B;EGYPTIAN HIEROGLYPH-1410B;Lo;0;L;;;;;N;;;;; +1410C;EGYPTIAN HIEROGLYPH-1410C;Lo;0;L;;;;;N;;;;; +1410D;EGYPTIAN HIEROGLYPH-1410D;Lo;0;L;;;;;N;;;;; +1410E;EGYPTIAN HIEROGLYPH-1410E;Lo;0;L;;;;;N;;;;; +1410F;EGYPTIAN HIEROGLYPH-1410F;Lo;0;L;;;;;N;;;;; +14110;EGYPTIAN HIEROGLYPH-14110;Lo;0;L;;;;;N;;;;; +14111;EGYPTIAN HIEROGLYPH-14111;Lo;0;L;;;;;N;;;;; +14112;EGYPTIAN HIEROGLYPH-14112;Lo;0;L;;;;;N;;;;; +14113;EGYPTIAN HIEROGLYPH-14113;Lo;0;L;;;;;N;;;;; +14114;EGYPTIAN HIEROGLYPH-14114;Lo;0;L;;;;;N;;;;; +14115;EGYPTIAN HIEROGLYPH-14115;Lo;0;L;;;;;N;;;;; +14116;EGYPTIAN HIEROGLYPH-14116;Lo;0;L;;;;;N;;;;; +14117;EGYPTIAN HIEROGLYPH-14117;Lo;0;L;;;;;N;;;;; +14118;EGYPTIAN HIEROGLYPH-14118;Lo;0;L;;;;;N;;;;; +14119;EGYPTIAN HIEROGLYPH-14119;Lo;0;L;;;;;N;;;;; +1411A;EGYPTIAN HIEROGLYPH-1411A;Lo;0;L;;;;;N;;;;; +1411B;EGYPTIAN HIEROGLYPH-1411B;Lo;0;L;;;;;N;;;;; +1411C;EGYPTIAN HIEROGLYPH-1411C;Lo;0;L;;;;;N;;;;; +1411D;EGYPTIAN HIEROGLYPH-1411D;Lo;0;L;;;;;N;;;;; +1411E;EGYPTIAN HIEROGLYPH-1411E;Lo;0;L;;;;;N;;;;; +1411F;EGYPTIAN HIEROGLYPH-1411F;Lo;0;L;;;;;N;;;;; +14120;EGYPTIAN HIEROGLYPH-14120;Lo;0;L;;;;;N;;;;; +14121;EGYPTIAN HIEROGLYPH-14121;Lo;0;L;;;;;N;;;;; +14122;EGYPTIAN HIEROGLYPH-14122;Lo;0;L;;;;;N;;;;; +14123;EGYPTIAN HIEROGLYPH-14123;Lo;0;L;;;;;N;;;;; +14124;EGYPTIAN HIEROGLYPH-14124;Lo;0;L;;;;;N;;;;; +14125;EGYPTIAN HIEROGLYPH-14125;Lo;0;L;;;;;N;;;;; +14126;EGYPTIAN HIEROGLYPH-14126;Lo;0;L;;;;;N;;;;; +14127;EGYPTIAN HIEROGLYPH-14127;Lo;0;L;;;;;N;;;;; +14128;EGYPTIAN HIEROGLYPH-14128;Lo;0;L;;;;;N;;;;; +14129;EGYPTIAN HIEROGLYPH-14129;Lo;0;L;;;;;N;;;;; +1412A;EGYPTIAN HIEROGLYPH-1412A;Lo;0;L;;;;;N;;;;; +1412B;EGYPTIAN HIEROGLYPH-1412B;Lo;0;L;;;;;N;;;;; +1412C;EGYPTIAN HIEROGLYPH-1412C;Lo;0;L;;;;;N;;;;; +1412D;EGYPTIAN HIEROGLYPH-1412D;Lo;0;L;;;;;N;;;;; +1412E;EGYPTIAN HIEROGLYPH-1412E;Lo;0;L;;;;;N;;;;; +1412F;EGYPTIAN HIEROGLYPH-1412F;Lo;0;L;;;;;N;;;;; +14130;EGYPTIAN HIEROGLYPH-14130;Lo;0;L;;;;;N;;;;; +14131;EGYPTIAN HIEROGLYPH-14131;Lo;0;L;;;;;N;;;;; +14132;EGYPTIAN HIEROGLYPH-14132;Lo;0;L;;;;;N;;;;; +14133;EGYPTIAN HIEROGLYPH-14133;Lo;0;L;;;;;N;;;;; +14134;EGYPTIAN HIEROGLYPH-14134;Lo;0;L;;;;;N;;;;; +14135;EGYPTIAN HIEROGLYPH-14135;Lo;0;L;;;;;N;;;;; +14136;EGYPTIAN HIEROGLYPH-14136;Lo;0;L;;;;;N;;;;; +14137;EGYPTIAN HIEROGLYPH-14137;Lo;0;L;;;;;N;;;;; +14138;EGYPTIAN HIEROGLYPH-14138;Lo;0;L;;;;;N;;;;; +14139;EGYPTIAN HIEROGLYPH-14139;Lo;0;L;;;;;N;;;;; +1413A;EGYPTIAN HIEROGLYPH-1413A;Lo;0;L;;;;;N;;;;; +1413B;EGYPTIAN HIEROGLYPH-1413B;Lo;0;L;;;;;N;;;;; +1413C;EGYPTIAN HIEROGLYPH-1413C;Lo;0;L;;;;;N;;;;; +1413D;EGYPTIAN HIEROGLYPH-1413D;Lo;0;L;;;;;N;;;;; +1413E;EGYPTIAN HIEROGLYPH-1413E;Lo;0;L;;;;;N;;;;; +1413F;EGYPTIAN HIEROGLYPH-1413F;Lo;0;L;;;;;N;;;;; +14140;EGYPTIAN HIEROGLYPH-14140;Lo;0;L;;;;;N;;;;; +14141;EGYPTIAN HIEROGLYPH-14141;Lo;0;L;;;;;N;;;;; +14142;EGYPTIAN HIEROGLYPH-14142;Lo;0;L;;;;;N;;;;; +14143;EGYPTIAN HIEROGLYPH-14143;Lo;0;L;;;;;N;;;;; +14144;EGYPTIAN HIEROGLYPH-14144;Lo;0;L;;;;;N;;;;; +14145;EGYPTIAN HIEROGLYPH-14145;Lo;0;L;;;;;N;;;;; +14146;EGYPTIAN HIEROGLYPH-14146;Lo;0;L;;;;;N;;;;; +14147;EGYPTIAN HIEROGLYPH-14147;Lo;0;L;;;;;N;;;;; +14148;EGYPTIAN HIEROGLYPH-14148;Lo;0;L;;;;;N;;;;; +14149;EGYPTIAN HIEROGLYPH-14149;Lo;0;L;;;;;N;;;;; +1414A;EGYPTIAN HIEROGLYPH-1414A;Lo;0;L;;;;;N;;;;; +1414B;EGYPTIAN HIEROGLYPH-1414B;Lo;0;L;;;;;N;;;;; +1414C;EGYPTIAN HIEROGLYPH-1414C;Lo;0;L;;;;;N;;;;; +1414D;EGYPTIAN HIEROGLYPH-1414D;Lo;0;L;;;;;N;;;;; +1414E;EGYPTIAN HIEROGLYPH-1414E;Lo;0;L;;;;;N;;;;; +1414F;EGYPTIAN HIEROGLYPH-1414F;Lo;0;L;;;;;N;;;;; +14150;EGYPTIAN HIEROGLYPH-14150;Lo;0;L;;;;;N;;;;; +14151;EGYPTIAN HIEROGLYPH-14151;Lo;0;L;;;;;N;;;;; +14152;EGYPTIAN HIEROGLYPH-14152;Lo;0;L;;;;;N;;;;; +14153;EGYPTIAN HIEROGLYPH-14153;Lo;0;L;;;;;N;;;;; +14154;EGYPTIAN HIEROGLYPH-14154;Lo;0;L;;;;;N;;;;; +14155;EGYPTIAN HIEROGLYPH-14155;Lo;0;L;;;;;N;;;;; +14156;EGYPTIAN HIEROGLYPH-14156;Lo;0;L;;;;;N;;;;; +14157;EGYPTIAN HIEROGLYPH-14157;Lo;0;L;;;;;N;;;;; +14158;EGYPTIAN HIEROGLYPH-14158;Lo;0;L;;;;;N;;;;; +14159;EGYPTIAN HIEROGLYPH-14159;Lo;0;L;;;;;N;;;;; +1415A;EGYPTIAN HIEROGLYPH-1415A;Lo;0;L;;;;;N;;;;; +1415B;EGYPTIAN HIEROGLYPH-1415B;Lo;0;L;;;;;N;;;;; +1415C;EGYPTIAN HIEROGLYPH-1415C;Lo;0;L;;;;;N;;;;; +1415D;EGYPTIAN HIEROGLYPH-1415D;Lo;0;L;;;;;N;;;;; +1415E;EGYPTIAN HIEROGLYPH-1415E;Lo;0;L;;;;;N;;;;; +1415F;EGYPTIAN HIEROGLYPH-1415F;Lo;0;L;;;;;N;;;;; +14160;EGYPTIAN HIEROGLYPH-14160;Lo;0;L;;;;;N;;;;; +14161;EGYPTIAN HIEROGLYPH-14161;Lo;0;L;;;;;N;;;;; +14162;EGYPTIAN HIEROGLYPH-14162;Lo;0;L;;;;;N;;;;; +14163;EGYPTIAN HIEROGLYPH-14163;Lo;0;L;;;;;N;;;;; +14164;EGYPTIAN HIEROGLYPH-14164;Lo;0;L;;;;;N;;;;; +14165;EGYPTIAN HIEROGLYPH-14165;Lo;0;L;;;;;N;;;;; +14166;EGYPTIAN HIEROGLYPH-14166;Lo;0;L;;;;;N;;;;; +14167;EGYPTIAN HIEROGLYPH-14167;Lo;0;L;;;;;N;;;;; +14168;EGYPTIAN HIEROGLYPH-14168;Lo;0;L;;;;;N;;;;; +14169;EGYPTIAN HIEROGLYPH-14169;Lo;0;L;;;;;N;;;;; +1416A;EGYPTIAN HIEROGLYPH-1416A;Lo;0;L;;;;;N;;;;; +1416B;EGYPTIAN HIEROGLYPH-1416B;Lo;0;L;;;;;N;;;;; +1416C;EGYPTIAN HIEROGLYPH-1416C;Lo;0;L;;;;;N;;;;; +1416D;EGYPTIAN HIEROGLYPH-1416D;Lo;0;L;;;;;N;;;;; +1416E;EGYPTIAN HIEROGLYPH-1416E;Lo;0;L;;;;;N;;;;; +1416F;EGYPTIAN HIEROGLYPH-1416F;Lo;0;L;;;;;N;;;;; +14170;EGYPTIAN HIEROGLYPH-14170;Lo;0;L;;;;;N;;;;; +14171;EGYPTIAN HIEROGLYPH-14171;Lo;0;L;;;;;N;;;;; +14172;EGYPTIAN HIEROGLYPH-14172;Lo;0;L;;;;;N;;;;; +14173;EGYPTIAN HIEROGLYPH-14173;Lo;0;L;;;;;N;;;;; +14174;EGYPTIAN HIEROGLYPH-14174;Lo;0;L;;;;;N;;;;; +14175;EGYPTIAN HIEROGLYPH-14175;Lo;0;L;;;;;N;;;;; +14176;EGYPTIAN HIEROGLYPH-14176;Lo;0;L;;;;;N;;;;; +14177;EGYPTIAN HIEROGLYPH-14177;Lo;0;L;;;;;N;;;;; +14178;EGYPTIAN HIEROGLYPH-14178;Lo;0;L;;;;;N;;;;; +14179;EGYPTIAN HIEROGLYPH-14179;Lo;0;L;;;;;N;;;;; +1417A;EGYPTIAN HIEROGLYPH-1417A;Lo;0;L;;;;;N;;;;; +1417B;EGYPTIAN HIEROGLYPH-1417B;Lo;0;L;;;;;N;;;;; +1417C;EGYPTIAN HIEROGLYPH-1417C;Lo;0;L;;;;;N;;;;; +1417D;EGYPTIAN HIEROGLYPH-1417D;Lo;0;L;;;;;N;;;;; +1417E;EGYPTIAN HIEROGLYPH-1417E;Lo;0;L;;;;;N;;;;; +1417F;EGYPTIAN HIEROGLYPH-1417F;Lo;0;L;;;;;N;;;;; +14180;EGYPTIAN HIEROGLYPH-14180;Lo;0;L;;;;;N;;;;; +14181;EGYPTIAN HIEROGLYPH-14181;Lo;0;L;;;;;N;;;;; +14182;EGYPTIAN HIEROGLYPH-14182;Lo;0;L;;;;;N;;;;; +14183;EGYPTIAN HIEROGLYPH-14183;Lo;0;L;;;;;N;;;;; +14184;EGYPTIAN HIEROGLYPH-14184;Lo;0;L;;;;;N;;;;; +14185;EGYPTIAN HIEROGLYPH-14185;Lo;0;L;;;;;N;;;;; +14186;EGYPTIAN HIEROGLYPH-14186;Lo;0;L;;;;;N;;;;; +14187;EGYPTIAN HIEROGLYPH-14187;Lo;0;L;;;;;N;;;;; +14188;EGYPTIAN HIEROGLYPH-14188;Lo;0;L;;;;;N;;;;; +14189;EGYPTIAN HIEROGLYPH-14189;Lo;0;L;;;;;N;;;;; +1418A;EGYPTIAN HIEROGLYPH-1418A;Lo;0;L;;;;;N;;;;; +1418B;EGYPTIAN HIEROGLYPH-1418B;Lo;0;L;;;;;N;;;;; +1418C;EGYPTIAN HIEROGLYPH-1418C;Lo;0;L;;;;;N;;;;; +1418D;EGYPTIAN HIEROGLYPH-1418D;Lo;0;L;;;;;N;;;;; +1418E;EGYPTIAN HIEROGLYPH-1418E;Lo;0;L;;;;;N;;;;; +1418F;EGYPTIAN HIEROGLYPH-1418F;Lo;0;L;;;;;N;;;;; +14190;EGYPTIAN HIEROGLYPH-14190;Lo;0;L;;;;;N;;;;; +14191;EGYPTIAN HIEROGLYPH-14191;Lo;0;L;;;;;N;;;;; +14192;EGYPTIAN HIEROGLYPH-14192;Lo;0;L;;;;;N;;;;; +14193;EGYPTIAN HIEROGLYPH-14193;Lo;0;L;;;;;N;;;;; +14194;EGYPTIAN HIEROGLYPH-14194;Lo;0;L;;;;;N;;;;; +14195;EGYPTIAN HIEROGLYPH-14195;Lo;0;L;;;;;N;;;;; +14196;EGYPTIAN HIEROGLYPH-14196;Lo;0;L;;;;;N;;;;; +14197;EGYPTIAN HIEROGLYPH-14197;Lo;0;L;;;;;N;;;;; +14198;EGYPTIAN HIEROGLYPH-14198;Lo;0;L;;;;;N;;;;; +14199;EGYPTIAN HIEROGLYPH-14199;Lo;0;L;;;;;N;;;;; +1419A;EGYPTIAN HIEROGLYPH-1419A;Lo;0;L;;;;;N;;;;; +1419B;EGYPTIAN HIEROGLYPH-1419B;Lo;0;L;;;;;N;;;;; +1419C;EGYPTIAN HIEROGLYPH-1419C;Lo;0;L;;;;;N;;;;; +1419D;EGYPTIAN HIEROGLYPH-1419D;Lo;0;L;;;;;N;;;;; +1419E;EGYPTIAN HIEROGLYPH-1419E;Lo;0;L;;;;;N;;;;; +1419F;EGYPTIAN HIEROGLYPH-1419F;Lo;0;L;;;;;N;;;;; +141A0;EGYPTIAN HIEROGLYPH-141A0;Lo;0;L;;;;;N;;;;; +141A1;EGYPTIAN HIEROGLYPH-141A1;Lo;0;L;;;;;N;;;;; +141A2;EGYPTIAN HIEROGLYPH-141A2;Lo;0;L;;;;;N;;;;; +141A3;EGYPTIAN HIEROGLYPH-141A3;Lo;0;L;;;;;N;;;;; +141A4;EGYPTIAN HIEROGLYPH-141A4;Lo;0;L;;;;;N;;;;; +141A5;EGYPTIAN HIEROGLYPH-141A5;Lo;0;L;;;;;N;;;;; +141A6;EGYPTIAN HIEROGLYPH-141A6;Lo;0;L;;;;;N;;;;; +141A7;EGYPTIAN HIEROGLYPH-141A7;Lo;0;L;;;;;N;;;;; +141A8;EGYPTIAN HIEROGLYPH-141A8;Lo;0;L;;;;;N;;;;; +141A9;EGYPTIAN HIEROGLYPH-141A9;Lo;0;L;;;;;N;;;;; +141AA;EGYPTIAN HIEROGLYPH-141AA;Lo;0;L;;;;;N;;;;; +141AB;EGYPTIAN HIEROGLYPH-141AB;Lo;0;L;;;;;N;;;;; +141AC;EGYPTIAN HIEROGLYPH-141AC;Lo;0;L;;;;;N;;;;; +141AD;EGYPTIAN HIEROGLYPH-141AD;Lo;0;L;;;;;N;;;;; +141AE;EGYPTIAN HIEROGLYPH-141AE;Lo;0;L;;;;;N;;;;; +141AF;EGYPTIAN HIEROGLYPH-141AF;Lo;0;L;;;;;N;;;;; +141B0;EGYPTIAN HIEROGLYPH-141B0;Lo;0;L;;;;;N;;;;; +141B1;EGYPTIAN HIEROGLYPH-141B1;Lo;0;L;;;;;N;;;;; +141B2;EGYPTIAN HIEROGLYPH-141B2;Lo;0;L;;;;;N;;;;; +141B3;EGYPTIAN HIEROGLYPH-141B3;Lo;0;L;;;;;N;;;;; +141B4;EGYPTIAN HIEROGLYPH-141B4;Lo;0;L;;;;;N;;;;; +141B5;EGYPTIAN HIEROGLYPH-141B5;Lo;0;L;;;;;N;;;;; +141B6;EGYPTIAN HIEROGLYPH-141B6;Lo;0;L;;;;;N;;;;; +141B7;EGYPTIAN HIEROGLYPH-141B7;Lo;0;L;;;;;N;;;;; +141B8;EGYPTIAN HIEROGLYPH-141B8;Lo;0;L;;;;;N;;;;; +141B9;EGYPTIAN HIEROGLYPH-141B9;Lo;0;L;;;;;N;;;;; +141BA;EGYPTIAN HIEROGLYPH-141BA;Lo;0;L;;;;;N;;;;; +141BB;EGYPTIAN HIEROGLYPH-141BB;Lo;0;L;;;;;N;;;;; +141BC;EGYPTIAN HIEROGLYPH-141BC;Lo;0;L;;;;;N;;;;; +141BD;EGYPTIAN HIEROGLYPH-141BD;Lo;0;L;;;;;N;;;;; +141BE;EGYPTIAN HIEROGLYPH-141BE;Lo;0;L;;;;;N;;;;; +141BF;EGYPTIAN HIEROGLYPH-141BF;Lo;0;L;;;;;N;;;;; +141C0;EGYPTIAN HIEROGLYPH-141C0;Lo;0;L;;;;;N;;;;; +141C1;EGYPTIAN HIEROGLYPH-141C1;Lo;0;L;;;;;N;;;;; +141C2;EGYPTIAN HIEROGLYPH-141C2;Lo;0;L;;;;;N;;;;; +141C3;EGYPTIAN HIEROGLYPH-141C3;Lo;0;L;;;;;N;;;;; +141C4;EGYPTIAN HIEROGLYPH-141C4;Lo;0;L;;;;;N;;;;; +141C5;EGYPTIAN HIEROGLYPH-141C5;Lo;0;L;;;;;N;;;;; +141C6;EGYPTIAN HIEROGLYPH-141C6;Lo;0;L;;;;;N;;;;; +141C7;EGYPTIAN HIEROGLYPH-141C7;Lo;0;L;;;;;N;;;;; +141C8;EGYPTIAN HIEROGLYPH-141C8;Lo;0;L;;;;;N;;;;; +141C9;EGYPTIAN HIEROGLYPH-141C9;Lo;0;L;;;;;N;;;;; +141CA;EGYPTIAN HIEROGLYPH-141CA;Lo;0;L;;;;;N;;;;; +141CB;EGYPTIAN HIEROGLYPH-141CB;Lo;0;L;;;;;N;;;;; +141CC;EGYPTIAN HIEROGLYPH-141CC;Lo;0;L;;;;;N;;;;; +141CD;EGYPTIAN HIEROGLYPH-141CD;Lo;0;L;;;;;N;;;;; +141CE;EGYPTIAN HIEROGLYPH-141CE;Lo;0;L;;;;;N;;;;; +141CF;EGYPTIAN HIEROGLYPH-141CF;Lo;0;L;;;;;N;;;;; +141D0;EGYPTIAN HIEROGLYPH-141D0;Lo;0;L;;;;;N;;;;; +141D1;EGYPTIAN HIEROGLYPH-141D1;Lo;0;L;;;;;N;;;;; +141D2;EGYPTIAN HIEROGLYPH-141D2;Lo;0;L;;;;;N;;;;; +141D3;EGYPTIAN HIEROGLYPH-141D3;Lo;0;L;;;;;N;;;;; +141D4;EGYPTIAN HIEROGLYPH-141D4;Lo;0;L;;;;;N;;;;; +141D5;EGYPTIAN HIEROGLYPH-141D5;Lo;0;L;;;;;N;;;;; +141D6;EGYPTIAN HIEROGLYPH-141D6;Lo;0;L;;;;;N;;;;; +141D7;EGYPTIAN HIEROGLYPH-141D7;Lo;0;L;;;;;N;;;;; +141D8;EGYPTIAN HIEROGLYPH-141D8;Lo;0;L;;;;;N;;;;; +141D9;EGYPTIAN HIEROGLYPH-141D9;Lo;0;L;;;;;N;;;;; +141DA;EGYPTIAN HIEROGLYPH-141DA;Lo;0;L;;;;;N;;;;; +141DB;EGYPTIAN HIEROGLYPH-141DB;Lo;0;L;;;;;N;;;;; +141DC;EGYPTIAN HIEROGLYPH-141DC;Lo;0;L;;;;;N;;;;; +141DD;EGYPTIAN HIEROGLYPH-141DD;Lo;0;L;;;;;N;;;;; +141DE;EGYPTIAN HIEROGLYPH-141DE;Lo;0;L;;;;;N;;;;; +141DF;EGYPTIAN HIEROGLYPH-141DF;Lo;0;L;;;;;N;;;;; +141E0;EGYPTIAN HIEROGLYPH-141E0;Lo;0;L;;;;;N;;;;; +141E1;EGYPTIAN HIEROGLYPH-141E1;Lo;0;L;;;;;N;;;;; +141E2;EGYPTIAN HIEROGLYPH-141E2;Lo;0;L;;;;;N;;;;; +141E3;EGYPTIAN HIEROGLYPH-141E3;Lo;0;L;;;;;N;;;;; +141E4;EGYPTIAN HIEROGLYPH-141E4;Lo;0;L;;;;;N;;;;; +141E5;EGYPTIAN HIEROGLYPH-141E5;Lo;0;L;;;;;N;;;;; +141E6;EGYPTIAN HIEROGLYPH-141E6;Lo;0;L;;;;;N;;;;; +141E7;EGYPTIAN HIEROGLYPH-141E7;Lo;0;L;;;;;N;;;;; +141E8;EGYPTIAN HIEROGLYPH-141E8;Lo;0;L;;;;;N;;;;; +141E9;EGYPTIAN HIEROGLYPH-141E9;Lo;0;L;;;;;N;;;;; +141EA;EGYPTIAN HIEROGLYPH-141EA;Lo;0;L;;;;;N;;;;; +141EB;EGYPTIAN HIEROGLYPH-141EB;Lo;0;L;;;;;N;;;;; +141EC;EGYPTIAN HIEROGLYPH-141EC;Lo;0;L;;;;;N;;;;; +141ED;EGYPTIAN HIEROGLYPH-141ED;Lo;0;L;;;;;N;;;;; +141EE;EGYPTIAN HIEROGLYPH-141EE;Lo;0;L;;;;;N;;;;; +141EF;EGYPTIAN HIEROGLYPH-141EF;Lo;0;L;;;;;N;;;;; +141F0;EGYPTIAN HIEROGLYPH-141F0;Lo;0;L;;;;;N;;;;; +141F1;EGYPTIAN HIEROGLYPH-141F1;Lo;0;L;;;;;N;;;;; +141F2;EGYPTIAN HIEROGLYPH-141F2;Lo;0;L;;;;;N;;;;; +141F3;EGYPTIAN HIEROGLYPH-141F3;Lo;0;L;;;;;N;;;;; +141F4;EGYPTIAN HIEROGLYPH-141F4;Lo;0;L;;;;;N;;;;; +141F5;EGYPTIAN HIEROGLYPH-141F5;Lo;0;L;;;;;N;;;;; +141F6;EGYPTIAN HIEROGLYPH-141F6;Lo;0;L;;;;;N;;;;; +141F7;EGYPTIAN HIEROGLYPH-141F7;Lo;0;L;;;;;N;;;;; +141F8;EGYPTIAN HIEROGLYPH-141F8;Lo;0;L;;;;;N;;;;; +141F9;EGYPTIAN HIEROGLYPH-141F9;Lo;0;L;;;;;N;;;;; +141FA;EGYPTIAN HIEROGLYPH-141FA;Lo;0;L;;;;;N;;;;; +141FB;EGYPTIAN HIEROGLYPH-141FB;Lo;0;L;;;;;N;;;;; +141FC;EGYPTIAN HIEROGLYPH-141FC;Lo;0;L;;;;;N;;;;; +141FD;EGYPTIAN HIEROGLYPH-141FD;Lo;0;L;;;;;N;;;;; +141FE;EGYPTIAN HIEROGLYPH-141FE;Lo;0;L;;;;;N;;;;; +141FF;EGYPTIAN HIEROGLYPH-141FF;Lo;0;L;;;;;N;;;;; +14200;EGYPTIAN HIEROGLYPH-14200;Lo;0;L;;;;;N;;;;; +14201;EGYPTIAN HIEROGLYPH-14201;Lo;0;L;;;;;N;;;;; +14202;EGYPTIAN HIEROGLYPH-14202;Lo;0;L;;;;;N;;;;; +14203;EGYPTIAN HIEROGLYPH-14203;Lo;0;L;;;;;N;;;;; +14204;EGYPTIAN HIEROGLYPH-14204;Lo;0;L;;;;;N;;;;; +14205;EGYPTIAN HIEROGLYPH-14205;Lo;0;L;;;;;N;;;;; +14206;EGYPTIAN HIEROGLYPH-14206;Lo;0;L;;;;;N;;;;; +14207;EGYPTIAN HIEROGLYPH-14207;Lo;0;L;;;;;N;;;;; +14208;EGYPTIAN HIEROGLYPH-14208;Lo;0;L;;;;;N;;;;; +14209;EGYPTIAN HIEROGLYPH-14209;Lo;0;L;;;;;N;;;;; +1420A;EGYPTIAN HIEROGLYPH-1420A;Lo;0;L;;;;;N;;;;; +1420B;EGYPTIAN HIEROGLYPH-1420B;Lo;0;L;;;;;N;;;;; +1420C;EGYPTIAN HIEROGLYPH-1420C;Lo;0;L;;;;;N;;;;; +1420D;EGYPTIAN HIEROGLYPH-1420D;Lo;0;L;;;;;N;;;;; +1420E;EGYPTIAN HIEROGLYPH-1420E;Lo;0;L;;;;;N;;;;; +1420F;EGYPTIAN HIEROGLYPH-1420F;Lo;0;L;;;;;N;;;;; +14210;EGYPTIAN HIEROGLYPH-14210;Lo;0;L;;;;;N;;;;; +14211;EGYPTIAN HIEROGLYPH-14211;Lo;0;L;;;;;N;;;;; +14212;EGYPTIAN HIEROGLYPH-14212;Lo;0;L;;;;;N;;;;; +14213;EGYPTIAN HIEROGLYPH-14213;Lo;0;L;;;;;N;;;;; +14214;EGYPTIAN HIEROGLYPH-14214;Lo;0;L;;;;;N;;;;; +14215;EGYPTIAN HIEROGLYPH-14215;Lo;0;L;;;;;N;;;;; +14216;EGYPTIAN HIEROGLYPH-14216;Lo;0;L;;;;;N;;;;; +14217;EGYPTIAN HIEROGLYPH-14217;Lo;0;L;;;;;N;;;;; +14218;EGYPTIAN HIEROGLYPH-14218;Lo;0;L;;;;;N;;;;; +14219;EGYPTIAN HIEROGLYPH-14219;Lo;0;L;;;;;N;;;;; +1421A;EGYPTIAN HIEROGLYPH-1421A;Lo;0;L;;;;;N;;;;; +1421B;EGYPTIAN HIEROGLYPH-1421B;Lo;0;L;;;;;N;;;;; +1421C;EGYPTIAN HIEROGLYPH-1421C;Lo;0;L;;;;;N;;;;; +1421D;EGYPTIAN HIEROGLYPH-1421D;Lo;0;L;;;;;N;;;;; +1421E;EGYPTIAN HIEROGLYPH-1421E;Lo;0;L;;;;;N;;;;; +1421F;EGYPTIAN HIEROGLYPH-1421F;Lo;0;L;;;;;N;;;;; +14220;EGYPTIAN HIEROGLYPH-14220;Lo;0;L;;;;;N;;;;; +14221;EGYPTIAN HIEROGLYPH-14221;Lo;0;L;;;;;N;;;;; +14222;EGYPTIAN HIEROGLYPH-14222;Lo;0;L;;;;;N;;;;; +14223;EGYPTIAN HIEROGLYPH-14223;Lo;0;L;;;;;N;;;;; +14224;EGYPTIAN HIEROGLYPH-14224;Lo;0;L;;;;;N;;;;; +14225;EGYPTIAN HIEROGLYPH-14225;Lo;0;L;;;;;N;;;;; +14226;EGYPTIAN HIEROGLYPH-14226;Lo;0;L;;;;;N;;;;; +14227;EGYPTIAN HIEROGLYPH-14227;Lo;0;L;;;;;N;;;;; +14228;EGYPTIAN HIEROGLYPH-14228;Lo;0;L;;;;;N;;;;; +14229;EGYPTIAN HIEROGLYPH-14229;Lo;0;L;;;;;N;;;;; +1422A;EGYPTIAN HIEROGLYPH-1422A;Lo;0;L;;;;;N;;;;; +1422B;EGYPTIAN HIEROGLYPH-1422B;Lo;0;L;;;;;N;;;;; +1422C;EGYPTIAN HIEROGLYPH-1422C;Lo;0;L;;;;;N;;;;; +1422D;EGYPTIAN HIEROGLYPH-1422D;Lo;0;L;;;;;N;;;;; +1422E;EGYPTIAN HIEROGLYPH-1422E;Lo;0;L;;;;;N;;;;; +1422F;EGYPTIAN HIEROGLYPH-1422F;Lo;0;L;;;;;N;;;;; +14230;EGYPTIAN HIEROGLYPH-14230;Lo;0;L;;;;;N;;;;; +14231;EGYPTIAN HIEROGLYPH-14231;Lo;0;L;;;;;N;;;;; +14232;EGYPTIAN HIEROGLYPH-14232;Lo;0;L;;;;;N;;;;; +14233;EGYPTIAN HIEROGLYPH-14233;Lo;0;L;;;;;N;;;;; +14234;EGYPTIAN HIEROGLYPH-14234;Lo;0;L;;;;;N;;;;; +14235;EGYPTIAN HIEROGLYPH-14235;Lo;0;L;;;;;N;;;;; +14236;EGYPTIAN HIEROGLYPH-14236;Lo;0;L;;;;;N;;;;; +14237;EGYPTIAN HIEROGLYPH-14237;Lo;0;L;;;;;N;;;;; +14238;EGYPTIAN HIEROGLYPH-14238;Lo;0;L;;;;;N;;;;; +14239;EGYPTIAN HIEROGLYPH-14239;Lo;0;L;;;;;N;;;;; +1423A;EGYPTIAN HIEROGLYPH-1423A;Lo;0;L;;;;;N;;;;; +1423B;EGYPTIAN HIEROGLYPH-1423B;Lo;0;L;;;;;N;;;;; +1423C;EGYPTIAN HIEROGLYPH-1423C;Lo;0;L;;;;;N;;;;; +1423D;EGYPTIAN HIEROGLYPH-1423D;Lo;0;L;;;;;N;;;;; +1423E;EGYPTIAN HIEROGLYPH-1423E;Lo;0;L;;;;;N;;;;; +1423F;EGYPTIAN HIEROGLYPH-1423F;Lo;0;L;;;;;N;;;;; +14240;EGYPTIAN HIEROGLYPH-14240;Lo;0;L;;;;;N;;;;; +14241;EGYPTIAN HIEROGLYPH-14241;Lo;0;L;;;;;N;;;;; +14242;EGYPTIAN HIEROGLYPH-14242;Lo;0;L;;;;;N;;;;; +14243;EGYPTIAN HIEROGLYPH-14243;Lo;0;L;;;;;N;;;;; +14244;EGYPTIAN HIEROGLYPH-14244;Lo;0;L;;;;;N;;;;; +14245;EGYPTIAN HIEROGLYPH-14245;Lo;0;L;;;;;N;;;;; +14246;EGYPTIAN HIEROGLYPH-14246;Lo;0;L;;;;;N;;;;; +14247;EGYPTIAN HIEROGLYPH-14247;Lo;0;L;;;;;N;;;;; +14248;EGYPTIAN HIEROGLYPH-14248;Lo;0;L;;;;;N;;;;; +14249;EGYPTIAN HIEROGLYPH-14249;Lo;0;L;;;;;N;;;;; +1424A;EGYPTIAN HIEROGLYPH-1424A;Lo;0;L;;;;;N;;;;; +1424B;EGYPTIAN HIEROGLYPH-1424B;Lo;0;L;;;;;N;;;;; +1424C;EGYPTIAN HIEROGLYPH-1424C;Lo;0;L;;;;;N;;;;; +1424D;EGYPTIAN HIEROGLYPH-1424D;Lo;0;L;;;;;N;;;;; +1424E;EGYPTIAN HIEROGLYPH-1424E;Lo;0;L;;;;;N;;;;; +1424F;EGYPTIAN HIEROGLYPH-1424F;Lo;0;L;;;;;N;;;;; +14250;EGYPTIAN HIEROGLYPH-14250;Lo;0;L;;;;;N;;;;; +14251;EGYPTIAN HIEROGLYPH-14251;Lo;0;L;;;;;N;;;;; +14252;EGYPTIAN HIEROGLYPH-14252;Lo;0;L;;;;;N;;;;; +14253;EGYPTIAN HIEROGLYPH-14253;Lo;0;L;;;;;N;;;;; +14254;EGYPTIAN HIEROGLYPH-14254;Lo;0;L;;;;;N;;;;; +14255;EGYPTIAN HIEROGLYPH-14255;Lo;0;L;;;;;N;;;;; +14256;EGYPTIAN HIEROGLYPH-14256;Lo;0;L;;;;;N;;;;; +14257;EGYPTIAN HIEROGLYPH-14257;Lo;0;L;;;;;N;;;;; +14258;EGYPTIAN HIEROGLYPH-14258;Lo;0;L;;;;;N;;;;; +14259;EGYPTIAN HIEROGLYPH-14259;Lo;0;L;;;;;N;;;;; +1425A;EGYPTIAN HIEROGLYPH-1425A;Lo;0;L;;;;;N;;;;; +1425B;EGYPTIAN HIEROGLYPH-1425B;Lo;0;L;;;;;N;;;;; +1425C;EGYPTIAN HIEROGLYPH-1425C;Lo;0;L;;;;;N;;;;; +1425D;EGYPTIAN HIEROGLYPH-1425D;Lo;0;L;;;;;N;;;;; +1425E;EGYPTIAN HIEROGLYPH-1425E;Lo;0;L;;;;;N;;;;; +1425F;EGYPTIAN HIEROGLYPH-1425F;Lo;0;L;;;;;N;;;;; +14260;EGYPTIAN HIEROGLYPH-14260;Lo;0;L;;;;;N;;;;; +14261;EGYPTIAN HIEROGLYPH-14261;Lo;0;L;;;;;N;;;;; +14262;EGYPTIAN HIEROGLYPH-14262;Lo;0;L;;;;;N;;;;; +14263;EGYPTIAN HIEROGLYPH-14263;Lo;0;L;;;;;N;;;;; +14264;EGYPTIAN HIEROGLYPH-14264;Lo;0;L;;;;;N;;;;; +14265;EGYPTIAN HIEROGLYPH-14265;Lo;0;L;;;;;N;;;;; +14266;EGYPTIAN HIEROGLYPH-14266;Lo;0;L;;;;;N;;;;; +14267;EGYPTIAN HIEROGLYPH-14267;Lo;0;L;;;;;N;;;;; +14268;EGYPTIAN HIEROGLYPH-14268;Lo;0;L;;;;;N;;;;; +14269;EGYPTIAN HIEROGLYPH-14269;Lo;0;L;;;;;N;;;;; +1426A;EGYPTIAN HIEROGLYPH-1426A;Lo;0;L;;;;;N;;;;; +1426B;EGYPTIAN HIEROGLYPH-1426B;Lo;0;L;;;;;N;;;;; +1426C;EGYPTIAN HIEROGLYPH-1426C;Lo;0;L;;;;;N;;;;; +1426D;EGYPTIAN HIEROGLYPH-1426D;Lo;0;L;;;;;N;;;;; +1426E;EGYPTIAN HIEROGLYPH-1426E;Lo;0;L;;;;;N;;;;; +1426F;EGYPTIAN HIEROGLYPH-1426F;Lo;0;L;;;;;N;;;;; +14270;EGYPTIAN HIEROGLYPH-14270;Lo;0;L;;;;;N;;;;; +14271;EGYPTIAN HIEROGLYPH-14271;Lo;0;L;;;;;N;;;;; +14272;EGYPTIAN HIEROGLYPH-14272;Lo;0;L;;;;;N;;;;; +14273;EGYPTIAN HIEROGLYPH-14273;Lo;0;L;;;;;N;;;;; +14274;EGYPTIAN HIEROGLYPH-14274;Lo;0;L;;;;;N;;;;; +14275;EGYPTIAN HIEROGLYPH-14275;Lo;0;L;;;;;N;;;;; +14276;EGYPTIAN HIEROGLYPH-14276;Lo;0;L;;;;;N;;;;; +14277;EGYPTIAN HIEROGLYPH-14277;Lo;0;L;;;;;N;;;;; +14278;EGYPTIAN HIEROGLYPH-14278;Lo;0;L;;;;;N;;;;; +14279;EGYPTIAN HIEROGLYPH-14279;Lo;0;L;;;;;N;;;;; +1427A;EGYPTIAN HIEROGLYPH-1427A;Lo;0;L;;;;;N;;;;; +1427B;EGYPTIAN HIEROGLYPH-1427B;Lo;0;L;;;;;N;;;;; +1427C;EGYPTIAN HIEROGLYPH-1427C;Lo;0;L;;;;;N;;;;; +1427D;EGYPTIAN HIEROGLYPH-1427D;Lo;0;L;;;;;N;;;;; +1427E;EGYPTIAN HIEROGLYPH-1427E;Lo;0;L;;;;;N;;;;; +1427F;EGYPTIAN HIEROGLYPH-1427F;Lo;0;L;;;;;N;;;;; +14280;EGYPTIAN HIEROGLYPH-14280;Lo;0;L;;;;;N;;;;; +14281;EGYPTIAN HIEROGLYPH-14281;Lo;0;L;;;;;N;;;;; +14282;EGYPTIAN HIEROGLYPH-14282;Lo;0;L;;;;;N;;;;; +14283;EGYPTIAN HIEROGLYPH-14283;Lo;0;L;;;;;N;;;;; +14284;EGYPTIAN HIEROGLYPH-14284;Lo;0;L;;;;;N;;;;; +14285;EGYPTIAN HIEROGLYPH-14285;Lo;0;L;;;;;N;;;;; +14286;EGYPTIAN HIEROGLYPH-14286;Lo;0;L;;;;;N;;;;; +14287;EGYPTIAN HIEROGLYPH-14287;Lo;0;L;;;;;N;;;;; +14288;EGYPTIAN HIEROGLYPH-14288;Lo;0;L;;;;;N;;;;; +14289;EGYPTIAN HIEROGLYPH-14289;Lo;0;L;;;;;N;;;;; +1428A;EGYPTIAN HIEROGLYPH-1428A;Lo;0;L;;;;;N;;;;; +1428B;EGYPTIAN HIEROGLYPH-1428B;Lo;0;L;;;;;N;;;;; +1428C;EGYPTIAN HIEROGLYPH-1428C;Lo;0;L;;;;;N;;;;; +1428D;EGYPTIAN HIEROGLYPH-1428D;Lo;0;L;;;;;N;;;;; +1428E;EGYPTIAN HIEROGLYPH-1428E;Lo;0;L;;;;;N;;;;; +1428F;EGYPTIAN HIEROGLYPH-1428F;Lo;0;L;;;;;N;;;;; +14290;EGYPTIAN HIEROGLYPH-14290;Lo;0;L;;;;;N;;;;; +14291;EGYPTIAN HIEROGLYPH-14291;Lo;0;L;;;;;N;;;;; +14292;EGYPTIAN HIEROGLYPH-14292;Lo;0;L;;;;;N;;;;; +14293;EGYPTIAN HIEROGLYPH-14293;Lo;0;L;;;;;N;;;;; +14294;EGYPTIAN HIEROGLYPH-14294;Lo;0;L;;;;;N;;;;; +14295;EGYPTIAN HIEROGLYPH-14295;Lo;0;L;;;;;N;;;;; +14296;EGYPTIAN HIEROGLYPH-14296;Lo;0;L;;;;;N;;;;; +14297;EGYPTIAN HIEROGLYPH-14297;Lo;0;L;;;;;N;;;;; +14298;EGYPTIAN HIEROGLYPH-14298;Lo;0;L;;;;;N;;;;; +14299;EGYPTIAN HIEROGLYPH-14299;Lo;0;L;;;;;N;;;;; +1429A;EGYPTIAN HIEROGLYPH-1429A;Lo;0;L;;;;;N;;;;; +1429B;EGYPTIAN HIEROGLYPH-1429B;Lo;0;L;;;;;N;;;;; +1429C;EGYPTIAN HIEROGLYPH-1429C;Lo;0;L;;;;;N;;;;; +1429D;EGYPTIAN HIEROGLYPH-1429D;Lo;0;L;;;;;N;;;;; +1429E;EGYPTIAN HIEROGLYPH-1429E;Lo;0;L;;;;;N;;;;; +1429F;EGYPTIAN HIEROGLYPH-1429F;Lo;0;L;;;;;N;;;;; +142A0;EGYPTIAN HIEROGLYPH-142A0;Lo;0;L;;;;;N;;;;; +142A1;EGYPTIAN HIEROGLYPH-142A1;Lo;0;L;;;;;N;;;;; +142A2;EGYPTIAN HIEROGLYPH-142A2;Lo;0;L;;;;;N;;;;; +142A3;EGYPTIAN HIEROGLYPH-142A3;Lo;0;L;;;;;N;;;;; +142A4;EGYPTIAN HIEROGLYPH-142A4;Lo;0;L;;;;;N;;;;; +142A5;EGYPTIAN HIEROGLYPH-142A5;Lo;0;L;;;;;N;;;;; +142A6;EGYPTIAN HIEROGLYPH-142A6;Lo;0;L;;;;;N;;;;; +142A7;EGYPTIAN HIEROGLYPH-142A7;Lo;0;L;;;;;N;;;;; +142A8;EGYPTIAN HIEROGLYPH-142A8;Lo;0;L;;;;;N;;;;; +142A9;EGYPTIAN HIEROGLYPH-142A9;Lo;0;L;;;;;N;;;;; +142AA;EGYPTIAN HIEROGLYPH-142AA;Lo;0;L;;;;;N;;;;; +142AB;EGYPTIAN HIEROGLYPH-142AB;Lo;0;L;;;;;N;;;;; +142AC;EGYPTIAN HIEROGLYPH-142AC;Lo;0;L;;;;;N;;;;; +142AD;EGYPTIAN HIEROGLYPH-142AD;Lo;0;L;;;;;N;;;;; +142AE;EGYPTIAN HIEROGLYPH-142AE;Lo;0;L;;;;;N;;;;; +142AF;EGYPTIAN HIEROGLYPH-142AF;Lo;0;L;;;;;N;;;;; +142B0;EGYPTIAN HIEROGLYPH-142B0;Lo;0;L;;;;;N;;;;; +142B1;EGYPTIAN HIEROGLYPH-142B1;Lo;0;L;;;;;N;;;;; +142B2;EGYPTIAN HIEROGLYPH-142B2;Lo;0;L;;;;;N;;;;; +142B3;EGYPTIAN HIEROGLYPH-142B3;Lo;0;L;;;;;N;;;;; +142B4;EGYPTIAN HIEROGLYPH-142B4;Lo;0;L;;;;;N;;;;; +142B5;EGYPTIAN HIEROGLYPH-142B5;Lo;0;L;;;;;N;;;;; +142B6;EGYPTIAN HIEROGLYPH-142B6;Lo;0;L;;;;;N;;;;; +142B7;EGYPTIAN HIEROGLYPH-142B7;Lo;0;L;;;;;N;;;;; +142B8;EGYPTIAN HIEROGLYPH-142B8;Lo;0;L;;;;;N;;;;; +142B9;EGYPTIAN HIEROGLYPH-142B9;Lo;0;L;;;;;N;;;;; +142BA;EGYPTIAN HIEROGLYPH-142BA;Lo;0;L;;;;;N;;;;; +142BB;EGYPTIAN HIEROGLYPH-142BB;Lo;0;L;;;;;N;;;;; +142BC;EGYPTIAN HIEROGLYPH-142BC;Lo;0;L;;;;;N;;;;; +142BD;EGYPTIAN HIEROGLYPH-142BD;Lo;0;L;;;;;N;;;;; +142BE;EGYPTIAN HIEROGLYPH-142BE;Lo;0;L;;;;;N;;;;; +142BF;EGYPTIAN HIEROGLYPH-142BF;Lo;0;L;;;;;N;;;;; +142C0;EGYPTIAN HIEROGLYPH-142C0;Lo;0;L;;;;;N;;;;; +142C1;EGYPTIAN HIEROGLYPH-142C1;Lo;0;L;;;;;N;;;;; +142C2;EGYPTIAN HIEROGLYPH-142C2;Lo;0;L;;;;;N;;;;; +142C3;EGYPTIAN HIEROGLYPH-142C3;Lo;0;L;;;;;N;;;;; +142C4;EGYPTIAN HIEROGLYPH-142C4;Lo;0;L;;;;;N;;;;; +142C5;EGYPTIAN HIEROGLYPH-142C5;Lo;0;L;;;;;N;;;;; +142C6;EGYPTIAN HIEROGLYPH-142C6;Lo;0;L;;;;;N;;;;; +142C7;EGYPTIAN HIEROGLYPH-142C7;Lo;0;L;;;;;N;;;;; +142C8;EGYPTIAN HIEROGLYPH-142C8;Lo;0;L;;;;;N;;;;; +142C9;EGYPTIAN HIEROGLYPH-142C9;Lo;0;L;;;;;N;;;;; +142CA;EGYPTIAN HIEROGLYPH-142CA;Lo;0;L;;;;;N;;;;; +142CB;EGYPTIAN HIEROGLYPH-142CB;Lo;0;L;;;;;N;;;;; +142CC;EGYPTIAN HIEROGLYPH-142CC;Lo;0;L;;;;;N;;;;; +142CD;EGYPTIAN HIEROGLYPH-142CD;Lo;0;L;;;;;N;;;;; +142CE;EGYPTIAN HIEROGLYPH-142CE;Lo;0;L;;;;;N;;;;; +142CF;EGYPTIAN HIEROGLYPH-142CF;Lo;0;L;;;;;N;;;;; +142D0;EGYPTIAN HIEROGLYPH-142D0;Lo;0;L;;;;;N;;;;; +142D1;EGYPTIAN HIEROGLYPH-142D1;Lo;0;L;;;;;N;;;;; +142D2;EGYPTIAN HIEROGLYPH-142D2;Lo;0;L;;;;;N;;;;; +142D3;EGYPTIAN HIEROGLYPH-142D3;Lo;0;L;;;;;N;;;;; +142D4;EGYPTIAN HIEROGLYPH-142D4;Lo;0;L;;;;;N;;;;; +142D5;EGYPTIAN HIEROGLYPH-142D5;Lo;0;L;;;;;N;;;;; +142D6;EGYPTIAN HIEROGLYPH-142D6;Lo;0;L;;;;;N;;;;; +142D7;EGYPTIAN HIEROGLYPH-142D7;Lo;0;L;;;;;N;;;;; +142D8;EGYPTIAN HIEROGLYPH-142D8;Lo;0;L;;;;;N;;;;; +142D9;EGYPTIAN HIEROGLYPH-142D9;Lo;0;L;;;;;N;;;;; +142DA;EGYPTIAN HIEROGLYPH-142DA;Lo;0;L;;;;;N;;;;; +142DB;EGYPTIAN HIEROGLYPH-142DB;Lo;0;L;;;;;N;;;;; +142DC;EGYPTIAN HIEROGLYPH-142DC;Lo;0;L;;;;;N;;;;; +142DD;EGYPTIAN HIEROGLYPH-142DD;Lo;0;L;;;;;N;;;;; +142DE;EGYPTIAN HIEROGLYPH-142DE;Lo;0;L;;;;;N;;;;; +142DF;EGYPTIAN HIEROGLYPH-142DF;Lo;0;L;;;;;N;;;;; +142E0;EGYPTIAN HIEROGLYPH-142E0;Lo;0;L;;;;;N;;;;; +142E1;EGYPTIAN HIEROGLYPH-142E1;Lo;0;L;;;;;N;;;;; +142E2;EGYPTIAN HIEROGLYPH-142E2;Lo;0;L;;;;;N;;;;; +142E3;EGYPTIAN HIEROGLYPH-142E3;Lo;0;L;;;;;N;;;;; +142E4;EGYPTIAN HIEROGLYPH-142E4;Lo;0;L;;;;;N;;;;; +142E5;EGYPTIAN HIEROGLYPH-142E5;Lo;0;L;;;;;N;;;;; +142E6;EGYPTIAN HIEROGLYPH-142E6;Lo;0;L;;;;;N;;;;; +142E7;EGYPTIAN HIEROGLYPH-142E7;Lo;0;L;;;;;N;;;;; +142E8;EGYPTIAN HIEROGLYPH-142E8;Lo;0;L;;;;;N;;;;; +142E9;EGYPTIAN HIEROGLYPH-142E9;Lo;0;L;;;;;N;;;;; +142EA;EGYPTIAN HIEROGLYPH-142EA;Lo;0;L;;;;;N;;;;; +142EB;EGYPTIAN HIEROGLYPH-142EB;Lo;0;L;;;;;N;;;;; +142EC;EGYPTIAN HIEROGLYPH-142EC;Lo;0;L;;;;;N;;;;; +142ED;EGYPTIAN HIEROGLYPH-142ED;Lo;0;L;;;;;N;;;;; +142EE;EGYPTIAN HIEROGLYPH-142EE;Lo;0;L;;;;;N;;;;; +142EF;EGYPTIAN HIEROGLYPH-142EF;Lo;0;L;;;;;N;;;;; +142F0;EGYPTIAN HIEROGLYPH-142F0;Lo;0;L;;;;;N;;;;; +142F1;EGYPTIAN HIEROGLYPH-142F1;Lo;0;L;;;;;N;;;;; +142F2;EGYPTIAN HIEROGLYPH-142F2;Lo;0;L;;;;;N;;;;; +142F3;EGYPTIAN HIEROGLYPH-142F3;Lo;0;L;;;;;N;;;;; +142F4;EGYPTIAN HIEROGLYPH-142F4;Lo;0;L;;;;;N;;;;; +142F5;EGYPTIAN HIEROGLYPH-142F5;Lo;0;L;;;;;N;;;;; +142F6;EGYPTIAN HIEROGLYPH-142F6;Lo;0;L;;;;;N;;;;; +142F7;EGYPTIAN HIEROGLYPH-142F7;Lo;0;L;;;;;N;;;;; +142F8;EGYPTIAN HIEROGLYPH-142F8;Lo;0;L;;;;;N;;;;; +142F9;EGYPTIAN HIEROGLYPH-142F9;Lo;0;L;;;;;N;;;;; +142FA;EGYPTIAN HIEROGLYPH-142FA;Lo;0;L;;;;;N;;;;; +142FB;EGYPTIAN HIEROGLYPH-142FB;Lo;0;L;;;;;N;;;;; +142FC;EGYPTIAN HIEROGLYPH-142FC;Lo;0;L;;;;;N;;;;; +142FD;EGYPTIAN HIEROGLYPH-142FD;Lo;0;L;;;;;N;;;;; +142FE;EGYPTIAN HIEROGLYPH-142FE;Lo;0;L;;;;;N;;;;; +142FF;EGYPTIAN HIEROGLYPH-142FF;Lo;0;L;;;;;N;;;;; +14300;EGYPTIAN HIEROGLYPH-14300;Lo;0;L;;;;;N;;;;; +14301;EGYPTIAN HIEROGLYPH-14301;Lo;0;L;;;;;N;;;;; +14302;EGYPTIAN HIEROGLYPH-14302;Lo;0;L;;;;;N;;;;; +14303;EGYPTIAN HIEROGLYPH-14303;Lo;0;L;;;;;N;;;;; +14304;EGYPTIAN HIEROGLYPH-14304;Lo;0;L;;;;;N;;;;; +14305;EGYPTIAN HIEROGLYPH-14305;Lo;0;L;;;;;N;;;;; +14306;EGYPTIAN HIEROGLYPH-14306;Lo;0;L;;;;;N;;;;; +14307;EGYPTIAN HIEROGLYPH-14307;Lo;0;L;;;;;N;;;;; +14308;EGYPTIAN HIEROGLYPH-14308;Lo;0;L;;;;;N;;;;; +14309;EGYPTIAN HIEROGLYPH-14309;Lo;0;L;;;;;N;;;;; +1430A;EGYPTIAN HIEROGLYPH-1430A;Lo;0;L;;;;;N;;;;; +1430B;EGYPTIAN HIEROGLYPH-1430B;Lo;0;L;;;;;N;;;;; +1430C;EGYPTIAN HIEROGLYPH-1430C;Lo;0;L;;;;;N;;;;; +1430D;EGYPTIAN HIEROGLYPH-1430D;Lo;0;L;;;;;N;;;;; +1430E;EGYPTIAN HIEROGLYPH-1430E;Lo;0;L;;;;;N;;;;; +1430F;EGYPTIAN HIEROGLYPH-1430F;Lo;0;L;;;;;N;;;;; +14310;EGYPTIAN HIEROGLYPH-14310;Lo;0;L;;;;;N;;;;; +14311;EGYPTIAN HIEROGLYPH-14311;Lo;0;L;;;;;N;;;;; +14312;EGYPTIAN HIEROGLYPH-14312;Lo;0;L;;;;;N;;;;; +14313;EGYPTIAN HIEROGLYPH-14313;Lo;0;L;;;;;N;;;;; +14314;EGYPTIAN HIEROGLYPH-14314;Lo;0;L;;;;;N;;;;; +14315;EGYPTIAN HIEROGLYPH-14315;Lo;0;L;;;;;N;;;;; +14316;EGYPTIAN HIEROGLYPH-14316;Lo;0;L;;;;;N;;;;; +14317;EGYPTIAN HIEROGLYPH-14317;Lo;0;L;;;;;N;;;;; +14318;EGYPTIAN HIEROGLYPH-14318;Lo;0;L;;;;;N;;;;; +14319;EGYPTIAN HIEROGLYPH-14319;Lo;0;L;;;;;N;;;;; +1431A;EGYPTIAN HIEROGLYPH-1431A;Lo;0;L;;;;;N;;;;; +1431B;EGYPTIAN HIEROGLYPH-1431B;Lo;0;L;;;;;N;;;;; +1431C;EGYPTIAN HIEROGLYPH-1431C;Lo;0;L;;;;;N;;;;; +1431D;EGYPTIAN HIEROGLYPH-1431D;Lo;0;L;;;;;N;;;;; +1431E;EGYPTIAN HIEROGLYPH-1431E;Lo;0;L;;;;;N;;;;; +1431F;EGYPTIAN HIEROGLYPH-1431F;Lo;0;L;;;;;N;;;;; +14320;EGYPTIAN HIEROGLYPH-14320;Lo;0;L;;;;;N;;;;; +14321;EGYPTIAN HIEROGLYPH-14321;Lo;0;L;;;;;N;;;;; +14322;EGYPTIAN HIEROGLYPH-14322;Lo;0;L;;;;;N;;;;; +14323;EGYPTIAN HIEROGLYPH-14323;Lo;0;L;;;;;N;;;;; +14324;EGYPTIAN HIEROGLYPH-14324;Lo;0;L;;;;;N;;;;; +14325;EGYPTIAN HIEROGLYPH-14325;Lo;0;L;;;;;N;;;;; +14326;EGYPTIAN HIEROGLYPH-14326;Lo;0;L;;;;;N;;;;; +14327;EGYPTIAN HIEROGLYPH-14327;Lo;0;L;;;;;N;;;;; +14328;EGYPTIAN HIEROGLYPH-14328;Lo;0;L;;;;;N;;;;; +14329;EGYPTIAN HIEROGLYPH-14329;Lo;0;L;;;;;N;;;;; +1432A;EGYPTIAN HIEROGLYPH-1432A;Lo;0;L;;;;;N;;;;; +1432B;EGYPTIAN HIEROGLYPH-1432B;Lo;0;L;;;;;N;;;;; +1432C;EGYPTIAN HIEROGLYPH-1432C;Lo;0;L;;;;;N;;;;; +1432D;EGYPTIAN HIEROGLYPH-1432D;Lo;0;L;;;;;N;;;;; +1432E;EGYPTIAN HIEROGLYPH-1432E;Lo;0;L;;;;;N;;;;; +1432F;EGYPTIAN HIEROGLYPH-1432F;Lo;0;L;;;;;N;;;;; +14330;EGYPTIAN HIEROGLYPH-14330;Lo;0;L;;;;;N;;;;; +14331;EGYPTIAN HIEROGLYPH-14331;Lo;0;L;;;;;N;;;;; +14332;EGYPTIAN HIEROGLYPH-14332;Lo;0;L;;;;;N;;;;; +14333;EGYPTIAN HIEROGLYPH-14333;Lo;0;L;;;;;N;;;;; +14334;EGYPTIAN HIEROGLYPH-14334;Lo;0;L;;;;;N;;;;; +14335;EGYPTIAN HIEROGLYPH-14335;Lo;0;L;;;;;N;;;;; +14336;EGYPTIAN HIEROGLYPH-14336;Lo;0;L;;;;;N;;;;; +14337;EGYPTIAN HIEROGLYPH-14337;Lo;0;L;;;;;N;;;;; +14338;EGYPTIAN HIEROGLYPH-14338;Lo;0;L;;;;;N;;;;; +14339;EGYPTIAN HIEROGLYPH-14339;Lo;0;L;;;;;N;;;;; +1433A;EGYPTIAN HIEROGLYPH-1433A;Lo;0;L;;;;;N;;;;; +1433B;EGYPTIAN HIEROGLYPH-1433B;Lo;0;L;;;;;N;;;;; +1433C;EGYPTIAN HIEROGLYPH-1433C;Lo;0;L;;;;;N;;;;; +1433D;EGYPTIAN HIEROGLYPH-1433D;Lo;0;L;;;;;N;;;;; +1433E;EGYPTIAN HIEROGLYPH-1433E;Lo;0;L;;;;;N;;;;; +1433F;EGYPTIAN HIEROGLYPH-1433F;Lo;0;L;;;;;N;;;;; +14340;EGYPTIAN HIEROGLYPH-14340;Lo;0;L;;;;;N;;;;; +14341;EGYPTIAN HIEROGLYPH-14341;Lo;0;L;;;;;N;;;;; +14342;EGYPTIAN HIEROGLYPH-14342;Lo;0;L;;;;;N;;;;; +14343;EGYPTIAN HIEROGLYPH-14343;Lo;0;L;;;;;N;;;;; +14344;EGYPTIAN HIEROGLYPH-14344;Lo;0;L;;;;;N;;;;; +14345;EGYPTIAN HIEROGLYPH-14345;Lo;0;L;;;;;N;;;;; +14346;EGYPTIAN HIEROGLYPH-14346;Lo;0;L;;;;;N;;;;; +14347;EGYPTIAN HIEROGLYPH-14347;Lo;0;L;;;;;N;;;;; +14348;EGYPTIAN HIEROGLYPH-14348;Lo;0;L;;;;;N;;;;; +14349;EGYPTIAN HIEROGLYPH-14349;Lo;0;L;;;;;N;;;;; +1434A;EGYPTIAN HIEROGLYPH-1434A;Lo;0;L;;;;;N;;;;; +1434B;EGYPTIAN HIEROGLYPH-1434B;Lo;0;L;;;;;N;;;;; +1434C;EGYPTIAN HIEROGLYPH-1434C;Lo;0;L;;;;;N;;;;; +1434D;EGYPTIAN HIEROGLYPH-1434D;Lo;0;L;;;;;N;;;;; +1434E;EGYPTIAN HIEROGLYPH-1434E;Lo;0;L;;;;;N;;;;; +1434F;EGYPTIAN HIEROGLYPH-1434F;Lo;0;L;;;;;N;;;;; +14350;EGYPTIAN HIEROGLYPH-14350;Lo;0;L;;;;;N;;;;; +14351;EGYPTIAN HIEROGLYPH-14351;Lo;0;L;;;;;N;;;;; +14352;EGYPTIAN HIEROGLYPH-14352;Lo;0;L;;;;;N;;;;; +14353;EGYPTIAN HIEROGLYPH-14353;Lo;0;L;;;;;N;;;;; +14354;EGYPTIAN HIEROGLYPH-14354;Lo;0;L;;;;;N;;;;; +14355;EGYPTIAN HIEROGLYPH-14355;Lo;0;L;;;;;N;;;;; +14356;EGYPTIAN HIEROGLYPH-14356;Lo;0;L;;;;;N;;;;; +14357;EGYPTIAN HIEROGLYPH-14357;Lo;0;L;;;;;N;;;;; +14358;EGYPTIAN HIEROGLYPH-14358;Lo;0;L;;;;;N;;;;; +14359;EGYPTIAN HIEROGLYPH-14359;Lo;0;L;;;;;N;;;;; +1435A;EGYPTIAN HIEROGLYPH-1435A;Lo;0;L;;;;;N;;;;; +1435B;EGYPTIAN HIEROGLYPH-1435B;Lo;0;L;;;;;N;;;;; +1435C;EGYPTIAN HIEROGLYPH-1435C;Lo;0;L;;;;;N;;;;; +1435D;EGYPTIAN HIEROGLYPH-1435D;Lo;0;L;;;;;N;;;;; +1435E;EGYPTIAN HIEROGLYPH-1435E;Lo;0;L;;;;;N;;;;; +1435F;EGYPTIAN HIEROGLYPH-1435F;Lo;0;L;;;;;N;;;;; +14360;EGYPTIAN HIEROGLYPH-14360;Lo;0;L;;;;;N;;;;; +14361;EGYPTIAN HIEROGLYPH-14361;Lo;0;L;;;;;N;;;;; +14362;EGYPTIAN HIEROGLYPH-14362;Lo;0;L;;;;;N;;;;; +14363;EGYPTIAN HIEROGLYPH-14363;Lo;0;L;;;;;N;;;;; +14364;EGYPTIAN HIEROGLYPH-14364;Lo;0;L;;;;;N;;;;; +14365;EGYPTIAN HIEROGLYPH-14365;Lo;0;L;;;;;N;;;;; +14366;EGYPTIAN HIEROGLYPH-14366;Lo;0;L;;;;;N;;;;; +14367;EGYPTIAN HIEROGLYPH-14367;Lo;0;L;;;;;N;;;;; +14368;EGYPTIAN HIEROGLYPH-14368;Lo;0;L;;;;;N;;;;; +14369;EGYPTIAN HIEROGLYPH-14369;Lo;0;L;;;;;N;;;;; +1436A;EGYPTIAN HIEROGLYPH-1436A;Lo;0;L;;;;;N;;;;; +1436B;EGYPTIAN HIEROGLYPH-1436B;Lo;0;L;;;;;N;;;;; +1436C;EGYPTIAN HIEROGLYPH-1436C;Lo;0;L;;;;;N;;;;; +1436D;EGYPTIAN HIEROGLYPH-1436D;Lo;0;L;;;;;N;;;;; +1436E;EGYPTIAN HIEROGLYPH-1436E;Lo;0;L;;;;;N;;;;; +1436F;EGYPTIAN HIEROGLYPH-1436F;Lo;0;L;;;;;N;;;;; +14370;EGYPTIAN HIEROGLYPH-14370;Lo;0;L;;;;;N;;;;; +14371;EGYPTIAN HIEROGLYPH-14371;Lo;0;L;;;;;N;;;;; +14372;EGYPTIAN HIEROGLYPH-14372;Lo;0;L;;;;;N;;;;; +14373;EGYPTIAN HIEROGLYPH-14373;Lo;0;L;;;;;N;;;;; +14374;EGYPTIAN HIEROGLYPH-14374;Lo;0;L;;;;;N;;;;; +14375;EGYPTIAN HIEROGLYPH-14375;Lo;0;L;;;;;N;;;;; +14376;EGYPTIAN HIEROGLYPH-14376;Lo;0;L;;;;;N;;;;; +14377;EGYPTIAN HIEROGLYPH-14377;Lo;0;L;;;;;N;;;;; +14378;EGYPTIAN HIEROGLYPH-14378;Lo;0;L;;;;;N;;;;; +14379;EGYPTIAN HIEROGLYPH-14379;Lo;0;L;;;;;N;;;;; +1437A;EGYPTIAN HIEROGLYPH-1437A;Lo;0;L;;;;;N;;;;; +1437B;EGYPTIAN HIEROGLYPH-1437B;Lo;0;L;;;;;N;;;;; +1437C;EGYPTIAN HIEROGLYPH-1437C;Lo;0;L;;;;;N;;;;; +1437D;EGYPTIAN HIEROGLYPH-1437D;Lo;0;L;;;;;N;;;;; +1437E;EGYPTIAN HIEROGLYPH-1437E;Lo;0;L;;;;;N;;;;; +1437F;EGYPTIAN HIEROGLYPH-1437F;Lo;0;L;;;;;N;;;;; +14380;EGYPTIAN HIEROGLYPH-14380;Lo;0;L;;;;;N;;;;; +14381;EGYPTIAN HIEROGLYPH-14381;Lo;0;L;;;;;N;;;;; +14382;EGYPTIAN HIEROGLYPH-14382;Lo;0;L;;;;;N;;;;; +14383;EGYPTIAN HIEROGLYPH-14383;Lo;0;L;;;;;N;;;;; +14384;EGYPTIAN HIEROGLYPH-14384;Lo;0;L;;;;;N;;;;; +14385;EGYPTIAN HIEROGLYPH-14385;Lo;0;L;;;;;N;;;;; +14386;EGYPTIAN HIEROGLYPH-14386;Lo;0;L;;;;;N;;;;; +14387;EGYPTIAN HIEROGLYPH-14387;Lo;0;L;;;;;N;;;;; +14388;EGYPTIAN HIEROGLYPH-14388;Lo;0;L;;;;;N;;;;; +14389;EGYPTIAN HIEROGLYPH-14389;Lo;0;L;;;;;N;;;;; +1438A;EGYPTIAN HIEROGLYPH-1438A;Lo;0;L;;;;;N;;;;; +1438B;EGYPTIAN HIEROGLYPH-1438B;Lo;0;L;;;;;N;;;;; +1438C;EGYPTIAN HIEROGLYPH-1438C;Lo;0;L;;;;;N;;;;; +1438D;EGYPTIAN HIEROGLYPH-1438D;Lo;0;L;;;;;N;;;;; +1438E;EGYPTIAN HIEROGLYPH-1438E;Lo;0;L;;;;;N;;;;; +1438F;EGYPTIAN HIEROGLYPH-1438F;Lo;0;L;;;;;N;;;;; +14390;EGYPTIAN HIEROGLYPH-14390;Lo;0;L;;;;;N;;;;; +14391;EGYPTIAN HIEROGLYPH-14391;Lo;0;L;;;;;N;;;;; +14392;EGYPTIAN HIEROGLYPH-14392;Lo;0;L;;;;;N;;;;; +14393;EGYPTIAN HIEROGLYPH-14393;Lo;0;L;;;;;N;;;;; +14394;EGYPTIAN HIEROGLYPH-14394;Lo;0;L;;;;;N;;;;; +14395;EGYPTIAN HIEROGLYPH-14395;Lo;0;L;;;;;N;;;;; +14396;EGYPTIAN HIEROGLYPH-14396;Lo;0;L;;;;;N;;;;; +14397;EGYPTIAN HIEROGLYPH-14397;Lo;0;L;;;;;N;;;;; +14398;EGYPTIAN HIEROGLYPH-14398;Lo;0;L;;;;;N;;;;; +14399;EGYPTIAN HIEROGLYPH-14399;Lo;0;L;;;;;N;;;;; +1439A;EGYPTIAN HIEROGLYPH-1439A;Lo;0;L;;;;;N;;;;; +1439B;EGYPTIAN HIEROGLYPH-1439B;Lo;0;L;;;;;N;;;;; +1439C;EGYPTIAN HIEROGLYPH-1439C;Lo;0;L;;;;;N;;;;; +1439D;EGYPTIAN HIEROGLYPH-1439D;Lo;0;L;;;;;N;;;;; +1439E;EGYPTIAN HIEROGLYPH-1439E;Lo;0;L;;;;;N;;;;; +1439F;EGYPTIAN HIEROGLYPH-1439F;Lo;0;L;;;;;N;;;;; +143A0;EGYPTIAN HIEROGLYPH-143A0;Lo;0;L;;;;;N;;;;; +143A1;EGYPTIAN HIEROGLYPH-143A1;Lo;0;L;;;;;N;;;;; +143A2;EGYPTIAN HIEROGLYPH-143A2;Lo;0;L;;;;;N;;;;; +143A3;EGYPTIAN HIEROGLYPH-143A3;Lo;0;L;;;;;N;;;;; +143A4;EGYPTIAN HIEROGLYPH-143A4;Lo;0;L;;;;;N;;;;; +143A5;EGYPTIAN HIEROGLYPH-143A5;Lo;0;L;;;;;N;;;;; +143A6;EGYPTIAN HIEROGLYPH-143A6;Lo;0;L;;;;;N;;;;; +143A7;EGYPTIAN HIEROGLYPH-143A7;Lo;0;L;;;;;N;;;;; +143A8;EGYPTIAN HIEROGLYPH-143A8;Lo;0;L;;;;;N;;;;; +143A9;EGYPTIAN HIEROGLYPH-143A9;Lo;0;L;;;;;N;;;;; +143AA;EGYPTIAN HIEROGLYPH-143AA;Lo;0;L;;;;;N;;;;; +143AB;EGYPTIAN HIEROGLYPH-143AB;Lo;0;L;;;;;N;;;;; +143AC;EGYPTIAN HIEROGLYPH-143AC;Lo;0;L;;;;;N;;;;; +143AD;EGYPTIAN HIEROGLYPH-143AD;Lo;0;L;;;;;N;;;;; +143AE;EGYPTIAN HIEROGLYPH-143AE;Lo;0;L;;;;;N;;;;; +143AF;EGYPTIAN HIEROGLYPH-143AF;Lo;0;L;;;;;N;;;;; +143B0;EGYPTIAN HIEROGLYPH-143B0;Lo;0;L;;;;;N;;;;; +143B1;EGYPTIAN HIEROGLYPH-143B1;Lo;0;L;;;;;N;;;;; +143B2;EGYPTIAN HIEROGLYPH-143B2;Lo;0;L;;;;;N;;;;; +143B3;EGYPTIAN HIEROGLYPH-143B3;Lo;0;L;;;;;N;;;;; +143B4;EGYPTIAN HIEROGLYPH-143B4;Lo;0;L;;;;;N;;;;; +143B5;EGYPTIAN HIEROGLYPH-143B5;Lo;0;L;;;;;N;;;;; +143B6;EGYPTIAN HIEROGLYPH-143B6;Lo;0;L;;;;;N;;;;; +143B7;EGYPTIAN HIEROGLYPH-143B7;Lo;0;L;;;;;N;;;;; +143B8;EGYPTIAN HIEROGLYPH-143B8;Lo;0;L;;;;;N;;;;; +143B9;EGYPTIAN HIEROGLYPH-143B9;Lo;0;L;;;;;N;;;;; +143BA;EGYPTIAN HIEROGLYPH-143BA;Lo;0;L;;;;;N;;;;; +143BB;EGYPTIAN HIEROGLYPH-143BB;Lo;0;L;;;;;N;;;;; +143BC;EGYPTIAN HIEROGLYPH-143BC;Lo;0;L;;;;;N;;;;; +143BD;EGYPTIAN HIEROGLYPH-143BD;Lo;0;L;;;;;N;;;;; +143BE;EGYPTIAN HIEROGLYPH-143BE;Lo;0;L;;;;;N;;;;; +143BF;EGYPTIAN HIEROGLYPH-143BF;Lo;0;L;;;;;N;;;;; +143C0;EGYPTIAN HIEROGLYPH-143C0;Lo;0;L;;;;;N;;;;; +143C1;EGYPTIAN HIEROGLYPH-143C1;Lo;0;L;;;;;N;;;;; +143C2;EGYPTIAN HIEROGLYPH-143C2;Lo;0;L;;;;;N;;;;; +143C3;EGYPTIAN HIEROGLYPH-143C3;Lo;0;L;;;;;N;;;;; +143C4;EGYPTIAN HIEROGLYPH-143C4;Lo;0;L;;;;;N;;;;; +143C5;EGYPTIAN HIEROGLYPH-143C5;Lo;0;L;;;;;N;;;;; +143C6;EGYPTIAN HIEROGLYPH-143C6;Lo;0;L;;;;;N;;;;; +143C7;EGYPTIAN HIEROGLYPH-143C7;Lo;0;L;;;;;N;;;;; +143C8;EGYPTIAN HIEROGLYPH-143C8;Lo;0;L;;;;;N;;;;; +143C9;EGYPTIAN HIEROGLYPH-143C9;Lo;0;L;;;;;N;;;;; +143CA;EGYPTIAN HIEROGLYPH-143CA;Lo;0;L;;;;;N;;;;; +143CB;EGYPTIAN HIEROGLYPH-143CB;Lo;0;L;;;;;N;;;;; +143CC;EGYPTIAN HIEROGLYPH-143CC;Lo;0;L;;;;;N;;;;; +143CD;EGYPTIAN HIEROGLYPH-143CD;Lo;0;L;;;;;N;;;;; +143CE;EGYPTIAN HIEROGLYPH-143CE;Lo;0;L;;;;;N;;;;; +143CF;EGYPTIAN HIEROGLYPH-143CF;Lo;0;L;;;;;N;;;;; +143D0;EGYPTIAN HIEROGLYPH-143D0;Lo;0;L;;;;;N;;;;; +143D1;EGYPTIAN HIEROGLYPH-143D1;Lo;0;L;;;;;N;;;;; +143D2;EGYPTIAN HIEROGLYPH-143D2;Lo;0;L;;;;;N;;;;; +143D3;EGYPTIAN HIEROGLYPH-143D3;Lo;0;L;;;;;N;;;;; +143D4;EGYPTIAN HIEROGLYPH-143D4;Lo;0;L;;;;;N;;;;; +143D5;EGYPTIAN HIEROGLYPH-143D5;Lo;0;L;;;;;N;;;;; +143D6;EGYPTIAN HIEROGLYPH-143D6;Lo;0;L;;;;;N;;;;; +143D7;EGYPTIAN HIEROGLYPH-143D7;Lo;0;L;;;;;N;;;;; +143D8;EGYPTIAN HIEROGLYPH-143D8;Lo;0;L;;;;;N;;;;; +143D9;EGYPTIAN HIEROGLYPH-143D9;Lo;0;L;;;;;N;;;;; +143DA;EGYPTIAN HIEROGLYPH-143DA;Lo;0;L;;;;;N;;;;; +143DB;EGYPTIAN HIEROGLYPH-143DB;Lo;0;L;;;;;N;;;;; +143DC;EGYPTIAN HIEROGLYPH-143DC;Lo;0;L;;;;;N;;;;; +143DD;EGYPTIAN HIEROGLYPH-143DD;Lo;0;L;;;;;N;;;;; +143DE;EGYPTIAN HIEROGLYPH-143DE;Lo;0;L;;;;;N;;;;; +143DF;EGYPTIAN HIEROGLYPH-143DF;Lo;0;L;;;;;N;;;;; +143E0;EGYPTIAN HIEROGLYPH-143E0;Lo;0;L;;;;;N;;;;; +143E1;EGYPTIAN HIEROGLYPH-143E1;Lo;0;L;;;;;N;;;;; +143E2;EGYPTIAN HIEROGLYPH-143E2;Lo;0;L;;;;;N;;;;; +143E3;EGYPTIAN HIEROGLYPH-143E3;Lo;0;L;;;;;N;;;;; +143E4;EGYPTIAN HIEROGLYPH-143E4;Lo;0;L;;;;;N;;;;; +143E5;EGYPTIAN HIEROGLYPH-143E5;Lo;0;L;;;;;N;;;;; +143E6;EGYPTIAN HIEROGLYPH-143E6;Lo;0;L;;;;;N;;;;; +143E7;EGYPTIAN HIEROGLYPH-143E7;Lo;0;L;;;;;N;;;;; +143E8;EGYPTIAN HIEROGLYPH-143E8;Lo;0;L;;;;;N;;;;; +143E9;EGYPTIAN HIEROGLYPH-143E9;Lo;0;L;;;;;N;;;;; +143EA;EGYPTIAN HIEROGLYPH-143EA;Lo;0;L;;;;;N;;;;; +143EB;EGYPTIAN HIEROGLYPH-143EB;Lo;0;L;;;;;N;;;;; +143EC;EGYPTIAN HIEROGLYPH-143EC;Lo;0;L;;;;;N;;;;; +143ED;EGYPTIAN HIEROGLYPH-143ED;Lo;0;L;;;;;N;;;;; +143EE;EGYPTIAN HIEROGLYPH-143EE;Lo;0;L;;;;;N;;;;; +143EF;EGYPTIAN HIEROGLYPH-143EF;Lo;0;L;;;;;N;;;;; +143F0;EGYPTIAN HIEROGLYPH-143F0;Lo;0;L;;;;;N;;;;; +143F1;EGYPTIAN HIEROGLYPH-143F1;Lo;0;L;;;;;N;;;;; +143F2;EGYPTIAN HIEROGLYPH-143F2;Lo;0;L;;;;;N;;;;; +143F3;EGYPTIAN HIEROGLYPH-143F3;Lo;0;L;;;;;N;;;;; +143F4;EGYPTIAN HIEROGLYPH-143F4;Lo;0;L;;;;;N;;;;; +143F5;EGYPTIAN HIEROGLYPH-143F5;Lo;0;L;;;;;N;;;;; +143F6;EGYPTIAN HIEROGLYPH-143F6;Lo;0;L;;;;;N;;;;; +143F7;EGYPTIAN HIEROGLYPH-143F7;Lo;0;L;;;;;N;;;;; +143F8;EGYPTIAN HIEROGLYPH-143F8;Lo;0;L;;;;;N;;;;; +143F9;EGYPTIAN HIEROGLYPH-143F9;Lo;0;L;;;;;N;;;;; +143FA;EGYPTIAN HIEROGLYPH-143FA;Lo;0;L;;;;;N;;;;; 14400;ANATOLIAN HIEROGLYPH A001;Lo;0;L;;;;;N;;;;; 14401;ANATOLIAN HIEROGLYPH A002;Lo;0;L;;;;;N;;;;; 14402;ANATOLIAN HIEROGLYPH A003;Lo;0;L;;;;;N;;;;; @@ -24771,6 +29053,64 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 14644;ANATOLIAN HIEROGLYPH A528;Lo;0;L;;;;;N;;;;; 14645;ANATOLIAN HIEROGLYPH A529;Lo;0;L;;;;;N;;;;; 14646;ANATOLIAN HIEROGLYPH A530;Lo;0;L;;;;;N;;;;; +16100;GURUNG KHEMA LETTER A;Lo;0;L;;;;;N;;;;; +16101;GURUNG KHEMA LETTER KA;Lo;0;L;;;;;N;;;;; +16102;GURUNG KHEMA LETTER KHA;Lo;0;L;;;;;N;;;;; +16103;GURUNG KHEMA LETTER GA;Lo;0;L;;;;;N;;;;; +16104;GURUNG KHEMA LETTER GHA;Lo;0;L;;;;;N;;;;; +16105;GURUNG KHEMA LETTER NGA;Lo;0;L;;;;;N;;;;; +16106;GURUNG KHEMA LETTER CA;Lo;0;L;;;;;N;;;;; +16107;GURUNG KHEMA LETTER CHA;Lo;0;L;;;;;N;;;;; +16108;GURUNG KHEMA LETTER JA;Lo;0;L;;;;;N;;;;; +16109;GURUNG KHEMA LETTER JHA;Lo;0;L;;;;;N;;;;; +1610A;GURUNG KHEMA LETTER HA;Lo;0;L;;;;;N;;;;; +1610B;GURUNG KHEMA LETTER TTA;Lo;0;L;;;;;N;;;;; +1610C;GURUNG KHEMA LETTER TTHA;Lo;0;L;;;;;N;;;;; +1610D;GURUNG KHEMA LETTER DDA;Lo;0;L;;;;;N;;;;; +1610E;GURUNG KHEMA LETTER DDHA;Lo;0;L;;;;;N;;;;; +1610F;GURUNG KHEMA LETTER VA;Lo;0;L;;;;;N;;;;; +16110;GURUNG KHEMA LETTER TA;Lo;0;L;;;;;N;;;;; +16111;GURUNG KHEMA LETTER THA;Lo;0;L;;;;;N;;;;; +16112;GURUNG KHEMA LETTER DA;Lo;0;L;;;;;N;;;;; +16113;GURUNG KHEMA LETTER DHA;Lo;0;L;;;;;N;;;;; +16114;GURUNG KHEMA LETTER NA;Lo;0;L;;;;;N;;;;; +16115;GURUNG KHEMA LETTER PA;Lo;0;L;;;;;N;;;;; +16116;GURUNG KHEMA LETTER PHA;Lo;0;L;;;;;N;;;;; +16117;GURUNG KHEMA LETTER BA;Lo;0;L;;;;;N;;;;; +16118;GURUNG KHEMA LETTER BHA;Lo;0;L;;;;;N;;;;; +16119;GURUNG KHEMA LETTER MA;Lo;0;L;;;;;N;;;;; +1611A;GURUNG KHEMA LETTER YA;Lo;0;L;;;;;N;;;;; +1611B;GURUNG KHEMA LETTER RA;Lo;0;L;;;;;N;;;;; +1611C;GURUNG KHEMA LETTER LA;Lo;0;L;;;;;N;;;;; +1611D;GURUNG KHEMA LETTER SA;Lo;0;L;;;;;N;;;;; +1611E;GURUNG KHEMA VOWEL SIGN AA;Mn;0;NSM;;;;;N;;;;; +1611F;GURUNG KHEMA VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; +16120;GURUNG KHEMA VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; +16121;GURUNG KHEMA VOWEL SIGN U;Mn;0;NSM;1611E 1611E;;;;N;;;;; +16122;GURUNG KHEMA VOWEL SIGN UU;Mn;0;NSM;1611E 16129;;;;N;;;;; +16123;GURUNG KHEMA VOWEL SIGN E;Mn;0;NSM;1611E 1611F;;;;N;;;;; +16124;GURUNG KHEMA VOWEL SIGN EE;Mn;0;NSM;16129 1611F;;;;N;;;;; +16125;GURUNG KHEMA VOWEL SIGN AI;Mn;0;NSM;1611E 16120;;;;N;;;;; +16126;GURUNG KHEMA VOWEL SIGN O;Mn;0;NSM;16121 1611F;;;;N;;;;; +16127;GURUNG KHEMA VOWEL SIGN OO;Mn;0;NSM;16122 1611F;;;;N;;;;; +16128;GURUNG KHEMA VOWEL SIGN AU;Mn;0;NSM;16121 16120;;;;N;;;;; +16129;GURUNG KHEMA VOWEL LENGTH MARK;Mn;0;NSM;;;;;N;;;;; +1612A;GURUNG KHEMA CONSONANT SIGN MEDIAL YA;Mc;0;L;;;;;N;;;;; +1612B;GURUNG KHEMA CONSONANT SIGN MEDIAL VA;Mc;0;L;;;;;N;;;;; +1612C;GURUNG KHEMA CONSONANT SIGN MEDIAL HA;Mc;0;L;;;;;N;;;;; +1612D;GURUNG KHEMA SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; +1612E;GURUNG KHEMA CONSONANT SIGN MEDIAL RA;Mn;0;NSM;;;;;N;;;;; +1612F;GURUNG KHEMA SIGN THOLHOMA;Mn;9;NSM;;;;;N;;;;; +16130;GURUNG KHEMA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +16131;GURUNG KHEMA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +16132;GURUNG KHEMA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +16133;GURUNG KHEMA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +16134;GURUNG KHEMA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +16135;GURUNG KHEMA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +16136;GURUNG KHEMA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +16137;GURUNG KHEMA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +16138;GURUNG KHEMA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +16139;GURUNG KHEMA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; 16800;BAMUM LETTER PHASE-A NGKUE MFON;Lo;0;L;;;;;N;;;;; 16801;BAMUM LETTER PHASE-A GBIEE FON;Lo;0;L;;;;;N;;;;; 16802;BAMUM LETTER PHASE-A PON MFON PIPAEMGBIEE;Lo;0;L;;;;;N;;;;; @@ -25635,6 +29975,64 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 16B8D;PAHAWH HMONG CLAN SIGN TSWB;Lo;0;L;;;;;N;;;;; 16B8E;PAHAWH HMONG CLAN SIGN KWM;Lo;0;L;;;;;N;;;;; 16B8F;PAHAWH HMONG CLAN SIGN VWJ;Lo;0;L;;;;;N;;;;; +16D40;KIRAT RAI SIGN ANUSVARA;Lm;0;L;;;;;N;;;;; +16D41;KIRAT RAI SIGN TONPI;Lm;0;L;;;;;N;;;;; +16D42;KIRAT RAI SIGN VISARGA;Lm;0;L;;;;;N;;;;; +16D43;KIRAT RAI LETTER A;Lo;0;L;;;;;N;;;;; +16D44;KIRAT RAI LETTER KA;Lo;0;L;;;;;N;;;;; +16D45;KIRAT RAI LETTER KHA;Lo;0;L;;;;;N;;;;; +16D46;KIRAT RAI LETTER GA;Lo;0;L;;;;;N;;;;; +16D47;KIRAT RAI LETTER GHA;Lo;0;L;;;;;N;;;;; +16D48;KIRAT RAI LETTER NGA;Lo;0;L;;;;;N;;;;; +16D49;KIRAT RAI LETTER CA;Lo;0;L;;;;;N;;;;; +16D4A;KIRAT RAI LETTER CHA;Lo;0;L;;;;;N;;;;; +16D4B;KIRAT RAI LETTER JA;Lo;0;L;;;;;N;;;;; +16D4C;KIRAT RAI LETTER JHA;Lo;0;L;;;;;N;;;;; +16D4D;KIRAT RAI LETTER NYA;Lo;0;L;;;;;N;;;;; +16D4E;KIRAT RAI LETTER TTA;Lo;0;L;;;;;N;;;;; +16D4F;KIRAT RAI LETTER TTHA;Lo;0;L;;;;;N;;;;; +16D50;KIRAT RAI LETTER DDA;Lo;0;L;;;;;N;;;;; +16D51;KIRAT RAI LETTER DDHA;Lo;0;L;;;;;N;;;;; +16D52;KIRAT RAI LETTER TA;Lo;0;L;;;;;N;;;;; +16D53;KIRAT RAI LETTER THA;Lo;0;L;;;;;N;;;;; +16D54;KIRAT RAI LETTER DA;Lo;0;L;;;;;N;;;;; +16D55;KIRAT RAI LETTER DHA;Lo;0;L;;;;;N;;;;; +16D56;KIRAT RAI LETTER NA;Lo;0;L;;;;;N;;;;; +16D57;KIRAT RAI LETTER PA;Lo;0;L;;;;;N;;;;; +16D58;KIRAT RAI LETTER PHA;Lo;0;L;;;;;N;;;;; +16D59;KIRAT RAI LETTER BA;Lo;0;L;;;;;N;;;;; +16D5A;KIRAT RAI LETTER BHA;Lo;0;L;;;;;N;;;;; +16D5B;KIRAT RAI LETTER MA;Lo;0;L;;;;;N;;;;; +16D5C;KIRAT RAI LETTER YA;Lo;0;L;;;;;N;;;;; +16D5D;KIRAT RAI LETTER RA;Lo;0;L;;;;;N;;;;; +16D5E;KIRAT RAI LETTER LA;Lo;0;L;;;;;N;;;;; +16D5F;KIRAT RAI LETTER VA;Lo;0;L;;;;;N;;;;; +16D60;KIRAT RAI LETTER SA;Lo;0;L;;;;;N;;;;; +16D61;KIRAT RAI LETTER SHA;Lo;0;L;;;;;N;;;;; +16D62;KIRAT RAI LETTER HA;Lo;0;L;;;;;N;;;;; +16D63;KIRAT RAI VOWEL SIGN AA;Lo;0;L;;;;;N;;;;; +16D64;KIRAT RAI VOWEL SIGN I;Lo;0;L;;;;;N;;;;; +16D65;KIRAT RAI VOWEL SIGN U;Lo;0;L;;;;;N;;;;; +16D66;KIRAT RAI VOWEL SIGN UE;Lo;0;L;;;;;N;;;;; +16D67;KIRAT RAI VOWEL SIGN E;Lo;0;L;;;;;N;;;;; +16D68;KIRAT RAI VOWEL SIGN AI;Lo;0;L;16D67 16D67;;;;N;;;;; +16D69;KIRAT RAI VOWEL SIGN O;Lo;0;L;16D63 16D67;;;;N;;;;; +16D6A;KIRAT RAI VOWEL SIGN AU;Lo;0;L;16D69 16D67;;;;N;;;;; +16D6B;KIRAT RAI SIGN VIRAMA;Lm;0;L;;;;;N;;;;; +16D6C;KIRAT RAI SIGN SAAT;Lm;0;L;;;;;N;;;;; +16D6D;KIRAT RAI SIGN YUPI;Po;0;L;;;;;N;;;;; +16D6E;KIRAT RAI DANDA;Po;0;L;;;;;N;;;;; +16D6F;KIRAT RAI DOUBLE DANDA;Po;0;L;;;;;N;;;;; +16D70;KIRAT RAI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +16D71;KIRAT RAI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +16D72;KIRAT RAI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +16D73;KIRAT RAI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +16D74;KIRAT RAI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +16D75;KIRAT RAI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +16D76;KIRAT RAI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +16D77;KIRAT RAI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +16D78;KIRAT RAI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +16D79;KIRAT RAI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; 16E40;MEDEFAIDRIN CAPITAL LETTER M;Lu;0;L;;;;;N;;;;16E60; 16E41;MEDEFAIDRIN CAPITAL LETTER S;Lu;0;L;;;;;N;;;;16E61; 16E42;MEDEFAIDRIN CAPITAL LETTER V;Lu;0;L;;;;;N;;;;16E62; @@ -27122,6 +31520,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 18CD3;KHITAN SMALL SCRIPT CHARACTER-18CD3;Lo;0;L;;;;;N;;;;; 18CD4;KHITAN SMALL SCRIPT CHARACTER-18CD4;Lo;0;L;;;;;N;;;;; 18CD5;KHITAN SMALL SCRIPT CHARACTER-18CD5;Lo;0;L;;;;;N;;;;; +18CFF;KHITAN SMALL SCRIPT CHARACTER-18CFF;Lo;0;L;;;;;N;;;;; 18D00;<Tangut Ideograph Supplement, First>;Lo;0;L;;;;;N;;;;; 18D08;<Tangut Ideograph Supplement, Last>;Lo;0;L;;;;;N;;;;; 1AFF0;KATAKANA LETTER MINNAN TONE-2;Lm;0;L;;;;;N;;;;; @@ -27980,6 +32379,692 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1BCA1;SHORTHAND FORMAT CONTINUING OVERLAP;Cf;0;BN;;;;;N;;;;; 1BCA2;SHORTHAND FORMAT DOWN STEP;Cf;0;BN;;;;;N;;;;; 1BCA3;SHORTHAND FORMAT UP STEP;Cf;0;BN;;;;;N;;;;; +1CC00;UP-POINTING GO-KART;So;0;ON;;;;;N;;;;; +1CC01;RIGHT-POINTING GO-KART;So;0;ON;;;;;N;;;;; +1CC02;LEFT-POINTING STICK FIGURE;So;0;ON;;;;;N;;;;; +1CC03;RIGHT-POINTING STICK FIGURE;So;0;ON;;;;;N;;;;; +1CC04;DOWN-POINTING STICK FIGURE;So;0;ON;;;;;N;;;;; +1CC05;LOWER HORIZONTAL RULER SEGMENT;So;0;ON;;;;;N;;;;; +1CC06;RIGHT VERTICAL RULER SEGMENT;So;0;ON;;;;;N;;;;; +1CC07;LOWER RIGHT RULER SEGMENT;So;0;ON;;;;;N;;;;; +1CC08;ANTENNA;So;0;ON;;;;;N;;;;; +1CC09;HORIZONTAL RESISTOR SEGMENT;So;0;ON;;;;;N;;;;; +1CC0A;VERTICAL RESISTOR SEGMENT;So;0;ON;;;;;N;;;;; +1CC0B;LEFT THIRD INDUCTOR;So;0;ON;;;;;N;;;;; +1CC0C;MIDDLE THIRD INDUCTOR;So;0;ON;;;;;N;;;;; +1CC0D;RIGHT THIRD INDUCTOR;So;0;ON;;;;;N;;;;; +1CC0E;LEFT-POINTING DIODE;So;0;ON;;;;;N;;;;; +1CC0F;RIGHT-POINTING DIODE;So;0;ON;;;;;N;;;;; +1CC10;NPN TRANSISTOR;So;0;ON;;;;;N;;;;; +1CC11;PNP TRANSISTOR;So;0;ON;;;;;N;;;;; +1CC12;RECEPTACLE;So;0;ON;;;;;N;;;;; +1CC13;HORIZONTAL CAPACITOR;So;0;ON;;;;;N;;;;; +1CC14;VERTICAL CAPACITOR;So;0;ON;;;;;N;;;;; +1CC15;LOGIC GATE OR;So;0;ON;;;;;N;;;;; +1CC16;LOGIC GATE AND;So;0;ON;;;;;N;;;;; +1CC17;LOGIC GATE INVERTED INPUTS;So;0;ON;;;;;N;;;;; +1CC18;LOGIC GATE INVERTED OUTPUT;So;0;ON;;;;;N;;;;; +1CC19;LOGIC GATE BUFFER;So;0;ON;;;;;N;;;;; +1CC1A;LOGIC GATE BUFFER WITH INVERTED INPUT;So;0;ON;;;;;N;;;;; +1CC1B;BOX DRAWINGS LIGHT HORIZONTAL AND UPPER RIGHT;So;0;ON;;;;;N;;;;; +1CC1C;BOX DRAWINGS LIGHT HORIZONTAL AND LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CC1D;BOX DRAWINGS LIGHT TOP AND UPPER LEFT;So;0;ON;;;;;N;;;;; +1CC1E;BOX DRAWINGS LIGHT BOTTOM AND LOWER LEFT;So;0;ON;;;;;N;;;;; +1CC1F;BOX DRAWINGS DOUBLE DIAGONAL UPPER RIGHT TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1CC20;BOX DRAWINGS DOUBLE DIAGONAL UPPER LEFT TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CC21;SEPARATED BLOCK QUADRANT-1;So;0;ON;;;;;N;;;;; +1CC22;SEPARATED BLOCK QUADRANT-2;So;0;ON;;;;;N;;;;; +1CC23;SEPARATED BLOCK QUADRANT-12;So;0;ON;;;;;N;;;;; +1CC24;SEPARATED BLOCK QUADRANT-3;So;0;ON;;;;;N;;;;; +1CC25;SEPARATED BLOCK QUADRANT-13;So;0;ON;;;;;N;;;;; +1CC26;SEPARATED BLOCK QUADRANT-23;So;0;ON;;;;;N;;;;; +1CC27;SEPARATED BLOCK QUADRANT-123;So;0;ON;;;;;N;;;;; +1CC28;SEPARATED BLOCK QUADRANT-4;So;0;ON;;;;;N;;;;; +1CC29;SEPARATED BLOCK QUADRANT-14;So;0;ON;;;;;N;;;;; +1CC2A;SEPARATED BLOCK QUADRANT-24;So;0;ON;;;;;N;;;;; +1CC2B;SEPARATED BLOCK QUADRANT-124;So;0;ON;;;;;N;;;;; +1CC2C;SEPARATED BLOCK QUADRANT-34;So;0;ON;;;;;N;;;;; +1CC2D;SEPARATED BLOCK QUADRANT-134;So;0;ON;;;;;N;;;;; +1CC2E;SEPARATED BLOCK QUADRANT-234;So;0;ON;;;;;N;;;;; +1CC2F;SEPARATED BLOCK QUADRANT-1234;So;0;ON;;;;;N;;;;; +1CC30;UPPER LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC31;UPPER CENTRE LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC32;UPPER CENTRE RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC33;UPPER RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC34;UPPER MIDDLE LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC35;UPPER LEFT QUARTER CIRCLE;So;0;ON;;;;;N;;;;; +1CC36;UPPER RIGHT QUARTER CIRCLE;So;0;ON;;;;;N;;;;; +1CC37;UPPER MIDDLE RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC38;LOWER MIDDLE LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC39;LOWER LEFT QUARTER CIRCLE;So;0;ON;;;;;N;;;;; +1CC3A;LOWER RIGHT QUARTER CIRCLE;So;0;ON;;;;;N;;;;; +1CC3B;LOWER MIDDLE RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC3C;LOWER LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC3D;LOWER CENTRE LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC3E;LOWER CENTRE RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC3F;LOWER RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC40;SPARSE HORIZONTAL FILL;So;0;ON;;;;;N;;;;; +1CC41;SPARSE VERTICAL FILL;So;0;ON;;;;;N;;;;; +1CC42;ORTHOGONAL CROSSHATCH FILL;So;0;ON;;;;;N;;;;; +1CC43;DIAGONAL CROSSHATCH FILL;So;0;ON;;;;;N;;;;; +1CC44;DENSE VERTICAL FILL;So;0;ON;;;;;N;;;;; +1CC45;DENSE HORIZONTAL FILL;So;0;ON;;;;;N;;;;; +1CC46;SPECKLE FILL FRAME-1;So;0;ON;;;;;N;;;;; +1CC47;SPECKLE FILL FRAME-2;So;0;ON;;;;;N;;;;; +1CC48;LEFT-FACING BASSINET;So;0;ON;;;;;N;;;;; +1CC49;RIGHT-FACING BASSINET;So;0;ON;;;;;N;;;;; +1CC4A;FLYING SAUCER WITH BEAMS;So;0;ON;;;;;N;;;;; +1CC4B;FLYING SAUCER WITHOUT BEAMS;So;0;ON;;;;;N;;;;; +1CC4C;ALIEN MONSTER OPEN JAWS;So;0;ON;;;;;N;;;;; +1CC4D;ALIEN MONSTER CLOSED JAWS;So;0;ON;;;;;N;;;;; +1CC4E;ALIEN SQUID OPEN TENTACLES;So;0;ON;;;;;N;;;;; +1CC4F;ALIEN SQUID CLOSED TENTACLES;So;0;ON;;;;;N;;;;; +1CC50;ALIEN CRAB STEPPING RIGHT;So;0;ON;;;;;N;;;;; +1CC51;ALIEN CRAB STEPPING LEFT;So;0;ON;;;;;N;;;;; +1CC52;ALIEN SPIDER CROUCHING;So;0;ON;;;;;N;;;;; +1CC53;ALIEN SPIDER SPREAD;So;0;ON;;;;;N;;;;; +1CC54;ALIEN MONSTER STEP-1;So;0;ON;;;;;N;;;;; +1CC55;ALIEN MONSTER STEP-2;So;0;ON;;;;;N;;;;; +1CC56;LEFT-POINTING ROCKET SHIP;So;0;ON;;;;;N;;;;; +1CC57;UP-POINTING ROCKET SHIP;So;0;ON;;;;;N;;;;; +1CC58;RIGHT-POINTING ROCKET SHIP;So;0;ON;;;;;N;;;;; +1CC59;DOWN-POINTING ROCKET SHIP;So;0;ON;;;;;N;;;;; +1CC5A;TOP HALF LEFT-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5B;TOP HALF FORWARD-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5C;TOP HALF RIGHT-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5D;BOTTOM HALF LEFT-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5E;BOTTOM HALF FORWARD-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5F;BOTTOM HALF RIGHT-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC60;LEFT-POINTING ATOMIC BOMB;So;0;ON;;;;;N;;;;; +1CC61;UP-POINTING ATOMIC BOMB;So;0;ON;;;;;N;;;;; +1CC62;RIGHT-POINTING ATOMIC BOMB;So;0;ON;;;;;N;;;;; +1CC63;DOWN-POINTING ATOMIC BOMB;So;0;ON;;;;;N;;;;; +1CC64;MUSHROOM CLOUD;So;0;ON;;;;;N;;;;; +1CC65;LEFT-POINTING RIFLE;So;0;ON;;;;;N;;;;; +1CC66;UP-POINTING RIFLE;So;0;ON;;;;;N;;;;; +1CC67;RIGHT-POINTING RIFLE;So;0;ON;;;;;N;;;;; +1CC68;DOWN-POINTING RIFLE;So;0;ON;;;;;N;;;;; +1CC69;EIGHT RAYS INWARD;So;0;ON;;;;;N;;;;; +1CC6A;EIGHT RAYS OUTWARD;So;0;ON;;;;;N;;;;; +1CC6B;BLACK LARGE CIRCLE MINUS LEFT QUARTER SECTION;So;0;ON;;;;;N;;;;; +1CC6C;BLACK LARGE CIRCLE MINUS UPPER QUARTER SECTION;So;0;ON;;;;;N;;;;; +1CC6D;BLACK LARGE CIRCLE MINUS RIGHT QUARTER SECTION;So;0;ON;;;;;N;;;;; +1CC6E;BLACK LARGE CIRCLE MINUS LOWER QUARTER SECTION;So;0;ON;;;;;N;;;;; +1CC6F;BLACK NEUTRAL FACE;So;0;ON;;;;;N;;;;; +1CC70;LEFT-FACING SNAKE HEAD WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC71;UP-FACING SNAKE HEAD WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC72;RIGHT-FACING SNAKE HEAD WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC73;DOWN-FACING SNAKE HEAD WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC74;LEFT-FACING SNAKE HEAD WITH CLOSED MOUTH;So;0;ON;;;;;N;;;;; +1CC75;UP-FACING SNAKE HEAD WITH CLOSED MOUTH;So;0;ON;;;;;N;;;;; +1CC76;RIGHT-FACING SNAKE HEAD WITH CLOSED MOUTH;So;0;ON;;;;;N;;;;; +1CC77;DOWN-FACING SNAKE HEAD WITH CLOSED MOUTH;So;0;ON;;;;;N;;;;; +1CC78;LEFT-POINTING ENERGY WAVE;So;0;ON;;;;;N;;;;; +1CC79;UP-POINTING ENERGY WAVE;So;0;ON;;;;;N;;;;; +1CC7A;RIGHT-POINTING ENERGY WAVE;So;0;ON;;;;;N;;;;; +1CC7B;DOWN-POINTING ENERGY WAVE;So;0;ON;;;;;N;;;;; +1CC7C;SQUARE SPIRAL FROM TOP LEFT;So;0;ON;;;;;N;;;;; +1CC7D;SQUARE SPIRAL FROM TOP RIGHT;So;0;ON;;;;;N;;;;; +1CC7E;SQUARE SPIRAL FROM BOTTOM RIGHT;So;0;ON;;;;;N;;;;; +1CC7F;SQUARE SPIRAL FROM BOTTOM LEFT;So;0;ON;;;;;N;;;;; +1CC80;STRIPED LEFT-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; +1CC81;STRIPED UP-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; +1CC82;STRIPED RIGHT-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; +1CC83;STRIPED DOWN-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; +1CC84;VERTICAL LADDER;So;0;ON;;;;;N;;;;; +1CC85;HORIZONTAL LADDER;So;0;ON;;;;;N;;;;; +1CC86;WHITE LOWER LEFT POINTER;So;0;ON;;;;;N;;;;; +1CC87;WHITE LOWER RIGHT POINTER;So;0;ON;;;;;N;;;;; +1CC88;TWO RINGS ALIGNED HORIZONTALLY;So;0;ON;;;;;N;;;;; +1CC89;SQUARE FOUR CORNER SALTIRES;So;0;ON;;;;;N;;;;; +1CC8A;SQUARE FOUR CORNER DIAGONALS;So;0;ON;;;;;N;;;;; +1CC8B;SQUARE FOUR CORNER BLACK TRIANGLES;So;0;ON;;;;;N;;;;; +1CC8C;SQUARE APERTURE;So;0;ON;;;;;N;;;;; +1CC8D;INVERSE BLACK DIAMOND;So;0;ON;;;;;N;;;;; +1CC8E;LEFT AND UPPER ONE EIGHTH BLOCK CONTAINING BLACK SMALL SQUARE;So;0;ON;;;;;N;;;;; +1CC8F;INVERSE BLACK SMALL SQUARE;So;0;ON;;;;;N;;;;; +1CC90;VERTICAL LINE WITH FOUR TICK MARKS;So;0;ON;;;;;N;;;;; +1CC91;HORIZONTAL LINE WITH FOUR TICK MARKS;So;0;ON;;;;;N;;;;; +1CC92;LEFT-FACING FISH;So;0;ON;;;;;N;;;;; +1CC93;RIGHT-FACING FISH;So;0;ON;;;;;N;;;;; +1CC94;LEFT-FACING FISH WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC95;RIGHT-FACING FISH WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC96;FLAPPING BIRD;So;0;ON;;;;;N;;;;; +1CC97;LEFT-POINTING RACING CAR;So;0;ON;;;;;N;;;;; +1CC98;UP-POINTING RACING CAR;So;0;ON;;;;;N;;;;; +1CC99;RIGHT-POINTING RACING CAR;So;0;ON;;;;;N;;;;; +1CC9A;DOWN-POINTING RACING CAR;So;0;ON;;;;;N;;;;; +1CC9B;HORIZONTAL RACING CAR;So;0;ON;;;;;N;;;;; +1CC9C;VERTICAL RACING CAR;So;0;ON;;;;;N;;;;; +1CC9D;VERTICAL GO-KART;So;0;ON;;;;;N;;;;; +1CC9E;LEFT-POINTING TANK;So;0;ON;;;;;N;;;;; +1CC9F;RIGHT-POINTING TANK;So;0;ON;;;;;N;;;;; +1CCA0;LEFT-POINTING ROCKET BOOSTER;So;0;ON;;;;;N;;;;; +1CCA1;RIGHT-POINTING ROCKET BOOSTER;So;0;ON;;;;;N;;;;; +1CCA2;LEFT-POINTING ROLLER COASTER CAR;So;0;ON;;;;;N;;;;; +1CCA3;RIGHT-POINTING ROLLER COASTER CAR;So;0;ON;;;;;N;;;;; +1CCA4;LEFT HALF FLYING SAUCER;So;0;ON;;;;;N;;;;; +1CCA5;RIGHT HALF FLYING SAUCER;So;0;ON;;;;;N;;;;; +1CCA6;UPPER LEFT QUADRANT FACE WITH OPEN EYES;So;0;ON;;;;;N;;;;; +1CCA7;UPPER RIGHT QUADRANT FACE WITH OPEN EYES;So;0;ON;;;;;N;;;;; +1CCA8;UPPER LEFT QUADRANT FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;; +1CCA9;UPPER RIGHT QUADRANT FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;; +1CCAA;LOWER LEFT QUADRANT SMILING FACE;So;0;ON;;;;;N;;;;; +1CCAB;LOWER RIGHT QUADRANT SMILING FACE;So;0;ON;;;;;N;;;;; +1CCAC;LOWER LEFT QUADRANT NEUTRAL FACE;So;0;ON;;;;;N;;;;; +1CCAD;LOWER RIGHT QUADRANT NEUTRAL FACE;So;0;ON;;;;;N;;;;; +1CCAE;LOWER LEFT QUADRANT FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CCAF;LOWER RIGHT QUADRANT FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CCB0;LOWER LEFT QUADRANT FROWNING FACE;So;0;ON;;;;;N;;;;; +1CCB1;LOWER RIGHT QUADRANT FROWNING FACE;So;0;ON;;;;;N;;;;; +1CCB2;UPPER LEFT QUADRANT TELEVISION;So;0;ON;;;;;N;;;;; +1CCB3;UPPER RIGHT QUADRANT TELEVISION;So;0;ON;;;;;N;;;;; +1CCB4;LOWER LEFT QUADRANT TELEVISION;So;0;ON;;;;;N;;;;; +1CCB5;LOWER RIGHT QUADRANT TELEVISION;So;0;ON;;;;;N;;;;; +1CCB6;UPPER LEFT QUADRANT MICROCOMPUTER;So;0;ON;;;;;N;;;;; +1CCB7;UPPER RIGHT QUADRANT MICROCOMPUTER;So;0;ON;;;;;N;;;;; +1CCB8;LOWER LEFT QUADRANT MICROCOMPUTER;So;0;ON;;;;;N;;;;; +1CCB9;LOWER RIGHT QUADRANT MICROCOMPUTER;So;0;ON;;;;;N;;;;; +1CCBA;UPPER LEFT QUADRANT CHESS KING;So;0;ON;;;;;N;;;;; +1CCBB;UPPER RIGHT QUADRANT CHESS KING;So;0;ON;;;;;N;;;;; +1CCBC;LOWER LEFT QUADRANT CHESS KING;So;0;ON;;;;;N;;;;; +1CCBD;LOWER RIGHT QUADRANT CHESS KING;So;0;ON;;;;;N;;;;; +1CCBE;UPPER LEFT QUADRANT CHESS QUEEN;So;0;ON;;;;;N;;;;; +1CCBF;UPPER RIGHT QUADRANT CHESS QUEEN;So;0;ON;;;;;N;;;;; +1CCC0;LOWER LEFT QUADRANT CHESS QUEEN;So;0;ON;;;;;N;;;;; +1CCC1;LOWER RIGHT QUADRANT CHESS QUEEN;So;0;ON;;;;;N;;;;; +1CCC2;UPPER LEFT QUADRANT CHESS ROOK;So;0;ON;;;;;N;;;;; +1CCC3;UPPER RIGHT QUADRANT CHESS ROOK;So;0;ON;;;;;N;;;;; +1CCC4;LOWER LEFT QUADRANT CHESS ROOK;So;0;ON;;;;;N;;;;; +1CCC5;LOWER RIGHT QUADRANT CHESS ROOK;So;0;ON;;;;;N;;;;; +1CCC6;UPPER LEFT QUADRANT CHESS BISHOP;So;0;ON;;;;;N;;;;; +1CCC7;UPPER RIGHT QUADRANT CHESS BISHOP;So;0;ON;;;;;N;;;;; +1CCC8;LOWER LEFT QUADRANT CHESS BISHOP;So;0;ON;;;;;N;;;;; +1CCC9;LOWER RIGHT QUADRANT CHESS BISHOP;So;0;ON;;;;;N;;;;; +1CCCA;UPPER LEFT QUADRANT CHESS KNIGHT;So;0;ON;;;;;N;;;;; +1CCCB;UPPER RIGHT QUADRANT CHESS KNIGHT;So;0;ON;;;;;N;;;;; +1CCCC;LOWER LEFT QUADRANT CHESS KNIGHT;So;0;ON;;;;;N;;;;; +1CCCD;LOWER RIGHT QUADRANT CHESS KNIGHT;So;0;ON;;;;;N;;;;; +1CCCE;UPPER LEFT QUADRANT CHESS PAWN;So;0;ON;;;;;N;;;;; +1CCCF;UPPER RIGHT QUADRANT CHESS PAWN;So;0;ON;;;;;N;;;;; +1CCD0;LOWER LEFT QUADRANT CHESS PAWN;So;0;ON;;;;;N;;;;; +1CCD1;LOWER RIGHT QUADRANT CHESS PAWN;So;0;ON;;;;;N;;;;; +1CCD2;UPPER LEFT QUADRANT STANDING KNIGHT;So;0;ON;;;;;N;;;;; +1CCD3;UPPER RIGHT QUADRANT STANDING KNIGHT;So;0;ON;;;;;N;;;;; +1CCD4;LOWER LEFT QUADRANT STANDING KNIGHT;So;0;ON;;;;;N;;;;; +1CCD5;LOWER RIGHT QUADRANT STANDING KNIGHT;So;0;ON;;;;;N;;;;; +1CCD6;OUTLINED LATIN CAPITAL LETTER A;So;0;L;<font> 0041;;;;N;;;;; +1CCD7;OUTLINED LATIN CAPITAL LETTER B;So;0;L;<font> 0042;;;;N;;;;; +1CCD8;OUTLINED LATIN CAPITAL LETTER C;So;0;L;<font> 0043;;;;N;;;;; +1CCD9;OUTLINED LATIN CAPITAL LETTER D;So;0;L;<font> 0044;;;;N;;;;; +1CCDA;OUTLINED LATIN CAPITAL LETTER E;So;0;L;<font> 0045;;;;N;;;;; +1CCDB;OUTLINED LATIN CAPITAL LETTER F;So;0;L;<font> 0046;;;;N;;;;; +1CCDC;OUTLINED LATIN CAPITAL LETTER G;So;0;L;<font> 0047;;;;N;;;;; +1CCDD;OUTLINED LATIN CAPITAL LETTER H;So;0;L;<font> 0048;;;;N;;;;; +1CCDE;OUTLINED LATIN CAPITAL LETTER I;So;0;L;<font> 0049;;;;N;;;;; +1CCDF;OUTLINED LATIN CAPITAL LETTER J;So;0;L;<font> 004A;;;;N;;;;; +1CCE0;OUTLINED LATIN CAPITAL LETTER K;So;0;L;<font> 004B;;;;N;;;;; +1CCE1;OUTLINED LATIN CAPITAL LETTER L;So;0;L;<font> 004C;;;;N;;;;; +1CCE2;OUTLINED LATIN CAPITAL LETTER M;So;0;L;<font> 004D;;;;N;;;;; +1CCE3;OUTLINED LATIN CAPITAL LETTER N;So;0;L;<font> 004E;;;;N;;;;; +1CCE4;OUTLINED LATIN CAPITAL LETTER O;So;0;L;<font> 004F;;;;N;;;;; +1CCE5;OUTLINED LATIN CAPITAL LETTER P;So;0;L;<font> 0050;;;;N;;;;; +1CCE6;OUTLINED LATIN CAPITAL LETTER Q;So;0;L;<font> 0051;;;;N;;;;; +1CCE7;OUTLINED LATIN CAPITAL LETTER R;So;0;L;<font> 0052;;;;N;;;;; +1CCE8;OUTLINED LATIN CAPITAL LETTER S;So;0;L;<font> 0053;;;;N;;;;; +1CCE9;OUTLINED LATIN CAPITAL LETTER T;So;0;L;<font> 0054;;;;N;;;;; +1CCEA;OUTLINED LATIN CAPITAL LETTER U;So;0;L;<font> 0055;;;;N;;;;; +1CCEB;OUTLINED LATIN CAPITAL LETTER V;So;0;L;<font> 0056;;;;N;;;;; +1CCEC;OUTLINED LATIN CAPITAL LETTER W;So;0;L;<font> 0057;;;;N;;;;; +1CCED;OUTLINED LATIN CAPITAL LETTER X;So;0;L;<font> 0058;;;;N;;;;; +1CCEE;OUTLINED LATIN CAPITAL LETTER Y;So;0;L;<font> 0059;;;;N;;;;; +1CCEF;OUTLINED LATIN CAPITAL LETTER Z;So;0;L;<font> 005A;;;;N;;;;; +1CCF0;OUTLINED DIGIT ZERO;Nd;0;EN;<font> 0030;0;0;0;N;;;;; +1CCF1;OUTLINED DIGIT ONE;Nd;0;EN;<font> 0031;1;1;1;N;;;;; +1CCF2;OUTLINED DIGIT TWO;Nd;0;EN;<font> 0032;2;2;2;N;;;;; +1CCF3;OUTLINED DIGIT THREE;Nd;0;EN;<font> 0033;3;3;3;N;;;;; +1CCF4;OUTLINED DIGIT FOUR;Nd;0;EN;<font> 0034;4;4;4;N;;;;; +1CCF5;OUTLINED DIGIT FIVE;Nd;0;EN;<font> 0035;5;5;5;N;;;;; +1CCF6;OUTLINED DIGIT SIX;Nd;0;EN;<font> 0036;6;6;6;N;;;;; +1CCF7;OUTLINED DIGIT SEVEN;Nd;0;EN;<font> 0037;7;7;7;N;;;;; +1CCF8;OUTLINED DIGIT EIGHT;Nd;0;EN;<font> 0038;8;8;8;N;;;;; +1CCF9;OUTLINED DIGIT NINE;Nd;0;EN;<font> 0039;9;9;9;N;;;;; +1CD00;BLOCK OCTANT-3;So;0;ON;;;;;N;;;;; +1CD01;BLOCK OCTANT-23;So;0;ON;;;;;N;;;;; +1CD02;BLOCK OCTANT-123;So;0;ON;;;;;N;;;;; +1CD03;BLOCK OCTANT-4;So;0;ON;;;;;N;;;;; +1CD04;BLOCK OCTANT-14;So;0;ON;;;;;N;;;;; +1CD05;BLOCK OCTANT-124;So;0;ON;;;;;N;;;;; +1CD06;BLOCK OCTANT-34;So;0;ON;;;;;N;;;;; +1CD07;BLOCK OCTANT-134;So;0;ON;;;;;N;;;;; +1CD08;BLOCK OCTANT-234;So;0;ON;;;;;N;;;;; +1CD09;BLOCK OCTANT-5;So;0;ON;;;;;N;;;;; +1CD0A;BLOCK OCTANT-15;So;0;ON;;;;;N;;;;; +1CD0B;BLOCK OCTANT-25;So;0;ON;;;;;N;;;;; +1CD0C;BLOCK OCTANT-125;So;0;ON;;;;;N;;;;; +1CD0D;BLOCK OCTANT-135;So;0;ON;;;;;N;;;;; +1CD0E;BLOCK OCTANT-235;So;0;ON;;;;;N;;;;; +1CD0F;BLOCK OCTANT-1235;So;0;ON;;;;;N;;;;; +1CD10;BLOCK OCTANT-45;So;0;ON;;;;;N;;;;; +1CD11;BLOCK OCTANT-145;So;0;ON;;;;;N;;;;; +1CD12;BLOCK OCTANT-245;So;0;ON;;;;;N;;;;; +1CD13;BLOCK OCTANT-1245;So;0;ON;;;;;N;;;;; +1CD14;BLOCK OCTANT-345;So;0;ON;;;;;N;;;;; +1CD15;BLOCK OCTANT-1345;So;0;ON;;;;;N;;;;; +1CD16;BLOCK OCTANT-2345;So;0;ON;;;;;N;;;;; +1CD17;BLOCK OCTANT-12345;So;0;ON;;;;;N;;;;; +1CD18;BLOCK OCTANT-6;So;0;ON;;;;;N;;;;; +1CD19;BLOCK OCTANT-16;So;0;ON;;;;;N;;;;; +1CD1A;BLOCK OCTANT-26;So;0;ON;;;;;N;;;;; +1CD1B;BLOCK OCTANT-126;So;0;ON;;;;;N;;;;; +1CD1C;BLOCK OCTANT-36;So;0;ON;;;;;N;;;;; +1CD1D;BLOCK OCTANT-136;So;0;ON;;;;;N;;;;; +1CD1E;BLOCK OCTANT-236;So;0;ON;;;;;N;;;;; +1CD1F;BLOCK OCTANT-1236;So;0;ON;;;;;N;;;;; +1CD20;BLOCK OCTANT-146;So;0;ON;;;;;N;;;;; +1CD21;BLOCK OCTANT-246;So;0;ON;;;;;N;;;;; +1CD22;BLOCK OCTANT-1246;So;0;ON;;;;;N;;;;; +1CD23;BLOCK OCTANT-346;So;0;ON;;;;;N;;;;; +1CD24;BLOCK OCTANT-1346;So;0;ON;;;;;N;;;;; +1CD25;BLOCK OCTANT-2346;So;0;ON;;;;;N;;;;; +1CD26;BLOCK OCTANT-12346;So;0;ON;;;;;N;;;;; +1CD27;BLOCK OCTANT-56;So;0;ON;;;;;N;;;;; +1CD28;BLOCK OCTANT-156;So;0;ON;;;;;N;;;;; +1CD29;BLOCK OCTANT-256;So;0;ON;;;;;N;;;;; +1CD2A;BLOCK OCTANT-1256;So;0;ON;;;;;N;;;;; +1CD2B;BLOCK OCTANT-356;So;0;ON;;;;;N;;;;; +1CD2C;BLOCK OCTANT-1356;So;0;ON;;;;;N;;;;; +1CD2D;BLOCK OCTANT-2356;So;0;ON;;;;;N;;;;; +1CD2E;BLOCK OCTANT-12356;So;0;ON;;;;;N;;;;; +1CD2F;BLOCK OCTANT-456;So;0;ON;;;;;N;;;;; +1CD30;BLOCK OCTANT-1456;So;0;ON;;;;;N;;;;; +1CD31;BLOCK OCTANT-2456;So;0;ON;;;;;N;;;;; +1CD32;BLOCK OCTANT-12456;So;0;ON;;;;;N;;;;; +1CD33;BLOCK OCTANT-3456;So;0;ON;;;;;N;;;;; +1CD34;BLOCK OCTANT-13456;So;0;ON;;;;;N;;;;; +1CD35;BLOCK OCTANT-23456;So;0;ON;;;;;N;;;;; +1CD36;BLOCK OCTANT-17;So;0;ON;;;;;N;;;;; +1CD37;BLOCK OCTANT-27;So;0;ON;;;;;N;;;;; +1CD38;BLOCK OCTANT-127;So;0;ON;;;;;N;;;;; +1CD39;BLOCK OCTANT-37;So;0;ON;;;;;N;;;;; +1CD3A;BLOCK OCTANT-137;So;0;ON;;;;;N;;;;; +1CD3B;BLOCK OCTANT-237;So;0;ON;;;;;N;;;;; +1CD3C;BLOCK OCTANT-1237;So;0;ON;;;;;N;;;;; +1CD3D;BLOCK OCTANT-47;So;0;ON;;;;;N;;;;; +1CD3E;BLOCK OCTANT-147;So;0;ON;;;;;N;;;;; +1CD3F;BLOCK OCTANT-247;So;0;ON;;;;;N;;;;; +1CD40;BLOCK OCTANT-1247;So;0;ON;;;;;N;;;;; +1CD41;BLOCK OCTANT-347;So;0;ON;;;;;N;;;;; +1CD42;BLOCK OCTANT-1347;So;0;ON;;;;;N;;;;; +1CD43;BLOCK OCTANT-2347;So;0;ON;;;;;N;;;;; +1CD44;BLOCK OCTANT-12347;So;0;ON;;;;;N;;;;; +1CD45;BLOCK OCTANT-157;So;0;ON;;;;;N;;;;; +1CD46;BLOCK OCTANT-257;So;0;ON;;;;;N;;;;; +1CD47;BLOCK OCTANT-1257;So;0;ON;;;;;N;;;;; +1CD48;BLOCK OCTANT-357;So;0;ON;;;;;N;;;;; +1CD49;BLOCK OCTANT-2357;So;0;ON;;;;;N;;;;; +1CD4A;BLOCK OCTANT-12357;So;0;ON;;;;;N;;;;; +1CD4B;BLOCK OCTANT-457;So;0;ON;;;;;N;;;;; +1CD4C;BLOCK OCTANT-1457;So;0;ON;;;;;N;;;;; +1CD4D;BLOCK OCTANT-12457;So;0;ON;;;;;N;;;;; +1CD4E;BLOCK OCTANT-3457;So;0;ON;;;;;N;;;;; +1CD4F;BLOCK OCTANT-13457;So;0;ON;;;;;N;;;;; +1CD50;BLOCK OCTANT-23457;So;0;ON;;;;;N;;;;; +1CD51;BLOCK OCTANT-67;So;0;ON;;;;;N;;;;; +1CD52;BLOCK OCTANT-167;So;0;ON;;;;;N;;;;; +1CD53;BLOCK OCTANT-267;So;0;ON;;;;;N;;;;; +1CD54;BLOCK OCTANT-1267;So;0;ON;;;;;N;;;;; +1CD55;BLOCK OCTANT-367;So;0;ON;;;;;N;;;;; +1CD56;BLOCK OCTANT-1367;So;0;ON;;;;;N;;;;; +1CD57;BLOCK OCTANT-2367;So;0;ON;;;;;N;;;;; +1CD58;BLOCK OCTANT-12367;So;0;ON;;;;;N;;;;; +1CD59;BLOCK OCTANT-467;So;0;ON;;;;;N;;;;; +1CD5A;BLOCK OCTANT-1467;So;0;ON;;;;;N;;;;; +1CD5B;BLOCK OCTANT-2467;So;0;ON;;;;;N;;;;; +1CD5C;BLOCK OCTANT-12467;So;0;ON;;;;;N;;;;; +1CD5D;BLOCK OCTANT-3467;So;0;ON;;;;;N;;;;; +1CD5E;BLOCK OCTANT-13467;So;0;ON;;;;;N;;;;; +1CD5F;BLOCK OCTANT-23467;So;0;ON;;;;;N;;;;; +1CD60;BLOCK OCTANT-123467;So;0;ON;;;;;N;;;;; +1CD61;BLOCK OCTANT-567;So;0;ON;;;;;N;;;;; +1CD62;BLOCK OCTANT-1567;So;0;ON;;;;;N;;;;; +1CD63;BLOCK OCTANT-2567;So;0;ON;;;;;N;;;;; +1CD64;BLOCK OCTANT-12567;So;0;ON;;;;;N;;;;; +1CD65;BLOCK OCTANT-3567;So;0;ON;;;;;N;;;;; +1CD66;BLOCK OCTANT-13567;So;0;ON;;;;;N;;;;; +1CD67;BLOCK OCTANT-23567;So;0;ON;;;;;N;;;;; +1CD68;BLOCK OCTANT-123567;So;0;ON;;;;;N;;;;; +1CD69;BLOCK OCTANT-4567;So;0;ON;;;;;N;;;;; +1CD6A;BLOCK OCTANT-14567;So;0;ON;;;;;N;;;;; +1CD6B;BLOCK OCTANT-24567;So;0;ON;;;;;N;;;;; +1CD6C;BLOCK OCTANT-124567;So;0;ON;;;;;N;;;;; +1CD6D;BLOCK OCTANT-34567;So;0;ON;;;;;N;;;;; +1CD6E;BLOCK OCTANT-134567;So;0;ON;;;;;N;;;;; +1CD6F;BLOCK OCTANT-234567;So;0;ON;;;;;N;;;;; +1CD70;BLOCK OCTANT-1234567;So;0;ON;;;;;N;;;;; +1CD71;BLOCK OCTANT-18;So;0;ON;;;;;N;;;;; +1CD72;BLOCK OCTANT-28;So;0;ON;;;;;N;;;;; +1CD73;BLOCK OCTANT-128;So;0;ON;;;;;N;;;;; +1CD74;BLOCK OCTANT-38;So;0;ON;;;;;N;;;;; +1CD75;BLOCK OCTANT-138;So;0;ON;;;;;N;;;;; +1CD76;BLOCK OCTANT-238;So;0;ON;;;;;N;;;;; +1CD77;BLOCK OCTANT-1238;So;0;ON;;;;;N;;;;; +1CD78;BLOCK OCTANT-48;So;0;ON;;;;;N;;;;; +1CD79;BLOCK OCTANT-148;So;0;ON;;;;;N;;;;; +1CD7A;BLOCK OCTANT-248;So;0;ON;;;;;N;;;;; +1CD7B;BLOCK OCTANT-1248;So;0;ON;;;;;N;;;;; +1CD7C;BLOCK OCTANT-348;So;0;ON;;;;;N;;;;; +1CD7D;BLOCK OCTANT-1348;So;0;ON;;;;;N;;;;; +1CD7E;BLOCK OCTANT-2348;So;0;ON;;;;;N;;;;; +1CD7F;BLOCK OCTANT-12348;So;0;ON;;;;;N;;;;; +1CD80;BLOCK OCTANT-58;So;0;ON;;;;;N;;;;; +1CD81;BLOCK OCTANT-158;So;0;ON;;;;;N;;;;; +1CD82;BLOCK OCTANT-258;So;0;ON;;;;;N;;;;; +1CD83;BLOCK OCTANT-1258;So;0;ON;;;;;N;;;;; +1CD84;BLOCK OCTANT-358;So;0;ON;;;;;N;;;;; +1CD85;BLOCK OCTANT-1358;So;0;ON;;;;;N;;;;; +1CD86;BLOCK OCTANT-2358;So;0;ON;;;;;N;;;;; +1CD87;BLOCK OCTANT-12358;So;0;ON;;;;;N;;;;; +1CD88;BLOCK OCTANT-458;So;0;ON;;;;;N;;;;; +1CD89;BLOCK OCTANT-1458;So;0;ON;;;;;N;;;;; +1CD8A;BLOCK OCTANT-2458;So;0;ON;;;;;N;;;;; +1CD8B;BLOCK OCTANT-12458;So;0;ON;;;;;N;;;;; +1CD8C;BLOCK OCTANT-3458;So;0;ON;;;;;N;;;;; +1CD8D;BLOCK OCTANT-13458;So;0;ON;;;;;N;;;;; +1CD8E;BLOCK OCTANT-23458;So;0;ON;;;;;N;;;;; +1CD8F;BLOCK OCTANT-123458;So;0;ON;;;;;N;;;;; +1CD90;BLOCK OCTANT-168;So;0;ON;;;;;N;;;;; +1CD91;BLOCK OCTANT-268;So;0;ON;;;;;N;;;;; +1CD92;BLOCK OCTANT-1268;So;0;ON;;;;;N;;;;; +1CD93;BLOCK OCTANT-368;So;0;ON;;;;;N;;;;; +1CD94;BLOCK OCTANT-2368;So;0;ON;;;;;N;;;;; +1CD95;BLOCK OCTANT-12368;So;0;ON;;;;;N;;;;; +1CD96;BLOCK OCTANT-468;So;0;ON;;;;;N;;;;; +1CD97;BLOCK OCTANT-1468;So;0;ON;;;;;N;;;;; +1CD98;BLOCK OCTANT-12468;So;0;ON;;;;;N;;;;; +1CD99;BLOCK OCTANT-3468;So;0;ON;;;;;N;;;;; +1CD9A;BLOCK OCTANT-13468;So;0;ON;;;;;N;;;;; +1CD9B;BLOCK OCTANT-23468;So;0;ON;;;;;N;;;;; +1CD9C;BLOCK OCTANT-568;So;0;ON;;;;;N;;;;; +1CD9D;BLOCK OCTANT-1568;So;0;ON;;;;;N;;;;; +1CD9E;BLOCK OCTANT-2568;So;0;ON;;;;;N;;;;; +1CD9F;BLOCK OCTANT-12568;So;0;ON;;;;;N;;;;; +1CDA0;BLOCK OCTANT-3568;So;0;ON;;;;;N;;;;; +1CDA1;BLOCK OCTANT-13568;So;0;ON;;;;;N;;;;; +1CDA2;BLOCK OCTANT-23568;So;0;ON;;;;;N;;;;; +1CDA3;BLOCK OCTANT-123568;So;0;ON;;;;;N;;;;; +1CDA4;BLOCK OCTANT-4568;So;0;ON;;;;;N;;;;; +1CDA5;BLOCK OCTANT-14568;So;0;ON;;;;;N;;;;; +1CDA6;BLOCK OCTANT-24568;So;0;ON;;;;;N;;;;; +1CDA7;BLOCK OCTANT-124568;So;0;ON;;;;;N;;;;; +1CDA8;BLOCK OCTANT-34568;So;0;ON;;;;;N;;;;; +1CDA9;BLOCK OCTANT-134568;So;0;ON;;;;;N;;;;; +1CDAA;BLOCK OCTANT-234568;So;0;ON;;;;;N;;;;; +1CDAB;BLOCK OCTANT-1234568;So;0;ON;;;;;N;;;;; +1CDAC;BLOCK OCTANT-178;So;0;ON;;;;;N;;;;; +1CDAD;BLOCK OCTANT-278;So;0;ON;;;;;N;;;;; +1CDAE;BLOCK OCTANT-1278;So;0;ON;;;;;N;;;;; +1CDAF;BLOCK OCTANT-378;So;0;ON;;;;;N;;;;; +1CDB0;BLOCK OCTANT-1378;So;0;ON;;;;;N;;;;; +1CDB1;BLOCK OCTANT-2378;So;0;ON;;;;;N;;;;; +1CDB2;BLOCK OCTANT-12378;So;0;ON;;;;;N;;;;; +1CDB3;BLOCK OCTANT-478;So;0;ON;;;;;N;;;;; +1CDB4;BLOCK OCTANT-1478;So;0;ON;;;;;N;;;;; +1CDB5;BLOCK OCTANT-2478;So;0;ON;;;;;N;;;;; +1CDB6;BLOCK OCTANT-12478;So;0;ON;;;;;N;;;;; +1CDB7;BLOCK OCTANT-3478;So;0;ON;;;;;N;;;;; +1CDB8;BLOCK OCTANT-13478;So;0;ON;;;;;N;;;;; +1CDB9;BLOCK OCTANT-23478;So;0;ON;;;;;N;;;;; +1CDBA;BLOCK OCTANT-123478;So;0;ON;;;;;N;;;;; +1CDBB;BLOCK OCTANT-578;So;0;ON;;;;;N;;;;; +1CDBC;BLOCK OCTANT-1578;So;0;ON;;;;;N;;;;; +1CDBD;BLOCK OCTANT-2578;So;0;ON;;;;;N;;;;; +1CDBE;BLOCK OCTANT-12578;So;0;ON;;;;;N;;;;; +1CDBF;BLOCK OCTANT-3578;So;0;ON;;;;;N;;;;; +1CDC0;BLOCK OCTANT-13578;So;0;ON;;;;;N;;;;; +1CDC1;BLOCK OCTANT-23578;So;0;ON;;;;;N;;;;; +1CDC2;BLOCK OCTANT-123578;So;0;ON;;;;;N;;;;; +1CDC3;BLOCK OCTANT-4578;So;0;ON;;;;;N;;;;; +1CDC4;BLOCK OCTANT-14578;So;0;ON;;;;;N;;;;; +1CDC5;BLOCK OCTANT-24578;So;0;ON;;;;;N;;;;; +1CDC6;BLOCK OCTANT-124578;So;0;ON;;;;;N;;;;; +1CDC7;BLOCK OCTANT-34578;So;0;ON;;;;;N;;;;; +1CDC8;BLOCK OCTANT-134578;So;0;ON;;;;;N;;;;; +1CDC9;BLOCK OCTANT-234578;So;0;ON;;;;;N;;;;; +1CDCA;BLOCK OCTANT-1234578;So;0;ON;;;;;N;;;;; +1CDCB;BLOCK OCTANT-678;So;0;ON;;;;;N;;;;; +1CDCC;BLOCK OCTANT-1678;So;0;ON;;;;;N;;;;; +1CDCD;BLOCK OCTANT-2678;So;0;ON;;;;;N;;;;; +1CDCE;BLOCK OCTANT-12678;So;0;ON;;;;;N;;;;; +1CDCF;BLOCK OCTANT-3678;So;0;ON;;;;;N;;;;; +1CDD0;BLOCK OCTANT-13678;So;0;ON;;;;;N;;;;; +1CDD1;BLOCK OCTANT-23678;So;0;ON;;;;;N;;;;; +1CDD2;BLOCK OCTANT-123678;So;0;ON;;;;;N;;;;; +1CDD3;BLOCK OCTANT-4678;So;0;ON;;;;;N;;;;; +1CDD4;BLOCK OCTANT-14678;So;0;ON;;;;;N;;;;; +1CDD5;BLOCK OCTANT-24678;So;0;ON;;;;;N;;;;; +1CDD6;BLOCK OCTANT-124678;So;0;ON;;;;;N;;;;; +1CDD7;BLOCK OCTANT-34678;So;0;ON;;;;;N;;;;; +1CDD8;BLOCK OCTANT-134678;So;0;ON;;;;;N;;;;; +1CDD9;BLOCK OCTANT-234678;So;0;ON;;;;;N;;;;; +1CDDA;BLOCK OCTANT-1234678;So;0;ON;;;;;N;;;;; +1CDDB;BLOCK OCTANT-15678;So;0;ON;;;;;N;;;;; +1CDDC;BLOCK OCTANT-25678;So;0;ON;;;;;N;;;;; +1CDDD;BLOCK OCTANT-125678;So;0;ON;;;;;N;;;;; +1CDDE;BLOCK OCTANT-35678;So;0;ON;;;;;N;;;;; +1CDDF;BLOCK OCTANT-235678;So;0;ON;;;;;N;;;;; +1CDE0;BLOCK OCTANT-1235678;So;0;ON;;;;;N;;;;; +1CDE1;BLOCK OCTANT-45678;So;0;ON;;;;;N;;;;; +1CDE2;BLOCK OCTANT-145678;So;0;ON;;;;;N;;;;; +1CDE3;BLOCK OCTANT-1245678;So;0;ON;;;;;N;;;;; +1CDE4;BLOCK OCTANT-1345678;So;0;ON;;;;;N;;;;; +1CDE5;BLOCK OCTANT-2345678;So;0;ON;;;;;N;;;;; +1CDE6;TOP HALF STANDING PERSON;So;0;ON;;;;;N;;;;; +1CDE7;BOTTOM HALF STANDING PERSON;So;0;ON;;;;;N;;;;; +1CDE8;TOP HALF RIGHT-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDE9;BOTTOM HALF RIGHT-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDEA;TOP HALF RIGHT-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDEB;BOTTOM HALF RIGHT-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDEC;TOP HALF LEFT-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDED;BOTTOM HALF LEFT-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDEE;TOP HALF LEFT-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDEF;BOTTOM HALF LEFT-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDF0;TOP HALF FORWARD-FACING RUNNER;So;0;ON;;;;;N;;;;; +1CDF1;BOTTOM HALF FORWARD-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDF2;BOTTOM HALF FORWARD-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDF3;BOTTOM HALF FORWARD-FACING RUNNER FRAME-3;So;0;ON;;;;;N;;;;; +1CDF4;BOTTOM HALF FORWARD-FACING RUNNER FRAME-4;So;0;ON;;;;;N;;;;; +1CDF5;MOON LANDER;So;0;ON;;;;;N;;;;; +1CDF6;TOP HALF FLAILING ROBOT FRAME-1;So;0;ON;;;;;N;;;;; +1CDF7;TOP HALF FLAILING ROBOT FRAME-2;So;0;ON;;;;;N;;;;; +1CDF8;DOWN-POINTING AIRPLANE;So;0;ON;;;;;N;;;;; +1CDF9;LEFT-POINTING AIRPLANE;So;0;ON;;;;;N;;;;; +1CDFA;SMALL UP-POINTING AIRPLANE;So;0;ON;;;;;N;;;;; +1CDFB;UP-POINTING FROG;So;0;ON;;;;;N;;;;; +1CDFC;DOWN-POINTING FROG;So;0;ON;;;;;N;;;;; +1CDFD;EXPLOSION FRAME-1;So;0;ON;;;;;N;;;;; +1CDFE;EXPLOSION FRAME-2;So;0;ON;;;;;N;;;;; +1CDFF;EXPLOSION FRAME-3;So;0;ON;;;;;N;;;;; +1CE00;RIGHT HALF AND LEFT HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1CE01;LOWER HALF AND UPPER HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1CE02;EXPLOSION AT HORIZON;So;0;ON;;;;;N;;;;; +1CE03;UPPER HALF HEAVY WHITE SQUARE;So;0;ON;;;;;N;;;;; +1CE04;LOWER HALF HEAVY WHITE SQUARE;So;0;ON;;;;;N;;;;; +1CE05;HEAVY WHITE SQUARE CONTAINING BLACK VERY SMALL SQUARE;So;0;ON;;;;;N;;;;; +1CE06;WHITE VERTICAL RECTANGLE WITH HORIZONTAL BAR;So;0;ON;;;;;N;;;;; +1CE07;TOP LEFT BLACK LEFT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;;;;; +1CE08;FUNNEL;So;0;ON;;;;;N;;;;; +1CE09;BOX DRAWINGS DOUBLE DIAGONAL LOWER LEFT TO MIDDLE CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CE0A;BOX DRAWINGS DOUBLE DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO UPPER RIGHT;So;0;ON;;;;;N;;;;; +1CE0B;LEFT HALF WHITE ELLIPSE;So;0;ON;;;;;N;;;;; +1CE0C;RIGHT HALF WHITE ELLIPSE;So;0;ON;;;;;N;;;;; +1CE0D;LEFT HALF TRIPLE DASH HORIZONTAL;So;0;ON;;;;;N;;;;; +1CE0E;RIGHT HALF TRIPLE DASH HORIZONTAL;So;0;ON;;;;;N;;;;; +1CE0F;HORIZONTAL LINE WITH TICK MARK;So;0;ON;;;;;N;;;;; +1CE10;LEFT HALF HORIZONTAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE11;RIGHT HALF HORIZONTAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE12;HORIZONTAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE13;LOWER HALF VERTICAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE14;UPPER HALF VERTICAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE15;VERTICAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE16;BOX DRAWINGS LIGHT VERTICAL AND TOP RIGHT;So;0;ON;;;;;N;;;;; +1CE17;BOX DRAWINGS LIGHT VERTICAL AND BOTTOM RIGHT;So;0;ON;;;;;N;;;;; +1CE18;BOX DRAWINGS LIGHT VERTICAL AND TOP LEFT;So;0;ON;;;;;N;;;;; +1CE19;BOX DRAWINGS LIGHT VERTICAL AND BOTTOM LEFT;So;0;ON;;;;;N;;;;; +1CE1A;LARGE TYPE PIECE UPPER LEFT ARC;So;0;ON;;;;;N;;;;; +1CE1B;LARGE TYPE PIECE UPPER LEFT CORNER;So;0;ON;;;;;N;;;;; +1CE1C;LARGE TYPE PIECE UPPER TERMINAL;So;0;ON;;;;;N;;;;; +1CE1D;LARGE TYPE PIECE UPPER LEFT CROTCH;So;0;ON;;;;;N;;;;; +1CE1E;LARGE TYPE PIECE LEFT ARM;So;0;ON;;;;;N;;;;; +1CE1F;LARGE TYPE PIECE CROSSBAR;So;0;ON;;;;;N;;;;; +1CE20;LARGE TYPE PIECE CROSSBAR WITH LOWER STEM;So;0;ON;;;;;N;;;;; +1CE21;LARGE TYPE PIECE UPPER HALF VERTEX OF M;So;0;ON;;;;;N;;;;; +1CE22;LARGE TYPE PIECE DIAGONAL LOWER LEFT;So;0;ON;;;;;N;;;;; +1CE23;LARGE TYPE PIECE SHORT UPPER TERMINAL;So;0;ON;;;;;N;;;;; +1CE24;LARGE TYPE PIECE UPPER RIGHT ARC;So;0;ON;;;;;N;;;;; +1CE25;LARGE TYPE PIECE RIGHT ARM;So;0;ON;;;;;N;;;;; +1CE26;LARGE TYPE PIECE UPPER RIGHT CROTCH;So;0;ON;;;;;N;;;;; +1CE27;LARGE TYPE PIECE UPPER RIGHT CORNER;So;0;ON;;;;;N;;;;; +1CE28;LARGE TYPE PIECE STEM WITH RIGHT CROSSBAR;So;0;ON;;;;;N;;;;; +1CE29;LARGE TYPE PIECE STEM;So;0;ON;;;;;N;;;;; +1CE2A;LARGE TYPE PIECE DIAGONAL UPPER RIGHT AND LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CE2B;LARGE TYPE PIECE DIAGONAL UPPER RIGHT;So;0;ON;;;;;N;;;;; +1CE2C;LARGE TYPE PIECE DIAGONAL LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CE2D;LARGE TYPE PIECE SHORT LOWER TERMINAL;So;0;ON;;;;;N;;;;; +1CE2E;LARGE TYPE PIECE LOWER LEFT AND UPPER LEFT ARC;So;0;ON;;;;;N;;;;; +1CE2F;LARGE TYPE PIECE CENTRE OF K;So;0;ON;;;;;N;;;;; +1CE30;LARGE TYPE PIECE LOWER HALF VERTEX OF M;So;0;ON;;;;;N;;;;; +1CE31;LARGE TYPE PIECE UPPER HALF VERTEX OF W;So;0;ON;;;;;N;;;;; +1CE32;LARGE TYPE PIECE CENTRE OF X;So;0;ON;;;;;N;;;;; +1CE33;LARGE TYPE PIECE CENTRE OF Y;So;0;ON;;;;;N;;;;; +1CE34;LARGE TYPE PIECE CENTRE OF Z WITH CROSSBAR;So;0;ON;;;;;N;;;;; +1CE35;LARGE TYPE PIECE RAISED UPPER LEFT ARC;So;0;ON;;;;;N;;;;; +1CE36;LARGE TYPE PIECE STEM WITH LEFT CROSSBAR;So;0;ON;;;;;N;;;;; +1CE37;LARGE TYPE PIECE LOWER RIGHT AND UPPER RIGHT ARC;So;0;ON;;;;;N;;;;; +1CE38;LARGE TYPE PIECE DIAGONAL UPPER LEFT AND LOWER LEFT;So;0;ON;;;;;N;;;;; +1CE39;LARGE TYPE PIECE STEM WITH LEFT JOINT;So;0;ON;;;;;N;;;;; +1CE3A;LARGE TYPE PIECE STEM WITH CROSSBAR;So;0;ON;;;;;N;;;;; +1CE3B;LARGE TYPE PIECE DIAGONAL UPPER LEFT;So;0;ON;;;;;N;;;;; +1CE3C;LARGE TYPE PIECE LOWER TERMINAL;So;0;ON;;;;;N;;;;; +1CE3D;LARGE TYPE PIECE LOWER LEFT CORNER;So;0;ON;;;;;N;;;;; +1CE3E;LARGE TYPE PIECE LOWER LEFT ARC;So;0;ON;;;;;N;;;;; +1CE3F;LARGE TYPE PIECE LOWER LEFT CROTCH;So;0;ON;;;;;N;;;;; +1CE40;LARGE TYPE PIECE CROSSBAR WITH UPPER STEM;So;0;ON;;;;;N;;;;; +1CE41;LARGE TYPE PIECE VERTEX OF V;So;0;ON;;;;;N;;;;; +1CE42;LARGE TYPE PIECE LOWER HALF VERTEX OF W;So;0;ON;;;;;N;;;;; +1CE43;LARGE TYPE PIECE LOWER RIGHT ARC;So;0;ON;;;;;N;;;;; +1CE44;LARGE TYPE PIECE LOWER RIGHT CORNER;So;0;ON;;;;;N;;;;; +1CE45;LARGE TYPE PIECE LOWER RIGHT ARC WITH TAIL;So;0;ON;;;;;N;;;;; +1CE46;LARGE TYPE PIECE LOWER RIGHT CROTCH;So;0;ON;;;;;N;;;;; +1CE47;LARGE TYPE PIECE STEM-45;So;0;ON;;;;;N;;;;; +1CE48;LARGE TYPE PIECE STEM-2345;So;0;ON;;;;;N;;;;; +1CE49;LARGE TYPE PIECE STEM-4;So;0;ON;;;;;N;;;;; +1CE4A;LARGE TYPE PIECE STEM-34;So;0;ON;;;;;N;;;;; +1CE4B;LARGE TYPE PIECE STEM-234;So;0;ON;;;;;N;;;;; +1CE4C;LARGE TYPE PIECE STEM-1234;So;0;ON;;;;;N;;;;; +1CE4D;LARGE TYPE PIECE STEM-3;So;0;ON;;;;;N;;;;; +1CE4E;LARGE TYPE PIECE STEM-23;So;0;ON;;;;;N;;;;; +1CE4F;LARGE TYPE PIECE STEM-2;So;0;ON;;;;;N;;;;; +1CE50;LARGE TYPE PIECE STEM-12;So;0;ON;;;;;N;;;;; +1CE51;SEPARATED BLOCK SEXTANT-1;So;0;ON;;;;;N;;;;; +1CE52;SEPARATED BLOCK SEXTANT-2;So;0;ON;;;;;N;;;;; +1CE53;SEPARATED BLOCK SEXTANT-12;So;0;ON;;;;;N;;;;; +1CE54;SEPARATED BLOCK SEXTANT-3;So;0;ON;;;;;N;;;;; +1CE55;SEPARATED BLOCK SEXTANT-13;So;0;ON;;;;;N;;;;; +1CE56;SEPARATED BLOCK SEXTANT-23;So;0;ON;;;;;N;;;;; +1CE57;SEPARATED BLOCK SEXTANT-123;So;0;ON;;;;;N;;;;; +1CE58;SEPARATED BLOCK SEXTANT-4;So;0;ON;;;;;N;;;;; +1CE59;SEPARATED BLOCK SEXTANT-14;So;0;ON;;;;;N;;;;; +1CE5A;SEPARATED BLOCK SEXTANT-24;So;0;ON;;;;;N;;;;; +1CE5B;SEPARATED BLOCK SEXTANT-124;So;0;ON;;;;;N;;;;; +1CE5C;SEPARATED BLOCK SEXTANT-34;So;0;ON;;;;;N;;;;; +1CE5D;SEPARATED BLOCK SEXTANT-134;So;0;ON;;;;;N;;;;; +1CE5E;SEPARATED BLOCK SEXTANT-234;So;0;ON;;;;;N;;;;; +1CE5F;SEPARATED BLOCK SEXTANT-1234;So;0;ON;;;;;N;;;;; +1CE60;SEPARATED BLOCK SEXTANT-5;So;0;ON;;;;;N;;;;; +1CE61;SEPARATED BLOCK SEXTANT-15;So;0;ON;;;;;N;;;;; +1CE62;SEPARATED BLOCK SEXTANT-25;So;0;ON;;;;;N;;;;; +1CE63;SEPARATED BLOCK SEXTANT-125;So;0;ON;;;;;N;;;;; +1CE64;SEPARATED BLOCK SEXTANT-35;So;0;ON;;;;;N;;;;; +1CE65;SEPARATED BLOCK SEXTANT-135;So;0;ON;;;;;N;;;;; +1CE66;SEPARATED BLOCK SEXTANT-235;So;0;ON;;;;;N;;;;; +1CE67;SEPARATED BLOCK SEXTANT-1235;So;0;ON;;;;;N;;;;; +1CE68;SEPARATED BLOCK SEXTANT-45;So;0;ON;;;;;N;;;;; +1CE69;SEPARATED BLOCK SEXTANT-145;So;0;ON;;;;;N;;;;; +1CE6A;SEPARATED BLOCK SEXTANT-245;So;0;ON;;;;;N;;;;; +1CE6B;SEPARATED BLOCK SEXTANT-1245;So;0;ON;;;;;N;;;;; +1CE6C;SEPARATED BLOCK SEXTANT-345;So;0;ON;;;;;N;;;;; +1CE6D;SEPARATED BLOCK SEXTANT-1345;So;0;ON;;;;;N;;;;; +1CE6E;SEPARATED BLOCK SEXTANT-2345;So;0;ON;;;;;N;;;;; +1CE6F;SEPARATED BLOCK SEXTANT-12345;So;0;ON;;;;;N;;;;; +1CE70;SEPARATED BLOCK SEXTANT-6;So;0;ON;;;;;N;;;;; +1CE71;SEPARATED BLOCK SEXTANT-16;So;0;ON;;;;;N;;;;; +1CE72;SEPARATED BLOCK SEXTANT-26;So;0;ON;;;;;N;;;;; +1CE73;SEPARATED BLOCK SEXTANT-126;So;0;ON;;;;;N;;;;; +1CE74;SEPARATED BLOCK SEXTANT-36;So;0;ON;;;;;N;;;;; +1CE75;SEPARATED BLOCK SEXTANT-136;So;0;ON;;;;;N;;;;; +1CE76;SEPARATED BLOCK SEXTANT-236;So;0;ON;;;;;N;;;;; +1CE77;SEPARATED BLOCK SEXTANT-1236;So;0;ON;;;;;N;;;;; +1CE78;SEPARATED BLOCK SEXTANT-46;So;0;ON;;;;;N;;;;; +1CE79;SEPARATED BLOCK SEXTANT-146;So;0;ON;;;;;N;;;;; +1CE7A;SEPARATED BLOCK SEXTANT-246;So;0;ON;;;;;N;;;;; +1CE7B;SEPARATED BLOCK SEXTANT-1246;So;0;ON;;;;;N;;;;; +1CE7C;SEPARATED BLOCK SEXTANT-346;So;0;ON;;;;;N;;;;; +1CE7D;SEPARATED BLOCK SEXTANT-1346;So;0;ON;;;;;N;;;;; +1CE7E;SEPARATED BLOCK SEXTANT-2346;So;0;ON;;;;;N;;;;; +1CE7F;SEPARATED BLOCK SEXTANT-12346;So;0;ON;;;;;N;;;;; +1CE80;SEPARATED BLOCK SEXTANT-56;So;0;ON;;;;;N;;;;; +1CE81;SEPARATED BLOCK SEXTANT-156;So;0;ON;;;;;N;;;;; +1CE82;SEPARATED BLOCK SEXTANT-256;So;0;ON;;;;;N;;;;; +1CE83;SEPARATED BLOCK SEXTANT-1256;So;0;ON;;;;;N;;;;; +1CE84;SEPARATED BLOCK SEXTANT-356;So;0;ON;;;;;N;;;;; +1CE85;SEPARATED BLOCK SEXTANT-1356;So;0;ON;;;;;N;;;;; +1CE86;SEPARATED BLOCK SEXTANT-2356;So;0;ON;;;;;N;;;;; +1CE87;SEPARATED BLOCK SEXTANT-12356;So;0;ON;;;;;N;;;;; +1CE88;SEPARATED BLOCK SEXTANT-456;So;0;ON;;;;;N;;;;; +1CE89;SEPARATED BLOCK SEXTANT-1456;So;0;ON;;;;;N;;;;; +1CE8A;SEPARATED BLOCK SEXTANT-2456;So;0;ON;;;;;N;;;;; +1CE8B;SEPARATED BLOCK SEXTANT-12456;So;0;ON;;;;;N;;;;; +1CE8C;SEPARATED BLOCK SEXTANT-3456;So;0;ON;;;;;N;;;;; +1CE8D;SEPARATED BLOCK SEXTANT-13456;So;0;ON;;;;;N;;;;; +1CE8E;SEPARATED BLOCK SEXTANT-23456;So;0;ON;;;;;N;;;;; +1CE8F;SEPARATED BLOCK SEXTANT-123456;So;0;ON;;;;;N;;;;; +1CE90;UPPER LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE91;UPPER CENTRE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE92;UPPER CENTRE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE93;UPPER RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE94;UPPER MIDDLE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE95;UPPER MIDDLE CENTRE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE96;UPPER MIDDLE CENTRE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE97;UPPER MIDDLE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE98;LOWER MIDDLE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE99;LOWER MIDDLE CENTRE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9A;LOWER MIDDLE CENTRE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9B;LOWER MIDDLE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9C;LOWER LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9D;LOWER CENTRE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9E;LOWER CENTRE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9F;LOWER RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CEA0;RIGHT HALF LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA1;RIGHT THREE QUARTERS LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA2;LEFT THREE QUARTERS LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA3;LEFT HALF LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA4;LOWER HALF LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA5;LOWER THREE QUARTERS LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA6;UPPER THREE QUARTERS LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA7;UPPER HALF LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA8;LEFT HALF UPPER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA9;LEFT THREE QUARTERS UPPER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAA;RIGHT THREE QUARTERS UPPER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAB;RIGHT HALF UPPER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAC;UPPER HALF RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAD;UPPER THREE QUARTERS RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAE;LOWER THREE QUARTERS RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAF;LOWER HALF RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEB0;HORIZONTAL ZIGZAG LINE;So;0;ON;;;;;N;;;;; +1CEB1;KEYHOLE;So;0;ON;;;;;N;;;;; +1CEB2;OLD PERSONAL COMPUTER WITH MONITOR IN PORTRAIT ORIENTATION;So;0;ON;;;;;N;;;;; +1CEB3;BLACK RIGHT TRIANGLE CARET;So;0;ON;;;;;N;;;;; 1CF00;ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT;Mn;0;NSM;;;;;N;;;;; 1CF01;ZNAMENNY COMBINING MARK NIZKO S KRYZHEM ON LEFT;Mn;0;NSM;;;;;N;;;;; 1CF02;ZNAMENNY COMBINING MARK TSATA ON LEFT;Mn;0;NSM;;;;;N;;;;; @@ -29545,7 +34630,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D6BE;MATHEMATICAL BOLD CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D6BF;MATHEMATICAL BOLD CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D6C0;MATHEMATICAL BOLD CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D6C1;MATHEMATICAL BOLD NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D6C1;MATHEMATICAL BOLD NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D6C2;MATHEMATICAL BOLD SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D6C3;MATHEMATICAL BOLD SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D6C4;MATHEMATICAL BOLD SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -29603,7 +34688,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D6F8;MATHEMATICAL ITALIC CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D6F9;MATHEMATICAL ITALIC CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D6FA;MATHEMATICAL ITALIC CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D6FB;MATHEMATICAL ITALIC NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D6FB;MATHEMATICAL ITALIC NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D6FC;MATHEMATICAL ITALIC SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D6FD;MATHEMATICAL ITALIC SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D6FE;MATHEMATICAL ITALIC SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -29661,7 +34746,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D732;MATHEMATICAL BOLD ITALIC CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D733;MATHEMATICAL BOLD ITALIC CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D734;MATHEMATICAL BOLD ITALIC CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D735;MATHEMATICAL BOLD ITALIC NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D735;MATHEMATICAL BOLD ITALIC NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D736;MATHEMATICAL BOLD ITALIC SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D737;MATHEMATICAL BOLD ITALIC SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D738;MATHEMATICAL BOLD ITALIC SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -29719,7 +34804,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D76C;MATHEMATICAL SANS-SERIF BOLD CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D76D;MATHEMATICAL SANS-SERIF BOLD CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D76E;MATHEMATICAL SANS-SERIF BOLD CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D76F;MATHEMATICAL SANS-SERIF BOLD NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D76F;MATHEMATICAL SANS-SERIF BOLD NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D770;MATHEMATICAL SANS-SERIF BOLD SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D771;MATHEMATICAL SANS-SERIF BOLD SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D772;MATHEMATICAL SANS-SERIF BOLD SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -29777,7 +34862,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D7A6;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D7A7;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D7A8;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D7A9;MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D7A9;MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D7AA;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D7AB;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D7AC;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -30875,6 +35960,50 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1E4F7;NAG MUNDARI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; 1E4F8;NAG MUNDARI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; 1E4F9;NAG MUNDARI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +1E5D0;OL ONAL LETTER O;Lo;0;L;;;;;N;;;;; +1E5D1;OL ONAL LETTER OM;Lo;0;L;;;;;N;;;;; +1E5D2;OL ONAL LETTER ONG;Lo;0;L;;;;;N;;;;; +1E5D3;OL ONAL LETTER ORR;Lo;0;L;;;;;N;;;;; +1E5D4;OL ONAL LETTER OO;Lo;0;L;;;;;N;;;;; +1E5D5;OL ONAL LETTER OY;Lo;0;L;;;;;N;;;;; +1E5D6;OL ONAL LETTER A;Lo;0;L;;;;;N;;;;; +1E5D7;OL ONAL LETTER AD;Lo;0;L;;;;;N;;;;; +1E5D8;OL ONAL LETTER AB;Lo;0;L;;;;;N;;;;; +1E5D9;OL ONAL LETTER AH;Lo;0;L;;;;;N;;;;; +1E5DA;OL ONAL LETTER AL;Lo;0;L;;;;;N;;;;; +1E5DB;OL ONAL LETTER AW;Lo;0;L;;;;;N;;;;; +1E5DC;OL ONAL LETTER I;Lo;0;L;;;;;N;;;;; +1E5DD;OL ONAL LETTER IT;Lo;0;L;;;;;N;;;;; +1E5DE;OL ONAL LETTER IP;Lo;0;L;;;;;N;;;;; +1E5DF;OL ONAL LETTER ITT;Lo;0;L;;;;;N;;;;; +1E5E0;OL ONAL LETTER ID;Lo;0;L;;;;;N;;;;; +1E5E1;OL ONAL LETTER IN;Lo;0;L;;;;;N;;;;; +1E5E2;OL ONAL LETTER U;Lo;0;L;;;;;N;;;;; +1E5E3;OL ONAL LETTER UK;Lo;0;L;;;;;N;;;;; +1E5E4;OL ONAL LETTER UDD;Lo;0;L;;;;;N;;;;; +1E5E5;OL ONAL LETTER UJ;Lo;0;L;;;;;N;;;;; +1E5E6;OL ONAL LETTER UNY;Lo;0;L;;;;;N;;;;; +1E5E7;OL ONAL LETTER UR;Lo;0;L;;;;;N;;;;; +1E5E8;OL ONAL LETTER E;Lo;0;L;;;;;N;;;;; +1E5E9;OL ONAL LETTER ES;Lo;0;L;;;;;N;;;;; +1E5EA;OL ONAL LETTER EH;Lo;0;L;;;;;N;;;;; +1E5EB;OL ONAL LETTER EC;Lo;0;L;;;;;N;;;;; +1E5EC;OL ONAL LETTER ENN;Lo;0;L;;;;;N;;;;; +1E5ED;OL ONAL LETTER EG;Lo;0;L;;;;;N;;;;; +1E5EE;OL ONAL SIGN MU;Mn;230;NSM;;;;;N;;;;; +1E5EF;OL ONAL SIGN IKIR;Mn;220;NSM;;;;;N;;;;; +1E5F0;OL ONAL SIGN HODDOND;Lo;0;L;;;;;N;;;;; +1E5F1;OL ONAL DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +1E5F2;OL ONAL DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +1E5F3;OL ONAL DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +1E5F4;OL ONAL DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +1E5F5;OL ONAL DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +1E5F6;OL ONAL DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +1E5F7;OL ONAL DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +1E5F8;OL ONAL DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +1E5F9;OL ONAL DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +1E5FA;OL ONAL DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +1E5FF;OL ONAL ABBREVIATION SIGN;Po;0;L;;;;;N;;;;; 1E7E0;ETHIOPIC SYLLABLE HHYA;Lo;0;L;;;;;N;;;;; 1E7E1;ETHIOPIC SYLLABLE HHYU;Lo;0;L;;;;;N;;;;; 1E7E2;ETHIOPIC SYLLABLE HHYI;Lo;0;L;;;;;N;;;;; @@ -33357,6 +38486,18 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1F8AD;WHITE ARROW SHAFT WIDTH TWO THIRDS;So;0;ON;;;;;N;;;;; 1F8B0;ARROW POINTING UPWARDS THEN NORTH WEST;So;0;ON;;;;;N;;;;; 1F8B1;ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST;So;0;ON;;;;;N;;;;; +1F8B2;RIGHTWARDS ARROW WITH LOWER HOOK;So;0;ON;;;;;N;;;;; +1F8B3;DOWNWARDS BLACK ARROW TO BAR;So;0;ON;;;;;N;;;;; +1F8B4;NEGATIVE SQUARED LEFTWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8B5;NEGATIVE SQUARED UPWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8B6;NEGATIVE SQUARED RIGHTWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8B7;NEGATIVE SQUARED DOWNWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8B8;NORTH WEST ARROW FROM BAR;So;0;ON;;;;;N;;;;; +1F8B9;NORTH EAST ARROW FROM BAR;So;0;ON;;;;;N;;;;; +1F8BA;SOUTH EAST ARROW FROM BAR;So;0;ON;;;;;N;;;;; +1F8BB;SOUTH WEST ARROW FROM BAR;So;0;ON;;;;;N;;;;; +1F8C0;LEFTWARDS ARROW FROM DOWNWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8C1;RIGHTWARDS ARROW FROM DOWNWARDS ARROW;So;0;ON;;;;;N;;;;; 1F900;CIRCLED CROSS FORMEE WITH FOUR DOTS;So;0;ON;;;;;N;;;;; 1F901;CIRCLED CROSS FORMEE WITH TWO DOTS;So;0;ON;;;;;N;;;;; 1F902;CIRCLED CROSS FORMEE;So;0;ON;;;;;N;;;;; @@ -33733,6 +38874,8 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FA86;NESTING DOLLS;So;0;ON;;;;;N;;;;; 1FA87;MARACAS;So;0;ON;;;;;N;;;;; 1FA88;FLUTE;So;0;ON;;;;;N;;;;; +1FA89;HARP;So;0;ON;;;;;N;;;;; +1FA8F;SHOVEL;So;0;ON;;;;;N;;;;; 1FA90;RINGED PLANET;So;0;ON;;;;;N;;;;; 1FA91;CHAIR;So;0;ON;;;;;N;;;;; 1FA92;RAZOR;So;0;ON;;;;;N;;;;; @@ -33779,6 +38922,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FABB;HYACINTH;So;0;ON;;;;;N;;;;; 1FABC;JELLYFISH;So;0;ON;;;;;N;;;;; 1FABD;WING;So;0;ON;;;;;N;;;;; +1FABE;LEAFLESS TREE;So;0;ON;;;;;N;;;;; 1FABF;GOOSE;So;0;ON;;;;;N;;;;; 1FAC0;ANATOMICAL HEART;So;0;ON;;;;;N;;;;; 1FAC1;LUNGS;So;0;ON;;;;;N;;;;; @@ -33786,6 +38930,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FAC3;PREGNANT MAN;So;0;ON;;;;;N;;;;; 1FAC4;PREGNANT PERSON;So;0;ON;;;;;N;;;;; 1FAC5;PERSON WITH CROWN;So;0;ON;;;;;N;;;;; +1FAC6;FINGERPRINT;So;0;ON;;;;;N;;;;; 1FACE;MOOSE;So;0;ON;;;;;N;;;;; 1FACF;DONKEY;So;0;ON;;;;;N;;;;; 1FAD0;BLUEBERRIES;So;0;ON;;;;;N;;;;; @@ -33800,6 +38945,8 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FAD9;JAR;So;0;ON;;;;;N;;;;; 1FADA;GINGER ROOT;So;0;ON;;;;;N;;;;; 1FADB;PEA POD;So;0;ON;;;;;N;;;;; +1FADC;ROOT VEGETABLE;So;0;ON;;;;;N;;;;; +1FADF;SPLATTER;So;0;ON;;;;;N;;;;; 1FAE0;MELTING FACE;So;0;ON;;;;;N;;;;; 1FAE1;SALUTING FACE;So;0;ON;;;;;N;;;;; 1FAE2;FACE WITH OPEN EYES AND HAND OVER MOUTH;So;0;ON;;;;;N;;;;; @@ -33809,6 +38956,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FAE6;BITING LIP;So;0;ON;;;;;N;;;;; 1FAE7;BUBBLES;So;0;ON;;;;;N;;;;; 1FAE8;SHAKING FACE;So;0;ON;;;;;N;;;;; +1FAE9;FACE WITH BAGS UNDER EYES;So;0;ON;;;;;N;;;;; 1FAF0;HAND WITH INDEX FINGER AND THUMB CROSSED;So;0;ON;;;;;N;;;;; 1FAF1;RIGHTWARDS HAND;So;0;ON;;;;;N;;;;; 1FAF2;LEFTWARDS HAND;So;0;ON;;;;;N;;;;; @@ -34020,6 +39168,43 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FBC8;STICK FIGURE LEANING RIGHT;So;0;ON;;;;;N;;;;; 1FBC9;STICK FIGURE WITH DRESS;So;0;ON;;;;;N;;;;; 1FBCA;WHITE UP-POINTING CHEVRON;So;0;ON;;;;;N;;;;; +1FBCB;WHITE CROSS MARK;So;0;ON;;;;;N;;;;; +1FBCC;RAISED SMALL LEFT SQUARE BRACKET;So;0;ON;;;;;N;;;;; +1FBCD;BLACK SMALL UP-POINTING CHEVRON;So;0;ON;;;;;N;;;;; +1FBCE;LEFT TWO THIRDS BLOCK;So;0;ON;;;;;N;;;;; +1FBCF;LEFT ONE THIRD BLOCK;So;0;ON;;;;;N;;;;; +1FBD0;BOX DRAWINGS LIGHT DIAGONAL MIDDLE RIGHT TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1FBD1;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE LEFT;So;0;ON;;;;;N;;;;; +1FBD2;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE RIGHT;So;0;ON;;;;;N;;;;; +1FBD3;BOX DRAWINGS LIGHT DIAGONAL MIDDLE LEFT TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBD4;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER CENTRE;So;0;ON;;;;;N;;;;; +1FBD5;BOX DRAWINGS LIGHT DIAGONAL UPPER CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBD6;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER CENTRE;So;0;ON;;;;;N;;;;; +1FBD7;BOX DRAWINGS LIGHT DIAGONAL UPPER CENTRE TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1FBD8;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO UPPER RIGHT;So;0;ON;;;;;N;;;;; +1FBD9;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBDA;BOX DRAWINGS LIGHT DIAGONAL LOWER LEFT TO MIDDLE CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBDB;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1FBDC;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER CENTRE TO UPPER RIGHT;So;0;ON;;;;;N;;;;; +1FBDD;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE LEFT TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBDE;BOX DRAWINGS LIGHT DIAGONAL LOWER LEFT TO UPPER CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBDF;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE RIGHT TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1FBE0;TOP JUSTIFIED LOWER HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1FBE1;RIGHT JUSTIFIED LEFT HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1FBE2;BOTTOM JUSTIFIED UPPER HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1FBE3;LEFT JUSTIFIED RIGHT HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1FBE4;UPPER CENTRE ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1FBE5;LOWER CENTRE ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1FBE6;MIDDLE LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1FBE7;MIDDLE RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1FBE8;TOP JUSTIFIED LOWER HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBE9;RIGHT JUSTIFIED LEFT HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEA;BOTTOM JUSTIFIED UPPER HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEB;LEFT JUSTIFIED RIGHT HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEC;TOP RIGHT JUSTIFIED LOWER LEFT QUARTER BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBED;BOTTOM LEFT JUSTIFIED UPPER RIGHT QUARTER BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEE;BOTTOM RIGHT JUSTIFIED UPPER LEFT QUARTER BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEF;TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE;So;0;ON;;;;;N;;;;; 1FBF0;SEGMENTED DIGIT ZERO;Nd;0;EN;<font> 0030;0;0;0;N;;;;; 1FBF1;SEGMENTED DIGIT ONE;Nd;0;EN;<font> 0031;1;1;1;N;;;;; 1FBF2;SEGMENTED DIGIT TWO;Nd;0;EN;<font> 0032;2;2;2;N;;;;; diff --git a/localedata/unicode-gen/ctype_compatibility.py b/localedata/unicode-gen/ctype_compatibility.py index c3ac1b7bd2..8907a5ecd5 100755 --- a/localedata/unicode-gen/ctype_compatibility.py +++ b/localedata/unicode-gen/ctype_compatibility.py @@ -10,7 +10,7 @@ # # The GNU C Library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public diff --git a/localedata/unicode-gen/ctype_compatibility_test_cases.py b/localedata/unicode-gen/ctype_compatibility_test_cases.py index 5998e5a46a..7a94d89f47 100644 --- a/localedata/unicode-gen/ctype_compatibility_test_cases.py +++ b/localedata/unicode-gen/ctype_compatibility_test_cases.py @@ -9,7 +9,7 @@ # # The GNU C Library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public diff --git a/localedata/unicode-gen/utf8_compatibility.py b/localedata/unicode-gen/utf8_compatibility.py index 32566363c6..26e33eff62 100755 --- a/localedata/unicode-gen/utf8_compatibility.py +++ b/localedata/unicode-gen/utf8_compatibility.py @@ -10,7 +10,7 @@ # # The GNU C Library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public diff --git a/localedata/unicode-gen/utf8_gen.py b/localedata/unicode-gen/utf8_gen.py index 1be197a8f7..dd36db93ff 100755 --- a/localedata/unicode-gen/utf8_gen.py +++ b/localedata/unicode-gen/utf8_gen.py @@ -11,7 +11,7 @@ # # The GNU C Library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public diff --git a/manual/Makefile b/manual/Makefile index a6c05db540..6a4cfbeb76 100644 --- a/manual/Makefile +++ b/manual/Makefile @@ -69,6 +69,11 @@ chapters.% top-menu.%: libc-texinfo.sh $(texis-path) Makefile '$(chapters)' \ '$(appendices) $(licenses)' +# Verify validity of texinfo sources against project rules. +tests-special += \ + $(objpfx)check-deftype.out \ + $(objpfx)check-safety.out \ + # tests-special $(objpfx)libc.dvi $(objpfx)libc.pdf $(objpfx)libc.info: \ $(addprefix $(objpfx),$(libc-texi-generated)) @@ -83,10 +88,19 @@ $(objpfx)summary.texi: $(objpfx)stamp-summary ; $(objpfx)stamp-summary: summary.pl $(filter-out $(objpfx)summary.texi, \ $(texis-path)) $(SHELL) ./check-safety.sh $(filter-out $(objpfx)%, $(texis-path)) + $(SHELL) ./check-deftype.sh $(filter-out $(objpfx)%, $(texis-path)) LC_ALL=C $(PERL) $^ > $(objpfx)summary-tmp $(move-if-change) $(objpfx)summary-tmp $(objpfx)summary.texi touch $@ +$(objpfx)check-safety.out: check-safety.sh + $(SHELL) $< > $@ ; \ + $(evaluate-test) + +$(objpfx)check-deftype.out: check-deftype.sh + $(SHELL) $< > $@ ; \ + $(evaluate-test) + # Generate a file which can be added to the `dir' content to provide direct # access to the documentation of the function, variables, and other # definitions. @@ -152,10 +166,19 @@ $(objpfx)%.pdf: %.texinfo # Distribution. -minimal-dist = summary.pl texis.awk tsort.awk libc-texinfo.sh libc.texinfo \ - libm-err.texi stamp-libm-err check-safety.sh \ - $(filter-out summary.texi, $(nonexamples)) \ - $(patsubst %.c.texi,examples/%.c, $(examples)) +minimal-dist = \ + $(filter-out summary.texi, $(nonexamples)) \ + $(patsubst %.c.texi,examples/%.c, $(examples)) \ + check-deftype.sh \ + check-safety.sh \ + libc-texinfo.sh \ + libc.texinfo \ + libm-err.texi \ + stamp-libm-err \ + summary.pl \ + texis.awk \ + tsort.awk \ + # minimal-dist indices = cp fn pg tp vr ky generated-dirs += libc diff --git a/manual/check-deftype.sh b/manual/check-deftype.sh new file mode 100644 index 0000000000..395c99af6a --- /dev/null +++ b/manual/check-deftype.sh @@ -0,0 +1,50 @@ +#!/bin/sh + +# Copyright 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +# Check that the @deftypefun command is called with the expected +# arguments and includes checking for common mistakes including +# failure to include a space after the function name, or incorrect +# quoting. + +success=: + +# If no arguments are given, take all *.texi files in the current directory. +test $# != 0 || set *.texi + +# We search for all @deftypefun and @deftypefunx command uses. +# Then we remove all of those that match our expectations. +# A @deftypefun or @deftypefunx command takes 3 arguments: +# - return type +# - name +# - arguments +# This is different from @deftypefn which includes an additional +# category which is implicit here. +grep -n -r '^@deftypefun' "$@" | +grep -v '^.*@deftypefunx\?'\ +' \({\?[a-zA-Z0-9_ *]*}\?\) \([a-zA-Z0-9_]*\) (.*)$' && +success=false + +# We search for all @deftypefn and @deftypefnx command uses. +# We have 4 arguments in the command including the category. +grep -n -r '^@deftypefn' "$@" | +grep -v '^.*@deftypefnx\?'\ +' {\?[a-zA-Z ]*}\? \({\?[a-zA-Z0-9@{}_ *]*}\?\) \([a-zA-Z0-9_]*\) (.*)$' && +success=false + +$success diff --git a/manual/creature.texi b/manual/creature.texi index be0a5ac7e6..09e1c9670f 100644 --- a/manual/creature.texi +++ b/manual/creature.texi @@ -233,6 +233,13 @@ Only some features from this draft standard are supported by @theglibc{}. The older name @code{_ISOC2X_SOURCE} is also supported. @end defvr +@defvr Macro _ISOC2Y_SOURCE +@standards{C2Y, (none)} +If this macro is defined, ISO C2Y extensions to ISO C23 are included. +Only some features from this draft standard are supported by +@theglibc{}. +@end defvr + @defvr Macro __STDC_WANT_LIB_EXT2__ @standards{ISO, (none)} If you define this macro to the value @code{1}, features from ISO/IEC diff --git a/manual/ipc.texi b/manual/ipc.texi index 6a6e5ad410..32c5ac066f 100644 --- a/manual/ipc.texi +++ b/manual/ipc.texi @@ -20,7 +20,7 @@ by @theglibc{}. @c Need descriptions for all of these functions. @subsection System V Semaphores -@deftypefun int semctl (int @var{semid}, int @var{semnum}, int @var{cmd}); +@deftypefun int semctl (int @var{semid}, int @var{semnum}, int @var{cmd}) @safety{@prelim{}@mtsafe{}@assafe{}@acunsafe{@acucorrupt{/linux}}} @c syscall(ipc) ok @c @@ -30,35 +30,35 @@ by @theglibc{}. @c semid_ds. @end deftypefun -@deftypefun int semget (key_t @var{key}, int @var{nsems}, int @var{semflg}); +@deftypefun int semget (key_t @var{key}, int @var{nsems}, int @var{semflg}) @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c syscall(ipc) ok @end deftypefun -@deftypefun int semop (int @var{semid}, struct sembuf *@var{sops}, size_t @var{nsops}); +@deftypefun int semop (int @var{semid}, struct sembuf *@var{sops}, size_t @var{nsops}) @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c syscall(ipc) ok @end deftypefun -@deftypefun int semtimedop (int @var{semid}, struct sembuf *@var{sops}, size_t @var{nsops}, const struct timespec *@var{timeout}); +@deftypefun int semtimedop (int @var{semid}, struct sembuf *@var{sops}, size_t @var{nsops}, const struct timespec *@var{timeout}) @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c syscall(ipc) ok @end deftypefun @subsection POSIX Semaphores -@deftypefun int sem_init (sem_t *@var{sem}, int @var{pshared}, unsigned int @var{value}); +@deftypefun int sem_init (sem_t *@var{sem}, int @var{pshared}, unsigned int @var{value}) @safety{@prelim{}@mtsafe{}@assafe{}@acunsafe{@acucorrupt{}}} @c Does not atomically update sem_t therefore AC-unsafe @c because it can leave sem_t partially initialized. @end deftypefun -@deftypefun int sem_destroy (sem_t *@var{sem}); +@deftypefun int sem_destroy (sem_t *@var{sem}) @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c Function does nothing and is therefore always safe. @end deftypefun -@deftypefun sem_t *sem_open (const char *@var{name}, int @var{oflag}, ...); +@deftypefun {sem_t *} sem_open (const char *@var{name}, int @var{oflag}, ...) @safety{@prelim{}@mtsafe{}@asunsafe{@asuinit{}}@acunsafe{@acuinit{}}} @c pthread_once asuinit @c @@ -67,7 +67,7 @@ by @theglibc{}. @c shmfs on Linux. @end deftypefun -@deftypefun int sem_close (sem_t *@var{sem}); +@deftypefun int sem_close (sem_t *@var{sem}) @safety{@prelim{}@mtsafe{}@asunsafe{@asulock{}}@acunsafe{@aculock{}}} @c lll_lock asulock aculock @c twalk mtsrace{:root} @@ -77,13 +77,13 @@ by @theglibc{}. @c are not updated atomically. @end deftypefun -@deftypefun int sem_unlink (const char *@var{name}); +@deftypefun int sem_unlink (const char *@var{name}) @safety{@prelim{}@mtsafe{}@asunsafe{@asuinit{}}@acunsafe{@acucorrupt{}}} @c pthread_once asuinit acucorrupt aculock @c mempcpy acucorrupt @end deftypefun -@deftypefun int sem_wait (sem_t *@var{sem}); +@deftypefun int sem_wait (sem_t *@var{sem}) @safety{@prelim{}@mtsafe{}@assafe{}@acunsafe{@acucorrupt{}}} @c atomic_fetch_add_relaxed (nwaiters) acucorrupt @c @@ -95,22 +95,22 @@ by @theglibc{}. @c waiters count. @end deftypefun -@deftypefun int sem_timedwait (sem_t *@var{sem}, const struct timespec *@var{abstime}); +@deftypefun int sem_timedwait (sem_t *@var{sem}, const struct timespec *@var{abstime}) @safety{@prelim{}@mtsafe{}@assafe{}@acunsafe{@acucorrupt{}}} @c Same safety issues as sem_wait. @end deftypefun -@deftypefun int sem_trywait (sem_t *@var{sem}); +@deftypefun int sem_trywait (sem_t *@var{sem}) @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c All atomic operations are safe in all contexts. @end deftypefun -@deftypefun int sem_post (sem_t *@var{sem}); +@deftypefun int sem_post (sem_t *@var{sem}) @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c Same safety as sem_trywait. @end deftypefun -@deftypefun int sem_getvalue (sem_t *@var{sem}, int *@var{sval}); +@deftypefun int sem_getvalue (sem_t *@var{sem}, int *@var{sval}) @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c Atomic write of a value is safe in all contexts. @end deftypefun diff --git a/manual/llio.texi b/manual/llio.texi index a035c3e20f..b6bc7f2210 100644 --- a/manual/llio.texi +++ b/manual/llio.texi @@ -1097,6 +1097,27 @@ streams persist in other processes, their file positions become undefined as a result. To prevent this, you must clean up the streams before destroying them. +In addition to cleaning up a stream before doing I/O using another +linked channel, additional precautions are needed to ensure a +well-defined file position indicator in some cases. If both the +following conditions hold, you must set the file position indicator on +the new channel (a stream) using a function such as @code{fseek}. + +@itemize @bullet +@item +The new linked channel is a stream that was previously active. + +@item +The file position indicator was previously set on that channel (while +it was previously active) with a function such as @code{fseek}. +@end itemize + +POSIX requires such precautions in more cases: if either the old or +the new linked channel is a stream (whether or not previously active) +and the file position indicator was previously set on any channel +linked to those channels with a function such as @code{fseek} or +@code{lseek}. + @node Independent Channels @subsection Independent Channels @cindex independent channels @@ -1381,6 +1402,19 @@ Per-IO synchronization as if the file was opened with @code{O_APPEND} flag. @item RWF_NOAPPEND This flag allows an offset to be honored, even if the file was opened with @code{O_APPEND} flag. + +@item RWF_ATOMIC +Indicate that the write is to be issued with torn-write prevention. The +input buffer should follow some contraints: the total length should be +power-of-2 in size and also sizes between @code{atomic_write_unit_min} +and @code{atomic_write_unit_max}, the @code{struct iovec} count should be +up to @code{atomic_write_segments_max}, and the offset should be +naturally-aligned with regard to total write length. + +The @code{atomic_*} values can be obtained with @code{statx} along with +@code{STATX_WRITE_ATOMIC} flag. + +This is a Linux-specific extension. @end vtable When the source file is compiled with @code{_FILE_OFFSET_BITS == 64} the @@ -1762,6 +1796,15 @@ write dirty metadata out whenever dirty data is written out. Unlike most other flags, this one will fail unless @code{MAP_SHARED_VALIDATE} is also given. +@item MAP_DROPPABLE +Request the page to be never written out to swap, it will be zeroed +under memory pressure (so kernel can just drop the page), it is inherited +by fork, it is not counted against @code{mlock} budget, and if there is +not enough memory to service a page fault there is no fatal error (so no +signal is sent). + +The @code{MAP_DROPPABLE} flag is specific to Linux. + @end vtable @code{mmap} returns the address of the new mapping, or @@ -4831,12 +4874,12 @@ of an IOCTL, see @ref{Out-of-Band Data}. @manpagefunctionstub{poll,2} @end deftypefun -@deftypefun int epoll_create(int @var{size}) +@deftypefun int epoll_create (int @var{size}) @manpagefunctionstub{epoll_create,2} @end deftypefun -@deftypefun int epoll_wait(int @var{epfd}, struct epoll_event *@var{events}, int @var{maxevents}, int @var{timeout}) +@deftypefun int epoll_wait (int @var{epfd}, struct epoll_event *@var{events}, int @var{maxevents}, int @var{timeout}) @manpagefunctionstub{epoll_wait,2} @end deftypefun diff --git a/manual/memory.texi b/manual/memory.texi index 3710d7ec66..a39805a8dd 100644 --- a/manual/memory.texi +++ b/manual/memory.texi @@ -2935,7 +2935,7 @@ exceed the process' data storage limit. @end deftypefun -@deftypefun void *sbrk (ptrdiff_t @var{delta}) +@deftypefun {void *} sbrk (ptrdiff_t @var{delta}) @standards{BSD, unistd.h} @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @@ -3077,7 +3077,7 @@ returned by @code{mmap} or @code{mmap64}. @cindex memory protection key @cindex protection key @cindex MPK -On some systems, further restrictions can be added to specific pages +On some systems, further access restrictions can be added to specific pages using @dfn{memory protection keys}. These restrictions work as follows: @itemize @bullet @@ -3089,27 +3089,27 @@ during memory accesses. New keys can be allocated with the @code{pkey_mprotect}. @item -Each thread has a set of separate access right restriction for each -protection key. These access rights can be manipulated using the +Each thread has a set of separate access restrictions for each +protection key. These access restrictions can be manipulated using the @code{pkey_set} and @code{pkey_get} functions. @item During a memory access, the system obtains the protection key for the -accessed page and uses that to determine the applicable access rights, +accessed page and uses that to determine the applicable access restrictions, as configured for the current thread. If the access is restricted, a segmentation fault is the result ((@pxref{Program Error Signals}). These checks happen in addition to the @code{PROT_}* protection flags set by @code{mprotect} or @code{pkey_mprotect}. @end itemize -New threads and subprocesses inherit the access rights of the current +New threads and subprocesses inherit the access restrictions of the current thread. If a protection key is allocated subsequently, existing threads (except the current) will use an unspecified system default for the -access rights associated with newly allocated keys. +access restrictions associated with newly allocated keys. -Upon entering a signal handler, the system resets the access rights of +Upon entering a signal handler, the system resets the access restrictions of the current thread so that pages with the default key can be accessed, -but the access rights for other protection keys are unspecified. +but the access restrictions for other protection keys are unspecified. Applications are expected to allocate a key once using @code{pkey_alloc}, and apply the key to memory regions which need @@ -3151,24 +3151,24 @@ it again: In this example, a negative key value indicates that no key had been allocated, which means that the system lacks support for memory -protection keys and it is not necessary to change the the access rights +protection keys and it is not necessary to change the the access restrictions of the current thread (because it always has access). Compared to using @code{mprotect} to change the page protection flags, this approach has two advantages: It is thread-safe in the sense that -the access rights are only changed for the current thread, so another -thread which changes its own access rights concurrently to gain access -to the mapping will not suddenly see its access rights revoked. And +the access restrictions are only changed for the current thread, so another +thread which changes its own access restrictions concurrently to gain access +to the mapping will not suddenly see its access restrictions updated. And @code{pkey_set} typically does not involve a call into the kernel and a context switch, so it is more efficient. -@deftypefun int pkey_alloc (unsigned int @var{flags}, unsigned int @var{restrictions}) +@deftypefun int pkey_alloc (unsigned int @var{flags}, unsigned int @var{access_restrictions}) @standards{Linux, sys/mman.h} @safety{@prelim{}@mtsafe{}@assafe{}@acunsafe{@acucorrupt{}}} Allocate a new protection key. The @var{flags} argument is reserved and -must be zero. The @var{restrictions} argument specifies access rights +must be zero. The @var{access_restrictions} argument specifies access restrictions which are applied to the current thread (as if with @code{pkey_set} -below). Access rights of other threads are not changed. +below). Access restrictions of other threads are not changed. The function returns the new protection key, a non-negative number, or @math{-1} on error. @@ -3183,7 +3183,7 @@ The system does not implement memory protection keys. @item EINVAL The @var{flags} argument is not zero. -The @var{restrictions} argument is invalid. +The @var{access_restrictions} argument is invalid. The system does not implement memory protection keys or runs in a mode in which memory protection keys are disabled. @@ -3203,7 +3203,7 @@ in which memory protection keys are disabled. Deallocate the protection key, so that it can be reused by @code{pkey_alloc}. -Calling this function does not change the access rights of the freed +Calling this function does not change the access restrictions of the freed protection key. The calling thread and other threads may retain access to it, even if it is subsequently allocated again. For this reason, it is not recommended to call the @code{pkey_free} function. @@ -3251,14 +3251,14 @@ not @math{-1}. @end table @end deftypefun -@deftypefun int pkey_set (int @var{key}, unsigned int @var{rights}) +@deftypefun int pkey_set (int @var{key}, unsigned int @var{access_restrictions}) @standards{Linux, sys/mman.h} @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} -Change the access rights of the current thread for memory pages with the -protection key @var{key} to @var{rights}. If @var{rights} is zero, no -additional access restrictions on top of the page protection flags are -applied. Otherwise, @var{rights} is a combination of the following -flags: +Change the access restrictions of the current thread for memory pages with +the protection key @var{key} to @var{access_restrictions}. If +@var{access_restrictions} is zero, no additional access restrictions on top of +the page protection flags are applied. Otherwise, @var{access_restrictions} is +a combination of the following flags: @vtable @code @item PKEY_DISABLE_WRITE @@ -3290,18 +3290,22 @@ function: @table @code @item EINVAL -The system does not support the access rights restrictions expressed in -the @var{rights} argument. +The system does not support the access restrictions expressed in +the @var{access_restrictions} argument. @end table @end deftypefun @deftypefun int pkey_get (int @var{key}) @standards{Linux, sys/mman.h} @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} -Return the access rights of the current thread for memory pages with -protection key @var{key}. The return value is zero or a combination of +Return the access restrictions of the current thread for memory pages +with protection key @var{key}. The return value is zero or a combination of the @code{PKEY_DISABLE_}* flags; see the @code{pkey_set} function. +The returned value should be checked for presence or absence of specific flags +using bitwise operations. Comparing the returned value with any of the flags +or their combination using equals will almost certainly fail. + Calling the @code{pkey_get} function with a protection key which was not allocated by @code{pkey_alloc} results in undefined behavior. This means that calling this function on systems which do not support memory diff --git a/manual/startup.texi b/manual/startup.texi index 8ac3b97eed..95b0ed8fc7 100644 --- a/manual/startup.texi +++ b/manual/startup.texi @@ -1014,10 +1014,7 @@ for this function is in @file{stdlib.h}. @deftypefun void abort (void) @standards{ISO, stdlib.h} -@safety{@prelim{}@mtsafe{}@asunsafe{@asucorrupt{}}@acunsafe{@aculock{} @acucorrupt{}}} -@c The implementation takes a recursive lock and attempts to support -@c calls from signal handlers, but if we're in the middle of flushing or -@c using streams, we may encounter them in inconsistent states. +@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} The @code{abort} function causes abnormal program termination. This does not execute cleanup functions registered with @code{atexit} or @code{on_exit}. @@ -1025,6 +1022,10 @@ does not execute cleanup functions registered with @code{atexit} or This function actually terminates the process by raising a @code{SIGABRT} signal, and your program can include a handler to intercept this signal; see @ref{Signal Handling}. + +If either the signal handler does not terminate the process, or if the +signal is blocked, @code{abort} will reset the signal disposition to the +default @code{SIG_DFL} action and raise the signal again. @end deftypefun @node Termination Internals diff --git a/manual/stdio.texi b/manual/stdio.texi index 8590ae955a..83f4f92e3f 100644 --- a/manual/stdio.texi +++ b/manual/stdio.texi @@ -929,6 +929,9 @@ Therefore, @var{stream} should never be an expression with side-effects. @safety{@prelim{}@mtsafe{@mtsrace{:stream}}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}} The @code{putc_unlocked} function is equivalent to the @code{putc} function except that it does not implicitly lock the stream. +Like @code{putc}, it may be implemented as a macro and may evaluate +the @var{stream} argument more than once. Therefore, @var{stream} +should not be an expression with side-effects. @end deftypefun @deftypefun wint_t putwc_unlocked (wchar_t @var{wc}, FILE *@var{stream}) @@ -1132,6 +1135,9 @@ Therefore, @var{stream} should never be an expression with side-effects. @safety{@prelim{}@mtsafe{@mtsrace{:stream}}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}} The @code{getc_unlocked} function is equivalent to the @code{getc} function except that it does not implicitly lock the stream. +Like @code{getc}, it may be implemented as a macro and may evaluate +the @var{stream} argument more than once. Therefore, @var{stream} +should not be an expression with side-effects. @end deftypefun @deftypefun wint_t getwc_unlocked (FILE *@var{stream}) @@ -1571,6 +1577,9 @@ The @code{fread_unlocked} function is equivalent to the @code{fread} function except that it does not implicitly lock the stream. This function is a GNU extension. +This function may be implemented as a macro and may evaluate +@var{stream} more than once. Therefore, @var{stream} should not be an +expression with side-effects. @end deftypefun @deftypefun size_t fwrite (const void *@var{data}, size_t @var{size}, size_t @var{count}, FILE *@var{stream}) @@ -1589,6 +1598,9 @@ The @code{fwrite_unlocked} function is equivalent to the @code{fwrite} function except that it does not implicitly lock the stream. This function is a GNU extension. +This function may be implemented as a macro and may evaluate +@var{stream} more than once. Therefore, @var{stream} should not be an +expression with side-effects. @end deftypefun @node Formatted Output @@ -2531,7 +2543,7 @@ store the result in which case @code{-1} is returned. This was changed in order to comply with the @w{ISO C99} standard. @end deftypefun -@deftypefun dprintf (int @var{fd}, @var{template}, ...) +@deftypefun int dprintf (int @var{fd}, @var{template}, ...) @standards{POSIX, stdio.h} @safety{@mtsafe{@mtslocale{}}@asunsafe{@ascuheap{}}@acunsafe{@acsmem{}}} This function formats its arguments according to @var{template} and @@ -4168,6 +4180,15 @@ check indicators that are part of the internal state of the stream object, indicators set if the appropriate condition was detected by a previous I/O operation on that stream. +The end of file and error conditions are mutually exclusive. For a +narrow oriented stream, end of file is not considered an error. For +wide oriented streams, reaching the end of the underlying file can +result an error if the underlying file ends with an incomplete multibyte +sequence. This is reported as an error by @code{ferror}, and not as an +end of file by @code{feof}. End of file on wide oriented streams that +does not fall into the middle of a multibyte sequence is reported via +@code{feof}. + @deftypevr Macro int EOF @standards{ISO, stdio.h} This macro is an integer value that is returned by a number of narrow diff --git a/manual/threads.texi b/manual/threads.texi index 25e99c9606..9ea137cb96 100644 --- a/manual/threads.texi +++ b/manual/threads.texi @@ -592,7 +592,7 @@ destructor for the thread-specific data is not called during destruction, nor is it called during thread exit. @end deftypefun -@deftypefun void *pthread_getspecific (pthread_key_t @var{key}) +@deftypefun {void *} pthread_getspecific (pthread_key_t @var{key}) @standards{POSIX, pthread.h} @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c pthread_getspecific ok diff --git a/manual/time.texi b/manual/time.texi index 64aad8fdc5..90bc9a2566 100644 --- a/manual/time.texi +++ b/manual/time.texi @@ -1829,7 +1829,7 @@ can be placed in the buffer @var{s} the return value is zero, with the same problems indicated in the @code{strftime} documentation. @end deftypefun -@deftypefun {Deprecated function} {char *} asctime (const struct tm *@var{brokentime}) +@deftypefn {Deprecated function} {char *} asctime (const struct tm *@var{brokentime}) @standards{ISO, time.h} @safety{@prelim{}@mtunsafe{@mtasurace{:asctime} @mtslocale{}}@asunsafe{}@acsafe{}} @c asctime @mtasurace:asctime @mtslocale @@ -1863,9 +1863,9 @@ string.) @strong{Portability note:} This obsolescent function is deprecated in C23. Programs should instead use @code{strftime} or even @code{sprintf}. -@end deftypefun +@end deftypefn -@deftypefun {Deprecated function} {char *} asctime_r (const struct tm *@var{brokentime}, char *@var{buffer}) +@deftypefn {Deprecated function} {char *} asctime_r (const struct tm *@var{brokentime}, char *@var{buffer}) @standards{???, time.h} @safety{@prelim{}@mtsafe{@mtslocale{}}@assafe{}@acsafe{}} @c asctime_r @mtslocale @@ -1884,9 +1884,9 @@ it returns @code{NULL}. @strong{Portability Note:} POSIX.1-2024 removed this obsolescent function. Programs should instead use @code{strftime} or even @code{sprintf}. -@end deftypefun +@end deftypefn -@deftypefun {Deprecated function} {char *} ctime (const time_t *@var{time}) +@deftypefn {Deprecated function} {char *} ctime (const time_t *@var{time}) @standards{ISO, time.h} @safety{@prelim{}@mtunsafe{@mtasurace{:tmbuf} @mtasurace{:asctime} @mtsenv{} @mtslocale{}}@asunsafe{@ascuheap{} @asulock{}}@acunsafe{@aculock{} @acsmem{} @acsfd{}}} @c ctime @mtasurace:tmbuf @mtasurace:asctime @mtsenv @mtslocale @ascuheap @asulock @aculock @acsmem @acsfd @@ -1909,9 +1909,9 @@ Calling @code{ctime} also sets the time zone state as if @strong{Portability note:} This obsolescent function is deprecated in C23. Programs should instead use @code{strftime} or even @code{sprintf}. -@end deftypefun +@end deftypefn -@deftypefun {Deprecated function} {char *} ctime_r (const time_t *@var{time}, char *@var{buffer}) +@deftypefn {Deprecated function} {char *} ctime_r (const time_t *@var{time}, char *@var{buffer}) @standards{???, time.h} @safety{@prelim{}@mtsafe{@mtsenv{} @mtslocale{}}@asunsafe{@ascuheap{} @asulock{}}@acunsafe{@aculock{} @acsmem{} @acsfd{}}} @c ctime_r @mtsenv @mtslocale @ascuheap @asulock @aculock @acsmem @acsfd @@ -1935,7 +1935,7 @@ it returns @code{NULL}. @strong{Portability Note:} POSIX.1-2024 removed this obsolescent function. Programs should instead use @code{strftime} or even @code{sprintf}. -@end deftypefun +@end deftypefn @node Parsing Date and Time @subsection Convert textual time and date information back diff --git a/math/w_tgammaf_compat.c b/math/w_tgammaf_compat.c index 34e0e096e0..addbdb1109 100644 --- a/math/w_tgammaf_compat.c +++ b/math/w_tgammaf_compat.c @@ -14,6 +14,7 @@ #include <errno.h> #include <math.h> +#include <stddef.h> #include <math_private.h> #include <math-svid-compat.h> #include <libm-alias-float.h> @@ -22,8 +23,7 @@ float __tgammaf(float x) { - int local_signgam; - float y = __ieee754_gammaf_r(x,&local_signgam); + float y = __ieee754_gammaf_r(x, NULL); if(__glibc_unlikely (!isfinite (y) || y == 0) && (isfinite (x) || (isinf (x) && x < 0.0)) @@ -41,7 +41,7 @@ __tgammaf(float x) /* tgammaf overflow */ return __kernel_standard_f(x, x, 140); } - return local_signgam < 0 ? - y : y; + return y; } libm_alias_float (__tgamma, tgamma) #endif diff --git a/misc/tst-preadvwritev2-common.c b/misc/tst-preadvwritev2-common.c index 8e04ff7282..4556421a43 100644 --- a/misc/tst-preadvwritev2-common.c +++ b/misc/tst-preadvwritev2-common.c @@ -37,8 +37,11 @@ #ifndef RWF_NOAPPEND # define RWF_NOAPPEND 0 #endif +#ifndef RWF_ATOMIC +# define RWF_ATOMIC 0 +#endif #define RWF_SUPPORTED (RWF_HIPRI | RWF_DSYNC | RWF_SYNC | RWF_NOWAIT \ - | RWF_APPEND | RWF_NOAPPEND) + | RWF_APPEND | RWF_NOAPPEND | RWF_ATOMIC) /* Generic uio_lim.h does not define IOV_MAX. */ #ifndef IOV_MAX diff --git a/nptl/Makefile b/nptl/Makefile index bf4c29b6ed..ceb91afafc 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -276,6 +276,7 @@ LDLIBS-tst-minstack-throw = -lstdc++ tests = \ tst-attr2 \ tst-attr3 \ + tst-attr4 \ tst-cancel4_1 \ tst-cancel4_2 \ tst-cancel7 \ diff --git a/nptl/descr.h b/nptl/descr.h index 65d3baaee3..66e4be1fa7 100644 --- a/nptl/descr.h +++ b/nptl/descr.h @@ -414,6 +414,8 @@ struct pthread { uint32_t cpu_id_start; uint32_t cpu_id; + uint64_t rseq_cs; + uint32_t flags; }; char pad[32]; /* Original rseq area size. */ } rseq_area __attribute__ ((aligned (32))); diff --git a/nptl/pthread_join_common.c b/nptl/pthread_join_common.c index 9c685c79cf..273db80543 100644 --- a/nptl/pthread_join_common.c +++ b/nptl/pthread_join_common.c @@ -49,6 +49,12 @@ __pthread_clockjoin_ex (pthread_t threadid, void **thread_return, /* We cannot wait for the thread. */ return EINVAL; + /* Make sure the clock and time specified are valid. */ + if (abstime + && __glibc_unlikely (!futex_abstimed_supported_clockid (clockid) + || ! valid_nanoseconds (abstime->tv_nsec))) + return EINVAL; + struct pthread *self = THREAD_SELF; int result = 0; diff --git a/nptl/pthread_kill.c b/nptl/pthread_kill.c index 71e5a7bf5b..fa5121a583 100644 --- a/nptl/pthread_kill.c +++ b/nptl/pthread_kill.c @@ -69,6 +69,17 @@ __pthread_kill_implementation (pthread_t threadid, int signo, int no_tid) return ret; } +/* Send the signal SIGNO to the caller. Used by abort and called where the + signals are being already blocked and there is no need to synchronize with + exit_lock. */ +int +__pthread_raise_internal (int signo) +{ + /* Use the gettid syscall so it works after vfork. */ + int ret = INTERNAL_SYSCALL_CALL (tgkill, __getpid (), __gettid(), signo); + return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0; +} + int __pthread_kill_internal (pthread_t threadid, int signo) { diff --git a/nptl/tst-attr4.c b/nptl/tst-attr4.c new file mode 100644 index 0000000000..c53781e7f3 --- /dev/null +++ b/nptl/tst-attr4.c @@ -0,0 +1,62 @@ +/* Test initial values of pthread attributes. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <sched.h> +#include <stdio.h> +#include <stdint.h> + +#include <support/check.h> +#include <support/test-driver.h> +#include <support/xthread.h> + + +int +do_test (void) +{ + pthread_attr_t a; + int ret; + + xpthread_attr_init (&a); + + size_t stacksize = 0; + verbose_printf ("testing default stack size\n"); + ret = pthread_attr_getstacksize (&a, &stacksize); + TEST_VERIFY_EXIT (ret == 0); + TEST_VERIFY (stacksize >= PTHREAD_STACK_MIN); + TEST_VERIFY (stacksize <= SIZE_MAX / 2); + + int policy; + verbose_printf ("testing default scheduler parameters\n"); + ret = pthread_attr_getschedpolicy (&a, &policy); + TEST_VERIFY_EXIT (ret == 0); + struct sched_param param; + ret = pthread_attr_getschedparam (&a, ¶m); + TEST_VERIFY_EXIT (ret == 0); + int min = sched_get_priority_min (policy); + TEST_VERIFY (min != -1); + int max = sched_get_priority_max (policy); + TEST_VERIFY (max != -1); + TEST_VERIFY (param.sched_priority >= min); + TEST_VERIFY (param.sched_priority <= max); + + xpthread_attr_destroy (&a); + + return 0; +} + +#include <support/test-driver.c> diff --git a/posix/fork.c b/posix/fork.c index 298765a1ff..bd6371a9f4 100644 --- a/posix/fork.c +++ b/posix/fork.c @@ -62,6 +62,7 @@ __libc_fork (void) call_function_static_weak (__nss_database_fork_prepare_parent, &nss_database_data); + _IO_proc_file_chain_lock (); _IO_list_lock (); /* Acquire malloc locks. This needs to come last because fork @@ -84,6 +85,8 @@ __libc_fork (void) fork_system_setup_after_fork (); + call_function_static_weak (__abort_fork_reset_child); + /* Release malloc locks. */ call_function_static_weak (__malloc_fork_unlock_child); @@ -92,6 +95,7 @@ __libc_fork (void) /* Reset locks in the I/O code. */ _IO_list_resetlock (); + _IO_proc_file_chain_resetlock (); call_function_static_weak (__nss_database_fork_subprocess, &nss_database_data); @@ -121,6 +125,7 @@ __libc_fork (void) /* We execute this even if the 'fork' call failed. */ _IO_list_unlock (); + _IO_proc_file_chain_unlock (); } /* Run the handlers registered for the parent. */ diff --git a/rt/Makefile b/rt/Makefile index 7b50c64f76..bc5f28c6d0 100644 --- a/rt/Makefile +++ b/rt/Makefile @@ -77,6 +77,7 @@ tests := tst-shm tst-timer tst-timer2 \ tst-bz28213 \ tst-timer3 tst-timer4 tst-timer5 \ tst-cpuclock2 tst-cputimer1 tst-cputimer2 tst-cputimer3 \ + tst-clock_nanosleep2 \ tst-shm-cancel \ tst-mqueue10 tests-internal := tst-timer-sigmask @@ -84,6 +85,7 @@ tests-internal := tst-timer-sigmask tests-time64 := \ tst-aio6-time64 \ tst-cpuclock2-time64 \ + tst-clock_nanosleep2-time64 \ tst-mqueue1-time64 \ tst-mqueue2-time64 \ tst-mqueue4-time64 \ diff --git a/rt/tst-clock_nanosleep2-time64.c b/rt/tst-clock_nanosleep2-time64.c new file mode 100644 index 0000000000..8deb4201f3 --- /dev/null +++ b/rt/tst-clock_nanosleep2-time64.c @@ -0,0 +1 @@ +#include "tst-clock_nanosleep2.c" diff --git a/rt/tst-clock_nanosleep2.c b/rt/tst-clock_nanosleep2.c new file mode 100644 index 0000000000..e9b2a2716d --- /dev/null +++ b/rt/tst-clock_nanosleep2.c @@ -0,0 +1,255 @@ +/* Test for clock_nanosleep parameter checks and sleep duration. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +/* This test has two primary goals - first, to validate that invalid + inputs to clock_nanosleep are caught, and second, to validate that + clock_nanosleep sleeps for at least the amount of time requested. + It is assumed that the system may sleep for an arbitrary additional + amount of time beyond the requested time. */ + +#include <unistd.h> +#include <stdint.h> + +#include <stdio.h> +#include <stdlib.h> +#include <time.h> +#include <fcntl.h> +#include <string.h> +#include <errno.h> + +#include <support/xunistd.h> +#include <support/check.h> +#include <support/xthread.h> +#include <support/timespec.h> + +/* This is 1 ms per test, we have 10 tests, so this file runs in on + the order of 0.01 seconds. */ +#define TEST_NSEC 1000000 + +/* Nanoseconds per second. */ +#define NSECMAX 1000000000L + +static pthread_barrier_t barrier; + +/* This function is intended to rack up both user and system time. */ +static void * +chew_cpu (void *arg) +{ + pthread_barrier_wait (&barrier); + + while (1) + { + static volatile char buf[4096]; + for (int i = 0; i < 100; ++i) + for (size_t j = 0; j < sizeof buf; ++j) + buf[j] = 0xaa; + int nullfd = xopen ("/dev/null", O_WRONLY, 0); + for (int i = 0; i < 100; ++i) + for (size_t j = 0; j < sizeof buf; ++j) + buf[j] = 0xbb; + xwrite (nullfd, (char *) buf, sizeof buf); + close (nullfd); + } + + return NULL; +} + +static void +ptime_1 (const char *n, struct timespec t) +{ + /* This is only for debugging failed test cases. */ + printf ("%12s: %lld.%09lld\n", n, (long long int) t.tv_sec, + (long long int) t.tv_nsec); +} +#define ptime(t) ptime_1 (#t, t) + +static void +test_interval_1 (const char *n_clock, clockid_t t_clock) +{ + struct timespec me_before, me_after, quantum, me_sleep, me_slept; + long long int slept, min_slept; + + /* Arbitrary to ensure our time period is sufficiently bigger than + the time step. */ + TEST_VERIFY (clock_getres (t_clock, &quantum) == 0); + printf("Clock quantum: %lld ns, test time: %lld ns\n", + (long long int) quantum.tv_nsec, (long long int) TEST_NSEC); + TEST_VERIFY (quantum.tv_nsec <= TEST_NSEC / 10); + + min_slept = TEST_NSEC; + + me_sleep = make_timespec (0, min_slept); + + printf ("test clock %s for %lld.%09lld sec relative\n", + n_clock, (long long int) me_sleep.tv_sec, + (long long int) me_sleep.tv_nsec); + + TEST_COMPARE (clock_gettime (t_clock, &me_before), 0); + TEST_COMPARE (clock_nanosleep (t_clock, 0, &me_sleep, NULL), 0); + TEST_COMPARE (clock_gettime (t_clock, &me_after), 0); + + me_slept = timespec_sub (me_after, me_before); + slept = support_timespec_ns (me_slept); + + ptime (me_before); + ptime (me_after); + ptime (me_sleep); + ptime (me_slept); + printf ("test slept %lld nsec >= asked for %lld ?\n", slept, min_slept); + + /* This is the important part - verify that the time slept is at + least as much as the time requested. */ + TEST_VERIFY (slept >= min_slept); +} + +static void +test_abs_1 (const char *n_clock, clockid_t t_clock) +{ + struct timespec me_before, me_after, quantum, me_sleep; + + /* Arbitrary to ensure our time period is sufficiently bigger than + the time step. */ + TEST_VERIFY (clock_getres (t_clock, &quantum) == 0); + printf("Clock quantum: %lld ns, test time: %lld ns\n", + (long long int) quantum.tv_nsec, (long long int) TEST_NSEC); + TEST_VERIFY (quantum.tv_nsec <= TEST_NSEC / 10); + + me_sleep = make_timespec (0, TEST_NSEC); + + printf ("test clock %s for %lld.%09lld sec absolute\n", + n_clock, (long long int) me_sleep.tv_sec, + (long long int) me_sleep.tv_nsec); + + TEST_COMPARE (clock_gettime (t_clock, &me_before), 0); + me_sleep = timespec_add (me_sleep, me_before); + TEST_COMPARE (clock_nanosleep (t_clock, TIMER_ABSTIME, &me_sleep, NULL), 0); + TEST_COMPARE (clock_gettime (t_clock, &me_after), 0); + + ptime (me_before); + ptime (me_sleep); + ptime (me_after); + + printf("test slept until %lld.%09lld after requested %lld.%09lld ?\n", + (long long int) me_after.tv_sec, (long long int) me_after.tv_nsec, + (long long int) me_sleep.tv_sec, (long long int) me_sleep.tv_nsec); + + /* This is the important part - verify that the time slept is at + least as much as the time requested. */ + TEST_TIMESPEC_EQUAL_OR_AFTER (me_after, me_sleep); +} + +static void +test_invalids_1 (const char *the_clock_name, int the_clock, + const char *flags_name, int flags) +{ + struct timespec me_before; + + /* Note: do not use make_timespec() in case that function tries to + normalize the fields. */ + + printf ("%s: %s: test tv 0, 0\n", the_clock_name, flags_name); + me_before.tv_sec = 0; + me_before.tv_nsec = 0; + TEST_COMPARE (clock_nanosleep (the_clock, 0, &me_before, NULL), 0); + + printf ("%s: %s: test tv -1, 0\n", the_clock_name, flags_name); + me_before.tv_sec = -1; + me_before.tv_nsec = 0; + TEST_COMPARE (clock_nanosleep (the_clock, 0, &me_before, NULL), EINVAL); + + printf ("%s: %s: test tv 0, -1\n", the_clock_name, flags_name); + me_before.tv_sec = 0; + me_before.tv_nsec = -1; + TEST_COMPARE (clock_nanosleep (the_clock, 0, &me_before, NULL), EINVAL); + + printf ("%s: %s: test tv -1, -1\n", the_clock_name, flags_name); + me_before.tv_sec = -1; + me_before.tv_nsec = -1; + TEST_COMPARE (clock_nanosleep (the_clock, 0, &me_before, NULL), EINVAL); + + printf ("%s: %s: test tv 0, MAX\n", the_clock_name, flags_name); + me_before.tv_sec = 0; + me_before.tv_nsec = NSECMAX; + TEST_COMPARE (clock_nanosleep (the_clock, 0, &me_before, NULL), EINVAL); +} + +static int +do_test (void) +{ + pthread_t th; + + pthread_barrier_init (&barrier, NULL, 2); + + /* Test for proper error detection. */ + +#define test_invalids(c, f) test_invalids_1 (#c, c, #f, f) + test_invalids (CLOCK_REALTIME, 0); +#ifdef CLOCK_TAI + test_invalids (CLOCK_TAI, 0); +#endif + test_invalids (CLOCK_MONOTONIC, 0); +#ifdef CLOCK_BOOTTIME + test_invalids (CLOCK_BOOTTIME, 0); +#endif + test_invalids (CLOCK_PROCESS_CPUTIME_ID, 0); + test_invalids (CLOCK_REALTIME, TIMER_ABSTIME); +#ifdef CLOCK_TAI + test_invalids (CLOCK_TAI, TIMER_ABSTIME); +#endif + test_invalids (CLOCK_MONOTONIC, TIMER_ABSTIME); +#ifdef CLOCK_BOOTTIME + test_invalids (CLOCK_BOOTTIME, TIMER_ABSTIME); +#endif + test_invalids (CLOCK_PROCESS_CPUTIME_ID, TIMER_ABSTIME); + + /* Test for various clocks "working". */ + +#define test_interval(c) test_interval_1 (#c, c) + test_interval (CLOCK_REALTIME); +#ifdef CLOCK_TAI + test_interval (CLOCK_TAI); +#endif + test_interval (CLOCK_MONOTONIC); +#ifdef CLOCK_BOOTTIME + test_interval (CLOCK_BOOTTIME); +#endif + + th = xpthread_create (NULL, chew_cpu, NULL); + xpthread_barrier_wait (&barrier); + test_interval (CLOCK_PROCESS_CPUTIME_ID); + xpthread_cancel (th); + +#define test_abs(c) test_abs_1 (#c, c) + test_abs (CLOCK_REALTIME); +#ifdef CLOCK_TAI + test_abs (CLOCK_TAI); +#endif + test_abs (CLOCK_MONOTONIC); +#ifdef CLOCK_BOOTTIME + test_abs (CLOCK_BOOTTIME); +#endif + + th = xpthread_create (NULL, chew_cpu, NULL); + xpthread_barrier_wait (&barrier); + test_abs (CLOCK_PROCESS_CPUTIME_ID); + xpthread_cancel (th); + + return 0; +} + +#include <support/test-driver.c> diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py index 5ee45011a1..f81e6d9aaa 100755 --- a/scripts/build-many-glibcs.py +++ b/scripts/build-many-glibcs.py @@ -831,7 +831,7 @@ class Context(object): 'gcc': 'vcs-13', 'glibc': 'vcs-mainline', 'gmp': '6.3.0', - 'linux': '6.10', + 'linux': '6.11', 'mpc': '1.3.1', 'mpfr': '4.2.1', 'mig': 'vcs-mainline', diff --git a/signal/sigaction.c b/signal/sigaction.c index 811062ae96..81ae550315 100644 --- a/signal/sigaction.c +++ b/signal/sigaction.c @@ -16,8 +16,9 @@ <https://www.gnu.org/licenses/>. */ #include <errno.h> -#include <signal.h> #include <internal-signals.h> +#include <libc-lock.h> +#include <signal.h> /* If ACT is not NULL, change the action for SIG to *ACT. If OACT is not NULL, put the old action for SIG in *OACT. */ @@ -30,7 +31,17 @@ __sigaction (int sig, const struct sigaction *act, struct sigaction *oact) return -1; } - return __libc_sigaction (sig, act, oact); + internal_sigset_t set; + + if (sig == SIGABRT) + __abort_lock_wrlock (&set); + + int r = __libc_sigaction (sig, act, oact); + + if (sig == SIGABRT) + __abort_lock_unlock (&set); + + return r; } libc_hidden_def (__sigaction) weak_alias (__sigaction, sigaction) diff --git a/stdio-common/Makefile b/stdio-common/Makefile index e3e5f634c5..e76e40e587 100644 --- a/stdio-common/Makefile +++ b/stdio-common/Makefile @@ -22,6 +22,34 @@ subdir := stdio-common include ../Makeconfig +# List of markers for printf family function tests. +xprintf-funcs := p as d f s sn v vas vd vf vs vsn + +# List of data types and formats for individual per-conversion printf tests. +fmt-convs := double ldouble +fmts := E e F f G g + +# List of data types grouping all conversions in single printf tests. +nonfmt-convs := c char int llong long s short +nonfmt-convs += uchar uint ullong ulong ushort + +convs := $(sort $(fmt-convs) $(nonfmt-convs)) + +xprintf-srcs := \ + $(foreach p,$(xprintf-funcs), \ + $(foreach c,$(convs),tst-printf-format-$(p)-$(c))) + +fmt-xprintf-stems := \ + $(foreach f,$(fmts), \ + $(foreach p,$(xprintf-funcs), \ + $(foreach c,$(fmt-convs), \ + tst-printf-format-$(p)-$(c)-$(f)))) +nonfmt-xprintf-stems := \ + $(foreach p,$(xprintf-funcs), \ + $(foreach c,$(nonfmt-convs),tst-printf-format-$(p)-$(c))) + +xprintf-stems := $(sort $(fmt-xprintf-stems) $(nonfmt-xprintf-stems)) + headers := \ bits/printf-ldbl.h \ bits/stdio_lim.h \ @@ -207,6 +235,7 @@ tests := \ tst-cookie \ tst-dprintf-length \ tst-fdopen \ + tst-fdopen2 \ tst-ferror \ tst-fgets \ tst-fgets2 \ @@ -227,9 +256,12 @@ tests := \ tst-freopen64-3 \ tst-freopen64-4 \ tst-freopen64-6 \ + tst-freopen64-7 \ + tst-freopen7 \ tst-fseek \ tst-fwrite \ tst-fwrite-memstrm \ + tst-fwrite-overflow \ tst-fwrite-ro \ tst-getline \ tst-getline-enomem \ @@ -257,6 +289,7 @@ tests := \ tst-scanf-binary-gnu89 \ tst-scanf-bz27650 \ tst-scanf-intn \ + tst-scanf-nan \ tst-scanf-round \ tst-scanf-to_inpunct \ tst-setvbuf1 \ @@ -312,6 +345,7 @@ tests-internal = \ # tests-internal test-srcs = \ + $(xprintf-srcs) \ tst-printf \ tst-printfsz-islongdouble \ tst-unbputc \ @@ -319,6 +353,7 @@ test-srcs = \ ifeq ($(run-built-tests),yes) tests-special += \ + $(foreach f,$(xprintf-stems),$(objpfx)$(f).out) \ $(objpfx)tst-printf.out \ $(objpfx)tst-printfsz-islongdouble.out \ $(objpfx)tst-setvbuf1-cmp.out \ @@ -328,6 +363,7 @@ tests-special += \ ifeq (yes,$(build-shared)) ifneq ($(PERL),no) tests-special += \ + $(foreach f,$(xprintf-stems),$(objpfx)$(f)-mem.out) \ $(objpfx)tst-freopen2-mem.out \ $(objpfx)tst-freopen3-mem.out \ $(objpfx)tst-freopen4-mem.out \ @@ -348,6 +384,8 @@ tests-special += \ # tests-special generated += \ + $(foreach f,$(xprintf-stems),$(f)-mem.out) \ + $(foreach f,$(xprintf-stems),$(f).mtrace) \ tst-freopen2-mem.out \ tst-freopen2.mtrace \ tst-freopen3-mem.out \ @@ -521,6 +559,21 @@ $(objpfx)tst-printf.out: tst-printf.sh $(objpfx)tst-printf $(SHELL) $< $(common-objpfx) '$(test-program-prefix)'; \ $(evaluate-test) +# We can't split a quoted recipe line, so do it via an auxiliary variable. +make-tst-printf-format-out = \ + AWK='$(AWK)' BASH='$(BASH)' \ + $(BASH) $< $@ $(common-objpfx) \ + '$(run-program-prefix-before-env) \ + $(run-program-env) \ + MALLOC_TRACE=$(@:.out=.mtrace) \ + LD_PRELOAD=$(common-objpfx)malloc/libc_malloc_debug.so \ + $(run-program-prefix-after-env)' +$(objpfx)tst-printf-format-%.out: \ + tst-printf-format.sh $(foreach c,$(convs),tst-printf-format-$(c).sh) \ + $(foreach f,$(xprintf-srcs),$(objpfx)$(f)) tst-printf-format.awk + $(make-tst-printf-format-out) > $@; \ + $(evaluate-test) + $(objpfx)tst-printfsz-islongdouble.out: \ tst-printfsz-islongdouble.sh $(objpfx)tst-printfsz-islongdouble $(SHELL) $^ '$(test-program-prefix)' $@; \ @@ -534,6 +587,10 @@ $(objpfx)tst-printf-bz18872.c: tst-printf-bz18872.sh $(objpfx)tst-%-mem.out: $(objpfx)tst-%.out $(common-objpfx)malloc/mtrace $(objpfx)tst-$*.mtrace > $@; \ $(evaluate-test) +$(objpfx)tst-printf-format-%-mem.out: $(objpfx)tst-printf-format-%.out + $(common-objpfx)malloc/mtrace \ + $(objpfx)tst-printf-format-$*.mtrace > $@; \ + $(evaluate-test) errlist-h = $(firstword $(wildcard $(addsuffix /errlist.h,$(sysdirs) .))) @@ -596,7 +653,7 @@ CFLAGS-tst-gets.c += -Wno-deprecated-declarations # BZ #11319 was first fixed for regular vdprintf, then reopened because # the fortified version had the same bug. -CFLAGS-tst-bz11319-fortify2.c += $(no-fortify-source),-D_FORTIFY_SOURCE=2 +CFLAGS-tst-bz11319-fortify2.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2 CFLAGS-tst-memstream-string.c += -fno-builtin-fprintf @@ -621,3 +678,6 @@ $(objpfx)tst-setvbuf1-cmp.out: tst-setvbuf1.expect $(objpfx)tst-setvbuf1.out $(objpfx)tst-printf-round: $(libm) $(objpfx)tst-scanf-round: $(libm) + +$(objpfx)tst-freopen7: $(shared-thread-library) +$(objpfx)tst-freopen64-7: $(shared-thread-library) diff --git a/stdio-common/tst-fdopen2.c b/stdio-common/tst-fdopen2.c new file mode 100644 index 0000000000..0c6625f258 --- /dev/null +++ b/stdio-common/tst-fdopen2.c @@ -0,0 +1,246 @@ +/* Test the fdopen function. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> +#include <errno.h> +#include <fcntl.h> +#include <support/check.h> +#include <support/support.h> +#include <support/xunistd.h> +#include <support/temp_file.h> + +char *tmp_dir; +char *path_to_file; + +void +prepare_tmp_dir (void) +{ + tmp_dir = support_create_temp_directory ("tst-fdopen2"); + path_to_file = xasprintf ("%s/tst-fdopen2.txt", tmp_dir); +} + +/* open temp file descriptor with mode. */ +int +open_tmp_fd (int mode) +{ + int fd = xopen (path_to_file, mode, 0644); + return fd; +} + + +/* close and remove temp file with close. */ +void +close_tmp_fd (int fd) +{ + xclose (fd); + xunlink (path_to_file); +} + +/* close and remove temp file with fclose. */ +void +close_tmp_fp (FILE *fp) +{ + fclose (fp); + xunlink (path_to_file); +} + +/* test "w" fdopen mode. */ +void +do_test_fdopen_w (void) +{ + int fd, ret; + FILE *fp; + fd = open_tmp_fd (O_WRONLY | O_CREAT | O_TRUNC); + + /* test mode mismatch. */ + fp = fdopen (fd, "r"); + if (fp != NULL || errno != EINVAL) + { + close_tmp_fd (fd); + FAIL_EXIT1 ("fdopen (%d, r) should fail with EINVAL: %m", fd); + } + + fp = fdopen (fd, "w"); + if (fp == NULL) + { + close_tmp_fd (fd); + FAIL_EXIT1 ("fdopen (%d, w): %m", fd); + } + + const void *buf = "AAAA"; + ret = fwrite (buf, 1, 4, fp); + if (ret != 4) + { + close_tmp_fp (fp); + FAIL_EXIT1 ("fwrite (): %m"); + } + + unsigned char buf2[4]; + rewind (fp); + clearerr (fp); + /* fread should fail in "w" mode */ + ret = fread (buf2, 1, 4, fp); + if (ret != 0 || ferror (fp) == 0) + { + close_tmp_fp (fp); + FAIL_EXIT1 ("fread should fail in \"w\" mode"); + } + + fclose (fp); +} + +/* test "r" fdopen mode. */ +void +do_test_fdopen_r (void) +{ + int fd, ret; + FILE *fp; + fd = open_tmp_fd (O_RDONLY); + + /* test mode mismatch. */ + fp = fdopen (fd, "w"); + if (fp != NULL || errno != EINVAL) + { + close_tmp_fd (fd); + FAIL_EXIT1 ("fdopen (%d, w) should fail with EINVAL: %m", fd); + } + + fp = fdopen (fd, "r"); + if (fp == NULL) + { + close_tmp_fd (fd); + FAIL_EXIT1 ("fdopen (%d, w): %m", fd); + } + + const void *buf = "BBBB"; + /* fwrite should fail in "r" mode. */ + ret = fwrite (buf, 1, 4, fp); + if (ret != 0 || ferror (fp) == 0) + { + close_tmp_fp (fp); + FAIL_EXIT1 ("fwrite should fail in \"r\" mode"); + } + + unsigned char buf2[4]; + ret = fread (buf2, 1, 4, fp); + if (ret != 4) + { + close_tmp_fp (fp); + FAIL_EXIT1 ("fread (): %m"); + } + + fclose (fp); +} + +/* test "a" fdopen mode. */ +void +do_test_fdopen_a (void) +{ + int fd, ret; + FILE *fp; + fd = open_tmp_fd (O_WRONLY | O_CREAT | O_APPEND); + + /* test mode mismatch. */ + fp = fdopen (fd, "r+"); + if (fp != NULL || errno != EINVAL) + { + close_tmp_fd (fd); + FAIL_EXIT1 ("fdopen (%d, \"r+\") should fail with EINVAL: %m", fd); + } + + fp = fdopen (fd, "a"); + if (fp == NULL) + { + close_tmp_fd (fd); + FAIL_EXIT1 ("fdopen (%d, w): %m", fd); + } + + const void *buf = "CCCC"; + ret = fwrite (buf, 1, 4, fp); + if (ret != 4) + { + close_tmp_fp (fp); + FAIL_EXIT1 ("fwrite (): %m"); + } + + /* fread should fail in "a" mode. */ + unsigned char buf2[4]; + clearerr (fp); + ret = fread (buf2, 1, 4, fp); + if (ret != 0 || ferror (fp) == 0) + { + close_tmp_fp (fp); + FAIL_EXIT1 ("fread should fail \"a\" mode"); + } + + fclose (fp); +} + +void +do_test_fdopen_mode (int mode, const char *fmode) +{ + int fd, ret; + FILE *fp; + fd = open_tmp_fd (mode); + + fp = fdopen (fd, fmode); + if (fp == NULL) + { + close_tmp_fd (fd); + FAIL_EXIT1 ("fdopen (%d, %s): %m", fd, fmode); + } + + const void *buf = "EEEE"; + ret = fwrite (buf, 1, 4, fp); + if (ret != 4) + { + close_tmp_fp (fp); + FAIL_EXIT1 ("fwrite () in mode:%s returns %d: %m", fmode, ret); + } + + rewind (fp); + unsigned char buf2[4]; + ret = fread (buf2, 1, 4, fp); + if (ret != 4) + { + close_tmp_fp (fp); + FAIL_EXIT1 ("fread () in mode:%s returns %d: %m", fmode, ret); + } + + fclose (fp); +} + +static int +do_test (void) +{ + + prepare_tmp_dir (); + + do_test_fdopen_w (); + do_test_fdopen_r (); + do_test_fdopen_a (); + + /* test r+ w+ a+ fdopen modes. */ + do_test_fdopen_mode (O_RDWR, "r+"); + do_test_fdopen_mode (O_RDWR | O_CREAT | O_TRUNC, "w+"); + do_test_fdopen_mode (O_RDWR | O_CREAT | O_APPEND, "a+"); + xunlink (path_to_file); + return 0; +} + +#include <support/test-driver.c> diff --git a/stdio-common/tst-freopen4-main.c b/stdio-common/tst-freopen4-main.c index e169442cf4..7284677a97 100644 --- a/stdio-common/tst-freopen4-main.c +++ b/stdio-common/tst-freopen4-main.c @@ -33,7 +33,7 @@ int do_test (void) { mtrace (); - char *temp_dir = support_create_temp_directory ("tst-freopen4"); + char *temp_dir; FILE *fp; int ret; @@ -45,6 +45,8 @@ do_test (void) support_become_root (); if (!support_can_chroot ()) return EXIT_UNSUPPORTED; + + temp_dir = support_create_temp_directory ("tst-freopen4"); xchroot (temp_dir); /* Test freopen with NULL, renamed file. This verifies that diff --git a/stdio-common/tst-freopen64-7.c b/stdio-common/tst-freopen64-7.c new file mode 100644 index 0000000000..f34c280521 --- /dev/null +++ b/stdio-common/tst-freopen64-7.c @@ -0,0 +1,2 @@ +#define FREOPEN freopen64 +#include <tst-freopen7-main.c> diff --git a/stdio-common/tst-freopen7-main.c b/stdio-common/tst-freopen7-main.c new file mode 100644 index 0000000000..965e0b4adc --- /dev/null +++ b/stdio-common/tst-freopen7-main.c @@ -0,0 +1,155 @@ +/* Test freopen cancellation handling. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <fcntl.h> +#include <mcheck.h> +#include <pthread.h> +#include <semaphore.h> +#include <stdio.h> +#include <stdlib.h> +#include <wchar.h> + +#include <support/check.h> +#include <support/file_contents.h> +#include <support/support.h> +#include <support/temp_file.h> +#include <support/test-driver.h> +#include <support/xstdio.h> +#include <support/xthread.h> +#include <support/xunistd.h> + +char *file1, *file2, *file3, *fifo; + +sem_t sem; + +void * +test_rc_to_r (void *p) +{ + int ret; + FILE *fp, *fp2; + ret = sem_post (&sem); + TEST_VERIFY_EXIT (ret == 0); + fp = xfopen (file1, "rc"); + for (int i = 0; i < 1000000; i++) + { + fgetc (fp); + fseek (fp, 0, SEEK_SET); + } + fp2 = xfopen (file3, "wc"); + fputs ("rc_to_r got to freopen", fp2); + xfclose (fp2); + /* Cancellation should occur at some point from here onwards + (possibly leaking memory and file descriptors associated with the + FILE). */ + fp = FREOPEN (file2, "r", fp); + TEST_VERIFY_EXIT (fp != NULL); + for (;;) + { + fgetc (fp); + fseek (fp, 0, SEEK_SET); + } +} + +void * +test_r_to_rc (void *p) +{ + int ret; + FILE *fp; + fp = xfopen (file1, "r"); + fp = FREOPEN (fifo, "rc", fp); + TEST_VERIFY_EXIT (fp != NULL); + ret = sem_post (&sem); + TEST_VERIFY_EXIT (ret == 0); + /* No cancellation should occur for I/O on fifo. */ + ret = fgetc (fp); + /* At this point, the other thread has called pthread_cancel and + then written a byte to the fifo, so this thread is cancelled at + the next cancellation point. */ + TEST_VERIFY (ret == 'x'); + xfclose (fp); + fp = xfopen (file3, "wc"); + fputs ("r_to_rc got to fclose", fp); + xfclose (fp); + pthread_testcancel (); + FAIL_EXIT1 ("test_r_to_rc not cancelled\n"); +} + +int +do_test (void) +{ + char *temp_dir = support_create_temp_directory ("tst-freopen-cancel"); + file1 = xasprintf ("%s/file1", temp_dir); + support_write_file_string (file1, "file1"); + add_temp_file (file1); + file2 = xasprintf ("%s/file2", temp_dir); + support_write_file_string (file2, "file2"); + add_temp_file (file2); + file3 = xasprintf ("%s/file3", temp_dir); + support_write_file_string (file3, "file3"); + add_temp_file (file3); + fifo = xasprintf ("%s/fifo", temp_dir); + xmkfifo (fifo, 0666); + add_temp_file (fifo); + int ret; + pthread_t thr; + void *retval; + + /* Test changing to/from c (cancellation disabled). */ + + verbose_printf ("Testing rc -> r\n"); + ret = sem_init (&sem, 0, 0); + TEST_VERIFY_EXIT (ret == 0); + thr = xpthread_create (NULL, test_rc_to_r, NULL); + ret = sem_wait (&sem); + TEST_VERIFY_EXIT (ret == 0); + xpthread_cancel (thr); + ret = pthread_join (thr, &retval); + TEST_COMPARE (ret, 0); + TEST_VERIFY (retval == PTHREAD_CANCELED); + TEST_OPEN_AND_COMPARE_FILE_STRING (file3, "rc_to_r got to freopen"); + + verbose_printf ("Testing r -> rc\n"); + ret = sem_init (&sem, 0, 0); + TEST_VERIFY_EXIT (ret == 0); + thr = xpthread_create (NULL, test_r_to_rc, NULL); + FILE *fp = xfopen (fifo, "w"); + ret = sem_wait (&sem); + TEST_VERIFY_EXIT (ret == 0); + /* This call happens while, or before, the other thread is waiting + to read a character from the fifo. It thus verifies that + cancellation does not occur from the fgetc call in that thread + (it should instead occur only in pthread_testcancel call), + because the expected string is only written to file3 after that + thread closes the fifo. */ + xpthread_cancel (thr); + fputc ('x', fp); + xfclose (fp); + ret = pthread_join (thr, &retval); + TEST_COMPARE (ret, 0); + TEST_VERIFY (retval == PTHREAD_CANCELED); + TEST_OPEN_AND_COMPARE_FILE_STRING (file3, "r_to_rc got to fclose"); + + free (temp_dir); + free (file1); + free (file2); + free (file3); + return 0; +} + +#include <support/test-driver.c> diff --git a/stdio-common/tst-freopen7.c b/stdio-common/tst-freopen7.c new file mode 100644 index 0000000000..03d0de798e --- /dev/null +++ b/stdio-common/tst-freopen7.c @@ -0,0 +1,2 @@ +#define FREOPEN freopen +#include <tst-freopen7-main.c> diff --git a/stdio-common/tst-fwrite-overflow.c b/stdio-common/tst-fwrite-overflow.c new file mode 100644 index 0000000000..fe503fd589 --- /dev/null +++ b/stdio-common/tst-fwrite-overflow.c @@ -0,0 +1,130 @@ +/* Test the overflow of fwrite's internal buffer. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +/* stdio.h provides BUFSIZ, which is the size of fwrite's internal buffer. */ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <support/check.h> +#include <support/temp_file.h> +#include <support/support.h> +#include <support/xstdio.h> +#include <support/xunistd.h> + +/* Length of the buffers in bytes. */ +#define RWBUF_SIZE (2 * BUFSIZ) + +void +test_one_rw (const char *in, size_t size, size_t nmemb, size_t blocks) +{ + int fd; + FILE *f; + char *out; + size_t written, to_write; + const size_t requested = size * nmemb; + + printf ("Testing with size = %zd, nmemb = %zd, blocks = %zd\n", + size, nmemb, blocks); + + TEST_VERIFY_EXIT (requested <= RWBUF_SIZE); + /* Ensure fwrite's internal buffer will overflow. */ + TEST_VERIFY_EXIT (requested > BUFSIZ); + + /* Create a temporary file and open it for reading and writing. */ + fd = create_temp_file ("tst-fwrite-overflow", NULL); + TEST_VERIFY_EXIT (fd != -1); + f = fdopen (fd, "w+"); + TEST_VERIFY_EXIT (f != NULL); + + /* Call fwrite() as many times as needed, until all data is written, + limiting the amount of data written per call to block items. */ + for (written = 0; written < nmemb; written += to_write) + { + if (written + blocks <= nmemb) + to_write = blocks; + else + to_write = nmemb - written; + /* Check if fwrite() returns the expected value. No errors are + expected. */ + TEST_COMPARE (fwrite (in + size * written, size, to_write, f), + to_write); + TEST_COMPARE (ferror (f), 0); + } + TEST_VERIFY_EXIT (written == nmemb); + + /* Ensure all the data is flushed to file. */ + TEST_COMPARE (fflush (f), 0); + + /* We have to check if the contents in the file are correct. Go back to + the beginning of the file. */ + rewind (f); + /* Try to allocate a buffer and save the contents of the generated file to + it. */ + out = xmalloc (RWBUF_SIZE); + TEST_COMPARE (fread (out, size, nmemb, f), nmemb); + + /* Ensure the output has the expected contents. */ + TEST_COMPARE (memcmp (out, in, requested), 0); + + xfclose (f); + free (out); +} + +static int +do_test (void) +{ + char * in; + int i, j; + size_t nmemb[] = {BUFSIZ + 1, RWBUF_SIZE, 0}; + /* Maximum number of items written for each fwrite call. */ + size_t block[] = {100, 1024, 2047, 0}; + /* The largest block must fit entirely in fwrite's buffer. */ + _Static_assert (2047 < BUFSIZ, + "a block must fit in fwrite's internal buffer"); + + in = xmalloc (RWBUF_SIZE); + for (i = 0; i < RWBUF_SIZE; i++) + in[i] = i % 0xff; + + for (i = 0; nmemb[i] != 0; i++) + for (j = 0; block[j] != 0; j++) + { + /* Run a test with an array of nmemb bytes. Write at most block + items per fwrite call. */ + test_one_rw (in, 1, nmemb[i], block[j]); + /* Run a test that overflows fwrite's internal buffer in a single call + by writting a single item of nmemb bytes. + This call should not use the buffer and should be written directly + to the file. */ + test_one_rw (in, nmemb[i], 1, nmemb[i]); + } + + for (j = 0; block[j] != 0; j++) + { + /* Run a test with size=2 and the minimum nmemb value that still + overflows the buffer. Write at most block items per fwrite call. */ + test_one_rw (in, 2, BUFSIZ / 2 + 1, block[j]); + /* Likewise, but size=3. */ + test_one_rw (in, 3, BUFSIZ / 3 + 1, block[j]); + } + + free (in); + return 0; +} + +#include <support/test-driver.c> diff --git a/stdio-common/tst-printf-format-as-c.c b/stdio-common/tst-printf-format-as-c.c new file mode 100644 index 0000000000..9eaf7aec73 --- /dev/null +++ b/stdio-common/tst-printf-format-as-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-as-char.c b/stdio-common/tst-printf-format-as-char.c new file mode 100644 index 0000000000..d9266d5760 --- /dev/null +++ b/stdio-common/tst-printf-format-as-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-as-double.c b/stdio-common/tst-printf-format-as-double.c new file mode 100644 index 0000000000..370ce8c11b --- /dev/null +++ b/stdio-common/tst-printf-format-as-double.c @@ -0,0 +1,22 @@ +/* Test for formatted 'asprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#define TIMEOUT (DEFAULT_TIMEOUT * 32) + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-as-int.c b/stdio-common/tst-printf-format-as-int.c new file mode 100644 index 0000000000..e6e10a9769 --- /dev/null +++ b/stdio-common/tst-printf-format-as-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-as-ldouble.c b/stdio-common/tst-printf-format-as-ldouble.c new file mode 100644 index 0000000000..e7f72208ce --- /dev/null +++ b/stdio-common/tst-printf-format-as-ldouble.c @@ -0,0 +1,22 @@ +/* Test for formatted 'asprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#define TIMEOUT (DEFAULT_TIMEOUT * 128) + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-as-llong.c b/stdio-common/tst-printf-format-as-llong.c new file mode 100644 index 0000000000..beaad73c23 --- /dev/null +++ b/stdio-common/tst-printf-format-as-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-as-long.c b/stdio-common/tst-printf-format-as-long.c new file mode 100644 index 0000000000..7d968a873c --- /dev/null +++ b/stdio-common/tst-printf-format-as-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-as-s.c b/stdio-common/tst-printf-format-as-s.c new file mode 100644 index 0000000000..baa883d531 --- /dev/null +++ b/stdio-common/tst-printf-format-as-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-as-short.c b/stdio-common/tst-printf-format-as-short.c new file mode 100644 index 0000000000..8d0b078815 --- /dev/null +++ b/stdio-common/tst-printf-format-as-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-as-uchar.c b/stdio-common/tst-printf-format-as-uchar.c new file mode 100644 index 0000000000..8e46254a2f --- /dev/null +++ b/stdio-common/tst-printf-format-as-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-as-uint.c b/stdio-common/tst-printf-format-as-uint.c new file mode 100644 index 0000000000..8cf38d71a2 --- /dev/null +++ b/stdio-common/tst-printf-format-as-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-as-ullong.c b/stdio-common/tst-printf-format-as-ullong.c new file mode 100644 index 0000000000..30b31ed8f7 --- /dev/null +++ b/stdio-common/tst-printf-format-as-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-as-ulong.c b/stdio-common/tst-printf-format-as-ulong.c new file mode 100644 index 0000000000..9b108aa2b5 --- /dev/null +++ b/stdio-common/tst-printf-format-as-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-as-ushort.c b/stdio-common/tst-printf-format-as-ushort.c new file mode 100644 index 0000000000..44b912fc38 --- /dev/null +++ b/stdio-common/tst-printf-format-as-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'asprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-as.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-as.h b/stdio-common/tst-printf-format-as.h new file mode 100644 index 0000000000..c30d2e2c42 --- /dev/null +++ b/stdio-common/tst-printf-format-as.h @@ -0,0 +1,46 @@ +/* Test feature wrapper for formatted 'asprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> +#include <stdlib.h> + +#define printf_under_test(...) \ +({ \ + __label__ out; \ + int result; \ + char *str; \ + \ + result = asprintf (&str, __VA_ARGS__); \ + if (result < 0) \ + { \ + perror ("asprintf"); \ + goto out; \ + } \ + if (fwrite (str, sizeof (*str), result, stdout) != result) \ + { \ + perror ("fwrite"); \ + result = -1; \ + } \ + free (str); \ +out: \ + result; \ +}) + +#ifndef TIMEOUT +# define TIMEOUT (DEFAULT_TIMEOUT * 12) +#endif diff --git a/stdio-common/tst-printf-format-c.sh b/stdio-common/tst-printf-format-c.sh new file mode 100644 index 0000000000..2b8d72050f --- /dev/null +++ b/stdio-common/tst-printf-format-c.sh @@ -0,0 +1,34 @@ +#!/bin/bash +# Testing of the 'c' printf conversion. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +echo Verifying c +(set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-c c | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion c output error, first line:\n/") 2>&1 || + exit 1 diff --git a/stdio-common/tst-printf-format-char.sh b/stdio-common/tst-printf-format-char.sh new file mode 100644 index 0000000000..99219679df --- /dev/null +++ b/stdio-common/tst-printf-format-char.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# Testing of signed char printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=0 + +for f in d i; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-char $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-d-c.c b/stdio-common/tst-printf-format-d-c.c new file mode 100644 index 0000000000..61fd06654d --- /dev/null +++ b/stdio-common/tst-printf-format-d-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-d-char.c b/stdio-common/tst-printf-format-d-char.c new file mode 100644 index 0000000000..baa6e1683e --- /dev/null +++ b/stdio-common/tst-printf-format-d-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-d-double.c b/stdio-common/tst-printf-format-d-double.c new file mode 100644 index 0000000000..e432a9570d --- /dev/null +++ b/stdio-common/tst-printf-format-d-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-d-int.c b/stdio-common/tst-printf-format-d-int.c new file mode 100644 index 0000000000..6d59b23517 --- /dev/null +++ b/stdio-common/tst-printf-format-d-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-d-ldouble.c b/stdio-common/tst-printf-format-d-ldouble.c new file mode 100644 index 0000000000..67a2bae1bc --- /dev/null +++ b/stdio-common/tst-printf-format-d-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-d-llong.c b/stdio-common/tst-printf-format-d-llong.c new file mode 100644 index 0000000000..950a2b84b9 --- /dev/null +++ b/stdio-common/tst-printf-format-d-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-d-long.c b/stdio-common/tst-printf-format-d-long.c new file mode 100644 index 0000000000..4fabb41b0b --- /dev/null +++ b/stdio-common/tst-printf-format-d-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-d-s.c b/stdio-common/tst-printf-format-d-s.c new file mode 100644 index 0000000000..1ef896e6e7 --- /dev/null +++ b/stdio-common/tst-printf-format-d-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-d-short.c b/stdio-common/tst-printf-format-d-short.c new file mode 100644 index 0000000000..17767bb30d --- /dev/null +++ b/stdio-common/tst-printf-format-d-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-d-uchar.c b/stdio-common/tst-printf-format-d-uchar.c new file mode 100644 index 0000000000..732479ecab --- /dev/null +++ b/stdio-common/tst-printf-format-d-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-d-uint.c b/stdio-common/tst-printf-format-d-uint.c new file mode 100644 index 0000000000..5b68aec803 --- /dev/null +++ b/stdio-common/tst-printf-format-d-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-d-ullong.c b/stdio-common/tst-printf-format-d-ullong.c new file mode 100644 index 0000000000..0e20a1dccd --- /dev/null +++ b/stdio-common/tst-printf-format-d-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-d-ulong.c b/stdio-common/tst-printf-format-d-ulong.c new file mode 100644 index 0000000000..62085ace80 --- /dev/null +++ b/stdio-common/tst-printf-format-d-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-d-ushort.c b/stdio-common/tst-printf-format-d-ushort.c new file mode 100644 index 0000000000..7d8ef76d60 --- /dev/null +++ b/stdio-common/tst-printf-format-d-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'dprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-d.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-d.h b/stdio-common/tst-printf-format-d.h new file mode 100644 index 0000000000..af7f26c17b --- /dev/null +++ b/stdio-common/tst-printf-format-d.h @@ -0,0 +1,58 @@ +/* Test feature wrapper for formatted 'dprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <stdio.h> +#include <unistd.h> + +/* We need to go through the POSIX-mandated dance to switch between + handles on an open file description. */ + +#define printf_under_test(...) \ +({ \ + __label__ out; \ + int result; \ + \ + result = fflush (stdout); \ + if (result == EOF) \ + { \ + perror ("fflush"); \ + goto out; \ + } \ + result = lseek (STDOUT_FILENO, 0, SEEK_END); \ + if (result < 0 && errno == ESPIPE) \ + result = 0; \ + if (result < 0) \ + { \ + perror ("lseek"); \ + goto out; \ + } \ + result = dprintf (STDOUT_FILENO, __VA_ARGS__); \ + if (result < 0) \ + { \ + perror ("dprintf"); \ + goto out; \ + } \ + result = fseek (stdout, 0, SEEK_END); \ + if (result < 0 && errno == ESPIPE) \ + result = 0; \ + if (result < 0) \ + perror ("fseek"); \ +out: \ + result; \ +}) diff --git a/stdio-common/tst-printf-format-double.sh b/stdio-common/tst-printf-format-double.sh new file mode 100644 index 0000000000..b4e61acfdc --- /dev/null +++ b/stdio-common/tst-printf-format-double.sh @@ -0,0 +1,74 @@ +#!/bin/bash +# Testing of double printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +format=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +# For floating-point formats we need to use the bignum mode even if the +# regular mode would do, because GAWK in the latter mode uses sprintf(3) +# internally to process the conversion requested, so any bug in our code +# would then be verified against itself, defeating the objective of doing +# the verification against an independent implementation. +AWK="${AWK:-awk} -M" + +status=77 + +# Verify that AWK can handle the range required. It also catches: +# "gawk: warning: -M ignored: MPFR/GMP support not compiled in" +# message produced where bignum support is not there, which is the +# only indication as the use of '-M' does not affect the exit status +# in this case. +ref="-1.79769313486231570814527423731704357e+308" +val=$(echo "$ref" | $AWK '{ printf "%.35e\n", $1 }' 2>&1) && + test "$val" = "$ref" && status=0 + +test $status -eq 0 || { echo "No working AWK found" && exit $status; } + +# Check for any additional conversions that AWK handles conditionally +# according to its version and/or the environment it has been built in. +# The 'A' and 'a' conversions are not suitable to use at this point, as +# output produced by AWK is different apparently due to a subtlety in +# rounding, so do not try them. +declare -A conversion_disabled +ref="-inf" +for f in f F; do + conversion_disabled[$f]=true + val=$(echo "$ref" | $AWK '{ printf "%'$f'\n", $1 }' 2>&1) && + test "${val^^}" = "${ref^^}" && unset conversion_disabled[$f] +done + +if test "${conversion_disabled[$format]+set}" = set; then + echo Unsupported $format + status=77 +else + echo Verifying $format + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-double $format | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | + sed "s/^/Conversion $format output error, first line:\n/") 2>&1 || + status=1 +fi + +exit $status diff --git a/stdio-common/tst-printf-format-f-c.c b/stdio-common/tst-printf-format-f-c.c new file mode 100644 index 0000000000..1db9e2b5f3 --- /dev/null +++ b/stdio-common/tst-printf-format-f-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-f-char.c b/stdio-common/tst-printf-format-f-char.c new file mode 100644 index 0000000000..a492f31862 --- /dev/null +++ b/stdio-common/tst-printf-format-f-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-f-double.c b/stdio-common/tst-printf-format-f-double.c new file mode 100644 index 0000000000..906ef0b90b --- /dev/null +++ b/stdio-common/tst-printf-format-f-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-f-int.c b/stdio-common/tst-printf-format-f-int.c new file mode 100644 index 0000000000..92dc0c9197 --- /dev/null +++ b/stdio-common/tst-printf-format-f-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-f-ldouble.c b/stdio-common/tst-printf-format-f-ldouble.c new file mode 100644 index 0000000000..0a0c88d64c --- /dev/null +++ b/stdio-common/tst-printf-format-f-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-f-llong.c b/stdio-common/tst-printf-format-f-llong.c new file mode 100644 index 0000000000..ceb8d035fa --- /dev/null +++ b/stdio-common/tst-printf-format-f-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-f-long.c b/stdio-common/tst-printf-format-f-long.c new file mode 100644 index 0000000000..a4a5dca5eb --- /dev/null +++ b/stdio-common/tst-printf-format-f-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-f-s.c b/stdio-common/tst-printf-format-f-s.c new file mode 100644 index 0000000000..da0e0f8bac --- /dev/null +++ b/stdio-common/tst-printf-format-f-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-f-short.c b/stdio-common/tst-printf-format-f-short.c new file mode 100644 index 0000000000..3abd134d0a --- /dev/null +++ b/stdio-common/tst-printf-format-f-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-f-uchar.c b/stdio-common/tst-printf-format-f-uchar.c new file mode 100644 index 0000000000..f104cde37b --- /dev/null +++ b/stdio-common/tst-printf-format-f-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-f-uint.c b/stdio-common/tst-printf-format-f-uint.c new file mode 100644 index 0000000000..0e1fdb4b36 --- /dev/null +++ b/stdio-common/tst-printf-format-f-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-f-ullong.c b/stdio-common/tst-printf-format-f-ullong.c new file mode 100644 index 0000000000..b4669fcbb7 --- /dev/null +++ b/stdio-common/tst-printf-format-f-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-f-ulong.c b/stdio-common/tst-printf-format-f-ulong.c new file mode 100644 index 0000000000..3f4f900362 --- /dev/null +++ b/stdio-common/tst-printf-format-f-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-f-ushort.c b/stdio-common/tst-printf-format-f-ushort.c new file mode 100644 index 0000000000..d49c237140 --- /dev/null +++ b/stdio-common/tst-printf-format-f-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'fprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-f.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-f.h b/stdio-common/tst-printf-format-f.h new file mode 100644 index 0000000000..efb3283a03 --- /dev/null +++ b/stdio-common/tst-printf-format-f.h @@ -0,0 +1,29 @@ +/* Test feature wrapper for formatted 'fprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> + +#define printf_under_test(...) \ +({ \ + int result; \ + \ + result = fprintf (stdout, __VA_ARGS__); \ + if (result < 0) \ + perror ("fprintf"); \ + result; \ +}) diff --git a/stdio-common/tst-printf-format-int.sh b/stdio-common/tst-printf-format-int.sh new file mode 100644 index 0000000000..32dcfb160a --- /dev/null +++ b/stdio-common/tst-printf-format-int.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# Testing of int printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=77 + +# Verify that AWK can handle the range required. It also catches: +# "gawk: warning: -M ignored: MPFR/GMP support not compiled in" +# message produced where bignum support is not there, which is the +# only indication as the use of '-M' does not affect the exit status +# in this case. +ref="-2147483648" +for AWK in "$AWK -M" "$AWK"; do + val=$(echo "$ref" | $AWK '{ printf "%d\n", $1 }' 2>&1) || continue + test "$val" = "$ref" && status=0 && break +done + +test $status -eq 0 || { echo "No working AWK found" && exit $status; } + +for f in d i; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-int $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-ldouble.sh b/stdio-common/tst-printf-format-ldouble.sh new file mode 100644 index 0000000000..4bfecadea9 --- /dev/null +++ b/stdio-common/tst-printf-format-ldouble.sh @@ -0,0 +1,74 @@ +#!/bin/bash +# Testing of long double printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +format=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +# For floating-point formats we need to use the bignum mode even if the +# regular mode would do, because GAWK in the latter mode uses sprintf(3) +# internally to process the conversion requested, so any bug in our code +# would then be verified against itself, defeating the objective of doing +# the verification against an independent implementation. +AWK="${AWK:-awk} -M" + +status=77 + +# Verify that AWK can handle the range required. It also catches: +# "gawk: warning: -M ignored: MPFR/GMP support not compiled in" +# message produced where bignum support is not there, which is the +# only indication as the use of '-M' does not affect the exit status +# in this case. +ref="-1.18973149535723176508575932662800702e+4932" +val=$(echo "$ref" | $AWK '{ PREC=113; printf "%.35e\n", $1 }' 2>&1) && + test "$val" = "$ref" && status=0 + +test $status -eq 0 || { echo "No working AWK found" && exit $status; } + +# Check for any additional conversions that AWK handles conditionally +# according to its version and/or the environment it has been built in. +# The 'A' and 'a' conversions are not suitable to use at this point, as +# output produced by AWK is different apparently due to a subtlety in +# rounding, so do not try them. +declare -A conversion_disabled +ref="-inf" +for f in f F; do + conversion_disabled[$f]=true + val=$(echo "$ref" | $AWK '{ printf "%'$f'\n", $1 }' 2>&1) && + test "${val^^}" = "${ref^^}" && unset conversion_disabled[$f] +done + +if test "${conversion_disabled[$format]+set}" = set; then + echo Unsupported $format + status=77 +else + echo Verifying $format + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-ldouble $format | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | + sed "s/^/Conversion $format output error, first line:\n/") 2>&1 || + status=1 +fi + +exit $status diff --git a/stdio-common/tst-printf-format-llong.sh b/stdio-common/tst-printf-format-llong.sh new file mode 100644 index 0000000000..b028a2c89b --- /dev/null +++ b/stdio-common/tst-printf-format-llong.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# Testing of long long int printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=77 + +# Verify that AWK can handle the range required. It also catches: +# "gawk: warning: -M ignored: MPFR/GMP support not compiled in" +# message produced where bignum support is not there, which is the +# only indication as the use of '-M' does not affect the exit status +# in this case. +ref="9223372036854775807" +for AWK in "$AWK -M" "$AWK"; do + val=$(echo "$ref" | $AWK '{ printf "%d\n", $1 }' 2>&1) || continue + test "$val" = "$ref" && status=0 && break +done + +test $status -eq 0 || { echo "No working AWK found" && exit $status; } + +for f in d i; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-llong $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-long.sh b/stdio-common/tst-printf-format-long.sh new file mode 100644 index 0000000000..77c67ea5bf --- /dev/null +++ b/stdio-common/tst-printf-format-long.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# Testing of long int printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=77 + +# Verify that AWK can handle the range required. It also catches: +# "gawk: warning: -M ignored: MPFR/GMP support not compiled in" +# message produced where bignum support is not there, which is the +# only indication as the use of '-M' does not affect the exit status +# in this case. +ref="9223372036854775807" +for AWK in "$AWK -M" "$AWK"; do + val=$(echo "$ref" | $AWK '{ printf "%d\n", $1 }' 2>&1) || continue + test "$val" = "$ref" && status=0 && break +done + +test $status -eq 0 || { echo "No working AWK found" && exit $status; } + +for f in d i; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-long $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-p-c.c b/stdio-common/tst-printf-format-p-c.c new file mode 100644 index 0000000000..ba46f55431 --- /dev/null +++ b/stdio-common/tst-printf-format-p-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-p-char.c b/stdio-common/tst-printf-format-p-char.c new file mode 100644 index 0000000000..7640bf8f66 --- /dev/null +++ b/stdio-common/tst-printf-format-p-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-p-double.c b/stdio-common/tst-printf-format-p-double.c new file mode 100644 index 0000000000..8271ec7bea --- /dev/null +++ b/stdio-common/tst-printf-format-p-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-p-int.c b/stdio-common/tst-printf-format-p-int.c new file mode 100644 index 0000000000..cdfaaacc34 --- /dev/null +++ b/stdio-common/tst-printf-format-p-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-p-ldouble.c b/stdio-common/tst-printf-format-p-ldouble.c new file mode 100644 index 0000000000..266989db32 --- /dev/null +++ b/stdio-common/tst-printf-format-p-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-p-llong.c b/stdio-common/tst-printf-format-p-llong.c new file mode 100644 index 0000000000..936f626a45 --- /dev/null +++ b/stdio-common/tst-printf-format-p-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-p-long.c b/stdio-common/tst-printf-format-p-long.c new file mode 100644 index 0000000000..c82c3cac09 --- /dev/null +++ b/stdio-common/tst-printf-format-p-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-p-s.c b/stdio-common/tst-printf-format-p-s.c new file mode 100644 index 0000000000..4b0201ae94 --- /dev/null +++ b/stdio-common/tst-printf-format-p-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-p-short.c b/stdio-common/tst-printf-format-p-short.c new file mode 100644 index 0000000000..2bf17f1b25 --- /dev/null +++ b/stdio-common/tst-printf-format-p-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-p-uchar.c b/stdio-common/tst-printf-format-p-uchar.c new file mode 100644 index 0000000000..02a70c3f15 --- /dev/null +++ b/stdio-common/tst-printf-format-p-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-p-uint.c b/stdio-common/tst-printf-format-p-uint.c new file mode 100644 index 0000000000..e61455e010 --- /dev/null +++ b/stdio-common/tst-printf-format-p-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-p-ullong.c b/stdio-common/tst-printf-format-p-ullong.c new file mode 100644 index 0000000000..16b2541acd --- /dev/null +++ b/stdio-common/tst-printf-format-p-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-p-ulong.c b/stdio-common/tst-printf-format-p-ulong.c new file mode 100644 index 0000000000..0b3a7fd256 --- /dev/null +++ b/stdio-common/tst-printf-format-p-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-p-ushort.c b/stdio-common/tst-printf-format-p-ushort.c new file mode 100644 index 0000000000..fa62f500ab --- /dev/null +++ b/stdio-common/tst-printf-format-p-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'printf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-p.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-p.h b/stdio-common/tst-printf-format-p.h new file mode 100644 index 0000000000..a9ffbb0d0e --- /dev/null +++ b/stdio-common/tst-printf-format-p.h @@ -0,0 +1,29 @@ +/* Test feature wrapper for formatted 'printf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> + +#define printf_under_test(...) \ +({ \ + int result; \ + \ + result = printf (__VA_ARGS__); \ + if (result < 0) \ + perror ("printf"); \ + result; \ +}) diff --git a/stdio-common/tst-printf-format-s-c.c b/stdio-common/tst-printf-format-s-c.c new file mode 100644 index 0000000000..87dad077b9 --- /dev/null +++ b/stdio-common/tst-printf-format-s-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-s-char.c b/stdio-common/tst-printf-format-s-char.c new file mode 100644 index 0000000000..f67ac94a5d --- /dev/null +++ b/stdio-common/tst-printf-format-s-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-s-double.c b/stdio-common/tst-printf-format-s-double.c new file mode 100644 index 0000000000..16186b5dc5 --- /dev/null +++ b/stdio-common/tst-printf-format-s-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-s-int.c b/stdio-common/tst-printf-format-s-int.c new file mode 100644 index 0000000000..2ed7b2df47 --- /dev/null +++ b/stdio-common/tst-printf-format-s-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-s-ldouble.c b/stdio-common/tst-printf-format-s-ldouble.c new file mode 100644 index 0000000000..0362cc50f7 --- /dev/null +++ b/stdio-common/tst-printf-format-s-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-s-llong.c b/stdio-common/tst-printf-format-s-llong.c new file mode 100644 index 0000000000..b49f84998a --- /dev/null +++ b/stdio-common/tst-printf-format-s-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-s-long.c b/stdio-common/tst-printf-format-s-long.c new file mode 100644 index 0000000000..49224d7f29 --- /dev/null +++ b/stdio-common/tst-printf-format-s-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-s-s.c b/stdio-common/tst-printf-format-s-s.c new file mode 100644 index 0000000000..3a400f8907 --- /dev/null +++ b/stdio-common/tst-printf-format-s-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-s-short.c b/stdio-common/tst-printf-format-s-short.c new file mode 100644 index 0000000000..c98a808cff --- /dev/null +++ b/stdio-common/tst-printf-format-s-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-s-uchar.c b/stdio-common/tst-printf-format-s-uchar.c new file mode 100644 index 0000000000..befc368949 --- /dev/null +++ b/stdio-common/tst-printf-format-s-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-s-uint.c b/stdio-common/tst-printf-format-s-uint.c new file mode 100644 index 0000000000..f3a4c49632 --- /dev/null +++ b/stdio-common/tst-printf-format-s-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-s-ullong.c b/stdio-common/tst-printf-format-s-ullong.c new file mode 100644 index 0000000000..4ce5590379 --- /dev/null +++ b/stdio-common/tst-printf-format-s-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-s-ulong.c b/stdio-common/tst-printf-format-s-ulong.c new file mode 100644 index 0000000000..81f9eea893 --- /dev/null +++ b/stdio-common/tst-printf-format-s-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-s-ushort.c b/stdio-common/tst-printf-format-s-ushort.c new file mode 100644 index 0000000000..4b1cca6e6c --- /dev/null +++ b/stdio-common/tst-printf-format-s-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'sprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-s.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-s.h b/stdio-common/tst-printf-format-s.h new file mode 100644 index 0000000000..7d1e72cffb --- /dev/null +++ b/stdio-common/tst-printf-format-s.h @@ -0,0 +1,60 @@ +/* Test feature wrapper for formatted 'sprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> +#include <stdlib.h> + +#include <support/next_to_fault.h> + +#define SPRINTF_BUFFER_SIZE 65536 + +static struct support_next_to_fault ntf; + +#define PREPARE printf_under_test_init +static void +printf_under_test_init (int argc, char **argv) +{ + ntf = support_next_to_fault_allocate (SPRINTF_BUFFER_SIZE); +} + +static void __attribute__ ((destructor)) +printf_under_test_fini (void) +{ + support_next_to_fault_free (&ntf); +} + +#define printf_under_test(...) \ +({ \ + __label__ out; \ + char *str = ntf.buffer; \ + int result; \ + \ + result = sprintf (str, __VA_ARGS__); \ + if (result < 0) \ + { \ + perror ("sprintf"); \ + goto out; \ + } \ + if (fwrite (str, sizeof (*str), result, stdout) != result) \ + { \ + perror ("fwrite"); \ + result = -1; \ + } \ +out: \ + result; \ +}) diff --git a/stdio-common/tst-printf-format-s.sh b/stdio-common/tst-printf-format-s.sh new file mode 100644 index 0000000000..fa0690f980 --- /dev/null +++ b/stdio-common/tst-printf-format-s.sh @@ -0,0 +1,34 @@ +#!/bin/bash +# Testing of the 's' printf conversion. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +echo Verifying s +(set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-s s | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion s output error, first line:\n/") 2>&1 || + exit 1 diff --git a/stdio-common/tst-printf-format-short.sh b/stdio-common/tst-printf-format-short.sh new file mode 100644 index 0000000000..a610a15fa1 --- /dev/null +++ b/stdio-common/tst-printf-format-short.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# Testing of short int printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=0 + +for f in d i; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-short $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-skeleton-c.c b/stdio-common/tst-printf-format-skeleton-c.c new file mode 100644 index 0000000000..3f9bbc91e3 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-c.c @@ -0,0 +1,29 @@ +/* Test skeleton for formatted printf output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 3 +#define HUGE_WIDTH 4 +#define REF_FMT "c" +#define REF_VAL(v) (v) +typedef unsigned char type_t; +static const type_t vals[] = { 0, 42, UCHAR_MAX }; +static const char length[] = ""; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-char.c b/stdio-common/tst-printf-format-skeleton-char.c new file mode 100644 index 0000000000..8c7b44b061 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-char.c @@ -0,0 +1,31 @@ +/* Test skeleton for formatted printf output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 3 +#define HUGE_WIDTH 5 +#define REF_FMT "i" +#define REF_VAL(v) ((((v) & 0xff) ^ 0x80) - 0x80) +typedef int type_t; +static const type_t vals[] = + { SCHAR_MIN - 123, SCHAR_MIN - 1, SCHAR_MIN, -123, -1, 0, 1, 42, SCHAR_MAX, + SCHAR_MAX + 1, SCHAR_MAX + 42 }; +static const char length[] = "hh"; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-double.c b/stdio-common/tst-printf-format-skeleton-double.c new file mode 100644 index 0000000000..03ac594736 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-double.c @@ -0,0 +1,33 @@ +/* Test skeleton for formatted printf output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <float.h> +#include <math.h> + +#define MID_WIDTH 20 +#define HUGE_WIDTH 320 +#define REF_FMT ".35e" +#define REF_VAL(v) (v) +#define PREC DBL_MANT_DIG +typedef double type_t; +static const type_t vals[] = + { -HUGE_VAL, -DBL_MAX, -DBL_MIN, copysign (0, -1), -NAN, NAN, 0, DBL_MIN, + DBL_MAX, HUGE_VAL }; +static const char length[] = ""; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-int.c b/stdio-common/tst-printf-format-skeleton-int.c new file mode 100644 index 0000000000..5d2076c53f --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-int.c @@ -0,0 +1,29 @@ +/* Test skeleton for formatted printf output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 8 +#define HUGE_WIDTH 15 +#define REF_FMT "i" +#define REF_VAL(v) (v) +typedef int type_t; +static const type_t vals[] = { INT_MIN, -123, -1, 0, 1, 42, INT_MAX }; +static const char length[] = ""; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-ldouble.c b/stdio-common/tst-printf-format-skeleton-ldouble.c new file mode 100644 index 0000000000..ed47e77963 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-ldouble.c @@ -0,0 +1,38 @@ +/* Test skeleton for formatted printf output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <float.h> +#include <math.h> +#include <support/test-driver.h> + +#define MID_WIDTH 20 +#define HUGE_WIDTH 4950 +#define REF_FMT ".35Le" +#define REF_VAL(v) (v) +#define PREC LDBL_MANT_DIG +typedef long double type_t; +static const type_t vals[] = + { -HUGE_VAL, -LDBL_MAX, -LDBL_MIN, copysign (0, -1), -NAN, NAN, 0, LDBL_MIN, + LDBL_MAX, HUGE_VAL }; +static const char length[] = "L"; + +#ifndef TIMEOUT +# define TIMEOUT (DEFAULT_TIMEOUT * 64) +#endif + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-llong.c b/stdio-common/tst-printf-format-skeleton-llong.c new file mode 100644 index 0000000000..9a4b7a39af --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-llong.c @@ -0,0 +1,29 @@ +/* Test skeleton for formatted printf output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 15 +#define HUGE_WIDTH 25 +#define REF_FMT "lli" +#define REF_VAL(v) (v) +typedef long long int type_t; +static const type_t vals[] = { LLONG_MIN, -123, -1, 0, 1, 42, LLONG_MAX }; +static const char length[] = "ll"; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-long.c b/stdio-common/tst-printf-format-skeleton-long.c new file mode 100644 index 0000000000..bf011b7fdb --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-long.c @@ -0,0 +1,29 @@ +/* Test skeleton for formatted printf output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 15 +#define HUGE_WIDTH 25 +#define REF_FMT "li" +#define REF_VAL(v) (v) +typedef long int type_t; +static const type_t vals[] = { LONG_MIN, -123, -1, 0, 1, 42, LONG_MAX }; +static const char length[] = "l"; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-s.c b/stdio-common/tst-printf-format-skeleton-s.c new file mode 100644 index 0000000000..59aab9fc89 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-s.c @@ -0,0 +1,30 @@ +/* Test skeleton for formatted printf output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 5 +#define HUGE_WIDTH 10 +#define REF_FMT "s" +#define REF_VAL(v) (v) +typedef const char *type_t; +static const type_t vals[] = + { "", "The", "quick", "brown fox", "jumps over the lazy dog" }; +static const char length[] = ""; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-short.c b/stdio-common/tst-printf-format-skeleton-short.c new file mode 100644 index 0000000000..1b7c8c09d7 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-short.c @@ -0,0 +1,31 @@ +/* Test skeleton for formatted printf output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 4 +#define HUGE_WIDTH 7 +#define REF_FMT "i" +#define REF_VAL(v) ((((v) & 0xffff) ^ 0x8000) - 0x8000) +typedef int type_t; +static const type_t vals[] = + { SHRT_MIN - 123, SHRT_MIN - 1, SHRT_MIN, -123, -1, 0, 1, 42, SHRT_MAX, + SHRT_MAX + 1, SHRT_MAX + 42 }; +static const char length[] = "h"; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-uchar.c b/stdio-common/tst-printf-format-skeleton-uchar.c new file mode 100644 index 0000000000..389188d746 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-uchar.c @@ -0,0 +1,30 @@ +/* Test skeleton for formatted printf output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 3 +#define HUGE_WIDTH 4 +#define REF_FMT "u" +#define REF_VAL(v) ((v) & 0xff) +typedef unsigned int type_t; +static const type_t vals[] = + { 0, 1, 42, UCHAR_MAX, UCHAR_MAX + 1, UCHAR_MAX + 42 }; +static const char length[] = "hh"; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-uint.c b/stdio-common/tst-printf-format-skeleton-uint.c new file mode 100644 index 0000000000..6a41591114 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-uint.c @@ -0,0 +1,29 @@ +/* Test skeleton for formatted printf output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 7 +#define HUGE_WIDTH 14 +#define REF_FMT "u" +#define REF_VAL(v) (v) +typedef unsigned int type_t; +static const type_t vals[] = { 0, 1, 42, UINT_MAX }; +static const char length[] = ""; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-ullong.c b/stdio-common/tst-printf-format-skeleton-ullong.c new file mode 100644 index 0000000000..a2ad7893cf --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-ullong.c @@ -0,0 +1,29 @@ +/* Test skeleton for formatted printf output for unsigned long long int convs. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 14 +#define HUGE_WIDTH 24 +#define REF_FMT "llu" +#define REF_VAL(v) (v) +typedef unsigned long long int type_t; +static const type_t vals[] = { 0, 1, 42, UINT_MAX, ULLONG_MAX }; +static const char length[] = "ll"; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-ulong.c b/stdio-common/tst-printf-format-skeleton-ulong.c new file mode 100644 index 0000000000..05cd4e0efc --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-ulong.c @@ -0,0 +1,29 @@ +/* Test skeleton for formatted printf output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 14 +#define HUGE_WIDTH 24 +#define REF_FMT "lu" +#define REF_VAL(v) (v) +typedef unsigned long int type_t; +static const type_t vals[] = { 0, 1, 42, ULONG_MAX }; +static const char length[] = "l"; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton-ushort.c b/stdio-common/tst-printf-format-skeleton-ushort.c new file mode 100644 index 0000000000..5cc2e0283a --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton-ushort.c @@ -0,0 +1,30 @@ +/* Test skeleton for formatted printf output for unsigned short int convs. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <limits.h> + +#define MID_WIDTH 3 +#define HUGE_WIDTH 6 +#define REF_FMT "u" +#define REF_VAL(v) ((v) & 0xffff) +typedef unsigned int type_t; +static const type_t vals[] = + { 0, 1, 42, USHRT_MAX, USHRT_MAX + 1, USHRT_MAX + 42 }; +static const char length[] = "h"; + +#include "tst-printf-format-skeleton.c" diff --git a/stdio-common/tst-printf-format-skeleton.c b/stdio-common/tst-printf-format-skeleton.c new file mode 100644 index 0000000000..e564d3a853 --- /dev/null +++ b/stdio-common/tst-printf-format-skeleton.c @@ -0,0 +1,380 @@ +/* Test skeleton for formatted printf output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +/* The following definitions have to be supplied by the source including + this skeleton: + + Macros: + MID_WIDTH Medium width/precision positive integer constant. Choose + such as to cause some, but not all the strings produced + to be truncated for the conversions handled. + HUGE_WIDTH Large width/precision positive integer constant. Choose + such as to cause none of the strings produced to be + truncated for the conversions handled. + REF_FMT Reference output format string. Use no flags and such + a precision and length modifier, where applicable, and + a conversion as to make sure the output produced allows + the original value to be reproduced. + REF_VAL(v) Reference value V transformation. For conversions with + a truncating length modifier define such as to reproduce + the truncation operation, otherwise let V pass through. + PREC [optional] Working precision positive integer constant. + Set to the number of binary digits in the significand for + the argument type handled; usually for floating-point + conversions only, but it may be required for 128-bit or + wider integer data types as well. + + Typedefs: + type_t Variadic function argument type. Define to the promoted + type corresponding to the conversion argument type + handled. + + Variables: + vals Array of TYPE_T values. Choose such as to cover boundary + and any special cases. + length Length modifier string. Define according to the + conversion argument type handled. + + The feature to be tested is wrapped into 'printf_under_test'. It is up + to the source including this skeleton if this is going to be a macro + or an actual function. + + See tst-*printf-format-*.c for usage examples. */ + +#include <array_length.h> +#include <dlfcn.h> +#include <mcheck.h> +#include <stdbool.h> +#include <stddef.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +/* Set to nonzero to select all possible tuples with repetitions of 1..n + elements from the set of flags as defined in FLAGS array below; n is + the length of FLAGS array. Otherwise select all possible tuples with + repetitions of 1..2 elements, followed by tuples of 3..n elements where + the index of each element k; k = 2..n in FLAGS is lower than the index + of element k-1 in FLAGS. */ +#ifndef TST_PRINTF_DUPS +# define TST_PRINTF_DUPS 0 +#endif +/* Set to nonzero to report the precision (number of significand digits) + required for floating-point calculations. */ +#ifndef PREC +# define PREC 0 +#endif + +/* The list of conversions permitted for the '#' flag, the '0' flag, + and precision respectively. */ +#define HASH_FORMATS "boxXaAeEfFgG" +#define ZERO_FORMATS "bdiouxXaAeEfFgG" +#define PREC_FORMATS "bdiouxXaAeEfFgGs" + +/* Output format conversion flags. */ +static struct +{ + /* Flag character. */ + char f; + /* List of conversion specifiers the flag is valid for; NULL if all. */ + const char *s; +} const flags[] = + { {'-'}, {'+'}, {' '}, {'#', HASH_FORMATS}, {'0', ZERO_FORMATS} }; + +/* Helper to initialize elements of the PW array for the width and + precision to be specified as a positive integer directly in the + format, and then as both a negative and a positive argument to '*'. */ +#define STR(v) #v +#define WPINIT(v) {0, STR (v)}, {v, NULL}, {-v, NULL} + +/* Width and precision settings to iterate over; zero is initialized + directly as it has no corresponding negated value and other values + use the helper above. */ +static struct wp +{ + /* Integer argument to '*', used if S is NULL. */ + int i; + /* String denoting an integer to use in the format, or NULL to use '*'. */ + const char *s; +} const wp[] = + { {0, "0"}, {0, NULL}, WPINIT (1), WPINIT (2), + WPINIT (MID_WIDTH), WPINIT (HUGE_WIDTH) }; + +/* Produce a record according to '%' and zero or more output format flags + already provided in FMT at indices 0..IDX-1, width W if non-NULL, '.' + precision specifier if POINT set to true, precision P if non-NULL, + any length modifiers L, conversion C, and value VAL. + + Record formats produced: + + %<FLAGS><L><C>:<VAL>: + %<FLAGS>.<L><C>:<VAL>: + %<FLAGS><W><L><C>:<VAL>: + %<FLAGS><W>.<L><C>:<VAL>: + %<FLAGS>.<P><L><C>:<VAL>: + %<FLAGS><W>.<P><L><C>:<VAL>: + %<FLAGS>*<L><C>:<W>:<VAL>: + %<FLAGS>*.<L><C>:<W>:<VAL>: + %<FLAGS>.*<L><C>:<P>:<VAL>: + %<FLAGS>*.*<L><C>:<W>:<P>:<VAL>: + + Return 0 on success, -1 on failure. */ + +static int +do_printf (char *fmt, size_t idx, + const struct wp *w, bool point, const struct wp *p, + const char *l, char c, type_t val) +{ + int wpval[2] = { 0 }; + size_t nint = 0; + int result; + size_t i; + + if (w != NULL) + { + if (w->s == NULL) + { + fmt[idx++] = '*'; + wpval[nint++] = w->i; + } + else + for (i = 0; w->s[i] != '\0'; i++) + fmt[idx++] = w->s[i]; + } + if (point) + fmt[idx++] = '.'; + if (p != NULL) + { + if (p->s == NULL) + { + fmt[idx++] = '*'; + wpval[nint++] = p->i; + } + else + for (i = 0; p->s[i] != '\0'; i++) + fmt[idx++] = p->s[i]; + } + for (i = 0; length[i] != '\0'; i++) + fmt[idx++] = length[i]; + fmt[idx++] = c; + fmt[idx] = ':'; + fmt[idx + 1] = '\0'; + if (fputs (fmt, stdout) == EOF) + { + perror ("fputs"); + return -1; + } + fmt[idx++] = '\0'; + if (nint > 0) + { + result = printf ("%i:", wpval[0]); + if (result < 0) + { + perror ("printf"); + return -1; + } + if (nint > 1) + { + result = printf ("%i:", wpval[1]); + if (result < 0) + { + perror ("printf"); + return -1; + } + } + } + switch (nint) + { + case 0: + result = printf_under_test (fmt, val); + break; + case 1: + result = printf_under_test (fmt, wpval[0], val); + break; + case 2: + result = printf_under_test (fmt, wpval[0], wpval[1], val); + break; + default: + fputs ("Broken test, nint > 2\n", stderr); + return -1; + } + if (result < 0) + return -1; + if (fputs (":\n", stdout) == EOF) + { + perror ("fputs"); + return -1; + } + return 0; +} + +/* Produce a list of records according to '%' and zero or more output + format flags already provided in FMT at indices 0..IDX-1, iterating + over widths and precisions defined in global WP array, any length + modifiers L, conversion C, and value VAL. Inline '0' is omitted for + the width, as it is a flag already handled among the flags supplied. + Precision is omitted where the conversion does not allow it. + + Return 0 on success, -1 on failure. */ + +static int +do_printf_flags (char *fmt, size_t idx, const char *l, char c, type_t val) +{ + bool do_prec = strchr (PREC_FORMATS, c) != NULL; + size_t i; + + if (do_printf (fmt, idx, NULL, false, NULL, l, c, val) < 0) + return -1; + if (do_prec && do_printf (fmt, idx, NULL, true, NULL, l, c, val) < 0) + return -1; + for (i = 0; i < array_length (wp); i++) + { + size_t j; + + if (do_prec && do_printf (fmt, idx, NULL, true, wp + i, l, c, val) < 0) + return -1; + /* Inline '0' is a flag rather than width and is handled elsewhere. */ + if (wp[i].s != NULL && wp[i].s[0] == '0' && wp[i].s[1] == '\0') + continue; + if (do_printf (fmt, idx, wp + i, false, NULL, l, c, val) < 0) + return -1; + if (do_prec) + { + if (do_printf (fmt, idx, wp + i, true, NULL, l, c, val) < 0) + return -1; + for (j = 0; j < array_length (wp); j++) + if (do_printf (fmt, idx, wp + i, true, wp + j, l, c, val) < 0) + return -1; + } + } + return 0; +} + +/* Produce a list of records using the formatted output specifier + supplied in ARGV[1] preceded by any length modifier supplied in + the global LENGTH variable, iterating over format flags defined + in the global FLAGS array, and values supplied in the global VALS + array. Note that the output specifier supplied is not verified + against TYPE_T, so undefined behavior will result if this is used + incorrectly. + + If PREC is nonzero, then this record: + + prec:<PREC> + + is produced at the beginning. Then for each VAL from VALS a block + of records is produced starting with: + + val:<VAL> + + where VAL is formatted according to REF_FMT output format. The + block continues with records as shown with DO_PRINTF above using + flags iterated over according to TST_PRINTF_DUPS. + + See the top of this file for the definitions that have to be + provided by the source including this skeleton. */ + +static int +do_test (int argc, char *argv[]) +{ + char fmt[100] = {'%'}; + size_t j; + size_t v; + char c; + + if (argc < 2 || *argv[1] == '\0') + { + fprintf (stderr, "Usage: %s <specifier>\n", basename (argv[0])); + return EXIT_FAILURE; + } + + mtrace (); + + if (PREC && printf ("prec:%i\n", PREC) < 0) + { + perror ("printf"); + return EXIT_FAILURE; + } + + c = *argv[1]; + for (v = 0; v < array_length (vals); v++) + { + if (printf ("val:%" REF_FMT "\n", REF_VAL (vals[v])) < 0) + { + perror ("printf"); + return EXIT_FAILURE; + } + + if (do_printf_flags (fmt, 1, length, c, vals[v]) < 0) + return EXIT_FAILURE; + for (j = 0; j < array_length (flags); j++) + { + bool done = false; + size_t i[j + 1]; + size_t k; + + memset (i, 0, sizeof (i)); + while (!done) + { + bool skip = false; + size_t idx = 1; + char f; + + for (k = 0; k <= j; k++) + { + const char *s = flags[i[k]].s; + + if (s && strchr (s, c) == NULL) + skip = true; + if (!TST_PRINTF_DUPS && j > 1 && k > 0 && i[k] >= i[k - 1]) + skip = true; + if (skip) + break; + + f = flags[i[k]].f; + fmt[idx++] = f; + } + if (!skip && do_printf_flags (fmt, idx, length, c, vals[v]) < 0) + return EXIT_FAILURE; + for (k = 0; k <= j; k++) + { + i[k]++; + if (i[k] < array_length (flags)) + break; + else if (k == j) + done = true; + else + i[k] = 0; + } + } + } + } + + return EXIT_SUCCESS; +} + +/* Interpose 'dladdr' with a stub to speed up malloc tracing. */ + +int +dladdr (const void *, Dl_info *) +{ + return 0; +} + +#define TEST_FUNCTION_ARGV do_test +#include <support/test-driver.c> diff --git a/stdio-common/tst-printf-format-sn-c.c b/stdio-common/tst-printf-format-sn-c.c new file mode 100644 index 0000000000..59f51d635b --- /dev/null +++ b/stdio-common/tst-printf-format-sn-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-sn-char.c b/stdio-common/tst-printf-format-sn-char.c new file mode 100644 index 0000000000..8b682dd2d5 --- /dev/null +++ b/stdio-common/tst-printf-format-sn-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-sn-double.c b/stdio-common/tst-printf-format-sn-double.c new file mode 100644 index 0000000000..4719a58d84 --- /dev/null +++ b/stdio-common/tst-printf-format-sn-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-sn-int.c b/stdio-common/tst-printf-format-sn-int.c new file mode 100644 index 0000000000..94c42f246f --- /dev/null +++ b/stdio-common/tst-printf-format-sn-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-sn-ldouble.c b/stdio-common/tst-printf-format-sn-ldouble.c new file mode 100644 index 0000000000..921f3ffe3b --- /dev/null +++ b/stdio-common/tst-printf-format-sn-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-sn-llong.c b/stdio-common/tst-printf-format-sn-llong.c new file mode 100644 index 0000000000..013552791e --- /dev/null +++ b/stdio-common/tst-printf-format-sn-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-sn-long.c b/stdio-common/tst-printf-format-sn-long.c new file mode 100644 index 0000000000..58c8912746 --- /dev/null +++ b/stdio-common/tst-printf-format-sn-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-sn-s.c b/stdio-common/tst-printf-format-sn-s.c new file mode 100644 index 0000000000..aa3f170c14 --- /dev/null +++ b/stdio-common/tst-printf-format-sn-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-sn-short.c b/stdio-common/tst-printf-format-sn-short.c new file mode 100644 index 0000000000..f7baa1211d --- /dev/null +++ b/stdio-common/tst-printf-format-sn-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-sn-uchar.c b/stdio-common/tst-printf-format-sn-uchar.c new file mode 100644 index 0000000000..6ae5f121bd --- /dev/null +++ b/stdio-common/tst-printf-format-sn-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-sn-uint.c b/stdio-common/tst-printf-format-sn-uint.c new file mode 100644 index 0000000000..f0a0c3063f --- /dev/null +++ b/stdio-common/tst-printf-format-sn-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-sn-ullong.c b/stdio-common/tst-printf-format-sn-ullong.c new file mode 100644 index 0000000000..0dc0a50c4f --- /dev/null +++ b/stdio-common/tst-printf-format-sn-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-sn-ulong.c b/stdio-common/tst-printf-format-sn-ulong.c new file mode 100644 index 0000000000..23ff5a27d7 --- /dev/null +++ b/stdio-common/tst-printf-format-sn-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-sn-ushort.c b/stdio-common/tst-printf-format-sn-ushort.c new file mode 100644 index 0000000000..1c5cffbeb4 --- /dev/null +++ b/stdio-common/tst-printf-format-sn-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'snprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-sn.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-sn.h b/stdio-common/tst-printf-format-sn.h new file mode 100644 index 0000000000..ec2645bf57 --- /dev/null +++ b/stdio-common/tst-printf-format-sn.h @@ -0,0 +1,60 @@ +/* Test feature wrapper for formatted 'snprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdio.h> +#include <stdlib.h> + +#include <support/next_to_fault.h> + +#define SPRINTF_BUFFER_SIZE 65536 + +static struct support_next_to_fault ntf; + +#define PREPARE printf_under_test_init +static void +printf_under_test_init (int argc, char **argv) +{ + ntf = support_next_to_fault_allocate (SPRINTF_BUFFER_SIZE); +} + +static void __attribute__ ((destructor)) +printf_under_test_fini (void) +{ + support_next_to_fault_free (&ntf); +} + +#define printf_under_test(...) \ +({ \ + __label__ out; \ + char *str = ntf.buffer; \ + int result; \ + \ + result = snprintf (str, ntf.length, __VA_ARGS__); \ + if (result < 0) \ + { \ + perror ("snprintf"); \ + goto out; \ + } \ + if (fwrite (str, sizeof (*str), result, stdout) != result) \ + { \ + perror ("fwrite"); \ + result = -1; \ + } \ +out: \ + result; \ +}) diff --git a/stdio-common/tst-printf-format-uchar.sh b/stdio-common/tst-printf-format-uchar.sh new file mode 100644 index 0000000000..8385d479cc --- /dev/null +++ b/stdio-common/tst-printf-format-uchar.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# Testing of unsigned char printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=0 + +for f in o u x X; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-uchar $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-uint.sh b/stdio-common/tst-printf-format-uint.sh new file mode 100644 index 0000000000..6806c99ce0 --- /dev/null +++ b/stdio-common/tst-printf-format-uint.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# Testing of unsigned int printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=77 + +# Verify that AWK can handle the range required. It also catches: +# "gawk: warning: -M ignored: MPFR/GMP support not compiled in" +# message produced where bignum support is not there, which is the +# only indication as the use of '-M' does not affect the exit status +# in this case. +ref="4294967295" +for AWK in "$AWK -M" "$AWK"; do + val=$(echo "$ref" | $AWK '{ printf "%d\n", $1 }' 2>&1) || continue + test "$val" = "$ref" && status=0 && break +done + +test $status -eq 0 || { echo "No working AWK found" && exit $status; } + +for f in o u x X; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-uint $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-ullong.sh b/stdio-common/tst-printf-format-ullong.sh new file mode 100644 index 0000000000..c4fa69c2d1 --- /dev/null +++ b/stdio-common/tst-printf-format-ullong.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# Testing of unsigned long long int printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=77 + +# Verify that AWK can handle the range required. It also catches: +# "gawk: warning: -M ignored: MPFR/GMP support not compiled in" +# message produced where bignum support is not there, which is the +# only indication as the use of '-M' does not affect the exit status +# in this case. +ref="18446744073709551615" +for AWK in "$AWK -M" "$AWK"; do + val=$(echo "$ref" | $AWK '{ printf "%d\n", $1 }' 2>&1) || continue + test "$val" = "$ref" && status=0 && break +done + +test $status -eq 0 || { echo "No working AWK found" && exit $status; } + +for f in o u x X; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-ullong $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-ulong.sh b/stdio-common/tst-printf-format-ulong.sh new file mode 100644 index 0000000000..fce881afe3 --- /dev/null +++ b/stdio-common/tst-printf-format-ulong.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# Testing of unsigned long int printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=77 + +# Verify that AWK can handle the range required. It also catches: +# "gawk: warning: -M ignored: MPFR/GMP support not compiled in" +# message produced where bignum support is not there, which is the +# only indication as the use of '-M' does not affect the exit status +# in this case. +ref="18446744073709551615" +for AWK in "$AWK -M" "$AWK"; do + val=$(echo "$ref" | $AWK '{ printf "%d\n", $1 }' 2>&1) || continue + test "$val" = "$ref" && status=0 && break +done + +test $status -eq 0 || { echo "No working AWK found" && exit $status; } + +for f in o u x X; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-ulong $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-ushort.sh b/stdio-common/tst-printf-format-ushort.sh new file mode 100644 index 0000000000..2f411b777e --- /dev/null +++ b/stdio-common/tst-printf-format-ushort.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# Testing of unsigned short int printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +xprintf=$1; shift +common_objpfx=$1; shift +test_program_prefix=$1; shift + +AWK=${AWK:-awk} + +status=0 + +for f in o u x X; do + echo Verifying $f + (set -o pipefail + ${test_program_prefix} \ + ${common_objpfx}stdio-common/tst-printf-format-${xprintf}-ushort $f | + $AWK -f tst-printf-format.awk 2>&1 | + head -n 1 | sed "s/^/Conversion $f output error, first line:\n/") 2>&1 || + status=1 +done + +exit $status diff --git a/stdio-common/tst-printf-format-v-c.c b/stdio-common/tst-printf-format-v-c.c new file mode 100644 index 0000000000..94aa3042aa --- /dev/null +++ b/stdio-common/tst-printf-format-v-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-v-char.c b/stdio-common/tst-printf-format-v-char.c new file mode 100644 index 0000000000..c813d81e53 --- /dev/null +++ b/stdio-common/tst-printf-format-v-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-v-double.c b/stdio-common/tst-printf-format-v-double.c new file mode 100644 index 0000000000..90cc1704eb --- /dev/null +++ b/stdio-common/tst-printf-format-v-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-v-int.c b/stdio-common/tst-printf-format-v-int.c new file mode 100644 index 0000000000..6529425b26 --- /dev/null +++ b/stdio-common/tst-printf-format-v-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-v-ldouble.c b/stdio-common/tst-printf-format-v-ldouble.c new file mode 100644 index 0000000000..813f4a510d --- /dev/null +++ b/stdio-common/tst-printf-format-v-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-v-llong.c b/stdio-common/tst-printf-format-v-llong.c new file mode 100644 index 0000000000..270ad08bf5 --- /dev/null +++ b/stdio-common/tst-printf-format-v-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-v-long.c b/stdio-common/tst-printf-format-v-long.c new file mode 100644 index 0000000000..2f5f653fec --- /dev/null +++ b/stdio-common/tst-printf-format-v-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-v-s.c b/stdio-common/tst-printf-format-v-s.c new file mode 100644 index 0000000000..ebc253b3e8 --- /dev/null +++ b/stdio-common/tst-printf-format-v-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-v-short.c b/stdio-common/tst-printf-format-v-short.c new file mode 100644 index 0000000000..92a59d9fd3 --- /dev/null +++ b/stdio-common/tst-printf-format-v-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-v-uchar.c b/stdio-common/tst-printf-format-v-uchar.c new file mode 100644 index 0000000000..045ffd2864 --- /dev/null +++ b/stdio-common/tst-printf-format-v-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-v-uint.c b/stdio-common/tst-printf-format-v-uint.c new file mode 100644 index 0000000000..17b1ce3aa7 --- /dev/null +++ b/stdio-common/tst-printf-format-v-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-v-ullong.c b/stdio-common/tst-printf-format-v-ullong.c new file mode 100644 index 0000000000..590b04f339 --- /dev/null +++ b/stdio-common/tst-printf-format-v-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-v-ulong.c b/stdio-common/tst-printf-format-v-ulong.c new file mode 100644 index 0000000000..6747677a42 --- /dev/null +++ b/stdio-common/tst-printf-format-v-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-v-ushort.c b/stdio-common/tst-printf-format-v-ushort.c new file mode 100644 index 0000000000..1e78271562 --- /dev/null +++ b/stdio-common/tst-printf-format-v-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-v.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-v.h b/stdio-common/tst-printf-format-v.h new file mode 100644 index 0000000000..711b290b59 --- /dev/null +++ b/stdio-common/tst-printf-format-v.h @@ -0,0 +1,34 @@ +/* Test feature wrapper for formatted 'vprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdarg.h> +#include <stdio.h> + +static int +printf_under_test (const char *restrict fmt, ...) +{ + va_list ap; + int result; + + va_start (ap, fmt); + result = vprintf (fmt, ap); + va_end (ap); + if (result < 0) + perror ("vprintf"); + return result; +} diff --git a/stdio-common/tst-printf-format-vas-c.c b/stdio-common/tst-printf-format-vas-c.c new file mode 100644 index 0000000000..f8cf814c8c --- /dev/null +++ b/stdio-common/tst-printf-format-vas-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-vas-char.c b/stdio-common/tst-printf-format-vas-char.c new file mode 100644 index 0000000000..39c6e73977 --- /dev/null +++ b/stdio-common/tst-printf-format-vas-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-vas-double.c b/stdio-common/tst-printf-format-vas-double.c new file mode 100644 index 0000000000..25a21bb0ad --- /dev/null +++ b/stdio-common/tst-printf-format-vas-double.c @@ -0,0 +1,22 @@ +/* Test for formatted 'vasprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#define TIMEOUT (DEFAULT_TIMEOUT * 32) + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-vas-int.c b/stdio-common/tst-printf-format-vas-int.c new file mode 100644 index 0000000000..9cd70c8fcb --- /dev/null +++ b/stdio-common/tst-printf-format-vas-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-vas-ldouble.c b/stdio-common/tst-printf-format-vas-ldouble.c new file mode 100644 index 0000000000..60c3933fab --- /dev/null +++ b/stdio-common/tst-printf-format-vas-ldouble.c @@ -0,0 +1,22 @@ +/* Test for formatted 'vasprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#define TIMEOUT (DEFAULT_TIMEOUT * 128) + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-vas-llong.c b/stdio-common/tst-printf-format-vas-llong.c new file mode 100644 index 0000000000..5d5322b8b9 --- /dev/null +++ b/stdio-common/tst-printf-format-vas-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-vas-long.c b/stdio-common/tst-printf-format-vas-long.c new file mode 100644 index 0000000000..d9651053f8 --- /dev/null +++ b/stdio-common/tst-printf-format-vas-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-vas-s.c b/stdio-common/tst-printf-format-vas-s.c new file mode 100644 index 0000000000..6d74ab83e3 --- /dev/null +++ b/stdio-common/tst-printf-format-vas-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-vas-short.c b/stdio-common/tst-printf-format-vas-short.c new file mode 100644 index 0000000000..a6d76a9705 --- /dev/null +++ b/stdio-common/tst-printf-format-vas-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-vas-uchar.c b/stdio-common/tst-printf-format-vas-uchar.c new file mode 100644 index 0000000000..c3dee11b7d --- /dev/null +++ b/stdio-common/tst-printf-format-vas-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-vas-uint.c b/stdio-common/tst-printf-format-vas-uint.c new file mode 100644 index 0000000000..e56e89374d --- /dev/null +++ b/stdio-common/tst-printf-format-vas-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-vas-ullong.c b/stdio-common/tst-printf-format-vas-ullong.c new file mode 100644 index 0000000000..05691bc318 --- /dev/null +++ b/stdio-common/tst-printf-format-vas-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-vas-ulong.c b/stdio-common/tst-printf-format-vas-ulong.c new file mode 100644 index 0000000000..767d9cb6a6 --- /dev/null +++ b/stdio-common/tst-printf-format-vas-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-vas-ushort.c b/stdio-common/tst-printf-format-vas-ushort.c new file mode 100644 index 0000000000..284d79f753 --- /dev/null +++ b/stdio-common/tst-printf-format-vas-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vasprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vas.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-vas.h b/stdio-common/tst-printf-format-vas.h new file mode 100644 index 0000000000..3e38e729ec --- /dev/null +++ b/stdio-common/tst-printf-format-vas.h @@ -0,0 +1,50 @@ +/* Test feature wrapper for formatted 'vasprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> + +static int +printf_under_test (const char *restrict fmt, ...) +{ + va_list ap; + int result; + char *str; + + va_start (ap, fmt); + result = vasprintf (&str, fmt, ap); + va_end (ap); + if (result < 0) + { + perror ("vasprintf"); + goto out; + } + if (fwrite (str, sizeof (*str), result, stdout) != result) + { + perror ("fwrite"); + result = -1; + } + free (str); +out: + return result; +} + +#ifndef TIMEOUT +# define TIMEOUT (DEFAULT_TIMEOUT * 12) +#endif diff --git a/stdio-common/tst-printf-format-vd-c.c b/stdio-common/tst-printf-format-vd-c.c new file mode 100644 index 0000000000..209b178489 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-vd-char.c b/stdio-common/tst-printf-format-vd-char.c new file mode 100644 index 0000000000..8286b6d5b2 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-vd-double.c b/stdio-common/tst-printf-format-vd-double.c new file mode 100644 index 0000000000..e89a2ca598 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-vd-int.c b/stdio-common/tst-printf-format-vd-int.c new file mode 100644 index 0000000000..598a888b1c --- /dev/null +++ b/stdio-common/tst-printf-format-vd-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-vd-ldouble.c b/stdio-common/tst-printf-format-vd-ldouble.c new file mode 100644 index 0000000000..d3ada6ff0b --- /dev/null +++ b/stdio-common/tst-printf-format-vd-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-vd-llong.c b/stdio-common/tst-printf-format-vd-llong.c new file mode 100644 index 0000000000..ea6ea7b215 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-vd-long.c b/stdio-common/tst-printf-format-vd-long.c new file mode 100644 index 0000000000..4ee1cdacff --- /dev/null +++ b/stdio-common/tst-printf-format-vd-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-vd-s.c b/stdio-common/tst-printf-format-vd-s.c new file mode 100644 index 0000000000..df7cf9a6fb --- /dev/null +++ b/stdio-common/tst-printf-format-vd-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-vd-short.c b/stdio-common/tst-printf-format-vd-short.c new file mode 100644 index 0000000000..87128c8303 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-vd-uchar.c b/stdio-common/tst-printf-format-vd-uchar.c new file mode 100644 index 0000000000..90dea71947 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-vd-uint.c b/stdio-common/tst-printf-format-vd-uint.c new file mode 100644 index 0000000000..feb95dc018 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-vd-ullong.c b/stdio-common/tst-printf-format-vd-ullong.c new file mode 100644 index 0000000000..8f62fb0aee --- /dev/null +++ b/stdio-common/tst-printf-format-vd-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-vd-ulong.c b/stdio-common/tst-printf-format-vd-ulong.c new file mode 100644 index 0000000000..59b2015cd3 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-vd-ushort.c b/stdio-common/tst-printf-format-vd-ushort.c new file mode 100644 index 0000000000..5d096502d9 --- /dev/null +++ b/stdio-common/tst-printf-format-vd-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vdprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vd.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-vd.h b/stdio-common/tst-printf-format-vd.h new file mode 100644 index 0000000000..d721edadc6 --- /dev/null +++ b/stdio-common/tst-printf-format-vd.h @@ -0,0 +1,62 @@ +/* Test feature wrapper for formatted 'vdprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <stdarg.h> +#include <stdio.h> +#include <unistd.h> + +/* We need to go through the POSIX-mandated dance to switch between + handles on an open file description. */ + +static int +printf_under_test (const char *restrict fmt, ...) +{ + va_list ap; + int result; + + result = fflush (stdout); + if (result == EOF) + { + perror ("fflush"); + goto out; + } + result = lseek (STDOUT_FILENO, 0, SEEK_END); + if (result < 0 && errno == ESPIPE) + result = 0; + if (result < 0) + { + perror ("lseek"); + goto out; + } + va_start (ap, fmt); + result = vdprintf (STDOUT_FILENO, fmt, ap); + va_end (ap); + if (result < 0) + { + perror ("vdprintf"); + goto out; + } + result = fseek (stdout, 0, SEEK_END); + if (result < 0 && errno == ESPIPE) + result = 0; + if (result < 0) + perror ("fseek"); +out: + return result; +} diff --git a/stdio-common/tst-printf-format-vf-c.c b/stdio-common/tst-printf-format-vf-c.c new file mode 100644 index 0000000000..b31b551327 --- /dev/null +++ b/stdio-common/tst-printf-format-vf-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-vf-char.c b/stdio-common/tst-printf-format-vf-char.c new file mode 100644 index 0000000000..daa2886adb --- /dev/null +++ b/stdio-common/tst-printf-format-vf-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-vf-double.c b/stdio-common/tst-printf-format-vf-double.c new file mode 100644 index 0000000000..63ec8c0cae --- /dev/null +++ b/stdio-common/tst-printf-format-vf-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-vf-int.c b/stdio-common/tst-printf-format-vf-int.c new file mode 100644 index 0000000000..e687099b10 --- /dev/null +++ b/stdio-common/tst-printf-format-vf-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-vf-ldouble.c b/stdio-common/tst-printf-format-vf-ldouble.c new file mode 100644 index 0000000000..801e359dab --- /dev/null +++ b/stdio-common/tst-printf-format-vf-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-vf-llong.c b/stdio-common/tst-printf-format-vf-llong.c new file mode 100644 index 0000000000..a1b9ae340c --- /dev/null +++ b/stdio-common/tst-printf-format-vf-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-vf-long.c b/stdio-common/tst-printf-format-vf-long.c new file mode 100644 index 0000000000..7afc127b84 --- /dev/null +++ b/stdio-common/tst-printf-format-vf-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-vf-s.c b/stdio-common/tst-printf-format-vf-s.c new file mode 100644 index 0000000000..6faa6d0dfe --- /dev/null +++ b/stdio-common/tst-printf-format-vf-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-vf-short.c b/stdio-common/tst-printf-format-vf-short.c new file mode 100644 index 0000000000..c3d17ca501 --- /dev/null +++ b/stdio-common/tst-printf-format-vf-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-vf-uchar.c b/stdio-common/tst-printf-format-vf-uchar.c new file mode 100644 index 0000000000..643438c693 --- /dev/null +++ b/stdio-common/tst-printf-format-vf-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-vf-uint.c b/stdio-common/tst-printf-format-vf-uint.c new file mode 100644 index 0000000000..844192cc9c --- /dev/null +++ b/stdio-common/tst-printf-format-vf-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-vf-ullong.c b/stdio-common/tst-printf-format-vf-ullong.c new file mode 100644 index 0000000000..ab58abd7f8 --- /dev/null +++ b/stdio-common/tst-printf-format-vf-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-vf-ulong.c b/stdio-common/tst-printf-format-vf-ulong.c new file mode 100644 index 0000000000..e76251f9d0 --- /dev/null +++ b/stdio-common/tst-printf-format-vf-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-vf-ushort.c b/stdio-common/tst-printf-format-vf-ushort.c new file mode 100644 index 0000000000..bf78a919a6 --- /dev/null +++ b/stdio-common/tst-printf-format-vf-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vfprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vf.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-vf.h b/stdio-common/tst-printf-format-vf.h new file mode 100644 index 0000000000..f824364f4c --- /dev/null +++ b/stdio-common/tst-printf-format-vf.h @@ -0,0 +1,34 @@ +/* Test feature wrapper for formatted 'vfprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdarg.h> +#include <stdio.h> + +static int +printf_under_test (const char *restrict fmt, ...) +{ + va_list ap; + int result; + + va_start (ap, fmt); + result = vfprintf (stdout, fmt, ap); + va_end (ap); + if (result < 0) + perror ("vfprintf"); + return result; +} diff --git a/stdio-common/tst-printf-format-vs-c.c b/stdio-common/tst-printf-format-vs-c.c new file mode 100644 index 0000000000..72bcb5f049 --- /dev/null +++ b/stdio-common/tst-printf-format-vs-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-vs-char.c b/stdio-common/tst-printf-format-vs-char.c new file mode 100644 index 0000000000..30135cf1be --- /dev/null +++ b/stdio-common/tst-printf-format-vs-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-vs-double.c b/stdio-common/tst-printf-format-vs-double.c new file mode 100644 index 0000000000..56290d383e --- /dev/null +++ b/stdio-common/tst-printf-format-vs-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-vs-int.c b/stdio-common/tst-printf-format-vs-int.c new file mode 100644 index 0000000000..f954e1f4f8 --- /dev/null +++ b/stdio-common/tst-printf-format-vs-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-vs-ldouble.c b/stdio-common/tst-printf-format-vs-ldouble.c new file mode 100644 index 0000000000..3088e42813 --- /dev/null +++ b/stdio-common/tst-printf-format-vs-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-vs-llong.c b/stdio-common/tst-printf-format-vs-llong.c new file mode 100644 index 0000000000..348ec2c3d7 --- /dev/null +++ b/stdio-common/tst-printf-format-vs-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-vs-long.c b/stdio-common/tst-printf-format-vs-long.c new file mode 100644 index 0000000000..874e3ba479 --- /dev/null +++ b/stdio-common/tst-printf-format-vs-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-vs-s.c b/stdio-common/tst-printf-format-vs-s.c new file mode 100644 index 0000000000..051f1b79bf --- /dev/null +++ b/stdio-common/tst-printf-format-vs-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-vs-short.c b/stdio-common/tst-printf-format-vs-short.c new file mode 100644 index 0000000000..36595a82b4 --- /dev/null +++ b/stdio-common/tst-printf-format-vs-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-vs-uchar.c b/stdio-common/tst-printf-format-vs-uchar.c new file mode 100644 index 0000000000..8e35614110 --- /dev/null +++ b/stdio-common/tst-printf-format-vs-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-vs-uint.c b/stdio-common/tst-printf-format-vs-uint.c new file mode 100644 index 0000000000..4a13d6c409 --- /dev/null +++ b/stdio-common/tst-printf-format-vs-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-vs-ullong.c b/stdio-common/tst-printf-format-vs-ullong.c new file mode 100644 index 0000000000..313dfaf02b --- /dev/null +++ b/stdio-common/tst-printf-format-vs-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-vs-ulong.c b/stdio-common/tst-printf-format-vs-ulong.c new file mode 100644 index 0000000000..5ab7e2e7fe --- /dev/null +++ b/stdio-common/tst-printf-format-vs-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-vs-ushort.c b/stdio-common/tst-printf-format-vs-ushort.c new file mode 100644 index 0000000000..a4af138a2f --- /dev/null +++ b/stdio-common/tst-printf-format-vs-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vs.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-vs.h b/stdio-common/tst-printf-format-vs.h new file mode 100644 index 0000000000..e00e1b085b --- /dev/null +++ b/stdio-common/tst-printf-format-vs.h @@ -0,0 +1,64 @@ +/* Test feature wrapper for formatted 'vsprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> + +#include <support/next_to_fault.h> + +#define SPRINTF_BUFFER_SIZE 65536 + +static struct support_next_to_fault ntf; + +#define PREPARE printf_under_test_init +static void +printf_under_test_init (int argc, char **argv) +{ + ntf = support_next_to_fault_allocate (SPRINTF_BUFFER_SIZE); +} + +static void __attribute__ ((destructor)) +printf_under_test_fini (void) +{ + support_next_to_fault_free (&ntf); +} + +static int +printf_under_test (const char *restrict fmt, ...) +{ + char *str = ntf.buffer; + va_list ap; + int result; + + va_start (ap, fmt); + result = vsprintf (str, fmt, ap); + va_end (ap); + if (result < 0) + { + perror ("vsprintf"); + goto out; + } + if (fwrite (str, sizeof (*str), result, stdout) != result) + { + perror ("fwrite"); + result = -1; + } +out: + return result; +} diff --git a/stdio-common/tst-printf-format-vsn-c.c b/stdio-common/tst-printf-format-vsn-c.c new file mode 100644 index 0000000000..47c8a0f5df --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-c.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for the 'c' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-c.c" diff --git a/stdio-common/tst-printf-format-vsn-char.c b/stdio-common/tst-printf-format-vsn-char.c new file mode 100644 index 0000000000..48d4393a46 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-char.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for signed char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-char.c" diff --git a/stdio-common/tst-printf-format-vsn-double.c b/stdio-common/tst-printf-format-vsn-double.c new file mode 100644 index 0000000000..06c1003fb5 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-double.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-double.c" diff --git a/stdio-common/tst-printf-format-vsn-int.c b/stdio-common/tst-printf-format-vsn-int.c new file mode 100644 index 0000000000..2aae92616f --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-int.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-int.c" diff --git a/stdio-common/tst-printf-format-vsn-ldouble.c b/stdio-common/tst-printf-format-vsn-ldouble.c new file mode 100644 index 0000000000..0b5aafb124 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-ldouble.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for long double conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-ldouble.c" diff --git a/stdio-common/tst-printf-format-vsn-llong.c b/stdio-common/tst-printf-format-vsn-llong.c new file mode 100644 index 0000000000..8e79b8384f --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-llong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-llong.c" diff --git a/stdio-common/tst-printf-format-vsn-long.c b/stdio-common/tst-printf-format-vsn-long.c new file mode 100644 index 0000000000..e94f7dec23 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-long.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-long.c" diff --git a/stdio-common/tst-printf-format-vsn-s.c b/stdio-common/tst-printf-format-vsn-s.c new file mode 100644 index 0000000000..efd8a4c23f --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-s.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for the 's' conversion. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-s.c" diff --git a/stdio-common/tst-printf-format-vsn-short.c b/stdio-common/tst-printf-format-vsn-short.c new file mode 100644 index 0000000000..3d375b59e7 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-short.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-short.c" diff --git a/stdio-common/tst-printf-format-vsn-uchar.c b/stdio-common/tst-printf-format-vsn-uchar.c new file mode 100644 index 0000000000..6d0f396481 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-uchar.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for unsigned char conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-uchar.c" diff --git a/stdio-common/tst-printf-format-vsn-uint.c b/stdio-common/tst-printf-format-vsn-uint.c new file mode 100644 index 0000000000..b637f7bdb1 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-uint.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for unsigned int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-uint.c" diff --git a/stdio-common/tst-printf-format-vsn-ullong.c b/stdio-common/tst-printf-format-vsn-ullong.c new file mode 100644 index 0000000000..d2442715f0 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-ullong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for unsigned long long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-ullong.c" diff --git a/stdio-common/tst-printf-format-vsn-ulong.c b/stdio-common/tst-printf-format-vsn-ulong.c new file mode 100644 index 0000000000..67417d1740 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-ulong.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for unsigned long int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-ulong.c" diff --git a/stdio-common/tst-printf-format-vsn-ushort.c b/stdio-common/tst-printf-format-vsn-ushort.c new file mode 100644 index 0000000000..396ea43ae7 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn-ushort.c @@ -0,0 +1,20 @@ +/* Test for formatted 'vsnprintf' output for unsigned short int conversions. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include "tst-printf-format-vsn.h" +#include "tst-printf-format-skeleton-ushort.c" diff --git a/stdio-common/tst-printf-format-vsn.h b/stdio-common/tst-printf-format-vsn.h new file mode 100644 index 0000000000..4f25f1af76 --- /dev/null +++ b/stdio-common/tst-printf-format-vsn.h @@ -0,0 +1,64 @@ +/* Test feature wrapper for formatted 'vsnprintf' output. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> + +#include <support/next_to_fault.h> + +#define SPRINTF_BUFFER_SIZE 65536 + +static struct support_next_to_fault ntf; + +#define PREPARE printf_under_test_init +static void +printf_under_test_init (int argc, char **argv) +{ + ntf = support_next_to_fault_allocate (SPRINTF_BUFFER_SIZE); +} + +static void __attribute__ ((destructor)) +printf_under_test_fini (void) +{ + support_next_to_fault_free (&ntf); +} + +static int +printf_under_test (const char *restrict fmt, ...) +{ + char *str = ntf.buffer; + va_list ap; + int result; + + va_start (ap, fmt); + result = vsnprintf (str, ntf.length, fmt, ap); + va_end (ap); + if (result < 0) + { + perror ("vsnprintf"); + goto out; + } + if (fwrite (str, sizeof (*str), result, stdout) != result) + { + perror ("fwrite"); + result = -1; + } +out: + return result; +} diff --git a/stdio-common/tst-printf-format.awk b/stdio-common/tst-printf-format.awk new file mode 100644 index 0000000000..8b4bc7b1e4 --- /dev/null +++ b/stdio-common/tst-printf-format.awk @@ -0,0 +1,127 @@ +# Testing of printf conversions. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +BEGIN { + FS = ":" +} + +/^prec:/ { + PREC = $2 + next +} + +/^val:/ { + val = $2 + # Prepend "+" for +Inf or +NaN value lacking a sign, because gawk + # interpretes them as strings rather than numeric values in the + # non-bignum mode unless a sign has been explicitly given. Keep + # original 'val' for reporting. + value = gensub(/^(INF|NAN|inf|nan)/, "+\\1", 1, val) + next +} + +/^%/ { + # Discard the trailing empty field, used to improve legibility of data. + input = $--NF + format = $1 + width = $2 + precision = "." $(NF - 1) + # Discard any negative precision, which is to be taken as if omitted. + sub(/\.-.*/, "", precision) + # Simplify handling and paste the precision and width specified as + # arguments to '*' directly into the format. + sub(/\.\*/, precision, format) + sub(/\*/, width, format) + # Discard length modifiers. They are only relevant to C data types. + sub(/([DHLjhltz]|wf?[1-9][0-9]*)/, "", format) + # Discard the '#' flag with the octal conversion if output starts with + # 0 in the absence of this flag. In that case no extra 0 is supposed + # to be produced, but gawk prepends it anyway. + if (format ~ /#.*o/) + { + tmpfmt = gensub(/#/, "", "g", format) + tmpout = sprintf(tmpfmt, value) + if (tmpout ~ /^ *0/) + format = tmpfmt + } + # Likewise with the hexadecimal conversion where zero value with the + # precision of zero is supposed to produce no characters, but gawk + # outputs 0 instead. + else if (format ~ /#.*[Xx]/) + { + tmpfmt = gensub(/#/, "", "g", format) + tmpout = sprintf(tmpfmt, value) + if (tmpout ~ /^ *$/) + format = tmpfmt + } + # AWK interpretes input opportunistically as a number, which interferes + # with how the 'c' conversion works: "a" input will result in "a" output + # however "0" input will result in "^@" output rather than "0". Force + # the value to be interpreted as a string then, by appending "". + output = sprintf(format, value "") + # Make up for various anomalies with the handling of +/-Inf and +/-NaN + # values and reprint the output produced using the string conversion, + # with the field width carried over and the relevant flags handled by + # hand. + if (format ~ /[EFGefg]/ && value ~ /(INF|NAN|inf|nan)/) + { + minus = format ~ /-/ ? "-" : "" + sign = value ~ /-/ ? "-" : format ~ /\+/ ? "+" : format ~ / / ? " " : "" + if (format ~ /^%[^\.1-9]*[1-9][0-9]*/) + width = gensub(/^%[^\.1-9]*([1-9][0-9]*).*$/, "\\1", 1, format) + else + width = "" + output = gensub(/[-+ ]/, "", "g", output) + output = sprintf("%" minus width "s", sign output) + } + # Produce "+" where the '+' flag has been used with a signed integer + # conversion for zero value, observing any field width in effect. + # In that case "+" is always supposed to be produced, but with the + # precision of zero gawk in the non-bignum mode produces any padding + # requested only. + else if (format ~ /\+.*[di]/ && value == 0) + { + output = gensub(/^( *) $/, format ~ /-/ ? "+\\1" : "\\1+", 1, output) + output = gensub(/^$/, "+", 1, output) + } + # Produce " " where the space flag has been used with a signed integer + # conversion for zero value. In that case at least one " " is + # supposed to be produced, but with the precision of zero gawk in the + # non-bignum mode produces nothing. + else if (format ~ / .*[di]/ && value == 0) + { + output = gensub(/^$/, " ", 1, output) + } + if (output != input) + { + printf "(\"%s\"%s%s, %s) => \"%s\", expected \"%s\"\n", \ + $1, (NF > 2 ? ", " $2 : ""), (NF > 3 ? ", " $3 : ""), val, \ + input, output > "/dev/stderr" + status = 1 + } + next +} + +{ + printf "unrecognized input: \"%s\"\n", $0 > "/dev/stderr" + status = 1 +} + +END { + exit status +} diff --git a/stdio-common/tst-printf-format.sh b/stdio-common/tst-printf-format.sh new file mode 100644 index 0000000000..466c4a5f4f --- /dev/null +++ b/stdio-common/tst-printf-format.sh @@ -0,0 +1,39 @@ +#!/bin/bash +# Formatted printf output test script dispatcher. +# Copyright (C) 2024 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# <https://www.gnu.org/licenses/>. + +set -e + +output=${1##*/}; shift + +tmp=${output#tst-printf-format-} +tmp=${tmp%.out} + +# We are given the name of the make target in $1. With the common prefix +# and suffix both removed we are left with the inner part, which encodes +# the function under test, the conversion type, and optionally the format +# specifier, all separated with hyphens, i.e. F-T-S or F-T. Extract them +# and call the script corresponding to the conversion type, passing the +# function under test and any format specifier as arguments. + +xprintf=${tmp%%-*}; tmp=${tmp#*-} +conv=${tmp%%-*}; tmp=${tmp#${conv}} +fmt=${tmp#*-} +script=tst-printf-format-$conv.sh + +exec ${BASH:-bash} $script $xprintf $fmt "$@" diff --git a/stdio-common/tst-scanf-nan.c b/stdio-common/tst-scanf-nan.c new file mode 100644 index 0000000000..7450b37c4e --- /dev/null +++ b/stdio-common/tst-scanf-nan.c @@ -0,0 +1,83 @@ +/* Test scanf formats for nan, nan(), nan(n-char-sequence) types. + Copyright The GNU Toolchain Authors. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdint.h> +#include <stdio.h> + +#include <support/check.h> + +#define CHECK_SCANF_RET(OK, STR, FMT, ...) \ + do \ + { \ + int ret = sscanf (STR, FMT, __VA_ARGS__); \ + TEST_VERIFY (ret == (OK)); \ + } \ + while (0) + +/* Valid nan types: + 1. nan + 2. nan() + 3. nan([a-zA-Z0-9_]+) + Any other nan format is invalid and should produce a conversion error. + The return value denotes the number of valid conversions. On conversion + error the rest of the input is discarded. */ +static int +do_test (void) +{ + int a; + float b; + double c; + long double d; + + /* All valid inputs. */ + CHECK_SCANF_RET (1, "nan", "%lf", &c); + CHECK_SCANF_RET (1, "nan()", "%lf", &c); + CHECK_SCANF_RET (1, "nan(12345)", "%lf", &c); + CHECK_SCANF_RET (2, "nan12", "%lf%d", &c, &a); + CHECK_SCANF_RET (2, "nan nan()", "%f%Lf", &b, &d); + CHECK_SCANF_RET (2, "nan nan(12345foo)", "%lf%Lf", &c, &d); + CHECK_SCANF_RET (3, "nan nan() 12.234", "%lf%Lf%f", &c, &d, &b); + CHECK_SCANF_RET (4, "nannan()nan(foo)1234", "%lf%f%Lf%d", &c, &b, &d, &a); + + /* Partially valid inputs. */ + CHECK_SCANF_RET (1, "nan( )", "%3lf", &c); + CHECK_SCANF_RET (1, "nan nan(", "%lf%f", &c, &b); + + /* Invalid inputs. */ + + /* Dangling parentheses. */ + CHECK_SCANF_RET (0, "nan(", "%lf", &c); + CHECK_SCANF_RET (0, "nan(123", "%lf", &c); + CHECK_SCANF_RET (0, "nan(12345", "%lf%d", &c, &a); + + /* Field width is not sufficient for valid conversion. */ + CHECK_SCANF_RET (0, "nan()", "%4Lf", &d); + CHECK_SCANF_RET (0, "nan(1", "%5lf", &c); + + /* Space is not a valid character. */ + CHECK_SCANF_RET (0, "nan( )", "%lf", &c); + CHECK_SCANF_RET (0, "nan( )12.34", "%Lf%f", &d, &b); + CHECK_SCANF_RET (0, "nan(12 foo)", "%f", &b); + + /* Period '.' is not a valid character. */ + CHECK_SCANF_RET (0, "nan(12.34) nan(FooBar)", "%lf%Lf", &c, &d); + + return 0; +} + +#include <support/test-driver.c> diff --git a/stdio-common/vfscanf-internal.c b/stdio-common/vfscanf-internal.c index 1b82deffa7..5f38f991cc 100644 --- a/stdio-common/vfscanf-internal.c +++ b/stdio-common/vfscanf-internal.c @@ -2028,7 +2028,51 @@ digits_extended_fail: if (width > 0) --width; char_buffer_add (&charbuf, c); - /* It is "nan". */ + /* It is at least "nan". Now we check for nan() and + nan(n-char-sequence). */ + if (width != 0 && inchar () != EOF) + { + if (c == L_('(')) + { + if (width > 0) + --width; + char_buffer_add (&charbuf, c); + /* A '(' was observed, check for a closing ')', there + may or may not be a n-char-sequence in between. We + have to check the longest prefix until there is a + conversion error or closing parenthesis. */ + do + { + if (__glibc_unlikely (width == 0 + || inchar () == EOF)) + { + /* Conversion error because we ran out of + characters. */ + conv_error (); + break; + } + if (!((c >= L_('0') && c <= L_('9')) + || (c >= L_('A') && c <= L_('Z')) + || (c >= L_('a') && c <= L_('z')) + || c == L_('_') || c == L_(')'))) + { + /* Invalid character was observed. Only valid + characters are [a-zA-Z0-9_] and ')'. */ + conv_error (); + break; + } + if (width > 0) + --width; + char_buffer_add (&charbuf, c); + } + while (c != L_(')')); + /* The loop only exits successfully when ')' is the + last character. */ + } + else + /* It is only 'nan'. */ + ungetc (c, s); + } goto scan_float; } else if (TOLOWER (c) == L_('i')) diff --git a/stdlib/abort.c b/stdlib/abort.c index e2b84baac4..f74ff3bb20 100644 --- a/stdlib/abort.c +++ b/stdlib/abort.c @@ -15,13 +15,11 @@ License along with the GNU C Library; if not, see <https://www.gnu.org/licenses/>. */ -#include <libc-lock.h> #include <signal.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> #include <internal-signals.h> +#include <libc-lock.h> +#include <pthreadP.h> +#include <unistd.h> /* Try to get a machine dependent instruction which will make the program crash. This is used in case everything else fails. */ @@ -35,89 +33,63 @@ struct abort_msg_s *__abort_msg; libc_hidden_def (__abort_msg) -/* We must avoid to run in circles. Therefore we remember how far we - already got. */ -static int stage; +/* The lock is used to prevent multiple thread to change the SIGABRT + to SIG_IGN while abort tries to change to SIG_DFL, and to avoid + a new process to see a wrong disposition if there is a SIGABRT + handler installed. */ +__libc_rwlock_define_initialized (static, lock); -/* We should be prepared for multiple threads trying to run abort. */ -__libc_lock_define_initialized_recursive (static, lock); +void +__abort_fork_reset_child (void) +{ + __libc_rwlock_init (lock); +} +void +__abort_lock_rdlock (internal_sigset_t *set) +{ + internal_signal_block_all (set); + __libc_rwlock_rdlock (lock); +} + +void +__abort_lock_wrlock (internal_sigset_t *set) +{ + internal_signal_block_all (set); + __libc_rwlock_wrlock (lock); +} -/* Cause an abnormal program termination with core-dump. */ void +__abort_lock_unlock (const internal_sigset_t *set) +{ + __libc_rwlock_unlock (lock); + internal_signal_restore_set (set); +} + +/* Cause an abnormal program termination with core-dump. */ +_Noreturn void abort (void) { - struct sigaction act; - - /* First acquire the lock. */ - __libc_lock_lock_recursive (lock); - - /* Now it's for sure we are alone. But recursive calls are possible. */ - - /* Unblock SIGABRT. */ - if (stage == 0) - { - ++stage; - internal_sigset_t sigs; - internal_sigemptyset (&sigs); - internal_sigaddset (&sigs, SIGABRT); - internal_sigprocmask (SIG_UNBLOCK, &sigs, NULL); - } - - /* Send signal which possibly calls a user handler. */ - if (stage == 1) - { - /* This stage is special: we must allow repeated calls of - `abort' when a user defined handler for SIGABRT is installed. - This is risky since the `raise' implementation might also - fail but I don't see another possibility. */ - int save_stage = stage; - - stage = 0; - __libc_lock_unlock_recursive (lock); - - raise (SIGABRT); - - __libc_lock_lock_recursive (lock); - stage = save_stage + 1; - } - - /* There was a handler installed. Now remove it. */ - if (stage == 2) - { - ++stage; - memset (&act, '\0', sizeof (struct sigaction)); - act.sa_handler = SIG_DFL; - __sigfillset (&act.sa_mask); - act.sa_flags = 0; - __sigaction (SIGABRT, &act, NULL); - } - - /* Try again. */ - if (stage == 3) - { - ++stage; - raise (SIGABRT); - } - - /* Now try to abort using the system specific command. */ - if (stage == 4) - { - ++stage; - ABORT_INSTRUCTION; - } - - /* If we can't signal ourselves and the abort instruction failed, exit. */ - if (stage == 5) - { - ++stage; - _exit (127); - } - - /* If even this fails try to use the provided instruction to crash - or otherwise make sure we never return. */ - while (1) - /* Try for ever and ever. */ - ABORT_INSTRUCTION; + raise (SIGABRT); + + /* There is a SIGABRT handle installed and it returned, or SIGABRT was + blocked or ignored. In this case use a AS-safe lock to prevent sigaction + to change the signal disposition again, set the handle to default + disposition, and re-raise the signal. Even if POSIX state this step is + optional, this a QoI by forcing the process termination through the + signal handler. */ + __abort_lock_wrlock (NULL); + + struct sigaction act = {.sa_handler = SIG_DFL, .sa_flags = 0 }; + __sigfillset (&act.sa_mask); + __libc_sigaction (SIGABRT, &act, NULL); + __pthread_raise_internal (SIGABRT); + internal_signal_unblock_signal (SIGABRT); + + /* This code should be unreachable, try the arch-specific code and the + syscall fallback. */ + ABORT_INSTRUCTION; + + _exit (127); } libc_hidden_def (abort) diff --git a/support/Makefile b/support/Makefile index 84e2419775..099f5ebb9c 100644 --- a/support/Makefile +++ b/support/Makefile @@ -128,6 +128,7 @@ libsupport-routines = \ xcopy_file_range \ xdlfcn \ xdlmopen \ + xdup \ xdup2 \ xfchmod \ xfclose \ diff --git a/support/process_state.h b/support/process_state.h index 1cf902e91b..9541d8c343 100644 --- a/support/process_state.h +++ b/support/process_state.h @@ -31,13 +31,16 @@ enum support_process_state support_process_state_dead = 0x20, /* X (dead). */ support_process_state_zombie = 0x40, /* Z (zombie). */ support_process_state_parked = 0x80, /* P (parked). */ + support_process_state_invalid = 0x100 /* Invalid state. */ }; /* Wait for process PID to reach state STATE. It can be a combination of multiple possible states ('process_state_running | process_state_sleeping') where the function return when any of these state are observed. For an invalid state not represented by SUPPORT_PROCESS_STATE, it fallbacks - to a 2 second sleep. */ -void support_process_state_wait (pid_t pid, enum support_process_state state); + to a 2 second sleep. + Return the found process state. */ +enum support_process_state +support_process_state_wait (pid_t pid, enum support_process_state state); #endif diff --git a/support/support_process_state.c b/support/support_process_state.c index 062335234f..ae8e0a531c 100644 --- a/support/support_process_state.c +++ b/support/support_process_state.c @@ -27,7 +27,7 @@ #include <support/xstdio.h> #include <support/check.h> -void +enum support_process_state support_process_state_wait (pid_t pid, enum support_process_state state) { #ifdef __linux__ @@ -75,7 +75,7 @@ support_process_state_wait (pid_t pid, enum support_process_state state) { free (line); xfclose (fstatus); - return; + return process_states[i].s; } rewind (fstatus); @@ -90,4 +90,6 @@ support_process_state_wait (pid_t pid, enum support_process_state state) /* Fallback to nanosleep if an invalid state is found. */ #endif nanosleep (&(struct timespec) { 1, 0 }, NULL); + + return support_process_state_invalid; } diff --git a/support/tst-support-process_state.c b/support/tst-support-process_state.c index d73269320f..4a88eae3a7 100644 --- a/support/tst-support-process_state.c +++ b/support/tst-support-process_state.c @@ -68,28 +68,39 @@ do_test (void) if (test_verbose) printf ("info: waiting pid %d, state_stopped/state_tracing_stop\n", (int) pid); - support_process_state_wait (pid, stop_state); + { + enum support_process_state state = + support_process_state_wait (pid, stop_state); + TEST_VERIFY (state == support_process_state_stopped + || state == support_process_state_tracing_stop); + } if (kill (pid, SIGCONT) != 0) FAIL_RET ("kill (%d, SIGCONT): %m\n", pid); if (test_verbose) printf ("info: waiting pid %d, state_sleeping\n", (int) pid); - support_process_state_wait (pid, support_process_state_sleeping); + TEST_COMPARE (support_process_state_wait (pid, + support_process_state_sleeping), + support_process_state_sleeping); if (kill (pid, SIGUSR1) != 0) FAIL_RET ("kill (%d, SIGUSR1): %m\n", pid); if (test_verbose) printf ("info: waiting pid %d, state_running\n", (int) pid); - support_process_state_wait (pid, support_process_state_running); + TEST_COMPARE (support_process_state_wait (pid, + support_process_state_running), + support_process_state_running); if (kill (pid, SIGKILL) != 0) FAIL_RET ("kill (%d, SIGKILL): %m\n", pid); if (test_verbose) printf ("info: waiting pid %d, state_zombie\n", (int) pid); - support_process_state_wait (pid, support_process_state_zombie); + TEST_COMPARE (support_process_state_wait (pid, + support_process_state_zombie), + support_process_state_zombie);; siginfo_t info; int r = waitid (P_PID, pid, &info, WEXITED); diff --git a/support/xdup.c b/support/xdup.c new file mode 100644 index 0000000000..1eab317354 --- /dev/null +++ b/support/xdup.c @@ -0,0 +1,30 @@ +/* dup with error checking. + Copyright The GNU Toolchain Authors. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <support/xunistd.h> +#include <support/check.h> + +int +xdup (int from) +{ + int ret = dup (from); + if (ret < 0) + FAIL_EXIT1 ("dup (%d): %m", from); + + return ret; +} diff --git a/support/xunistd.h b/support/xunistd.h index 204951bce7..0c6d837ac0 100644 --- a/support/xunistd.h +++ b/support/xunistd.h @@ -35,6 +35,7 @@ pid_t xfork (void); pid_t xwaitpid (pid_t, int *status, int flags); void xpipe (int[2]); void xdup2 (int, int); +int xdup (int); int xopen (const char *path, int flags, mode_t); void support_check_stat_fd (const char *name, int fd, int result); void support_check_stat_path (const char *name, const char *path, int result); diff --git a/sysdeps/aarch64/fpu/Makefile b/sysdeps/aarch64/fpu/Makefile index 234a6c457c..be8541f649 100644 --- a/sysdeps/aarch64/fpu/Makefile +++ b/sysdeps/aarch64/fpu/Makefile @@ -41,8 +41,6 @@ libmvec-support = $(addsuffix f_advsimd,$(float-advsimd-funcs)) \ v_log10_data \ erf_data \ erff_data \ - sv_erf_data \ - sv_erff_data \ v_exp_tail_data \ erfc_data \ erfcf_data \ diff --git a/sysdeps/aarch64/fpu/erf_advsimd.c b/sysdeps/aarch64/fpu/erf_advsimd.c index 19cbb7d0f4..a48092e838 100644 --- a/sysdeps/aarch64/fpu/erf_advsimd.c +++ b/sysdeps/aarch64/fpu/erf_advsimd.c @@ -22,19 +22,21 @@ static const struct data { float64x2_t third; - float64x2_t tenth, two_over_five, two_over_fifteen; - float64x2_t two_over_nine, two_over_fortyfive; + float64x2_t tenth, two_over_five, two_over_nine; + double two_over_fifteen, two_over_fortyfive; float64x2_t max, shift; + uint64x2_t max_idx; #if WANT_SIMD_EXCEPT float64x2_t tiny_bound, huge_bound, scale_minus_one; #endif } data = { + .max_idx = V2 (768), .third = V2 (0x1.5555555555556p-2), /* used to compute 2/3 and 1/6 too. */ - .two_over_fifteen = V2 (0x1.1111111111111p-3), + .two_over_fifteen = 0x1.1111111111111p-3, .tenth = V2 (-0x1.999999999999ap-4), .two_over_five = V2 (-0x1.999999999999ap-2), .two_over_nine = V2 (-0x1.c71c71c71c71cp-3), - .two_over_fortyfive = V2 (0x1.6c16c16c16c17p-5), + .two_over_fortyfive = 0x1.6c16c16c16c17p-5, .max = V2 (5.9921875), /* 6 - 1/128. */ .shift = V2 (0x1p45), #if WANT_SIMD_EXCEPT @@ -56,8 +58,8 @@ static inline struct entry lookup (uint64x2_t i) { struct entry e; - float64x2_t e1 = vld1q_f64 (&__erf_data.tab[vgetq_lane_u64 (i, 0)].erf), - e2 = vld1q_f64 (&__erf_data.tab[vgetq_lane_u64 (i, 1)].erf); + float64x2_t e1 = vld1q_f64 (&__v_erf_data.tab[vgetq_lane_u64 (i, 0)].erf), + e2 = vld1q_f64 (&__v_erf_data.tab[vgetq_lane_u64 (i, 1)].erf); e.erf = vuzp1q_f64 (e1, e2); e.scale = vuzp2q_f64 (e1, e2); return e; @@ -87,8 +89,8 @@ float64x2_t VPCS_ATTR V_NAME_D1 (erf) (float64x2_t x) float64x2_t a = vabsq_f64 (x); /* Reciprocal conditions that do not catch NaNs so they can be used in BSLs to return expected results. */ - uint64x2_t a_le_max = vcleq_f64 (a, dat->max); - uint64x2_t a_gt_max = vcgtq_f64 (a, dat->max); + uint64x2_t a_le_max = vcaleq_f64 (x, dat->max); + uint64x2_t a_gt_max = vcagtq_f64 (x, dat->max); #if WANT_SIMD_EXCEPT /* |x| huge or tiny. */ @@ -115,7 +117,7 @@ float64x2_t VPCS_ATTR V_NAME_D1 (erf) (float64x2_t x) segfault. */ uint64x2_t i = vsubq_u64 (vreinterpretq_u64_f64 (z), vreinterpretq_u64_f64 (shift)); - i = vbslq_u64 (a_le_max, i, v_u64 (768)); + i = vbslq_u64 (a_le_max, i, dat->max_idx); struct entry e = lookup (i); float64x2_t r = vsubq_f64 (z, shift); @@ -125,14 +127,19 @@ float64x2_t VPCS_ATTR V_NAME_D1 (erf) (float64x2_t x) float64x2_t d2 = vmulq_f64 (d, d); float64x2_t r2 = vmulq_f64 (r, r); + float64x2_t two_over_fifteen_and_fortyfive + = vld1q_f64 (&dat->two_over_fifteen); + /* poly (d, r) = 1 + p1(r) * d + p2(r) * d^2 + ... + p5(r) * d^5. */ float64x2_t p1 = r; float64x2_t p2 = vfmsq_f64 (dat->third, r2, vaddq_f64 (dat->third, dat->third)); float64x2_t p3 = vmulq_f64 (r, vfmaq_f64 (v_f64 (-0.5), r2, dat->third)); - float64x2_t p4 = vfmaq_f64 (dat->two_over_five, r2, dat->two_over_fifteen); + float64x2_t p4 = vfmaq_laneq_f64 (dat->two_over_five, r2, + two_over_fifteen_and_fortyfive, 0); p4 = vfmsq_f64 (dat->tenth, r2, p4); - float64x2_t p5 = vfmaq_f64 (dat->two_over_nine, r2, dat->two_over_fortyfive); + float64x2_t p5 = vfmaq_laneq_f64 (dat->two_over_nine, r2, + two_over_fifteen_and_fortyfive, 1); p5 = vmulq_f64 (r, vfmaq_f64 (vmulq_f64 (v_f64 (0.5), dat->third), r2, p5)); float64x2_t p34 = vfmaq_f64 (p3, d, p4); diff --git a/sysdeps/aarch64/fpu/erf_data.c b/sysdeps/aarch64/fpu/erf_data.c index 6d2dcd235c..ea01fad7ca 100644 --- a/sysdeps/aarch64/fpu/erf_data.c +++ b/sysdeps/aarch64/fpu/erf_data.c @@ -19,14 +19,14 @@ #include "vecmath_config.h" -/* Lookup table used in erf. +/* Lookup table used in vector erf. For each possible rounded input r (multiples of 1/128), between r = 0.0 and r = 6.0 (769 values): - - the first entry __erff_data.tab.erf contains the values of erf(r), - - the second entry __erff_data.tab.scale contains the values of + - the first entry __v_erff_data.tab.erf contains the values of erf(r), + - the second entry __v_erff_data.tab.scale contains the values of 2/sqrt(pi)*exp(-r^2). Note that indices 0 and 1 are never hit by the algorithm, since lookup is performed only for x >= 1/64-1/512. */ -const struct erf_data __erf_data = { +const struct v_erf_data __v_erf_data = { .tab = { { 0x0.0000000000000p+0, 0x1.20dd750429b6dp+0 }, { 0x1.20dbf3deb1340p-7, 0x1.20d8f1975c85dp+0 }, { 0x1.20d77083f17a0p-6, 0x1.20cb67bd452c7p+0 }, diff --git a/sysdeps/aarch64/fpu/erf_sve.c b/sysdeps/aarch64/fpu/erf_sve.c index 7d51417406..671d55a02b 100644 --- a/sysdeps/aarch64/fpu/erf_sve.c +++ b/sysdeps/aarch64/fpu/erf_sve.c @@ -67,14 +67,16 @@ svfloat64_t SV_NAME_D1 (erf) (svfloat64_t x, const svbool_t pg) svfloat64_t a = svabs_x (pg, x); svfloat64_t shift = sv_f64 (dat->shift); svfloat64_t z = svadd_x (pg, a, shift); - svuint64_t i - = svsub_x (pg, svreinterpret_u64 (z), svreinterpret_u64 (shift)); + svuint64_t i = svand_x (pg, svreinterpret_u64 (z), 0xfff); + i = svadd_x (pg, i, i); /* Lookup without shortcut for small values but with predicate to avoid segfault for large values and NaNs. */ svfloat64_t r = svsub_x (pg, z, shift); - svfloat64_t erfr = svld1_gather_index (a_lt_max, __sv_erf_data.erf, i); - svfloat64_t scale = svld1_gather_index (a_lt_max, __sv_erf_data.scale, i); + svfloat64_t erfr + = svld1_gather_index (a_lt_max, &__v_erf_data.tab[0].erf, i); + svfloat64_t scale + = svld1_gather_index (a_lt_max, &__v_erf_data.tab[0].scale, i); /* erf(x) ~ erf(r) + scale * d * poly (r, d). */ svfloat64_t d = svsub_x (pg, a, r); diff --git a/sysdeps/aarch64/fpu/erfc_advsimd.c b/sysdeps/aarch64/fpu/erfc_advsimd.c index f1b3bfe830..d05eac61a2 100644 --- a/sysdeps/aarch64/fpu/erfc_advsimd.c +++ b/sysdeps/aarch64/fpu/erfc_advsimd.c @@ -24,8 +24,8 @@ static const struct data { uint64x2_t offset, table_scale; float64x2_t max, shift; - float64x2_t p20, p40, p41, p42; - float64x2_t p51, p52; + float64x2_t p20, p40, p41, p51; + double p42, p52; double qr5[2], qr6[2], qr7[2], qr8[2], qr9[2]; #if WANT_SIMD_EXCEPT float64x2_t uflow_bound; @@ -41,9 +41,9 @@ static const struct data .p20 = V2 (0x1.5555555555555p-2), /* 1/3, used to compute 2/3 and 1/6. */ .p40 = V2 (-0x1.999999999999ap-4), /* 1/10. */ .p41 = V2 (-0x1.999999999999ap-2), /* 2/5. */ - .p42 = V2 (0x1.1111111111111p-3), /* 2/15. */ + .p42 = 0x1.1111111111111p-3, /* 2/15. */ .p51 = V2 (-0x1.c71c71c71c71cp-3), /* 2/9. */ - .p52 = V2 (0x1.6c16c16c16c17p-5), /* 2/45. */ + .p52 = 0x1.6c16c16c16c17p-5, /* 2/45. */ /* Qi = (i+1) / i, Ri = -2 * i / ((i+1)*(i+2)), for i = 5, ..., 9. */ .qr5 = { 0x1.3333333333333p0, -0x1.e79e79e79e79ep-3 }, .qr6 = { 0x1.2aaaaaaaaaaabp0, -0x1.b6db6db6db6dbp-3 }, @@ -69,9 +69,9 @@ lookup (uint64x2_t i) { struct entry e; float64x2_t e1 - = vld1q_f64 (&__erfc_data.tab[vgetq_lane_u64 (i, 0) - Off].erfc); + = vld1q_f64 (&__v_erfc_data.tab[vgetq_lane_u64 (i, 0) - Off].erfc); float64x2_t e2 - = vld1q_f64 (&__erfc_data.tab[vgetq_lane_u64 (i, 1) - Off].erfc); + = vld1q_f64 (&__v_erfc_data.tab[vgetq_lane_u64 (i, 1) - Off].erfc); e.erfc = vuzp1q_f64 (e1, e2); e.scale = vuzp2q_f64 (e1, e2); return e; @@ -157,9 +157,10 @@ float64x2_t V_NAME_D1 (erfc) (float64x2_t x) float64x2_t p1 = r; float64x2_t p2 = vfmsq_f64 (dat->p20, r2, vaddq_f64 (dat->p20, dat->p20)); float64x2_t p3 = vmulq_f64 (r, vfmaq_f64 (v_f64 (-0.5), r2, dat->p20)); - float64x2_t p4 = vfmaq_f64 (dat->p41, r2, dat->p42); + float64x2_t p42_p52 = vld1q_f64 (&dat->p42); + float64x2_t p4 = vfmaq_laneq_f64 (dat->p41, r2, p42_p52, 0); p4 = vfmsq_f64 (dat->p40, r2, p4); - float64x2_t p5 = vfmaq_f64 (dat->p51, r2, dat->p52); + float64x2_t p5 = vfmaq_laneq_f64 (dat->p51, r2, p42_p52, 1); p5 = vmulq_f64 (r, vfmaq_f64 (vmulq_f64 (v_f64 (0.5), dat->p20), r2, p5)); /* Compute p_i using recurrence relation: p_{i+2} = (p_i + r * Q_{i+1} * p_{i+1}) * R_{i+1}. */ diff --git a/sysdeps/aarch64/fpu/erfc_data.c b/sysdeps/aarch64/fpu/erfc_data.c index 76a94e4681..8dc6a8c42c 100644 --- a/sysdeps/aarch64/fpu/erfc_data.c +++ b/sysdeps/aarch64/fpu/erfc_data.c @@ -19,14 +19,14 @@ #include "vecmath_config.h" -/* Lookup table used in erfc. +/* Lookup table used in vector erfc. For each possible rounded input r (multiples of 1/128), between r = 0.0 and r = ~27.0 (3488 values): - - the first entry __erfc_data.tab.erfc contains the values of erfc(r), - - the second entry __erfc_data.tab.scale contains the values of + - the first entry __v_erfc_data.tab.erfc contains the values of erfc(r), + - the second entry __v_erfc_data.tab.scale contains the values of 2/sqrt(pi)*exp(-r^2). Both values may go into subnormal range, therefore they are scaled by a large enough value 2^128 (fits in 8bit). */ -const struct erfc_data __erfc_data = { +const struct v_erfc_data __v_erfc_data = { .tab = { { 0x1p128, 0x1.20dd750429b6dp128 }, { 0x1.fb7c9030853b3p127, 0x1.20d8f1975c85dp128 }, { 0x1.f6f9447be0743p127, 0x1.20cb67bd452c7p128 }, diff --git a/sysdeps/aarch64/fpu/erfc_sve.c b/sysdeps/aarch64/fpu/erfc_sve.c index c17d3e4484..703926ee41 100644 --- a/sysdeps/aarch64/fpu/erfc_sve.c +++ b/sysdeps/aarch64/fpu/erfc_sve.c @@ -104,7 +104,7 @@ svfloat64_t SV_NAME_D1 (erfc) (svfloat64_t x, const svbool_t pg) /* Lookup erfc(r) and 2/sqrt(pi)*exp(-r^2) in tables. */ i = svadd_x (pg, i, i); - const float64_t *p = &__erfc_data.tab[0].erfc - 2 * dat->off_arr; + const float64_t *p = &__v_erfc_data.tab[0].erfc - 2 * dat->off_arr; svfloat64_t erfcr = svld1_gather_index (pg, p, i); svfloat64_t scale = svld1_gather_index (pg, p + 1, i); diff --git a/sysdeps/aarch64/fpu/erfcf_advsimd.c b/sysdeps/aarch64/fpu/erfcf_advsimd.c index ca5bc3ab33..59b0b0d64b 100644 --- a/sysdeps/aarch64/fpu/erfcf_advsimd.c +++ b/sysdeps/aarch64/fpu/erfcf_advsimd.c @@ -62,13 +62,13 @@ lookup (uint32x4_t i) { struct entry e; float32x2_t t0 - = vld1_f32 (&__erfcf_data.tab[vgetq_lane_u32 (i, 0) - Off].erfc); + = vld1_f32 (&__v_erfcf_data.tab[vgetq_lane_u32 (i, 0) - Off].erfc); float32x2_t t1 - = vld1_f32 (&__erfcf_data.tab[vgetq_lane_u32 (i, 1) - Off].erfc); + = vld1_f32 (&__v_erfcf_data.tab[vgetq_lane_u32 (i, 1) - Off].erfc); float32x2_t t2 - = vld1_f32 (&__erfcf_data.tab[vgetq_lane_u32 (i, 2) - Off].erfc); + = vld1_f32 (&__v_erfcf_data.tab[vgetq_lane_u32 (i, 2) - Off].erfc); float32x2_t t3 - = vld1_f32 (&__erfcf_data.tab[vgetq_lane_u32 (i, 3) - Off].erfc); + = vld1_f32 (&__v_erfcf_data.tab[vgetq_lane_u32 (i, 3) - Off].erfc); float32x4_t e1 = vcombine_f32 (t0, t1); float32x4_t e2 = vcombine_f32 (t2, t3); e.erfc = vuzp1q_f32 (e1, e2); diff --git a/sysdeps/aarch64/fpu/erfcf_data.c b/sysdeps/aarch64/fpu/erfcf_data.c index 77fb889a78..d45087bbb9 100644 --- a/sysdeps/aarch64/fpu/erfcf_data.c +++ b/sysdeps/aarch64/fpu/erfcf_data.c @@ -19,14 +19,14 @@ #include "vecmath_config.h" -/* Lookup table used in erfcf. +/* Lookup table used in vector erfcf. For each possible rounded input r (multiples of 1/64), between r = 0.0 and r = 10.0625 (645 values): - - the first entry __erfcf_data.tab.erfc contains the values of erfc(r), - - the second entry __erfcf_data.tab.scale contains the values of + - the first entry __v_erfcf_data.tab.erfc contains the values of erfc(r), + - the second entry __v_erfcf_data.tab.scale contains the values of 2/sqrt(pi)*exp(-r^2). Both values may go into subnormal range, therefore they are scaled by a large enough value 2^47 (fits in 8 bits). */ -const struct erfcf_data __erfcf_data = { +const struct v_erfcf_data __v_erfcf_data = { .tab = { { 0x1p47, 0x1.20dd76p47 }, { 0x1.f6f944p46, 0x1.20cb68p47 }, { 0x1.edf3aap46, 0x1.209546p47 }, diff --git a/sysdeps/aarch64/fpu/erfcf_sve.c b/sysdeps/aarch64/fpu/erfcf_sve.c index 48d1677eb4..ecacb933ac 100644 --- a/sysdeps/aarch64/fpu/erfcf_sve.c +++ b/sysdeps/aarch64/fpu/erfcf_sve.c @@ -77,7 +77,7 @@ svfloat32_t SV_NAME_F1 (erfc) (svfloat32_t x, const svbool_t pg) /* Lookup erfc(r) and 2/sqrt(pi)*exp(-r^2) in tables. */ i = svmul_x (pg, i, 2); - const float32_t *p = &__erfcf_data.tab[0].erfc - 2 * dat->off_arr; + const float32_t *p = &__v_erfcf_data.tab[0].erfc - 2 * dat->off_arr; svfloat32_t erfcr = svld1_gather_index (pg, p, i); svfloat32_t scale = svld1_gather_index (pg, p + 1, i); diff --git a/sysdeps/aarch64/fpu/erff_advsimd.c b/sysdeps/aarch64/fpu/erff_advsimd.c index f2fe6ff236..db39e789b6 100644 --- a/sysdeps/aarch64/fpu/erff_advsimd.c +++ b/sysdeps/aarch64/fpu/erff_advsimd.c @@ -47,10 +47,10 @@ static inline struct entry lookup (uint32x4_t i) { struct entry e; - float32x2_t t0 = vld1_f32 (&__erff_data.tab[vgetq_lane_u32 (i, 0)].erf); - float32x2_t t1 = vld1_f32 (&__erff_data.tab[vgetq_lane_u32 (i, 1)].erf); - float32x2_t t2 = vld1_f32 (&__erff_data.tab[vgetq_lane_u32 (i, 2)].erf); - float32x2_t t3 = vld1_f32 (&__erff_data.tab[vgetq_lane_u32 (i, 3)].erf); + float32x2_t t0 = vld1_f32 (&__v_erff_data.tab[vgetq_lane_u32 (i, 0)].erf); + float32x2_t t1 = vld1_f32 (&__v_erff_data.tab[vgetq_lane_u32 (i, 1)].erf); + float32x2_t t2 = vld1_f32 (&__v_erff_data.tab[vgetq_lane_u32 (i, 2)].erf); + float32x2_t t3 = vld1_f32 (&__v_erff_data.tab[vgetq_lane_u32 (i, 3)].erf); float32x4_t e1 = vcombine_f32 (t0, t1); float32x4_t e2 = vcombine_f32 (t2, t3); e.erf = vuzp1q_f32 (e1, e2); diff --git a/sysdeps/aarch64/fpu/erff_data.c b/sysdeps/aarch64/fpu/erff_data.c index 9a32940915..da38aed205 100644 --- a/sysdeps/aarch64/fpu/erff_data.c +++ b/sysdeps/aarch64/fpu/erff_data.c @@ -19,14 +19,14 @@ #include "vecmath_config.h" -/* Lookup table used in erff. +/* Lookup table used in vector erff. For each possible rounded input r (multiples of 1/128), between r = 0.0 and r = 4.0 (513 values): - - the first entry __erff_data.tab.erf contains the values of erf(r), - - the second entry __erff_data.tab.scale contains the values of + - the first entry __v_erff_data.tab.erf contains the values of erf(r), + - the second entry __v_erff_data.tab.scale contains the values of 2/sqrt(pi)*exp(-r^2). Note that indices 0 and 1 are never hit by the algorithm, since lookup is performed only for x >= 1/64-1/512. */ -const struct erff_data __erff_data = { +const struct v_erff_data __v_erff_data = { .tab = { { 0x0.000000p+0, 0x1.20dd76p+0 }, { 0x1.20dbf4p-7, 0x1.20d8f2p+0 }, { 0x1.20d770p-6, 0x1.20cb68p+0 }, diff --git a/sysdeps/aarch64/fpu/erff_sve.c b/sysdeps/aarch64/fpu/erff_sve.c index 38f00db9be..0e382eb09a 100644 --- a/sysdeps/aarch64/fpu/erff_sve.c +++ b/sysdeps/aarch64/fpu/erff_sve.c @@ -62,18 +62,17 @@ svfloat32_t SV_NAME_F1 (erf) (svfloat32_t x, const svbool_t pg) svfloat32_t shift = sv_f32 (dat->shift); svfloat32_t z = svadd_x (pg, a, shift); - svuint32_t i - = svsub_x (pg, svreinterpret_u32 (z), svreinterpret_u32 (shift)); - - /* Saturate lookup index. */ - i = svsel (a_ge_max, sv_u32 (512), i); + svuint32_t i = svand_x (pg, svreinterpret_u32 (z), 0xfff); + i = svadd_x (pg, i, i); /* r and erf(r) set to 0 for |x| below min. */ svfloat32_t r = svsub_z (a_gt_min, z, shift); - svfloat32_t erfr = svld1_gather_index (a_gt_min, __sv_erff_data.erf, i); + svfloat32_t erfr + = svld1_gather_index (a_gt_min, &__v_erff_data.tab[0].erf, i); /* scale set to 2/sqrt(pi) for |x| below min. */ - svfloat32_t scale = svld1_gather_index (a_gt_min, __sv_erff_data.scale, i); + svfloat32_t scale + = svld1_gather_index (a_gt_min, &__v_erff_data.tab[0].scale, i); scale = svsel (a_gt_min, scale, sv_f32 (dat->scale)); /* erf(x) ~ erf(r) + scale * d * (1 - r * d + 1/3 * d^2). */ diff --git a/sysdeps/aarch64/fpu/sv_erf_data.c b/sysdeps/aarch64/fpu/sv_erf_data.c deleted file mode 100644 index a53878f893..0000000000 --- a/sysdeps/aarch64/fpu/sv_erf_data.c +++ /dev/null @@ -1,1570 +0,0 @@ -/* Table for SVE erf approximation - - Copyright (C) 2024 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#include "vecmath_config.h" - -/* Lookup table used in vector erf. - For each possible rounded input r (multiples of 1/128), between - r = 0.0 and r = 6.0 (769 values): - - the first entry __erf_data.tab.erf contains the values of erf(r), - - the second entry __erf_data.tab.scale contains the values of - 2/sqrt(pi)*exp(-r^2). Note that indices 0 and 1 are never hit by the - algorithm, since lookup is performed only for x >= 1/64-1/512. */ -const struct sv_erf_data __sv_erf_data = { - .erf = { 0x0.0000000000000p+0, - 0x1.20dbf3deb1340p-7, - 0x1.20d77083f17a0p-6, - 0x1.b137e0cf584dcp-6, - 0x1.20c5645dd2538p-5, - 0x1.68e5d3bbc9526p-5, - 0x1.b0fafef135745p-5, - 0x1.f902a77bd3821p-5, - 0x1.207d480e90658p-4, - 0x1.44703e87e8593p-4, - 0x1.68591a1e83b5dp-4, - 0x1.8c36beb8a8d23p-4, - 0x1.b0081148a873ap-4, - 0x1.d3cbf7e70a4b3p-4, - 0x1.f78159ec8bb50p-4, - 0x1.0d939005f65e5p-3, - 0x1.1f5e1a35c3b89p-3, - 0x1.311fc15f56d14p-3, - 0x1.42d7fc2f64959p-3, - 0x1.548642321d7c6p-3, - 0x1.662a0bdf7a89fp-3, - 0x1.77c2d2a765f9ep-3, - 0x1.895010fdbdbfdp-3, - 0x1.9ad142662e14dp-3, - 0x1.ac45e37fe2526p-3, - 0x1.bdad72110a648p-3, - 0x1.cf076d1233237p-3, - 0x1.e05354b96ff36p-3, - 0x1.f190aa85540e2p-3, - 0x1.015f78a3dcf3dp-2, - 0x1.09eed6982b948p-2, - 0x1.127631eb8de32p-2, - 0x1.1af54e232d609p-2, - 0x1.236bef825d9a2p-2, - 0x1.2bd9db0f7827fp-2, - 0x1.343ed6989b7d9p-2, - 0x1.3c9aa8b84bedap-2, - 0x1.44ed18d9f6462p-2, - 0x1.4d35ef3e5372ep-2, - 0x1.5574f4ffac98ep-2, - 0x1.5da9f415ff23fp-2, - 0x1.65d4b75b00471p-2, - 0x1.6df50a8dff772p-2, - 0x1.760aba57a76bfp-2, - 0x1.7e15944d9d3e4p-2, - 0x1.861566f5fd3c0p-2, - 0x1.8e0a01cab516bp-2, - 0x1.95f3353cbb146p-2, - 0x1.9dd0d2b721f39p-2, - 0x1.a5a2aca209394p-2, - 0x1.ad68966569a87p-2, - 0x1.b522646bbda68p-2, - 0x1.bccfec24855b8p-2, - 0x1.c4710406a65fcp-2, - 0x1.cc058392a6d2dp-2, - 0x1.d38d4354c3bd0p-2, - 0x1.db081ce6e2a48p-2, - 0x1.e275eaf25e458p-2, - 0x1.e9d68931ae650p-2, - 0x1.f129d471eabb1p-2, - 0x1.f86faa9428f9dp-2, - 0x1.ffa7ea8eb5fd0p-2, - 0x1.03693a371519cp-1, - 0x1.06f794ab2cae7p-1, - 0x1.0a7ef5c18edd2p-1, - 0x1.0dff4f247f6c6p-1, - 0x1.1178930ada115p-1, - 0x1.14eab43841b55p-1, - 0x1.1855a5fd3dd50p-1, - 0x1.1bb95c3746199p-1, - 0x1.1f15cb50bc4dep-1, - 0x1.226ae840d4d70p-1, - 0x1.25b8a88b6dd7fp-1, - 0x1.28ff0240d52cdp-1, - 0x1.2c3debfd7d6c1p-1, - 0x1.2f755ce9a21f4p-1, - 0x1.32a54cb8db67bp-1, - 0x1.35cdb3a9a144dp-1, - 0x1.38ee8a84beb71p-1, - 0x1.3c07ca9cb4f9ep-1, - 0x1.3f196dcd0f135p-1, - 0x1.42236e79a5fa6p-1, - 0x1.4525c78dd5966p-1, - 0x1.4820747ba2dc2p-1, - 0x1.4b13713ad3513p-1, - 0x1.4dfeba47f63ccp-1, - 0x1.50e24ca35fd2cp-1, - 0x1.53be25d016a4fp-1, - 0x1.569243d2b3a9bp-1, - 0x1.595ea53035283p-1, - 0x1.5c2348ecc4dc3p-1, - 0x1.5ee02e8a71a53p-1, - 0x1.61955607dd15dp-1, - 0x1.6442bfdedd397p-1, - 0x1.66e86d0312e82p-1, - 0x1.69865ee075011p-1, - 0x1.6c1c9759d0e5fp-1, - 0x1.6eab18c74091bp-1, - 0x1.7131e5f496a5ap-1, - 0x1.73b1021fc0cb8p-1, - 0x1.762870f720c6fp-1, - 0x1.78983697dc96fp-1, - 0x1.7b00578c26037p-1, - 0x1.7d60d8c979f7bp-1, - 0x1.7fb9bfaed8078p-1, - 0x1.820b1202f27fbp-1, - 0x1.8454d5f25760dp-1, - 0x1.8697120d92a4ap-1, - 0x1.88d1cd474a2e0p-1, - 0x1.8b050ef253c37p-1, - 0x1.8d30debfc572ep-1, - 0x1.8f5544bd00c04p-1, - 0x1.91724951b8fc6p-1, - 0x1.9387f53df5238p-1, - 0x1.959651980da31p-1, - 0x1.979d67caa6631p-1, - 0x1.999d4192a5715p-1, - 0x1.9b95e8fd26abap-1, - 0x1.9d8768656cc42p-1, - 0x1.9f71ca72cffb6p-1, - 0x1.a1551a16aaeafp-1, - 0x1.a331628a45b92p-1, - 0x1.a506af4cc00f4p-1, - 0x1.a6d50c20fa293p-1, - 0x1.a89c850b7d54dp-1, - 0x1.aa5d265064366p-1, - 0x1.ac16fc7143263p-1, - 0x1.adca142b10f98p-1, - 0x1.af767a741088bp-1, - 0x1.b11c3c79bb424p-1, - 0x1.b2bb679ead19cp-1, - 0x1.b4540978921eep-1, - 0x1.b5e62fce16095p-1, - 0x1.b771e894d602ep-1, - 0x1.b8f741ef54f83p-1, - 0x1.ba764a2af2b78p-1, - 0x1.bbef0fbde6221p-1, - 0x1.bd61a1453ab44p-1, - 0x1.bece0d82d1a5cp-1, - 0x1.c034635b66e23p-1, - 0x1.c194b1d49a184p-1, - 0x1.c2ef0812fc1bdp-1, - 0x1.c443755820d64p-1, - 0x1.c5920900b5fd1p-1, - 0x1.c6dad2829ec62p-1, - 0x1.c81de16b14cefp-1, - 0x1.c95b455cce69dp-1, - 0x1.ca930e0e2a825p-1, - 0x1.cbc54b476248dp-1, - 0x1.ccf20ce0c0d27p-1, - 0x1.ce1962c0e0d8bp-1, - 0x1.cf3b5cdaf0c39p-1, - 0x1.d0580b2cfd249p-1, - 0x1.d16f7dbe41ca0p-1, - 0x1.d281c49d818d0p-1, - 0x1.d38eefdf64fddp-1, - 0x1.d4970f9ce00d9p-1, - 0x1.d59a33f19ed42p-1, - 0x1.d6986cfa798e7p-1, - 0x1.d791cad3eff01p-1, - 0x1.d8865d98abe01p-1, - 0x1.d97635600bb89p-1, - 0x1.da61623cb41e0p-1, - 0x1.db47f43b2980dp-1, - 0x1.dc29fb60715afp-1, - 0x1.dd0787a8bb39dp-1, - 0x1.dde0a90611a0dp-1, - 0x1.deb56f5f12d28p-1, - 0x1.df85ea8db188ep-1, - 0x1.e0522a5dfda73p-1, - 0x1.e11a3e8cf4eb8p-1, - 0x1.e1de36c75ba58p-1, - 0x1.e29e22a89d766p-1, - 0x1.e35a11b9b61cep-1, - 0x1.e4121370224ccp-1, - 0x1.e4c6372cd8927p-1, - 0x1.e5768c3b4a3fcp-1, - 0x1.e62321d06c5e0p-1, - 0x1.e6cc0709c8a0dp-1, - 0x1.e7714aec96534p-1, - 0x1.e812fc64db369p-1, - 0x1.e8b12a44944a8p-1, - 0x1.e94be342e6743p-1, - 0x1.e9e335fb56f87p-1, - 0x1.ea7730ed0bbb9p-1, - 0x1.eb07e27a133aap-1, - 0x1.eb9558e6b42cep-1, - 0x1.ec1fa258c4beap-1, - 0x1.eca6ccd709544p-1, - 0x1.ed2ae6489ac1ep-1, - 0x1.edabfc7453e63p-1, - 0x1.ee2a1d004692cp-1, - 0x1.eea5557137ae0p-1, - 0x1.ef1db32a2277cp-1, - 0x1.ef93436bc2daap-1, - 0x1.f006135426b26p-1, - 0x1.f0762fde45ee6p-1, - 0x1.f0e3a5e1a1788p-1, - 0x1.f14e8211e8c55p-1, - 0x1.f1b6d0fea5f4dp-1, - 0x1.f21c9f12f0677p-1, - 0x1.f27ff89525acfp-1, - 0x1.f2e0e9a6a8b09p-1, - 0x1.f33f7e43a706bp-1, - 0x1.f39bc242e43e6p-1, - 0x1.f3f5c1558b19ep-1, - 0x1.f44d870704911p-1, - 0x1.f4a31ebcd47dfp-1, - 0x1.f4f693b67bd77p-1, - 0x1.f547f10d60597p-1, - 0x1.f59741b4b97cfp-1, - 0x1.f5e4907982a07p-1, - 0x1.f62fe80272419p-1, - 0x1.f67952cff6282p-1, - 0x1.f6c0db3c34641p-1, - 0x1.f7068b7b10fd9p-1, - 0x1.f74a6d9a38383p-1, - 0x1.f78c8b812d498p-1, - 0x1.f7cceef15d631p-1, - 0x1.f80ba18636f07p-1, - 0x1.f848acb544e95p-1, - 0x1.f88419ce4e184p-1, - 0x1.f8bdf1fb78370p-1, - 0x1.f8f63e416ebffp-1, - 0x1.f92d077f8d56dp-1, - 0x1.f96256700da8ep-1, - 0x1.f99633a838a57p-1, - 0x1.f9c8a7989af0dp-1, - 0x1.f9f9ba8d3c733p-1, - 0x1.fa2974addae45p-1, - 0x1.fa57ddfe27376p-1, - 0x1.fa84fe5e05c8dp-1, - 0x1.fab0dd89d1309p-1, - 0x1.fadb831a9f9c3p-1, - 0x1.fb04f6868a944p-1, - 0x1.fb2d3f20f9101p-1, - 0x1.fb54641aebbc9p-1, - 0x1.fb7a6c834b5a2p-1, - 0x1.fb9f5f4739170p-1, - 0x1.fbc3433260ca5p-1, - 0x1.fbe61eef4cf6ap-1, - 0x1.fc07f907bc794p-1, - 0x1.fc28d7e4f9cd0p-1, - 0x1.fc48c1d033c7ap-1, - 0x1.fc67bcf2d7b8fp-1, - 0x1.fc85cf56ecd38p-1, - 0x1.fca2fee770c79p-1, - 0x1.fcbf5170b578bp-1, - 0x1.fcdacca0bfb73p-1, - 0x1.fcf57607a6e7cp-1, - 0x1.fd0f5317f582fp-1, - 0x1.fd2869270a56fp-1, - 0x1.fd40bd6d7a785p-1, - 0x1.fd58550773cb5p-1, - 0x1.fd6f34f52013ap-1, - 0x1.fd85621b0876dp-1, - 0x1.fd9ae142795e3p-1, - 0x1.fdafb719e6a69p-1, - 0x1.fdc3e835500b3p-1, - 0x1.fdd7790ea5bc0p-1, - 0x1.fdea6e062d0c9p-1, - 0x1.fdfccb62e52d3p-1, - 0x1.fe0e9552ebdd6p-1, - 0x1.fe1fcfebe2083p-1, - 0x1.fe307f2b503d0p-1, - 0x1.fe40a6f70af4bp-1, - 0x1.fe504b1d9696cp-1, - 0x1.fe5f6f568b301p-1, - 0x1.fe6e1742f7cf6p-1, - 0x1.fe7c466dc57a1p-1, - 0x1.fe8a004c19ae6p-1, - 0x1.fe97483db8670p-1, - 0x1.fea4218d6594ap-1, - 0x1.feb08f7146046p-1, - 0x1.febc950b3fa75p-1, - 0x1.fec835695932ep-1, - 0x1.fed37386190fbp-1, - 0x1.fede5248e38f4p-1, - 0x1.fee8d486585eep-1, - 0x1.fef2fd00af31ap-1, - 0x1.fefcce6813974p-1, - 0x1.ff064b5afffbep-1, - 0x1.ff0f766697c76p-1, - 0x1.ff18520700971p-1, - 0x1.ff20e0a7ba8c2p-1, - 0x1.ff2924a3f7a83p-1, - 0x1.ff312046f2339p-1, - 0x1.ff38d5cc4227fp-1, - 0x1.ff404760319b4p-1, - 0x1.ff47772010262p-1, - 0x1.ff4e671a85425p-1, - 0x1.ff55194fe19dfp-1, - 0x1.ff5b8fb26f5f6p-1, - 0x1.ff61cc26c1578p-1, - 0x1.ff67d08401202p-1, - 0x1.ff6d9e943c231p-1, - 0x1.ff733814af88cp-1, - 0x1.ff789eb6130c9p-1, - 0x1.ff7dd41ce2b4dp-1, - 0x1.ff82d9e1a76d8p-1, - 0x1.ff87b1913e853p-1, - 0x1.ff8c5cad200a5p-1, - 0x1.ff90dcaba4096p-1, - 0x1.ff9532f846ab0p-1, - 0x1.ff9960f3eb327p-1, - 0x1.ff9d67f51ddbap-1, - 0x1.ffa14948549a7p-1, - 0x1.ffa506302ebaep-1, - 0x1.ffa89fe5b3625p-1, - 0x1.ffac17988ef4bp-1, - 0x1.ffaf6e6f4f5c0p-1, - 0x1.ffb2a5879f35ep-1, - 0x1.ffb5bdf67fe6fp-1, - 0x1.ffb8b8c88295fp-1, - 0x1.ffbb970200110p-1, - 0x1.ffbe599f4f9d9p-1, - 0x1.ffc10194fcb64p-1, - 0x1.ffc38fcffbb7cp-1, - 0x1.ffc60535dd7f5p-1, - 0x1.ffc862a501fd7p-1, - 0x1.ffcaa8f4c9beap-1, - 0x1.ffccd8f5c66d1p-1, - 0x1.ffcef371ea4d7p-1, - 0x1.ffd0f92cb6ba7p-1, - 0x1.ffd2eae369a07p-1, - 0x1.ffd4c94d29fdbp-1, - 0x1.ffd6951b33686p-1, - 0x1.ffd84ef9009eep-1, - 0x1.ffd9f78c7524ap-1, - 0x1.ffdb8f7605ee7p-1, - 0x1.ffdd1750e1220p-1, - 0x1.ffde8fb314ebfp-1, - 0x1.ffdff92db56e5p-1, - 0x1.ffe1544d01ccbp-1, - 0x1.ffe2a1988857cp-1, - 0x1.ffe3e19349dc7p-1, - 0x1.ffe514bbdc197p-1, - 0x1.ffe63b8c8b5f7p-1, - 0x1.ffe7567b7b5e1p-1, - 0x1.ffe865fac722bp-1, - 0x1.ffe96a78a04a9p-1, - 0x1.ffea645f6d6dap-1, - 0x1.ffeb5415e7c44p-1, - 0x1.ffec39ff380b9p-1, - 0x1.ffed167b12ac2p-1, - 0x1.ffede9e5d3262p-1, - 0x1.ffeeb49896c6dp-1, - 0x1.ffef76e956a9fp-1, - 0x1.fff0312b010b5p-1, - 0x1.fff0e3ad91ec2p-1, - 0x1.fff18ebe2b0e1p-1, - 0x1.fff232a72b48ep-1, - 0x1.fff2cfb0453d9p-1, - 0x1.fff3661e9569dp-1, - 0x1.fff3f634b79f9p-1, - 0x1.fff48032dbe40p-1, - 0x1.fff50456dab8cp-1, - 0x1.fff582dc48d30p-1, - 0x1.fff5fbfc8a439p-1, - 0x1.fff66feee5129p-1, - 0x1.fff6dee89352ep-1, - 0x1.fff7491cd4af6p-1, - 0x1.fff7aebcff755p-1, - 0x1.fff80ff8911fdp-1, - 0x1.fff86cfd3e657p-1, - 0x1.fff8c5f702ccfp-1, - 0x1.fff91b102fca8p-1, - 0x1.fff96c717b695p-1, - 0x1.fff9ba420e834p-1, - 0x1.fffa04a7928b1p-1, - 0x1.fffa4bc63ee9ap-1, - 0x1.fffa8fc0e5f33p-1, - 0x1.fffad0b901755p-1, - 0x1.fffb0ecebee1bp-1, - 0x1.fffb4a210b172p-1, - 0x1.fffb82cd9dcbfp-1, - 0x1.fffbb8f1049c6p-1, - 0x1.fffbeca6adbe9p-1, - 0x1.fffc1e08f25f5p-1, - 0x1.fffc4d3120aa1p-1, - 0x1.fffc7a37857d2p-1, - 0x1.fffca53375ce3p-1, - 0x1.fffcce3b57bffp-1, - 0x1.fffcf564ab6b7p-1, - 0x1.fffd1ac4135f9p-1, - 0x1.fffd3e6d5cd87p-1, - 0x1.fffd607387b07p-1, - 0x1.fffd80e8ce0dap-1, - 0x1.fffd9fdeabccep-1, - 0x1.fffdbd65e5ad0p-1, - 0x1.fffdd98e903b2p-1, - 0x1.fffdf46816833p-1, - 0x1.fffe0e0140857p-1, - 0x1.fffe26683972ap-1, - 0x1.fffe3daa95b18p-1, - 0x1.fffe53d558ae9p-1, - 0x1.fffe68f4fa777p-1, - 0x1.fffe7d156d244p-1, - 0x1.fffe904222101p-1, - 0x1.fffea2860ee1ep-1, - 0x1.fffeb3ebb267bp-1, - 0x1.fffec47d19457p-1, - 0x1.fffed443e2787p-1, - 0x1.fffee34943b15p-1, - 0x1.fffef1960d85dp-1, - 0x1.fffeff32af7afp-1, - 0x1.ffff0c273bea2p-1, - 0x1.ffff187b6bc0ep-1, - 0x1.ffff2436a21dcp-1, - 0x1.ffff2f5fefcaap-1, - 0x1.ffff39fe16963p-1, - 0x1.ffff44178c8d2p-1, - 0x1.ffff4db27f146p-1, - 0x1.ffff56d4d5e5ep-1, - 0x1.ffff5f8435efcp-1, - 0x1.ffff67c604180p-1, - 0x1.ffff6f9f67e55p-1, - 0x1.ffff77154e0d6p-1, - 0x1.ffff7e2c6aea2p-1, - 0x1.ffff84e93cd75p-1, - 0x1.ffff8b500e77cp-1, - 0x1.ffff9164f8e46p-1, - 0x1.ffff972be5c59p-1, - 0x1.ffff9ca891572p-1, - 0x1.ffffa1de8c582p-1, - 0x1.ffffa6d13de73p-1, - 0x1.ffffab83e54b8p-1, - 0x1.ffffaff99bac4p-1, - 0x1.ffffb43555b5fp-1, - 0x1.ffffb839e52f3p-1, - 0x1.ffffbc09fa7cdp-1, - 0x1.ffffbfa82616bp-1, - 0x1.ffffc316d9ed0p-1, - 0x1.ffffc6586abf6p-1, - 0x1.ffffc96f1165ep-1, - 0x1.ffffcc5cec0c1p-1, - 0x1.ffffcf23ff5fcp-1, - 0x1.ffffd1c637b2bp-1, - 0x1.ffffd4456a10dp-1, - 0x1.ffffd6a3554a1p-1, - 0x1.ffffd8e1a2f22p-1, - 0x1.ffffdb01e8546p-1, - 0x1.ffffdd05a75eap-1, - 0x1.ffffdeee4f810p-1, - 0x1.ffffe0bd3e852p-1, - 0x1.ffffe273c15b7p-1, - 0x1.ffffe41314e06p-1, - 0x1.ffffe59c6698bp-1, - 0x1.ffffe710d565ep-1, - 0x1.ffffe8717232dp-1, - 0x1.ffffe9bf4098cp-1, - 0x1.ffffeafb377d5p-1, - 0x1.ffffec2641a9ep-1, - 0x1.ffffed413e5b7p-1, - 0x1.ffffee4d01cd6p-1, - 0x1.ffffef4a55bd4p-1, - 0x1.fffff039f9e8fp-1, - 0x1.fffff11ca4876p-1, - 0x1.fffff1f302bc1p-1, - 0x1.fffff2bdb904dp-1, - 0x1.fffff37d63a36p-1, - 0x1.fffff43297019p-1, - 0x1.fffff4dde0118p-1, - 0x1.fffff57fc4a95p-1, - 0x1.fffff618c3da6p-1, - 0x1.fffff6a956450p-1, - 0x1.fffff731ee681p-1, - 0x1.fffff7b2f8ed6p-1, - 0x1.fffff82cdcf1bp-1, - 0x1.fffff89ffc4aap-1, - 0x1.fffff90cb3c81p-1, - 0x1.fffff9735b73bp-1, - 0x1.fffff9d446cccp-1, - 0x1.fffffa2fc5015p-1, - 0x1.fffffa8621251p-1, - 0x1.fffffad7a2652p-1, - 0x1.fffffb248c39dp-1, - 0x1.fffffb6d1e95dp-1, - 0x1.fffffbb196132p-1, - 0x1.fffffbf22c1e2p-1, - 0x1.fffffc2f171e3p-1, - 0x1.fffffc688a9cfp-1, - 0x1.fffffc9eb76acp-1, - 0x1.fffffcd1cbc28p-1, - 0x1.fffffd01f36afp-1, - 0x1.fffffd2f57d68p-1, - 0x1.fffffd5a2041fp-1, - 0x1.fffffd8271d12p-1, - 0x1.fffffda86faa9p-1, - 0x1.fffffdcc3b117p-1, - 0x1.fffffdedf37edp-1, - 0x1.fffffe0db6b91p-1, - 0x1.fffffe2ba0ea5p-1, - 0x1.fffffe47ccb60p-1, - 0x1.fffffe62534d4p-1, - 0x1.fffffe7b4c81ep-1, - 0x1.fffffe92ced93p-1, - 0x1.fffffea8ef9cfp-1, - 0x1.fffffebdc2ec6p-1, - 0x1.fffffed15bcbap-1, - 0x1.fffffee3cc32cp-1, - 0x1.fffffef5251c2p-1, - 0x1.ffffff0576917p-1, - 0x1.ffffff14cfb92p-1, - 0x1.ffffff233ee1dp-1, - 0x1.ffffff30d18e8p-1, - 0x1.ffffff3d9480fp-1, - 0x1.ffffff4993c46p-1, - 0x1.ffffff54dab72p-1, - 0x1.ffffff5f74141p-1, - 0x1.ffffff6969fb8p-1, - 0x1.ffffff72c5fb6p-1, - 0x1.ffffff7b91176p-1, - 0x1.ffffff83d3d07p-1, - 0x1.ffffff8b962bep-1, - 0x1.ffffff92dfba2p-1, - 0x1.ffffff99b79d2p-1, - 0x1.ffffffa0248e8p-1, - 0x1.ffffffa62ce54p-1, - 0x1.ffffffabd69b4p-1, - 0x1.ffffffb127525p-1, - 0x1.ffffffb624592p-1, - 0x1.ffffffbad2affp-1, - 0x1.ffffffbf370cdp-1, - 0x1.ffffffc355dfdp-1, - 0x1.ffffffc733572p-1, - 0x1.ffffffcad3626p-1, - 0x1.ffffffce39b67p-1, - 0x1.ffffffd169d0cp-1, - 0x1.ffffffd466fa5p-1, - 0x1.ffffffd7344aap-1, - 0x1.ffffffd9d4aabp-1, - 0x1.ffffffdc4ad7ap-1, - 0x1.ffffffde9964ep-1, - 0x1.ffffffe0c2bf0p-1, - 0x1.ffffffe2c92dbp-1, - 0x1.ffffffe4aed5ep-1, - 0x1.ffffffe675bbdp-1, - 0x1.ffffffe81fc4ep-1, - 0x1.ffffffe9aeb97p-1, - 0x1.ffffffeb24467p-1, - 0x1.ffffffec81ff2p-1, - 0x1.ffffffedc95e7p-1, - 0x1.ffffffeefbc85p-1, - 0x1.fffffff01a8b6p-1, - 0x1.fffffff126e1ep-1, - 0x1.fffffff221f30p-1, - 0x1.fffffff30cd3fp-1, - 0x1.fffffff3e8892p-1, - 0x1.fffffff4b606fp-1, - 0x1.fffffff57632dp-1, - 0x1.fffffff629e44p-1, - 0x1.fffffff6d1e56p-1, - 0x1.fffffff76ef3fp-1, - 0x1.fffffff801c1fp-1, - 0x1.fffffff88af67p-1, - 0x1.fffffff90b2e3p-1, - 0x1.fffffff982fc1p-1, - 0x1.fffffff9f2e9fp-1, - 0x1.fffffffa5b790p-1, - 0x1.fffffffabd229p-1, - 0x1.fffffffb18582p-1, - 0x1.fffffffb6d844p-1, - 0x1.fffffffbbd0aap-1, - 0x1.fffffffc0748fp-1, - 0x1.fffffffc4c96cp-1, - 0x1.fffffffc8d462p-1, - 0x1.fffffffcc9a41p-1, - 0x1.fffffffd01f89p-1, - 0x1.fffffffd36871p-1, - 0x1.fffffffd678edp-1, - 0x1.fffffffd954aep-1, - 0x1.fffffffdbff2ap-1, - 0x1.fffffffde7ba0p-1, - 0x1.fffffffe0cd16p-1, - 0x1.fffffffe2f664p-1, - 0x1.fffffffe4fa30p-1, - 0x1.fffffffe6daf7p-1, - 0x1.fffffffe89b0cp-1, - 0x1.fffffffea3c9ap-1, - 0x1.fffffffebc1a9p-1, - 0x1.fffffffed2c21p-1, - 0x1.fffffffee7dc8p-1, - 0x1.fffffffefb847p-1, - 0x1.ffffffff0dd2bp-1, - 0x1.ffffffff1ede9p-1, - 0x1.ffffffff2ebdap-1, - 0x1.ffffffff3d843p-1, - 0x1.ffffffff4b453p-1, - 0x1.ffffffff58126p-1, - 0x1.ffffffff63fc3p-1, - 0x1.ffffffff6f121p-1, - 0x1.ffffffff79626p-1, - 0x1.ffffffff82fabp-1, - 0x1.ffffffff8be77p-1, - 0x1.ffffffff94346p-1, - 0x1.ffffffff9bec8p-1, - 0x1.ffffffffa319fp-1, - 0x1.ffffffffa9c63p-1, - 0x1.ffffffffaffa4p-1, - 0x1.ffffffffb5be5p-1, - 0x1.ffffffffbb1a2p-1, - 0x1.ffffffffc014ep-1, - 0x1.ffffffffc4b56p-1, - 0x1.ffffffffc901cp-1, - 0x1.ffffffffccfffp-1, - 0x1.ffffffffd0b56p-1, - 0x1.ffffffffd4271p-1, - 0x1.ffffffffd759dp-1, - 0x1.ffffffffda520p-1, - 0x1.ffffffffdd13cp-1, - 0x1.ffffffffdfa2dp-1, - 0x1.ffffffffe202dp-1, - 0x1.ffffffffe4371p-1, - 0x1.ffffffffe642ap-1, - 0x1.ffffffffe8286p-1, - 0x1.ffffffffe9eb0p-1, - 0x1.ffffffffeb8d0p-1, - 0x1.ffffffffed10ap-1, - 0x1.ffffffffee782p-1, - 0x1.ffffffffefc57p-1, - 0x1.fffffffff0fa7p-1, - 0x1.fffffffff218fp-1, - 0x1.fffffffff3227p-1, - 0x1.fffffffff4188p-1, - 0x1.fffffffff4fc9p-1, - 0x1.fffffffff5cfdp-1, - 0x1.fffffffff6939p-1, - 0x1.fffffffff748ep-1, - 0x1.fffffffff7f0dp-1, - 0x1.fffffffff88c5p-1, - 0x1.fffffffff91c6p-1, - 0x1.fffffffff9a1bp-1, - 0x1.fffffffffa1d2p-1, - 0x1.fffffffffa8f6p-1, - 0x1.fffffffffaf92p-1, - 0x1.fffffffffb5b0p-1, - 0x1.fffffffffbb58p-1, - 0x1.fffffffffc095p-1, - 0x1.fffffffffc56dp-1, - 0x1.fffffffffc9e8p-1, - 0x1.fffffffffce0dp-1, - 0x1.fffffffffd1e1p-1, - 0x1.fffffffffd56cp-1, - 0x1.fffffffffd8b3p-1, - 0x1.fffffffffdbbap-1, - 0x1.fffffffffde86p-1, - 0x1.fffffffffe11dp-1, - 0x1.fffffffffe380p-1, - 0x1.fffffffffe5b6p-1, - 0x1.fffffffffe7c0p-1, - 0x1.fffffffffe9a2p-1, - 0x1.fffffffffeb60p-1, - 0x1.fffffffffecfbp-1, - 0x1.fffffffffee77p-1, - 0x1.fffffffffefd6p-1, - 0x1.ffffffffff11ap-1, - 0x1.ffffffffff245p-1, - 0x1.ffffffffff359p-1, - 0x1.ffffffffff457p-1, - 0x1.ffffffffff542p-1, - 0x1.ffffffffff61bp-1, - 0x1.ffffffffff6e3p-1, - 0x1.ffffffffff79bp-1, - 0x1.ffffffffff845p-1, - 0x1.ffffffffff8e2p-1, - 0x1.ffffffffff973p-1, - 0x1.ffffffffff9f8p-1, - 0x1.ffffffffffa73p-1, - 0x1.ffffffffffae4p-1, - 0x1.ffffffffffb4cp-1, - 0x1.ffffffffffbadp-1, - 0x1.ffffffffffc05p-1, - 0x1.ffffffffffc57p-1, - 0x1.ffffffffffca2p-1, - 0x1.ffffffffffce7p-1, - 0x1.ffffffffffd27p-1, - 0x1.ffffffffffd62p-1, - 0x1.ffffffffffd98p-1, - 0x1.ffffffffffdcap-1, - 0x1.ffffffffffdf8p-1, - 0x1.ffffffffffe22p-1, - 0x1.ffffffffffe49p-1, - 0x1.ffffffffffe6cp-1, - 0x1.ffffffffffe8dp-1, - 0x1.ffffffffffeabp-1, - 0x1.ffffffffffec7p-1, - 0x1.ffffffffffee1p-1, - 0x1.ffffffffffef8p-1, - 0x1.fffffffffff0ep-1, - 0x1.fffffffffff22p-1, - 0x1.fffffffffff34p-1, - 0x1.fffffffffff45p-1, - 0x1.fffffffffff54p-1, - 0x1.fffffffffff62p-1, - 0x1.fffffffffff6fp-1, - 0x1.fffffffffff7bp-1, - 0x1.fffffffffff86p-1, - 0x1.fffffffffff90p-1, - 0x1.fffffffffff9ap-1, - 0x1.fffffffffffa2p-1, - 0x1.fffffffffffaap-1, - 0x1.fffffffffffb1p-1, - 0x1.fffffffffffb8p-1, - 0x1.fffffffffffbep-1, - 0x1.fffffffffffc3p-1, - 0x1.fffffffffffc8p-1, - 0x1.fffffffffffcdp-1, - 0x1.fffffffffffd1p-1, - 0x1.fffffffffffd5p-1, - 0x1.fffffffffffd9p-1, - 0x1.fffffffffffdcp-1, - 0x1.fffffffffffdfp-1, - 0x1.fffffffffffe2p-1, - 0x1.fffffffffffe4p-1, - 0x1.fffffffffffe7p-1, - 0x1.fffffffffffe9p-1, - 0x1.fffffffffffebp-1, - 0x1.fffffffffffedp-1, - 0x1.fffffffffffeep-1, - 0x1.ffffffffffff0p-1, - 0x1.ffffffffffff1p-1, - 0x1.ffffffffffff3p-1, - 0x1.ffffffffffff4p-1, - 0x1.ffffffffffff5p-1, - 0x1.ffffffffffff6p-1, - 0x1.ffffffffffff7p-1, - 0x1.ffffffffffff7p-1, - 0x1.ffffffffffff8p-1, - 0x1.ffffffffffff9p-1, - 0x1.ffffffffffff9p-1, - 0x1.ffffffffffffap-1, - 0x1.ffffffffffffbp-1, - 0x1.ffffffffffffbp-1, - 0x1.ffffffffffffbp-1, - 0x1.ffffffffffffcp-1, - 0x1.ffffffffffffcp-1, - 0x1.ffffffffffffdp-1, - 0x1.ffffffffffffdp-1, - 0x1.ffffffffffffdp-1, - 0x1.ffffffffffffdp-1, - 0x1.ffffffffffffep-1, - 0x1.ffffffffffffep-1, - 0x1.ffffffffffffep-1, - 0x1.ffffffffffffep-1, - 0x1.ffffffffffffep-1, - 0x1.ffffffffffffep-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.fffffffffffffp-1, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - 0x1.0000000000000p+0, - }, - .scale = { 0x1.20dd750429b6dp+0, - 0x1.20d8f1975c85dp+0, - 0x1.20cb67bd452c7p+0, - 0x1.20b4d8bac36c1p+0, - 0x1.209546ad13ccfp+0, - 0x1.206cb4897b148p+0, - 0x1.203b261cd0052p+0, - 0x1.2000a00ae3804p+0, - 0x1.1fbd27cdc72d3p+0, - 0x1.1f70c3b4f2cc7p+0, - 0x1.1f1b7ae44867fp+0, - 0x1.1ebd5552f795bp+0, - 0x1.1e565bca400d4p+0, - 0x1.1de697e413d28p+0, - 0x1.1d6e14099944ap+0, - 0x1.1cecdb718d61cp+0, - 0x1.1c62fa1e869b6p+0, - 0x1.1bd07cdd189acp+0, - 0x1.1b357141d95d5p+0, - 0x1.1a91e5a748165p+0, - 0x1.19e5e92b964abp+0, - 0x1.19318bae53a04p+0, - 0x1.1874ddcdfce24p+0, - 0x1.17aff0e56ec10p+0, - 0x1.16e2d7093cd8cp+0, - 0x1.160da304ed92fp+0, - 0x1.153068581b781p+0, - 0x1.144b3b337c90cp+0, - 0x1.135e3075d076bp+0, - 0x1.12695da8b5bdep+0, - 0x1.116cd8fd67618p+0, - 0x1.1068b94962e5ep+0, - 0x1.0f5d1602f7e41p+0, - 0x1.0e4a073dc1b91p+0, - 0x1.0d2fa5a70c168p+0, - 0x1.0c0e0a8223359p+0, - 0x1.0ae54fa490722p+0, - 0x1.09b58f724416bp+0, - 0x1.087ee4d9ad247p+0, - 0x1.07416b4fbfe7cp+0, - 0x1.05fd3ecbec297p+0, - 0x1.04b27bc403d30p+0, - 0x1.03613f2812dafp+0, - 0x1.0209a65e29545p+0, - 0x1.00abcf3e187a9p+0, - 0x1.fe8fb01a47307p-1, - 0x1.fbbbbef34b4b2p-1, - 0x1.f8dc092d58ff8p-1, - 0x1.f5f0cdaf15313p-1, - 0x1.f2fa4c16c0019p-1, - 0x1.eff8c4b1375dbp-1, - 0x1.ecec7870ebca7p-1, - 0x1.e9d5a8e4c934ep-1, - 0x1.e6b4982f158b9p-1, - 0x1.e38988fc46e72p-1, - 0x1.e054be79d3042p-1, - 0x1.dd167c4cf9d2ap-1, - 0x1.d9cf06898cdafp-1, - 0x1.d67ea1a8b5368p-1, - 0x1.d325927fb9d89p-1, - 0x1.cfc41e36c7df9p-1, - 0x1.cc5a8a3fbea40p-1, - 0x1.c8e91c4d01368p-1, - 0x1.c5701a484ef9dp-1, - 0x1.c1efca49a5011p-1, - 0x1.be68728e29d5dp-1, - 0x1.bada596f25436p-1, - 0x1.b745c55905bf8p-1, - 0x1.b3aafcc27502ep-1, - 0x1.b00a46237d5bep-1, - 0x1.ac63e7ecc1411p-1, - 0x1.a8b8287ec6a09p-1, - 0x1.a5074e2157620p-1, - 0x1.a1519efaf889ep-1, - 0x1.9d97610879642p-1, - 0x1.99d8da149c13fp-1, - 0x1.96164fafd8de3p-1, - 0x1.925007283d7aap-1, - 0x1.8e86458169af8p-1, - 0x1.8ab94f6caa71dp-1, - 0x1.86e9694134b9ep-1, - 0x1.8316d6f48133dp-1, - 0x1.7f41dc12c9e89p-1, - 0x1.7b6abbb7aaf19p-1, - 0x1.7791b886e7403p-1, - 0x1.73b714a552763p-1, - 0x1.6fdb11b1e0c34p-1, - 0x1.6bfdf0beddaf5p-1, - 0x1.681ff24b4ab04p-1, - 0x1.6441563c665d4p-1, - 0x1.60625bd75d07bp-1, - 0x1.5c8341bb23767p-1, - 0x1.58a445da7c74cp-1, - 0x1.54c5a57629db0p-1, - 0x1.50e79d1749ac9p-1, - 0x1.4d0a6889dfd9fp-1, - 0x1.492e42d78d2c5p-1, - 0x1.4553664273d24p-1, - 0x1.417a0c4049fd0p-1, - 0x1.3da26d759aef5p-1, - 0x1.39ccc1b136d5ap-1, - 0x1.35f93fe7d1b3dp-1, - 0x1.32281e2fd1a92p-1, - 0x1.2e5991bd4cbfcp-1, - 0x1.2a8dcede3673bp-1, - 0x1.26c508f6bd0ffp-1, - 0x1.22ff727dd6f7bp-1, - 0x1.1f3d3cf9ffe5ap-1, - 0x1.1b7e98fe26217p-1, - 0x1.17c3b626c7a11p-1, - 0x1.140cc3173f007p-1, - 0x1.1059ed7740313p-1, - 0x1.0cab61f084b93p-1, - 0x1.09014c2ca74dap-1, - 0x1.055bd6d32e8d7p-1, - 0x1.01bb2b87c6968p-1, - 0x1.fc3ee5d1524b0p-2, - 0x1.f511a91a67d2ap-2, - 0x1.edeeee0959518p-2, - 0x1.e6d6ffaa65a25p-2, - 0x1.dfca26f5bbf88p-2, - 0x1.d8c8aace11e63p-2, - 0x1.d1d2cfff91594p-2, - 0x1.cae8d93f1d7b6p-2, - 0x1.c40b0729ed547p-2, - 0x1.bd3998457afdap-2, - 0x1.b674c8ffc6283p-2, - 0x1.afbcd3afe8ab6p-2, - 0x1.a911f096fbc26p-2, - 0x1.a27455e14c93cp-2, - 0x1.9be437a7de946p-2, - 0x1.9561c7f23a47bp-2, - 0x1.8eed36b886d93p-2, - 0x1.8886b1e5ecfd1p-2, - 0x1.822e655b417e6p-2, - 0x1.7be47af1f5d89p-2, - 0x1.75a91a7f4d2edp-2, - 0x1.6f7c69d7d3ef8p-2, - 0x1.695e8cd31867ep-2, - 0x1.634fa54fa285fp-2, - 0x1.5d4fd33729015p-2, - 0x1.575f3483021c3p-2, - 0x1.517de540ce2a3p-2, - 0x1.4babff975a04cp-2, - 0x1.45e99bcbb7915p-2, - 0x1.4036d0468a7a2p-2, - 0x1.3a93b1998736cp-2, - 0x1.35005285227f1p-2, - 0x1.2f7cc3fe6f423p-2, - 0x1.2a09153529381p-2, - 0x1.24a55399ea239p-2, - 0x1.1f518ae487dc8p-2, - 0x1.1a0dc51a9934dp-2, - 0x1.14da0a961fd14p-2, - 0x1.0fb6620c550afp-2, - 0x1.0aa2d09497f2bp-2, - 0x1.059f59af7a906p-2, - 0x1.00abff4dec7a3p-2, - 0x1.f79183b101c5bp-3, - 0x1.edeb406d9c824p-3, - 0x1.e4652fadcb6b2p-3, - 0x1.daff4969c0b04p-3, - 0x1.d1b982c501370p-3, - 0x1.c893ce1dcbef7p-3, - 0x1.bf8e1b1ca2279p-3, - 0x1.b6a856c3ed54fp-3, - 0x1.ade26b7fbed95p-3, - 0x1.a53c4135a6526p-3, - 0x1.9cb5bd549b111p-3, - 0x1.944ec2e4f5630p-3, - 0x1.8c07329874652p-3, - 0x1.83deeada4d25ap-3, - 0x1.7bd5c7df3fe9cp-3, - 0x1.73eba3b5b07b7p-3, - 0x1.6c205655be71fp-3, - 0x1.6473b5b15a7a1p-3, - 0x1.5ce595c455b0ap-3, - 0x1.5575c8a468361p-3, - 0x1.4e241e912c305p-3, - 0x1.46f066040a832p-3, - 0x1.3fda6bc016994p-3, - 0x1.38e1fae1d6a9dp-3, - 0x1.3206dceef5f87p-3, - 0x1.2b48d9e5dea1cp-3, - 0x1.24a7b84d38971p-3, - 0x1.1e233d434b813p-3, - 0x1.17bb2c8d41535p-3, - 0x1.116f48a6476ccp-3, - 0x1.0b3f52ce8c383p-3, - 0x1.052b0b1a174eap-3, - 0x1.fe6460fef4680p-4, - 0x1.f2a901ccafb37p-4, - 0x1.e723726b824a9p-4, - 0x1.dbd32ac4c99b0p-4, - 0x1.d0b7a0f921e7cp-4, - 0x1.c5d0497c09e74p-4, - 0x1.bb1c972f23e50p-4, - 0x1.b09bfb7d11a83p-4, - 0x1.a64de673e8837p-4, - 0x1.9c31c6df3b1b8p-4, - 0x1.92470a61b6965p-4, - 0x1.888d1d8e510a3p-4, - 0x1.7f036c0107294p-4, - 0x1.75a96077274bap-4, - 0x1.6c7e64e7281cbp-4, - 0x1.6381e2980956bp-4, - 0x1.5ab342383d177p-4, - 0x1.5211ebf41880bp-4, - 0x1.499d478bca735p-4, - 0x1.4154bc68d75c3p-4, - 0x1.3937b1b319259p-4, - 0x1.31458e6542847p-4, - 0x1.297db960e4f63p-4, - 0x1.21df9981f8e53p-4, - 0x1.1a6a95b1e786fp-4, - 0x1.131e14fa1625dp-4, - 0x1.0bf97e95f2a64p-4, - 0x1.04fc3a0481321p-4, - 0x1.fc4b5e32d6259p-5, - 0x1.eeea8c1b1db93p-5, - 0x1.e1d4cf1e2450ap-5, - 0x1.d508f9a1ea64ep-5, - 0x1.c885df3451a07p-5, - 0x1.bc4a54a84e834p-5, - 0x1.b055303221015p-5, - 0x1.a4a549829587ep-5, - 0x1.993979e14fffdp-5, - 0x1.8e109c4622913p-5, - 0x1.83298d717210ep-5, - 0x1.78832c03aa2b1p-5, - 0x1.6e1c5893c380bp-5, - 0x1.63f3f5c4de13bp-5, - 0x1.5a08e85af27e0p-5, - 0x1.505a174e9c929p-5, - 0x1.46e66be002240p-5, - 0x1.3dacd1a8d8ccdp-5, - 0x1.34ac36ad8dafep-5, - 0x1.2be38b6d92415p-5, - 0x1.2351c2f2d1449p-5, - 0x1.1af5d2e04f3f6p-5, - 0x1.12ceb37ff9bc3p-5, - 0x1.0adb5fcfa8c75p-5, - 0x1.031ad58d56279p-5, - 0x1.f7182a851bca2p-6, - 0x1.e85c449e377f2p-6, - 0x1.da0005e5f28dfp-6, - 0x1.cc0180af00a8bp-6, - 0x1.be5ecd2fcb5f9p-6, - 0x1.b1160991ff737p-6, - 0x1.a4255a00b9f03p-6, - 0x1.978ae8b55ce1bp-6, - 0x1.8b44e6031383ep-6, - 0x1.7f5188610ddc8p-6, - 0x1.73af0c737bb45p-6, - 0x1.685bb5134ef13p-6, - 0x1.5d55cb54cd53ap-6, - 0x1.529b9e8cf9a1ep-6, - 0x1.482b8455dc491p-6, - 0x1.3e03d891b37dep-6, - 0x1.3422fd6d12e2bp-6, - 0x1.2a875b5ffab56p-6, - 0x1.212f612dee7fbp-6, - 0x1.181983e5133ddp-6, - 0x1.0f443edc5ce49p-6, - 0x1.06ae13b0d3255p-6, - 0x1.fcab1483ea7fcp-7, - 0x1.ec72615a894c4p-7, - 0x1.dcaf3691fc448p-7, - 0x1.cd5ec93c12431p-7, - 0x1.be7e5ac24963bp-7, - 0x1.b00b38d6b3575p-7, - 0x1.a202bd6372dcep-7, - 0x1.94624e78e0fafp-7, - 0x1.87275e3a6869dp-7, - 0x1.7a4f6aca256cbp-7, - 0x1.6dd7fe3358230p-7, - 0x1.61beae53b72b7p-7, - 0x1.56011cc3b036dp-7, - 0x1.4a9cf6bda3f4cp-7, - 0x1.3f8ff5042a88ep-7, - 0x1.34d7dbc76d7e5p-7, - 0x1.2a727a89a3f14p-7, - 0x1.205dac02bd6b9p-7, - 0x1.1697560347b25p-7, - 0x1.0d1d69569b82dp-7, - 0x1.03ede1a45bfeep-7, - 0x1.f60d8aa2a88f2p-8, - 0x1.e4cc4abf7d065p-8, - 0x1.d4143a9dfe965p-8, - 0x1.c3e1a5f5c077cp-8, - 0x1.b430ecf4a83a8p-8, - 0x1.a4fe83fb9db25p-8, - 0x1.9646f35a76623p-8, - 0x1.8806d70b2fc36p-8, - 0x1.7a3ade6c8b3e4p-8, - 0x1.6cdfcbfc1e263p-8, - 0x1.5ff2750fe7820p-8, - 0x1.536fc18f7ce5cp-8, - 0x1.4754abacdf1dcp-8, - 0x1.3b9e3f9d06e3fp-8, - 0x1.30499b503957fp-8, - 0x1.2553ee2a336bfp-8, - 0x1.1aba78ba3af89p-8, - 0x1.107a8c7323a6ep-8, - 0x1.06918b6355624p-8, - 0x1.f9f9cfd9c3035p-9, - 0x1.e77448fb66bb9p-9, - 0x1.d58da68fd1170p-9, - 0x1.c4412bf4b8f0bp-9, - 0x1.b38a3af2e55b4p-9, - 0x1.a3645330550ffp-9, - 0x1.93cb11a30d765p-9, - 0x1.84ba3004a50d0p-9, - 0x1.762d84469c18fp-9, - 0x1.6821000795a03p-9, - 0x1.5a90b00981d93p-9, - 0x1.4d78bba8ca5fdp-9, - 0x1.40d564548fad7p-9, - 0x1.34a305080681fp-9, - 0x1.28de11c5031ebp-9, - 0x1.1d83170fbf6fbp-9, - 0x1.128eb96be8798p-9, - 0x1.07fdb4dafea5fp-9, - 0x1.fb99b8b8279e1p-10, - 0x1.e7f232d9e2630p-10, - 0x1.d4fed7195d7e8p-10, - 0x1.c2b9cf7f893bfp-10, - 0x1.b11d702b3deb1p-10, - 0x1.a024365f771bdp-10, - 0x1.8fc8c794b03b5p-10, - 0x1.8005f08d6f1efp-10, - 0x1.70d6a46e07ddap-10, - 0x1.6235fbd7a4345p-10, - 0x1.541f340697987p-10, - 0x1.468dadf4080abp-10, - 0x1.397ced7af2b15p-10, - 0x1.2ce898809244ep-10, - 0x1.20cc76202c5fap-10, - 0x1.15246dda49d47p-10, - 0x1.09ec86c75d497p-10, - 0x1.fe41cd9bb4eeep-11, - 0x1.e97ba3b77f306p-11, - 0x1.d57f524723822p-11, - 0x1.c245d4b998479p-11, - 0x1.afc85e0f82e12p-11, - 0x1.9e005769dbc1dp-11, - 0x1.8ce75e9f6f8a0p-11, - 0x1.7c7744d9378f7p-11, - 0x1.6caa0d3582fe9p-11, - 0x1.5d79eb71e893bp-11, - 0x1.4ee1429bf7cc0p-11, - 0x1.40daa3c89f5b6p-11, - 0x1.3360ccd23db3ap-11, - 0x1.266ea71d4f71ap-11, - 0x1.19ff4663ae9dfp-11, - 0x1.0e0de78654d1ep-11, - 0x1.0295ef6591848p-11, - 0x1.ef25d37f49fe1p-12, - 0x1.da01102b5f851p-12, - 0x1.c5b5412dcafadp-12, - 0x1.b23a5a23e4210p-12, - 0x1.9f8893d8fd1c1p-12, - 0x1.8d986a4187285p-12, - 0x1.7c629a822bc9ep-12, - 0x1.6be02102b3520p-12, - 0x1.5c0a378c90bcap-12, - 0x1.4cda5374ea275p-12, - 0x1.3e4a23d1f4702p-12, - 0x1.30538fbb77ecdp-12, - 0x1.22f0b496539bdp-12, - 0x1.161be46ad3b50p-12, - 0x1.09cfa445b00ffp-12, - 0x1.fc0d55470cf51p-13, - 0x1.e577bbcd49935p-13, - 0x1.cfd4a5adec5bfp-13, - 0x1.bb1a9657ce465p-13, - 0x1.a740684026555p-13, - 0x1.943d4a1d1ed39p-13, - 0x1.8208bc334a6a5p-13, - 0x1.709a8db59f25cp-13, - 0x1.5feada379d8b7p-13, - 0x1.4ff207314a102p-13, - 0x1.40a8c1949f75ep-13, - 0x1.3207fb7420eb9p-13, - 0x1.2408e9ba3327fp-13, - 0x1.16a501f0e42cap-13, - 0x1.09d5f819c9e29p-13, - 0x1.fb2b792b40a22p-14, - 0x1.e3bcf436a1a95p-14, - 0x1.cd55277c18d05p-14, - 0x1.b7e94604479dcp-14, - 0x1.a36eec00926ddp-14, - 0x1.8fdc1b2dcf7b9p-14, - 0x1.7d2737527c3f9p-14, - 0x1.6b4702d7d5849p-14, - 0x1.5a329b7d30748p-14, - 0x1.49e17724f4d41p-14, - 0x1.3a4b60ba9aa4dp-14, - 0x1.2b6875310f785p-14, - 0x1.1d312098e9dbap-14, - 0x1.0f9e1b4dd36dfp-14, - 0x1.02a8673a94691p-14, - 0x1.ec929a665b449p-15, - 0x1.d4f4b4c8e09edp-15, - 0x1.be6abbb10a5aap-15, - 0x1.a8e8cc1fadef6p-15, - 0x1.94637d5bacfdbp-15, - 0x1.80cfdc72220cfp-15, - 0x1.6e2367dc27f95p-15, - 0x1.5c540b4936fd2p-15, - 0x1.4b581b8d170fcp-15, - 0x1.3b2652b06c2b2p-15, - 0x1.2bb5cc22e5db6p-15, - 0x1.1cfe010e2052dp-15, - 0x1.0ef6c4c84a0fep-15, - 0x1.01984165a5f36p-15, - 0x1.e9b5e8d00ce76p-16, - 0x1.d16f5716c6c1ap-16, - 0x1.ba4f035d60e02p-16, - 0x1.a447b7b03f045p-16, - 0x1.8f4ccca7fc90dp-16, - 0x1.7b5223dac7336p-16, - 0x1.684c227fcacefp-16, - 0x1.562fac4329b48p-16, - 0x1.44f21e49054f2p-16, - 0x1.34894a5e24657p-16, - 0x1.24eb7254ccf83p-16, - 0x1.160f438c70913p-16, - 0x1.07ebd2a2d2844p-16, - 0x1.f4f12e9ab070ap-17, - 0x1.db5ad0b27805cp-17, - 0x1.c304efa2c6f4ep-17, - 0x1.abe09e9144b5ep-17, - 0x1.95df988e76644p-17, - 0x1.80f439b4ee04bp-17, - 0x1.6d11788a69c64p-17, - 0x1.5a2adfa0b4bc4p-17, - 0x1.4834877429b8fp-17, - 0x1.37231085c7d9ap-17, - 0x1.26eb9daed6f7ep-17, - 0x1.1783ceac28910p-17, - 0x1.08e1badf0fcedp-17, - 0x1.f5f7d88472604p-18, - 0x1.db92b5212fb8dp-18, - 0x1.c282cd3957edap-18, - 0x1.aab7abace48dcp-18, - 0x1.94219bfcb4928p-18, - 0x1.7eb1a2075864dp-18, - 0x1.6a597219a93d9p-18, - 0x1.570b69502f313p-18, - 0x1.44ba864670882p-18, - 0x1.335a62115bce2p-18, - 0x1.22df298214423p-18, - 0x1.133d96ae7e0ddp-18, - 0x1.046aeabcfcdecp-18, - 0x1.ecb9cfe1d8642p-19, - 0x1.d21397ead99cbp-19, - 0x1.b8d094c86d374p-19, - 0x1.a0df0f0c626dcp-19, - 0x1.8a2e269750a39p-19, - 0x1.74adc8f4064d3p-19, - 0x1.604ea819f007cp-19, - 0x1.4d0231928c6f9p-19, - 0x1.3aba85fe22e1fp-19, - 0x1.296a70f414053p-19, - 0x1.1905613b3abf2p-19, - 0x1.097f6156f32c5p-19, - 0x1.f59a20caf6695p-20, - 0x1.d9c73698fb1dcp-20, - 0x1.bf716c6168baep-20, - 0x1.a6852c6b58392p-20, - 0x1.8eefd70594a88p-20, - 0x1.789fb715aae95p-20, - 0x1.6383f726a8e04p-20, - 0x1.4f8c96f26a26ap-20, - 0x1.3caa61607f920p-20, - 0x1.2acee2f5ecdb8p-20, - 0x1.19ec60b1242edp-20, - 0x1.09f5cf4dd2877p-20, - 0x1.f5bd95d8730d8p-21, - 0x1.d9371e2ff7c35p-21, - 0x1.be41de54d155ap-21, - 0x1.a4c89e08ef4f3p-21, - 0x1.8cb738399b12cp-21, - 0x1.75fa8dbc84becp-21, - 0x1.608078a70dcbcp-21, - 0x1.4c37c0394d094p-21, - 0x1.39100d5687bfep-21, - 0x1.26f9df8519bd6p-21, - 0x1.15e6827001f18p-21, - 0x1.05c803e4831c1p-21, - 0x1.ed22548cffd35p-22, - 0x1.d06ad6ecdf971p-22, - 0x1.b551c847fbc96p-22, - 0x1.9bc09f112b494p-22, - 0x1.83a1ff0aa239dp-22, - 0x1.6ce1aa3fd7bddp-22, - 0x1.576c72b514859p-22, - 0x1.43302cc4a0da8p-22, - 0x1.301ba221dc9bbp-22, - 0x1.1e1e857adc568p-22, - 0x1.0d2966b1746f7p-22, - 0x1.fa5b4f49cc6b2p-23, - 0x1.dc3ae30b55c16p-23, - 0x1.bfd7555a3bd68p-23, - 0x1.a517d9e61628ap-23, - 0x1.8be4f8f6c951fp-23, - 0x1.74287ded49339p-23, - 0x1.5dcd669f2cd34p-23, - 0x1.48bfd38302870p-23, - 0x1.34ecf8a3c124ap-23, - 0x1.22430f521cbcfp-23, - 0x1.10b1488aeb235p-23, - 0x1.0027c00a263a6p-23, - 0x1.e12ee004efc37p-24, - 0x1.c3e44ae32b16bp-24, - 0x1.a854ea14102a8p-24, - 0x1.8e6761569f45dp-24, - 0x1.7603bac345f65p-24, - 0x1.5f1353cdad001p-24, - 0x1.4980cb3c80949p-24, - 0x1.3537f00b6ad4dp-24, - 0x1.2225b12bffc68p-24, - 0x1.10380e1adb7e9p-24, - 0x1.febc107d5efaap-25, - 0x1.df0f2a0ee6946p-25, - 0x1.c14b2188bcee4p-25, - 0x1.a553644f7f07dp-25, - 0x1.8b0cfce0579dfp-25, - 0x1.725e7c5dd20f7p-25, - 0x1.5b2fe547a1340p-25, - 0x1.456a974e92e93p-25, - 0x1.30f93c3699078p-25, - 0x1.1dc7b5b978cf8p-25, - 0x1.0bc30c5d52f15p-25, - 0x1.f5b2be65a0c7fp-26, - 0x1.d5f3a8dea7357p-26, - 0x1.b82915b03515bp-26, - 0x1.9c3517e789488p-26, - 0x1.81fb7df06136ep-26, - 0x1.6961b8d641d06p-26, - 0x1.524ec4d916caep-26, - 0x1.3cab1343d18d1p-26, - 0x1.2860757487a01p-26, - 0x1.155a09065d4f7p-26, - 0x1.0384250e4c9fcp-26, - 0x1.e59890b926c78p-27, - 0x1.c642116a8a9e3p-27, - 0x1.a8e405e651ab6p-27, - 0x1.8d5f98114f872p-27, - 0x1.7397c5a66e307p-27, - 0x1.5b71456c5a4c4p-27, - 0x1.44d26de513197p-27, - 0x1.2fa31d6371537p-27, - 0x1.1bcca373b7b43p-27, - 0x1.0939ab853339fp-27, - 0x1.efac5187b2863p-28, - 0x1.cf1e86235d0e6p-28, - 0x1.b0a68a2128babp-28, - 0x1.9423165bc4444p-28, - 0x1.7974e743dea3cp-28, - 0x1.607e9eacd1050p-28, - 0x1.4924a74dec728p-28, - 0x1.334d19e0c2160p-28, - 0x1.1edfa3c5f5ccap-28, - 0x1.0bc56f1b54701p-28, - 0x1.f3d2185e047d9p-29, - 0x1.d26cb87945e87p-29, - 0x1.b334fac4b9f99p-29, - 0x1.96076f7918d1cp-29, - 0x1.7ac2d72fc2c63p-29, - 0x1.614801550319ep-29, - 0x1.4979ac8b28926p-29, - 0x1.333c68e2d0548p-29, - 0x1.1e767bce37dd7p-29, - 0x1.0b0fc5b6d05a0p-29, - 0x1.f1e3523b41d7dp-30, - 0x1.d00de6608effep-30, - 0x1.b0778b7b3301ap-30, - 0x1.92fb04ec0f6cfp-30, - 0x1.77756ec9f78fap-30, - 0x1.5dc61922d5a06p-30, - 0x1.45ce65699ff6dp-30, - 0x1.2f71a5f159970p-30, - 0x1.1a94ff571654fp-30, - 0x1.071f4bbea09ecp-30, - 0x1.e9f1ff8ddd774p-31, - 0x1.c818223a202c7p-31, - 0x1.a887bd2b4404dp-31, - 0x1.8b1a336c5eb6bp-31, - 0x1.6fab63324088ap-31, - 0x1.56197e30205bap-31, - 0x1.3e44e45301b92p-31, - 0x1.281000bfe4c3fp-31, - 0x1.135f28f2d50b4p-31, - 0x1.00187dded5975p-31, - 0x1.dc479de0ef001p-32, - 0x1.bad4fdad3caa1p-32, - 0x1.9baed3ed27ab8p-32, - 0x1.7ead9ce4285bbp-32, - 0x1.63ac6b4edc88ep-32, - 0x1.4a88be2a6390cp-32, - 0x1.332259185f1a0p-32, - 0x1.1d5b1f3793044p-32, - 0x1.0916f04b6e18bp-32, - 0x1.ec77101de6926p-33, - 0x1.c960bf23153e0p-33, - 0x1.a8bd20fc65ef7p-33, - 0x1.8a61745ec7d1dp-33, - 0x1.6e25d0e756261p-33, - 0x1.53e4f7d1666cbp-33, - 0x1.3b7c27a7ddb0ep-33, - 0x1.24caf2c32af14p-33, - 0x1.0fb3186804d0fp-33, - 0x1.f830c0bb41fd7p-34, - 0x1.d3c0f1a91c846p-34, - 0x1.b1e5acf351d87p-34, - 0x1.92712d259ce66p-34, - 0x1.7538c60a04476p-34, - 0x1.5a14b04b47879p-34, - 0x1.40dfd87456f4cp-34, - 0x1.2977b1172b9d5p-34, - 0x1.13bc07e891491p-34, - 0x1.ff1dbb4300811p-35, - 0x1.d9a880f306bd8p-35, - 0x1.b6e45220b55e0p-35, - 0x1.96a0b33f2c4dap-35, - 0x1.78b07e9e924acp-35, - 0x1.5ce9ab1670dd2p-35, - 0x1.4325167006bb0p-35, - 0x1.2b3e53538ff3fp-35, - 0x1.15137a7f44864p-35, - 0x1.0084ff125639dp-35, - 0x1.daeb0b7311ec7p-36, - 0x1.b7937d1c40c52p-36, - 0x1.96d082f59ab06p-36, - 0x1.7872d9fa10aadp-36, - 0x1.5c4e8e37bc7d0p-36, - 0x1.423ac0df49a40p-36, - 0x1.2a117230ad284p-36, - 0x1.13af4f04f9998p-36, - 0x1.fde703724e560p-37, - 0x1.d77f0c82e7641p-37, - 0x1.b3ee02611d7ddp-37, - 0x1.92ff33023d5bdp-37, - 0x1.7481a9e69f53fp-37, - 0x1.5847eda620959p-37, - 0x1.3e27c1fcc74bdp-37, - 0x1.25f9ee0b923dcp-37, - 0x1.0f9a0686531ffp-37, - 0x1.f5cc7718082afp-38, - 0x1.cf7e53d6a2ca5p-38, - 0x1.ac0f5f3229372p-38, - 0x1.8b498644847eap-38, - 0x1.6cfa9bcca59dcp-38, - 0x1.50f411d4fd2cdp-38, - 0x1.370ab8327af5ep-38, - 0x1.1f167f88c6b6ep-38, - 0x1.08f24085d4597p-38, - 0x1.e8f70e181d619p-39, - 0x1.c324c20e337dcp-39, - 0x1.a03261574b54ep-39, - 0x1.7fe903cdf5855p-39, - 0x1.6215c58da3450p-39, - 0x1.46897d4b69fc6p-39, - 0x1.2d1877d731b7bp-39, - 0x1.159a386b11517p-39, - 0x1.ffd27ae9393cep-40, - 0x1.d7c593130dd0bp-40, - 0x1.b2cd607c79bcfp-40, - 0x1.90ae4d3405651p-40, - 0x1.71312dd1759e2p-40, - 0x1.5422ef5d8949dp-40, - 0x1.39544b0ecc957p-40, - 0x1.20997f73e73ddp-40, - 0x1.09ca0eaacd277p-40, - 0x1.e9810295890ecp-41, - 0x1.c2b45b5aa4a1dp-41, - 0x1.9eee068fa7596p-41, - 0x1.7df2b399c10a8p-41, - 0x1.5f8b87a31bd85p-41, - 0x1.4385c96e9a2d9p-41, - 0x1.29b2933ef4cbcp-41, - 0x1.11e68a6378f8ap-41, - 0x1.f7f338086a86bp-42, - 0x1.cf8d7d9ce040ap-42, - 0x1.aa577251ae484p-42, - 0x1.8811d739efb5ep-42, - 0x1.68823e52970bep-42, - 0x1.4b72ae68e8b4cp-42, - 0x1.30b14dbe876bcp-42, - 0x1.181012ef86610p-42, - 0x1.01647ba798744p-42, - 0x1.d90e917701675p-43, - 0x1.b2a87e86d0c8ap-43, - 0x1.8f53dcb377293p-43, - 0x1.6ed2f2515e933p-43, - 0x1.50ecc9ed47f19p-43, - 0x1.356cd5ce7799ep-43, - 0x1.1c229a587ab78p-43, - 0x1.04e15ecc7f3f6p-43, - 0x1.deffc7e6a6017p-44, - 0x1.b7b040832f310p-44, - 0x1.938e021f36d76p-44, - 0x1.7258610b3b233p-44, - 0x1.53d3bfc82a909p-44, - 0x1.37c92babdc2fdp-44, - 0x1.1e06010120f6ap-44, - 0x1.065b9616170d4p-44, - 0x1.e13dd96b3753ap-45, - 0x1.b950d32467392p-45, - 0x1.94a72263259a5p-45, - 0x1.72fd93e036cdcp-45, - 0x1.54164576929abp-45, - 0x1.37b83c521fe96p-45, - 0x1.1daf033182e96p-45, - 0x1.05ca50205d26ap-45, - 0x1.dfbb6235639fap-46, - 0x1.b7807e294781fp-46, - 0x1.9298add70a734p-46, - 0x1.70beaf9c7ffb6p-46, - 0x1.51b2cd6709222p-46, - 0x1.353a6cf7f7fffp-46, - 0x1.1b1fa8cbe84a7p-46, - 0x1.0330f0fd69921p-46, - 0x1.da81670f96f9bp-47, - 0x1.b24a16b4d09aap-47, - 0x1.8d6eeb6efdbd6p-47, - 0x1.6ba91ac734785p-47, - 0x1.4cb7966770ab5p-47, - 0x1.305e9721d0981p-47, - 0x1.1667311fff70ap-47, - 0x1.fd3de10d62855p-48, - 0x1.d1aefbcd48d0cp-48, - 0x1.a9cc93c25aca9p-48, - 0x1.85487ee3ea735p-48, - 0x1.63daf8b4b1e0cp-48, - 0x1.45421e69a6ca1p-48, - 0x1.294175802d99ap-48, - 0x1.0fa17bf41068fp-48, - 0x1.f05e82aae2bb9p-49, - 0x1.c578101b29058p-49, - 0x1.9e39dc5dd2f7cp-49, - 0x1.7a553a728bbf2p-49, - 0x1.5982008db1304p-49, - 0x1.3b7e00422e51bp-49, - 0x1.200c898d9ee3ep-49, - 0x1.06f5f7eb65a56p-49, - 0x1.e00e9148a1d25p-50, - 0x1.b623734024e92p-50, - 0x1.8fd4e01891bf8p-50, - 0x1.6cd44c7470d89p-50, - 0x1.4cd9c04158cd7p-50, - 0x1.2fa34bf5c8344p-50, - 0x1.14f4890ff2461p-50, - 0x1.f92c49dfa4df5p-51, - 0x1.ccaaea71ab0dfp-51, - 0x1.a40829f001197p-51, - 0x1.7eef13b59e96cp-51, - 0x1.5d11e1a252bf5p-51, - 0x1.3e296303b2297p-51, - 0x1.21f47009f43cep-51, - 0x1.083768c5e4541p-51, - 0x1.e1777d831265ep-52, - 0x1.b69f10b0191b5p-52, - 0x1.8f8a3a05b5b52p-52, - 0x1.6be573c40c8e7p-52, - 0x1.4b645ba991fdbp-52, - 0x1.2dc119095729fp-52, - }, -}; diff --git a/sysdeps/aarch64/fpu/sv_erff_data.c b/sysdeps/aarch64/fpu/sv_erff_data.c deleted file mode 100644 index 6dcd72af69..0000000000 --- a/sysdeps/aarch64/fpu/sv_erff_data.c +++ /dev/null @@ -1,1058 +0,0 @@ -/* Table for SVE erff approximation - - Copyright (C) 2024 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#include "vecmath_config.h" - -/* Lookup table used in SVE erff. - For each possible rounded input r (multiples of 1/128), between - r = 0.0 and r = 4.0 (513 values): - - __erff_data.erf contains the values of erf(r), - - __erff_data.scale contains the values of 2/sqrt(pi)*exp(-r^2). - Note that indices 0 and 1 are never hit by the algorithm, since lookup is - performed only for x >= 1/64-1/512. */ -const struct sv_erff_data __sv_erff_data = { - .erf = { 0x0.000000p+0, - 0x1.20dbf4p-7, - 0x1.20d770p-6, - 0x1.b137e0p-6, - 0x1.20c564p-5, - 0x1.68e5d4p-5, - 0x1.b0fafep-5, - 0x1.f902a8p-5, - 0x1.207d48p-4, - 0x1.44703ep-4, - 0x1.68591ap-4, - 0x1.8c36bep-4, - 0x1.b00812p-4, - 0x1.d3cbf8p-4, - 0x1.f7815ap-4, - 0x1.0d9390p-3, - 0x1.1f5e1ap-3, - 0x1.311fc2p-3, - 0x1.42d7fcp-3, - 0x1.548642p-3, - 0x1.662a0cp-3, - 0x1.77c2d2p-3, - 0x1.895010p-3, - 0x1.9ad142p-3, - 0x1.ac45e4p-3, - 0x1.bdad72p-3, - 0x1.cf076ep-3, - 0x1.e05354p-3, - 0x1.f190aap-3, - 0x1.015f78p-2, - 0x1.09eed6p-2, - 0x1.127632p-2, - 0x1.1af54ep-2, - 0x1.236bf0p-2, - 0x1.2bd9dcp-2, - 0x1.343ed6p-2, - 0x1.3c9aa8p-2, - 0x1.44ed18p-2, - 0x1.4d35f0p-2, - 0x1.5574f4p-2, - 0x1.5da9f4p-2, - 0x1.65d4b8p-2, - 0x1.6df50ap-2, - 0x1.760abap-2, - 0x1.7e1594p-2, - 0x1.861566p-2, - 0x1.8e0a02p-2, - 0x1.95f336p-2, - 0x1.9dd0d2p-2, - 0x1.a5a2acp-2, - 0x1.ad6896p-2, - 0x1.b52264p-2, - 0x1.bccfecp-2, - 0x1.c47104p-2, - 0x1.cc0584p-2, - 0x1.d38d44p-2, - 0x1.db081cp-2, - 0x1.e275eap-2, - 0x1.e9d68ap-2, - 0x1.f129d4p-2, - 0x1.f86faap-2, - 0x1.ffa7eap-2, - 0x1.03693ap-1, - 0x1.06f794p-1, - 0x1.0a7ef6p-1, - 0x1.0dff50p-1, - 0x1.117894p-1, - 0x1.14eab4p-1, - 0x1.1855a6p-1, - 0x1.1bb95cp-1, - 0x1.1f15ccp-1, - 0x1.226ae8p-1, - 0x1.25b8a8p-1, - 0x1.28ff02p-1, - 0x1.2c3decp-1, - 0x1.2f755cp-1, - 0x1.32a54cp-1, - 0x1.35cdb4p-1, - 0x1.38ee8ap-1, - 0x1.3c07cap-1, - 0x1.3f196ep-1, - 0x1.42236ep-1, - 0x1.4525c8p-1, - 0x1.482074p-1, - 0x1.4b1372p-1, - 0x1.4dfebap-1, - 0x1.50e24cp-1, - 0x1.53be26p-1, - 0x1.569244p-1, - 0x1.595ea6p-1, - 0x1.5c2348p-1, - 0x1.5ee02ep-1, - 0x1.619556p-1, - 0x1.6442c0p-1, - 0x1.66e86ep-1, - 0x1.69865ep-1, - 0x1.6c1c98p-1, - 0x1.6eab18p-1, - 0x1.7131e6p-1, - 0x1.73b102p-1, - 0x1.762870p-1, - 0x1.789836p-1, - 0x1.7b0058p-1, - 0x1.7d60d8p-1, - 0x1.7fb9c0p-1, - 0x1.820b12p-1, - 0x1.8454d6p-1, - 0x1.869712p-1, - 0x1.88d1cep-1, - 0x1.8b050ep-1, - 0x1.8d30dep-1, - 0x1.8f5544p-1, - 0x1.91724ap-1, - 0x1.9387f6p-1, - 0x1.959652p-1, - 0x1.979d68p-1, - 0x1.999d42p-1, - 0x1.9b95e8p-1, - 0x1.9d8768p-1, - 0x1.9f71cap-1, - 0x1.a1551ap-1, - 0x1.a33162p-1, - 0x1.a506b0p-1, - 0x1.a6d50cp-1, - 0x1.a89c86p-1, - 0x1.aa5d26p-1, - 0x1.ac16fcp-1, - 0x1.adca14p-1, - 0x1.af767ap-1, - 0x1.b11c3cp-1, - 0x1.b2bb68p-1, - 0x1.b4540ap-1, - 0x1.b5e630p-1, - 0x1.b771e8p-1, - 0x1.b8f742p-1, - 0x1.ba764ap-1, - 0x1.bbef10p-1, - 0x1.bd61a2p-1, - 0x1.bece0ep-1, - 0x1.c03464p-1, - 0x1.c194b2p-1, - 0x1.c2ef08p-1, - 0x1.c44376p-1, - 0x1.c5920ap-1, - 0x1.c6dad2p-1, - 0x1.c81de2p-1, - 0x1.c95b46p-1, - 0x1.ca930ep-1, - 0x1.cbc54cp-1, - 0x1.ccf20cp-1, - 0x1.ce1962p-1, - 0x1.cf3b5cp-1, - 0x1.d0580cp-1, - 0x1.d16f7ep-1, - 0x1.d281c4p-1, - 0x1.d38ef0p-1, - 0x1.d49710p-1, - 0x1.d59a34p-1, - 0x1.d6986cp-1, - 0x1.d791cap-1, - 0x1.d8865ep-1, - 0x1.d97636p-1, - 0x1.da6162p-1, - 0x1.db47f4p-1, - 0x1.dc29fcp-1, - 0x1.dd0788p-1, - 0x1.dde0aap-1, - 0x1.deb570p-1, - 0x1.df85eap-1, - 0x1.e0522ap-1, - 0x1.e11a3ep-1, - 0x1.e1de36p-1, - 0x1.e29e22p-1, - 0x1.e35a12p-1, - 0x1.e41214p-1, - 0x1.e4c638p-1, - 0x1.e5768cp-1, - 0x1.e62322p-1, - 0x1.e6cc08p-1, - 0x1.e7714ap-1, - 0x1.e812fcp-1, - 0x1.e8b12ap-1, - 0x1.e94be4p-1, - 0x1.e9e336p-1, - 0x1.ea7730p-1, - 0x1.eb07e2p-1, - 0x1.eb9558p-1, - 0x1.ec1fa2p-1, - 0x1.eca6ccp-1, - 0x1.ed2ae6p-1, - 0x1.edabfcp-1, - 0x1.ee2a1ep-1, - 0x1.eea556p-1, - 0x1.ef1db4p-1, - 0x1.ef9344p-1, - 0x1.f00614p-1, - 0x1.f07630p-1, - 0x1.f0e3a6p-1, - 0x1.f14e82p-1, - 0x1.f1b6d0p-1, - 0x1.f21ca0p-1, - 0x1.f27ff8p-1, - 0x1.f2e0eap-1, - 0x1.f33f7ep-1, - 0x1.f39bc2p-1, - 0x1.f3f5c2p-1, - 0x1.f44d88p-1, - 0x1.f4a31ep-1, - 0x1.f4f694p-1, - 0x1.f547f2p-1, - 0x1.f59742p-1, - 0x1.f5e490p-1, - 0x1.f62fe8p-1, - 0x1.f67952p-1, - 0x1.f6c0dcp-1, - 0x1.f7068cp-1, - 0x1.f74a6ep-1, - 0x1.f78c8cp-1, - 0x1.f7cceep-1, - 0x1.f80ba2p-1, - 0x1.f848acp-1, - 0x1.f8841ap-1, - 0x1.f8bdf2p-1, - 0x1.f8f63ep-1, - 0x1.f92d08p-1, - 0x1.f96256p-1, - 0x1.f99634p-1, - 0x1.f9c8a8p-1, - 0x1.f9f9bap-1, - 0x1.fa2974p-1, - 0x1.fa57dep-1, - 0x1.fa84fep-1, - 0x1.fab0dep-1, - 0x1.fadb84p-1, - 0x1.fb04f6p-1, - 0x1.fb2d40p-1, - 0x1.fb5464p-1, - 0x1.fb7a6cp-1, - 0x1.fb9f60p-1, - 0x1.fbc344p-1, - 0x1.fbe61ep-1, - 0x1.fc07fap-1, - 0x1.fc28d8p-1, - 0x1.fc48c2p-1, - 0x1.fc67bcp-1, - 0x1.fc85d0p-1, - 0x1.fca2fep-1, - 0x1.fcbf52p-1, - 0x1.fcdaccp-1, - 0x1.fcf576p-1, - 0x1.fd0f54p-1, - 0x1.fd286ap-1, - 0x1.fd40bep-1, - 0x1.fd5856p-1, - 0x1.fd6f34p-1, - 0x1.fd8562p-1, - 0x1.fd9ae2p-1, - 0x1.fdafb8p-1, - 0x1.fdc3e8p-1, - 0x1.fdd77ap-1, - 0x1.fdea6ep-1, - 0x1.fdfcccp-1, - 0x1.fe0e96p-1, - 0x1.fe1fd0p-1, - 0x1.fe3080p-1, - 0x1.fe40a6p-1, - 0x1.fe504cp-1, - 0x1.fe5f70p-1, - 0x1.fe6e18p-1, - 0x1.fe7c46p-1, - 0x1.fe8a00p-1, - 0x1.fe9748p-1, - 0x1.fea422p-1, - 0x1.feb090p-1, - 0x1.febc96p-1, - 0x1.fec836p-1, - 0x1.fed374p-1, - 0x1.fede52p-1, - 0x1.fee8d4p-1, - 0x1.fef2fep-1, - 0x1.fefccep-1, - 0x1.ff064cp-1, - 0x1.ff0f76p-1, - 0x1.ff1852p-1, - 0x1.ff20e0p-1, - 0x1.ff2924p-1, - 0x1.ff3120p-1, - 0x1.ff38d6p-1, - 0x1.ff4048p-1, - 0x1.ff4778p-1, - 0x1.ff4e68p-1, - 0x1.ff551ap-1, - 0x1.ff5b90p-1, - 0x1.ff61ccp-1, - 0x1.ff67d0p-1, - 0x1.ff6d9ep-1, - 0x1.ff7338p-1, - 0x1.ff789ep-1, - 0x1.ff7dd4p-1, - 0x1.ff82dap-1, - 0x1.ff87b2p-1, - 0x1.ff8c5cp-1, - 0x1.ff90dcp-1, - 0x1.ff9532p-1, - 0x1.ff9960p-1, - 0x1.ff9d68p-1, - 0x1.ffa14ap-1, - 0x1.ffa506p-1, - 0x1.ffa8a0p-1, - 0x1.ffac18p-1, - 0x1.ffaf6ep-1, - 0x1.ffb2a6p-1, - 0x1.ffb5bep-1, - 0x1.ffb8b8p-1, - 0x1.ffbb98p-1, - 0x1.ffbe5ap-1, - 0x1.ffc102p-1, - 0x1.ffc390p-1, - 0x1.ffc606p-1, - 0x1.ffc862p-1, - 0x1.ffcaa8p-1, - 0x1.ffccd8p-1, - 0x1.ffcef4p-1, - 0x1.ffd0fap-1, - 0x1.ffd2eap-1, - 0x1.ffd4cap-1, - 0x1.ffd696p-1, - 0x1.ffd84ep-1, - 0x1.ffd9f8p-1, - 0x1.ffdb90p-1, - 0x1.ffdd18p-1, - 0x1.ffde90p-1, - 0x1.ffdffap-1, - 0x1.ffe154p-1, - 0x1.ffe2a2p-1, - 0x1.ffe3e2p-1, - 0x1.ffe514p-1, - 0x1.ffe63cp-1, - 0x1.ffe756p-1, - 0x1.ffe866p-1, - 0x1.ffe96ap-1, - 0x1.ffea64p-1, - 0x1.ffeb54p-1, - 0x1.ffec3ap-1, - 0x1.ffed16p-1, - 0x1.ffedeap-1, - 0x1.ffeeb4p-1, - 0x1.ffef76p-1, - 0x1.fff032p-1, - 0x1.fff0e4p-1, - 0x1.fff18ep-1, - 0x1.fff232p-1, - 0x1.fff2d0p-1, - 0x1.fff366p-1, - 0x1.fff3f6p-1, - 0x1.fff480p-1, - 0x1.fff504p-1, - 0x1.fff582p-1, - 0x1.fff5fcp-1, - 0x1.fff670p-1, - 0x1.fff6dep-1, - 0x1.fff74ap-1, - 0x1.fff7aep-1, - 0x1.fff810p-1, - 0x1.fff86cp-1, - 0x1.fff8c6p-1, - 0x1.fff91cp-1, - 0x1.fff96cp-1, - 0x1.fff9bap-1, - 0x1.fffa04p-1, - 0x1.fffa4cp-1, - 0x1.fffa90p-1, - 0x1.fffad0p-1, - 0x1.fffb0ep-1, - 0x1.fffb4ap-1, - 0x1.fffb82p-1, - 0x1.fffbb8p-1, - 0x1.fffbecp-1, - 0x1.fffc1ep-1, - 0x1.fffc4ep-1, - 0x1.fffc7ap-1, - 0x1.fffca6p-1, - 0x1.fffccep-1, - 0x1.fffcf6p-1, - 0x1.fffd1ap-1, - 0x1.fffd3ep-1, - 0x1.fffd60p-1, - 0x1.fffd80p-1, - 0x1.fffda0p-1, - 0x1.fffdbep-1, - 0x1.fffddap-1, - 0x1.fffdf4p-1, - 0x1.fffe0ep-1, - 0x1.fffe26p-1, - 0x1.fffe3ep-1, - 0x1.fffe54p-1, - 0x1.fffe68p-1, - 0x1.fffe7ep-1, - 0x1.fffe90p-1, - 0x1.fffea2p-1, - 0x1.fffeb4p-1, - 0x1.fffec4p-1, - 0x1.fffed4p-1, - 0x1.fffee4p-1, - 0x1.fffef2p-1, - 0x1.ffff00p-1, - 0x1.ffff0cp-1, - 0x1.ffff18p-1, - 0x1.ffff24p-1, - 0x1.ffff30p-1, - 0x1.ffff3ap-1, - 0x1.ffff44p-1, - 0x1.ffff4ep-1, - 0x1.ffff56p-1, - 0x1.ffff60p-1, - 0x1.ffff68p-1, - 0x1.ffff70p-1, - 0x1.ffff78p-1, - 0x1.ffff7ep-1, - 0x1.ffff84p-1, - 0x1.ffff8cp-1, - 0x1.ffff92p-1, - 0x1.ffff98p-1, - 0x1.ffff9cp-1, - 0x1.ffffa2p-1, - 0x1.ffffa6p-1, - 0x1.ffffacp-1, - 0x1.ffffb0p-1, - 0x1.ffffb4p-1, - 0x1.ffffb8p-1, - 0x1.ffffbcp-1, - 0x1.ffffc0p-1, - 0x1.ffffc4p-1, - 0x1.ffffc6p-1, - 0x1.ffffcap-1, - 0x1.ffffccp-1, - 0x1.ffffd0p-1, - 0x1.ffffd2p-1, - 0x1.ffffd4p-1, - 0x1.ffffd6p-1, - 0x1.ffffd8p-1, - 0x1.ffffdcp-1, - 0x1.ffffdep-1, - 0x1.ffffdep-1, - 0x1.ffffe0p-1, - 0x1.ffffe2p-1, - 0x1.ffffe4p-1, - 0x1.ffffe6p-1, - 0x1.ffffe8p-1, - 0x1.ffffe8p-1, - 0x1.ffffeap-1, - 0x1.ffffeap-1, - 0x1.ffffecp-1, - 0x1.ffffeep-1, - 0x1.ffffeep-1, - 0x1.fffff0p-1, - 0x1.fffff0p-1, - 0x1.fffff2p-1, - 0x1.fffff2p-1, - 0x1.fffff2p-1, - 0x1.fffff4p-1, - 0x1.fffff4p-1, - 0x1.fffff4p-1, - 0x1.fffff6p-1, - 0x1.fffff6p-1, - 0x1.fffff6p-1, - 0x1.fffff8p-1, - 0x1.fffff8p-1, - 0x1.fffff8p-1, - 0x1.fffff8p-1, - 0x1.fffffap-1, - 0x1.fffffap-1, - 0x1.fffffap-1, - 0x1.fffffap-1, - 0x1.fffffap-1, - 0x1.fffffap-1, - 0x1.fffffcp-1, - 0x1.fffffcp-1, - 0x1.fffffcp-1, - 0x1.fffffcp-1, - 0x1.fffffcp-1, - 0x1.fffffcp-1, - 0x1.fffffcp-1, - 0x1.fffffcp-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.fffffep-1, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - 0x1.000000p+0, - }, - .scale = { 0x1.20dd76p+0, - 0x1.20d8f2p+0, - 0x1.20cb68p+0, - 0x1.20b4d8p+0, - 0x1.209546p+0, - 0x1.206cb4p+0, - 0x1.203b26p+0, - 0x1.2000a0p+0, - 0x1.1fbd28p+0, - 0x1.1f70c4p+0, - 0x1.1f1b7ap+0, - 0x1.1ebd56p+0, - 0x1.1e565cp+0, - 0x1.1de698p+0, - 0x1.1d6e14p+0, - 0x1.1cecdcp+0, - 0x1.1c62fap+0, - 0x1.1bd07cp+0, - 0x1.1b3572p+0, - 0x1.1a91e6p+0, - 0x1.19e5eap+0, - 0x1.19318cp+0, - 0x1.1874dep+0, - 0x1.17aff0p+0, - 0x1.16e2d8p+0, - 0x1.160da4p+0, - 0x1.153068p+0, - 0x1.144b3cp+0, - 0x1.135e30p+0, - 0x1.12695ep+0, - 0x1.116cd8p+0, - 0x1.1068bap+0, - 0x1.0f5d16p+0, - 0x1.0e4a08p+0, - 0x1.0d2fa6p+0, - 0x1.0c0e0ap+0, - 0x1.0ae550p+0, - 0x1.09b590p+0, - 0x1.087ee4p+0, - 0x1.07416cp+0, - 0x1.05fd3ep+0, - 0x1.04b27cp+0, - 0x1.036140p+0, - 0x1.0209a6p+0, - 0x1.00abd0p+0, - 0x1.fe8fb0p-1, - 0x1.fbbbbep-1, - 0x1.f8dc0ap-1, - 0x1.f5f0cep-1, - 0x1.f2fa4cp-1, - 0x1.eff8c4p-1, - 0x1.ecec78p-1, - 0x1.e9d5a8p-1, - 0x1.e6b498p-1, - 0x1.e38988p-1, - 0x1.e054bep-1, - 0x1.dd167cp-1, - 0x1.d9cf06p-1, - 0x1.d67ea2p-1, - 0x1.d32592p-1, - 0x1.cfc41ep-1, - 0x1.cc5a8ap-1, - 0x1.c8e91cp-1, - 0x1.c5701ap-1, - 0x1.c1efcap-1, - 0x1.be6872p-1, - 0x1.bada5ap-1, - 0x1.b745c6p-1, - 0x1.b3aafcp-1, - 0x1.b00a46p-1, - 0x1.ac63e8p-1, - 0x1.a8b828p-1, - 0x1.a5074ep-1, - 0x1.a1519ep-1, - 0x1.9d9762p-1, - 0x1.99d8dap-1, - 0x1.961650p-1, - 0x1.925008p-1, - 0x1.8e8646p-1, - 0x1.8ab950p-1, - 0x1.86e96ap-1, - 0x1.8316d6p-1, - 0x1.7f41dcp-1, - 0x1.7b6abcp-1, - 0x1.7791b8p-1, - 0x1.73b714p-1, - 0x1.6fdb12p-1, - 0x1.6bfdf0p-1, - 0x1.681ff2p-1, - 0x1.644156p-1, - 0x1.60625cp-1, - 0x1.5c8342p-1, - 0x1.58a446p-1, - 0x1.54c5a6p-1, - 0x1.50e79ep-1, - 0x1.4d0a68p-1, - 0x1.492e42p-1, - 0x1.455366p-1, - 0x1.417a0cp-1, - 0x1.3da26ep-1, - 0x1.39ccc2p-1, - 0x1.35f940p-1, - 0x1.32281ep-1, - 0x1.2e5992p-1, - 0x1.2a8dcep-1, - 0x1.26c508p-1, - 0x1.22ff72p-1, - 0x1.1f3d3cp-1, - 0x1.1b7e98p-1, - 0x1.17c3b6p-1, - 0x1.140cc4p-1, - 0x1.1059eep-1, - 0x1.0cab62p-1, - 0x1.09014cp-1, - 0x1.055bd6p-1, - 0x1.01bb2cp-1, - 0x1.fc3ee6p-2, - 0x1.f511aap-2, - 0x1.edeeeep-2, - 0x1.e6d700p-2, - 0x1.dfca26p-2, - 0x1.d8c8aap-2, - 0x1.d1d2d0p-2, - 0x1.cae8dap-2, - 0x1.c40b08p-2, - 0x1.bd3998p-2, - 0x1.b674c8p-2, - 0x1.afbcd4p-2, - 0x1.a911f0p-2, - 0x1.a27456p-2, - 0x1.9be438p-2, - 0x1.9561c8p-2, - 0x1.8eed36p-2, - 0x1.8886b2p-2, - 0x1.822e66p-2, - 0x1.7be47ap-2, - 0x1.75a91ap-2, - 0x1.6f7c6ap-2, - 0x1.695e8cp-2, - 0x1.634fa6p-2, - 0x1.5d4fd4p-2, - 0x1.575f34p-2, - 0x1.517de6p-2, - 0x1.4bac00p-2, - 0x1.45e99cp-2, - 0x1.4036d0p-2, - 0x1.3a93b2p-2, - 0x1.350052p-2, - 0x1.2f7cc4p-2, - 0x1.2a0916p-2, - 0x1.24a554p-2, - 0x1.1f518ap-2, - 0x1.1a0dc6p-2, - 0x1.14da0ap-2, - 0x1.0fb662p-2, - 0x1.0aa2d0p-2, - 0x1.059f5ap-2, - 0x1.00ac00p-2, - 0x1.f79184p-3, - 0x1.edeb40p-3, - 0x1.e46530p-3, - 0x1.daff4ap-3, - 0x1.d1b982p-3, - 0x1.c893cep-3, - 0x1.bf8e1cp-3, - 0x1.b6a856p-3, - 0x1.ade26cp-3, - 0x1.a53c42p-3, - 0x1.9cb5bep-3, - 0x1.944ec2p-3, - 0x1.8c0732p-3, - 0x1.83deeap-3, - 0x1.7bd5c8p-3, - 0x1.73eba4p-3, - 0x1.6c2056p-3, - 0x1.6473b6p-3, - 0x1.5ce596p-3, - 0x1.5575c8p-3, - 0x1.4e241ep-3, - 0x1.46f066p-3, - 0x1.3fda6cp-3, - 0x1.38e1fap-3, - 0x1.3206dcp-3, - 0x1.2b48dap-3, - 0x1.24a7b8p-3, - 0x1.1e233ep-3, - 0x1.17bb2cp-3, - 0x1.116f48p-3, - 0x1.0b3f52p-3, - 0x1.052b0cp-3, - 0x1.fe6460p-4, - 0x1.f2a902p-4, - 0x1.e72372p-4, - 0x1.dbd32ap-4, - 0x1.d0b7a0p-4, - 0x1.c5d04ap-4, - 0x1.bb1c98p-4, - 0x1.b09bfcp-4, - 0x1.a64de6p-4, - 0x1.9c31c6p-4, - 0x1.92470ap-4, - 0x1.888d1ep-4, - 0x1.7f036cp-4, - 0x1.75a960p-4, - 0x1.6c7e64p-4, - 0x1.6381e2p-4, - 0x1.5ab342p-4, - 0x1.5211ecp-4, - 0x1.499d48p-4, - 0x1.4154bcp-4, - 0x1.3937b2p-4, - 0x1.31458ep-4, - 0x1.297dbap-4, - 0x1.21df9ap-4, - 0x1.1a6a96p-4, - 0x1.131e14p-4, - 0x1.0bf97ep-4, - 0x1.04fc3ap-4, - 0x1.fc4b5ep-5, - 0x1.eeea8cp-5, - 0x1.e1d4d0p-5, - 0x1.d508fap-5, - 0x1.c885e0p-5, - 0x1.bc4a54p-5, - 0x1.b05530p-5, - 0x1.a4a54ap-5, - 0x1.99397ap-5, - 0x1.8e109cp-5, - 0x1.83298ep-5, - 0x1.78832cp-5, - 0x1.6e1c58p-5, - 0x1.63f3f6p-5, - 0x1.5a08e8p-5, - 0x1.505a18p-5, - 0x1.46e66cp-5, - 0x1.3dacd2p-5, - 0x1.34ac36p-5, - 0x1.2be38cp-5, - 0x1.2351c2p-5, - 0x1.1af5d2p-5, - 0x1.12ceb4p-5, - 0x1.0adb60p-5, - 0x1.031ad6p-5, - 0x1.f7182ap-6, - 0x1.e85c44p-6, - 0x1.da0006p-6, - 0x1.cc0180p-6, - 0x1.be5ecep-6, - 0x1.b1160ap-6, - 0x1.a4255ap-6, - 0x1.978ae8p-6, - 0x1.8b44e6p-6, - 0x1.7f5188p-6, - 0x1.73af0cp-6, - 0x1.685bb6p-6, - 0x1.5d55ccp-6, - 0x1.529b9ep-6, - 0x1.482b84p-6, - 0x1.3e03d8p-6, - 0x1.3422fep-6, - 0x1.2a875cp-6, - 0x1.212f62p-6, - 0x1.181984p-6, - 0x1.0f443ep-6, - 0x1.06ae14p-6, - 0x1.fcab14p-7, - 0x1.ec7262p-7, - 0x1.dcaf36p-7, - 0x1.cd5ecap-7, - 0x1.be7e5ap-7, - 0x1.b00b38p-7, - 0x1.a202bep-7, - 0x1.94624ep-7, - 0x1.87275ep-7, - 0x1.7a4f6ap-7, - 0x1.6dd7fep-7, - 0x1.61beaep-7, - 0x1.56011cp-7, - 0x1.4a9cf6p-7, - 0x1.3f8ff6p-7, - 0x1.34d7dcp-7, - 0x1.2a727ap-7, - 0x1.205dacp-7, - 0x1.169756p-7, - 0x1.0d1d6ap-7, - 0x1.03ede2p-7, - 0x1.f60d8ap-8, - 0x1.e4cc4ap-8, - 0x1.d4143ap-8, - 0x1.c3e1a6p-8, - 0x1.b430ecp-8, - 0x1.a4fe84p-8, - 0x1.9646f4p-8, - 0x1.8806d8p-8, - 0x1.7a3adep-8, - 0x1.6cdfccp-8, - 0x1.5ff276p-8, - 0x1.536fc2p-8, - 0x1.4754acp-8, - 0x1.3b9e40p-8, - 0x1.30499cp-8, - 0x1.2553eep-8, - 0x1.1aba78p-8, - 0x1.107a8cp-8, - 0x1.06918cp-8, - 0x1.f9f9d0p-9, - 0x1.e77448p-9, - 0x1.d58da6p-9, - 0x1.c4412cp-9, - 0x1.b38a3ap-9, - 0x1.a36454p-9, - 0x1.93cb12p-9, - 0x1.84ba30p-9, - 0x1.762d84p-9, - 0x1.682100p-9, - 0x1.5a90b0p-9, - 0x1.4d78bcp-9, - 0x1.40d564p-9, - 0x1.34a306p-9, - 0x1.28de12p-9, - 0x1.1d8318p-9, - 0x1.128ebap-9, - 0x1.07fdb4p-9, - 0x1.fb99b8p-10, - 0x1.e7f232p-10, - 0x1.d4fed8p-10, - 0x1.c2b9d0p-10, - 0x1.b11d70p-10, - 0x1.a02436p-10, - 0x1.8fc8c8p-10, - 0x1.8005f0p-10, - 0x1.70d6a4p-10, - 0x1.6235fcp-10, - 0x1.541f34p-10, - 0x1.468daep-10, - 0x1.397ceep-10, - 0x1.2ce898p-10, - 0x1.20cc76p-10, - 0x1.15246ep-10, - 0x1.09ec86p-10, - 0x1.fe41cep-11, - 0x1.e97ba4p-11, - 0x1.d57f52p-11, - 0x1.c245d4p-11, - 0x1.afc85ep-11, - 0x1.9e0058p-11, - 0x1.8ce75ep-11, - 0x1.7c7744p-11, - 0x1.6caa0ep-11, - 0x1.5d79ecp-11, - 0x1.4ee142p-11, - 0x1.40daa4p-11, - 0x1.3360ccp-11, - 0x1.266ea8p-11, - 0x1.19ff46p-11, - 0x1.0e0de8p-11, - 0x1.0295f0p-11, - 0x1.ef25d4p-12, - 0x1.da0110p-12, - 0x1.c5b542p-12, - 0x1.b23a5ap-12, - 0x1.9f8894p-12, - 0x1.8d986ap-12, - 0x1.7c629ap-12, - 0x1.6be022p-12, - 0x1.5c0a38p-12, - 0x1.4cda54p-12, - 0x1.3e4a24p-12, - 0x1.305390p-12, - 0x1.22f0b4p-12, - 0x1.161be4p-12, - 0x1.09cfa4p-12, - 0x1.fc0d56p-13, - 0x1.e577bcp-13, - 0x1.cfd4a6p-13, - 0x1.bb1a96p-13, - 0x1.a74068p-13, - 0x1.943d4ap-13, - 0x1.8208bcp-13, - 0x1.709a8ep-13, - 0x1.5feadap-13, - 0x1.4ff208p-13, - 0x1.40a8c2p-13, - 0x1.3207fcp-13, - 0x1.2408eap-13, - 0x1.16a502p-13, - 0x1.09d5f8p-13, - 0x1.fb2b7ap-14, - 0x1.e3bcf4p-14, - 0x1.cd5528p-14, - 0x1.b7e946p-14, - 0x1.a36eecp-14, - 0x1.8fdc1cp-14, - 0x1.7d2738p-14, - 0x1.6b4702p-14, - 0x1.5a329cp-14, - 0x1.49e178p-14, - 0x1.3a4b60p-14, - 0x1.2b6876p-14, - 0x1.1d3120p-14, - 0x1.0f9e1cp-14, - 0x1.02a868p-14, - 0x1.ec929ap-15, - 0x1.d4f4b4p-15, - 0x1.be6abcp-15, - 0x1.a8e8ccp-15, - 0x1.94637ep-15, - 0x1.80cfdcp-15, - 0x1.6e2368p-15, - 0x1.5c540cp-15, - 0x1.4b581cp-15, - 0x1.3b2652p-15, - 0x1.2bb5ccp-15, - 0x1.1cfe02p-15, - 0x1.0ef6c4p-15, - 0x1.019842p-15, - 0x1.e9b5e8p-16, - 0x1.d16f58p-16, - 0x1.ba4f04p-16, - 0x1.a447b8p-16, - 0x1.8f4cccp-16, - 0x1.7b5224p-16, - 0x1.684c22p-16, - 0x1.562facp-16, - 0x1.44f21ep-16, - 0x1.34894ap-16, - 0x1.24eb72p-16, - 0x1.160f44p-16, - 0x1.07ebd2p-16, - 0x1.f4f12ep-17, - 0x1.db5ad0p-17, - 0x1.c304f0p-17, - 0x1.abe09ep-17, - 0x1.95df98p-17, - 0x1.80f43ap-17, - 0x1.6d1178p-17, - 0x1.5a2ae0p-17, - 0x1.483488p-17, - 0x1.372310p-17, - 0x1.26eb9ep-17, - 0x1.1783cep-17, - 0x1.08e1bap-17, - 0x1.f5f7d8p-18, - 0x1.db92b6p-18, - 0x1.c282cep-18, - 0x1.aab7acp-18, - 0x1.94219cp-18, - 0x1.7eb1a2p-18, - 0x1.6a5972p-18, - 0x1.570b6ap-18, - 0x1.44ba86p-18, - 0x1.335a62p-18, - 0x1.22df2ap-18, - 0x1.133d96p-18, - 0x1.046aeap-18, - 0x1.ecb9d0p-19, - 0x1.d21398p-19, - 0x1.b8d094p-19, - 0x1.a0df10p-19, - 0x1.8a2e26p-19, - 0x1.74adc8p-19, - 0x1.604ea8p-19, - 0x1.4d0232p-19, - 0x1.3aba86p-19, - 0x1.296a70p-19, - 0x1.190562p-19, - 0x1.097f62p-19, - 0x1.f59a20p-20, - 0x1.d9c736p-20, - 0x1.bf716cp-20, - 0x1.a6852cp-20, - 0x1.8eefd8p-20, - 0x1.789fb8p-20, - 0x1.6383f8p-20, - 0x1.4f8c96p-20, - 0x1.3caa62p-20, - 0x1.2acee2p-20, - 0x1.19ec60p-20, - 0x1.09f5d0p-20, - 0x1.f5bd96p-21, - 0x1.d9371ep-21, - 0x1.be41dep-21, - 0x1.a4c89ep-21, - 0x1.8cb738p-21, - 0x1.75fa8ep-21, - 0x1.608078p-21, - 0x1.4c37c0p-21, - 0x1.39100ep-21, - 0x1.26f9e0p-21, - 0x1.15e682p-21, - 0x1.05c804p-21, - 0x1.ed2254p-22, - 0x1.d06ad6p-22, - 0x1.b551c8p-22, - 0x1.9bc0a0p-22, - 0x1.83a200p-22, - 0x1.6ce1aap-22, - 0x1.576c72p-22, - 0x1.43302cp-22, - 0x1.301ba2p-22, - 0x1.1e1e86p-22, - 0x1.0d2966p-22, - 0x1.fa5b50p-23, - 0x1.dc3ae4p-23, - 0x1.bfd756p-23, - 0x1.a517dap-23, - 0x1.8be4f8p-23, - 0x1.74287ep-23, - 0x1.5dcd66p-23, - 0x1.48bfd4p-23, - 0x1.34ecf8p-23, - 0x1.224310p-23, - 0x1.10b148p-23, - }, -}; diff --git a/sysdeps/aarch64/fpu/vecmath_config.h b/sysdeps/aarch64/fpu/vecmath_config.h index 7f0a8aa5f2..862eefaf8f 100644 --- a/sysdeps/aarch64/fpu/vecmath_config.h +++ b/sysdeps/aarch64/fpu/vecmath_config.h @@ -75,49 +75,37 @@ extern const struct v_log10_data } table[1 << V_LOG10_TABLE_BITS]; } __v_log10_data attribute_hidden; -extern const struct erff_data +extern const struct v_erff_data { struct { float erf, scale; } tab[513]; -} __erff_data attribute_hidden; +} __v_erff_data attribute_hidden; -extern const struct sv_erff_data -{ - float erf[513]; - float scale[513]; -} __sv_erff_data attribute_hidden; - -extern const struct erf_data +extern const struct v_erf_data { struct { double erf, scale; } tab[769]; -} __erf_data attribute_hidden; - -extern const struct sv_erf_data -{ - double erf[769]; - double scale[769]; -} __sv_erf_data attribute_hidden; +} __v_erf_data attribute_hidden; -extern const struct erfc_data +extern const struct v_erfc_data { struct { double erfc, scale; } tab[3488]; -} __erfc_data attribute_hidden; +} __v_erfc_data attribute_hidden; -extern const struct erfcf_data +extern const struct v_erfcf_data { struct { float erfc, scale; } tab[645]; -} __erfcf_data attribute_hidden; +} __v_erfcf_data attribute_hidden; /* Some data for AdvSIMD and SVE pow's internal exp and log. */ #define V_POW_EXP_TABLE_BITS 8 diff --git a/sysdeps/aarch64/libm-test-ulps b/sysdeps/aarch64/libm-test-ulps index 846fb2c29e..c523d45802 100644 --- a/sysdeps/aarch64/libm-test-ulps +++ b/sysdeps/aarch64/libm-test-ulps @@ -801,6 +801,7 @@ float: 1 ldouble: 1 Function: Imaginary part of "csin": +float: 1 ldouble: 1 Function: Real part of "csin_downward": @@ -1083,22 +1084,18 @@ ldouble: 3 Function: "exp10m1": double: 4 -float: 2 ldouble: 3 Function: "exp10m1_downward": double: 3 -float: 3 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 3 ldouble: 6 Function: "exp10m1_upward": double: 5 -float: 3 ldouble: 6 Function: "exp2": @@ -1131,22 +1128,18 @@ ldouble: 2 Function: "exp2m1": double: 2 -float: 2 ldouble: 2 Function: "exp2m1_downward": double: 3 -float: 3 ldouble: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 ldouble: 4 Function: "exp2m1_upward": double: 3 -float: 3 ldouble: 5 Function: "exp_advsimd": @@ -1171,7 +1164,6 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 2 Function: "expm1_advsimd": @@ -1180,7 +1172,6 @@ float: 1 Function: "expm1_downward": double: 1 -float: 1 ldouble: 2 Function: "expm1_sve": @@ -1189,12 +1180,10 @@ float: 1 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 ldouble: 3 Function: "gamma": @@ -1357,27 +1346,22 @@ ldouble: 1 Function: "log10p1": double: 2 -float: 2 ldouble: 3 Function: "log10p1_downward": double: 2 -float: 3 ldouble: 4 Function: "log10p1_towardzero": double: 3 -float: 2 ldouble: 3 Function: "log10p1_upward": double: 2 -float: 3 ldouble: 4 Function: "log1p": double: 1 -float: 1 ldouble: 3 Function: "log1p_advsimd": @@ -1386,7 +1370,6 @@ float: 1 Function: "log1p_downward": double: 1 -float: 2 ldouble: 3 Function: "log1p_sve": @@ -1395,12 +1378,10 @@ float: 1 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1433,22 +1414,18 @@ ldouble: 1 Function: "log2p1": double: 2 -float: 2 ldouble: 3 Function: "log2p1_downward": double: 2 -float: 2 ldouble: 3 Function: "log2p1_towardzero": double: 2 -float: 2 ldouble: 2 Function: "log2p1_upward": double: 2 -float: 2 ldouble: 3 Function: "log_advsimd": @@ -1474,22 +1451,18 @@ ldouble: 1 Function: "logp1": double: 1 -float: 1 ldouble: 3 Function: "logp1_downward": double: 1 -float: 2 ldouble: 3 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "pow": @@ -1653,22 +1626,18 @@ ldouble: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 4 Function: "tgamma_downward": double: 9 -float: 7 ldouble: 5 Function: "tgamma_towardzero": double: 9 -float: 7 ldouble: 5 Function: "tgamma_upward": double: 9 -float: 8 ldouble: 4 Function: "y0": diff --git a/sysdeps/alpha/fpu/libm-test-ulps b/sysdeps/alpha/fpu/libm-test-ulps index e28c2af683..212c52c8cc 100644 --- a/sysdeps/alpha/fpu/libm-test-ulps +++ b/sysdeps/alpha/fpu/libm-test-ulps @@ -1034,22 +1034,18 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 2 Function: "expm1_downward": double: 1 -float: 1 ldouble: 2 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 ldouble: 3 Function: "gamma": @@ -1206,22 +1202,18 @@ ldouble: 3 Function: "log1p": double: 1 -float: 1 ldouble: 3 Function: "log1p_downward": double: 2 -float: 2 ldouble: 3 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1271,22 +1263,18 @@ ldouble: 1 Function: "logp1": double: 1 -float: 1 ldouble: 3 Function: "logp1_downward": double: 2 -float: 2 ldouble: 3 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "pow": @@ -1410,22 +1398,18 @@ ldouble: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 4 Function: "tgamma_downward": double: 9 -float: 7 ldouble: 5 Function: "tgamma_towardzero": double: 9 -float: 7 ldouble: 5 Function: "tgamma_upward": double: 9 -float: 8 ldouble: 4 Function: "y0": diff --git a/sysdeps/arc/bits/endianness.h b/sysdeps/arc/bits/endianness.h index 8f17ca84b4..4a6e7d4c15 100644 --- a/sysdeps/arc/bits/endianness.h +++ b/sysdeps/arc/bits/endianness.h @@ -5,11 +5,7 @@ # error "Never use <bits/endian.h> directly; include <endian.h> instead." #endif -/* ARC has selectable endianness. */ -#ifdef __BIG_ENDIAN__ -# define __BYTE_ORDER __BIG_ENDIAN -#else -# define __BYTE_ORDER __LITTLE_ENDIAN -#endif +/* Only little-endian ARC is supported. */ +#define __BYTE_ORDER __LITTLE_ENDIAN #endif /* bits/endianness.h */ diff --git a/sysdeps/arc/configure b/sysdeps/arc/configure index 08e4f23f89..b4192983bf 100644 --- a/sysdeps/arc/configure +++ b/sysdeps/arc/configure @@ -10,7 +10,7 @@ libc_cv_asm_line_sep='`' printf "%s\n" "#define ASM_LINE_SEP $libc_cv_asm_line_sep" >>confdefs.h -# For big endian ABI, generate a symbol for selecting right dynamic linker +# ARC big endian ABI is no longer supported. { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep -e" >&5 @@ -175,13 +175,8 @@ fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arc_be" >&5 printf "%s\n" "$libc_cv_arc_be" >&6; } if test $libc_cv_arc_be = yes; then - # For shlib-versions. - printf "%s\n" "#define HAVE_ARC_BE 1" >>confdefs.h - - config_vars="$config_vars -default-abi = arcbe" -else - config_vars="$config_vars -default-abi = arcle" + as_fn_error $? "big-endian not supported" "$LINENO" 5 fi +config_vars="$config_vars +default-abi = arcle" diff --git a/sysdeps/arc/configure.ac b/sysdeps/arc/configure.ac index 619da4e088..48dc6f5b9b 100644 --- a/sysdeps/arc/configure.ac +++ b/sysdeps/arc/configure.ac @@ -9,7 +9,7 @@ libc_cv_have_sdata_section=no libc_cv_asm_line_sep='`' AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep) -# For big endian ABI, generate a symbol for selecting right dynamic linker +# ARC big endian ABI is no longer supported. AC_CACHE_CHECK([for big endian], [libc_cv_arc_be], [AC_EGREP_CPP(yes,[#ifdef __BIG_ENDIAN__ @@ -17,9 +17,6 @@ AC_CACHE_CHECK([for big endian], #endif ], libc_cv_arc_be=yes, libc_cv_arc_be=no)]) if test $libc_cv_arc_be = yes; then - # For shlib-versions. - AC_DEFINE(HAVE_ARC_BE) - LIBC_CONFIG_VAR([default-abi], [arcbe]) -else - LIBC_CONFIG_VAR([default-abi], [arcle]) + AC_MSG_ERROR([big-endian not supported]) fi +LIBC_CONFIG_VAR([default-abi], [arcle]) diff --git a/sysdeps/arc/fpu/libm-test-ulps b/sysdeps/arc/fpu/libm-test-ulps index 7e2c2dff13..7812a11b5b 100644 --- a/sysdeps/arc/fpu/libm-test-ulps +++ b/sysdeps/arc/fpu/libm-test-ulps @@ -789,19 +789,15 @@ float: 1 Function: "exp10m1": double: 4 -float: 2 Function: "exp10m1_downward": double: 3 -float: 3 Function: "exp10m1_towardzero": double: 2 -float: 3 Function: "exp10m1_upward": double: 5 -float: 3 Function: "exp2": double: 1 @@ -819,19 +815,15 @@ float: 1 Function: "exp2m1": double: 2 -float: 2 Function: "exp2m1_downward": double: 3 -float: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 Function: "exp2m1_upward": double: 3 -float: 3 Function: "exp_downward": double: 1 @@ -847,19 +839,15 @@ float: 2 Function: "expm1": double: 2 -float: 2 Function: "expm1_downward": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "expm1_upward": double: 2 -float: 2 Function: "gamma": double: 7 @@ -977,35 +965,27 @@ float: 4 Function: "log10p1": double: 2 -float: 2 Function: "log10p1_downward": double: 2 -float: 3 Function: "log10p1_towardzero": double: 3 -float: 2 Function: "log10p1_upward": double: 2 -float: 3 Function: "log1p": double: 1 -float: 1 Function: "log1p_downward": double: 1 -float: 2 Function: "log1p_towardzero": double: 2 -float: 2 Function: "log1p_upward": double: 2 -float: 2 Function: "log2": double: 2 @@ -1021,19 +1001,15 @@ float: 1 Function: "log2p1": double: 2 -float: 2 Function: "log2p1_downward": double: 2 -float: 2 Function: "log2p1_towardzero": double: 2 -float: 2 Function: "log2p1_upward": double: 2 -float: 2 Function: "log_towardzero": double: 1 @@ -1045,19 +1021,15 @@ float: 1 Function: "logp1": double: 1 -float: 1 Function: "logp1_downward": double: 1 -float: 2 Function: "logp1_towardzero": double: 2 -float: 2 Function: "logp1_upward": double: 2 -float: 2 Function: "pow": double: 1 @@ -1157,19 +1129,15 @@ float: 3 Function: "tgamma": double: 9 -float: 9 Function: "tgamma_downward": double: 9 -float: 9 Function: "tgamma_towardzero": double: 9 -float: 8 Function: "tgamma_upward": double: 9 -float: 9 Function: "y0": double: 3 diff --git a/sysdeps/arc/nofpu/libm-test-ulps b/sysdeps/arc/nofpu/libm-test-ulps index d9d6c76c3e..d0cfa46c3d 100644 --- a/sysdeps/arc/nofpu/libm-test-ulps +++ b/sysdeps/arc/nofpu/libm-test-ulps @@ -194,18 +194,15 @@ float: 1 Function: "exp10m1": double: 3 -float: 2 Function: "exp2": double: 1 Function: "exp2m1": double: 2 -float: 2 Function: "expm1": double: 1 -float: 1 Function: "gamma": double: 4 @@ -237,11 +234,9 @@ float: 2 Function: "log10p1": double: 1 -float: 2 Function: "log1p": double: 1 -float: 1 Function: "log2": double: 2 @@ -249,11 +244,9 @@ float: 1 Function: "log2p1": double: 1 -float: 2 Function: "logp1": double: 1 -float: 1 Function: "pow": double: 1 @@ -279,7 +272,6 @@ float: 2 Function: "tgamma": double: 9 -float: 8 Function: "y0": double: 3 diff --git a/sysdeps/arm/libm-test-ulps b/sysdeps/arm/libm-test-ulps index 100e9d1956..6cdd3d53d6 100644 --- a/sysdeps/arm/libm-test-ulps +++ b/sysdeps/arm/libm-test-ulps @@ -574,6 +574,9 @@ Function: Real part of "csin": double: 1 float: 1 +Function: Imaginary part of "csin": +float: 1 + Function: Real part of "csin_downward": double: 3 float: 3 @@ -779,19 +782,15 @@ float: 1 Function: "exp10m1": double: 3 -float: 2 Function: "exp10m1_downward": double: 3 -float: 3 Function: "exp10m1_towardzero": double: 2 -float: 3 Function: "exp10m1_upward": double: 4 -float: 4 Function: "exp2": double: 1 @@ -811,19 +810,15 @@ float: 1 Function: "exp2m1": double: 2 -float: 2 Function: "exp2m1_downward": double: 3 -float: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 Function: "exp2m1_upward": double: 3 -float: 3 Function: "exp_downward": double: 1 @@ -839,19 +834,15 @@ float: 1 Function: "expm1": double: 1 -float: 1 Function: "expm1_downward": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "expm1_upward": double: 1 -float: 1 Function: "gamma": double: 4 @@ -967,35 +958,27 @@ float: 2 Function: "log10p1": double: 1 -float: 2 Function: "log10p1_downward": double: 2 -float: 3 Function: "log10p1_towardzero": double: 3 -float: 2 Function: "log10p1_upward": double: 2 -float: 3 Function: "log1p": double: 1 -float: 1 Function: "log1p_downward": double: 2 -float: 2 Function: "log1p_towardzero": double: 2 -float: 2 Function: "log1p_upward": double: 2 -float: 2 Function: "log2": double: 2 @@ -1015,19 +998,15 @@ float: 3 Function: "log2p1": double: 1 -float: 2 Function: "log2p1_downward": double: 2 -float: 2 Function: "log2p1_towardzero": double: 2 -float: 2 Function: "log2p1_upward": double: 2 -float: 2 Function: "log_downward": float: 2 @@ -1041,19 +1020,15 @@ float: 2 Function: "logp1": double: 1 -float: 1 Function: "logp1_downward": double: 2 -float: 2 Function: "logp1_towardzero": double: 2 -float: 2 Function: "logp1_upward": double: 2 -float: 2 Function: "pow": double: 1 @@ -1152,19 +1127,15 @@ float: 3 Function: "tgamma": double: 9 -float: 8 Function: "tgamma_downward": double: 9 -float: 7 Function: "tgamma_towardzero": double: 9 -float: 7 Function: "tgamma_upward": double: 9 -float: 8 Function: "y0": double: 3 diff --git a/sysdeps/csky/fpu/libm-test-ulps b/sysdeps/csky/fpu/libm-test-ulps index fc634f89ca..a7b2bec17e 100644 --- a/sysdeps/csky/fpu/libm-test-ulps +++ b/sysdeps/csky/fpu/libm-test-ulps @@ -799,19 +799,15 @@ float: 1 Function: "expm1": double: 1 -float: 1 Function: "expm1_downward": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "expm1_upward": double: 1 -float: 1 Function: "gamma": double: 4 @@ -923,19 +919,15 @@ float: 2 Function: "log1p": double: 1 -float: 1 Function: "log1p_downward": double: 2 -float: 2 Function: "log1p_towardzero": double: 2 -float: 2 Function: "log1p_upward": double: 2 -float: 2 Function: "log2": double: 2 @@ -952,19 +944,15 @@ double: 3 Function: "logp1": double: 1 -float: 1 Function: "logp1_downward": double: 2 -float: 2 Function: "logp1_towardzero": double: 2 -float: 2 Function: "logp1_upward": double: 2 -float: 2 Function: "pow": double: 1 @@ -1061,19 +1049,15 @@ float: 3 Function: "tgamma": double: 9 -float: 8 Function: "tgamma_downward": double: 8 -float: 7 Function: "tgamma_towardzero": double: 9 -float: 7 Function: "tgamma_upward": double: 9 -float: 8 Function: "y0": double: 3 diff --git a/sysdeps/csky/nofpu/libm-test-ulps b/sysdeps/csky/nofpu/libm-test-ulps index a1e28c8ee0..4e4451a5d2 100644 --- a/sysdeps/csky/nofpu/libm-test-ulps +++ b/sysdeps/csky/nofpu/libm-test-ulps @@ -797,19 +797,15 @@ double: 1 Function: "expm1": double: 1 -float: 1 Function: "expm1_downward": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "expm1_upward": double: 1 -float: 1 Function: "gamma": double: 4 @@ -924,19 +920,15 @@ float: 2 Function: "log1p": double: 1 -float: 1 Function: "log1p_downward": double: 2 -float: 2 Function: "log1p_towardzero": double: 2 -float: 2 Function: "log1p_upward": double: 2 -float: 2 Function: "log2": double: 2 @@ -966,19 +958,15 @@ float: 2 Function: "logp1": double: 1 -float: 1 Function: "logp1_downward": double: 2 -float: 2 Function: "logp1_towardzero": double: 2 -float: 2 Function: "logp1_upward": double: 2 -float: 2 Function: "pow": double: 1 @@ -1092,19 +1080,15 @@ float: 3 Function: "tgamma": double: 9 -float: 8 Function: "tgamma_downward": double: 5 -float: 5 Function: "tgamma_towardzero": double: 5 -float: 4 Function: "tgamma_upward": double: 4 -float: 4 Function: "y0": double: 3 diff --git a/sysdeps/generic/internal-signals.h b/sysdeps/generic/internal-signals.h index 3db100be10..e031a96bac 100644 --- a/sysdeps/generic/internal-signals.h +++ b/sysdeps/generic/internal-signals.h @@ -20,6 +20,7 @@ # define __INTERNAL_SIGNALS_H #include <signal.h> +#include <internal-sigset.h> #include <sigsetops.h> #include <stdbool.h> #include <stddef.h> @@ -39,10 +40,32 @@ clear_internal_signals (sigset_t *set) { } -typedef sigset_t internal_sigset_t; - #define internal_sigemptyset(__s) __sigemptyset (__s) +#define internal_sigfillset(__s) __sigfillset (__s) #define internal_sigaddset(__s, __i) __sigaddset (__s, __i) #define internal_sigprocmask(__h, __s, __o) __sigprocmask (__h, __s, __o) +static inline void +internal_signal_block_all (internal_sigset_t *oset) +{ + internal_sigset_t set; + internal_sigfillset (&set); + internal_sigprocmask (SIG_BLOCK, &set, oset); +} + +static inline void +internal_signal_restore_set (const internal_sigset_t *set) +{ + internal_sigprocmask (SIG_SETMASK, set, NULL); +} + +static inline void +internal_signal_unblock_signal (int sig) +{ + internal_sigset_t set; + internal_sigemptyset (&set); + internal_sigaddset (&set, sig); + internal_sigprocmask (SIG_UNBLOCK, &set, NULL); +} + #endif /* __INTERNAL_SIGNALS_H */ diff --git a/sysdeps/generic/internal-sigset.h b/sysdeps/generic/internal-sigset.h new file mode 100644 index 0000000000..80279ffc47 --- /dev/null +++ b/sysdeps/generic/internal-sigset.h @@ -0,0 +1,26 @@ +/* Internal sigset_t definition. + Copyright (C) 2022-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#ifndef _INTERNAL_SIGSET_H +#define _INTERNAL_SIGSET_H + +#include <signal.h> + +typedef sigset_t internal_sigset_t; + +#endif diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index 259ce2e7d6..91447a5e77 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -1014,6 +1014,13 @@ extern void _dl_relocate_object (struct link_map *map, int reloc_mode, int consider_profiling) attribute_hidden; +/* Perform relocation, but do not apply RELRO. Does not check + L->relocated. Otherwise the same as _dl_relocate_object. */ +void _dl_relocate_object_no_relro (struct link_map *map, + struct r_scope_elem *scope[], + int reloc_mode, int consider_profiling) + attribute_hidden; + /* Protect PT_GNU_RELRO area. */ extern void _dl_protect_relro (struct link_map *map) attribute_hidden; diff --git a/sysdeps/hppa/fpu/libm-test-ulps b/sysdeps/hppa/fpu/libm-test-ulps index 4f0709c817..021a2a482c 100644 --- a/sysdeps/hppa/fpu/libm-test-ulps +++ b/sysdeps/hppa/fpu/libm-test-ulps @@ -798,19 +798,15 @@ float: 1 Function: "exp10m1": double: 4 -float: 2 Function: "exp10m1_downward": double: 3 -float: 3 Function: "exp10m1_towardzero": double: 2 -float: 3 Function: "exp10m1_upward": double: 5 -float: 4 Function: "exp2": double: 1 @@ -830,19 +826,15 @@ float: 1 Function: "exp2m1": double: 2 -float: 2 Function: "exp2m1_downward": double: 3 -float: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 Function: "exp2m1_upward": double: 3 -float: 3 Function: "exp_downward": double: 1 @@ -858,20 +850,16 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 1 Function: "expm1_downward": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "expm1_upward": double: 1 -float: 1 Function: "gamma": double: 4 @@ -993,35 +981,27 @@ float: 2 Function: "log10p1": double: 2 -float: 2 Function: "log10p1_downward": double: 2 -float: 3 Function: "log10p1_towardzero": double: 3 -float: 2 Function: "log10p1_upward": double: 2 -float: 3 Function: "log1p": double: 1 -float: 1 Function: "log1p_downward": double: 2 -float: 2 Function: "log1p_towardzero": double: 2 -float: 2 Function: "log1p_upward": double: 2 -float: 2 Function: "log2": double: 2 @@ -1041,19 +1021,15 @@ float: 3 Function: "log2p1": double: 2 -float: 2 Function: "log2p1_downward": double: 2 -float: 2 Function: "log2p1_towardzero": double: 2 -float: 2 Function: "log2p1_upward": double: 2 -float: 2 Function: "log_downward": float: 2 @@ -1067,19 +1043,15 @@ float: 2 Function: "logp1": double: 1 -float: 1 Function: "logp1_downward": double: 2 -float: 2 Function: "logp1_towardzero": double: 2 -float: 2 Function: "logp1_upward": double: 2 -float: 2 Function: "pow": double: 1 @@ -1181,20 +1153,16 @@ float: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 1 Function: "tgamma_downward": double: 9 -float: 7 Function: "tgamma_towardzero": double: 9 -float: 7 Function: "tgamma_upward": double: 9 -float: 8 Function: "y0": double: 3 diff --git a/sysdeps/htl/pthreadP.h b/sysdeps/htl/pthreadP.h index cf8a2efe86..b0c9ceb23a 100644 --- a/sysdeps/htl/pthreadP.h +++ b/sysdeps/htl/pthreadP.h @@ -92,6 +92,8 @@ int __pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr, int __pthread_attr_getstack (const pthread_attr_t *, void **, size_t *); void __pthread_testcancel (void); +#define __pthread_raise_internal(__sig) raise (__sig) + libc_hidden_proto (__pthread_self) #if IS_IN (libpthread) diff --git a/sysdeps/i386/fpu/e_log10f.S b/sysdeps/i386/fpu/e_log10f.S deleted file mode 100644 index 47f82e1993..0000000000 --- a/sysdeps/i386/fpu/e_log10f.S +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Public domain. - */ - -#include <machine/asm.h> -#include <libm-alias-finite.h> - - .section .rodata.cst8,"aM",@progbits,8 - - .p2align 3 - .type one,@object -one: .double 1.0 - ASM_SIZE_DIRECTIVE(one) - /* It is not important that this constant is precise. It is only - a value which is known to be on the safe side for using the - fyl2xp1 instruction. */ - .type limit,@object -limit: .double 0.29 - ASM_SIZE_DIRECTIVE(limit) - - -#ifdef PIC -# define MO(op) op##@GOTOFF(%edx) -#else -# define MO(op) op -#endif - - .text -ENTRY(__ieee754_log10f) - fldlg2 // log10(2) - flds 4(%esp) // x : log10(2) -#ifdef PIC - LOAD_PIC_REG (dx) -#endif - fxam - fnstsw - fld %st // x : x : log10(2) - sahf - jc 3f // in case x is NaN or ±Inf -4: fsubl MO(one) // x-1 : x : log10(2) - fld %st // x-1 : x-1 : x : log10(2) - fabs // |x-1| : x-1 : x : log10(2) - fcompl MO(limit) // x-1 : x : log10(2) - fnstsw // x-1 : x : log10(2) - andb $0x45, %ah - jz 2f - fxam - fnstsw - andb $0x45, %ah - cmpb $0x40, %ah - jne 5f - fabs // log10(1) is +0 in all rounding modes. -5: fstp %st(1) // x-1 : log10(2) - fyl2xp1 // log10(x) - ret - -2: fstp %st(0) // x : log10(2) - fyl2x // log10(x) - ret - -3: jp 4b // in case x is ±Inf - fstp %st(1) - fstp %st(1) - ret -END (__ieee754_log10f) -libm_alias_finite (__ieee754_log10f, __log10f) diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps index 9e46244752..a77ded2648 100644 --- a/sysdeps/i386/fpu/libm-test-ulps +++ b/sysdeps/i386/fpu/libm-test-ulps @@ -1155,25 +1155,21 @@ ldouble: 2 Function: "exp10m1": double: 3 -float: 1 float128: 3 ldouble: 4 Function: "exp10m1_downward": double: 3 -float: 3 float128: 6 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 2 float128: 6 ldouble: 5 Function: "exp10m1_upward": double: 5 -float: 3 float128: 6 ldouble: 6 @@ -1198,25 +1194,21 @@ ldouble: 1 Function: "exp2m1": double: 2 -float: 1 float128: 2 ldouble: 3 Function: "exp2m1_downward": double: 3 -float: 3 float128: 3 ldouble: 6 Function: "exp2m1_towardzero": double: 3 -float: 2 float128: 4 ldouble: 5 Function: "exp2m1_upward": double: 3 -float: 3 float128: 5 ldouble: 6 @@ -1242,19 +1234,16 @@ ldouble: 3 Function: "expm1_downward": double: 1 -float: 1 float128: 2 ldouble: 4 Function: "expm1_towardzero": double: 1 -float: 1 float128: 4 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 float128: 3 ldouble: 4 @@ -1425,25 +1414,21 @@ ldouble: 1 Function: "log10p1": double: 1 -float: 2 float128: 3 ldouble: 4 Function: "log10p1_downward": double: 2 -float: 3 float128: 4 ldouble: 8 Function: "log10p1_towardzero": double: 2 -float: 1 float128: 3 ldouble: 8 Function: "log10p1_upward": double: 2 -float: 3 float128: 4 ldouble: 6 @@ -1454,19 +1439,16 @@ ldouble: 2 Function: "log1p_downward": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "log1p_towardzero": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "log1p_upward": double: 1 -float: 1 float128: 2 ldouble: 3 @@ -1495,25 +1477,21 @@ ldouble: 1 Function: "log2p1": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "log2p1_downward": double: 2 -float: 2 float128: 3 ldouble: 3 Function: "log2p1_towardzero": double: 2 -float: 2 float128: 2 ldouble: 3 Function: "log2p1_upward": double: 2 -float: 2 float128: 3 ldouble: 5 @@ -1539,19 +1517,16 @@ ldouble: 2 Function: "logp1_downward": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "logp1_towardzero": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "logp1_upward": double: 1 -float: 1 float128: 2 ldouble: 3 @@ -1699,25 +1674,21 @@ ldouble: 4 Function: "tgamma": double: 9 -float: 8 float128: 4 ldouble: 5 Function: "tgamma_downward": double: 9 -float: 7 float128: 5 ldouble: 6 Function: "tgamma_towardzero": double: 9 -float: 7 float128: 5 ldouble: 6 Function: "tgamma_upward": double: 9 -float: 8 float128: 4 ldouble: 5 diff --git a/sysdeps/i386/fpu/s_expm1f.S b/sysdeps/i386/fpu/s_expm1f.S deleted file mode 100644 index a1cb5bf0ab..0000000000 --- a/sysdeps/i386/fpu/s_expm1f.S +++ /dev/null @@ -1,112 +0,0 @@ -/* ix87 specific implementation of exp(x)-1. - Copyright (C) 1996-2024 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - - /* Using: e^x - 1 = 2^(x * log2(e)) - 1 */ - -#include <sysdep.h> -#include <machine/asm.h> -#include <i386-math-asm.h> -#include <libm-alias-float.h> - - .section .rodata - - .align ALIGNARG(4) - .type minus1,@object -minus1: .double -1.0 - ASM_SIZE_DIRECTIVE(minus1) - .type one,@object -one: .double 1.0 - ASM_SIZE_DIRECTIVE(one) - .type l2e,@object -l2e: .quad 0xb8aa3b295c17f0bc /* 1.442695040888963407359924681002 */ - .short 0x3fff - ASM_SIZE_DIRECTIVE(l2e) - -DEFINE_FLT_MIN - -#ifdef PIC -#define MO(op) op##@GOTOFF(%edx) -#else -#define MO(op) op -#endif - - .text -ENTRY(__expm1f) - movzwl 4+2(%esp), %eax - xorb $0x80, %ah // invert sign bit (now 1 is "positive") - cmpl $0xc2b1, %eax // is num >= 88.5? - jae HIDDEN_JUMPTARGET (__expf) - - flds 4(%esp) // x - fxam // Is NaN, +-Inf or +-0? - xorb $0x80, %ah - cmpl $0xc190, %eax // is num <= -18.0? - fstsw %ax - movb $0x45, %ch - jb 4f - - // Below -18.0 (may be -NaN or -Inf). - andb %ah, %ch -#ifdef PIC - LOAD_PIC_REG (dx) -#endif - cmpb $0x01, %ch - je 5f // If -NaN, jump. - jmp 2f // -large, possibly -Inf. - -4: // In range -18.0 to 88.5 (may be +-0 but not NaN or +-Inf). - andb %ah, %ch - cmpb $0x40, %ch - je 3f // If +-0, jump. -#ifdef PIC - LOAD_PIC_REG (dx) -#endif - -5: fldt MO(l2e) // log2(e) : x - fmulp // log2(e)*x - fld %st // log2(e)*x : log2(e)*x - // Set round-to-nearest temporarily. - subl $8, %esp - cfi_adjust_cfa_offset (8) - fstcw 4(%esp) - movl $0xf3ff, %ecx - andl 4(%esp), %ecx - movl %ecx, (%esp) - fldcw (%esp) - frndint // int(log2(e)*x) : log2(e)*x - fldcw 4(%esp) - addl $8, %esp - cfi_adjust_cfa_offset (-8) - fsubr %st, %st(1) // int(log2(e)*x) : fract(log2(e)*x) - fxch // fract(log2(e)*x) : int(log2(e)*x) - f2xm1 // 2^fract(log2(e)*x)-1 : int(log2(e)*x) - fscale // 2^(log2(e)*x)-2^int(log2(e)*x) : int(log2(e)*x) - fxch // int(log2(e)*x) : 2^(log2(e)*x)-2^int(log2(e)*x) - fldl MO(one) // 1 : int(log2(e)*x) : 2^(log2(e)*x)-2^int(log2(e)*x) - fscale // 2^int(log2(e)*x) : int(log2(e)*x) : 2^(log2(e)*x)-2^int(log2(e)*x) - fsubrl MO(one) // 1-2^int(log2(e)*x) : int(log2(e)*x) : 2^(log2(e)*x)-2^int(log2(e)*x) - fstp %st(1) // 1-2^int(log2(e)*x) : 2^(log2(e)*x)-2^int(log2(e)*x) - fsubrp %st, %st(1) // 2^(log2(e)*x) - FLT_CHECK_FORCE_UFLOW - ret - -2: fstp %st - fldl MO(minus1) // Set result to -1.0. -3: ret -END(__expm1f) -libm_alias_float (__expm1, expm1) diff --git a/sysdeps/i386/fpu/s_log1pf.S b/sysdeps/i386/fpu/s_log1pf.S deleted file mode 100644 index 82a3f448db..0000000000 --- a/sysdeps/i386/fpu/s_log1pf.S +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Public domain. - */ - -#include <machine/asm.h> -#include <i386-math-asm.h> - -RCSID("$NetBSD: s_log1pf.S,v 1.4 1995/05/09 00:13:05 jtc Exp $") - - .section .rodata - - .align ALIGNARG(4) - /* The fyl2xp1 can only be used for values in - -1 + sqrt(2) / 2 <= x <= 1 - sqrt(2) / 2 - 0.29 is a safe value. - */ -limit: .float 0.29 -one: .float 1.0 - -DEFINE_FLT_MIN - -#ifdef PIC -# define MO(op) op##@GOTOFF(%edx) -#else -# define MO(op) op -#endif - -/* - * Use the fyl2xp1 function when the argument is in the range -0.29 to 0.29, - * otherwise fyl2x with the needed extra computation. - */ - .text -ENTRY(__log1pf) - fldln2 - - flds 4(%esp) - -#ifdef PIC - LOAD_PIC_REG (dx) -#endif - - fxam - fnstsw - fld %st - sahf - jc 3f // in case x is NaN or ±Inf -4: fabs - fcomps MO(limit) - fnstsw - sahf - jc 2f - - fadds MO(one) - fyl2x - ret - -2: fyl2xp1 - FLT_CHECK_FORCE_UFLOW_NONNAN - ret - -3: jp 4b // in case x is ±Inf - fstp %st(1) - fstp %st(1) - ret - -END (__log1pf) diff --git a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps index 5c41bf36dc..a9cd01bf03 100644 --- a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps +++ b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps @@ -1158,25 +1158,21 @@ ldouble: 2 Function: "exp10m1": double: 3 -float: 1 float128: 3 ldouble: 4 Function: "exp10m1_downward": double: 3 -float: 3 float128: 6 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 2 float128: 6 ldouble: 5 Function: "exp10m1_upward": double: 5 -float: 3 float128: 6 ldouble: 6 @@ -1201,25 +1197,21 @@ ldouble: 1 Function: "exp2m1": double: 2 -float: 1 float128: 2 ldouble: 3 Function: "exp2m1_downward": double: 3 -float: 3 float128: 3 ldouble: 6 Function: "exp2m1_towardzero": double: 3 -float: 2 float128: 4 ldouble: 6 Function: "exp2m1_upward": double: 3 -float: 3 float128: 5 ldouble: 6 @@ -1245,19 +1237,16 @@ ldouble: 3 Function: "expm1_downward": double: 1 -float: 1 float128: 2 ldouble: 4 Function: "expm1_towardzero": double: 1 -float: 1 float128: 4 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 float128: 3 ldouble: 4 @@ -1428,25 +1417,21 @@ ldouble: 1 Function: "log10p1": double: 1 -float: 2 float128: 3 ldouble: 4 Function: "log10p1_downward": double: 2 -float: 1 float128: 4 ldouble: 8 Function: "log10p1_towardzero": double: 2 -float: 1 float128: 3 ldouble: 8 Function: "log10p1_upward": double: 2 -float: 2 float128: 4 ldouble: 6 @@ -1457,19 +1442,16 @@ ldouble: 2 Function: "log1p_downward": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "log1p_towardzero": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "log1p_upward": double: 1 -float: 1 float128: 2 ldouble: 3 @@ -1498,25 +1480,21 @@ ldouble: 1 Function: "log2p1": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "log2p1_downward": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "log2p1_towardzero": double: 2 -float: 2 float128: 2 ldouble: 4 Function: "log2p1_upward": double: 1 -float: 2 float128: 3 ldouble: 5 @@ -1542,19 +1520,16 @@ ldouble: 2 Function: "logp1_downward": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "logp1_towardzero": double: 1 -float: 1 float128: 3 ldouble: 4 Function: "logp1_upward": double: 1 -float: 1 float128: 2 ldouble: 3 @@ -1701,25 +1676,21 @@ ldouble: 4 Function: "tgamma": double: 9 -float: 8 float128: 4 ldouble: 5 Function: "tgamma_downward": double: 9 -float: 7 float128: 5 ldouble: 6 Function: "tgamma_towardzero": double: 9 -float: 7 float128: 5 ldouble: 6 Function: "tgamma_upward": double: 8 -float: 8 float128: 4 ldouble: 5 diff --git a/sysdeps/i386/i686/multiarch/s_fma-fma.c b/sysdeps/i386/i686/multiarch/s_fma-fma.c index 9d17f67a10..6c3fbc0290 100644 --- a/sysdeps/i386/i686/multiarch/s_fma-fma.c +++ b/sysdeps/i386/i686/multiarch/s_fma-fma.c @@ -9,7 +9,7 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public diff --git a/sysdeps/i386/i686/multiarch/s_fma.c b/sysdeps/i386/i686/multiarch/s_fma.c index 978345bda5..3ae111aac5 100644 --- a/sysdeps/i386/i686/multiarch/s_fma.c +++ b/sysdeps/i386/i686/multiarch/s_fma.c @@ -9,7 +9,7 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public diff --git a/sysdeps/i386/i686/multiarch/s_fmaf-fma.c b/sysdeps/i386/i686/multiarch/s_fmaf-fma.c index f049a60f57..aff92fa5b6 100644 --- a/sysdeps/i386/i686/multiarch/s_fmaf-fma.c +++ b/sysdeps/i386/i686/multiarch/s_fmaf-fma.c @@ -9,7 +9,7 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public diff --git a/sysdeps/i386/i686/multiarch/s_fmaf.c b/sysdeps/i386/i686/multiarch/s_fmaf.c index e92ebb19a7..c9be68257f 100644 --- a/sysdeps/i386/i686/multiarch/s_fmaf.c +++ b/sysdeps/i386/i686/multiarch/s_fmaf.c @@ -9,7 +9,7 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public diff --git a/sysdeps/ieee754/dbl-64/gamma_productf.c b/sysdeps/ieee754/dbl-64/gamma_productf.c index f3596eeae4..1cc8931700 100644 --- a/sysdeps/ieee754/dbl-64/gamma_productf.c +++ b/sysdeps/ieee754/dbl-64/gamma_productf.c @@ -1,44 +1 @@ -/* Compute a product of X, X+1, ..., with an error estimate. - Copyright (C) 2013-2024 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#include <math.h> -#include <math-narrow-eval.h> -#include <math_private.h> -#include <float.h> - -/* Compute the product of X + X_EPS, X + X_EPS + 1, ..., X + X_EPS + N - - 1, in the form R * (1 + *EPS) where the return value R is an - approximation to the product and *EPS is set to indicate the - approximate error in the return value. X is such that all the - values X + 1, ..., X + N - 1 are exactly representable, and X_EPS / - X is small enough that factors quadratic in it can be - neglected. */ - -float -__gamma_productf (float x, float x_eps, int n, float *eps) -{ - double x_full = (double) x + (double) x_eps; - double ret = x_full; - for (int i = 1; i < n; i++) - ret *= x_full + i; - - float fret = math_narrow_eval ((float) ret); - *eps = (ret - fret) / fret; - - return fret; -} +/* Not needed. */ diff --git a/sysdeps/ieee754/flt-32/e_gammaf_r.c b/sysdeps/ieee754/flt-32/e_gammaf_r.c index a9730d61c1..6b1f95d50f 100644 --- a/sysdeps/ieee754/flt-32/e_gammaf_r.c +++ b/sysdeps/ieee754/flt-32/e_gammaf_r.c @@ -1,215 +1,176 @@ -/* Implementation of gamma function according to ISO C. - Copyright (C) 1997-2024 Free Software Foundation, Inc. - This file is part of the GNU C Library. +/* Implementation of the gamma function for binary32. - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. +Copyright (c) 2023-2024 Alexei Sibidanov. - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. +The original version of this file was copied from the CORE-MATH +project (file src/binary32/tgamma/tgammaf.c, revision a48e352). - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + */ + +/* Changes with respect to the original CORE-MATH code: + - removed the dealing with errno + (this is done in the wrapper math/w_tgammaf_compat.c) + - usage of math_narrow_eval to deal with underflow/overflow + - deal with signgamp + */ #include <math.h> -#include <math-narrow-eval.h> -#include <math_private.h> -#include <fenv_private.h> -#include <math-underflow.h> #include <float.h> +#include <stdint.h> +#include <stddef.h> #include <libm-alias-finite.h> +#include <math-narrow-eval.h> +#include "math_config.h" -/* Coefficients B_2k / 2k(2k-1) of x^-(2k-1) inside exp in Stirling's - approximation to gamma function. */ +float +__ieee754_gammaf_r (float x, int *signgamp) +{ + /* The wrapper in math/w_tgamma_template.c expects *signgamp to be set to a + non-negative value if the returned value is gamma(x), and to a negative + value if it is -gamma(x). + Since the code here directly computes gamma(x), we set it to 1. + */ + if (signgamp != NULL) + *signgamp = 1; -static const float gamma_coeff[] = + /* List of exceptional cases. Each entry contains the 32-bit encoding u of x, + a binary32 approximation f of gamma(x), and a correction term df. */ + static const struct { - 0x1.555556p-4f, - -0xb.60b61p-12f, - 0x3.403404p-12f, + uint32_t u; + float f, df; + } tb[] = { + { 0x27de86a9u, 0x1.268266p+47f, 0x1p22f }, /* x = 0x1.bd0d52p-48 */ + { 0x27e05475u, 0x1.242422p+47f, 0x1p22f }, /* x = 0x1.c0a8eap-48 */ + { 0xb63befb3u, -0x1.5cb6e4p+18f, 0x1p-7f }, /* x = -0x1.77df66p-19 */ + { 0x3c7bb570u, 0x1.021d9p+6f, 0x1p-19f }, /* x = 0x1.f76aep-7 */ + { 0x41e886d1u, 0x1.33136ap+98f, 0x1p73f }, /* x = 0x1.d10da2p+4 */ + { 0xc067d177u, 0x1.f6850cp-3f, 0x1p-28f }, /* x = -0x1.cfa2eep+1 */ + { 0xbd99da31u, -0x1.befe66p+3, -0x1p-22f }, /* x = -0x1.33b462p-4 */ + { 0xbf54c45au, -0x1.a6b4ecp+2, 0x1p-23f }, /* x = -0x1.a988b4p-1 */ + { 0x41ee77feu, 0x1.d3631cp+101, -0x1p-76f }, /* x = 0x1.dceffcp+4 */ + { 0x3f843a64u, 0x1.f6c638p-1, 0x1p-26f }, /* x = 0x1.0874c8p+0 */ }; -#define NCOEFF (sizeof (gamma_coeff) / sizeof (gamma_coeff[0])) - -/* Return gamma (X), for positive X less than 42, in the form R * - 2^(*EXP2_ADJ), where R is the return value and *EXP2_ADJ is set to - avoid overflow or underflow in intermediate calculations. */ - -static float -gammaf_positive (float x, int *exp2_adj) -{ - int local_signgam; - if (x < 0.5f) - { - *exp2_adj = 0; - return __ieee754_expf (__ieee754_lgammaf_r (x + 1, &local_signgam)) / x; - } - else if (x <= 1.5f) - { - *exp2_adj = 0; - return __ieee754_expf (__ieee754_lgammaf_r (x, &local_signgam)); - } - else if (x < 2.5f) - { - *exp2_adj = 0; - float x_adj = x - 1; - return (__ieee754_expf (__ieee754_lgammaf_r (x_adj, &local_signgam)) - * x_adj); - } - else - { - float eps = 0; - float x_eps = 0; - float x_adj = x; - float prod = 1; - if (x < 4.0f) - { - /* Adjust into the range for applying Stirling's - approximation. */ - float n = ceilf (4.0f - x); - x_adj = math_narrow_eval (x + n); - x_eps = (x - (x_adj - n)); - prod = __gamma_productf (x_adj - n, x_eps, n, &eps); + uint32_t t = asuint (x); + uint32_t ax = t << 1; + if (__glibc_unlikely (ax >= (0xffu << 24))) + { /* x=NaN or +/-Inf */ + if (ax == (0xffu << 24)) + { /* x=+/-Inf */ + if (t >> 31) /* x=-Inf */ + return __math_invalidf (x); + return x; /* x=+Inf */ } - /* The result is now gamma (X_ADJ + X_EPS) / (PROD * (1 + EPS)). - Compute gamma (X_ADJ + X_EPS) using Stirling's approximation, - starting by computing pow (X_ADJ, X_ADJ) with a power of 2 - factored out. */ - float exp_adj = -eps; - float x_adj_int = roundf (x_adj); - float x_adj_frac = x_adj - x_adj_int; - int x_adj_log2; - float x_adj_mant = __frexpf (x_adj, &x_adj_log2); - if (x_adj_mant < M_SQRT1_2f) + return x + x; /* x=NaN, where x+x ensures the "Invalid operation" + exception is set if x is sNaN */ + } + double z = x; + if (__glibc_unlikely (ax < 0x6d000000u)) + { /* |x| < 0x1p-18 */ + volatile double d = (0x1.fa658c23b1578p-1 - 0x1.d0a118f324b63p-1 * z) + * z - 0x1.2788cfc6fb619p-1; + double f = 1.0 / z + d; + float r = f; + uint64_t rt = asuint64 (f); + if (((rt + 2) & 0xfffffff) < 4) { - x_adj_log2--; - x_adj_mant *= 2.0f; + for (unsigned i = 0; i < sizeof (tb) / sizeof (tb[0]); i++) + if (t == tb[i].u) + return tb[i].f + tb[i].df; } - *exp2_adj = x_adj_log2 * (int) x_adj_int; - float ret = (__ieee754_powf (x_adj_mant, x_adj) - * __ieee754_exp2f (x_adj_log2 * x_adj_frac) - * __ieee754_expf (-x_adj) - * sqrtf (2 * M_PIf / x_adj) - / prod); - exp_adj += x_eps * __ieee754_logf (x_adj); - float bsum = gamma_coeff[NCOEFF - 1]; - float x_adj2 = x_adj * x_adj; - for (size_t i = 1; i <= NCOEFF - 1; i++) - bsum = bsum / x_adj2 + gamma_coeff[NCOEFF - 1 - i]; - exp_adj += bsum / x_adj; - return ret + ret * __expm1f (exp_adj); + return r; } -} - -float -__ieee754_gammaf_r (float x, int *signgamp) -{ - int32_t hx; - float ret; - - GET_FLOAT_WORD (hx, x); - - if (__glibc_unlikely ((hx & 0x7fffffff) == 0)) + float fx = floorf (x); + if (__glibc_unlikely (x >= 0x1.18522p+5f)) { - /* Return value for x == 0 is Inf with divide by zero exception. */ - *signgamp = 0; - return 1.0 / x; + /* Overflow case. The original CORE-MATH code returns + 0x1p127f * 0x1p127f, but apparently some compilers replace this + by +Inf. */ + return math_narrow_eval (x * 0x1p127f); } - if (__builtin_expect (hx < 0, 0) - && (uint32_t) hx < 0xff800000 && rintf (x) == x) - { - /* Return value for integer x < 0 is NaN with invalid exception. */ - *signgamp = 0; - return (x - x) / (x - x); + /* compute k only after the overflow check, otherwise the case to integer + might overflow */ + int k = fx; + if (__glibc_unlikely (fx == x)) + { /* x is integer */ + if (x == 0.0f) + return 1.0f / x; + if (x < 0.0f) + return __math_invalidf (0.0f); + double t0 = 1, x0 = 1; + for (int i = 1; i < k; i++, x0 += 1.0) + t0 *= x0; + return t0; } - if (__glibc_unlikely (hx == 0xff800000)) - { - /* x == -Inf. According to ISO this is NaN. */ - *signgamp = 0; - return x - x; + if (__glibc_unlikely (x < -42.0f)) + { /* negative non-integer */ + /* For x < -42, x non-integer, |gamma(x)| < 2^-151. */ + static const float sgn[2] = { 0x1p-127f, -0x1p-127f }; + /* Underflows always happens */ + return math_narrow_eval (0x1p-127f * sgn[k & 1]); } - if (__glibc_unlikely ((hx & 0x7f800000) == 0x7f800000)) + /* The array c[] stores a degree-15 polynomial approximation for + gamma(x). */ + static const double c[] = { - /* Positive infinity (return positive infinity) or NaN (return - NaN). */ - *signgamp = 0; - return x + x; - } + 0x1.c9a76be577123p+0, 0x1.8f2754ddcf90dp+0, 0x1.0d1191949419bp+0, + 0x1.e1f42cf0ae4a1p-2, 0x1.82b358a3ab638p-3, 0x1.e1f2b30cd907bp-5, + 0x1.240f6d4071bd8p-6, 0x1.1522c9f3cd012p-8, 0x1.1fd0051a0525bp-10, + 0x1.9808a8b96c37ep-13, 0x1.b3f78e01152b5p-15, 0x1.49c85a7e1fd04p-18, + 0x1.471ca49184475p-19, -0x1.368f0b7ed9e36p-23, 0x1.882222f9049efp-23, + -0x1.a69ed2042842cp-25 + }; - if (x >= 36.0f) - { - /* Overflow. */ - *signgamp = 0; - ret = math_narrow_eval (FLT_MAX * FLT_MAX); - return ret; - } - else + double m = z - 0x1.7p+1; + double i = roundeven (m); + double step = copysign (1.0, i); + double d = m - i, d2 = d * d, d4 = d2 * d2, d8 = d4 * d4; + double f = (c[0] + d * c[1]) + d2 * (c[2] + d * c[3]) + + d4 * ((c[4] + d * c[5]) + d2 * (c[6] + d * c[7])) + + d8 * ((c[8] + d * c[9]) + d2 * (c[10] + d * c[11]) + + d4 * ((c[12] + d * c[13]) + d2 * (c[14] + d * c[15]))); + int jm = fabs (i); + double w = 1; + if (jm) { - SET_RESTORE_ROUNDF (FE_TONEAREST); - if (x > 0.0f) + z -= 0.5 + step * 0.5; + w = z; + for (int j = jm - 1; j; j--) { - *signgamp = 0; - int exp2_adj; - float tret = gammaf_positive (x, &exp2_adj); - ret = __scalbnf (tret, exp2_adj); + z -= step; + w *= z; } - else if (x >= -FLT_EPSILON / 4.0f) - { - *signgamp = 0; - ret = 1.0f / x; - } - else - { - float tx = truncf (x); - *signgamp = (tx == 2.0f * truncf (tx / 2.0f)) ? -1 : 1; - if (x <= -42.0f) - /* Underflow. */ - ret = FLT_MIN * FLT_MIN; - else - { - float frac = tx - x; - if (frac > 0.5f) - frac = 1.0f - frac; - float sinpix = (frac <= 0.25f - ? __sinf (M_PIf * frac) - : __cosf (M_PIf * (0.5f - frac))); - int exp2_adj; - float tret = M_PIf / (-x * sinpix - * gammaf_positive (-x, &exp2_adj)); - ret = __scalbnf (tret, -exp2_adj); - math_check_force_underflow_nonneg (ret); - } - } - ret = math_narrow_eval (ret); - } - if (isinf (ret) && x != 0) - { - if (*signgamp < 0) - { - ret = math_narrow_eval (-copysignf (FLT_MAX, ret) * FLT_MAX); - ret = -ret; - } - else - ret = math_narrow_eval (copysignf (FLT_MAX, ret) * FLT_MAX); - return ret; } - else if (ret == 0) + if (i <= -0.5) + w = 1 / w; + f *= w; + uint64_t rt = asuint64 (f); + float r = f; + /* Deal with exceptional cases. */ + if (__glibc_unlikely (((rt + 2) & 0xfffffff) < 8)) { - if (*signgamp < 0) - { - ret = math_narrow_eval (-copysignf (FLT_MIN, ret) * FLT_MIN); - ret = -ret; - } - else - ret = math_narrow_eval (copysignf (FLT_MIN, ret) * FLT_MIN); - return ret; + for (unsigned j = 0; j < sizeof (tb) / sizeof (tb[0]); j++) + if (t == tb[j].u) + return tb[j].f + tb[j].df; } - else - return ret; + return r; } libm_alias_finite (__ieee754_gammaf_r, __gammaf_r) diff --git a/sysdeps/ieee754/flt-32/e_log10f.c b/sysdeps/ieee754/flt-32/e_log10f.c index 791895e042..03d9e281f3 100644 --- a/sysdeps/ieee754/flt-32/e_log10f.c +++ b/sysdeps/ieee754/flt-32/e_log10f.c @@ -1,54 +1,161 @@ -/* e_log10f.c -- float version of e_log10.c. - */ - -/* - * ==================================================== - * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. - * - * Developed at SunPro, a Sun Microsystems, Inc. business. - * Permission to use, copy, modify, and distribute this - * software is freely granted, provided that this notice - * is preserved. - * ==================================================== - */ +/* Correctly-rounded radix-10 logarithm function for binary32 value. + +Copyright (c) 2022-2023 Alexei Sibidanov. + +This file is part of the CORE-MATH project +project (file src/binary32/log10/log10f.c, revision bc385c2). + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +*/ #include <math.h> -#include <math_private.h> -#include <fix-int-fp-convert-zero.h> +#include <stdint.h> #include <libm-alias-finite.h> +#include "math_config.h" -static const float -two25 = 3.3554432000e+07, /* 0x4c000000 */ -ivln10 = 4.3429449201e-01, /* 0x3ede5bd9 */ -log10_2hi = 3.0102920532e-01, /* 0x3e9a2080 */ -log10_2lo = 7.9034151668e-07; /* 0x355427db */ +static __attribute__ ((noinline)) float +as_special (float x) +{ + uint32_t ux = asuint (x); + if (ux == 0x7f800000u) + return x; /* +inf */ + uint32_t ax = ux << 1; + if (ax == 0u) + /* -0.0 */ + return __math_divzerof (1); + if (ax > 0xff000000u) + return x + x; /* nan */ + return __math_invalidf (x); +} float -__ieee754_log10f(float x) +__ieee754_log10f (float x) { - float y,z; - int32_t i,k,hx; - - GET_FLOAT_WORD(hx,x); - - k=0; - if (hx < 0x00800000) { /* x < 2**-126 */ - if (__builtin_expect((hx&0x7fffffff)==0, 0)) - return -two25/fabsf (x); /* log(+-0)=-inf */ - if (__builtin_expect(hx<0, 0)) - return (x-x)/(x-x); /* log(-#) = NaN */ - k -= 25; x *= two25; /* subnormal number, scale up x */ - GET_FLOAT_WORD(hx,x); + static const double tr[] = + { + 0x1p+0, 0x1.f81f82p-1, 0x1.f07c1fp-1, 0x1.e9131acp-1, + 0x1.e1e1e1ep-1, 0x1.dae6077p-1, 0x1.d41d41dp-1, 0x1.cd85689p-1, + 0x1.c71c71cp-1, 0x1.c0e0704p-1, 0x1.bacf915p-1, 0x1.b4e81b5p-1, + 0x1.af286bdp-1, 0x1.a98ef6p-1, 0x1.a41a41ap-1, 0x1.9ec8e95p-1, + 0x1.999999ap-1, 0x1.948b0fdp-1, 0x1.8f9c19p-1, 0x1.8acb90fp-1, + 0x1.8618618p-1, 0x1.8181818p-1, 0x1.7d05f41p-1, 0x1.78a4c81p-1, + 0x1.745d174p-1, 0x1.702e05cp-1, 0x1.6c16c17p-1, 0x1.6816817p-1, + 0x1.642c859p-1, 0x1.605816p-1, 0x1.5c9882cp-1, 0x1.58ed231p-1, + 0x1.5555555p-1, 0x1.51d07ebp-1, 0x1.4e5e0a7p-1, 0x1.4afd6ap-1, + 0x1.47ae148p-1, 0x1.446f865p-1, 0x1.4141414p-1, 0x1.3e22cbdp-1, + 0x1.3b13b14p-1, 0x1.3813814p-1, 0x1.3521cfbp-1, 0x1.323e34ap-1, + 0x1.2f684bep-1, 0x1.2c9fb4ep-1, 0x1.29e412ap-1, 0x1.27350b9p-1, + 0x1.2492492p-1, 0x1.21fb781p-1, 0x1.1f7047ep-1, 0x1.1cf06aep-1, + 0x1.1a7b961p-1, 0x1.1811812p-1, 0x1.15b1e5fp-1, 0x1.135c811p-1, + 0x1.1111111p-1, 0x1.0ecf56cp-1, 0x1.0c9715p-1, 0x1.0a6810ap-1, + 0x1.0842108p-1, 0x1.0624dd3p-1, 0x1.041041p-1, 0x1.0204081p-1, + 0.5 + }; + static const double tl[] = + { + -0x1.d45fd6237ebe3p-47, 0x1.b947689311b6ep-8, 0x1.b5e909c96d7d5p-7, + 0x1.45f4f59ed2165p-6, 0x1.af5f92cbd8f1ep-6, 0x1.0ba01a606de8cp-5, + 0x1.3ed119b9a2b7bp-5, 0x1.714834298eec2p-5, 0x1.a30a9d98357fbp-5, + 0x1.d41d512670813p-5, 0x1.02428c0f65519p-4, 0x1.1a23444eecc3ep-4, + 0x1.31b30543f4cb4p-4, 0x1.48f3ed39bfd04p-4, 0x1.5fe8049a0e423p-4, + 0x1.769140a6aa008p-4, 0x1.8cf1836c98cb3p-4, 0x1.a30a9d55541a1p-4, + 0x1.b8de4d1ee823ep-4, 0x1.ce6e4202ca2e6p-4, 0x1.e3bc1accace07p-4, + 0x1.f8c9683b5abd4p-4, 0x1.06cbd68ca9a6ep-3, 0x1.11142f19df73p-3, + 0x1.1b3e71fa7a97fp-3, 0x1.254b4d37a46e3p-3, 0x1.2f3b6912cbf07p-3, + 0x1.390f683115886p-3, 0x1.42c7e7fffc5a8p-3, 0x1.4c65808c78d3cp-3, + 0x1.55e8c50751c55p-3, 0x1.5f52445dec3d8p-3, 0x1.68a288c3f12p-3, + 0x1.71da17bdf0d19p-3, 0x1.7af973608afd9p-3, 0x1.84011952a2579p-3, + 0x1.8cf1837a7ea6p-3, 0x1.95cb2891e43d6p-3, 0x1.9e8e7b0f869ep-3, + 0x1.a73beaa5db18dp-3, 0x1.afd3e394558d3p-3, 0x1.b856cf060d9f1p-3, + 0x1.c0c5134de1ffcp-3, 0x1.c91f1371bc99fp-3, 0x1.d1652ffcd3f53p-3, + 0x1.d997c6f635e75p-3, 0x1.e1b733ab90f3bp-3, 0x1.e9c3ceadac856p-3, + 0x1.f1bdeec43a305p-3, 0x1.f9a5e7a5fa3fep-3, 0x1.00be05ac02f2bp-2, + 0x1.04a054d81a2d4p-2, 0x1.087a0835957fbp-2, 0x1.0c4b457099517p-2, + 0x1.101431aa1fe51p-2, 0x1.13d4f08b98dd8p-2, 0x1.178da53edb892p-2, + 0x1.1b3e71e9f9d58p-2, 0x1.1ee777defdeedp-2, 0x1.2288d7b48e23bp-2, + 0x1.2622b0f52e49fp-2, 0x1.29b522a4c6314p-2, 0x1.2d404b0e30f8p-2, + 0x1.30c4478f3fbe5p-2, 0x1.34413509f7915p-2 + }; + static const union + { + float f; + uint32_t u; + } st[] = + { + { 0x1p+0 }, { 0x1.4p+3 }, { 0x1.9p+6 }, { 0x1.f4p+9 }, + { 0x1.388p+13 }, { 0x1.86ap+16 }, { 0x1.e848p+19 }, { 0x1.312dp+23 }, + { 0x1.7d784p+26 }, { 0x1.dcd65p+29 }, { 0x1.2a05f2p+33 }, { 0 }, + { 0 }, { 0 }, { 0 }, { 0 } + }; + static const double b[] = + { + 0x1.bcb7b15c5a2f8p-2, -0x1.bcbb1dbb88ebap-3, 0x1.2871c39d521c6p-3 + }; + static const double c[] = + { + 0x1.bcb7b1526e50ep-2, -0x1.bcb7b1526e53dp-3, 0x1.287a7636f3fa2p-3, + -0x1.bcb7b146a14b3p-4, 0x1.63c627d5219cbp-4, -0x1.2880736c8762dp-4, + 0x1.fc1ecf913961ap-5 + }; + uint32_t ux = asuint (x); + if (__glibc_unlikely (ux < (1 << 23) || ux >= 0x7f800000u)) + { + if (ux == 0 || ux >= 0x7f800000u) + return as_special (x); + /* subnormal */ + int n = __builtin_clz (ux) - 8; + ux <<= n; + ux -= n << 23; + } + unsigned m = ux & ((1 << 23) - 1), j = (m + (1 << (23 - 7))) >> (23 - 6); + double ix = tr[j], l = tl[j]; + int e = ((int) ux >> 23) - 127; + unsigned je = e + 1; + je = (je * 0x4d104d4) >> 28; + if (__glibc_unlikely (ux == st[je].u)) + return je; + + double tz = asdouble (((int64_t) m | ((int64_t) 1023 << 23)) << (52 - 23)); + double z = tz * ix - 1, z2 = z * z; + double r + = ((e * 0x1.34413509f79ffp-2 + l) + z * b[0]) + z2 * (b[1] + z * b[2]); + float ub = r, lb = r + 0x1.b008p-34; + if (__glibc_unlikely (ub != lb)) + { + double f = z + * ((c[0] + z * c[1]) + + z2 + * ((c[2] + z * c[3]) + + z2 * (c[4] + z * c[5] + z2 * c[6]))); + f -= 0x1.0cee0ed4ca7e9p-54 * e; + f += l - tl[0]; + double el = e * 0x1.34413509f7ap-2; + r = el + f; + ub = r; + tz = r; + if (__glibc_unlikely (!((asuint64 (tz) & ((1 << 28) - 1))))) + { + double dr = (el - r) + f; + r += dr * 32; + ub = r; } - if (__builtin_expect(hx >= 0x7f800000, 0)) return x+x; - k += (hx>>23)-127; - i = ((uint32_t)k&0x80000000)>>31; - hx = (hx&0x007fffff)|((0x7f-i)<<23); - y = (float)(k+i); - if (FIX_INT_FP_CONVERT_ZERO && y == 0.0f) - y = 0.0f; - SET_FLOAT_WORD(x,hx); - z = y*log10_2lo + ivln10*__ieee754_logf(x); - return z+y*log10_2hi; + } + return ub; } libm_alias_finite (__ieee754_log10f, __log10f) diff --git a/sysdeps/ieee754/flt-32/math_config.h b/sysdeps/ieee754/flt-32/math_config.h index 729f22cd4f..dc07ebd459 100644 --- a/sysdeps/ieee754/flt-32/math_config.h +++ b/sysdeps/ieee754/flt-32/math_config.h @@ -166,9 +166,9 @@ extern const struct exp2f_data uint64_t tab[1 << EXP2F_TABLE_BITS]; double shift_scaled; double poly[EXP2F_POLY_ORDER]; - double shift; double invln2_scaled; double poly_scaled[EXP2F_POLY_ORDER]; + double shift; } __exp2f_data attribute_hidden; #define LOGF_TABLE_BITS 4 diff --git a/sysdeps/ieee754/flt-32/s_exp10m1f.c b/sysdeps/ieee754/flt-32/s_exp10m1f.c new file mode 100644 index 0000000000..ea3173a174 --- /dev/null +++ b/sysdeps/ieee754/flt-32/s_exp10m1f.c @@ -0,0 +1,227 @@ +/* Implementation of the exp10m1 function for binary32. + +Copyright (c) 2022-2024 Alexei Sibidanov. Paul Zimmermann. + +The original version of this file was copied from the CORE-MATH +project (file src/binary32/exp10m1/exp10m1f.c, revision c46b85b). + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + */ + +#include <math.h> +#include "math_config.h" +#include <libm-alias-float.h> + +float +__exp10m1f (float x) +{ + const double iln10h = 0x1.a934f09p+1 * 16; + const double iln10l = 0x1.e68dc57f2496p-29 * 16; + double z = x; + uint32_t ux = asuint (x); + uint32_t ax = ux & (~0u >> 1); + if (__glibc_unlikely (ux > 0xc0f0d2f1u)) + { /* x < -7.52575 */ + if (ax > (0xffu << 23)) + return x + x; /* nan */ + return (ux == 0xff800000) ? -0x1p+0f : -0x1p+0f + 0x1p-26f; + } + else if (__glibc_unlikely (ax > 0x421a209au)) + { /* x > 38.5318 */ + if (ax >= asuint (INFINITY)) + return x + x; /* +Inf or NaN */ + return __math_oflowf (0); + } + else if (__glibc_unlikely (ax < 0x3d89c604u)) + { /* |x| < 0.1549/log(10) */ + double z2 = z * z, r; + if (__glibc_unlikely (ax < 0x3d1622fbu)) + { /* |x| < 8.44e-2/log(10) */ + if (__glibc_unlikely (ax < 0x3c8b76a3u)) + { /* |x| < 3.92e-2/log(10) */ + if (__glibc_unlikely (ax < 0x3bcced04u)) + { /* |x| < 1.44e-2/log(10) */ + if (__glibc_unlikely (ax < 0x3acf33ebu)) + { /* |x| < 3.64e-3/log(10 */ + if (__glibc_unlikely (ax < 0x395a966bu)) + { /* |x| < 4.8e-4/log(10 */ + if (__glibc_unlikely (ax < 0x36fe4a4bu)) + { /* |x| < 1.745e-5/log(10) */ + if (__glibc_unlikely (ax < 0x32407f39u)) + { /* |x| < 2.58e-8/log(10) */ + if (__glibc_unlikely (ax < 0x245e5bd9u)) + { /* |x| < 4.82164e-17 */ + r = 0x1.26bb1bbb55516p+1; + } + else + { + if (__glibc_unlikely (ux == 0x2c994b7bu)) + return 0x1.60f974p-37f - 0x1p-90f; + r = 0x1.26bb1bbb55516p+1 + + z * 0x1.53524c73cea69p+1; + } + } + else + { + if (__glibc_unlikely (ux == 0xb6fa215bu)) + return -0x1.1ff87ep-16 + 0x1p-68; + r = 0x1.26bb1bbb55516p+1 + + z * (0x1.53524c73ea62fp+1 + + z * 0x1.0470591de2c75p+1); + } + } + else + { + static const double cp[] = + { + 0x1.26bb1bbb55515p+1, 0x1.53524c73cea69p+1, + 0x1.0470595038cc2p+1, 0x1.2bd7609fe1561p+0 + }; + r = (cp[0] + z * cp[1]) + + z2 * (cp[2] + z * cp[3]); + } + } + else + { + static const double cp[] = + { + 0x1.26bb1bbb55516p+1, 0x1.53524c73ce6dbp+1, + 0x1.0470591de3024p+1, 0x1.2bd76b79060e6p+0, + 0x1.1429ffd3a963dp-1 + }; + r = (cp[0] + z * cp[1]) + + z2 * (cp[2] + z * (cp[3] + z * cp[4])); + } + } + else + { + static const double cp[] = + { + 0x1.26bb1bbb55516p+1, 0x1.53524c73cea67p+1, + 0x1.0470591dc2953p+1, 0x1.2bd760a004d64p+0, + 0x1.142a85da6f072p-1, 0x1.a7ed70725b00ep-3 + }; + r = (cp[0] + z * cp[1]) + z2 + * ((cp[2] + z * cp[3]) + + z2 * (cp[4] + z * cp[5])); + } + } + else + { + static const double cp[] = + { + 0x1.26bb1bbb55516p+1, 0x1.53524c73ceadep+1, + 0x1.0470591de2bb4p+1, 0x1.2bd76099a9d33p+0, + 0x1.1429ffd829b0bp-1, 0x1.a7f2a6a0f7dc8p-3, + 0x1.16e4dfbce0f56p-4 + }; + r = (cp[0] + z * cp[1]) + + z2 * ((cp[2] + z * cp[3]) + + z2 * (cp[4] + z * (cp[5] + z * cp[6]))); + } + } + else + { + static const double cp[] = + { + 0x1.26bb1bbb55515p+1, 0x1.53524c73cea6ap+1, + 0x1.0470591de476p+1, 0x1.2bd7609fd4ee2p+0, + 0x1.1429ff70a9b48p-1, 0x1.a7ed71259ba5bp-3, + 0x1.16f3004fb3ac1p-4, 0x1.4116b0388aa9fp-6 + }; + r = ((cp[0] + z * cp[1]) + z2 * (cp[2] + z * cp[3])) + + (z2 * z2) * ((cp[4] + z * cp[5]) + z2 * (cp[6] + + z * cp[7])); + } + } + else + { + static const double cp[] = + { + 0x1.26bb1bbb55515p+1, 0x1.53524c73cea42p+1, 0x1.0470591de2d1dp+1, + 0x1.2bd760a010a53p+0, 0x1.1429ffd16170cp-1, 0x1.a7ed6b2a0d97fp-3, + 0x1.16e4e37fa51e4p-4, 0x1.4147fe4c1676fp-6, 0x1.4897c4b3e329ap-8 + }; + r = ((cp[0] + z * cp[1]) + z2 * (cp[2] + z * cp[3])) + + (z2 * z2) * ((cp[4] + z * cp[5]) + + z2 * (cp[6] + z * (cp[7] + z * cp[8]))); + } + r *= z; + return r; + } + else + { + /* -7.52575 < x < -0.1549/log(10) or 0.1549/log(10) < x < 38.5318 */ + static const double tb[] = + { + 0x1p+0, 0x1.0b5586cf9890fp+0, 0x1.172b83c7d517bp+0, + 0x1.2387a6e756238p+0, 0x1.306fe0a31b715p+0, 0x1.3dea64c123422p+0, + 0x1.4bfdad5362a27p+0, 0x1.5ab07dd485429p+0, 0x1.6a09e667f3bcdp+0, + 0x1.7a11473eb0187p+0, 0x1.8ace5422aa0dap+0, 0x1.9c49182a3f09p+0, + 0x1.ae89f995ad3adp+0, 0x1.c199bdd85529cp+0, 0x1.d5818dcfba487p+0, + 0x1.ea4afa2a490dap+0 + }; + static const double c[] = + { + 0x1.62e42fefa398bp-5, 0x1.ebfbdff84555ap-11, 0x1.c6b08d4ad86d3p-17, + 0x1.3b2ad1b1716a2p-23, 0x1.5d7472718ce9dp-30, 0x1.4a1d7f457ac56p-37 + }; + + if (__glibc_unlikely ((ux << 11) == 0)) + { + uint32_t k = (ux >> 21) - 0x1fc; + if (k <= 0xb) + { + if (k == 0) + return 10.0f - 1.0f; + if (k == 4) + return 100.0f - 1.0f; + if (k == 6) + return 1000.0f - 1.0f; + if (k == 8) + return 10000.0f - 1.0f; + if (k == 9) + return 100000.0f - 1.0f; + if (k == 10) + return 1000000.0f - 1.0f; + if (k == 11) + return 10000000.0f - 1.0f; + } + } + double a = iln10h * z; + double ia = floor (a); + double h = (a - ia) + iln10l * z; + int64_t i = ia; + int64_t j = i & 0xf; + int64_t e = i - j; + e >>= 4; + double s = tb[j]; + s *= asdouble ((e + 0x3ffull) << 52); + double h2 = h * h; + double c0 = c[0] + h * c[1]; + double c2 = c[2] + h * c[3]; + double c4 = c[4] + h * c[5]; + c0 += h2 * (c2 + h2 * c4); + double w = s * h; + return (s - 1.0) + w * c0; + } +} +#ifndef __exp10m1f +libm_alias_float (__exp10m1, exp10m1) +#endif diff --git a/sysdeps/ieee754/flt-32/s_exp2m1f.c b/sysdeps/ieee754/flt-32/s_exp2m1f.c new file mode 100644 index 0000000000..325ffb11b0 --- /dev/null +++ b/sysdeps/ieee754/flt-32/s_exp2m1f.c @@ -0,0 +1,194 @@ +/* Correctly-rounded base-2 exponent function biased by 1 for binary32 value. + +Copyright (c) 2022-2024 Alexei Sibidanov. + +The original version of this file was copied from the CORE-MATH +project (file src/binary32/exp2m1/exp2m1f.c, revision baf5f6b). + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +*/ + +#include <fenv.h> +#include <math.h> +#include "math_config.h" +#include <libm-alias-float.h> +#include <math-narrow-eval.h> +#include <float.h> + +float +__exp2m1f (float x) +{ + double z = x; + uint32_t ux = asuint (x); + uint32_t ax = ux & (~0u >> 1); + if (__glibc_unlikely (ux >= 0xc1c80000u)) + { /* x <= -25 */ + if (ax > (0xffu << 23)) + return x + x; /* nan */ + return (ux == 0xff800000) ? -0x1p+0f : -0x1p+0f + 0x1p-26f; + } + else if (__glibc_unlikely (ax >= 0x43000000u)) + { /* x >= 128 */ + if (ax >= asuint (INFINITY)) + return x + x; /* +Inf or NaN */ + /* exp2m1 (MAX_EXP) should not overflow when rounding towards zero + or towards -Inf. We round FLT_MAX + 2^103 which is in the middle + between FLT_MAX and 2^128 (the next number with unbounded range). */ + float ret = math_narrow_eval (FLT_MAX + 0x1p103f); + if (x == FLT_MAX_EXP && ret == FLT_MAX) + return ret; + return __math_oflowf (0); + } + else if (__glibc_unlikely (ax < 0x3df95f1fu)) + { /* |x| < 8.44e-2/log(2) */ + double z2 = z * z, r; + if (__glibc_unlikely (ax < 0x3d67a4ccu)) + { /* |x| < 3.92e-2/log(2) */ + if (__glibc_unlikely (ax < 0x3caa2feeu)) + { /* |x| < 1.44e-2/log(2) */ + if (__glibc_unlikely (ax < 0x3bac1405u)) + { /* |x| < 3.64e-3/log(2) */ + if (__glibc_unlikely (ax < 0x3a358876u)) + { /* |x| < 4.8e-4/log(2) */ + if (__glibc_unlikely (ax < 0x37d32ef6u)) + { /* |x| < 1.745e-5/log(2) */ + if (__glibc_unlikely (ax < 0x331fdd82u)) + { /* |x| < 2.58e-8/log(2) */ + if (__glibc_unlikely (ax < 0x2538aa3bu)) + /* |x| < 1.60171e-16 */ + r = 0x1.62e42fefa39efp-1; + else + r = 0x1.62e42fefa39fp-1 + + z * 0x1.ebfbdff82c58fp-3; + } + else + { + if (__glibc_unlikely (ux == 0xb3d85005u)) + return -0x1.2bdf76p-24 - 0x1.8p-77; + if (__glibc_unlikely (ux == 0x3338428du)) + return 0x1.fee08ap-26 + 0x1p-80; + static const double c[] = + { + 0x1.62e42fefa39efp-1, 0x1.ebfbdff8548fdp-3, + 0x1.c6b08d704a06dp-5 + }; + r = c[0] + z * (c[1] + z * c[2]); + } + } + else + { + if (__glibc_unlikely (ux == 0x388bca4fu)) + return 0x1.839702p-15 - 0x1.8p-68; + static const double c[] = + { + 0x1.62e42fefa39efp-1, 0x1.ebfbdff82c58fp-3, + 0x1.c6b08dc82b347p-5, 0x1.3b2ab6fbad172p-7 + }; + r = (c[0] + z * c[1]) + z2 * (c[2] + z * c[3]); + } + } + else + { + static const double c[] = + { + 0x1.62e42fefa39efp-1, 0x1.ebfbdff82c068p-3, + 0x1.c6b08d704a6dcp-5, 0x1.3b2ac262c3eedp-7, + 0x1.5d87fe7af779ap-10 + }; + r = (c[0] + z * c[1]) + + z2 * (c[2] + z * (c[3] + z * c[4])); + } + } + else + { + static const double c[] = + { + 0x1.62e42fefa39fp-1, 0x1.ebfbdff82c58dp-3, + 0x1.c6b08d7011d13p-5, 0x1.3b2ab6fbd267dp-7, + 0x1.5d88a81cea49ep-10, 0x1.430912ea9b963p-13 + }; + r = (c[0] + z * c[1]) + + z2 * ((c[2] + z * c[3]) + z2 * (c[4] + z * c[5])); + } + } + else + { + static const double c[] = + { + 0x1.62e42fefa39efp-1, 0x1.ebfbdff82c639p-3, + 0x1.c6b08d7049f1cp-5, 0x1.3b2ab6f5243bdp-7, + 0x1.5d87fe80a9e6cp-10, 0x1.430d0b9257fa8p-13, + 0x1.ffcbfc4cf0952p-17 + }; + r = (c[0] + z * c[1]) + + z2 * ((c[2] + z * c[3]) + + z2 * (c[4] + z * (c[5] + z * c[6]))); + } + } + else + { + static const double c[] = + { + 0x1.62e42fefa39efp-1, 0x1.ebfbdff82c591p-3, + 0x1.c6b08d704cf6bp-5, 0x1.3b2ab6fba00cep-7, + 0x1.5d87fdfdaadb4p-10, 0x1.4309137333066p-13, + 0x1.ffe5e90daf7ddp-17, 0x1.62c0220eed731p-20 + }; + r = ((c[0] + z * c[1]) + z2 * (c[2] + z * c[3])) + + (z2 * z2) * ((c[4] + z * c[5]) + z2 * (c[6] + z * c[7])); + } + r *= z; + return r; + } + else + { + static const double c[] = + { + 0x1.62e42fefa398bp-5, 0x1.ebfbdff84555ap-11, + 0x1.c6b08d4ad86d3p-17, 0x1.3b2ad1b1716a2p-23, + 0x1.5d7472718ce9dp-30, 0x1.4a1d7f457ac56p-37 + }; + static const double tb[] = + { + 0x1p+0, 0x1.0b5586cf9890fp+0, 0x1.172b83c7d517bp+0, + 0x1.2387a6e756238p+0, 0x1.306fe0a31b715p+0, 0x1.3dea64c123422p+0, + 0x1.4bfdad5362a27p+0, 0x1.5ab07dd485429p+0, 0x1.6a09e667f3bcdp+0, + 0x1.7a11473eb0187p+0, 0x1.8ace5422aa0dap+0, 0x1.9c49182a3f09p+0, + 0x1.ae89f995ad3adp+0, 0x1.c199bdd85529cp+0, 0x1.d5818dcfba487p+0, + 0x1.ea4afa2a490dap+0 + }; + double a = 16.0 * z; + double ia = floor (a); + double h = a - ia; + double h2 = h * h; + int64_t i = ia, j = i & 0xf, e = i - j; + e >>= 4; + double s = tb[j]; + s *= asdouble ((e + 0x3ffull) << 52); + double c0 = c[0] + h * c[1]; + double c2 = c[2] + h * c[3]; + double c4 = c[4] + h * c[5]; + c0 += h2 * (c2 + h2 * c4); + double w = s * h; + return (s - 1.0) + w * c0; + } +} +#ifndef __exp2m1f +libm_alias_float (__exp2m1, exp2m1) +#endif diff --git a/sysdeps/ieee754/flt-32/s_expm1f.c b/sysdeps/ieee754/flt-32/s_expm1f.c index 35f7b5214a..edd7c9acf8 100644 --- a/sysdeps/ieee754/flt-32/s_expm1f.c +++ b/sysdeps/ieee754/flt-32/s_expm1f.c @@ -1,132 +1,124 @@ -/* s_expm1f.c -- float version of s_expm1.c. - */ +/* Correctly-rounded natural exponent function biased by 1 for binary32 value. -/* - * ==================================================== - * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. - * - * Developed at SunPro, a Sun Microsystems, Inc. business. - * Permission to use, copy, modify, and distribute this - * software is freely granted, provided that this notice - * is preserved. - * ==================================================== - */ +Copyright (c) 2022-2024 Alexei Sibidanov. + +This file is part of the CORE-MATH project +project (file src/binary32/expm1/expm1f.c, revision bc385c2). + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +*/ -#include <errno.h> -#include <float.h> #include <math.h> -#include <math-barriers.h> -#include <math_private.h> #include <math-underflow.h> #include <libm-alias-float.h> - -static const float huge = 1.0e+30; -static const float tiny = 1.0e-30; - -static const float -one = 1.0, -o_threshold = 8.8721679688e+01,/* 0x42b17180 */ -ln2_hi = 6.9313812256e-01,/* 0x3f317180 */ -ln2_lo = 9.0580006145e-06,/* 0x3717f7d1 */ -invln2 = 1.4426950216e+00,/* 0x3fb8aa3b */ - /* scaled coefficients related to expm1 */ -Q1 = -3.3333335072e-02, /* 0xbd088889 */ -Q2 = 1.5873016091e-03, /* 0x3ad00d01 */ -Q3 = -7.9365076090e-05, /* 0xb8a670cd */ -Q4 = 4.0082177293e-06, /* 0x36867e54 */ -Q5 = -2.0109921195e-07; /* 0xb457edbb */ +#include "math_config.h" float -__expm1f(float x) +__expm1f (float x) { - float y,hi,lo,c,t,e,hxs,hfx,r1; - int32_t k,xsb; - uint32_t hx; - - GET_FLOAT_WORD(hx,x); - xsb = hx&0x80000000; /* sign bit of x */ - if(xsb==0) y=x; else y= -x; /* y = |x| */ - hx &= 0x7fffffff; /* high word of |x| */ - - /* filter out huge and non-finite argument */ - if(hx >= 0x4195b844) { /* if |x|>=27*ln2 */ - if(hx >= 0x42b17218) { /* if |x|>=88.721... */ - if(hx>0x7f800000) - return x+x; /* NaN */ - if(hx==0x7f800000) - return (xsb==0)? x:-1.0;/* exp(+-inf)={inf,-1} */ - if(x > o_threshold) { - __set_errno (ERANGE); - return huge*huge; /* overflow */ - } - } - if(xsb!=0) { /* x < -27*ln2, return -1.0 with inexact */ - math_force_eval(x+tiny);/* raise inexact */ - return tiny-one; /* return -1 */ - } - } - - /* argument reduction */ - if(hx > 0x3eb17218) { /* if |x| > 0.5 ln2 */ - if(hx < 0x3F851592) { /* and |x| < 1.5 ln2 */ - if(xsb==0) - {hi = x - ln2_hi; lo = ln2_lo; k = 1;} - else - {hi = x + ln2_hi; lo = -ln2_lo; k = -1;} - } else { - k = invln2*x+((xsb==0)?(float)0.5:(float)-0.5); - t = k; - hi = x - t*ln2_hi; /* t*ln2_hi is exact here */ - lo = t*ln2_lo; - } - x = hi - lo; - c = (hi-x)-lo; - } - else if(hx < 0x33000000) { /* when |x|<2**-25, return x */ - math_check_force_underflow (x); - t = huge+x; /* return x with inexact flags when x!=0 */ - return x - (t-(huge+x)); + static const double c[] = + { + 1, 0x1.62e42fef4c4e7p-6, 0x1.ebfd1b232f475p-13, 0x1.c6b19384ecd93p-20 + }; + static const double ch[] = + { + 0x1.62e42fefa39efp-6, 0x1.ebfbdff82c58fp-13, 0x1.c6b08d702e0edp-20, + 0x1.3b2ab6fb92e5ep-27, 0x1.5d886e6d54203p-35, 0x1.430976b8ce6efp-43 + }; + static const double td[] = + { + 0x1p+0, 0x1.059b0d3158574p+0, 0x1.0b5586cf9890fp+0, + 0x1.11301d0125b51p+0, 0x1.172b83c7d517bp+0, 0x1.1d4873168b9aap+0, + 0x1.2387a6e756238p+0, 0x1.29e9df51fdee1p+0, 0x1.306fe0a31b715p+0, + 0x1.371a7373aa9cbp+0, 0x1.3dea64c123422p+0, 0x1.44e086061892dp+0, + 0x1.4bfdad5362a27p+0, 0x1.5342b569d4f82p+0, 0x1.5ab07dd485429p+0, + 0x1.6247eb03a5585p+0, 0x1.6a09e667f3bcdp+0, 0x1.71f75e8ec5f74p+0, + 0x1.7a11473eb0187p+0, 0x1.82589994cce13p+0, 0x1.8ace5422aa0dbp+0, + 0x1.93737b0cdc5e5p+0, 0x1.9c49182a3f09p+0, 0x1.a5503b23e255dp+0, + 0x1.ae89f995ad3adp+0, 0x1.b7f76f2fb5e47p+0, 0x1.c199bdd85529cp+0, + 0x1.cb720dcef9069p+0, 0x1.d5818dcfba487p+0, 0x1.dfc97337b9b5fp+0, + 0x1.ea4afa2a490dap+0, 0x1.f50765b6e454p+0 + }; + const double iln2 = 0x1.71547652b82fep+5; + const double big = 0x1.8p52; + double z = x; + uint32_t ux = asuint (x); + uint32_t ax = ux << 1; + if (__glibc_likely (ax < 0x7c400000u)) + { /* |x| < 0.15625 */ + if (__glibc_unlikely (ax < 0x676a09e8u)) + { /* |x| < 0x1.6a09e8p-24 */ + if (__glibc_unlikely (ax == 0x0u)) + return x; /* x = +-0 */ + return fmaf (fabsf (x), 0x1p-25f, x); } - else k = 0; - - /* x is now in primary range */ - hfx = (float)0.5*x; - hxs = x*hfx; - r1 = one+hxs*(Q1+hxs*(Q2+hxs*(Q3+hxs*(Q4+hxs*Q5)))); - t = (float)3.0-r1*hfx; - e = hxs*((r1-t)/((float)6.0 - x*t)); - if(k==0) return x - (x*e-hxs); /* c is 0 */ - else { - e = (x*(e-c)-c); - e -= hxs; - if(k== -1) return (float)0.5*(x-e)-(float)0.5; - if(k==1) { - if(x < (float)-0.25) return -(float)2.0*(e-(x+(float)0.5)); - else return one+(float)2.0*(x-e); - } - if (k <= -2 || k>56) { /* suffice to return exp(x)-1 */ - int32_t i; - y = one-(e-x); - GET_FLOAT_WORD(i,y); - SET_FLOAT_WORD(y,i+(k<<23)); /* add k to y's exponent */ - return y-one; - } - t = one; - if(k<23) { - int32_t i; - SET_FLOAT_WORD(t,0x3f800000 - (0x1000000>>k)); /* t=1-2^-k */ - y = t-(e-x); - GET_FLOAT_WORD(i,y); - SET_FLOAT_WORD(y,i+(k<<23)); /* add k to y's exponent */ - } else { - int32_t i; - SET_FLOAT_WORD(t,((0x7f-k)<<23)); /* 2^-k */ - y = x-(e+t); - y += one; - GET_FLOAT_WORD(i,y); - SET_FLOAT_WORD(y,i+(k<<23)); /* add k to y's exponent */ - } + static const double b[] = + { + 0x1.fffffffffffc2p-2, 0x1.55555555555fep-3, 0x1.555555559767fp-5, + 0x1.1111111098dc1p-7, 0x1.6c16bca988aa9p-10, 0x1.a01a07658483fp-13, + 0x1.a05b04d2c3503p-16, 0x1.71de3a960b5e3p-19 + }; + double z2 = z * z, z4 = z2 * z2; + double r = z + z2 + * ((b[0] + z * b[1]) + z2 * (b[2] + z * b[3]) + + z4 * ((b[4] + z * b[5]) + z2 * (b[6] + z * b[7]))); + return r; + } + if (__glibc_unlikely (ax >= 0x8562e430u)) + { /* |x| > 88.72 */ + if (ax > (0xffu << 24)) + return x + x; /* nan */ + if (__glibc_unlikely (ux >> 31)) + { /* x < 0 */ + if (ax == (0xffu << 24)) + return -1.0f; + return -1.0f + 0x1p-26f; } - return y; + if (ax == (0xffu << 24)) + return INFINITY; + return __math_oflowf (0); + } + double a = iln2 * z; + double ia = roundeven (a); + double h = a - ia; + double h2 = h * h; + uint64_t u = asuint64 (ia + big); + double c2 = c[2] + h * c[3], c0 = c[0] + h * c[1]; + const uint64_t *tdl = (uint64_t *) ((void *) td); + double sv = asdouble (tdl[u & 0x1f] + ((u >> 5) << 52)); + double r = (c0 + h2 * c2) * sv - 1.0; + float ub = r, lb = r - sv * 0x1.3b3p-33; + if (__glibc_unlikely (ub != lb)) + { + if (__glibc_unlikely (ux > 0xc18aa123u)) /* x < -17.32 */ + return -1.0f + 0x1p-26f; + const double iln2h = 0x1.7154765p+5; + const double iln2l = 0x1.5c17f0bbbe88p-26; + double s = sv; + h = (iln2h * z - ia) + iln2l * z; + h2 = h * h; + double w = s * h; + r = (s - 1) + w + * ((ch[0] + h * ch[1]) + + h2 * ((ch[2] + h * ch[3]) + h2 * (ch[4] + h * ch[5]))); + ub = r; + } + return ub; } libm_alias_float (__expm1, expm1) diff --git a/sysdeps/ieee754/flt-32/s_log10p1f.c b/sysdeps/ieee754/flt-32/s_log10p1f.c new file mode 100644 index 0000000000..64deb1eeda --- /dev/null +++ b/sysdeps/ieee754/flt-32/s_log10p1f.c @@ -0,0 +1,182 @@ +/* Correctly-rounded biased argument base-10 logarithm function for binary32 value. + +Copyright (c) 2022-2023 Alexei Sibidanov. + +This file is part of the CORE-MATH project +project (file src/binary32/log10p1/log10p1f.c revision bc385c2). + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +*/ + +#include <stdint.h> +#include <errno.h> +#include <fenv.h> +#include <libm-alias-float.h> +#include "math_config.h" + +static __attribute__ ((noinline)) float +as_special (float x) +{ + uint32_t ux = asuint (x); + if (ux == 0x7f800000u) + return x; /* +inf */ + uint32_t ax = ux << 1; + if (ax == 0x17fu << 24) + /* x+1 = 0.0 */ + return __math_divzerof (1); + if (ax > 0xff000000u) + return x + x; /* nan */ + return __math_invalidf (x); +} + +float +__log10p1f (float x) +{ + static const double tr[] = + { + 0x1p+0, 0x1.f81f82p-1, 0x1.f07c1fp-1, 0x1.e9131acp-1, + 0x1.e1e1e1ep-1, 0x1.dae6077p-1, 0x1.d41d41dp-1, 0x1.cd85689p-1, + 0x1.c71c71cp-1, 0x1.c0e0704p-1, 0x1.bacf915p-1, 0x1.b4e81b5p-1, + 0x1.af286bdp-1, 0x1.a98ef6p-1, 0x1.a41a41ap-1, 0x1.9ec8e95p-1, + 0x1.999999ap-1, 0x1.948b0fdp-1, 0x1.8f9c19p-1, 0x1.8acb90fp-1, + 0x1.8618618p-1, 0x1.8181818p-1, 0x1.7d05f41p-1, 0x1.78a4c81p-1, + 0x1.745d174p-1, 0x1.702e05cp-1, 0x1.6c16c17p-1, 0x1.6816817p-1, + 0x1.642c859p-1, 0x1.605816p-1, 0x1.5c9882cp-1, 0x1.58ed231p-1, + 0x1.5555555p-1, 0x1.51d07ebp-1, 0x1.4e5e0a7p-1, 0x1.4afd6ap-1, + 0x1.47ae148p-1, 0x1.446f865p-1, 0x1.4141414p-1, 0x1.3e22cbdp-1, + 0x1.3b13b14p-1, 0x1.3813814p-1, 0x1.3521cfbp-1, 0x1.323e34ap-1, + 0x1.2f684bep-1, 0x1.2c9fb4ep-1, 0x1.29e412ap-1, 0x1.27350b9p-1, + 0x1.2492492p-1, 0x1.21fb781p-1, 0x1.1f7047ep-1, 0x1.1cf06aep-1, + 0x1.1a7b961p-1, 0x1.1811812p-1, 0x1.15b1e5fp-1, 0x1.135c811p-1, + 0x1.1111111p-1, 0x1.0ecf56cp-1, 0x1.0c9715p-1, 0x1.0a6810ap-1, + 0x1.0842108p-1, 0x1.0624dd3p-1, 0x1.041041p-1, 0x1.0204081p-1, + 0.5 + }; + static const double tl[] = + { + 0x1.562ec497ef351p-43, 0x1.b9476892ea99cp-8, 0x1.b5e909c959eecp-7, + 0x1.45f4f59ec84fp-6, 0x1.af5f92cbcf2aap-6, 0x1.0ba01a6069052p-5, + 0x1.3ed119b99dd41p-5, 0x1.714834298a088p-5, 0x1.a30a9d98309c1p-5, + 0x1.d41d51266b9d9p-5, 0x1.02428c0f62dfcp-4, 0x1.1a23444eea521p-4, + 0x1.31b30543f2597p-4, 0x1.48f3ed39bd5e7p-4, 0x1.5fe8049a0bd06p-4, + 0x1.769140a6a78eap-4, 0x1.8cf1836c96595p-4, 0x1.a30a9d5551a84p-4, + 0x1.b8de4d1ee5b21p-4, 0x1.ce6e4202c7bc9p-4, 0x1.e3bc1accaa6eap-4, + 0x1.f8c9683b584b7p-4, 0x1.06cbd68ca86ep-3, 0x1.11142f19de3a2p-3, + 0x1.1b3e71fa795fp-3, 0x1.254b4d37a3354p-3, 0x1.2f3b6912cab79p-3, + 0x1.390f6831144f7p-3, 0x1.42c7e7fffb21ap-3, 0x1.4c65808c779aep-3, + 0x1.55e8c507508c7p-3, 0x1.5f52445deb049p-3, 0x1.68a288c3efe72p-3, + 0x1.71da17bdef98bp-3, 0x1.7af9736089c4bp-3, 0x1.84011952a11ebp-3, + 0x1.8cf1837a7d6d1p-3, 0x1.95cb2891e3048p-3, 0x1.9e8e7b0f85651p-3, + 0x1.a73beaa5d9dfep-3, 0x1.afd3e39454544p-3, 0x1.b856cf060c662p-3, + 0x1.c0c5134de0c6dp-3, 0x1.c91f1371bb611p-3, 0x1.d1652ffcd2bc5p-3, + 0x1.d997c6f634ae6p-3, 0x1.e1b733ab8fbadp-3, 0x1.e9c3ceadab4c8p-3, + 0x1.f1bdeec438f77p-3, 0x1.f9a5e7a5f906fp-3, 0x1.00be05ac02564p-2, + 0x1.04a054d81990cp-2, 0x1.087a083594e33p-2, 0x1.0c4b457098b4fp-2, + 0x1.101431aa1f48ap-2, 0x1.13d4f08b98411p-2, 0x1.178da53edaecbp-2, + 0x1.1b3e71e9f9391p-2, 0x1.1ee777defd526p-2, 0x1.2288d7b48d874p-2, + 0x1.2622b0f52dad8p-2, 0x1.29b522a4c594cp-2, 0x1.2d404b0e305b9p-2, + 0x1.30c4478f3f21dp-2, 0x1.34413509f6f4dp-2 + }; + static const union + { + float f; + uint32_t u; + } st[] = + { + { 0x0p+0 }, { 0x1.2p+3 }, { 0x1.8cp+6 }, + { 0x1.f38p+9 }, { 0x1.3878p+13 }, { 0x1.869fp+16 }, + { 0x1.e847ep+19 }, { 0x1.312cfep+23 } + }; + double z = x; + uint32_t ux = asuint (x); + if (__glibc_unlikely (ux >= 0x17fu << 23)) /* x <= -1 */ + return as_special (x); + uint32_t ax = ux & (~0u >> 1); + if (__glibc_unlikely (ax == 0)) + return copysign (0, x); + if (__glibc_unlikely (ax >= (0xff << 23))) /* +inf, nan */ + return as_special (x); + int ie = ux; + ie >>= 23; + unsigned int je = ie - 126; + je = (je * 0x9a209a8) >> 29; + if (__glibc_unlikely (ux == st[je].u)) + return je; + + uint64_t tz = asuint64 (z + 1.0); + uint64_t m = tz & (~(uint64_t) 0 >> 12); + int32_t e = (tz >> 52) - 1023, j = ((m + ((int64_t) 1 << 45)) >> 46); + tz = m | ((uint64_t) 0x3ff << 52); + double ix = tr[j], l = tl[j]; + double off = e * 0x1.34413509f79ffp-2 + l; + double v = asdouble (tz) * ix - 1; + + static const double h[] = + { + 0x1.bcb7b150bf6d8p-2, -0x1.bcb7b1738c07ep-3, + 0x1.287de19e795c5p-3, -0x1.bca44edc44bc4p-4 + }; + double v2 = v * v; + double f = (h[0] + v * h[1]) + v2 * (h[2] + v * h[3]); + double r = off + v * f; + float ub = r; + float lb = r + 0x1.5cp-42; + if (__glibc_unlikely (ub != lb)) + { + if (__glibc_unlikely (ax < 0x3d32743eu)) + { /* 0x1.64e87cp-5f */ + if (__glibc_unlikely (ux == 0xa6aba8afu)) + return -0x1.2a33bcp-51f + 0x1p-76f; + if (__glibc_unlikely (ux == 0xaf39b9a7u)) + return -0x1.42a342p-34f + 0x1p-59f; + if (__glibc_unlikely (ux == 0x399a7c00u)) + return 0x1.0c53cap-13f + 0x1p-38f; + z /= 2.0 + z; + double z2 = z * z, z4 = z2 * z2; + static const double c[] = + { + 0x1.bcb7b1526e50fp-1, 0x1.287a76370129dp-2, + 0x1.63c62378fa3dbp-3, 0x1.fca4139a42374p-4 + }; + float ret = z * ((c[0] + z2 * c[1]) + z4 * (c[2] + z2 * c[3])); + if (x != 0.0f && ret == 0.0) + __set_errno (ERANGE); + return ret; + } + if (__glibc_unlikely (ux == 0x7956ba5eu)) + return 0x1.16bebap+5f + 0x1p-20f; + if (__glibc_unlikely (ux == 0xbd86ffb9u)) + return -0x1.e53536p-6f + 0x1p-31f; + static const double c[] = + { + 0x1.bcb7b1526e50ep-2, -0x1.bcb7b1526e53dp-3, 0x1.287a7636f3fa2p-3, + -0x1.bcb7b146a14b3p-4, 0x1.63c627d5219cbp-4, -0x1.2880736c8762dp-4, + 0x1.fc1ecf913961ap-5 + }; + f = v + * ((c[0] + v * c[1]) + + v2 * ((c[2] + v * c[3]) + v2 * (c[4] + v * c[5] + v2 * c[6]))); + f += l - tl[0]; + double el = e * 0x1.34413509f79ffp-2; + r = el + f; + ub = r; + } + return ub; +} +libm_alias_float (__log10p1, log10p1) diff --git a/sysdeps/ieee754/flt-32/s_log1pf.c b/sysdeps/ieee754/flt-32/s_log1pf.c index 555f0f82c8..d1686e78aa 100644 --- a/sysdeps/ieee754/flt-32/s_log1pf.c +++ b/sysdeps/ieee754/flt-32/s_log1pf.c @@ -1,116 +1,181 @@ -/* s_log1pf.c -- float version of s_log1p.c. - */ +/* Correctly-rounded biased argument natural logarithm function for binary32 + value. -/* - * ==================================================== - * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. - * - * Developed at SunPro, a Sun Microsystems, Inc. business. - * Permission to use, copy, modify, and distribute this - * software is freely granted, provided that this notice - * is preserved. - * ==================================================== - */ +Copyright (c) 2023, 2024 Alexei Sibidanov. -#include <float.h> -#include <math.h> -#include <math-barriers.h> -#include <math_private.h> -#include <math-underflow.h> -#include <libc-diag.h> +This file is part of the CORE-MATH project +project (file src/binary32/log1p/log1pf.c revision bc385c2). -static const float -ln2_hi = 6.9313812256e-01, /* 0x3f317180 */ -ln2_lo = 9.0580006145e-06, /* 0x3717f7d1 */ -two25 = 3.355443200e+07, /* 0x4c000000 */ -Lp1 = 6.6666668653e-01, /* 3F2AAAAB */ -Lp2 = 4.0000000596e-01, /* 3ECCCCCD */ -Lp3 = 2.8571429849e-01, /* 3E924925 */ -Lp4 = 2.2222198546e-01, /* 3E638E29 */ -Lp5 = 1.8183572590e-01, /* 3E3A3325 */ -Lp6 = 1.5313838422e-01, /* 3E1CD04F */ -Lp7 = 1.4798198640e-01; /* 3E178897 */ +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -static const float zero = 0.0; +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -float -__log1pf(float x) +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +*/ + +#include <math.h> +#include <stdint.h> +#include <errno.h> +#include <libm-alias-float.h> +#include "math_config.h" + +static __attribute__ ((noinline)) float +as_special (float x) { - float hfsq,f,c,s,z,R,u; - int32_t k,hx,hu,ax; + uint32_t t = asuint (x); + if (t == 0xbf800000u) + return __math_divzerof (1); + if (t == 0x7f800000u) + return x; /* +inf */ + uint32_t ax = t << 1; + if (ax > 0xff000000u) + return x + x; /* nan */ + return __math_invalidf (0.0f); +} - GET_FLOAT_WORD(hx,x); - ax = hx&0x7fffffff; +float +__log1pf (float x) +{ + static const double x0[] = + { + 0x1.f81f82p-1, 0x1.e9131acp-1, 0x1.dae6077p-1, 0x1.cd85689p-1, + 0x1.c0e0704p-1, 0x1.b4e81b5p-1, 0x1.a98ef6p-1, 0x1.9ec8e95p-1, + 0x1.948b0fdp-1, 0x1.8acb90fp-1, 0x1.8181818p-1, 0x1.78a4c81p-1, + 0x1.702e05cp-1, 0x1.6816817p-1, 0x1.605816p-1, 0x1.58ed231p-1, + 0x1.51d07ebp-1, 0x1.4afd6ap-1, 0x1.446f865p-1, 0x1.3e22cbdp-1, + 0x1.3813814p-1, 0x1.323e34ap-1, 0x1.2c9fb4ep-1, 0x1.27350b9p-1, + 0x1.21fb781p-1, 0x1.1cf06aep-1, 0x1.1811812p-1, 0x1.135c811p-1, + 0x1.0ecf56cp-1, 0x1.0a6810ap-1, 0x1.0624dd3p-1, 0x1.0204081p-1 + }; + static const double lixb[] = + { + 0x1.fc0a8909b4218p-7, 0x1.77458f51aac89p-5, 0x1.341d793afb997p-4, + 0x1.a926d3a5ebd2ap-4, 0x1.0d77e7a8a823dp-3, 0x1.44d2b6c557102p-3, + 0x1.7ab89040accecp-3, 0x1.af3c94ecab3d6p-3, 0x1.e27076d54e6c9p-3, + 0x1.0a324e3888ad5p-2, 0x1.22941fc0c7357p-2, 0x1.3a64c56ae3fdbp-2, + 0x1.51aad874af21fp-2, 0x1.686c81d300eap-2, 0x1.7eaf83c7fa9b5p-2, + 0x1.947941aa610ecp-2, 0x1.a9cec9a3f023bp-2, 0x1.beb4d9ea4156ep-2, + 0x1.d32fe7f35e5c7p-2, 0x1.e7442617b817ap-2, 0x1.faf588dd5ed1p-2, + 0x1.0723e5c635c39p-1, 0x1.109f39d53c99p-1, 0x1.19ee6b38a4668p-1, + 0x1.23130d7f93c3bp-1, 0x1.2c0e9ec9b0b85p-1, 0x1.34e289cb35eccp-1, + 0x1.3d9026ad3d3f3p-1, 0x1.4618bc1eadbbbp-1, 0x1.4e7d8127dd8a9p-1, + 0x1.56bf9d5967092p-1, 0x1.5ee02a926936ep-1 + }; + static const double lix[] = + { + 0x1.fc0a890fc03e4p-7, 0x1.77458f532dcfcp-5, 0x1.341d793bbd1d1p-4, + 0x1.a926d3a6ad563p-4, 0x1.0d77e7a908e59p-3, 0x1.44d2b6c5b7d1ep-3, + 0x1.7ab890410d909p-3, 0x1.af3c94ed0bff3p-3, 0x1.e27076d5af2e6p-3, + 0x1.0a324e38b90e3p-2, 0x1.22941fc0f7966p-2, 0x1.3a64c56b145eap-2, + 0x1.51aad874df82dp-2, 0x1.686c81d3314afp-2, 0x1.7eaf83c82afc3p-2, + 0x1.947941aa916fbp-2, 0x1.a9cec9a42084ap-2, 0x1.beb4d9ea71b7cp-2, + 0x1.d32fe7f38ebd5p-2, 0x1.e7442617e8788p-2, 0x1.faf588dd8f31fp-2, + 0x1.0723e5c64df4p-1, 0x1.109f39d554c97p-1, 0x1.19ee6b38bc96fp-1, + 0x1.23130d7fabf43p-1, 0x1.2c0e9ec9c8e8cp-1, 0x1.34e289cb4e1d3p-1, + 0x1.3d9026ad556fbp-1, 0x1.4618bc1ec5ec2p-1, 0x1.4e7d8127f5bb1p-1, + 0x1.56bf9d597f399p-1, 0x1.5ee02a9281675p-1 + }; + static const double b[] = + { + 0x1p+0, + -0x1p-1, + 0x1.5555555556f6bp-2, + -0x1.00000000029b9p-2, + 0x1.9999988d176e4p-3, + -0x1.55555418889a7p-3, + 0x1.24adeca50e2bcp-3, + -0x1.001ba33bf57cfp-3 + }; - k = 1; - if (hx < 0x3ed413d7) { /* x < 0.41422 */ - if(ax>=0x3f800000) { /* x <= -1.0 */ - if(x==(float)-1.0) return -two25/zero; /* log1p(-1)=-inf */ - else return (x-x)/(x-x); /* log1p(x<-1)=NaN */ - } - if(ax<0x31000000) { /* |x| < 2**-29 */ - math_force_eval(two25+x); /* raise inexact */ - if (ax<0x24800000) /* |x| < 2**-54 */ - { - math_check_force_underflow (x); - return x; - } - else - return x - x*x*(float)0.5; - } - if(hx>0||hx<=((int32_t)0xbe95f61f)) { - k=0;f=x;hu=1;} /* -0.2929<x<0.41422 */ + double z = x; + uint32_t ux = asuint (x); + uint32_t ax = ux & (~0u >> 1); + if (__glibc_likely (ax < 0x3c880000)) + { + if (__glibc_unlikely (ax < 0x33000000)) + { + if (!ax) + return x; + return fmaf (x, -x, x); } - if (hx >= 0x7f800000) return x+x; - if(k!=0) { - if(hx<0x5a000000) { - u = (float)1.0+x; - GET_FLOAT_WORD(hu,u); - k = (hu>>23)-127; - /* correction term */ - c = (k>0)? (float)1.0-(u-x):x-(u-(float)1.0); - c /= u; - } else { - u = x; - GET_FLOAT_WORD(hu,u); - k = (hu>>23)-127; - c = 0; - } - hu &= 0x007fffff; - if(hu<0x3504f7) { - SET_FLOAT_WORD(u,hu|0x3f800000);/* normalize u */ - } else { - k += 1; - SET_FLOAT_WORD(u,hu|0x3f000000); /* normalize u/2 */ - hu = (0x00800000-hu)>>2; + double z2 = z * z, z4 = z2 * z2; + double f = z2 + * ((b[1] + z * b[2]) + z2 * (b[3] + z * b[4]) + + z4 * ((b[5] + z * b[6]) + z2 * b[7])); + double r = z + f; + if (__glibc_unlikely ((asuint64 (r) & 0xfffffffll) == 0)) + r += 0x1p14 * (f + (z - r)); + return r; + } + else + { + if (__glibc_unlikely (ux >= 0xbf800000u || ax >= 0x7f800000)) + return as_special (x); + uint64_t tp = asuint64 (z + 1); + int e = tp >> 52; + uint64_t m52 = tp & (~(uint64_t) 0 >> 12); + unsigned int j = (tp >> (52 - 5)) & 31; + e -= 0x3ff; + double xd = asdouble (m52 | ((uint64_t) 0x3ff << 52)); + z = xd * x0[j] - 1; + static const double c[] = + { + -0x1.3902c33434e7fp-43, 0x1.ffffffe1cbed5p-1, -0x1.ffffff7d1b014p-2, + 0x1.5564e0ed3613ap-2, -0x1.0012232a00d4ap-2 + }; + const double ln2 = 0x1.62e42fefa39efp-1; + double z2 = z * z, + r = (ln2 * e + lixb[j]) + + z * ((c[1] + z * c[2]) + z2 * (c[3] + z * c[4])); + float ub = r; + float lb = r + 2.2e-11; + if (__glibc_unlikely (ub != lb)) + { + double z4 = z2 * z2, + f = z + * ((b[0] + z * b[1]) + z2 * (b[2] + z * b[3]) + + z4 * ((b[4] + z * b[5]) + z2 * (b[6] + z * b[7]))); + const double ln2l = 0x1.7f7d1cf79abcap-20, ln2h = 0x1.62e4p-1; + double Lh = ln2h * e; + double Ll = ln2l * e; + double rl = f + Ll + lix[j]; + double tr = rl + Lh; + if (__glibc_unlikely ((asuint64 (tr) & 0xfffffffll) == 0)) + { + if (x == -0x1.247ab0p-6) + return -0x1.271f0ep-6f - 0x1p-31f; + if (x == -0x1.3a415ep-5) + return -0x1.407112p-5f + 0x1p-30f; + if (x == 0x1.fb035ap-2) + return 0x1.9bddc2p-2f + 0x1p-27f; + tr += 64 * (rl + (Lh - tr)); } - f = u-(float)1.0; - } - hfsq=(float)0.5*f*f; - if(hu==0) { /* |f| < 2**-20 */ - if(f==zero) { - if(k==0) return zero; - else {c += k*ln2_lo; return k*ln2_hi+c;} + else if (rl + (Lh - tr) == 0.0) + { + if (x == 0x1.b7fd86p-4) + return 0x1.a1ece2p-4f + 0x1p-29f; + if (x == -0x1.3a415ep-5) + return -0x1.407112p-5f + 0x1p-30f; + if (x == 0x1.43c7e2p-6) + return 0x1.409f80p-6f + 0x1p-31f; } - R = hfsq*(1.0f-0.66666666666666666f*f); - if(k==0) return f-R; else - return k*ln2_hi-((R-(k*ln2_lo+c))-f); + ub = tr; } - s = f/((float)2.0+f); - z = s*s; - R = z*(Lp1+z*(Lp2+z*(Lp3+z*(Lp4+z*(Lp5+z*(Lp6+z*Lp7)))))); - if (k == 0) - return f - (hfsq - s * (hfsq + R)); - else - { - /* With GCC 7 when compiling with -Os the compiler warns - that c might be used uninitialized. This can't be true - because k must be 0 for c to be uninitialized and we - handled that computation earlier without using c. */ - DIAG_PUSH_NEEDS_COMMENT; - DIAG_IGNORE_Os_NEEDS_COMMENT (7, "-Wmaybe-uninitialized"); - return k * ln2_hi - ((hfsq - (s * (hfsq + R) - + (k * ln2_lo + c))) - f); - DIAG_POP_NEEDS_COMMENT; - } + return ub; + } } +libm_alias_float (__log1p, log1p) +strong_alias (__log1pf, __logp1f) +libm_alias_float (__logp1, logp1) diff --git a/sysdeps/ieee754/flt-32/s_log2p1f.c b/sysdeps/ieee754/flt-32/s_log2p1f.c new file mode 100644 index 0000000000..09e77dc08a --- /dev/null +++ b/sysdeps/ieee754/flt-32/s_log2p1f.c @@ -0,0 +1,248 @@ +/* Correctly-rounded biased argument natural logarithm function for binary32 + value. + +Copyright (c) 2022-2024 Alexei Sibidanov. + +This file is part of the CORE-MATH project +project (file src/binary32/log2p1/log2p1f.c revision bc385c2). + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +*/ + +#include <errno.h> +#include <math.h> +#include <math-underflow.h> +#include <libm-alias-float.h> +#include "math_config.h" + +float +__log2p1f (float x) +{ + static const double ix[] = + { + 0x1p+0, 0x1.fc07f01fcp-1, 0x1.f81f81f82p-1, + 0x1.f44659e4ap-1, 0x1.f07c1f07cp-1, 0x1.ecc07b302p-1, + 0x1.e9131abfp-1, 0x1.e573ac902p-1, 0x1.e1e1e1e1ep-1, + 0x1.de5d6e3f8p-1, 0x1.dae6076bap-1, 0x1.d77b654b8p-1, + 0x1.d41d41d42p-1, 0x1.d0cb58f6ep-1, 0x1.cd8568904p-1, + 0x1.ca4b3055ep-1, 0x1.c71c71c72p-1, 0x1.c3f8f01c4p-1, + 0x1.c0e070382p-1, 0x1.bdd2b8994p-1, 0x1.bacf914c2p-1, + 0x1.b7d6c3ddap-1, 0x1.b4e81b4e8p-1, 0x1.b2036406cp-1, + 0x1.af286bca2p-1, 0x1.ac5701ac6p-1, 0x1.a98ef606ap-1, + 0x1.a6d01a6dp-1, 0x1.a41a41a42p-1, 0x1.a16d3f97ap-1, + 0x1.9ec8e951p-1, 0x1.9c2d14ee4p-1, 0x1.99999999ap-1, + 0x1.970e4f80cp-1, 0x1.948b0fcd6p-1, 0x1.920fb49dp-1, + 0x1.8f9c18f9cp-1, 0x1.8d3018d3p-1, 0x1.8acb90f6cp-1, + 0x1.886e5f0acp-1, 0x1.861861862p-1, 0x1.83c977ab2p-1, + 0x1.818181818p-1, 0x1.7f405fd02p-1, 0x1.7d05f417ep-1, + 0x1.7ad2208ep-1, 0x1.78a4c8178p-1, 0x1.767dce434p-1, + 0x1.745d1745ep-1, 0x1.724287f46p-1, 0x1.702e05c0cp-1, + 0x1.6e1f76b44p-1, 0x1.6c16c16c2p-1, 0x1.6a13cd154p-1, + 0x1.681681682p-1, 0x1.661ec6a52p-1, 0x1.642c8590cp-1, + 0x1.623fa7702p-1, 0x1.605816058p-1, 0x1.5e75bb8dp-1, + 0x1.5c9882b94p-1, 0x1.5ac056b02p-1, 0x1.58ed23082p-1, + 0x1.571ed3c5p-1, 0x1.555555556p-1, 0x1.5390948f4p-1, + 0x1.51d07eae2p-1, 0x1.501501502p-1, 0x1.4e5e0a73p-1, + 0x1.4cab88726p-1, 0x1.4afd6a052p-1, 0x1.49539e3b2p-1, + 0x1.47ae147aep-1, 0x1.460cbc7f6p-1, 0x1.446f86562p-1, + 0x1.42d6625d6p-1, 0x1.414141414p-1, 0x1.3fb013fbp-1, + 0x1.3e22cbce4p-1, 0x1.3c995a47cp-1, 0x1.3b13b13b2p-1, + 0x1.3991c2c18p-1, 0x1.381381382p-1, 0x1.3698df3dep-1, + 0x1.3521cfb2cp-1, 0x1.33ae45b58p-1, 0x1.323e34a2cp-1, + 0x1.30d19013p-1, 0x1.2f684bda2p-1, 0x1.2e025c04cp-1, + 0x1.2c9fb4d82p-1, 0x1.2b404ad02p-1, 0x1.29e4129e4p-1, + 0x1.288b01288p-1, 0x1.27350b882p-1, 0x1.25e22708p-1, + 0x1.24924924ap-1, 0x1.23456789ap-1, 0x1.21fb78122p-1, + 0x1.20b470c68p-1, 0x1.1f7047dc2p-1, 0x1.1e2ef3b4p-1, + 0x1.1cf06ada2p-1, 0x1.1bb4a4046p-1, 0x1.1a7b9611ap-1, + 0x1.19453808cp-1, 0x1.181181182p-1, 0x1.16e068942p-1, + 0x1.15b1e5f76p-1, 0x1.1485f0e0ap-1, 0x1.135c81136p-1, + 0x1.12358e75ep-1, 0x1.111111112p-1, 0x1.0fef010fep-1, + 0x1.0ecf56be6p-1, 0x1.0db20a89p-1, 0x1.0c9714fbcp-1, + 0x1.0b7e6ec26p-1, 0x1.0a6810a68p-1, 0x1.0953f3902p-1, + 0x1.084210842p-1, 0x1.073260a48p-1, 0x1.0624dd2f2p-1, + 0x1.05197f7d8p-1, 0x1.041041042p-1, 0x1.03091b52p-1, + 0x1.020408102p-1, 0x1.01010101p-1, 0x1p-1 + }; + + static const double lix[] = { + 0x0p+0, -0x1.6fe50b6f1eafap-7, -0x1.6e79685c160d5p-6, + -0x1.11cd1d51955bap-5, -0x1.6bad37591e03p-5, -0x1.c4dfab908ddb5p-5, + -0x1.0eb389fab4795p-4, -0x1.3aa2fdd26ae99p-4, -0x1.663f6faca846bp-4, + -0x1.918a16e4cb157p-4, -0x1.bc84240a78a13p-4, -0x1.e72ec1181cfb1p-4, + -0x1.08c588cd964e4p-3, -0x1.1dcd19759f2e3p-3, -0x1.32ae9e27627c6p-3, + -0x1.476a9f989a58ap-3, -0x1.5c01a39fa6533p-3, -0x1.70742d4eed455p-3, + -0x1.84c2bd02d6434p-3, -0x1.98edd077e9f0ap-3, -0x1.acf5e2db31eeap-3, + -0x1.c0db6cddaa82dp-3, -0x1.d49ee4c33121ap-3, -0x1.e840be751d775p-3, + -0x1.fbc16b9003e0bp-3, -0x1.0790adbae3fcp-2, -0x1.11307dad465b5p-2, + -0x1.1ac05b2924cc5p-2, -0x1.24407ab0cc41p-2, -0x1.2db10fc4ea424p-2, + -0x1.37124cea58697p-2, -0x1.406463b1d455dp-2, -0x1.49a784bcbaa37p-2, + -0x1.52dbdfc4f341dp-2, -0x1.5c01a39ff2c9bp-2, -0x1.6518fe46abaa5p-2, + -0x1.6e221cd9d6933p-2, -0x1.771d2ba7f5791p-2, -0x1.800a56315ee2ap-2, + -0x1.88e9c72df8611p-2, -0x1.91bba891d495fp-2, -0x1.9a8023920fa4dp-2, + -0x1.a33760a7fbca6p-2, -0x1.abe18797d2effp-2, -0x1.b47ebf734b923p-2, + -0x1.bd0f2e9eb2b84p-2, -0x1.c592fad2be1aap-2, -0x1.ce0a4923cf5e6p-2, + -0x1.d6753e02f4ebcp-2, -0x1.ded3fd445afp-2, -0x1.e726aa1e558fep-2, + -0x1.ef6d67325ba38p-2, -0x1.f7a8568c8aea6p-2, -0x1.ffd799a81be87p-2, + 0x1.f804ae8d33c4p-2, 0x1.efec61b04af4ep-2, 0x1.e7df5fe572606p-2, + 0x1.dfdd89d5b0009p-2, 0x1.d7e6c0abbd924p-2, 0x1.cffae611a74d6p-2, + 0x1.c819dc2d8578cp-2, 0x1.c043859e5bdbcp-2, 0x1.b877c57b47c04p-2, + 0x1.b0b67f4f29a66p-2, 0x1.a8ff97183ed07p-2, 0x1.a152f14293c74p-2, + 0x1.99b072a9289cap-2, 0x1.921800927e284p-2, 0x1.8a8980ac4113p-2, + 0x1.8304d90c2859dp-2, 0x1.7b89f02cbd49ap-2, 0x1.7418aceb84ab1p-2, + 0x1.6cb0f68656c95p-2, 0x1.6552b49993dc2p-2, 0x1.5dfdcf1eacd7bp-2, + 0x1.56b22e6b97c18p-2, 0x1.4f6fbb2ce6943p-2, 0x1.48365e6957b42p-2, + 0x1.4106017c0dbcfp-2, 0x1.39de8e15727d9p-2, 0x1.32bfee37489bcp-2, + 0x1.2baa0c34989c3p-2, 0x1.249cd2b177fd5p-2, 0x1.1d982c9d50468p-2, + 0x1.169c0536677acp-2, 0x1.0fa848045f67bp-2, 0x1.08bce0d9a7c6p-2, + 0x1.01d9bbcf66a2cp-2, 0x1.f5fd8a90e2d85p-3, 0x1.e857d3d3af1e5p-3, + 0x1.dac22d3ec5f4ep-3, 0x1.cd3c712db459ap-3, 0x1.bfc67a7ff3c22p-3, + 0x1.b2602497678f4p-3, 0x1.a5094b555a1f8p-3, 0x1.97c1cb136b96fp-3, + 0x1.8a8980ac8652dp-3, 0x1.7d60496c83f66p-3, 0x1.7046031c7cdafp-3, + 0x1.633a8bf460335p-3, 0x1.563dc2a08b102p-3, 0x1.494f863bbc1dep-3, + 0x1.3c6fb6507a37ep-3, 0x1.2f9e32d5257ecp-3, 0x1.22dadc2a627efp-3, + 0x1.1625931802e49p-3, 0x1.097e38cef9519p-3, 0x1.f9c95dc138295p-4, + 0x1.e0b1ae90505f6p-4, 0x1.c7b528b5fcffap-4, 0x1.aed391abb17a1p-4, + 0x1.960caf9bd35eap-4, 0x1.7d60496e3edebp-4, 0x1.64ce26bf2108ep-4, + 0x1.4c560fe5b573bp-4, 0x1.33f7cde24adfbp-4, 0x1.1bb32a5ed9353p-4, + 0x1.0387efbd3006ep-4, 0x1.d6ebd1f1d0955p-5, 0x1.a6f9c37a8beabp-5, + 0x1.77394c9d6762cp-5, 0x1.47aa07358e1a4p-5, 0x1.184b8e4d490efp-5, + 0x1.d23afc4d95c78p-6, 0x1.743ee8678a7cbp-6, 0x1.16a21e243bf78p-6, + 0x1.72c7ba20c907ep-7, 0x1.720d9c0536e17p-8, 0x0p+0 + }; + + double z = x; + uint32_t ux = asuint (x); + uint32_t ax = ux & (~0u >> 1); + if (__glibc_unlikely (ux >= 0x17fu << 23)) + { /* x <= -1 */ + if (ux == (0x17fu << 23)) + return __math_divzerof (1); + if (ux > (0x1ffu << 23)) + return x + x; /* nan */ + return __math_invalidf (x); + } + else if (__glibc_unlikely (ax >= (0xff << 23))) + { /* +inf, nan */ + if (ax > (0xff << 23)) + return x + x; /* nan */ + return INFINITY; + } + else if (__glibc_likely (ax < 0x3cb7aa26u)) + { /* |x| < 0x1.6f544cp-6 */ + double z2 = z * z, z4 = z2 * z2; + if ( __glibc_likely (ax < 0x3b9d9d34u)) + { /* |x| < 0x1.3b3a68p-8 */ + if (__glibc_likely (ax < 0x39638a7eu)) + { /* |x| < 0x1.c714fcp-13 */ + if (__glibc_likely (ax < 0x329c5639u)) + { /* |x| < 0x1.38ac72p-26 */ + static const double c[] = + { + 0x1.71547652b82fep+0, -0x1.71547652b82ffp-1 + }; + return z * (c[0] + z * c[1]); + } + else + { + if (__glibc_unlikely (ux == 0x32ff7045u)) + return 0x1.70851ap-25f - 0x1.8p-80f; + if (__glibc_unlikely (ux == 0xb395efbbu)) + return -0x1.b0a00ap-24f + 0x1p-76f; + if (__glibc_unlikely (ux == 0x35a14df7u)) + return 0x1.d16d2p-20f + 0x1p-72f; + if (__glibc_unlikely (ux == 0x3841cb81u)) + return 0x1.17949ep-14f + 0x1p-67f; + static const double c[] = + { + 0x1.71547652b82fep+0, -0x1.71547652b82fdp-1, + 0x1.ec709ead0c9a7p-2, -0x1.7154773c1cb29p-2 + }; + return z * ((c[0] + z * c[1]) + z2 * (c[2] + z * c[3])); + } + } + else + { + if (__glibc_unlikely (ux == 0xbac9363du)) + return -0x1.2282aap-9f + 0x1p-61f; + static const double c[] = + { + 0x1.71547652b82fep+0, -0x1.71547652b83p-1, + 0x1.ec709dc28f51bp-2, -0x1.7154765157748p-2, + 0x1.2778a510a3682p-2, -0x1.ec745df1551fcp-3 + }; + return z + * ((c[0] + z * c[1]) + z2 * (c[2] + z * c[3]) + + z4 * ((c[4] + z * c[5]))); + } + } + else + { + static const double c[] = + { + 0x1.71547652b82fep+0, -0x1.71547652b82fbp-1, + 0x1.ec709dc3b6a73p-2, -0x1.71547652dc09p-2, + 0x1.2776c1a88901p-2, -0x1.ec7095bd4d208p-3, + 0x1.a66bec7fc8f7p-3, -0x1.71a900fc3f3f9p-3 + }; + return z + * ((c[0] + z * c[1]) + z2 * (c[2] + z * c[3]) + + z4 * ((c[4] + z * c[5]) + z2 * (c[6] + z * c[7]))); + } + } + else + { /* |x| >= 0x1.6f544cp-6 */ + float h, l; + /* With gcc 6.3.0, if we return 0x1.e90026p+4f + 0x1.fp-21 + in the second exceptional case, with rounding up it yields + 0x1.e90026p+4 which is incorrect, thus we use this workaround. See + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112367. */ + if (__glibc_unlikely (ux == 0x52928e33u)) + { + h = 0x1.318ffap+5f; + l = 0x1.fp-20f; + return h + l; + } + if (__glibc_unlikely (ux == 0x4ebd09e3u)) + { + h = 0x1.e90026p+4f; + l = 0x1.fp-21; + return h + l; + } + uint64_t tp = asuint64 (z + 1.0); + uint64_t m = tp & (~(uint64_t) 0 >> 12); + int e = (tp >> 52) - 0x3ff; + int j = (m + ((int64_t) 1 << (52 - 8))) >> (52 - 7), k = j > 53; + e += k; + double xd = asdouble (m | (uint64_t) 0x3ff << 52); + z = fma (xd, ix[j], -1.0); + static const double c[] = + { + 0x1.71547652b82fep+0, -0x1.71547652b82ffp-1, 0x1.ec709dc32988bp-2, + -0x1.715476521ec2bp-2, 0x1.277801a1ad904p-2, -0x1.ec731704d6a88p-3 + }; + double z2 = z * z; + double c0 = c[0] + z * c[1]; + double c2 = c[2] + z * c[3]; + double c4 = c[4] + z * c[5]; + c0 += z2 * (c2 + z2 * c4); + return (z * c0 - lix[j]) + e; + } +} +libm_alias_float (__log2p1, log2p1) diff --git a/sysdeps/m68k/m680x0/fpu/math_errf.c b/sysdeps/ieee754/flt-32/w_log1pf.c index 1cc8931700..1cc8931700 100644 --- a/sysdeps/m68k/m680x0/fpu/math_errf.c +++ b/sysdeps/ieee754/flt-32/w_log1pf.c diff --git a/sysdeps/loongarch/lp64/libm-test-ulps b/sysdeps/loongarch/lp64/libm-test-ulps index 833dca40e4..7c20711268 100644 --- a/sysdeps/loongarch/lp64/libm-test-ulps +++ b/sysdeps/loongarch/lp64/libm-test-ulps @@ -228,7 +228,7 @@ ldouble: 3 Function: Real part of "cacosh_upward": double: 4 -float: 3 +float: 4 ldouble: 6 Function: Imaginary part of "cacosh_upward": @@ -720,6 +720,7 @@ float: 1 ldouble: 1 Function: Imaginary part of "csin": +float: 1 ldouble: 1 Function: Real part of "csin_downward": @@ -977,22 +978,18 @@ ldouble: 3 Function: "exp10m1": double: 4 -float: 2 ldouble: 3 Function: "exp10m1_downward": double: 3 -float: 3 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 3 ldouble: 6 Function: "exp10m1_upward": double: 5 -float: 3 ldouble: 6 Function: "exp2": @@ -1014,22 +1011,18 @@ ldouble: 2 Function: "exp2m1": double: 2 -float: 2 ldouble: 2 Function: "exp2m1_downward": double: 3 -float: 3 ldouble: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 ldouble: 4 Function: "exp2m1_upward": double: 3 -float: 3 ldouble: 5 Function: "exp_downward": @@ -1046,22 +1039,18 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 2 Function: "expm1_downward": double: 1 -float: 1 ldouble: 2 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 ldouble: 3 Function: "gamma": @@ -1207,42 +1196,34 @@ ldouble: 1 Function: "log10p1": double: 2 -float: 2 ldouble: 3 Function: "log10p1_downward": double: 2 -float: 3 ldouble: 4 Function: "log10p1_towardzero": double: 3 -float: 2 ldouble: 3 Function: "log10p1_upward": double: 2 -float: 3 ldouble: 4 Function: "log1p": double: 1 -float: 1 ldouble: 3 Function: "log1p_downward": double: 2 -float: 2 ldouble: 3 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1264,22 +1245,18 @@ ldouble: 1 Function: "log2p1": double: 2 -float: 2 ldouble: 3 Function: "log2p1_downward": double: 2 -float: 2 ldouble: 3 Function: "log2p1_towardzero": double: 2 -float: 2 ldouble: 2 Function: "log2p1_upward": double: 2 -float: 2 ldouble: 3 Function: "log_downward": @@ -1294,22 +1271,18 @@ ldouble: 2 Function: "logp1": double: 1 -float: 1 ldouble: 3 Function: "logp1_downward": double: 2 -float: 2 ldouble: 3 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "pow": @@ -1432,22 +1405,18 @@ ldouble: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 4 Function: "tgamma_downward": double: 9 -float: 7 ldouble: 5 Function: "tgamma_towardzero": double: 9 -float: 7 ldouble: 5 Function: "tgamma_upward": double: 9 -float: 8 ldouble: 4 Function: "y0": diff --git a/sysdeps/loongarch/nptl/thread_pointer.h b/sysdeps/loongarch/nptl/thread_pointer.h new file mode 100644 index 0000000000..cc96062c93 --- /dev/null +++ b/sysdeps/loongarch/nptl/thread_pointer.h @@ -0,0 +1,30 @@ +/* __thread_pointer definition. loongarch version. + Copyright (C) 2021-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + <https://www.gnu.org/licenses/>. */ + +#ifndef _SYS_THREAD_POINTER_H +#define _SYS_THREAD_POINTER_H + +register void *__thread_self asm ("$tp"); + +static inline void * +__thread_pointer (void) +{ + return __thread_self; +} + +#endif /* _SYS_THREAD_POINTER_H */ diff --git a/sysdeps/loongarch/nptl/tls.h b/sysdeps/loongarch/nptl/tls.h index ac1a92ea7b..675c0d27c1 100644 --- a/sysdeps/loongarch/nptl/tls.h +++ b/sysdeps/loongarch/nptl/tls.h @@ -26,8 +26,8 @@ #include <stddef.h> #include <stdint.h> #include <dl-dtv.h> +#include "thread_pointer.h" -register void *__thread_self asm ("$tp"); #define READ_THREAD_POINTER() ({ __thread_self; }) /* Get system call information. */ diff --git a/sysdeps/m68k/coldfire/fpu/libm-test-ulps b/sysdeps/m68k/coldfire/fpu/libm-test-ulps index 1b25a70e3f..8130d491e8 100644 --- a/sysdeps/m68k/coldfire/fpu/libm-test-ulps +++ b/sysdeps/m68k/coldfire/fpu/libm-test-ulps @@ -131,12 +131,6 @@ Function: "log10": double: 1 float: 2 -Function: "log1p": -float: 1 - -Function: "logp1": -float: 1 - Function: "sincos": double: 1 float: 1 @@ -146,7 +140,6 @@ double: 1 Function: "tgamma": double: 1 -float: 1 Function: "y0": double: 2 diff --git a/sysdeps/m68k/m680x0/fpu/libm-test-ulps b/sysdeps/m68k/m680x0/fpu/libm-test-ulps index 6eacfb6b6f..3964b83b81 100644 --- a/sysdeps/m68k/m680x0/fpu/libm-test-ulps +++ b/sysdeps/m68k/m680x0/fpu/libm-test-ulps @@ -882,19 +882,15 @@ ldouble: 3 Function: "exp10m1": double: 1 -float: 1 Function: "exp10m1_downward": double: 1 -float: 1 Function: "exp10m1_towardzero": double: 1 -float: 1 Function: "exp10m1_upward": double: 3 -float: 1 Function: "exp2": double: 1 @@ -907,19 +903,15 @@ double: 1 Function: "exp2m1": double: 1 -float: 1 Function: "exp2m1_downward": double: 2 -float: 1 Function: "exp2m1_towardzero": double: 2 -float: 1 Function: "exp2m1_upward": double: 1 -float: 1 Function: "exp_upward": double: 1 @@ -1099,19 +1091,15 @@ double: 1 Function: "log2p1": double: 1 -float: 2 Function: "log2p1_downward": double: 1 -float: 2 Function: "log2p1_towardzero": double: 1 -float: 2 Function: "log2p1_upward": double: 1 -float: 2 Function: "logp1": double: 1 @@ -1208,22 +1196,18 @@ float: 1 Function: "tgamma": double: 3 -float: 9 ldouble: 9 Function: "tgamma_downward": double: 3 -float: 9 ldouble: 9 Function: "tgamma_towardzero": double: 3 -float: 9 ldouble: 9 Function: "tgamma_upward": double: 2 -float: 9 ldouble: 9 Function: "y0": diff --git a/sysdeps/m68k/m680x0/fpu/w_log1pf.c b/sysdeps/m68k/m680x0/fpu/w_log1pf.c new file mode 100644 index 0000000000..5f363cc66b --- /dev/null +++ b/sysdeps/m68k/m680x0/fpu/w_log1pf.c @@ -0,0 +1,20 @@ +/* Wrapper for __log1p that handles setting errno. + Copyright (C) 2015-2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <math-type-macros-float.h> +#include <w_log1p_template.c> diff --git a/sysdeps/mach/hurd/fcntl.c b/sysdeps/mach/hurd/fcntl.c index 9451ed5649..2583f54ef2 100644 --- a/sysdeps/mach/hurd/fcntl.c +++ b/sysdeps/mach/hurd/fcntl.c @@ -148,6 +148,7 @@ __libc_fcntl (int fd, int cmd, ...) cmd = F_SETLKW64; break; default: + va_end (ap); return __hurd_fail (EINVAL); } @@ -204,7 +205,10 @@ __libc_fcntl (int fd, int cmd, ...) && fl->l_start != fl64.l_start) || (sizeof fl->l_len != sizeof fl64.l_len && fl->l_len != fl64.l_len)) - return __hurd_fail (EOVERFLOW); + { + va_end (ap); + return __hurd_fail (EOVERFLOW); + } } result = err ? __hurd_dfail (fd, err) : 0; diff --git a/sysdeps/mach/hurd/x86_64/vm_param.h b/sysdeps/mach/hurd/x86_64/vm_param.h index 460445f49e..a6e63a3a1a 100644 --- a/sysdeps/mach/hurd/x86_64/vm_param.h +++ b/sysdeps/mach/hurd/x86_64/vm_param.h @@ -15,7 +15,7 @@ License along with the GNU C Library; if not, see <https://www.gnu.org/licenses/>. */ -#ifndef _X86_86_VM_PARAM_H +#ifndef _X86_64_VM_PARAM_H #define _X86_64_VM_PARAM_H /* Arbitrary start of the brk. This is after usual binary and library mappings. */ diff --git a/sysdeps/mach/xpg-strerror.c b/sysdeps/mach/xpg-strerror.c index f8c65f8124..5e0e5a41d7 100644 --- a/sysdeps/mach/xpg-strerror.c +++ b/sysdeps/mach/xpg-strerror.c @@ -62,9 +62,19 @@ __xpg_strerror_r (int errnum, char *buf, size_t buflen) if (sub >= es->max_sub) estr = (const char *) es->bad_sub; else if (code >= es->subsystem[sub].max_code) - return EINVAL; + { + __snprintf (buf, buflen, "%s%d", _("Unknown error code: "), code); + return EINVAL; + } else - estr = (const char *) _(es->subsystem[sub].codes[code]); + { + estr = (const char *) _(es->subsystem[sub].codes[code]); + if (estr == NULL) + { + __snprintf (buf, buflen, "%s%d", _("Unknown error code: "), code); + return EINVAL; + } + } size_t estrlen = strlen (estr); diff --git a/sysdeps/microblaze/libm-test-ulps b/sysdeps/microblaze/libm-test-ulps index d3666eb7d4..328e31582b 100644 --- a/sysdeps/microblaze/libm-test-ulps +++ b/sysdeps/microblaze/libm-test-ulps @@ -191,7 +191,6 @@ float: 1 Function: "expm1": double: 1 -float: 1 Function: "gamma": double: 4 @@ -225,7 +224,6 @@ float: 2 Function: "log1p": double: 1 -float: 1 Function: "log2": double: 2 @@ -233,7 +231,6 @@ float: 1 Function: "logp1": double: 1 -float: 1 Function: "pow": float: 1 @@ -257,7 +254,6 @@ float: 2 Function: "tgamma": double: 5 -float: 4 Function: "y0": double: 2 diff --git a/sysdeps/mips/mips32/libm-test-ulps b/sysdeps/mips/mips32/libm-test-ulps index d95230724b..c319e0642c 100644 --- a/sysdeps/mips/mips32/libm-test-ulps +++ b/sysdeps/mips/mips32/libm-test-ulps @@ -779,19 +779,15 @@ float: 1 Function: "exp10m1": double: 3 -float: 2 Function: "exp10m1_downward": double: 3 -float: 3 Function: "exp10m1_towardzero": double: 2 -float: 3 Function: "exp10m1_upward": double: 4 -float: 4 Function: "exp2": double: 1 @@ -811,19 +807,15 @@ float: 1 Function: "exp2m1": double: 2 -float: 2 Function: "exp2m1_downward": double: 3 -float: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 Function: "exp2m1_upward": double: 3 -float: 3 Function: "exp_downward": double: 1 @@ -839,19 +831,15 @@ float: 1 Function: "expm1": double: 1 -float: 1 Function: "expm1_downward": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "expm1_upward": double: 1 -float: 1 Function: "gamma": double: 4 @@ -967,35 +955,27 @@ float: 2 Function: "log10p1": double: 1 -float: 2 Function: "log10p1_downward": double: 2 -float: 3 Function: "log10p1_towardzero": double: 3 -float: 2 Function: "log10p1_upward": double: 2 -float: 3 Function: "log1p": double: 1 -float: 1 Function: "log1p_downward": double: 2 -float: 2 Function: "log1p_towardzero": double: 2 -float: 2 Function: "log1p_upward": double: 2 -float: 2 Function: "log2": double: 2 @@ -1015,22 +995,18 @@ float: 3 Function: "log2p1": double: 1 -float: 2 ldouble: 1 Function: "log2p1_downward": double: 2 -float: 2 ldouble: 2 Function: "log2p1_towardzero": double: 2 -float: 2 ldouble: 2 Function: "log2p1_upward": double: 2 -float: 2 ldouble: 1 Function: "log_downward": @@ -1045,19 +1021,15 @@ float: 2 Function: "logp1": double: 1 -float: 1 Function: "logp1_downward": double: 2 -float: 2 Function: "logp1_towardzero": double: 2 -float: 2 Function: "logp1_upward": double: 2 -float: 2 Function: "pow": double: 1 @@ -1156,19 +1128,15 @@ float: 3 Function: "tgamma": double: 9 -float: 8 Function: "tgamma_downward": double: 9 -float: 7 Function: "tgamma_towardzero": double: 9 -float: 7 Function: "tgamma_upward": double: 9 -float: 8 Function: "y0": double: 3 diff --git a/sysdeps/mips/mips64/libm-test-ulps b/sysdeps/mips/mips64/libm-test-ulps index ce33d9b4b3..365b860c54 100644 --- a/sysdeps/mips/mips64/libm-test-ulps +++ b/sysdeps/mips/mips64/libm-test-ulps @@ -978,22 +978,18 @@ ldouble: 3 Function: "exp10m1": double: 3 -float: 2 ldouble: 3 Function: "exp10m1_downward": double: 3 -float: 3 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 3 ldouble: 6 Function: "exp10m1_upward": double: 4 -float: 4 ldouble: 6 Function: "exp2": @@ -1018,22 +1014,18 @@ ldouble: 2 Function: "exp2m1": double: 2 -float: 2 ldouble: 2 Function: "exp2m1_downward": double: 3 -float: 3 ldouble: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 ldouble: 4 Function: "exp2m1_upward": double: 3 -float: 3 ldouble: 5 Function: "exp_downward": @@ -1050,22 +1042,18 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 2 Function: "expm1_downward": double: 1 -float: 1 ldouble: 2 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 ldouble: 3 Function: "gamma": @@ -1212,42 +1200,34 @@ ldouble: 1 Function: "log10p1": double: 1 -float: 2 ldouble: 3 Function: "log10p1_downward": double: 2 -float: 3 ldouble: 4 Function: "log10p1_towardzero": double: 3 -float: 2 ldouble: 3 Function: "log10p1_upward": double: 2 -float: 3 ldouble: 4 Function: "log1p": double: 1 -float: 1 ldouble: 3 Function: "log1p_downward": double: 2 -float: 2 ldouble: 3 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1272,22 +1252,18 @@ ldouble: 1 Function: "log2p1": double: 1 -float: 2 ldouble: 3 Function: "log2p1_downward": double: 2 -float: 2 ldouble: 3 Function: "log2p1_towardzero": double: 2 -float: 2 ldouble: 2 Function: "log2p1_upward": double: 2 -float: 2 ldouble: 3 Function: "log_downward": @@ -1305,22 +1281,18 @@ ldouble: 1 Function: "logp1": double: 1 -float: 1 ldouble: 3 Function: "logp1_downward": double: 2 -float: 2 ldouble: 3 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "pow": @@ -1444,22 +1416,18 @@ ldouble: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 4 Function: "tgamma_downward": double: 9 -float: 7 ldouble: 5 Function: "tgamma_towardzero": double: 9 -float: 7 ldouble: 5 Function: "tgamma_upward": double: 9 -float: 8 ldouble: 4 Function: "y0": diff --git a/sysdeps/nios2/libm-test-ulps b/sysdeps/nios2/libm-test-ulps index c8d1a722f7..5240767c0e 100644 --- a/sysdeps/nios2/libm-test-ulps +++ b/sysdeps/nios2/libm-test-ulps @@ -197,7 +197,6 @@ float: 1 Function: "expm1": double: 1 -float: 1 Function: "gamma": double: 4 @@ -231,7 +230,6 @@ float: 2 Function: "log1p": double: 1 -float: 1 Function: "log2": double: 2 @@ -239,7 +237,6 @@ float: 1 Function: "logp1": double: 1 -float: 1 Function: "pow": double: 1 @@ -266,7 +263,6 @@ float: 2 Function: "tgamma": double: 9 -float: 8 Function: "y0": double: 3 diff --git a/sysdeps/nptl/_Fork.c b/sysdeps/nptl/_Fork.c index ef199ddbc3..52c90e61e3 100644 --- a/sysdeps/nptl/_Fork.c +++ b/sysdeps/nptl/_Fork.c @@ -17,11 +17,18 @@ <https://www.gnu.org/licenses/>. */ #include <arch-fork.h> +#include <libc-lock.h> #include <pthreadP.h> pid_t _Fork (void) { + /* Block all signals to avoid revealing the inconsistent TCB state + to a signal handler after fork. The abort lock should AS-safe + to avoid deadlock if _Fork is called from a signal handler. */ + internal_sigset_t original_sigmask; + __abort_lock_rdlock (&original_sigmask); + pid_t pid = arch_fork (&THREAD_SELF->tid); if (pid == 0) { @@ -44,6 +51,8 @@ _Fork (void) INTERNAL_SYSCALL_CALL (set_robust_list, &self->robust_head, sizeof (struct robust_list_head)); } + + __abort_lock_unlock (&original_sigmask); return pid; } libc_hidden_def (_Fork) diff --git a/sysdeps/nptl/pthreadP.h b/sysdeps/nptl/pthreadP.h index 7d9b95e6ac..c2db165052 100644 --- a/sysdeps/nptl/pthreadP.h +++ b/sysdeps/nptl/pthreadP.h @@ -517,6 +517,7 @@ libc_hidden_proto (__pthread_kill) extern int __pthread_cancel (pthread_t th); extern int __pthread_kill_internal (pthread_t threadid, int signo) attribute_hidden; +extern int __pthread_raise_internal (int signo) attribute_hidden; extern void __pthread_exit (void *value) __attribute__ ((__noreturn__)); libc_hidden_proto (__pthread_exit) extern int __pthread_join (pthread_t threadid, void **thread_return); diff --git a/sysdeps/or1k/fpu/libm-test-ulps b/sysdeps/or1k/fpu/libm-test-ulps index 59b9f072f5..9ced4b0052 100644 --- a/sysdeps/or1k/fpu/libm-test-ulps +++ b/sysdeps/or1k/fpu/libm-test-ulps @@ -804,19 +804,15 @@ float: 1 Function: "expm1": double: 1 -float: 1 Function: "expm1_downward": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "expm1_upward": double: 1 -float: 1 Function: "gamma": double: 4 @@ -1066,19 +1062,15 @@ float: 3 Function: "tgamma": double: 9 -float: 8 Function: "tgamma_downward": double: 9 -float: 9 Function: "tgamma_towardzero": double: 9 -float: 8 Function: "tgamma_upward": double: 9 -float: 8 Function: "y0": double: 3 diff --git a/sysdeps/or1k/nofpu/libm-test-ulps b/sysdeps/or1k/nofpu/libm-test-ulps index 726855faaa..c7ae0f002b 100644 --- a/sysdeps/or1k/nofpu/libm-test-ulps +++ b/sysdeps/or1k/nofpu/libm-test-ulps @@ -802,19 +802,15 @@ float: 1 Function: "expm1": double: 1 -float: 1 Function: "expm1_downward": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "expm1_upward": double: 1 -float: 1 Function: "gamma": double: 4 @@ -927,19 +923,15 @@ float: 2 Function: "log1p": double: 1 -float: 1 Function: "log1p_downward": double: 2 -float: 2 Function: "log1p_towardzero": double: 2 -float: 2 Function: "log1p_upward": double: 2 -float: 2 Function: "log2": float: 1 @@ -955,19 +947,15 @@ double: 1 Function: "logp1": double: 1 -float: 1 Function: "logp1_downward": double: 2 -float: 2 Function: "logp1_towardzero": double: 2 -float: 2 Function: "logp1_upward": double: 2 -float: 2 Function: "pow": double: 1 @@ -1064,19 +1052,15 @@ float: 3 Function: "tgamma": double: 9 -float: 8 Function: "tgamma_downward": double: 9 -float: 9 Function: "tgamma_towardzero": double: 9 -float: 8 Function: "tgamma_upward": double: 9 -float: 8 Function: "y0": double: 3 diff --git a/sysdeps/posix/profil.c b/sysdeps/posix/profil.c index 3b3c87e25a..6f4aa00eeb 100644 --- a/sysdeps/posix/profil.c +++ b/sysdeps/posix/profil.c @@ -82,7 +82,7 @@ __profil (u_short *sample_buffer, size_t size, size_t offset, u_int scale) if (__setitimer (ITIMER_PROF, &otimer, NULL) < 0) return -1; samples = NULL; - return __sigaction (SIGPROF, &oact, NULL); + return __libc_sigaction (SIGPROF, &oact, NULL); } if (samples) @@ -90,7 +90,7 @@ __profil (u_short *sample_buffer, size_t size, size_t offset, u_int scale) /* Was already turned on. Restore old timer and signal handler first. */ if (__setitimer (ITIMER_PROF, &otimer, NULL) < 0 - || __sigaction (SIGPROF, &oact, NULL) < 0) + || __libc_sigaction (SIGPROF, &oact, NULL) < 0) return -1; } #else @@ -114,7 +114,7 @@ __profil (u_short *sample_buffer, size_t size, size_t offset, u_int scale) #endif act.sa_flags |= SA_RESTART; __sigfillset (&act.sa_mask); - if (__sigaction (SIGPROF, &act, oact_ptr) < 0) + if (__libc_sigaction (SIGPROF, &act, oact_ptr) < 0) return -1; timer.it_value.tv_sec = 0; diff --git a/sysdeps/posix/tempname.c b/sysdeps/posix/tempname.c index c00fe0c181..fc30958a0c 100644 --- a/sysdeps/posix/tempname.c +++ b/sysdeps/posix/tempname.c @@ -117,6 +117,8 @@ random_bits (random_value *r, random_value s) succeed. */ #if !_LIBC *r = mix_random_values (v, clock ()); +#else + *r = v; #endif return false; } diff --git a/sysdeps/powerpc/fpu/libm-test-ulps b/sysdeps/powerpc/fpu/libm-test-ulps index 2b5d2b940d..8d0c18eed1 100644 --- a/sysdeps/powerpc/fpu/libm-test-ulps +++ b/sysdeps/powerpc/fpu/libm-test-ulps @@ -870,6 +870,7 @@ float128: 1 ldouble: 2 Function: Imaginary part of "csin": +float: 1 float128: 1 ldouble: 1 @@ -1186,25 +1187,21 @@ ldouble: 4 Function: "exp10m1": double: 4 -float: 2 float128: 3 ldouble: 4 Function: "exp10m1_downward": double: 3 -float: 3 float128: 6 ldouble: 9 Function: "exp10m1_towardzero": double: 2 -float: 3 float128: 6 ldouble: 9 Function: "exp10m1_upward": double: 5 -float: 3 float128: 6 ldouble: 8 @@ -1231,25 +1228,21 @@ ldouble: 2 Function: "exp2m1": double: 2 -float: 2 float128: 2 ldouble: 3 Function: "exp2m1_downward": double: 3 -float: 3 float128: 3 ldouble: 7 Function: "exp2m1_towardzero": double: 3 -float: 2 float128: 4 ldouble: 8 Function: "exp2m1_upward": double: 3 -float: 3 float128: 5 ldouble: 9 @@ -1270,25 +1263,21 @@ ldouble: 1 Function: "expm1": double: 1 -float: 1 float128: 2 ldouble: 1 Function: "expm1_downward": double: 1 -float: 1 float128: 2 ldouble: 7 Function: "expm1_towardzero": double: 1 -float: 2 float128: 4 ldouble: 6 Function: "expm1_upward": double: 1 -float: 1 float128: 3 ldouble: 6 @@ -1508,49 +1497,41 @@ ldouble: 2 Function: "log10p1": double: 2 -float: 2 float128: 3 ldouble: 3 Function: "log10p1_downward": double: 2 -float: 3 float128: 4 ldouble: 6 Function: "log10p1_towardzero": double: 3 -float: 2 float128: 3 ldouble: 6 Function: "log10p1_upward": double: 2 -float: 3 float128: 4 ldouble: 6 Function: "log1p": double: 1 -float: 1 float128: 3 ldouble: 2 Function: "log1p_downward": double: 1 -float: 2 float128: 3 ldouble: 2 Function: "log1p_towardzero": double: 2 -float: 2 float128: 3 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 float128: 2 ldouble: 3 @@ -1580,25 +1561,21 @@ ldouble: 4 Function: "log2p1": double: 2 -float: 2 float128: 3 ldouble: 2 Function: "log2p1_downward": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "log2p1_towardzero": double: 2 -float: 2 float128: 2 ldouble: 5 Function: "log2p1_upward": double: 2 -float: 2 float128: 3 ldouble: 6 @@ -1620,25 +1597,21 @@ ldouble: 1 Function: "logp1": double: 1 -float: 1 float128: 3 ldouble: 2 Function: "logp1_downward": double: 1 -float: 2 float128: 3 ldouble: 2 Function: "logp1_towardzero": double: 2 -float: 2 float128: 3 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 float128: 2 ldouble: 3 @@ -1828,25 +1801,21 @@ ldouble: 6 Function: "tgamma": double: 9 -float: 8 float128: 4 ldouble: 5 Function: "tgamma_downward": double: 9 -float: 7 float128: 5 ldouble: 6 Function: "tgamma_towardzero": double: 9 -float: 7 float128: 5 ldouble: 5 Function: "tgamma_upward": double: 9 -float: 8 float128: 4 ldouble: 5 diff --git a/sysdeps/powerpc/nofpu/libm-test-ulps b/sysdeps/powerpc/nofpu/libm-test-ulps index d56327ac33..20036c779c 100644 --- a/sysdeps/powerpc/nofpu/libm-test-ulps +++ b/sysdeps/powerpc/nofpu/libm-test-ulps @@ -987,22 +987,18 @@ ldouble: 4 Function: "exp10m1": double: 3 -float: 2 ldouble: 3 Function: "exp10m1_downward": double: 3 -float: 3 ldouble: 9 Function: "exp10m1_towardzero": double: 2 -float: 3 ldouble: 9 Function: "exp10m1_upward": double: 4 -float: 4 ldouble: 10 Function: "exp2": @@ -1027,22 +1023,18 @@ ldouble: 2 Function: "exp2m1": double: 2 -float: 2 ldouble: 2 Function: "exp2m1_downward": double: 3 -float: 3 ldouble: 7 Function: "exp2m1_towardzero": double: 3 -float: 2 ldouble: 8 Function: "exp2m1_upward": double: 3 -float: 3 ldouble: 9 Function: "exp_downward": @@ -1062,22 +1054,18 @@ ldouble: 1 Function: "expm1": double: 1 -float: 1 ldouble: 1 Function: "expm1_downward": double: 1 -float: 1 ldouble: 5 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 5 Function: "expm1_upward": double: 1 -float: 1 ldouble: 6 Function: "fma": @@ -1269,42 +1257,34 @@ ldouble: 2 Function: "log10p1": double: 1 -float: 2 ldouble: 3 Function: "log10p1_downward": double: 2 -float: 3 ldouble: 6 Function: "log10p1_towardzero": double: 3 -float: 2 ldouble: 6 Function: "log10p1_upward": double: 2 -float: 3 ldouble: 6 Function: "log1p": double: 1 -float: 1 ldouble: 2 Function: "log1p_downward": double: 2 -float: 2 ldouble: 2 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 2 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1329,22 +1309,18 @@ ldouble: 4 Function: "log2p1": double: 1 -float: 2 ldouble: 2 Function: "log2p1_downward": double: 2 -float: 2 ldouble: 4 Function: "log2p1_towardzero": double: 2 -float: 2 ldouble: 5 Function: "log2p1_upward": double: 2 -float: 2 ldouble: 6 Function: "log_downward": @@ -1362,22 +1338,18 @@ ldouble: 1 Function: "logp1": double: 1 -float: 1 ldouble: 2 Function: "logp1_downward": double: 2 -float: 2 ldouble: 2 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 2 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "mul_downward_ldouble": @@ -1560,22 +1532,18 @@ ldouble: 6 Function: "tgamma": double: 9 -float: 8 ldouble: 5 Function: "tgamma_downward": double: 9 -float: 7 ldouble: 5 Function: "tgamma_towardzero": double: 9 -float: 7 ldouble: 5 Function: "tgamma_upward": double: 9 -float: 8 ldouble: 4 Function: "y0": diff --git a/sysdeps/powerpc/powerpc64/le/power9/strncpy.S b/sysdeps/powerpc/powerpc64/le/power9/strncpy.S index eccb2ffbb0..58139ad9e8 100644 --- a/sysdeps/powerpc/powerpc64/le/power9/strncpy.S +++ b/sysdeps/powerpc/powerpc64/le/power9/strncpy.S @@ -43,7 +43,7 @@ # endif #endif -#define FRAMESIZE (FRAME_MIN_SIZE+8) +#define FRAMESIZE (FRAME_MIN_SIZE+16) /* Implements the function diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcat-power7.c b/sysdeps/powerpc/powerpc64/multiarch/strcat-power7.c index d453b6535d..6eda080fe2 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/strcat-power7.c +++ b/sysdeps/powerpc/powerpc64/multiarch/strcat-power7.c @@ -8,12 +8,12 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/ >. */ + <https://www.gnu.org/licenses/>. */ #include <string.h> diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcat-power8.c b/sysdeps/powerpc/powerpc64/multiarch/strcat-power8.c index 0a77812b38..b9cbce2d92 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/strcat-power8.c +++ b/sysdeps/powerpc/powerpc64/multiarch/strcat-power8.c @@ -8,12 +8,12 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/ >. */ + <https://www.gnu.org/licenses/>. */ #include <string.h> diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcat-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/strcat-ppc64.c index fd3b08d7e7..67f7d4052c 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/strcat-ppc64.c +++ b/sysdeps/powerpc/powerpc64/multiarch/strcat-ppc64.c @@ -8,12 +8,12 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/ >. */ + <https://www.gnu.org/licenses/>. */ #include <string.h> diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncat-power7.c b/sysdeps/powerpc/powerpc64/multiarch/strncat-power7.c index a848fcd8b4..f3bccf297c 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/strncat-power7.c +++ b/sysdeps/powerpc/powerpc64/multiarch/strncat-power7.c @@ -8,12 +8,12 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/ >. */ + <https://www.gnu.org/licenses/>. */ #include <string.h> diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncat-power8.c b/sysdeps/powerpc/powerpc64/multiarch/strncat-power8.c index a31b918879..3b0ea87ec2 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/strncat-power8.c +++ b/sysdeps/powerpc/powerpc64/multiarch/strncat-power8.c @@ -13,7 +13,7 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/ >. */ + <https://www.gnu.org/licenses/>. */ #include <string.h> diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncat-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/strncat-ppc64.c index 7f4c9f1d4b..b467fdecc1 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/strncat-ppc64.c +++ b/sysdeps/powerpc/powerpc64/multiarch/strncat-ppc64.c @@ -8,12 +8,12 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/ >. */ + <https://www.gnu.org/licenses/>. */ #include <string.h> diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncpy.c b/sysdeps/powerpc/powerpc64/multiarch/strncpy.c index af855e6a5c..6e4e2ea14b 100644 --- a/sysdeps/powerpc/powerpc64/multiarch/strncpy.c +++ b/sysdeps/powerpc/powerpc64/multiarch/strncpy.c @@ -9,12 +9,12 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/ >. */ + <https://www.gnu.org/licenses/>. */ /* Define multiple versions only for definition in libc. */ #if IS_IN (libc) diff --git a/sysdeps/pthread/Makefile b/sysdeps/pthread/Makefile index 04ea56559e..1a9f2559d9 100644 --- a/sysdeps/pthread/Makefile +++ b/sysdeps/pthread/Makefile @@ -174,6 +174,7 @@ tests += \ tst-join13 \ tst-join14 \ tst-join15 \ + tst-join16 \ tst-key1 \ tst-key2 \ tst-key3 \ @@ -215,6 +216,7 @@ tests += \ tst-pt-vfork2 \ tst-pthread-exit-signal \ tst-pthread-mutexattr \ + tst-pthread-mutexattr-2 \ tst-pthread-raise-blocked-self \ tst-pthread-setuid-loop \ tst-pthread_cancel-exited \ @@ -254,6 +256,7 @@ tests += \ tst-sem14 \ tst-sem15 \ tst-sem16 \ + tst-sem18 \ tst-setuid3 \ tst-signal1 \ tst-signal2 \ @@ -291,6 +294,7 @@ tests-time64 += \ tst-cnd-timedwait-time64 \ tst-cond11-time64 \ tst-join14-time64 \ + tst-join16-time64 \ tst-mtx-timedlock-time64 \ tst-rwlock14-time64 \ tst-sem5-time64 \ diff --git a/sysdeps/pthread/sem_open.c b/sysdeps/pthread/sem_open.c index e41236157a..dab734191a 100644 --- a/sysdeps/pthread/sem_open.c +++ b/sysdeps/pthread/sem_open.c @@ -76,6 +76,7 @@ __sem_open (const char *name, int oflag, ...) goto try_create; /* Return. errno is already set. */ + result = SEM_FAILED; } else /* Check whether we already have this semaphore mapped and diff --git a/sysdeps/pthread/tst-join16-time64.c b/sysdeps/pthread/tst-join16-time64.c new file mode 100644 index 0000000000..730cc56563 --- /dev/null +++ b/sysdeps/pthread/tst-join16-time64.c @@ -0,0 +1 @@ +#include "tst-join16.c" diff --git a/sysdeps/pthread/tst-join16.c b/sysdeps/pthread/tst-join16.c new file mode 100644 index 0000000000..8bf37b5e42 --- /dev/null +++ b/sysdeps/pthread/tst-join16.c @@ -0,0 +1,87 @@ +/* Test pthread_timedjoin_np and pthread_clockjoin_np with an invalid timeout. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <pthread.h> +#include <stdio.h> +#include <time.h> +#include <support/check.h> +#include <support/xthread.h> +#include <support/xtime.h> + + +#define CLOCK_USE_TIMEDJOIN (-1) + +static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; + +static void * +tf (void *arg) +{ + xpthread_mutex_lock (&lock); + xpthread_mutex_unlock (&lock); + return (void *) 42l; +} + +static int +do_test_clock (clockid_t clockid) +{ + const clockid_t clockid_for_get = + (clockid == CLOCK_USE_TIMEDJOIN) ? CLOCK_REALTIME : clockid; + + xpthread_mutex_lock (&lock); + pthread_t th = xpthread_create (NULL, tf, NULL); + + void *status; + int ret; + struct timespec timeout = xclock_now (clockid_for_get); + timeout.tv_sec += 2; + timeout.tv_nsec = -1; + if (clockid == CLOCK_USE_TIMEDJOIN) + ret = pthread_timedjoin_np (th, &status, &timeout); + else + ret = pthread_clockjoin_np (th, &status, clockid, &timeout); + TEST_COMPARE (ret, EINVAL); + timeout.tv_nsec = 1000000000; + if (clockid == CLOCK_USE_TIMEDJOIN) + ret = pthread_timedjoin_np (th, &status, &timeout); + else + ret = pthread_clockjoin_np (th, &status, clockid, &timeout); + TEST_COMPARE (ret, EINVAL); + xpthread_mutex_unlock (&lock); + timeout.tv_nsec = 0; + ret = pthread_join (th, &status); + TEST_COMPARE (ret, 0); + if (status != (void *) 42l) + FAIL_EXIT1 ("return value %p, expected %p\n", status, (void *) 42l); + + return 0; +} + +static int +do_test (void) +{ + puts ("testing pthread_timedjoin_np"); + do_test_clock (CLOCK_USE_TIMEDJOIN); + puts ("testing CLOCK_REALTIME"); + do_test_clock (CLOCK_REALTIME); + puts ("testing CLOCK_MONOTONIC"); + do_test_clock (CLOCK_MONOTONIC); + return 0; +} + +#include <support/test-driver.c> diff --git a/sysdeps/pthread/tst-pthread-mutexattr-2.c b/sysdeps/pthread/tst-pthread-mutexattr-2.c new file mode 100644 index 0000000000..ec92e55322 --- /dev/null +++ b/sysdeps/pthread/tst-pthread-mutexattr-2.c @@ -0,0 +1,60 @@ +/* Test pthread_mutexattr_gettype and pthread_mutexattr_settype with + valid and invalid kinds. + + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <stdio.h> +#include <pthread.h> + +#include <support/check.h> +#include <support/xthread.h> + + +static void +do_test_kind (int test_kind, const char *name) +{ + printf ("testing %s\n", name); + pthread_mutexattr_t attr; + xpthread_mutexattr_init (&attr); + int ret = pthread_mutexattr_settype (&attr, test_kind); + TEST_COMPARE (ret, 0); + int kind = 123456789; + ret = pthread_mutexattr_gettype (&attr, &kind); + TEST_COMPARE (ret, 0); + TEST_COMPARE (kind, test_kind); +} + +int +do_test (void) +{ + do_test_kind (PTHREAD_MUTEX_NORMAL, "PTHREAD_MUTEX_NORMAL"); + do_test_kind (PTHREAD_MUTEX_ERRORCHECK, "PTHREAD_MUTEX_ERRORCHECK"); + do_test_kind (PTHREAD_MUTEX_RECURSIVE, "PTHREAD_MUTEX_RECURSIVE"); + do_test_kind (PTHREAD_MUTEX_DEFAULT, "PTHREAD_MUTEX_DEFAULT"); + + /* Also test an invalid kind. */ + pthread_mutexattr_t attr; + xpthread_mutexattr_init (&attr); + int ret = pthread_mutexattr_settype (&attr, 123456789); + TEST_COMPARE (ret, EINVAL); + + return 0; +} + +#include <support/test-driver.c> diff --git a/sysdeps/pthread/tst-sem18.c b/sysdeps/pthread/tst-sem18.c new file mode 100644 index 0000000000..1be207bcbe --- /dev/null +++ b/sysdeps/pthread/tst-sem18.c @@ -0,0 +1,35 @@ +/* Test sem_open with missing file. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <errno.h> +#include <semaphore.h> + +#include <support/check.h> + +int +do_test (void) +{ + sem_unlink ("/glibc-tst-sem18"); + errno = 0; + sem_t *s = sem_open ("/glibc-tst-sem18", 0); + TEST_VERIFY (s == SEM_FAILED); + TEST_COMPARE (errno, ENOENT); + return 0; +} + +#include <support/test-driver.c> diff --git a/sysdeps/riscv/nofpu/libm-test-ulps b/sysdeps/riscv/nofpu/libm-test-ulps index 9ad64d1d85..cccc864a7a 100644 --- a/sysdeps/riscv/nofpu/libm-test-ulps +++ b/sysdeps/riscv/nofpu/libm-test-ulps @@ -974,7 +974,6 @@ ldouble: 3 Function: "exp10m1": double: 2 -float: 1 ldouble: 1 Function: "exp2": @@ -996,7 +995,6 @@ ldouble: 2 Function: "exp2m1": double: 1 -float: 1 ldouble: 1 Function: "exp_downward": @@ -1013,22 +1011,18 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 2 Function: "expm1_downward": double: 1 -float: 1 ldouble: 2 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 ldouble: 3 Function: "gamma": @@ -1173,27 +1167,22 @@ ldouble: 1 Function: "log10p1": double: 1 -float: 1 ldouble: 3 Function: "log1p": double: 1 -float: 1 ldouble: 3 Function: "log1p_downward": double: 1 -float: 2 ldouble: 3 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1215,7 +1204,6 @@ ldouble: 1 Function: "log2p1": double: 1 -float: 1 ldouble: 3 Function: "log_downward": @@ -1230,22 +1218,18 @@ ldouble: 1 Function: "logp1": double: 1 -float: 1 ldouble: 3 Function: "logp1_downward": double: 1 -float: 2 ldouble: 3 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "pow": @@ -1361,22 +1345,18 @@ ldouble: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 4 Function: "tgamma_downward": double: 5 -float: 5 ldouble: 5 Function: "tgamma_towardzero": double: 5 -float: 4 ldouble: 5 Function: "tgamma_upward": double: 4 -float: 4 ldouble: 4 Function: "y0": diff --git a/sysdeps/riscv/rvd/libm-test-ulps b/sysdeps/riscv/rvd/libm-test-ulps index 233186f29a..14fc7633af 100644 --- a/sysdeps/riscv/rvd/libm-test-ulps +++ b/sysdeps/riscv/rvd/libm-test-ulps @@ -977,22 +977,18 @@ ldouble: 3 Function: "exp10m1": double: 4 -float: 2 ldouble: 3 Function: "exp10m1_downward": double: 3 -float: 3 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 3 ldouble: 6 Function: "exp10m1_upward": double: 5 -float: 3 ldouble: 6 Function: "exp2": @@ -1014,22 +1010,18 @@ ldouble: 2 Function: "exp2m1": double: 2 -float: 2 ldouble: 2 Function: "exp2m1_downward": double: 3 -float: 3 ldouble: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 ldouble: 4 Function: "exp2m1_upward": double: 3 -float: 3 ldouble: 5 Function: "exp_downward": @@ -1046,22 +1038,18 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 2 Function: "expm1_downward": double: 1 -float: 1 ldouble: 2 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 ldouble: 3 Function: "gamma": @@ -1207,42 +1195,34 @@ ldouble: 1 Function: "log10p1": double: 2 -float: 2 ldouble: 3 Function: "log10p1_downward": double: 2 -float: 3 ldouble: 4 Function: "log10p1_towardzero": double: 3 -float: 2 ldouble: 3 Function: "log10p1_upward": double: 2 -float: 3 ldouble: 4 Function: "log1p": double: 1 -float: 1 ldouble: 3 Function: "log1p_downward": double: 1 -float: 2 ldouble: 3 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1264,22 +1244,18 @@ ldouble: 1 Function: "log2p1": double: 2 -float: 2 ldouble: 3 Function: "log2p1_downward": double: 2 -float: 2 ldouble: 3 Function: "log2p1_towardzero": double: 2 -float: 2 ldouble: 2 Function: "log2p1_upward": double: 2 -float: 2 ldouble: 3 Function: "log_downward": @@ -1294,22 +1270,18 @@ ldouble: 2 Function: "logp1": double: 1 -float: 1 ldouble: 3 Function: "logp1_downward": double: 1 -float: 2 ldouble: 3 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "pow": @@ -1431,22 +1403,18 @@ ldouble: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 4 Function: "tgamma_downward": double: 9 -float: 7 ldouble: 5 Function: "tgamma_towardzero": double: 9 -float: 7 ldouble: 5 Function: "tgamma_upward": double: 8 -float: 8 ldouble: 4 Function: "y0": diff --git a/sysdeps/riscv/start.S b/sysdeps/riscv/start.S index ede186ef23..fd6f1ca038 100644 --- a/sysdeps/riscv/start.S +++ b/sysdeps/riscv/start.S @@ -87,6 +87,7 @@ load_gp: ret .section .preinit_array,"aw" + .align PTRLOG .dc.a load_gp /* Define a symbol for the first piece of initialized data. */ diff --git a/sysdeps/s390/fpu/libm-test-ulps b/sysdeps/s390/fpu/libm-test-ulps index e10b5c69ae..a25bb505b3 100644 --- a/sysdeps/s390/fpu/libm-test-ulps +++ b/sysdeps/s390/fpu/libm-test-ulps @@ -228,7 +228,7 @@ ldouble: 3 Function: Real part of "cacosh_upward": double: 4 -float: 3 +float: 4 ldouble: 6 Function: Imaginary part of "cacosh_upward": @@ -720,6 +720,7 @@ float: 1 ldouble: 1 Function: Imaginary part of "csin": +float: 1 ldouble: 1 Function: Real part of "csin_downward": @@ -978,22 +979,18 @@ ldouble: 3 Function: "exp10m1": double: 4 -float: 2 ldouble: 3 Function: "exp10m1_downward": double: 3 -float: 3 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 3 ldouble: 6 Function: "exp10m1_upward": double: 5 -float: 3 ldouble: 6 Function: "exp2": @@ -1015,22 +1012,18 @@ ldouble: 2 Function: "exp2m1": double: 2 -float: 2 ldouble: 2 Function: "exp2m1_downward": double: 3 -float: 3 ldouble: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 ldouble: 4 Function: "exp2m1_upward": double: 3 -float: 3 ldouble: 5 Function: "exp_downward": @@ -1047,22 +1040,18 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 2 Function: "expm1_downward": double: 1 -float: 1 ldouble: 2 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 ldouble: 3 Function: "gamma": @@ -1208,42 +1197,34 @@ ldouble: 1 Function: "log10p1": double: 2 -float: 2 ldouble: 3 Function: "log10p1_downward": double: 2 -float: 3 ldouble: 4 Function: "log10p1_towardzero": double: 3 -float: 2 ldouble: 3 Function: "log10p1_upward": double: 2 -float: 3 ldouble: 4 Function: "log1p": double: 1 -float: 1 ldouble: 3 Function: "log1p_downward": double: 1 -float: 2 ldouble: 3 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1263,22 +1244,18 @@ ldouble: 1 Function: "log2p1": double: 2 -float: 2 ldouble: 3 Function: "log2p1_downward": double: 2 -float: 2 ldouble: 3 Function: "log2p1_towardzero": double: 2 -float: 2 ldouble: 2 Function: "log2p1_upward": double: 2 -float: 2 ldouble: 3 Function: "log_downward": @@ -1292,22 +1269,18 @@ ldouble: 1 Function: "logp1": double: 1 -float: 1 ldouble: 3 Function: "logp1_downward": double: 1 -float: 2 ldouble: 3 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "pow": @@ -1429,22 +1402,18 @@ ldouble: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 4 Function: "tgamma_downward": double: 9 -float: 7 ldouble: 5 Function: "tgamma_towardzero": double: 9 -float: 7 ldouble: 5 Function: "tgamma_upward": double: 9 -float: 8 ldouble: 4 Function: "y0": diff --git a/sysdeps/s390/utf16-utf32-z9.c b/sysdeps/s390/utf16-utf32-z9.c index 51dd979607..9ac8a82df8 100644 --- a/sysdeps/s390/utf16-utf32-z9.c +++ b/sysdeps/s390/utf16-utf32-z9.c @@ -397,8 +397,8 @@ gconv_end (struct __gconv_step *data) { \ register const unsigned char* pInput asm ("8") = inptr; \ register size_t inlen asm ("9") = inend - inptr; \ - register unsigned char* pOutput asm ("10") = outptr; \ - register size_t outlen asm ("11") = outend - outptr; \ + register unsigned char* pOutput asm ("6") = outptr; \ + register size_t outlen asm ("7") = outend - outptr; \ unsigned long tmp, tmp2, tmp3; \ asm volatile (".machine push\n\t" \ ".machine \"z13\"\n\t" \ @@ -707,8 +707,8 @@ gconv_end (struct __gconv_step *data) { \ register const unsigned char* pInput asm ("8") = inptr; \ register size_t inlen asm ("9") = inend - inptr; \ - register unsigned char* pOutput asm ("10") = outptr; \ - register size_t outlen asm ("11") = outend - outptr; \ + register unsigned char* pOutput asm ("6") = outptr; \ + register size_t outlen asm ("7") = outend - outptr; \ unsigned long tmp, tmp2, tmp3; \ asm volatile (".machine push\n\t" \ ".machine \"z13\"\n\t" \ diff --git a/sysdeps/s390/utf8-utf16-z9.c b/sysdeps/s390/utf8-utf16-z9.c index 421747f058..d19fc3c97b 100644 --- a/sysdeps/s390/utf8-utf16-z9.c +++ b/sysdeps/s390/utf8-utf16-z9.c @@ -170,8 +170,8 @@ gconv_end (struct __gconv_step *data) { \ register const unsigned char* pInput __asm__ ("8") = inptr; \ register size_t inlen __asm__ ("9") = inend - inptr; \ - register unsigned char* pOutput __asm__ ("10") = outptr; \ - register size_t outlen __asm__("11") = outend - outptr; \ + register unsigned char* pOutput __asm__ ("6") = outptr; \ + register size_t outlen __asm__("7") = outend - outptr; \ unsigned long cc = 0; \ \ __asm__ __volatile__ (".machine push \n\t" \ @@ -242,8 +242,8 @@ gconv_end (struct __gconv_step *data) { \ register const unsigned char* pInput asm ("8") = inptr; \ register size_t inlen asm ("9") = inend - inptr; \ - register unsigned char* pOutput asm ("10") = outptr; \ - register size_t outlen asm("11") = outend - outptr; \ + register unsigned char* pOutput asm ("6") = outptr; \ + register size_t outlen asm("7") = outend - outptr; \ unsigned long tmp, tmp2, tmp3; \ asm volatile (".machine push\n\t" \ ".machine \"z13\"\n\t" \ @@ -818,8 +818,8 @@ gconv_end (struct __gconv_step *data) { \ register const unsigned char* pInput asm ("8") = inptr; \ register size_t inlen asm ("9") = inend - inptr; \ - register unsigned char* pOutput asm ("10") = outptr; \ - register size_t outlen asm ("11") = outend - outptr; \ + register unsigned char* pOutput asm ("6") = outptr; \ + register size_t outlen asm ("7") = outend - outptr; \ unsigned long tmp, tmp2, tmp3; \ asm volatile (".machine push\n\t" \ ".machine \"z13\"\n\t" \ diff --git a/sysdeps/s390/utf8-utf32-z9.c b/sysdeps/s390/utf8-utf32-z9.c index 9c4189a5f0..e4323d634c 100644 --- a/sysdeps/s390/utf8-utf32-z9.c +++ b/sysdeps/s390/utf8-utf32-z9.c @@ -170,8 +170,8 @@ gconv_end (struct __gconv_step *data) { \ register const unsigned char* pInput __asm__ ("8") = inptr; \ register size_t inlen __asm__ ("9") = inend - inptr; \ - register unsigned char* pOutput __asm__ ("10") = outptr; \ - register size_t outlen __asm__("11") = outend - outptr; \ + register unsigned char* pOutput __asm__ ("6") = outptr; \ + register size_t outlen __asm__("7") = outend - outptr; \ unsigned long cc = 0; \ \ __asm__ __volatile__ (".machine push \n\t" \ @@ -475,8 +475,8 @@ gconv_end (struct __gconv_step *data) { \ register const unsigned char* pInput asm ("8") = inptr; \ register size_t inlen asm ("9") = inend - inptr; \ - register unsigned char* pOutput asm ("10") = outptr; \ - register size_t outlen asm("11") = outend - outptr; \ + register unsigned char* pOutput asm ("6") = outptr; \ + register size_t outlen asm("7") = outend - outptr; \ unsigned long tmp, tmp2, tmp3; \ asm volatile (".machine push\n\t" \ ".machine \"z13\"\n\t" \ @@ -864,8 +864,8 @@ gconv_end (struct __gconv_step *data) { \ register const unsigned char* pInput asm ("8") = inptr; \ register size_t inlen asm ("9") = inend - inptr; \ - register unsigned char* pOutput asm ("10") = outptr; \ - register size_t outlen asm ("11") = outend - outptr; \ + register unsigned char* pOutput asm ("6") = outptr; \ + register size_t outlen asm ("7") = outend - outptr; \ unsigned long tmp, tmp2; \ asm volatile (".machine push\n\t" \ ".machine \"z13\"\n\t" \ diff --git a/sysdeps/sh/libm-test-ulps b/sysdeps/sh/libm-test-ulps index 3c84259941..8562796de8 100644 --- a/sysdeps/sh/libm-test-ulps +++ b/sysdeps/sh/libm-test-ulps @@ -394,11 +394,9 @@ float: 1 Function: "expm1": double: 1 -float: 1 Function: "expm1_towardzero": double: 1 -float: 2 Function: "fma_towardzero": double: 1 @@ -462,11 +460,9 @@ float: 1 Function: "log1p": double: 1 -float: 1 Function: "log1p_towardzero": double: 2 -float: 2 Function: "log2": double: 2 @@ -477,11 +473,9 @@ double: 2 Function: "logp1": double: 1 -float: 1 Function: "logp1_towardzero": double: 2 -float: 2 Function: "pow": double: 1 @@ -532,11 +526,9 @@ float: 2 Function: "tgamma": double: 9 -float: 8 Function: "tgamma_towardzero": double: 9 -float: 7 Function: "y0": double: 3 diff --git a/sysdeps/sparc/fpu/libm-test-ulps b/sysdeps/sparc/fpu/libm-test-ulps index 1bb8b7c5f4..6ea02058e9 100644 --- a/sysdeps/sparc/fpu/libm-test-ulps +++ b/sysdeps/sparc/fpu/libm-test-ulps @@ -978,22 +978,18 @@ ldouble: 3 Function: "exp10m1": double: 3 -float: 2 ldouble: 3 Function: "exp10m1_downward": double: 3 -float: 3 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 3 ldouble: 6 Function: "exp10m1_upward": double: 4 -float: 4 ldouble: 6 Function: "exp2": @@ -1018,22 +1014,18 @@ ldouble: 2 Function: "exp2m1": double: 2 -float: 2 ldouble: 2 Function: "exp2m1_downward": double: 3 -float: 3 ldouble: 3 Function: "exp2m1_towardzero": double: 3 -float: 2 ldouble: 4 Function: "exp2m1_upward": double: 3 -float: 3 ldouble: 5 Function: "exp_downward": @@ -1050,22 +1042,18 @@ float: 1 Function: "expm1": double: 1 -float: 1 ldouble: 2 Function: "expm1_downward": double: 1 -float: 1 ldouble: 2 Function: "expm1_towardzero": double: 1 -float: 2 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 ldouble: 3 Function: "gamma": @@ -1212,42 +1200,34 @@ ldouble: 1 Function: "log10p1": double: 1 -float: 2 ldouble: 3 Function: "log10p1_downward": double: 2 -float: 3 ldouble: 4 Function: "log10p1_towardzero": double: 3 -float: 2 ldouble: 3 Function: "log10p1_upward": double: 2 -float: 3 ldouble: 4 Function: "log1p": double: 1 -float: 1 ldouble: 3 Function: "log1p_downward": double: 2 -float: 2 ldouble: 3 Function: "log1p_towardzero": double: 2 -float: 2 ldouble: 3 Function: "log1p_upward": double: 2 -float: 2 ldouble: 2 Function: "log2": @@ -1272,22 +1252,18 @@ ldouble: 1 Function: "log2p1": double: 1 -float: 2 ldouble: 3 Function: "log2p1_downward": double: 2 -float: 2 ldouble: 3 Function: "log2p1_towardzero": double: 2 -float: 2 ldouble: 2 Function: "log2p1_upward": double: 2 -float: 2 ldouble: 3 Function: "log_downward": @@ -1305,22 +1281,18 @@ ldouble: 1 Function: "logp1": double: 1 -float: 1 ldouble: 3 Function: "logp1_downward": double: 2 -float: 2 ldouble: 3 Function: "logp1_towardzero": double: 2 -float: 2 ldouble: 3 Function: "logp1_upward": double: 2 -float: 2 ldouble: 2 Function: "pow": @@ -1444,22 +1416,18 @@ ldouble: 3 Function: "tgamma": double: 9 -float: 8 ldouble: 4 Function: "tgamma_downward": double: 9 -float: 7 ldouble: 5 Function: "tgamma_towardzero": double: 9 -float: 7 ldouble: 5 Function: "tgamma_upward": double: 9 -float: 8 ldouble: 4 Function: "y0": diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile index 7df51a325c..527c7a5ae8 100644 --- a/sysdeps/unix/sysv/linux/Makefile +++ b/sysdeps/unix/sysv/linux/Makefile @@ -230,6 +230,7 @@ tests += \ tst-scm_rights \ tst-sigtimedwait \ tst-sync_file_range \ + tst-syscall-restart \ tst-sysconf-iov_max \ tst-sysvmsg-linux \ tst-sysvsem-linux \ diff --git a/sysdeps/unix/sysv/linux/arc/Makefile b/sysdeps/unix/sysv/linux/arc/Makefile index eca9a9fd3a..dd3da52c39 100644 --- a/sysdeps/unix/sysv/linux/arc/Makefile +++ b/sysdeps/unix/sysv/linux/arc/Makefile @@ -11,12 +11,3 @@ ifeq ($(subdir),misc) sysdep_headers += sys/cachectl.h sysdep_routines += cacheflush endif - -abi-variants := arcle arcbe - -ifeq (,$(filter $(default-abi),$(abi-variants))) -$(error Unknown ABI $(default-abi), must be one of $(abi-variants)) -endif - -abi-arcle-condition := !defined __BIG_ENDIAN__ -abi-arcbe-condition := defined __BIG_ENDIAN__ diff --git a/sysdeps/unix/sysv/linux/arc/shlib-versions b/sysdeps/unix/sysv/linux/arc/shlib-versions index 343c0a0450..62c1bd57b3 100644 --- a/sysdeps/unix/sysv/linux/arc/shlib-versions +++ b/sysdeps/unix/sysv/linux/arc/shlib-versions @@ -1,7 +1,3 @@ DEFAULT GLIBC_2.32 -%ifdef HAVE_ARC_BE -ld=ld-linux-arceb.so.2 -%else ld=ld-linux-arc.so.2 -%endif diff --git a/sysdeps/unix/sysv/linux/arm/bits/hwcap.h b/sysdeps/unix/sysv/linux/arm/bits/hwcap.h index b104de473c..7b573facb9 100644 --- a/sysdeps/unix/sysv/linux/arm/bits/hwcap.h +++ b/sysdeps/unix/sysv/linux/arm/bits/hwcap.h @@ -49,3 +49,11 @@ #define HWCAP_ASIMDFHM 33554432 #define HWCAP_ASIMDBF16 67108864 #define HWCAP_I8MM 134217728 + +#define HWCAP2_AES 1 +#define HWCAP2_PMULL 2 +#define HWCAP2_SHA1 4 +#define HWCAP2_SHA2 8 +#define HWCAP2_CRC32 16 +#define HWCAP2_SB 32 +#define HWCAP2_SSBS 64 diff --git a/sysdeps/unix/sysv/linux/bits/mman-linux.h b/sysdeps/unix/sysv/linux/bits/mman-linux.h index 522333c50a..161a885096 100644 --- a/sysdeps/unix/sysv/linux/bits/mman-linux.h +++ b/sysdeps/unix/sysv/linux/bits/mman-linux.h @@ -43,6 +43,7 @@ #define MAP_PRIVATE 0x02 /* Changes are private. */ #define MAP_SHARED_VALIDATE 0x03 /* Share changes and validate extension flags. */ +#define MAP_DROPPABLE 0x08 /* Zero memory under memory pressure. */ #define MAP_TYPE 0x0f /* Mask for type of mapping. */ /* Other flags. */ diff --git a/sysdeps/unix/sysv/linux/bits/mman-shared.h b/sysdeps/unix/sysv/linux/bits/mman-shared.h index d8ed4436b6..7a9874204d 100644 --- a/sysdeps/unix/sysv/linux/bits/mman-shared.h +++ b/sysdeps/unix/sysv/linux/bits/mman-shared.h @@ -42,7 +42,7 @@ # define MLOCK_ONFAULT 1U # endif -/* Access rights for pkey_alloc. */ +/* Access restrictions for pkey_alloc. */ # ifndef PKEY_DISABLE_ACCESS # define PKEY_DISABLE_ACCESS 0x1 # define PKEY_DISABLE_WRITE 0x2 @@ -59,16 +59,16 @@ int memfd_create (const char *__name, unsigned int __flags) __THROW; int mlock2 (const void *__addr, size_t __length, unsigned int __flags) __THROW; /* Allocate a new protection key, with the PKEY_DISABLE_* bits - specified in ACCESS_RIGHTS. The protection key mask for the + specified in ACCESS_RESTRICTIONS. The protection key mask for the current thread is updated to match the access privilege for the new key. */ -int pkey_alloc (unsigned int __flags, unsigned int __access_rights) __THROW; +int pkey_alloc (unsigned int __flags, unsigned int __access_restrictions) __THROW; -/* Update the access rights for the current thread for KEY, which must +/* Update the access restrictions for the current thread for KEY, which must have been allocated using pkey_alloc. */ -int pkey_set (int __key, unsigned int __access_rights) __THROW; +int pkey_set (int __key, unsigned int __access_restrictions) __THROW; -/* Return the access rights for the current thread for KEY, which must +/* Return the access restrictions for the current thread for KEY, which must have been allocated using pkey_alloc. */ int pkey_get (int __key) __THROW; diff --git a/sysdeps/unix/sysv/linux/bits/sched.h b/sysdeps/unix/sysv/linux/bits/sched.h index a02cb69de7..f03f5f5ab3 100644 --- a/sysdeps/unix/sysv/linux/bits/sched.h +++ b/sysdeps/unix/sysv/linux/bits/sched.h @@ -29,7 +29,7 @@ #define SCHED_FIFO 1 #define SCHED_RR 2 #ifdef __USE_GNU -# define SCHED_NORMAL SCHED_OTHER +# define SCHED_NORMAL 0 # define SCHED_BATCH 3 # define SCHED_ISO 4 # define SCHED_IDLE 5 @@ -48,8 +48,10 @@ #define SCHED_FLAG_UTIL_CLAMP_MAX 0x40 /* Combinations of sched_flags fields. */ -#define SCHED_FLAG_KEEP_ALL 0x18 -#define SCHED_FLAG_UTIL_CLAMP 0x60 +#define SCHED_FLAG_KEEP_ALL \ + (SCHED_FLAG_KEEP_POLICY | SCHED_FLAG_KEEP_PARAMS) +#define SCHED_FLAG_UTIL_CLAMP \ + (SCHED_FLAG_UTIL_CLAMP_MIN | SCHED_FLAG_UTIL_CLAMP_MAX) /* Use "" to work around incorrect macro expansion of the __has_include argument (GCC PR 80005). */ diff --git a/sysdeps/unix/sysv/linux/bits/uio-ext.h b/sysdeps/unix/sysv/linux/bits/uio-ext.h index ead7a09156..85ed21bac5 100644 --- a/sysdeps/unix/sysv/linux/bits/uio-ext.h +++ b/sysdeps/unix/sysv/linux/bits/uio-ext.h @@ -48,6 +48,8 @@ extern ssize_t process_vm_writev (pid_t __pid, const struct iovec *__lvec, #define RWF_NOWAIT 0x00000008 /* per-IO nonblocking mode. */ #define RWF_APPEND 0x00000010 /* per-IO O_APPEND. */ #define RWF_NOAPPEND 0x00000020 /* per-IO negation of O_APPEND */ +#define RWF_ATOMIC 0x00000040 /* Write is to be issued with torn-write + prevention. */ __END_DECLS diff --git a/sysdeps/unix/sysv/linux/configure b/sysdeps/unix/sysv/linux/configure index 4d642e953b..8cda8e9451 100644..100755 --- a/sysdeps/unix/sysv/linux/configure +++ b/sysdeps/unix/sysv/linux/configure @@ -1,3 +1,4 @@ +ac_default_prefix=/usr # This file is generated from configure.ac by Autoconf. DO NOT EDIT! # Local configure fragment for sysdeps/unix/sysv/linux. @@ -116,7 +117,9 @@ if test -n "$sysheaders"; then CPPFLAGS=$OLD_CPPFLAGS fi -if test "$prefix" = "/usr/local" -o "$prefix" = "/usr/local/" -o "$prefix" = "NONE"; then + + +if test "$prefix" = "/usr/local" -o "$prefix" = "/usr/local/"; then if test $enable_sanity = yes; then echo "\ *** On GNU/Linux systems the GNU C Library should not be installed into diff --git a/sysdeps/unix/sysv/linux/configure.ac b/sysdeps/unix/sysv/linux/configure.ac index c177e082a9..4c43cda877 100644 --- a/sysdeps/unix/sysv/linux/configure.ac +++ b/sysdeps/unix/sysv/linux/configure.ac @@ -71,7 +71,9 @@ if test -n "$sysheaders"; then CPPFLAGS=$OLD_CPPFLAGS fi -if test "$prefix" = "/usr/local" -o "$prefix" = "/usr/local/" -o "$prefix" = "NONE"; then +AC_PREFIX_DEFAULT([/usr]) + +if test "$prefix" = "/usr/local" -o "$prefix" = "/usr/local/"; then if test $enable_sanity = yes; then echo "\ *** On GNU/Linux systems the GNU C Library should not be installed into diff --git a/sysdeps/unix/sysv/linux/gettimeofday.c b/sysdeps/unix/sysv/linux/gettimeofday.c index 7ab147c614..5ca8916611 100644 --- a/sysdeps/unix/sysv/linux/gettimeofday.c +++ b/sysdeps/unix/sysv/linux/gettimeofday.c @@ -37,11 +37,11 @@ __gettimeofday_syscall (struct timeval *restrict tv, void *restrict tz) } # undef INIT_ARCH -# define INIT_ARCH() \ - void *vdso_gettimeofday = dl_vdso_vsym (HAVE_GETTIMEOFDAY_VSYSCALL) +# define INIT_ARCH() libc_ifunc (__gettimeofday, - vdso_gettimeofday ? VDSO_IFUNC_RET (vdso_gettimeofday) - : (void *) __gettimeofday_syscall) + GLRO(dl_vdso_gettimeofday) != NULL + ? VDSO_IFUNC_RET (GLRO(dl_vdso_gettimeofday)) + : (void *) __gettimeofday_syscall) # else int diff --git a/sysdeps/unix/sysv/linux/internal-signals.h b/sysdeps/unix/sysv/linux/internal-signals.h index a6fae59aaa..6e3a3d7692 100644 --- a/sysdeps/unix/sysv/linux/internal-signals.h +++ b/sysdeps/unix/sysv/linux/internal-signals.h @@ -90,6 +90,15 @@ internal_signal_restore_set (const internal_sigset_t *set) __NSIG_BYTES); } +static inline void +internal_signal_unblock_signal (int sig) +{ + internal_sigset_t set; + internal_sigemptyset (&set); + internal_sigaddset (&set, sig); + INTERNAL_SYSCALL_CALL (rt_sigprocmask, SIG_UNBLOCK, &set, NULL, + __NSIG_BYTES); +} /* It is used on timer_create code directly on sigwaitinfo call, so it can not use the internal_sigset_t definitions. */ diff --git a/sysdeps/unix/sysv/linux/internal-sigset.h b/sysdeps/unix/sysv/linux/internal-sigset.h index 5d7020b42d..4b19affd75 100644 --- a/sysdeps/unix/sysv/linux/internal-sigset.h +++ b/sysdeps/unix/sysv/linux/internal-sigset.h @@ -21,7 +21,7 @@ #include <sigsetops.h> -typedef struct +typedef struct _internal_sigset_t { unsigned long int __val[__NSIG_WORDS]; } internal_sigset_t; diff --git a/sysdeps/unix/sysv/linux/loongarch/bits/rseq.h b/sysdeps/unix/sysv/linux/loongarch/bits/rseq.h new file mode 100644 index 0000000000..7468a05243 --- /dev/null +++ b/sysdeps/unix/sysv/linux/loongarch/bits/rseq.h @@ -0,0 +1,36 @@ +/* Restartable Sequences Linux LoongArch architecture header. + Copyright (C) 2024 Free Software Foundation, Inc. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#ifndef _SYS_RSEQ_H +# error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." +#endif + +/* RSEQ_SIG is a signature required before each abort handler code. + + It is a 32-bit value that maps to actual architecture code compiled + into applications and libraries. It needs to be defined for each + architecture. When choosing this value, it needs to be taken into + account that generating invalid instructions may have ill effects on + tools like objdump, and may also have impact on the CPU speculative + execution efficiency in some cases. + + RSEQ_SIG uses the following break instruction: + + 0x002a0010 break 0x10 +*/ + +#define RSEQ_SIG 0x002a0010 diff --git a/sysdeps/unix/sysv/linux/nios2/arch-syscall.h b/sysdeps/unix/sysv/linux/nios2/arch-syscall.h index f94e212995..b1d0fb6f6e 100644 --- a/sysdeps/unix/sysv/linux/nios2/arch-syscall.h +++ b/sysdeps/unix/sysv/linux/nios2/arch-syscall.h @@ -24,6 +24,7 @@ #define __NR_clock_settime 112 #define __NR_clock_settime64 404 #define __NR_clone 220 +#define __NR_clone3 435 #define __NR_close 57 #define __NR_close_range 436 #define __NR_connect 203 diff --git a/sysdeps/unix/sysv/linux/pkey_set.c b/sysdeps/unix/sysv/linux/pkey_set.c index 30463ef89b..9cb14af0ec 100644 --- a/sysdeps/unix/sysv/linux/pkey_set.c +++ b/sysdeps/unix/sysv/linux/pkey_set.c @@ -20,7 +20,7 @@ #include <sys/mman.h> int -__pkey_set (int key, unsigned int access_rights) +__pkey_set (int key, unsigned int access_restrictions) { __set_errno (ENOSYS); return -1; diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S index 164311d2bd..e57cb6e82e 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S @@ -56,7 +56,6 @@ ENTRY (__clone) /* Save fn, args, stack across syscall. */ mr r30,r3 /* Function in r30. */ - mr r29,r5 /* Flags in r29. */ mr r31,r6 /* Argument in r31. */ /* 'flags' argument is first parameter to clone syscall. @@ -77,14 +76,12 @@ ENTRY (__clone) CHECK_SCV_SUPPORT r28 0f /* This is equivalent to DO_CALL_SCV, but we cannot use the macro here because it uses CFI directives and we just called cfi_endproc. */ - mflr r9 - std r9,FRAME_LR_SAVE(r1) + mflr r29 .machine "push" .machine "power9" scv 0 .machine "pop" - ld r9,FRAME_LR_SAVE(r1) - mtlr r9 + mtlr r29 /* Check for child process. */ /* When using scv, error is indicated by negative r3. */ diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone3.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone3.S index 900c354c9c..913f341d7d 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone3.S +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone3.S @@ -39,14 +39,12 @@ because it uses CFI directives and we just called cfi_endproc. */ # define DO_CLONE3_SVC_CALL(jumpfalse) \ CHECK_SCV_SUPPORT r28 jumpfalse; \ - mflr r9; \ - std r9, FRAME_LR_SAVE(r1); \ + mflr r31; \ .machine "push"; \ .machine "power9"; \ scv 0; \ .machine "pop"; \ - ld r9, FRAME_LR_SAVE(r1); \ - mtlr r9; \ + mtlr r31; \ /* With scv an, an error is a value -4095 <= x < 0. */ \ cmpdi cr1, r3, 0; \ b 1f; @@ -66,13 +64,15 @@ ENTRY(__clone3) /* Save some regs in the "red zone". */ #ifdef USE_PPC_SCV - std r28, -24(r1) - cfi_offset (r28, -24) + std r28, -32(r1) + cfi_offset (r28, -32) #endif - std r29, -16(r1) - std r30, -8(r1) - cfi_offset (r29, -16) - cfi_offset (r30, -8) + std r29, -24(r1) + std r30, -16(r1) + std r31, -8(r1) + cfi_offset (r29, -24) + cfi_offset (r30, -16) + cfi_offset (r31, -8) /* Save func and arg across syscall. */ mr r30, r5 /* Function in r30. */ @@ -132,16 +132,19 @@ L(parent): /* Parent. Restore registers & return. */ #ifdef USE_PPC_SCV - cfi_offset (r28, -24) - ld r28, -24(r1) + cfi_offset (r28, -32) + ld r28, -32(r1) cfi_restore (r28) #endif - cfi_offset (r29,-16) - cfi_offset (r30,-8) - ld r29, -16(r1) - ld r30, -8(r1) + cfi_offset (r29,-24) + cfi_offset (r30,-16) + cfi_offset (r31,-8) + ld r29, -24(r1) + ld r30, -16(r1) + ld r31, -8(r1) cfi_restore (r29) cfi_restore (r30) + cfi_restore (r31) #ifdef USE_PPC_SCV beq cr1, 0f diff --git a/sysdeps/unix/sysv/linux/rseq-internal.h b/sysdeps/unix/sysv/linux/rseq-internal.h index 7ea935b4ad..37a8f630b6 100644 --- a/sysdeps/unix/sysv/linux/rseq-internal.h +++ b/sysdeps/unix/sysv/linux/rseq-internal.h @@ -51,11 +51,21 @@ rseq_register_current_thread (struct pthread *self, bool do_rseq) /* The initial implementation used only 20 bytes out of 32, but still expected size 32. */ size = RSEQ_AREA_SIZE_INITIAL; + + /* Initialize the rseq fields that are read by the kernel on + registration, there is no guarantee that struct pthread is + cleared on all architectures. */ + THREAD_SETMEM (self, rseq_area.cpu_id, RSEQ_CPU_ID_UNINITIALIZED); + THREAD_SETMEM (self, rseq_area.rseq_cs, 0); + THREAD_SETMEM (self, rseq_area.flags, 0); + int ret = INTERNAL_SYSCALL_CALL (rseq, &self->rseq_area, size, 0, RSEQ_SIG); if (!INTERNAL_SYSCALL_ERROR_P (ret)) return true; } + /* When rseq is disabled by tunables or the registration fails, inform + userspace by setting 'cpu_id' to RSEQ_CPU_ID_REGISTRATION_FAILED. */ THREAD_SETMEM (self, rseq_area.cpu_id, RSEQ_CPU_ID_REGISTRATION_FAILED); return false; } diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S b/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S index c9cf9bb055..c84244f56b 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S @@ -29,7 +29,11 @@ ENTRY (__clone) save %sp,-96,%sp save %sp,-96,%sp +#ifdef __sparcv9 flushw +#else + ta 3 +#endif restore cfi_def_cfa_register(%fp) cfi_window_save diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/syscall_cancel.S b/sysdeps/unix/sysv/linux/sparc/sparc32/syscall_cancel.S index aa5c658ce1..45c6ae7a86 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/syscall_cancel.S +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/syscall_cancel.S @@ -42,15 +42,19 @@ __syscall_cancel_arch_start: __syscall_do_cancel() */ ld [%i0], %g2 andcc %g2, TCB_CANCELED_BITMASK, %g0 +#ifdef __sparcv9 bne,pn %icc, 2f +#else + bne 2f +#endif /* Issue a 6 argument syscall. */ - mov %i1, %g1 - mov %i2, %o0 + mov %i2, %o0 mov %i3, %o1 mov %i4, %o2 mov %i5, %o3 ld [%fp+92], %o4 ld [%fp+96], %o5 + mov %i1, %g1 ta 0x10 .globl __syscall_cancel_arch_end @@ -60,8 +64,13 @@ __syscall_cancel_arch_end: sub %g0, %o0, %o0 1: mov %o0, %i0 +#ifdef __sparcv9 return %i7+8 nop +#else + jmp %i7+8 + restore +#endif 2: call __syscall_do_cancel, 0 diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h b/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h index d2d68f5312..c2ffbb5c8f 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h @@ -107,6 +107,7 @@ ENTRY(name); \ #else /* __ASSEMBLER__ */ #define __SYSCALL_STRING \ + "mov %[scn], %%g1;" \ "ta 0x10;" \ "bcc 1f;" \ " nop;" \ @@ -114,7 +115,7 @@ ENTRY(name); \ "1:" #define __SYSCALL_CLOBBERS \ - "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", \ + "g1", "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", \ "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", \ "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23", \ "f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31", \ diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/syscall_cancel.S b/sysdeps/unix/sysv/linux/sparc/sparc64/syscall_cancel.S index 21b0728d5a..6c8d1330cb 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/syscall_cancel.S +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/syscall_cancel.S @@ -46,13 +46,13 @@ __syscall_cancel_arch_start: andcc %g2, TCB_CANCELED_BITMASK, %g0 bne,pn %xcc, 2f /* Issue a 6 argument syscall. */ - mov %i1, %g1 - mov %i2, %o0 + mov %i2, %o0 mov %i3, %o1 mov %i4, %o2 mov %i5, %o3 ldx [%fp + STACK_BIAS + 176], %o4 ldx [%fp + STACK_BIAS + 184], %o5 + mov %i1, %g1 ta 0x6d .global __syscall_cancel_arch_end diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h b/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h index 96047424e9..5598fab08a 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h @@ -106,6 +106,7 @@ ENTRY(name); \ #else /* __ASSEMBLER__ */ #define __SYSCALL_STRING \ + "mov %[scn], %%g1;" \ "ta 0x6d;" \ "bcc,pt %%xcc, 1f;" \ " nop;" \ @@ -113,7 +114,7 @@ ENTRY(name); \ "1:" #define __SYSCALL_CLOBBERS \ - "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", \ + "g1", "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", \ "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", \ "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23", \ "f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31", \ diff --git a/sysdeps/unix/sysv/linux/sparc/sysdep.h b/sysdeps/unix/sysv/linux/sparc/sysdep.h index dcabb57fe2..c287740a8c 100644 --- a/sysdeps/unix/sysv/linux/sparc/sysdep.h +++ b/sysdeps/unix/sysv/linux/sparc/sysdep.h @@ -50,97 +50,109 @@ #undef INTERNAL_SYSCALL_NCS #define INTERNAL_SYSCALL_NCS(name, nr, args...) \ - internal_syscall##nr(__SYSCALL_STRING, name, args) + _internal_syscall##nr(__SYSCALL_STRING, "p", name, args) -#define internal_syscall0(string,name,dummy...) \ +#define _internal_syscall0(string,nc,name,dummy...) \ ({ \ - register long int __g1 __asm__ ("g1") = (name); \ register long __o0 __asm__ ("o0"); \ + long int _name = (long int) (name); \ __asm __volatile (string : "=r" (__o0) : \ - "r" (__g1) : \ + [scn] nc (_name) : \ __SYSCALL_CLOBBERS); \ __o0; \ }) +#define internal_syscall0(string,name,args...) \ + _internal_syscall0(string, "i", name, args) -#define internal_syscall1(string,name,arg1) \ +#define _internal_syscall1(string,nc,name,arg1) \ ({ \ long int _arg1 = (long int) (arg1); \ - register long int __g1 __asm__("g1") = (name); \ + long int _name = (long int) (name); \ register long int __o0 __asm__ ("o0") = _arg1; \ - __asm __volatile (string : "=r" (__o0) : \ - "r" (__g1), "0" (__o0) : \ + __asm __volatile (string : "+r" (__o0) : \ + [scn] nc (_name) : \ __SYSCALL_CLOBBERS); \ __o0; \ }) +#define internal_syscall1(string,name,args...) \ + _internal_syscall1(string, "i", name, args) -#define internal_syscall2(string,name,arg1,arg2) \ +#define _internal_syscall2(string,nc,name,arg1,arg2) \ ({ \ long int _arg1 = (long int) (arg1); \ long int _arg2 = (long int) (arg2); \ - register long int __g1 __asm__("g1") = (name); \ + long int _name = (long int) (name); \ register long int __o0 __asm__ ("o0") = _arg1; \ register long int __o1 __asm__ ("o1") = _arg2; \ - __asm __volatile (string : "=r" (__o0) : \ - "r" (__g1), "0" (__o0), "r" (__o1) : \ + __asm __volatile (string : "+r" (__o0) : \ + [scn] nc (_name), "r" (__o1) : \ __SYSCALL_CLOBBERS); \ __o0; \ }) +#define internal_syscall2(string,name,args...) \ + _internal_syscall2(string, "i", name, args) -#define internal_syscall3(string,name,arg1,arg2,arg3) \ +#define _internal_syscall3(string,nc,name,arg1,arg2,arg3) \ ({ \ long int _arg1 = (long int) (arg1); \ long int _arg2 = (long int) (arg2); \ long int _arg3 = (long int) (arg3); \ - register long int __g1 __asm__("g1") = (name); \ + long int _name = (long int) (name); \ register long int __o0 __asm__ ("o0") = _arg1; \ register long int __o1 __asm__ ("o1") = _arg2; \ register long int __o2 __asm__ ("o2") = _arg3; \ - __asm __volatile (string : "=r" (__o0) : \ - "r" (__g1), "0" (__o0), "r" (__o1), \ + __asm __volatile (string : "+r" (__o0) : \ + [scn] nc (_name), "r" (__o1), \ "r" (__o2) : \ __SYSCALL_CLOBBERS); \ __o0; \ }) +#define internal_syscall3(string,name,args...) \ + _internal_syscall3(string, "i", name, args) -#define internal_syscall4(string,name,arg1,arg2,arg3,arg4) \ +#define _internal_syscall4(string,nc,name,arg1,arg2,arg3,arg4) \ ({ \ long int _arg1 = (long int) (arg1); \ long int _arg2 = (long int) (arg2); \ long int _arg3 = (long int) (arg3); \ long int _arg4 = (long int) (arg4); \ - register long int __g1 __asm__("g1") = (name); \ + long int _name = (long int) (name); \ register long int __o0 __asm__ ("o0") = _arg1; \ register long int __o1 __asm__ ("o1") = _arg2; \ register long int __o2 __asm__ ("o2") = _arg3; \ register long int __o3 __asm__ ("o3") = _arg4; \ - __asm __volatile (string : "=r" (__o0) : \ - "r" (__g1), "0" (__o0), "r" (__o1), \ + __asm __volatile (string : "+r" (__o0) : \ + [scn] nc (_name), "r" (__o1), \ "r" (__o2), "r" (__o3) : \ __SYSCALL_CLOBBERS); \ __o0; \ }) +#define internal_syscall4(string,name,args...) \ + _internal_syscall4(string, "i", name, args) -#define internal_syscall5(string,name,arg1,arg2,arg3,arg4,arg5) \ +#define _internal_syscall5(string,nc,name,arg1,arg2,arg3,arg4,arg5) \ ({ \ long int _arg1 = (long int) (arg1); \ long int _arg2 = (long int) (arg2); \ long int _arg3 = (long int) (arg3); \ long int _arg4 = (long int) (arg4); \ long int _arg5 = (long int) (arg5); \ - register long int __g1 __asm__("g1") = (name); \ + long int _name = (long int) (name); \ register long int __o0 __asm__ ("o0") = _arg1; \ register long int __o1 __asm__ ("o1") = _arg2; \ register long int __o2 __asm__ ("o2") = _arg3; \ register long int __o3 __asm__ ("o3") = _arg4; \ register long int __o4 __asm__ ("o4") = _arg5; \ - __asm __volatile (string : "=r" (__o0) : \ - "r" (__g1), "0" (__o0), "r" (__o1), \ + __asm __volatile (string : "+r" (__o0) : \ + [scn] nc (_name), "r" (__o1), \ "r" (__o2), "r" (__o3), "r" (__o4) : \ __SYSCALL_CLOBBERS); \ __o0; \ }) +#define internal_syscall5(string,name,args...) \ + _internal_syscall5(string, "i", name, args) -#define internal_syscall6(string,name,arg1,arg2,arg3,arg4,arg5,arg6) \ +#define _internal_syscall6(string,nc,name,arg1,arg2,arg3,arg4,arg5,arg6)\ ({ \ long int _arg1 = (long int) (arg1); \ long int _arg2 = (long int) (arg2); \ @@ -148,20 +160,22 @@ long int _arg4 = (long int) (arg4); \ long int _arg5 = (long int) (arg5); \ long int _arg6 = (long int) (arg6); \ - register long int __g1 __asm__("g1") = (name); \ + long int _name = (long int) (name); \ register long int __o0 __asm__ ("o0") = _arg1; \ register long int __o1 __asm__ ("o1") = _arg2; \ register long int __o2 __asm__ ("o2") = _arg3; \ register long int __o3 __asm__ ("o3") = _arg4; \ register long int __o4 __asm__ ("o4") = _arg5; \ register long int __o5 __asm__ ("o5") = _arg6; \ - __asm __volatile (string : "=r" (__o0) : \ - "r" (__g1), "0" (__o0), "r" (__o1), \ + __asm __volatile (string : "+r" (__o0) : \ + [scn] nc (_name), "r" (__o1), \ "r" (__o2), "r" (__o3), "r" (__o4), \ "r" (__o5) : \ __SYSCALL_CLOBBERS); \ __o0; \ }) +#define internal_syscall6(string,name,args...) \ + _internal_syscall6(string, "i", name, args) #define INLINE_CLONE_SYSCALL(arg1,arg2,arg3,arg4,arg5) \ ({ \ @@ -170,15 +184,15 @@ long int _arg3 = (long int) (arg3); \ long int _arg4 = (long int) (arg4); \ long int _arg5 = (long int) (arg5); \ + long int _name = __NR_clone; \ register long int __o0 __asm__ ("o0") = _arg1; \ register long int __o1 __asm__ ("o1") = _arg2; \ register long int __o2 __asm__ ("o2") = _arg3; \ register long int __o3 __asm__ ("o3") = _arg4; \ register long int __o4 __asm__ ("o4") = _arg5; \ - register long int __g1 __asm__ ("g1") = __NR_clone; \ __asm __volatile (__SYSCALL_STRING : \ "=r" (__o0), "=r" (__o1) : \ - "r" (__g1), "0" (__o0), "1" (__o1), \ + [scn] "i" (_name), "0" (__o0), "1" (__o1), \ "r" (__o2), "r" (__o3), "r" (__o4) : \ __SYSCALL_CLOBBERS); \ if (__glibc_unlikely ((unsigned long int) (__o0) > -4096UL)) \ diff --git a/sysdeps/unix/sysv/linux/spawni.c b/sysdeps/unix/sysv/linux/spawni.c index f57e92815e..1edf62c6d7 100644 --- a/sysdeps/unix/sysv/linux/spawni.c +++ b/sysdeps/unix/sysv/linux/spawni.c @@ -383,7 +383,11 @@ __spawnix (int *pid, const char *file, args.pidfd = 0; args.xflags = xflags; - internal_signal_block_all (&args.oldmask); + /* Avoid the potential issues if caller sets a SIG_IGN for SIGABRT, calls + abort, and another thread issues posix_spawn just after the sigaction + returns. With default options (not setting POSIX_SPAWN_SETSIGDEF), the + process can still see SIG_DFL for SIGABRT, where it should be SIG_IGN. */ + __abort_lock_rdlock (&args.oldmask); /* The clone flags used will create a new child that will run in the same memory space (CLONE_VM) and the execution of calling thread will be @@ -474,7 +478,7 @@ __spawnix (int *pid, const char *file, if ((ec == 0) && (pid != NULL)) *pid = use_pidfd ? args.pidfd : new_pid; - internal_signal_restore_set (&args.oldmask); + __abort_lock_unlock (&args.oldmask); __pthread_setcancelstate (state, NULL); diff --git a/sysdeps/unix/sysv/linux/sys/pidfd.h b/sysdeps/unix/sysv/linux/sys/pidfd.h index 9f88d297e8..85d976939b 100644 --- a/sysdeps/unix/sysv/linux/sys/pidfd.h +++ b/sysdeps/unix/sysv/linux/sys/pidfd.h @@ -20,6 +20,7 @@ #include <fcntl.h> #include <bits/types/siginfo_t.h> +#include <sys/ioctl.h> #define PIDFD_NONBLOCK O_NONBLOCK #define PIDFD_THREAD O_EXCL @@ -28,6 +29,19 @@ #define PIDFD_SIGNAL_THREAD_GROUP (1UL << 1) #define PIDFD_SIGNAL_PROCESS_GROUP (1UL << 2) +#define PIDFS_IOCTL_MAGIC 0xFF + +#define PIDFD_GET_CGROUP_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 1) +#define PIDFD_GET_IPC_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 2) +#define PIDFD_GET_MNT_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 3) +#define PIDFD_GET_NET_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 4) +#define PIDFD_GET_PID_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 5) +#define PIDFD_GET_PID_FOR_CHILDREN_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 6) +#define PIDFD_GET_TIME_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 7) +#define PIDFD_GET_TIME_FOR_CHILDREN_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 8) +#define PIDFD_GET_USER_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 9) +#define PIDFD_GET_UTS_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 10) + /* Returns a file descriptor that refers to the process PID. The close-on-exec is set on the file descriptor. */ extern int pidfd_open (__pid_t __pid, unsigned int __flags) __THROW; diff --git a/sysdeps/unix/sysv/linux/syscall-names.list b/sysdeps/unix/sysv/linux/syscall-names.list index 7871f93b94..aa5b479e2a 100644 --- a/sysdeps/unix/sysv/linux/syscall-names.list +++ b/sysdeps/unix/sysv/linux/syscall-names.list @@ -21,8 +21,8 @@ # This file can list all potential system calls. The names are only # used if the installed kernel headers also provide them. -# The list of system calls is current as of Linux 6.10. -kernel 6.10 +# The list of system calls is current as of Linux 6.11. +kernel 6.11 FAST_atomic_update FAST_cmpxchg @@ -653,6 +653,7 @@ uname unlink unlinkat unshare +uretprobe uselib userfaultfd usr26 diff --git a/sysdeps/unix/sysv/linux/time.c b/sysdeps/unix/sysv/linux/time.c index f8b0cee41c..a56ef6fa30 100644 --- a/sysdeps/unix/sysv/linux/time.c +++ b/sysdeps/unix/sysv/linux/time.c @@ -33,11 +33,10 @@ time_syscall (time_t *t) } # undef INIT_ARCH -# define INIT_ARCH() \ - void *vdso_time = dl_vdso_vsym (HAVE_TIME_VSYSCALL); +# define INIT_ARCH() libc_ifunc (time, - vdso_time ? VDSO_IFUNC_RET (vdso_time) - : (void *) time_syscall); + GLRO(dl_vdso_time) != NULL ? VDSO_IFUNC_RET (GLRO(dl_vdso_time)) + : (void *) time_syscall); # else time_t diff --git a/sysdeps/unix/sysv/linux/tst-mman-consts.py b/sysdeps/unix/sysv/linux/tst-mman-consts.py index a1137eb1d5..2191bea36f 100644 --- a/sysdeps/unix/sysv/linux/tst-mman-consts.py +++ b/sysdeps/unix/sysv/linux/tst-mman-consts.py @@ -33,7 +33,7 @@ def main(): help='C compiler (including options) to use') args = parser.parse_args() linux_version_headers = glibcsyscalls.linux_kernel_version(args.cc) - linux_version_glibc = (6, 10) + linux_version_glibc = (6, 11) sys.exit(glibcextract.compare_macro_consts( '#define _GNU_SOURCE 1\n' '#include <sys/mman.h>\n', diff --git a/sysdeps/unix/sysv/linux/tst-mount-consts.py b/sysdeps/unix/sysv/linux/tst-mount-consts.py index 675f1790b6..b71d8a489d 100755 --- a/sysdeps/unix/sysv/linux/tst-mount-consts.py +++ b/sysdeps/unix/sysv/linux/tst-mount-consts.py @@ -42,7 +42,7 @@ def main(): # Constants in glibc were updated to match Linux v6.10. When glibc # constants are updated this value should be updated to match the # released kernel version from which the constants were taken. - linux_version_glibc = (6, 10) + linux_version_glibc = (6, 11) def check(cte, exclude=None): return glibcextract.compare_macro_consts( '#include <sys/mount.h>\n', diff --git a/sysdeps/unix/sysv/linux/tst-pidfd-consts.py b/sysdeps/unix/sysv/linux/tst-pidfd-consts.py index 9824fd214d..9d53102cbd 100644 --- a/sysdeps/unix/sysv/linux/tst-pidfd-consts.py +++ b/sysdeps/unix/sysv/linux/tst-pidfd-consts.py @@ -39,7 +39,7 @@ def main(): sys.exit (77) linux_version_headers = glibcsyscalls.linux_kernel_version(args.cc) - linux_version_glibc = (6, 10) + linux_version_glibc = (6, 11) sys.exit(glibcextract.compare_macro_consts( '#include <sys/pidfd.h>\n', '#include <asm/fcntl.h>\n' diff --git a/sysdeps/unix/sysv/linux/tst-sched-consts.py b/sysdeps/unix/sysv/linux/tst-sched-consts.py index 70071dcd97..f06ac400bd 100644 --- a/sysdeps/unix/sysv/linux/tst-sched-consts.py +++ b/sysdeps/unix/sysv/linux/tst-sched-consts.py @@ -33,7 +33,7 @@ def main(): help='C compiler (including options) to use') args = parser.parse_args() linux_version_headers = glibcsyscalls.linux_kernel_version(args.cc) - linux_version_glibc = (6, 10) + linux_version_glibc = (6, 11) sys.exit(glibcextract.compare_macro_consts( '#define _GNU_SOURCE 1\n' '#include <sched.h>\n', diff --git a/sysdeps/unix/sysv/linux/tst-syscall-restart.c b/sysdeps/unix/sysv/linux/tst-syscall-restart.c new file mode 100644 index 0000000000..0ee7dc8517 --- /dev/null +++ b/sysdeps/unix/sysv/linux/tst-syscall-restart.c @@ -0,0 +1,112 @@ +/* Test if a syscall is correctly restarted. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <support/xsignal.h> +#include <support/check.h> +#include <support/process_state.h> +#include <support/xunistd.h> +#include <support/xthread.h> +#include <sys/wait.h> + +static int +check_pid (pid_t pid) +{ + /* Wait until the child has called pause and it blocking on kernel. */ + support_process_state_wait (pid, support_process_state_sleeping); + + TEST_COMPARE (kill (pid, SIGSTOP), 0); + + /* Adding process_state_tracing_stop ('t') allows the test to work under + trace programs such as ptrace. */ + support_process_state_wait (pid, support_process_state_stopped + | support_process_state_tracing_stop); + + TEST_COMPARE (kill (pid, SIGCONT), 0); + + enum support_process_state state + = support_process_state_wait (pid, support_process_state_sleeping + | support_process_state_zombie); + + TEST_COMPARE (state, support_process_state_sleeping); + + TEST_COMPARE (kill (pid, SIGTERM), 0); + + siginfo_t info; + TEST_COMPARE (waitid (P_PID, pid, &info, WEXITED), 0); + TEST_COMPARE (info.si_signo, SIGCHLD); + TEST_COMPARE (info.si_code, CLD_KILLED); + TEST_COMPARE (info.si_status, SIGTERM); + TEST_COMPARE (info.si_pid, pid); + + return 0; +} + +static void * +tf (void *closure) +{ + pause (); + return NULL; +} + +static void +child_mt (void) +{ + /* Let only the created thread to handle signals. */ + sigset_t set; + sigfillset (&set); + xpthread_sigmask (SIG_BLOCK, &set, NULL); + + sigdelset (&set, SIGSTOP); + sigdelset (&set, SIGCONT); + sigdelset (&set, SIGTERM); + + pthread_attr_t attr; + xpthread_attr_init (&attr); + TEST_COMPARE (pthread_attr_setsigmask_np (&attr, &set), 0); + + xpthread_join (xpthread_create (&attr, tf, NULL)); +} + +static void +do_test_syscall (bool multithread) +{ + pid_t pid = xfork (); + if (pid == 0) + { + if (multithread) + child_mt (); + else + pause (); + _exit (127); + } + + check_pid (pid); +} + +static int +do_test (void) +{ + /* Check for both single and multi thread, since they use different syscall + mechanisms. */ + do_test_syscall (false); + do_test_syscall (true); + + return 0; +} + +#include <support/test-driver.c> diff --git a/sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h b/sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h index 5d86e75dd5..dfc10d0c7e 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h +++ b/sysdeps/unix/sysv/linux/x86_64/64/arch-syscall.h @@ -359,6 +359,7 @@ #define __NR_unlink 87 #define __NR_unlinkat 263 #define __NR_unshare 272 +#define __NR_uretprobe 335 #define __NR_uselib 134 #define __NR_userfaultfd 323 #define __NR_ustat 136 diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h b/sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h index 6c35068d8e..9340daa967 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h +++ b/sysdeps/unix/sysv/linux/x86_64/x32/arch-syscall.h @@ -351,6 +351,7 @@ #define __NR_unlink 1073741911 #define __NR_unlinkat 1073742087 #define __NR_unshare 1073742096 +#define __NR_uretprobe 1073742159 #define __NR_userfaultfd 1073742147 #define __NR_ustat 1073741960 #define __NR_utime 1073741956 diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index c2e36dcbdf..e3c811549c 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -1062,6 +1062,7 @@ float128: 1 ldouble: 1 Function: Imaginary part of "csin": +float: 1 float128: 1 Function: Real part of "csin_downward": @@ -1431,25 +1432,21 @@ float: 1 Function: "exp10m1": double: 4 -float: 2 float128: 3 ldouble: 4 Function: "exp10m1_downward": double: 3 -float: 3 float128: 6 ldouble: 6 Function: "exp10m1_towardzero": double: 2 -float: 3 float128: 6 ldouble: 5 Function: "exp10m1_upward": double: 5 -float: 4 float128: 6 ldouble: 6 @@ -1499,25 +1496,21 @@ float: 1 Function: "exp2m1": double: 2 -float: 2 float128: 2 ldouble: 3 Function: "exp2m1_downward": double: 3 -float: 3 float128: 3 ldouble: 6 Function: "exp2m1_towardzero": double: 3 -float: 2 float128: 4 ldouble: 5 Function: "exp2m1_upward": double: 3 -float: 3 float128: 5 ldouble: 6 @@ -1558,25 +1551,21 @@ float: 1 Function: "expm1": double: 1 -float: 1 float128: 2 ldouble: 3 Function: "expm1_downward": double: 1 -float: 1 float128: 2 ldouble: 4 Function: "expm1_towardzero": double: 1 -float: 2 float128: 4 ldouble: 4 Function: "expm1_upward": double: 1 -float: 1 float128: 3 ldouble: 4 @@ -1809,49 +1798,41 @@ float: 1 Function: "log10p1": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "log10p1_downward": double: 2 -float: 3 float128: 4 ldouble: 8 Function: "log10p1_towardzero": double: 3 -float: 2 float128: 3 ldouble: 8 Function: "log10p1_upward": double: 2 -float: 3 float128: 4 ldouble: 6 Function: "log1p": double: 1 -float: 1 float128: 3 ldouble: 2 Function: "log1p_downward": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "log1p_towardzero": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "log1p_upward": double: 2 -float: 2 float128: 2 ldouble: 3 @@ -1921,25 +1902,21 @@ float: 1 Function: "log2p1": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "log2p1_downward": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "log2p1_towardzero": double: 2 -float: 2 float128: 2 ldouble: 4 Function: "log2p1_upward": double: 2 -float: 2 float128: 3 ldouble: 5 @@ -1981,25 +1958,21 @@ float: 3 Function: "logp1": double: 1 -float: 1 float128: 3 ldouble: 2 Function: "logp1_downward": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "logp1_towardzero": double: 2 -float: 2 float128: 3 ldouble: 4 Function: "logp1_upward": double: 2 -float: 2 float128: 2 ldouble: 3 @@ -2263,25 +2236,21 @@ double: 1 Function: "tgamma": double: 9 -float: 8 float128: 4 ldouble: 5 Function: "tgamma_downward": double: 9 -float: 7 float128: 5 ldouble: 6 Function: "tgamma_towardzero": double: 9 -float: 7 float128: 5 ldouble: 6 Function: "tgamma_upward": double: 9 -float: 8 float128: 4 ldouble: 5 diff --git a/sysdeps/x86_64/fpu/multiarch/Makefile b/sysdeps/x86_64/fpu/multiarch/Makefile index cbe09d49f4..e823d2fcc6 100644 --- a/sysdeps/x86_64/fpu/multiarch/Makefile +++ b/sysdeps/x86_64/fpu/multiarch/Makefile @@ -11,6 +11,8 @@ CFLAGS-s_log1p-fma.c = -mfma -mavx2 CFLAGS-s_sin-fma.c = -mfma -mavx2 CFLAGS-s_tan-fma.c = -mfma -mavx2 CFLAGS-s_sincos-fma.c = -mfma -mavx2 +CFLAGS-s_exp10m1f-fma.c = -mfma -mavx2 +CFLAGS-s_exp2m1f-fma.c = -mfma -mavx2 CFLAGS-e_exp2f-fma.c = -mfma -mavx2 CFLAGS-e_expf-fma.c = -mfma -mavx2 @@ -72,6 +74,8 @@ libm-sysdep_routines += \ s_ceilf-sse4_1 \ s_cosf-fma \ s_cosf-sse2 \ + s_exp10m1f-fma \ + s_exp2m1f-fma \ s_expm1-fma \ s_floor-sse4_1 \ s_floorf-sse4_1 \ diff --git a/sysdeps/x86_64/fpu/multiarch/s_exp10m1f-fma.c b/sysdeps/x86_64/fpu/multiarch/s_exp10m1f-fma.c new file mode 100644 index 0000000000..3dda04e2dd --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/s_exp10m1f-fma.c @@ -0,0 +1,4 @@ +#define __exp10m1f __exp10m1f_fma +#define SECTION __attribute__ ((section (".text.fma"))) + +#include <sysdeps/ieee754/flt-32/s_exp10m1f.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_exp10m1f.c b/sysdeps/x86_64/fpu/multiarch/s_exp10m1f.c new file mode 100644 index 0000000000..8040b7ed79 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/s_exp10m1f.c @@ -0,0 +1,33 @@ +/* Multiple versions of exp10m1. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <sysdeps/x86/isa-level.h> +#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL +# include <libm-alias-float.h> + +extern float __redirect_exp10m1f (float); + +# define SYMBOL_NAME exp10m1f +# include "ifunc-fma.h" + +libc_ifunc_redirected (__redirect_exp10m1f, __exp10m1f, IFUNC_SELECTOR ()); +libm_alias_float (__exp10m1, exp10m1) + +# define __exp10m1f __exp10m1f_sse2 +#endif +#include <sysdeps/ieee754/flt-32/s_exp10m1f.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_exp2m1f-fma.c b/sysdeps/x86_64/fpu/multiarch/s_exp2m1f-fma.c new file mode 100644 index 0000000000..bfa00eae4e --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/s_exp2m1f-fma.c @@ -0,0 +1,4 @@ +#define __exp2m1f __exp2m1f_fma +#define SECTION __attribute__ ((section (".text.fma"))) + +#include <sysdeps/ieee754/flt-32/s_exp2m1f.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_exp2m1f.c b/sysdeps/x86_64/fpu/multiarch/s_exp2m1f.c new file mode 100644 index 0000000000..8e2d7ec384 --- /dev/null +++ b/sysdeps/x86_64/fpu/multiarch/s_exp2m1f.c @@ -0,0 +1,33 @@ +/* Multiple versions of exp2m1. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <sysdeps/x86/isa-level.h> +#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL +# include <libm-alias-float.h> + +extern float __redirect_exp2m1f (float); + +# define SYMBOL_NAME exp2m1f +# include "ifunc-fma.h" + +libc_ifunc_redirected (__redirect_exp2m1f, __exp2m1f, IFUNC_SELECTOR ()); +libm_alias_float (__exp2m1, exp2m1) + +# define __exp2m1f __exp2m1f_sse2 +#endif +#include <sysdeps/ieee754/flt-32/s_exp2m1f.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_fma.c b/sysdeps/x86_64/fpu/multiarch/s_fma.c index 10e6e625b3..92409a2779 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_fma.c +++ b/sysdeps/x86_64/fpu/multiarch/s_fma.c @@ -9,7 +9,7 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public diff --git a/sysdeps/x86_64/fpu/multiarch/s_fmaf.c b/sysdeps/x86_64/fpu/multiarch/s_fmaf.c index 85725e29c0..b5b63fd125 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_fmaf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_fmaf.c @@ -9,7 +9,7 @@ The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public diff --git a/sysdeps/x86_64/multiarch/strcmp-evex.S b/sysdeps/x86_64/multiarch/strcmp-evex.S index 06730ab2a1..cea034f394 100644 --- a/sysdeps/x86_64/multiarch/strcmp-evex.S +++ b/sysdeps/x86_64/multiarch/strcmp-evex.S @@ -209,7 +209,9 @@ returned. */ .section SECTION(.text), "ax", @progbits - .align 16 + /* Align 64 bytes here. This is to get the L(loop) block ideally + aligned for the DSB. */ + .align 64 .type STRCMP, @function .globl STRCMP # ifdef USE_AS_STRCASECMP_L @@ -509,9 +511,7 @@ L(ret4): ret # endif - /* 32 byte align here ensures the main loop is ideally aligned - for DSB. */ - .p2align 5 + .p2align 4,, 4 L(more_3x_vec): /* Safe to compare 4x vectors. */ VMOVU (VEC_SIZE)(%rdi), %VMM(0) @@ -1426,10 +1426,9 @@ L(less_32_till_page): L(ret_zero_page_cross_slow_case0): xorl %eax, %eax ret -# endif - - +# else .p2align 4,, 10 +# endif L(less_16_till_page): cmpl $((VEC_SIZE - 8) / SIZE_OF_CHAR), %eax ja L(less_8_till_page) @@ -1482,8 +1481,12 @@ L(less_16_till_page): # endif jmp L(prepare_loop_aligned) - - +# ifndef USE_AS_STRNCMP + /* Fits in aligning bytes. */ +L(ret_zero_4_loop): + xorl %eax, %eax + ret +# endif .p2align 4,, 10 L(less_8_till_page): @@ -1554,6 +1557,7 @@ L(ret_less_8_wcs): # ifdef USE_AS_STRNCMP .p2align 4,, 2 +L(ret_zero_4_loop): L(ret_zero_page_cross_slow_case1): xorl %eax, %eax ret @@ -1586,10 +1590,6 @@ L(less_4_loop): subq $-(CHAR_PER_VEC * 4), %rdx # endif jmp L(prepare_loop_aligned) - -L(ret_zero_4_loop): - xorl %eax, %eax - ret L(ret_less_4_loop): xorl %r8d, %eax subl %r8d, %eax diff --git a/sysdeps/x86_64/multiarch/strcpy-evex.S b/sysdeps/x86_64/multiarch/strcpy-evex.S index 4f5bd3ba55..be1d65453c 100644 --- a/sysdeps/x86_64/multiarch/strcpy-evex.S +++ b/sysdeps/x86_64/multiarch/strcpy-evex.S @@ -45,7 +45,7 @@ # define VPCMPEQ vpcmpeqd # define CHAR_SIZE 4 -# define REP_MOVS rep movsd +# define REP_MOVS rep movsl # define USE_WIDE_CHAR # else diff --git a/time/Makefile b/time/Makefile index d06797b06c..4bfb208110 100644 --- a/time/Makefile +++ b/time/Makefile @@ -53,6 +53,7 @@ tests := \ tst-adjtime \ tst-clock \ tst-clock2 \ + tst-clock_gettime \ tst-clock_nanosleep \ tst-clock_settime \ tst-cpuclock1 \ @@ -61,6 +62,7 @@ tests := \ tst-ftime \ tst-ftime_l \ tst-getdate \ + tst-gettimeofday \ tst-gmtime \ tst-itimer \ tst-mktime \ @@ -77,6 +79,7 @@ tests := \ tst-strptime-whitespace \ tst-strptime2 \ tst-strptime3 \ + tst-time \ tst-timegm \ tst-timespec_get \ tst-timespec_getres \ @@ -90,16 +93,19 @@ tests-time64 := \ tst-adjtime-time64 \ tst-clock-time64 \ tst-clock2-time64 \ + tst-clock_gettime-time64 \ tst-clock_nanosleep-time64 \ tst-clock_settime-time64 \ tst-cpuclock1-time64 \ tst-ctime-time64 \ tst-difftime-time64 \ + tst-gettimeofday-time64 \ tst-gmtime-time64 \ tst-itimer-time64 \ tst-mktime4-time64 \ tst-settimeofday-time64 \ tst-strftime4-time64 \ + tst-time-time64 \ tst-timegm-time64 \ tst-timespec_get-time64 \ tst-timespec_getres-time64 \ @@ -121,6 +127,8 @@ $(objpfx)tst-strftime2.out: $(gen-locales) $(objpfx)tst-strftime3.out: $(gen-locales) endif +$(objpfx)tst-clock_gettime: $(librt) +$(objpfx)tst-clock_gettime-time64: $(librt) $(objpfx)tst-clock_nanosleep: $(librt) $(objpfx)tst-clock_nanosleep-time64: $(librt) diff --git a/time/tst-clock_gettime-time64.c b/time/tst-clock_gettime-time64.c new file mode 100644 index 0000000000..5b215d11f8 --- /dev/null +++ b/time/tst-clock_gettime-time64.c @@ -0,0 +1 @@ +#include "tst-clock_gettime.c" diff --git a/time/tst-clock_gettime.c b/time/tst-clock_gettime.c new file mode 100644 index 0000000000..51f24c0be2 --- /dev/null +++ b/time/tst-clock_gettime.c @@ -0,0 +1,184 @@ +/* Test clock_gettime function. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <stdbool.h> +#include <stdio.h> +#include <time.h> + +#include <support/check.h> +#include <support/test-driver.h> +#include <support/xsignal.h> + +/* Compare two struct timespec values, returning a value -1, 0 or 1. */ + +int +compare_timespec (const struct timespec *tv1, const struct timespec *tv2) +{ + if (tv1->tv_sec < tv2->tv_sec) + return -1; + if (tv1->tv_sec > tv2->tv_sec) + return 1; + if (tv1->tv_nsec < tv2->tv_nsec) + return -1; + if (tv1->tv_nsec > tv2->tv_nsec) + return 1; + return 0; +} + +struct test_clockid +{ + clockid_t clockid; + const char *name; + bool is_cputime; + bool fail_ok; +}; + +#define CLOCK(clockid) { clockid, # clockid, false, false } +#define CLOCK_CPU(clockid) { clockid, # clockid, true, false } +#define CLOCK_FAIL_OK(clockid) { clockid, # clockid, false, true } + +static const struct test_clockid clocks[] = + { + CLOCK (CLOCK_REALTIME), +#ifdef CLOCK_MONOTONIC + CLOCK (CLOCK_MONOTONIC), +#endif +#ifdef CLOCK_PROCESS_CPUTIME_ID + CLOCK_CPU (CLOCK_PROCESS_CPUTIME_ID), +#endif +#ifdef CLOCK_THREAD_CPUTIME_ID + CLOCK_CPU (CLOCK_THREAD_CPUTIME_ID), +#endif +#ifdef CLOCK_MONOTONIC_RAW + CLOCK (CLOCK_MONOTONIC_RAW), +#endif +#ifdef CLOCK_REALTIME_COARSE + CLOCK (CLOCK_REALTIME_COARSE), +#endif +#ifdef CLOCK_MONOTONIC_COARSE + CLOCK (CLOCK_MONOTONIC_COARSE), +#endif +#ifdef CLOCK_BOOTTIME + CLOCK (CLOCK_BOOTTIME), +#endif +#ifdef CLOCK_REALTIME_ALARM + CLOCK_FAIL_OK (CLOCK_REALTIME_ALARM), +#endif +#ifdef CLOCK_BOOTTIME_ALARM + CLOCK_FAIL_OK (CLOCK_BOOTTIME_ALARM), +#endif +#ifdef CLOCK_TAI + CLOCK (CLOCK_TAI), +#endif + }; + + +volatile int sigalrm_received; + +void +handle_sigalrm (int sig) +{ + sigalrm_received = 1; +} + +int +do_test (void) +{ + /* Verify that the calls to clock_gettime succeed, that the time does + not decrease, and that time returns a truncated (not rounded) + version of the time. */ + for (size_t i = 0; i < sizeof clocks / sizeof clocks[0]; i++) + { + printf ("testing %s\n", clocks[i].name); + struct timespec ts1, ts2, ts3; + int ret; + time_t t1; + t1 = time (NULL); + TEST_VERIFY_EXIT (t1 != (time_t) -1); + ret = clock_gettime (clocks[i].clockid, &ts1); + if (clocks[i].fail_ok && ret == -1) + { + printf ("failed (OK for this clock): %m\n"); + continue; + } + TEST_VERIFY_EXIT (ret == 0); + if (clocks[i].clockid == CLOCK_REALTIME) + TEST_VERIFY (t1 <= ts1.tv_sec); + TEST_VERIFY (ts1.tv_nsec >= 0); + TEST_VERIFY (ts1.tv_nsec < 1000000000); + ret = clock_gettime (clocks[i].clockid, &ts2); + TEST_VERIFY_EXIT (ret == 0); + TEST_VERIFY (compare_timespec (&ts1, &ts2) <= 0); + TEST_VERIFY (ts2.tv_nsec >= 0); + TEST_VERIFY (ts2.tv_nsec < 1000000000); + /* Also verify that after sleeping, the time returned has + increased. Repeat several times to verify that each time, + the time from the time function is truncated not rounded. + For CPU time clocks, the time spent spinning on the CPU, and + so whether we end in the later half of a second, is not + predictable; thus, only test once for those clocks. */ + const struct timespec duration = { .tv_nsec = 100000000 }; + for (int j = 0; j < 5; j++) + { + if (clocks[i].is_cputime) + { + timer_t timer; + ret = timer_create (CLOCK_PROCESS_CPUTIME_ID, NULL, &timer); + TEST_VERIFY_EXIT (ret == 0); + sigalrm_received = 0; + xsignal (SIGALRM, handle_sigalrm); + struct itimerspec t = + { .it_value = + { + .tv_sec = 0, + .tv_nsec = 200000000 + } + }; + ret = timer_settime (timer, 0, &t, NULL); + TEST_VERIFY_EXIT (ret == 0); + while (sigalrm_received == 0) + ; + xsignal (SIGALRM, SIG_DFL); + ret = timer_delete (timer); + TEST_VERIFY_EXIT (ret == 0); + } + else + { + ret = nanosleep (&duration, NULL); + TEST_VERIFY_EXIT (ret == 0); + } + t1 = time (NULL); + TEST_VERIFY_EXIT (t1 != (time_t) -1); + ret = clock_gettime (clocks[i].clockid, &ts3); + TEST_VERIFY_EXIT (ret == 0); + TEST_VERIFY (compare_timespec (&ts2, &ts3) < 0); + if (clocks[i].clockid == CLOCK_REALTIME) + TEST_VERIFY (t1 <= ts3.tv_sec); + TEST_VERIFY (ts3.tv_nsec >= 0); + TEST_VERIFY (ts3.tv_nsec < 1000000000); + ts2 = ts3; + if (clocks[i].is_cputime) + break; + } + } + return 0; +} + +#define TIMEOUT 60 + +#include <support/test-driver.c> diff --git a/time/tst-gettimeofday-time64.c b/time/tst-gettimeofday-time64.c new file mode 100644 index 0000000000..6c08761ef9 --- /dev/null +++ b/time/tst-gettimeofday-time64.c @@ -0,0 +1 @@ +#include "tst-gettimeofday.c" diff --git a/time/tst-gettimeofday.c b/time/tst-gettimeofday.c new file mode 100644 index 0000000000..978ae28587 --- /dev/null +++ b/time/tst-gettimeofday.c @@ -0,0 +1,93 @@ +/* Test gettimeofday function. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <sys/time.h> +#include <time.h> + +#include <support/check.h> +#include <support/test-driver.h> + +/* Compare two struct timeval values, returning a value -1, 0 or 1. */ + +int +compare_timeval (const struct timeval *tv1, const struct timeval *tv2) +{ + if (tv1->tv_sec < tv2->tv_sec) + return -1; + if (tv1->tv_sec > tv2->tv_sec) + return 1; + if (tv1->tv_usec < tv2->tv_usec) + return -1; + if (tv1->tv_usec > tv2->tv_usec) + return 1; + return 0; +} + +int +do_test (void) +{ + struct timeval tv1, tv2, tv3; + int ret; + time_t t1; + /* Verify that the calls to gettimeofday succeed, that the time does + not decrease, and that time returns a truncated (not rounded) + version of the time. */ + t1 = time (NULL); + TEST_VERIFY_EXIT (t1 != (time_t) -1); + ret = gettimeofday (&tv1, NULL); + TEST_VERIFY_EXIT (ret == 0); + TEST_VERIFY (t1 <= tv1.tv_sec); + TEST_VERIFY (tv1.tv_usec >= 0); + TEST_VERIFY (tv1.tv_usec < 1000000); + ret = gettimeofday (&tv2, NULL); + TEST_VERIFY_EXIT (ret == 0); + TEST_VERIFY (compare_timeval (&tv1, &tv2) <= 0); + TEST_VERIFY (tv2.tv_usec >= 0); + TEST_VERIFY (tv2.tv_usec < 1000000); + /* Also verify that after sleeping, the time returned has increased. + Repeat several times to verify that each time, the time from the + time function is truncated not rounded. */ + const struct timespec duration = { .tv_nsec = 100000000 }; + for (int i = 0; i < 10; i++) + { + ret = nanosleep (&duration, NULL); + TEST_VERIFY_EXIT (ret == 0); + t1 = time (NULL); + TEST_VERIFY_EXIT (t1 != (time_t) -1); + ret = gettimeofday (&tv3, NULL); + TEST_VERIFY_EXIT (ret == 0); + TEST_VERIFY (compare_timeval (&tv2, &tv3) < 0); + TEST_VERIFY (t1 <= tv3.tv_sec); + TEST_VERIFY (tv3.tv_usec >= 0); + TEST_VERIFY (tv3.tv_usec < 1000000); + tv2 = tv3; + } + /* Also test with the obsolete tz argument not being NULL. */ + struct timezone tz = { 0 }; + t1 = time (NULL); + TEST_VERIFY_EXIT (t1 != (time_t) -1); + ret = gettimeofday (&tv3, &tz); + TEST_VERIFY_EXIT (ret == 0); + TEST_VERIFY (t1 <= tv3.tv_sec); + TEST_VERIFY (compare_timeval (&tv2, &tv3) <= 0); + TEST_VERIFY (tv3.tv_usec >= 0); + TEST_VERIFY (tv3.tv_usec < 1000000); + return 0; +} + +#include <support/test-driver.c> diff --git a/time/tst-time-time64.c b/time/tst-time-time64.c new file mode 100644 index 0000000000..30e8d3c86e --- /dev/null +++ b/time/tst-time-time64.c @@ -0,0 +1 @@ +#include "tst-time.c" diff --git a/time/tst-time.c b/time/tst-time.c new file mode 100644 index 0000000000..7f24bed353 --- /dev/null +++ b/time/tst-time.c @@ -0,0 +1,51 @@ +/* Test time function. + Copyright (C) 2024 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <time.h> +#include <unistd.h> + +#include <support/check.h> +#include <support/test-driver.h> + +int +do_test (void) +{ + time_t t1, t2, t3, t4, t5, t6; + /* Verify that the calls to time succeed, that the value returned + directly equals that returned through the pointer passed, and + that the time does not decrease. */ + t1 = time (&t2); + TEST_VERIFY_EXIT (t1 != (time_t) -1); + TEST_VERIFY (t1 == t2); + t3 = time (NULL); + TEST_VERIFY_EXIT (t3 != (time_t) -1); + TEST_VERIFY (t3 >= t1); + /* Also verify that after sleeping, the time returned has + increased. */ + sleep (2); + t4 = time (&t5); + TEST_VERIFY_EXIT (t4 != (time_t) -1); + TEST_VERIFY (t4 == t5); + TEST_VERIFY (t4 > t3); + t6 = time (NULL); + TEST_VERIFY_EXIT (t6 != (time_t) -1); + TEST_VERIFY (t6 >= t4); + return 0; +} + +#include <support/test-driver.c> diff --git a/wcsmbs/Makefile b/wcsmbs/Makefile index 63adf0e8ef..37a44e62c3 100644 --- a/wcsmbs/Makefile +++ b/wcsmbs/Makefile @@ -264,7 +264,7 @@ CFLAGS-wcstod_l.c += $(strtox-CFLAGS) $(config-cflags-wno-ignored-attributes) CFLAGS-wcstold_l.c += $(strtox-CFLAGS) $(config-cflags-wno-ignored-attributes) CFLAGS-wcstof128_l.c += $(strtox-CFLAGS) CFLAGS-wcstof_l.c += $(strtox-CFLAGS) $(config-cflags-wno-ignored-attributes) -CPPFLAGS-tst-wchar-h.c += $(no-fortify-source),-D_FORTIFY_SOURCE=2 +CPPFLAGS-tst-wchar-h.c += $(no-fortify-source) -D_FORTIFY_SOURCE=2 CFLAGS-wcschr.c += $(config-cflags-wno-ignored-attributes) CFLAGS-wmemchr.c += $(config-cflags-wno-ignored-attributes) |